/** * update document * * @param Document $doc document model * @return Document */ public function put(Document $doc) { $doc->getConnection()->beginTransaction(); $doc->pureContent = $doc->getPureContent($doc->content); $doc->checkRequired($doc->getAttributes()); $doc->save(); $this->removeDivision($doc); $this->addRevision($doc); $doc->getConnection()->commit(); return $doc; }