analytics.php 7.68 KB
<?php
    /**
     * @var View  $this
     * @var array $data
     * @var array $browsers
     * @var array $cityes
     * @var array $countries
     */
    
    use artbox\gentelella\widgets\XPanel;
    use speixoto\amcharts\Widget;
    use yii\bootstrap\Tabs;
    use yii\web\View;

?>

<div class="row">
  <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
    <div class="tile-stats">
      <div class="icon"><i class="fa fa-clock-o"></i>
      </div>
      <div class="count"><?= $data[ 'sessions' ] ?></div>
      
      <h3>Sessions</h3>
      <p>Lorem ipsum psdea itgum rixt.</p>
    </div>
  </div>
  <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
    <div class="tile-stats">
      <div class="icon"><i class="fa fa-user"></i>
      </div>
      <div class="count"><?= $data[ 'users' ] ?></div>
      
      <h3>Users</h3>
      <p>Lorem ipsum psdea itgum rixt.</p>
    </div>
  </div>
  <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
    <div class="tile-stats">
      <div class="icon"><i class="fa fa-eye"></i>
      </div>
      <div class="count"><?= $data[ 'views' ] ?></div>
      
      <h3>Page views</h3>
      <p>Lorem ipsum psdea itgum rixt.</p>
    </div>
  </div>
  <div class="animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12">
    <div class="tile-stats">
      <div class="icon"><i class="fa fa-plus"></i>
      </div>
      <div class="count"><?= round(intval($data[ 'new' ]), 2) ?> %</div>
      
      <h3>New sessions</h3>
      <p>Lorem ipsum psdea itgum rixt.</p>
    </div>
  </div>
</div>

<div class="row">
  <div class="col-md-12">
      <?php $panel = XPanel::begin(
          [
              'title'         => 'Analytics',
              'toolbarLayout' => false,
          ]
      ); ?>
      
      <?php
          $chartConfiguration = [
              'type'          => 'serial',
              'dataProvider'  => $data[ 'plot' ],
              'categoryField' => 'day',
              'categoryAxis'  => [
                  'labelFrequency' => 5,
              ],
              'graphs'        => [
                  [
                      "balloon"                     => [
                          "drop"              => true,
                          "adjustBorderColor" => false,
                          "color"             => "#ffffff",
                      ],
                      "bullet"                      => "round",
                      "bulletBorderAlpha"           => 1,
                      "bulletColor"                 => "#FFFFFF",
                      "bulletSize"                  => 5,
                      "hideBulletsCount"            => 50,
                      "lineThickness"               => 2,
                      "title"                       => "red line",
                      "useLineColorForBulletBorder" => true,
                      "valueField"                  => "users",
                      "balloonText"                 => "<span style='font-size:18px;'>Users: [[users]]</span>",
                      "lineColor"                   => '#9ABCC3',
                  ],
                  [
                      "balloon"                     => [
                          "drop"              => true,
                          "adjustBorderColor" => false,
                          "color"             => "#ffffff",
                      ],
                      "bullet"                      => "round",
                      "bulletBorderAlpha"           => 1,
                      "bulletColor"                 => "#FFFFFF",
                      "bulletSize"                  => 5,
                      "hideBulletsCount"            => 50,
                      "lineThickness"               => 2,
                      "title"                       => "red line",
                      "useLineColorForBulletBorder" => true,
                      "valueField"                  => "sessions",
                      "balloonText"                 => "<span style='font-size:18px;'>Sessions: [[sessions]]</span>",
                      "lineColor"                   => '#A8E3D6',
                  ],
              ],
              'chartCursor'   => [
                  "pan"                     => true,
                  "valueLineEnabled"        => true,
                  "valueLineBalloonEnabled" => true,
                  "cursorAlpha"             => 1,
                  "cursorColor"             => "#1ABB9C",
                  "limitToGraph"            => "g1",
                  "valueLineAlpha"          => 0.2,
                  "valueZoomable"           => true,
              ],
          ];
    
          echo Widget::widget(
              [
                  'chartConfiguration' => $chartConfiguration,
                  'width'              => '100%',
              ]
          );
      ?>
      
      <?php $panel::end(); ?>
  
  </div>
</div>

<div class="row">
  <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
      <?php $panel = XPanel::begin(
          [
              'title'         => 'Analytics',
              'toolbarLayout' => false,
          ]
      ); ?>
      
      <?php
          $chartConfiguration = [
              "type"         => "pie",
              "titleField"   => "category",
              "valueField"   => "column-1",
              "dataProvider" => [
                  [
                      "category" => "New Visitor",
                      "column-1" => round(intval($data[ 'new' ]), 2),
                  ],
                  [
                      "category" => "Returning Visitor",
                      "column-1" => 100 - round(intval($data[ 'new' ]), 2),
                  ],
              ],
              "colors"       => [
                  "#A8E3D6",
                  "#9ABCC3",
              ],
          ];
    
          echo Widget::widget(
              [
                  'chartConfiguration' => $chartConfiguration,
                  'width'              => '100%',
              ]
          );
      ?>
      
      <?php $panel::end(); ?>
  </div>
  
  <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
      
      <?php $panel = XPanel::begin(
          [
              'title'         => 'Analytics',
              'toolbarLayout' => false,
          ]
      ); ?>

      <?php
          echo Tabs::widget(
              [
                  'options' => [
                      'class' => 'bar_tabs',
                  ],
                  'items'   => [
                      [
                          'label'   => 'Browsers',
                          'content' => $this->render(
                              '_table',
                              [
                                  'data' => $browsers,
                                  'name' => 'Browser',
                              ]
                          ),
                          'active'  => true,
                      ],
                      [
                          'label'   => 'Cities',
                          'content' => $this->render(
                              '_table',
                              [
                                  'data' => $cityes,
                                  'name' => 'City',
                              ]
                          ),
                      ],
                      [
                          'label'   => 'Countries',
                          'content' => $this->render(
                              '_table',
                              [
                                  'data' => $countries,
                                  'name' => 'Country',
                              ]
                          ),
                      ],
                  ],
              ]
          );

      ?>
      
      <?php $panel::end(); ?>
  
  </div>

</div>