pull/109/head
midoks 7 years ago
parent 4018c2ff95
commit dd7b7afeca
  1. 14
      templates/default/close.html
  2. 188
      templates/default/config.html
  3. 136
      templates/default/control.html
  4. 175
      templates/default/crontab.html
  5. 78
      templates/default/database.html
  6. 88
      templates/default/files.html
  7. 134
      templates/default/firewall.html
  8. 57
      templates/default/ftp.html
  9. 188
      templates/default/index.html
  10. 58
      templates/default/install.html
  11. 309
      templates/default/login.html
  12. 66
      templates/default/site.html
  13. 57
      templates/default/soft.html
  14. 74
      templates/default/template.html

@ -0,0 +1,14 @@
$def with (data)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>$data['lan']['TITLE']</title>
</head>
<body>
<h1>$data['lan']['H1']</h1>
<p>$data['lan']['P1']</p>
<hr>
<address>$data['lan']['NAME']<a href="http://www.bt.cn/bbs" target="_blank">$data['lan']['HELP']</a></address>
</body>
</html>

@ -0,0 +1,188 @@
$def with (data)
<div class="main-content">
<div class="container-fluid" style="padding-bottom:54px">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$data['lan']['H1']</a>/<span class="plr10 c4">$data['lan']['H2']</span>
</div>
</div>
<div class="clearfix bgw mtb15 pd15">
<div class="safe-port pull-left">
<div class="ss-text pull-left mr50">
<em>$data['lan']['I1']</em>
<div class='ssh-item'>
<input class='btswitch btswitch-ios' id='closePl' type='checkbox'>
<label class='btswitch-btn' for='closePl' onclick='ClosePanel()'></label>
</div>
</div>
<div class="ss-text pull-left mr50">
<em>$data['lan']['I2']</em>
<div class='ssh-item'>
<input class='btswitch btswitch-ios' id='autoUpdate' type='checkbox' $data['panel']['auto'] >
<label class='btswitch-btn' for='autoUpdate' onclick="SetPanelAutoUpload()"></label>
</div>
</div>
<div class="ss-text pull-left mr50">
<em class="btlink" style="color: #20a53a;" onclick="GetPanelSSL()" title="点击自定义面板证书">$data['lan']['I3']</em>
<div class='ssh-item'>
<input class='btswitch btswitch-ios' id='panelSSL' type='checkbox'>
<label class='btswitch-btn' for='panelSSL' onclick="setPanelSSL()"></label>
</div>
</div>
</div>
</div>
<div class="setbox bgw mtb15">
<div class="title c6 plr15">
<h3 class="f16">$data['lan']['C1']</h3>
<button class="btn btn-default btn-sm" style="float: right;margin-top: 10px;display: none;" onclick="apiSetup()">$data['lan']['C2']</button>
</div>
<div class="important-title" style="margin: 20px 30px 0px;">
<p><span class="glyphicon glyphicon-alert" style="color: #f39c12; margin-right: 10px;"></span>$data['lan']['C3']</p>
</div>
<div class="setting-con pd15">
<form id="set-Config">
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT1']">$data['lan']['CT1']</span><input id="webname" name="webname" class="inputtxt bt-input-text" type="text" value="$web.ctx.session.webname" ><span class="set-info c7">$data['lan']['CY1']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT2']">$data['lan']['CT2']</span><input id="banport" name="port" class="inputtxt bt-input-text" type="numner" value="$data['panel']['port']" maxlength="5"><span class="set-info c7">$data['lan']['CY2']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT3']">$data['lan']['CT3']</span><input name="domain" class="inputtxt bt-input-text" type="text" value="$data['panel']['domain']"><span class="set-info c7">$:data['lan']['CY3']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT4']">$data['lan']['CT4']</span><input name="limitip" class="inputtxt bt-input-text" type="text" value="$data['panel']['limitip']"><span class="set-info c7">$:data['lan']['CY4']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT5']">$data['lan']['CT5']</span><input name="sites_path" class="inputtxt bt-input-text" type="text" value="$data['sites_path']"><span class="set-info c7">$data['lan']['CY5']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT6']">$data['lan']['CT6']</span><input name="backup_path" class="inputtxt bt-input-text" type="text" value="$data['backup_path']"><span class="set-info c7">$data['lan']['CY6']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT7']">$data['lan']['CT7']</span><input name="address" class="inputtxt bt-input-text" type="text" value="$data['panel']['address']"><span class="set-info c7">$data['lan']['CY7']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT8']">$data['lan']['CT8']</span><input id="systemdate" name="systemdate" class="inputtxt bt-input-text disable" type="text" value="$data['systemdate']"><span class="modify btn btn-xs btn-success" onclick="syncDate()">$data['lan']['CY8']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT9']">$data['lan']['CT9']</span><input name="username_" class="inputtxt bt-input-text disable" type="text" value="$web.ctx.session.username" disabled><span class="modify btn btn-xs btn-success" onclick="setUserName()">$data['lan']['CY9']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT10']">$data['lan']['CT10']</span><input name="password_" class="inputtxt bt-input-text disable" type="text" value="******" disabled><span class="modify btn btn-xs btn-success" onclick="setPassword()">$data['lan']['CY10']</span></p>
<p class="mtb15"><span class="set-tit text-right" title="$data['lan']['CT11']">$data['lan']['CT11']</span><input name="btusername" class="inputtxt bt-input-text disable" type="text" value="" disabled><span class="modify btn btn-xs btn-success mr5" onclick="bindBTName(2,'b')">$data['lan']['CY11']</span></p>
<p class="mtb15" style="display: none;"><span class="set-tit text-right" title="$data['lan']['CT12']">$data['lan']['CT12']</span>
<select class="inputtxt bt-input-text disable" style="margin-left: -4px;width: 211px;" name="template">
$for template in data['panel']['templates']:
$if template == data['panel']['template']:
<option value="$template" selected>$template</option>
$else:
<option value="$template">$template</option>
</select>
<span class="modify btn btn-xs btn-success mr5" style="margin-left: 5px;" onclick="setTemplate()">$data['lan']['CY12']</span></p>
<p class="mtb15"><span class="set-tit text-right">微信小程序</span><input class="inputtxt bt-input-text disable" type="text" value="$data['wx']" disabled><span class="modify btn btn-xs btn-success mr5" onclick="open_wxapp()">绑定</span></p>
</form>
<div class="bt-submit set-submit">$data['lan']['C4']</div>
</div>
</div>
</div>
</div>
</div>
<style>
.boxConter{
height: 458px;
position: relative;
overflow:auto;
}
.iconCode{
padding: 50px 60px;
}
.box-conter{
width: 100%;
}
#QRcode{
margin-bottom: 25px;
text-align: center;
}
.iconCode #QRcode,
.iconCode .codeTip{
width: 100%;
text-align: center;
font-size: 17px;
}
.iconCode .weChatSamll img{
width: 100%;
}
.iconCode .weChatSamll{
display: none;
width: 200px;
height: 200px;
position: absolute;
border: 1px solid #ececec;
border-radius: 5px;
bottom: 150px;
right: 50px;
padding: 20px;
background-color: #fff;
}
.iconCode .weChatSamll:after{
content: '';
width: 15px;
height: 15px;
background: #ffffff;
border-bottom: 1px solid #ececec;
border-right: 1px solid #ececec;
transform: rotate(45deg);
position: absolute;
border-radius: 4px;
left: 90px;
bottom: -8px;
}
.iconCode .weChat{
margin-left: 15px;
}
.iconCode .weChat:hover .weChatSamll{
display: block;
}
.iconCode .QRcode{
margin-bottom: 15px;
text-align: center;
}
.codeTip ul li{
margin-bottom: 10px;
}
.personalDetails .head_img{
width: 50px;
height: 50px;
float: left;
margin-right: 30px;
}
.personalDetails .head_img img{
height: 100%;
border-radius:50%;
}
.personalDetails .nick_name{
height: 50px;
line-height: 50px;
width: 148px;
float: left;
font-size: 15px;
color: #808080;
}
.personalDetails .userList{
height: 100%;
}
.personalDetails .userList .addweChat{
height: 50px;
text-align: center;
padding-top: 20px;
color: #20a53a;
font-size: 16px;
}
.personalDetails .userList .addweChat:hover{
}
.personalDetails .userList .item{
height: 70px;
padding: 10px 15px;
border: 1px solid #ececec;
margin: 15px 65px;
border-radius: 5px;
}
.personalDetails .userList .cancelBind{
height: 50px;
width: 60px;
float: right;
line-height: 50px;
text-align: center;
}
</style>
<script type="text/javascript" src="/static/js/jquery.qrcode.min.js"></script>
<script src="/static/js/config.js?date=20180530"></script>
<script type="text/javascript">
setCookie('serverType','$web.ctx.session.webserver');
</script>

@ -0,0 +1,136 @@
$def with (data)
<div class="main-content">
<div class="container-fluid" style="padding-bottom: 50px;">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$data['lan']['H1']</a>/<span class="plr10 c4">$data['lan']['H2']</span>
</div>
</div>
<div class="safe container-fluid bgw mtb15 pd15" style="overflow: hidden;">
<div class="mr50 pull-left">
<div class="ss-text pull-left">
<em>$data['lan']['C1']</em>
<div class='ssh-item' id="openJK">
</div>
</div>
</div>
<div class="mr50 pull-left">
<div class="ss-text pull-left">
<em>$data['lan']['C2']</em>
<input class="bt-input-text" id="saveDay" value="" type="number">
</div>
<div class="ss-text pull-left" style="margin-left:10px">
<button class="btn btn-default btn-sm" type="button" onclick="SetControl(true);">$data['lan']['C3']</button>
</div>
</div>
<div class="mr50 pull-left" style="padding-left:50px; border-left:#ccc 1px solid; margin-right:0">
<button class="btn btn-default btn-sm" type="button" onclick="CloseControl()">$data['lan']['C4']</button>
</div>
</div>
<div class="control">
<div class="col-xs-12 col-sm-12 col-md-12 pull-left pd0 view0">
<div class="mb15">
<div class="bgw pb15">
<div class="title c6 plr15 mb15">
<h3 class="c-tit f16">平均负载</h3>
<div class="searcTime pull-right"><span class="tit">$data['lan']['S1']</span><span class="gt" onclick="Wday(1,'getload')">$data['lan']['D1']</span><span class="gt on" onclick="Wday(0,'getload')">$data['lan']['D2']</span><span class="gt" onclick="Wday(7,'getload')">$data['lan']['D3']</span><span class="gt" onclick="Wday(30,'getload')">$data['lan']['D4']</span>
<div class="ss">
<span class="st">$data['lan']['S2']</span>
<div class="time">
<span class="bt">$data['lan']['G1']<input class="btime" type="text" value="2017/1/10 00:00:00"></span>
<span class="et">$data['lan']['G2']<input class="etime" type="text" value="2017/1/13 00:00:00"></span>
<div class="sbtn loadbtn">$data['lan']['G3']</div>
</div>
</div>
</div>
</div>
<div id="getloadview" style="width:100%; height:330px"></div>
</div>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6 pull-left pd0 view1">
<div class="pr8">
<div class="bgw pb15">
<div class="title c6 plr15">
<h3 class="c-tit f16">$data['lan']['T1']</h3>
<div class="searcTime pull-right"><span class="tit">$data['lan']['S1']</span><span class="gt" onclick="Wday(1,'cpu')">$data['lan']['D1']</span><span class="gt on" onclick="Wday(0,'cpu')">$data['lan']['D2']</span><span class="gt" onclick="Wday(7,'cpu')">$data['lan']['D3']</span><span class="gt" onclick="Wday(30,'cpu')">$data['lan']['D4']</span>
<div class="ss">
<span class="st">$data['lan']['S2']</span>
<div class="time">
<span class="bt">$data['lan']['G1']<input class="btime" type="text" value="2017/1/10 00:00:00"></span>
<span class="et">$data['lan']['G2']<input class="etime" type="text" value="2017/1/13 00:00:00"></span>
<div class="sbtn cpubtn">$data['lan']['G3']</div>
</div>
</div>
</div>
</div>
<div id="cupview" style="width:100%; height:330px"></div>
</div>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6 pull-left pd0 view2">
<div class="pl7">
<div class="bgw pb15">
<div class="title c6 plr15">
<h3 class="c-tit f16">$data['lan']['T2']</h3>
<div class="searcTime pull-right"><span class="tit">$data['lan']['S1']</span><span class="gt" onclick="Wday(1,'mem')">$data['lan']['D1']</span><span class="gt on" onclick="Wday(0,'mem')">$data['lan']['D2']</span><span class="gt" onclick="Wday(7,'mem')">$data['lan']['D3']</span><span class="gt" onclick="Wday(30,'mem')">$data['lan']['D4']</span>
<div class="ss">
<span class="st">$data['lan']['S2']</span>
<div class="time">
<span class="bt">$data['lan']['G1']<input class="btime" type="text" value="2017/1/10 00:00:00"></span>
<span class="et">$data['lan']['G2']<input class="etime" type="text" value="2017/1/13 00:00:00"></span>
<div class="sbtn membtn">$data['lan']['G3']</div>
</div>
</div>
</div>
</div>
<div id="memview" style="width:100%; height:330px"></div>
</div>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6 pull-left pd0 view1">
<div class="pr8">
<div class="bgw pb15">
<div class="title c6 plr15 mb15">
<h3 class="c-tit f16">$data['lan']['T3']</h3>
<div class="searcTime pull-right"><span class="tit">$data['lan']['S1']</span><span class="gt" onclick="Wday(1,'disk')">$data['lan']['D1']</span><span class="gt on" onclick="Wday(0,'disk')">$data['lan']['D2']</span><span class="gt" onclick="Wday(7,'disk')">$data['lan']['D3']</span><span class="gt" onclick="Wday(30,'disk')">$data['lan']['D4']</span>
<div class="ss">
<span class="st">$data['lan']['S2']</span>
<div class="time">
<span class="bt">$data['lan']['G1']<input class="btime" type="text" value="2017/1/10 00:00:00"></span>
<span class="et">$data['lan']['G2']<input class="etime" type="text" value="2017/1/13 00:00:00"></span>
<div class="sbtn diskbtn">$data['lan']['G3']</div>
</div>
</div>
</div>
</div>
<div id="diskview" style="width:100%; height:330px"></div>
</div>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6 pull-left pd0 view2">
<div class="pl7">
<div class="bgw pb15">
<div class="title c6 plr15 mb15">
<h3 class="c-tit f16">$data['lan']['T4']</h3>
<div class="searcTime pull-right"><span class="tit">$data['lan']['S1']</span><span class="gt" onclick="Wday(1,'network')">$data['lan']['D1']</span><span class="gt on" onclick="Wday(0,'network')">$data['lan']['D2']</span><span class="gt" onclick="Wday(7,'network')">$data['lan']['D3']</span><span class="gt" onclick="Wday(30,'network')">$data['lan']['D4']</span>
<div class="ss">
<span class="st">$data['lan']['S2']</span>
<div class="time">
<span class="bt">$data['lan']['G1']<input class="btime" type="text" value="2017/1/10 00:00:00"></span>
<span class="et">$data['lan']['G2']<input class="etime" type="text" value="2017/1/13 00:00:00"></span>
<div class="sbtn networkbtn">$data['lan']['G3']</div>
</div>
</div>
</div>
</div>
<div id="network" style="width:100%; height:330px"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="/static/js/echarts.min.js"></script>
<script src="/static/js/control.js?date=20180321"></script>

@ -0,0 +1,175 @@
$def with (data)
<div class="main-content">
<div class="container-fluid" style="padding-bottom:54px">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$data['lan']['H1']</a>/<span class="plr10 c4">$data['lan']['H2']</span>
</div>
</div>
<div class="setbox bgw mtb15">
<div class="title c6 plr15">
<h3 class="f16">$data['lan']['H3']</h3>
</div>
<div class="setting-con ptb20">
<div class="clearfix plan">
<span class="typename c4 pull-left f14 text-right mr20">$data['lan']['T1']</span>
<div class="dropdown planjs pull-left mr20">
<button class="btn btn-default dropdown-toggle" type="button" id="excode" data-toggle="dropdown" style="width:auto">
<b val="toShell">$data['lan']['TT1']</b>
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu" aria-labelledby="excode">
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="toShell">$data['lan']['TT1']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="site">$data['lan']['TT2']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="database">$data['lan']['TT3']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="logs">$data['lan']['TT4']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="rememory">$data['lan']['TT5']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="toUrl">$data['lan']['TT6']</a>
</li>
</ul>
</div>
<span class="planSign"><i>*</i>$data['lan']['PS']</span>
</div>
<div class="clearfix plan">
<span class="typename c4 pull-left f14 text-right mr20">$data['lan']['T2']</span>
<div class="planname pull-left"><input type="text" name="name" class="bt-input-text"></div>
</div>
<div class="clearfix plan">
<span class="typename c4 pull-left f14 text-right mr20">$data['lan']['T3']</span>
<div class="dropdown plancycle pull-left mr20">
<button class="btn btn-default dropdown-toggle" type="button" id="cycle" data-toggle="dropdown" style="width:94px">
<b val="week">$data['lan']['TZ6']</b>
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu" aria-labelledby="cycle">
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="day">$data['lan']['TZ1']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="day-n">$data['lan']['TZ2']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="hour">$data['lan']['TZ3']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="hour-n">$data['lan']['TZ4']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="minute-n">$data['lan']['TZ5']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="week">$data['lan']['TZ6']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="month">$data['lan']['TZ7']</a>
</li>
</ul>
</div>
<div id="ptime" class="pull-left">
<div class="dropdown planweek pull-left mr20">
<button class="btn btn-default dropdown-toggle" type="button" id="excode" data-toggle="dropdown"><b val="1">$data['lan']['TZZ1']</b> <span class="caret"></span></button>
<ul class="dropdown-menu" role="menu" aria-labelledby="excode">
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="1">$data['lan']['TZZ1']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="2">$data['lan']['TZZ2']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="3">$data['lan']['TZZ3']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="4">$data['lan']['TZZ4']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="5">$data['lan']['TZZ5']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="6">$data['lan']['TZZ6']</a>
</li>
<li>
<a role="menuitem" tabindex="-1" href="javascript:;" value="0">$data['lan']['TZZ7']</a>
</li>
</ul>
</div>
<div class="plan_hms pull-left mr20 bt-input-text"> <span><input type="number" name="hour" value="1" maxlength="2" max="23" min="0"></span> <span class="name">$data['lan']['TZS1']</span> </div>
<div class="plan_hms pull-left mr20 bt-input-text"> <span><input type="number" name="minute" value="30" maxlength="2" max="59" min="0"></span> <span class="name">$data['lan']['TZS2']</span> </div>
</div>
</div>
<div class="clearfix plan">
<span class="typename controls c4 pull-left f14 text-right mr20">$data['lan']['T4']</span>
<div id="implement" style="line-height:34px"><textarea class="txtsjs bt-input-text" name="sBody"></textarea></div>
</div>
<div class="clearfix plan">
<div class="bt-submit plan-submit" onclick="planAdd()">$data['lan']['T5']</div>
</div>
<ul class="help-info-text c7 ptb15 mlr20">
<li>当添加完备份任务,应该手动运行一次,并检查备份包是否完整</li>
<li>磁盘容量不够、数据库密码错误、网络不稳定等原因,可能导致数据备份不完整</li>
</ul>
</div>
<form id="set-Config" action="/crontab?action=AddCrontab" enctype="multipart/form-data" method="post" style="display: none;">
<input type="text" name="name" value="" />
<input type="text" name="type" value="" />
<input type="number" name="where1" value="" />
<input type="number" name="hour" value="" />
<input type="number" name="minute" value="" />
<input type="text" name="week" value="" />
<input type="text" name="sType" value="" />
<textarea name='sBody'></textarea>
<input id="sFile" type="file" name="sFile" value="" />
<input id="sName" type="text" name="sName" value="" />
<input id="backupTo" type="text" name="backupTo" value="localhost" />
<input id="urladdress" type="text" name="urladdress" value="" />
<input type="number" name="save" value="" />
<input type="submit" />
</form>
</div>
<div class="setbox bgw mtb15">
<div class="title c6 plr15">
<h3 class="f16">$data['lan']['H4']</h3>
<span id="allDelete" style="float: right;display: none;">
<button onclick="allDeleteCron();" class="btn btn-default btn-sm">$data['lan']['BTN1']</button>
</span>
</div>
<div class="setting-con divtable pd15">
<table class="table table-hover">
<thead>
<tr>
<th width='30px'><input onclick="checkSelect();" type="checkbox" id="setBox"></th>
<th>$data['lan']['TH1']</th>
<th>$data['lan']['TH2']</th>
<th>$data['lan']['TH3']</th>
<th>$data['lan']['TH4']</th>
<th width="190">$data['lan']['TH5']</th>
</tr>
</thead>
<tbody id="cronbody">
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<script src="/static/js/crontab.js?date=20180808"></script>
<script type="text/javascript">
setCookie('serverType','$web.ctx.session.webserver');
toWeek();
toHour();
toMinute();
toShell();
getCronData();
</script>

@ -0,0 +1,78 @@
$def with (tData)
<div class="main-content pb55">
<div class="container-fluid">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$tData['lan']['H1']</a>/<span class="plr10 c4">$tData['lan']['H2']</span>
</div>
<div class="search pull-right">
<form target="hid" onsubmit='getData(1,$$("#SearchValue").prop("value"))'>
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="$tData['lan']['SEARCH']" />
<button type="button" class="ser-sub pull-left" onclick='getData(1,$$("#SearchValue").prop("value"))'></button>
</form>
<iframe name='hid' id="hid" style="display:none"></iframe>
</div>
</div>
<div class="safe bgw mtb15 pd15">
<button onclick="DataAdd(0)" title="$tData['lan']['BTNT1']" class="btn btn-success btn-sm" type="button" style="margin-right: 5px;">$tData['lan']['BTN1']</button>
<button onclick="DataSetuppwd(0)" title="$tData['lan']['BTNT2']" class="btn btn-default btn-sm" type="button" style="margin-right: 5px;">$tData['lan']['BTN2']</button>
<button onclick="AdminDatabase('','root','$tData['mysql_root']')" title="$tData['lan']['BTNT3']" class="btn btn-default btn-sm" type="button" style="margin-right: 5px;">$tData['lan']['BTN3']</button>
<span style="float:right">
<button id="allDelete" style="float: right;display: none;margin-left:10px;" onclick="allDeleteDatabase();" title="$tData['lan']['BTNT4']" class="btn btn-default btn-sm">$tData['lan']['BTN4']</button>
<button onclick="Recycle_bin('open');" id="dataRecycle" title="$tData['lan']['BTNT4']" class="btn btn-default btn-sm" style="margin-left: 5px;"><span class="glyphicon glyphicon-trash" style="margin-right: 5px;"></span>回收站</button>
</span>
<div class="divtable mtb10">
<div class="tablescroll">
<table class="table table-hover" style="min-width: 900px;border: 0 none;">
<thead>
<tr>
<th width='30px'><input onclick="checkSelect();" type="checkbox" id="setBox"></th>
<th onclick="listOrder('name','database',this)" style="cursor: pointer;">$tData['lan']['TH1']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th onclick="listOrder('name','database',this)" style="cursor: pointer;">$tData['lan']['TH2']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th>$tData['lan']['TH3']</th>
<th width="140">$tData['lan']['TH4']</th>
<th>$tData['lan']['TH5']</th>
<th width="260" class="text-right">$tData['lan']['TH6']</th>
</tr>
</thead>
<tbody id="DataBody"></tbody>
</table>
</div>
<div class="dataTables_paginate paging_bootstrap pagination">
<span class="sync btn btn-default btn-sm" style="margin-right:5px" onclick="SyncToDatabases(1)" title="$tData['lan']['TP1']">$tData['lan']['SP1']</span>
<span class="sync btn btn-default btn-sm" style="margin-right:5px" onclick="SyncToDatabases(0)" title="$tData['lan']['TP2']">$tData['lan']['SP2']</span>
<span class="sync btn btn-default btn-sm" onclick="SyncGetDatabases()" title="$tData['lan']['TP3']">$tData['lan']['SP3']</span>
<ul id="DataPage" class="page pull-right"></ul>
</div>
</div>
</div>
<form id="toPHPMyAdmin" action="$web.ctx.session.phpmyadminDir/index.php" method="post" style="display: none;" target="_blank">
<input type="text" name="pma_username" id="pma_username" value="" />
<input type="password" name="pma_password" id="pma_password" value="" />
<input type="text" name="server" value="1" />
<input type="text" name="target" value="index.php" />
<input type="text" name="db" id="db" value="" />
</form>
</div>
</div>
</div>
<script type="text/javascript">
setCookie('backup_path',"$web.ctx.session.config['backup_path']");
</script>
<script type="text/javascript" src="/static/js/data.js?date=20180725"></script>
<script type="text/javascript" src="/static/js/files.js?date=20180124"></script>
<script type="text/javascript">
$if not tData['isSetup']:
layer.msg('$tData["lan"]["JS1"]<a href="/soft#i" style="color:#20a53a;float: right;">$tData["lan"]["JS2"]</a>',{icon:7,shade: [0.3, '#000'],time:0});
$$(".layui-layer-shade").css("margin-left","180px");
setTimeout(function(){
getData(1);
},300);
$$("#dataRecycle").click(function(){
setTimeout(function(){
Recycle_bin(6);
},1000);
});
</script>
<script src="/static/js/upload.js?date=20180124"></script>

@ -0,0 +1,88 @@
$def with (tData)
<div class="main-content">
<div class="container-fluid" style="padding-bottom:50px">
<div class="file-box bgw mtb15" style="position:relative; padding-top:110px">
<div id="tipTools" class="plr15">
<div class="ptb15">
<div class="clearfix">
<div class="pull-left">
<button id="backBtn" class="backBtn btn btn-default btn-sm glyphicon glyphicon-arrow-left pull-left" title="$tData['lan']['BTN1']" onClick="BackDir()"></button>
<button class="backBtn refreshBtn btn btn-default btn-sm glyphicon glyphicon-refresh pull-right" title="$tData['lan']['BTN2']" style="margin-left:-1px;"></button>
<span id='DirPathPlace' class="pull-left"><input id="fileInputPath" type="text"></span>
<span id='PathPlaceBtn' class="pull-left"></span>
</div>
<div class="pull-left mlr15" style="line-height:26px"><span id='DirInfo'></span></div>
<div class="search pull-right" style="position: absolute; top: 6px; right: 5px;">
<form target="hid" onsubmit='GetFiles(1)'>
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="" />
<button type="button" class="ser-sub pull-left" onclick='GetFiles(1)'></button>
</form>
<iframe name='hid' id="hid" style="display:none"></iframe>
</div>
</div>
</div>
<div class="clearfix ptb10">
<button class="btn btn-default btn-sm pull-left" onclick="UploadFiles()">$tData['lan']['BTN3']</button>
<button class="btn btn-default btn-sm pull-left" onclick="DownloadFile()" title="$tData['lan']['TI1']" style="margin:0 5px">$tData['lan']['BTN4']</button>
<span id='BarTools'></span>
<span id='Batch' style="background-color:#fff;position:absolute;right:190px;z-index:10"></span>
<span id='comlist' class="comlist"></span>
<div class="btn-group btn-group-sm pull-right" style="margin-right:5px;">
<button id="set_icon" title="$tData['lan']['TI2']" type="button" class="btn btn-default">
<i class="glyphicon glyphicon-th"></i>
</button>
<button id="set_list" title="$tData['lan']['TI3']" type="button" class="btn btn-default active">
<i class="glyphicon glyphicon-th-list"></i>
</button>
</div>
</div>
</div>
<div class="divtable pd15" id="fileCon"></div>
<div class="dataTables_paginate paging_bootstrap pagination plr15" style="position: relative; top: -15px;">
<ul id="filePage" class="page"></ul>
</div>
</div>
</div>
</div>
</div>
<ul id="rmenu" class="dropdown-menu" style="display:none">
<li onclick="javascript:Batch(1);"><a style="cursor: pointer;">$tData['lan']['L1']</a></li>
<li onclick="javascript:Batch(2);"><a style="cursor: pointer;">$tData['lan']['L2']</a></li>
<li onclick="javascript:Batch(5);"><a style="cursor: pointer;">$tData['lan']['L3']</a></li>
<li onclick="javascript:Batch(3);"><a style="cursor: pointer;">$tData['lan']['L4']</a></li>
<li onclick="javascript:Batch(4);"><a style="cursor: pointer;">$tData['lan']['L5']</a></li>
</ul>
<script src="/static/js/jquery-ui.min.js"></script>
<script src="/static/js/jquery.contextify.min.js"></script>
<script src="/static/js/files.js?date=20180425"></script>
<script src="/static/js/upload.js?date=20171115"></script>
<script type="text/javascript">
setTimeout(function(){
GetDisk();
},500);
var xPath = getCookie('Path');
setTimeout(function(){
GetFiles((xPath!=undefined?xPath:'/www/wwwroot'));
},800);
PathPlaceBtn((xPath!=undefined?xPath:'/www/wwwroot'));
setCookie('uploadSize',1024 * 1024 * 1024);
if(getCookie('rank') == undefined || getCookie('rank') == null){
setCookie('rank','a');
}
$$("#set_icon").click(function(){
setCookie('rank','b');
$$(this).addClass("active");
$$("#set_list").removeClass("active");
GetFiles(getCookie('Path'));
});
$$("#set_list").click(function(){
setCookie('rank','a');
$$(this).addClass("active");
$$("#set_icon").removeClass("active");
GetFiles(getCookie('Path'));
})
$$(".refreshBtn").click(function(){
GetFiles(getCookie('Path'));
})
</script>

@ -0,0 +1,134 @@
$def with (data)
<style>
.weblog{
font-size: 14px;
display:inline-block;
line-height:30px;
}
.weblog em{
font-style:normal;
color:#666;
margin: 0 30px;
}
.weblog span{
margin-right:30px;
}
.weblog a{
color:#20a53a;
}
</style>
<div class="main-content">
<div class="container-fluid" style="padding-bottom: 50px;">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$data['lan']['H1']</a>/<span class="plr10 c4">$data['lan']['H2']</span>
</div>
<div class="search pull-right">
<form target="hid" onsubmit='getLogs(1,$$("#SearchValue").prop("value"))'>
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="$data['lan']['SEARCH']" />
<button type="button" class="ser-sub pull-left" onclick='getLogs(1,$$("#SearchValue").prop("value"))'></button>
</form>
<iframe name='hid' id="hid" style="display:none"></iframe>
</div>
</div>
<div class="safe container-fluid bgw mtb15 pd15">
<div class="mr50 pull-left">
<form>
<div class="ss-text pull-left">
<em>$data['lan']['BTN1']</em>
<div class='ssh-item' id="in_safe">
</div>
</div>
</form>
</div>
<div class="mr50 pull-left">
<div class="ss-text pull-left mr5">
<em>$data['lan']['BTN2']</em>
<input type="text" class="bt-input-text" id="mstscPort" value="" />
</div>
<div class="ss-text pull-left">
<button id="mstscSubmit" onclick='mstsc($$("#mstscPort").prop("value"))' class="btn btn-default btn-sm" type="button">$data['lan']['BTN3']</button>
</div>
</div>
<div class="mr50 pull-left" style="border-right: 1px solid #ccc; padding-right: 40px;">
<div class="ss-text pull-left">
<em>$data['lan']['BTN4']</em>
<div class='ssh-item' id="isPing">
</div>
</div>
</div>
<div class="weblog">
<span>$data['lan']['S1']</span><a href="javascript:openPath('$web.ctx.session.logsPath');">$web.ctx.session.logsPath</a><em id="logSize">0KB</em>
<button class="btn btn-default btn-sm" onclick="CloseLogs();">$data['lan']['BTN5']</button>
</div>
</div>
<div class="white-black-ip bgw mtb15">
<div class="black-ip">
<div class="def-log">
<div class="title c6 plr15">
<h3 class="f16">$data['lan']['H3']</h3>
<select id="firewalldType" class="bt-input-text" name="type" style="width:95px;">
<option value="port">$data['lan']['F1']</option>
<option value="address">$data['lan']['F2']</option>
</select>
<input type="text" class="bt-input-text" style="width: 120px;" id="AcceptPort" placeholder="$data['lan']['F3']">
<input type="text" class="bt-input-text" id="Ps" placeholder="$data['lan']['F4']">
<button id="toAccept" onclick="AddAcceptPort()" class="btn btn-default btn-sm va0" type="button">$data['lan']['F5']</button>
<span id="f-ps" style="margin-left: 10px;">$data['lan']['F6']</span>
</div>
<div class="divtable pd15">
<div class="tablescroll">
<table class="table table-hover" style="min-width: 640px;border: 0 none;">
<thead>
<tr>
<th>$data['lan']['TH1']</th>
<th>$data['lan']['TH2']</th>
<th>$data['lan']['TH3']<a href="https://www.bt.cn/bbs/thread-4708-1-1.html" class="bt-ico-ask" target="_blank" title="$data['lan']['F7']">?</a></th>
<th>$data['lan']['TH4']</th>
<th>$data['lan']['TH5']</th>
<th width="50px" class="text-right">$data['lan']['TH6']</th>
</tr>
</thead>
<tbody id="firewallBody"></tbody>
</table>
</div>
<div class="dataTables_paginate paging_bootstrap pagination">
<ul id="firewallPage" class="page"></ul>
</div>
</div>
</div>
</div>
</div>
<div class="white-black-ip bgw mtb15">
<div class="black-ip">
<div class="def-log">
<div class="title c6 plr15">
<h3 class="f16">$data['lan']['H4']</h3>
<a class="btn btn-default btn-sm" onclick="delLogs();" style="margin-top: 1px;">$data['lan']['BTN5']</a>
</div>
<div class="divtable pd15">
<div class="tablescroll">
<table class="table table-hover" style="min-width: 640px;border: 0 none;">
<thead>
<tr>
<th>$data['lan']['LTH1']</th>
<th>$data['lan']['LTH2']</th>
<th>$data['lan']['LTH3']</th>
<th>$data['lan']['LTH4']</th>
</tr>
</thead>
<tbody id="logsBody"></tbody>
</table>
</div>
<div class="dataTables_paginate paging_bootstrap pagination">
<ul id="logsPage" class="page"></ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="/static/js/firewall.js?date=20170920"></script>

@ -0,0 +1,57 @@
$def with (tData)
<div class="main-content pb55">
<div class="container-fluid">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$tData['lan']['H1']</a>/<span class="plr10 c4">$tData['lan']['H2']</span>
</div>
<div class="search pull-right">
<form target="hid" onsubmit='getFtp(1,$$("#SearchValue").prop("value"))'>
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="$tData['lan']['SEARCH']" />
<button type="button" class="ser-sub pull-left" onclick='getFtp(1,$$("#SearchValue").prop("value"))'></button>
</form>
<iframe name='hid' id="hid" style="display:none"></iframe>
</div>
</div>
<div class="safe bgw mtb15 pd15">
<div class="important-title">
<p><span class="glyphicon glyphicon-alert" style="color: #f39c12; margin-right: 10px;"></span> $tData['lan']['PS'] ftp://$web.ctx.session.address:$web.ctx.session.port</p>
</div>
<button onclick="ftpAdd()" class="btn btn-success btn-sm" type="button">$tData['lan']['BTN1']</button>
<button onclick="ftpPortEdit($web.ctx.session.port)" class="btn btn-default btn-sm" type="button" style="margin-left:5px">$tData['lan']['BTN2']</button>
<span id="allDelete" style="float: right;display: none;">
<button onclick="allDeleteFtp();" class="btn btn-default btn-sm">$tData['lan']['BTN3']</button>
</span>
<div class="divtable mtb10">
<div class="tablescroll">
<table class="table table-hover" style="min-width: 900px;border: 0 none;">
<thead>
<tr>
<th width='30'><input type="checkbox" onclick="checkSelect();" id="setBox"></th>
<th onclick="listOrder('name','ftp',this)" style="cursor: pointer;">$tData['lan']['TH1']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th width="15%">$tData['lan']['TH2']</th>
<th onclick="listOrder('status','ftp',this)" style="cursor: pointer;" width="100">$tData['lan']['TH3']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th width="26%">$tData['lan']['TH4']</th>
<th width="15%">$tData['lan']['TH5']</th>
<th width="130" class="text-right">$tData['lan']['TH6']</th>
</tr>
</thead>
<tbody id="ftpBody"></tbody>
</table>
</div>
<div class="dataTables_paginate paging_bootstrap pagination">
<ul id="ftpPage" class="page"></ul>
</div>
</div>
</div>
</div>
</div>
<script src="/static/js/ftp.js?date=20180725"></script>
<script type="text/javascript">
$if not tData['isSetup']:
layer.msg('$tData["lan"]["JS1"]<a href="/soft" style="color:#20a53a; float: right;">$tData["lan"]["JS1"]</a>',{icon:7,time:0,shade: [0.3, '#000']});
$$(".layui-layer-shade").css("margin-left","180px");
setTimeout(function(){
getFtp(1);
},300);
</script>

@ -0,0 +1,188 @@
$def with (data)
<div class="main-content">
<div class="container-fluid" style="padding-bottom: 66px;">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$data['lan']['H1']</a>/<span class="plr10 c4">$data['lan']['H2']</span>
</div>
<span class="pull-right f12 c6" style="line-height:42px; margin-right:15px">
免费版 <span id="btversion" class="mr5" onclick="openLog()">$web.ctx.session.version</span>
<span id="toUpdate"><a class="btlink" href="javascript:checkUpdate();">$data['lan']['V3']</a></span>
</span>
</div>
<div class="danger-tips">
<div class="alert alert-warning" id="messageError" style="display: none;background-color: #ffe0e0;border-color: #ffb0b0;color: #ff2020; margin-bottom:0"></div>
</div>
<div class="system-info bgw clearfix mtb15">
<div class="title c6 f16 plr15">
$data['lan']['S1'] <span id="info"> $data['lan']['S2']</span>&#12288;&#12288;&#12288;$data['lan']['S3'] <span id="running"> $data['lan']['S4']</span>
<button onclick="ReBoot()" class="btn btn-success btn-xs" style="vertical-align:1px;margin-left:10px;">$data['lan']['S5']</button>
<button onclick="reWeb()" style="vertical-align:1px;" class="btn btn-success btn-xs">$data['lan']['S6']</button>
<button onclick="repPanel()" style="vertical-align:1px;" class="btn btn-success btn-xs">$data['lan']['S7']</button>
</div>
<div class="system-info-con mtb15">
<ul class="clearfix">
<li class="sys-i-c-box col-xs-6 col-sm-4 col-md-4 col-lg-3 plr15">
<div class="siteinfo-box b-shadown">
<h3 class="f14">$data['lan']['N1']</h3>
<div class="siteinfo-box-right">
<h4 class="c6">$data['siteCount'] $data['lan']['L3']</h4>
<div class="sbr-btn">
<a href="/site">$data['lan']['L1']</a>|<a href="javascript:;" onclick="webAdd(0)">$data['lan']['L2']</a>
</div>
</div>
</div>
</li>
<li class="sys-i-c-box col-xs-6 col-sm-4 col-md-4 col-lg-3 plr15">
<div class="siteinfo-box b-shadown">
<h3 class="f14">$data['lan']['N3']</h3>
<div class="siteinfo-box-right">
<h4 class="c6">$data['ftpCount'] $data['lan']['L3']</h4>
<div class="sbr-btn">
<a href="/ftp">$data['lan']['L1']</a>|<a href="javascript:;" onclick="ftpAdd(0)">$data['lan']['L2']</a>
</div>
</div>
</div>
</li>
<li class="sys-i-c-box col-xs-6 col-sm-4 col-md-4 col-lg-3 plr15">
<div class="siteinfo-box b-shadown">
<h3 class="f14">$data['lan']['N2']</h3>
<div class="siteinfo-box-right">
<h4 class="c6">$data['databaseCount'] $data['lan']['L3']</h4>
<div class="sbr-btn">
<a href="/database">$data['lan']['L1']</a>|<a href="javascript:;" onclick="DataAdd(0)">$data['lan']['L2']</a>
</div>
</div>
</div>
</li>
<li class="sys-i-c-box col-xs-6 col-sm-4 col-md-4 col-lg-3 plr15">
<div class="siteinfo-box b-shadown btvipbox">
<div class="btvip">
<span class="t2">企业运维版</span>
<p><span class="price">98</span>元/月</p>
<button class="btn btn-success btn-sm" onclick="window.open('https://www.bt.cn/admin/index.html')">购买</button>
</div>
<div class="btvip-r">
<div class="btvipinfo">
<p>1、一对一运维人员对接</p>
<p>2、提供每月3次运维服务</p>
<p>3、双重安全隔离登录</p>
</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div class="server bgw mtb15">
<div class="title c6 f16 plr15">
<h3 class="c6 f16 pull-left">$data['lan']['T1']</h3>
<a class="pull-left f12 btlink" href="javascript:;" style="background:none;padding:0; margin-left:22px" onclick="GetNetWorkList()">$data['lan']['T2']</a>
<a class="pull-left f12 btlink" href="javascript:;" style="background:none;padding:0; margin-left:22px" onclick="GetProcessList()">$data['lan']['T3']</a>
</div>
<div class="server-circle">
<ul class="row" id="systemInfoList">
<li class="col-xs-6 col-sm-3 col-md-3 col-lg-2 mtb20 circle-box text-center" id="LoadList">
<h3 class="c5 f15">负载状态<a href="https://www.bt.cn/bbs/thread-11402-1-1.html" target="_blank" class="bt-ico-ask" style="cursor: pointer;">?</a></h3>
<div class="circle" style="cursor: pointer;">
<div class="pie_left">
<div class="left"></div>
</div>
<div class="pie_right">
<div class="right"></div>
</div>
<div class="mask"><span id="Load">0</span>%</div>
</div>
<h4 id="LoadState" class="c5 f15">获取中:</h4>
</li>
<li class="col-xs-6 col-sm-3 col-md-3 col-lg-2 mtb20 circle-box text-center">
<h3 class="c5 f15">$data['lan']['P1']</h3>
<div class="circle">
<div class="pie_left">
<div class="left"></div>
</div>
<div class="pie_right">
<div class="right"></div>
</div>
<div class="mask"><span id="state">0</span>%</div>
</div>
<h4 id="core" class="c5 f15">$data['lan']['S2']</h4>
</li>
<li class="col-xs-6 col-sm-3 col-md-3 col-lg-2 mtb20 circle-box text-center">
<h3 class="c5 f15">$data['lan']['P2']</h3>
<div class="circle mem-release">
<div class="pie_left">
<div class="left"></div>
</div>
<div class="pie_right">
<div class="right"></div>
</div>
<div class="mask"><span id="left">0</span>%</div>
<div class="mem-re-min"></div>
<div class="mem-re-con" title="$data['lan']['P3']"></div>
</div>
<h4 id="memory" class="c5 f15">$data['lan']['S2']</h4>
</li>
</ul>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6 pull-left pd0">
<div class="pr8">
<div class="bgw">
<div class="title c6 f16 plr15">$data['lan']['P4']</div>
<div class="setting-con" style="padding:0; height:442px; margin-right: -4px; overflow: hidden;">
<div class="container-fluid soft-man">
<input name="list1SortOrder" type="hidden" value="" />
<div id="indexsoft" class="row"></div>
</div>
</div>
</div>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-6 pull-left pd0">
<div class="pl7">
<div class="bgw" style="height:491px">
<div class="title c6 f16 plr15">$data['lan']['NET1']</div>
<div class="bw-info">
<ul>
<li class="bi-line col-xs-6 col-sm-6 col-md-6 pull-left c6 f14"><span class="pull-left">$data['lan']['NET2']</span><a id="upSpeed" class="c6">$data['lan']['S2']</a></li>
<li class="bi-line col-xs-6 col-sm-6 col-md-6 pull-left c6 f14"><span class="pull-left">$data['lan']['NET3']</span><a id="downSpeed" class="c6">$data['lan']['S2']</a></li>
<li class="pull-left col-xs-6 col-sm-6 col-md-6 c6 f14"><span class="pull-left">$data['lan']['NET4']</span><a id="upAll" title="" class="c6">$data['lan']['S2']</a></li>
<li class="pull-left col-xs-6 col-sm-6 col-md-6 c6 f14"><span class="pull-left">$data['lan']['NET5']</span><a id="downAll" title="" class="c6">$data['lan']['S2']</a></li>
</ul>
</div>
<div id="NetImg" style="width:100%;height:330px;"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
setCookie('serverType','$web.ctx.session.webserver');
var serverType = getCookie('serverType');
</script>
<script type="text/javascript" src="/static/js/echarts.min.js"></script>
<script type="text/javascript" src="/static/js/site.js?date=20180523"></script>
<script type="text/javascript" src="/static/js/ftp.js?date=20180307"></script>
<script type="text/javascript" src="/static/js/data.js?date=20180307"></script>
<script type="text/javascript" src="/static/js/jquery.dragsort-0.5.2.min.js"></script>
<script type="text/javascript" src="/static/js/soft.js?date=20180523"></script>
<script type="text/javascript" src="/static/js/index.js?date=20180523"></script>
<script type="text/javascript">
setTimeout(function(){
GetDiskInfo();
},500)
setTimeout(function(){
indexsoft();
},1000);
setTimeout(function(){
getInfo();
},1500);
</script>

@ -0,0 +1,58 @@
$def with (data)
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="robots" content="noindex,nofollow">
<title>初始化$data['brand']面板</title>
<link href="/static/css/install.css" rel="stylesheet">
<script type="text/javascript" src="/static/js/jquery.js"></script>
<script type="text/javascript" src="/static/layer/layer.js"></script>
</head>
<body>
<div class="main">
$if data['status']:
<div class="warp">
<div class="title">初始化$data['brand']面板</div>
<form class="form" action="/install?action=install" method="post" onsubmit="return checkSubmit()">
<fieldset>
<legend>管理员设置</legend>
<p><span class="tit">用户名</span><input type="text" name="bt_username" value="$data['username']" /> *请设置管理员名称</p>
<p><span class="tit">管理密码</span><input type="password" name="bt_password1" value="" /> *请设置管理员密码</p>
<p><span class="tit">重复密码 </span><input type="password" name="bt_password2" value="" /> *再输一次管理员密码</p>
</fieldset>
<input class="submit-btn" type="submit" value="确定" />
</form>
</div>
$else:
<div class="success">
<p>$data['brand']面板初始化成功</p>
<a href="/login">登陆页面</a>
</div>
</div>
<div class="copyright">$data['brand']$data['product'] &copy;2014-2018 <a href="http://www.bt.cn" target="_blank">宝塔</a>|让你更简单的使用服务器(<a href="http://www.bt.cn" target="_blank">www.bt.cn</a>) All Rights Reserved</div>
<script>
function checkSubmit(){
var username = $$("input[name='bt_username']").val();
var password1 = $$("input[name='bt_password1']").val();
var password2 = $$("input[name='bt_password2']").val();
if(username == '' || password1 == ''){
layer.msg('用户名或密码不能为空!',{icon:5});
return false;
}
if(password1 != password2){
layer.msg('两次输入的密码不一致,请重新输入!',{icon:5});
return false;
}
layer.msg('正在处理...',{icon:16,time:0});
return true;
}
var main = $$(".main");
$$(window).resize(function () {
var wh = $$(window).height();
main.height(wh);
}).resize();
</script>
</body>
</html>

@ -0,0 +1,309 @@
$def with (tData)
<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="icon" href="/static/favicon.ico" type="image/x-icon" />
<link rel="shortcut icon" href="/static/favicon.ico" type="image/x-icon" />
<title>$session.webname</title>
<link rel="stylesheet" type="text/css" href="/static/css/site.css?date=20180523">
<link rel="stylesheet" type="text/css" href="/static/css/login.css?date=20180404">
</head>
<body>
<style type="text/css">
@media screen and (max-width: 640px) {
.scanCode{
display: none;
}
.account{
display: block !important;
}
.bg_img{
display: none;
}
}
.bg_img{
width: 60px;
height: 60px;
background-image: url('/static/img/qrCode.png');
background-size: 120px 120px;
background-repeat: no-repeat;
background-position: 0 0;
position: absolute;
top: 5px;
right: 5px;
}
.bg_img:hover{
background-position: -60px 0;
cursor: pointer;
/*transition: all 500ms;*/
}
.bg_img.pc{
background-position: 0 -60px;
}
.bg_img.pc:hover{
background-position: -60px -60px;
}
.qrCode{
text-align: center;
padding-top: 20px;
}
.scanCode .titles{
font-size: 23px;
margin-top: 25px;
color: #444;
text-align: center;
}
.list_scan{
width: 150px;
margin: 0 auto;
margin-top: 15px;
}
.list_scan>img{
width: 40px;
height: 40px;
float: left;
margin-right: 15px;
}
.list_scan span{
display: inline-block;
font-size: 13px;
margin-bottom: 5px;
}
.list_scan a:hover .weChatSamll{
display: block;
}
.list_scan .weChatSamll{
display: none;
width: 150px;
height: 150px;
position: absolute;
border: 1px solid #ececec;
border-radius: 5px;
bottom: 105px;
right: 80px;
padding: 20px;
background-color: #fff;
}
.list_scan .weChatSamll img{
width: 100%;
}
.list_scan .weChatSamll em{
position: absolute;
border: 7px solid #ececec;
border-color: #ececec transparent transparent transparent;
width: 0;
height: 0;
right: 87px;
bottom: -14px;
margin-left: -6px;
}
.tips{
width: 115px;
position: absolute;
top: 10px;
right: 65px;
color: rgb(32, 165, 58);
background: #dff0d8;
padding: 5px 10px;
text-align: center;
border-radius: 4px;
}
.tips em{
position: absolute;
border: 6px solid #dff0d8;
border-color:transparent transparent transparent #dff0d8;
width: 0;
height: 0;
right: -11px;
top: 8px;
margin-left: -6px;
}
.tips img{
height: 16px;
width: 16px;
vertical-align: middle;
margin-top: -1px;
margin-right: 4px;
}
.main .login .rlogo{
margin-top: 15px;
margin-bottom: 25px;
}
</style>
<div class="main">
<div class="login">
<div class="account">
<form class="loginform" method="post" action="/login" onsubmit="return false;">
<div class="rlogo">$session.webname</div>
<div class="line"><input class="inputtxt" value="" name="username" datatype="*" nullmsg="$tData['lan']['N1']" errormsg="$tData['lan']['N2']" placeholder="$tData['lan']['N3']" type="text"><div class="Validform_checktip"></div></div>
<div class="line"><input class="inputtxt" name="password" value="" datatype="*" nullmsg="$tData['lan']['N4']" errormsg="$tData['lan']['N5']" placeholder="$tData['lan']['N6']" type="password"><div class="Validform_checktip"></div></div>
<div style="color: red;position: relative;top: -14px;" id="errorStr"></div>
<div class="line yzm" style="top: -5px;
$if web.ctx.session.code:
display:block;
$else:
display:none;
">
<input type="text" class="inputtxt" name="code" nullmsg="$tData['lan']['N7']" errormsg="$tData['lan']['N8']" datatype="*" placeholder="$tData['lan']['N9']">
<div class="Validform_checktip"></div>
<img width="100" height="40" class="passcode" onClick="this.src=this.src.split('?')[0] + '?'+new Date().getTime()" src="/code" style="border: 1px solid #ccc; float: right;" title="$tData['lan']['N10']" >
</div>
<div class="login_btn"><input id="login-button" value="$tData['lan']['N11']" type="submit"></div>
<p class="pwinfo" style="display:none">$tData['lan']['N12']</p>
<a class="resetpw" href="http://www.bt.cn/bbs/thread-1172-1-1.html" target="_blank">$tData['lan']['N13']</a>
</form>
</div>
<div class="scanCode" style="display: none;">
<div class="titles"><span>宝塔小程序扫码登录</span></div>
<div class="qrCode" id="qrcode"></div>
<div class="scanTip">
<div class="list_scan">
<img src="/static/img/sCan.png" />
<span>打开
<a href="javascript:;" class="btlink" >宝塔小程序
<div class="weChatSamll"><img src="https://app.bt.cn/static/app.png"><em></em></div>
</a>
</span>
<span>扫一扫登录</span>
</div>
</div>
</div>
<div class="entrance" style="display: none;">
<div class="bg_img"></div>
<div class="tips">
<span><img src="/static/img/safety_ico.png"><span>扫码登录更安全</span></span>
<em></em>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/static/js/jquery-1.10.2.min.js"></script>
<script src="/static/language/zh-cn.js"></script>
<script src="/static/language/$web.ctx.session.lan/lan.js?date=20170920"></script>
<script type="text/javascript" src="/static/layer/layer.js"></script>
<script type="text/javascript" src="/static/js/jquery.qrcode.min.js"></script>
<script type="text/javascript" src="/static/js/Validform_v5.3.2_min.js"></script>
<script type="text/javascript">
function Wreset(){
var w = $$(window).width();
var yzmw = $$(".login .line").width() - 140;
if($$(".yzm").is(":visible") && w > 640){
$$(".login").css({"height":"365px","margin-top":"-230px"});
}
else{
$$(".login").removeAttr("style")
}
$$(".login .yzm .inputtxt").width(yzmw);
}
$$(function(){
Wreset();
var setTime = '';
$$.get('/public?name=app&fun=login_qrcode', function(res){
if (res.status){
$$('#qrcode').qrcode({
render: "canvas", //也可以替换为table
width: 150,
height: 150,
text: res.msg
});
$$('.entrance').show();
}
}).error(function(res,textStatus,errorThrown) {
if (res.status == 404){
$$('.entrance').hide();
}
});
function controlTime(){
$$.get('/public?name=app&fun=is_scan_ok',function(res) {
if(res.status){
layer.msg('扫码成功,请稍后...',{icon:1});
clearInterval(setTime);
loginAdmin(res.msg);
}
});
}
function loginAdmin(key){
$$.get('/public?name=app&fun=set_login',{secret_key:key},function(res) {
layer.msg(res.msg,{icon:res.status?1:2})
if (res.status){
layer.msg('正在安全登录中,请稍后...',{time:0,shade: [0.4,'#fff'],icon:16});
setTimeout(function(){
location.href = '/';
},1000);
}
});
}
$$('.bg_img').click(function(event) {
if ($$(this).hasClass('pc')){
$$(this).removeClass('pc');
$$('.scanCode').hide().prev().show();
clearInterval(setTime);
$$('.tips>span>span').html('扫码登录更安全');
}else{
$$(this).addClass('pc');
$$('.account').hide().next().show();
$$('.tips>span>span').html('点击账号登录')
setTime = window.setInterval(controlTime,2000);
}
});
})
window.onresize=function(){
Wreset();
}
</script>
<script type="text/javascript">
$$(function(){
$$(".loginform").Validform({
tiptype:function(msg,o,cssctl){
if(!o.obj.is("form")){
var objtip=o.obj.siblings(".Validform_checktip");
cssctl(objtip,o.type);
objtip.text(msg);
}
}
});
});
$$('#login-button').click(function(){
var username = encodeURIComponent($$("input[name='username']").val());
var password = encodeURIComponent($$("input[name='password']").val());
var code = $$("input[name='code']").val();
if(username == '' || password == ''){
layer.msg("$tData['lan']['JS1']",{icon:2});
return;
}
var data = 'username='+username+'&password='+password+'&code='+code;
var loadT = layer.msg("$tData['lan']['JS2']",{icon:16,time:0,shade: [0.3, '#000']});
$$.post('/login',data,function(rdata){
layer.close(loadT);
if(!rdata.status){
if(username == 'admin' && rdata.msg.indexOf('用户名') != -1) rdata.msg += ', <br>获取默认用户和密码命令: bt default';
$$("#errorStr").html(rdata.msg);
$$("input[name='password']").val('');
num = rdata.msg.substring(rdata.msg.indexOf('[')+1,rdata.msg.indexOf(']'))
if(num < 5){
$$(".yzm").show();
$$(".login").css("height","332px");
$$("input[name='code']").val('');
$$(".passcode").click();
}
$$(".yzm").show();
Wreset();
layer.msg(rdata.msg,{icon:2,time:5000});
return;
}
layer.msg(rdata.msg,{icon:16,time:0,shade: [0.3, '#000']});
window.location.href = '/';
});
});
</script>
</body>
</html>

@ -0,0 +1,66 @@
$def with (tData)
<div class="main-content pb55">
<div class="container-fluid">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$tData['lan']['H1']</a>/<span class="plr10 c4">$tData['lan']['H2']</span>
</div>
<div class="search pull-right">
<form target="hid" onsubmit='getWeb(1,$$("#SearchValue").prop("value"))'>
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="$tData['lan']['SEARCH']"/>
<button type="button" class="ser-sub pull-left" onclick='getWeb(1,$$("#SearchValue").prop("value"))'></button>
</form>
<iframe name='hid' id="hid" style="display:none"></iframe>
</div>
</div>
<div class="safe bgw mtb15 pd15">
<div class="important-title">
<p><span class="glyphicon glyphicon-alert" style="color: #f39c12; margin-right: 10px;"></span> $tData['lan']['PS']</p>
</div>
<button onclick="webAdd(0)" class="btn btn-success btn-sm btn-title" type="button">$tData['lan']['BTN1']</button>&nbsp;
<button onclick="SiteDefaultPage()" class="btn btn-default btn-sm btn-title" type="button">$tData['lan']['BTN2']</button>
<button onclick="GetDefaultSite()" class="btn btn-default btn-sm btn-title" type="button">$tData['lan']['BTN3']</button>
<span id="allDelete" style="float: right;display: none;">
<button onclick="allDeleteSite();" class="btn btn-default btn-sm">$tData['lan']['BTN4']</button>
</span>
<div class="divtable mtb10">
<div class="tablescroll">
<table class="table table-hover" style="min-width: 900px;border: 0 none;">
<thead>
<tr>
<th width="30"><input type="checkbox" onclick="checkSelect();" id="setBox"></th>
<th width="150" onclick="listOrder('name','site',this)" style="cursor: pointer;">$tData['lan']['TH1']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th onclick="listOrder('status','site',this)" style="cursor: pointer;" width="98">$tData['lan']['TH2']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th width="58">$tData['lan']['TH3']</th>
<th width="26%">$tData['lan']['TH4']</th>
<th onclick="listOrder('edate','site',this)" style="cursor: pointer;" width="86">$tData['lan']['TH5']<span class="glyphicon glyphicon-triangle-top" style="margin-left:5px;color:#bbb"></span></th>
<th>$tData['lan']['TH6']</th>
<th>防火墙</th>
<th width='130' class='text-right'>$tData['lan']['TH7']</th>
</tr>
</thead>
<tbody id="webBody"></tbody>
</table>
</div>
<div class="dataTables_paginate paging_bootstrap pagination">
<ul id="webPage" class="page"></ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/static/laydate/laydate.js?date=20180301"></script>
<script type="text/javascript" src="/static/js/ftp.js?date=20180124"></script>
<script type="text/javascript" src="/static/js/site.js?date=20180912"></script>
<script type="text/javascript">
$if not tData['isSetup']:
layer.msg('$tData["lan"]["JS1"]<a href="/soft" style="color:#20a53a; float: right;">$tData["lan"]["JS2"]</a>',{icon:7,shade: [0.3, '#000'],time:0});
$$(".layui-layer-shade").css("margin-left","180px");
setTimeout(function(){
getWeb(1);
},500);
setCookie('serverType','$web.ctx.session.webserver');
</script>

@ -0,0 +1,57 @@
$def with (data)
<div class="main-content">
<div class="container-fluid" style="padding-bottom:54px">
<div class="pos-box bgw mtb15">
<div class="position f14 c9 pull-left">
<a class="plr10 c4" href="/">$data['lan']['H1']</a>/<span class="plr10 c4">$data['lan']['H2']</span>
</div>
<div class="search pull-right">
<form target="hid" onsubmit='GetSList()'>
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="search" />
<button type="button" class="ser-sub pull-left" onclick='GetSList()'></button>
</form>
<iframe name='hid' id="hid" style="display:none"></iframe>
</div>
</div>
<div class="softbox bgw mtb15">
<div class="softlist">
<div class="divtable pd15 relative">
<div class="menu-sub softtype">
</div>
<button class="btn btn-default btn-sm" onclick="flush_cache()" title="从云端更新列表" style="position:absolute;top:12px;right:15px">更新软件列表</button>
<div id="updata_pro_info"></div>
<table class="table table-hover" width="100%" cellspacing="0" cellpadding="0" border="0">
<thead>
<tr>
<th width="165">$data['lan']['TH1']</th>
<th>$data['lan']['TH3']</th>
<th class="text-center" width="92">价格</th>
<th class="text-center" width="120">到期时间</th>
<th width="40">$data['lan']['TH4']</th>
<th width="40">$data['lan']['TH5']</th>
<th width="64">$data['lan']['TH6']</th>
<th style="text-align: right;" width="120">$data['lan']['TH7']</th>
</tr>
</thead>
<tbody id="softList"></tbody>
</table>
<div class="dataTables_paginate paging_bootstrap pagination">
<ul id="softPage" class="page"></ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/static/js/jquery.dragsort-0.5.2.min.js"></script>
<script type="text/javascript" src="/static/js/soft.js?date=20180815"></script>
<script type="text/javascript" src="/static/laydate/laydate.js?date=20180301"></script>
<script>
setCookie('serverType','$web.ctx.session.webserver');
//取软件列表
GetSList();
$$.get("/ajax?action=GetCloudHtml&rpath=btpanel_message/updata_pro.html",function(rdata){
$$("#updata_pro_info").html(rdata);
});
</script>

@ -0,0 +1,74 @@
$def with (content)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="renderer" content="webkit">
<title>$web.ctx.session.webname</title>
<link rel="shortcut icon" href="/static/favicon.ico" type="image/x-icon" />
<link href="/static/bootstrap-3.3.5/css/bootstrap.min.css" rel="stylesheet">
<link href="/static/css/site.css?date=20180912" rel="stylesheet">
<link href="/static/codemirror/lib/codemirror.css" rel="stylesheet">
<!--[if lte IE 9]>
<script src="/static/js/requestAnimationFrame.js"></script>
<![endif]-->
</head>
<body>
<div class="bt-warp bge6">
<div id="container" class="container-fluid">
<div class="sidebar-scroll">
<div class="sidebar-auto">
<div id="task" class="task cw" onclick="messagebox()"></div>
<h3 class="mypcip"><span class="f14 cw">$web.ctx.session.address</span></h3>
<ul class="menu">
<li id="memuA"> <a class="menu_home" href="/">$web.ctx.session['menu']['M1']</a></li>
<li id="memuAsite"><a class="menu_web" href="/site">$web.ctx.session['menu']['M2']</a></li>
<li id="memuAftp"><a class="menu_ftp" href="/ftp">$web.ctx.session['menu']['M3']</a></li>
<li id="memuAdatabase"><a class="menu_data" href="/database">$web.ctx.session['menu']['M4']</a></li>
<li id="memuAcontrol"><a class="menu_control" href="/control">$web.ctx.session['menu']['M5']</a></li>
<li id="memuAfirewall"><a class="menu_firewall" href="/firewall">$web.ctx.session['menu']['M6']</a></li>
<li id="memuAfiles"><a class="menu_folder" href="/files">$web.ctx.session['menu']['M7']</a></li>
<li id="memuAcrontab"><a class="menu_day" href="/crontab">$web.ctx.session['menu']['M8']</a></li>
<li id="memuAsoft"><a class="menu_soft" href="/soft">$web.ctx.session['menu']['M9']</a><span class="softnum">1</span></li>
<li id="memuAconfig"><a class="menu_set" href="/config">$web.ctx.session['menu']['M10']</a></li>
<li><a class="menu_exit" href="javascript:;" id="dologin">$web.ctx.session['menu']['M11']</a></li>
</ul>
<div id="newbtpc"></div>
<div class="btpc-plus" onclick="bindBTPanel(0,'b')">+</div>
</div>
</div>
<button style="display: none;" id="bt_copys" class="bt_copy" data-clipboard-text=""></button>
<a style="display: none;" id="defaultPath">$web.ctx.session.config['sites_path']</a>
<script src="/static/js/jquery-1.10.2.min.js"></script>
<script src="/static/js/bootstrap.min.js"></script>
<script src="/static/language/$web.ctx.session.lan/lan.js?date=20180124"></script>
<script src="/static/layer/layer.js?date=20180301"></script>
<script src="/static/js/jquery.fly.min.js"></script>
<script src="/static/js/clipboard.min.js"></script>
<script src="/static/js/public.js?date=20180620"></script>
$:content
<div class="footer bgw">$web.ctx.session.brand$web.ctx.session.product &copy;2014-2018 宝塔 (bt.cn)<a style="margin-left:20px;color:#20a53a;" href="http://www.bt.cn/bbs" target="_blank">$web.ctx.session['menu']['HELP']</a><a style="margin-left:20px;color:#20a53a;" href="http://docs.bt.cn/424204" target="_blank">《使用手册》</a></div></div>
</div>
</div>
</body>
<script src="/static/codemirror/lib/codemirror.js"></script>
<script src="/static/codemirror/addon/edit/editAll.js"></script>
<script src="/static/codemirror/mode/modeAll.js"></script>
<script src="/static/codemirror/addon/dialog/dialog.js"></script>
<script src="/static/codemirror/addon/search/search.js"></script>
<script src="/static/codemirror/addon/scroll/annotatescrollbar.js"></script>
<script src="/static/js/jquery.qrcode.min.js"></script>
<script src="/static/laydate/laydate.js?date=20180301"></script>
<script type="text/javascript">
$$("#setBox").click(function() {
if($$(this).prop("checked")){
$$("input[name=id]").prop("checked", true)
}else{
$$("input[name=id]").prop("checked", false)
}
});
setCookie('order','id desc');
</script>
</html>
Loading…
Cancel
Save