Quiz And Survey Master (Formerly Quiz Master Next) - Version 6.0.4

Version Description

(October 2, 2018) = * Changes links from old documentation to newer documentation

Download this release

Release Info

Developer fpcorso
Plugin Icon 128x128 Quiz And Survey Master (Formerly Quiz Master Next)
Version 6.0.4
Comparing to
See all releases

Code changes from version 6.0.3 to 6.0.4

mlw_quizmaster2.php CHANGED
@@ -2,14 +2,14 @@
2
  /**
3
  * Plugin Name: Quiz And Survey Master
4
  * Description: Easily and quickly add quizzes and surveys to your website.
5
- * Version: 6.0.3
6
  * Author: Frank Corso
7
  * Author URI: https://www.quizandsurveymaster.com/
8
  * Plugin URI: https://www.quizandsurveymaster.com/
9
  * Text Domain: quiz-master-next
10
  *
11
  * @author Frank Corso
12
- * @version 6.0.3
13
  * @package QSM
14
  */
15
 
@@ -33,7 +33,7 @@ class MLWQuizMasterNext {
33
  * @var string
34
  * @since 4.0.0
35
  */
36
- public $version = '6.0.3';
37
 
38
  /**
39
  * 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.0.4
6
  * Author: Frank Corso
7
  * Author URI: https://www.quizandsurveymaster.com/
8
  * Plugin URI: https://www.quizandsurveymaster.com/
9
  * Text Domain: quiz-master-next
10
  *
11
  * @author Frank Corso
12
+ * @version 6.0.4
13
  * @package QSM
14
  */
15
 
33
  * @var string
34
  * @since 4.0.0
35
  */
36
+ public $version = '6.0.4';
37
 
38
  /**
39
  * QSM Alert Manager Object
php/admin/help-page.php CHANGED
@@ -53,7 +53,7 @@ function qsm_documentation_meta_box_content() {
53
  ?>
54
  <p><?php esc_html_e( 'Need help with the plugin? Try any of the following:', 'quiz-master-next' ); ?></p>
55
  <ul>
56
- <li>For assistance in using the plugin, read our <a href="http://quizandsurveymaster.com/documentation/?utm_source=qsm-help-page&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=documentation" target="_blank">documentation</a> or view videos in our <a href="http://quizandsurveymaster.com/online-academy/?utm_source=qsm-help-page&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=online_academy" target="_blank">video tutorials</a></li>
57
  <li>For support, fill out the form on our <a href="https://quizandsurveymaster.com/quiz/contact/?utm_source=qsm-help-page&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=contact_us" target="_blank">Contact Us Page</a></li>
58
  </ul>
59
  <?php
53
  ?>
54
  <p><?php esc_html_e( 'Need help with the plugin? Try any of the following:', 'quiz-master-next' ); ?></p>
55
  <ul>
56
+ <li>For assistance in using the plugin, read our <a href="https://docs.quizandsurveymaster.com" target="_blank">documentation</a></li>
57
  <li>For support, fill out the form on our <a href="https://quizandsurveymaster.com/quiz/contact/?utm_source=qsm-help-page&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=contact_us" target="_blank">Contact Us Page</a></li>
58
  </ul>
59
  <?php
php/admin/options-page-contact-tab.php CHANGED
@@ -49,6 +49,7 @@ function qsm_options_contact_tab_content() {
49
 
50
  ?>
51
  <h2><?php _e( 'Contact', 'quiz-master-next' ); ?></h2>
 
52
  <div class="contact-message"></div>
53
  <a class="save-contact button-primary"><?php _e( 'Save Contact Fields', 'quiz-master-next' ); ?></a>
54
  <div class="contact-form"></div>
49
 
50
  ?>
51
  <h2><?php _e( 'Contact', 'quiz-master-next' ); ?></h2>
52
+ <p>Need assistance with this tab? <a href="https://docs.quizandsurveymaster.com/article/20-collecting-users-information-using-contact-fields" target="_blank">Check out the documentation</a> for this tab!</p>
53
  <div class="contact-message"></div>
54
  <a class="save-contact button-primary"><?php _e( 'Save Contact Fields', 'quiz-master-next' ); ?></a>
55
  <div class="contact-form"></div>
php/admin/options-page-email-tab.php CHANGED
@@ -2,30 +2,28 @@
2
  if ( ! defined( 'ABSPATH' ) ) exit;
3
 
4
  /**
5
- * Creates the email tab in the Quiz Settings Page
6
- *
7
- * @return void
8
- * @since 4.4.0
9
- */
10
- function qmn_settings_email_tab()
11
- {
12
  global $mlwQuizMasterNext;
13
- $mlwQuizMasterNext->pluginHelper->register_quiz_settings_tabs(__("Emails", 'quiz-master-next'), 'mlw_options_emails_tab_content');
14
  }
15
- add_action("plugins_loaded", 'qmn_settings_email_tab', 5);
16
 
17
  /**
18
- * Creates the email content that is displayed on the email tab.
19
- *
20
- * @return void
21
- * @since 4.4.0
22
- */
23
- function mlw_options_emails_tab_content()
24
- {
25
  global $wpdb;
26
  global $mlwQuizMasterNext;
27
- $quiz_id = $_GET["quiz_id"];
28
- //Check to add new user email template
29
  if ( isset( $_POST["mlw_add_email_page"] ) && $_POST["mlw_add_email_page"] == "confirmation" ) {
30
  //Function variables
31
  $mlw_qmn_add_email_id = intval($_POST["mlw_add_email_quiz_id"]);
@@ -59,7 +57,7 @@ function mlw_options_emails_tab_content()
59
  }
60
  }
61
 
62
- //Check to add new admin email template
63
  if (isset($_POST["mlw_add_admin_email_page"]) && $_POST["mlw_add_admin_email_page"] == "confirmation")
64
  {
65
  //Function variables
@@ -245,7 +243,6 @@ function mlw_options_emails_tab_content()
245
  // increase the default animation speed to exaggerate the effect
246
  $j.fx.speeds._default = 1000;
247
  </script>
248
- <div id="tabs-9" class="mlw_tab_content">
249
  <script>
250
  /**
251
  * This deletes the user email from the list of emails.
@@ -271,6 +268,8 @@ function mlw_options_emails_tab_content()
271
  document.mlw_quiz_save_email_form.submit();
272
  }
273
  </script>
 
 
274
  <h3 style="text-align: center;"><?php _e('Template Variables', 'quiz-master-next'); ?></h3>
275
  <div class="template_list_holder">
276
  <div class="template_variable">
@@ -336,21 +335,6 @@ function mlw_options_emails_tab_content()
336
  <div class="template_variable">
337
  <span class="template_name">%CATEGORY_AVERAGE_SCORE%</span> - <?php _e('The average score from all categories.', 'quiz-master-next'); ?>
338
  </div>
339
- <div class="template_variable">
340
- <span class="template_name">%QUESTION%</span> - <?php _e('The question that the user answered', 'quiz-master-next'); ?>
341
- </div>
342
- <div class="template_variable">
343
- <span class="template_name">%USER_ANSWER%</span> - <?php _e('The answer the user gave for the question', 'quiz-master-next'); ?>
344
- </div>
345
- <div class="template_variable">
346
- <span class="template_name">%CORRECT_ANSWER%</span> - <?php _e('The correct answer for the question', 'quiz-master-next'); ?>
347
- </div>
348
- <div class="template_variable">
349
- <span class="template_name">%USER_COMMENTS%</span> - <?php _e('The comments the user provided in the comment field for the question', 'quiz-master-next'); ?>
350
- </div>
351
- <div class="template_variable">
352
- <span class="template_name">%CORRECT_ANSWER_INFO%</span> - <?php _e('Reason why the correct answer is the correct answer', 'quiz-master-next'); ?>
353
- </div>
354
  <div class="template_variable">
355
  <span class="template_name">%CURRENT_DATE%</span> - <?php _e('The Current Date', 'quiz-master-next'); ?>
356
  </div>
@@ -578,7 +562,6 @@ function mlw_options_emails_tab_content()
578
  <br />
579
  <br />
580
  <button id="save_email_button" class="button-primary" onclick="javascript: document.mlw_quiz_save_email_form.submit();"><?php _e('Save Email Templates And Settings', 'quiz-master-next'); ?></button>
581
- </div>
582
  <?php
583
  }
584
  ?>
2
  if ( ! defined( 'ABSPATH' ) ) exit;
3
 
4
  /**
5
+ * Creates the email tab in the Quiz Settings Page
6
+ *
7
+ * @return void
8
+ * @since 4.4.0
9
+ */
10
+ function qmn_settings_email_tab() {
 
11
  global $mlwQuizMasterNext;
12
+ $mlwQuizMasterNext->pluginHelper->register_quiz_settings_tabs( __( 'Emails', 'quiz-master-next'), 'qsm_options_emails_tab_content' );
13
  }
14
+ add_action( 'plugins_loaded', 'qmn_settings_email_tab', 5 );
15
 
16
  /**
17
+ * Creates the email content that is displayed on the email tab.
18
+ *
19
+ * @return void
20
+ * @since 4.4.0
21
+ */
22
+ function qsm_options_emails_tab_content() {
 
23
  global $wpdb;
24
  global $mlwQuizMasterNext;
25
+ $quiz_id = $_GET['quiz_id'];
26
+ // Checks to add new user email template.
27
  if ( isset( $_POST["mlw_add_email_page"] ) && $_POST["mlw_add_email_page"] == "confirmation" ) {
28
  //Function variables
29
  $mlw_qmn_add_email_id = intval($_POST["mlw_add_email_quiz_id"]);
57
  }
58
  }
59
 
60
+ // Checks to add new admin email template.
61
  if (isset($_POST["mlw_add_admin_email_page"]) && $_POST["mlw_add_admin_email_page"] == "confirmation")
62
  {
63
  //Function variables
243
  // increase the default animation speed to exaggerate the effect
244
  $j.fx.speeds._default = 1000;
245
  </script>
 
246
  <script>
247
  /**
248
  * This deletes the user email from the list of emails.
268
  document.mlw_quiz_save_email_form.submit();
269
  }
270
  </script>
271
+ <h2><?php esc_html_e( 'Emails', 'quiz-master-next'); ?></h2>
272
+ <p>Need assistance with this tab? <a href="https://docs.quizandsurveymaster.com/article/17-sending-emails" target="_blank">Check out the documentation</a> for this tab!</p>
273
  <h3 style="text-align: center;"><?php _e('Template Variables', 'quiz-master-next'); ?></h3>
274
  <div class="template_list_holder">
275
  <div class="template_variable">
335
  <div class="template_variable">
336
  <span class="template_name">%CATEGORY_AVERAGE_SCORE%</span> - <?php _e('The average score from all categories.', 'quiz-master-next'); ?>
337
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
338
  <div class="template_variable">
339
  <span class="template_name">%CURRENT_DATE%</span> - <?php _e('The Current Date', 'quiz-master-next'); ?>
340
  </div>
562
  <br />
563
  <br />
564
  <button id="save_email_button" class="button-primary" onclick="javascript: document.mlw_quiz_save_email_form.submit();"><?php _e('Save Email Templates And Settings', 'quiz-master-next'); ?></button>
 
565
  <?php
566
  }
567
  ?>
php/admin/options-page-preview-tab.php CHANGED
@@ -24,7 +24,7 @@ function mlw_options_preview_tab_content()
24
  {
25
  ?>
26
  <div id="tabs-preview" class="mlw_tab_content">
27
- <p>If your quiz looks different on the front end compared to this preview, then there is a conflict with your theme. Check out our <a href="http://quizandsurveymaster.com/common-theme-conflict-fixes/?utm_source=qsm-preview-tab&utm_medium=plugin&utm_campaign=qsm_plugin">Common Theme Conflict Fixes</a>.</a></p>
28
  <?php
29
  echo do_shortcode( '[mlw_quizmaster quiz='.intval($_GET["quiz_id"]).']' );
30
  ?>
24
  {
25
  ?>
26
  <div id="tabs-preview" class="mlw_tab_content">
27
+ <p>If your quiz looks different on the front end compared to this preview, then there is a conflict with your theme. Check out our <a href="https://docs.quizandsurveymaster.com/article/21-common-theme-conflict-fixes" target="_blank">Common Theme Conflict Fixes</a>.</a></p>
28
  <?php
29
  echo do_shortcode( '[mlw_quizmaster quiz='.intval($_GET["quiz_id"]).']' );
30
  ?>
php/admin/options-page-questions-tab.php CHANGED
@@ -76,10 +76,10 @@ function qsm_options_questions_tab_content() {
76
  }
77
  ?>
78
  <h3>Questions</h3>
79
- <p>Use this tab to create and modify the different pages of your quiz or survey as well as the questions on each page. Click "Create New Page" to get started! Need more information? Check out the <a href="http://bit.ly/2FkR9Wd" target="_blank">documentation for this tab!</a></p>
80
  <div class="questions-messages"></div>
81
  <a href="#" class="new-page-button button">Create New Page</a>
82
- <a href="#" class="save-page-button button-primary">Save Questions</a>
83
  <p class="search-box">
84
  <label class="screen-reader-text" for="question_search">Search Questions:</label>
85
  <input type="search" id="question_search" name="question_search" value="">
76
  }
77
  ?>
78
  <h3>Questions</h3>
79
+ <p>Use this tab to create and modify the different pages of your quiz or survey as well as the questions on each page. Click "Create New Page" to get started! Need more information? Check out the <a href="https://docs.quizandsurveymaster.com/article/19-creating-pages-and-questions" target="_blank">documentation for this tab!</a></p>
80
  <div class="questions-messages"></div>
81
  <a href="#" class="new-page-button button">Create New Page</a>
82
+ <a href="#" class="save-page-button button-primary">Save Questions and Pages</a>
83
  <p class="search-box">
84
  <label class="screen-reader-text" for="question_search">Search Questions:</label>
85
  <input type="search" id="question_search" name="question_search" value="">
php/admin/options-page-style-tab.php CHANGED
@@ -92,8 +92,8 @@ function qsm_options_styling_tab_content() {
92
  <button id="save_styles_button" class="button-primary"><?php _e('Save Quiz Style', 'quiz-master-next'); ?></button>
93
  <hr />
94
  <h3><?php _e('Custom Style CSS', 'quiz-master-next'); ?></h3>
95
- <p><?php _e('For detailed help and guidance along with a list of different classes used in this plugin, please visit the following link:', 'quiz-master-next'); ?>
96
- <a target="_blank" href="http://bit.ly/2JDHwA6">Style Guide</a></p>
97
  <table class="form-table">
98
  <tr>
99
  <td><textarea style="width: 100%; height: 700px;" id="quiz_css" name="quiz_css"><?php echo $mlw_quiz_options->quiz_stye; ?></textarea></td>
92
  <button id="save_styles_button" class="button-primary"><?php _e('Save Quiz Style', 'quiz-master-next'); ?></button>
93
  <hr />
94
  <h3><?php _e('Custom Style CSS', 'quiz-master-next'); ?></h3>
95
+ <p><?php _e('For help and guidance along with a list of different classes used in this plugin, please visit the following link:', 'quiz-master-next'); ?>
96
+ <a target="_blank" href="https://docs.quizandsurveymaster.com/article/34-css-in-qsm">CSS in QSM</a></p>
97
  <table class="form-table">
98
  <tr>
99
  <td><textarea style="width: 100%; height: 700px;" id="quiz_css" name="quiz_css"><?php echo $mlw_quiz_options->quiz_stye; ?></textarea></td>
php/admin/quizzes-page.php CHANGED
@@ -205,7 +205,7 @@ function qsm_generate_quizzes_surveys_page() {
205
  </div>
206
  <?php
207
  $qmn_rss = array();
208
- $qmn_feed = fetch_feed( 'http://quizandsurveymaster.com/feed' );
209
  if ( ! is_wp_error( $qmn_feed ) ) {
210
  $qmn_feed_items = $qmn_feed->get_items( 0, 5 );
211
  foreach ( $qmn_feed_items as $feed_item ) {
@@ -359,7 +359,7 @@ function qsm_generate_quizzes_surveys_page() {
359
  <!-- Templates -->
360
  <script type="text/template" id="tmpl-no-quiz">
361
  <h2><?php _e( 'You do not have any quizzes or surveys. Click "Add New" to get started.', 'quiz-master-next' ); ?></h2>
362
- <h2>Is this your first time using this plugin? Check out our <a href="https://quizandsurveymaster.com/documentation/?utm_source=qsm-quizzes-page&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=documentation" target="_blank">Documentation</a> or watch our Getting Started Video below</h2>
363
  <iframe width="560" height="315" src="https://www.youtube.com/embed/n8xfNk490Wg" frameborder="0" allowfullscreen></iframe>
364
  </script>
365
 
205
  </div>
206
  <?php
207
  $qmn_rss = array();
208
+ $qmn_feed = fetch_feed( 'https://quizandsurveymaster.com/feed' );
209
  if ( ! is_wp_error( $qmn_feed ) ) {
210
  $qmn_feed_items = $qmn_feed->get_items( 0, 5 );
211
  foreach ( $qmn_feed_items as $feed_item ) {
359
  <!-- Templates -->
360
  <script type="text/template" id="tmpl-no-quiz">
361
  <h2><?php _e( 'You do not have any quizzes or surveys. Click "Add New" to get started.', 'quiz-master-next' ); ?></h2>
362
+ <h2>Is this your first time using this plugin? Check out our <a href="https://docs.quizandsurveymaster.com" target="_blank">Documentation</a> or watch our Getting Started Video below</h2>
363
  <iframe width="560" height="315" src="https://www.youtube.com/embed/n8xfNk490Wg" frameborder="0" allowfullscreen></iframe>
364
  </script>
365
 
php/classes/class-qsm-install.php CHANGED
@@ -1330,8 +1330,7 @@ class QSM_Install {
1330
  public function plugin_row_meta( $links, $file ) {
1331
  if ( $file == QSM_PLUGIN_BASENAME ) {
1332
  $row_meta = array(
1333
- 'docs' => '<a href="' . esc_url( 'http://quizandsurveymaster.com/documentation/?utm_source=plugin-row-meta&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=documentation' ) . '" title="' . esc_attr( __( 'View Documentation', 'quiz-master-next' ) ) . '">' . __( 'Documentation', 'quiz-master-next' ) . '</a>',
1334
- 'academy' => '<a href="' . esc_url( 'http://quizandsurveymaster.com/online-academy/?utm_source=plugin-row-meta&utm_medium=plugin&utm_campaign=qsm_plugin&utm_content=online_academy' ) . '" title="' . esc_attr( __( 'Watch Online Academy Videos', 'quiz-master-next' ) ) . '">' . __( 'Online Academy', 'quiz-master-next' ) . '</a>',
1335
  'support' => '<a href="' . admin_url( 'admin.php?page=mlw_quiz_help' ) . '" title="' . esc_attr( __( 'Create Support Ticket', 'quiz-master-next' ) ) . '">' . __( 'Support', 'quiz-master-next' ) . '</a>',
1336
  );
1337
  return array_merge( $links, $row_meta );
1330
  public function plugin_row_meta( $links, $file ) {
1331
  if ( $file == QSM_PLUGIN_BASENAME ) {
1332
  $row_meta = array(
1333
+ 'docs' => '<a href="' . esc_url( 'https://docs.quizandsurveymaster.com/' ) . '" title="' . esc_attr( __( 'View Documentation', 'quiz-master-next' ) ) . '">' . __( 'Documentation', 'quiz-master-next' ) . '</a>',
 
1334
  'support' => '<a href="' . admin_url( 'admin.php?page=mlw_quiz_help' ) . '" title="' . esc_attr( __( 'Create Support Ticket', 'quiz-master-next' ) ) . '">' . __( 'Support', 'quiz-master-next' ) . '</a>',
1335
  );
1336
  return array_merge( $links, $row_meta );
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: quiz, survey, lead, test, score, exam, questionnaire, question
4
  Requires at least: 4.8
5
  Tested up to: 4.9
6
  Requires PHP: 5.4
7
- Stable tag: 6.0.3
8
  License: GPLv2
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -85,7 +85,7 @@ While Quiz And Survey Master is fully functional and is packed full of features
85
  == Frequently Asked Questions ==
86
 
87
  = How do you use that feature? =
88
- We have begun creating documentation for the plugin. You can view the documentation here: [Documentation](https://quizandsurveymaster.com/documentation/?utm_source=readme&utm_medium=plugin&utm_content=faq-documentation&utm_campaign=qsm_plugin) If you still have any trouble, feel free to use the widget on the quiz dashboard within the plugin to contact me and I will help you.
89
 
90
  = I want to edit the output for %QUESTIONS_ANSWERS%. Can I do that? =
91
 
@@ -97,7 +97,7 @@ To make these changes, you will edit the %QUESTIONS_ANSWERS% variable. To do tha
97
 
98
  = My preview looks different than my quiz. What can I do? =
99
 
100
- This is usually a theme conflict. You can [checkout out our common conflict solutions](https://quizandsurveymaster.com/common-theme-conflict-fixes/?utm_source=readme&utm_medium=plugin&utm_content=faq-common-theme-conflicts&utm_campaign=qsm_plugin) or feel free to contact us.
101
 
102
  == Screenshots ==
103
 
@@ -111,6 +111,9 @@ This is usually a theme conflict. You can [checkout out our common conflict solu
111
 
112
  == Changelog ==
113
 
 
 
 
114
  = 6.0.3 (August 20, 2018) =
115
  * Closed Bug: User gets 'trapped' if timer runs out on required question when questions are paginated ([Issue #583](https://github.com/fpcorso/quiz_master_next/issues/583))
116
  * Closed Bug: If user refreshes quiz page when timer is at 0, cannot submit ([Issue #501](https://github.com/fpcorso/quiz_master_next/issues/501))
@@ -136,10 +139,4 @@ This is usually a theme conflict. You can [checkout out our common conflict solu
136
  == Upgrade Notice ==
137
 
138
  = 6.0.3 =
139
- Upgrade for several bug fixes
140
-
141
- = 6.0.2 =
142
- Upgrade for fix for timer and blank pages
143
-
144
- = 6.0.1 =
145
- Upgrade for fix quiz comments displaying HTML
4
  Requires at least: 4.8
5
  Tested up to: 4.9
6
  Requires PHP: 5.4
7
+ Stable tag: 6.0.4
8
  License: GPLv2
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
85
  == Frequently Asked Questions ==
86
 
87
  = How do you use that feature? =
88
+ We have extensive documentation and videos for the plugin. You can view the documentation here: [Documentation](https://docs.quizandsurveymaster.com). If you still need assistance, feel free to reach out to us!
89
 
90
  = I want to edit the output for %QUESTIONS_ANSWERS%. Can I do that? =
91
 
97
 
98
  = My preview looks different than my quiz. What can I do? =
99
 
100
+ This is usually a theme conflict. You can [checkout out our common conflict solutions](https://docs.quizandsurveymaster.com/article/21-common-theme-conflict-fixes) or feel free to contact us.
101
 
102
  == Screenshots ==
103
 
111
 
112
  == Changelog ==
113
 
114
+ = 6.0.4 (October 2, 2018) =
115
+ * Changes links from old documentation to newer documentation
116
+
117
  = 6.0.3 (August 20, 2018) =
118
  * Closed Bug: User gets 'trapped' if timer runs out on required question when questions are paginated ([Issue #583](https://github.com/fpcorso/quiz_master_next/issues/583))
119
  * Closed Bug: If user refreshes quiz page when timer is at 0, cannot submit ([Issue #501](https://github.com/fpcorso/quiz_master_next/issues/501))
139
  == Upgrade Notice ==
140
 
141
  = 6.0.3 =
142
+ Upgrade for several bug fixes