protected function executeImpl(ArrayAdapter $params) { $libType = $params->str('fsubtype'); $libManager = Handlers::getInstance()->getLibManager($libType); $models = $params->arr('models'); foreach ($models as $model) { $model['grup'] = $libType; $item = new LibItemDb($model); check_condition($item->getIdent(), 'Не передан идентификатор сущности'); $libManager->saveLibItem($item, AdminLibBean::inst()); } return new AjaxSuccess(); }
/** * Метод конвертирует запись в базе для сущности библиотеки в элемент хронологической шкалы. * Если элемент не должен отображаться на временной шкале * (не задано начало события или метод фильтрации исключил данное событие), вернётся null. * * @return TimeLineItem */ private function convertLibItemDb2TimeLineItem(LibItemDb $libItem, ArrayAdapter $params) { if (!$libItem->getDtStart()) { //Если нет даты начала - событие не стоит брать return null; } $tlItem = TimeLineItem::inst($libItem->getName(), $libItem->getIdent(), $libItem->getDtStart(), $libItem->getDtStop()); //Обложка $tlItem->setImage($this->getCover($libItem->getIdent(), TimeLineManager::COVERS_DIM)); //Контент $tlItem->setContent($libItem->getContent()); //Заполним данными if ($this->fillTimeLineItem($libItem, $tlItem, $params)) { return $tlItem; } return null; }
public function updateLibItem(LibItemDb $item) { check_condition($item->hasId(), 'Не передан код обновляемой сущности'); $this->update('UPDATE ps_lib_item SET name=?, content=?, dt_start=?, dt_stop=?, b_show=? WHERE id=?', array($item->getName(), $item->getContent(), $item->getDtStart(), $item->getDtStop(), $item->isShow() ? 1 : 0, $item->getId())); }
protected function timeLineItemPresentation(LibItemDb $libItem, ArrayAdapter $params) { return BlogManager::inst()->getPostContentProviderByIdent($libItem->getIdent())->getPostPopupVariant(); }
protected function timeLineItemPresentation(LibItemDb $item, ArrayAdapter $params) { $data['item'] = $item; $data['verses'] = $this->getVerses($item->getIdent()); return PSSmarty::template('timeline/poet.tpl', $data)->fetch(); }