From 942da1570f7e35fa45caa514be3b04cdb3aa0f4e Mon Sep 17 00:00:00 2001
From: qkqpttgf <45693631+qkqpttgf@users.noreply.github.com>
Date: Sun, 8 Mar 2020 11:39:04 +0800
Subject: [PATCH] move get token function oprate function
---
function/heroku.php | 330 +++-----------------------------------------
1 file changed, 22 insertions(+), 308 deletions(-)
diff --git a/function/heroku.php b/function/heroku.php
index f1c0c6c..32f3b1e 100644
--- a/function/heroku.php
+++ b/function/heroku.php
@@ -93,141 +93,6 @@ function setConfig($arr, $disktag = '')
return setHerokuConfig($tmp, getConfig('function_name'), getConfig('APIKey'));
}
-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);
- $str .= '
- ';
- return message($str, getconstStr('WaitJumpIndex'));
- }
- return message('
' . $tmp['body'] . '
', $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'];
- //$_POST['client_secret'];
- }
- $response = json_decode( setConfig($tmp, $_COOKIE['disktag']), true )['Response'];
- $title = getconstStr('MayinEnv');
- $html = getconstStr('Wait') . ' 3s';
- if (isset($response['id'])&&isset($response['message'])) {
- $html = $response['id'] . '
-' . $response['message'] . '
-function_name:' . $_SERVER['function_name'] . '
-';
- $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;
@@ -249,11 +114,8 @@ function install()
$tmp['function_name'] = $function_name;
}
$response = json_decode(setHerokuConfig($tmp, $function_name, $APIKey)['body'], true);
- if (isset($response['id'])&&isset($response['message'])) {
- $html = $response['id'] . '
-' . $response['message'] . '
-function_name:' . $_SERVER['function_name'] . '
-';
+ if (api_error($response)) {
+ $html = api_error_msg($response);
$title = 'Error';
} else {
return output('Jump', 302);
@@ -358,173 +220,25 @@ function updateHerokuapp($function_name, $apikey)
return HerokuAPI('POST', 'https://api.heroku.com/apps/' . $function_name . '/builds', $data, $apikey);
}
-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(updateHerokuapp(getConfig('function_name'), getConfig('APIKey'))['body'], true);
- if (isset($response['id'])&&isset($response['message'])) {
- $html = $response['id'] . '
-' . $response['message'] . '
-function_name:' . $_SERVER['function_name'] . '
-';
- $title = 'Error';
- } else {
- $html .= getconstStr('UpdateSuccess') . '
-';
- $title = getconstStr('Setup');
- }
- return message($html, $title);
- }
- if ($_POST['submit1']) {
- foreach ($_POST as $k => $v) {
- if (in_array($k, $constEnv)) {
- if (!(getConfig($k)==''&&$v=='')) $tmp[$k] = $v;
- }
- }
- $_SERVER['disk_oprating'] = '';
- foreach ($_POST as $k => $v) {
- if (in_array($k, $ShowedCommonEnv)) {
- if (!(getConfig($k)==''&&$v=='')) $tmp[$k] = $v;
- }
- if (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'])['body'], true);
- if (isset($response['id'])&&isset($response['message'])) {
- $html = $response['id'] . '
-' . $response['message'] . '
-function_name:' . $_SERVER['function_name'] . '
-';
- $title = 'Error';
- } else {
- $html .= '';
- }
- }
- 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'));
+ return isset($response['id'])&&isset($response['message']);
+}
+
+function api_error_msg($response)
+{
+ return $response['id'] . '
+' . $response['message'] . '
+function_name:' . $_SERVER['function_name'] . '
+';
+}
+
+function OnekeyUpate()
+{
+ return json_decode(updateHerokuapp(getConfig('function_name'), getConfig('APIKey'))['body'], true);
+}
+
+function setConfigResponse($response)
+{
+ return json_decode( $response['body'], true );
}