Beispiel #1
0
 /**
  * Returns an instance of class (singleton pattern implementation).
  *
  * @return BOL_ComponentPlaceDao
  */
 public static function getInstance()
 {
     if (self::$classInstance === null) {
         self::$classInstance = new self();
     }
     return self::$classInstance;
 }
 public function deletePlaceComponent($componentPlaceUniqName)
 {
     $placeDto = $this->findPlaceComponent($componentPlaceUniqName);
     if ($placeDto === null) {
         return;
     }
     $component = $this->findComponent($placeDto->componentId);
     $event = new OW_Event('widgets.before_place_delete', array('class' => $component->className, 'uniqName' => $placeDto->uniqName));
     OW::getEventManager()->trigger($event);
     $this->componentPlaceDao->deleteByUniqName($componentPlaceUniqName);
     $this->componentSettingDao->deleteList($componentPlaceUniqName);
 }
 public function findSectionPositionIdList($placeId, $entityId, $section)
 {
     $componentPlaceDao = BOL_ComponentPlaceDao::getInstance();
     $componentEntityPlaceDao = BOL_ComponentEntityPlaceDao::getInstance();
     $query = '
     	SELECT `p`.`id` FROM `' . $this->getTableName() . '` AS `p`
     	INNER JOIN ( 
         	( SELECT `uniqName` FROM `' . $componentPlaceDao->getTableName() . '`
         		WHERE `placeId`=:placeId )
         	UNION
         	( SELECT `uniqName` FROM `' . $componentEntityPlaceDao->getTableName() . '`
         		WHERE `placeId`=:placeId AND `entityId`=:entityId )
     	) AS `c` ON `p`.`componentPlaceUniqName` = `c`.`uniqName` AND `section`=:section AND `p`.`entityId`=:entityId
     ';
     return $this->dbo->queryForColumnList($query, array('placeId' => $placeId, 'entityId' => $entityId, 'section' => $section));
 }
 public function moveComponentPlaceFromDefault($componentPlaceUniqName, $entityId)
 {
     $existingComponent = $this->componentPlaceDao->findByUniqName($componentPlaceUniqName, $entityId);
     if ($existingComponent !== null) {
         return $existingComponent;
     }
     $defaultComponentPlaceDao = BOL_ComponentPlaceDao::getInstance();
     /* @var $componentPlaceDto BOL_ComponentPlace */
     $componentPlaceDto = $defaultComponentPlaceDao->findByUniqName($componentPlaceUniqName);
     $componentEntityPlaceDto = new BOL_ComponentEntityPlace();
     $componentEntityPlaceDto->entityId = $entityId;
     $componentEntityPlaceDto->clone = $componentPlaceDto->clone;
     $componentEntityPlaceDto->componentId = $componentPlaceDto->componentId;
     $componentEntityPlaceDto->uniqName = $componentPlaceDto->uniqName;
     $componentEntityPlaceDto->placeId = $componentPlaceDto->placeId;
     $newComponent = $this->componentPlaceDao->save($componentEntityPlaceDto);
     return $newComponent;
 }
 public function findSectionPositionIdList($placeId, $section)
 {
     $componentPlaceDao = BOL_ComponentPlaceDao::getInstance();
     $query = '
 		SELECT `p`.`id` FROM `' . $this->getTableName() . '` AS `p`
 			INNER JOIN `' . $componentPlaceDao->getTableName() . '` AS `c` ON `p`.`componentPlaceUniqName` = `c`.`uniqName`
 				WHERE `c`.`placeId`=? AND `p`.`section`=? 
 	';
     return $this->dbo->queryForColumnList($query, array($placeId, $section));
 }
 public function findAdminComponentList($placeId, $entityId)
 {
     $placeDao = BOL_ComponentPlaceDao::getInstance();
     $query = "SELECT `up`.* FROM `" . $this->getTableName() . "` AS `up` \n                 LEFT JOIN `" . $placeDao->getTableName() . "` AS `p` ON `p`.`uniqName`=`up`.`uniqName`\n                    WHERE `p`.`uniqName` IS NOT NULL AND `up`.`placeId`=? AND `up`.`entityId`=?";
     return $this->dbo->queryForList($query, array($placeId, $entityId));
 }
Beispiel #7
0
 public function deleteWidgetPlace($uniqName)
 {
     $componentPlaceDao = BOL_ComponentPlaceDao::getInstance();
     $dto = $componentPlaceDao->findByUniqName($uniqName);
     if ($dto === null) {
         return;
     }
     $componentPlaceDao->deleteByUniqName($dto->uniqName);
     BOL_ComponentEntityPlaceDao::getInstance()->deleteAllByUniqName($dto->uniqName);
     BOL_ComponentSettingDao::getInstance()->deleteList($dto->uniqName);
     BOL_ComponentEntitySettingDao::getInstance()->deleteAllByUniqName($dto->uniqName);
     BOL_ComponentPositionDao::getInstance()->deleteByUniqName($dto->uniqName);
     BOL_ComponentEntityPositionDao::getInstance()->deleteAllByUniqName($dto->uniqName);
     $this->componentPlaceCacheDao->deleteAllCache($dto->placeId);
     $this->componentDao->delete($dto);
 }