public function save($con = null, $parent = null) { try { $con = Propel::getConnection(); $con->begin(); if (!$this->getId()) { $this->setId(Document::getGenericDocument($this)->getId()); } parent::save($con); // create relationship if (!$parent && !Document::getParentOf($this->getId())) { $parent = Rootfolder::getRootfolder($this); } Relation::saveRelation($parent, $this); $con->commit(); Document::cacheObj($this, get_class($this)); return true; } catch (Exception $e) { $con->rollback(); throw $e; } }
public function save(Doctrine_Connection $conn = null) { $slug = Magic::slugify($this->getTitle()); if ($this->isNew()) { $i = 0; do { $i++; $q = Doctrine::getTable('Category')->findOneBySlug($slug); if (!$q) { break; } else { $slug = Magic::slugify($this->getTitle()); $slug .= $i; } } while ($i); $this->setSlug($slug); } elseif ($slug != $this->getSlug()) { $i = 0; do { $i++; $q = Doctrine::getTable('Category')->findOneBySlug($slug); if (!$q) { $this->setSlug($slug); break; } else { if ($slug == $this->getSlug()) { break; } else { $slug = Magic::slugify($this->getTitle()); $slug .= $i; } } } while ($i); } parent::save($conn); }