From dbf57c9615246b406f46ee1bfcff2742536ed05d Mon Sep 17 00:00:00 2001 From: Kate Arzamastseva Date: Wed, 3 Aug 2011 16:28:51 +0300 Subject: issue #41 old version saved in the case of external edits --- inc/media.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'inc') diff --git a/inc/media.php b/inc/media.php index c009785fd..e8a537fd5 100644 --- a/inc/media.php +++ b/inc/media.php @@ -423,12 +423,23 @@ function media_upload_finish($fn_tmp, $fn, $id, $imime, $overwrite, $move = 'mov * @return int - revision date */ function media_saveOldRevision($id){ - global $conf; + global $conf, $lang; + $oldf = mediaFN($id); if(!@file_exists($oldf)) return ''; $date = filemtime($oldf); if (!$conf['mediarevisions']) return $date; + if (!getRevisionInfo($id, $date, 8192, true)) { + // there was an external edit, + // there is no log entry for current version of file + if (!@file_exists(mediaMetaFN($id,'.changes'))) { + addMediaLogEntry($date, $id, DOKU_CHANGE_TYPE_CREATE, $lang['created']); + } else { + addMediaLogEntry($date, $id, DOKU_CHANGE_TYPE_EDIT); + } + } + $newf = mediaFN($id,$date); io_makeFileDir($newf); if(copy($oldf, $newf)) { -- cgit v1.2.3