function register_events_agent() { $('#btn-agent-add').click(function (e) { $('#form-agent-submit-type').val('add'); $('#modal-agent').modal('show'); }); $("#form-agent-submit").click(function (e) { var ip = $('#form-agent-ip').val(); var alias = $('#form-agent-alias').val(); var cluster = $('#form-agent-cluster').val(); /* TODO validate form */ $('#modal-agent').modal('hide'); if ($('#form-agent-submit-type').val() !== 'add') return; var ajax = $.ajax({ url: window.config.BASE_URL + "/service?action=agent_add", type: 'POST', data: { ip: ip, alias: alias, cluster: cluster } }); ajax.done(function (res) { if (res["errno"] !== 0) { $("#modal-msg-content").html(res["msg"]); $("#modal-msg").modal('show'); } $('#table-agent').bootstrapTable("refresh"); }); ajax.fail(function (jqXHR, textStatus) { $("#modal-msg-content").html("Request failed : " + jqXHR.statusText); $("#modal-msg").modal('show'); $('#table-agent').bootstrapTable("refresh"); }); }); } function load_agents(cluster) { $("#table-agent").bootstrapTable({ url: window.config.BASE_URL + '/service?action=agent_list&who=' + cluster, responseHandler: agentResponseHandler, sidePagination: 'server', cache: true, striped: true, pagination: true, pageSize: 10, pageList: [10, 25, 50, 100, 200], search: false, showColumns: true, showRefresh: true, showToggle: false, showPaginationSwitch: true, minimumCountColumns: 2, clickToSelect: false, sortName: 'nobody', sortOrder: 'desc', smartDisplay: true, mobileResponsive: true, showExport: true, columns: [{ field: 'alias', title: 'Alias', align: 'center', valign: 'middle', escape: true }, { field: 'ip', title: 'IP', align: 'center', valign: 'middle', formatter: long2ip }, { field: 'cluster', title: 'Cluster', align: 'center', valign: 'middle' }, { field: 'operate', title: 'Operate', align: 'center', events: agentOperateEvents, formatter: agentOperateFormatter }] }); } function agentResponseHandler(res) { if (res['errno'] === 0) { var tmp = {}; tmp["total"] = res["count"]; tmp["rows"] = res["agents"]; return tmp; } $("#modal-msg-content").html(res["msg"]); $("#modal-msg").modal('show'); return []; } function agentOperateFormatter(value, row, index) { var div = '