analytics.php 6.02 KB
<?php
    /**
     * @var View  $this
     * @var array $data
     */
    
    use artbox\gentelella\widgets\XPanel;
    use dosamigos\highcharts\HighCharts;
    use yii\bootstrap\Html;
    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
          echo HighCharts::widget(
              [
                  'clientOptions' => [
                      'colors'      => [
                          '#9ABCC3',
                          '#A8E3D6',
                      ],
                      'chart'       => [
                          'type'     => 'area',
                          'zoomType' => 'x',
                      ],
                      'title'       => [
                          'text' => 'Analytics',
                      ],
                      'yAxis'       => [
                          'title' => [
                              'text' => 'Sessions count',
                          ],
                      ],
                      'series'      => [
                          [
                              'name' => 'Sessions',
                              'data' => $data[ 0 ],
                          ],
                          [
                              'name' => 'Users',
                              'data' => $data[ 1 ],
                          ],
                      ],
                      'credits'     => [
                          'enabled' => false,
                      ],
                      'plotOptions' => [
                          'area' => [
                              'marker' => [
                                  'enabled' => false,
                                  'symbol'  => 'circle',
                                  'radius'  => 2,
                                  'states'  => [
                                      'hover' => [
                                          'enabled' => true,
                                      ],
                                  ],
                              ],
                          ],
                      ],
                  ],
              ]
          );
      ?>
      
      <?php $panel::end(); ?>
  
  </div>
</div>

<div class="row">
  <div class="col-lg-5 col-md-5 col-sm-12 col-xs-12">
      <?php $panel = XPanel::begin(
          [
              'title'         => 'Analytics',
              'toolbarLayout' => false,
          ]
      ); ?>
      
      <?php
          echo HighCharts::widget(
              [
                  'clientOptions' => [
                      'exporting'   => [
                          'enabled' => false,
                      ],
                      'colors'      => [
                          '#9ABCC3',
                          '#A8E3D6',
                      ],
                      'chart'       => [
                          'plotBackgroundColor' => null,
                          'plotBorderWidth'     => null,
                          'plotShadow'          => false,
                          'type'                => 'pie',
                      ],
                      'title'       => [
                          'text' => 'Analytics',
                      ],
                      'series'      => [
                          [
                              'name' => 'Sessions',
                              'data' => [
                                  [
                                      'name' => 'New visitor',
                                      'y'    => round(intval($data[ 'new' ]), 2),
                                  ],
                                  [
                                      'name' => 'Returning Visitor',
                                      'y'    => 100 - round(intval($data[ 'new' ]), 2),
                                  ],
                              ],
                          ],
                      ],
                      'credits'     => [
                          'enabled' => false,
                      ],
                      'plotOptions' => [
                          'pie' => [
                              'allowPointSelect' => true,
                              'cursor'           => 'pointer',
                          ],
                      ],
                  ],
              ]
          );
      ?>
      
      <?php $panel::end(); ?>
  </div>
  
  <div class="col-lg-7 col-md-7 col-sm-12 col-xs-12">
      
      <?php $panel = XPanel::begin(
          [
              'title'         => 'Analytics',
              'toolbarLayout' => false,
          ]
      ); ?>
      
      <?php Tabs::widget(); ?>
      
      <?php $panel::end(); ?>
  
  </div>

</div>