public static function initClients() { // Only init once if not loaded from config. if (!empty(static::$__clients)) { return; } // Load servers from database. $servers = OauthServer::allServers(); foreach ($servers as $serv) { // Get properties. $server = $serv->server; if (!isset(static::$_servers[$server])) { continue; } $class = static::$_servers[$server]; $client_id = $serv->client_id; $client_secret = $serv->client_secret; if (!$client_id || !$client_secret) { continue; } // Setup keys for the different servers. if (is_subclass_of($class, 'yii\\authclient\\OAuth2')) { static::$__clients[$server] = ['class' => $class, 'clientId' => $client_id, 'clientSecret' => $client_secret]; } elseif (is_subclass_of($class, 'yii\\authclient\\OAuth1')) { static::$__clients[$server] = ['class' => $class, 'consumerKey' => $client_id, 'consumerSecret' => $client_secret]; } } }
public function initFromDB() { $servers = OauthServer::allServers(); foreach ($servers as $server) { $propPre = $this->keyToProp($server->server); $propCliendID = $propPre . '_client_id'; $propCliendSecret = $propPre . '_client_secret'; if (!$this->hasProperty($propCliendID) || !$this->hasProperty($propCliendSecret)) { continue; } $this->{$propCliendID} = $server->client_id; $this->{$propCliendSecret} = $server->client_secret; } }