zentaomax.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. $(function()
  2. {
  3. if(window.config.currentMethod == 'edit' && ($('#source').val() == 'meeting' || $('#source').val() == 'researchreport')) changeSource();
  4. $('#source').change(changeSource);
  5. })
  6. /**
  7. * Change source of story.
  8. *
  9. * @access public
  10. * @return void
  11. */
  12. function changeSource()
  13. {
  14. var source = $('#source').val();
  15. if(source == 'meeting')
  16. {
  17. $('#sourceNoteBox').html(meetingNote);
  18. }
  19. else if(source == 'researchreport')
  20. {
  21. $('#sourceNoteBox').html(reportNote);
  22. }
  23. else
  24. {
  25. $('#sourceNoteBox').html(sourceNote);
  26. }
  27. var link = createLink('story', 'ajaxGetSourceNote', 'storyType=' + storyType + '&source=' + source + '&from=' + config.currentMethod);
  28. $.get(link, function(data)
  29. {
  30. if(data)
  31. {
  32. $('#sourceNote').replaceWith(data);
  33. $('#sourceNote_chosen').remove();
  34. if(source == 'meeting' || source == 'researchreport')
  35. {
  36. $('#sourceNote').val(objectID);
  37. $('#sourceNote').chosen();
  38. $('#sourceNote_chosen').css('min-width', '140px');
  39. }
  40. }
  41. });
  42. }
  43. /**
  44. * Batch update source note.
  45. *
  46. * @param string $source
  47. * @param int $number
  48. * @param int $objectID
  49. * @access public
  50. * @return void
  51. */
  52. function batchChangeSource(source, number, objectID)
  53. {
  54. if(typeof(objectID) == 'undefined') objectID = '';
  55. var link = createLink('story', 'ajaxGetSourceNote', 'source=' + source + '&from=' + config.currentMethod + '&number=' + number);
  56. var sourceNoteID = '#sourceNote_' + number;
  57. $.get(link, function(data)
  58. {
  59. if(data)
  60. {
  61. $(sourceNoteID).replaceWith(data);
  62. $(sourceNoteID + '_chosen').remove();
  63. if(source == 'meeting' || source == 'researchreport')
  64. {
  65. $(sourceNoteID).val(objectID);
  66. $(sourceNoteID).chosen();
  67. }
  68. var nextNumber = parseInt(number) + 1;
  69. var nextSource = $('#source_' + nextNumber).val();
  70. if(nextSource == 'ditto') batchChangeSource(source, nextNumber, objectID);
  71. }
  72. });
  73. }
  74. /**
  75. * Get last source.
  76. *
  77. * @param number $number
  78. * @access public
  79. * @return string
  80. */
  81. function getLastSource(number)
  82. {
  83. for(var index = number - 1; index >= 0; index--)
  84. {
  85. var source = $('#source_' + index).val();
  86. if(source != 'ditto') return source;
  87. }
  88. return '';
  89. }