[
'class' => AccessControl::className(),
'only' => ['logout'],
'rules' => [
[
'actions' => ['logout'],
'allow' => true,
'roles' => ['@'],
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['post'],
],
],
];
}
/**
* {@inheritdoc}
*/
public function actions()
{
return [
'error' => [
'class' => 'yii\web\ErrorAction',
],
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
],
];
}
public function actionContentpage(){
$pages=ContentPage::find()->asArray()->all();
\Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
return [
'code' => 200,
'data'=>$pages,
'status'=>true
];
}
public function actionSynsdata(){
$ga=new GA();
$store="supernova";
$contentpages=$ga->contentpages($store);
$i=1;
$limit=20;
$modelKey=[
'pagePath',
'store',
'date',
'pageviews',
'uniquePageviews',
'avgTimeOnPage',
'entrances',
'bounceRate',
'exitRate',
'pageValue',
'created_at',
];
if(!empty($contentpages)){
$list=[];
foreach($contentpages as $k=>$v){
$item=[
$v['pagePath'],
$store,
date('y-m-d',strtotime($v['date'])),
$v['pageviews'],
$v['uniquePageviews'],
$v['avgTimeOnPage'],
$v['entrances'],
$v['bounceRate'],
$v['exitRate'],
$v['pageValue'],
time(),
];
$list[]=$item;
if($i%$limit==0||$i==count($contentpages)){
\Yii::$app->db->createCommand()->batchInsert(ContentPage::tableName(), $modelKey, $list)->execute();
$list=[];
echo 111111;exit;
}
$i++;
}
}
echo 111111;exit;
}
/**
* Parses and prints the Analytics Reporting API V4 response.
*
* @param An Analytics Reporting API V4 response.
*/
function printResults($reports) {
for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {
$report = $reports[ $reportIndex ];
$header = $report->getColumnHeader();
$dimensionHeaders = $header->getDimensions();
$metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();
$rows = $report->getData()->getRows();
for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {
$row = $rows[ $rowIndex ];
$dimensions = $row->getDimensions();
$metrics = $row->getMetrics();
if($dimensionHeaders&&$dimensions){
for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n\r");
echo"
";
}
}
if($metricHeaders&&$metrics){
for ($j = 0; $j < count($metrics); $j++) {
$values = $metrics[$j]->getValues();
for ($k = 0; $k < count($values); $k++) {
$entry = $metricHeaders[$k];
print($entry->getName() . ": " . $values[$k] . "\n\r");
echo"
";
}
}
}
}
}
}
function getResults($reports) {
$data=[];
for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {
$item=[];
$report = $reports[ $reportIndex ];
$header = $report->getColumnHeader();
$dimensionHeaders = $header->getDimensions();
$metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();
$rows = $report->getData()->getRows();
for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {
$row = $rows[ $rowIndex ];
$dimensions = $row->getDimensions();
$metrics = $row->getMetrics();
// echo "
";
if($dimensionHeaders&&$dimensions){
// for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
// $list[$dimensionHeaders[$i]]=
// print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n\r");
// echo"
";
// }
$date=$dimensions[0];
$date=date('Y-m-d',strtotime($date));
}else{
continue;
}
if($metricHeaders&&$metrics){
for ($j = 0; $j < count($metrics); $j++) {
$values = $metrics[$j]->getValues();
for ($k = 0; $k < count($values); $k++) {
$entry = $metricHeaders[$k];
$data[$date][$entry->getName()]=$values[$k];
// print($entry->getName() . ": " . $values[$k] . "\n\r");
// echo"
";
}
}
}
}
}
return $data;
}
}