<?php

require '../vendor/autoload.php';
require '../src/Mechastorm/Google/ApiHelper.php';
require '../src/Mechastorm/Google/Spreadsheet/Data/Exporter.php';
require '../src/Mechastorm/Google/Spreadsheet/Data/FormatWriters/LocalePhpFile.php';
require '../src/Mechastorm/Google/Spreadsheet/Data/Transformers/LocalePhpArray.php';
use Mechastorm\Google\ApiHelper;
use Mechastorm\Google\Spreadsheet\Data\Exporter;
use Mechastorm\Google\Spreadsheet\Data\FormatWriters\LangPhpWriter;
use Mechastorm\Google\Spreadsheet\Data\Transformers\LocalePhpArray;
// Get the json encoded access token.
$authResponse = ApiHelper::getAuthByServiceAccount(array('application_name' => 'name_of_application', 'client_id' => 'service_account_client_id', 'client_email' => 'service_account_client_email', 'key_file_location' => 'location-to-your-private-key-p12-file'));
$accessToken = $authResponse->access_token;
echo 'Service Account Access Token: ' . $accessToken;
$gSSExporter = new Exporter(array('access_token' => $accessToken, 'spreadsheet_name' => 'google-spreadsheet-exporter Sample Spreadsheet'));
$gSSExporter->setWorksheets();
$transformer = new LocalePhpArray(array('locales' => array('en_GB', 'fr_CA', 'my_MY', 'ja_JP')));
$outputFolder = '../output';
$writer = new LangPhpWriter(array('path' => $outputFolder));
$gSSExporter->processWorksheets(array('Web Copy'), $transformer, $writer);
echo "Done - please check {$outputFolder} for the files\n";
 private function getGoogleApiAccessToken()
 {
     $oauthSettings = $this->app['config']['laravel-lang-google-spreadsheet-importer::oauth'];
     $authResponse = ApiHelper::getAuthByServiceAccount($oauthSettings);
     return $authResponse->access_token;
 }