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 | 4 | |
| 5 | 5 | use artweb\artbox\ecommerce\models\Category; |
| 6 | 6 | use artweb\artbox\ecommerce\models\Product; |
| 7 | - use artweb\artbox\ecommerce\models\ProductSearch; | |
| 8 | 7 | use artweb\artbox\ecommerce\models\ProductVariant; |
| 9 | 8 | use yii\web\HttpException; |
| 10 | 9 | use yii\web\UrlRuleInterface; |
| ... | ... | @@ -106,6 +105,7 @@ |
| 106 | 105 | public function createUrl($manager, $route, $params) |
| 107 | 106 | { |
| 108 | 107 | |
| 108 | + | |
| 109 | 109 | if (!in_array($route, $this->route_map)) { |
| 110 | 110 | return false; |
| 111 | 111 | } |
| ... | ... | @@ -140,13 +140,18 @@ |
| 140 | 140 | break; |
| 141 | 141 | |
| 142 | 142 | case 'catalog/product': |
| 143 | + | |
| 143 | 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 | 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 | 156 | if (!empty( $params ) && ( $query = http_build_query($params) ) !== '') { |
| 152 | 157 | $url .= '?' . $query; | ... | ... |
models/ProductImage.php