diff --git a/admin/maintenance_actions.php b/admin/maintenance_actions.php
index 989af624a..abfa9a02c 100644
--- a/admin/maintenance_actions.php
+++ b/admin/maintenance_actions.php
@@ -164,7 +164,15 @@ DELETE
}
case 'derivatives':
{
- clear_derivative_cache($_GET['type']);
+ $types_str = $_GET['type'];
+ if ($types_str == "all") {
+ clear_derivative_cache($_GET['type']);
+ } else {
+ $types = explode('_', $types_str);
+ foreach ($types as $type_to_clear) {
+ clear_derivative_cache($type_to_clear);
+ }
+ }
break;
}
@@ -231,15 +239,15 @@ DELETE
// +-----------------------------------------------------------------------+
$template->set_filenames(array('maintenance'=>'maintenance_actions.tpl'));
-
+$pwg_token = get_pwg_token();
$url_format = get_root_url().'admin.php?page=maintenance&action=%s&pwg_token='.get_pwg_token();
-$purge_urls[l10n('All')] = sprintf($url_format, 'derivatives').'&type=all';
+$purge_urls[l10n('All')] = 'all';
foreach(ImageStdParams::get_defined_type_map() as $params)
{
- $purge_urls[ l10n($params->type) ] = sprintf($url_format, 'derivatives').'&type='.$params->type;
+ $purge_urls[ l10n($params->type) ] = $params->type;
}
-$purge_urls[ l10n(IMG_CUSTOM) ] = sprintf($url_format, 'derivatives').'&type='.IMG_CUSTOM;
+$purge_urls[ l10n(IMG_CUSTOM) ] = IMG_CUSTOM;
$php_current_timestamp = date("Y-m-d H:i:s");
$db_version = pwg_get_db_version();
@@ -273,6 +281,7 @@ $template->assign(
'U_PHPINFO' => sprintf($url_format, 'phpinfo'),
'PHP_DATATIME' => $php_current_timestamp,
'DB_DATATIME' => $db_current_date,
+ 'pwg_token' => $pwg_token
)
);
diff --git a/admin/themes/default/template/maintenance.tpl b/admin/themes/default/template/maintenance.tpl
deleted file mode 100644
index 1331bb1c9..000000000
--- a/admin/themes/default/template/maintenance.tpl
+++ /dev/null
@@ -1,106 +0,0 @@
-{combine_script id='common' load='footer' path='admin/themes/default/js/common.js'}
-{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}
-const confirm_msg = '{"Yes, I am sure"|@translate}';
-const cancel_msg = "{"No, I have changed my mind"|@translate}";
-$(".lock-gallery-button").each(function() {
- const gallery_tip = '{"A locked gallery is only visible to administrators"|@translate|@escape:'javascript'}';
- let title = '{"Are you sure you want to lock the gallery?"|@translate}';
- let confirm_msg_gallery = '{"Yes, I want to lock the gallery"|@translate}';
- let cancel_msg_gallery = '{"Keep it unlocked"|@translate}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg,
- alert_content: gallery_tip
- });
-});
-$(".purge-history-detail-button").each(function() {
- const title = '{"Purge history detail"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-$(".purge-history-summary-button").each(function() {
- const title = '{"Purge history summary"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-$(".purge-search-history-button").each(function() {
- const title = '{"Purge search history"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-$(".delete-all-sizes-button").each(function() {
- const title = '{"Are you sure you want to delete all sizes?"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-{/footer_script}
-
-
{'Maintenance'|@translate}
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/admin/themes/default/template/maintenance_actions.tpl b/admin/themes/default/template/maintenance_actions.tpl
index aae32ce7a..181f3fa4f 100644
--- a/admin/themes/default/template/maintenance_actions.tpl
+++ b/admin/themes/default/template/maintenance_actions.tpl
@@ -53,15 +53,46 @@ $(".delete-all-sizes-button").each(function() {
$(".delete-size-check").click(function () {
if ($(this).attr('data-selected') == '1') {
$(this).attr('data-selected', '0');
- removeSelectedItem($(this).attr('data-id'));
$(this).find("i").hide();
} else {
$(this).attr('data-selected', '1');
- addSelectedItem($(this).attr('data-id'));
$(this).find("i").show();
}
- //updateSelectionSize();
+ $(this).trigger("change");
});
+$(".delete-size-check:first").change(function() {
+ if ($(this).attr('data-selected') == '1') {
+ $(".delete-size-check").hide();
+ $(".delete-size-check").attr("data-selected", "1");
+ $(this).show();
+ } else {
+ $(".delete-size-check").show();
+ $(".delete-size-check").attr("data-selected", "0");
+ }
+})
+const delete_deriv_URL = "admin.php?page=maintenance&action=derivatives&";
+$(".delete-size-check").change(function() {
+ let delete_deriv_with_token = delete_deriv_URL + "pwg_token=" + "{$pwg_token}&";
+ let types_str = '';
+ let selected = []
+ $(".delete-size-check").each(function () {
+ if ($(this).attr("data-selected") == '1') {
+ selected.push($(this).attr("name"));
+ }
+ })
+ if (selected.length == 0) {
+ $(".delete-sizes").attr("href", "");
+ } else {
+ if (selected[0] == "all") {
+ types_str = "all";
+ } else {
+ types_str = selected.join("_");
+ }
+ console.log(selected);
+ $(".delete-sizes").attr("href", delete_deriv_with_token + "type=" + types_str);
+ }
+})
+
{/footer_script}
@@ -90,27 +121,23 @@ $(".delete-size-check").click(function () {
{'Purge history detail'|@translate}
{'Purge history summary'|@translate}
{'Purge sessions'|@translate}
- {'Purge never used notification feeds'|@translate}
+ {'Purge never used notification feeds'|@translate}
{'Purge search history'|@translate}
- {'Purge compiled templates'|@translate}
-
{'Delete multiple size images'|@translate}
-
+
{foreach from=$purge_derivatives key=name item=url name=loop}
-
-
{$name}
+
+ {$name}
{/foreach}
-
Delete these sizes
-
+
Delete these sizes
\ No newline at end of file
diff --git a/admin/themes/default/template/maintenance_env.tpl b/admin/themes/default/template/maintenance_env.tpl
index bd32592e2..6d4fbce47 100644
--- a/admin/themes/default/template/maintenance_env.tpl
+++ b/admin/themes/default/template/maintenance_env.tpl
@@ -1,62 +1,10 @@
-{combine_script id='common' load='footer' path='admin/themes/default/js/common.js'}
-{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}
-const confirm_msg = '{"Yes, I am sure"|@translate}';
-const cancel_msg = "{"No, I have changed my mind"|@translate}";
-$(".lock-gallery-button").each(function() {
- const gallery_tip = '{"A locked gallery is only visible to administrators"|@translate|@escape:'javascript'}';
- let title = '{"Are you sure you want to lock the gallery?"|@translate}';
- let confirm_msg_gallery = '{"Yes, I want to lock the gallery"|@translate}';
- let cancel_msg_gallery = '{"Keep it unlocked"|@translate}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg,
- alert_content: gallery_tip
- });
-});
-$(".purge-history-detail-button").each(function() {
- const title = '{"Purge history detail"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-$(".purge-history-summary-button").each(function() {
- const title = '{"Purge history summary"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-$(".purge-search-history-button").each(function() {
- const title = '{"Purge search history"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-$(".delete-all-sizes-button").each(function() {
- const title = '{"Are you sure you want to delete all sizes?"|@translate|@escape:'javascript'}';
- $(this).pwg_jconfirm_follow_href({
- alert_title: title,
- alert_confirm: confirm_msg,
- alert_cancel: cancel_msg
- });
-});
-{/footer_script}
-
{'Maintenance'|@translate}