Index: feedapi.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/feedapi/feedapi.module,v retrieving revision 1.23.2.124 diff -u -r1.23.2.124 feedapi.module --- feedapi.module 13 Mar 2008 11:40:00 -0000 1.23.2.124 +++ feedapi.module 19 Mar 2008 21:14:57 -0000 @@ -586,6 +586,12 @@ '#description' => t('If checked, existing feed items will be updated when feed is refreshed.'), '#default_value' => 1, ); + $form['skip'] = array( + '#type' => 'checkbox', + '#title' => t('Pause automatic feed update'), + '#description' => t('If checked, feed will not be updated automatically on cron.'), + '#default_value' => 0, + ); $period = drupal_map_assoc(array(3600, 10800, 21600, 32400, 43200, 86400, 172800, 259200, 604800, 1209600, 2419200, 3628800, 4838400, 7257600, 15724800, 31536000), 'format_interval'); $period[FEEDAPI_NEVER_DELETE_OLD] = t('Never'); $form['items_delete'] = array( @@ -619,7 +625,7 @@ // The counter process will be > 0 if we've selected less feeds while (!$process && feedapi_cron_time()) { $process = FEEDAPI_CRON_FEEDS; - $result = db_query_range("SELECT nid FROM {feedapi} WHERE checked <= %d ORDER BY checked", $start, 0, FEEDAPI_CRON_FEEDS); + $result = db_query_range("SELECT nid FROM {feedapi} WHERE checked <= %d AND skip = 0 ORDER BY checked", $start, 0, FEEDAPI_CRON_FEEDS); while (feedapi_cron_time() && $feed = db_fetch_object($result)) { // Call the refresh process for each feed and store counters @@ -1006,7 +1012,7 @@ */ function _feedapi_store_settings($args, $settings) { if ($args['nid']) { - db_query("UPDATE {feedapi} SET settings = '%s' WHERE nid = %d", serialize($settings), $args['nid']); + db_query("UPDATE {feedapi} SET settings = '%s', skip = %d WHERE nid = %d", serialize($settings), $settings['skip'], $args['nid']); module_invoke_all('feedapi_after_settings', $args['nid'], $settings); // This ensures that next time, not the cached, but the updated value will be used. static $node_settings; Index: feedapi.install =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/feedapi/feedapi.install,v retrieving revision 1.5.2.24 diff -u -r1.5.2.24 feedapi.install --- feedapi.install 13 Mar 2008 11:40:00 -0000 1.5.2.24 +++ feedapi.install 19 Mar 2008 21:14:57 -0000 @@ -19,6 +19,7 @@ link varchar(255) NOT NULL default '', settings longtext, half_done tinyint, + skip tinyint(1) NOT NULL default '0', PRIMARY KEY(nid)) "); db_query("CREATE TABLE {feedapi_stat} ( @@ -264,3 +265,10 @@ $ret[] = update_sql("ALTER TABLE {feedapi} DROP COLUMN update_existing"); return $ret; } + +function feedapi_update_9() { + $ret = array(); + $ret[] = update_sql("ALTER TABLE {feedapi} ADD skip TINYINT( 1 ) NOT NULL DEFAULT '0' AFTER half_done"); + $ret[] = update_sql("ALTER TABLE {feedapi} ADD INDEX ( skip ) ;"); + return $ret; +}