From 166573b0ccd51543f63ccaadfb7a743d49d953b9 Mon Sep 17 00:00:00 2001
From: qkqpttgf <45693631+qkqpttgf@users.noreply.github.com>
Date: Thu, 7 May 2020 18:45:10 +0800
Subject: [PATCH] fix: when no files
---
common.php | 768 +++++++++++++++++++++++++++--------------------------
1 file changed, 385 insertions(+), 383 deletions(-)
diff --git a/common.php b/common.php
index cfb6372..a523f38 100644
--- a/common.php
+++ b/common.php
@@ -1297,6 +1297,389 @@ function fetch_files_children($files, $path, $page)
return $files;
}
+function get_refresh_token()
+{
+ global $constStr;
+ global $CommonEnv;
+ $envs = '';
+ foreach ($CommonEnv as $env) $envs .= '\'' . $env . '\', ';
+ $url = path_format($_SERVER['PHP_SELF'] . '/');
+ if (isset($_GET['authorization_code']) && isset($_GET['code'])) {
+ $_SERVER['disktag'] = $_COOKIE['disktag'];
+ config_oauth();
+ $tmp = curl_request($_SERVER['oauth_url'] . 'token', 'client_id=' . $_SERVER['client_id'] .'&client_secret=' . $_SERVER['client_secret'] . '&grant_type=authorization_code&requested_token_use=on_behalf_of&redirect_uri=' . $_SERVER['redirect_uri'] .'&code=' . $_GET['code']);
+ if ($tmp['stat']==200) $ret = json_decode($tmp['body'], true);
+ if (isset($ret['refresh_token'])) {
+ $refresh_token = $ret['refresh_token'];
+ $str = '
+ refresh_token :
';
+ $str .= '
+
+ '.getconstStr('SavingToken').'
+ ';
+ $tmptoken['refresh_token'] = $refresh_token;
+ $tmptoken['token_expires'] = time()+7*24*60*60;
+ if (getConfig('usesharepoint')=='on') $tmptoken['siteid'] = get_siteid($ret['access_token']);
+ setConfig($tmptoken, $_COOKIE['disktag']);
+ savecache('access_token', $ret['access_token'], $ret['expires_in'] - 60);
+ //WaitSCFStat();
+ $str .= '
+ ';
+ return message($str, getconstStr('WaitJumpIndex'));
+ }
+ return message('
' . json_encode(json_decode($tmp['body']), JSON_PRETTY_PRINT) . '
', $tmp['stat']);
+ //return message('' . json_encode($ret, JSON_PRETTY_PRINT) . '
', 500);
+ }
+ if (isset($_GET['install1'])) {
+ $_SERVER['disktag'] = $_COOKIE['disktag'];
+ config_oauth();
+ if (getConfig('Drive_ver')=='MS' || getConfig('Drive_ver')=='CN') {
+ return message('
+ '.getconstStr('JumptoOffice').'
+
+ ', getconstStr('Wait').' 1s', 201);
+ } else {
+ return message('Something error, retry after a few seconds.', 'retry', 201);
+ }
+ }
+ if (isset($_GET['install0'])) {
+ if ($_POST['disktag_add']!='') {
+ if (in_array($_COOKIE['disktag'], $CommonEnv)) {
+ return message('Do not input ' . $envs . '
', 'Error', 201);
+ }
+ $_SERVER['disktag'] = $_COOKIE['disktag'];
+ $tmp['disktag_add'] = $_POST['disktag_add'];
+ $tmp['diskname'] = $_POST['diskname'];
+ $tmp['Drive_ver'] = $_POST['Drive_ver'];
+ if ($_POST['Drive_ver']=='shareurl') {
+ $tmp['shareurl'] = $_POST['shareurl'];
+ $tmp['refresh_token'] = 1;
+ } else {
+ if ($_POST['Drive_custom']=='on') {
+ $tmp['Drive_custom'] = $_POST['Drive_custom'];
+ $tmp['client_id'] = $_POST['client_id'];
+ $tmp['client_secret'] = $_POST['client_secret'];
+ }
+ if ($_POST['usesharepoint']=='on') {
+ $tmp['usesharepoint'] = $_POST['usesharepoint'];
+ $tmp['sharepointSiteAddress'] = $_POST['sharepointSiteAddress'];
+ }
+ }
+ $response = setConfigResponse( setConfig($tmp, $_COOKIE['disktag']) );
+ if (api_error($response)) {
+ $html = api_error_msg($response);
+ $title = 'Error';
+ } else {
+ $title = getconstStr('MayinEnv');
+ $html = getconstStr('Wait') . ' 3s';
+ if ($_POST['Drive_ver']=='shareurl') $html = getconstStr('Wait') . ' 3s';
+ }
+ return message($html, $title, 201);
+ }
+ }
+
+ if ($constStr['language']!='zh-cn') {
+ $linklang='en-us';
+ } else $linklang='zh-cn';
+ $ru = "https://developer.microsoft.com/".$linklang."/graph/quick-start?appID=_appId_&appName=_appName_&redirectUrl=".$_SERVER['redirect_uri']."&platform=option-php";
+ $deepLink = "/quickstart/graphIO?publicClientSupport=false&appName=OneManager&redirectUrl=".$_SERVER['redirect_uri']."&allowImplicitFlow=false&ru=".urlencode($ru);
+ $app_url = "https://apps.dev.microsoft.com/?deepLink=".urlencode($deepLink);
+ $html = '
+
+ ';
+ $title = 'Bind Disk';
+ return message($html, $title, 201);
+}
+
+function EnvOpt($needUpdate = 0)
+{
+ global $constStr;
+ global $ShowedCommonEnv;
+ global $ShowedInnerEnv;
+ global $timezones;
+ asort($ShowedCommonEnv);
+ asort($ShowedInnerEnv);
+ $html = 'OneManager '.getconstStr('Setup').'';
+ if (isset($_POST['updateProgram'])&&$_POST['updateProgram']==getconstStr('updateProgram')) {
+ $response = OnekeyUpate($_POST['auth'], $_POST['project'], $_POST['branch']);
+ if (api_error($response)) {
+ $html = api_error_msg($response);
+ $title = 'Error';
+ } else {
+ //WaitSCFStat();
+ $html .= getconstStr('UpdateSuccess') . '
+';
+ $title = getconstStr('Setup');
+ }
+ return message($html, $title);
+ }
+ if (isset($_POST['submit1'])) {
+ $_SERVER['disk_oprating'] = '';
+ foreach ($_POST as $k => $v) {
+ if (in_array($k, $ShowedCommonEnv)||in_array($k, $ShowedInnerEnv)||$k=='disktag_del' || $k=='disktag_add') {
+ $tmp[$k] = $v;
+ }
+ if ($k == 'disk') $_SERVER['disk_oprating'] = $v;
+ }
+ /*if ($tmp['domain_path']!='') {
+ $tmp1 = explode("|",$tmp['domain_path']);
+ $tmparr = [];
+ foreach ($tmp1 as $multidomain_paths){
+ $pos = strpos($multidomain_paths,":");
+ if ($pos>0) $tmparr[substr($multidomain_paths, 0, $pos)] = path_format(substr($multidomain_paths, $pos+1));
+ }
+ $tmp['domain_path'] = $tmparr;
+ }*/
+ $response = setConfigResponse( setConfig($tmp, $_SERVER['disk_oprating']) );
+ if (api_error($response)) {
+ $html = api_error_msg($response);
+ $title = 'Error';
+ } else {
+ //WaitSCFStat();
+ //sleep(3);
+ $html .= getconstStr('Success') . '!
+';
+ $title = getconstStr('Setup');
+ }
+ return message($html, $title);
+ }
+ if (isset($_GET['preview'])) {
+ $preurl = $_SERVER['PHP_SELF'] . '?preview';
+ } else {
+ $preurl = path_format($_SERVER['PHP_SELF'] . '/');
+ }
+ $html .= '
+'.getconstStr('Back').' '.getconstStr('Back').getconstStr('Home').'
+Github
';
+
+ $html .= '
+
';
+ foreach (explode("|",getConfig('disktag')) as $disktag) {
+ if ($disktag!='') {
+ $html .= '
+
+ ';
+ if (getConfig('refresh_token', $disktag)!='') {
+ $html .= '
+ ';
+ }
+ $html .= '
+
';
+ }
+ }
+ $html .= '
+'.getconstStr('AddDisk').'
';
+ if (!((isset($_SERVER['USER'])&&$_SERVER['USER']==='qcloud')||(isset($_SERVER['HEROKU_APP_DIR'])&&$_SERVER['HEROKU_APP_DIR']==='/app'))) {
+ $html .= '
+'.getconstStr('VPSnotupdate').'
';
+ } else {
+ $html .= '
+
+
+';
+ }
+ if ($needUpdate) {
+ $html .= '
+ ' . str_replace("\r", '
',$_SERVER['github_version']) . '
+
';
+ } else {
+ $html .= getconstStr('NotNeedUpdate');
+ }
+ return message($html, getconstStr('Setup'));
+}
+
function render_list($path = '', $files = '')
{
global $exts;
@@ -1557,6 +1940,8 @@ function render_list($path = '', $files = '')
$html = str_replace('', getconstStr('EditTime'), $html);
$html = str_replace('', getconstStr('Size'), $html);
+ $filenum = 0;
+
$tmp = splitfirst($html, '');
$html = $tmp[0];
$tmp = splitfirst($tmp[1], '');
@@ -2010,386 +2395,3 @@ function render_list($path = '', $files = '')
if (isset($_SERVER['Set-Cookie'])) return output($html, $statusCode, [ 'Set-Cookie' => $_SERVER['Set-Cookie'], 'Content-Type' => 'text/html' ]);
return output($html,$statusCode);
}
-
-function get_refresh_token()
-{
- global $constStr;
- global $CommonEnv;
- $envs = '';
- foreach ($CommonEnv as $env) $envs .= '\'' . $env . '\', ';
- $url = path_format($_SERVER['PHP_SELF'] . '/');
- if (isset($_GET['authorization_code']) && isset($_GET['code'])) {
- $_SERVER['disktag'] = $_COOKIE['disktag'];
- config_oauth();
- $tmp = curl_request($_SERVER['oauth_url'] . 'token', 'client_id=' . $_SERVER['client_id'] .'&client_secret=' . $_SERVER['client_secret'] . '&grant_type=authorization_code&requested_token_use=on_behalf_of&redirect_uri=' . $_SERVER['redirect_uri'] .'&code=' . $_GET['code']);
- if ($tmp['stat']==200) $ret = json_decode($tmp['body'], true);
- if (isset($ret['refresh_token'])) {
- $refresh_token = $ret['refresh_token'];
- $str = '
- refresh_token :
';
- $str .= '
-
- '.getconstStr('SavingToken').'
- ';
- $tmptoken['refresh_token'] = $refresh_token;
- $tmptoken['token_expires'] = time()+7*24*60*60;
- if (getConfig('usesharepoint')=='on') $tmptoken['siteid'] = get_siteid($ret['access_token']);
- setConfig($tmptoken, $_COOKIE['disktag']);
- savecache('access_token', $ret['access_token'], $ret['expires_in'] - 60);
- //WaitSCFStat();
- $str .= '
- ';
- return message($str, getconstStr('WaitJumpIndex'));
- }
- return message('' . json_encode(json_decode($tmp['body']), JSON_PRETTY_PRINT) . '
', $tmp['stat']);
- //return message('' . json_encode($ret, JSON_PRETTY_PRINT) . '
', 500);
- }
- if (isset($_GET['install1'])) {
- $_SERVER['disktag'] = $_COOKIE['disktag'];
- config_oauth();
- if (getConfig('Drive_ver')=='MS' || getConfig('Drive_ver')=='CN') {
- return message('
- '.getconstStr('JumptoOffice').'
-
- ', getconstStr('Wait').' 1s', 201);
- } else {
- return message('Something error, retry after a few seconds.', 'retry', 201);
- }
- }
- if (isset($_GET['install0'])) {
- if ($_POST['disktag_add']!='') {
- if (in_array($_COOKIE['disktag'], $CommonEnv)) {
- return message('Do not input ' . $envs . '
', 'Error', 201);
- }
- $_SERVER['disktag'] = $_COOKIE['disktag'];
- $tmp['disktag_add'] = $_POST['disktag_add'];
- $tmp['diskname'] = $_POST['diskname'];
- $tmp['Drive_ver'] = $_POST['Drive_ver'];
- if ($_POST['Drive_ver']=='shareurl') {
- $tmp['shareurl'] = $_POST['shareurl'];
- $tmp['refresh_token'] = 1;
- } else {
- if ($_POST['Drive_custom']=='on') {
- $tmp['Drive_custom'] = $_POST['Drive_custom'];
- $tmp['client_id'] = $_POST['client_id'];
- $tmp['client_secret'] = $_POST['client_secret'];
- }
- if ($_POST['usesharepoint']=='on') {
- $tmp['usesharepoint'] = $_POST['usesharepoint'];
- $tmp['sharepointSiteAddress'] = $_POST['sharepointSiteAddress'];
- }
- }
- $response = setConfigResponse( setConfig($tmp, $_COOKIE['disktag']) );
- if (api_error($response)) {
- $html = api_error_msg($response);
- $title = 'Error';
- } else {
- $title = getconstStr('MayinEnv');
- $html = getconstStr('Wait') . ' 3s';
- if ($_POST['Drive_ver']=='shareurl') $html = getconstStr('Wait') . ' 3s';
- }
- return message($html, $title, 201);
- }
- }
-
- if ($constStr['language']!='zh-cn') {
- $linklang='en-us';
- } else $linklang='zh-cn';
- $ru = "https://developer.microsoft.com/".$linklang."/graph/quick-start?appID=_appId_&appName=_appName_&redirectUrl=".$_SERVER['redirect_uri']."&platform=option-php";
- $deepLink = "/quickstart/graphIO?publicClientSupport=false&appName=OneManager&redirectUrl=".$_SERVER['redirect_uri']."&allowImplicitFlow=false&ru=".urlencode($ru);
- $app_url = "https://apps.dev.microsoft.com/?deepLink=".urlencode($deepLink);
- $html = '
-
- ';
- $title = 'Bind Disk';
- return message($html, $title, 201);
-}
-
-function EnvOpt($needUpdate = 0)
-{
- global $constStr;
- global $ShowedCommonEnv;
- global $ShowedInnerEnv;
- global $timezones;
- asort($ShowedCommonEnv);
- asort($ShowedInnerEnv);
- $html = 'OneManager '.getconstStr('Setup').'';
- if (isset($_POST['updateProgram'])&&$_POST['updateProgram']==getconstStr('updateProgram')) {
- $response = OnekeyUpate($_POST['auth'], $_POST['project'], $_POST['branch']);
- if (api_error($response)) {
- $html = api_error_msg($response);
- $title = 'Error';
- } else {
- //WaitSCFStat();
- $html .= getconstStr('UpdateSuccess') . '
-';
- $title = getconstStr('Setup');
- }
- return message($html, $title);
- }
- if (isset($_POST['submit1'])) {
- $_SERVER['disk_oprating'] = '';
- foreach ($_POST as $k => $v) {
- if (in_array($k, $ShowedCommonEnv)||in_array($k, $ShowedInnerEnv)||$k=='disktag_del' || $k=='disktag_add') {
- $tmp[$k] = $v;
- }
- if ($k == 'disk') $_SERVER['disk_oprating'] = $v;
- }
- /*if ($tmp['domain_path']!='') {
- $tmp1 = explode("|",$tmp['domain_path']);
- $tmparr = [];
- foreach ($tmp1 as $multidomain_paths){
- $pos = strpos($multidomain_paths,":");
- if ($pos>0) $tmparr[substr($multidomain_paths, 0, $pos)] = path_format(substr($multidomain_paths, $pos+1));
- }
- $tmp['domain_path'] = $tmparr;
- }*/
- $response = setConfigResponse( setConfig($tmp, $_SERVER['disk_oprating']) );
- if (api_error($response)) {
- $html = api_error_msg($response);
- $title = 'Error';
- } else {
- //WaitSCFStat();
- //sleep(3);
- $html .= getconstStr('Success') . '!
-';
- $title = getconstStr('Setup');
- }
- return message($html, $title);
- }
- if (isset($_GET['preview'])) {
- $preurl = $_SERVER['PHP_SELF'] . '?preview';
- } else {
- $preurl = path_format($_SERVER['PHP_SELF'] . '/');
- }
- $html .= '
-'.getconstStr('Back').' '.getconstStr('Back').getconstStr('Home').'
-Github
';
-
- $html .= '
-
';
- foreach (explode("|",getConfig('disktag')) as $disktag) {
- if ($disktag!='') {
- $html .= '
-
- ';
- if (getConfig('refresh_token', $disktag)!='') {
- $html .= '
- ';
- }
- $html .= '
-
';
- }
- }
- $html .= '
-'.getconstStr('AddDisk').'
';
- if (!((isset($_SERVER['USER'])&&$_SERVER['USER']==='qcloud')||(isset($_SERVER['HEROKU_APP_DIR'])&&$_SERVER['HEROKU_APP_DIR']==='/app'))) {
- $html .= '
-'.getconstStr('VPSnotupdate').'
';
- } else {
- $html .= '
-
-
-';
- }
- if ($needUpdate) {
- $html .= '
- ' . str_replace("\r", '
',$_SERVER['github_version']) . '
-
';
- } else {
- $html .= getconstStr('NotNeedUpdate');
- }
- return message($html, getconstStr('Setup'));
-}