Fix multiples draggable questions - refs BT#12712

pull/2487/head
Angel Fernando Quiroz Campos 8 years ago
parent ab271c0780
commit 216a0e6f35
  1. 7
      main/inc/lib/exercise.lib.php
  2. 14
      main/template/default/exercise/submit.js.tpl

@ -115,9 +115,12 @@ class ExerciseLib
if ($answerType == DRAGGABLE) {
$isVertical = $objQuestionTmp->extra == 'v';
$s .= '<div class="col-md-12 ui-widget ui-helper-clearfix">
$s .= '
<div class="col-md-12 ui-widget ui-helper-clearfix">
<div class="clearfix">
<ul class="exercise-draggable-answer ui-helper-reset ui-helper-clearfix '.($isVertical ? '' : 'list-inline').'">';
<ul class="exercise-draggable-answer '.($isVertical ? '' : 'list-inline').'"
id="question-'.$questionId.'" data-question="'.$questionId.'">
';
} else {
$s .= '<div id="drag' . $questionId . '_question" class="drag_question">
<table class="data_table">';

@ -28,15 +28,21 @@ var DraggableAnswer = {
});
},
recycleItem: function (item) {
var droppedId = item.attr('id'),
originSelectId = 'window_' + droppedId + '_select',
idParts = droppedId.split('_'),
questionId = parseInt(idParts[0]) || 0;
if (!questionId) {
return;
}
item.fadeOut(function () {
item
.appendTo(DraggableAnswer.gallery)
.appendTo(DraggableAnswer.gallery.filter('[data-question="' + questionId + '"]'))
.fadeIn();
});
var droppedId = item.attr('id'),
originSelectId = 'window_' + droppedId + '_select';
$('#' + originSelectId + ' option').prop('selected', false);
$('#' + originSelectId + ' option:first').prop('selected', true);
},

Loading…
Cancel
Save