| @@ -174,9 +174,10 @@ | ||
| 174 | 174 | <?php |
| 175 | 175 | } /* FeedWordPressFeedsPage::updated_posts_box() */ |
| 176 | 176 | |
| 177 | 177 | /*static*/ function global_feeds_box ($page, $box = NULL) { |
| 178 | - $automatic_updates = get_option('feedwordpress_automatic_updates'); | |
| 178 | + global $feedwordpress; | |
| 179 | + $automatic_updates = $feedwordpress->automatic_update_hook(array('setting only' => true)); | |
| 179 | 180 | $update_time_limit = (int) get_option('feedwordpress_update_time_limit'); |
| 180 | 181 | |
| 181 | 182 | // Hey, ho, let's go... |
| 182 | 183 | ?> |
| @@ -262,8 +263,32 @@ | ||
| 262 | 263 | ); |
| 263 | 264 | ?></td> |
| 264 | 265 | </tr> |
| 265 | 266 | |
| 267 | + <tr> | |
| 268 | + <th scope="row"><?php print __('Minimum Interval:'); ?></th> | |
| 269 | + <td><p style="margin-top:0px">Some feeds include standard elements that | |
| 270 | + request a specific update schedule. If the interval requested by the | |
| 271 | + feed provider is <em>longer</em> than FeedWordPress's normal scheduling, | |
| 272 | + FeedWordPress will always respect their request to slow down. But what | |
| 273 | + should it do if the update interval is <em>shorter</em> than the schedule set above?</p> | |
| 274 | + <?php | |
| 275 | + $this->setting_radio_control( | |
| 276 | + 'update/minimum', 'update_minimum', | |
| 277 | + /*options=*/ array( | |
| 278 | + 'no' => 'Speed up and accept the interval from the feed provider', | |
| 279 | + 'yes' => 'Keep pace and use the longer scheduling from FeedWordPress', | |
| 280 | + ), | |
| 281 | + /*params=*/ array( | |
| 282 | + 'setting-default' => NULL, | |
| 283 | + 'global-setting-default' => 'no', | |
| 284 | + 'default-input-value' => 'default', | |
| 285 | + ) | |
| 286 | + ); | |
| 287 | + ?> | |
| 288 | + </td> | |
| 289 | + </tr> | |
| 290 | + | |
| 266 | 291 | <?php if ($this->for_default_settings()) : ?> |
| 267 | 292 | |
| 268 | 293 | <tr> |
| 269 | 294 | <th scope="row"><?php print __('Time limit on updates'); ?>:</th> |
| @@ -904,9 +929,9 @@ | ||
| 904 | 929 | // Global |
| 905 | 930 | update_option('feedwordpress_cat_id', $post['syndication_category']); |
| 906 | 931 | |
| 907 | 932 | if (!isset($post['automatic_updates']) or !in_array($post['automatic_updates'], array('init', 'shutdown'))) : |
| 908 | - $automatic_updates = false; | |
| 933 | + $automatic_updates = NULL; | |
| 909 | 934 | else : |
| 910 | 935 | $automatic_updates = $post['automatic_updates']; |
| 911 | 936 | endif; |
| 912 | 937 | update_option('feedwordpress_automatic_updates', $automatic_updates); |
| @@ -937,8 +962,12 @@ | ||
| 937 | 962 | if (is_int($timeout)) : |
| 938 | 963 | $timeout = intval($timeout); |
| 939 | 964 | endif; |
| 940 | 965 | $this->update_setting('fetch timeout', $timeout); |
| 966 | + endif; | |
| 967 | + | |
| 968 | + if (isset($post['update_minimum'])) : | |
| 969 | + $this->update_setting('update/minimum', $post['update_minimum']); | |
| 941 | 970 | endif; |
| 942 | 971 | |
| 943 | 972 | $this->updatedPosts->accept_POST($post); |
| 944 | 973 | parent::save_settings($post); |