Перейти к содержимому


Фотография
- - - - -

Бесплатная публикация подачи на несколько дней

объявления платные объявления. jbadvert

В этой теме нет ответов

#1 SmetDenis

SmetDenis

Отправлено 22 June 2015 - 10:23

Представим ситуацию, что мы хотим сделать доску объявлений, где время публикации должно оплачиваться. Тем не менее, сервис предлагает 30 бесплатных дней.
Дальнейшая оплата идет через JBAdvert - http://jbzoo.ru/docs/jbadvert

Для этих целей мы добавим небольшой код в событие сохранения материала после подачи.

Обработчик события находится в функции saved() в файле
media\zoo\applications\jbuniversal\framework\events\jbevent.submission.php

Функция вызывается каждый раз когда материал был создан или отправлен с помощью формы подачи.

Используем следующий простой код
if ($params['new']) { // проверяем, что это новый материал
    $addTime = 30; // кол-во дней
    $item->setState(1, false); // насильно активируем материал
    $item->publish_down = $app->jbdate->toMysql(time() + $addTime * 86400); // устанавливаем дату окончания публикации
    $app->table->item->save($item); // сохраняем изменения
}
Вставляем его соответствующим образом
0vx7_200x0.png


В качестве дополнительной проверки можно посмотреть тип материала, например так
if ($item->type == 'item-type') {

}

  • 3
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.






Темы с аналогичным тегами объявления, платные объявления. jbadvert

Click to return to top of page in style!