Commit 198ca6c0deca113f34f1d54817a1167c629af3e6

Authored by Alexey Boroda
1 parent 542dacfb

-Animations ready except preloader

backend/assets/AnalyticsAsset.php
... ... @@ -15,10 +15,12 @@
15 15 public $baseUrl = '@web';
16 16 public $css = [];
17 17 public $js = [
  18 + 'js/jquery.animateNumber.js',
18 19 'js/analytics.js',
19 20 ];
20 21 public $depends = [
21 22 'artbox\core\assets\ArtboxAmChartAsset',
  23 + 'backend\assets\AppAsset',
22 24 ];
23 25 }
24 26  
25 27 \ No newline at end of file
... ...
backend/controllers/AjaxController.php 100644 → 100755
... ... @@ -5,7 +5,6 @@
5 5 use backend\models\Analytics;
6 6 use common\models\Settings;
7 7 use yii\filters\VerbFilter;
8   - use yii\helpers\Json;
9 8 use yii\web\Controller;
10 9 use yii\web\Response;
11 10  
... ... @@ -80,10 +79,10 @@
80 79 'name' => 'Country',
81 80 ]
82 81 ),
83   - 'sessions' => '<div class="count counter">' . $data[ 'sessions' ] . '</div>',
84   - 'users' => '<div class="count">' . $data[ 'users' ] . '</div>',
85   - 'views' => '<div class="count">' . $data[ 'views' ] . '</div>',
86   - 'newusers' => '<div class="count">' . round(intval($data[ 'new' ]), 2) . ' %</div>',
  82 + 'sessions' => (int) $data[ 'sessions' ],
  83 + 'users' => (int) $data[ 'users' ],
  84 + 'views' => (int) $data[ 'views' ],
  85 + 'newusers' => round(intval($data[ 'new' ]), 2),
87 86 ];
88 87 }
89 88  
... ...
backend/controllers/SiteController.php
1 1 <?php
2 2 namespace backend\controllers;
3 3  
4   - use backend\models\Analytics;
5 4 use common\models\Settings;
6 5 use Yii;
7 6 use yii\web\Controller;
8 7 use yii\filters\VerbFilter;
9 8 use yii\filters\AccessControl;
10 9 use common\models\LoginForm;
11   - use yii\web\Response;
12 10  
13 11 /**
14 12 * Site controller
... ... @@ -71,37 +69,13 @@
71 69 */
72 70 public function actionIndex()
73 71 {
74   - // $settings = Settings::getInstance();
75   - //
76   - // if (empty($settings->analytics_key)) {
77   - return $this->render('index');
78   - // } else {
79   - // $analytics = new Analytics(
80   - // [
81   - // 'viewId' => $settings->analytics_key,
82   - // ]
83   - // );
84   - // $data = $analytics->generateData();
85   - //
86   - // $browsers = $data[ 'table' ][ 0 ];
87   - // arsort($browsers);
88   - //
89   - // $cityes = $data[ 'table' ][ 1 ];
90   - // arsort($cityes);
91   - //
92   - // $countries = $data[ 'table' ][ 2 ];
93   - // arsort($countries);
94   - //
95   - // return $this->render(
96   - // 'analytics',
97   - // [
98   - // 'data' => $data,
99   - // 'browsers' => $browsers,
100   - // 'cityes' => $cityes,
101   - // 'countries' => $countries,
102   - // ]
103   - // );
104   - // }
  72 + $settings = Settings::getInstance();
  73 +
  74 + if (empty($settings->analytics_key)) {
  75 + return $this->render('instruction');
  76 + } else {
  77 + return $this->render('index');
  78 + }
105 79 }
106 80  
107 81 /**
... ...
backend/views/site/analytics.php deleted
1   -<?php
2   - /**
3   - * @var View $this
4   - * @var array $data
5   - * @var array $browsers
6   - * @var array $cityes
7   - * @var array $countries
8   - */
9   -
10   - use speixoto\amcharts\Widget;
11   - use yii\bootstrap\Tabs;
12   - use yii\web\View;
13   - use yiister\gentelella\widgets\Panel;
14   -
15   -?>
16   -
17   -<div class="row">
18   - <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
19   - <div class="tile-stats">
20   - <div class="icon"><i class="fa fa-clock-o"></i>
21   - </div>
22   - <div class="count"><?= $data[ 'sessions' ] ?></div>
23   -
24   - <h3>Sessions</h3>
25   - <p>Lorem ipsum psdea itgum rixt.</p>
26   - </div>
27   - </div>
28   - <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
29   - <div class="tile-stats">
30   - <div class="icon"><i class="fa fa-user"></i>
31   - </div>
32   - <div class="count"><?= $data[ 'users' ] ?></div>
33   -
34   - <h3>Users</h3>
35   - <p>Lorem ipsum psdea itgum rixt.</p>
36   - </div>
37   - </div>
38   - <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
39   - <div class="tile-stats">
40   - <div class="icon"><i class="fa fa-eye"></i>
41   - </div>
42   - <div class="count"><?= $data[ 'views' ] ?></div>
43   -
44   - <h3>Page views</h3>
45   - <p>Lorem ipsum psdea itgum rixt.</p>
46   - </div>
47   - </div>
48   - <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
49   - <div class="tile-stats">
50   - <div class="icon"><i class="fa fa-plus"></i>
51   - </div>
52   - <div class="count"><?= round(intval($data[ 'new' ]), 2) ?> %</div>
53   -
54   - <h3>New sessions</h3>
55   - <p>Lorem ipsum psdea itgum rixt.</p>
56   - </div>
57   - </div>
58   -</div>
59   -
60   -<div class="row">
61   - <div class="col-md-12">
62   - <?php $panel = Panel::begin(
63   - [
64   - 'header' => 'Analytics',
65   - ]
66   - ); ?>
67   -
68   - <?php
69   - $chartConfiguration = [
70   - 'type' => 'serial',
71   - 'dataProvider' => $data[ 'plot' ],
72   - 'categoryField' => 'day',
73   - 'categoryAxis' => [
74   - 'labelFrequency' => 5,
75   - ],
76   - 'graphs' => [
77   - [
78   - "balloon" => [
79   - "drop" => true,
80   - "adjustBorderColor" => false,
81   - "color" => "#ffffff",
82   - ],
83   - "bullet" => "round",
84   - "bulletBorderAlpha" => 1,
85   - "bulletColor" => "#FFFFFF",
86   - "bulletSize" => 5,
87   - "hideBulletsCount" => 50,
88   - "lineThickness" => 2,
89   - "title" => "red line",
90   - "useLineColorForBulletBorder" => true,
91   - "valueField" => "users",
92   - "balloonText" => "<span style='font-size:18px;'>Users: [[users]]</span>",
93   - "lineColor" => '#9ABCC3',
94   - ],
95   - [
96   - "balloon" => [
97   - "drop" => true,
98   - "adjustBorderColor" => false,
99   - "color" => "#ffffff",
100   - ],
101   - "bullet" => "round",
102   - "bulletBorderAlpha" => 1,
103   - "bulletColor" => "#FFFFFF",
104   - "bulletSize" => 5,
105   - "hideBulletsCount" => 50,
106   - "lineThickness" => 2,
107   - "title" => "red line",
108   - "useLineColorForBulletBorder" => true,
109   - "valueField" => "sessions",
110   - "balloonText" => "<span style='font-size:18px;'>Sessions: [[sessions]]</span>",
111   - "lineColor" => '#A8E3D6',
112   - ],
113   - ],
114   - 'chartCursor' => [
115   - "pan" => true,
116   - "valueLineEnabled" => true,
117   - "valueLineBalloonEnabled" => true,
118   - "cursorAlpha" => 1,
119   - "cursorColor" => "#1ABB9C",
120   - "limitToGraph" => "g1",
121   - "valueLineAlpha" => 0.2,
122   - "valueZoomable" => true,
123   - ],
124   - ];
125   -
126   - echo Widget::widget(
127   - [
128   - 'chartConfiguration' => $chartConfiguration,
129   - 'width' => '100%',
130   - ]
131   - );
132   - ?>
133   -
134   - <?php $panel::end(); ?>
135   -
136   - </div>
137   -</div>
138   -
139   -<div class="row">
140   - <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
141   - <?php $panel = Panel::begin(
142   - [
143   - 'header' => 'Analytics',
144   - ]
145   - ); ?>
146   -
147   - <?php
148   - $chartConfiguration = [
149   - "type" => "pie",
150   - "titleField" => "category",
151   - "valueField" => "column-1",
152   - "dataProvider" => [
153   - [
154   - "category" => "New Visitor",
155   - "column-1" => round(intval($data[ 'new' ]), 2),
156   - ],
157   - [
158   - "category" => "Returning Visitor",
159   - "column-1" => 100 - round(intval($data[ 'new' ]), 2),
160   - ],
161   - ],
162   - "colors" => [
163   - "#A8E3D6",
164   - "#9ABCC3",
165   - ],
166   - ];
167   -
168   - echo Widget::widget(
169   - [
170   - 'chartConfiguration' => $chartConfiguration,
171   - 'width' => '100%',
172   - ]
173   - );
174   - ?>
175   -
176   - <?php $panel::end(); ?>
177   - </div>
178   -
179   - <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
180   -
181   - <?php $panel = Panel::begin(
182   - [
183   - 'header' => 'Analytics',
184   - ]
185   - ); ?>
186   -
187   - <?php
188   - echo Tabs::widget(
189   - [
190   - 'options' => [
191   - 'class' => 'bar_tabs',
192   - ],
193   - 'items' => [
194   - [
195   - 'label' => 'Browsers',
196   - 'content' => $this->render(
197   - '_table',
198   - [
199   - 'data' => $browsers,
200   - 'name' => 'Browser',
201   - ]
202   - ),
203   - 'active' => true,
204   - ],
205   - [
206   - 'label' => 'Cities',
207   - 'content' => $this->render(
208   - '_table',
209   - [
210   - 'data' => $cityes,
211   - 'name' => 'City',
212   - ]
213   - ),
214   - ],
215   - [
216   - 'label' => 'Countries',
217   - 'content' => $this->render(
218   - '_table',
219   - [
220   - 'data' => $countries,
221   - 'name' => 'Country',
222   - ]
223   - ),
224   - ],
225   - ],
226   - ]
227   - );
228   -
229   - ?>
230   -
231   - <?php $panel::end(); ?>
232   -
233   - </div>
234   -
235   -</div>
236   -
backend/views/site/instruction.php 0 → 100755
  1 +<?php
  2 + /**
  3 + * @var View $this
  4 + * @var array $data
  5 + * @var array $browsers
  6 + * @var array $cityes
  7 + * @var array $countries
  8 + */
  9 +
  10 + use yii\web\View;
  11 + use yiister\gentelella\widgets\Panel;
  12 +
  13 +?>
  14 +
  15 +<div class="row">
  16 + <?php $panel = Panel::begin(
  17 + [
  18 + 'header' => 'Instruction',
  19 + ]
  20 + ) ?>
  21 + <div class="jumbotron">
  22 + <h1>Hello, world!</h1>
  23 + <p>This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.</p>
  24 + </div>
  25 + <?php $panel::end(); ?>
  26 +</div>
  27 +
... ...
backend/web/js/analytics.js
... ... @@ -7,13 +7,13 @@ $(
7 7 success: function(data) {
8 8 // Replacing top data
9 9 $('#sessions')
10   - .replaceWith(data.sessions);
  10 + .animateNumber({number: data.sessions}, 2000);
11 11 $('#users')
12   - .replaceWith(data.users);
  12 + .animateNumber({number: data.users}, 2000);
13 13 $('#views')
14   - .replaceWith(data.views);
  14 + .animateNumber({number: data.views}, 2000);
15 15 $('#newusers')
16   - .replaceWith(data.newusers);
  16 + .animateNumber({number: data.newusers}, 2000);
17 17 // Building main chart
18 18 var chart = AmCharts.makeChart(
19 19 "chartdiv", {
... ...
backend/web/js/jquery.animateNumber.js 100644 → 100755
common/config/settings.php
... ... @@ -2,21 +2,21 @@
2 2  
3 3 return [
4 4 1 => [
5   - 'phone' => '+38 (044) 593-73-76',
6   - 'phone2' => '+38 (098) 468-07-64',
7   - 'skype' => 'artwebstudio',
8   - 'email' => 'artweb.ua@gmail.com',
9   - 'house' => '1-М',
10   - 'street' => 'пр. М. Бажана',
11   - 'office' => '25',
12   - 'city' => 'Киев',
13   - 'country' => 'Украина',
14   - 'lat' => '50.403696',
15   - 'lon' => '30.641481',
16   - 'facebook' => 'https://www.facebook.com/ArtWeb.ua/',
17   - 'vk' => 'https://vk.com/artwebua',
18   - 'ok' => 'https://ok.ru/artwebua',
19   - 'google' => 'https://plus.google.com/+ArtwebUaAgency',
  5 + 'phone' => '+38 (044) 593-73-76',
  6 + 'phone2' => '+38 (098) 468-07-64',
  7 + 'skype' => 'artwebstudio',
  8 + 'email' => 'artweb.ua@gmail.com',
  9 + 'house' => '1-М',
  10 + 'street' => 'пр. М. Бажана',
  11 + 'office' => '25',
  12 + 'city' => 'Киев',
  13 + 'country' => 'Украина',
  14 + 'lat' => '50.403696',
  15 + 'lon' => '30.641481',
  16 + 'facebook' => 'https://www.facebook.com/ArtWeb.ua/',
  17 + 'vk' => 'https://vk.com/artwebua',
  18 + 'ok' => 'https://ok.ru/artwebua',
  19 + 'google' => 'https://plus.google.com/+ArtwebUaAgency',
20 20 'twitter' => 'https://twitter.com/ArtWeb_ua',
21 21 'name' => 'Artweb',
22 22 'logo' => '11',
... ...
frontend/web/img/7_bMIj6pnE4WCbYj8XV7jYIc3PmtwqBi_F.png 100644 → 100755

159 KB | W: | H:

159 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
frontend/web/img/8_6cR4qWhyoJXORQG87Vm5K5O5vyq5-0k2.jpg 100644 → 100755

27.3 KB | W: | H:

27.3 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin