/[drupal]/contributions/modules/admintools/cron.module
ViewVC logotype

Diff of /contributions/modules/admintools/cron.module

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.8, Mon Jun 15 11:18:03 2009 UTC revision 1.9, Mon Jun 15 13:54:23 2009 UTC
# Line 1  Line 1 
1  <?php  <?php
2  // $Id: cron.module,v 1.7 2009/06/15 10:43:17 denraf Exp $  // $Id: cron.module,v 1.8 2009/06/15 11:18:03 denraf Exp $
3    
4  /**  /**
5   * @file   * @file
# Line 199  function cron_add_form_validate($form, & Line 199  function cron_add_form_validate($form, &
199  }  }
200    
201  function cron_add_form_submit($form, $form_state) {  function cron_add_form_submit($form, $form_state) {
202    db_query("INSERT INTO {cron} (url, cron_key, description, checks, last_check, interval, count) VALUES ('%s', '%s', '%s', 1, '%d', '%d', '%d')", $form_state['values']['url'], $form_state['values']['cron_key'], $form_state['values']['description'], time(), $form_state['values']['interval'], $form_state['values']['interval']);    db_query("INSERT INTO {cron} (url, cron_key, description, checks, last_check, intervals, count) VALUES ('%s', '%s', '%s', 1, '%d', '%d', '%d')", $form_state['values']['url'], $form_state['values']['cron_key'], $form_state['values']['description'], time(), $form_state['values']['interval'], $form_state['values']['interval']);
203    drupal_goto('admin/settings/tools/cron');    drupal_goto('admin/settings/tools/cron');
204  }  }
205    
206  function cron_edit_form($form_state, $sid = 0) {  function cron_edit_form($form_state, $sid = 0) {
207    $sql = db_query("SELECT url, cron_key, description, checks, errors, interval FROM {cron} WHERE sid = '%d'", $sid);    $sql = db_query("SELECT url, cron_key, description, checks, errors, intervals FROM {cron} WHERE sid = '%d'", $sid);
208    $row = db_fetch_object($sql);    $row = db_fetch_object($sql);
209    $form['sid'] = array(    $form['sid'] = array(
210      '#type' => 'hidden',      '#type' => 'hidden',
# Line 232  function cron_edit_form($form_state, $si Line 232  function cron_edit_form($form_state, $si
232    $form['interval'] =  array(    $form['interval'] =  array(
233      '#type' => 'textfield',      '#type' => 'textfield',
234      '#size' => 3,      '#size' => 3,
235      '#default_value' => $row->interval,      '#default_value' => $row->intervals,
236    );    );
237    $form['operations']['save'] = array(    $form['operations']['save'] = array(
238      '#type' => 'submit',      '#type' => 'submit',
# Line 293  function cron_edit_form_validate($form, Line 293  function cron_edit_form_validate($form,
293  }  }
294    
295  function cron_edit_form_submit($form, $form_state) {  function cron_edit_form_submit($form, $form_state) {
296    db_query("UPDATE {cron} SET url = '%s', cron_key = '%s', description = '%s', checks = '%d', last_check = '%d', disabled = 'FALSE', interval = '%d', count = '%d' WHERE sid = '%d'", $form_state['values']['url'], $form_state['values']['cron_key'], $form_state['values']['description'], $form_state['values']['checks'] + 1, time(), $form_state['values']['sid'], $form_state['values']['interval'], $form_state['values']['interval']);    db_query("UPDATE {cron} SET url = '%s', cron_key = '%s', description = '%s', checks = '%d', last_check = '%d', disabled = 'FALSE', intervals = '%d', count = '%d' WHERE sid = '%d'", $form_state['values']['url'], $form_state['values']['cron_key'], $form_state['values']['description'], $form_state['values']['checks'] + 1, time(), $form_state['values']['sid'], $form_state['values']['interval'], $form_state['values']['interval']);
297    drupal_goto('admin/settings/tools/cron');    drupal_goto('admin/settings/tools/cron');
298  }  }
299    
# Line 302  function cron_delete($sid = 0) { Line 302  function cron_delete($sid = 0) {
302    drupal_goto('admin/settings/tools/cron');    drupal_goto('admin/settings/tools/cron');
303  }  }
304    
305  function cron_settings_form($form, $form_state) {  function cron_settings_form() {
306    
307    $form['reset'] = array(    $form['reset'] = array(
308      '#type' => 'fieldset',      '#type' => 'fieldset',
# Line 317  function cron_settings_form($form, $form Line 317  function cron_settings_form($form, $form
317      '#value' => t('Reset'),      '#value' => t('Reset'),
318      '#submit' => 'cron_interval_reset'      '#submit' => 'cron_interval_reset'
319    );    );
   
320    $form['fault_level'] = array(    $form['fault_level'] = array(
321      '#type' => 'textfield',      '#type' => 'textfield',
322      '#size' => 3,      '#size' => 3,
323        '#title' => t('Fault level'),
324        '#description' => t('Configure the fault level on which a site has to be disabled'),
325      '#default_value' => variable_get('fault_level', 0)      '#default_value' => variable_get('fault_level', 0)
326    )    );
327    
328      $form['#validate'] = array('cron_interval_validate');
329    return system_settings_form($form);    return system_settings_form($form);
330  }  }
331    
332  function cron_interval_reset($form, $form_state) {  /**
333    variable_set('cron_interval_start', 0);   * Validate callback.
334    variable_set('cron_interval_end', 0);   */
335    function cron_interval_validate($form, &$form_state) {
336      if ($form_state['values']['op'] == t('Reset')) {
337        variable_set('cron_interval_start', 0);
338        variable_set('cron_interval_end', 0);
339        drupal_goto('admin/settings/tools/cron/settings');
340      }
341  }  }
342    
343  /**  /**
# Line 409  function theme_cron_add_form($form) { Line 417  function theme_cron_add_form($form) {
417      t('Site'),      t('Site'),
418      t('Cron key (Drupal 7)'),      t('Cron key (Drupal 7)'),
419      t('Description'),      t('Description'),
420        t('Interval'),
421      t('Operations')      t('Operations')
422    );    );
423    
# Line 417  function theme_cron_add_form($form) { Line 426  function theme_cron_add_form($form) {
426        drupal_render($form['url']),        drupal_render($form['url']),
427        drupal_render($form['cron_key']),        drupal_render($form['cron_key']),
428        drupal_render($form['description']),        drupal_render($form['description']),
429          drupal_render($form['interval']),
430        drupal_render($form['operations']),        drupal_render($form['operations']),
431      );      );
432    }    }
# Line 475  function cron_cron() { Line 485  function cron_cron() {
485      }      }
486    }    }
487    
488    $sql = db_query("SELECT sid, url, cron_key, checks, errors, last_check, last_error, interval, count FROM {cron} WHERE disabled = '%d'", FALSE);    $sql = db_query("SELECT sid, url, cron_key, checks, errors, last_check, last_error, intervals, count FROM {cron} WHERE disabled = '%d'", FALSE);
489    while ($row = db_fetch_object($sql)) {    while ($row = db_fetch_object($sql)) {
490      if ($row->count == 0) {      if ($row->count == 0) {
491        $checks = $row->checks + 1;        $checks = $row->checks + 1;
# Line 555  function cron_cron() { Line 565  function cron_cron() {
565          // when 2 last checks failed and 90% of all checks failed, disable this site          // when 2 last checks failed and 90% of all checks failed, disable this site
566          $disable = TRUE;          $disable = TRUE;
567        }        }
568        db_query("UPDATE {cron} SET checks = '%d', last_check = '%d', errors = '%d', last_error = '%d', disabled = '%d', interval = '%d', count = '%d' WHERE sid = '%d'", $checks, time(), $errors, $last_error, $disable, $row->interval, $row->interval, $row->sid);        db_query("UPDATE {cron} SET checks = '%d', last_check = '%d', errors = '%d', last_error = '%d', disabled = '%d', count = '%d' WHERE sid = '%d'", $checks, time(), $errors, $last_error, $disable, $row->intervals, $row->sid);
569      }      }
570      else {      else {
571        $row->count--;        $row->count--;

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.2