diff --git a/admin/themes/default/template/user_list.tpl b/admin/themes/default/template/user_list.tpl
index 407176313..e98109dcc 100644
--- a/admin/themes/default/template/user_list.tpl
+++ b/admin/themes/default/template/user_list.tpl
@@ -12,6 +12,9 @@
{combine_script id='jquery.ui.slider' require='jquery.ui' load='footer' path='themes/default/js/ui/minified/jquery.ui.slider.min.js'}
{combine_css path="themes/default/js/ui/theme/jquery.ui.slider.css"}
+{combine_script id='jquery.confirm' load='footer' require='jquery' path='themes/default/js/plugins/jquery-confirm.min.js'}
+{combine_css path="themes/default/js/plugins/jquery-confirm.min.css"}
+
{footer_script}
var selectedMessage_pattern = "{'%d of %d users selected'|translate|escape:javascript}";
var selectedMessage_none = "{'No user selected of %d users'|translate|escape:javascript}";
@@ -22,6 +25,7 @@ var registeredOn_pattern = "{'Registered on %s, %s.'|translate|escape:javascript
var lastVisit_pattern = "{'Last visit on %s, %s.'|translate|escape:javascript}";
var missingConfirm = "{'You need to confirm deletion'|translate|escape:javascript}";
var missingUsername = "{'Please, enter a login'|translate|escape:javascript}";
+let title_msg = '{'Are you sure you want to delete the user "%s"?'|@translate|escape:'javascript'}';
var allUsers = [{$all_users}];
var selection = [];
@@ -31,6 +35,11 @@ var protectedUsers = [{$protected_users}];
var passwordProtectedUsers = [{$password_protected_users}];
var guestUser = {$guest_user};
+
+const are_you_sure_msg = '{'Are you sure?'|@translate|@escape:'javascript'}';
+const confirm_msg = '{'Yes, I am sure'|@translate|@escape}';
+const cancel_msg = '{'No, I have changed my mind'|@translate|@escape}';
+
var truefalse = {
'true':"{'Yes'|translate}",
'false':"{'No'|translate}",
@@ -479,36 +488,44 @@ jQuery(document).on('click', '.close-user-details', function(e) {
});
/* delete user */
- jQuery(document).on('click', '.userDelete a', function() {
- if (!confirm("{/literal}{'Are you sure?'|translate|escape:javascript}{literal}")) {
- return false;
- }
-
+
+ $(document).on('click', '.userDelete a', function () {
var userId = jQuery(this).data('user_id');
var username = jQuery('#user'+userId+' .username').html();
-
- jQuery.ajax({
- url: "ws.php?format=json&method=pwg.users.delete",
- type:"POST",
- data: {
- user_id:userId,
- pwg_token:pwg_token
+ $.confirm({
+ title: title_msg.replace('%s', username),
+ buttons: {
+ confirm: {
+ text: confirm_msg,
+ btnClass: 'btn-red',
+ action: function () {
+ jQuery.ajax({
+ url: "ws.php?format=json&method=pwg.users.delete",
+ type:"POST",
+ data: {
+ user_id:userId,
+ pwg_token:pwg_token
+ },
+ beforeSend: function() {
+ jQuery('#user'+userId+' .userDelete .loading').show();
+ },
+ success:function(data) {
+ jQuery('.user_form_popin').colorbox.close();
+ jQuery('#showAddUser .infos').html('✔ User '+username+' deleted').show();
+ },
+ error:function(XMLHttpRequest, textStatus, errorThrows) {
+ jQuery('#user'+userId+' .userDelete .loading').hide();
+ }
+ })
+ }
+ },
+ cancel: {
+ text: cancel_msg
+ }
},
- beforeSend: function() {
- jQuery('#user'+userId+' .userDelete .loading').show();
- },
- success:function(data) {
- jQuery('.user_form_popin').colorbox.close();
- jQuery('#showAddUser .infos').html('✔ User '+username+' deleted').show();
- },
- error:function(XMLHttpRequest, textStatus, errorThrows) {
- jQuery('#user'+userId+' .userDelete .loading').hide();
- }
+ ...jConfirm_confirm_options
});
-
- return false;
});
-
jQuery(document).on('click', '.userProperties input[type=submit]', function() {
var userId = jQuery(this).data('user_id');
diff --git a/admin/themes/default/theme.css b/admin/themes/default/theme.css
index ca63ded32..c0c66bf0d 100644
--- a/admin/themes/default/theme.css
+++ b/admin/themes/default/theme.css
@@ -637,6 +637,19 @@ LI.menuLi {
cursor: pointer;
}
+.dropdown-option-content {
+ white-space: nowrap;
+ display: block;
+ text-align: initial;
+ padding: 5px 10px;
+ padding-right: 10px;
+ font-size: 13px;
+ padding-right: 15px;
+ color: white;
+ font-weight: 600;
+ cursor: pointer;
+}
+
.dropdown-option:hover {
text-decoration: none;
color: white;
@@ -1964,9 +1977,9 @@ h2:lang(en) { text-transform:capitalize; }
border-bottom-right-radius:5px;
margin-left: 0;
box-shadow: 0px 0px 5px #acacac;
- }
-
- .pluginContent {
+}
+.pluginMiniBox a:hover { color: white ;}
+.pluginContent {
width: 100%;
text-align: left;
background-color: #fafafa;
@@ -3874,6 +3887,9 @@ input:checked + .slider:before {
font-size: 20px !important;
}
+.jconfirm-title {
+ line-height: 1.5em;
+}
.jconfirm-buttons .btn {
text-transform: none !important;
diff --git a/language/en_UK/admin.lang.php b/language/en_UK/admin.lang.php
index 191ac374f..f77a31a23 100644
--- a/language/en_UK/admin.lang.php
+++ b/language/en_UK/admin.lang.php
@@ -1055,4 +1055,20 @@ $lang['Tag Manager'] = 'Tag Manager';
$lang['No tag found'] = 'No tag found';
$lang['Manage album photos'] = 'Manage album photos';
$lang['Manage sub-albums'] = 'Manage sub-albums';
-$lang['Delete album'] = 'Delete album';
\ No newline at end of file
+$lang['Delete album'] = 'Delete album';
+$lang['Are you sure you want to delete this site?'] = 'Are you sure you want to delete this site?';
+$lang['Yes, I am sure'] = 'Yes, I am sure';
+$lang['Are you sure you want to delete this theme?'] = 'Are you sure you want to delete this theme?';
+$lang['Are you sure you want to restore this plugin?'] = 'Are you sure you want to restore this plugin?';
+$lang['Are you sure you want to delete this?'] = 'Are you sure you want to delete this?';
+$lang['Are you sure you want to restore to default settings?'] = 'Are you sure you want to restore to default settings?';
+$lang['Are you sure you want to delete the ratings of the user "%s"?'] = 'Are you sure you want to delete the ratings of the user "%s"?';
+$lang['Are you sure you want to install the plugin "%s"?'] = 'Are you sure you want to install the plugin "%s"?';
+$lang['Are you sure you want to delete the plugin "%s"?'] = 'Are you sure you want to delete the plugin "%s"?';
+$lang['Are you sure you want to restore the plugin "%s"?'] = 'Are you sure you want to restore the plugin "%s"?';
+$lang['Are you sure you want to delete all sizes?'] = 'Are you sure you want to delete all sizes?';
+$lang['Are you sure you want to lock the gallery?'] = 'Are you sure you want to lock the gallery?';
+$lang['Are you sure you want to delete the language "%s"?'] = 'Are you sure you want to delete the language "%s"?';
+$lang['Are you sure you want to delete the theme "%s"?'] = 'Are you sure you want to delete the theme "%s"?';
+$lang['Are you sure you want to update all extensions?'] = 'Are you sure you want to update all extensions?';
+$lang['Are you sure you want to delete the user "%s"?'] = 'Are you sure you want to delete the user "%s"?';
diff --git a/language/fr_FR/admin.lang.php b/language/fr_FR/admin.lang.php
index 61f28bac6..e2a7de64b 100644
--- a/language/fr_FR/admin.lang.php
+++ b/language/fr_FR/admin.lang.php
@@ -458,9 +458,9 @@ $lang['Plugin list'] = "Liste des plugins";
$lang['Check for updates'] = "Rechercher les mises à jour";
$lang['Other plugins'] = "Autres plugins disponibles";
$lang['Last revisions'] = "Dernières révisions";
-$lang['Are you sure you want to delete this plugin?'] = "Etes-vous sûr de vouloir supprimer ce plugin?";
-$lang['Are you sure you want to install this plugin?'] = "Etes-vous sûr de vouloir installer ce plugin?";
-$lang['Are you sure to install this upgrade? You must verify if this version does not need uninstallation.'] = "Etes-vous sur de vouloir installer cette mise à jour? Vous devez vérifiez que cette mise à jour ne nécessite pas de désinstallation préalable.";
+$lang['Are you sure you want to delete this plugin?'] = "Êtes-vous sûr de vouloir supprimer ce plugin?";
+$lang['Are you sure you want to install this plugin?'] = "Êtes-vous sûr de vouloir installer ce plugin?";
+$lang['Are you sure to install this upgrade? You must verify if this version does not need uninstallation.'] = "Êtes-vous sur de vouloir installer cette mise à jour? Vous devez vérifiez que cette mise à jour ne nécessite pas de désinstallation préalable.";
$lang['Plugin has been successfully copied'] = "Le plugin a été copié avec succès.";
$lang['Can\'t create temporary file.'] = "Impossible de créer un fichier temporaire.";
$lang['Can\'t download archive.'] = "Impossible de télécharger l'archive.";
@@ -701,7 +701,7 @@ $lang['THIS PLUGIN IS NOW PART OF PIWIGO CORE! DELETE IT NOW.'] = 'CE PLUGIN FAI
$lang['ERROR: THIS PLUGIN IS MISSING BUT IT IS INSTALLED! UNINSTALL IT NOW.'] = 'ERREUR: CE PLUGIN EST MANQUANT MAIS TOUJOURS INSTALLÉ! DÉSINSTALLEZ-LE.';
$lang['display'] = 'Afficher';
$lang['Restore'] = "Restaurer";
-$lang['Restore default configuration. You will lose your plugin settings!'] = "Restaurer la configuration par défaut? Vous perdrez vos réglages personnels !";
+$lang['Restore default configuration. You will lose your plugin settings!'] = "Restaurer la configuration par défaut ? Vous perdrez vos réglages personnels !";
$lang['Thumbnails generation in progress...'] = 'Génération des miniatures en cours...';
$lang['Photos generation in progress...'] = 'Génération des photos en cours...';
$lang['%s photos have been regenerated'] = '%s photos ont été régénérées';
@@ -1021,8 +1021,6 @@ $lang['in gallery'] = 'dans la galerie';
$lang['in administration'] = 'dans l\'administration';
$lang['Displays a banner to install or open the official Piwigo app'] = 'Affiche une bannière pour installer et/ou ouvrir l\'application mobile officielle Piwigo';
$lang['Search albums'] = 'Rechercher des albums';
-
-
$lang['You have %d orphan tags %s'] = 'Vous avez %d tag(s) orphelin(s) %s';
$lang['Review'] = 'Examiner';
$lang['You have %s1 orphan : %s2'] = 'Vous avez %s1 orphelin(s) : %s2';
@@ -1059,4 +1057,20 @@ $lang['Tag Manager'] = 'Gestionnaire de tags';
$lang['No tag found'] = 'Pas de tag trouvé';
$lang['Manage album photos'] = 'Gérer les photos de l\'album';
$lang['Manage sub-albums'] = 'Gérer les sous-albums';
-$lang['Delete album'] = 'Supprimer l\'album';
\ No newline at end of file
+$lang['Delete album'] = 'Supprimer l\'album';
+$lang['Are you sure you want to delete this site?'] = 'Êtes-vous sûr de supprimer ce site ?';
+$lang['Yes, I am sure'] = 'Oui, je suis sûr';
+$lang['Are you sure you want to delete this theme?'] = 'Êtes-vous sûr de supprimer ce thème ?';
+$lang['Are you sure you want to restore this plugin?'] = 'Êtes-vous sûr de restaurer ce plugin ?';
+$lang['Are you sure you want to delete this?'] = 'Êtes-vous sûr de supprimer cela ?';
+$lang['Are you sure you want to restore to default settings?'] = 'Êtes-vous sûr de vouloir rétablir les valeurs par défaut ?';
+$lang['Are you sure you want to delete the ratings of the user "%s"?'] = 'Êtes-vous sûr de vouloir supprimer les notations de l\'utilisateur "%s" ?';
+$lang['Are you sure you want to install the plugin "%s"?'] = 'Êtes-vous sûr de vouloir installer le plugin "%s" ?';
+$lang['Are you sure you want to delete the plugin "%s"?'] = 'Êtes-vous sûr de vouloir supprimer le plugin "%s" ?';
+$lang['Are you sure you want to restore the plugin "%s"?'] = 'Êtes-vous sûr de vouloir restaurer le plugin "%s" ?';
+$lang['Are you sure you want to delete all sizes?'] = 'Êtes-vous sûr de vouloir supprimer toutes les tailles ?';
+$lang['Are you sure you want to lock the gallery?'] = 'Êtes-vous sûr de vouloir verrouiller la galerie ?';
+$lang['Are you sure you want to delete the language "%s"?'] = 'Êtes-vous sûr de vouloir supprimer la langue "%s" ?';
+$lang['Are you sure you want to delete the theme "%s"?'] = 'Êtes-vous sûr de vouloir supprimer le thème "%s" ?';
+$lang['Are you sure you want to update all extensions?'] = 'Êtes-vous sûr de vouloir mettre à jour toutes les extensions ?';
+$lang['Are you sure you want to delete the user "%s"?'] = 'Êtes-vous sûr de vouloir supprimer l\'utilisateur "%s" ?';