protected function __construct()
 {
     parent::__construct();
     $this->componentPositionDao = BOL_ComponentEntityPositionDao::getInstance();
     $this->componentSettingDao = BOL_ComponentEntitySettingDao::getInstance();
     $this->placeSchemeDao = BOL_PlaceEntitySchemeDao::getInstance();
     $this->componentPlaceDao = BOL_ComponentEntityPlaceDao::getInstance();
 }
 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));
 }
Beispiel #3
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);
 }