Skip to content

Commit

Permalink
Merge pull request #2623 from QuizandSurveyMaster/CU-86cw5agnd-rearra…
Browse files Browse the repository at this point in the history
…nged-option-settings

decoupled two option settings
  • Loading branch information
zubairraeen authored Aug 20, 2024
2 parents 03712b1 + 162c254 commit 0f3a268
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 16 deletions.
3 changes: 1 addition & 2 deletions css/qsm-admin.css
Original file line number Diff line number Diff line change
Expand Up @@ -3358,8 +3358,7 @@ body .qsm_tab_content .qsm-small-input-field input[type="text"] {
padding-top: 4px;
}
fieldset#enable_quick_correct_answer_info {
margin-left: 25px;
margin-top: 4px;
margin-top: 8px;
}
.qsm-mb-1, .qsm_tab_content fieldset{
margin-bottom: .25rem;
Expand Down
11 changes: 0 additions & 11 deletions js/qsm-admin.js
Original file line number Diff line number Diff line change
Expand Up @@ -160,17 +160,6 @@ var QSMAdmin;
jQuery('.category_selection_random').parents("tr").hide();
}
});
show_hide_show_correct_answer();
$(document).on('change', '#enable_quick_result_mc-1', function (event) {
show_hide_show_correct_answer();
});
function show_hide_show_correct_answer() {
if (jQuery('#enable_quick_result_mc-1:checked').length > 0) {
jQuery('#enable_quick_correct_answer_info').css('opacity', '1');
} else {
jQuery('#enable_quick_correct_answer_info').css('opacity', '0.5');
}
}
jQuery(document).on('change', '#preferred-date-format-custom', function() {
let customValue = jQuery(this).val();
jQuery('#preferred_date_format label.qsm-option-label:last input[type="radio"]').val(customValue);
Expand Down
28 changes: 27 additions & 1 deletion js/qsm-quiz.js
Original file line number Diff line number Diff line change
Expand Up @@ -1486,6 +1486,12 @@ jQuery(function () {
let question_id = $i_this.attr('name').split('question')[1];
if (qmn_quiz_data[quizID].enable_quick_result_mc == 1) {
qsm_show_inline_result(quizID, question_id, value, $this, 'radio', $i_this)
} else if (qmn_quiz_data[quizID].enable_quick_correct_answer_info != 0) {
let data = qsm_question_quick_result_js(question_id, value, 'radio', qmn_quiz_data[quizID].enable_quick_correct_answer_info,quizID);
$this.find('.quick-question-res-p, .qsm-inline-correct-info').remove();
if ( 0 < value.length && data.success != '') {
$this.append('<div class="qsm-inline-correct-info">' + qsm_check_shortcode(data.message) + '</div>');
}
}
jQuery(document).trigger('qsm_after_select_answer', [quizID, question_id, value, $this, 'radio']);
if (qmn_quiz_data[quizID].end_quiz_if_wrong > 0 && !jQuery(this).parents('.qsm-quiz-container').find('.mlw_next:visible').length ) {
Expand All @@ -1507,10 +1513,24 @@ jQuery(function () {
} else {
value = $i_this.val();
}
let sendValue;
if (typeof value === 'string') {
sendValue = value.trim();
} else if (value.length) {
sendValue = value[value.length - 1];
} else {
sendValue = '';
}
clearTimeout(qsm_inline_result_timer);
qsm_inline_result_timer = setTimeout(() => {
if (qmn_quiz_data[quizID].enable_quick_result_mc == 1) {
qsm_show_inline_result(quizID, question_id, value, $this, 'input', $i_this, $this.find('.qmn_fill_blank').index($i_this));
qsm_show_inline_result(quizID, question_id, sendValue, $this, 'input', $i_this, $this.find('.qmn_fill_blank').index($i_this));
} else if (qmn_quiz_data[quizID].enable_quick_correct_answer_info != 0) {
let data = qsm_question_quick_result_js(question_id, sendValue, 'input', qmn_quiz_data[quizID].enable_quick_correct_answer_info,quizID);
$this.find('.quick-question-res-p, .qsm-inline-correct-info').remove();
if ( 0 < value.length && data.success != '') {
$this.append('<div class="qsm-inline-correct-info">' + qsm_check_shortcode(data.message) + '</div>');
}
}
jQuery(document).trigger('qsm_after_select_answer', [quizID, question_id, value, $this, 'input', $this.find('.qmn_fill_blank').index($i_this)]);
}, 2000);
Expand Down Expand Up @@ -1541,6 +1561,12 @@ jQuery(function () {
}
if (qmn_quiz_data[quizID].enable_quick_result_mc == 1) {
qsm_show_inline_result(quizID, question_id, checkedValues, $this, 'checkbox', $i_this)
} else if (qmn_quiz_data[quizID].enable_quick_correct_answer_info != 0) {
let data = qsm_question_quick_result_js(question_id, checkedValues, 'checkbox', qmn_quiz_data[quizID].enable_quick_correct_answer_info,quizID);
$this.find('.quick-question-res-p, .qsm-inline-correct-info').remove();
if ( 0 < checkedValues.length && data.success != '') {
$this.append('<div class="qsm-inline-correct-info">' + qsm_check_shortcode(data.message) + '</div>');
}
}
jQuery(document).trigger('qsm_after_select_answer', [quizID, question_id, checkedValues, $this, 'checkbox']);
});
Expand Down
2 changes: 1 addition & 1 deletion php/classes/class-qmn-quiz-manager.php
Original file line number Diff line number Diff line change
Expand Up @@ -658,7 +658,7 @@ public function display_shortcode( $atts ) {
$encryption[ $question['question_id'] ]['correct_info_text'] = isset( $question['question_answer_info'] ) ? html_entity_decode( $question['question_answer_info'] ) : '';
$encryption[ $question['question_id'] ]['correct_info_text'] = $mlwQuizMasterNext->pluginHelper->qsm_language_support( $encryption[ $question['question_id'] ]['correct_info_text'], "correctanswerinfo-{$question['question_id']}" );
}
if ( ( isset($qmn_json_data['end_quiz_if_wrong']) && 0 < $qmn_json_data['end_quiz_if_wrong'] ) || ( ! empty( $qmn_json_data['enable_quick_result_mc'] ) && 1 == $qmn_json_data['enable_quick_result_mc'] ) || ( ! empty( $qmn_json_data['ajax_show_correct'] ) && 1 == $qmn_json_data['ajax_show_correct'] ) ) {
if ( ( isset($qmn_json_data['end_quiz_if_wrong']) && 0 < $qmn_json_data['end_quiz_if_wrong'] ) || ( ! empty( $qmn_json_data['enable_quick_result_mc'] ) && 1 == $qmn_json_data['enable_quick_result_mc'] ) || ( ! empty( $qmn_json_data['enable_quick_correct_answer_info'] ) && 0 != $qmn_json_data['enable_quick_correct_answer_info'] ) || ( ! empty( $qmn_json_data['ajax_show_correct'] ) && 1 == $qmn_json_data['ajax_show_correct'] ) ) {
$quiz_id = $qmn_json_data['quiz_id'];
$qsm_inline_encrypt_js = '
if (encryptionKey === undefined) {
Expand Down
2 changes: 1 addition & 1 deletion php/classes/class-qsm-install.php
Original file line number Diff line number Diff line change
Expand Up @@ -494,7 +494,7 @@ public function register_default_settings() {
),
'enable_quick_correct_answer_info' => array(
'type' => 'radio',
'prefix_text' => __( "Display the correct answer information in real-time", 'quiz-master-next' ),
'prefix_text' => '<b>' . __( "Display the correct answer information in real-time", 'quiz-master-next' ) . '</b>',
'options' => array(
array(
'label' => __( "Display only if the answer is correct", 'quiz-master-next' ),
Expand Down

0 comments on commit 0f3a268

Please sign in to comment.