Доки по CRON

 
Посетитель
small user social cms
Кубок зрительских симпатийМедаль
Сообщений: 100
Ткните в документацию по CRON если не сложно...что то не могу найти...
Посетитель
small user social cms
Медаль
Сообщений: 380
Вот и Вот
Я меняю валюту на сайте obmenka. Рекомендую! Возможен вывод в наличные деньги.
Реклама
cms
Посетитель
small user social cms
Кубок зрительских симпатийМедаль
Сообщений: 100
st.Puh:
Вот и Вот
Умничка, а теперь по крону ICMS !?
Посетитель
small user social cms
Медаль
Сообщений: 150
а что конкретно по CRON'у ICMS интересует?
Посетитель
small user social cms
Кубок зрительских симпатийМедаль
Сообщений: 100
Ну я в компонент календарь хочу добавить уведомления. Мне нужен крон чтобы он проверял - подошло ли время уведомлять или нет - а если да посылать ЛС
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4577
За работу с cron отвечает класс cmsCron.

Обычно в инсталлере компонента регистрируют задачу, например так:

Код PHP:
  1. cmsCron::registerJob('moveArticlesToArchive', array(
  2. 'interval' => 24,
  3. 'component' => 'content',
  4. 'model_method' => 'moveArticlesToArchive',
  5. 'comment' => 'Переносит просроченные статьи в архив',
  6. 'custom_file' => '',
  7. 'enabled' => 1,
  8. 'class_name' => '',
  9. 'class_method' => ''
  10. ));
Называния элементов массива вроде бы ясны интуитивно, но на всякий случай расшифрую:
interval - интервал выполнения задания вне зависимости как часто запускается сам файл cron.php который в корне сайта;
component - название компонента если используется для запуска метод модели компонента;
model_method - название метода модели компонента, используется если задано название компонента;
comment - текстовое пояснение задачи;
custom_file - путь до файла, содержимое которого будет выполняться;
enabled - включена или выключена задача;
class_name - файл|класс, пример: actions|cmsActions или класс, пример: cmsDatabase
class_method - статический (public static) метод класса, заданного выше.

В таблице cms_cron есть еще поле is_new - оно отвечает за то, что при добавлении нового задания, как я описал выше, оно выполнится первый раз сразу при ближайшем запуске cron.php в корне сайта. Будем говорить так, что при положительном значении поля, задание выполнится вне зависимости от интервала, однако после первого запуска значение этого поля автоматически станет равным 0.

Небольшой нюанс: если интервал (interval) указать как "0", то задание будет выполняться каждый раз при запуске системного задания, т.е. выполнением файла cron.php в корне сайта.

В данном примере мы создали задачу, которая будет выполняться каждые 24 часа запуская метод модели moveArticlesToArchive компонента content.
Редактировалось: 3 раз (Последний: 17 октября 2012 в 21:26)
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
Медаль
Сообщений: 150
а при установке компонента добавить в задачи крон выполнение функции из модели(можно и из любого файла) , которая будет проверять и кидать сообщение не пробовал?

Код SQL:
  1. INSERT INTO `#__cron_jobs` (`job_name`, `job_interval`, `component`, `model_method`, `custom_file`, `is_enabled`, `is_new`, `comment`, `class_name`, `class_method`) VALUES
  2. ('Заголовок задачи', интервал выполнения, 'компонент(если есть)', 'метод в модели компонента', 'путь к файлу из которого выполнять(если указан компонент оставить пустым)', активирован?, , 'описание задачи', 'указать класс в файле(пустой если из компоненты)', 'указать метод в этом классе(пустой если компонента)');
вообщем для тебя будет что то типо
Код SQL:
  1. INSERT INTO `#__cron_jobs` (`job_name`, `job_interval`, `component`, `model_method`, `custom_file`, `is_enabled`, `is_new`, `comment`, `class_name`, `class_method`) VALUES
  2. ('Проверка события', 0, 'calendar', 'checkTime', '', 1, 1, 'Проверяет подошло ли время события для уведомления о нем пользователя', '', '');
  3.  
Посетитель
small user social cms
Медаль
Сообщений: 150
еще есть поле is_new - только не понятно его функциональное предназначение smile ))
Посетитель
small user social cms
Кубок зрительских симпатийМедаль
Сообщений: 100
Всё тогда :)) Будут скоро уведомления в календаре ! :)))
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: