summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--inc/html.php2
-rw-r--r--inc/lang/en/lang.php4
-rw-r--r--inc/media.php27
-rw-r--r--lib/exe/mediamanager.php2
-rw-r--r--lib/scripts/media.js3
5 files changed, 24 insertions, 14 deletions
diff --git a/inc/html.php b/inc/html.php
index ee0711b6a..59b4cb6a9 100644
--- a/inc/html.php
+++ b/inc/html.php
@@ -450,7 +450,7 @@ function html_revisions($first=0, $media_id = false){
if (!$media_id) print p_locale_xhtml('revisions');
$params = array('id' => 'page__revisions');
- if ($media_id) $params['action'] = media_managerURL(array('image' => $media_id));
+ if ($media_id) $params['action'] = media_managerURL(array('image' => $media_id), '&');
$form = new Doku_Form($params);
$form->addElement(form_makeOpenTag('ul'));
diff --git a/inc/lang/en/lang.php b/inc/lang/en/lang.php
index 7a2050fac..ea6bf2646 100644
--- a/inc/lang/en/lang.php
+++ b/inc/lang/en/lang.php
@@ -225,6 +225,7 @@ $lang['js']['linkwiz'] = 'Link Wizard';
$lang['js']['linkto'] = 'Link to:';
$lang['js']['del_confirm']= 'Really delete selected item(s)?';
+$lang['js']['restore_confirm']= 'Really restore this version?';
$lang['admin_register']= 'Add new user';
$lang['metaedit'] = 'Edit Metadata';
@@ -333,8 +334,7 @@ $lang['media_historytab'] = 'History';
$lang['media_thumbsview'] = 'Thumbnails';
$lang['media_listview'] = 'List';
$lang['media_sort'] = 'Sort';
-$lang['media_search'] = 'Search';
-$lang['media_view'] = 'View';
+$lang['media_search'] = 'Search in the <b>%s</b> namespace.';
$lang['media_edit'] = 'Edit';
$lang['media_history'] = 'These are the older revisions of the file.';
$lang['media_meta_edited']= 'metadata edited';
diff --git a/inc/media.php b/inc/media.php
index 5a1da55cd..fbbca401c 100644
--- a/inc/media.php
+++ b/inc/media.php
@@ -112,7 +112,7 @@ function media_metaform($id,$auth,$fullscreen = false){
echo '<h1>'.hsc(noNS($id)).'</h1>'.NL;
$action = DOKU_BASE.'lib/exe/mediamanager.php';
} else {
- $action = media_managerURL(array('tab_details' => 'view'));
+ $action = media_managerURL(array('tab_details' => 'view'), '&');
}
echo '<form action="'.$action.'" id="mediamanager__save_meta" accept-charset="utf-8" method="post" class="meta">'.NL;
@@ -204,6 +204,7 @@ define('DOKU_MEDIA_EMPTY_NS', 8);
DOKU_MEDIA_INUSE
*/
function media_delete($id,$auth){
+ global $lang;
if($auth < AUTH_DELETE) return DOKU_MEDIA_NOT_AUTH;
if(media_inuse($id)) return DOKU_MEDIA_INUSE;
@@ -219,9 +220,15 @@ function media_delete($id,$auth){
$data['del'] = false;
$evt = new Doku_Event('MEDIA_DELETE_FILE',$data);
if ($evt->advise_before()) {
+ $old = @filemtime($file);
+ if(!@file_exists(mediaFN($id, $old)) && @file_exists($file)) {
+ // add old revision to the attic
+ media_saveOldRevision($id);
+ }
+
$data['unl'] = @unlink($file);
if($data['unl']){
- addMediaLogEntry(time(), $id, DOKU_CHANGE_TYPE_DELETE);
+ addMediaLogEntry(time(), $id, DOKU_CHANGE_TYPE_DELETE, $lang['deleted']);
$data['del'] = io_sweepNS($id,'mediadir');
}
}
@@ -394,7 +401,7 @@ function media_upload_finish($fn_tmp, $fn, $id, $imime, $overwrite, $move = 'mov
media_notify($id,$fn,$imime);
// add a log entry to the media changelog
if ($REV){
- addMediaLogEntry($new, $id, DOKU_CHANGE_TYPE_REVERT, '', $REV);
+ addMediaLogEntry($new, $id, DOKU_CHANGE_TYPE_REVERT, $lang['restored'], $REV);
} elseif ($overwrite) {
addMediaLogEntry($new, $id, DOKU_CHANGE_TYPE_EDIT);
} else {
@@ -692,7 +699,7 @@ function media_tab_search($ns,$auth=null) {
if (!$query) $query = '';
echo '<div class="background-container">';
- echo $lang['media_search'];
+ echo sprintf($lang['media_search'], $ns);
echo'</div>';
echo '<div class="scroll-container">';
@@ -809,18 +816,18 @@ function media_preview($image, $auth, $rev=false) {
// delete button
if($auth >= AUTH_DELETE && !$rev){
$form = new Doku_Form(array('id' => 'mediamanager__btn_delete',
- 'action'=>media_managerURL(array('delete' => $image))));
+ 'action'=>media_managerURL(array('delete' => $image), '&')));
$form->addElement(form_makeButton('submit','',$lang['btn_delete']));
$form->printForm();
$form = new Doku_Form(array('id' => 'mediamanager__btn_update',
- 'action'=>media_managerURL(array('image' => $image, 'mediado' => 'update'))));
+ 'action'=>media_managerURL(array('image' => $image, 'mediado' => 'update'), '&')));
$form->addElement(form_makeButton('submit','',$lang['media_update']));
$form->printForm();
}
if($auth >= AUTH_DELETE && $rev){
$form = new Doku_Form(array('id' => 'mediamanager__btn_restore',
- 'action'=>media_managerURL(array('image' => $image))));
+ 'action'=>media_managerURL(array('image' => $image), '&')));
$form->addHidden('mediado','restore');
$form->addHidden('rev',$rev);
$form->addElement(form_makeButton('submit','',$lang['media_restore']));
@@ -1214,7 +1221,7 @@ function media_printimgdetail($item, $fullscreen=false){
* @param string $amp - separator
* @return string - link
*/
-function media_managerURL($params=false, $amp='&') {
+function media_managerURL($params=false, $amp='&amp;') {
global $conf;
global $ID;
@@ -1266,7 +1273,7 @@ function media_uploadform($ns, $auth, $fullscreen = false){
$params['action'] = DOKU_BASE.'lib/exe/mediamanager.php';
} else {
$params['action'] = media_managerURL(array('tab_files' => 'files',
- 'tab_details' => 'view'));
+ 'tab_details' => 'view'), '&');
}
$form = new Doku_Form($params);
@@ -1339,7 +1346,7 @@ function media_searchform($ns,$query='',$fullscreen=false){
// The default HTML search form
$params = array('id' => 'dw__mediasearch');
if (!$fullscreen) $params['action'] = DOKU_BASE.'lib/exe/mediamanager.php';
- else $params['action'] = media_managerURL();
+ else $params['action'] = media_managerURL(array(), '&');
$form = new Doku_Form($params);
if (!$fullscreen) $form->addElement('<div class="upload">' . $lang['mediasearch'] . '</div>');
$form->addElement(formSecurityToken());
diff --git a/lib/exe/mediamanager.php b/lib/exe/mediamanager.php
index 77eb2facb..939b5a053 100644
--- a/lib/exe/mediamanager.php
+++ b/lib/exe/mediamanager.php
@@ -80,7 +80,7 @@
$JUMPTO = media_metasave($IMG,$AUTH,$_REQUEST['meta']);
}
- if($IMG && $_REQUEST['mediado'] == 'save') {
+ if($IMG && ($_REQUEST['mediado'] == 'save' || @array_key_exists('save', $_REQUEST['mediado']))) {
$JUMPTO = media_metasave($IMG,$AUTH,$_REQUEST['meta']);
}
diff --git a/lib/scripts/media.js b/lib/scripts/media.js
index 245519cbc..4eb1e7b63 100644
--- a/lib/scripts/media.js
+++ b/lib/scripts/media.js
@@ -405,6 +405,9 @@
jQuery('div.success, div.info, div.error, div.notify').remove();
+ if (link[0].id == 'mediamanager__btn_delete' && !confirm(LANG['del_confirm'])) return false;
+ if (link[0].id == 'mediamanager__btn_restore' && !confirm(LANG['restore_confirm'])) return false;
+
content = $('#mediamanager__layout_detail');
$('.scroll-container', content).html('<img src="' + DOKU_BASE + 'lib/images/loading.gif" alt="..." class="load" />');