Commit 6b69a279f1a68423903d24dce2c42b22bf2767bc

Authored by Alexey Boroda
1 parent f7011928

-GA js ready

Showing 271 changed files with 535 additions and 119 deletions   Show diff stats

Too many changes.

To preserve performance only 100 of 271 files are displayed.

.bowerrc 100644 → 100755
.gitignore 100644 → 100755
.htaccess 100644 → 100755
CHANGELOG.md 100644 → 100755
Initializer.php 100644 → 100755
LICENSE.md 100644 → 100755
README.md 100644 → 100755
backend/assets/AnalyticsAsset.php 100644 → 100755
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 'js/analytics.js', 18 'js/analytics.js',
19 ]; 19 ];
20 public $depends = [ 20 public $depends = [
21 - 'speixoto\amcharts\AmChartAsset', 21 + 'artbox\core\assets\ArtboxAmChartAsset',
22 ]; 22 ];
23 } 23 }
24 24
25 \ No newline at end of file 25 \ No newline at end of file
backend/controllers/AjaxController.php 0 → 100644
  1 +<?php
  2 +
  3 + namespace backend\controllers;
  4 +
  5 + use backend\models\Analytics;
  6 + use common\models\Settings;
  7 + use yii\filters\VerbFilter;
  8 + use yii\helpers\Json;
  9 + use yii\web\Controller;
  10 + use yii\web\Response;
  11 +
  12 + class AjaxController extends Controller
  13 + {
  14 + public $enableCsrfValidation = false;
  15 +
  16 + public function behaviors()
  17 + {
  18 + return [
  19 + 'verbs' => [
  20 + 'class' => VerbFilter::className(),
  21 + 'actions' => [
  22 + 'analytics' => [ 'post' ],
  23 + ],
  24 + ],
  25 + ];
  26 + }
  27 +
  28 + public function actionAnalytics()
  29 + {
  30 + \Yii::$app->response->format = Response::FORMAT_JSON;
  31 +
  32 + $settings = Settings::getInstance();
  33 +
  34 + $analytics = new Analytics(
  35 + [
  36 + 'viewId' => $settings->analytics_key,
  37 + ]
  38 + );
  39 + $data = $analytics->generateData();
  40 +
  41 + $browsers = $data[ 'table' ][ 0 ];
  42 + arsort($browsers);
  43 +
  44 + $cityes = $data[ 'table' ][ 1 ];
  45 + arsort($cityes);
  46 +
  47 + $countries = $data[ 'table' ][ 2 ];
  48 + arsort($countries);
  49 +
  50 + return [
  51 + 'plot' => $data[ 'plot' ],
  52 + 'pie' => [
  53 + [
  54 + "category" => "New Visitor",
  55 + "column-1" => round(intval($data[ 'new' ]), 2),
  56 + ],
  57 + [
  58 + "category" => "Returning Visitor",
  59 + "column-1" => 100 - round(intval($data[ 'new' ]), 2),
  60 + ],
  61 + ],
  62 + 'browsers' => $this->renderPartial(
  63 + '_table',
  64 + [
  65 + 'data' => $browsers,
  66 + 'name' => 'Browser',
  67 + ]
  68 + ),
  69 + 'cityes' => $this->renderPartial(
  70 + '_table',
  71 + [
  72 + 'data' => $cityes,
  73 + 'name' => 'City',
  74 + ]
  75 + ),
  76 + 'countries' => $this->renderPartial(
  77 + '_table',
  78 + [
  79 + 'data' => $countries,
  80 + 'name' => 'Country',
  81 + ]
  82 + ),
  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>',
  87 + ];
  88 + }
  89 +
  90 + }
0 \ No newline at end of file 91 \ No newline at end of file
backend/controllers/SiteController.php
@@ -8,7 +8,8 @@ @@ -8,7 +8,8 @@
8 use yii\filters\VerbFilter; 8 use yii\filters\VerbFilter;
9 use yii\filters\AccessControl; 9 use yii\filters\AccessControl;
10 use common\models\LoginForm; 10 use common\models\LoginForm;
11 - 11 + use yii\web\Response;
  12 +
12 /** 13 /**
13 * Site controller 14 * Site controller
14 */ 15 */
@@ -34,7 +35,7 @@ @@ -34,7 +35,7 @@
34 'actions' => [ 35 'actions' => [
35 'logout', 36 'logout',
36 'index', 37 'index',
37 - 'analytic', 38 + 'analytics',
38 ], 39 ],
39 'allow' => true, 40 'allow' => true,
40 'roles' => [ '@' ], 41 'roles' => [ '@' ],
@@ -44,7 +45,8 @@ @@ -44,7 +45,8 @@
44 'verbs' => [ 45 'verbs' => [
45 'class' => VerbFilter::className(), 46 'class' => VerbFilter::className(),
46 'actions' => [ 47 'actions' => [
47 - 'logout' => [ 'post' ], 48 + 'logout' => [ 'post' ],
  49 + 'analytics' => [ 'post' ],
48 ], 50 ],
49 ], 51 ],
50 ]; 52 ];
@@ -69,37 +71,37 @@ @@ -69,37 +71,37 @@
69 */ 71 */
70 public function actionIndex() 72 public function actionIndex()
71 { 73 {
72 - $settings = Settings::getInstance();  
73 -  
74 - if (empty($settings->analytics_key)) {  
75 - return $this->render('index');  
76 - } else {  
77 - $analytics = new Analytics(  
78 - [  
79 - 'viewId' => $settings->analytics_key,  
80 - ]  
81 - );  
82 - $data = $analytics->generateData();  
83 -  
84 - $browsers = $data[ 'table' ][ 0 ];  
85 - arsort($browsers);  
86 -  
87 - $cityes = $data[ 'table' ][ 1 ];  
88 - arsort($cityes);  
89 -  
90 - $countries = $data[ 'table' ][ 2 ];  
91 - arsort($countries);  
92 -  
93 - return $this->render(  
94 - 'analytics',  
95 - [  
96 - 'data' => $data,  
97 - 'browsers' => $browsers,  
98 - 'cityes' => $cityes,  
99 - 'countries' => $countries,  
100 - ]  
101 - );  
102 - } 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 + // }
103 } 105 }
104 106
105 /** 107 /**
@@ -137,9 +139,4 @@ @@ -137,9 +139,4 @@
137 139
138 return $this->goHome(); 140 return $this->goHome();
139 } 141 }
140 -  
141 - public function actionAnalytic()  
142 - {  
143 - return $this->render('analytic');  
144 - }  
145 } 142 }
backend/models/Analytics.php 100644 → 100755
backend/views/site/_table.php renamed to backend/views/ajax/_table.php 100644 → 100755
backend/views/settings/_codes_tab.php 100644 → 100755
backend/views/settings/_contact_tab.php 100644 → 100755
backend/views/settings/_main_tab.php 100644 → 100755
backend/views/settings/_social_tab.php 100644 → 100755
backend/views/site/analytics.php 100644 → 100755
backend/views/site/index.php
@@ -4,22 +4,125 @@ @@ -4,22 +4,125 @@
4 * @var View $this 4 * @var View $this
5 */ 5 */
6 6
7 - use artbox\gentelella\widgets\XPanel;  
8 use backend\assets\AnalyticsAsset; 7 use backend\assets\AnalyticsAsset;
  8 + use yii\bootstrap\Tabs;
9 use yii\web\View; 9 use yii\web\View;
  10 + use yiister\gentelella\widgets\Panel;
10 11
11 $this->title = 'Artbox !'; 12 $this->title = 'Artbox !';
12 13
13 AnalyticsAsset::register($this); 14 AnalyticsAsset::register($this);
14 ?> 15 ?>
15 16
16 -<?php $panel = XPanel::begin(  
17 - [  
18 - 'title' => 'Hello!',  
19 - 'toolbar' => false,  
20 - ]  
21 -); ?> 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 +
  23 + <div class="count" id="sessions">0</div>
  24 +
  25 + <h3>Sessions</h3>
  26 + <p>Lorem ipsum psdea itgum rixt.</p>
  27 + </div>
  28 + </div>
  29 + <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
  30 + <div class="tile-stats">
  31 + <div class="icon"><i class="fa fa-user"></i>
  32 + </div>
  33 +
  34 + <div class="count" id="users">0</div>
  35 +
  36 + <h3>Users</h3>
  37 + <p>Lorem ipsum psdea itgum rixt.</p>
  38 + </div>
  39 + </div>
  40 + <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
  41 + <div class="tile-stats">
  42 + <div class="icon"><i class="fa fa-eye"></i>
  43 + </div>
  44 +
  45 + <div class="count" id="views">0</div>
  46 +
  47 + <h3>Page views</h3>
  48 + <p>Lorem ipsum psdea itgum rixt.</p>
  49 + </div>
  50 + </div>
  51 + <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
  52 + <div class="tile-stats">
  53 + <div class="icon"><i class="fa fa-plus"></i>
  54 + </div>
  55 +
  56 + <div class="count" id="newusers">0</div>
  57 +
  58 + <h3>New sessions</h3>
  59 + <p>Lorem ipsum psdea itgum rixt.</p>
  60 + </div>
  61 + </div>
  62 +</div>
22 63
23 -<div id="chart"></div> 64 +<div class="row">
  65 + <div class="col-md-12">
  66 + <?php $panel = Panel::begin(
  67 + [
  68 + 'header' => 'Analytic',
  69 + ]
  70 + ) ?>
  71 +
  72 + <div id="chartdiv" style="width: 100%;height: 500px"></div>
  73 +
  74 + <?php $panel::end(); ?>
  75 + </div>
  76 +</div>
24 77
25 -<?php $panel::end(); ?> 78 +<div class="row">
  79 + <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
  80 + <?php $panel = Panel::begin(
  81 + [
  82 + 'header' => 'Pie chart',
  83 + ]
  84 + ) ?>
  85 +
  86 + <div id="piediv" style="width: 100%;height: 400px"></div>
  87 +
  88 + <?php $panel::end(); ?>
  89 + </div>
  90 +
  91 + <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
  92 +
  93 + <?php $panel = Panel::begin(
  94 + [
  95 + 'header' => 'Some stats',
  96 + ]
  97 + ); ?>
  98 +
  99 + <?php
  100 + echo Tabs::widget(
  101 + [
  102 + 'options' => [
  103 + 'class' => 'bar_tabs',
  104 + ],
  105 + 'items' => [
  106 + [
  107 + 'label' => 'Browsers',
  108 + 'content' => '<div id="browsers"></div>',
  109 + 'active' => true,
  110 + ],
  111 + [
  112 + 'label' => 'Cities',
  113 + 'content' => '<div id="cities"></div>',
  114 + ],
  115 + [
  116 + 'label' => 'Countries',
  117 + 'content' => '<div id="countries"></div>',
  118 + ],
  119 + ],
  120 + ]
  121 + );
  122 +
  123 + ?>
  124 +
  125 + <?php $panel::end(); ?>
  126 +
  127 + </div>
  128 +</div>
backend/views/sitemap/index.php 100644 → 100755
backend/views/sitemap/update.php 100644 → 100755
backend/web/js/analytics.js 100644 → 100755
1 -var chart = AmCharts.makeChart(  
2 - "chart", {  
3 - "type": "pie",  
4 - "dataProvider": [ 1 +$(
  2 + function() {
  3 + $.ajax(
5 { 4 {
6 - "country": "Lithuania",  
7 - "litres": 501.9  
8 - },  
9 - {  
10 - "country": "Czech Republic",  
11 - "litres": 301.9  
12 - },  
13 - {  
14 - "country": "Ireland",  
15 - "litres": 201.1  
16 - },  
17 - {  
18 - "country": "Germany",  
19 - "litres": 165.8  
20 - },  
21 - {  
22 - "country": "Australia",  
23 - "litres": 139.9  
24 - },  
25 - {  
26 - "country": "Austria",  
27 - "litres": 128.3  
28 - },  
29 - {  
30 - "country": "UK",  
31 - "litres": 99  
32 - },  
33 - {  
34 - "country": "Belgium",  
35 - "litres": 60  
36 - },  
37 - {  
38 - "country": "The Netherlands",  
39 - "litres": 50 5 + url: "/admin/ajax/analytics",
  6 + type: "POST",
  7 + success: function(data) {
  8 + // Replacing top data
  9 + $('#sessions')
  10 + .replaceWith(data.sessions);
  11 + $('#users')
  12 + .replaceWith(data.users);
  13 + $('#views')
  14 + .replaceWith(data.views);
  15 + $('#newusers')
  16 + .replaceWith(data.newusers);
  17 + // Building main chart
  18 + var chart = AmCharts.makeChart(
  19 + "chartdiv", {
  20 + "type": "serial",
  21 + 'dataProvider': data.plot,
  22 + 'categoryField': 'day',
  23 + 'categoryAxis': {
  24 + 'labelFrequency': 5
  25 + },
  26 + 'graphs': [
  27 + {
  28 + 'balloon': {
  29 + "drop": true,
  30 + "adjustBorderColor": false,
  31 + "color": "#ffffff"
  32 + },
  33 + "bullet": "round",
  34 + "bulletBorderAlpha": 1,
  35 + "bulletColor": "#FFFFFF",
  36 + "bulletSize": 5,
  37 + "hideBulletsCount": 50,
  38 + "lineThickness": 2,
  39 + "title": "red line",
  40 + "useLineColorForBulletBorder": true,
  41 + "valueField": "users",
  42 + "balloonText": "<span style='font-size:18px;'>Users: [[users]]</span>",
  43 + "lineColor": '#9ABCC3'
  44 + },
  45 + {
  46 + 'balloon': {
  47 + "drop": true,
  48 + "adjustBorderColor": false,
  49 + "color": "#ffffff"
  50 + },
  51 + "bullet": "round",
  52 + "bulletBorderAlpha": 1,
  53 + "bulletColor": "#FFFFFF",
  54 + "bulletSize": 5,
  55 + "hideBulletsCount": 50,
  56 + "lineThickness": 2,
  57 + "title": "red line",
  58 + "useLineColorForBulletBorder": true,
  59 + "valueField": "sessions",
  60 + "balloonText": "<span style='font-size:18px;'>Sessions: [[sessions]]</span>",
  61 + "lineColor": '#A8E3D6'
  62 + }
  63 + ],
  64 + 'chartCursor': {
  65 + "pan": true,
  66 + "valueLineEnabled": true,
  67 + "valueLineBalloonEnabled": true,
  68 + "cursorAlpha": 1,
  69 + "cursorColor": "#1ABB9C",
  70 + "limitToGraph": "g1",
  71 + "valueLineAlpha": 0.2,
  72 + "valueZoomable": true
  73 + }
  74 + }
  75 + );
  76 +
  77 + // Building pie chart
  78 + var pie = AmCharts.makeChart(
  79 + "piediv", {
  80 + "type": "pie",
  81 + 'dataProvider': data.pie,
  82 + "titleField": "category",
  83 + "valueField": "column-1",
  84 + 'colors': [
  85 + "#A8E3D6",
  86 + "#9ABCC3"
  87 + ]
  88 + }
  89 + );
  90 + // Replacing table stabs
  91 + $('#browsers')
  92 + .replaceWith(data.browsers);
  93 + $('#cities')
  94 + .replaceWith(data.cityes);
  95 + $('#countries')
  96 + .replaceWith(data.countries);
  97 + }
40 } 98 }
41 - ],  
42 - "valueField": "litres",  
43 - "titleField": "country",  
44 - "balloon": {  
45 - "fixedPosition": true  
46 - },  
47 - "export": {  
48 - "enabled": true  
49 - } 99 + )
50 } 100 }
51 -);  
52 \ No newline at end of file 101 \ No newline at end of file
  102 +);
  103 +
backend/web/js/custom.js
@@ -5045,7 +5045,7 @@ if (typeof NProgress != &#39;undefined&#39;) { @@ -5045,7 +5045,7 @@ if (typeof NProgress != &#39;undefined&#39;) {
5045 init_daterangepicker_reservation(); 5045 init_daterangepicker_reservation();
5046 init_SmartWizard(); 5046 init_SmartWizard();
5047 init_EasyPieChart(); 5047 init_EasyPieChart();
5048 - init_charts(); 5048 + // init_charts();
5049 init_echarts(); 5049 init_echarts();
5050 init_morris_charts(); 5050 init_morris_charts();
5051 init_skycons(); 5051 init_skycons();
backend/web/js/jquery.animateNumber.js 0 → 100644
  1 +/** @preserve jQuery animateNumber plugin v0.0.14
  2 + * (c) 2013, Alexandr Borisov.
  3 + * https://github.com/aishek/jquery-animateNumber
  4 + */
  5 +
  6 +// ['...'] notation using to avoid names minification by Google Closure Compiler
  7 +(function($) {
  8 + var reverse = function(value) {
  9 + return value.split('')
  10 + .reverse()
  11 + .join('');
  12 + };
  13 +
  14 + var defaults = {
  15 + numberStep: function(now, tween) {
  16 + var floored_number = Math.floor(now), target = $(tween.elem);
  17 +
  18 + target.text(floored_number);
  19 + }
  20 + };
  21 +
  22 + var handle = function(tween) {
  23 + var elem = tween.elem;
  24 + if (elem.nodeType && elem.parentNode) {
  25 + var handler = elem._animateNumberSetter;
  26 + if (!handler) {
  27 + handler = defaults.numberStep;
  28 + }
  29 + handler(tween.now, tween);
  30 + }
  31 + };
  32 +
  33 + if (!$.Tween || !$.Tween.propHooks) {
  34 + $.fx.step.number = handle;
  35 + } else {
  36 + $.Tween.propHooks.number = {
  37 + set: handle
  38 + };
  39 + }
  40 +
  41 + var extract_number_parts = function(separated_number, group_length) {
  42 + var numbers = separated_number.split('')
  43 + .reverse(), number_parts = [], current_number_part, current_index, q;
  44 +
  45 + for (var i = 0, l = Math.ceil(separated_number.length / group_length); i < l; i++) {
  46 + current_number_part = '';
  47 + for (q = 0; q < group_length; q++) {
  48 + current_index = i * group_length + q;
  49 + if (current_index === separated_number.length) {
  50 + break;
  51 + }
  52 +
  53 + current_number_part = current_number_part + numbers[ current_index ];
  54 + }
  55 + number_parts.push(current_number_part);
  56 + }
  57 +
  58 + return number_parts;
  59 + };
  60 +
  61 + var remove_precending_zeros = function(number_parts) {
  62 + var last_index = number_parts.length - 1, last = reverse(number_parts[ last_index ]);
  63 +
  64 + number_parts[ last_index ] = reverse(
  65 + parseInt(last, 10)
  66 + .toString()
  67 + );
  68 + return number_parts;
  69 + };
  70 +
  71 + $.animateNumber = {
  72 + numberStepFactories: {
  73 + /**
  74 + * Creates numberStep handler, which appends string to floored animated number on each step.
  75 + *
  76 + * @example
  77 + * // will animate to 100 with "1 %", "2 %", "3 %", ...
  78 + * $('#someid').animateNumber({
  79 + * number: 100,
  80 + * numberStep: $.animateNumber.numberStepFactories.append(' %')
  81 + * });
  82 + *
  83 + * @params {String} suffix string to append to animated number
  84 + * @returns {Function} numberStep-compatible function for use in animateNumber's parameters
  85 + */
  86 + append: function(suffix) {
  87 + return function(now, tween) {
  88 + var floored_number = Math.floor(now), target = $(tween.elem);
  89 +
  90 + target.prop('number', now)
  91 + .text(floored_number + suffix);
  92 + };
  93 + },
  94 +
  95 + /**
  96 + * Creates numberStep handler, which format floored numbers by separating them to groups.
  97 + *
  98 + * @example
  99 + * // will animate with 1 ... 217,980 ... 95,217,980 ... 7,095,217,980
  100 + * $('#world-population').animateNumber({
  101 + * number: 7095217980,
  102 + * numberStep: $.animateNumber.numberStepFactories.separator(',')
  103 + * });
  104 + * @example
  105 + * // will animate with 1% ... 217,980% ... 95,217,980% ... 7,095,217,980%
  106 + * $('#salesIncrease').animateNumber({
  107 + * number: 7095217980,
  108 + * numberStep: $.animateNumber.numberStepFactories.separator(',', 3, '%')
  109 + * });
  110 + *
  111 + * @params {String} [separator=' '] string to separate number groups
  112 + * @params {String} [group_length=3] number group length
  113 + * @params {String} [suffix=''] suffix to append to number
  114 + * @returns {Function} numberStep-compatible function for use in animateNumber's parameters
  115 + */
  116 + separator: function(separator, group_length, suffix) {
  117 + separator = separator || ' ';
  118 + group_length = group_length || 3;
  119 + suffix = suffix || '';
  120 +
  121 + return function(now, tween) {
  122 + var negative = now < 0, floored_number = Math.floor((negative ? -1 : 1) * now), separated_number = floored_number.toString(), target = $(tween.elem);
  123 +
  124 + if (separated_number.length > group_length) {
  125 + var number_parts = extract_number_parts(separated_number, group_length);
  126 +
  127 + separated_number = remove_precending_zeros(number_parts)
  128 + .join(separator);
  129 + separated_number = reverse(separated_number);
  130 + }
  131 +
  132 + target.prop('number', now)
  133 + .text((negative ? '-' : '') + separated_number + suffix);
  134 + };
  135 + }
  136 + }
  137 + };
  138 +
  139 + $.fn.animateNumber = function() {
  140 + var options = arguments[ 0 ], settings = $.extend({}, defaults, options),
  141 +
  142 + target = $(this), args = [ settings ];
  143 +
  144 + for (var i = 1, l = arguments.length; i < l; i++) {
  145 + args.push(arguments[ i ]);
  146 + }
  147 +
  148 + // needs of custom step function usage
  149 + if (options.numberStep) {
  150 + // assigns custom step functions
  151 + var items = this.each(
  152 + function() {
  153 + this._animateNumberSetter = options.numberStep;
  154 + }
  155 + );
  156 +
  157 + // cleanup of custom step functions after animation
  158 + var generic_complete = settings.complete;
  159 + settings.complete = function() {
  160 + items.each(
  161 + function() {
  162 + delete this._animateNumberSetter;
  163 + }
  164 + );
  165 +
  166 + if (generic_complete) {
  167 + generic_complete.apply(this, arguments);
  168 + }
  169 + };
  170 + }
  171 +
  172 + return target.animate.apply(target, args);
  173 + };
  174 +
  175 +}(jQuery));
codeception.yml 100644 → 100755
common/codeception.yml 100644 → 100755
common/components/Sitemap.php 100644 → 100755
common/config/.gitignore 100644 → 100755
common/config/Artbox-85b8559147bc.json 100644 → 100755
common/config/SitemapDynamic.php 100644 → 100755
common/config/SitemapStatic.php 100644 → 100755
common/config/bootstrap.php 100644 → 100755
common/config/main.php 100644 → 100755
common/config/params.php 100644 → 100755
common/config/settings.php
@@ -5,29 +5,29 @@ return [ @@ -5,29 +5,29 @@ return [
5 'phone' => '+38 (044) 593-73-76', 5 'phone' => '+38 (044) 593-73-76',
6 'phone2' => '+38 (098) 468-07-64', 6 'phone2' => '+38 (098) 468-07-64',
7 'skype' => 'artwebstudio', 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 - 'twitter' => 'https://twitter.com/ArtWeb_ua',  
21 - 'name' => 'Artweb',  
22 - 'logo' => '2',  
23 - 'about' => 'Строим бизнес в онлайне', 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 + 'twitter' => 'https://twitter.com/ArtWeb_ua',
  21 + 'name' => 'Artweb',
  22 + 'logo' => '11',
  23 + 'about' => 'Строим бизнес в онлайне',
24 'analytics_key' => '119240817', 24 'analytics_key' => '119240817',
25 - 'robots' => 'User-agent: Google 25 + 'robots' => 'User-agent: Google
26 Disallow: 26 Disallow:
27 ', 27 ',
28 - 'ga_code' => '796967',  
29 - 'ya_code' => '08908908',  
30 - 'tag_manager' => '',  
31 - 'id' => 1, 28 + 'ga_code' => '796967',
  29 + 'ya_code' => '08908908',
  30 + 'tag_manager' => '',
  31 + 'id' => 1,
32 ], 32 ],
33 ]; 33 ];
34 \ No newline at end of file 34 \ No newline at end of file
common/config/test.php 100644 → 100755
common/fixtures/User.php 100644 → 100755
common/mail/layouts/html.php 100644 → 100755
common/mail/layouts/text.php 100644 → 100755
common/mail/passwordResetToken-html.php 100644 → 100755
common/mail/passwordResetToken-text.php 100644 → 100755
common/models/LoginForm.php 100644 → 100755
common/models/SitemapDynamic.php 100644 → 100755
common/models/SitemapStatic.php 100644 → 100755
common/tests/_bootstrap.php 100644 → 100755
common/tests/_data/user.php 100644 → 100755
common/tests/_output/.gitignore 100644 → 100755
common/tests/_support/.gitignore 100644 → 100755
common/tests/_support/UnitTester.php 100644 → 100755
common/tests/unit.suite.yml 100644 → 100755
common/tests/unit/models/LoginFormTest.php 100644 → 100755
common/widgets/Alert.php 100644 → 100755
composer.json 100644 → 100755
composer.lock 100644 → 100755
console/config/.gitignore 100644 → 100755
console/config/bootstrap.php 100644 → 100755
console/config/main.php 100644 → 100755
console/config/params.php 100644 → 100755
console/controllers/.gitkeep 100644 → 100755
console/controllers/CheckController.php 100644 → 100755
console/controllers/CreateController.php 100644 → 100755
console/models/.gitkeep 100644 → 100755
console/runtime/.gitignore 100644 → 100755
environments/dbmysql.php 100644 → 100755
environments/dbpostgresql.php 100644 → 100755
environments/dev/backend/config/main-local.php 100644 → 100755
environments/dev/backend/config/params-local.php 100644 → 100755
environments/dev/backend/config/test-local.php 100644 → 100755
environments/dev/backend/web/index-test.php 100644 → 100755
environments/dev/backend/web/index.php 100644 → 100755
environments/dev/common/config/main-local.php 100644 → 100755
environments/dev/common/config/params-local.php 100644 → 100755
environments/dev/common/config/test-local.php 100644 → 100755
environments/dev/console/config/main-local.php 100644 → 100755
environments/dev/console/config/params-local.php 100644 → 100755
environments/dev/frontend/config/main-local.php 100644 → 100755
environments/dev/frontend/config/params-local.php 100644 → 100755
environments/dev/frontend/config/test-local.php 100644 → 100755
environments/dev/frontend/web/index-test.php 100644 → 100755
environments/dev/frontend/web/index.php 100644 → 100755
environments/dev/yii 100644 → 100755
environments/dev/yii_test 100644 → 100755
environments/dev/yii_test.bat 100644 → 100755
environments/index.php 100644 → 100755
environments/prod/backend/config/main-local.php 100644 → 100755
environments/prod/backend/config/params-local.php 100644 → 100755
environments/prod/backend/web/index.php 100644 → 100755
environments/prod/common/config/main-local.php 100644 → 100755
environments/prod/common/config/params-local.php 100644 → 100755
environments/prod/console/config/main-local.php 100644 → 100755
environments/prod/console/config/params-local.php 100644 → 100755
environments/prod/frontend/config/main-local.php 100644 → 100755
environments/prod/frontend/config/params-local.php 100644 → 100755
environments/prod/frontend/web/index.php 100644 → 100755
environments/prod/yii 100644 → 100755
frontend/assets/AppAsset.php 100644 → 100755
frontend/assets/MapAsset.php 100644 → 100755
frontend/codeception.yml 100644 → 100755
frontend/config/.gitignore 100644 → 100755
frontend/config/bootstrap.php 100644 → 100755
frontend/config/main.php 100644 → 100755