diff options
Diffstat (limited to 'apps/files/ajax/scan.php')
-rw-r--r-- | apps/files/ajax/scan.php | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/apps/files/ajax/scan.php b/apps/files/ajax/scan.php new file mode 100644 index 00000000000..db09b7d5c64 --- /dev/null +++ b/apps/files/ajax/scan.php @@ -0,0 +1,38 @@ +<?php + +require_once '../../lib/base.php'; + +set_time_limit(0);//scanning can take ages + +$force=isset($_GET['force']) and $_GET['force']=='true'; +$checkOnly=isset($_GET['checkonly']) and $_GET['checkonly']=='true'; + +if(!$checkOnly){ + $eventSource=new OC_EventSource(); +} + + +//create the file cache if necesary +if($force or !OC_FileCache::inCache('')){ + if(!$checkOnly){ + OC_DB::beginTransaction(); + OC_FileCache::scan('',$eventSource); + OC_FileCache::clean(); + OC_DB::commit(); + $eventSource->send('success',true); + }else{ + OC_JSON::success(array('data'=>array('done'=>true))); + exit; + } +}else{ + if($checkOnly){ + OC_JSON::success(array('data'=>array('done'=>false))); + exit; + } + if(isset($eventSource)){ + $eventSource->send('success',false); + }else{ + exit; + } +} +$eventSource->close();
\ No newline at end of file |