* * The interactive user interfaces in modified source and object code versions * of this program must display Appropriate Legal Notices, as required under * Section 5 of the GNU Affero General Public License version 3. * * In accordance with Section 7(b) of the GNU Affero General Public License version 3, * these Appropriate Legal Notices must retain the display of the "Powered by * SugarCRM" logo. If the display of the logo is not reasonably feasible for * technical reasons, the Appropriate Legal Notices must display the words * "Powered by SugarCRM". ********************************************************************************/ // This file checks if the external accounts for the logged in user are still valid or not. // We only check oAuth logins right now, because usernames/passwords shouldn't really expire. require_once 'include/externalAPI/ExternalAPIFactory.php'; global $app_strings; $checkList = ExternalAPIFactory::listAPI('', true); if (!empty($_REQUEST['api'])) { // Check just one login type $newCheckList = array(); if (isset($checkList[$_REQUEST['api']])) { $newCheckList[$_REQUEST['api']] = $checkList[$_REQUEST['api']]; } $checkList = $newCheckList; } $failList = array(); if (is_array($checkList)) { foreach ($checkList as $apiName => $apiOpts) { if ($apiOpts['authMethod'] == 'oauth') { $api = ExternalAPIFactory::loadAPI($apiName); if (is_object($api)) { $loginCheck = $api->quickCheckLogin();
protected function getExternalApis() { $apis = ExternalAPIFactory::listAPI('Import', true); foreach ($apis as $name => $_) { if ($name == 'Google') { require_once 'include/externalAPI/Google/ExtAPIGoogle.php'; $api = new ExtAPIGoogle(); $client = $api->getClient(); $loginUrl = $client->createAuthUrl(); } else { $loginUrl = 'index.php?' . http_build_query(array('module' => 'EAPM', 'action' => 'EditView', 'application' => $name)); } $apis[$name]['loginUrl'] = $loginUrl; } return $apis; }