function job_scheduler_trigger_edit_form in Job Scheduler 7.2
Edit form for a trigger.
1 string reference to 'job_scheduler_trigger_edit_form'
- job_scheduler_trigger_menu in modules/
job_scheduler_trigger/ job_scheduler_trigger.module - Implements hook_menu().
File
- modules/
job_scheduler_trigger/ job_scheduler_trigger.admin.inc, line 62 - Job Scheduler Trigger admin pages.
Code
function job_scheduler_trigger_edit_form($form, &$form_state, $trigger) {
if (!$trigger) {
$trigger = (object) array(
'trid' => NULL,
'title' => t('New trigger'),
'crontab' => '* * * * *',
'status' => 0,
'last' => 0,
);
}
$form['trigger'] = array(
'#tree' => TRUE,
);
$form['trigger']['trid'] = array(
'#type' => 'value',
'#value' => $trigger->trid,
);
$form['trigger']['title'] = array(
'#title' => t('Title'),
'#type' => 'textfield',
'#default_value' => $trigger->title,
'#required' => TRUE,
'#description' => t('This is the name of the trigger that will be created when enabled.'),
);
$form['trigger']['crontab'] = array(
'#type' => 'textfield',
'#title' => t('Cron tab'),
'#default_value' => $trigger->crontab,
'#required' => TRUE,
'#description' => t('Unix-style crontab line with: <i>minutes</i> <i>hours</i> <i>day-of-month</i> <i>month</i> <i>day-of-week</i>. Read <a href=@man-crontab>more about crontab</a>.', array(
'@man-crontab' => url('http://linux.die.net/man/5/crontab'),
)),
);
$form['trigger']['status'] = array(
'#title' => t('Status'),
'#type' => 'radios',
'#options' => array(
t('disabled'),
t('enabled'),
),
'#default_value' => $trigger->status,
'#description' => t('When enabled, a trigger will be created with this crontab and jobs will be scheduled for it. Check everything is OK before enabling the trigger.'),
);
$form['trigger']['last'] = array(
'#type' => 'item',
'#title' => t('Last triggered'),
'#markup' => format_date($trigger->last),
);
if ($trigger->trid && $trigger->crontab) {
$next = job_scheduler_trigger_next_time($trigger->crontab);
$form['trigger']['next'] = array(
'#type' => 'item',
'#title' => t('Next trigger'),
'#markup' => $next ? format_date($next) : t('Never in the next year.'),
);
}
$form['buttons']['update'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
if ($trigger->trid) {
$form['buttons']['delete'] = array(
'#type' => 'submit',
'#value' => t('Delete'),
);
}
return $form;
}