Commit c058aa71b4402ff132989fa7cebb2077d6d35073
1 parent
c83e81f5
Namespaces
Showing
2 changed files
with
12 additions
and
5 deletions
Show diff stats
CatalogUrlManager.php
@@ -4,7 +4,6 @@ | @@ -4,7 +4,6 @@ | ||
4 | 4 | ||
5 | use artweb\artbox\ecommerce\models\Category; | 5 | use artweb\artbox\ecommerce\models\Category; |
6 | use artweb\artbox\ecommerce\models\Product; | 6 | use artweb\artbox\ecommerce\models\Product; |
7 | - use artweb\artbox\ecommerce\models\ProductSearch; | ||
8 | use artweb\artbox\ecommerce\models\ProductVariant; | 7 | use artweb\artbox\ecommerce\models\ProductVariant; |
9 | use yii\web\HttpException; | 8 | use yii\web\HttpException; |
10 | use yii\web\UrlRuleInterface; | 9 | use yii\web\UrlRuleInterface; |
@@ -106,6 +105,7 @@ | @@ -106,6 +105,7 @@ | ||
106 | public function createUrl($manager, $route, $params) | 105 | public function createUrl($manager, $route, $params) |
107 | { | 106 | { |
108 | 107 | ||
108 | + | ||
109 | if (!in_array($route, $this->route_map)) { | 109 | if (!in_array($route, $this->route_map)) { |
110 | return false; | 110 | return false; |
111 | } | 111 | } |
@@ -140,13 +140,18 @@ | @@ -140,13 +140,18 @@ | ||
140 | break; | 140 | break; |
141 | 141 | ||
142 | case 'catalog/product': | 142 | case 'catalog/product': |
143 | + | ||
143 | if (!empty( $params[ 'product' ] )) { | 144 | if (!empty( $params[ 'product' ] )) { |
144 | - $product_alias = is_object($params[ 'product' ]) ? $params[ 'product' ]->alias : strtolower( | ||
145 | - $params[ 'product' ] | ||
146 | - ); | 145 | + $product_alias = strtolower($params[ 'product' ]); |
147 | unset( $params[ 'product' ] ); | 146 | unset( $params[ 'product' ] ); |
148 | } | 147 | } |
149 | - $url = 'product/' . $product_alias; | 148 | + |
149 | + if (!empty( $params[ 'variant' ] )) { | ||
150 | + $variant_sku = strtolower($params[ 'variant' ]); | ||
151 | + unset( $params[ 'variant' ] ); | ||
152 | + } | ||
153 | + | ||
154 | + $url = 'product/' . $product_alias . '/' . $variant_sku; | ||
150 | 155 | ||
151 | if (!empty( $params ) && ( $query = http_build_query($params) ) !== '') { | 156 | if (!empty( $params ) && ( $query = http_build_query($params) ) !== '') { |
152 | $url .= '?' . $query; | 157 | $url .= '?' . $query; |
models/ProductImage.php
@@ -17,6 +17,8 @@ | @@ -17,6 +17,8 @@ | ||
17 | * @property string $title | 17 | * @property string $title |
18 | * @property Product $product | 18 | * @property Product $product |
19 | * @property ProductVariant $productVariant | 19 | * @property ProductVariant $productVariant |
20 | + * | ||
21 | + * @method string getImageUrl | ||
20 | */ | 22 | */ |
21 | class ProductImage extends ActiveRecord | 23 | class ProductImage extends ActiveRecord |
22 | { | 24 | { |