Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.79 KB | None | 0 0
  1. here 'endDate' is the field variable for getting data into datatable
  2.  
  3. var handleAllProjectList = function(staffNo) {
  4. //console.log("here"+appPath+'projects/user/'+staffNo+'/company
  5. if ($('#m_datatable_latest_orders').length === 0) {
  6. /'+companyId);
  7. return;
  8. }
  9.  
  10. var datatable = $('.m_datatable').mDatatable({
  11. data: {
  12. type: 'remote',
  13. source: {
  14. read: {
  15. //url: appPath+'projects/user/'+staffNo+'/company/'+companyId,
  16. url: appPath+'projects/pagedata',
  17. //url: appPath+'projects/all',
  18. method: 'GET'
  19. }
  20. },
  21. pageSize: 10,
  22. saveState: {
  23. cookie: false,
  24. webstorage: false
  25. },
  26. serverPaging: true,
  27. serverFiltering: true,
  28. serverSorting: true
  29. },
  30. layout: {
  31. theme: 'default',
  32. class: 'm-datatable--brand table table-bordered m-table m-table--border-light',
  33. scroll: true,
  34. height: 380,
  35. footer: false,
  36. smoothScroll: {
  37. scrollbarShown: true
  38. },
  39.  
  40. spinner: {
  41. overlayColor: '#000000',
  42. opacity: 0,
  43. type: 'loader',
  44. state: 'brand',
  45. message: true
  46. },
  47.  
  48. icons: {
  49. sort: {asc: 'la la-arrow-up', desc: 'la la-arrow-down'},
  50. pagination: {
  51. next: 'la la-angle-right',
  52. prev: 'la la-angle-left',
  53. first: 'la la-angle-double-left',
  54. last: 'la la-angle-double-right',
  55. more: 'la la-ellipsis-h'
  56. },
  57. rowDetail: {expand: 'fa fa-caret-down', collapse: 'fa fa-caret-right'}
  58. }
  59. },
  60.  
  61. sortable: true,
  62.  
  63. filterable: true,
  64.  
  65. pagination: true,
  66.  
  67. search: {
  68. // search delay in milliseconds
  69. delay: 400,
  70. // input text for search
  71. input: $('#generalSearch'),
  72. },
  73.  
  74. columns: [{
  75. field: "projectIdFull",
  76. title: locale=='de'?"Nummer":"Number",
  77. /*sortable: false,*/
  78. width: 70,
  79. textAlign: 'center'
  80. }, {
  81. field: "projectName",
  82. title: "Name",
  83. sortable: 'asc',
  84. filterable: false,
  85. template: function(row){
  86. if(row.projectName!=null){
  87. if(row.projectStatus!='saved'&&row.projectStatus!='gespeichert'){
  88. return '<a title="'+row.projectName+'" href="'+appPath+'project/'+row.projectId+'/view'+'">'+row.projectName+'</a>';
  89. }
  90. else{
  91. return '<a title="'+row.projectName+'" href="'+appPath+'project/'+row.projectId+'/savedupdate'+'">'+row.projectName+'</a>';
  92. }
  93. }
  94. },
  95. width: 248
  96. },
  97. /*{
  98. field: "parentProjectName",
  99. title: "Parent",
  100. width: 100,
  101. responsive: {
  102. visible: 'xl'
  103. }
  104. },*/
  105. {
  106. field: "projectStatus",
  107. title: "Status",
  108. template: function (row) {
  109. var status = {
  110. '4': {'title':
  111.  
  112. locale=='de'?"geplant":"Planned", 'class': ' m-badge--metal'},
  113. '1': {'title': locale=='de'?"beantragt":"Applied", 'class': ' m-badge--primary'},
  114. '3': {'title': locale=='de'?"abgelehnt":"Refused", 'class': ' m-badge--danger'},
  115. '2': {'title': locale=='de'?"neu":"New", 'class': ' m-badge--info'},
  116. '5': {'title': locale=='de'?"in Arbeit":"Progress", 'class': ' m-badge--warning'},
  117. '6': {'title': locale=='de'?"abnahme":"Acceptance", 'class': ' m-badge--focus'},
  118. '7': {'title': locale=='de'?"abgeschlossen":"Completed", 'class': ' m-badge--success'},
  119. '8': {'title': locale=='de'?"abgebrochen":"Cancelled", 'class': ' m-badge--danger'},
  120. '9': {'title': locale=='de'?"obsolet":"Obsolete", 'class': ' m-badge--danger'},
  121. '10': {'title': locale=='de'?"wartend":"On Hold", 'class': ' m-badge--danger'},
  122. //'11': {'title': locale=='de'?"Moved to Another Project":"Moved to Another Project", 'class': ' m-badge--danger'},
  123. '0': {'title': locale=='de'?"gespeichert":"Saved", 'class': ' m-badge--info'}
  124.  
  125. var uneditable = '<a href="'+pdfurl+'" target="_blank" title="'+pr+'" ><i class="la la-print"></i></a>
  126. <a style="color:#ccc !important; cursor:not-allowed" href="javascript:;" ><i class="la la-edit"></i></a>';
  127. var editable = '
  128. <a href="'+pdfurl+'" target="_blank" title="'+pr+'" ><i class="la la-print"></i></a>
  129. <a href="'+appPath+'project/'+pid+'/update" title="'+ed+'" ><i class="la la-edit"></i></a>
  130. ';
  131. if(row.projectStatus==1 || row.projectStatus==7 || row.projectStatus==8 || row.projectStatus==9 || row.projectStatus==11 ){
  132. return uneditable;
  133. }
  134. var userIsAllowed = false;
  135. if(row.projectLeader != null){
  136. if(row.projectLeader.staffNo == staffNo){
  137. userIsAllowed = true;
  138. }
  139. }
  140. if(!userIsAllowed){
  141. if(row.requester != null){
  142. if(row.requester.staffNo == staffNo){
  143. userIsAllowed = true;
  144. }
  145. }
  146. }
  147.  
  148. if(!userIsAllowed){
  149. return uneditable;
  150. }
  151. return editable;
  152.  
  153. },
  154. width: 50
  155. }],//
  156. columnDefs: [
  157. {
  158. targets:7,
  159. render: function ( data, type, row, meta ) {
  160. if(type === 'display'){
  161. data = '<a href="{{ agent.url }}/job/' + data + '">' + data + '</a>';
  162. }
  163. return data;
  164. }
  165. },
  166. {
  167. targets:[1,2],
  168. render: function ( data, type, row, meta ) {
  169. if(type === 'display' && row[2] != 0 ){
  170. data = '<a href="{{ agent.url }}/job/' + row[0] + '/' + row[2] + '">' + data + '</a>';
  171. }
  172. return data;
  173. }
  174. }
  175. ]
  176. //
  177. toolbar: {
  178. layout: ['pagination','info'],
  179.  
  180. placement: ['bottom'],
  181.  
  182. items: {
  183. pagination: {
  184. type: 'default',
  185.  
  186. pages: {
  187. desktop: {
  188. layout: 'default',
  189. pagesNumber: 6
  190. },
  191. tablet: {
  192. layout: 'default',
  193. pagesNumber: 3
  194. },
  195. mobile: {
  196. layout: 'compact'
  197. }
  198. },
  199.  
  200. navigation: {
  201. prev: true,
  202. next: true,
  203. first: true,
  204. last: true
  205. },
  206.  
  207. pageSizeSelect: [5, 10, 30, 50, 100]
  208. },
  209.  
  210. info: true
  211. }
  212. },
  213.  
  214. translate: {
  215. records: {
  216. processing: 'Please Wait...',
  217. noRecords: locale=='de'?'Keine Datensätze gefunden':'No records found'
  218. },
  219. toolbar: {
  220. pagination: {
  221. items: {
  222. default: {
  223. first: locale=='de'?'Erste':'First',
  224. prev: locale=='de'?'Vor':'Previous',
  225. next: locale=='de'?'Nächte':'Next',
  226. last: locale=='de'?'Letzte':'Last',
  227. more: locale=='de'?'Weiter Seiten':'More pages',
  228. input: locale=='de'?'Seitennummer':'Page number',
  229. select: 'Select page size'
  230. },
  231. //info: 'Displaying {{start}} - {{end}} of {{total}} records'
  232. info: locale=='de'?'{{start}} - {{end}} von {{total}} Datensätze':'Displaying {{start}} - {{end}} of {{total}} records'
  233. }
  234. }
  235. }
  236. }
  237. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement