예제 #1
0
파일: admin.mod.php 프로젝트: bo-blog/bw
     if ($conf['qiniuBucket'] && $conf['qiniuUpload'] == '1') {
         require_once P . "inc/script/qiniu/QiniuClient.php";
         $qiniuClient = new qiniuClient(QINIU_AK, QINIU_SK);
         $fStoreName = 'storage/' . substr(md5(rand(1, 99999) . time()), 10, 8);
         $flags = array('scope' => $conf['qiniuBucket'] . ':' . $fStoreName, 'deadline' => 3600 + time(), 'returnUrl' => "{$conf['siteURL']}/{$conf['linkPrefixAdmin']}/articles/qiniuuploader/", 'returnBody' => json_encode(array('fname' => '$(key)')));
         $qiniuFileToken = $qiniuClient->uploadToken($flags);
         $view->setPassData(array('qiniuFileToken' => $qiniuFileToken, 'qiniuKey' => $fStoreName));
         $uploader = 'adminqiniuupload';
     } elseif ($conf['qiniuUpload'] == '2') {
         $uploader = 'adminaliyunupload';
         $policy = '{"expiration": "2120-01-01T12:00:00.000Z","conditions":[{"bucket": "' . bw::$conf['aliyunBucket'] . '" },["content-length-range", 0, 104857600]]}';
         $view->setPassData(array('policy' => base64_encode($policy), 'signature' => base64_encode(hash_hmac('sha1', $policy, bw::$conf['aliyunSKey'], true))));
     } else {
         $uploader = 'admincommonupload';
     }
     $view->setPassData(array('articleTemplate' => $article->getArticleTemplateList()));
     $view->setWorkFlow(array($uploader, 'adminwriter', 'admin'));
     $view->finalize();
 } elseif ($canonical->currentArgs['subAction'] == 'new' || $canonical->currentArgs['subAction'] == 'newpage') {
     $admin->checkCSRFCode('newarticle');
     loadServices();
     if ($conf['qiniuBucket'] && $conf['qiniuUpload'] == '1') {
         require_once P . "inc/script/qiniu/QiniuClient.php";
         $qiniuClient = new qiniuClient(QINIU_AK, QINIU_SK);
         $fStoreName = 'storage/' . substr(md5(rand(1, 99999) . time()), 10, 8);
         $flags = array('scope' => $conf['qiniuBucket'] . ':' . $fStoreName, 'deadline' => 3600 + time(), 'returnUrl' => "{$conf['siteURL']}/{$conf['linkPrefixAdmin']}/articles/qiniuuploader/", 'returnBody' => json_encode(array('fname' => '$(key)', 'ftype' => '$(mimeType)')));
         $qiniuFileToken = $qiniuClient->uploadToken($flags);
         $view->setPassData(array('qiniuFileToken' => $qiniuFileToken, 'qiniuKey' => $fStoreName));
         $uploader = 'adminqiniuupload';
     } elseif ($conf['qiniuUpload'] == '2') {
         $uploader = 'adminaliyunupload';