This commit is contained in:
arraykeys
2019-08-08 17:13:34 +08:00
parent e8e5966a8c
commit f0bf2d5fec
2885 changed files with 1195993 additions and 12 deletions
+39
View File
@@ -0,0 +1,39 @@
<div class="panel panel-default">
<div class="panel-body">{{$clusterId := .clusterId}}
<div class="alert alert-info" role="alert">
<strong><span class="glyphicon glyphicon-volume-up"></span> 注意!</strong> 普通用户只能选择普通节点,VIP 可选择VIP节点。<i class="ace-icon fa fa-hand-o-right blue"></i> <a href="">如何成为VIP?</a>
</div>
<form class="form-horizontal">
<input type="hidden" name="role_id" value="" />
{{range $name, $regionCluster := .regionClusters}}
<h4><span class="label label-default">{{$name}}</span></h4>
{{range $regionKey, $regions := $regionCluster}}
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>{{$regions.name}}</strong> <span class="pull-right"><span class="badge"></span></span></li>
{{range $clusterKey, $cluster := $regions.clusters}}
<li class="list-group-item cluster_{{$cluster.cluster_id}}">{{$cluster.name}}
<span class="pull-right">
<input name="cluster_id" type="radio" value="{{$cluster.cluster_id}}" {{if eq $clusterId $cluster.cluster_id}} checked {{end}}/>
</span>
</li>
{{end}}
</ul>
{{end}}
{{end}}
<div class="form-group">
<div class="col-md-8" style="margin-left:10px;">
<button type="button" onclick="fancyboxClose()" class="btn btn-primary">确认</button>
</div>
</div>
</form>
</div>
</div>
<script type="text/javascript">
function fancyboxClose() {
var clusterId = $("input[name='cluster_id']:checked").val();
var clusterName = $(".cluster_"+clusterId).text();
parent.$("input[name='cluster_name']").val(clusterName);
parent.$("input[name='cluster_id']").val(clusterId);
parent.$.fancybox.close();
}
</script>
@@ -0,0 +1,61 @@
<div class="panel panel-default">
<div class="panel-body">
<div class="alert alert-info" role="alert">
<strong><span class="glyphicon glyphicon-volume-up"></span> 注意!</strong> 普通用户只能选择普通节点,VIP 可选择VIP节点。<i class="ace-icon fa fa-hand-o-right blue"></i> <a href="">如何成为VIP?</a>
</div>
<form class="form-horizontal ajaxform">
<input type="hidden" name="role_id" value="" />
<h4><span class="label label-default">普通节点</span></h4>
<hr>
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>北美地区</strong> <span class="pull-right"><span class="badge">5</span></span></li>
<li class="list-group-item">北美1<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美2<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美3<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美4<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美5<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
</ul>
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>香港地区</strong> <span class="pull-right"><span class="badge">3</span></span></li>
<li class="list-group-item">香港1<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">香港2<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">香港3<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
</ul>
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>大陆地区</strong> <span class="pull-right"><span class="badge">4</span></span></li>
<li class="list-group-item">大陆1<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">大陆2<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">大陆3<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">大陆5<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
</ul>
<h4><span class="label label-warning">VIP节点</span></h4>
<hr>
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>北美地区</strong> <span class="pull-right"><span class="badge">5</span></span></li>
<li class="list-group-item">北美1<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美2<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美3<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美4<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">北美5<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
</ul>
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>香港地区</strong> <span class="pull-right"><span class="badge">3</span></span></li>
<li class="list-group-item">香港1<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">香港2<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">香港3<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
</ul>
<ul class="list-group w240 inline-group">
<li class="list-group-item"><strong>大陆地区</strong> <span class="pull-right"><span class="badge">4</span></span></li>
<li class="list-group-item">大陆1<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">大陆2<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">大陆3<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
<li class="list-group-item">大陆5<span class="pull-right"><input name="" type="radio" value="" onclick="" /></span></li>
</ul>
<div class="form-group">
<div class="col-md-8" style="margin-left:10px;">
<button type="submit" class="btn btn-primary">确认</button>
</div>
</div>
</form>
</div>
</div>
+103
View File
@@ -0,0 +1,103 @@
<div class="panel panel-default">
<br>
<div class="panel-body">
<form class="form-horizontal" method="post" action="/tunnel/save">
<input type="hidden" name="tunnel_id" value="">
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span>名称</label>
<div class="col-sm-4">
<input type="text" name="name" class="form-control" value="" placeholder="请输入隧道名称">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span> 模式 </label>
<div class="col-sm-4">
<label class="radio-inline">
<input type="radio" name="mode" value="0" checked="checked">基本
</label>
<label class="radio-inline">
<input type="radio" name="mode" value="1">高级
</label>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span> Server</label>
<div class="col-sm-4">
<select name="server_id" class="form-control">
{{range $serverValue := .serverValues}}
<option value="{{$serverValue.server_id}}">{{$serverValue.name}}</option>
{{end}}
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span>Server绑定IP</label>
<div class="col-sm-4">
<input type="text" name="server_listen_ip" class="form-control" value="" placeholder="请输入Server绑定IP">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span>Server监听端口</label>
<div class="col-sm-4">
<input type="text" name="server_listen_port" class="form-control" value="" placeholder="请输入Server监听端口">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span> Client</label>
<div class="col-sm-4">
<select name="" class="form-control">
{{range $clientValue := .clientValues}}
<option value="{{$clientValue.client_id}}">{{$clientValue.name}}</option>
{{end}}
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span>Client绑定IP</label>
<div class="col-sm-4">
<input type="text" name="client_local_host" class="form-control" value="" placeholder="请输入Server绑定IP">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span>Client监听端口</label>
<div class="col-sm-4">
<input type="text" name="client_local_port" class="form-control" value="" placeholder="请输入Server监听端口">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label"><span class="text-danger"> * </span> 选择节点 </label>
<div class="col-sm-4">
<div class="input-group">
<input type="text" name="cluster_name" class="form-control" aria-describedby="cluster-input" readonly>
<input type="hidden" name="cluster_id" class="form-control" value="">
<span class="input-group-addon" id="cluster-input">
<a class="glyphicon glyphicon-th-list" name="select_cluster" data-link="/tunnel/cluster"></a>
</span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="button" name="submit" onclick="Form.ajaxSubmit(this.form, false)" class="btn btn-primary">保存</button>
</div>
</div>
</form>
</div>
</div>
<script type="text/javascript">
$("a[name='select_cluster']").bind('click', function() {
var clusterId = $("input[name='cluster_id']").val();
$.fancybox({
padding: 5,
minWidth : 800,
minHeight : 520,
width : '95%',
height : '70%',
autoSize : false,
type : 'iframe',
href : $(this).attr('data-link') + "?cluster_id=" + clusterId,
afterClose: function (current, previous) {
}
});
});
</script>
+53
View File
@@ -0,0 +1,53 @@
<div class="panel panel-default">
<div class="panel-body">
<div class="row">
<div class="col-md-2">
<a href="/tunnel/add" class="btn btn-primary">添加隧道</a>
</div>
<div class="col-md-3 col-md-offset-7">
<form action="/tunnel/list" method="get">
<div class="input-group">
<input class="form-control" name="keyword" type="text" value="{{.keyword}}" placeholder="名称/Token"/>
<span class="input-group-btn">
<button type="submit" class="btn btn-primary"><i class="glyphicon glyphicon-search"></i></button>
</span>
</div>
</form>
</div>
</div>
</div>
<div class="table-responsive">
<table class="table table-bordered">
<thead>
<tr>
<th class="w20p">名称</th>
<th class="w8p">模式</th>
<th class="w13p">创建时间</th>
<th class="w13p">修改时间</th>
<th class="w15p">操作</th>
</tr>
</thead>
<tbody>
{{range $key, $tunnelValue := .tunnelValues}}
<tr>
<td>{{$tunnelValue.name}}</td>
<td>{{$tunnelValue.token}}</td>
<td class="center">{{dateFormat $tunnelValue.create_time "Y-m-d H:i:s"}}</td>
<td class="center">{{dateFormat $tunnelValue.update_time "Y-m-d H:i:s"}}</td>
<td class="center">
<a name="edit" class="glyphicon glyphicon-edit" href="/tunnel/edit?tunnel_id={{$tunnelValue.tunnel_id}}">修改</a>
<a onclick="Common.confirm('确定要删除吗?', '/tunnel/delete?tunnel_id={{$tunnelValue.tunnel_id}}')" class="glyphicon glyphicon-remove">删除</a>
<a onclick="Common.confirm('确定要重置token吗?', '/tunnel/resetToken?tunnel_id={{$tunnelValue.tunnel_id}}')" class="glyphicon glyphicon-refresh">重置Token</a>
</td>
</tr>
{{end}}
</tbody>
</table>
</div>
<div class="panel-footer">
<div class="row">
<div class="col-md-8 m-pagination" id="paginator">
</div>
</div>
</div>
</div>