project.ui.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. $(document).off('click', '#involved').on('click', '#involved', function()
  2. {
  3. var involved = $(this).prop('checked') ? 1 : 0;
  4. $.cookie.set('involved', involved, {expires:config.cookieLife, path:config.webRoot});
  5. loadCurrentPage();
  6. });
  7. window.renderCustomCell = function(result, {col, row})
  8. {
  9. if(!col || !row) return result;
  10. if(col.name == 'end') result = [row.data.end];
  11. if(col.name == 'status') result = [row.data.statusTitle];
  12. return result;
  13. }
  14. window.link2Project = function(e)
  15. {
  16. let $link2Project = $(e.target).closest('#link2Project');
  17. let selectProjectID = $link2Project.find('[name="project"]').val();
  18. let currentProductID = $link2Project.find('#product').val();
  19. let currentBranchID = $link2Project.find('#branch').val();
  20. $.get($.createLink('project', 'ajaxGetLinkedProducts', 'projectID=' + selectProjectID), function(product)
  21. {
  22. const formData = new FormData();
  23. var linkedProducts = JSON.parse(product);
  24. for(var productID in linkedProducts)
  25. {
  26. for(var branchID in linkedProducts[productID])
  27. {
  28. formData.append('products[]', productID);
  29. formData.append('branch[]', branchID);
  30. }
  31. }
  32. formData.append('products[]', currentProductID);
  33. formData.append('branch[]', currentBranchID);
  34. $.ajaxSubmit({
  35. url: $.createLink('project', 'manageProducts', 'projectID=' + selectProjectID),
  36. data: formData,
  37. load: true
  38. });
  39. });
  40. }