diff --git a/core/module/user/ressource/template.csv b/core/module/user/ressource/template.csv index 05729e3..aaecffe 100644 --- a/core/module/user/ressource/template.csv +++ b/core/module/user/ressource/template.csv @@ -1,5 +1,5 @@ -id;nom;prenom;email;groupe;passe -jm1;Membre1;Jean;jean.membre1@email.fr;1;jEan05 -am2;Membre2;Albert;albert.membre2@email.fr;1;alBertAG -jrediteur;Editeur;Robert;robert.editeur@email.fr;2;roBert54 -padmin;Dupuis;Admin;paul.admin@email.fr;3;paul;32Mirabel32 +id;nom;prenom;email;groupe;profil;passe;tags +jm1;Membre1;Jean;jean.membre1@email.fr;1;1;jEan05;"adhérent" +am2;Membre2;Albert;albert.membre2@email.fr;1;1;alBertAG;"adhérent" +jrediteur;Editeur;Robert;robert.editeur@email.fr;2;1;roBert54;"trésorier" +padmin;Dupuis;Admin;paul.admin@email.fr;3;0;paul32Mirabel32;"président" \ No newline at end of file diff --git a/core/module/user/user.php b/core/module/user/user.php index 74f3ea9..f213e5f 100644 --- a/core/module/user/user.php +++ b/core/module/user/user.php @@ -133,6 +133,7 @@ class user extends common 'accessTimer' => null, 'accessCsrf' => null, 'language' => $this->getInput('userEditLanguage', helper::FILTER_STRING_SHORT), + 'tags' => '' ] ]); @@ -343,6 +344,7 @@ class user extends common 'accessCsrf' => $this->getData(['user', $this->getUrl(2), 'accessCsrf']), 'files' => $this->getInput('userEditFiles', helper::FILTER_BOOLEAN), 'language' => $this->getInput('userEditLanguage', helper::FILTER_STRING_SHORT), + 'tags' => $this->getInput('userEditTags', helper::FILTER_STRING_SHORT), ] ]); // Redirection spécifique si l'utilisateur change son mot de passe @@ -519,6 +521,7 @@ class user extends common empty($this->getData(['profil', $this->getData(['user', $userId, 'group']), $this->getData(['user', $userId, 'profil']), 'name'])) ? helper::translate(self::$groups[(int) $this->getData(['user', $userId, 'group'])]) : $this->getData(['profil', $this->getData(['user', $userId, 'group']), $this->getData(['user', $userId, 'profil']), 'name']), + $this->getData(['user', $userId, 'tags']), template::button('userEdit' . $userId, [ 'href' => helper::baseUrl() . 'user/edit/' . $userId, 'value' => template::ico('pencil'), @@ -1201,17 +1204,22 @@ class user extends common and array_key_exists('prenom', $item) and array_key_exists('nom', $item) and array_key_exists('groupe', $item) + and array_key_exists('profil', $item) and array_key_exists('email', $item) and array_key_exists('passe', $item) - and $item['nom'] - and $item['prenom'] - and $item['id'] - and $item['email'] - and $item['groupe'] - and $item['passe'] + and array_key_exists('tags', $item) + and isset($item['id']) + and isset($item['nom']) + and isset($item['prenom']) + and isset($item['email']) + and isset($item['groupe']) + and isset($item['profil']) + and isset($item['passe']) + and isset($item['tags']) ) { // Validation du groupe $item['groupe'] = (int) $item['groupe']; + $item['profil'] = (int) $item['profil']; $item['groupe'] = ($item['groupe'] >= self::GROUP_BANNED and $item['groupe'] <= self::GROUP_ADMIN) ? $item['groupe'] : 1; // L'utilisateur existe @@ -1224,8 +1232,12 @@ class user extends common $item['nom'], $item['prenom'], self::$groups[$item['groupe']], + ($this->getData(['profil', $item['groupe'], $item['profil'], 'name']) !== null ) + ? $this->getData(['profil', $item['groupe'], $item['profil'], 'name']) + : $item['profil'], $item['prenom'], helper::filter($item['email'], helper::FILTER_MAIL), + $item['tags'], $item['notification'] ]; // L'utilisateur n'existe pas @@ -1240,6 +1252,7 @@ class user extends common 'firstname' => $item['prenom'], 'forgot' => 0, 'group' => $item['groupe'], + 'profil' => $item['profil'], 'lastname' => $item['nom'], 'mail' => $item['email'], 'pseudo' => $item['prenom'], @@ -1251,7 +1264,8 @@ class user extends common "connectTimeout" => null, "accessUrl" => null, "accessTimer" => null, - "accessCsrf" => null + "accessCsrf" => null, + 'tags' => $item['tags'] ] ]); // Icône de notification @@ -1277,17 +1291,23 @@ class user extends common } } // Création du tableau de confirmation + var_dump( $item['profil']); self::$users[] = [ $userId, $item['nom'], $item['prenom'], self::$groups[$item['groupe']], + ($this->getData(['profil', $item['groupe'], $item['profil'], 'name']) !== null ) + ? $this->getData(['profil', $item['groupe'], $item['profil'], 'name']) + : $item['profil'], $item['prenom'], $item['email'], + $item['tags'], $item['notification'] ]; } } + } if (empty(self::$users)) { $notification = helper::translate('Rien à importer, erreur de format ou fichier incorrect'); diff --git a/core/module/user/view/add/add.php b/core/module/user/view/add/add.php index 2424578..797946f 100644 --- a/core/module/user/view/add/add.php +++ b/core/module/user/view/add/add.php @@ -46,13 +46,28 @@ ]); ?> - 'off', - 'label' => 'Adresse électronique' - ]); ?> - 'Langues' - ]); ?> +
+
+ 'off', + 'label' => 'Adresse électronique' + ]); ?> +
+
+ 'Langues' + ]); ?> +
+
+
+
+ 'Etiquettes', + 'value' => $this->getData(['user', $this->getUrl(2), 'tags']), + 'help' => 'Le séparateur d\'étiquettes est l\'espace' + ]); ?> +
+
@@ -110,21 +125,23 @@
-
+
implode("\n",$module::$userProfilsComments[self::GROUP_MEMBER]) + "value" => implode("\n", $module::$userProfilsComments[self::GROUP_MEMBER]) ]); ?>
-
+
implode("\n",$module::$userProfilsComments[self::GROUP_EDITOR]) + "value" => implode("\n", $module::$userProfilsComments[self::GROUP_EDITOR]) ]); ?>
implode("\n",$module::$userProfilsComments[self::GROUP_ADMIN]) + "value" => implode("\n", $module::$userProfilsComments[self::GROUP_ADMIN]) ]); ?>
diff --git a/core/module/user/view/edit/edit.php b/core/module/user/view/edit/edit.php index 1345d6a..ed88529 100644 --- a/core/module/user/view/edit/edit.php +++ b/core/module/user/view/edit/edit.php @@ -58,15 +58,30 @@ ]); ?>
- 'off', - 'label' => 'Adresse électronique', - 'value' => $this->getData(['user', $this->getUrl(2), 'mail']) - ]); ?> - 'Langue', - 'selected' => $this->getData(['user', $this->getUrl(2), 'language']) - ]); ?> +
+
+ 'off', + 'label' => 'Adresse électronique', + 'value' => $this->getData(['user', $this->getUrl(2), 'mail']) + ]); ?> +
+
+ 'Langue', + 'selected' => $this->getData(['user', $this->getUrl(2), 'language']) + ]); ?> +
+
+
+
+ 'Etiquettes', + 'value' => $this->getData(['user', $this->getUrl(2), 'tags']), + 'help' => 'Le séparateur d\'étiquettes est l\'espace' + ]); ?> +
+
@@ -81,7 +96,7 @@ 'readonly' => true, 'value' => $this->getUrl(2) ]); ?> - getUser('group') < self::GROUP_ADMIN): ?>
- + Compte créé | Compte créé et notifié | - Erreur dans le fichier, compte non créé. + Erreur dans le fichier ou le compte existe.
\ No newline at end of file diff --git a/core/module/user/view/index/index.php b/core/module/user/view/index/index.php index 10783d0..06f59a6 100644 --- a/core/module/user/view/index/index.php +++ b/core/module/user/view/index/index.php @@ -60,4 +60,4 @@
- 'dataTables']); ?> \ No newline at end of file + 'dataTables']); ?> \ No newline at end of file