diff --git a/function/common.php b/function/common.php index b14dbc4..f9b87e6 100644 --- a/function/common.php +++ b/function/common.php @@ -1,5 +1,30 @@ $v) { if (in_array($k, $InnerEnv)) { - $diskconfig[$k] = $v; + if (in_array($k, $Base64Env)) $diskconfig[$k] = equal_replace($v); + else $diskconfig[$k] = $v; $indisk = 1; } elseif ($k=='disktag_add') { array_push($disktags, $v); @@ -68,7 +73,8 @@ function setConfig($arr, $disktag = '') $tmp[$v] = ''; $oparetdisk = 1; } else { - $tmp[$k] = $v; + if (in_array($k, $Base64Env)) $tmp[$k] = equal_replace($v); + else $tmp[$k] = $v; } } if ($indisk) { @@ -158,7 +164,7 @@ function get_refresh_token() $tmp['Onedrive_ver'] = $_POST['Onedrive_ver']; if ($_POST['Onedrive_ver']=='MSC') { $tmp['client_id'] = $_POST['client_id']; - $tmp['client_secret'] = equal_replace(base64_encode($_POST['client_secret'])); + $tmp['client_secret'] = $_POST['client_secret']; //$_POST['client_secret']; } $response = json_decode( setConfig($tmp, $_COOKIE['disktag']), true )['Response']; diff --git a/function/normal.php b/function/normal.php index 7821695..1953922 100644 --- a/function/normal.php +++ b/function/normal.php @@ -39,6 +39,7 @@ function getGET() function getConfig($str, $disktag = '') { global $InnerEnv; + global $Base64Env; //include 'config.php'; if ($disktag=='') $disktag = $_SERVER['disktag']; $s = file_get_contents('config.php'); @@ -46,8 +47,12 @@ function getConfig($str, $disktag = '') if ($configs!='') { $envs = json_decode($configs, true); if (in_array($str, $InnerEnv)) { - if (isset($envs[$disktag][$str])) return $envs[$disktag][$str]; - } else if (isset($envs[$str])) return $envs[$str]; + if (in_array($str, $Base64Env)) return equal_replace($envs[$disktag][$str],1); + else return $envs[$disktag][$str]; + } else { + if (in_array($str, $Base64Env)) return equal_replace($envs[$str],1); + else return $envs[$str]; + } } return ''; } @@ -55,6 +60,7 @@ function getConfig($str, $disktag = '') function setConfig($arr, $disktag = '') { global $InnerEnv; + global $Base64Env; if ($disktag=='') $disktag = $_SERVER['disktag']; //include 'config.php'; $s = file_get_contents('config.php'); @@ -65,7 +71,8 @@ function setConfig($arr, $disktag = '') $operatedisk = 0; foreach ($arr as $k => $v) { if (in_array($k, $InnerEnv)) { - $envs[$disktag][$k] = $v; + if (in_array($k, $Base64Env)) $envs[$disktag][$k] = equal_replace($v); + else $envs[$disktag][$k] = $v; /*$diskconfig[$k] = $v; $indisk = 1;*/ } elseif ($k=='disktag_add') { @@ -76,7 +83,8 @@ function setConfig($arr, $disktag = '') $envs[$v] = ''; $operatedisk = 1; } else { - $envs[$k] = $v; + if (in_array($k, $Base64Env)) $envs[$k] = equal_replace($v); + else $envs[$k] = $v; } } /*if ($indisk) { @@ -171,8 +179,7 @@ function get_refresh_token() $tmp['Onedrive_ver'] = $_POST['Onedrive_ver']; if ($_POST['Onedrive_ver']=='MSC') { $tmp['client_id'] = $_POST['client_id']; - $tmp['client_secret'] = equal_replace(base64_encode($_POST['client_secret'])); - //$_POST['client_secret']; + $tmp['client_secret'] = $_POST['client_secret']; } $response = setConfig($tmp, $_COOKIE['disktag']); $title = getconstStr('MayinEnv'); diff --git a/function/scf.php b/function/scf.php index 9c4c996..3e62265 100644 --- a/function/scf.php +++ b/function/scf.php @@ -54,16 +54,20 @@ function GetPathSetting($event, $context) function getConfig($str, $disktag = '') { global $InnerEnv; + global $Base64Env; if ($disktag=='') $disktag = $_SERVER['disktag']; if (in_array($str, $InnerEnv)) { - return json_decode(getenv($disktag), true)[$str]; + if (in_array($str, $Base64Env)) return equal_replace(json_decode(getenv($disktag), true)[$str],1); + else return json_decode(getenv($disktag), true)[$str]; } - return getenv($str); + if (in_array($str, $Base64Env)) return equal_replace(getenv($str),1); + else return getenv($str); } function setConfig($arr, $disktag = '') { global $InnerEnv; + global $Base64Env; if ($disktag=='') $disktag = $_SERVER['disktag']; $disktags = explode("|",getConfig('disktag')); $diskconfig = json_decode(getenv($disktag), true); @@ -72,7 +76,8 @@ function setConfig($arr, $disktag = '') $oparetdisk = 0; foreach ($arr as $k => $v) { if (in_array($k, $InnerEnv)) { - $diskconfig[$k] = $v; + if (in_array($k, $Base64Env)) $diskconfig[$k] = equal_replace($v); + else $diskconfig[$k] = $v; $indisk = 1; } elseif ($k=='disktag_add') { array_push($disktags, $v); @@ -82,7 +87,8 @@ function setConfig($arr, $disktag = '') $tmp[$v] = ''; $oparetdisk = 1; } else { - $tmp[$k] = $v; + if (in_array($k, $Base64Env)) $tmp[$k] = equal_replace($v); + else $tmp[$k] = $v; } } if ($indisk) { @@ -180,8 +186,7 @@ function get_refresh_token() $tmp['Onedrive_ver'] = $_POST['Onedrive_ver']; if ($_POST['Onedrive_ver']=='MSC') { $tmp['client_id'] = $_POST['client_id']; - $tmp['client_secret'] = equal_replace(base64_encode($_POST['client_secret'])); - //$_POST['client_secret']; + $tmp['client_secret'] = $_POST['client_secret']; } $response = json_decode( setConfig($tmp, $_COOKIE['disktag']), true )['Response']; $title = getconstStr('MayinEnv'); @@ -276,7 +281,6 @@ namespace:' . $_SERVER['namespace'] . '
$trynum = 0; while( json_decode(getfunctioninfo($_SERVER['function_name'], $_SERVER['Region'], $_SERVER['namespace'], $SecretId, $SecretKey),true)['Response']['Status']!='Active' ) echo ' '.++$trynum; - //$response = json_decode( updateEnvironment($tmp, $_SERVER['function_name'], $_SERVER['Region'], $_SERVER['namespace'], $SecretId, $SecretKey), true)['Response']; if (needUpdate()) { updateProgram($_SERVER['function_name'], $_SERVER['Region'], $_SERVER['namespace'], $SecretId, $SecretKey); return message('update to github version, reinstall.', 'Program updating', 201); diff --git a/version b/version index a813a8f..6a2d5b4 100644 --- a/version +++ b/version @@ -1,7 +1,10 @@ +20200229-1300.13 +In SCF, some config can input Special symbols now, like ?&= 。 +在SCF中,某些配置可以输入特殊符号了,像background可以用?&=之类的了。 + 20200225-1310.12 Can update by one click any time. fix bugs: special tag, reupload. 可以不管版本直接一键更新(覆盖)了。修复可以使用特殊onedrive标签的bug,修复断网续传的问题。 - 20200222-2130.11 you can set background now. fix bug: 2nd disk upload. 可以设置背景图片了。第2个盘上传后链接不对。