Version Description
(Dec 05, 2022) = * Feature: Added option to show and hide Text/HTML question type on result page * Bug: Fixed block.js warnings * Bug: Fixed issue with required questions validations
Download this release
Release Info
Developer | expresstech |
Plugin | Quiz And Survey Master (Formerly Quiz Master Next) |
Version | 8.0.7 |
Comparing to | |
See all releases |
Code changes from version 8.0.6 to 8.0.7
- blocks/block.js +13 -11
- blocks/block.php +9 -5
- css/admin-dashboard-rtl.css +4 -0
- css/admin-dashboard.css +13 -0
- data/parsing_script.json +1 -1
- js/qsm-quiz.js +4 -2
- mlw_quizmaster2.php +13 -2
- php/admin/admin-dashboard.php +27 -12
- php/admin/admin-results-page.php +1 -0
- php/admin/functions.php +17 -10
- php/admin/quiz-options-page.php +4 -1
- php/admin/quizzes-page.php +6 -4
- php/admin/settings-page.php +19 -0
- php/classes/class-qsm-install.php +20 -0
- php/classes/class-qsm-settings.php +1 -0
- php/question-types.php +1 -1
- php/question-types/qsm-question-type-opt-in.php +13 -0
- php/template-variables.php +16 -12
- readme.txt +6 -1
blocks/block.js
CHANGED
@@ -1,19 +1,21 @@
|
|
1 |
-
var
|
2 |
-
|
3 |
-
|
|
|
4 |
data: null ,
|
5 |
method: 'GET',
|
6 |
-
success : function(response){
|
7 |
-
|
8 |
}
|
9 |
-
});
|
10 |
|
11 |
var el = wp.element.createElement,
|
12 |
registerBlockType = wp.blocks.registerBlockType,
|
13 |
-
ServerSideRender = wp.components.ServerSideRender,
|
14 |
TextControl = wp.components.TextControl,
|
15 |
SelectControl = wp.components.SelectControl,
|
16 |
-
|
|
|
17 |
|
18 |
/*
|
19 |
* Registers the main QSM block
|
@@ -24,7 +26,7 @@ registerBlockType( 'qsm/main-block', {
|
|
24 |
category: 'widgets',
|
25 |
|
26 |
edit: function( props ) {
|
27 |
-
|
28 |
return [
|
29 |
/*
|
30 |
* The ServerSideRender element uses the REST API to automatically call
|
@@ -36,7 +38,7 @@ registerBlockType( 'qsm/main-block', {
|
|
36 |
attributes: props.attributes,
|
37 |
} ),
|
38 |
el( InspectorControls, {},
|
39 |
-
el(
|
40 |
el( SelectControl, {
|
41 |
label: 'Quiz/Survey ID',
|
42 |
value: props.attributes.quiz,
|
@@ -44,7 +46,7 @@ registerBlockType( 'qsm/main-block', {
|
|
44 |
onChange: ( value ) => { props.setAttributes( { quiz: value } ); },
|
45 |
} )
|
46 |
)
|
47 |
-
|
48 |
];
|
49 |
},
|
50 |
|
1 |
+
var QSMQuizList,
|
2 |
+
QSMQuizListEndPoint = wpApiSettings.root + 'quiz-survey-master/v2/quizzlist/';
|
3 |
+
|
4 |
+
jQuery.ajax( QSMQuizListEndPoint, {
|
5 |
data: null ,
|
6 |
method: 'GET',
|
7 |
+
success : function( response ) {
|
8 |
+
QSMQuizList = response;
|
9 |
}
|
10 |
+
} );
|
11 |
|
12 |
var el = wp.element.createElement,
|
13 |
registerBlockType = wp.blocks.registerBlockType,
|
14 |
+
ServerSideRender = ! wp.serverSideRender ? wp.components.ServerSideRender : wp.serverSideRender,
|
15 |
TextControl = wp.components.TextControl,
|
16 |
SelectControl = wp.components.SelectControl,
|
17 |
+
PanelBody = wp.components.PanelBody,
|
18 |
+
InspectorControls = ! wp.blockEditor ? wp.editor.InspectorControls : wp.blockEditor.InspectorControls;
|
19 |
|
20 |
/*
|
21 |
* Registers the main QSM block
|
26 |
category: 'widgets',
|
27 |
|
28 |
edit: function( props ) {
|
29 |
+
const quiz_arr = QSMQuizList;
|
30 |
return [
|
31 |
/*
|
32 |
* The ServerSideRender element uses the REST API to automatically call
|
38 |
attributes: props.attributes,
|
39 |
} ),
|
40 |
el( InspectorControls, {},
|
41 |
+
el( PanelBody, {},
|
42 |
el( SelectControl, {
|
43 |
label: 'Quiz/Survey ID',
|
44 |
value: props.attributes.quiz,
|
46 |
onChange: ( value ) => { props.setAttributes( { quiz: value } ); },
|
47 |
} )
|
48 |
)
|
49 |
+
)
|
50 |
];
|
51 |
},
|
52 |
|
blocks/block.php
CHANGED
@@ -12,12 +12,16 @@
|
|
12 |
* Register our block.
|
13 |
*/
|
14 |
function qsm_block_init() {
|
15 |
-
global $mlwQuizMasterNext;
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
// Register our block editor script.
|
17 |
-
wp_register_script(
|
18 |
-
|
19 |
-
plugins_url( 'block.js', __FILE__ ),
|
20 |
-
array( 'wp-blocks', 'wp-element', 'wp-components', 'wp-editor', 'wp-api-request' ), $mlwQuizMasterNext->version, true );
|
21 |
// Register our block, and explicitly define the attributes we accept.
|
22 |
register_block_type( 'qsm/main-block', array(
|
23 |
'attributes' => array(
|
12 |
* Register our block.
|
13 |
*/
|
14 |
function qsm_block_init() {
|
15 |
+
global $wp_version, $mlwQuizMasterNext;
|
16 |
+
|
17 |
+
$dependencies = array( 'wp-blocks', 'wp-element', 'wp-components', 'wp-editor', 'wp-api-request' );
|
18 |
+
if ( version_compare( $wp_version, '5.3', '>=' ) ) {
|
19 |
+
$dependencies = array_merge( $dependencies, array( 'wp-block-editor', 'wp-server-side-render' ) );
|
20 |
+
}
|
21 |
+
|
22 |
// Register our block editor script.
|
23 |
+
wp_register_script( 'qsm-quiz-block', plugins_url( 'block.js', __FILE__ ), $dependencies, $mlwQuizMasterNext->version, true );
|
24 |
+
|
|
|
|
|
25 |
// Register our block, and explicitly define the attributes we accept.
|
26 |
register_block_type( 'qsm/main-block', array(
|
27 |
'attributes' => array(
|
css/admin-dashboard-rtl.css
CHANGED
@@ -901,6 +901,10 @@ h2.hndle.ui-sortable-handle {
|
|
901 |
transition: all 0.5s ease !important;
|
902 |
}
|
903 |
|
|
|
|
|
|
|
|
|
904 |
#select_themes #qsm-theme-screenshot:after {
|
905 |
content: "";
|
906 |
display: block;
|
901 |
transition: all 0.5s ease !important;
|
902 |
}
|
903 |
|
904 |
+
#select_themes .theme.active .theme-screenshot {
|
905 |
+
border: 1px solid #1d2327;
|
906 |
+
}
|
907 |
+
|
908 |
#select_themes #qsm-theme-screenshot:after {
|
909 |
content: "";
|
910 |
display: block;
|
css/admin-dashboard.css
CHANGED
@@ -74,6 +74,15 @@
|
|
74 |
align-items: center;
|
75 |
}
|
76 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
.popover-count {
|
78 |
top: -2px !important;
|
79 |
right: unset!important;
|
@@ -891,6 +900,10 @@ h2.hndle.ui-sortable-handle {
|
|
891 |
transition: all 0.5s ease !important;
|
892 |
}
|
893 |
|
|
|
|
|
|
|
|
|
894 |
#select_themes #qsm-theme-screenshot:after {
|
895 |
content: "";
|
896 |
display: block;
|
74 |
align-items: center;
|
75 |
}
|
76 |
|
77 |
+
.qsm-create-btn-div{
|
78 |
+
cursor:not-allowed;
|
79 |
+
}
|
80 |
+
|
81 |
+
.qsm-add-role{
|
82 |
+
opacity:0.6;
|
83 |
+
pointer-events: none !important;
|
84 |
+
}
|
85 |
+
|
86 |
.popover-count {
|
87 |
top: -2px !important;
|
88 |
right: unset!important;
|
900 |
transition: all 0.5s ease !important;
|
901 |
}
|
902 |
|
903 |
+
#select_themes .theme.active .theme-screenshot {
|
904 |
+
border: 1px solid #1d2327;
|
905 |
+
}
|
906 |
+
|
907 |
#select_themes #qsm-theme-screenshot:after {
|
908 |
content: "";
|
909 |
display: block;
|
data/parsing_script.json
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"change_log":[""," Bug: Fixed issue with random question and answers\n"," Bug: Fixed issue with quiz timer\n"," Bug: Fixed issue with file size limit\n"," Bug: Fixed security and Vulnerability issues.\n"," Enhancement: Improved UI for required fields validation message\n"," Enhancement: Improved UI in polar question\n"," Enhancement: Improved UI in Opt-in question"],"products":[{"name":"Companion","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/companion_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=505248"},{"name":"Serene","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/serene_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=503010"},{"name":"Care Pack","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/3.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452861"},{"name":"Speed Improvement","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452858"}],"new_addons":[{"name":"Companion","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/companion_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=505248","price":{"amount":"0.00"},"description":""},{"name":"Serene","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/serene_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=503010","price":{"amount":"0.00"},"description":""},{"name":"Care Pack","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/3.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452861","price":{"amount":"99.00"},"description":""},{"name":"Speed Improvement","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452858","price":{"amount":"199.00"},"description":""},{"name":"Plugin Configuration","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452658","price":{"amount":"49.00"},"description":""},{"name":"Advanced Question Types","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/01\/x-2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=429053","price":{"personal1site":"39.00","business2-5sites":"59.00","developerunlimitedsites":"79.00"},"description":""},{"name":"Pro Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Pro.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306210","price":{"yearly":"199.00","lifetime":"597.00"},"description":"All QSM Addons in one single and affordable package. Over 34 addons are included in this package and new addons are added automatically. Save over $1600 by buying our bundle."},{"name":"Plus Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/PLUS.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306190","price":{"yearly":"179.00","lifetime":"537.00"},"description":"14+ addons to add useful features to your quiz and surveys. "},{"name":"Basic Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Basic-1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=305426","price":{"yearly":"129.00","lifetime":"387.00"},"description":"All the right addons to get you started with QSM premium features. "},{"name":"Pool","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Poolv2-1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=302299","price":{"1site":"19.00","2-5sites":"24.00","unlimited":"49.00"},"description":""}],"blog_post":[{"link":"https:\/\/quizandsurveymaster.com\/why-qsm-is-best-survey-maker-plugin\/","title":"Why Quiz and Survey Master is the Best Survey Maker Plugin? (5 Benefits!)","excerpt":"<p>The number of online quiz creators grows by the minute, and to be honest, we’re all here for it! Nonetheless, there are a few form builders who are leading the way, with only one remaining the best. Today’s blog will discuss Quiz and Survey Master, the Best Survey Maker Plugin. If you have heard of […]<\/p>\n"},{"link":"https:\/\/quizandsurveymaster.com\/importance-of-mathematics-quiz-competition\/","title":"Importance of Fun Mathematics Quiz Competition in School? (5 minutes read)","excerpt":"<p>The importance of Mathematics Quiz Competition in school is being uncovered only recently as education switched to online mode during the Pandemic. Since it became difficult to carry out conventional pen-and-paper tests, the MCQ-type tests became a good switch for teachers as well the students. Earlier people used to dread the thought of maths quizzes […]<\/p>\n"}],"popular_products":[{"name":"Google Sheet Connector","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/03\/first-1.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=83375","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimited":"59.00"},"description":"Sync your surveys with Google Sheets. "},{"name":"Paypal and Stripe Payment Integration","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Paypal-and-Stripe-Payment-Integration.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=63522","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimitedsites":"59.00"},"description":"Add payment wall for quiz and surveys using this addon. Integrate Paypal or Stripe and start receiving payments. "},{"name":"Save & Resume","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Save-and-Resume.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=63518","price":{"personal1site":"19.00","business2-5sites":"29.00","developerunlimitedsites":"49.00"},"description":"Enable save and resume functionality in your quiz. Users can now close and come back to a quiz anytime! "},{"name":"Simple Popups","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Simple-Popups.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=38572","price":{"personal1site":"35.00","business2-5sites":"56.00","developerunlimitedsites":"87.00"},"description":"Have you ever wanted to have your quiz or survey inside of a popup? With this easy to use addon, now you can!"},{"name":"Google Analytics Tracking","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Google-Analytics-Tracking.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=34421","price":{"personal1site":"35.00","business2-5sites":"56.00","developerunlimited":"87.00"},"description":"Track your quiz and survey submissions in Google Analytics."},{"name":"Logic","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Logic.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=8071","price":{"personal1site":"49.00","business2-5sites":"59.00","developerunlimitedsites":"99.00"},"description":"Create Advanced Quizzes by adding Logic and Conditional Branching to your Quizzes and Surveys. Adds Unlimited Additional Conditons."},{"name":"Reporting & Analysis","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Reporting-And-Analysis.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=3437","price":{"personal1site":"39.00","business2-5sites":"59.00","developerunlimitedsites":"99.00"},"description":"Analyze your results by visualizing the data in a variety of different graphs, filter the data, and export the data."},{"name":"Zapier Integration","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Zapier-Integration.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=2809","price":{"personal1site":"35.00","business2-5sites":"56.00","developerunlimitedsites":"87.00"},"description":"With Zapier Integration, Quiz And Survey Master can sends results to over 700 different websites and services using Zapier."},{"name":"Export Results","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Export-Results.jpg","link":"https:\/\/quizandsurveymaster.com\/downloads\/export-results\/","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimitedsites":"59.00"},"description":"This add-on gives you the ability to export your quiz results as a CSV file which can be imported into spreadsheet programs such as Excel and Google Sheets."},{"name":"User Dashboard","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/User-Dashboard.jpg","link":"https:\/\/quizandsurveymaster.com\/downloads\/user-dashboard\/","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimitedsites":"59.00"},"description":"This add-on gives you the ability to set up a page where users can review their results from all the quizzes they have taken."}],"on_sale_products":[{"name":"Google Sheet Connector","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/03\/first-1.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=83375","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimited":"59.00"},"description":"Sync your surveys with Google Sheets. "}],"bundles":[{"name":"Pro Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Pro.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306210","price":{"yearly":"199.00","lifetime":"597.00"},"desc":"All QSM Addons in one single and affordable package. Over 34 addons are included in this package and new addons are added automatically. Save over $1600 by buying our bundle.","icon":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/PRO.png"},{"name":"Plus Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/PLUS.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306190","price":{"yearly":"179.00","lifetime":"537.00"},"desc":"14+ addons to add useful features to your quiz and surveys. ","icon":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Plus.png"},{"name":"Basic Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Basic-1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=305426","price":{"yearly":"129.00","lifetime":"387.00"},"desc":"All the right addons to get you started with QSM premium features. ","icon":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Basic.png"}],"themes":[{"name":"Pool","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-pool.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=302299","price":{"1site":"19.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/ivory-qsm-theme-demo"},{"name":"Ivory","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-ivory.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=302297","price":{"1site":"14.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/ivory-qsm-theme-demo"},{"name":"Fragrance","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-fragrance.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=300658","price":{"1site":"14.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/fragrance-qsm-theme-demo"},{"name":"Breeze","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-breeze.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=300513","price":{"1site":"24.00","2-5sites":"39.00","unlimited":"44.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/breeze-qsm-theme-demo"}]}
|
1 |
+
{"change_log":[""," Feature: Added option to search by quiz in question bank\n"," Feature: Added option to set image size in email template\n"," Bug: Fixed timer issue with multiple quiz shortcodes\n"," Bug: Fixed issue with german and french language questions\n"," Enhancement: Added alert for non active question types\n"," Enhancement: Improved UI in text tabs"],"products":[{"name":"Companion","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/companion_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=505248"},{"name":"Serene","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/serene_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=503010"},{"name":"Care Pack","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/3.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452861"},{"name":"Speed Improvement","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452858"}],"new_addons":[{"name":"Fortune","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/12\/Fortune-v1v2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=547794","price":{"1site":"19.00","2-5sites":"24.00","unlimited":"49.00"},"description":""},{"name":"Companion","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/companion_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=505248","price":{"amount":"0.00"},"description":""},{"name":"Serene","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/06\/serene_banner.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=503010","price":{"amount":"0.00"},"description":""},{"name":"Care Pack","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/3.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452861","price":{"amount":"99.00"},"description":""},{"name":"Speed Improvement","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452858","price":{"amount":"199.00"},"description":""},{"name":"Plugin Configuration","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/03\/1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=452658","price":{"amount":"49.00"},"description":""},{"name":"Advanced Question Types","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/01\/x-2.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=429053","price":{"personal1site":"39.00","business2-5sites":"59.00","developerunlimitedsites":"79.00"},"description":""},{"name":"Pro Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Pro.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306210","price":{"yearly":"199.00","lifetime":"597.00"},"description":"All QSM Addons in one single and affordable package. Over 34 addons are included in this package and new addons are added automatically. Save over $1600 by buying our bundle."},{"name":"Plus Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/PLUS.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306190","price":{"yearly":"179.00","lifetime":"537.00"},"description":"14+ addons to add useful features to your quiz and surveys. "},{"name":"Basic Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Basic-1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=305426","price":{"yearly":"129.00","lifetime":"387.00"},"description":"All the right addons to get you started with QSM premium features. "}],"blog_post":[{"link":"https:\/\/quizandsurveymaster.com\/install-wordpress-on-sandbox\/","title":"How To Install WordPress On Sandbox: The Easiest Step-By-Step Guide","excerpt":"<p>Find out how to install WordPress on Sandbox for free and play around with ideas without having to deal with real-world consequences.<\/p>\n"},{"link":"https:\/\/quizandsurveymaster.com\/best-survey-plugins-for-user-feedback\/","title":"17 Best Survey Plugins for User Feedback and Data Collection","excerpt":"<p>When it comes to creating surveys, the idea is to make something fun that actually hits the mark by solving the purpose. Finding out the best survey plugins could be a bump in the road. But we got your back! Today we will be learning about some of the best survey plugins for user feedback […]<\/p>\n"}],"popular_products":[{"name":"Google Sheet Connector","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/03\/first-1.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=83375","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimited":"59.00"},"description":"Sync your surveys with Google Sheets. "},{"name":"Paypal and Stripe Payment Integration","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Paypal-and-Stripe-Payment-Integration.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=63522","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimitedsites":"59.00"},"description":"Add payment wall for quiz and surveys using this addon. Integrate Paypal or Stripe and start receiving payments. "},{"name":"Save & Resume","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Save-and-Resume.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=63518","price":{"personal1site":"19.00","business2-5sites":"29.00","developerunlimitedsites":"49.00"},"description":"Enable save and resume functionality in your quiz. Users can now close and come back to a quiz anytime! "},{"name":"Simple Popups","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Simple-Popups.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=38572","price":{"personal1site":"35.00","business2-5sites":"56.00","developerunlimitedsites":"87.00"},"description":"Have you ever wanted to have your quiz or survey inside of a popup? With this easy to use addon, now you can!"},{"name":"Google Analytics Tracking","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Google-Analytics-Tracking.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=34421","price":{"personal1site":"35.00","business2-5sites":"56.00","developerunlimited":"87.00"},"description":"Track your quiz and survey submissions in Google Analytics."},{"name":"Logic","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Logic.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=8071","price":{"personal1site":"49.00","business2-5sites":"59.00","developerunlimitedsites":"99.00"},"description":"Create Advanced Quizzes by adding Logic and Conditional Branching to your Quizzes and Surveys. Adds Unlimited Additional Conditons."},{"name":"Reporting & Analysis","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Reporting-And-Analysis.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=3437","price":{"personal1site":"39.00","business2-5sites":"59.00","developerunlimitedsites":"99.00"},"description":"Analyze your results by visualizing the data in a variety of different graphs, filter the data, and export the data."},{"name":"Zapier Integration","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Zapier-Integration.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=2809","price":{"personal1site":"35.00","business2-5sites":"56.00","developerunlimitedsites":"87.00"},"description":"With Zapier Integration, Quiz And Survey Master can sends results to over 700 different websites and services using Zapier."},{"name":"Export Results","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/Export-Results.jpg","link":"https:\/\/quizandsurveymaster.com\/downloads\/export-results\/","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimitedsites":"59.00"},"description":"This add-on gives you the ability to export your quiz results as a CSV file which can be imported into spreadsheet programs such as Excel and Google Sheets."},{"name":"User Dashboard","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/04\/User-Dashboard.jpg","link":"https:\/\/quizandsurveymaster.com\/downloads\/user-dashboard\/","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimitedsites":"59.00"},"description":"This add-on gives you the ability to set up a page where users can review their results from all the quizzes they have taken."}],"on_sale_products":[{"name":"Google Sheet Connector","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2020\/03\/first-1.jpg","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=83375","price":{"personal1site":"29.00","business2-5sites":"39.00","developerunlimited":"59.00"},"description":"Sync your surveys with Google Sheets. "}],"bundles":[{"name":"Pro Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Pro.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306210","price":{"yearly":"199.00","lifetime":"597.00"},"desc":"All QSM Addons in one single and affordable package. Over 34 addons are included in this package and new addons are added automatically. Save over $1600 by buying our bundle.","icon":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/PRO.png"},{"name":"Plus Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/PLUS.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=306190","price":{"yearly":"179.00","lifetime":"537.00"},"desc":"14+ addons to add useful features to your quiz and surveys. ","icon":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Plus.png"},{"name":"Basic Bundle","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Basic-1.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=305426","price":{"yearly":"129.00","lifetime":"387.00"},"desc":"All the right addons to get you started with QSM premium features. ","icon":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/Basic.png"}],"themes":[{"name":"Fortune","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2022\/12\/forune-thumbnail.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=547794","price":{"1site":"19.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/fortune"},{"name":"Pool","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-pool.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=302299","price":{"1site":"19.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/ivory-qsm-theme-demo"},{"name":"Ivory","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-ivory.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=302297","price":{"1site":"14.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/ivory-qsm-theme-demo"},{"name":"Fragrance","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-fragrance.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=300658","price":{"1site":"14.00","2-5sites":"24.00","unlimited":"49.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/fragrance-qsm-theme-demo"},{"name":"Breeze","img":"https:\/\/quizandsurveymaster.com\/wp-content\/uploads\/edd\/2021\/06\/theme-breeze.png","link":"https:\/\/quizandsurveymaster.com\/?post_type=download&p=300513","price":{"1site":"24.00","2-5sites":"39.00","unlimited":"44.00"},"description":"","demo":"https:\/\/themes.quizandsurveymaster.com\/breeze-qsm-theme-demo"}]}
|
js/qsm-quiz.js
CHANGED
@@ -419,7 +419,7 @@ var qsmTimerInterval = [];
|
|
419 |
}).animate({
|
420 |
Counter: new_text
|
421 |
}, {
|
422 |
-
duration:
|
423 |
easing: 'swing',
|
424 |
step: function () {
|
425 |
jQuery('#quizForm' + quizID).find('.progressbar-text').text(Math.round(this.Counter) + ' %');
|
@@ -783,7 +783,7 @@ function qmnValidation(element, quiz_form_id) {
|
|
783 |
var error_messages = qmn_quiz_data[quiz_id].error_messages;
|
784 |
qmnResetError(quiz_form_id);
|
785 |
jQuery(element).each(function () {
|
786 |
-
if (jQuery(this).attr('class')) {
|
787 |
if (jQuery(this).attr('class').indexOf('mlwEmail') !== -1 && this.value !== "") {
|
788 |
// Remove any trailing and preceeding space.
|
789 |
var x = jQuery.trim(this.value);
|
@@ -1529,6 +1529,7 @@ jQuery(function () {
|
|
1529 |
var question_id = $this.parent('.quiz_section').find('.mlw_file_upload_media_id').attr("name").replace('question', '');
|
1530 |
form_data.append('question_id', question_id);
|
1531 |
$this.next('.loading-uploaded-file').show();
|
|
|
1532 |
jQuery.ajax({
|
1533 |
url: qmn_ajax_object.ajaxurl,
|
1534 |
type: 'POST',
|
@@ -1539,6 +1540,7 @@ jQuery(function () {
|
|
1539 |
success: function (response) {
|
1540 |
var obj = jQuery.parseJSON(response);
|
1541 |
$this.next('.loading-uploaded-file').hide();
|
|
|
1542 |
if (obj.type == 'success') {
|
1543 |
$this.next().next('.remove-uploaded-file').show();
|
1544 |
$this.parent('.quiz_section').find('.mlw_file_upload_hidden_path').val(obj.file_path);
|
419 |
}).animate({
|
420 |
Counter: new_text
|
421 |
}, {
|
422 |
+
duration: 1000,
|
423 |
easing: 'swing',
|
424 |
step: function () {
|
425 |
jQuery('#quizForm' + quizID).find('.progressbar-text').text(Math.round(this.Counter) + ' %');
|
783 |
var error_messages = qmn_quiz_data[quiz_id].error_messages;
|
784 |
qmnResetError(quiz_form_id);
|
785 |
jQuery(element).each(function () {
|
786 |
+
if ( jQuery(this).attr('class') && jQuery(this).is(':visible') ) {
|
787 |
if (jQuery(this).attr('class').indexOf('mlwEmail') !== -1 && this.value !== "") {
|
788 |
// Remove any trailing and preceeding space.
|
789 |
var x = jQuery.trim(this.value);
|
1529 |
var question_id = $this.parent('.quiz_section').find('.mlw_file_upload_media_id').attr("name").replace('question', '');
|
1530 |
form_data.append('question_id', question_id);
|
1531 |
$this.next('.loading-uploaded-file').show();
|
1532 |
+
jQuery(".qsm-submit-btn").attr('disabled', true);
|
1533 |
jQuery.ajax({
|
1534 |
url: qmn_ajax_object.ajaxurl,
|
1535 |
type: 'POST',
|
1540 |
success: function (response) {
|
1541 |
var obj = jQuery.parseJSON(response);
|
1542 |
$this.next('.loading-uploaded-file').hide();
|
1543 |
+
jQuery(".qsm-submit-btn").attr('disabled', false);
|
1544 |
if (obj.type == 'success') {
|
1545 |
$this.next().next('.remove-uploaded-file').show();
|
1546 |
$this.parent('.quiz_section').find('.mlw_file_upload_hidden_path').val(obj.file_path);
|
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: 8.0.
|
6 |
* Author: ExpressTech
|
7 |
* Author URI: https://quizandsurveymaster.com/
|
8 |
* Plugin URI: https://expresstech.io/
|
@@ -43,7 +43,7 @@ class MLWQuizMasterNext {
|
|
43 |
* @var string
|
44 |
* @since 4.0.0
|
45 |
*/
|
46 |
-
public $version = '8.0.
|
47 |
|
48 |
/**
|
49 |
* QSM Alert Manager Object
|
@@ -573,6 +573,17 @@ class MLWQuizMasterNext {
|
|
573 |
global $qsm_quiz_list_page;
|
574 |
$enabled = get_option( 'qsm_multiple_category_enabled' );
|
575 |
$menu_position = self::get_free_menu_position(26.1, 0.3);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
576 |
$qsm_dashboard_page = add_menu_page( 'Quiz And Survey Master', __( 'QSM', 'quiz-master-next' ), 'edit_posts', 'qsm_dashboard', 'qsm_generate_dashboard_page', 'dashicons-feedback', $menu_position );
|
577 |
add_submenu_page( 'qsm_dashboard', __( 'Dashboard', 'quiz-master-next' ), __( 'Dashboard', 'quiz-master-next' ), 'edit_posts', 'qsm_dashboard', 'qsm_generate_dashboard_page', 0 );
|
578 |
if ( $enabled && 'cancelled' !== $enabled ) {
|
2 |
/**
|
3 |
* Plugin Name: Quiz And Survey Master
|
4 |
* Description: Easily and quickly add quizzes and surveys to your website.
|
5 |
+
* Version: 8.0.7
|
6 |
* Author: ExpressTech
|
7 |
* Author URI: https://quizandsurveymaster.com/
|
8 |
* Plugin URI: https://expresstech.io/
|
43 |
* @var string
|
44 |
* @since 4.0.0
|
45 |
*/
|
46 |
+
public $version = '8.0.7';
|
47 |
|
48 |
/**
|
49 |
* QSM Alert Manager Object
|
573 |
global $qsm_quiz_list_page;
|
574 |
$enabled = get_option( 'qsm_multiple_category_enabled' );
|
575 |
$menu_position = self::get_free_menu_position(26.1, 0.3);
|
576 |
+
if ( ! class_exists('QSM_User_Role') ) {
|
577 |
+
$user = wp_get_current_user();
|
578 |
+
if ( in_array( 'subscriber', (array) $user->roles, true ) ) {
|
579 |
+
$role_capabilities = get_role( 'subscriber' );
|
580 |
+
$role_capabilities->remove_cap('edit_posts');
|
581 |
+
$role_capabilities->remove_cap('moderate_comments');
|
582 |
+
}
|
583 |
+
}
|
584 |
+
else {
|
585 |
+
apply_filters('qsm_user_role_menu_for_subcriber',true);
|
586 |
+
}
|
587 |
$qsm_dashboard_page = add_menu_page( 'Quiz And Survey Master', __( 'QSM', 'quiz-master-next' ), 'edit_posts', 'qsm_dashboard', 'qsm_generate_dashboard_page', 'dashicons-feedback', $menu_position );
|
588 |
add_submenu_page( 'qsm_dashboard', __( 'Dashboard', 'quiz-master-next' ), __( 'Dashboard', 'quiz-master-next' ), 'edit_posts', 'qsm_dashboard', 'qsm_generate_dashboard_page', 0 );
|
589 |
if ( $enabled && 'cancelled' !== $enabled ) {
|
php/admin/admin-dashboard.php
CHANGED
@@ -122,10 +122,23 @@ function qsm_generate_dashboard_page() {
|
|
122 |
<div class="welcome-panel-column-container">
|
123 |
<div class="welcome-panel-column">
|
124 |
<h3><?php esc_html_e( 'Get Started', 'quiz-master-next' ); ?></h3>
|
125 |
-
|
126 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
127 |
<p class="hide-if-no-customize">
|
128 |
-
or, <a href="edit.php?post_type=qsm_quiz"><?php esc_html_e( '
|
129 |
</p>
|
130 |
</div>
|
131 |
<div class="welcome-panel-column">
|
@@ -599,15 +612,17 @@ function qsm_create_new_quiz_from_wizard() {
|
|
599 |
* Prepare Quiz Options.
|
600 |
*/
|
601 |
$quiz_options = array(
|
602 |
-
'quiz_name'
|
603 |
-
'quiz_featured_image'
|
604 |
-
'form_type'
|
605 |
-
'system'
|
606 |
-
'timer_limit'
|
607 |
-
'pagination'
|
608 |
-
'
|
609 |
-
'
|
610 |
-
'
|
|
|
|
|
611 |
);
|
612 |
$get_saved_value = QMNGlobalSettingsPage::get_global_quiz_settings();
|
613 |
if ( ! empty( $get_saved_value ) && is_array( $get_saved_value ) ) {
|
122 |
<div class="welcome-panel-column-container">
|
123 |
<div class="welcome-panel-column">
|
124 |
<h3><?php esc_html_e( 'Get Started', 'quiz-master-next' ); ?></h3>
|
125 |
+
<?php
|
126 |
+
$classname = "";
|
127 |
+
$classname = apply_filters( 'qsm_create_quiz_after', $classname);
|
128 |
+
$classes = explode(",",$classname);
|
129 |
+
$classesname1 = "";
|
130 |
+
if ( isset($classes[0]) ) {
|
131 |
+
$classesname1 = $classes[0];
|
132 |
+
}
|
133 |
+
$classesname2 = "";
|
134 |
+
if ( isset($classes[1]) ) {
|
135 |
+
$classesname2 = $classes[1];
|
136 |
+
}
|
137 |
+
?>
|
138 |
+
<div class="<?php echo esc_attr( $classesname1 );?>"><a class="button button-primary button-hero load-quiz-wizard hide-if-no-customize <?php echo esc_attr( $classesname2 );?>"
|
139 |
+
href="javascript:void(0)"><?php esc_html_e( 'Create New Quiz/Survey', 'quiz-master-next' )?></a></div>
|
140 |
<p class="hide-if-no-customize">
|
141 |
+
or, <a href="edit.php?post_type=qsm_quiz"><?php esc_html_e( 'View all quizzes', 'quiz-master-next' )?></a>
|
142 |
</p>
|
143 |
</div>
|
144 |
<div class="welcome-panel-column">
|
612 |
* Prepare Quiz Options.
|
613 |
*/
|
614 |
$quiz_options = array(
|
615 |
+
'quiz_name' => $quiz_name,
|
616 |
+
'quiz_featured_image' => isset( $_POST['quiz_featured_image'] ) ? esc_url_raw( wp_unslash( $_POST['quiz_featured_image'] ) ) : '',
|
617 |
+
'form_type' => isset( $_POST['form_type'] ) ? sanitize_text_field( wp_unslash( $_POST['form_type'] ) ) : '',
|
618 |
+
'system' => isset( $_POST['system'] ) ? sanitize_text_field( wp_unslash( $_POST['system'] ) ) : '',
|
619 |
+
'timer_limit' => isset( $_POST['timer_limit'] ) ? sanitize_text_field( wp_unslash( $_POST['timer_limit'] ) ) : '',
|
620 |
+
'pagination' => isset( $_POST['pagination'] ) ? sanitize_text_field( wp_unslash( $_POST['pagination'] ) ) : '',
|
621 |
+
'enable_pagination_quiz' => isset( $_POST['enable_pagination_quiz'] ) ? sanitize_text_field( wp_unslash( $_POST['enable_pagination_quiz'] ) ) : 0,
|
622 |
+
'progress_bar' => isset( $_POST['progress_bar'] ) ? sanitize_text_field( wp_unslash( $_POST['progress_bar'] ) ) : 0,
|
623 |
+
'require_log_in' => isset( $_POST['require_log_in'] ) ? sanitize_text_field( wp_unslash( $_POST['require_log_in'] ) ) : '',
|
624 |
+
'disable_first_page' => isset( $_POST['disable_first_page'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_first_page'] ) ) : '',
|
625 |
+
'comment_section' => isset( $_POST['comment_section'] ) ? sanitize_text_field( wp_unslash( $_POST['comment_section'] ) ) : 1,
|
626 |
);
|
627 |
$get_saved_value = QMNGlobalSettingsPage::get_global_quiz_settings();
|
628 |
if ( ! empty( $get_saved_value ) && is_array( $get_saved_value ) ) {
|
php/admin/admin-results-page.php
CHANGED
@@ -197,6 +197,7 @@ function qsm_results_overview_tab_content() {
|
|
197 |
} else {
|
198 |
$mlw_quiz_data = $wpdb->get_results( stripslashes( $wpdb->prepare( "SELECT * FROM {$wpdb->prefix}mlw_results WHERE $delete $search_phrase_sql $order_by_sql LIMIT %d, %d", $result_begin, $table_limit ) ) );
|
199 |
}
|
|
|
200 |
?>
|
201 |
<div class="tablenav top">
|
202 |
<div class="alignleft actions bulkactions">
|
197 |
} else {
|
198 |
$mlw_quiz_data = $wpdb->get_results( stripslashes( $wpdb->prepare( "SELECT * FROM {$wpdb->prefix}mlw_results WHERE $delete $search_phrase_sql $order_by_sql LIMIT %d, %d", $result_begin, $table_limit ) ) );
|
199 |
}
|
200 |
+
apply_filters('qsm_user_role_permission_page_view_results',true);
|
201 |
?>
|
202 |
<div class="tablenav top">
|
203 |
<div class="alignleft actions bulkactions">
|
php/admin/functions.php
CHANGED
@@ -674,15 +674,15 @@ function qsm_create_new_quiz_wizard() {
|
|
674 |
$all_settings = $mlwQuizMasterNext->quiz_settings->load_setting_fields( 'quiz_options' );
|
675 |
global $globalQuizsetting;
|
676 |
$quiz_setting_option = array(
|
677 |
-
'form_type'
|
678 |
'option_name' => __( 'Form Type', 'quiz-master-next' ),
|
679 |
'value' => $globalQuizsetting['form_type'],
|
680 |
),
|
681 |
-
'system'
|
682 |
'option_name' => __( 'Grading System', 'quiz-master-next' ),
|
683 |
'value' => $globalQuizsetting['system'],
|
684 |
),
|
685 |
-
'enable_contact_form'
|
686 |
'option_name' => __( 'Enable Contact Form', 'quiz-master-next' ),
|
687 |
'value' => 0,
|
688 |
'options' => array(
|
@@ -696,23 +696,31 @@ function qsm_create_new_quiz_wizard() {
|
|
696 |
),
|
697 |
),
|
698 |
),
|
699 |
-
'timer_limit'
|
700 |
'option_name' => __( 'Time Limit (in Minute)', 'quiz-master-next' ),
|
701 |
'value' => $globalQuizsetting['timer_limit'],
|
702 |
),
|
703 |
-
'pagination'
|
704 |
'option_name' => __( 'Questions Per Page', 'quiz-master-next' ),
|
705 |
'value' => $globalQuizsetting['pagination'],
|
706 |
),
|
707 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
708 |
'option_name' => __( 'Require User Login', 'quiz-master-next' ),
|
709 |
'value' => $globalQuizsetting['require_log_in'],
|
710 |
),
|
711 |
-
'disable_first_page'
|
712 |
'option_name' => __( 'Disable first page on quiz', 'quiz-master-next' ),
|
713 |
'value' => $globalQuizsetting['disable_first_page'],
|
714 |
),
|
715 |
-
'comment_section'
|
716 |
'option_name' => __( 'Enable Comment box', 'quiz-master-next' ),
|
717 |
'value' => $globalQuizsetting['comment_section'],
|
718 |
),
|
@@ -1032,7 +1040,7 @@ function qsm_get_default_wizard_themes() {
|
|
1032 |
global $themes_data;
|
1033 |
global $pro_themes;
|
1034 |
$installed_themes = $mlwQuizMasterNext->theme_settings->get_installed_themes();
|
1035 |
-
$default_themes = array( '
|
1036 |
$default_themes_data = array();
|
1037 |
$keys_to_unset = array();
|
1038 |
if ( ! empty( $themes_data ) ) {
|
@@ -1058,7 +1066,6 @@ function qsm_get_default_wizard_themes() {
|
|
1058 |
}
|
1059 |
}
|
1060 |
}
|
1061 |
-
|
1062 |
$keys_to_unset = array_unique( $keys_to_unset );
|
1063 |
rsort( $keys_to_unset );
|
1064 |
foreach ( $keys_to_unset as $key ) {
|
674 |
$all_settings = $mlwQuizMasterNext->quiz_settings->load_setting_fields( 'quiz_options' );
|
675 |
global $globalQuizsetting;
|
676 |
$quiz_setting_option = array(
|
677 |
+
'form_type' => array(
|
678 |
'option_name' => __( 'Form Type', 'quiz-master-next' ),
|
679 |
'value' => $globalQuizsetting['form_type'],
|
680 |
),
|
681 |
+
'system' => array(
|
682 |
'option_name' => __( 'Grading System', 'quiz-master-next' ),
|
683 |
'value' => $globalQuizsetting['system'],
|
684 |
),
|
685 |
+
'enable_contact_form' => array(
|
686 |
'option_name' => __( 'Enable Contact Form', 'quiz-master-next' ),
|
687 |
'value' => 0,
|
688 |
'options' => array(
|
696 |
),
|
697 |
),
|
698 |
),
|
699 |
+
'timer_limit' => array(
|
700 |
'option_name' => __( 'Time Limit (in Minute)', 'quiz-master-next' ),
|
701 |
'value' => $globalQuizsetting['timer_limit'],
|
702 |
),
|
703 |
+
'pagination' => array(
|
704 |
'option_name' => __( 'Questions Per Page', 'quiz-master-next' ),
|
705 |
'value' => $globalQuizsetting['pagination'],
|
706 |
),
|
707 |
+
'enable_pagination_quiz' => array(
|
708 |
+
'option_name' => __( 'Show current page number', 'quiz-master-next' ),
|
709 |
+
'value' => $globalQuizsetting['enable_pagination_quiz'],
|
710 |
+
),
|
711 |
+
'progress_bar' => array(
|
712 |
+
'option_name' => __( 'Show progress bar', 'quiz-master-next' ),
|
713 |
+
'value' => $globalQuizsetting['enable_pagination_quiz'],
|
714 |
+
),
|
715 |
+
'require_log_in' => array(
|
716 |
'option_name' => __( 'Require User Login', 'quiz-master-next' ),
|
717 |
'value' => $globalQuizsetting['require_log_in'],
|
718 |
),
|
719 |
+
'disable_first_page' => array(
|
720 |
'option_name' => __( 'Disable first page on quiz', 'quiz-master-next' ),
|
721 |
'value' => $globalQuizsetting['disable_first_page'],
|
722 |
),
|
723 |
+
'comment_section' => array(
|
724 |
'option_name' => __( 'Enable Comment box', 'quiz-master-next' ),
|
725 |
'value' => $globalQuizsetting['comment_section'],
|
726 |
),
|
1040 |
global $themes_data;
|
1041 |
global $pro_themes;
|
1042 |
$installed_themes = $mlwQuizMasterNext->theme_settings->get_installed_themes();
|
1043 |
+
$default_themes = array( 'Fortune', 'Sigma', 'Pixel', 'Sapience', 'Breeze', 'Fragrance', 'Pool', 'Ivory', 'Companion', 'Serene' );
|
1044 |
$default_themes_data = array();
|
1045 |
$keys_to_unset = array();
|
1046 |
if ( ! empty( $themes_data ) ) {
|
1066 |
}
|
1067 |
}
|
1068 |
}
|
|
|
1069 |
$keys_to_unset = array_unique( $keys_to_unset );
|
1070 |
rsort( $keys_to_unset );
|
1071 |
foreach ( $keys_to_unset as $key ) {
|
php/admin/quiz-options-page.php
CHANGED
@@ -23,8 +23,10 @@ function qsm_generate_quiz_options() {
|
|
23 |
}
|
24 |
global $wpdb;
|
25 |
global $mlwQuizMasterNext;
|
26 |
-
|
|
|
27 |
// Check user capability
|
|
|
28 |
$user = wp_get_current_user();
|
29 |
if ( in_array( 'author', (array) $user->roles, true ) ) {
|
30 |
$user_id = sanitize_text_field( $user->ID );
|
@@ -34,6 +36,7 @@ function qsm_generate_quiz_options() {
|
|
34 |
wp_die( 'You are not allow to edit this quiz, You need higher permission!' );
|
35 |
}
|
36 |
}
|
|
|
37 |
|
38 |
$quiz_name = '';
|
39 |
|
23 |
}
|
24 |
global $wpdb;
|
25 |
global $mlwQuizMasterNext;
|
26 |
+
//user role addon is active
|
27 |
+
apply_filters('qsm_user_role_permission_page',true);
|
28 |
// Check user capability
|
29 |
+
if ( ! class_exists('QSM_User_Role') ) {
|
30 |
$user = wp_get_current_user();
|
31 |
if ( in_array( 'author', (array) $user->roles, true ) ) {
|
32 |
$user_id = sanitize_text_field( $user->ID );
|
36 |
wp_die( 'You are not allow to edit this quiz, You need higher permission!' );
|
37 |
}
|
38 |
}
|
39 |
+
}
|
40 |
|
41 |
$quiz_name = '';
|
42 |
|
php/admin/quizzes-page.php
CHANGED
@@ -185,8 +185,9 @@ if ( ! class_exists( 'QSMQuizList' ) ) {
|
|
185 |
'view_results' => '<a class="qsm-action-link" href="admin.php?page=mlw_quiz_results&quiz_id=' . esc_attr( $quiz_id ) . '">' . esc_html__( 'View Results', 'quiz-master-next' ) . '</a>',
|
186 |
'view' => '<a class="qsm-action-link" target="_blank" rel="noopener" href="' . esc_url( get_permalink( $post->ID ) ) . '">' . esc_html__( 'Preview', 'quiz-master-next' ) . '</a>',
|
187 |
);
|
188 |
-
|
189 |
-
|
|
|
190 |
return $actions;
|
191 |
}
|
192 |
|
@@ -300,8 +301,9 @@ if ( ! class_exists( 'QSMQuizList' ) ) {
|
|
300 |
?>
|
301 |
<div class="wrap qsm-quizes-page">
|
302 |
<h1>
|
303 |
-
<?php esc_html_e( 'Quizzes & Surveys', 'quiz-master-next' );
|
304 |
-
<a id="new_quiz_button" href="#" class="add-new-h2"
|
|
|
305 |
</h1>
|
306 |
<?php
|
307 |
if ( version_compare( PHP_VERSION, '5.4.0', '<' ) ) {
|
185 |
'view_results' => '<a class="qsm-action-link" href="admin.php?page=mlw_quiz_results&quiz_id=' . esc_attr( $quiz_id ) . '">' . esc_html__( 'View Results', 'quiz-master-next' ) . '</a>',
|
186 |
'view' => '<a class="qsm-action-link" target="_blank" rel="noopener" href="' . esc_url( get_permalink( $post->ID ) ) . '">' . esc_html__( 'Preview', 'quiz-master-next' ) . '</a>',
|
187 |
);
|
188 |
+
$actions = apply_filters( 'qsm_quiz_actions_after', $actions, $post );
|
189 |
+
}
|
190 |
+
}
|
191 |
return $actions;
|
192 |
}
|
193 |
|
301 |
?>
|
302 |
<div class="wrap qsm-quizes-page">
|
303 |
<h1>
|
304 |
+
<?php esc_html_e( 'Quizzes & Surveys', 'quiz-master-next' );
|
305 |
+
$add_button = '<a id="new_quiz_button" href="#" class="add-new-h2">'.esc_html__( 'Add New', 'quiz-master-next' ).'</a>';
|
306 |
+
echo apply_filters( 'qsm_add_quiz_after', $add_button ); ?>
|
307 |
</h1>
|
308 |
<?php
|
309 |
if ( version_compare( PHP_VERSION, '5.4.0', '<' ) ) {
|
php/admin/settings-page.php
CHANGED
@@ -113,6 +113,7 @@ class QMNGlobalSettingsPage {
|
|
113 |
'comment_section' => 1,
|
114 |
'question_numbering' => 0,
|
115 |
'show_optin' => 0,
|
|
|
116 |
'store_responses' => 1,
|
117 |
'send_email' => 1,
|
118 |
'disable_answer_onselect' => 0,
|
@@ -177,6 +178,7 @@ class QMNGlobalSettingsPage {
|
|
177 |
add_settings_field( 'enable-comments', __( 'Enable comments', 'quiz-master-next' ), array( $this, 'qsm_global_enable_comments' ), 'qsm_default_global_option_general', 'qmn-global-section' );
|
178 |
add_settings_field( 'show-question-numbers', __( 'Show question numbers', 'quiz-master-next' ), array( $this, 'qsm_global_show_question_numbers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
179 |
add_settings_field( 'show-opt-in-answers-default', __( 'Show Opt-in type Answers to user', 'quiz-master-next' ), array( $this, 'qsm_global_show_optin_answers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
|
|
180 |
add_settings_field( 'save-responses', __( 'Submit Actions', 'quiz-master-next' ), array( $this, 'qsm_global_save_responses' ), 'qsm_default_global_option_quiz_submission', 'qmn-global-section' );
|
181 |
add_settings_field( 'disable-change-of-answers', __( 'Disable change of answers', 'quiz-master-next' ), array( $this, 'qsm_global_disable_change_of_answers' ), 'qsm_default_global_option_quiz_submission', 'qmn-global-section' );
|
182 |
add_settings_field( 'add-class-for-correct-incorrect-answers', __( 'Add class for correct/incorrect answers', 'quiz-master-next' ), array( $this, 'qsm_global_add_class_for_correct_incorrect_answers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
@@ -1329,6 +1331,23 @@ class QMNGlobalSettingsPage {
|
|
1329 |
</fieldset>';
|
1330 |
}
|
1331 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1332 |
}
|
1333 |
|
1334 |
$qmnGlobalSettingsPage = new QMNGlobalSettingsPage();
|
113 |
'comment_section' => 1,
|
114 |
'question_numbering' => 0,
|
115 |
'show_optin' => 0,
|
116 |
+
'show_text_html' => 0,
|
117 |
'store_responses' => 1,
|
118 |
'send_email' => 1,
|
119 |
'disable_answer_onselect' => 0,
|
178 |
add_settings_field( 'enable-comments', __( 'Enable comments', 'quiz-master-next' ), array( $this, 'qsm_global_enable_comments' ), 'qsm_default_global_option_general', 'qmn-global-section' );
|
179 |
add_settings_field( 'show-question-numbers', __( 'Show question numbers', 'quiz-master-next' ), array( $this, 'qsm_global_show_question_numbers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
180 |
add_settings_field( 'show-opt-in-answers-default', __( 'Show Opt-in type Answers to user', 'quiz-master-next' ), array( $this, 'qsm_global_show_optin_answers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
181 |
+
add_settings_field( 'show-text-html-in-answers-default', __( 'Show Text/HTML type section in result page', 'quiz-master-next' ), array( $this, 'qsm_global_show_text_html_answers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
182 |
add_settings_field( 'save-responses', __( 'Submit Actions', 'quiz-master-next' ), array( $this, 'qsm_global_save_responses' ), 'qsm_default_global_option_quiz_submission', 'qmn-global-section' );
|
183 |
add_settings_field( 'disable-change-of-answers', __( 'Disable change of answers', 'quiz-master-next' ), array( $this, 'qsm_global_disable_change_of_answers' ), 'qsm_default_global_option_quiz_submission', 'qmn-global-section' );
|
184 |
add_settings_field( 'add-class-for-correct-incorrect-answers', __( 'Add class for correct/incorrect answers', 'quiz-master-next' ), array( $this, 'qsm_global_add_class_for_correct_incorrect_answers' ), 'qsm_default_global_option_display', 'qmn-global-section' );
|
1331 |
</fieldset>';
|
1332 |
}
|
1333 |
|
1334 |
+
/**
|
1335 |
+
* Generates quiz global field to check if want to show text html type answers to user
|
1336 |
+
*
|
1337 |
+
* @since 8.0.7
|
1338 |
+
* @return void
|
1339 |
+
*/
|
1340 |
+
public function qsm_global_show_text_html_answers() {
|
1341 |
+
global $globalQuizsetting;
|
1342 |
+
$qsm_question_show_text_html_default = ( isset( $globalQuizsetting['show_text_html'] ) && '' !== $globalQuizsetting['show_text_html'] ? $globalQuizsetting['show_text_html'] : '0' );
|
1343 |
+
echo '<fieldset class="buttonset buttonset-hide" >
|
1344 |
+
<input type="radio" id="show_text_html-1" name="qsm-quiz-settings[show_text_html]" value="1" ' . checked( $qsm_question_show_text_html_default, '1', false ) . '>
|
1345 |
+
<label for="show_text_html-1">Yes</label><br>
|
1346 |
+
<input type="radio" id="show_text_html-0" name="qsm-quiz-settings[show_text_html]" value="0" ' . checked( $qsm_question_show_text_html_default, '0', false ) . '>
|
1347 |
+
<label for="show_text_html-0">No</label><br>
|
1348 |
+
</fieldset>';
|
1349 |
+
}
|
1350 |
+
|
1351 |
}
|
1352 |
|
1353 |
$qmnGlobalSettingsPage = new QMNGlobalSettingsPage();
|
php/classes/class-qsm-install.php
CHANGED
@@ -487,6 +487,26 @@ class QSM_Install {
|
|
487 |
);
|
488 |
$mlwQuizMasterNext->pluginHelper->register_quiz_setting( $field_array, 'quiz_options' );
|
489 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
490 |
// Registers store_responses setting
|
491 |
$field_array = array(
|
492 |
'id' => 'store_responses',
|
487 |
);
|
488 |
$mlwQuizMasterNext->pluginHelper->register_quiz_setting( $field_array, 'quiz_options' );
|
489 |
|
490 |
+
// Registers show-optin setting
|
491 |
+
$field_array = array(
|
492 |
+
'id' => 'show_text_html',
|
493 |
+
'label' => __( 'Show Text/HTML type section in result page', 'quiz-master-next' ),
|
494 |
+
'type' => 'radio',
|
495 |
+
'options' => array(
|
496 |
+
array(
|
497 |
+
'label' => __( 'Yes', 'quiz-master-next' ),
|
498 |
+
'value' => 1,
|
499 |
+
),
|
500 |
+
array(
|
501 |
+
'label' => __( 'No', 'quiz-master-next' ),
|
502 |
+
'value' => 0,
|
503 |
+
),
|
504 |
+
),
|
505 |
+
'default' => 0,
|
506 |
+
'option_tab' => 'display',
|
507 |
+
);
|
508 |
+
$mlwQuizMasterNext->pluginHelper->register_quiz_setting( $field_array, 'quiz_options' );
|
509 |
+
|
510 |
// Registers store_responses setting
|
511 |
$field_array = array(
|
512 |
'id' => 'store_responses',
|
php/classes/class-qsm-settings.php
CHANGED
@@ -200,6 +200,7 @@ class QSM_Quiz_Settings {
|
|
200 |
$setDefaultvalue['comment_section'] = $globalQuizsetting['comment_section'];
|
201 |
$setDefaultvalue['question_numbering'] = $globalQuizsetting['question_numbering'];
|
202 |
$setDefaultvalue['show_optin'] = $globalQuizsetting['show_optin'];
|
|
|
203 |
$setDefaultvalue['store_responses'] = $globalQuizsetting['store_responses'];
|
204 |
$setDefaultvalue['send_email'] = $globalQuizsetting['send_email'];
|
205 |
$setDefaultvalue['disable_answer_onselect'] = $globalQuizsetting['disable_answer_onselect'];
|
200 |
$setDefaultvalue['comment_section'] = $globalQuizsetting['comment_section'];
|
201 |
$setDefaultvalue['question_numbering'] = $globalQuizsetting['question_numbering'];
|
202 |
$setDefaultvalue['show_optin'] = $globalQuizsetting['show_optin'];
|
203 |
+
$setDefaultvalue['show_text_html'] = $globalQuizsetting['show_text_html'];
|
204 |
$setDefaultvalue['store_responses'] = $globalQuizsetting['store_responses'];
|
205 |
$setDefaultvalue['send_email'] = $globalQuizsetting['send_email'];
|
206 |
$setDefaultvalue['disable_answer_onselect'] = $globalQuizsetting['disable_answer_onselect'];
|
php/question-types.php
CHANGED
@@ -252,7 +252,7 @@ function qmn_question_type_text_block() {
|
|
252 |
'extra_inputs' => array(),
|
253 |
'function' => '',
|
254 |
);
|
255 |
-
$mlwQuizMasterNext->pluginHelper->register_question_type( __( 'Text/HTML Section', 'quiz-master-next' ), 'qmn_text_block_display', false,
|
256 |
$mlwQuizMasterNext->pluginHelper->set_question_type_meta( 6, 'input_field', 'NA' );
|
257 |
$mlwQuizMasterNext->pluginHelper->set_question_type_meta( 6, 'category', 'Others' );
|
258 |
}
|
252 |
'extra_inputs' => array(),
|
253 |
'function' => '',
|
254 |
);
|
255 |
+
$mlwQuizMasterNext->pluginHelper->register_question_type( __( 'Text/HTML Section', 'quiz-master-next' ), 'qmn_text_block_display', false, 'qsm_text_html_review', $edit_args, null, 6 );
|
256 |
$mlwQuizMasterNext->pluginHelper->set_question_type_meta( 6, 'input_field', 'NA' );
|
257 |
$mlwQuizMasterNext->pluginHelper->set_question_type_meta( 6, 'category', 'Others' );
|
258 |
}
|
php/question-types/qsm-question-type-opt-in.php
CHANGED
@@ -57,3 +57,16 @@ function qmn_opt_in_review( $id, $question, $answers ) {
|
|
57 |
$return_array['user_compare_text'] = $user_compare_text;
|
58 |
return apply_filters( 'qmn_opt_in_review', $return_array, $answers );
|
59 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
$return_array['user_compare_text'] = $user_compare_text;
|
58 |
return apply_filters( 'qmn_opt_in_review', $return_array, $answers );
|
59 |
}
|
60 |
+
|
61 |
+
function qsm_text_html_review( $id, $question, $answers ) {
|
62 |
+
$return_array = array(
|
63 |
+
'user_answer' => "",
|
64 |
+
'correct_answer' => "",
|
65 |
+
'user_text' => "",
|
66 |
+
'correct_text' => "",
|
67 |
+
'correct' => "correct",
|
68 |
+
'points' => "",
|
69 |
+
'user_compare_text' => "",
|
70 |
+
);
|
71 |
+
return apply_filters( 'qsm_text_html_review', $return_array, $answers );
|
72 |
+
}
|
php/template-variables.php
CHANGED
@@ -937,7 +937,7 @@ function qsm_questions_answers_shortcode_to_text( $mlw_quiz_array, $qmn_question
|
|
937 |
global $mlwQuizMasterNext;
|
938 |
$question_types = $mlwQuizMasterNext->pluginHelper->get_question_type_options();
|
939 |
$quiz_options = $mlwQuizMasterNext->quiz_settings->get_quiz_options();
|
940 |
-
if ( 0 == $quiz_options->show_optin &&
|
941 |
return '';
|
942 |
}
|
943 |
|
@@ -1011,9 +1011,18 @@ function qsm_questions_answers_shortcode_to_text( $mlw_quiz_array, $qmn_question
|
|
1011 |
} else {
|
1012 |
$mlw_question_answer_display = str_replace( '%QUESTION%', '<b>' . $question_description . '</b>', $mlw_question_answer_display );
|
1013 |
}
|
1014 |
-
$mlw_question_answer_display = qsm_varibale_question_title_func( $mlw_question_answer_display );
|
1015 |
$extra_border_bottom_class = '';
|
1016 |
$remove_border = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1017 |
if ( strpos( $mlw_question_answer_display, '%USER_ANSWERS_DEFAULT%' ) !== false ) {
|
1018 |
$remove_border = false;
|
1019 |
$question_with_answer_text = '';
|
@@ -1298,6 +1307,7 @@ function qsm_questions_answers_shortcode_to_text( $mlw_quiz_array, $qmn_question
|
|
1298 |
$answer_3 = ! empty( $answer[3] ) ? $answer[3] : 'NA';
|
1299 |
$mlw_question_answer_display = str_replace( '%USER_COMMENTS%', $answer_3, $mlw_question_answer_display );
|
1300 |
$answer_4 = ! empty( $qmn_questions[ $answer['id'] ] ) ? $qmn_questions[ $answer['id'] ] : 'NA';
|
|
|
1301 |
$mlw_question_answer_display = str_replace( '%CORRECT_ANSWER_INFO%', htmlspecialchars_decode( $answer_4, ENT_QUOTES ), $mlw_question_answer_display );
|
1302 |
// Point score of the particular question.
|
1303 |
$question_point = isset( $answer['points'] ) ? $answer['points'] : '0';
|
@@ -1527,18 +1537,12 @@ function qsm_varibale_question_title_func( $question, $question_type = '', $new_
|
|
1527 |
$question_title = preg_replace( '/\s*[a-zA-Z\/\/:\.]*youtube.com\/watch\?v=([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)/i', '<iframe width="420" height="315" src="//www.youtube.com/embed/$1" frameborder="0" allowfullscreen></iframe>', $question_title );
|
1528 |
$polar_extra_class = '';
|
1529 |
$question_display = '';
|
1530 |
-
|
1531 |
-
$polar_extra_class = 'question-type-polar-s';
|
1532 |
-
}
|
1533 |
$qmn_quiz_options = $mlwQuizMasterNext->quiz_settings->get_quiz_options();
|
1534 |
-
$deselect_answer = '';
|
1535 |
-
if ( isset( $qmn_quiz_options->enable_deselect_option ) && 1 == $qmn_quiz_options->enable_deselect_option && ( 'multiple_choice' === $question_type || 'horizontal_multiple_choice' === $question_type ) ) {
|
1536 |
-
$deselect_answer = '<a href="javascript:void(0)" class="qsm-deselect-answer">Deselect Answer</a>';
|
1537 |
-
}
|
1538 |
|
1539 |
$question_numbering = '';
|
1540 |
-
$
|
1541 |
-
|
1542 |
$question_numbering = '<span class="mlw_qmn_question_number">' . esc_html( $qmn_total_questions ) . '. </span>';
|
1543 |
}
|
1544 |
|
@@ -1553,6 +1557,6 @@ function qsm_varibale_question_title_func( $question, $question_type = '', $new_
|
|
1553 |
$question_display .= "<div class='mlw_qmn_new_question'>" . $new_question_title . '</div>';
|
1554 |
$polar_extra_class .= ' qsm_remove_bold';
|
1555 |
}
|
1556 |
-
$question_display .= "<div class='mlw_qmn_question
|
1557 |
return $question_display;
|
1558 |
}
|
937 |
global $mlwQuizMasterNext;
|
938 |
$question_types = $mlwQuizMasterNext->pluginHelper->get_question_type_options();
|
939 |
$quiz_options = $mlwQuizMasterNext->quiz_settings->get_quiz_options();
|
940 |
+
if ( isset($answer['question_type']) && ( ( 0 == $quiz_options->show_optin && 8 == $answer['question_type'] ) || ( 0 == $quiz_options->show_text_html && 6 == $answer['question_type'] ) ) ) {
|
941 |
return '';
|
942 |
}
|
943 |
|
1011 |
} else {
|
1012 |
$mlw_question_answer_display = str_replace( '%QUESTION%', '<b>' . $question_description . '</b>', $mlw_question_answer_display );
|
1013 |
}
|
1014 |
+
$mlw_question_answer_display = qsm_varibale_question_title_func( $mlw_question_answer_display, $answer['question_type'] );
|
1015 |
$extra_border_bottom_class = '';
|
1016 |
$remove_border = true;
|
1017 |
+
if ( 6 == $answer['question_type'] ) {
|
1018 |
+
$mlw_question_answer_display = str_replace( '%USER_ANSWERS_DEFAULT%', '', $mlw_question_answer_display );
|
1019 |
+
$mlw_question_answer_display = str_replace( '%USER_ANSWER%', '', $mlw_question_answer_display );
|
1020 |
+
$mlw_question_answer_display = str_replace( '%CORRECT_ANSWER%', '', $mlw_question_answer_display );
|
1021 |
+
$mlw_question_answer_display = str_replace( '%USER_COMMENTS%', '', $mlw_question_answer_display );
|
1022 |
+
$mlw_question_answer_display = str_replace( '%CORRECT_ANSWER_INFO%', '', $mlw_question_answer_display );
|
1023 |
+
$mlw_question_answer_display = str_replace( '%QUESTION_POINT_SCORE%', '', $mlw_question_answer_display );
|
1024 |
+
$mlw_question_answer_display = str_replace( '%QUESTION_MAX_POINTS%', '', $mlw_question_answer_display );
|
1025 |
+
}
|
1026 |
if ( strpos( $mlw_question_answer_display, '%USER_ANSWERS_DEFAULT%' ) !== false ) {
|
1027 |
$remove_border = false;
|
1028 |
$question_with_answer_text = '';
|
1307 |
$answer_3 = ! empty( $answer[3] ) ? $answer[3] : 'NA';
|
1308 |
$mlw_question_answer_display = str_replace( '%USER_COMMENTS%', $answer_3, $mlw_question_answer_display );
|
1309 |
$answer_4 = ! empty( $qmn_questions[ $answer['id'] ] ) ? $qmn_questions[ $answer['id'] ] : 'NA';
|
1310 |
+
$answer_4 = 6 == $answer['question_type'] ? "" : $answer_4 ;
|
1311 |
$mlw_question_answer_display = str_replace( '%CORRECT_ANSWER_INFO%', htmlspecialchars_decode( $answer_4, ENT_QUOTES ), $mlw_question_answer_display );
|
1312 |
// Point score of the particular question.
|
1313 |
$question_point = isset( $answer['points'] ) ? $answer['points'] : '0';
|
1537 |
$question_title = preg_replace( '/\s*[a-zA-Z\/\/:\.]*youtube.com\/watch\?v=([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)/i', '<iframe width="420" height="315" src="//www.youtube.com/embed/$1" frameborder="0" allowfullscreen></iframe>', $question_title );
|
1538 |
$polar_extra_class = '';
|
1539 |
$question_display = '';
|
1540 |
+
|
|
|
|
|
1541 |
$qmn_quiz_options = $mlwQuizMasterNext->quiz_settings->get_quiz_options();
|
|
|
|
|
|
|
|
|
1542 |
|
1543 |
$question_numbering = '';
|
1544 |
+
if ( isset( $qmn_quiz_options->question_numbering ) && 1 == $qmn_quiz_options->question_numbering && 6 != $question_type ) {
|
1545 |
+
$qmn_total_questions += 1;
|
1546 |
$question_numbering = '<span class="mlw_qmn_question_number">' . esc_html( $qmn_total_questions ) . '. </span>';
|
1547 |
}
|
1548 |
|
1557 |
$question_display .= "<div class='mlw_qmn_new_question'>" . $new_question_title . '</div>';
|
1558 |
$polar_extra_class .= ' qsm_remove_bold';
|
1559 |
}
|
1560 |
+
$question_display .= "<div class='mlw_qmn_question' >" . $question_numbering . do_shortcode( htmlspecialchars_decode( $question_title, ENT_QUOTES ) ) . '</div>';
|
1561 |
return $question_display;
|
1562 |
}
|
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: 6.0
|
6 |
Requires PHP: 5.4
|
7 |
-
Stable tag: 8.0.
|
8 |
License: GPLv2
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -163,6 +163,11 @@ This is usually a theme conflict. You can [checkout out our common conflict solu
|
|
163 |
18. Database
|
164 |
|
165 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
166 |
= 8.0.6 (Nov 22, 2022) =
|
167 |
* Feature: Added option to search by quiz in question bank
|
168 |
* Feature: Added option to set image size in email template
|
4 |
Requires at least: 4.9
|
5 |
Tested up to: 6.0
|
6 |
Requires PHP: 5.4
|
7 |
+
Stable tag: 8.0.7
|
8 |
License: GPLv2
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
163 |
18. Database
|
164 |
|
165 |
== Changelog ==
|
166 |
+
= 8.0.7 (Dec 05, 2022) =
|
167 |
+
* Feature: Added option to show and hide Text/HTML question type on result page
|
168 |
+
* Bug: Fixed block.js warnings
|
169 |
+
* Bug: Fixed issue with required questions validations
|
170 |
+
|
171 |
= 8.0.6 (Nov 22, 2022) =
|
172 |
* Feature: Added option to search by quiz in question bank
|
173 |
* Feature: Added option to set image size in email template
|