Blame view

frontend/controllers/SiteController.php 6.28 KB
3f2bc3d0   Administrator   first commit
1
  <?php
7ba4acc5   Administrator   after marge
2
  
3f2bc3d0   Administrator   first commit
3
4
  namespace frontend\controllers;
  
0ff57d01   Administrator   image size
5
  use common\modules\product\models\Category;
02e6c2ba   Karnovsky A   -
6
7
8
  use common\modules\product\models\CategorySearch;
  use common\modules\product\models\Product;
  use common\modules\product\models\ProductVariant;
3f2bc3d0   Administrator   first commit
9
  use Yii;
3f2bc3d0   Administrator   first commit
10
  use yii\web\Controller;
7ba4acc5   Administrator   after marge
11
12
13
14
  use common\models\Page;
  use common\models\News;
  use common\models\Catalog;
  use common\models\Products;
3f2bc3d0   Administrator   first commit
15
  
3f2bc3d0   Administrator   first commit
16
17
  class SiteController extends Controller
  {
ccc7a9d3   Karnovsky A   Karnovsky 12052016
18
19
20
21
22
23
24
25
26
      /**
       * @inheritdoc
       */
      public function actions()
      {
          return [
              'thumb' => 'iutbay\yii2imagecache\ThumbAction',
          ];
      }
055ecc3b   Karnovsky A   Karnovsky 11052016
27
  
3f2bc3d0   Administrator   first commit
28
29
      public function actionIndex()
      {
055ecc3b   Karnovsky A   Karnovsky 11052016
30
  
7ba4acc5   Administrator   after marge
31
          $modelText = Page::find()->where(['translit'=>'home'])->one();
b6b226d0   Administrator   01.06.16
32
  
7ba4acc5   Administrator   after marge
33
34
          return $this->render('index', [
              'text'=>$modelText,
b6b226d0   Administrator   01.06.16
35
  
055ecc3b   Karnovsky A   Karnovsky 11052016
36
          ]);
3f2bc3d0   Administrator   first commit
37
      }
055ecc3b   Karnovsky A   Karnovsky 11052016
38
  
7a3cca71   Dmytry Fedorchuk   SEO
39
40
41
42
  
      public function actionRobots()
      {
  
486e5dea   Dmytry Fedorchuk   SEO
43
          $file = file_get_contents(robotsTxt, true);//получаем его содержимое
7a3cca71   Dmytry Fedorchuk   SEO
44
45
46
47
48
          return $this->renderPartial('robots', [
  
          ]);
      }
  
7ba4acc5   Administrator   after marge
49
      public function actionError(){
055ecc3b   Karnovsky A   Karnovsky 11052016
50
  
7ba4acc5   Administrator   after marge
51
52
53
          return $this->render('error', [
              'code'=>Yii::$app->errorHandler->exception->statusCode,
              'message'=>Yii::$app->errorHandler->exception->getMessage(),
055ecc3b   Karnovsky A   Karnovsky 11052016
54
55
56
          ]);
      }
  
0ff57d01   Administrator   image size
57
58
      public function actionPriceparam ()
      {
02e6c2ba   Karnovsky A   -
59
60
61
62
          $category_alias = Yii::$app->request->get('category');
          $is_count = Yii::$app->request->get('count', false);
  
          if ( !($category = CategorySearch::findByAlias($category_alias)))
0ff57d01   Administrator   image size
63
          {
02e6c2ba   Karnovsky A   -
64
              throw new HttpException(404, 'Данной страницы не существует!');
0ff57d01   Administrator   image size
65
66
          }
  
02e6c2ba   Karnovsky A   -
67
          $products = $category->products;
0ff57d01   Administrator   image size
68
  
02e6c2ba   Karnovsky A   -
69
70
71
          if ($is_count) {
              print (count($products));
              exit;
0ff57d01   Administrator   image size
72
          }
02e6c2ba   Karnovsky A   -
73
  
0ff57d01   Administrator   image size
74
75
76
77
78
79
80
81
82
83
84
          set_time_limit (0);
          header ("Content-Type: text/xml");
          print '<?xml version="1.0" encoding="UTF-8" ?>';
          print "<price>";
          print "<date>" . date ("Y-m-d h:m") . "</date>";
          print "<firmName>Rukzachok</firmName>";
          print "<firmId></firmId>";
          print "<rate></rate>";
          print "<categories>";
  
          print "<category>";
02e6c2ba   Karnovsky A   -
85
          print "<id>" . $category->category_id . "</id>";
0ff57d01   Administrator   image size
86
          print "<parentId></parentId>";
02e6c2ba   Karnovsky A   -
87
          print "<name>" . $category->name . "</name>";
0ff57d01   Administrator   image size
88
89
90
91
92
          print "</category>";
  
  
          print "</categories>";
          print "<items>";
02e6c2ba   Karnovsky A   -
93
94
95
96
          /** @var Product $product */
          foreach ($products as $product) {
              /** @var ProductVariant $variant */
              foreach ($product->enabledVariants as $variant) {
0ff57d01   Administrator   image size
97
  
0ff57d01   Administrator   image size
98
                  print "<item>";
02e6c2ba   Karnovsky A   -
99
100
101
102
103
104
105
106
107
108
                  print "<id>" . htmlspecialchars($variant->product_variant_id) . "</id>";
                  print "<categoryId>" . htmlspecialchars($product->category->category_id) . "</categoryId>";
                  print "<vendor>" . $product->brand->name . "</vendor>";
                  print "<code>" . htmlspecialchars($variant->sku) . "</code>";
                  print "<typeprefix>" . htmlspecialchars(substr($category->name, 0, -2)) . " </typeprefix>";
                  print "<name>" . htmlspecialchars($product->name) . "  </name>";
                  print "<param>" . $variant->name . " </param>";
                  print "<description>" . htmlspecialchars($product->description) . "</description>";
                  print "<url>http://rukzachok.com.ua{$product->url}#{$variant->product_variant_id}</url>";
                  print "<image>http://rukzachok.com.ua{$variant->imageUrl}</image>";
61bae627   Administrator   image size
109
110
                  print "<priceRUAH>" . $variant->price . "</priceRUAH>";
                  print "<oldprice>" . $variant->price_old . "</oldprice>";
0ff57d01   Administrator   image size
111
112
113
114
                  print "<priceRUSD></priceRUSD>";
                  print "<stock>В наличии</stock>";
                  print "<guarantee></guarantee>";
                  print "</item>";
0ff57d01   Administrator   image size
115
116
              }
          }
0ff57d01   Administrator   image size
117
118
119
          print "</items>";
  
          print "</price>";
0ff57d01   Administrator   image size
120
121
122
123
      }
  
      public function actionPrice()
      {
02e6c2ba   Karnovsky A   -
124
125
          $category_alias = Yii::$app->request->get('category');
          $is_count = Yii::$app->request->get('count', false);
0ff57d01   Administrator   image size
126
  
02e6c2ba   Karnovsky A   -
127
          if ( !($category = CategorySearch::findByAlias($category_alias)))
0ff57d01   Administrator   image size
128
          {
02e6c2ba   Karnovsky A   -
129
              throw new HttpException(404, 'Данной страницы не существует!');
0ff57d01   Administrator   image size
130
131
          }
  
02e6c2ba   Karnovsky A   -
132
          $products = $category->products;
0ff57d01   Administrator   image size
133
  
02e6c2ba   Karnovsky A   -
134
135
136
137
          if ($is_count) {
              print (count($products));
              exit;
          }
0ff57d01   Administrator   image size
138
  
0ff57d01   Administrator   image size
139
  
0ff57d01   Administrator   image size
140
141
142
143
144
145
146
147
148
149
150
151
  //var_dump($products);die();
          set_time_limit (0);
          header ("Content-Type: text/xml");
          print '<?xml version="1.0" encoding="UTF-8" ?>';
          print "<price>";
          print "<date>" . date ("Y-m-d h:m") . "</date>";
          print "<firmName>Rukzachok</firmName>";
          print "<firmId></firmId>";
          print "<rate></rate>";
          print "<categories>";
  
          print "<category>";
02e6c2ba   Karnovsky A   -
152
          print "<id>" . $category->category_id . "</id>";
0ff57d01   Administrator   image size
153
          print "<parentId></parentId>";
02e6c2ba   Karnovsky A   -
154
          print "<name>" . $category->name . "</name>";
0ff57d01   Administrator   image size
155
156
157
158
          print "</category>";
  
          print "</categories>";
          print "<items>";
02e6c2ba   Karnovsky A   -
159
          /** @var Product $product */
0ff57d01   Administrator   image size
160
161
          foreach ($products as $product)
          {
02e6c2ba   Karnovsky A   -
162
163
              /** @var ProductVariant $variant */
              foreach ($product->enabledVariants as $variant) {
0ff57d01   Administrator   image size
164
165
  
                  print "<item>";
02e6c2ba   Karnovsky A   -
166
167
168
169
                  print "<id>" . htmlspecialchars($variant->product_variant_id) . "</id>";
                  print "<categoryId>" . htmlspecialchars($product->category->category_id) . "</categoryId>";
                  print "<vendor>" . $product->brand->name . "</vendor>";
                  print "<code>" . htmlspecialchars($variant->sku) . "</code>";
41068668   Administrator   29.06.16
170
                  print "<name>" . htmlspecialchars($product->name)." " .htmlspecialchars($variant->name). " </name>";
02e6c2ba   Karnovsky A   -
171
172
173
                  print "<description>" . htmlspecialchars($product->description) . "</description>";
                  print "<url>http://rukzachok.com.ua{$product->url}#{$variant->product_variant_id}</url>";
                  print "<image>http://rukzachok.com.ua{$variant->imageUrl}</image>";
61bae627   Administrator   image size
174
175
                  print "<priceRUAH>" . $variant->price . "</priceRUAH>";
                  print "<oldprice>" . $variant->price_old . "</oldprice>";
0ff57d01   Administrator   image size
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
                  print "<priceRUSD></priceRUSD>";
                  print "<stock>В наличии</stock>";
                  print "<guarantee></guarantee>";
                  print "</item>";
  
              }
          }
  
  
          print "</items>";
  
          print "</price>";
  
  
      }
ccc7a9d3   Karnovsky A   Karnovsky 12052016
191
  
ccc7a9d3   Karnovsky A   Karnovsky 12052016
192
  
4967666c   Administrator   first commit
193
  }