Version Description
(September 10, 2016) = * Closed Bug: From Email Bug Causing 500 Error On WP 4.6 - Issue #473 * Closed Enhancement: Table Styles Don't Match Default WordPress Styles. - Issue #471 * Closed Bug: Tracking manager causes admin server error when request error occurs. - Issue #470
Download this release
Release Info
Developer | fpcorso |
Plugin | Quiz And Survey Master (Formerly Quiz Master Next) |
Version | 4.7.7 |
Comparing to | |
See all releases |
Code changes from version 4.7.6 to 4.7.7
- mlw_quizmaster2.php +3 -3
- php/about-page.php +1 -1
- php/admin-results-page.php +13 -13
- php/class-qmn-quiz-manager.php +24 -7
- php/class-qmn-tracking.php +3 -2
- readme.txt +9 -4
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: 4.7.
|
6 |
* Author: Frank Corso
|
7 |
* Author URI: http://www.quizandsurveymaster.com/
|
8 |
* Plugin URI: http://www.quizandsurveymaster.com/
|
@@ -10,7 +10,7 @@
|
|
10 |
* Domain Path: /languages
|
11 |
*
|
12 |
* @author Frank Corso
|
13 |
-
* @version 4.7.
|
14 |
*/
|
15 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
16 |
|
@@ -30,7 +30,7 @@ class MLWQuizMasterNext
|
|
30 |
* @var string
|
31 |
* @since 4.0.0
|
32 |
*/
|
33 |
-
public $version = '4.7.
|
34 |
|
35 |
/**
|
36 |
* QMN 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: 4.7.7
|
6 |
* Author: Frank Corso
|
7 |
* Author URI: http://www.quizandsurveymaster.com/
|
8 |
* Plugin URI: http://www.quizandsurveymaster.com/
|
10 |
* Domain Path: /languages
|
11 |
*
|
12 |
* @author Frank Corso
|
13 |
+
* @version 4.7.7
|
14 |
*/
|
15 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
16 |
|
30 |
* @var string
|
31 |
* @since 4.0.0
|
32 |
*/
|
33 |
+
public $version = '4.7.7';
|
34 |
|
35 |
/**
|
36 |
* QMN Alert Manager Object
|
php/about-page.php
CHANGED
@@ -48,7 +48,7 @@ function mlw_generate_about_page()
|
|
48 |
</div>
|
49 |
<div id="mlw_quiz_changelog" class="qmn_tab" style="display: none;">
|
50 |
<h2>Changelog</h2>
|
51 |
-
<?php QSM_Changelog_Generator::get_changelog_list( 'fpcorso/quiz_master_next',
|
52 |
</div>
|
53 |
<div id="qmn_contributors" class="qmn_tab" style="display:none;">
|
54 |
<h2>GitHub Contributors</h2>
|
48 |
</div>
|
49 |
<div id="mlw_quiz_changelog" class="qmn_tab" style="display: none;">
|
50 |
<h2>Changelog</h2>
|
51 |
+
<?php QSM_Changelog_Generator::get_changelog_list( 'fpcorso/quiz_master_next', 28 ); ?>
|
52 |
</div>
|
53 |
<div id="qmn_contributors" class="qmn_tab" style="display:none;">
|
54 |
<h2>GitHub Contributors</h2>
|
php/admin-results-page.php
CHANGED
@@ -232,7 +232,7 @@ function mlw_generate_quiz_results()
|
|
232 |
}
|
233 |
?>
|
234 |
<input type="hidden" name="page" value="mlw_quiz_results">
|
235 |
-
<p class="search-box">
|
236 |
<label for="qmn_search_phrase">Search Results:</label>
|
237 |
<input type="search" id="qmn_search_phrase" name="qmn_search_phrase" value="">
|
238 |
<label for="qmn_order_by">Order By:</label>
|
@@ -252,7 +252,7 @@ function mlw_generate_quiz_results()
|
|
252 |
<table class=widefat>
|
253 |
<thead>
|
254 |
<tr>
|
255 |
-
<th><input type="checkbox" id="qmn_check_all" /></th>
|
256 |
<th><?php _e('Actions','quiz-master-next'); ?></th>
|
257 |
<th><?php _e('Quiz Name','quiz-master-next'); ?></th>
|
258 |
<th><?php _e('Score','quiz-master-next'); ?></th>
|
@@ -291,26 +291,26 @@ function mlw_generate_quiz_results()
|
|
291 |
|
292 |
$quotes_list .= "<tr{$alternate}>";
|
293 |
$quotes_list .= "<td><input type='checkbox' class='qmn_delete_checkbox' name='delete_results[]' value='".$mlw_quiz_info->result_id. "' /></td>";
|
294 |
-
$quotes_list .= "<td><span
|
295 |
-
$quotes_list .= "<td><span
|
296 |
if ($mlw_quiz_info->quiz_system == 0)
|
297 |
{
|
298 |
-
$quotes_list .= "<td class='post-title column-title'><span
|
299 |
}
|
300 |
if ($mlw_quiz_info->quiz_system == 1)
|
301 |
{
|
302 |
-
$quotes_list .= "<td><span
|
303 |
}
|
304 |
if ($mlw_quiz_info->quiz_system == 2)
|
305 |
{
|
306 |
-
$quotes_list .= "<td><span
|
307 |
}
|
308 |
-
$quotes_list .= "<td><span
|
309 |
-
$quotes_list .= "<td><span
|
310 |
-
$quotes_list .= "<td><span
|
311 |
-
$quotes_list .= "<td><span
|
312 |
-
$quotes_list .= "<td><span
|
313 |
-
$quotes_list .= "<td><span
|
314 |
$quotes_list .= "</tr>";
|
315 |
}
|
316 |
$display .= "<tbody id=\"the-list\">{$quotes_list}</tbody>";
|
232 |
}
|
233 |
?>
|
234 |
<input type="hidden" name="page" value="mlw_quiz_results">
|
235 |
+
<p class="search-box" style="margin-bottom: 10px;">
|
236 |
<label for="qmn_search_phrase">Search Results:</label>
|
237 |
<input type="search" id="qmn_search_phrase" name="qmn_search_phrase" value="">
|
238 |
<label for="qmn_order_by">Order By:</label>
|
252 |
<table class=widefat>
|
253 |
<thead>
|
254 |
<tr>
|
255 |
+
<th><input type="checkbox" id="qmn_check_all" style="margin-left: 0;"/></th>
|
256 |
<th><?php _e('Actions','quiz-master-next'); ?></th>
|
257 |
<th><?php _e('Quiz Name','quiz-master-next'); ?></th>
|
258 |
<th><?php _e('Score','quiz-master-next'); ?></th>
|
291 |
|
292 |
$quotes_list .= "<tr{$alternate}>";
|
293 |
$quotes_list .= "<td><input type='checkbox' class='qmn_delete_checkbox' name='delete_results[]' value='".$mlw_quiz_info->result_id. "' /></td>";
|
294 |
+
$quotes_list .= "<td><span><a href='admin.php?page=mlw_quiz_result_details&&result_id=".$mlw_quiz_info->result_id."'>View</a>|<a style='color:red;' onclick=\"deleteResults('".$mlw_quiz_info->result_id."','".esc_js($mlw_quiz_info->quiz_name)."')\" href='#'>Delete</a></span></td>";
|
295 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->quiz_name . "</span></td>";
|
296 |
if ($mlw_quiz_info->quiz_system == 0)
|
297 |
{
|
298 |
+
$quotes_list .= "<td class='post-title column-title'><span>" . $mlw_quiz_info->correct ." out of ".$mlw_quiz_info->total." or ".$mlw_quiz_info->correct_score."%</span></td>";
|
299 |
}
|
300 |
if ($mlw_quiz_info->quiz_system == 1)
|
301 |
{
|
302 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->point_score . " Points</span></td>";
|
303 |
}
|
304 |
if ($mlw_quiz_info->quiz_system == 2)
|
305 |
{
|
306 |
+
$quotes_list .= "<td><span>".__('Not Graded','quiz-master-next')."</span></td>";
|
307 |
}
|
308 |
+
$quotes_list .= "<td><span>" . $mlw_complete_time ."</span></td>";
|
309 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->name ."</span></td>";
|
310 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->business ."</span></td>";
|
311 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->email ."</span></td>";
|
312 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->phone ."</span></td>";
|
313 |
+
$quotes_list .= "<td><span>" . $mlw_quiz_info->time_taken ."</span></td>";
|
314 |
$quotes_list .= "</tr>";
|
315 |
}
|
316 |
$display .= "<tbody id=\"the-list\">{$quotes_list}</tbody>";
|
php/class-qmn-quiz-manager.php
CHANGED
@@ -1008,6 +1008,14 @@ EOC;
|
|
1008 |
);
|
1009 |
}
|
1010 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1011 |
//Prepare email attachments
|
1012 |
$attachments = array();
|
1013 |
$attachments = apply_filters( 'qsm_user_email_attachments', $attachments, $qmn_array_for_variables );
|
@@ -1093,10 +1101,8 @@ EOC;
|
|
1093 |
add_filter( 'wp_mail_content_type', 'mlw_qmn_set_html_content_type' );
|
1094 |
|
1095 |
$mlw_message = "";
|
1096 |
-
if ($qmn_quiz_options->send_admin_email == "0")
|
1097 |
-
|
1098 |
-
if ($qmn_quiz_options->admin_email != "")
|
1099 |
-
{
|
1100 |
$from_email_array = maybe_unserialize( $qmn_quiz_options->email_from_text );
|
1101 |
if ( ! isset( $from_email_array["from_email"] ) ) {
|
1102 |
$from_email_array = array(
|
@@ -1105,6 +1111,15 @@ EOC;
|
|
1105 |
'reply_to' => 1
|
1106 |
);
|
1107 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1108 |
$mlw_message = "";
|
1109 |
$mlw_subject = "";
|
1110 |
if (is_serialized($qmn_quiz_options->admin_email_template) && is_array(@unserialize($qmn_quiz_options->admin_email_template)))
|
@@ -1178,9 +1193,11 @@ EOC;
|
|
1178 |
if ( $from_email_array["reply_to"] == 0 ) {
|
1179 |
$headers[] = 'Reply-To: '.$qmn_array_for_variables["user_name"]." <".$qmn_array_for_variables["user_email"].">";
|
1180 |
}
|
1181 |
-
$
|
1182 |
-
foreach( $
|
1183 |
-
|
|
|
|
|
1184 |
}
|
1185 |
}
|
1186 |
|
1008 |
);
|
1009 |
}
|
1010 |
|
1011 |
+
if ( ! is_email( $from_email_array["from_email"] ) ) {
|
1012 |
+
if ( is_email( $qmn_quiz_options->admin_email ) ) {
|
1013 |
+
$from_email_array["from_email"] = $qmn_quiz_options->admin_email;
|
1014 |
+
} else {
|
1015 |
+
$from_email_array["from_email"] = get_option( 'admin_email ', 'test@example.com' );
|
1016 |
+
}
|
1017 |
+
}
|
1018 |
+
|
1019 |
//Prepare email attachments
|
1020 |
$attachments = array();
|
1021 |
$attachments = apply_filters( 'qsm_user_email_attachments', $attachments, $qmn_array_for_variables );
|
1101 |
add_filter( 'wp_mail_content_type', 'mlw_qmn_set_html_content_type' );
|
1102 |
|
1103 |
$mlw_message = "";
|
1104 |
+
if ( $qmn_quiz_options->send_admin_email == "0" ) {
|
1105 |
+
if ( $qmn_quiz_options->admin_email != "" ) {
|
|
|
|
|
1106 |
$from_email_array = maybe_unserialize( $qmn_quiz_options->email_from_text );
|
1107 |
if ( ! isset( $from_email_array["from_email"] ) ) {
|
1108 |
$from_email_array = array(
|
1111 |
'reply_to' => 1
|
1112 |
);
|
1113 |
}
|
1114 |
+
|
1115 |
+
if ( ! is_email( $from_email_array["from_email"] ) ) {
|
1116 |
+
if ( is_email( $qmn_quiz_options->admin_email ) ) {
|
1117 |
+
$from_email_array["from_email"] = $qmn_quiz_options->admin_email;
|
1118 |
+
} else {
|
1119 |
+
$from_email_array["from_email"] = get_option( 'admin_email ', 'test@example.com' );
|
1120 |
+
}
|
1121 |
+
}
|
1122 |
+
|
1123 |
$mlw_message = "";
|
1124 |
$mlw_subject = "";
|
1125 |
if (is_serialized($qmn_quiz_options->admin_email_template) && is_array(@unserialize($qmn_quiz_options->admin_email_template)))
|
1193 |
if ( $from_email_array["reply_to"] == 0 ) {
|
1194 |
$headers[] = 'Reply-To: '.$qmn_array_for_variables["user_name"]." <".$qmn_array_for_variables["user_email"].">";
|
1195 |
}
|
1196 |
+
$admin_emails = explode( ",", $qmn_quiz_options->admin_email );
|
1197 |
+
foreach( $admin_emails as $admin_email ) {
|
1198 |
+
if ( is_email( $admin_email ) ) {
|
1199 |
+
wp_mail( $admin_email, $mlw_subject, $mlw_message, $headers );
|
1200 |
+
}
|
1201 |
}
|
1202 |
}
|
1203 |
|
php/class-qmn-tracking.php
CHANGED
@@ -97,8 +97,9 @@ class QMNTracking {
|
|
97 |
'user-agent' => 'QSM Usage Tracker'
|
98 |
) );
|
99 |
if ( is_wp_error( $response ) ) {
|
100 |
-
|
101 |
-
|
|
|
102 |
}
|
103 |
}
|
104 |
|
97 |
'user-agent' => 'QSM Usage Tracker'
|
98 |
) );
|
99 |
if ( is_wp_error( $response ) ) {
|
100 |
+
global $mlwQuizMasterNext;
|
101 |
+
$error_message = $response->get_error_message();
|
102 |
+
$mlwQuizMasterNext->log_manager->add( "Error 0024", "Usage tracker failed due to following reason: $error_message", 0, 'error' );
|
103 |
}
|
104 |
}
|
105 |
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: mylocalwebstop, fpcorso, elrath, dukeran
|
|
3 |
Donate link: http://mylocalwebstop.com/downloads/donation-service-payment/
|
4 |
Tags: quiz, survey, test, score, exam, questionnaire, email, answer, question, certificate, points, results
|
5 |
Requires at least: 4.1
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag: 4.7.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -109,6 +109,11 @@ This is usually a theme conflict. You can [checkout out our common conflict solu
|
|
109 |
|
110 |
== Changelog ==
|
111 |
|
|
|
|
|
|
|
|
|
|
|
112 |
= 4.7.6 (July 11, 2016) =
|
113 |
* Closed: Add language and error logs to usage tracking - Issue #457
|
114 |
|
@@ -120,5 +125,5 @@ This is usually a theme conflict. You can [checkout out our common conflict solu
|
|
120 |
|
121 |
== Upgrade Notice ==
|
122 |
|
123 |
-
= 4.7.
|
124 |
-
Upgrade
|
3 |
Donate link: http://mylocalwebstop.com/downloads/donation-service-payment/
|
4 |
Tags: quiz, survey, test, score, exam, questionnaire, email, answer, question, certificate, points, results
|
5 |
Requires at least: 4.1
|
6 |
+
Tested up to: 4.6.1
|
7 |
+
Stable tag: 4.7.7
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
109 |
|
110 |
== Changelog ==
|
111 |
|
112 |
+
= 4.7.7 (September 10, 2016) =
|
113 |
+
* Closed Bug: From Email Bug Causing 500 Error On WP 4.6 - Issue #473
|
114 |
+
* Closed Enhancement: Table Styles Don't Match Default WordPress Styles. - Issue #471
|
115 |
+
* Closed Bug: Tracking manager causes admin server error when request error occurs. - Issue #470
|
116 |
+
|
117 |
= 4.7.6 (July 11, 2016) =
|
118 |
* Closed: Add language and error logs to usage tracking - Issue #457
|
119 |
|
125 |
|
126 |
== Upgrade Notice ==
|
127 |
|
128 |
+
= 4.7.7 =
|
129 |
+
Upgrade to fix bug affecting some users using WordPress 4.6 causing results page not to load
|