Commit c058aa71b4402ff132989fa7cebb2077d6d35073

Authored by Yarik
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
... ... @@ -17,6 +17,8 @@
17 17 * @property string $title
18 18 * @property Product $product
19 19 * @property ProductVariant $productVariant
  20 + *
  21 + * @method string getImageUrl
20 22 */
21 23 class ProductImage extends ActiveRecord
22 24 {
... ...