protected function _beforeLoad() { parent::_beforeLoad(); $this->getSelect()->joinLeft(array('store_group' => $this->getTable('core/store_group')), 'main_table.group_id=store_group.group_id', null)->joinLeft(array('website' => $this->getTable('core/website')), 'store_group.website_id=website.website_id', null)->columns(array('hierarchy' => new Zend_Db_expr("CONCAT(`website`.`name`, ' -> ', `store_group`.`name`, ' -> ', `main_table`.`name`)"))); return $this; }
/** * Limit store views collection. Adding limitation depending * on allowed group ids for user. * * @param Mage_Core_Model_Mysql4_Store_Collection $collection */ public function limitStores($collection) { // Changed from filter by store id bc of case when // user creating new store view for allowed store group $collection->addGroupFilter(array_merge($this->_role->getStoreGroupIds(), array(0))); }