diff options
| author | Jan-Hendrik Willms <tleilax+github@gmail.com> | 2021-07-22 16:07:19 +0200 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+github@gmail.com> | 2021-07-22 16:19:12 +0200 |
| commit | a3da1483a9e689846179159355badfec8073dbec (patch) | |
| tree | 770dcca6bdf5f6f2a11b0e7fcbbeda6919a3fc52 /resources/assets/javascripts/bootstrap/questionnaire.js | |
current code from svn, revision 62608
Diffstat (limited to 'resources/assets/javascripts/bootstrap/questionnaire.js')
| -rw-r--r-- | resources/assets/javascripts/bootstrap/questionnaire.js | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/resources/assets/javascripts/bootstrap/questionnaire.js b/resources/assets/javascripts/bootstrap/questionnaire.js new file mode 100644 index 0000000..33ead0b --- /dev/null +++ b/resources/assets/javascripts/bootstrap/questionnaire.js @@ -0,0 +1,75 @@ +jQuery(document).on('paste', '.questionnaire_edit .options > li input', function(ui) { + var event = ui.originalEvent; + var text = event.clipboardData.getData('text'); + text = text.split(/[\n\t]/); + if (text.length > 1) { + if (text[0]) { + this.value += text.shift().trim(); + } + var current = jQuery(this).closest('li'); + for (var i in text) { + if (text[i].trim()) { + var li = jQuery( + jQuery(this) + .closest('.options') + .data('optiontemplate') + ); + li.find('input:text').val(text[i].trim()); + li.insertAfter(current); + current = li; + } + } + STUDIP.Questionnaire.Test.updateCheckboxValues(); + event.preventDefault(); + } +}); +jQuery(document).on('blur', '.questionnaire_edit .options > li:last-child input:text', function() { + if (this.value) { + jQuery(this) + .closest('.options') + .append( + jQuery(this) + .closest('.options') + .data('optiontemplate') + ); + jQuery(this) + .closest('.options') + .find('li:last-child input') + .focus(); + } + STUDIP.Questionnaire.Test.updateCheckboxValues(); +}); +jQuery(document).on('click', '.questionnaire_edit .options .delete', function() { + var icon = this; + STUDIP.Dialog.confirm( + jQuery(this) + .closest('.questionnaire_edit') + .find('.delete_question') + .text(), + function() { + jQuery(icon) + .closest('li') + .fadeOut(function() { + jQuery(this).remove(); + STUDIP.Questionnaire.Test.updateCheckboxValues(); + }); + } + ); +}); +jQuery(document).on('click', '.questionnaire_edit .options .add', function() { + jQuery(this) + .closest('.options') + .append( + jQuery(this) + .closest('.options') + .data('optiontemplate') + ); + jQuery(this) + .closest('.options') + .find('li:last-child input:text') + .focus(); + STUDIP.Questionnaire.Test.updateCheckboxValues(); +}); +jQuery(document).on('change', '.show_validation_hints .questionnaire_answer [data-question_type=Vote] input', function() { + STUDIP.Questionnaire.Vote.validator.call($(this).closest("article")[0]); +}); |
