Fix: Browse files from all users in filter mode

pull/148/head
HFO4 7 years ago
parent 7a530f5d58
commit 17f763d6ea

@ -546,8 +546,11 @@ class FileManage extends Model{
switch ($keyWords) {
case '{filterType:video}':
$fileList = Db::name('files')
->where('upload_user',$uid)
->where('orign_name',"like","%.mp4")
->where(function ($query)use($uid) {
$query->where('upload_user',$uid);
})
->where(function ($query) {
$query->where('orign_name',"like","%.mp4")
->whereOr('orign_name',"like","%.flv")
->whereOr('orign_name',"like","%.avi")
->whereOr('orign_name',"like","%.wmv")
@ -555,24 +558,32 @@ class FileManage extends Model{
->whereOr('orign_name',"like","%.rm")
->whereOr('orign_name',"like","%.rmvb")
->whereOr('orign_name',"like","%.mov")
->whereOr('orign_name',"like","%.ogv")
->whereOr('orign_name',"like","%.ogv");
})
->select();
break;
case '{filterType:audio}':
$fileList = Db::name('files')
->where('upload_user',$uid)
->where('orign_name',"like","%.mp3")
->where(function ($query)use($uid) {
$query->where('upload_user',$uid);
})
->where(function ($query) {
$query->where('orign_name',"like","%.mp3")
->whereOr('orign_name',"like","%.flac")
->whereOr('orign_name',"like","%.ape")
->whereOr('orign_name',"like","%.wav")
->whereOr('orign_name',"like","%.acc")
->whereOr('orign_name',"like","%.ogg")
->whereOr('orign_name',"like","%.ogg");
})
->select();
break;
case '{filterType:image}':
$fileList = Db::name('files')
->where('upload_user',$uid)
->where('orign_name',"like","%.bmp")
->where(function ($query)use($uid) {
$query->where('upload_user',$uid);
})
->where(function ($query) {
$query->where('orign_name',"like","%.bmp")
->whereOr('orign_name',"like","%.flac")
->whereOr('orign_name',"like","%.iff")
->whereOr('orign_name',"like","%.png")
@ -581,13 +592,17 @@ class FileManage extends Model{
->whereOr('orign_name',"like","%.jpge")
->whereOr('orign_name',"like","%.psd")
->whereOr('orign_name',"like","%.svg")
->whereOr('orign_name',"like","%.webp")
->whereOr('orign_name',"like","%.webp");
})
->select();
break;
case '{filterType:doc}':
$fileList = Db::name('files')
->where('upload_user',$uid)
->where('orign_name',"like","%.txt")
->where(function ($query)use($uid) {
$query->where('upload_user',$uid);
})
->where(function ($query) {
$query->where('orign_name',"like","%.txt")
->whereOr('orign_name',"like","%.md")
->whereOr('orign_name',"like","%.pdf")
->whereOr('orign_name',"like","%.doc")
@ -595,7 +610,8 @@ class FileManage extends Model{
->whereOr('orign_name',"like","%.ppt")
->whereOr('orign_name',"like","%.pptx")
->whereOr('orign_name',"like","%.xls")
->whereOr('orign_name',"like","%.xlsx")
->whereOr('orign_name',"like","%.xlsx");
})
->select();
break;
default:

@ -26,6 +26,8 @@ class UploadHandler extends Model{
public $upyunPolicy;
public $s3Policy;
public $s3Sign;
public $cosPolicy;
public $cosSign;
public $dirName;
public $s3Credential;
public $siteUrl;
@ -319,6 +321,9 @@ class UploadHandler extends Model{
case 'remote':
return $this->getRemoteToken();
break;
case 'cos':
return $this->getCosToken();
break;
default:
# code...
break;
@ -514,6 +519,27 @@ class UploadHandler extends Model{
$this->callBackKey = $callbackKey;
}
public function getCosToken(){
$callbackKey = $this->getRandomKey();
$sqlData = [
'callback_key' => $callbackKey,
'pid' => $this->policyId,
'uid' => $this->userId
];
Db::name('callback')->insert($sqlData);
$dirName = $this->getObjName($this->policyContent['dirrule']);
$returnValu["expiration"] = date("Y-m-d",time()+1800)."T".date("H:i:s",time()+1800).".000Z";
$returnValu["conditions"][0]["bucket"] = $this->policyContent['bucketname'];
$returnValu["conditions"][1][0]="starts-with";
$returnValu["conditions"][1][1]='$key';
if($this->policyContent["autoname"]){
$this->ossFileName = $dirName.(empty($dirName)?"":"/").$this->getObjName($this->policyContent['namerule'],"oss");;
}else{
$this->ossFileName = $dirName.(empty($dirName)?"":"/").'${filename}';
}
$returnValu["conditions"][2]=["content-length-range",1,(int)$this->policyContent['max_size']];
}
public function getOssToken(){
$dirName = $this->getObjName($this->policyContent['dirrule']);
$returnValu["expiration"] = date("Y-m-d",time()+1800)."T".date("H:i:s",time()+1800).".000Z";

Loading…
Cancel
Save