email.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. define(['jquery', 'bootstrap', 'backend', 'form', 'table'], function ($, undefined, Backend, Form, Table) {
  2. var Controller = {
  3. index : function () {
  4. // 初始化表格参数配置
  5. Table.api.init({
  6. extend : {
  7. index_url : 'qingdong/general/email/index',
  8. add_url : 'qingdong/general/email/add',
  9. edit_url : 'qingdong/general/email/edit',
  10. del_url : 'qingdong/general/email/del',
  11. table : 'email'
  12. }
  13. });
  14. var table = $("#table");
  15. // 初始化表格
  16. table.bootstrapTable({
  17. url : $.fn.bootstrapTable.defaults.extend.index_url,
  18. sortName : 'id',
  19. pageSize:1000,
  20. columns : [
  21. [
  22. {field : 'name', title : __('名称'), width : 200},
  23. {field: 'createtime', title: __('创建时间'), formatter: Table.api.formatter.datetime, operate: false},
  24. {field: 'updatetime', title: __('更新时间'), formatter: Table.api.formatter.datetime, operate: 'RANGE', addclass: 'datetimerange', sortable: true},
  25. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  26. ]
  27. ],
  28. pageList:['ALL'],
  29. //启用普通表单搜索
  30. commonSearch : false,
  31. searchFormVisible : false,
  32. onLoadSuccess:function(){
  33. // 这里就是数据渲染结束后的回调函数
  34. $('.btn-editone').html('编辑');
  35. $('.fa-pencil').remove();
  36. $('.btn-delone').html('删除');
  37. $('.fa-trash').remove();
  38. $('.btn-editone').removeClass('btn-success')
  39. $('.btn-editone').removeClass('btn')
  40. $('.btn-delone').removeClass('btn')
  41. $('.btn-delone').removeClass('btn-danger')
  42. }
  43. });
  44. // 为表格绑定事件
  45. Table.api.bindevent(table);
  46. $('.search').hide();
  47. $('.btn-import').hide();
  48. },
  49. batch_send_email : function () {
  50. $(document).on('change','#c-template_id',function (){
  51. var templater_id=$(this).val();
  52. var url=location.pathname + location.search;
  53. var content=$("#c-content").val();
  54. if (content){
  55. Layer.confirm(
  56. __('邮件已经存在内容,确定要覆盖吗?'),
  57. {icon: 3, title: __('Warning'), shadeClose: true},
  58. function (index) {
  59. location=url+"&templater_id="+templater_id
  60. layer.close(index);
  61. return;
  62. }
  63. );
  64. }else{
  65. location=url+"&templater_id="+templater_id;
  66. return;
  67. }
  68. });
  69. Controller.api.bindevent();
  70. },
  71. send_email : function () {
  72. $(document).on('change','#c-template_id',function (){
  73. var templater_id=$(this).val();
  74. var url=location.pathname + location.search;
  75. var content=$("#c-content").val();
  76. if (content){
  77. Layer.confirm(
  78. __('邮件已经存在内容,确定要覆盖吗?'),
  79. {icon: 3, title: __('Warning'), shadeClose: true},
  80. function (index) {
  81. location=url+"&templater_id="+templater_id
  82. layer.close(index);
  83. return;
  84. }
  85. );
  86. }else{
  87. location=url+"&templater_id="+templater_id;
  88. return;
  89. }
  90. });
  91. Controller.api.bindevent();
  92. },
  93. add : function () {
  94. $(document).on('click','.variable_name',function (){
  95. var c_content=$('#c-content');
  96. var html=c_content.val();
  97. c_content.val(html+$(this).data('value'));
  98. });
  99. Controller.api.bindevent();
  100. },
  101. edit : function () {
  102. $(document).on('click','.variable_name',function (){
  103. var c_content=$('#c-content');
  104. var html=c_content.val();
  105. c_content.val(html+$(this).data('value'));
  106. });
  107. Controller.api.bindevent();
  108. },
  109. api : {
  110. bindevent : function () {
  111. Form.api.bindevent($("form[role=form]"));
  112. },
  113. formatter : {
  114. thumb : function (value, row, index) {
  115. var style = row.storage == 'upyun' ? '!/fwfh/120x90' : '';
  116. return '<img src="' + row.image + '" data-tips-image alt="" title="封面图" style="max-height:90px;max-width:120px">';
  117. },
  118. }
  119. }
  120. };
  121. return Controller;
  122. });