admin.js 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
  2. var Controller = {
  3. index: function () {
  4. // 初始化表格参数配置
  5. Table.api.init({
  6. extend: {
  7. index_url: 'auth/admin/index',
  8. add_url: 'auth/admin/add',
  9. edit_url: 'auth/admin/edit',
  10. del_url: 'auth/admin/del',
  11. multi_url: 'auth/admin/multi',
  12. }
  13. });
  14. var table = $("#table");
  15. //在表格内容渲染完成后回调的事件
  16. table.on('post-body.bs.table', function (e, json) {
  17. $("tbody tr[data-index]", this).each(function () {
  18. if (parseInt($("td:eq(1)", this).text()) == Config.admin.id) {
  19. $("input[type=checkbox]", this).prop("disabled", true);
  20. }
  21. });
  22. });
  23. // 初始化表格
  24. table.bootstrapTable({
  25. url: $.fn.bootstrapTable.defaults.extend.index_url,
  26. columns: [
  27. [
  28. {field: 'state', checkbox: true, },
  29. {field: 'id', title: 'ID'},
  30. {field: 'username', title: __('Username')},
  31. {field: 'nickname', title: __('Nickname')},
  32. {field: 'groups_text', title: __('Group'), operate:false, formatter: Table.api.formatter.label},
  33. {field: 'email', title: __('Email')},
  34. {field: 'status', title: __("Status"), searchList: {"normal":__('Normal'),"hidden":__('Hidden')}, formatter: Table.api.formatter.status},
  35. {field: 'logintime', title: __('Login time'), formatter: Table.api.formatter.datetime, operate: 'RANGE', addclass: 'datetimerange', sortable: true},
  36. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: function (value, row, index) {
  37. if(row.id == Config.admin.id){
  38. return '';
  39. }
  40. return Table.api.formatter.operate.call(this, value, row, index);
  41. }}
  42. ]
  43. ]
  44. });
  45. // 为表格绑定事件
  46. Table.api.bindevent(table);
  47. },
  48. add: function () {
  49. Form.api.bindevent($("form[role=form]"));
  50. },
  51. edit: function () {
  52. Form.api.bindevent($("form[role=form]"));
  53. }
  54. };
  55. return Controller;
  56. });