diff options
Diffstat (limited to 'files/ajax')
-rw-r--r-- | files/ajax/scan.php | 37 | ||||
-rw-r--r-- | files/ajax/upload.php | 2 |
2 files changed, 38 insertions, 1 deletions
diff --git a/files/ajax/scan.php b/files/ajax/scan.php new file mode 100644 index 00000000000..565275911b4 --- /dev/null +++ b/files/ajax/scan.php @@ -0,0 +1,37 @@ +<?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_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 diff --git a/files/ajax/upload.php b/files/ajax/upload.php index 5f0f68d9531..241edc216ff 100644 --- a/files/ajax/upload.php +++ b/files/ajax/upload.php @@ -47,7 +47,7 @@ if(strpos($dir,'..') === false){ $fileCount=count($files['name']); for($i=0;$i<$fileCount;$i++){ $target=stripslashes($dir) . $files['name'][$i]; - if(OC_Filesystem::fromUploadedFile($files['tmp_name'][$i],$target)){ + if(is_uploaded_file($files['tmp_name'][$i]) and OC_Filesystem::fromTmpFile($files['tmp_name'][$i],$target)){ $result[]=array( "status" => "success", 'mime'=>OC_Filesystem::getMimeType($target),'size'=>OC_Filesystem::filesize($target),'name'=>$files['name'][$i]); } } |