diff --git a/css/qsm-admin.css b/css/qsm-admin.css
index 15cb2ed67..8e91a87be 100644
--- a/css/qsm-admin.css
+++ b/css/qsm-admin.css
@@ -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;
diff --git a/js/qsm-admin.js b/js/qsm-admin.js
index 0ab7aade3..e369f2ad7 100644
--- a/js/qsm-admin.js
+++ b/js/qsm-admin.js
@@ -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);
diff --git a/js/qsm-quiz.js b/js/qsm-quiz.js
index 1ce36906f..931c01998 100644
--- a/js/qsm-quiz.js
+++ b/js/qsm-quiz.js
@@ -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('
' + qsm_check_shortcode(data.message) + '
');
+ }
}
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 ) {
@@ -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('' + qsm_check_shortcode(data.message) + '
');
+ }
}
jQuery(document).trigger('qsm_after_select_answer', [quizID, question_id, value, $this, 'input', $this.find('.qmn_fill_blank').index($i_this)]);
}, 2000);
@@ -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('' + qsm_check_shortcode(data.message) + '
');
+ }
}
jQuery(document).trigger('qsm_after_select_answer', [quizID, question_id, checkedValues, $this, 'checkbox']);
});
diff --git a/php/classes/class-qmn-quiz-manager.php b/php/classes/class-qmn-quiz-manager.php
index 2249f83cf..0ea0ca276 100644
--- a/php/classes/class-qmn-quiz-manager.php
+++ b/php/classes/class-qmn-quiz-manager.php
@@ -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) {
diff --git a/php/classes/class-qsm-install.php b/php/classes/class-qsm-install.php
index dcfae08fe..fb34c2143 100644
--- a/php/classes/class-qsm-install.php
+++ b/php/classes/class-qsm-install.php
@@ -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' => '' . __( "Display the correct answer information in real-time", 'quiz-master-next' ) . '',
'options' => array(
array(
'label' => __( "Display only if the answer is correct", 'quiz-master-next' ),