From a323a5af8d0cf771d44286112974b6dc629c1a10 Mon Sep 17 00:00:00 2001
From: qkqpttgf <45693631+qkqpttgf@users.noreply.github.com>
Date: Sun, 8 Mar 2020 11:41:09 +0800
Subject: [PATCH] move get token function oprate function
---
function/scf.php | 328 +++--------------------------------------------
1 file changed, 20 insertions(+), 308 deletions(-)
diff --git a/function/scf.php b/function/scf.php
index 02d3cf3..a4e40ae 100644
--- a/function/scf.php
+++ b/function/scf.php
@@ -117,143 +117,6 @@ function WaitSCFStat()
'.++$trynum;
}
-function get_refresh_token()
-{
- global $constStr;
- global $CommonEnv;
- foreach ($CommonEnv as $env) $envs .= '\'' . $env . '\', ';
- $url = path_format($_SERVER['PHP_SELF'] . '/');
- if ($_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'])) {
- $tmptoken = $ret['refresh_token'];
- $str = '
- refresh_token :
';
- /*for ($i=1;strlen($tmptoken)>0;$i++) {
- $t['t' . $i] = substr($tmptoken,0,128);
- $str .= '
- t' . $i . ':
';
- $tmptoken=substr($tmptoken,128);
- }
- $str .= '
- Add t1-t'.--$i.' to environments.*/
- $str .= '
-
- '.getconstStr('SavingToken').'
- ';
- setConfig([ 'refresh_token' => $tmptoken, 'token_expires' => time()+30*24*60*60 ], $_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 ($_GET['install1']) {
- $_SERVER['disk_oprating'] = $_COOKIE['disktag'];
- $_SERVER['disktag'] = $_COOKIE['disktag'];
- config_oauth();
- if (getConfig('Onedrive_ver')=='MS' || getConfig('Onedrive_ver')=='CN' || getConfig('Onedrive_ver')=='MSC') {
- return message('
- '.getconstStr('JumptoOffice').'
-
- ', getconstStr('Wait').' 1s', 201);
- }
- }
- if ($_GET['install0']) {
- if ($_POST['disktag_add']!='' && ($_POST['Onedrive_ver']=='MS' || $_POST['Onedrive_ver']=='CN' || $_POST['Onedrive_ver']=='MSC')) {
- 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['Onedrive_ver'] = $_POST['Onedrive_ver'];
- if ($_POST['Onedrive_ver']=='MSC') {
- $tmp['client_id'] = $_POST['client_id'];
- $tmp['client_secret'] = $_POST['client_secret'];
- }
- $response = json_decode( setConfig($tmp, $_COOKIE['disktag']), true )['Response'];
- $title = getconstStr('MayinEnv');
- $html = getconstStr('Wait') . ' 3s';
- if (isset($response['Error'])) {
- $html = $response['Error']['Code'] . '
-' . $response['Error']['Message'] . '
-function_name:' . $_SERVER['function_name'] . '
-Region:' . $_SERVER['Region'] . '
-namespace:' . $_SERVER['namespace'] . '
-';
- $title = 'Error';
- }
- 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 Onedrive';
- return message($html, $title, 201);
-}
-
function install()
{
global $constStr;
@@ -272,12 +135,9 @@ function install()
$tmp['SecretKey'] = $SecretKey;
}
$response = json_decode(SetbaseConfig($tmp, $_SERVER['function_name'], $_SERVER['Region'], $_SERVER['namespace'], $SecretId, $SecretKey), true)['Response'];
- if (isset($response['Error'])) {
- $html = $response['Error']['Code'] . '
-' . $response['Error']['Message'] . '
-function_name:' . $_SERVER['function_name'] . '
-Region:' . $_SERVER['Region'] . '
-namespace:' . $_SERVER['namespace'] . '
+ if (api_error($response)) {
+ $html = api_error_msg($response);
+ $html .= '
';
$title = 'Error';
} else {
@@ -500,175 +360,27 @@ function updateProgram($function_name, $Region, $Namespace, $SecretId, $SecretKe
return post2url('https://'.$host, $data.'&Signature='.urlencode($signStr));
}
-
-function EnvOpt($function_name, $needUpdate = 0)
+function api_error($response)
{
- global $constStr;
- global $ShowedCommonEnv;
- global $ShowedInnerEnv;
- asort($ShowedCommonEnv);
- asort($ShowedInnerEnv);
- $html = 'OneManager '.getconstStr('Setup').'';
- if ($_POST['updateProgram']==getconstStr('updateProgram')) {
- $response = json_decode(updateProgram($function_name, $_SERVER['Region'], $_SERVER['namespace'], getConfig('SecretId'), getConfig('SecretKey')), true)['Response'];
- if (isset($response['Error'])) {
- $html = $response['Error']['Code'] . '
-' . $response['Error']['Message'] . '
-function_name:' . $_SERVER['function_name'] . '
-Region:' . $_SERVER['Region'] . '
-namespace:' . $namespace . '
-';
- $title = 'Error';
- } else {
- WaitSCFStat();
- $html .= getconstStr('UpdateSuccess') . '
-';
- $title = getconstStr('Setup');
- }
- return message($html, $title);
- }
- if ($_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 = json_decode( setConfig($tmp, $_SERVER['disk_oprating']), true )['Response'];
- if (isset($response['Error'])) {
- $html = $response['Error']['Code'] . '
+ return isset($response['Error']);
+}
+
+function api_error_msg($response)
+{
+ return $response['Error']['Code'] . '
' . $response['Error']['Message'] . '
function_name:' . $_SERVER['function_name'] . '
Region:' . $_SERVER['Region'] . '
namespace:' . $_SERVER['namespace'] . '
';
- $title = 'Error';
- } else {
- WaitSCFStat();
- //sleep(3);
- $html .= json_encode($response,JSON_PRETTY_PRINT).'';
- $title = getconstStr('Setup');
- }
- return message($html, $title);
- }
- if ($_GET['preview']) {
- $preurl = $_SERVER['PHP_SELF'] . '?preview';
- } else {
- $preurl = path_format($_SERVER['PHP_SELF'] . '/');
- }
- $html .= '
-'.getconstStr('Back').' '.getconstStr('Back').getconstStr('Home').'
-Github
-
-
';
- foreach (explode("|",getConfig('disktag')) as $disktag) {
- if ($disktag!='') {
- $html .= '
-
- ';
- if (getConfig('refresh_token', $disktag)!='') {
- $html .= '
- ';
- }
- $html .= '
-
';
- }
- }
- $html .= '
-'.getconstStr('AddDisk').'';
- return message($html, getconstStr('Setup'));
+}
+
+function OnekeyUpate()
+{
+ return json_decode(updateProgram($_SERVER['function_name'], $_SERVER['Region'], $_SERVER['namespace'], getConfig('SecretId'), getConfig('SecretKey')), true)['Response'];
+}
+
+function setConfigResponse($response)
+{
+ return json_decode( $response, true )['Response'];
}