Commit 59a93b93b747e67c091e7c0b157cfaa58769f54d

Authored by Alex Savenko
1 parent 6981a7c2

ga

Showing 1 changed file with 73 additions and 73 deletions   Show diff stats
backend/views/report/index.php
@@ -32,76 +32,76 @@ $client->addScope(Google_Service_Analytics::ANALYTICS_READONLY); @@ -32,76 +32,76 @@ $client->addScope(Google_Service_Analytics::ANALYTICS_READONLY);
32 32
33 // Если пользователь уже авторизовал это приложение, предоставьте токен доступа. 33 // Если пользователь уже авторизовал это приложение, предоставьте токен доступа.
34 // В противном случае перенаправьте пользователя на страницу авторизации доступа в Google Analytics. 34 // В противном случае перенаправьте пользователя на страницу авторизации доступа в Google Analytics.
35 -//if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {  
36 -// // Установка токена доступа на клиентском компьютере.  
37 -// $client->setAccessToken($_SESSION['access_token']);  
38 -//  
39 -// // Создание авторизованного объекта службы аналитики.  
40 -// $analytics = new Google_Service_AnalyticsReporting($client);  
41 -//  
42 -// // Вызов the Analytics Reporting API V4.  
43 -// $response = getReport($analytics);  
44 -//  
45 -// // Вывод ответа.  
46 -// printResults($response);  
47 -//  
48 -//} else {  
49 -// $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . '/oauth2callback.php';  
50 -// header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));  
51 -//}  
52 -  
53 -  
54 -//function getReport($analytics) {  
55 -//  
56 -// // Замена на свой идентификатор представления, напр. XXXX.  
57 -// $VIEW_ID = "<REPLACE_WITH_VIEW_ID>";  
58 -//  
59 -// // Создание объекта DateRange.  
60 -// $dateRange = new Google_Service_AnalyticsReporting_DateRange();  
61 -// $dateRange->setStartDate("7daysAgo");  
62 -// $dateRange->setEndDate("today");  
63 -//  
64 -// // Создание объекта Metrics.  
65 -// $sessions = new Google_Service_AnalyticsReporting_Metric();  
66 -// $sessions->setExpression("ga:sessions");  
67 -// $sessions->setAlias("sessions");  
68 -//  
69 -// // Создание объекта ReportRequest.  
70 -// $request = new Google_Service_AnalyticsReporting_ReportRequest();  
71 -// $request->setViewId($VIEW_ID);  
72 -// $request->setDateRanges($dateRange);  
73 -// $request->setMetrics(array($sessions));  
74 -//  
75 -// $body = new Google_Service_AnalyticsReporting_GetReportsRequest();  
76 -// $body->setReportRequests( array( $request) );  
77 -// return $analytics->reports->batchGet( $body );  
78 -//}  
79 -  
80 -//function printResults($reports) {  
81 -// for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {  
82 -// $report = $reports[ $reportIndex ];  
83 -// $header = $report->getColumnHeader();  
84 -// $dimensionHeaders = $header->getDimensions();  
85 -// $metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();  
86 -// $rows = $report->getData()->getRows();  
87 -//  
88 -// for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {  
89 -// $row = $rows[ $rowIndex ];  
90 -// $dimensions = $row->getDimensions();  
91 -// $metrics = $row->getMetrics();  
92 -// for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {  
93 -// print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n");  
94 -// }  
95 -//  
96 -// for ($j = 0; $j < count( $metricHeaders ) && $j < count( $metrics ); $j++) {  
97 -// $entry = $metricHeaders[$j];  
98 -// $values = $metrics[$j];  
99 -// print("Metric type: " . $entry->getType() . "\n" );  
100 -// for ( $valueIndex = 0; $valueIndex < count( $values->getValues() ); $valueIndex++ ) {  
101 -// $value = $values->getValues()[ $valueIndex ];  
102 -// print($entry->getName() . ": " . $value . "\n");  
103 -// }  
104 -// }  
105 -// }  
106 -// }  
107 -//} 35 +if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
  36 + // Установка токена доступа на клиентском компьютере.
  37 + $client->setAccessToken($_SESSION['access_token']);
  38 +
  39 + // Создание авторизованного объекта службы аналитики.
  40 + $analytics = new Google_Service_AnalyticsReporting($client);
  41 +
  42 + // Вызов the Analytics Reporting API V4.
  43 + $response = getReport($analytics);
  44 +
  45 + // Вывод ответа.
  46 + printResults($response);
  47 +
  48 +} else {
  49 + $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . '/oauth2callback.php';
  50 + header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
  51 +}
  52 +
  53 +
  54 +function getReport($analytics) {
  55 +
  56 + // Замена на свой идентификатор представления, напр. XXXX.
  57 + $VIEW_ID = "119240817";
  58 +
  59 + // Создание объекта DateRange.
  60 + $dateRange = new Google_Service_AnalyticsReporting_DateRange();
  61 + $dateRange->setStartDate("7daysAgo");
  62 + $dateRange->setEndDate("today");
  63 +
  64 + // Создание объекта Metrics.
  65 + $sessions = new Google_Service_AnalyticsReporting_Metric();
  66 + $sessions->setExpression("ga:sessions");
  67 + $sessions->setAlias("sessions");
  68 +
  69 + // Создание объекта ReportRequest.
  70 + $request = new Google_Service_AnalyticsReporting_ReportRequest();
  71 + $request->setViewId($VIEW_ID);
  72 + $request->setDateRanges($dateRange);
  73 + $request->setMetrics(array($sessions));
  74 +
  75 + $body = new Google_Service_AnalyticsReporting_GetReportsRequest();
  76 + $body->setReportRequests( array( $request) );
  77 + return $analytics->reports->batchGet( $body );
  78 +}
  79 +
  80 +function printResults($reports) {
  81 + for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {
  82 + $report = $reports[ $reportIndex ];
  83 + $header = $report->getColumnHeader();
  84 + $dimensionHeaders = $header->getDimensions();
  85 + $metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();
  86 + $rows = $report->getData()->getRows();
  87 +
  88 + for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {
  89 + $row = $rows[ $rowIndex ];
  90 + $dimensions = $row->getDimensions();
  91 + $metrics = $row->getMetrics();
  92 + for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
  93 + print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n");
  94 + }
  95 +
  96 + for ($j = 0; $j < count( $metricHeaders ) && $j < count( $metrics ); $j++) {
  97 + $entry = $metricHeaders[$j];
  98 + $values = $metrics[$j];
  99 + print("Metric type: " . $entry->getType() . "\n" );
  100 + for ( $valueIndex = 0; $valueIndex < count( $values->getValues() ); $valueIndex++ ) {
  101 + $value = $values->getValues()[ $valueIndex ];
  102 + print($entry->getName() . ": " . $value . "\n");
  103 + }
  104 + }
  105 + }
  106 + }
  107 +}