Version Description
(Jan 24, 2020) = * Bug: Solve vulnerability issues reported by wordfence * Bug: PHP notices in Settings page * Bug: Audio files does not show and play in the Question * Bug: Unable to rename quiz * Bug: Thumbnail and Medium size image does not show up in Question * Bug: PHP warnings in get free adon page * Bug: Video Shortcode does not work in Question * Feature: WordPress 5.3 compatability
Download this release
Release Info
Developer | quizsurvey |
Plugin | Quiz And Survey Master (Formerly Quiz Master Next) |
Version | 6.4.1 |
Comparing to | |
See all releases |
Code changes from version 6.4 to 6.4.1
- js/qsm-admin.js +1 -1
- mlw_quizmaster2.php +2 -2
- php/question-types.php +21 -23
- readme.txt +16 -4
js/qsm-admin.js
CHANGED
@@ -35,7 +35,7 @@ var QSMQuizzesSurveys;
|
|
35 |
},
|
36 |
searchQuizzes: function( query ) {
|
37 |
$( ".qsm-quiz-row" ).each(function() {
|
38 |
-
if ( -1 === $( this ).find( '.
|
39 |
$( this ).hide();
|
40 |
} else {
|
41 |
$( this ).show();
|
35 |
},
|
36 |
searchQuizzes: function( query ) {
|
37 |
$( ".qsm-quiz-row" ).each(function() {
|
38 |
+
if ( -1 === $( this ).find( '.row-title' ).text().toLowerCase().indexOf( query.toLowerCase() ) ) {
|
39 |
$( this ).hide();
|
40 |
} else {
|
41 |
$( this ).show();
|
mlw_quizmaster2.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Plugin Name: Quiz And Survey Master
|
4 |
* Description: Easily and quickly add quizzes and surveys to your website.
|
5 |
-
* Version: 6.4
|
6 |
* Author: ExpressTech
|
7 |
* Author URI: https://quizandsurveymaster.com/
|
8 |
* Plugin URI: https://expresstech.io/
|
@@ -37,7 +37,7 @@ class MLWQuizMasterNext {
|
|
37 |
* @var string
|
38 |
* @since 4.0.0
|
39 |
*/
|
40 |
-
public $version = '6.
|
41 |
|
42 |
/**
|
43 |
* QSM Alert Manager Object
|
2 |
/**
|
3 |
* Plugin Name: Quiz And Survey Master
|
4 |
* Description: Easily and quickly add quizzes and surveys to your website.
|
5 |
+
* Version: 6.4.1
|
6 |
* Author: ExpressTech
|
7 |
* Author URI: https://quizandsurveymaster.com/
|
8 |
* Plugin URI: https://expresstech.io/
|
37 |
* @var string
|
38 |
* @since 4.0.0
|
39 |
*/
|
40 |
+
public $version = '6.4.1';
|
41 |
|
42 |
/**
|
43 |
* QSM Alert Manager Object
|
php/question-types.php
CHANGED
@@ -42,8 +42,7 @@ function qmn_file_upload_display($id, $question, $answers)
|
|
42 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
43 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredFileUpload";} else {$mlw_requireClass = "";}
|
44 |
//$question_title = apply_filters('the_content', $question);
|
45 |
-
$
|
46 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
47 |
$question_display .= "<input type='file' class='mlw_answer_file_upload $mlw_requireClass'/>";
|
48 |
$question_display .= "<div style='display: none;' class='remove-uploaded-file'><span class='dashicons dashicons-trash'></span></div>";
|
49 |
$question_display .= "<input class='mlw_file_upload_hidden_value' type='hidden' name='question".$id."' value='' />";
|
@@ -106,8 +105,7 @@ function qmn_multiple_choice_display($id, $question, $answers)
|
|
106 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
107 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredRadio";} else {$mlw_requireClass = "";}
|
108 |
//$question_title = apply_filters('the_content', $question);
|
109 |
-
$
|
110 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
111 |
$question_display .= "<div class='qmn_radio_answers $mlw_requireClass'>";
|
112 |
if (is_array($answers))
|
113 |
{
|
@@ -197,8 +195,7 @@ function qmn_date_display($id, $question, $answers)
|
|
197 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
198 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredDate";} else {$mlw_requireClass = "";}
|
199 |
//$question_title = apply_filters('the_content', $question);
|
200 |
-
$
|
201 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
202 |
$question_display .= "<input type='date' class='mlw_answer_date $mlw_requireClass' name='question".$id."' id='question".$id."' value=''/>";
|
203 |
//$question_display .= "<script>jQuery(document).ready(function () { jQuery('#question".$id."').datepicker(); });</script>";
|
204 |
return apply_filters('qmn_date_display_front',$question_display,$id, $question, $answers);
|
@@ -269,8 +266,7 @@ function qmn_horizontal_multiple_choice_display($id, $question, $answers)
|
|
269 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
270 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredRadio";} else {$mlw_requireClass = "";}
|
271 |
//$question_title = apply_filters('the_content', $question);
|
272 |
-
$
|
273 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
274 |
$question_display .= "<div class='qmn_radio_answers $mlw_requireClass'>";
|
275 |
if (is_array($answers))
|
276 |
{
|
@@ -364,9 +360,8 @@ function qmn_drop_down_display($id, $question, $answers)
|
|
364 |
} else {
|
365 |
$require_class = "";
|
366 |
}
|
367 |
-
//$question_title = apply_filters('the_content', $question);
|
368 |
-
$
|
369 |
-
$question_display .= "<span class='mlw_qmn_question'>" . do_shortcode( htmlspecialchars_decode( $question_title, ENT_QUOTES ) ) . "</span>";
|
370 |
$question_display .= "<select class='qsm_select $require_class' name='question".$id."'>";
|
371 |
$question_display .= "<option value='No Answer Provided'>" . __('Please select your answer','quiz-master-next') . "</option>";
|
372 |
if (is_array($answers))
|
@@ -460,8 +455,7 @@ function qmn_small_open_display($id, $question, $answers)
|
|
460 |
$limit_text_att = $limit_text ? "maxlength='". $limit_text ."' " : '';
|
461 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredText";} else {$mlw_requireClass = "";}
|
462 |
//$question_title = apply_filters('the_content', $question);
|
463 |
-
$
|
464 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
465 |
$question_display .= "<input ". $autofill_att . $limit_text_att . " type='text' class='mlw_answer_open_text $mlw_requireClass' name='question".$id."' />";
|
466 |
return apply_filters('qmn_small_open_display_front',$question_display,$id, $question, $answers);
|
467 |
}
|
@@ -537,8 +531,7 @@ function qmn_multiple_response_display($id, $question, $answers)
|
|
537 |
$limit_mr_text = 'onchange="qsmCheckMR(this,'. $limit_multiple_response .')"';
|
538 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredCheck";} else {$mlw_requireClass = "";}
|
539 |
//$question_title = apply_filters('the_content', $question);
|
540 |
-
$
|
541 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
542 |
$question_display .= "<div class='qmn_check_answers $mlw_requireClass'>";
|
543 |
if (is_array($answers))
|
544 |
{
|
@@ -639,8 +632,7 @@ function qmn_large_open_display($id, $question, $answers)
|
|
639 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
640 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredText";} else {$mlw_requireClass = "";}
|
641 |
//$question_title = apply_filters('the_content', $question);
|
642 |
-
$
|
643 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
644 |
$question_display .= "<textarea class='mlw_answer_open_text $mlw_requireClass' cols='70' rows='5' name='question".$id."' /></textarea>";
|
645 |
return apply_filters('qmn_large_open_display_front',$question_display,$id, $question, $answers);
|
646 |
}
|
@@ -756,8 +748,7 @@ function qmn_number_display($id, $question, $answers)
|
|
756 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
757 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredNumber";} else {$mlw_requireClass = "";}
|
758 |
//$question_title = apply_filters('the_content', $question);
|
759 |
-
$
|
760 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
761 |
$question_display .= "<input type='number' class='mlw_answer_number $mlw_requireClass' name='question".$id."' />";
|
762 |
return apply_filters('qmn_number_display_front',$question_display,$id, $question, $answers);
|
763 |
}
|
@@ -941,8 +932,7 @@ function qmn_horizontal_multiple_response_display($id, $question, $answers)
|
|
941 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
942 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredCheck";} else {$mlw_requireClass = "";}
|
943 |
//$question_title = apply_filters('the_content', $question);
|
944 |
-
$
|
945 |
-
$question_display .= "<span class='mlw_qmn_question'>".do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES))."</span>";
|
946 |
$question_display .= "<div class='qmn_check_answers $mlw_requireClass'>";
|
947 |
if (is_array($answers))
|
948 |
{
|
@@ -1067,8 +1057,7 @@ function qmn_fill_blank_display($id, $question, $answers)
|
|
1067 |
$question = str_replace( "%BLANK%", $input_text, do_shortcode(htmlspecialchars_decode($question, ENT_QUOTES)));
|
1068 |
}
|
1069 |
//$question_title = apply_filters('the_content', $question);
|
1070 |
-
|
1071 |
-
$question_display = "<span class='mlw_qmn_question'>" . do_shortcode(htmlspecialchars_decode($question_title, ENT_QUOTES)) ."</span>";
|
1072 |
return apply_filters('qmn_fill_blank_display_front',$question_display,$id, $question, $answers);
|
1073 |
}
|
1074 |
|
@@ -1114,4 +1103,13 @@ function qmn_fill_blank_review($id, $question, $answers)
|
|
1114 |
}
|
1115 |
return $return_array;
|
1116 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1117 |
?>
|
42 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
43 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredFileUpload";} else {$mlw_requireClass = "";}
|
44 |
//$question_title = apply_filters('the_content', $question);
|
45 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
46 |
$question_display .= "<input type='file' class='mlw_answer_file_upload $mlw_requireClass'/>";
|
47 |
$question_display .= "<div style='display: none;' class='remove-uploaded-file'><span class='dashicons dashicons-trash'></span></div>";
|
48 |
$question_display .= "<input class='mlw_file_upload_hidden_value' type='hidden' name='question".$id."' value='' />";
|
105 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
106 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredRadio";} else {$mlw_requireClass = "";}
|
107 |
//$question_title = apply_filters('the_content', $question);
|
108 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
109 |
$question_display .= "<div class='qmn_radio_answers $mlw_requireClass'>";
|
110 |
if (is_array($answers))
|
111 |
{
|
195 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
196 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredDate";} else {$mlw_requireClass = "";}
|
197 |
//$question_title = apply_filters('the_content', $question);
|
198 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
199 |
$question_display .= "<input type='date' class='mlw_answer_date $mlw_requireClass' name='question".$id."' id='question".$id."' value=''/>";
|
200 |
//$question_display .= "<script>jQuery(document).ready(function () { jQuery('#question".$id."').datepicker(); });</script>";
|
201 |
return apply_filters('qmn_date_display_front',$question_display,$id, $question, $answers);
|
266 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
267 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredRadio";} else {$mlw_requireClass = "";}
|
268 |
//$question_title = apply_filters('the_content', $question);
|
269 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
270 |
$question_display .= "<div class='qmn_radio_answers $mlw_requireClass'>";
|
271 |
if (is_array($answers))
|
272 |
{
|
360 |
} else {
|
361 |
$require_class = "";
|
362 |
}
|
363 |
+
//$question_title = apply_filters('the_content', $question);
|
364 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
365 |
$question_display .= "<select class='qsm_select $require_class' name='question".$id."'>";
|
366 |
$question_display .= "<option value='No Answer Provided'>" . __('Please select your answer','quiz-master-next') . "</option>";
|
367 |
if (is_array($answers))
|
455 |
$limit_text_att = $limit_text ? "maxlength='". $limit_text ."' " : '';
|
456 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredText";} else {$mlw_requireClass = "";}
|
457 |
//$question_title = apply_filters('the_content', $question);
|
458 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
459 |
$question_display .= "<input ". $autofill_att . $limit_text_att . " type='text' class='mlw_answer_open_text $mlw_requireClass' name='question".$id."' />";
|
460 |
return apply_filters('qmn_small_open_display_front',$question_display,$id, $question, $answers);
|
461 |
}
|
531 |
$limit_mr_text = 'onchange="qsmCheckMR(this,'. $limit_multiple_response .')"';
|
532 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredCheck";} else {$mlw_requireClass = "";}
|
533 |
//$question_title = apply_filters('the_content', $question);
|
534 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
535 |
$question_display .= "<div class='qmn_check_answers $mlw_requireClass'>";
|
536 |
if (is_array($answers))
|
537 |
{
|
632 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
633 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredText";} else {$mlw_requireClass = "";}
|
634 |
//$question_title = apply_filters('the_content', $question);
|
635 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
636 |
$question_display .= "<textarea class='mlw_answer_open_text $mlw_requireClass' cols='70' rows='5' name='question".$id."' /></textarea>";
|
637 |
return apply_filters('qmn_large_open_display_front',$question_display,$id, $question, $answers);
|
638 |
}
|
748 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
749 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredNumber";} else {$mlw_requireClass = "";}
|
750 |
//$question_title = apply_filters('the_content', $question);
|
751 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
752 |
$question_display .= "<input type='number' class='mlw_answer_number $mlw_requireClass' name='question".$id."' />";
|
753 |
return apply_filters('qmn_number_display_front',$question_display,$id, $question, $answers);
|
754 |
}
|
932 |
$required = $mlwQuizMasterNext->pluginHelper->get_question_setting($id, 'required');
|
933 |
if ($required == 0) {$mlw_requireClass = "mlwRequiredCheck";} else {$mlw_requireClass = "";}
|
934 |
//$question_title = apply_filters('the_content', $question);
|
935 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
936 |
$question_display .= "<div class='qmn_check_answers $mlw_requireClass'>";
|
937 |
if (is_array($answers))
|
938 |
{
|
1057 |
$question = str_replace( "%BLANK%", $input_text, do_shortcode(htmlspecialchars_decode($question, ENT_QUOTES)));
|
1058 |
}
|
1059 |
//$question_title = apply_filters('the_content', $question);
|
1060 |
+
$question_display .= qsm_question_title_func($question);
|
|
|
1061 |
return apply_filters('qmn_fill_blank_display_front',$question_display,$id, $question, $answers);
|
1062 |
}
|
1063 |
|
1103 |
}
|
1104 |
return $return_array;
|
1105 |
}
|
1106 |
+
|
1107 |
+
function qsm_question_title_func($question){
|
1108 |
+
//$question_title = apply_filters('the_content', $question);
|
1109 |
+
$question_title = $question;
|
1110 |
+
global $wp_embed;
|
1111 |
+
$question_title = $wp_embed->run_shortcode($question_title);
|
1112 |
+
$question_display = "<span class='mlw_qmn_question'>" . do_shortcode( htmlspecialchars_decode( $question_title, ENT_QUOTES ) ) . "</span>";
|
1113 |
+
return $question_display;
|
1114 |
+
}
|
1115 |
?>
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: quiz, survey, lead, test, score, exam, questionnaire, question,wordpress q
|
|
4 |
Requires at least: 4.9
|
5 |
Tested up to: 5.3.2
|
6 |
Requires PHP: 5.4
|
7 |
-
Stable tag: 6.4
|
8 |
License: GPLv2
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -69,16 +69,18 @@ While Quiz And Survey Master is fully functional and is packed full of features
|
|
69 |
|
70 |
**Premium Add-ons**
|
71 |
|
|
|
|
|
|
|
|
|
72 |
* [URL Parameters](http://bit.ly/2I1ZM6g)
|
73 |
* [Google Analytics Tracking](http://bit.ly/2AAgABs)
|
74 |
* [Landing Page](https://quizandsurveymaster.com/downloads/landing-page/?utm_source=readme&utm_medium=plugin&utm_content=landing-page&utm_campaign=qsm_plugin)
|
75 |
-
* [Export Results](https://quizandsurveymaster.com/downloads/export-results/?utm_source=readme&utm_medium=plugin&utm_content=export-results&utm_campaign=qsm_plugin)
|
76 |
-
* [Reporting & Analysis](https://quizandsurveymaster.com/downloads/results-analysis/?utm_source=readme&utm_medium=plugin&utm_content=reporting-analysis&utm_campaign=qsm_plugin)
|
77 |
* [MailChimp Integration](https://quizandsurveymaster.com/downloads/mailchimp-integration/?utm_source=readme&utm_medium=plugin&utm_content=mailchimp-integration&utm_campaign=qsm_plugin)
|
78 |
* And **many** more available in our [Quiz And Survey Master Addon Store](https://quizandsurveymaster.com/addons/?utm_source=readme&utm_medium=plugin&utm_content=all-addons&utm_campaign=qsm_plugin)
|
79 |
|
80 |
**About Us**
|
81 |
-
QSM is a WordPress Quiz Plugin which is owned completely by [ExpressTech](expresstech.io)
|
82 |
|
83 |
== Installation ==
|
84 |
|
@@ -116,6 +118,16 @@ This is usually a theme conflict. You can [checkout out our common conflict solu
|
|
116 |
|
117 |
== Changelog ==
|
118 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
119 |
= 6.4 (Jan 1, 2020) =
|
120 |
* Bug: Result summary page is not displaying Math problems
|
121 |
* Feature: Client wants users to upload images/attachments to the survey
|
4 |
Requires at least: 4.9
|
5 |
Tested up to: 5.3.2
|
6 |
Requires PHP: 5.4
|
7 |
+
Stable tag: 6.4.1
|
8 |
License: GPLv2
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
69 |
|
70 |
**Premium Add-ons**
|
71 |
|
72 |
+
* [Reporting & Analysis](https://quizandsurveymaster.com/downloads/results-analysis/?utm_source=readme&utm_medium=plugin&utm_content=reporting-analysis&utm_campaign=qsm_plugin)
|
73 |
+
* [Export Results](https://quizandsurveymaster.com/downloads/export-results/?utm_source=readme&utm_medium=plugin&utm_content=export-results&utm_campaign=qsm_plugin)
|
74 |
+
* [Logic](https://quizandsurveymaster.com/downloads/logic/?utm_source=readme&utm_medium=plugin&utm_content=logic&utm_campaign=qsm_plugin)
|
75 |
+
* [User Dashboard](https://quizandsurveymaster.com/downloads/user-dashboard/?utm_source=readme&utm_medium=plugin&utm_content=user-dashboard&utm_campaign=qsm_plugin)
|
76 |
* [URL Parameters](http://bit.ly/2I1ZM6g)
|
77 |
* [Google Analytics Tracking](http://bit.ly/2AAgABs)
|
78 |
* [Landing Page](https://quizandsurveymaster.com/downloads/landing-page/?utm_source=readme&utm_medium=plugin&utm_content=landing-page&utm_campaign=qsm_plugin)
|
|
|
|
|
79 |
* [MailChimp Integration](https://quizandsurveymaster.com/downloads/mailchimp-integration/?utm_source=readme&utm_medium=plugin&utm_content=mailchimp-integration&utm_campaign=qsm_plugin)
|
80 |
* And **many** more available in our [Quiz And Survey Master Addon Store](https://quizandsurveymaster.com/addons/?utm_source=readme&utm_medium=plugin&utm_content=all-addons&utm_campaign=qsm_plugin)
|
81 |
|
82 |
**About Us**
|
83 |
+
QSM is a WordPress Quiz Plugin which is owned completely by [ExpressTech](https://expresstech.io)
|
84 |
|
85 |
== Installation ==
|
86 |
|
118 |
|
119 |
== Changelog ==
|
120 |
|
121 |
+
= 6.4.1 (Jan 24, 2020) =
|
122 |
+
* Bug: Solve vulnerability issues reported by wordfence
|
123 |
+
* Bug: PHP notices in Settings page
|
124 |
+
* Bug: Audio files does not show and play in the Question
|
125 |
+
* Bug: Unable to rename quiz
|
126 |
+
* Bug: Thumbnail and Medium size image does not show up in Question
|
127 |
+
* Bug: PHP warnings in get free adon page
|
128 |
+
* Bug: Video Shortcode does not work in Question
|
129 |
+
* Feature: WordPress 5.3 compatability
|
130 |
+
|
131 |
= 6.4 (Jan 1, 2020) =
|
132 |
* Bug: Result summary page is not displaying Math problems
|
133 |
* Feature: Client wants users to upload images/attachments to the survey
|