Skip to content
Snippets Groups Projects
Commit 33d35179 authored by Vinciane's avatar Vinciane
Browse files

FEAT #9692 Delete email

parent a792d5a7
No related branches found
No related tags found
No related merge requests found
...@@ -329,4 +329,39 @@ class EmailController ...@@ -329,4 +329,39 @@ class EmailController
return ['success' => 'success']; return ['success' => 'success'];
} }
public static function deleteEmail(array $args)
{
ValidatorModel::notEmpty($args, ['userId', 'id']);
ValidatorModel::intVal($args, ['userId', 'id']);
$user = UserModel::getByLogin(['login' => $GLOBALS['userId'], 'select' => ['id']]);
if (empty($user)) {
return ['errors' => 'user not found'];
}
$email = EmailModel::getById(['select' => ['id', 'user_id'], 'id' => $args['id']]);
if (empty($email)) {
return ['errors' => 'email not found'];
}
if ($email['user_id'] != $user['id']) {
return ['errors' => 'email out of perimeter'];
}
EmailModel::delete([
'where' => ['id = ?'],
'data' => [$args['id']]
]);
HistoryController::add([
'tableName' => 'emails',
'recordId' => $args['id'],
'eventType' => 'DEL',
'eventId' => 'emailDeletion',
'info' => _EMAIL_REMOVED
]);
return ['success' => 'email deleted'];
}
} }
...@@ -83,4 +83,18 @@ class EmailModel ...@@ -83,4 +83,18 @@ class EmailModel
return true; return true;
} }
public static function delete(array $aArgs)
{
ValidatorModel::notEmpty($aArgs, ['where', 'data']);
ValidatorModel::arrayType($aArgs, ['where', 'data']);
DatabaseModel::delete([
'table' => 'emails',
'where' => $aArgs['where'],
'data' => $aArgs['data']
]);
return true;
}
} }
...@@ -54,6 +54,7 @@ define('_DOCTYPE_SECONDLEVEL_UPDATED', 'Doctype second level edited'); ...@@ -54,6 +54,7 @@ define('_DOCTYPE_SECONDLEVEL_UPDATED', 'Doctype second level edited');
define('_DOCUMENT_NOT_FOUND', 'Document not found'); define('_DOCUMENT_NOT_FOUND', 'Document not found');
define('_DOCUMENT_OUT_PERIMETER', 'Document out of perimeter'); define('_DOCUMENT_OUT_PERIMETER', 'Document out of perimeter');
define('_EMAIL_ADDED', 'Email added'); define('_EMAIL_ADDED', 'Email added');
define('_EMAIL_REMOVED', 'Email removed');
define('_ENTITY_CREATION', 'Entity creation'); define('_ENTITY_CREATION', 'Entity creation');
define('_ENTITY_MODIFICATION', 'Entity modification'); define('_ENTITY_MODIFICATION', 'Entity modification');
define('_ENTITY_SUPPRESSION', 'Entity suppression'); define('_ENTITY_SUPPRESSION', 'Entity suppression');
......
...@@ -54,6 +54,7 @@ define('_DOCTYPE_SECONDLEVEL_UPDATED', 'Sous-chemise modifiée'); ...@@ -54,6 +54,7 @@ define('_DOCTYPE_SECONDLEVEL_UPDATED', 'Sous-chemise modifiée');
define('_DOCUMENT_NOT_FOUND', 'Document introuvable'); define('_DOCUMENT_NOT_FOUND', 'Document introuvable');
define('_DOCUMENT_OUT_PERIMETER', 'Document en dehors du périmètre'); define('_DOCUMENT_OUT_PERIMETER', 'Document en dehors du périmètre');
define('_EMAIL_ADDED', 'Courriel ajouté'); define('_EMAIL_ADDED', 'Courriel ajouté');
define('_EMAIL_REMOVED', 'Courriel supprimé');
define('_ENTITY_CREATION', 'Création entité'); define('_ENTITY_CREATION', 'Création entité');
define('_ENTITY_MODIFICATION', 'Modification entité'); define('_ENTITY_MODIFICATION', 'Modification entité');
define('_ENTITY_SUPPRESSION', 'Suppression entité'); define('_ENTITY_SUPPRESSION', 'Suppression entité');
......
...@@ -44,6 +44,7 @@ define('_DOCTYPE_SECONDLEVEL_UPDATED', 'Submap gewijzigd'); ...@@ -44,6 +44,7 @@ define('_DOCTYPE_SECONDLEVEL_UPDATED', 'Submap gewijzigd');
define('_DOCUMENT_NOT_FOUND', 'Document onvindbaar'); define('_DOCUMENT_NOT_FOUND', 'Document onvindbaar');
define('_DOCUMENT_OUT_PERIMETER', 'Document buiten de omtrek'); //_TO_TRANSLATE define('_DOCUMENT_OUT_PERIMETER', 'Document buiten de omtrek'); //_TO_TRANSLATE
define('_EMAIL_ADDED', 'TO_TRANSLATE : Email added'); define('_EMAIL_ADDED', 'TO_TRANSLATE : Email added');
define('_EMAIL_REMOVED', 'E-mail verwijderd');
define('_ENTITY_CREATION', 'Aanmaak eenheid'); define('_ENTITY_CREATION', 'Aanmaak eenheid');
define('_ENTITY_MODIFICATION', 'Wijziging eenheid'); define('_ENTITY_MODIFICATION', 'Wijziging eenheid');
define('_ENTITY_SUPPRESSION', 'Verwijdering eenheid'); define('_ENTITY_SUPPRESSION', 'Verwijdering eenheid');
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment