feat: 后端全量更新 - 含所有本次需求
- Contract.php: 返回合约账户余额(balance_contract) - My.php: 地址管理增加BTC/ETH - AppContract.php: 一键平仓(closeall) - AppProxy.php: 代理专属注册链接 + 分级权限(L1/L2) - site.php: 手续费减半(0.018→0.009) - agent_permission_setup.sql: 代理权限SQL - crypto_news_crawler.py: 新闻自动采集脚本
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
<div class="common-footer aero">
|
||||
<?php
|
||||
$settings = $GLOBALS['config']['settings'];
|
||||
$settingSystem = $GLOBALS['config']['settingSystem'];
|
||||
$copyrightInfo = LNG('copyright_info',APP_HOST);
|
||||
if(is_wap()){
|
||||
echo '<span class="pr-10"><a href="javascript:void(0);" forceWap="1">'.LNG('wap_page_phone').'</a> | '.
|
||||
'<a href="javascript:void(0);" forceWap="0">'.LNG('wap_page_pc').'</a></span> ';
|
||||
echo $copyrightInfo.' v'.KOD_VERSION;
|
||||
}else{
|
||||
echo '<span class="copyright-content">';
|
||||
if(isset($settings['copyright'])){
|
||||
echo $settings['copyright'];
|
||||
}else{
|
||||
echo LNG('copyright_pre').' v'.KOD_VERSION.' | '.$copyrightInfo;
|
||||
}
|
||||
echo '<a href="javascript:core.copyright();" class="icon-info-sign copyright-bottom pl-5"></a>';
|
||||
if(isset($settingSystem['globalIcp'])){
|
||||
echo " ".$settingSystem['globalIcp'];
|
||||
}
|
||||
echo '</span>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
<!-- https://getfirebug.com/firebuglite -->
|
||||
<?php include(TEMPLATE.'common/footerCommon.html');?>
|
||||
@@ -0,0 +1,44 @@
|
||||
<script type="text/javascript" src="<?php echo STATIC_PATH;?>js/lib/seajs/sea.js?ver=<?php echo KOD_VERSION;?>"></script>
|
||||
<?php
|
||||
//commonjs
|
||||
if(ST == 'share' || isset($GLOBALS['loadCommonJs'])){
|
||||
if(isset($_GET['user'])){
|
||||
$userInfo = '&user='.clear_html($_GET['user']).'&sid='.clear_html($_GET['sid']);
|
||||
}else{//login...
|
||||
$userInfo = "";
|
||||
}
|
||||
echo '<script type="text/javascript" src="./index.php?share/commonJs&st='.ST.'&act='.ACT.$userInfo.'#id='.rand_string(4).'"></script>';
|
||||
}else{
|
||||
echo '<script type="text/javascript" src="./index.php?user/commonJs&st='.ST.'&act='.ACT.'#id='.rand_string(4).'"></script>';
|
||||
}
|
||||
|
||||
$settings = $GLOBALS['config']['settings'];
|
||||
$settingSystem = $GLOBALS['config']['settingSystem'];
|
||||
if(isset($settings['globalJs'])){
|
||||
echo "\n ".'<script type="text/javascript" id="settings-global-js">'.$settings['globalJs'].'</script>';
|
||||
}
|
||||
if(isset($settings['globalCss'])){
|
||||
echo "\n ".'<style type="text/css" id="settings-global-css">'.$settings['globalCss'].'</style>';
|
||||
}
|
||||
if(isset($settingSystem['globalCss'])){
|
||||
echo "\n ".'<style type="text/css" id="setting-system-global-css">'.$settingSystem['globalCss'].'</style>';
|
||||
}
|
||||
if(isset($settingSystem['globalHtml'])){
|
||||
echo "\n ".$settingSystem['globalHtml']."\n";
|
||||
}
|
||||
?>
|
||||
|
||||
<script type="text/javascript">
|
||||
<?php
|
||||
if(defined('INSTALL_CHANNEL')){
|
||||
echo "var installChannel='".INSTALL_CHANNEL."';\n";
|
||||
}
|
||||
?>
|
||||
seajs.config({
|
||||
base: "<?php echo STATIC_PATH;?>js/",
|
||||
preload: ["lib/jquery-1.8.0.min"],
|
||||
map:[[/^(.*\.(?:css|js|html|htm|json|text))([\?|#].*)$/i,'$1$2?ver='+G.version]]
|
||||
});
|
||||
if(navigator.serviceWorker){navigator.serviceWorker.register('./?share/manifestJS');}
|
||||
</script>
|
||||
<?php Hook::trigger('templateCommonFooter');?>
|
||||
@@ -0,0 +1,39 @@
|
||||
<?php Hook::trigger('templateCommonHeaderStart'); ?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<meta http-equiv="Content-Script-Type" content="text/javascript">
|
||||
<meta http-equiv="Cache-Control" content="no-transform">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="description" itemprop="description" content="<?php echo LNG('kod_meta_description');?>">
|
||||
<meta name="keywords" content="<?php echo LNG('kod_meta_keywords');?>" />
|
||||
<meta name="generator" content="<?php echo LNG('kod_meta_name').' '.KOD_VERSION;?>"/>
|
||||
<meta name="author" content="<?php echo LNG('kod_meta_name');?>" />
|
||||
<meta name="copyright" content="<?php echo LNG('kod_meta_copyright');?>" />
|
||||
<meta itemprop="image" content="<?php echo STATIC_PATH;?>images/common/ico.png?ver=<?php echo KOD_VERSION;?>" />
|
||||
<link href="<?php echo STATIC_PATH;?>images/common/ico.png?ver=<?php echo KOD_VERSION;?>" rel="Shortcut Icon" type="image/x-icon">
|
||||
<link href="<?php echo STATIC_PATH;?>images/common/ico.png?ver=<?php echo KOD_VERSION;?>" rel="icon" type="image/x-icon">
|
||||
<link href="<?php echo STATIC_PATH;?>style/common.css?ver=<?php echo KOD_VERSION;?>" rel="stylesheet"/>
|
||||
<link href="./static/style/font-awesome/css/font-awesome.css?ver=<?php echo KOD_VERSION;?>" rel="stylesheet">
|
||||
<link href="./?share/manifest" rel="manifest" />
|
||||
<!--[if IE 7]>
|
||||
<link rel="stylesheet" href="./static/style/font-awesome/css/font-awesome-ie7.css">
|
||||
<![endif]-->
|
||||
<?php
|
||||
Hook::trigger('templateCommonHeader');
|
||||
function pageBackground(){
|
||||
$arr = explode(',',$GLOBALS['config']['settingSystem']['wallpageLogin']);
|
||||
$background = $arr[mt_rand(0,count($arr)-1)];
|
||||
if(!$background){
|
||||
$background = 'linear-gradient(160deg, #5648c1, #6fe3e7)';
|
||||
}else if(!strstr($background,'/')){
|
||||
$background = "url('./static/images/wall_page/{$background}.jpg')";
|
||||
}else{
|
||||
$background = "url('{$background}')";
|
||||
}
|
||||
return "<style type='text/css'>.aero:before,.aero:after,.background{background-color:#bbb;background-image:{$background};}</style>\n";
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,118 @@
|
||||
<div class="full-background"></div>
|
||||
<div class="init-loading">
|
||||
<div><img src="<?php echo STATIC_PATH;?>images/common/loading_simple.gif?v=<?php echo KOD_VERSION;?>"/></div>
|
||||
</div>
|
||||
<div class="topbar aero">
|
||||
<div class="content">
|
||||
<button class="btn btn-wap-menu hidden"
|
||||
data-toggle="collapse" data-target="#top-menu-left"
|
||||
><i class="font-icon icon-reorder"></i></button>
|
||||
|
||||
<div class="top-left collapse" id="top-menu-left">
|
||||
<?php
|
||||
$config = $GLOBALS['config'];
|
||||
$html = '<a href="./" class="topbar-menu title">';
|
||||
$subMenu = '';
|
||||
$isWap = is_wap();
|
||||
if(substr(LNG('kod_name'),0,4) == '<img'){
|
||||
$html .= LNG('kod_name').'</a>';
|
||||
}else{
|
||||
$html .= '<i class="icon-cloud"></i>'.LNG('kod_name').'</a>';
|
||||
}
|
||||
foreach ($config['settingSystem']['menu'] as $key=>$value) {
|
||||
if ($value['use']!='1') continue;
|
||||
$has = ST==$value['name']?'this':'';
|
||||
$target = " target='_self'" ;
|
||||
if($value['target']=='1' || $value['target'] == '_blank'){
|
||||
$target = " target='_blank'" ;
|
||||
}
|
||||
$name = rawurldecode($value['name']);
|
||||
if(LNG('ui_'.$name) != 'ui_'.$name){
|
||||
$name = "<i class='font-icon menu-".$name."'></i><span>".LNG('ui_'.$name).'</span>';
|
||||
}else if($value['icon']){
|
||||
$name = $value['icon'].'<span>'.LNG($name).'</span>';
|
||||
}else if(!strstr($name,'<') && $value['subMenu']){
|
||||
$name = "<i class='font-icon words'><em>".$name."</em></i><span>".LNG($name).'</span>';
|
||||
}
|
||||
if($value['subMenu'] && !$isWap){
|
||||
$subMenu .= "<li><a class='topbar-menu-sub ".$has."' href='".urldecode($value['url'])."'"
|
||||
.$target.">".urldecode($name)."</a></li>";
|
||||
}else{
|
||||
$html .= "<a class='topbar-menu ".$has."' href='".urldecode($value['url'])."'"
|
||||
.$target.">".urldecode($name)."</a>";
|
||||
}
|
||||
}
|
||||
echo $html;
|
||||
?>
|
||||
|
||||
<?php if($subMenu){?>
|
||||
<div class="menu-group fl">
|
||||
<a class="topbar-menu" id="topbar-submenu"
|
||||
data-toggle="dropdown" href="#" title="<?php echo LNG('menu_sub_menu');?>">
|
||||
<i class="icon-th-large"></i>
|
||||
</a>
|
||||
<ul class="dropdown-menu topbar-submenu pull-left animated menuShow" role="menu" aria-labelledby="topbar-submenu">
|
||||
<?php echo $subMenu;?>
|
||||
</ul>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<div class="top-right">
|
||||
<?php if(!isset($config['settings']['language'])){ ?>
|
||||
<div class="menu-group">
|
||||
<a id='topbar-language' data-toggle="dropdown" href="#" class="topbar-menu">
|
||||
<i class='font-icon icon-flag'></i> <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu topbar-language pull-right animated menuShow" role="menu" aria-labelledby="topbar-language">
|
||||
<?php
|
||||
$tpl = "";
|
||||
foreach ($config['settingAll']['language'] as $key => $value) {
|
||||
$name = $value[0];
|
||||
$select = I18n::getType() == $key ? "this":"";
|
||||
$tpl .= "<li><a href='javascript:core.language(\"{$key}\");' title=\"{$key}/{$value[1]}/{$value[2]}\" class='{$select}'><i class='lang-flag flag-{$key}'></i>{$name}</a></li>";
|
||||
}
|
||||
echo $tpl;
|
||||
?>
|
||||
</ul>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<!-- 全局设置语言则不再显示 -->
|
||||
|
||||
<div class="menu-group">
|
||||
<a href="#" id='topbar-user' data-toggle="dropdown" class="topbar-menu">
|
||||
<i class="font-icon icon-user"></i>
|
||||
<?php
|
||||
$user = $_SESSION['kodUser'];
|
||||
$name = $user['nickName']?$user['nickName']:$user['name'];
|
||||
echo clear_html($name);
|
||||
?>
|
||||
<b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu menu-topbar-user pull-right animated menuShow" role="menu" aria-labelledby="topbar-user">
|
||||
<?php if($GLOBALS['isRoot']){ ?>
|
||||
<li class="menu-system-setting"><a href="#" onclick="core.setting('system');"><i class="font-icon icon-cog"></i><?php echo LNG('system_setting');?></a></li>
|
||||
<?php } ?>
|
||||
|
||||
<?php if($GLOBALS['isRoot'] || $GLOBALS['auth']['systemMember.get']){ ?>
|
||||
<li class="menu-system-group"><a href="#" onclick="core.setting('member');"><i class="font-icon icon-group"></i><?php echo LNG('setting_member');?></a></li>
|
||||
<?php } ?>
|
||||
<?php if($GLOBALS['isRoot'] || $GLOBALS['auth']['pluginApp.index']){ ?>
|
||||
<li class="menu-system-plugin">
|
||||
<a href="#" onclick="core.openWindowBig('./index.php?pluginApp/index','<?php echo LNG('PluginCenter');?>');"><i class="font-icon icon-puzzle-piece"></i><?php echo LNG('PluginCenter');?></a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
<li class="menu-system-user"><a href="#" onclick="core.setting('user');"><i class="font-icon icon-user"></i><?php echo LNG('setting_user');?></a></li>
|
||||
<li class="menu-system-theme"><a href="#" onclick="core.setting('theme');"><i class="font-icon icon-dashboard"></i><?php echo LNG('setting_theme');?></a></li>
|
||||
<li class="menu-system-full"><a href="#" onclick="core.fullScreen();"><i class="font-icon icon-fullscreen"></i><?php echo LNG('full_screen');?></a></li>
|
||||
<li class="menu-system-help"><a href="#" onclick="core.setting('help');"><i class="font-icon icon-question"></i><?php echo LNG('setting_help');?></a></li>
|
||||
<li class="menu-system-about"><a href="#" onclick="core.setting('about');"><i class="font-icon icon-info-sign"></i><?php echo LNG('setting_about');?></a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<li class="menu-system-logout"><a href="./index.php?user/logout"><i class="font-icon icon-signout"></i><?php echo LNG('ui_logout');?></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div style="clear:both"></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,67 @@
|
||||
<div class="full-background"></div>
|
||||
<div class="init-loading"><div>
|
||||
<img src="<?php echo STATIC_PATH;?>images/common/loading_simple.gif?v=<?php echo KOD_VERSION;?>"/></div>
|
||||
</div>
|
||||
<div class="topbar share-page-topbar">
|
||||
<div class="content">
|
||||
<div class="top-left">
|
||||
<a href="./" class="topbar-menu title">
|
||||
<?php
|
||||
if(substr(LNG('kod_name'),0,4) == '<img'){
|
||||
echo LNG('kod_name');
|
||||
}else{
|
||||
echo '<i class="icon-cloud"></i>'.LNG('kod_name');
|
||||
}
|
||||
?>
|
||||
</a>
|
||||
<div class="share-info">
|
||||
<span class="share-title">
|
||||
<b class="share-title-info">
|
||||
<?php clear_html($shareInfo['showName']);?>
|
||||
</b>
|
||||
</span>
|
||||
<span class="size"></span>
|
||||
<span class="time"></span>
|
||||
</div>
|
||||
<div style="clear:both;"></div>
|
||||
</div>
|
||||
<div class="top-right">
|
||||
<div class="share-info-user hidden menu-group" style="z-index:9999;">
|
||||
<span class="info"></span>
|
||||
<div class="btn-group">
|
||||
<a type="button" class="btn btn-primary btn-download" target="_blank" href=""><?php echo LNG('download');?></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if(!isset($config['settings']['language'])){ ?>
|
||||
<div class="menu-group">
|
||||
<a id='topbar-language' data-toggle="dropdown" href="#" class="topbar-menu">
|
||||
<i class='font-icon icon-flag'></i> <b class="caret"></b>
|
||||
</a>
|
||||
<a href="#" onclick="core.qrcode(window.location.href);" title="<?php echo LNG('qrcode');?>" class="topbar-menu" style="padding: 0 15px;margin-left: -2px;">
|
||||
<i class="font-icon icon-qrcode"></i>
|
||||
</a>
|
||||
<ul class="dropdown-menu topbar-language pull-right animated menuShow" role="menu" aria-labelledby="topbar-language">
|
||||
<?php
|
||||
$tpl = "";
|
||||
foreach ($config['settingAll']['language'] as $key => $value) {
|
||||
$name = $value[0];
|
||||
$select = I18n::getType() == $key ? "this":"";
|
||||
$tpl .= "<li><a href='javascript:core.language(\"{$key}\");' title=\"{$key}/{$value[1]}/{$value[2]}\" class='{$select}'><i class='lang-flag flag-{$key}'></i>{$name}</a></li>";
|
||||
}
|
||||
echo $tpl;
|
||||
?>
|
||||
</ul>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<div class="menu-group">
|
||||
<a href="#" id='topbar-user' class="topbar-menu" data-toggle="dropdown"><i class="font-icon icon-user"></i><?php echo $_SESSION['kodUser']['name'];?> <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu menu-topbar-user pull-right animated menuShow" role="menu" aria-labelledby="topbar-user">
|
||||
<li><a href="#" onclick="core.fullScreen();"><i class="font-icon icon-fullscreen"></i><?php echo LNG('full_screen');?></a></li>
|
||||
<li class="version_vip_free"><a href="http://kodcloud.com" target="_blank"><i class="font-icon icon-code-fork"></i><?php echo LNG('ui_project_home');?></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div style="clear:both"></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,103 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<link href="<?php echo STATIC_PATH;?>style/common.css?ver=<?php echo KOD_VERSION;?>" rel="stylesheet"/>
|
||||
<link href="./static/style/font-awesome/css/font-awesome.css?ver=<?php echo KOD_VERSION;?>" rel="stylesheet">
|
||||
<title><?php echo $title;?></title>
|
||||
<script type="text/javascript" src="<?php echo STATIC_PATH;?>js/lib/jquery-1.8.0.min.js?ver=<?php echo KOD_VERSION;?>"></script>
|
||||
<style type="text/css">
|
||||
body{
|
||||
background-color:#f0f2f5;
|
||||
font-family: Verdana,"Lantinghei SC","Hiragino Sans GB","Microsoft Yahei",Helvetica,arial,sans-serif;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
body a,body a:hover{color: #1890ff;}
|
||||
.body-panel{
|
||||
width:70%;margin:10% auto 5% auto;
|
||||
font-size: 13px;
|
||||
color:#666;
|
||||
background:#fff;border-radius:4px;
|
||||
padding-top:50px;padding-bottom:100px;
|
||||
box-shadow: 0 5px 20px rgba(0,0,0,0.05);
|
||||
}
|
||||
.body-panel .check-result{text-align: center;color:#000;}
|
||||
.body-panel .check-result .icon{width:70px;height:70px;line-height:70px;font-size:30px;}
|
||||
.check-result-title{font-size: 24px;line-height: 32px;margin:20px 0;}
|
||||
.check-result-desc{
|
||||
color: #333;
|
||||
margin: 0 0 20px 0;
|
||||
background: #fafafa;
|
||||
font-size: 16px;
|
||||
width: 80%;
|
||||
margin: 0 auto;
|
||||
border-radius: 2px;
|
||||
padding: 24px 40px;
|
||||
text-align: left;
|
||||
}
|
||||
.error-info{
|
||||
border-left: 5px solid #1890ff;
|
||||
display: block;
|
||||
padding: 5px 10px;
|
||||
background: #fcfcfc;
|
||||
color: #666;
|
||||
word-break: break-all;
|
||||
font-family: monospace;
|
||||
}
|
||||
.location-to{padding: 10px 0;color: #888;font-size: 13px;font-style: italic;}
|
||||
.icon{
|
||||
font-family: FontAwesome;
|
||||
display: inline-block;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background: rgba(0, 0, 0, 0.02);
|
||||
text-align: center;
|
||||
color: #666;
|
||||
border-radius: 50%;
|
||||
line-height: 20px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.icon.icon-loading{
|
||||
-webkit-animation: moveCircleLoopRight 1.4s infinite linear;
|
||||
animation: moveCircleLoopRight 1.4s infinite linear;
|
||||
}
|
||||
.icon.icon-loading:before{content:"\f110";}
|
||||
.icon.icon-success{background:#52c41a;color:#fff;}
|
||||
.icon.icon-success:before{content:"\f00c";}
|
||||
.icon.icon-error{background:#f5222d;color:#fff;}
|
||||
.icon.icon-error:before{content:"\f00d";}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
|
||||
<body>
|
||||
<div class="body-panel">
|
||||
<div class="check-result">
|
||||
<!-- <div class="icon icon-error"></div> -->
|
||||
<div class="check-result-title"><?php echo $title;?></div>
|
||||
<div class="check-result-desc">
|
||||
<span class="error-info"><?php echo $message;?></span>
|
||||
<div class="location-to"><?php echo $info;?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if($url){ ?>
|
||||
<script>
|
||||
var timeout = parseInt("<?php echo $time;?>");
|
||||
var link = "<?php echo $url;?>";
|
||||
var loop = setInterval(function(){
|
||||
timeout --;
|
||||
var info = timeout + "s 后自动跳转, <a href='"+link+"'>立即跳转</a>";
|
||||
$('.location-to').html(info);
|
||||
if(timeout<=0){
|
||||
clearInterval(loop);
|
||||
window.location.href = link;
|
||||
}
|
||||
},1000);
|
||||
</script>
|
||||
<?php } ?>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user