Отправка формы по крону в Drupal 7

  1. // Функция запуска крона
  2. function my_module_cron() {
  3.   // Запуск один раз в 24 часа. Устанавливаем переменную и проверяем больше прошло времени или нет.
  4.   if (time() >( variable_get('my_module_last_run') + 86400) ) {
  5.     // Подключаем файл с функцией формы
  6.     include_once(drupal_get_path('module', 'my_module') . '/includes/my_module.inc');
  7.  
  8.     // Значения формы для отправки
  9.     $form_state = array();
  10.     $form_state['values']['brands'];
  11.     $form_state['values']['product_type']['all'] = 'all';
  12.     $form_state['values']['settings']['sid_checkbox'] = TRUE;
  13.     $form_state['values']['settings']['product_disable_checkbox'] = FALSE;
  14.     $form_state['values']['settings']['price_checkbox'] = TRUE;
  15.     $form_state['values']['import_file'];
  16.  
  17.     // Отправляем форму. my_module_form - form_id
  18.     drupal_form_submit('my_module_form', $form_state);
  19.  
  20.     // Устанавливаем время последнего запуска 
  21.     variable_set('my_module_last_run', time());
  22.    }
  23. }