RT#18834 Cacti integration [schema history fix and cleanup refactor]
[freeside.git] / FS / FS / Cron / cleanup.pm
index 4c5cff2..6ec4013 100644 (file)
@@ -2,8 +2,9 @@ package FS::Cron::cleanup;
 use base 'Exporter';
 use vars '@EXPORT_OK';
 use FS::queue;
+use FS::Record qw( qsearch );
 
-@EXPORT_OK = qw( cleanup );
+@EXPORT_OK = qw( cleanup cleanup_before_backup );
 
 # start janitor jobs
 sub cleanup {
@@ -15,4 +16,19 @@ sub cleanup {
   $job->insert('_JOB');
 }
 
+sub cleanup_before_backup {
+  #remove outdated cacti_page entries
+  foreach my $export (qsearch({
+    'table' => 'part_export',
+    'hashref' => { 'exporttype' => 'cacti' }
+  })) {
+    $export->cleanup;
+  }
+  #remove cache files
+  my $deldir = "$FS::UID::cache_dir/cache.$FS::UID::datasrc/";
+  unlink <${deldir}.invoice*>;
+  unlink <${deldir}.letter*>;
+  unlink <${deldir}.CGItemp*>;
+}
+
 1;