Improve image deletion pages (#138)

Show correct button for multidelete-form, remove switched_output and doubled state-variables, show formerly lost delete-messages on ML after deletion instead of blank page
This commit is contained in:
onli 2014-05-29 22:26:01 +02:00
parent 1bce7ec7ec
commit 6dd5b4aa6b
2 changed files with 23 additions and 21 deletions

View File

@ -58,13 +58,15 @@ switch ($serendipity['GET']['adminAction']) {
}
$messages = array();
$data['switched_output'] = true;
$data['is_doDelete'] = true;
$data['case_do_delete'] = true;
$messages[] = serendipity_deleteImage($serendipity['GET']['fid']);
$messages[] = sprintf(RIP_ENTRY, $serendipity['GET']['fid']);
showMediaLibrary($messages);
$data['showML'] = showMediaLibrary();
$data['messages'] = $messages;
unset($messages);
break;
case 'doMultiDelete':
if (!serendipity_checkFormToken() || !serendipity_checkPermission('adminImagesDelete')) {
@ -73,8 +75,7 @@ switch ($serendipity['GET']['adminAction']) {
$messages = array();
$parts = explode(',', $serendipity['GET']['id']);
$data['switched_output'] = true;
$data['is_doMultiDelete'] = true;
$data['case_do_multidelete'] = true;
foreach($parts AS $id) {
$id = (int)$id;
if ($id > 0) {
@ -83,8 +84,10 @@ switch ($serendipity['GET']['adminAction']) {
$messages[] = sprintf(RIP_ENTRY, $image['id'] . ' - ' . htmlspecialchars($image['realname']));
}
}
showMediaLibrary($messages);
$data['showML'] = showMediaLibrary();
$data['messages'] = $messages;
unset($messages);
break;
case 'delete':
$file = serendipity_fetchImageFromDatabase($serendipity['GET']['fid']);
@ -94,7 +97,6 @@ switch ($serendipity['GET']['adminAction']) {
}
$data['case_delete'] = true;
$data['is_delete'] = true;
if (!isset($serendipity['adminFile'])) {
$serendipity['adminFile'] = 'serendipity_admin.php';
}
@ -113,7 +115,6 @@ switch ($serendipity['GET']['adminAction']) {
$ids = '';
$data['rip_image'] = array();
$data['case_multidelete'] = true;
$data['is_multidelete'] = true;
foreach($serendipity['POST']['multiDelete'] AS $idx => $id) {
$ids .= (int)$id . ',';
$image = serendipity_fetchImageFromDatabase($id);
@ -124,7 +125,7 @@ switch ($serendipity['GET']['adminAction']) {
}
$abortLoc = $serendipity['serendipityHTTPPath'] . $serendipity['adminFile'] . '?serendipity[adminModule]=images';
$newLoc = $serendipity['serendipityHTTPPath'] . $serendipity['adminFile'] . '?' . serendipity_setFormToken('url') . '&serendipity[action]=admin&serendipity[adminModule]=images&serendipity[adminAction]=doMultiDelete&serendipity[id]=' . $ids;
$data['switched_output'] = true;
$data['case_confirm_deletion'] = true;
$data['abortLoc'] = $abortLoc;
$data['newLoc'] = $newLoc;
break;
@ -683,7 +684,7 @@ function showMediaLibrary($messages=false, $addvar_check = false, $smarty_vars =
global $serendipity;
if (!serendipity_checkPermission('adminImagesView')) {
return;
return;
}
$output = "";

View File

@ -27,20 +27,21 @@
</div>
</form>
{/if}
{if $switched_output}
{if $case_multidelete}
<form id="delete_image" method="get">
{if ( $is_delete || $is_multidelete )}
<span class="msg_notice"><span class="icon-info-circled"></span> {$CONST.ABOUT_TO_DELETE_FILES}</span>
{foreach $rip_image AS $ripimg}
<span class="msg_hint"><span class="icon-help-circled"></span> {$ripimg}</span>
{/foreach}
<div class="form_buttons">
<a class="button_link icon_link" href="{$newLoc}">{$CONST.DUMP_IT}</a>
<a class="button_link icon_link" href="{$smarty.server.HTTP_REFERER|escape}">{$CONST.NOT_REALLY}</a>
</div>
{/if}
<span class="msg_notice"><span class="icon-info-circled"></span> {$CONST.ABOUT_TO_DELETE_FILES}</span>
{foreach $rip_image AS $ripimg}
<span class="msg_hint"><span class="icon-help-circled"></span> {$ripimg}</span>
{/foreach}
<div class="form_buttons">
<a class="button_link state_cancel icon_link" href="{$abortLoc}">{$CONST.BACK}</a>
<a class="button_link state_submit icon_link" href="{$newLoc}">{$CONST.DUMP_IT}</a>
</div>
</form>
{/if}
{if $case_do_multidelete || $case_do_delete}
{if $showML}{$showML}{/if}
{/if}
{if $case_rename}
{if $go_back}
<input class="go_back" type="button" value="{$CONST.BACK}">