• 老广's avatar
    Config (#3502) · 4944ac8e
    老广 authored
    * [Update] 修改config
    
    * [Update] 移动存储设置到到terminal中
    
    * [Update] 修改permission 查看
    
    * [Update] pre merge
    
    * [Update] 录像存储
    
    * [Update] 命令存储
    
    * [Update] 添加存储测试可连接性
    
    * [Update] 修改 meta 值的 key 为大写
    
    * [Update] 修改 Terminal 相关 Storage 配置
    
    * [Update] 删除之前获取录像/命令存储的代码
    
    * [Update] 修改导入失败
    
    * [Update] 迁移文件添加default存储
    
    * [Update] 删除之前代码,添加help_text信息
    
    * [Update] 删除之前代码
    
    * [Update] 删除之前代码
    
    * [Update] 抽象命令/录像存储 APIView
    
    * [Update] 抽象命令/录像存储 APIView 1
    
    * [Update] 抽象命令/录像存储 DictField
    
    * [Update] 抽象命令/录像存储列表页面
    
    * [Update] 修复CustomDictField的bug
    
    * [Update] RemoteApp 页面添加 hidden
    
    * [Update] 用户页面添加用户关联授权
    
    * [Update] 修改存储测试可连接性 target
    
    * [Update] 修改配置
    
    * [Update] 修改存储前端 Form 渲染逻辑
    
    * [Update] 修改存储细节
    
    * [Update] 统一存储类型到 const 文件
    
    * [Update] 修改迁移文件及Model,创建默认存储
    
    * [Update] 修改迁移文件及Model初始化默认数据
    
    * [Update] 修改迁移文件
    
    * [Update] 修改迁移文件
    
    * [Update] 修改迁移文件
    
    * [Update] 修改迁移文件
    
    * [Update] 修改迁移文件
    
    * [Update] 修改迁移文件
    
    * [Update] 修改迁移文件
    
    * [Update] 限制删除默认存储配置,只允许创建扩展的存储类型
    
    * [Update] 修改ip字段长度
    
    * [Update] 修改ip字段长度
    
    * [Update] 修改一些css
    
    * [Update] 修改关联
    
    * [Update] 添加操作日志定时清理
    
    * [Update] 修改记录syslog的instance encoder
    
    * [Update] 忽略登录产生的操作日志
    
    * [Update] 限制更新存储时不覆盖原有AK SK 等字段
    
    * [Update] 修改迁移文件添加comment字段
    
    * [Update] 修改迁移文件
    
    * [Update] 添加 comment 字段
    
    * [Update] 修改默认存储no -> null
    
    * [Update] 修改细节
    
    * [Update] 更新翻译(存储配置
    
    * [Update] 修改定时任务注册,修改系统用户资产、节点关系api
    
    * [Update] 添加监控磁盘任务
    
    * [Update] 修改session
    
    * [Update] 拆分serializer
    
    * [Update] 还原setting原来的manager
    4944ac8e
asset_permission_create_update.html 7.11 KB
{% extends 'base.html' %}
{% load i18n %}
{% load static %}
{% load bootstrap3 %}
{% block custom_head_css_js %}
    <link href="{% static 'css/plugins/datepicker/datepicker3.css' %}" rel="stylesheet">
{% endblock %}

{% block content %}
    <div class="wrapper wrapper-content animated fadeInRight">
        <div class="row">
            <div class="col-sm-12">
                <div class="ibox float-e-margins">
                    <div class="ibox-title">
                        <h5>{{ action }}</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>
                            <a class="close-link">
                                <i class="fa fa-times"></i>
                            </a>
                        </div>
                    </div>
                    <div class="ibox-content">
                        <form method="post" class="form-horizontal" action="" >
                            {% if form.non_field_errors %}
                                 <div class="alert alert-danger">
                                     {{ form.non_field_errors }}
                                 </div>
                            {% endif %}
                            {% csrf_token %}
                            <h3>{% trans 'Basic' %}</h3>
                            {% bootstrap_field form.name layout="horizontal" %}
                            <div class="hr-line-dashed"></div>
                            <h3>{% trans 'User' %}</h3>
                            {% bootstrap_field form.users layout="horizontal" %}
                            {% bootstrap_field form.user_groups layout="horizontal" %}
                            <div class="hr-line-dashed"></div>
                            <h3>{% trans 'Asset' %}</h3>
                            {% bootstrap_field form.assets layout="horizontal" %}
                            {% bootstrap_field form.nodes layout="horizontal" %}
                            {% bootstrap_field form.system_users layout="horizontal" %}
                            <div class="hr-line-dashed"></div>
                            <h3>{% trans 'Action' %}</h3>
                            {% bootstrap_field form.actions layout="horizontal" %}
                            <div class="hr-line-dashed"></div>
                            <h3>{% trans 'Other' %}</h3>
                            <div class="form-group">
                                <label for="{{ form.is_active.id_for_label }}" class="col-sm-2 control-label">{% trans 'Active' %}</label>
                                <div class="col-sm-8">
                                    {{ form.is_active }}
                                </div>
                            </div>
                            <div class="form-group {% if form.date_expired.errors or form.date_start.errors %} has-error {% endif %}" id="date_5">
                                <label for="{{ form.date_expired.id_for_label }}" class="col-sm-2 control-label">{% trans 'Validity period' %}</label>
                                <div class="col-sm-9">
                                    <div class="input-daterange input-group" id="datepicker">
                                        <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
                                        {% if form.errors %}
                                            <input type="text" class="input-sm form-control" id="date_start" name="date_start" value="{{ form.date_start.value }}">
                                            <span class="input-group-addon">to</span>
                                            <input type="text" class="input-sm form-control" id="date_expired" name="date_expired" value="{{ form.date_expired.value }}">
                                        {% else %}
                                            <input type="text" class="input-sm form-control" id="date_start" name="date_start" value="{{ form.date_start.value|date:'Y-m-d H:i' }}">
                                            <span class="input-group-addon">to</span>
                                            <input type="text" class="input-sm form-control" id="date_expired" name="date_expired" value="{{ form.date_expired.value|date:'Y-m-d H:i' }}">
                                        {% endif %}
                                    </div>
                                    <span class="help-block ">{{ form.date_expired.errors }}</span>
                                    <span class="help-block ">{{ form.date_start.errors }}</span>
                                </div>
                             </div>
                            {% bootstrap_field form.comment layout="horizontal" %}

                            <div class="form-group">
                                <div class="col-sm-4 col-sm-offset-2">
                                    <button class="btn btn-white" type="reset">{% trans 'Reset' %}</button>
                                    <button id="submit_button" class="btn btn-primary" type="submit">{% trans 'Submit' %}</button>
                                </div>
                            </div>

                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
    {% include 'assets/_asset_list_modal.html' %}
{% endblock %}
{% block custom_foot_js %}
<script src="{% static 'js/plugins/datepicker/bootstrap-datepicker.js' %}"></script>
<script type="text/javascript" src='{% static "js/plugins/daterangepicker/moment.min.js" %}'></script>
<script type="text/javascript" src='{% static "js/plugins/daterangepicker/daterangepicker.min.js" %}'></script>
<link rel="stylesheet" type="text/css" href={% static "css/plugins/daterangepicker/daterangepicker.css" %} />

<script>
var api_action =  "{{ api_action }}";

$(document).ready(function () {
    $('.select2').select2({
        closeOnSelect: false
    });
    nodesSelect2Init(".nodes-select2");
    usersSelect2Init(".users-select2");

    initDateRangePicker('#date_start');
    initDateRangePicker('#date_expired');
    initAssetTreeModel('#id_assets');
})
.on("submit", "form", function (evt) {
    evt.preventDefault();
    var theUrl = '{% url 'api-perms:asset-permission-list' %}';
    var method = "POST";
    {% if api_action == "update" %}
        theUrl = '{% url 'api-perms:asset-permission-detail' pk=object.id %}';
        method = "PUT";
    {% endif %}
    var redirect_to = '{% url "perms:asset-permission-list" %}';
    var form = $("form");
    var data = form.serializeObject();
    objectAttrsIsList(data, ['users', 'user_groups', 'system_users', 'nodes', 'assets', 'actions']);
    objectAttrsIsDatetime(data, ['date_start', 'date_expired']);
    objectAttrsIsBool(data, ['is_active']);
    var props = {
        url: theUrl,
        data: data,
        method: method,
        form: form,
        redirect_to: redirect_to
    };
    formSubmit(props);
 })
</script>
{% endblock %}