utils.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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. $('#'+id).trigger('validate');
  49. $('#name_'+id).text(sNewFileName);
  50. return true;
  51. }
  52. /**
  53. * Reload a search form for the specified class
  54. */
  55. function ReloadSearchForm(divId, sClassName, sBaseClass)
  56. {
  57. $('#'+divId).block();
  58. var formEvents = $('#'+divId+' form').data('events');
  59. var bSubmitHookIsUsed = false;
  60. if ( (formEvents != undefined) && (SubmitHook != undefined))
  61. {
  62. // Assume that we're using the function submit hook...
  63. bSubmitHookIsUsed = true;
  64. }
  65. $('#'+divId+' form').unbind('submit');
  66. $.get('ajax.render.php',
  67. { operation: 'search_form', className: sClassName, baseClass: sBaseClass, currentId: divId },
  68. function(data){
  69. $('#'+divId).empty();
  70. $('#'+divId).append(data);
  71. if (bSubmitHookIsUsed)
  72. {
  73. $('#'+divId+' form').bind('submit', SubmitHook);
  74. }
  75. $('#'+divId).unblock();
  76. }
  77. );
  78. }