tasks.js 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /**
  2. * Copyright (c) UNA, Inc - https://una.io
  3. * MIT License - https://opensource.org/licenses/MIT
  4. * @defgroup Tasks Tasks
  5. * @ingroup UnaModules
  6. *
  7. * @{
  8. */
  9. function BxTasksView(oOptions) {
  10. this._oOptions = oOptions
  11. var $this = this;
  12. $(document).ready(function () {
  13. $this.init();
  14. });
  15. }
  16. BxTasksView.prototype.init = function () {
  17. var $this = this;
  18. }
  19. BxTasksView.prototype.setCompleted = function (iId, oObj) {
  20. var $this = this;
  21. var iVal = ($(oObj).attr('checked') != 'checked' ? 0 : 1);
  22. $this._setCompleted(iId, iVal);
  23. }
  24. BxTasksView.prototype.setCompletedByMenu = function (iId, iValue, oObj) {
  25. var $this = this;
  26. $(oObj).addClass('bx-btn-disabled');
  27. $this._setCompleted(iId, iValue);
  28. document.location.reload(true);
  29. }
  30. BxTasksView.prototype._setCompleted = function (iId, iValue) {
  31. var $this = this;
  32. $.getJSON($this._oOptions.sActionUri + 'set_completed/' + iId + '/' + iValue + '/', {}, function () { });
  33. }
  34. BxTasksView.prototype.processTaskList = function (iContextId, iId, obj) {
  35. var $this = this;
  36. $(window).dolPopupAjax({
  37. url: $this._oOptions.sActionUri + 'process_task_list_form/' + iContextId + '/' + iId + '/',
  38. closeOnOuterClick: false,
  39. removeOnClose: true
  40. });
  41. }
  42. BxTasksView.prototype.deleteTaskList = function (iId, iContextId, obj) {
  43. var $this = this;
  44. bx_confirm($this._oOptions.t_confirm_block_deletion, function () {
  45. $.getJSON($this._oOptions.sActionUri + 'delete_task_list/' + iId + '/' + iContextId + '/', {}, function (oData) {
  46. $this.reloadData(oData, iContextId)
  47. });
  48. });
  49. }
  50. BxTasksView.prototype.processTask = function (iContextId, iListId, obj) {
  51. var $this = this;
  52. $(window).dolPopupAjax({
  53. url: $this._oOptions.sActionUri + 'process_task_form/' + iContextId + '/' + iListId + '/',
  54. closeOnOuterClick: false,
  55. removeOnClose: true
  56. });
  57. }
  58. BxTasksView.prototype.reloadData = function (oData, iContextId) {
  59. $(".bx-popup-applied:visible").dolPopupHide();
  60. var $this = this;
  61. loadDynamicBlockAuto($('.bx-tasks-tasklist-add'), window.location.href )
  62. }
  63. BxTasksView.prototype.setFilter = function (iListId, object) {
  64. var $this = this;
  65. var val = $(object).val();
  66. $('#bx-tasks-tasklist-' + iListId).removeClass (function (index, className) {
  67. return (className.match (/(^|\s)bx-tasks-tasklist-filter-\S+/g) || []).join(' ');
  68. })
  69. if (val)
  70. $('#bx-tasks-tasklist-' + iListId).addClass('bx-tasks-tasklist-filter-' + val);
  71. $.getJSON($this._oOptions.sActionUri + 'setFilterValue/' + iListId + '/' + val + '/', function (oData) {});
  72. }