Subscribe2 - Version 1.7

Version Description

Download this release

Release Info

Developer MattyRob
Plugin Icon 128x128 Subscribe2
Version 1.7
Comparing to
See all releases

Code changes from version 1.1 to 1.7

subscribe.php CHANGED
@@ -25,14 +25,17 @@ $hash = (isset($_GET['x'])) ? $_GET['x'] : '';
25
  if ('' != $hash) {
26
  $foo = explode('x', $hash);
27
  $action = $foo[0];
28
- $id = $foo[2];
29
  $sql = "SELECT email FROM " . $s2_table . " WHERE id='" . $id . "'";
30
  $email = $wpdb->get_var($sql);
31
  if ('' == $email) {
32
  main('invalid');
33
  }
34
  if ('a' == $action) {
35
- if ('2' == s2_check($email)) {
 
 
 
36
  s2_confirm($email);
37
  main('added');
38
  } else {
@@ -56,13 +59,14 @@ if ( strtolower($admin->user_email) == strtolower($email) ) {
56
  }
57
 
58
  if ('add' == $action) {
59
- if ('0' !== s2_check($email)) {
 
60
  main('already_there');
61
  }
62
- s2_add($email);
63
  s2_send_confirmation ($email, 'add');
64
  main('add_confirm');
65
- }elseif ('delete' == $action) {
66
  if ('0' === s2_check($email)) {
67
  main('not_there');
68
  }
@@ -88,12 +92,12 @@ if ('' == $doing) {
88
  }
89
  echo '<div id="content" class="narrowcolumn"><div class="post"><p>' . stripslashes($s2["s2_$doing"]) . "</p>\r\n";
90
  if ( ('not_there' == $doing) || ('already_there' == $doing) || ('self' == $doing) || ('invalid' == $doing) || ('welcome' == $doing) ) {
91
- echo '<p><form method="post">';
92
  echo __('Your email', 'subscribe2') . ':&#160;<input type="text" name="email" value="" size="20" />&#160;<br />';
93
  echo '<input type="radio" name="action" value="add" checked="checked" />' . __('subscribe', 'subscribe2') . "\r\n";
94
- echo '<input type="radio" name="action" value="delete" />' . __('unsubscribe', 'subscribe2') . "&#160\r\n";
95
- echo '<input type="submit" value="Send!" />';
96
- echo "</form></p>\r\n";
97
  }
98
  echo '<p><strong>' . __('Note', 'subscribe2') . ':</strong> ' . get_settings('blogname') . ' ' . __('values personal privacy', 'subscribe2') . '.<br />';
99
  _e('This list is used solely to inform you when new posts are added.', 'subscribe2');
@@ -113,7 +117,7 @@ die;
113
  // return values:
114
  // 0 == not present
115
  // 1 == present, and confirmed
116
- // 2 == present, and not confirmed
117
  ////////////////////
118
  function s2_check ($email = '') {
119
  global $wpdb, $s2_table;
@@ -128,7 +132,7 @@ $foo = $wpdb->get_row($query);
128
  if ('1' === $foo->active) {
129
  return '1';
130
  } elseif ('0' === $foo->active) {
131
- return '2';
132
  } else {
133
  return '0';
134
  }
@@ -138,18 +142,24 @@ if ('1' === $foo->active) {
138
  // *** s2_add() ***
139
  // add an email address to the database with a status of "0" (unconfirmed)
140
  ///////////////////
141
- function s2_add ($email = '') {
142
  global $wpdb, $s2_table;
143
  if ( ('' == $email) || (! is_email($email)) ) {
144
  // no valid email, so bail out
145
  return;
146
  }
147
- // check to make sure the address isn't already there
148
- if ('0' != s2_check($email)) {
149
- // user exists, so bail out
150
- return '1';
 
 
 
 
151
  }
152
- $sql = "INSERT INTO " . $s2_table . " (email, active) VALUES ('" . $email . "', '0')";
 
 
153
  $result = $wpdb->query($sql);
154
  } // s2_add
155
 
@@ -167,12 +177,14 @@ if ( ('' == $email) || (! is_email($email)) ) {
167
 
168
  $admin = get_userdata(1);
169
 
170
- if ('2' == s2_check($email)) {
171
  $sql = "UPDATE " . $s2_table . " SET active = '1' WHERE email = '" . $email . "'";
172
  $result = $wpdb->query($sql);
173
  $mailtext = __('The following email address has successfully subscribed to your blog', 'subscribe2') . ":\n\n $email\n";
174
- $mailheaders = "From: $admin->user_nickname <$admin->user_email>";
175
- mail($admin->user_email, stripslashes($s2['s2_subscribed_admin_subject']), $mailtext, $mailheaders);
 
 
176
  }
177
  } // s2_confirm
178
 
@@ -197,8 +209,10 @@ $result = $wpdb->query($sql);
197
  $admin = get_userdata(1);
198
 
199
  $mailtext = __('The following email address has successfully unsubscribed from your blog', 'subscribe2') . ":\n\n $email\n";
200
- $mailheaders = "From: $admin->user_nickname <$admin->user_email>";
201
- mail($admin->user_email, $s2['s2_unsubscribed_admin_subject'], $mailtext, $mailheaders);
 
 
202
  } // s2_delete
203
 
204
  ///////////////////////////
@@ -235,7 +249,10 @@ $subject = stripslashes(str_replace("BLOGNAME", get_settings('blogname'), $s2['s
235
  $subject = str_replace("MYNAME", $admin->user_nickname, $subject);
236
  $subject = str_replace("EMAIL", $admin->user_email, $subject);
237
 
 
 
238
  $mailheaders = "From: $admin->user_nickname <$admin->user_email>";
 
239
  mail ($email, $subject, $body, $mailheaders);
240
  } // s2_send_confirmation()
241
 
25
  if ('' != $hash) {
26
  $foo = explode('x', $hash);
27
  $action = $foo[0];
28
+ $id = intval($foo[2]);
29
  $sql = "SELECT email FROM " . $s2_table . " WHERE id='" . $id . "'";
30
  $email = $wpdb->get_var($sql);
31
  if ('' == $email) {
32
  main('invalid');
33
  }
34
  if ('a' == $action) {
35
+ $result = s2_check($email);
36
+ if ('0' === $result) {
37
+ main('not_there');
38
+ } elseif ($result > 1) {
39
  s2_confirm($email);
40
  main('added');
41
  } else {
59
  }
60
 
61
  if ('add' == $action) {
62
+ $result = s2_check($email);
63
+ if ( ($result == 1) || ($result > date('Y-m-d', strtotime('-1 day'))) ) {
64
  main('already_there');
65
  }
66
+ s2_add($email, $result);
67
  s2_send_confirmation ($email, 'add');
68
  main('add_confirm');
69
+ } elseif ('delete' == $action) {
70
  if ('0' === s2_check($email)) {
71
  main('not_there');
72
  }
92
  }
93
  echo '<div id="content" class="narrowcolumn"><div class="post"><p>' . stripslashes($s2["s2_$doing"]) . "</p>\r\n";
94
  if ( ('not_there' == $doing) || ('already_there' == $doing) || ('self' == $doing) || ('invalid' == $doing) || ('welcome' == $doing) ) {
95
+ echo '<form method="post" action="' . get_bloginfo('home') . '/subscribe.php"><p>';
96
  echo __('Your email', 'subscribe2') . ':&#160;<input type="text" name="email" value="" size="20" />&#160;<br />';
97
  echo '<input type="radio" name="action" value="add" checked="checked" />' . __('subscribe', 'subscribe2') . "\r\n";
98
+ echo '<input type="radio" name="action" value="delete" />' . __('unsubscribe', 'subscribe2') . "&#160;\r\n";
99
+ echo '<input type="submit" value="' . __('Send', 'subscribe2') . '!" />';
100
+ echo "</p></form>\r\n";
101
  }
102
  echo '<p><strong>' . __('Note', 'subscribe2') . ':</strong> ' . get_settings('blogname') . ' ' . __('values personal privacy', 'subscribe2') . '.<br />';
103
  _e('This list is used solely to inform you when new posts are added.', 'subscribe2');
117
  // return values:
118
  // 0 == not present
119
  // 1 == present, and confirmed
120
+ // YYY-MM-DD == present, and not confirmed (date of subscription)
121
  ////////////////////
122
  function s2_check ($email = '') {
123
  global $wpdb, $s2_table;
132
  if ('1' === $foo->active) {
133
  return '1';
134
  } elseif ('0' === $foo->active) {
135
+ return $foo->date;
136
  } else {
137
  return '0';
138
  }
142
  // *** s2_add() ***
143
  // add an email address to the database with a status of "0" (unconfirmed)
144
  ///////////////////
145
+ function s2_add ($email = '', $status = '0') {
146
  global $wpdb, $s2_table;
147
  if ( ('' == $email) || (! is_email($email)) ) {
148
  // no valid email, so bail out
149
  return;
150
  }
151
+
152
+ if ($status > 1) {
153
+ // this is a known unconfirmed address
154
+ // update their timestamp because we're sending them a new
155
+ // confirmation email
156
+ $sql = "UPDATE $s2_table SET date = '" . date('Y-m-d') . "' WHERE email = '$email'";
157
+ $result = $wpdb->query($sql);
158
+ return;
159
  }
160
+
161
+ // add this address
162
+ $sql = "INSERT INTO $s2_table (email, active, date) VALUES ('$email', '0', '" . date('Y-m-d') . "')";
163
  $result = $wpdb->query($sql);
164
  } // s2_add
165
 
177
 
178
  $admin = get_userdata(1);
179
 
180
+ if (s2_check($email) > 1) {
181
  $sql = "UPDATE " . $s2_table . " SET active = '1' WHERE email = '" . $email . "'";
182
  $result = $wpdb->query($sql);
183
  $mailtext = __('The following email address has successfully subscribed to your blog', 'subscribe2') . ":\n\n $email\n";
184
+ $mailheaders = "From: \"$admin->user_nickname\" <$admin->user_email>\n";
185
+ $mailheaders .= "MIME-Version: 1.0\n";
186
+ $mailheaders .= "Content-type: text/plain; charset=\"". get_bloginfo('charset') . "\"\n";;
187
+ @wp_mail($admin->user_email, stripslashes($s2['s2_subscribed_admin_subject']), $mailtext, $mailheaders);
188
  }
189
  } // s2_confirm
190
 
209
  $admin = get_userdata(1);
210
 
211
  $mailtext = __('The following email address has successfully unsubscribed from your blog', 'subscribe2') . ":\n\n $email\n";
212
+ $mailheaders = "From: \"$admin->user_nickname\" <$admin->user_email>\n";
213
+ $mailheaders .= "MIME-Version: 1.0\n";
214
+ $mailheaders .= "Content-type: text/plain; charset=\"". get_bloginfo('charset') . "\"\n";
215
+ @wp_mail($admin->user_email, $s2['s2_unsubscribed_admin_subject'], $mailtext, $mailheaders);
216
  } // s2_delete
217
 
218
  ///////////////////////////
249
  $subject = str_replace("MYNAME", $admin->user_nickname, $subject);
250
  $subject = str_replace("EMAIL", $admin->user_email, $subject);
251
 
252
+ $mailheaders .= "MIME-Version: 1.0\n";
253
+ $mailheaders .= "Content-type: text/plain; charset=\"". get_bloginfo('charset') . "\"\n";
254
  $mailheaders = "From: $admin->user_nickname <$admin->user_email>";
255
+
256
  mail ($email, $subject, $body, $mailheaders);
257
  } // s2_send_confirmation()
258
 
subscribe2.CHANGELOG CHANGED
@@ -1,4 +1,17 @@
1
  Changelog:
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  2.1.0
3
  fresh i18n effort: /wp-content/subscribe2/ contains the .mo and .po files
4
  both subscribe2.php and subscribe.php are translatable: place the appropriate .po file in the same directory as the source file for which it provides the translation
1
  Changelog:
2
+ 2.1.6
3
+ fix some header issues
4
+ If sending Excerpts, and the excerpt is empty, use the text before a <!--more--> tag, if present -- thanks Gene! (http://www.terrik.com/)
5
+ 2.1.5
6
+ work about the postcache bug in WordPress 1.5.1.3 and below
7
+ 2.1.4
8
+ more i18n fixes
9
+ 2.1.3
10
+ finally (!) updated to use whatever value is used for the author/admin display name, as defined by "How to display name:" in the user's Profile.
11
+ 2.1.2
12
+ tidied up i18n: made HTML form submit buttons translatable
13
+ 2.1.1
14
+ more i18n
15
  2.1.0
16
  fresh i18n effort: /wp-content/subscribe2/ contains the .mo and .po files
17
  both subscribe2.php and subscribe.php are translatable: place the appropriate .po file in the same directory as the source file for which it provides the translation
subscribe2.README CHANGED
@@ -47,3 +47,16 @@ The .mo file you create or download will provide translations for both the WordP
47
  See here for additional localization information:
48
  http://codex.wordpress.org/Localizing_WordPress
49
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
  See here for additional localization information:
48
  http://codex.wordpress.org/Localizing_WordPress
49
 
50
+ == Frequently Asked Questions ==
51
+ Q. No emails are sent!
52
+ A. In the overwhelming majority of cases so far, this is caused by spam filters at the recipient end incorrectly flagging messages as spam. Feel free to contact me if you feel something else is going on.
53
+
54
+ Q. The subscribe form is way below my sidebar!
55
+ A.edit subscribe.php and move the line:
56
+ get_sidebar
57
+ from the top to the bottom, just above
58
+ get_footer
59
+ Be sure to enclose it in <?php ?> as needed.
60
+
61
+ Q. I posted an item dated for tomorrow, but no notification was sent!
62
+ A. Future-dated posts do not generate notification emails.
wp-content/plugins/subscribe2.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
  /*
3
  Plugin Name: Subscribe2
4
- Plugin URI: http://www.skippy.net/blog/2005/02/17/subscribe2
5
  Description: Notifies an email list when new entries are posted.
6
- Version: 2.1.1
7
  Author: Scott Merrill
8
  Author URI: http://www.skippy.net/
9
  */
@@ -11,17 +11,21 @@ Author URI: http://www.skippy.net/
11
  // ****************************************
12
  // CHANGE THIS TO 1 IF YOU ARE ON DREAMHOST
13
  // ****************************************
14
- $dreamhost = 1;
15
 
16
  /////////////////////
17
  // main program block
 
18
  add_action ('admin_menu', 'subscribe2_menu');
19
  add_action ('publish_post', 'subscribe2', 8);
20
  //////////// END MAIN PROGRAM /////////////
21
 
22
-
23
  //////////// BEGIN FUNCTIONS //////////////
24
  function subscribe2_menu() {
 
 
 
 
25
  add_management_page(__('Subscribers', 'subscribe2'), __('Subscribers', 'subscribe2'), 9, __FILE__, 's2_manage');
26
  add_options_page(__('Subscribe2 Options', 'subscribe2'), __('Subscribe2', 'subscribe2'), 9, __FILE__, 's2_options');
27
  }
@@ -35,13 +39,19 @@ $s2_table = $table_prefix . "subscribe2";
35
 
36
  // gets the name of your blog
37
  $blogname = get_settings('blogname');
 
 
 
 
 
 
38
  // gets the link to the new post
39
  $postlink = get_permalink($post_ID);
40
- $postdata = get_postdata($post_ID);
41
  $cats = wp_get_post_cats('1', $post_ID);
42
 
43
  // is this post's date set in the future?
44
- if ($postdata['Date'] > current_time('mysql')) {
45
  // if so, let's not tell anyone about this
46
  return $post_ID;
47
  }
@@ -63,13 +73,21 @@ if ('1' == $bypass) { return $post_ID; }
63
  // do we send as admin, or post author?
64
  if ('author' == $s2['s2_sender']) {
65
  // get author details
66
- $user = get_userdata($postdata['Author_ID']);
67
  } else {
68
  // get admin detailts
69
  $user = get_userdata(1);
70
  }
71
- $myname = $user->user_nicename;
72
  $myemailadd = $user->user_email;
 
 
 
 
 
 
 
 
 
73
 
74
  // gets the path to your blog directory
75
  $s2_link = get_settings('siteurl') . "/subscribe.php";
@@ -86,12 +104,12 @@ if (count($recipients) == 0) {
86
  $subject = stripslashes($s2['s2_subject']);
87
  // do any substitutions that are necessary
88
  $subject = str_replace('BLOGNAME', $blogname, $subject);
89
- $subject = str_replace('TITLE', $postdata['Title'], $subject);
90
  $subject = str_replace('MYNAME', $myname, $subject);
91
  $subject = str_replace('EMAIL', $myemailadd, $subject);
92
 
93
  // Set sender details
94
- $headers = "From: " . $myname . " <" . $myemailadd . ">\r\n";
95
 
96
  // BCC all recipients
97
  // with batching for Dreamhost
@@ -102,7 +120,7 @@ if (1 == $dreamhost) {
102
  foreach ($recipients as $recipient) {
103
  $recipient = trim($recipient);
104
  if (! empty($recipient)) {
105
- $bcc .= "Bcc: " . $recipient . "\r\n";
106
  }
107
  if (30 == $count) {
108
  $count = 1;
@@ -122,7 +140,7 @@ if (1 == $dreamhost) {
122
  foreach ($recipients as $recipient) {
123
  $recipient = trim($recipient);
124
  if (! empty($recipient)) {
125
- $headers .= "Bcc: " . $recipient . "\r\n";
126
  }
127
  }
128
  }
@@ -131,15 +149,25 @@ if (1 == $dreamhost) {
131
  $mailtext = stripslashes($s2['s2_mailtext']);
132
  $mailtext = str_replace('BLOGNAME', $blogname, $mailtext);
133
  $mailtext = str_replace('BLOGLINK', get_bloginfo('url'), $mailtext);
134
- $mailtext = str_replace('TITLE', $postdata['Title'], $mailtext);
135
  $mailtext = str_replace('PERMALINK', $postlink, $mailtext);
136
  $mailtext = str_replace('S2LINK', $s2_link, $mailtext);
137
  $mailtext = str_replace('MYNAME', $myname, $mailtext);
138
  $mailtext = str_replace('EMAIL', $myemailadd, $mailtext);
139
  if ('post' == $s2['s2_excerpt']) {
140
- $content = $postdata['Content'];
141
  } elseif ('excerpt' == $s2['s2_excerpt']) {
142
- $content = $postdata['Excerpt'];
 
 
 
 
 
 
 
 
 
 
143
  } else {
144
  $content = '';
145
  }
@@ -147,14 +175,14 @@ $mailtext = str_replace('EXCERPT', $content, $mailtext);
147
 
148
  if ('html' == $s2['s2_html']) {
149
  // To send HTML mail, the Content-type header must be set
150
- $headers .= 'MIME-Version: 1.0' . "\r\n";
151
- $headers .= 'Content-type: ' . get_bloginfo('html_type') . '; charset='. get_bloginfo('charset');
152
  $mailtext = apply_filters('the_content', $mailtext);
153
  $mailtext = str_replace(']]>', ']]&gt;', $mailtext);
154
  $mailtext = "<html><head><title>$subject</title></head><body>" . $mailtext . "</body></html>";
155
  } else {
156
- $headers .= 'MIME-Version: 1.0' . "\r\n";
157
- $headers .= 'Content-type: text/plain; charset='. get_bloginfo('charset');
158
  $mailtext = strip_tags($mailtext);
159
  }
160
 
@@ -164,10 +192,10 @@ if (isset($_POST['publish'])) { // we only want to send on publish
164
  if ( (1 == $dreamhost) && (isset($batch)) ) {
165
  foreach ($batch as $bcc) {
166
  $newheaders = $headers . $bcc;
167
- mail($myemailadd, $subject, $mailtext, $newheaders);
168
  }
169
  } else {
170
- mail($myemailadd, $subject, $mailtext, $headers);
171
  }
172
  }
173
  return $post_ID;
@@ -191,13 +219,27 @@ maybe_create_table($s2_table, $s2_table_sql);
191
  s2_reset();
192
  } // s2_install
193
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
194
  ///////////////////
195
  function s2_reset() {
196
  $s2 = array ('s2_html' => 'text',
197
  's2_sender' => 'author',
198
  's2_excerpt' => 'excerpt',
199
  's2_subject' => 'BLOGNAME has been updated!',
200
- 's2_mailtext' => "BLOGNAME has posted a new item, 'TITLE'\r\nEXCERPT\r\nYou may view the latest post at\r\nPERMALINK\r\nYou received this e-mail because you asked to be notified when new updates are posted.\r\nIf you no longer wish to receive notifications of new posts then please visit:\r\nS2LINK\r\n\nBest regards,\r\nMYNAME\r\nEMAIL",
201
  's2_welcome' => 'By subscribing to this service you will be notified every time a new post is added.',
202
  's2_confirm_subject' => 'Confirmation Request from BLOGNAME',
203
  's2_confirm_email' => "In order to confirm your request for BLOGNAME, please click on the link below:\n\nLINK\n\nIf you did not request this, please feel free to disregard this notice!\n\nThank you,\nMYNAME.",
@@ -417,7 +459,7 @@ foreach ($cache_categories as $cat) {
417
  $i++;
418
  }
419
  echo "</td></tr></table>\r\n";
420
- echo '<p align="center"><input type="submit" name="submit" value="submit" /></p>';
421
  echo "</form>\r\n";
422
 
423
  echo '<h2>' . __('Reset Default', 'subscribe2') . "</h2>\r\n";
@@ -427,7 +469,8 @@ _e('Use this to reset all options to their defaults. This <strong><em>will not</
427
  echo "</p>";
428
  echo '<form method="POST">';
429
  echo '<p align="center">';
430
- echo '<input type="submit" name="s2_admin" value="RESET" />';
 
431
  echo "</p></form></fieldset>\r\n";
432
 
433
  include(ABSPATH . '/wp-admin/admin-footer.php');
@@ -473,8 +516,8 @@ $sql = "SELECT email FROM " . $s2_table . " WHERE active='1' ORDER BY email ASC"
473
  $confirmed = $wpdb->get_col($sql);
474
 
475
  // get unconfirmed subscribers
476
- $sql = "SELECT email FROM " . $s2_table . " WHERE active='0' ORDER BY email ASC";
477
- $unconfirmed = $wpdb->get_col($sql);
478
  if ('admin_sent' == $admin_sent) {
479
  echo '<div class="updated"><p align="center">' . __('Message delivered!', 'subscribe2') . "</p></div>\r\n";
480
  }
@@ -486,14 +529,16 @@ echo "<form method='POST'>\r\n";
486
  echo __('Subscribe Addresses', 'subscribe2') . ': (' . __('one per line, or comma-seperated', 'subscribe2') . ")<br />\r\n";
487
  echo '<textarea rows="10" cols="55" name="addresses"></textarea>';
488
  echo "<br />\r\n";
489
- echo '<input type="submit" name="s2_admin" value="subscribe">';
 
490
  echo '</form></td><td align="right">';
491
  echo "<form method='POST'>\r\n";
492
  echo __('Send email to all subscribers', 'subscribe2') . ':';
493
  echo '<input type="text" size="30" name="s2_subject" value="' . __('A message from ', 'subscribe2') . get_settings('blogname') . '" /> <br />';
494
  echo '<textarea rows="10" cols="55" name="message"></textarea>';
495
  echo "<br />\r\n";
496
- echo '<input type="submit" name="s2_admin" value="send">&nbsp;';
 
497
  echo "</form></td></tr></table>\r\n";
498
  echo '<div style="clear: both;"><p>&nbsp;</p></div>';
499
  echo '<h2>' . __('Subscribers', 'subscribe2') . "</h2>\r\n";
@@ -521,9 +566,9 @@ if (is_array($unconfirmed)) {
521
  $alternate = 'alternate';
522
  foreach ($unconfirmed as $subscriber) {
523
  echo '<tr class="' . $alternate . '">';
524
- echo '<td width="5%" align="center"><form method="POST"><input type="hidden" name="email" value="' . $subscriber . '" /><input type="hidden" name="s2_admin" value="toggle" /><input type="submit" name="submit" value="&lt;-" /></form></td>';
525
- echo '<td align="center"><a href="mailto:' . $subscriber . '">' . $subscriber . "</a></td>\r\n";
526
- echo '<td width="5%" align="center"><form method="POST"><input type="hidden" name="email" value="' . $subscriber . '" /><input type="hidden" name="s2_admin" value="delete" /><input type="submit" name="submit" value=" X " /></form></td>';
527
  echo "</tr>\r\n";
528
  ('alternate' == $alternate) ? $alternate = '' : $alternate = 'alternate';
529
  }
@@ -616,7 +661,7 @@ $mailtext = stripslashes($_POST['message']);
616
  $s2_table = $table_prefix . "subscribe2";
617
 
618
  // Set sender details
619
- $headers = "From: " . $user_identity . " <" . $user_email . ">\r\n";
620
 
621
  // get the list of active recipients from the database
622
  $sql = "SELECT email FROM $s2_table WHERE active='1'";
@@ -635,7 +680,7 @@ if (1 == $dreamhost) {
635
  foreach ($recipients as $recipient) {
636
  $recipient = trim($recipient);
637
  if (! empty($recipient)) {
638
- $bcc .= "BCC: " . $recipient . "\r\n";
639
  }
640
  if (30 == $count) {
641
  $batch[] = $bcc;
@@ -654,7 +699,7 @@ if (1 == $dreamhost) {
654
  foreach ($recipients as $recipient) {
655
  $recipient = trim($recipient);
656
  if (! empty($recipient)) {
657
- $headers .= "BCC: " . $recipient . "\r\n";
658
  }
659
  }
660
  }
@@ -662,20 +707,20 @@ if (1 == $dreamhost) {
662
  $s2 = get_option('s2_options');
663
  if ('html' == $s2['s2_html']) {
664
  $mailtext = "<html><head><title>$subject</title></head><body>$mailtext</body></html>";
665
- $headers .= 'MIME-Version: 1.0' . "\r\n";
666
- $headers .= 'Content-type: ' . get_bloginfo('html_type') . '; charset='. get_bloginfo('charset');
667
  } else {
668
- $headers .= 'MIME-Version: 1.0' . "\r\n";
669
- $headers .= 'Content-type: text/plain; charset='. get_bloginfo('charset');
670
  }
671
 
672
  if ( (1 == $dreamhost) && (isset($batch)) ) {
673
  foreach ($batch as $bcc) {
674
  $newheaders = $headers . $bcc;
675
- mail($myemailadd, $subject, $mailtext, $newheaders);
676
  }
677
  } else {
678
- mail($user_email, $subject, $mailtext, $headers);
679
  }
680
 
681
  $_POST['s2_admin'] = '';
1
  <?php
2
  /*
3
  Plugin Name: Subscribe2
4
+ Plugin URI: http://www.skippy.net/blog/plugins
5
  Description: Notifies an email list when new entries are posted.
6
+ Version: 2.1.7
7
  Author: Scott Merrill
8
  Author URI: http://www.skippy.net/
9
  */
11
  // ****************************************
12
  // CHANGE THIS TO 1 IF YOU ARE ON DREAMHOST
13
  // ****************************************
14
+ $dreamhost = 0;
15
 
16
  /////////////////////
17
  // main program block
18
+ $s2_version = "2.1.7";
19
  add_action ('admin_menu', 'subscribe2_menu');
20
  add_action ('publish_post', 'subscribe2', 8);
21
  //////////// END MAIN PROGRAM /////////////
22
 
 
23
  //////////// BEGIN FUNCTIONS //////////////
24
  function subscribe2_menu() {
25
+ global $s2_version;
26
+ if ($s2_version != get_option('s2_version')) {
27
+ s2_db_upgrade();
28
+ }
29
  add_management_page(__('Subscribers', 'subscribe2'), __('Subscribers', 'subscribe2'), 9, __FILE__, 's2_manage');
30
  add_options_page(__('Subscribe2 Options', 'subscribe2'), __('Subscribe2', 'subscribe2'), 9, __FILE__, 's2_options');
31
  }
39
 
40
  // gets the name of your blog
41
  $blogname = get_settings('blogname');
42
+
43
+ // we do this to work around a bug with drafts in WP 1.5.1.3 and below
44
+ $postdata = $wpdb->get_row("SELECT * FROM $wpdb->posts WHERE ID = '$post_ID'");
45
+ global $post_cache;
46
+ $post_cache[$post_ID] = $postdata;
47
+
48
  // gets the link to the new post
49
  $postlink = get_permalink($post_ID);
50
+
51
  $cats = wp_get_post_cats('1', $post_ID);
52
 
53
  // is this post's date set in the future?
54
+ if ($postdata->post_date > current_time('mysql')) {
55
  // if so, let's not tell anyone about this
56
  return $post_ID;
57
  }
73
  // do we send as admin, or post author?
74
  if ('author' == $s2['s2_sender']) {
75
  // get author details
76
+ $user = get_userdata($postdata->post_author);
77
  } else {
78
  // get admin detailts
79
  $user = get_userdata(1);
80
  }
 
81
  $myemailadd = $user->user_email;
82
+ $idmode = $userdata->user_idmode;
83
+ if ($idmode == 'nickname') $myname = $user->user_nickname;
84
+ if ($idmode == 'login') $myname = $user->user_login;
85
+ if ($idmode == 'firstname') $myname = $user->user_firstname;
86
+ if ($idmode == 'lastname') $myname = $user->user_lastname;
87
+ if ($idmode == 'namefl') $myname = $user->user_firstname.' '.$user->user_lastname;
88
+ if ($idmode == 'namelf') $myname = $user->user_lastname.' '.$user->user_firstname;
89
+ if (!$idmode) $myname = $user->user_nickname;
90
+
91
 
92
  // gets the path to your blog directory
93
  $s2_link = get_settings('siteurl') . "/subscribe.php";
104
  $subject = stripslashes($s2['s2_subject']);
105
  // do any substitutions that are necessary
106
  $subject = str_replace('BLOGNAME', $blogname, $subject);
107
+ $subject = str_replace('TITLE', $postdata->post_title, $subject);
108
  $subject = str_replace('MYNAME', $myname, $subject);
109
  $subject = str_replace('EMAIL', $myemailadd, $subject);
110
 
111
  // Set sender details
112
+ $headers = "From: \"$myname\" <" . $myemailadd . ">\n";
113
 
114
  // BCC all recipients
115
  // with batching for Dreamhost
120
  foreach ($recipients as $recipient) {
121
  $recipient = trim($recipient);
122
  if (! empty($recipient)) {
123
+ $bcc .= "Bcc: " . $recipient . "\n";
124
  }
125
  if (30 == $count) {
126
  $count = 1;
140
  foreach ($recipients as $recipient) {
141
  $recipient = trim($recipient);
142
  if (! empty($recipient)) {
143
+ $headers .= "Bcc: " . $recipient . "\n";
144
  }
145
  }
146
  }
149
  $mailtext = stripslashes($s2['s2_mailtext']);
150
  $mailtext = str_replace('BLOGNAME', $blogname, $mailtext);
151
  $mailtext = str_replace('BLOGLINK', get_bloginfo('url'), $mailtext);
152
+ $mailtext = str_replace('TITLE', $postdata->post_title, $mailtext);
153
  $mailtext = str_replace('PERMALINK', $postlink, $mailtext);
154
  $mailtext = str_replace('S2LINK', $s2_link, $mailtext);
155
  $mailtext = str_replace('MYNAME', $myname, $mailtext);
156
  $mailtext = str_replace('EMAIL', $myemailadd, $mailtext);
157
  if ('post' == $s2['s2_excerpt']) {
158
+ $content = $postdata->post_content;
159
  } elseif ('excerpt' == $s2['s2_excerpt']) {
160
+ $content = $postdata->post_excerpt;
161
+
162
+ if ('' == $content) {
163
+ // no excerpt
164
+ // let's see if a <!--more--> tag exists in the body
165
+ if (false !== strpos($postdata->post_content, '<!--more-->')) {
166
+ list($content, $more) = explode('<!--more-->',$postdata->post_content, 2);
167
+ // strip leading and trailing whitespace
168
+ $content = preg_replace('/^[\s]*(.*)[\s]*$/','\\1',$content);
169
+ }
170
+ }
171
  } else {
172
  $content = '';
173
  }
175
 
176
  if ('html' == $s2['s2_html']) {
177
  // To send HTML mail, the Content-type header must be set
178
+ $headers .= "MIME-Version: 1.0\n";
179
+ $headers .= "Content-type: " . get_bloginfo('html_type') . "; charset=\"". get_bloginfo('charset') . "\"\n";
180
  $mailtext = apply_filters('the_content', $mailtext);
181
  $mailtext = str_replace(']]>', ']]&gt;', $mailtext);
182
  $mailtext = "<html><head><title>$subject</title></head><body>" . $mailtext . "</body></html>";
183
  } else {
184
+ $headers .= "MIME-Version: 1.0\n";
185
+ $headers .= "Content-type: text/plain; charset=\"". get_bloginfo('charset') . "\"\n";
186
  $mailtext = strip_tags($mailtext);
187
  }
188
 
192
  if ( (1 == $dreamhost) && (isset($batch)) ) {
193
  foreach ($batch as $bcc) {
194
  $newheaders = $headers . $bcc;
195
+ @wp_mail($myemailadd, $subject, $mailtext, $newheaders);
196
  }
197
  } else {
198
+ @wp_mail($myemailadd, $subject, $mailtext, $headers);
199
  }
200
  }
201
  return $post_ID;
219
  s2_reset();
220
  } // s2_install
221
 
222
+ ///////////////////////
223
+ function s2_db_upgrade() {
224
+ // include upgrade-functions for maybe_create_table;
225
+ if (! function_exists('maybe_create_table')) {
226
+ require_once(ABSPATH . '/wp-admin/upgrade-functions.php');
227
+ }
228
+ global $wpdb, $table_prefix, $s2_version;
229
+ $s2_table = $table_prefix . "subscribe2";
230
+
231
+ $date = date('Y-m-d');
232
+ maybe_add_column($s2_table, "date", "ALTER TABLE `$s2_table` ADD `date` DATE DEFAULT '$date' NOT NULL AFTER `active` ;");
233
+ update_option('s2_version', $s2_version);
234
+ }// s2_db_upgrade
235
+
236
  ///////////////////
237
  function s2_reset() {
238
  $s2 = array ('s2_html' => 'text',
239
  's2_sender' => 'author',
240
  's2_excerpt' => 'excerpt',
241
  's2_subject' => 'BLOGNAME has been updated!',
242
+ 's2_mailtext' => "BLOGNAME has posted a new item, 'TITLE'\r\nEXCERPT\r\nYou may view the latest post at\r\nPERMALINK\r\nYou received this e-mail because you asked to be notified when new updates are posted.\r\nIf you no longer wish to receive notifications of new posts then please visit:\r\nS2LINK\r\nBest regards,\r\nMYNAME\r\nEMAIL",
243
  's2_welcome' => 'By subscribing to this service you will be notified every time a new post is added.',
244
  's2_confirm_subject' => 'Confirmation Request from BLOGNAME',
245
  's2_confirm_email' => "In order to confirm your request for BLOGNAME, please click on the link below:\n\nLINK\n\nIf you did not request this, please feel free to disregard this notice!\n\nThank you,\nMYNAME.",
459
  $i++;
460
  }
461
  echo "</td></tr></table>\r\n";
462
+ echo '<p align="center"><input type="submit" name="submit" value=' . __('submit', 'subscribe2') . ' /></p>';
463
  echo "</form>\r\n";
464
 
465
  echo '<h2>' . __('Reset Default', 'subscribe2') . "</h2>\r\n";
469
  echo "</p>";
470
  echo '<form method="POST">';
471
  echo '<p align="center">';
472
+ echo '<input type="hidden" name="s2_admin" value="RESET" />';
473
+ echo '<input type="submit" name="submit" value="' . __('RESET', 'subscribe2') . '" />';
474
  echo "</p></form></fieldset>\r\n";
475
 
476
  include(ABSPATH . '/wp-admin/admin-footer.php');
516
  $confirmed = $wpdb->get_col($sql);
517
 
518
  // get unconfirmed subscribers
519
+ $sql = "SELECT email,date FROM " . $s2_table . " WHERE active='0' ORDER BY email ASC";
520
+ $unconfirmed = $wpdb->get_results($sql);
521
  if ('admin_sent' == $admin_sent) {
522
  echo '<div class="updated"><p align="center">' . __('Message delivered!', 'subscribe2') . "</p></div>\r\n";
523
  }
529
  echo __('Subscribe Addresses', 'subscribe2') . ': (' . __('one per line, or comma-seperated', 'subscribe2') . ")<br />\r\n";
530
  echo '<textarea rows="10" cols="55" name="addresses"></textarea>';
531
  echo "<br />\r\n";
532
+ echo '<input type="hidden" name="s2_admin" value="subscribe" />';
533
+ echo '<input type="submit" name="submit" value="' . __('Subscribe', 'subscribe2') . '" />';
534
  echo '</form></td><td align="right">';
535
  echo "<form method='POST'>\r\n";
536
  echo __('Send email to all subscribers', 'subscribe2') . ':';
537
  echo '<input type="text" size="30" name="s2_subject" value="' . __('A message from ', 'subscribe2') . get_settings('blogname') . '" /> <br />';
538
  echo '<textarea rows="10" cols="55" name="message"></textarea>';
539
  echo "<br />\r\n";
540
+ echo '<input type="hidden" name="s2_admin" value="send">';
541
+ echo '<input type="submit" name="submit" value="' . __('Send', 'subscribe2') . '">&nbsp;';
542
  echo "</form></td></tr></table>\r\n";
543
  echo '<div style="clear: both;"><p>&nbsp;</p></div>';
544
  echo '<h2>' . __('Subscribers', 'subscribe2') . "</h2>\r\n";
566
  $alternate = 'alternate';
567
  foreach ($unconfirmed as $subscriber) {
568
  echo '<tr class="' . $alternate . '">';
569
+ echo '<td width="5%" align="center"><form method="POST"><input type="hidden" name="email" value="' . $subscriber->email . '" /><input type="hidden" name="s2_admin" value="toggle" /><input type="submit" name="submit" value="&lt;-" /></form></td>';
570
+ echo '<td align="center"><a href="mailto:' . $subscriber->email . '">' . $subscriber->email . "</a> (" . $subscriber->date . ")</td>\r\n";
571
+ echo '<td width="5%" align="center"><form method="POST"><input type="hidden" name="email" value="' . $subscriber->email . '" /><input type="hidden" name="s2_admin" value="delete" /><input type="submit" name="submit" value=" X " /></form></td>';
572
  echo "</tr>\r\n";
573
  ('alternate' == $alternate) ? $alternate = '' : $alternate = 'alternate';
574
  }
661
  $s2_table = $table_prefix . "subscribe2";
662
 
663
  // Set sender details
664
+ $headers = "From: \"$user_identity\" <" . $user_email . ">\n";
665
 
666
  // get the list of active recipients from the database
667
  $sql = "SELECT email FROM $s2_table WHERE active='1'";
680
  foreach ($recipients as $recipient) {
681
  $recipient = trim($recipient);
682
  if (! empty($recipient)) {
683
+ $bcc .= "BCC: " . $recipient . "\n";
684
  }
685
  if (30 == $count) {
686
  $batch[] = $bcc;
699
  foreach ($recipients as $recipient) {
700
  $recipient = trim($recipient);
701
  if (! empty($recipient)) {
702
+ $headers .= "BCC: " . $recipient . "\n";
703
  }
704
  }
705
  }
707
  $s2 = get_option('s2_options');
708
  if ('html' == $s2['s2_html']) {
709
  $mailtext = "<html><head><title>$subject</title></head><body>$mailtext</body></html>";
710
+ $headers .= "MIME-Version: 1.0\n";
711
+ $headers .= "Content-type: " . get_bloginfo('html_type') . "; charset=\"". get_bloginfo('charset') . "\"\n";
712
  } else {
713
+ $headers .= "MIME-Version: 1.0\n";
714
+ $headers .= "Content-type: text/plain; charset=\"" . get_bloginfo('charset') . "\"\n" ;
715
  }
716
 
717
  if ( (1 == $dreamhost) && (isset($batch)) ) {
718
  foreach ($batch as $bcc) {
719
  $newheaders = $headers . $bcc;
720
+ @wp_mail($myemailadd, $subject, $mailtext, $newheaders);
721
  }
722
  } else {
723
+ @wp_mail($user_email, $subject, $mailtext, $headers);
724
  }
725
 
726
  $_POST['s2_admin'] = '';
wp-content/subscribe2/subscribe2-en_US.mo DELETED
Binary file
wp-content/subscribe2/subscribe2-en_US.po DELETED
@@ -1,302 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: subscribe2\n"
4
- "POT-Creation-Date: \n"
5
- "PO-Revision-Date: 2005-06-22 19:59-0500\n"
6
- "Last-Translator: skippy <skippy@skippy.net>\n"
7
- "Language-Team: skippy <skippy@skippy.net>\n"
8
- "MIME-Version: 1.0\n"
9
- "Content-Type: text/plain; charset=utf-8\n"
10
- "Content-Transfer-Encoding: 8bit\n"
11
- "X-Poedit-Language: English\n"
12
- "X-Poedit-Country: United States\n"
13
- "X-Poedit-SourceCharset: utf-8\n"
14
- "X-Poedit-Keywords: __,_e\n"
15
- "X-Poedit-Basepath: .\n"
16
- "X-Poedit-SearchPath-0: .\n"
17
-
18
- #: subscribe.php:92
19
- msgid "Your email"
20
- msgstr "Your email"
21
-
22
- #: subscribe.php:93
23
- msgid "subscribe"
24
- msgstr "subscribe"
25
-
26
- #: subscribe.php:94
27
- msgid "unsubscribe"
28
- msgstr "unsubscribe"
29
-
30
- #: subscribe.php:98
31
- msgid "Note"
32
- msgstr "Note"
33
-
34
- #: subscribe.php:98
35
- msgid "values personal privacy"
36
- msgstr "values personal privacy"
37
-
38
- #: subscribe.php:99
39
- msgid "This list is used solely to inform you when new posts are added."
40
- msgstr "This list is used solely to inform you when new posts are added."
41
-
42
- #: subscribe.php:101
43
- msgid "Your email address will not be shared with any other party"
44
- msgstr "Your email address will not be shared with any other party"
45
-
46
- #: subscribe.php:103
47
- msgid "Return to "
48
- msgstr "Return to "
49
-
50
- #: subscribe.php:173
51
- msgid "The following email address has successfully subscribed to your blog"
52
- msgstr "The following email address has successfully subscribed to your blog"
53
-
54
- #: subscribe.php:199
55
- msgid "The following email address has successfully unsubscribed from your blog"
56
- msgstr "The following email address has successfully unsubscribed from your blog"
57
-
58
- #: subscribe2.php:25
59
- #: subscribe2.php:499
60
- msgid "Subscribers"
61
- msgstr "Subscribers"
62
-
63
- #: subscribe2.php:26
64
- msgid "Subscribe2 Options"
65
- msgstr "Subscribe2 Options"
66
-
67
- #: subscribe2.php:26
68
- msgid "Subscribe2"
69
- msgstr "Subscribe2"
70
-
71
- #: subscribe2.php:251
72
- msgid "Notification Settings"
73
- msgstr "Notification Settings"
74
-
75
- #: subscribe2.php:254
76
- msgid "Email Options"
77
- msgstr "Email Options"
78
-
79
- #: subscribe2.php:255
80
- msgid "Send email as"
81
- msgstr "Send email as"
82
-
83
- #: subscribe2.php:260
84
- msgid "HTML"
85
- msgstr "HTML"
86
-
87
- #: subscribe2.php:265
88
- msgid "Plain Text"
89
- msgstr "Plain Text"
90
-
91
- #: subscribe2.php:266
92
- msgid "Send Email From"
93
- msgstr "Send Email From"
94
-
95
- #: subscribe2.php:271
96
- msgid "Author of the post"
97
- msgstr "Author of the post"
98
-
99
- #: subscribe2.php:276
100
- msgid "Blog Admin"
101
- msgstr "Blog Admin"
102
-
103
- #: subscribe2.php:277
104
- msgid "Amount of post to deliver"
105
- msgstr "Amount of post to deliver"
106
-
107
- #: subscribe2.php:279
108
- msgid "None"
109
- msgstr "None"
110
-
111
- #: subscribe2.php:279
112
- msgid "Excerpt Only"
113
- msgstr "Excerpt Only"
114
-
115
- #: subscribe2.php:279
116
- msgid "Full Post"
117
- msgstr "Full Post"
118
-
119
- #: subscribe2.php:289
120
- msgid "Email Template"
121
- msgstr "Email Template"
122
-
123
- #: subscribe2.php:290
124
- msgid "Subject"
125
- msgstr "Subject"
126
-
127
- #: subscribe2.php:290
128
- #: subscribe2.php:294
129
- msgid "must not be empty"
130
- msgstr "must not be empty"
131
-
132
- #: subscribe2.php:294
133
- msgid "Message"
134
- msgstr "Message"
135
-
136
- #: subscribe2.php:298
137
- #: subscribe2.php:376
138
- msgid "Message substitions"
139
- msgstr "Message substitions"
140
-
141
- #: subscribe2.php:302
142
- #: subscribe2.php:303
143
- #: subscribe2.php:304
144
- #: subscribe2.php:305
145
- #: subscribe2.php:309
146
- #: subscribe2.php:310
147
- #: subscribe2.php:311
148
- #: subscribe2.php:312
149
- #: subscribe2.php:378
150
- #: subscribe2.php:379
151
- #: subscribe2.php:380
152
- #: subscribe2.php:381
153
- msgid "replaced with"
154
- msgstr "replaced with"
155
-
156
- #: subscribe2.php:304
157
- msgid "the post's title"
158
- msgstr "the post's title"
159
-
160
- #: subscribe2.php:305
161
- msgid "blank, the excerpt, or the entire post, based on the option set above"
162
- msgstr "blank, the excerpt, or the entire post, based on the option set above"
163
-
164
- #: subscribe2.php:309
165
- msgid "the post's permalink"
166
- msgstr "the post's permalink"
167
-
168
- #: subscribe2.php:310
169
- msgid "a link to your subscribe.php file"
170
- msgstr "a link to your subscribe.php file"
171
-
172
- #: subscribe2.php:311
173
- #: subscribe2.php:380
174
- msgid "the post author's name"
175
- msgstr "the post author's name"
176
-
177
- #: subscribe2.php:312
178
- #: subscribe2.php:381
179
- msgid "the post author's email"
180
- msgstr "the post author's email"
181
-
182
- #: subscribe2.php:319
183
- msgid "Subscription Messages"
184
- msgstr "Subscription Messages"
185
-
186
- #: subscribe2.php:320
187
- msgid "Website messages"
188
- msgstr "Website messages"
189
-
190
- #: subscribe2.php:323
191
- msgid "Welcome message"
192
- msgstr "Welcome message"
193
-
194
- #: subscribe2.php:327
195
- msgid "Invalid email was supplied"
196
- msgstr "Invalid email was supplied"
197
-
198
- #: subscribe2.php:330
199
- msgid "Your email was supplied"
200
- msgstr "Your email was supplied"
201
-
202
- #: subscribe2.php:334
203
- msgid "Known email was supplied"
204
- msgstr "Known email was supplied"
205
-
206
- #: subscribe2.php:337
207
- msgid "Non-existant email supplied"
208
- msgstr "Non-existant email supplied"
209
-
210
- #: subscribe2.php:341
211
- msgid "Subscribe confirmation email dispatched"
212
- msgstr "Subscribe confirmation email dispatched"
213
-
214
- #: subscribe2.php:344
215
- msgid "Unsubscribe confirmation email dispatched"
216
- msgstr "Unsubscribe confirmation email dispatched"
217
-
218
- #: subscribe2.php:348
219
- msgid "Successful subscription message"
220
- msgstr "Successful subscription message"
221
-
222
- #: subscribe2.php:351
223
- msgid "Successful deletion message"
224
- msgstr "Successful deletion message"
225
-
226
- #: subscribe2.php:357
227
- msgid "Email messages"
228
- msgstr "Email messages"
229
-
230
- #: subscribe2.php:360
231
- msgid "Subject line for all confirmation emails"
232
- msgstr "Subject line for all confirmation emails"
233
-
234
- #: subscribe2.php:364
235
- msgid "Subscribe / Unsubscribe confirmation email"
236
- msgstr "Subscribe / Unsubscribe confirmation email"
237
-
238
- #: subscribe2.php:368
239
- msgid "Subscribe notification subject sent to admin"
240
- msgstr "Subscribe notification subject sent to admin"
241
-
242
- #: subscribe2.php:371
243
- msgid "Unsubscribe notification subject sent to admin"
244
- msgstr "Unsubscribe notification subject sent to admin"
245
-
246
- #: subscribe2.php:378
247
- msgid "the blog's name"
248
- msgstr "the blog's name"
249
-
250
- #: subscribe2.php:379
251
- msgid "the confirmation link for the user's request"
252
- msgstr "the confirmation link for the user's request"
253
-
254
- #: subscribe2.php:384
255
- msgid "Categories to Exclude"
256
- msgstr "Categories to Exclude"
257
-
258
- #: subscribe2.php:423
259
- msgid "Reset Default"
260
- msgstr "Reset Default"
261
-
262
- #: subscribe2.php:426
263
- msgid "Use this to reset all options to their defaults. This <strong><em>will not</em></strong> modify your list of subscribers."
264
- msgstr "Use this to reset all options to their defaults. This <strong><em>will not</em></strong> modify your list of subscribers."
265
-
266
- #: subscribe2.php:479
267
- msgid "Message delivered!"
268
- msgstr "Message delivered!"
269
-
270
- #: subscribe2.php:483
271
- msgid "Admin Tools"
272
- msgstr "Admin Tools"
273
-
274
- #: subscribe2.php:486
275
- msgid "Subscribe Addresses"
276
- msgstr "Subscribe Addresses"
277
-
278
- #: subscribe2.php:486
279
- msgid "one per line, or comma-seperated"
280
- msgstr "one per line, or comma-seperated"
281
-
282
- #: subscribe2.php:492
283
- msgid "Send email to all subscribers"
284
- msgstr "Send email to all subscribers"
285
-
286
- #: subscribe2.php:493
287
- msgid "A message from "
288
- msgstr "A message from "
289
-
290
- #: subscribe2.php:501
291
- msgid "Confirmed Subscribers"
292
- msgstr "Confirmed Subscribers"
293
-
294
- #: subscribe2.php:514
295
- #: subscribe2.php:531
296
- msgid "NONE"
297
- msgstr "NONE"
298
-
299
- #: subscribe2.php:518
300
- msgid "Uncomfirmed Subscribers"
301
- msgstr "Uncomfirmed Subscribers"
302
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
wp-content/subscribe2/subscribe2.mo ADDED
Binary file
wp-content/subscribe2/subscribe2.pot ADDED
@@ -0,0 +1,318 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: subscribe2\n"
4
+ "POT-Creation-Date: \n"
5
+ "PO-Revision-Date: 2005-07-29 23:16-0500\n"
6
+ "Last-Translator: skippy <skippy@skippy.net>\n"
7
+ "Language-Team: skippy <skippy@skippy.net>\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=utf-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Poedit-Language: English\n"
12
+ "X-Poedit-Country: United States\n"
13
+ "X-Poedit-KeywordsList: __;_e\n"
14
+ "X-Poedit-Basepath: .\n"
15
+ "X-Poedit-SearchPath-0: .\n"
16
+
17
+ #: subscribe2.php:25
18
+ #: subscribe2.php:516
19
+ msgid "Subscribers"
20
+ msgstr ""
21
+
22
+ #: subscribe2.php:26
23
+ msgid "Subscribe2 Options"
24
+ msgstr ""
25
+
26
+ #: subscribe2.php:26
27
+ msgid "Subscribe2"
28
+ msgstr ""
29
+
30
+ #: subscribe2.php:265
31
+ msgid "Notification Settings"
32
+ msgstr ""
33
+
34
+ #: subscribe2.php:268
35
+ msgid "Email Options"
36
+ msgstr ""
37
+
38
+ #: subscribe2.php:269
39
+ msgid "Send email as"
40
+ msgstr ""
41
+
42
+ #: subscribe2.php:274
43
+ msgid "HTML"
44
+ msgstr ""
45
+
46
+ #: subscribe2.php:279
47
+ msgid "Plain Text"
48
+ msgstr ""
49
+
50
+ #: subscribe2.php:280
51
+ msgid "Send Email From"
52
+ msgstr ""
53
+
54
+ #: subscribe2.php:285
55
+ msgid "Author of the post"
56
+ msgstr ""
57
+
58
+ #: subscribe2.php:290
59
+ msgid "Blog Admin"
60
+ msgstr ""
61
+
62
+ #: subscribe2.php:291
63
+ msgid "Amount of post to deliver"
64
+ msgstr ""
65
+
66
+ #: subscribe2.php:293
67
+ msgid "None"
68
+ msgstr ""
69
+
70
+ #: subscribe2.php:293
71
+ msgid "Excerpt Only"
72
+ msgstr ""
73
+
74
+ #: subscribe2.php:293
75
+ msgid "Full Post"
76
+ msgstr ""
77
+
78
+ #: subscribe2.php:303
79
+ msgid "Email Template"
80
+ msgstr ""
81
+
82
+ #: subscribe2.php:304
83
+ msgid "Subject"
84
+ msgstr ""
85
+
86
+ #: subscribe2.php:304
87
+ #: subscribe2.php:308
88
+ msgid "must not be empty"
89
+ msgstr ""
90
+
91
+ #: subscribe2.php:308
92
+ msgid "Message"
93
+ msgstr ""
94
+
95
+ #: subscribe2.php:312
96
+ #: subscribe2.php:390
97
+ msgid "Message substitions"
98
+ msgstr ""
99
+
100
+ #: subscribe2.php:316
101
+ #: subscribe2.php:317
102
+ #: subscribe2.php:318
103
+ #: subscribe2.php:319
104
+ #: subscribe2.php:323
105
+ #: subscribe2.php:324
106
+ #: subscribe2.php:325
107
+ #: subscribe2.php:326
108
+ #: subscribe2.php:392
109
+ #: subscribe2.php:393
110
+ #: subscribe2.php:394
111
+ #: subscribe2.php:395
112
+ msgid "replaced with"
113
+ msgstr ""
114
+
115
+ #: subscribe2.php:318
116
+ msgid "the post's title"
117
+ msgstr ""
118
+
119
+ #: subscribe2.php:319
120
+ msgid "blank, the excerpt, or the entire post, based on the option set above"
121
+ msgstr ""
122
+
123
+ #: subscribe2.php:323
124
+ msgid "the post's permalink"
125
+ msgstr ""
126
+
127
+ #: subscribe2.php:324
128
+ msgid "a link to your subscribe.php file"
129
+ msgstr ""
130
+
131
+ #: subscribe2.php:325
132
+ #: subscribe2.php:394
133
+ msgid "the post author's name"
134
+ msgstr ""
135
+
136
+ #: subscribe2.php:326
137
+ #: subscribe2.php:395
138
+ msgid "the post author's email"
139
+ msgstr ""
140
+
141
+ #: subscribe2.php:333
142
+ msgid "Subscription Messages"
143
+ msgstr ""
144
+
145
+ #: subscribe2.php:334
146
+ msgid "Website messages"
147
+ msgstr ""
148
+
149
+ #: subscribe2.php:337
150
+ msgid "Welcome message"
151
+ msgstr ""
152
+
153
+ #: subscribe2.php:341
154
+ msgid "Invalid email was supplied"
155
+ msgstr ""
156
+
157
+ #: subscribe2.php:344
158
+ msgid "Your email was supplied"
159
+ msgstr ""
160
+
161
+ #: subscribe2.php:348
162
+ msgid "Known email was supplied"
163
+ msgstr ""
164
+
165
+ #: subscribe2.php:351
166
+ msgid "Non-existant email supplied"
167
+ msgstr ""
168
+
169
+ #: subscribe2.php:355
170
+ msgid "Subscribe confirmation email dispatched"
171
+ msgstr ""
172
+
173
+ #: subscribe2.php:358
174
+ msgid "Unsubscribe confirmation email dispatched"
175
+ msgstr ""
176
+
177
+ #: subscribe2.php:362
178
+ msgid "Successful subscription message"
179
+ msgstr ""
180
+
181
+ #: subscribe2.php:365
182
+ msgid "Successful deletion message"
183
+ msgstr ""
184
+
185
+ #: subscribe2.php:371
186
+ msgid "Email messages"
187
+ msgstr ""
188
+
189
+ #: subscribe2.php:374
190
+ msgid "Subject line for all confirmation emails"
191
+ msgstr ""
192
+
193
+ #: subscribe2.php:378
194
+ msgid "Subscribe / Unsubscribe confirmation email"
195
+ msgstr ""
196
+
197
+ #: subscribe2.php:382
198
+ msgid "Subscribe notification subject sent to admin"
199
+ msgstr ""
200
+
201
+ #: subscribe2.php:385
202
+ msgid "Unsubscribe notification subject sent to admin"
203
+ msgstr ""
204
+
205
+ #: subscribe2.php:392
206
+ msgid "the blog's name"
207
+ msgstr ""
208
+
209
+ #: subscribe2.php:393
210
+ msgid "the confirmation link for the user's request"
211
+ msgstr ""
212
+
213
+ #: subscribe2.php:398
214
+ msgid "Categories to Exclude"
215
+ msgstr ""
216
+
217
+ #: subscribe2.php:434
218
+ msgid "submit"
219
+ msgstr ""
220
+
221
+ #: subscribe2.php:437
222
+ msgid "Reset Default"
223
+ msgstr ""
224
+
225
+ #: subscribe2.php:440
226
+ msgid "Use this to reset all options to their defaults. This <strong><em>will not</em></strong> modify your list of subscribers."
227
+ msgstr ""
228
+
229
+ #: subscribe2.php:445
230
+ msgid "RESET"
231
+ msgstr ""
232
+
233
+ #: subscribe2.php:494
234
+ msgid "Message delivered!"
235
+ msgstr ""
236
+
237
+ #: subscribe2.php:498
238
+ msgid "Admin Tools"
239
+ msgstr ""
240
+
241
+ #: subscribe2.php:501
242
+ msgid "Subscribe Addresses"
243
+ msgstr ""
244
+
245
+ #: subscribe2.php:501
246
+ msgid "one per line, or comma-seperated"
247
+ msgstr ""
248
+
249
+ #: subscribe2.php:505
250
+ msgid "Subscribe"
251
+ msgstr ""
252
+
253
+ #: subscribe2.php:508
254
+ msgid "Send email to all subscribers"
255
+ msgstr ""
256
+
257
+ #: subscribe2.php:509
258
+ msgid "A message from "
259
+ msgstr ""
260
+
261
+ #: subscribe2.php:513
262
+ #: subscribe.php:95
263
+ msgid "Send"
264
+ msgstr ""
265
+
266
+ #: subscribe2.php:518
267
+ msgid "Confirmed Subscribers"
268
+ msgstr ""
269
+
270
+ #: subscribe2.php:531
271
+ #: subscribe2.php:548
272
+ msgid "NONE"
273
+ msgstr ""
274
+
275
+ #: subscribe2.php:535
276
+ msgid "Uncomfirmed Subscribers"
277
+ msgstr ""
278
+
279
+ #: subscribe.php:92
280
+ msgid "Your email"
281
+ msgstr ""
282
+
283
+ #: subscribe.php:93
284
+ msgid "subscribe"
285
+ msgstr ""
286
+
287
+ #: subscribe.php:94
288
+ msgid "unsubscribe"
289
+ msgstr ""
290
+
291
+ #: subscribe.php:98
292
+ msgid "Note"
293
+ msgstr ""
294
+
295
+ #: subscribe.php:98
296
+ msgid "values personal privacy"
297
+ msgstr ""
298
+
299
+ #: subscribe.php:99
300
+ msgid "This list is used solely to inform you when new posts are added."
301
+ msgstr ""
302
+
303
+ #: subscribe.php:101
304
+ msgid "Your email address will not be shared with any other party"
305
+ msgstr ""
306
+
307
+ #: subscribe.php:103
308
+ msgid "Return to "
309
+ msgstr ""
310
+
311
+ #: subscribe.php:173
312
+ msgid "The following email address has successfully subscribed to your blog"
313
+ msgstr ""
314
+
315
+ #: subscribe.php:199
316
+ msgid "The following email address has successfully unsubscribed from your blog"
317
+ msgstr ""
318
+