Built files from Bizgaze WebServer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

taskgroup.component.js 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. var Bizgaze;
  2. (function (Bizgaze) {
  3. let Apps;
  4. (function (Apps) {
  5. let PM;
  6. (function (PM) {
  7. let Controls;
  8. (function (Controls) {
  9. class TaskGroup extends Unibase.Platform.Core.BaseComponent {
  10. constructor() {
  11. super(...arguments);
  12. this.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex = 0;
  13. this.count = 0;
  14. }
  15. init(formpropertyid, prop, callback) {
  16. var instance = this;
  17. instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex = 0;
  18. $('.btn_Save_Form').addClass('hidden');
  19. $('#txt_SearchTaskGroups').on('input', function () {
  20. var txt = $('#txt_SearchTaskGroups').val();
  21. if (txt == '')
  22. txt = null;
  23. instance.ShowTaskGroups($('#hf_pk_value').val(), txt);
  24. });
  25. instance.ShowTaskGroups($('#hf_pk_value').val(), null);
  26. }
  27. loadControl(containerid, prop) {
  28. var html = '<div class="col-sm-12" id="div_txt_SearchTeamMembers">' +
  29. '<div class="floating-label-form-group">' +
  30. '<input type="text" maxlength="50" class="form-control floating-label-control" id="txt_SearchTaskGroups" data-isdynamic="false" placeholder="Search" data-placeholder="Search" data-label="Search">' +
  31. '</div></div>' +
  32. '<ul id="ul_TaskGroups_Details" class="mt-10">' +
  33. '<li class="list-group-item bg-cyan-light-4 hidden" id="TaskGroups_Heading">' +
  34. '<div class="row">' +
  35. '<div class="col-sm-10"><strong>Task Group Name</strong></div>' +
  36. '<div class="col-sm-2">' +
  37. '<div class="pull-right">' +
  38. '<strong></strong>' +
  39. '</div></div>' +
  40. '</div>' +
  41. '</li>' +
  42. '<li class="length-row" id="TaskGroups_Details_HiddenRow" class="hidden"></li>' +
  43. '</ul>' +
  44. '<div class="Div_pagination hidden row row mt-15">' +
  45. '<div class="col-sm-3" id="list_count"><span id="TotalRecords"class="text-muted">Total :' + '<span id="lbl_TaskGroupsCount" class="lbl_TaskGroupsCount mr-30"></span></span>' +
  46. '</div><div class="col-sm-9">' + '<div id="divpagination" class="pagination custom-pagination pagination-rounded pull-right"></div></div>' +
  47. '</div>';
  48. $("#" + containerid).html(html);
  49. }
  50. loadControlSettings(controlsettingjson, formpropertyid) {
  51. return null;
  52. }
  53. loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
  54. return null;
  55. }
  56. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  57. return null;
  58. }
  59. ShowTaskGroups(ProjectTeamId, term) {
  60. var instance = this;
  61. this.fileCacheHelper.loadJsFile("apps/pm/managers/taskmanager.js", function () {
  62. Bizgaze.Apps.PM.Managers.TaskManager.Instance().getTaskGroups(ProjectTeamId, instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex, 5, term).then(function (response) {
  63. var data1 = JSON.stringify(response);
  64. var data2 = JSON.parse(data1);
  65. if (data2 != "") {
  66. var data = JSON.parse(data2);
  67. $('.TaskGroup-row').remove();
  68. $('#div_TaskGroups_Details_NoData').remove();
  69. if (data.length == 0) {
  70. $('#TaskGroups_Heading').addClass('hidden');
  71. }
  72. else {
  73. $('#TaskGroups_Heading').removeClass('hidden');
  74. }
  75. var Count = TaskGroup.Instance().count;
  76. for (let i = 0; i < data.length; i++) {
  77. instance.AddRow(data[i]);
  78. }
  79. if (data.length <= 0) {
  80. $(".Div_pagination").addClass('hidden');
  81. }
  82. else {
  83. $(".Div_pagination").removeClass('hidden');
  84. var totalCount = data.length;
  85. var _page = instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex + 1;
  86. var st = 0;
  87. var _count = 0;
  88. var t = _page * 5;
  89. if (totalCount > 0) {
  90. st = 1;
  91. _count = totalCount;
  92. }
  93. if (totalCount > t)
  94. _count = t;
  95. if (instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex > 0) {
  96. st += t - 5;
  97. }
  98. var result = st + " - " + (st + (_count - 1)) + " of " + TaskGroup.Instance().count;
  99. var totalcount = TaskGroup.Instance().count;
  100. var ct = Count - 5;
  101. if (Count <= 5) {
  102. $(".Div_pagination").addClass('hidden');
  103. }
  104. $("#lbl_TaskGroupsCount").text(result);
  105. instance.fileCacheHelper.loadJsFile('libs/jquery/pagination/jquery.pagination.js', function () {
  106. var ele;
  107. ele = $(".Div_pagination").find('#divpagination');
  108. ele.pagination(totalcount, 5, {
  109. current_page: (instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex),
  110. callback: function (page, component) {
  111. instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex = page;
  112. instance.ShowTaskGroups(ProjectTeamId, null);
  113. }
  114. });
  115. });
  116. }
  117. instance.bizgaze_extensions_Pm_TaskGroupDetails_pageIndex = 0;
  118. }
  119. else {
  120. $('.TaskGroup-row').remove();
  121. $('#div_TaskGroups_Details_NoData').remove();
  122. $('#ul_TaskGroups_Details').after('<div class="alert alert-info ma-0" id="div_TaskGroups_Details_NoData">There is no Data</div>');
  123. }
  124. });
  125. });
  126. }
  127. AddRow(data) {
  128. var len = $('.length-row').length;
  129. var html = '<li class="TaskGroup-row length-row list-group-item" id="TaskGroup_' + len + '" >' +
  130. '<div class="row"><div class="col-sm-10" ><span>' + data.taskgroupname + ' ' +
  131. '</span><input type="hidden" val="' + data.taskgroupid + '" id="TaskGroupId_' + len + '" class="TaskGroupId" />' +
  132. '<input type="hidden" class="TaskGroupId hf_TaskGroupId-' + len + '" value="' + data.taskgroupid + '" id="TaskGroupId_' + len + '" /></div>' +
  133. '<div class="col-sm-2">' +
  134. '<div class="pull-right pr-20"><a class="btn-icon pull-right" href="javascript:;" onclick="Bizgaze.Apps.PM.Controls.TaskGroup.Instance().removeTaskGroups(' + data.taskgroupid + ',' + len + ');" >' +
  135. '<i class="fa fa-trash-o text-danger" ></i></a></div>' +
  136. '</div>' +
  137. '</li>';
  138. $('#TaskGroups_Details_HiddenRow').after(html);
  139. }
  140. removeTaskGroups(TaskGroupId, len) {
  141. var ProjectTeamId = Number($('#hf_pk_value').val());
  142. bootbox.confirm("Are you sure to delete this Task Group?", function (result) {
  143. if (result) {
  144. if (TaskGroupId != undefined) {
  145. Bizgaze.Apps.PM.Managers.TaskManager.Instance().removeTaskGroups(ProjectTeamId, TaskGroupId).then(function (response) {
  146. $('#TaskGroup_' + len).remove();
  147. MessageHelper.Instance().showSuccess(response.message, "div_ErrorMessage");
  148. Bizgaze.Apps.PM.Controls.TaskGroup.Instance().ShowTaskGroups($('#hf_pk_value').val(), null);
  149. });
  150. }
  151. }
  152. });
  153. }
  154. static Instance() {
  155. if (this.instance === undefined)
  156. this.instance = new TaskGroup();
  157. return this.instance;
  158. }
  159. }
  160. Controls.TaskGroup = TaskGroup;
  161. })(Controls = PM.Controls || (PM.Controls = {}));
  162. })(PM = Apps.PM || (Apps.PM = {}));
  163. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  164. })(Bizgaze || (Bizgaze = {}));