public function removeConcert($id) { $this->db->begin(); try { $this->db->query("DELETE FROM concert WHERE id=%i", $id); $this->nameModel->clear('concert', array('name_id', 'place_name_id', 'text_name_id')); } catch (Exception $ex) { $this->db->rollback(); throw $ex; } $this->db->commit(); return $this; }
public function setPage($menuId, $text) { $this->db->begin(); try { $nameId = $this->nameModel->setName($text, 'page', FALSE); $this->db->query("INSERT INTO [page] (menu_id, name_id) VALUES (%i, %i) ON DUPLICATE KEY UPDATE name_id=%i", $menuId, $nameId, $nameId); $this->nameModel->clear('page'); } catch (Exception $ex) { $this->db->rollback(); throw $ex; } $this->db->commit(); return $this; }
protected function saveMenu(array $items, $parentId) { foreach ($items as $sort => $item) { if (!empty($item->text)) { $nameId = $this->nameModel->setName($item->text, 'menu'); if (isset($item->id)) { $this->db->query("UPDATE [menu] SET name_id=%i,sort=%i WHERE id=%i", $nameId, $sort, $item->id); } else { $this->db->query("INSERT INTO [menu]", array('menu_id' => $parentId, 'name_id' => $nameId, 'site_id' => $this->siteId, 'sort' => $sort, 'visibility' => $item->visibility)); } } elseif (isset($item->id)) { $this->db->query("DELETE FROM [menu] WHERE id=%i", $item->id); } if (isset($item->items)) { $this->saveMenu($item->items, $item->id); } } }
public function remove($id, $type) { $this->db->begin(); try { $this->db->query("DELETE FROM %sql WHERE id=%i", $type, $id); $this->nameModel->clear($type); } catch (Exception $ex) { $this->db->rollback(); throw $ex; } $this->db->commit(); return $this; }
public function removeAlbum($id) { $this->db->begin(); try { $this->db->query("DELETE FROM song WHERE album_id=%i", $id); $this->db->query("DELETE FROM album WHERE id=%i", $id); $this->nameModel->clear('album', array('name_id', 'text_name_id'))->clear('song', array('name_id', 'text_name_id')); } catch (Exception $ex) { $this->db->rollback(); throw $ex; } $this->db->commit(); }
protected function setArticleUrl($text, $menuId, $articleId, $nameId) { for ($number = 1; $number < 7; $number++) { $start = strpos($text, '<h' . $number . '>'); $end = strpos($text, '</h' . $number . '>'); if ($start !== false && $end !== false) { $caption = \Nette\Utils\Strings::webalize(html_entity_decode(substr($text, $start + 4, $end - ($start + 4)))); if (!$this->checkCaption($menuId, $caption, $articleId)) { $caption .= '-' . $articleId; } $this->nameModel->setUrl($nameId, $caption); return $this; } } throw new CmsException('Článek nemá žádný nadpis. Doplňte prosím chybějící nadpis a uložte článek znovu.'); }