Index: lams_central/web/includes/javascript/qb-option.js =================================================================== diff -u -r32836dfda60fb8230659e2ecb5ed310719025d1c -re11f383d97ca45f4fc0d1c8a283b306439dff946 --- lams_central/web/includes/javascript/qb-option.js (.../qb-option.js) (revision 32836dfda60fb8230659e2ecb5ed310719025d1c) +++ lams_central/web/includes/javascript/qb-option.js (.../qb-option.js) (revision e11f383d97ca45f4fc0d1c8a283b306439dff946) @@ -76,7 +76,7 @@ var initialValue = $(this).next("input").val(); $(this).slider('value', initialValue); } - }).on('slide',function(event,ui){ + }).on('slide',function(event, ui){ //ui is not available at the initial call var newValueInt = ui ? eval(ui.value) : eval($(this).slider('value')); @@ -109,7 +109,9 @@ optionDisplayOrderSpan.removeClass('correctOption').css('filter', 'brightness(1)'); } - checkQuestionNewVersion(); + if (ui) { + checkQuestionNewVersion(); + } }); //update slider's label with the initial value $('.slider').trigger('slide'); Index: lams_central/web/includes/javascript/qb-question.js =================================================================== diff -u -rc04504bfdd9685850e15792838241a748f13560e -re11f383d97ca45f4fc0d1c8a283b306439dff946 --- lams_central/web/includes/javascript/qb-question.js (.../qb-question.js) (revision c04504bfdd9685850e15792838241a748f13560e) +++ lams_central/web/includes/javascript/qb-question.js (.../qb-question.js) (revision e11f383d97ca45f4fc0d1c8a283b306439dff946) @@ -1,7 +1,8 @@ //in order to use this js file, define const VALIDATION_ERROR_LABEL and VALIDATION_ERRORS_LABEL -// do not check for new version more often than every 2 seconds -let newQuestionVersionCheckTime = new Date().getTime, +// skip initial check of new version +let newQuestionVersionCheckTime = new Date().getTime() + 1000, + // do not check for new version more often than every 2 seconds newQuestionVersionCheckThrottle = 2000; @@ -36,7 +37,8 @@ } let currentTime = new Date().getTime(); - if (!quick && currentTime - newQuestionVersionCheckTime < newQuestionVersionCheckThrottle) { + // skip initial check of new version + if (currentTime < newQuestionVersionCheckTime || (!quick && currentTime - newQuestionVersionCheckTime < newQuestionVersionCheckThrottle)) { return; } newQuestionVersionCheckTime = currentTime; @@ -66,7 +68,7 @@ // the controller produces true/false and is interpreted as JSON let newVersion = responseText; $('#saveButton').toggle(!newVersion); - $('#saveAsButton').toggle(newVersion).toggleClass('btn-primary', newVersion).toggleClass('btn-default', !newVersion); + $('#saveAsButton').show().toggleClass('btn-primary', newVersion).toggleClass('btn-default', !newVersion); } //form validation handler. It's called when the form contains an error.