rivervanrain / google_api
Google API, Client and Services for Elgg
Installs: 1
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:elgg-plugin
Requires
- php: ^8.2
- google/apiclient: ^2.15.0
Conflicts
- elgg/elgg: <5.1
This package is auto-updated.
Last update: 2024-12-11 13:06:14 UTC
README
Google API, Client and Services for Elgg
Developers
- Google JSON key dir:
elgg_get_data_path() . 'google/google_key.json';
How to get Google JSON credentials
- Google API Aliases
$classMap = [ 'Google\\Client' => 'Google_Client', 'Google\\Service' => 'Google_Service', 'Google\\AccessToken\\Revoke' => 'Google_AccessToken_Revoke', 'Google\\AccessToken\\Verify' => 'Google_AccessToken_Verify', 'Google\\Model' => 'Google_Model', 'Google\\Utils\\UriTemplate' => 'Google_Utils_UriTemplate', 'Google\\AuthHandler\\Guzzle6AuthHandler' => 'Google_AuthHandler_Guzzle6AuthHandler', 'Google\\AuthHandler\\Guzzle7AuthHandler' => 'Google_AuthHandler_Guzzle7AuthHandler', 'Google\\AuthHandler\\Guzzle5AuthHandler' => 'Google_AuthHandler_Guzzle5AuthHandler', 'Google\\AuthHandler\\AuthHandlerFactory' => 'Google_AuthHandler_AuthHandlerFactory', 'Google\\Http\\Batch' => 'Google_Http_Batch', 'Google\\Http\\MediaFileUpload' => 'Google_Http_MediaFileUpload', 'Google\\Http\\REST' => 'Google_Http_REST', 'Google\\Task\\Retryable' => 'Google_Task_Retryable', 'Google\\Task\\Exception' => 'Google_Task_Exception', 'Google\\Task\\Runner' => 'Google_Task_Runner', 'Google\\Collection' => 'Google_Collection', 'Google\\Service\\Exception' => 'Google_Service_Exception', 'Google\\Service\\Resource' => 'Google_Service_Resource', 'Google\\Exception' => 'Google_Exception', ];
Usage
Add Google API key and import Google JSON credentials.
Now you can use Google services.
Here is an example for Google Service Sheets:
// Get the API client and construct the service object. $api_key = elgg_get_plugin_setting('api_key','google_api'); // Initialize Google Client $client = new \Google_Client(); $client->setDeveloperKey($api_key); $client->setApplicationName('my_app'); $client->setScopes(\Google_Service_Sheets::SPREADSHEETS); $client->setAccessType('offline'); // Authorize Google Client $data = elgg_get_data_path() . 'google/google_key.json'; $client->setAuthConfig(json_decode($data, true)); // Initialize Google service $service = new \Google_Service_Sheets($client);