setfulltextsearch.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. $(document).ready(function()
  2. {
  3. $('#buildIndex').click(function()
  4. {
  5. var $button = $(this);
  6. if($button.data('confirmed'))
  7. {
  8. buildIndex($button);
  9. return false;
  10. }
  11. bootbox.confirm($button.data('confirm'), function(result)
  12. {
  13. if(result)
  14. {
  15. $button.data('confirmed', true);
  16. buildIndex($button);
  17. }
  18. });
  19. return false;
  20. });
  21. })
  22. function buildIndex($button)
  23. {
  24. $('#resultTR').show();
  25. toggleButton($button, 'disable');
  26. $.getJSON($button.attr('href'), function(response)
  27. {
  28. if(response.result == 'finished')
  29. {
  30. $('#resultBox').append("<li class='text-success'>" + response.message + "</li>");
  31. $button.data('confirmed', false);
  32. toggleButton($button, 'enable');
  33. return false;
  34. }
  35. else
  36. {
  37. $button.attr('href', response.next);
  38. $('#resultBox').append("<li class='text-success'>" + response.message + "</li>");
  39. return $button.click();
  40. }
  41. });
  42. }
  43. function toggleButton($button, action)
  44. {
  45. label = $button.val();
  46. loading = $button.data('loading');
  47. disabled = action == 'disable';
  48. $button.attr('disabled', disabled);
  49. $button.val(loading);
  50. $button.data('loading', label);
  51. }