WP RSS Aggregator - Version 4.4

Version Description

(2014-08-11) = * New Feature: Blacklist - delete items and blacklist them to never import them again. * Enhanced: Added a button in the Debugging page to reset the plugin settings to default. * Enhanced: WordPress Yoast SEO metaboxes and custom columns will no longer appear.

Download this release

Release Info

Developer jeangalea
Plugin Icon 128x128 WP RSS Aggregator
Version 4.4
Comparing to
See all releases

Code changes from version 4.3.1 to 4.4

changelog.txt CHANGED
@@ -1,3 +1,8 @@
 
 
 
 
 
1
  4.3.1 (2014-08-08)
2
  Enhanced: Better wording on settings page.
3
  Fixed bug: The Links Behaviour option in the settings was not working.
1
+ 4.4 (2014-08-11)
2
+ New Feature: Blacklist - delete items and blacklist them to never import them again.
3
+ Enhanced: Added a button in the Debugging page to reset the plugin settings to default.
4
+ Enhanced: WordPress Yoast SEO metaboxes and custom columns will no longer appear.
5
+
6
  4.3.1 (2014-08-08)
7
  Enhanced: Better wording on settings page.
8
  Fixed bug: The Links Behaviour option in the settings was not working.
css/admin-styles.css CHANGED
@@ -331,6 +331,16 @@ body.post-type-wprss_feed.edit-php table.wp-list-table.posts thead th#category {
331
  }
332
 
333
 
 
 
 
 
 
 
 
 
 
 
334
  i.wprss-feed-error-symbol {
335
  display: none;
336
  font-size: 1.2em;
@@ -430,4 +440,21 @@ i.wprss-updating-feed-icon.wprss-show {
430
  width: 100%;
431
  margin: 25px 0 25px;
432
  border-top: #F5F5F5 solid 1px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
433
  }
331
  }
332
 
333
 
334
+ /* For feed items */
335
+ body.post-type-wprss_feed_item.edit-php table.wp-list-table.posts thead th#publishdate {
336
+ width: 150px;
337
+ }
338
+ body.post-type-wprss_feed_item.edit-php table.wp-list-table.posts thead th#source {
339
+ width: 200px;
340
+ }
341
+
342
+
343
+
344
  i.wprss-feed-error-symbol {
345
  display: none;
346
  font-size: 1.2em;
440
  width: 100%;
441
  margin: 25px 0 25px;
442
  border-top: #F5F5F5 solid 1px;
443
+ }
444
+
445
+
446
+ /*== BLACKLIST */
447
+ body.post-type-wprss_blacklist .add-new-h2,
448
+ body.post-type-wprss_blacklist ul.subsubsub,
449
+ body.post-type-wprss_blacklist .alignleft.actions {
450
+ display: none;
451
+ }
452
+
453
+ body.post-type-wprss_blacklist .alignleft.actions.bulkactions {
454
+ display: inline-block;
455
+ }
456
+
457
+ .wprss-header-small {
458
+ color: #777;
459
+ font-size: 0.7em;
460
  }
images/blacklist.png ADDED
Binary file
images/welcome-page/blacklist-feed-item.png ADDED
Binary file
images/welcome-page/blacklist.png ADDED
Binary file
images/welcome-page/trash-feed-item.png ADDED
Binary file
includes/admin-debugging.php CHANGED
@@ -41,6 +41,13 @@
41
  'redirect' => 'edit.php?post_type=wprss_feed&page=wprss-debugging&debug_message=2',
42
  'render' => 'wprss_debug_reimport_feeds',
43
  ),
 
 
 
 
 
 
 
44
  )
45
  );
46
 
@@ -105,7 +112,7 @@
105
 
106
 
107
  /**
108
- * Build the Update Feeds section
109
  *
110
  * @since 3.4.6
111
  */
@@ -125,6 +132,27 @@
125
  }
126
 
127
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  /**
129
  * Renders the Clear Log button
130
  *
@@ -157,6 +185,7 @@
157
  '1' => 'wprss_debugging_admin_notice_update_feeds',
158
  '2' => 'wprss_debugging_admin_notice_reimport_feeds',
159
  '3' => 'wprss_debugging_admin_notice_clear_log',
 
160
  )
161
  );
162
 
@@ -220,4 +249,44 @@
220
  */
221
  function wprss_debugging_admin_notice_clear_log() {
222
  echo '<div class="updated"><p>The error log has been cleared.</p></div>';
223
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
  'redirect' => 'edit.php?post_type=wprss_feed&page=wprss-debugging&debug_message=2',
42
  'render' => 'wprss_debug_reimport_feeds',
43
  ),
44
+
45
+ 'reset-settings' => array(
46
+ 'nonce' => 'wprss-reset-settings',
47
+ 'run' => 'wprss_reset_settings',
48
+ 'redirect' => 'edit.php?post_type=wprss_feed&page=wprss-debugging&debug_message=4',
49
+ 'render' => 'wprss_debug_reset_settings',
50
+ ),
51
  )
52
  );
53
 
112
 
113
 
114
  /**
115
+ * Build the Delete and Re-Import Feeds section
116
  *
117
  * @since 3.4.6
118
  */
132
  }
133
 
134
 
135
+ /**
136
+ * Render the reset settings button
137
+ *
138
+ * @since 4.4
139
+ */
140
+ function wprss_debug_reset_settings() {
141
+ ?>
142
+ <h3><?php _e( 'Reset Default Settings', 'wprss' ); ?></h3>
143
+ <p><?php _e( 'Click the red button to reset the plugin settings to default.', 'wprss' ); ?></p>
144
+ <p><?php _e( '<em><strong>Note:</strong> This cannot be undone. Once the settings have been reset, your old settings cannot be restored.</em>', 'wprss' ); ?></p>
145
+
146
+ <form action="edit.php?post_type=wprss_feed&page=wprss-debugging" method="post">
147
+
148
+ <?php wp_nonce_field( 'wprss-reset-settings' );
149
+ submit_button( __( 'Reset Default Settings', 'wprss' ), 'button-red', 'reset-settings', true ); ?>
150
+
151
+ </form>
152
+ <?php
153
+ }
154
+
155
+
156
  /**
157
  * Renders the Clear Log button
158
  *
185
  '1' => 'wprss_debugging_admin_notice_update_feeds',
186
  '2' => 'wprss_debugging_admin_notice_reimport_feeds',
187
  '3' => 'wprss_debugging_admin_notice_clear_log',
188
+ '4' => 'wprss_debugging_admin_notice_reset_settings'
189
  )
190
  );
191
 
249
  */
250
  function wprss_debugging_admin_notice_clear_log() {
251
  echo '<div class="updated"><p>The error log has been cleared.</p></div>';
252
+ }
253
+
254
+
255
+ /**
256
+ * Output admin notice that log has been cleard
257
+ *
258
+ * @since 4.4
259
+ */
260
+ function wprss_debugging_admin_notice_reset_settings() {
261
+ echo '<div class="updated"><p>The plugin settings have been reset.</p></div>';
262
+ }
263
+
264
+
265
+ /**
266
+ * Resets the plugin settings to default
267
+ *
268
+ * @since 4.4
269
+ */
270
+ function wprss_reset_settings() {
271
+ // Action Hook
272
+ do_action( 'wprss_before_reset_settings' );
273
+
274
+ // Prepare the settings to reset
275
+ $settings_to_reset = apply_filters(
276
+ 'wprss_settings_to_reset',
277
+ array(
278
+ 'wprss_settings_general',
279
+ 'wprss_settings_notices',
280
+ 'wprss_addon_notices',
281
+ 'wprss_pwsv',
282
+ 'wprss_db_version'
283
+ )
284
+ );
285
+ // Delete the settings
286
+ foreach( $settings_to_reset as $setting ) {
287
+ delete_option( $setting );
288
+ }
289
+
290
+ // Action Hook
291
+ do_action( 'wprss_after_reset_settings' );
292
+ }
includes/admin-welcome.php CHANGED
@@ -8,6 +8,34 @@
8
  if ( ! defined( 'ABSPATH' ) ) exit;
9
 
10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  // The tabs to be shown
12
  $tabs = array(
13
  /* 'cat' => 'Categories',
@@ -60,6 +88,36 @@
60
  default: ?>
61
  <div class="changelog">
62
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
63
  <h2 class="about-headline-callout">New Author Importing!</h2>
64
  <div class="about-overview">
65
  <img src="<?php echo WPRSS_IMG;?>welcome-page/authors.png" />
@@ -77,27 +135,6 @@
77
  </p>
78
  </div>
79
 
80
-
81
- <h2 class="about-headline-callout">New Pagination Options</h2>
82
- <div class="feature-section col two-col">
83
- <div class="col-1">
84
- <img src="<?php echo WPRSS_IMG;?>welcome-page/default-pagination.png" />
85
- <h4>Default Pagination</h4>
86
- <p>
87
- The default pagination from the previous versions of WP RSS Aggregator,
88
- showing links for <strong>Older Posts</strong> and <strong>Newer Posts</strong>.
89
- </p>
90
- </div>
91
- <div class="col-2 last-feature">
92
- <img src="<?php echo WPRSS_IMG;?>welcome-page/numbered-pagination.png" />
93
- <h4>Numbered Pagination</h4>
94
- <p>
95
- The new numbered pagination - Show <strong>Next</strong> and <strong>Previous</strong> links,
96
- along with links for each page of feed items.
97
- </p>
98
- </div>
99
- </div>
100
-
101
 
102
  <hr/>
103
 
@@ -118,9 +155,11 @@
118
 
119
  <h3>Changelog for v<?php echo WPRSS_VERSION; ?></h3>
120
  <ul>
121
- <li><strong>Enhanced:</strong> Better wording on settings page.</li>
122
- <li><strong>Fixed bug:</strong> The <strong>Links Behaviour</strong> option in the settings was not working.</li>
123
- <li><strong>Fixed bug:</strong> The wrong feed items were being shown for some sources when using the "View Items" row action.</li>
 
 
124
  </ul>
125
 
126
  <p>Need functionality not already available in core or the add-ons? You can <a href="http://www.wprssaggregator.com/feature-requests/">suggest new features</a>!</p>
8
  if ( ! defined( 'ABSPATH' ) ) exit;
9
 
10
 
11
+ function wprss_parse_changelog() {
12
+ $contents = file_get_contents( WPRSS_DIR . 'changelog.txt' );
13
+ $lines = explode( "\n", $contents );
14
+ unset($lines[0]);
15
+
16
+ $chosen = array();
17
+ foreach( $lines as $line ) {
18
+ if ( trim($line) == '' ) {
19
+ break;
20
+ }
21
+ $chosen[] = $line;
22
+ }
23
+
24
+ $final = array();
25
+ foreach( $chosen as $line ) {
26
+ $colon = strpos( $line, ":" );
27
+ $key = trim( substr( $line, 0, $colon ) );
28
+ $val = trim( substr( $line, $colon + 1 ) );
29
+ $final[] = array(
30
+ 'type' => $key,
31
+ 'desc' => $val
32
+ );
33
+ }
34
+
35
+ return $final;
36
+ }
37
+
38
+
39
  // The tabs to be shown
40
  $tabs = array(
41
  /* 'cat' => 'Categories',
88
  default: ?>
89
  <div class="changelog">
90
 
91
+ <h2 class="about-headline-callout">New Feed Item Blacklist</h2>
92
+ <div class="feature-section col three-col">
93
+ <div class="col-1">
94
+ <img src="<?php echo WPRSS_IMG;?>welcome-page/trash-feed-item.png" />
95
+ <h4>Trash undesired items</h4>
96
+ <p>
97
+ Did a feed import an item that you do not wish to keep? Up till now, <strong>WP RSS Aggregator</strong>
98
+ only allowed you to trash the item and keep it in your trash.
99
+ </p>
100
+ </div>
101
+ <div class="col-2">
102
+ <img src="<?php echo WPRSS_IMG;?>welcome-page/blacklist-feed-item.png" />
103
+ <h4>Blacklist Trashed Items</h4>
104
+ <p>
105
+ Permanently deleting the item will cause it to be re-imported.
106
+ Using the new <strong>Delete Permanently &amp; Blacklist</strong> option, the feed item is deleted
107
+ and added to the <strong>Blacklist</strong>.
108
+ </p>
109
+ </div>
110
+ <div class="col-3 last-feature">
111
+ <img src="<?php echo WPRSS_IMG;?>welcome-page/blacklist.png" />
112
+ <h4>The Blacklist</h4>
113
+ <p>
114
+ This is your list of unwanted feed item links. Any item in this list will be ignored by
115
+ <strong>WP RSS Aggregator</strong> in the future, meaning it won't be imported from any of your
116
+ feed sources.
117
+ </p>
118
+ </div>
119
+ </div>
120
+
121
  <h2 class="about-headline-callout">New Author Importing!</h2>
122
  <div class="about-overview">
123
  <img src="<?php echo WPRSS_IMG;?>welcome-page/authors.png" />
135
  </p>
136
  </div>
137
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
138
 
139
  <hr/>
140
 
155
 
156
  <h3>Changelog for v<?php echo WPRSS_VERSION; ?></h3>
157
  <ul>
158
+ <?php // CHANGELOG
159
+ $changelog = wprss_parse_changelog();
160
+ foreach( $changelog as $entry ): ?>
161
+ <li><strong><?php echo $entry['type']; ?></strong>: <?php echo $entry['desc']; ?></li>
162
+ <?php endforeach; ?>
163
  </ul>
164
 
165
  <p>Need functionality not already available in core or the add-ons? You can <a href="http://www.wprssaggregator.com/feature-requests/">suggest new features</a>!</p>
includes/admin.php CHANGED
@@ -35,8 +35,8 @@
35
  function wprss_register_menu_pages() {
36
 
37
  //create submenu items
38
- add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'WP RSS Aggregator Settings', 'wprss' ), __( 'Settings', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings' ), 'wprss-aggregator-settings', 'wprss_settings_page_display' );
39
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Export & Import Settings', 'wprss' ), __( 'Import & Export', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings' ), 'wprss-import-export-settings', 'wprss_import_export_settings_page_display' );
 
40
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Debugging', 'wprss' ), __( 'Debugging', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings'), 'wprss-debugging', 'wprss_debugging_page_display' );
41
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Add-Ons', 'wprss' ), __( 'Add-Ons', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings'), 'wprss-addons', 'wprss_addons_page_display' );
42
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Help & Support', 'wprss' ), __( 'Help & Support', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings'), 'wprss-help', 'wprss_help_page_display' );
35
  function wprss_register_menu_pages() {
36
 
37
  //create submenu items
 
38
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Export & Import Settings', 'wprss' ), __( 'Import & Export', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings' ), 'wprss-import-export-settings', 'wprss_import_export_settings_page_display' );
39
+ add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'WP RSS Aggregator Settings', 'wprss' ), __( 'Settings', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings' ), 'wprss-aggregator-settings', 'wprss_settings_page_display' );
40
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Debugging', 'wprss' ), __( 'Debugging', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings'), 'wprss-debugging', 'wprss_debugging_page_display' );
41
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Add-Ons', 'wprss' ), __( 'Add-Ons', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings'), 'wprss-addons', 'wprss_addons_page_display' );
42
  add_submenu_page( 'edit.php?post_type=wprss_feed', __( 'Help & Support', 'wprss' ), __( 'Help & Support', 'wprss' ), apply_filters( 'wprss_capability', 'manage_feed_settings'), 'wprss-help', 'wprss_help_page_display' );
includes/feed-blacklist.php ADDED
@@ -0,0 +1,316 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * This file contains all functions relating to the blacklisting of
5
+ * imported feeds items.
6
+ *
7
+ * Blacklisting a feed item is in essence nothing more than a saved list
8
+ * of feed items. When a feed item is imported, its normalized permalink
9
+ * is tested against this list, and if found, the feed item is not
10
+ * imported. Admins can add items to the blacklist, to prevent them
11
+ * from being imported again.
12
+ *
13
+ * @package WP RSS Aggregator
14
+ * @since 4.4
15
+ */
16
+
17
+
18
+ // Check if the 'blacklist' GET param is set
19
+ add_action( 'init', 'wprss_check_if_blacklist_item' );
20
+ // Register custom post type
21
+ add_action( 'init', 'wprss_blacklist_cpt' );
22
+ // Add the row actions to the targetted post type
23
+ add_filter( 'post_row_actions', 'wprss_blacklist_row_actions', 10, 1 );
24
+ // Check if deleting a blacklist item, from the GET parameter
25
+ add_action( 'init', 'wprss_check_if_blacklist_delete' );
26
+ // Changes the wprss_blacklist table columns
27
+ add_filter( 'manage_wprss_blacklist_posts_columns', 'wprss_blacklist_columns');
28
+ // Prints the table data for each blacklist entry
29
+ add_action( 'manage_wprss_blacklist_posts_custom_column' , 'wprss_blacklist_table_contents', 10, 2 );
30
+ // Changes the wprss_blacklist bulk actions
31
+ add_filter('bulk_actions-edit-wprss_blacklist','wprss_blacklist_bulk_actions', 5, 1 );
32
+
33
+
34
+ /**
35
+ * Returns the post type being used or blacklisting.
36
+ *
37
+ * @since 4.4
38
+ * @return string The post type being used for blacklisting.
39
+ */
40
+ function wprss_blacklist_post_type() {
41
+ // Return the post type - allow filter
42
+ return apply_filters( 'wprss_blacklist_post_type', 'wprss_feed_item' );
43
+ }
44
+
45
+
46
+ /**
47
+ * Retrieves the blacklisted items.
48
+ *
49
+ * @since 4.4
50
+ * @return array An associative array of blacklisted item, each entry
51
+ * having the key as the permalink, and the value as the title.
52
+ */
53
+ function wprss_get_blacklist() {
54
+ // Get the option
55
+ $blacklist_option = get_option('wprss_blacklist');
56
+ // If the option does not exist
57
+ if ( $blacklist_option === FALSE || !is_array( $blacklist_option ) ) {
58
+ // create it
59
+ update_option( 'wprss_blacklist', array() );
60
+ $blacklist_option = array();
61
+ }
62
+ return $blacklist_option;
63
+ }
64
+
65
+
66
+ /**
67
+ * Creates a blacklist entry for the given feed item.
68
+ *
69
+ * @since 4.4
70
+ * @param int|string The ID of the feed item to add to the blacklist
71
+ */
72
+ function wprss_blacklist_item( $ID ) {
73
+ // Return if feed item is null
74
+ if ( is_null($ID) ) return;
75
+
76
+ // Get the feed item data
77
+ $item_title = get_the_title( $ID );
78
+ $item_permalink = get_post_meta( $ID, 'wprss_item_permalink', TRUE );
79
+ // Prepare the data for blacklisting
80
+ $title = apply_filters( 'wprss_blacklist_title', trim($item_title) );
81
+ $permalink = apply_filters( 'wprss_blacklist_permalink', trim($item_permalink) );
82
+
83
+ // Get the blacklisted items
84
+ $blacklist = wprss_get_blacklist();
85
+ // Add the item to the blacklist
86
+ $blacklist[ $permalink ] = $title;
87
+
88
+ // Delete the item
89
+ wp_delete_post( $ID, TRUE );
90
+
91
+ // Add the blacklisted item
92
+ $id = wp_insert_post(array(
93
+ 'post_title' => $title,
94
+ 'post_type' => 'wprss_blacklist',
95
+ 'post_status' => 'publish'
96
+ ));
97
+ update_post_meta( $id, 'wprss_permalink', $permalink );
98
+ }
99
+
100
+
101
+ /**
102
+ * Determines whether the given item is blacklist.
103
+ *
104
+ * @since 4.4
105
+ * @param string $permalink The permalink to look for in the saved option
106
+ * @return bool TRUE if the permalink is found, FALSE otherwise.
107
+ */
108
+ function wprss_is_blacklisted( $permalink ) {
109
+ // Query the blacklist entries, for an item with the given permalink
110
+ $query = new WP_Query(array(
111
+ 'post_type' => 'wprss_blacklist',
112
+ 'meta_key' => 'wprss_permalink',
113
+ 'meta_value' => $permalink
114
+ ));
115
+ // Return TRUE if the query returned a result, FALSE otherwise
116
+ return $query->have_posts();
117
+ }
118
+
119
+
120
+ /**
121
+ * Check if the 'blacklist' GET param is set, and prepare to blacklist
122
+ * the item.
123
+ *
124
+ * @since 4.4
125
+ */
126
+ function wprss_check_if_blacklist_item() {
127
+ // If the GET param is not set, do nothing. Return.
128
+ if ( empty( $_GET['wprss_blacklist'] ) ) return;
129
+
130
+ // Get the ID from the GET param
131
+ $ID = $_GET['wprss_blacklist'];
132
+ // If the post does not exist, stop. Show a message
133
+ if ( get_post($ID) === NULL ) {
134
+ wp_die('The item you are trying to blacklist does not exist');
135
+ }
136
+
137
+ // If the post type is not correct,
138
+ if ( get_post_type($ID) !== wprss_blacklist_post_type() ) {
139
+ wp_die('The item you are trying to blacklist is not valid!');
140
+ }
141
+
142
+ wprss_blacklist_item( $ID );
143
+
144
+ // Check the current page, and generate the URL query string for the page
145
+ $paged = isset( $_GET['paged'] )? '&paged=' . $_GET['paged'] : '';
146
+ // Get the blacklisting post type
147
+ $post_type = wprss_blacklist_post_type();
148
+ // Refresh the page without the GET parameter
149
+ header( 'Location: ' . admin_url( "edit.php?post_type=$post_type" . $paged ) );
150
+ exit();
151
+ }
152
+
153
+
154
+
155
+
156
+ /**
157
+ * Registers the Blacklist Custom Post Type.
158
+ *
159
+ * @since 4.4
160
+ */
161
+ function wprss_blacklist_cpt() {
162
+ register_post_type( 'wprss_blacklist', array(
163
+ 'label' => 'Blacklist',
164
+ 'public' => false,
165
+ 'exclude_from_search' => true,
166
+ 'show_ui' => true,
167
+ 'show_in_menu' => 'edit.php?post_type=wprss_feed',
168
+ 'capability_type' => 'wprss_blacklist',
169
+ 'supports' => array('title'),
170
+ 'labels' => array(
171
+ 'name' => __( 'Blacklist', 'wprss' ),
172
+ 'singular_name' => __( 'Blacklist', 'wprss' ),
173
+ 'all_items' => __( 'Blacklist', 'wprss' ),
174
+ 'search_items' => __( 'Search Blacklist', 'wprss' ),
175
+ 'not_found' => __( 'You do not have any items blacklisted yet!', 'wprss' ),
176
+ )
177
+ ));
178
+ }
179
+
180
+
181
+ /**
182
+ * Adds the row actions to the targetted post type.
183
+ * Default post type = wprss_feed_item
184
+ *
185
+ * @since 4.4
186
+ * @param array $actions The row actions to be filtered
187
+ * @return array The new filtered row actions
188
+ */
189
+ function wprss_blacklist_row_actions( $actions ) {
190
+ // Check the current page, and generate the URL query string for the page
191
+ $paged = isset( $_GET['paged'] )? '&paged=' . $_GET['paged'] : '';
192
+
193
+ $post_type = wprss_blacklist_post_type();
194
+
195
+ // Check the post type
196
+ if ( get_post_type() == $post_type && get_post_status() == 'trash' ) {
197
+ // Get the Post ID
198
+ $ID = get_the_ID();
199
+
200
+ // Prepare the blacklist URL
201
+ $url = apply_filters(
202
+ 'wprss_blacklist_row_action_url',
203
+ admin_url( "edit.php?post_type=$post_type&wprss_blacklist=$ID" ),
204
+ $ID
205
+ ) . $paged;
206
+
207
+ // Prepare the text
208
+ $text = apply_filters( 'wprss_blacklist_row_action_text', 'Delete Permanently &amp; Blacklist' );
209
+ $text = __( $text, 'wprss' );
210
+
211
+ // Prepare the hint
212
+ $hint = apply_filters(
213
+ 'wprss_blacklist_row_action_hint',
214
+ "The item will be deleted permanently, and its permalink will be recorded in the blacklist"
215
+ );
216
+ $hint = esc_attr( __( $hint, 'wprss' ) );
217
+
218
+ // Add the blacklist action
219
+ $actions['blacklist-item'] = "<span class='delete'><a title='$hint' href='$url'>$text</a></span>";
220
+ }
221
+
222
+ // For the blacklisted item
223
+ elseif ( get_post_type() === 'wprss_blacklist' ) {
224
+ $paged = isset( $_GET['paged'] )? '&paged=' . $_GET['paged'] : '';
225
+ $remove_url = wp_nonce_url( 'post.php?wprss-blacklist-remove='.get_the_ID(), 'blacklist-remove-' . get_the_ID(), 'wprss_blacklist_trash' );
226
+ $actions = array(
227
+ 'trash' => '<a href="'.$remove_url.'">Remove from blacklist</a>'
228
+ );
229
+ }
230
+
231
+ // Return the actions
232
+ return $actions;
233
+ }
234
+
235
+
236
+ /**
237
+ * Checks for the GET parameter wprss-blacklist-remove, and if present,
238
+ * deletes the appropriate blacklist entry. Uses nonce 'wprss_blacklist_trash'
239
+ * with action 'blacklist-remove-$ID'
240
+ *
241
+ * @since 4.4
242
+ */
243
+ function wprss_check_if_blacklist_delete() {
244
+ // If the GET param is not set, do nothing. Return.
245
+ if ( empty( $_GET['wprss-blacklist-remove'] ) ) return;
246
+
247
+ // The array of blacklist entries to delete
248
+ $to_delete = array();
249
+ // The ID of the blacklist entry - if only deleting a single entry
250
+ $ID = $_GET['wprss-blacklist-remove'];
251
+
252
+ // check if deleting in bulk
253
+ if ( isset( $_GET['wprss-bulk'] ) && $_GET['wprss-bulk'] == '1' ) {
254
+ $to_delete = explode( ',', $ID );
255
+ } else {
256
+ $to_delete = array( $ID );
257
+ // Get the ID from the GET param
258
+ // Verify the nonce
259
+ check_admin_referer( 'blacklist-remove-' . $ID, 'wprss_blacklist_trash' );
260
+ }
261
+
262
+ // Delete the posts marked for delete
263
+ foreach( $to_delete as $delete_id ) {
264
+ wp_delete_post( $delete_id, TRUE );
265
+ }
266
+
267
+ // Redirect back to blacklists page
268
+ $paged = isset( $_GET['paged'] )? '&paged=' . $_GET['paged'] : '';
269
+ header('Location: ' . admin_url('edit.php?post_type=wprss_blacklist' . $paged ) );
270
+ exit;
271
+ }
272
+
273
+
274
+ /**
275
+ * Returns the custom columns for the blacklist post type
276
+ *
277
+ * @since 4.4
278
+ * @params array $cols The columns to filter
279
+ * @return array The new columns
280
+ */
281
+ function wprss_blacklist_columns( $cols ) {
282
+ return array(
283
+ 'cb' => $cols['cb'],
284
+ 'title' => __( 'Title' ),
285
+ 'permalink' => __( 'Permalink' )
286
+ );
287
+ }
288
+
289
+
290
+ /**
291
+ * Prints the cell data in the table for each blacklist entry
292
+ *
293
+ * @since 4.4
294
+ * @param string $column The column slug
295
+ * @param string|int $ID The ID of the post currently being printed
296
+ */
297
+ function wprss_blacklist_table_contents( $column, $ID ) {
298
+ switch ( $column ) {
299
+ case 'permalink':
300
+ $permalink = get_post_meta( $ID, 'wprss_permalink', TRUE );
301
+ echo '<a href="'.$permalink.'" target="_blank">'.$permalink.'</a>';
302
+ break;
303
+ }
304
+ }
305
+
306
+
307
+ /**
308
+ * Removes the bulk actions for the Blacklist post type
309
+ *
310
+ * @since 4.4
311
+ * @param array $actions The array of actions to be filtered
312
+ * @return array An empty array
313
+ */
314
+ function wprss_blacklist_bulk_actions( $actions ) {
315
+ return array();
316
+ }
includes/feed-importing.php CHANGED
@@ -62,31 +62,34 @@
62
  if ( $items === NULL ) $items = array();
63
 
64
  // If using a limit ...
65
- if ( $feed_limit !== NULL ) {
66
- // slice the items array using the feed meta limit
67
- // @todo - Check current number of feed items for source, and delete oldest to make room for new, to keep to the limit.
68
- // Use wprss_get_feed_items_for_source
69
-
70
  $items_to_insert = array_slice( $items, 0, $feed_limit );
 
71
 
72
- // Gather the permalinks of existing feed item's related to this feed source
73
- $existing_permalinks = get_existing_permalinks( $feed_ID );
74
 
75
- // Generate a list of items fetched, that are not already in the DB
76
- $new_items = array();
77
- foreach( $items_to_insert as $item ) {
78
- $permalink = wprss_normalize_permalink( $item->get_permalink() );
79
- if ( !in_array( trim($permalink), $existing_permalinks ) ) {
80
- $new_items[] = $item;
81
- }
82
  }
 
 
83
 
 
 
84
  // Get the number of feed items in DB, and their count
85
  $db_feed_items = wprss_get_feed_items_for_source( $feed_ID );
86
  $num_db_feed_items = $db_feed_items->post_count;
 
87
  // Get the number of feed items we can store until we reach the limit
88
  $num_can_insert = $feed_limit - $num_db_feed_items;
89
-
90
  // Calculate how many feed items we must delete before importing, to keep to the limit
91
  $num_feed_items_to_delete = count( $new_items ) - $num_can_insert;
92
 
@@ -94,16 +97,11 @@
94
  $db_feed_items_reversed = array_reverse( $db_feed_items->posts );
95
  // Cut the array to get only the first few that are to be deleted ( equal to $num_feed_items_to_delete )
96
  $feed_items_to_delete = array_slice( $db_feed_items_reversed, 0, $num_feed_items_to_delete );
 
97
  // Iterate the feed items and delete them
98
  foreach ( $feed_items_to_delete as $key => $post ) {
99
  wp_delete_post( $post->ID, TRUE );
100
  }
101
-
102
- //$items_to_insert = $new_items;
103
-
104
- }
105
- else {
106
- $items_to_insert = $items;
107
  }
108
 
109
  update_post_meta( $feed_ID, 'wprss_last_update', time() );
62
  if ( $items === NULL ) $items = array();
63
 
64
  // If using a limit ...
65
+ if ( $feed_limit === NULL ) {
66
+ $items_to_insert = $items;
67
+ } else {
 
 
68
  $items_to_insert = array_slice( $items, 0, $feed_limit );
69
+ }
70
 
71
+ // Gather the permalinks of existing feed item's related to this feed source
72
+ $existing_permalinks = get_existing_permalinks( $feed_ID );
73
 
74
+ // Generate a list of items fetched, that are not already in the DB
75
+ $new_items = array();
76
+ foreach( $items_to_insert as $item ) {
77
+ $permalink = wprss_normalize_permalink( $item->get_permalink() );
78
+ // Check if not blacklisted and not already imported
79
+ if ( wprss_is_blacklisted( $permalink ) === FALSE && !in_array( trim($permalink), $existing_permalinks ) ) {
80
+ $new_items[] = $item;
81
  }
82
+ }
83
+ $items_to_insert = $new_items;
84
 
85
+ // If using a limit - delete any excess items to make room for the new items
86
+ if ( $feed_limit !== NULL ) {
87
  // Get the number of feed items in DB, and their count
88
  $db_feed_items = wprss_get_feed_items_for_source( $feed_ID );
89
  $num_db_feed_items = $db_feed_items->post_count;
90
+
91
  // Get the number of feed items we can store until we reach the limit
92
  $num_can_insert = $feed_limit - $num_db_feed_items;
 
93
  // Calculate how many feed items we must delete before importing, to keep to the limit
94
  $num_feed_items_to_delete = count( $new_items ) - $num_can_insert;
95
 
97
  $db_feed_items_reversed = array_reverse( $db_feed_items->posts );
98
  // Cut the array to get only the first few that are to be deleted ( equal to $num_feed_items_to_delete )
99
  $feed_items_to_delete = array_slice( $db_feed_items_reversed, 0, $num_feed_items_to_delete );
100
+
101
  // Iterate the feed items and delete them
102
  foreach ( $feed_items_to_delete as $key => $post ) {
103
  wp_delete_post( $post->ID, TRUE );
104
  }
 
 
 
 
 
 
105
  }
106
 
107
  update_post_meta( $feed_ID, 'wprss_last_update', time() );
includes/scripts.php CHANGED
@@ -30,12 +30,13 @@
30
  wp_enqueue_style( 'wprss-admin-editor-styles', WPRSS_CSS . 'admin-editor.css' );
31
  wp_enqueue_style( 'wprss-admin-tracking-styles', WPRSS_CSS . 'admin-tracking-styles.css' );
32
 
 
 
33
  if ( ( 'post' === $screen->base || 'edit' === $screen->base || 'wprss-debugging' === $screen->base ) &&
34
- ( 'wprss_feed' === $screen->post_type || 'wprss_feed_item' === $screen->post_type ) || ( isset( $_GET['page'] ) &&
35
- ( $_GET['page'] == 'wprss-aggregator-settings' ) ) ) {
36
  wp_enqueue_style( 'wprss-admin-styles', WPRSS_CSS . 'admin-styles.css' );
37
  wp_enqueue_style( 'wprss-fa', WPRSS_CSS . 'font-awesome.min.css' );
38
- wp_enqueue_script( 'wprss-custom-bulk-actions', WPRSS_JS . 'admin-custom-bulk-actions.js', array( 'jquery' ) );
39
  wp_enqueue_script( 'wprss-admin-custom', WPRSS_JS .'admin-custom.js', array('jquery','jquery-ui-datepicker','jquery-ui-slider') );
40
  wp_enqueue_script( 'jquery-ui-timepicker-addon', WPRSS_JS .'jquery-ui-timepicker-addon.js', array('jquery','jquery-ui-datepicker') );
41
  wp_enqueue_style( 'jquery-style', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css' );
@@ -43,6 +44,9 @@
43
  // Change text on post screen from 'Enter title here' to 'Enter feed name here'
44
  add_filter( 'enter_title_here', 'wprss_change_title_text' );
45
  }
 
 
 
46
  }
47
  // Load Heartbeat script and set dependancy for Heartbeat to ensure Heartbeat is loaded
48
  if ( 'edit' === $screen->base && $screen->post_type === 'wprss_feed' && apply_filters('wprss_ajax_polling', TRUE) === TRUE ) {
30
  wp_enqueue_style( 'wprss-admin-editor-styles', WPRSS_CSS . 'admin-editor.css' );
31
  wp_enqueue_style( 'wprss-admin-tracking-styles', WPRSS_CSS . 'admin-tracking-styles.css' );
32
 
33
+ $page = isset( $_GET['page'] )? $_GET['page'] : '';
34
+
35
  if ( ( 'post' === $screen->base || 'edit' === $screen->base || 'wprss-debugging' === $screen->base ) &&
36
+ ( 'wprss_feed' === $screen->post_type || 'wprss_feed_item' === $screen->post_type ) ||
37
+ $page == 'wprss-aggregator-settings' || $screen->post_type === 'wprss_blacklist' ) {
38
  wp_enqueue_style( 'wprss-admin-styles', WPRSS_CSS . 'admin-styles.css' );
39
  wp_enqueue_style( 'wprss-fa', WPRSS_CSS . 'font-awesome.min.css' );
 
40
  wp_enqueue_script( 'wprss-admin-custom', WPRSS_JS .'admin-custom.js', array('jquery','jquery-ui-datepicker','jquery-ui-slider') );
41
  wp_enqueue_script( 'jquery-ui-timepicker-addon', WPRSS_JS .'jquery-ui-timepicker-addon.js', array('jquery','jquery-ui-datepicker') );
42
  wp_enqueue_style( 'jquery-style', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css' );
44
  // Change text on post screen from 'Enter title here' to 'Enter feed name here'
45
  add_filter( 'enter_title_here', 'wprss_change_title_text' );
46
  }
47
+ if ( 'wprss_feed' === $screen->post_type ) {
48
+ wp_enqueue_script( 'wprss-custom-bulk-actions', WPRSS_JS . 'admin-custom-bulk-actions.js', array( 'jquery' ) );
49
+ }
50
  }
51
  // Load Heartbeat script and set dependancy for Heartbeat to ensure Heartbeat is loaded
52
  if ( 'edit' === $screen->base && $screen->post_type === 'wprss_feed' && apply_filters('wprss_ajax_polling', TRUE) === TRUE ) {
includes/system-info.php CHANGED
@@ -27,7 +27,7 @@
27
  <h3><?php _e( 'System Information', 'wprss' ) ?></h3>
28
  <?php
29
  $form_url = admin_url( 'edit.php?post_type=wprss_feed&page=wprss-debugging' );
30
- $nonce_url = wp_nonce_url( $formurl, 'wprss-sysinfo' );
31
  ?>
32
  <form action="<?php echo esc_url( $nonce_url ); ?>" method="post">
33
  <textarea readonly="readonly" onclick="this.focus();this.select()" id="system-info-textarea" name="wprss-sysinfo" title="<?php _e( 'To copy the system info, click below then press Ctrl + C (PC) or Cmd + C (Mac).', 'wprss' ); ?>">
@@ -46,7 +46,10 @@ WordPress Version: <?php echo get_bloginfo( 'version' ) . "\n"; ?>
46
  <?php echo $browser ; ?>
47
 
48
  PHP Version: <?php echo PHP_VERSION . "\n"; ?>
49
- MySQL Version: <?php echo mysql_get_server_info() . "\n"; ?>
 
 
 
50
  Web Server Info: <?php echo $_SERVER['SERVER_SOFTWARE'] . "\n"; ?>
51
 
52
  PHP Safe Mode: <?php echo ini_get( 'safe_mode' ) ? "Yes" : "No\n"; ?>
27
  <h3><?php _e( 'System Information', 'wprss' ) ?></h3>
28
  <?php
29
  $form_url = admin_url( 'edit.php?post_type=wprss_feed&page=wprss-debugging' );
30
+ $nonce_url = wp_nonce_url( $form_url, 'wprss-sysinfo' );
31
  ?>
32
  <form action="<?php echo esc_url( $nonce_url ); ?>" method="post">
33
  <textarea readonly="readonly" onclick="this.focus();this.select()" id="system-info-textarea" name="wprss-sysinfo" title="<?php _e( 'To copy the system info, click below then press Ctrl + C (PC) or Cmd + C (Mac).', 'wprss' ); ?>">
46
  <?php echo $browser ; ?>
47
 
48
  PHP Version: <?php echo PHP_VERSION . "\n"; ?>
49
+ MySQL Version: <?php
50
+ $mysqli = new mysqli( DB_HOST, DB_USER, DB_PASSWORD );
51
+ echo $mysqli->server_info . "\n";
52
+ ?>
53
  Web Server Info: <?php echo $_SERVER['SERVER_SOFTWARE'] . "\n"; ?>
54
 
55
  PHP Safe Mode: <?php echo ini_get( 'safe_mode' ) ? "Yes" : "No\n"; ?>
js/admin-custom.js CHANGED
@@ -277,6 +277,45 @@ jQuery(window).load( function(){
277
  });
278
  })(jQuery);
279
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
280
  // Utility string trim method, if it does not exist
281
  if ( !String.prototype.trim ) {
282
  String.prototype.trim = function(){
277
  });
278
  })(jQuery);
279
 
280
+
281
+ // For Blacklist
282
+ (function($) {
283
+ $(document).ready( function(){
284
+ if ( $('body').hasClass('post-type-wprss_blacklist') ) {
285
+
286
+
287
+
288
+ $('<p>').text('The feed items listed here will be disregarded when importing new items from your feed sources.')
289
+ .insertBefore( $('.tablenav.top') );
290
+
291
+
292
+ // Construct the bulk delete button
293
+ $('<a>').addClass('button').attr('href', '#').text('Remove selected from Blacklist')
294
+ // Add it to the page
295
+ .appendTo( $('div.tablenav.top div.bulkactions') )
296
+ // Bind the click event
297
+ .click( function(e){
298
+ var ids = [];
299
+ $('table.wp-list-table tbody th.check-column').each( function(){
300
+ var checkbox = $(this).find('input[type="checkbox"]');
301
+ if ( checkbox.is(':checked') ) {
302
+ var idAttr = checkbox.attr('id');
303
+ var id = idAttr.split('-')[2];
304
+ ids.push( id );
305
+ }
306
+ });
307
+ var id_str = ids.join();
308
+ $(this).attr('href', 'edit.php?wprss-blacklist-remove=' + id_str + '&wprss-bulk=1');
309
+ //e.preventDefault();
310
+ });
311
+
312
+ // Unlink the titles in the table
313
+ $('table.wp-list-table a.row-title').contents().unwrap();
314
+ }
315
+ });
316
+ })(jQuery);
317
+
318
+
319
  // Utility string trim method, if it does not exist
320
  if ( !String.prototype.trim ) {
321
  String.prototype.trim = function(){
log-1.txt DELETED
@@ -1,400 +0,0 @@
1
- [17-07-2014 13:32:41] WPRSS > image_obeys_minimum_size:
2
- Failed to get image dimensions. Image may not exist at http://www.fitforblogging.com/wp-content/uploads/fcc0c0b273d95abff3d48ba2_1280_rich-e1405526541809.jpg. Got:
3
- [17-07-2014 13:32:41] WPRSS > image_obeys_minimum_size:
4
- Failed to get image dimensions. Image may not exist at http://www.fitforblogging.com/wp-content/uploads/how-to-easily-delete-your-online-accounts-accountkiller.com_-750x389.png. Got:
5
- [17-07-2014 13:32:42] WPRSS > image_obeys_minimum_size:
6
- Failed to get image dimensions. Image may not exist at http://www.fitforblogging.com/wp-content/uploads/paypal_logo-e1401795047844.jpg. Got:
7
- [17-07-2014 13:32:42] WPRSS > image_obeys_minimum_size:
8
- Failed to get image dimensions. Image may not exist at http://www.fitforblogging.com/wp-content/uploads/Tax-rates-online-KPMG-GLOBAL.png. Got:
9
- [17-07-2014 13:32:43] WPRSS > image_obeys_minimum_size:
10
- Failed to get image dimensions. Image may not exist at http://www.fitforblogging.com/wp-content/uploads/1password-750x442.png. Got:
11
-
12
- [17-07-2014 13:50:51] WPRSS > image_obeys_minimum_size:
13
- Failed to get image dimensions. Image may not exist at image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==. Got:
14
- [17-07-2014 13:50:51] WPRSS > image_obeys_minimum_size:
15
- Failed to get image dimensions. Image may not exist at image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==. Got:
16
- [17-07-2014 13:50:51] WPRSS > image_obeys_minimum_size:
17
- Failed to get image dimensions. Image may not exist at image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==. Got:
18
- [17-07-2014 13:50:54] WPRSS > image_obeys_minimum_size:
19
- Failed to get image dimensions. Image may not exist at image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==. Got:
20
-
21
- [19-07-2014 16:57:32] WPRSS:
22
- Full text service responded with:: A valid key must be supplied
23
- [19-07-2014 16:57:34] WPRSS:
24
- Full text service responded with:: A valid key must be supplied
25
- [19-07-2014 16:57:35] WPRSS:
26
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
27
- No server is available to handle this request.
28
- </body></html>
29
-
30
- [19-07-2014 16:57:35] WPRSS > check_force_full_content:
31
- Failed to find a working full text rss service.
32
- [19-07-2014 16:57:39] WPRSS:
33
- Full text service responded with:: A valid key must be supplied
34
- [19-07-2014 16:57:40] WPRSS:
35
- Full text service responded with:: A valid key must be supplied
36
- [19-07-2014 16:57:40] WPRSS:
37
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
38
- No server is available to handle this request.
39
- </body></html>
40
-
41
- [19-07-2014 16:57:40] WPRSS > check_force_full_content:
42
- Failed to find a working full text rss service.
43
- [19-07-2014 16:57:56] WPRSS:
44
- Full text service responded with:: A valid key must be supplied
45
- [19-07-2014 16:57:57] WPRSS:
46
- Full text service responded with:: A valid key must be supplied
47
- [19-07-2014 16:57:57] WPRSS:
48
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
49
- No server is available to handle this request.
50
- </body></html>
51
-
52
- [19-07-2014 16:57:57] WPRSS > check_force_full_content:
53
- Failed to find a working full text rss service.
54
- [19-07-2014 16:58:19] WPRSS:
55
- Full text service responded with:: A valid key must be supplied
56
- [19-07-2014 16:58:20] WPRSS:
57
- Full text service responded with:: A valid key must be supplied
58
- [19-07-2014 16:58:21] WPRSS:
59
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
60
- No server is available to handle this request.
61
- </body></html>
62
-
63
- [19-07-2014 16:58:21] WPRSS > check_force_full_content:
64
- Failed to find a working full text rss service.
65
-
66
- [19-07-2014 17:51:54] WPRSS:
67
- Full text service responded with:: A valid key must be supplied
68
- [19-07-2014 17:51:55] WPRSS:
69
- Full text service responded with:: A valid key must be supplied
70
-
71
- [19-07-2014 17:53:54] WPRSS:
72
- Full text service responded with:: A valid key must be supplied
73
- [19-07-2014 17:53:54] WPRSS:
74
- Full text service responded with:: A valid key must be supplied
75
- [19-07-2014 17:54:25] WPRSS:
76
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
77
- No server is available to handle this request.
78
- </body></html>
79
-
80
- [19-07-2014 17:54:25] WPRSS > check_force_full_content:
81
- Failed to find a working full text rss service.
82
- [19-07-2014 17:54:41] WPRSS:
83
- Full text service responded with:: A valid key must be supplied
84
- [19-07-2014 17:54:41] WPRSS:
85
- Full text service responded with:: A valid key must be supplied
86
- [19-07-2014 17:54:42] WPRSS:
87
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
88
- No server is available to handle this request.
89
- </body></html>
90
-
91
- [19-07-2014 17:54:42] WPRSS > check_force_full_content:
92
- Failed to find a working full text rss service.
93
- [19-07-2014 17:54:47] WPRSS:
94
- Full text service responded with:: A valid key must be supplied
95
- [19-07-2014 17:54:48] WPRSS:
96
- Full text service responded with:: A valid key must be supplied
97
- [19-07-2014 17:54:48] WPRSS:
98
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
99
- No server is available to handle this request.
100
- </body></html>
101
-
102
- [19-07-2014 17:54:48] WPRSS > check_force_full_content:
103
- Failed to find a working full text rss service.
104
-
105
- [19-07-2014 20:24:53] WPRSS:
106
- Full text service responded with:: A valid key must be supplied
107
- [19-07-2014 20:24:54] WPRSS:
108
- Full text service responded with:: A valid key must be supplied
109
-
110
- [19-07-2014 20:25:53] WPRSS:
111
- Full text service responded with:: A valid key must be supplied
112
- [19-07-2014 20:25:54] WPRSS:
113
- Full text service responded with:: A valid key must be supplied
114
-
115
- [19-07-2014 20:27:53] WPRSS:
116
- Full text service responded with:: A valid key must be supplied
117
- [19-07-2014 20:27:54] WPRSS:
118
- Full text service responded with:: A valid key must be supplied
119
- [19-07-2014 20:27:55] WPRSS:
120
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
121
- No server is available to handle this request.
122
- </body></html>
123
-
124
- [19-07-2014 20:27:55] WPRSS > check_force_full_content:
125
- Failed to find a working full text rss service.
126
- [19-07-2014 20:27:59] WPRSS:
127
- Full text service responded with:: A valid key must be supplied
128
- [19-07-2014 20:28:00] WPRSS:
129
- Full text service responded with:: A valid key must be supplied
130
- [19-07-2014 20:28:00] WPRSS:
131
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
132
- No server is available to handle this request.
133
- </body></html>
134
-
135
- [19-07-2014 20:28:00] WPRSS > check_force_full_content:
136
- Failed to find a working full text rss service.
137
-
138
- [19-07-2014 21:55:16] WPRSS:
139
- Full text service responded with:: A valid key must be supplied
140
- [19-07-2014 21:55:17] WPRSS:
141
- Full text service responded with:: A valid key must be supplied
142
-
143
- [19-07-2014 21:57:16] WPRSS:
144
- Full text service responded with:: A valid key must be supplied
145
- [19-07-2014 21:57:19] WPRSS:
146
- Full text service responded with:: A valid key must be supplied
147
-
148
- [19-07-2014 21:59:16] WPRSS:
149
- Full text service responded with:: A valid key must be supplied
150
- [19-07-2014 21:59:17] WPRSS:
151
- Full text service responded with:: A valid key must be supplied
152
- [19-07-2014 21:59:47] WPRSS:
153
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
154
- No server is available to handle this request.
155
- </body></html>
156
-
157
- [19-07-2014 21:59:47] WPRSS > check_force_full_content:
158
- Failed to find a working full text rss service.
159
- [19-07-2014 21:59:53] WPRSS:
160
- Full text service responded with:: A valid key must be supplied
161
- [19-07-2014 21:59:54] WPRSS:
162
- Full text service responded with:: A valid key must be supplied
163
- [19-07-2014 21:59:54] WPRSS:
164
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
165
- No server is available to handle this request.
166
- </body></html>
167
-
168
- [19-07-2014 21:59:54] WPRSS > check_force_full_content:
169
- Failed to find a working full text rss service.
170
-
171
- [19-07-2014 22:53:10] WPRSS:
172
- Full text service responded with:: A valid key must be supplied
173
- [19-07-2014 22:53:11] WPRSS:
174
- Full text service responded with:: A valid key must be supplied
175
-
176
- [19-07-2014 22:54:11] WPRSS:
177
- Full text service responded with:: A valid key must be supplied
178
- [19-07-2014 22:54:12] WPRSS:
179
- Full text service responded with:: A valid key must be supplied
180
- [19-07-2014 22:54:13] WPRSS:
181
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
182
- No server is available to handle this request.
183
- </body></html>
184
-
185
- [19-07-2014 22:54:13] WPRSS > check_force_full_content:
186
- Failed to find a working full text rss service.
187
- [19-07-2014 22:54:35] WPRSS:
188
- Full text service responded with:: A valid key must be supplied
189
- [19-07-2014 22:54:36] WPRSS:
190
- Full text service responded with:: A valid key must be supplied
191
- [19-07-2014 22:54:37] WPRSS:
192
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
193
- No server is available to handle this request.
194
- </body></html>
195
-
196
- [19-07-2014 22:54:37] WPRSS > check_force_full_content:
197
- Failed to find a working full text rss service.
198
- [19-07-2014 22:54:43] WPRSS:
199
- Full text service responded with:: A valid key must be supplied
200
- [19-07-2014 22:54:44] WPRSS:
201
- Full text service responded with:: A valid key must be supplied
202
- [19-07-2014 22:54:44] WPRSS:
203
- Full text service responded with:: <html><body><h1>503 Service Unavailable</h1>
204
- No server is available to handle this request.
205
- </body></html>
206
-
207
- [19-07-2014 22:54:44] WPRSS > check_force_full_content:
208
- Failed to find a working full text rss service.
209
-
210
- [22-07-2014 13:11:01] WPRSS > check_force_full_content:
211
- Failed to find a working full text rss service.
212
-
213
- [22-07-2014 13:12:33] WPRSS > image_obeys_minimum_size:
214
- Failed to get image dimensions. Image may not exist at http://dhvcform.getextension.net/wp-content/uploads/2014/07/drag-drop.png. Got:
215
- [22-07-2014 13:12:35] WPRSS > image_obeys_minimum_size:
216
- Failed to get image dimensions. Image may not exist at http://dhvcform.getextension.net/wp-content/uploads/2014/07/Screen-Shot-2014-07-17-at-9.13.09-PM.png. Got:
217
- [22-07-2014 13:12:35] WPRSS > image_obeys_minimum_size:
218
- Failed to get image dimensions. Image may not exist at http://dhvcform.getextension.net/wp-content/uploads/2014/07/any-theme_small.png. Got:
219
-
220
- [22-07-2014 13:14:31] WPRSS > image_obeys_minimum_size:
221
- Failed to get image dimensions. Image may not exist at http://dhvcform.getextension.net/wp-content/uploads/2014/07/drag-drop.png. Got:
222
- [22-07-2014 13:14:31] WPRSS > image_obeys_minimum_size:
223
- Failed to get image dimensions. Image may not exist at http://dhvcform.getextension.net/wp-content/uploads/2014/07/Screen-Shot-2014-07-17-at-9.13.09-PM.png. Got:
224
- [22-07-2014 13:14:33] WPRSS > image_obeys_minimum_size:
225
- Failed to get image dimensions. Image may not exist at http://dhvcform.getextension.net/wp-content/uploads/2014/07/any-theme_small.png. Got:
226
-
227
- [22-07-2014 16:42:51] WPRSS > check_force_full_content:
228
- Failed to find a working full text rss service.
229
- [22-07-2014 16:42:51] WPRSS > wprss_get_feed_items:
230
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
231
-
232
- [22-07-2014 20:44:32] WPRSS > check_force_full_content:
233
- Failed to find a working full text rss service.
234
- [22-07-2014 20:44:33] WPRSS > wprss_get_feed_items:
235
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
236
-
237
- [23-07-2014 07:35:07] WPRSS > check_force_full_content:
238
- Failed to find a working full text rss service.
239
- [23-07-2014 07:35:08] WPRSS > wprss_get_feed_items:
240
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
241
-
242
- [23-07-2014 10:46:41] WPRSS > check_force_full_content:
243
- Failed to find a working full text rss service.
244
- [23-07-2014 10:46:41] WPRSS > wprss_get_feed_items:
245
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
246
-
247
- [23-07-2014 20:21:02] WPRSS > check_force_full_content:
248
- Failed to find a working full text rss service.
249
- [23-07-2014 20:21:02] WPRSS > wprss_get_feed_items:
250
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
251
-
252
- [24-07-2014 07:32:38] WPRSS > check_force_full_content:
253
- Failed to find a working full text rss service.
254
- [24-07-2014 07:32:38] WPRSS > wprss_get_feed_items:
255
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
256
-
257
- [24-07-2014 07:32:43] WPRSS > check_force_full_content:
258
- Failed to find a working full text rss service.
259
- [24-07-2014 07:32:43] WPRSS > wprss_get_feed_items:
260
- Failed to fetch feed "http://codecanyon.net/feeds/new-wordpress-slash-add-ons-items.atom". cURL error 6: Couldn't resolve host 'codecanyon.net'
261
-
262
- [05-08-2014 21:43:03] WPRSS > wprss_ftp_media_sideload_image:
263
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcSm0ksxyjnsGAJuJBCvvfbfWuOdqfBejsMbGqbiLOhDUTU5onaMkAkAukejSVgb-9wWu5MG-xY" for post #2959: Sorry, this file type is not permitted for security reasons.
264
- [05-08-2014 21:43:04] WPRSS > wprss_ftp_media_sideload_image:
265
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcSm0ksxyjnsGAJuJBCvvfbfWuOdqfBejsMbGqbiLOhDUTU5onaMkAkAukejSVgb-9wWu5MG-xY" for post #2959: Sorry, this file type is not permitted for security reasons.
266
- [05-08-2014 21:43:05] WPRSS > wprss_ftp_media_sideload_image:
267
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcTWKDMMnYbcKNOdK0stkbX3hU_cHlQ7Ucvj5x9oPxqHeP-LWLkrOfFZv1dFe9KmJMzBGFfpjFI" for post #2962: Sorry, this file type is not permitted for security reasons.
268
- [05-08-2014 21:43:05] WPRSS > wprss_ftp_media_sideload_image:
269
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcTWKDMMnYbcKNOdK0stkbX3hU_cHlQ7Ucvj5x9oPxqHeP-LWLkrOfFZv1dFe9KmJMzBGFfpjFI" for post #2962: Sorry, this file type is not permitted for security reasons.
270
- [05-08-2014 21:43:07] WPRSS > wprss_ftp_media_sideload_image:
271
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTC7Esyefovax3GpuboL3uzFqDheizyYdF5FK0S2Sy2IAgfCEi31Rb3sVGsBDbfWswZyrhnjo8" for post #2965: Sorry, this file type is not permitted for security reasons.
272
- [05-08-2014 21:43:07] WPRSS > wprss_ftp_media_sideload_image:
273
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTC7Esyefovax3GpuboL3uzFqDheizyYdF5FK0S2Sy2IAgfCEi31Rb3sVGsBDbfWswZyrhnjo8" for post #2965: Sorry, this file type is not permitted for security reasons.
274
- [05-08-2014 21:43:08] WPRSS > wprss_ftp_media_sideload_image:
275
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcT0-NcIdTsJl9XqobjjZnLxIekdo-tT3-0gvvUFZxDBztdg1b5bURp0LNm8mLimsMONcRyTCBxP" for post #2968: Sorry, this file type is not permitted for security reasons.
276
- [05-08-2014 21:43:08] WPRSS > wprss_ftp_media_sideload_image:
277
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcT0-NcIdTsJl9XqobjjZnLxIekdo-tT3-0gvvUFZxDBztdg1b5bURp0LNm8mLimsMONcRyTCBxP" for post #2968: Sorry, this file type is not permitted for security reasons.
278
- [05-08-2014 21:43:09] WPRSS > wprss_ftp_media_sideload_image:
279
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSD3uNnu6hgx732lS8FZbYkRUPsVNAMmix1BnWOtMKvTkNP8aNUnuVGzTmLJv6ky7r_FV0sQ4Q0" for post #2971: Sorry, this file type is not permitted for security reasons.
280
- [05-08-2014 21:43:09] WPRSS > wprss_ftp_media_sideload_image:
281
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSD3uNnu6hgx732lS8FZbYkRUPsVNAMmix1BnWOtMKvTkNP8aNUnuVGzTmLJv6ky7r_FV0sQ4Q0" for post #2971: Sorry, this file type is not permitted for security reasons.
282
- [05-08-2014 21:43:10] WPRSS > wprss_ftp_media_sideload_image:
283
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTcH22t6akVFeXYcFVu8yh9Su2TR6wWcxKOgp-8APiaBdCsFts0NDCVJzDc80L40CyBJ1HgN4Y" for post #2974: Sorry, this file type is not permitted for security reasons.
284
- [05-08-2014 21:43:10] WPRSS > wprss_ftp_media_sideload_image:
285
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTcH22t6akVFeXYcFVu8yh9Su2TR6wWcxKOgp-8APiaBdCsFts0NDCVJzDc80L40CyBJ1HgN4Y" for post #2974: Sorry, this file type is not permitted for security reasons.
286
- [05-08-2014 21:43:11] WPRSS > wprss_ftp_media_sideload_image:
287
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcR5ura2eenBxvijGpDzmXIts01K_twkovV3JaSF0R7IuzoxTa8FYpGRILMUhaITGAe8IE0N3yo" for post #2977: Sorry, this file type is not permitted for security reasons.
288
- [05-08-2014 21:43:12] WPRSS > wprss_ftp_media_sideload_image:
289
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcR5ura2eenBxvijGpDzmXIts01K_twkovV3JaSF0R7IuzoxTa8FYpGRILMUhaITGAe8IE0N3yo" for post #2977: Sorry, this file type is not permitted for security reasons.
290
- [05-08-2014 21:43:12] WPRSS > wprss_ftp_media_sideload_image:
291
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcTu8vX9ZyhDVO0AF7_aaDNvT_vBTyi_bATw1EvEuYrOxVEAsZF3AcFl4WxbdLoFK0SwtX4tB2LZ" for post #2980: Sorry, this file type is not permitted for security reasons.
292
- [05-08-2014 21:43:13] WPRSS > wprss_ftp_media_sideload_image:
293
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcTu8vX9ZyhDVO0AF7_aaDNvT_vBTyi_bATw1EvEuYrOxVEAsZF3AcFl4WxbdLoFK0SwtX4tB2LZ" for post #2980: Sorry, this file type is not permitted for security reasons.
294
- [05-08-2014 21:43:13] WPRSS > wprss_ftp_media_sideload_image:
295
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSxz38xIdolSruOFaphSWZJjcgFvwSwmqsFEgKd1pUoHAGccsFVN5Hfg6ucSkzFAHpAfGqeOkk" for post #2983: Sorry, this file type is not permitted for security reasons.
296
- [05-08-2014 21:43:14] WPRSS > wprss_ftp_media_sideload_image:
297
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSxz38xIdolSruOFaphSWZJjcgFvwSwmqsFEgKd1pUoHAGccsFVN5Hfg6ucSkzFAHpAfGqeOkk" for post #2983: Sorry, this file type is not permitted for security reasons.
298
- [05-08-2014 21:43:14] WPRSS > wprss_ftp_media_sideload_image:
299
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcRD5lSdioWmXnAjRhv4TFdqx1e8LI8vlFhyeWXac6o6rTNBF77hBEr1kEEDqPzOXkFU6G7fWVnY" for post #2986: Sorry, this file type is not permitted for security reasons.
300
- [05-08-2014 21:43:15] WPRSS > wprss_ftp_media_sideload_image:
301
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcRD5lSdioWmXnAjRhv4TFdqx1e8LI8vlFhyeWXac6o6rTNBF77hBEr1kEEDqPzOXkFU6G7fWVnY" for post #2986: Sorry, this file type is not permitted for security reasons.
302
-
303
- [05-08-2014 21:50:19] WPRSS > wprss_ftp_media_sideload_image:
304
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTTzH7UD3tlk-r9maYzmCq-DsxKOl2Grn1CEp2_C2eCsQS_-wNUmZoDrvU1cR2Lsbx-aZRt6rQi" for post #2989: Sorry, this file type is not permitted for security reasons.
305
- [05-08-2014 21:50:20] WPRSS > wprss_ftp_media_sideload_image:
306
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTTzH7UD3tlk-r9maYzmCq-DsxKOl2Grn1CEp2_C2eCsQS_-wNUmZoDrvU1cR2Lsbx-aZRt6rQi" for post #2989: Sorry, this file type is not permitted for security reasons.
307
-
308
- [05-08-2014 22:53:46] WPRSS > wprss_ftp_media_sideload_image:
309
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcScYCppbiCgr3gBqm1amCu0YZLbEq8AzeARDhqVDbVfYaFvhHq1b6qN0o5bYaH-UvsUV9SX_WxV" for post #3020: Sorry, this file type is not permitted for security reasons.
310
- [05-08-2014 22:53:47] WPRSS > wprss_ftp_media_sideload_image:
311
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcScYCppbiCgr3gBqm1amCu0YZLbEq8AzeARDhqVDbVfYaFvhHq1b6qN0o5bYaH-UvsUV9SX_WxV" for post #3020: Sorry, this file type is not permitted for security reasons.
312
- [05-08-2014 22:53:47] WPRSS > wprss_ftp_media_sideload_image:
313
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcTZcTDPjF3MlNHkmmXnRXtXocPPOBhH7T9GquruOUL7rNoQr-P1v-Of6ALG4RIl7MNT5Me-_qY" for post #3023: Sorry, this file type is not permitted for security reasons.
314
- [05-08-2014 22:53:47] WPRSS > wprss_ftp_media_sideload_image:
315
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcTZcTDPjF3MlNHkmmXnRXtXocPPOBhH7T9GquruOUL7rNoQr-P1v-Of6ALG4RIl7MNT5Me-_qY" for post #3023: Sorry, this file type is not permitted for security reasons.
316
- [05-08-2014 22:53:48] WPRSS > wprss_ftp_media_sideload_image:
317
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcQh_LbYSAXKmI1J0iyNzjJE1Lk3ECCTywjEoNpAFVJx1MtKHo4kyk6vc4CAiuHjHFjKuH_maPk" for post #3026: Sorry, this file type is not permitted for security reasons.
318
- [05-08-2014 22:53:49] WPRSS > wprss_ftp_media_sideload_image:
319
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcQh_LbYSAXKmI1J0iyNzjJE1Lk3ECCTywjEoNpAFVJx1MtKHo4kyk6vc4CAiuHjHFjKuH_maPk" for post #3026: Sorry, this file type is not permitted for security reasons.
320
- [05-08-2014 22:53:49] WPRSS > wprss_ftp_media_sideload_image:
321
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcReM1d5kDZxngJNhlqbTKokWuIRmYPlOEV8AqNo4reuVet7z_EqYS24YuNY5kI2PEBLMV26FAVy" for post #3029: Sorry, this file type is not permitted for security reasons.
322
- [05-08-2014 22:53:50] WPRSS > wprss_ftp_media_sideload_image:
323
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcReM1d5kDZxngJNhlqbTKokWuIRmYPlOEV8AqNo4reuVet7z_EqYS24YuNY5kI2PEBLMV26FAVy" for post #3029: Sorry, this file type is not permitted for security reasons.
324
- [05-08-2014 22:53:51] WPRSS > wprss_ftp_media_sideload_image:
325
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcTFjV1ZiayUMaeZm_imqj8ItO9Wn-xsUy34yxBo7f_M45hg-7tQb1cdL3gib4fmjZQWy1AJJGs" for post #3032: Sorry, this file type is not permitted for security reasons.
326
- [05-08-2014 22:53:51] WPRSS > wprss_ftp_media_sideload_image:
327
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcTFjV1ZiayUMaeZm_imqj8ItO9Wn-xsUy34yxBo7f_M45hg-7tQb1cdL3gib4fmjZQWy1AJJGs" for post #3032: Sorry, this file type is not permitted for security reasons.
328
-
329
- [06-08-2014 09:25:27] WPRSS > wprss_ftp_media_sideload_image:
330
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTTzH7UD3tlk-r9maYzmCq-DsxKOl2Grn1CEp2_C2eCsQS_-wNUmZoDrvU1cR2Lsbx-aZRt6rQi" for post #3035: Sorry, this file type is not permitted for security reasons.
331
- [06-08-2014 09:25:28] WPRSS > wprss_ftp_media_sideload_image:
332
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTTzH7UD3tlk-r9maYzmCq-DsxKOl2Grn1CEp2_C2eCsQS_-wNUmZoDrvU1cR2Lsbx-aZRt6rQi" for post #3035: Sorry, this file type is not permitted for security reasons.
333
- [06-08-2014 09:25:29] WPRSS > wprss_ftp_media_sideload_image:
334
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcSil1_PXK23gbeaqnhItNILeCSq4R_zw_2Mch-tE7QkwJu_JOxikYMk8T2kd3neWHXxGlWZxHpT" for post #3038: Sorry, this file type is not permitted for security reasons.
335
- [06-08-2014 09:25:29] WPRSS > wprss_ftp_media_sideload_image:
336
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcSil1_PXK23gbeaqnhItNILeCSq4R_zw_2Mch-tE7QkwJu_JOxikYMk8T2kd3neWHXxGlWZxHpT" for post #3038: Sorry, this file type is not permitted for security reasons.
337
- [06-08-2014 09:25:30] WPRSS > wprss_ftp_media_sideload_image:
338
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcQdw7EgWrz1-k1MrCaic5X1-ccfhMIfS-gNocpXAHauYe37JR3WpuDzXIooyIp3HBA2jOQlvLL0" for post #3041: Sorry, this file type is not permitted for security reasons.
339
- [06-08-2014 09:25:30] WPRSS > wprss_ftp_media_sideload_image:
340
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcQdw7EgWrz1-k1MrCaic5X1-ccfhMIfS-gNocpXAHauYe37JR3WpuDzXIooyIp3HBA2jOQlvLL0" for post #3041: Sorry, this file type is not permitted for security reasons.
341
- [06-08-2014 09:25:31] WPRSS > wprss_ftp_media_sideload_image:
342
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcQ97YxGPmF640MU9m051V7FQXwVdph9rFIK4HbM_ddgnieZdc5IzQFVA7Tr9EBHfk_SvVnuSTw" for post #3044: Sorry, this file type is not permitted for security reasons.
343
- [06-08-2014 09:25:31] WPRSS > wprss_ftp_media_sideload_image:
344
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcQ97YxGPmF640MU9m051V7FQXwVdph9rFIK4HbM_ddgnieZdc5IzQFVA7Tr9EBHfk_SvVnuSTw" for post #3044: Sorry, this file type is not permitted for security reasons.
345
- [06-08-2014 09:25:32] WPRSS > wprss_ftp_media_sideload_image:
346
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcS1OrS1KO5sRrJd287ZnkUUHWCqfDVw4ogj3GMLvAwLGR8JUBcHXVaSdyVsJZftr5cXpYcN50Zj" for post #3047: Sorry, this file type is not permitted for security reasons.
347
- [06-08-2014 09:25:32] WPRSS > wprss_ftp_media_sideload_image:
348
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcS1OrS1KO5sRrJd287ZnkUUHWCqfDVw4ogj3GMLvAwLGR8JUBcHXVaSdyVsJZftr5cXpYcN50Zj" for post #3047: Sorry, this file type is not permitted for security reasons.
349
- [06-08-2014 09:25:32] WPRSS > wprss_ftp_media_sideload_image:
350
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcTUvNB-MmZjBiYfJ8H7n7XDn5Y76Btm14ZVxlk1JHag0PNHBUXZMfEfVfw_rJnwDIe2IsSmCW6w" for post #3050: Sorry, this file type is not permitted for security reasons.
351
- [06-08-2014 09:25:33] WPRSS > wprss_ftp_media_sideload_image:
352
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcTUvNB-MmZjBiYfJ8H7n7XDn5Y76Btm14ZVxlk1JHag0PNHBUXZMfEfVfw_rJnwDIe2IsSmCW6w" for post #3050: Sorry, this file type is not permitted for security reasons.
353
- [06-08-2014 09:25:33] WPRSS > wprss_ftp_media_sideload_image:
354
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSleYXItGaz480G1qS6Fcfc_4Iwt9ep5ceOjpokx930sZ8znJlIdKLU9u2wYzrm8K11RDfdQi_g" for post #3053: Sorry, this file type is not permitted for security reasons.
355
- [06-08-2014 09:25:34] WPRSS > wprss_ftp_media_sideload_image:
356
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSleYXItGaz480G1qS6Fcfc_4Iwt9ep5ceOjpokx930sZ8znJlIdKLU9u2wYzrm8K11RDfdQi_g" for post #3053: Sorry, this file type is not permitted for security reasons.
357
- [06-08-2014 09:25:34] WPRSS > wprss_ftp_media_sideload_image:
358
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcQz3dUAe6mN5NF35T4Ku0-opVEoOq7r4wms-JVDauf9NECfjXOFPwcP8pjfcjpMtCcX8pI62O5J" for post #3056: Sorry, this file type is not permitted for security reasons.
359
- [06-08-2014 09:25:34] WPRSS > wprss_ftp_media_sideload_image:
360
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcQz3dUAe6mN5NF35T4Ku0-opVEoOq7r4wms-JVDauf9NECfjXOFPwcP8pjfcjpMtCcX8pI62O5J" for post #3056: Sorry, this file type is not permitted for security reasons.
361
-
362
- [06-08-2014 09:53:29] WPRSS > wprss_ftp_media_sideload_image:
363
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcSil1_PXK23gbeaqnhItNILeCSq4R_zw_2Mch-tE7QkwJu_JOxikYMk8T2kd3neWHXxGlWZxHpT" for post #3059: Sorry, this file type is not permitted for security reasons.
364
- [06-08-2014 09:53:29] WPRSS > wprss_ftp_media_sideload_image:
365
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcSil1_PXK23gbeaqnhItNILeCSq4R_zw_2Mch-tE7QkwJu_JOxikYMk8T2kd3neWHXxGlWZxHpT" for post #3059: Sorry, this file type is not permitted for security reasons.
366
- [06-08-2014 09:53:30] WPRSS > wprss_ftp_media_sideload_image:
367
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcQYMGBmWItwX0l6qINpufZOMDBCFyTAt3BHHaxTHh4uH8FBJxFGSAkm-kfF7a5OQqu4e1wC_Ss" for post #3062: Sorry, this file type is not permitted for security reasons.
368
- [06-08-2014 09:53:31] WPRSS > wprss_ftp_media_sideload_image:
369
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcQYMGBmWItwX0l6qINpufZOMDBCFyTAt3BHHaxTHh4uH8FBJxFGSAkm-kfF7a5OQqu4e1wC_Ss" for post #3062: Sorry, this file type is not permitted for security reasons.
370
- [06-08-2014 09:53:32] WPRSS > wprss_ftp_media_sideload_image:
371
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTM-2izIrJ8yHBNRWdQxCXS7nFFMgwDas2TJ9i6KY7r3BUNKzUdoTL_S9Vhf5fBa8Dm-sz8VtqB" for post #3068: Sorry, this file type is not permitted for security reasons.
372
- [06-08-2014 09:53:33] WPRSS > wprss_ftp_media_sideload_image:
373
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTM-2izIrJ8yHBNRWdQxCXS7nFFMgwDas2TJ9i6KY7r3BUNKzUdoTL_S9Vhf5fBa8Dm-sz8VtqB" for post #3068: Sorry, this file type is not permitted for security reasons.
374
-
375
- [06-08-2014 10:53:05] WPRSS > wprss_ftp_media_sideload_image:
376
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcS6eTW2SKwYHOEySVysobJhFFVL2rPMR5hkTsnaC7yl8zgvATYwkb3s0QoK0l2SzEgCZ0X173M" for post #3071: Sorry, this file type is not permitted for security reasons.
377
- [06-08-2014 10:53:05] WPRSS > wprss_ftp_media_sideload_image:
378
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcS6eTW2SKwYHOEySVysobJhFFVL2rPMR5hkTsnaC7yl8zgvATYwkb3s0QoK0l2SzEgCZ0X173M" for post #3071: Sorry, this file type is not permitted for security reasons.
379
- [06-08-2014 10:53:07] WPRSS > wprss_ftp_media_sideload_image:
380
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcRn1WEIEWFlHsAav0ZQKlX9vx4Kui0Mej87BJSjL-6LADtNqHlhOrK0sLhMdo_MNqJoB-Xx-Wv-" for post #3074: Sorry, this file type is not permitted for security reasons.
381
- [06-08-2014 10:53:07] WPRSS > wprss_ftp_media_sideload_image:
382
- Error downloading image "http://t3.gstatic.com/images?q=tbn:ANd9GcRn1WEIEWFlHsAav0ZQKlX9vx4Kui0Mej87BJSjL-6LADtNqHlhOrK0sLhMdo_MNqJoB-Xx-Wv-" for post #3074: Sorry, this file type is not permitted for security reasons.
383
- [06-08-2014 10:53:08] WPRSS > wprss_ftp_media_sideload_image:
384
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcS8j8yHAbh9d9pe9tGouTejFqkM7a470Xq84rLVQIQC7dNSMZLF8SsT2P1NSNxjX0vc92lGrOxK" for post #3077: Sorry, this file type is not permitted for security reasons.
385
- [06-08-2014 10:53:09] WPRSS > wprss_ftp_media_sideload_image:
386
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcS8j8yHAbh9d9pe9tGouTejFqkM7a470Xq84rLVQIQC7dNSMZLF8SsT2P1NSNxjX0vc92lGrOxK" for post #3077: Sorry, this file type is not permitted for security reasons.
387
- [06-08-2014 10:53:10] WPRSS > wprss_ftp_media_sideload_image:
388
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcTu8vX9ZyhDVO0AF7_aaDNvT_vBTyi_bATw1EvEuYrOxVEAsZF3AcFl4WxbdLoFK0SwtX4tB2LZ" for post #3080: Sorry, this file type is not permitted for security reasons.
389
- [06-08-2014 10:53:11] WPRSS > wprss_ftp_media_sideload_image:
390
- Error downloading image "http://t1.gstatic.com/images?q=tbn:ANd9GcTu8vX9ZyhDVO0AF7_aaDNvT_vBTyi_bATw1EvEuYrOxVEAsZF3AcFl4WxbdLoFK0SwtX4tB2LZ" for post #3080: Sorry, this file type is not permitted for security reasons.
391
-
392
- [06-08-2014 11:51:18] WPRSS > wprss_ftp_media_sideload_image:
393
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTUUl22oIrVOLi5x71lHblovCmePnBYEhXc2YZfL1y7GSy6G6Sb0rD-gN0ebuJySMsVmWwUjP2v" for post #3107: Sorry, this file type is not permitted for security reasons.
394
- [06-08-2014 11:51:19] WPRSS > wprss_ftp_media_sideload_image:
395
- Error downloading image "http://t0.gstatic.com/images?q=tbn:ANd9GcTUUl22oIrVOLi5x71lHblovCmePnBYEhXc2YZfL1y7GSy6G6Sb0rD-gN0ebuJySMsVmWwUjP2v" for post #3107: Sorry, this file type is not permitted for security reasons.
396
- [06-08-2014 11:51:19] WPRSS > wprss_ftp_media_sideload_image:
397
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSD3uNnu6hgx732lS8FZbYkRUPsVNAMmix1BnWOtMKvTkNP8aNUnuVGzTmLJv6ky7r_FV0sQ4Q0" for post #3110: Sorry, this file type is not permitted for security reasons.
398
- [06-08-2014 11:51:20] WPRSS > wprss_ftp_media_sideload_image:
399
- Error downloading image "http://t2.gstatic.com/images?q=tbn:ANd9GcSD3uNnu6hgx732lS8FZbYkRUPsVNAMmix1BnWOtMKvTkNP8aNUnuVGzTmLJv6ky7r_FV0sQ4Q0" for post #3110: Sorry, this file type is not permitted for security reasons.
400
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
readme.txt CHANGED
@@ -5,7 +5,7 @@ Plugin URI: http://www.wprssaggregator.com
5
  Tags: rss, feeds, aggregation, rss to post, autoblog aggregator, rss import, feed aggregator, rss aggregator, multiple rss feeds, multi rss feeds, rss multi importer, feed import, feed import, multiple feed import, feed aggregation, rss feader, feed reader, feed to post, multiple feeds, multi feed importer, multi feed import, multi import, autoblogging, autoblogger
6
  Requires at least: 3.3
7
  Tested up to: 3.9.1
8
- Stable tag: 4.3.1
9
  License: GPLv2 or later
10
  Imports and aggregates multiple RSS Feeds using SimplePie. Outputs feeds sorted by date (latest first).
11
 
@@ -162,6 +162,11 @@ The full documentation section can be found on the [WP RSS Aggregator website](w
162
 
163
  == Changelog ==
164
 
 
 
 
 
 
165
  = 4.3.1 (2014-08-08) =
166
  * Enhanced: Better wording on settings page.
167
  * Fixed bug: The Links Behaviour option in the settings was not working.
5
  Tags: rss, feeds, aggregation, rss to post, autoblog aggregator, rss import, feed aggregator, rss aggregator, multiple rss feeds, multi rss feeds, rss multi importer, feed import, feed import, multiple feed import, feed aggregation, rss feader, feed reader, feed to post, multiple feeds, multi feed importer, multi feed import, multi import, autoblogging, autoblogger
6
  Requires at least: 3.3
7
  Tested up to: 3.9.1
8
+ Stable tag: 4.4
9
  License: GPLv2 or later
10
  Imports and aggregates multiple RSS Feeds using SimplePie. Outputs feeds sorted by date (latest first).
11
 
162
 
163
  == Changelog ==
164
 
165
+ = 4.4 (2014-08-11) =
166
+ * New Feature: Blacklist - delete items and blacklist them to never import them again.
167
+ * Enhanced: Added a button in the Debugging page to reset the plugin settings to default.
168
+ * Enhanced: WordPress Yoast SEO metaboxes and custom columns will no longer appear.
169
+
170
  = 4.3.1 (2014-08-08) =
171
  * Enhanced: Better wording on settings page.
172
  * Fixed bug: The Links Behaviour option in the settings was not working.
wp-rss-aggregator.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: WP RSS Aggregator
4
  Plugin URI: http://www.wprssaggregator.com
5
  Description: Imports and aggregates multiple RSS Feeds using SimplePie
6
- Version: 4.3.1
7
  Author: Jean Galea
8
  Author URI: http://www.wprssaggregator.com
9
  License: GPLv2
@@ -29,7 +29,7 @@
29
 
30
  /**
31
  * @package WPRSSAggregator
32
- * @version 4.3.1
33
  * @since 1.0
34
  * @author Jean Galea <info@jeangalea.com>
35
  * @copyright Copyright (c) 2012-2014, Jean Galea
@@ -43,7 +43,7 @@
43
 
44
  // Set the version number of the plugin.
45
  if( !defined( 'WPRSS_VERSION' ) )
46
- define( 'WPRSS_VERSION', '4.3.1', true );
47
 
48
  // Set the database version number of the plugin.
49
  if( !defined( 'WPRSS_DB_VERSION' ) )
@@ -109,6 +109,9 @@
109
 
110
  /* Load the feed processing functions file */
111
  require_once ( WPRSS_INC . 'feed-processing.php' );
 
 
 
112
 
113
  /* Load the feed importing functions file */
114
  require_once ( WPRSS_INC . 'feed-importing.php' );
@@ -375,6 +378,17 @@
375
  // Sets a transient to trigger a redirect upon completion of activation procedure
376
  set_transient( '_wprss_activation_redirect', true, 30 );
377
  }
 
 
 
 
 
 
 
 
 
 
 
378
  }
379
 
380
 
3
  Plugin Name: WP RSS Aggregator
4
  Plugin URI: http://www.wprssaggregator.com
5
  Description: Imports and aggregates multiple RSS Feeds using SimplePie
6
+ Version: 4.4
7
  Author: Jean Galea
8
  Author URI: http://www.wprssaggregator.com
9
  License: GPLv2
29
 
30
  /**
31
  * @package WPRSSAggregator
32
+ * @version 4.4
33
  * @since 1.0
34
  * @author Jean Galea <info@jeangalea.com>
35
  * @copyright Copyright (c) 2012-2014, Jean Galea
43
 
44
  // Set the version number of the plugin.
45
  if( !defined( 'WPRSS_VERSION' ) )
46
+ define( 'WPRSS_VERSION', '4.4', true );
47
 
48
  // Set the database version number of the plugin.
49
  if( !defined( 'WPRSS_DB_VERSION' ) )
109
 
110
  /* Load the feed processing functions file */
111
  require_once ( WPRSS_INC . 'feed-processing.php' );
112
+
113
+ /* Load the blacklist functions file */
114
+ require_once ( WPRSS_INC . 'feed-blacklist.php' );
115
 
116
  /* Load the feed importing functions file */
117
  require_once ( WPRSS_INC . 'feed-importing.php' );
378
  // Sets a transient to trigger a redirect upon completion of activation procedure
379
  set_transient( '_wprss_activation_redirect', true, 30 );
380
  }
381
+
382
+ include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
383
+ // check for plugin using plugin name
384
+ if ( is_plugin_active( 'wordpress-seo/wp-seo.php' ) ) {
385
+ $wpseo_titles = get_option('wpseo_titles', array());
386
+ if ( isset( $wpseo_titles['hideeditbox-wprss_feed'] ) ) {
387
+ $wpseo_titles['hideeditbox-wprss_feed'] = TRUE;
388
+ $wpseo_titles['hideeditbox-wprss_feed_item'] = TRUE;
389
+ }
390
+ update_option( 'wpseo_titles', $wpseo_titles );
391
+ }
392
  }
393
 
394