31 $this->_aMultiLangTables = $aMultiLangTables;
49 $this->_aMultiShopTables = $aMultiShopTables;
84 $this->_aAllShopLanguages = $aAllShopLanguages;
101 $this->_iShopId = $iShopId;
119 if ( empty( $this->_aAllViews ) ) {
120 $this->_aAllViews =
oxDb::getDb()->getCol(
"SHOW TABLES LIKE 'oxv_%'" );
135 $blEndsWithShopId = preg_match(
"/[_]([0-9]+)$/",$sViewName, $aMatchEndsWithShopId );
136 $blContainsShopId = preg_match(
"/[_]([0-9]+)[_]/",$sViewName, $aMatchContainsShopId );
138 if ( ( !$blEndsWithShopId && !$blContainsShopId ) ||
139 ( $blEndsWithShopId && $aMatchEndsWithShopId[1] == $this->
getShopId() ) ||
140 ( $blContainsShopId && $aMatchContainsShopId[1] == $this->
getShopId() ) ) {
155 if ( empty( $this->_aShopViews ) ) {
157 $this->_aShopViews = array();
160 foreach ( $aAllViews as $sView ) {
163 $this->_aShopViews[] = $sView;
177 if ( empty( $this->_aValidShopViews ) ) {
179 $aTables = $this->getMultilangTables();
182 $this->_aValidShopViews = array();
184 foreach ( $aTables as $sTable ) {
185 $this->_aValidShopViews[] =
'oxv_'.$sTable;;
189 $this->_aValidShopViews[] =
'oxv_'.$sTable.
'_'.$sLang;
214 $aInvalidViews = array();
217 foreach ( $aShopViews as $sView ) {
219 $aInvalidViews[] = $sView;
223 return $aInvalidViews;