summaryrefslogtreecommitdiffstats
path: root/apps/files_versions
diff options
context:
space:
mode:
authorBjörn Schießle <schiessle@owncloud.com>2012-12-17 18:00:11 +0100
committerBjörn Schießle <schiessle@owncloud.com>2012-12-17 18:00:11 +0100
commit0e0d54dc589dbca4aae820c61c8d491c46e884de (patch)
tree17d51732eafe6f0a7bca1e13df04267b7be618dd /apps/files_versions
parent2a423447813a3aa3997637430fc98d5fd4b45db3 (diff)
downloadnextcloud-server-0e0d54dc589dbca4aae820c61c8d491c46e884de.tar.gz
nextcloud-server-0e0d54dc589dbca4aae820c61c8d491c46e884de.zip
get timestamp from file instead from time(); typo fixed
Diffstat (limited to 'apps/files_versions')
-rw-r--r--apps/files_versions/lib/versions.php15
1 files changed, 11 insertions, 4 deletions
diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php
index 2cedfe061a1..14d7e7da165 100644
--- a/apps/files_versions/lib/versions.php
+++ b/apps/files_versions/lib/versions.php
@@ -92,7 +92,7 @@ class Storage {
}
// store a new version of a file
- $users_view->copy('files'.$filename, 'files_versions'.$filename.'.v'.time());
+ $users_view->copy('files'.$filename, 'files_versions'.$filename.'.v'.$users_view->filemtime('files'.$filename));
// expire old revisions if necessary
Storage::expire($filename);
@@ -109,13 +109,20 @@ class Storage {
list($uid, $filename) = self::getUidAndFilename($filename);
$users_view = new \OC_FilesystemView('/'.$uid);
+ //first create a new version
+ if ( !$users_view->file_exists('files_versions'.$filename.'.v'.$users_view->filemtime('files'.$filename))) {
+ $version = 'files_versions'.$filename.'.v'.$users_view->filemtime('files'.$filename);
+ $users_view->copy('files'.$filename, 'files_versions'.$filename.'.v'.$users_view->filemtime('files'.$filename));
+ }
+
// rollback
if( @$users_view->copy('files_versions'.$filename.'.v'.$revision, 'files'.$filename) ) {
-
+ Storage::expire($filename);
return true;
}else{
-
+ if (isset($version) ) {
+ $users_view->unlink($version);
return false;
}
@@ -274,7 +281,7 @@ class Storage {
} else { // time to move on to the next interval
$interval++;
$step = Storage::$max_versions_per_interval[$interval]['step'];
- $nextVersion = $version[$i]['version'] - $step;
+ $nextVersion = $versions[$i]['version'] - $step;
if ( Storage::$max_versions_per_interval[$interval]['intervalEndsAfter'] == -1 ) {
$nextInterval = -1;
} else {