diff options
author | Kate Arzamastseva <pshns@ukr.net> | 2011-08-03 16:28:51 +0300 |
---|---|---|
committer | Kate Arzamastseva <pshns@ukr.net> | 2011-08-03 16:28:51 +0300 |
commit | dbf57c9615246b406f46ee1bfcff2742536ed05d (patch) | |
tree | 88609cf2a9a4ee072e5a149e4aabfeb4a80561c6 | |
parent | 92cac9a97ee63d9c3c9bb8b0da1e3eb0604ba04f (diff) | |
download | rpg-dbf57c9615246b406f46ee1bfcff2742536ed05d.tar.gz rpg-dbf57c9615246b406f46ee1bfcff2742536ed05d.tar.bz2 |
issue #41 old version saved in the case of external edits
-rw-r--r-- | inc/media.php | 13 |
1 files changed, 12 insertions, 1 deletions
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)) { |