Dateimanagment: itime/mtime in DB kann gesetzt werden, mtime kann in Filesystem-Backe...
authorMartin Helmling martin.helmling@octosoft.eu <martin.helmling@octosoft.eu>
Sat, 30 Sep 2017 13:24:27 +0000 (15:24 +0200)
committerMartin Helmling martin.helmling@octosoft.eu <martin.helmling@octosoft.eu>
Tue, 10 Oct 2017 13:54:00 +0000 (15:54 +0200)
Wird benötigt falls man bestehende Dateien übernehmen will

SL/File.pm
SL/File/Backend/Filesystem.pm
scripts/sync_files_from_backend.pl

index 3296974..8305594 100644 (file)
@@ -220,6 +220,8 @@ sub _save {
         title          => $params{title},
         description    => $params{description},
       );
+      $file->itime($params{mtime})    if $params{mtime};
+      $params{itime} = $params{mtime} if $params{mtime};
     }
   } else {
     $exists = 1;
@@ -236,12 +238,14 @@ sub _save {
     # load itime for new file
     $file->save->load;
   }
-  $main::lxdebug->message(LXDebug->DEBUG2(), "backend3=" .$file->backend);
+
+  $file->mtime(DateTime->now_local) unless $params{mtime};
+  $file->mtime($params{mtime}     ) if     $params{mtime};
+
   my $backend = $self->_get_backend($file->backend);
   $params{dbfile} = $file;
   $backend->save(%params);
 
-  $file->mtime(DateTime->now_local);
   $file->save;
   #ShopImage
   if($file->object_type eq "shop_image"){
index c42707d..ec67d74 100644 (file)
@@ -79,6 +79,9 @@ sub save {
     print OUT $params{file_contents};
     close(OUT);
   }
+  if ($params{mtime}) {
+    utime($params{mtime}, $params{mtime}, $tofile);
+  }
   return 1;
 }
 
index 26626e1..2c36148 100755 (executable)
@@ -82,7 +82,7 @@ parse_args(\%config);
 setup();
 
 SL::File->sync_from_backend( file_type => 'document');
-SL::File->sync_from_backend( file_type => 'attachments');
-SL::File->sync_from_backend( file_type => 'images');
+SL::File->sync_from_backend( file_type => 'attachment');
+SL::File->sync_from_backend( file_type => 'image');
 
 1;