2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-layout layui-layout-admin" style="padding-left: 40px;margin-top: 20px;">
|
|
|
|
|
|
<div style="margin: 10px 0px">
|
|
|
|
|
|
<blockquote class="layui-elem-quote">
|
2019-07-03 22:31:27 +08:00
|
|
|
|
说明:提交之前请先测试执行器资源是否可以连通
|
2018-07-13 17:53:34 +08:00
|
|
|
|
</blockquote>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<form class="layui-form" action="" method="post" >
|
|
|
|
|
|
|
|
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">所属分组</label>
|
|
|
|
|
|
<div class="layui-input-inline">
|
|
|
|
|
|
<select name="group_id" lay-verify="required">
|
|
|
|
|
|
{{range $k, $v := .serverGroup}}
|
|
|
|
|
|
<option value="{{$k}}">{{$v}}</option>
|
|
|
|
|
|
{{end}}
|
|
|
|
|
|
</select>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2019-02-18 00:03:35 +08:00
|
|
|
|
|
|
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">连接类型</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<input type="radio" name="connection_type" lay-verify="type" value="0" title="SSH" checked>
|
|
|
|
|
|
<input type="radio" name="connection_type" lay-verify="type" value="1" title="Telnet" >
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">服务器名称</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<input type="text" name="server_name" id="server_name" lay-verify="required" autocomplete="off" placeholder="服务器名称" class="layui-input" value="">
|
2017-08-17 13:07:23 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
|
|
|
|
|
</div>
|
2017-08-17 13:07:23 +08:00
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">登录账号</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<input type="text" name="server_account" id="server_account" lay-verify="required" autocomplete="off" placeholder="root" class="layui-input" value="">
|
2017-08-17 13:07:23 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 13:07:23 +08:00
|
|
|
|
</div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">IP地址</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<input type="text" name="server_ip" id="server_ip" lay-verify="required" autocomplete="off" placeholder="192.168.1.12" class="layui-input" value="">
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item" style="display: none">
|
|
|
|
|
|
<label class="layui-form-label mw200">外网IP</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
2018-07-31 12:15:11 +08:00
|
|
|
|
<input type="text" name="server_outer_ip" id="server_outer_ip" autocomplete="off" placeholder="200.200.200.12" class="layui-input" value="">
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
|
|
|
|
|
</div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">端口号</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
2019-02-18 00:03:35 +08:00
|
|
|
|
<input type="text" name="port" id="port" lay-verify="required" autocomplete="off" placeholder="22/23" class="layui-input" value="">
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">验证登录类型</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
2019-02-18 14:41:06 +08:00
|
|
|
|
<input type="radio" name="type" lay-verify="type" lay-filter="type" value="0" title="密码" checked>
|
|
|
|
|
|
<input type="radio" name="type" lay-verify="type" lay-filter="type" value="1" title="密钥" >
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item password">
|
|
|
|
|
|
<label class="layui-form-label mw200">密码</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
2018-07-15 17:18:47 +08:00
|
|
|
|
<input type="password" name="password" id="password" lay-verify="" autocomplete="off" placeholder="服务器登录密码" class="layui-input" value="">
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item key" style="display:none;">
|
|
|
|
|
|
<label class="layui-form-label mw200">公钥地址</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<input type="text" name="public_key_src" id="public_key_src" lay-verify="" autocomplete="off" placeholder="/Users/haodaquan/.ssh/pp_rsa.pub" class="layui-input" value="">
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"><span id="des" style="cursor: pointer">说明</span></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item key" style="display:none;">
|
|
|
|
|
|
<label class="layui-form-label mw200">私钥地址</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<input type="text" name="private_key_src" id="private_key_src" lay-verify="" autocomplete="off" placeholder="/Users/haodaquan/.ssh/pp_rsa" class="layui-input" value="">
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-mid layui-word-aux"></div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200">资源说明</label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<textarea name="detail" id="detail" placeholder="请输入内容" class="layui-textarea"></textarea>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<input type="hidden" name="id" id="id" value="0">
|
|
|
|
|
|
<div class="layui-form-item">
|
|
|
|
|
|
<label class="layui-form-label mw200"></label>
|
|
|
|
|
|
<div class="layui-input-inline mw400">
|
|
|
|
|
|
<button class="layui-btn" lay-submit="" lay-filter="sub">立即提交</button>
|
|
|
|
|
|
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
<button class="layui-btn layui-btn-primary" id="test" lay-filter="test">测试</button>
|
|
|
|
|
|
</div>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
</form>
|
2017-08-17 11:49:53 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<script>
|
2018-07-13 17:53:34 +08:00
|
|
|
|
var $;
|
|
|
|
|
|
layui.use(['form','element','layer','jquery'],function(){
|
|
|
|
|
|
var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
|
|
|
|
|
|
var $ = layui.jquery;
|
|
|
|
|
|
|
|
|
|
|
|
var error_info = "{{.flash.error}}";
|
|
|
|
|
|
if(error_info){
|
|
|
|
|
|
layer.msg(error_info,{icon: 2,shade:0.3},function () {
|
|
|
|
|
|
window.history.go(-1)
|
|
|
|
|
|
})
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
2019-02-18 14:41:06 +08:00
|
|
|
|
form.on('radio(type)', function(data){
|
2018-07-13 17:53:34 +08:00
|
|
|
|
if(data.value==1){
|
|
|
|
|
|
$(".key").show();
|
|
|
|
|
|
$(".password").hide();
|
|
|
|
|
|
}else{
|
|
|
|
|
|
$(".password").show();
|
|
|
|
|
|
$(".key").hide();
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
$("#des").on('click',function () {
|
|
|
|
|
|
layer.tips('公钥和私钥地址请在本地服务器生成,命令:ssh-keygen -t rsa -f pp_rsa', '#des', {
|
|
|
|
|
|
tips: [1, '#0FA6D8'] //还可配置颜色
|
|
|
|
|
|
});
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
form.on('submit(sub)', function(data){
|
|
|
|
|
|
var form_data = $("form").serialize();
|
|
|
|
|
|
$.post('{{urlfor "ServerController.AjaxSave"}}', form_data, function (out) {
|
2017-08-17 11:49:53 +08:00
|
|
|
|
if (out.status == 0) {
|
2018-07-25 23:27:45 +08:00
|
|
|
|
layer.msg("操作成功",{icon: 1,shade:0.3,time:1000},function () {
|
2018-11-21 11:10:22 +08:00
|
|
|
|
// window.history.go(-1)//
|
2019-04-16 23:40:07 +08:00
|
|
|
|
window.parent.deleteCurrentTab();
|
2018-07-13 17:53:34 +08:00
|
|
|
|
})
|
2017-08-17 11:49:53 +08:00
|
|
|
|
} else {
|
2018-07-13 17:53:34 +08:00
|
|
|
|
layer.msg(out.message)
|
2017-08-17 11:49:53 +08:00
|
|
|
|
}
|
|
|
|
|
|
}, "json");
|
|
|
|
|
|
return false;
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
2018-07-13 17:53:34 +08:00
|
|
|
|
$("#test").on('click', function(data){
|
|
|
|
|
|
layer.load();
|
|
|
|
|
|
var form_data = $("form").serialize();
|
|
|
|
|
|
$.post('{{urlfor "ServerController.AjaxTestServer"}}', form_data, function (out) {
|
2019-02-18 00:03:35 +08:00
|
|
|
|
layer.closeAll('loading');
|
2018-07-13 17:53:34 +08:00
|
|
|
|
layer.msg(out.message)
|
|
|
|
|
|
}, "json");
|
|
|
|
|
|
return false;
|
2017-08-17 11:49:53 +08:00
|
|
|
|
});
|
2018-07-13 17:53:34 +08:00
|
|
|
|
|
|
|
|
|
|
//但是,如果你的HTML是动态生成的,自动渲染就会失效
|
|
|
|
|
|
//因此你需要在相应的地方,执行下述方法来手动渲染,跟这类似的还有 element.init();
|
|
|
|
|
|
form.render();
|
2017-08-17 11:49:53 +08:00
|
|
|
|
});
|
|
|
|
|
|
</script>
|