mirror of https://github.com/jumpserver/jumpserver
206 lines
9.1 KiB
HTML
206 lines
9.1 KiB
HTML
{% extends 'base.html' %}
|
|
{% load mytags %}
|
|
{% block content %}
|
|
{% include 'nav_cat_bar.html' %}
|
|
<script type="text/javascript">
|
|
function search_ip(text, noselect, total){
|
|
$("#" + noselect).children().each(
|
|
function(){
|
|
$(this).remove();
|
|
});
|
|
|
|
$("#" + total).children().each(function(){
|
|
if($(this).text().search(text) != -1){
|
|
$("#" + noselect).append($(this).clone())
|
|
}
|
|
})
|
|
}
|
|
</script>
|
|
|
|
<div class="wrapper wrapper-content animated fadeInRight">
|
|
<div class="row">
|
|
<div class="col-lg-10">
|
|
<div class="ibox float-e-margins">
|
|
<div id="ibox-content" class="ibox-title">
|
|
<h5> 填写主机组基本信息 </h5>
|
|
<div class="ibox-tools">
|
|
<a class="collapse-link">
|
|
<i class="fa fa-chevron-up"></i>
|
|
</a>
|
|
<a class="dropdown-toggle" data-toggle="dropdown" href="#">
|
|
<i class="fa fa-wrench"></i>
|
|
</a>
|
|
<ul class="dropdown-menu dropdown-user">
|
|
<li><a href="#">未启用 1</a>
|
|
</li>
|
|
<li><a href="#">未启用 2</a>
|
|
</li>
|
|
</ul>
|
|
<a class="close-link">
|
|
<i class="fa fa-times"></i>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<select id="assets_total" name="assets" class="form-control m-b" size="12" multiple style="display: none">
|
|
{% for asset in posts %}
|
|
<option value="{{ asset.id }}">{{ asset.ip }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
|
|
<select id="asset_select_total" name="j_hosts" class="form-control m-b" size="12" multiple style="display: none">
|
|
{% for asset in eposts %}
|
|
<option value="{{ asset.id }}">{{ asset.ip }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
|
|
<div class="ibox-content">
|
|
{% if emg %}
|
|
<div class="alert alert-warning text-center">{{ emg }}</div>
|
|
{% endif %}
|
|
{% if smg %}
|
|
<div class="alert alert-success text-center">{{ smg }}</div>
|
|
{% endif %}
|
|
<form id="assetForm" method="post" class="form-horizontal">
|
|
<div class="form-group"><label class="col-sm-2 control-label"> 主机组名<span class="red-fonts">*</span></label>
|
|
<div class="col-sm-8" name="group_id" value="{{ post.id }}"><input type="text" value="{{ group.name }}" placeholder="网站" name="j_group" class="form-control"></div>
|
|
</div>
|
|
|
|
{% ifequal session_role_id 2 %}
|
|
<div class="hr-line-dashed"></div>
|
|
<div class="form-group">
|
|
<label for="j_dept" class="col-lg-2 control-label">所属部门<span class="red-fonts">*</span></label>
|
|
<div class="col-sm-8">
|
|
<select id="j_dept" name="j_dept" class="form-control m-b" onchange="change_dept(this.value)">
|
|
{% for d in edept %}
|
|
<option type="checkbox" value="{{ d.id }}">{{ d.name }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
{% endifequal %}
|
|
|
|
{% ifequal session_role_id 1 %}
|
|
<div class="hr-line-dashed"></div>
|
|
<div class="form-group">
|
|
<label for="j_dept" class="col-lg-2 control-label">所属部门<span class="red-fonts" style="">*</span></label>
|
|
<input type="text" name="j_dept" value="{{ edept.id }}" style="display: none">
|
|
<div class="col-sm-8"><input type="text" value="{{ edept.name }}" class="form-control" readonly="readonly"></div>
|
|
</div>
|
|
{% endifequal %}
|
|
|
|
<div class="hr-line-dashed"></div>
|
|
<div class="form-group">
|
|
<label for="group_name" class="col-sm-2 control-label">过滤</label>
|
|
<div class="col-sm-4">
|
|
<input id="noselect" class="form-control" oninput="search_ip(this.value, 'assets', 'assets_total')">
|
|
</div>
|
|
<div class="col-sm-1">
|
|
</div>
|
|
<div id="select" class="col-sm-3">
|
|
<input class="form-control" oninput="search_ip(this.value, 'asset_select', 'asset_select_total')">
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="form-group">
|
|
<label for="" class="col-sm-2 control-label">主机<span class="red-fonts">*</span></label>
|
|
<div class="col-sm-4">
|
|
<div>
|
|
<select id="assets" name="assets" class="form-control m-b" size="12" multiple>
|
|
{% for post in posts %}
|
|
<option value="{{ post.id }}">{{ post.ip }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-sm-1">
|
|
<div class="btn-group" style="margin-top: 60px;">
|
|
<button type="button" class="btn btn-white" onclick="move('assets', 'asset_select', 'assets_total', 'asset_select_total' )"><i class="fa fa-chevron-right"></i></button>
|
|
<button type="button" class="btn btn-white" onclick="move_left('asset_select', 'assets', 'asset_select_total', 'assets_total')"><i class="fa fa-chevron-left"></i> </button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-sm-3">
|
|
<div>
|
|
<select id="asset_select" name="j_hosts" class="form-control m-b" size="12" multiple></select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="hr-line-dashed"></div>
|
|
<div class="form-group"><label class="col-sm-2 control-label"> 备注 </label>
|
|
<div class="col-sm-8"><input type="text" value="{{ j_comment }}" placeholder=包括web组所有主机 name="j_comment" class="form-control"></div>
|
|
</div>
|
|
|
|
<div class="hr-line-dashed"></div>
|
|
<div class="form-group">
|
|
<div class="col-sm-4 col-sm-offset-5">
|
|
<button class="btn btn-white" type="submit"> 重置 </button>
|
|
<button class="btn btn-primary" id="submit_button" type="submit" onclick="on_submit('groups_selected') "> 提交 </button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script>
|
|
$(document).ready(function(){
|
|
$("#submit_button").click(function(){
|
|
$('#assetForm option').each(function(){
|
|
$(this).prop('selected', true)
|
|
})
|
|
});
|
|
|
|
})
|
|
|
|
$('#assetForm').validator({
|
|
timely: 2,
|
|
theme: "yellow_right_effect",
|
|
fields: {
|
|
"j_group": {
|
|
rule: "required",
|
|
tip: "输入业务组名",
|
|
ok: "",
|
|
msg: {required: "业务组名必须填写!"},
|
|
data: {'data-ok':"业务组名可以使用"}
|
|
}
|
|
},
|
|
valid: function(form) {
|
|
form.submit();
|
|
}
|
|
});
|
|
|
|
function on_submit(id){
|
|
$('#'+id+' option').each(
|
|
function(){
|
|
$(this).prop('selected', true)
|
|
})
|
|
}
|
|
|
|
// $('#search').keyup(function() {
|
|
// var $rows = $('#hosts option');
|
|
// var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();
|
|
//
|
|
// $rows.show().filter(function() {
|
|
// var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
|
|
// return !~text.indexOf(val);
|
|
// }).hide();
|
|
// });
|
|
|
|
function change_dept(dept_id){
|
|
$.get('/jasset/dept_host_ajax/',
|
|
{'id': dept_id},
|
|
function(data){
|
|
$('#assets').html(data)
|
|
$('#assets_total').html(data)
|
|
})
|
|
}
|
|
|
|
</script>
|
|
|
|
{% endblock %} |