chore: fix
This commit is contained in:
@@ -153,6 +153,7 @@ export default function UsersScreen() {
|
|||||||
}>({ visible: false, user: null });
|
}>({ visible: false, user: null });
|
||||||
const [editUsername, setEditUsername] = useState("");
|
const [editUsername, setEditUsername] = useState("");
|
||||||
const [editRole, setEditRole] = useState("");
|
const [editRole, setEditRole] = useState("");
|
||||||
|
const [editUserPassword, setEditUserPassword] = useState("");
|
||||||
|
|
||||||
// Create user modal
|
// Create user modal
|
||||||
const [createModal, setCreateModal] = useState(false);
|
const [createModal, setCreateModal] = useState(false);
|
||||||
@@ -322,11 +323,16 @@ export default function UsersScreen() {
|
|||||||
const openEditUser = (user: UserItem) => {
|
const openEditUser = (user: UserItem) => {
|
||||||
setEditUsername(user.username);
|
setEditUsername(user.username);
|
||||||
setEditRole(user.role);
|
setEditRole(user.role);
|
||||||
|
setEditUserPassword("");
|
||||||
setEditUserModal({ visible: true, user });
|
setEditUserModal({ visible: true, user });
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleSaveUser = async () => {
|
const handleSaveUser = async () => {
|
||||||
if (!editUserModal.user) return;
|
if (!editUserModal.user) return;
|
||||||
|
if (editUserPassword.trim() && editUserPassword.trim().length < 8) {
|
||||||
|
showError("Erreur", "Le mot de passe doit faire au moins 8 caractères");
|
||||||
|
return;
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
const updates: Record<string, any> = {};
|
const updates: Record<string, any> = {};
|
||||||
if (editUsername.trim() !== editUserModal.user.username) {
|
if (editUsername.trim() !== editUserModal.user.username) {
|
||||||
@@ -335,6 +341,9 @@ export default function UsersScreen() {
|
|||||||
if (editRole !== editUserModal.user.role) {
|
if (editRole !== editUserModal.user.role) {
|
||||||
updates.role = editRole;
|
updates.role = editRole;
|
||||||
}
|
}
|
||||||
|
if (editUserPassword.trim()) {
|
||||||
|
updates.password = editUserPassword.trim();
|
||||||
|
}
|
||||||
if (Object.keys(updates).length === 0) {
|
if (Object.keys(updates).length === 0) {
|
||||||
setEditUserModal({ visible: false, user: null });
|
setEditUserModal({ visible: false, user: null });
|
||||||
return;
|
return;
|
||||||
@@ -1042,6 +1051,13 @@ export default function UsersScreen() {
|
|||||||
onChangeText={setEditUsername}
|
onChangeText={setEditUsername}
|
||||||
autoCapitalize="none"
|
autoCapitalize="none"
|
||||||
/>
|
/>
|
||||||
|
<TextInput
|
||||||
|
label="Nouveau mot de passe (laisser vide pour ne pas changer)"
|
||||||
|
value={editUserPassword}
|
||||||
|
onChangeText={setEditUserPassword}
|
||||||
|
secureTextEntry
|
||||||
|
autoCapitalize="none"
|
||||||
|
/>
|
||||||
<Text style={styles.roleEditLabel}>Rôle</Text>
|
<Text style={styles.roleEditLabel}>Rôle</Text>
|
||||||
<View style={styles.roleEditRow}>
|
<View style={styles.roleEditRow}>
|
||||||
{["livreur", "cabine", "admin"].map((r) => (
|
{["livreur", "cabine", "admin"].map((r) => (
|
||||||
|
|||||||
Reference in New Issue
Block a user