Commit a2842f96402dbe1ae343140f65732d58ae55008b
1 parent
59a93b93
ga
Showing
2 changed files
with
21 additions
and
1 deletions
Show diff stats
backend/controllers/ReportController.php
... | ... | @@ -18,4 +18,24 @@ class ReportController extends Controller |
18 | 18 | return $this->render('index', [ |
19 | 19 | ]); |
20 | 20 | } |
21 | + | |
22 | + public function actionCallback() { | |
23 | + // Создание объекта клиента и установка конфигурации авторизации | |
24 | + // из файла client_secrets.json, скачанного из Developers Console. | |
25 | + $client = new Google_Client(); | |
26 | + $client->setAuthConfig(__DIR__ . '/client_secrets.json'); | |
27 | + $client->setRedirectUri('http://' . $_SERVER['HTTP_HOST'] . '/admin/report/callback'); | |
28 | + $client->addScope(Google_Service_Analytics::ANALYTICS_READONLY); | |
29 | + | |
30 | + // Выполнение процесса авторизации с сервера. | |
31 | + if (! isset($_GET['code'])) { | |
32 | + $auth_url = $client->createAuthUrl(); | |
33 | + header('Location: ' . filter_var($auth_url, FILTER_SANITIZE_URL)); | |
34 | + } else { | |
35 | + $client->authenticate($_GET['code']); | |
36 | + $_SESSION['access_token'] = $client->getAccessToken(); | |
37 | + $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . '/'; | |
38 | + header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL)); | |
39 | + } | |
40 | + } | |
21 | 41 | } |
22 | 42 | \ No newline at end of file | ... | ... |
backend/views/report/index.php
... | ... | @@ -46,7 +46,7 @@ if (isset($_SESSION['access_token']) && $_SESSION['access_token']) { |
46 | 46 | printResults($response); |
47 | 47 | |
48 | 48 | } else { |
49 | - $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . '/oauth2callback.php'; | |
49 | + $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . '/admin/report/callback'; | |
50 | 50 | header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL)); |
51 | 51 | } |
52 | 52 | ... | ... |