utils.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. // Some general purpose JS functions for the iTop application
  2. /**
  3. * Reload a truncated list
  4. */
  5. function ReloadTruncatedList(divId, sSerializedFilter, sExtraParams)
  6. {
  7. $('#'+divId).addClass('loading');
  8. //$('#'+divId).blockUI();
  9. $.get('ajax.render.php?filter='+sSerializedFilter+'&style=list',
  10. { operation: 'ajax', extra_params: sExtraParams },
  11. function(data){
  12. $('#'+divId).empty();
  13. $('#'+divId).append(data);
  14. $('#'+divId).removeClass('loading');
  15. $('#'+divId+' .listResults').tableHover(); // hover tables
  16. $('#'+divId+' .listResults').tablesorter( { headers: { 0:{sorter: false }}, widgets: ['zebra']} ); // sortable and zebra tables
  17. //$('#'+divId).unblockUI();
  18. }
  19. );
  20. }
  21. /**
  22. * Reload any block -- used for periodic auto-reload
  23. */
  24. function ReloadBlock(divId, sStyle, sSerializedFilter, sExtraParams)
  25. {
  26. $('#'+divId).addClass('loading');
  27. //$('#'+divId).blockUI();
  28. $.get('ajax.render.php?filter='+sSerializedFilter+'&style='+sStyle,
  29. { operation: 'ajax', extra_params: sExtraParams },
  30. function(data){
  31. $('#'+divId).empty();
  32. $('#'+divId).append(data);
  33. $('#'+divId).removeClass('loading');
  34. $('#'+divId+' .listResults').tableHover(); // hover tables
  35. $('#'+divId+' .listResults').tablesorter( { headers: { 0:{sorter: false }}, widgets: ['zebra']} ); // sortable and zebra tables
  36. //$('#'+divId).unblockUI();
  37. }
  38. );
  39. }
  40. /**
  41. * Update the display and value of a file input widget when the user picks a new file
  42. */
  43. function UpdateFileName(id, sNewFileName)
  44. {
  45. var aPath = sNewFileName.split('\\');
  46. var sNewFileName = aPath[aPath.length-1];
  47. $('#'+id).val(sNewFileName);
  48. $('#name_'+id).text(sNewFileName);
  49. }
  50. /**
  51. * Reload a search form for the specified class
  52. */
  53. function ReloadSearchForm(divId, sClassName, sBaseClass)
  54. {
  55. $('#'+divId).block();
  56. var formEvents = $('#'+divId+' form').data('events');
  57. var bSubmitHookIsUsed = false;
  58. if ( (formEvents != undefined) && (SubmitHook != undefined))
  59. {
  60. // Assume that we're using the function submit hook...
  61. bSubmitHookIsUsed = true;
  62. }
  63. $('#'+divId+' form').unbind('submit');
  64. $.get('ajax.render.php',
  65. { operation: 'search_form', className: sClassName, baseClass: sBaseClass, currentId: divId },
  66. function(data){
  67. $('#'+divId).empty();
  68. $('#'+divId).append(data);
  69. if (bSubmitHookIsUsed)
  70. {
  71. $('#'+divId+' form').bind('submit', SubmitHook);
  72. }
  73. $('#'+divId).unblock();
  74. }
  75. );
  76. }