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;
+}
