Version Description
- Fix The output link for the manage subscriptions.
- Fix Display of URL to use escape characters.
- New Feature a Unique Key to the plugin. This Key will help to prevent spam bots to hijack your links.
- Add Plugin GitHub link for bug reporting. Check the "You can Help" panel.
- See the commit history on (GitHub)[https://github.com/stcr/subscribe-to-comments-reloaded]
Download this release
Release Info
Developer | reedyseth |
Plugin | Subscribe To Comments Reloaded |
Version | 150207 |
Comparing to | |
See all releases |
Code changes from version 141103 to 150207
- options/panel5.php +75 -38
- options/panel6.php +6 -3
- readme.txt +21 -5
- subscribe-to-comments-reloaded.php +34 -15
- templates/request-management-link.php +3 -3
- uninstall.php +1 -0
options/panel5.php
CHANGED
@@ -5,47 +5,55 @@ if ( ! function_exists( 'is_admin' ) || ! is_admin() ) {
|
|
5 |
exit;
|
6 |
}
|
7 |
|
8 |
-
|
9 |
-
if ( isset( $_POST['options'] ) ) {
|
10 |
-
$faulty_fields = '';
|
11 |
-
if ( isset( $_POST['options']['purge_days'] ) && ! subscribe_reloaded_update_option( 'purge_days', $_POST['options']['purge_days'], 'integer' ) ) {
|
12 |
-
$faulty_fields = __( 'Autopurge requests', 'subscribe-reloaded' ) . ', ';
|
13 |
-
}
|
14 |
-
if ( isset( $_POST['options']['enable_double_check'] ) && ! subscribe_reloaded_update_option( 'enable_double_check', $_POST['options']['enable_double_check'], 'yesno' ) ) {
|
15 |
-
$faulty_fields = __( 'Enable double check', 'subscribe-reloaded' ) . ', ';
|
16 |
-
}
|
17 |
-
if ( isset( $_POST['options']['notify_authors'] ) && ! subscribe_reloaded_update_option( 'notify_authors', $_POST['options']['notify_authors'], 'yesno' ) ) {
|
18 |
-
$faulty_fields = __( 'Subscribe authors', 'subscribe-reloaded' ) . ', ';
|
19 |
-
}
|
20 |
-
if ( isset( $_POST['options']['enable_html_emails'] ) && ! subscribe_reloaded_update_option( 'enable_html_emails', $_POST['options']['enable_html_emails'], 'yesno' ) ) {
|
21 |
-
$faulty_fields = __( 'Enable HTML emails', 'subscribe-reloaded' ) . ', ';
|
22 |
-
}
|
23 |
-
if ( isset( $_POST['options']['htmlify_message_links'] ) && ! subscribe_reloaded_update_option( 'htmlify_message_links', $_POST['options']['htmlify_message_links'], 'yesno' ) ) {
|
24 |
-
$faulty_fields = __( 'HTMLify Links in HTML emails', 'subscribe-reloaded' ) . ', ';
|
25 |
-
}
|
26 |
-
if ( isset( $_POST['options']['process_trackbacks'] ) && ! subscribe_reloaded_update_option( 'process_trackbacks', $_POST['options']['process_trackbacks'], 'yesno' ) ) {
|
27 |
-
$faulty_fields = __( 'Send trackbacks', 'subscribe-reloaded' ) . ', ';
|
28 |
-
}
|
29 |
-
if ( isset( $_POST['options']['enable_admin_messages'] ) && ! subscribe_reloaded_update_option( 'enable_admin_messages', $_POST['options']['enable_admin_messages'], 'yesno' ) ) {
|
30 |
-
$faulty_fields = __( 'Notify admin', 'subscribe-reloaded' ) . ', ';
|
31 |
-
}
|
32 |
-
if ( isset( $_POST['options']['admin_subscribe'] ) && ! subscribe_reloaded_update_option( 'admin_subscribe', $_POST['options']['admin_subscribe'], 'yesno' ) ) {
|
33 |
-
$faulty_fields = __( 'Let admin subscribe', 'subscribe-reloaded' ) . ', ';
|
34 |
-
}
|
35 |
-
if ( isset( $_POST['options']['admin_bcc'] ) && ! subscribe_reloaded_update_option( 'admin_bcc', $_POST['options']['admin_bcc'], 'yesno' ) ) {
|
36 |
-
$faulty_fields = __( 'BCC admin on Notifications', 'subscribe-reloaded' ) . ', ';
|
37 |
-
}
|
38 |
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
}
|
47 |
-
echo "</p></div>\n";
|
48 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
wp_print_scripts( 'quicktags' );
|
50 |
?>
|
51 |
<form action="admin.php?page=subscribe-to-comments-reloaded/options/index.php&subscribepanel=<?php echo $current_panel ?>" method="post">
|
@@ -132,6 +140,35 @@ wp_print_scripts( 'quicktags' );
|
|
132 |
<div class="description"><?php _e( 'Send a copy of all Notifications to the administrator.', 'subscribe-reloaded' ); ?></div>
|
133 |
</td>
|
134 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
135 |
</tbody>
|
136 |
</table>
|
137 |
<p class="submit"><input type="submit" value="<?php _e( 'Save Changes' ) ?>" class="button-primary" name="Submit">
|
5 |
exit;
|
6 |
}
|
7 |
|
8 |
+
$faulty_fields = '';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
10 |
+
if ( array_key_exists( "generate_key", $_POST ) ) {
|
11 |
+
global $wp_subscribe_reloaded;
|
12 |
+
$unique_key = $wp_subscribe_reloaded->generate_key();
|
13 |
+
subscribe_reloaded_update_option( 'unique_key', $unique_key, 'text' );
|
14 |
+
} else {
|
15 |
+
// Update options
|
16 |
+
if ( isset( $_POST['options'] ) ) {
|
17 |
+
if ( isset( $_POST['options']['purge_days'] ) && ! subscribe_reloaded_update_option( 'purge_days', $_POST['options']['purge_days'], 'integer' ) ) {
|
18 |
+
$faulty_fields = __( 'Autopurge requests', 'subscribe-reloaded' ) . ', ';
|
19 |
+
}
|
20 |
+
if ( isset( $_POST['options']['enable_double_check'] ) && ! subscribe_reloaded_update_option( 'enable_double_check', $_POST['options']['enable_double_check'], 'yesno' ) ) {
|
21 |
+
$faulty_fields = __( 'Enable double check', 'subscribe-reloaded' ) . ', ';
|
22 |
+
}
|
23 |
+
if ( isset( $_POST['options']['notify_authors'] ) && ! subscribe_reloaded_update_option( 'notify_authors', $_POST['options']['notify_authors'], 'yesno' ) ) {
|
24 |
+
$faulty_fields = __( 'Subscribe authors', 'subscribe-reloaded' ) . ', ';
|
25 |
+
}
|
26 |
+
if ( isset( $_POST['options']['enable_html_emails'] ) && ! subscribe_reloaded_update_option( 'enable_html_emails', $_POST['options']['enable_html_emails'], 'yesno' ) ) {
|
27 |
+
$faulty_fields = __( 'Enable HTML emails', 'subscribe-reloaded' ) . ', ';
|
28 |
+
}
|
29 |
+
if ( isset( $_POST['options']['htmlify_message_links'] ) && ! subscribe_reloaded_update_option( 'htmlify_message_links', $_POST['options']['htmlify_message_links'], 'yesno' ) ) {
|
30 |
+
$faulty_fields = __( 'HTMLify Links in HTML emails', 'subscribe-reloaded' ) . ', ';
|
31 |
+
}
|
32 |
+
if ( isset( $_POST['options']['process_trackbacks'] ) && ! subscribe_reloaded_update_option( 'process_trackbacks', $_POST['options']['process_trackbacks'], 'yesno' ) ) {
|
33 |
+
$faulty_fields = __( 'Send trackbacks', 'subscribe-reloaded' ) . ', ';
|
34 |
+
}
|
35 |
+
if ( isset( $_POST['options']['enable_admin_messages'] ) && ! subscribe_reloaded_update_option( 'enable_admin_messages', $_POST['options']['enable_admin_messages'], 'yesno' ) ) {
|
36 |
+
$faulty_fields = __( 'Notify admin', 'subscribe-reloaded' ) . ', ';
|
37 |
+
}
|
38 |
+
if ( isset( $_POST['options']['admin_subscribe'] ) && ! subscribe_reloaded_update_option( 'admin_subscribe', $_POST['options']['admin_subscribe'], 'yesno' ) ) {
|
39 |
+
$faulty_fields = __( 'Let admin subscribe', 'subscribe-reloaded' ) . ', ';
|
40 |
+
}
|
41 |
+
if ( isset( $_POST['options']['admin_bcc'] ) && ! subscribe_reloaded_update_option( 'admin_bcc', $_POST['options']['admin_bcc'], 'yesno' ) ) {
|
42 |
+
$faulty_fields = __( 'BCC admin on Notifications', 'subscribe-reloaded' ) . ', ';
|
43 |
+
}
|
44 |
}
|
|
|
45 |
}
|
46 |
+
|
47 |
+
// Display an alert in the admin interface if something went wrong
|
48 |
+
echo '<div class="updated fade"><p>';
|
49 |
+
if ( empty( $faulty_fields ) ) {
|
50 |
+
_e( 'Your settings have been successfully updated.', 'subscribe-reloaded' );
|
51 |
+
} else {
|
52 |
+
_e( 'There was an error updating the following fields:', 'subscribe-reloaded' );
|
53 |
+
echo ' <strong>' . substr( $faulty_fields, 0, - 2 ) . '</strong>';
|
54 |
+
}
|
55 |
+
echo "</p></div>\n";
|
56 |
+
|
57 |
wp_print_scripts( 'quicktags' );
|
58 |
?>
|
59 |
<form action="admin.php?page=subscribe-to-comments-reloaded/options/index.php&subscribepanel=<?php echo $current_panel ?>" method="post">
|
140 |
<div class="description"><?php _e( 'Send a copy of all Notifications to the administrator.', 'subscribe-reloaded' ); ?></div>
|
141 |
</td>
|
142 |
</tr>
|
143 |
+
<tr>
|
144 |
+
<th scope="row">
|
145 |
+
<label for="admin_bcc"><?php _e( 'StCR Unique Key', 'subscribe-reloaded' ) ?></label></th>
|
146 |
+
<td>
|
147 |
+
<?php
|
148 |
+
if ( subscribe_reloaded_get_option( 'unique_key' ) == "" ) :
|
149 |
+
_e(
|
150 |
+
"This Unique Key is not set, please click the following button to ",
|
151 |
+
'subscribe-reloaded'
|
152 |
+
);
|
153 |
+
?>
|
154 |
+
<input type="submit" value="<?php _e( 'Generate' ) ?>" class="button-primary" size="6" name="generate_key">
|
155 |
+
<?php
|
156 |
+
else :
|
157 |
+
?>
|
158 |
+
<input type="text" name="options[uk_key]" id="uk_key"
|
159 |
+
value="<?php echo subscribe_reloaded_get_option( 'unique_key' ); ?>" size="35" disabled>
|
160 |
+
<div class="description">
|
161 |
+
<?php _e(
|
162 |
+
"This Unique Key will be use to send the notification to your subscribers with more
|
163 |
+
security.",
|
164 |
+
'subscribe-reloaded'
|
165 |
+
); ?></div>
|
166 |
+
<input type="submit" value="<?php _e( 'Generate' ) ?>" class="button-primary" size="6" name="generate_key" style="background-color: #D54E21;border-color: #B34B28;">
|
167 |
+
<?php
|
168 |
+
endif;
|
169 |
+
?>
|
170 |
+
</td>
|
171 |
+
</tr>
|
172 |
</tbody>
|
173 |
</table>
|
174 |
<p class="submit"><input type="submit" value="<?php _e( 'Save Changes' ) ?>" class="button-primary" name="Submit">
|
options/panel6.php
CHANGED
@@ -15,10 +15,13 @@ if ( ! function_exists( 'is_admin' ) || ! is_admin() ) {
|
|
15 |
</form>
|
16 |
<hr>
|
17 |
|
18 |
-
<p><?php _e( 'How valuable is the feature offered by this plugin to your visitors? Subscribe to Comments Reloaded is and will always be free, but consider supporting the author if this plugin made your web site better, especially if you are making money out of it. Any donation received will be reinvested in the development of Subscribe to Comments Reloaded
|
19 |
|
20 |
<h3><?php _e( "Don't want to donate? You can still help", 'subscribe-reloaded' ) ?></h3>
|
21 |
-
<p><?php _e( "If you don't want to donate money, please consider blogging about my plugin with a link to the plugin's page. Please let your readers know what makes your blog better. You can also contribute donating your time: do not hesitate to send me bug reports, your localization files, ideas on how to improve Subscribe to Comments Reloaded and so on. Whatever you do, thanks for using my plugin!", 'subscribe-reloaded' ) ?></p>
|
|
|
|
|
|
|
22 |
|
23 |
<h3><?php _e( "Vote and show your appreciation", 'subscribe-reloaded' ) ?></h3>
|
24 |
-
<p><?php _e( 'Tell other people if Subscribe to Comments Reloaded works for you and how good it is. <a href="http://wordpress.org/extend/plugins/subscribe-to-comments-reloaded/">Rate it</a> on its Plugin Directory page.', 'subscribe-reloaded' ) ?></p>
|
15 |
</form>
|
16 |
<hr>
|
17 |
|
18 |
+
<p><?php _e( 'How valuable is the feature offered by this plugin to your visitors? <strong>Subscribe to Comments Reloaded</strong> is and will always be free, but consider supporting the author if this plugin made your web site better, especially if you are making money out of it. Any donation received will be reinvested in the development of <strong>Subscribe to Comments Reloaded</strong>, and to buy some food for my hungry family.', 'subscribe-reloaded' ) ?></p>
|
19 |
|
20 |
<h3><?php _e( "Don't want to donate? You can still help", 'subscribe-reloaded' ) ?></h3>
|
21 |
+
<p><?php _e( "If you don't want to donate money, please consider blogging about my plugin with a link to the plugin's page. Please let your readers know what makes your blog better. You can also contribute donating your time: do not hesitate to send me bug reports, your localization files, ideas on how to improve <strong>Subscribe to Comments Reloaded</strong> and so on. Whatever you do, thanks for using my plugin!", 'subscribe-reloaded' ) ?></p>
|
22 |
+
|
23 |
+
<h3><?php _e( "Did you find a Bug on the plugin?", 'subscribe-reloaded' ) ?></h3>
|
24 |
+
<p><?php _e( 'Please report any bug on the <a href="https://github.com/stcr/subscribe-to-comments-reloaded/issues/" target="_blank">GitHub</a> Page rather than on the WordPress Support page.', 'subscribe-reloaded' ) ?></p>
|
25 |
|
26 |
<h3><?php _e( "Vote and show your appreciation", 'subscribe-reloaded' ) ?></h3>
|
27 |
+
<p><?php _e( 'Tell other people if <strong>Subscribe to Comments Reloaded</strong> works for you and how good it is. <a href="http://wordpress.org/extend/plugins/subscribe-to-comments-reloaded/">Rate it</a> on its Plugin Directory page.', 'subscribe-reloaded' ) ?></p>
|
readme.txt
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
=== Subscribe To Comments Reloaded ===
|
2 |
-
Author: camu,
|
3 |
-
Contributors: coolmann,
|
4 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=XF86X93FDCGYA&lc=US&item_name=Datasoft%20Engineering&item_number=DI%2dSTCR¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted
|
5 |
Tags: subscribe, comments, notification, subscription, manage, double check-in, follow, commenting
|
6 |
Requires at least: 2.9.2
|
7 |
-
Tested up to: 4.
|
8 |
-
Stable tag:
|
9 |
|
10 |
Subscribe to Comments Reloaded allows commenters to sign up for e-mail notifications of subsequent replies.
|
11 |
|
@@ -61,6 +61,9 @@ Yes! Just disable the corresponding option under Settings > Comment Form and the
|
|
61 |
The information of your configuration needs to be updated. Go to the Subscribe to Comments Reloaded settings and click the `Save Changes` button on the tab
|
62 |
where you have you messages with HTML.
|
63 |
|
|
|
|
|
|
|
64 |
== Screenshots ==
|
65 |
|
66 |
1. Manage your subscriptions
|
@@ -71,6 +74,10 @@ where you have you messages with HTML.
|
|
71 |
|
72 |
== Upgrade Notice ==
|
73 |
|
|
|
|
|
|
|
|
|
74 |
== v141103 ==
|
75 |
|
76 |
**Broken links and settings issue** Please upgrade to fix the URL creation on the Request Management link and to save the settings values correctly.
|
@@ -85,7 +92,16 @@ v1410124 Fixed several issues reported on the support forum like broken links, r
|
|
85 |
|
86 |
== Changelog ==
|
87 |
|
88 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
* **Fix** URL generation for the Request Management link.
|
90 |
* **Fix** Saving of settings values. Settings with a single quote was not saving correcting. Every option with a single quote was broken, after update please save the settings on every tab where you have single quotes.
|
91 |
|
1 |
=== Subscribe To Comments Reloaded ===
|
2 |
+
Author: camu, reedyseth, andreasbo, raamdev
|
3 |
+
Contributors: coolmann, reedyseth, raamdev
|
4 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=XF86X93FDCGYA&lc=US&item_name=Datasoft%20Engineering&item_number=DI%2dSTCR¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted
|
5 |
Tags: subscribe, comments, notification, subscription, manage, double check-in, follow, commenting
|
6 |
Requires at least: 2.9.2
|
7 |
+
Tested up to: 4.1
|
8 |
+
Stable tag: 150207
|
9 |
|
10 |
Subscribe to Comments Reloaded allows commenters to sign up for e-mail notifications of subsequent replies.
|
11 |
|
61 |
The information of your configuration needs to be updated. Go to the Subscribe to Comments Reloaded settings and click the `Save Changes` button on the tab
|
62 |
where you have you messages with HTML.
|
63 |
|
64 |
+
= How to generate a new Key for my Site? =
|
65 |
+
Just go to the Options Panel and click the generate button. By generating a new key you prevent the spam bots to steal your links.
|
66 |
+
|
67 |
== Screenshots ==
|
68 |
|
69 |
1. Manage your subscriptions
|
74 |
|
75 |
== Upgrade Notice ==
|
76 |
|
77 |
+
== v150207 ==
|
78 |
+
|
79 |
+
Improvements on the links security. Now you get a Unique Key for your site. Check the Options Panel.
|
80 |
+
|
81 |
== v141103 ==
|
82 |
|
83 |
**Broken links and settings issue** Please upgrade to fix the URL creation on the Request Management link and to save the settings values correctly.
|
92 |
|
93 |
== Changelog ==
|
94 |
|
95 |
+
= 150207 =
|
96 |
+
|
97 |
+
* **Fix** The output link for the manage subscriptions.
|
98 |
+
* **Fix** Display of URL to use escape characters.
|
99 |
+
* **New Feature** a Unique Key to the plugin. This Key will help to prevent spam bots to hijack your links.
|
100 |
+
* **Add** Plugin GitHub link for bug reporting. Check the "You can Help" panel.
|
101 |
+
* **See** the commit history on (GitHub)[https://github.com/stcr/subscribe-to-comments-reloaded]
|
102 |
+
|
103 |
+
= v141103 =
|
104 |
+
|
105 |
* **Fix** URL generation for the Request Management link.
|
106 |
* **Fix** Saving of settings values. Settings with a single quote was not saving correcting. Every option with a single quote was broken, after update please save the settings on every tab where you have single quotes.
|
107 |
|
subscribe-to-comments-reloaded.php
CHANGED
@@ -2,15 +2,15 @@
|
|
2 |
/*
|
3 |
Plugin Name: Subscribe to Comments Reloaded
|
4 |
|
5 |
-
Version:
|
6 |
-
Stable tag:
|
7 |
Requires at least: 2.9.2
|
8 |
-
Tested up to: 4.
|
9 |
|
10 |
Plugin URI: http://wordpress.org/extend/plugins/subscribe-to-comments-reloaded/
|
11 |
Description: Subscribe to Comments Reloaded is a robust plugin that enables commenters to sign up for e-mail notifications. It includes a full-featured subscription manager that your commenters can use to unsubscribe to certain posts or suspend all notifications.
|
12 |
-
Contributors: camu,
|
13 |
-
Author: camu,
|
14 |
*/
|
15 |
|
16 |
// Avoid direct access to this piece of code
|
@@ -39,7 +39,9 @@ function subscribe_reloaded_show() {
|
|
39 |
$user_link = qtrans_convertURL( $user_link );
|
40 |
}
|
41 |
|
42 |
-
$manager_link = ( strpos( $user_link, '?' ) !== false ) ?
|
|
|
|
|
43 |
|
44 |
// Load localization files
|
45 |
load_plugin_textdomain( 'subscribe-reloaded', false, dirname( plugin_basename( __FILE__ ) ) . '/langs/' );
|
@@ -105,7 +107,7 @@ function subscribe_reloaded_show() {
|
|
105 |
if ( function_exists( 'qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage' ) ) {
|
106 |
$html_to_show = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage( $html_to_show );
|
107 |
}
|
108 |
-
echo "<!-- BEGIN: subscribe to comments reloaded -->" .
|
109 |
}
|
110 |
|
111 |
// Show the checkbox - You can manually override this by adding the corresponding function in your template
|
@@ -115,7 +117,7 @@ if ( get_option( 'subscribe_reloaded_show_subscription_box', 'yes' ) == 'yes' )
|
|
115 |
|
116 |
class wp_subscribe_reloaded {
|
117 |
|
118 |
-
public $current_version = '
|
119 |
|
120 |
/**
|
121 |
* Constructor -- Sets things up.
|
@@ -281,6 +283,7 @@ class wp_subscribe_reloaded {
|
|
281 |
add_option( 'subscribe_reloaded_manager_page', '/comment-subscriptions/', '', 'no' );
|
282 |
}
|
283 |
|
|
|
284 |
add_option( 'subscribe_reloaded_show_subscription_box', 'yes', '', 'no' );
|
285 |
add_option( 'subscribe_reloaded_checked_by_default', 'no', '', 'no' );
|
286 |
add_option( 'subscribe_reloaded_enable_advanced_subscriptions', 'no', '', 'no' );
|
@@ -639,7 +642,7 @@ class wp_subscribe_reloaded {
|
|
639 |
) {
|
640 |
$include_post_content = include WP_PLUGIN_DIR . '/subscribe-to-comments-reloaded/templates/confirm.php';
|
641 |
} // Manage your subscriptions (user)
|
642 |
-
elseif ( ! empty( $email ) && (
|
643 |
$include_post_content = include WP_PLUGIN_DIR . '/subscribe-to-comments-reloaded/templates/user.php';
|
644 |
}
|
645 |
|
@@ -1057,7 +1060,7 @@ class wp_subscribe_reloaded {
|
|
1057 |
}
|
1058 |
|
1059 |
$clean_email = $this->clean_email( $_email );
|
1060 |
-
$subscriber_salt = $this->
|
1061 |
|
1062 |
$manager_link .= ( ( strpos( $manager_link, '?' ) !== false ) ? '&' : '?' ) . "sre=" . urlencode( $clean_email ) . "&srk=$subscriber_salt";
|
1063 |
$confirm_link = "$manager_link&srp=$_post_ID&sra=c";
|
@@ -1108,7 +1111,7 @@ class wp_subscribe_reloaded {
|
|
1108 |
}
|
1109 |
|
1110 |
$clean_email = $this->clean_email( $_email );
|
1111 |
-
$subscriber_salt = $this->
|
1112 |
|
1113 |
$manager_link .= ( ( strpos( $manager_link, '?' ) !== false ) ? '&' : '?' ) . "sre=" . urlencode( $clean_email ) . "&srk=$subscriber_salt";
|
1114 |
|
@@ -1179,8 +1182,19 @@ class wp_subscribe_reloaded {
|
|
1179 |
/**
|
1180 |
* Generate a unique key to allow users to manage their subscriptions
|
1181 |
*/
|
1182 |
-
public function generate_key( $_email ) {
|
1183 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1184 |
}
|
1185 |
// end generate_key
|
1186 |
|
@@ -1246,7 +1260,8 @@ class wp_subscribe_reloaded {
|
|
1246 |
* Adds custom HTML code to the HEAD section of the management page
|
1247 |
*/
|
1248 |
public function add_custom_header_meta() {
|
1249 |
-
|
|
|
1250 |
}
|
1251 |
// end add_custom_header_meta
|
1252 |
|
@@ -1624,7 +1639,11 @@ class wp_subscribe_reloaded {
|
|
1624 |
* Checks if a key is valid for a given email address
|
1625 |
*/
|
1626 |
private function _is_valid_key( $_key, $_email ) {
|
1627 |
-
|
|
|
|
|
|
|
|
|
1628 |
}
|
1629 |
// end _is_valid_key
|
1630 |
}
|
2 |
/*
|
3 |
Plugin Name: Subscribe to Comments Reloaded
|
4 |
|
5 |
+
Version: 150207
|
6 |
+
Stable tag: 150207
|
7 |
Requires at least: 2.9.2
|
8 |
+
Tested up to: 4.1
|
9 |
|
10 |
Plugin URI: http://wordpress.org/extend/plugins/subscribe-to-comments-reloaded/
|
11 |
Description: Subscribe to Comments Reloaded is a robust plugin that enables commenters to sign up for e-mail notifications. It includes a full-featured subscription manager that your commenters can use to unsubscribe to certain posts or suspend all notifications.
|
12 |
+
Contributors: camu, reedyseth, andreasbo, raamdev
|
13 |
+
Author: camu, reedyseth, Raam Dev
|
14 |
*/
|
15 |
|
16 |
// Avoid direct access to this piece of code
|
39 |
$user_link = qtrans_convertURL( $user_link );
|
40 |
}
|
41 |
|
42 |
+
$manager_link = ( strpos( $user_link, '?' ) !== false ) ?
|
43 |
+
"$user_link&srp=$post->ID&srk=" . get_option( 'subscribe_reloaded_unique_key' ) :
|
44 |
+
"$user_link?srp=$post->ID&srk=" . get_option( 'subscribe_reloaded_unique_key' );
|
45 |
|
46 |
// Load localization files
|
47 |
load_plugin_textdomain( 'subscribe-reloaded', false, dirname( plugin_basename( __FILE__ ) ) . '/langs/' );
|
107 |
if ( function_exists( 'qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage' ) ) {
|
108 |
$html_to_show = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage( $html_to_show );
|
109 |
}
|
110 |
+
echo "<!-- BEGIN: subscribe to comments reloaded -->" . $html_to_show . "<!-- END: subscribe to comments reloaded -->";
|
111 |
}
|
112 |
|
113 |
// Show the checkbox - You can manually override this by adding the corresponding function in your template
|
117 |
|
118 |
class wp_subscribe_reloaded {
|
119 |
|
120 |
+
public $current_version = '150207';
|
121 |
|
122 |
/**
|
123 |
* Constructor -- Sets things up.
|
283 |
add_option( 'subscribe_reloaded_manager_page', '/comment-subscriptions/', '', 'no' );
|
284 |
}
|
285 |
|
286 |
+
add_option( 'subscribe_reloaded_unique_key', $this->generate_key(), '', 'no' );
|
287 |
add_option( 'subscribe_reloaded_show_subscription_box', 'yes', '', 'no' );
|
288 |
add_option( 'subscribe_reloaded_checked_by_default', 'no', '', 'no' );
|
289 |
add_option( 'subscribe_reloaded_enable_advanced_subscriptions', 'no', '', 'no' );
|
642 |
) {
|
643 |
$include_post_content = include WP_PLUGIN_DIR . '/subscribe-to-comments-reloaded/templates/confirm.php';
|
644 |
} // Manage your subscriptions (user)
|
645 |
+
elseif ( ! empty( $email ) && ( ! empty( $key ) && $this->_is_valid_key( $key, $email ) || current_user_can( 'read' ) ) ) {
|
646 |
$include_post_content = include WP_PLUGIN_DIR . '/subscribe-to-comments-reloaded/templates/user.php';
|
647 |
}
|
648 |
|
1060 |
}
|
1061 |
|
1062 |
$clean_email = $this->clean_email( $_email );
|
1063 |
+
$subscriber_salt = $this->generate_temp_key( $clean_email );
|
1064 |
|
1065 |
$manager_link .= ( ( strpos( $manager_link, '?' ) !== false ) ? '&' : '?' ) . "sre=" . urlencode( $clean_email ) . "&srk=$subscriber_salt";
|
1066 |
$confirm_link = "$manager_link&srp=$_post_ID&sra=c";
|
1111 |
}
|
1112 |
|
1113 |
$clean_email = $this->clean_email( $_email );
|
1114 |
+
$subscriber_salt = $this->generate_temp_key( $clean_email );
|
1115 |
|
1116 |
$manager_link .= ( ( strpos( $manager_link, '?' ) !== false ) ? '&' : '?' ) . "sre=" . urlencode( $clean_email ) . "&srk=$subscriber_salt";
|
1117 |
|
1182 |
/**
|
1183 |
* Generate a unique key to allow users to manage their subscriptions
|
1184 |
*/
|
1185 |
+
public function generate_key( $_email = "" ) {
|
1186 |
+
$salt = time();
|
1187 |
+
$user = wp_get_current_user();
|
1188 |
+
$uniqueKey = md5( get_current_user_id() . $user->user_login . $salt . $_email );
|
1189 |
+
|
1190 |
+
return $uniqueKey;
|
1191 |
+
}
|
1192 |
+
|
1193 |
+
public function generate_temp_key( $_email ) {
|
1194 |
+
$uniqueKey = get_option( "subscribe_reloaded_unique_key" );
|
1195 |
+
$key = md5( $uniqueKey . $_email );
|
1196 |
+
|
1197 |
+
return $key;
|
1198 |
}
|
1199 |
// end generate_key
|
1200 |
|
1260 |
* Adds custom HTML code to the HEAD section of the management page
|
1261 |
*/
|
1262 |
public function add_custom_header_meta() {
|
1263 |
+
$a = html_entity_decode( stripslashes( get_option( 'subscribe_reloaded_custom_header_meta', '' ) ), ENT_QUOTES, 'UTF-8' );
|
1264 |
+
echo $a;
|
1265 |
}
|
1266 |
// end add_custom_header_meta
|
1267 |
|
1639 |
* Checks if a key is valid for a given email address
|
1640 |
*/
|
1641 |
private function _is_valid_key( $_key, $_email ) {
|
1642 |
+
if ( $this->generate_temp_key( $_email ) === $_key ) {
|
1643 |
+
return true;
|
1644 |
+
} else {
|
1645 |
+
return false;
|
1646 |
+
}
|
1647 |
}
|
1648 |
// end _is_valid_key
|
1649 |
}
|
templates/request-management-link.php
CHANGED
@@ -23,7 +23,7 @@ if ( ! empty( $email ) ) {
|
|
23 |
}
|
24 |
|
25 |
$clean_email = $wp_subscribe_reloaded->clean_email( $email );
|
26 |
-
$subscriber_salt = $wp_subscribe_reloaded->
|
27 |
|
28 |
$headers = "MIME-Version: 1.0\n";
|
29 |
$headers .= "From: $from_name <$from_email>\n";
|
@@ -36,7 +36,7 @@ if ( ! empty( $email ) ) {
|
|
36 |
// Replace tags with their actual values
|
37 |
$subject = str_replace( '[blog_name]', get_bloginfo( 'name' ), $subject );
|
38 |
$message = str_replace( '[blog_name]', get_bloginfo( 'name' ), $message );
|
39 |
-
$message = str_replace( '[manager_link]', $manager_link, $message );
|
40 |
|
41 |
// QTranslate support
|
42 |
if ( function_exists( 'qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage' ) ) {
|
@@ -55,7 +55,7 @@ if ( ! empty( $email ) ) {
|
|
55 |
if ( function_exists( 'qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage' ) ) {
|
56 |
$message = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage( $message );
|
57 |
}
|
58 |
-
?>
|
59 |
<p><?php echo $message ?></p>
|
60 |
<form action="<?php if ( $helper->verifyXSS( $_SERVER['REQUEST_URI'] ) ) {
|
61 |
echo "#";
|
23 |
}
|
24 |
|
25 |
$clean_email = $wp_subscribe_reloaded->clean_email( $email );
|
26 |
+
$subscriber_salt = $wp_subscribe_reloaded->generate_temp_key( $clean_email );
|
27 |
|
28 |
$headers = "MIME-Version: 1.0\n";
|
29 |
$headers .= "From: $from_name <$from_email>\n";
|
36 |
// Replace tags with their actual values
|
37 |
$subject = str_replace( '[blog_name]', get_bloginfo( 'name' ), $subject );
|
38 |
$message = str_replace( '[blog_name]', get_bloginfo( 'name' ), $message );
|
39 |
+
$message = str_replace( '[manager_link]', '<a href="' . $manager_link . '">' . $manager_link . '</a>', $message );
|
40 |
|
41 |
// QTranslate support
|
42 |
if ( function_exists( 'qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage' ) ) {
|
55 |
if ( function_exists( 'qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage' ) ) {
|
56 |
$message = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage( $message );
|
57 |
}
|
58 |
+
?>
|
59 |
<p><?php echo $message ?></p>
|
60 |
<form action="<?php if ( $helper->verifyXSS( $_SERVER['REQUEST_URI'] ) ) {
|
61 |
echo "#";
|
uninstall.php
CHANGED
@@ -12,6 +12,7 @@ $wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}subscribe_reloaded" ); // Com
|
|
12 |
$wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key LIKE '\_stcr@\_%'" );
|
13 |
|
14 |
// Goodbye options...
|
|
|
15 |
delete_option( 'subscribe_reloaded_manager_page_enabled' );
|
16 |
delete_option( 'subscribe_reloaded_manager_page' );
|
17 |
delete_option( 'subscribe_reloaded_manager_page_title' );
|
12 |
$wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key LIKE '\_stcr@\_%'" );
|
13 |
|
14 |
// Goodbye options...
|
15 |
+
delete_option( 'subscribe_reloaded_unique_key' );
|
16 |
delete_option( 'subscribe_reloaded_manager_page_enabled' );
|
17 |
delete_option( 'subscribe_reloaded_manager_page' );
|
18 |
delete_option( 'subscribe_reloaded_manager_page_title' );
|