示例#1
0
 * 
 * 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();
示例#2
0
 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;
 }