changeMainLocation() 추상적인 공개 메소드

Updates ezcontentobject_tree table for the given $contentId and eznode_assignment table for the given $contentId, $parentLocationId and $versionNo
abstract public changeMainLocation ( mixed $contentId, mixed $locationId, mixed $versionNo, mixed $parentLocationId )
$contentId mixed
$locationId mixed
$versionNo mixed version number, needed to update eznode_assignment table
$parentLocationId mixed parent location of location identified by $locationId, needed to update eznode_assignment table
예제 #1
0
 /**
  * Changes main location of content identified by given $contentId to location identified by given $locationId.
  *
  * Updates ezcontentobject_tree and eznode_assignment tables (eznode_assignment for content current version number).
  *
  * @param mixed $contentId
  * @param mixed $locationId
  */
 public function changeMainLocation($contentId, $locationId)
 {
     $parentLocationId = $this->loadLocation($locationId)->parentId;
     // Update ezcontentobject_tree and eznode_assignment tables
     $this->locationGateway->changeMainLocation($contentId, $locationId, $this->loadContentInfo($contentId)->currentVersionNo, $parentLocationId);
     // Update subtree section to the one of the new main location parent location content
     $this->setSectionForSubtree($locationId, $this->loadContentInfo($this->loadLocation($parentLocationId)->contentId)->sectionId);
 }
예제 #2
0
 /**
  * Changes main location of content identified by given $contentId to location identified by given $locationId
  *
  * Updates ezcontentobject_tree table for the given $contentId and eznode_assignment table for the given
  * $contentId, $parentLocationId and $versionNo
  *
  * @param mixed $contentId
  * @param mixed $locationId
  * @param mixed $versionNo version number, needed to update eznode_assignment table
  * @param mixed $parentLocationId parent location of location identified by $locationId, needed to update
  *        eznode_assignment table
  *
  * @return void
  */
 public function changeMainLocation($contentId, $locationId, $versionNo, $parentLocationId)
 {
     try {
         return $this->innerGateway->changeMainLocation($contentId, $locationId, $versionNo, $parentLocationId);
     } catch (DBALException $e) {
         throw new RuntimeException('Database error', 0, $e);
     } catch (PDOException $e) {
         throw new RuntimeException('Database error', 0, $e);
     }
 }