summaryrefslogtreecommitdiff
path: root/lib/exe/mediamanager.php
diff options
context:
space:
mode:
authorAdrian Lang <dokuwiki@adrianlang.de>2011-02-06 12:51:09 +0100
committerAdrian Lang <dokuwiki@adrianlang.de>2011-02-06 12:55:53 +0100
commit87229c84afbda98679146558235bc7212ea404ee (patch)
tree737e207675c475ce8b1ab118a5e8f399d99be716 /lib/exe/mediamanager.php
parent2343a762fb62ebed6ef140bca2d8b5aa4fa2983d (diff)
downloadrpg-87229c84afbda98679146558235bc7212ea404ee.tar.gz
rpg-87229c84afbda98679146558235bc7212ea404ee.tar.bz2
XML-RPC deleteAttachment now uses media_delete
Functionality changes: * deleteAttachment now triggers MEDIA_DELETE_FILE (closes FS#1568) * deletion success msg in mediamanager is correct, even when the ns dir was deleted * media_delete changed quite a bit
Diffstat (limited to 'lib/exe/mediamanager.php')
-rw-r--r--lib/exe/mediamanager.php22
1 files changed, 14 insertions, 8 deletions
diff --git a/lib/exe/mediamanager.php b/lib/exe/mediamanager.php
index c79a25c08..6f2add2be 100644
--- a/lib/exe/mediamanager.php
+++ b/lib/exe/mediamanager.php
@@ -82,18 +82,24 @@
// handle deletion
if($DEL) {
- $INUSE = media_inuse($DEL);
- if(!$INUSE) {
- if(media_delete($DEL,$AUTH)) {
- msg(sprintf($lang['deletesucc'],noNS($DEL)),1);
- } else {
- msg(sprintf($lang['deletefail'],noNS($DEL)),-1);
+ $res = 0;
+ if(checkSecurityToken()) {
+ $res = media_delete($DEL,$AUTH);
+ }
+ if ($res & DOKU_MEDIA_DELETED) {
+ $msg = sprintf($lang['deletesucc'], noNS($DEL));
+ if ($res & DOKU_MEDIA_EMPTY_NS) {
+ // current namespace was removed. redirecting to root ns passing msg along
+ send_redirect(DOKU_URL.'lib/exe/mediamanager.php?msg1='.
+ rawurlencode($msg));
}
- } else {
+ msg($msg,1);
+ } elseif ($res & DOKU_MEDIA_INUSE) {
if(!$conf['refshow']) {
- unset($INUSE);
msg(sprintf($lang['mediainuse'],noNS($DEL)),0);
}
+ } else {
+ msg(sprintf($lang['deletefail'],noNS($DEL)),-1);
}
}