Erreur de notification
This commit is contained in:
parent
96d2fc2e0d
commit
b9bc252979
@ -581,79 +581,90 @@ class user extends common {
|
|||||||
$file = $this->getInput('userImportCSVFile',helper::FILTER_STRING_SHORT, true);
|
$file = $this->getInput('userImportCSVFile',helper::FILTER_STRING_SHORT, true);
|
||||||
$filePath = self::FILE_DIR . 'source/' . $file;
|
$filePath = self::FILE_DIR . 'source/' . $file;
|
||||||
if ($file AND file_exists($filePath)) {
|
if ($file AND file_exists($filePath)) {
|
||||||
|
// Analyse et extraction du CSV
|
||||||
$rows = array_map(function($row) { return str_getcsv($row, $this->getInput('userImportSeparator') ); }, file($filePath));
|
$rows = array_map(function($row) { return str_getcsv($row, $this->getInput('userImportSeparator') ); }, file($filePath));
|
||||||
$header = array_shift($rows);
|
$header = array_shift($rows);
|
||||||
$csv = array();
|
$csv = array();
|
||||||
foreach($rows as $row) {
|
foreach($rows as $row) {
|
||||||
$csv[] = array_combine($header, $row);
|
$csv[] = array_combine($header, $row);
|
||||||
}
|
}
|
||||||
// Stockage des données
|
// Traitement des données
|
||||||
foreach($csv as $item ) {
|
foreach($csv as $item ) {
|
||||||
|
// Données valides
|
||||||
// N'insére que les utilisateurs dont l'id n'existe pas
|
|
||||||
// Vérifier la présence des champs
|
|
||||||
if( array_key_exists('id', $item)
|
if( array_key_exists('id', $item)
|
||||||
AND array_key_exists('prenom',$item)
|
AND array_key_exists('prenom',$item)
|
||||||
AND array_key_exists('nom',$item)
|
AND array_key_exists('nom',$item)
|
||||||
AND array_key_exists('groupe',$item)
|
AND array_key_exists('groupe',$item)
|
||||||
AND array_key_exists('email',$item)
|
AND array_key_exists('email',$item) ) {
|
||||||
AND !$this->getData(['user',helper::filter($item['id'] , helper::FILTER_ID)])
|
// L'utilisateur existe
|
||||||
)
|
if ( $this->getData(['user',helper::filter($item['id'] , helper::FILTER_ID)]))
|
||||||
{
|
{
|
||||||
// Nettoyage de l'identifiant
|
// Notification du doublon
|
||||||
$userId = helper::filter($item['id'] , helper::FILTER_ID);
|
$item['notification'] = template::ico('cancel');
|
||||||
// Enregistre le user
|
// Création du tableau de confirmation
|
||||||
$this->setData([
|
self::$users[] = [
|
||||||
'user',
|
helper::filter($item['id'] , helper::FILTER_ID),
|
||||||
$userId, [
|
$item['nom'],
|
||||||
'firstname' => $item['prenom'],
|
$item['prenom'],
|
||||||
'forgot' => 0,
|
self::$groups[$item['groupe']],
|
||||||
'group' => (int) $item['groupe'],
|
$item['prenom'],
|
||||||
'lastname' => $item['nom'],
|
|
||||||
'mail' => $item['email'],
|
|
||||||
'pseudo' => $item['prenom'],
|
|
||||||
'signature' => 1, // Pseudo
|
|
||||||
'password' => uniqid(), // A modifier à la première connexion
|
|
||||||
"connectFail" => null,
|
|
||||||
"connectTimeout" => null,
|
|
||||||
"accessUrl" => null,
|
|
||||||
"accessTimer" => null,
|
|
||||||
"accessCsrf" => null
|
|
||||||
]]);
|
|
||||||
|
|
||||||
// Icône de notification
|
|
||||||
$item['notification'] = template::ico('check');
|
|
||||||
// Envoi du mail
|
|
||||||
if ($this->getInput('userImportNotification',helper::FILTER_BOOLEAN) === true) {
|
|
||||||
$sent = $this->sendMail(
|
|
||||||
$item['email'],
|
$item['email'],
|
||||||
'Compte créé sur ' . $this->getData(['config', 'title']),
|
$item['notification']
|
||||||
'Bonjour <strong>' . $item['prenom'] . ' ' . $item['nom'] . '</strong>,<br><br>' .
|
];
|
||||||
'Un administrateur vous a créé un compte sur le site ' . $this->getData(['config', 'title']) . '. Vous trouverez ci-dessous les détails de votre compte.<br><br>' .
|
// L'utilisateur n'existe pas
|
||||||
'<strong>Identifiant du compte :</strong> ' . $userId . '<br>' .
|
} else {
|
||||||
'<small>Un mot de passe provisoire vous été attribué, à la première connexion cliquez sur Mot de passe Oublié.</small>'
|
// Nettoyage de l'identifiant
|
||||||
);
|
$userId = helper::filter($item['id'] , helper::FILTER_ID);
|
||||||
if ($sent === true) {
|
// Enregistre le user
|
||||||
// Mail envoyé changement de l'icône
|
$this->setData([
|
||||||
$item['notification'] = template::ico('comment') ;
|
'user',
|
||||||
}
|
$userId, [
|
||||||
|
'firstname' => $item['prenom'],
|
||||||
|
'forgot' => 0,
|
||||||
|
'group' => (int) $item['groupe'],
|
||||||
|
'lastname' => $item['nom'],
|
||||||
|
'mail' => $item['email'],
|
||||||
|
'pseudo' => $item['prenom'],
|
||||||
|
'signature' => 1, // Pseudo
|
||||||
|
'password' => uniqid(), // A modifier à la première connexion
|
||||||
|
"connectFail" => null,
|
||||||
|
"connectTimeout" => null,
|
||||||
|
"accessUrl" => null,
|
||||||
|
"accessTimer" => null,
|
||||||
|
"accessCsrf" => null
|
||||||
|
]]);
|
||||||
|
// Icône de notification
|
||||||
|
$item['notification'] = template::ico('check');
|
||||||
|
// Création du tableau de confirmation
|
||||||
|
self::$users[] = [
|
||||||
|
$userId,
|
||||||
|
$item['nom'],
|
||||||
|
$item['prenom'],
|
||||||
|
self::$groups[$item['groupe']],
|
||||||
|
$item['prenom'],
|
||||||
|
$item['email'],
|
||||||
|
$item['notification']
|
||||||
|
];
|
||||||
|
// Envoi du mail
|
||||||
|
if ($this->getInput('userImportNotification',helper::FILTER_BOOLEAN) === true) {
|
||||||
|
$sent = $this->sendMail(
|
||||||
|
$item['email'],
|
||||||
|
'Compte créé sur ' . $this->getData(['config', 'title']),
|
||||||
|
'Bonjour <strong>' . $item['prenom'] . ' ' . $item['nom'] . '</strong>,<br><br>' .
|
||||||
|
'Un administrateur vous a créé un compte sur le site ' . $this->getData(['config', 'title']) . '. Vous trouverez ci-dessous les détails de votre compte.<br><br>' .
|
||||||
|
'<strong>Identifiant du compte :</strong> ' . $userId . '<br>' .
|
||||||
|
'<small>Un mot de passe provisoire vous été attribué, à la première connexion cliquez sur Mot de passe Oublié.</small>'
|
||||||
|
);
|
||||||
|
if ($sent === true) {
|
||||||
|
// Mail envoyé changement de l'icône
|
||||||
|
$item['notification'] = template::ico('comment') ;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
$item['notification'] = template::ico('cancel');
|
|
||||||
}
|
}
|
||||||
// Création du tableau de confirmation
|
|
||||||
self::$users[] = [
|
|
||||||
$userId,
|
|
||||||
$item['nom'],
|
|
||||||
$item['prenom'],
|
|
||||||
self::$groups[$item['groupe']],
|
|
||||||
$item['prenom'],
|
|
||||||
$item['email'],
|
|
||||||
$item['notification']
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
if (empty(self::$users)) {
|
if (empty(self::$users)) {
|
||||||
$notification = 'Rien à importer' ;
|
$notification = 'Rien à importer, erreur de format ou fichier incorrect' ;
|
||||||
$success = false;
|
$success = false;
|
||||||
} else {
|
} else {
|
||||||
$notification = 'Importation effectuée' ;
|
$notification = 'Importation effectuée' ;
|
||||||
@ -673,4 +684,4 @@ class user extends common {
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user