zentaomax.ui.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /**
  2. * 处理搜索框事件。
  3. * Handle search box change.
  4. *
  5. * @param string value
  6. * @access public
  7. * @return void
  8. */
  9. window.handleSearchBoxChange = function(value)
  10. {
  11. /* 过滤value,仅保留字母、数字和汉字。*/
  12. /* Filter value, only keep letters, numbers and Chinese characters.*/
  13. value = value.replace(/[^\w\u4e00-\u9fa5]/g, '');
  14. const url = $.createLink('weekly', 'ajaxSelectTemplate', `projectID=${projectID}&module=${module}&searchName=${value}`);
  15. loadModal(url);
  16. }
  17. /**
  18. * 点击模板卡片。
  19. * Click template card.
  20. *
  21. * @param object event
  22. * @access public
  23. * @return void
  24. */
  25. window.clickCard = function(event)
  26. {
  27. const templateCard = event.target.closest('.templateCard');
  28. if(!templateCard) return;
  29. $(templateCard).addClass('border-primary checkedTemplate');
  30. $('.nextButton button').removeClass('disabled');
  31. if($(templateCard).find('.cornerMark').length === 0)
  32. {
  33. $(templateCard).append('<div class="cornerMark"><i class="icon icon-check checkIcon"></i></div>');
  34. }
  35. const selectTemplateID = $(templateCard).data('templateID');
  36. const templateCards = $('.templateCardPanel').find('div.templateCard');
  37. $(templateCards).each(function()
  38. {
  39. let templateID = $(this).data('templateID');
  40. if(templateID !== selectTemplateID)
  41. {
  42. $(this).removeClass('border-primary');
  43. $(this).removeClass('checkedTemplate');
  44. $(this).find('.cornerMark').remove();
  45. }
  46. });
  47. }
  48. /**
  49. * 点击下一步按钮事件。
  50. * Click next button event.
  51. *
  52. * @access public
  53. * @return void
  54. */
  55. window.clickNextButton = function()
  56. {
  57. const selectTemplateID = $('.checkedTemplate').data('templateID');
  58. if(!selectTemplateID) return;
  59. const formData = new FormData();
  60. formData.append('templateID', selectTemplateID);
  61. $.ajaxSubmit({url: $.createLink('weekly', 'ajaxSelectTemplate', `projectID=${projectID}&module=${module}`), data: formData});
  62. }