<?php
namespace Claromentis\OAuth2;

$GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"] ?: array()) + array("_7f628626dd1d" . "55c71b1fc0932" . "ffd1d2c" => base64_decode("aXNfY" . "XJyYX" . "k="), "i" . "d" => base64_decode("aW" . "Q="), "_2fcdfa6cef4413005aae9" . "ae3df6426e2" => base64_decode("b2F1dGhfY2x" . "pZW50cw=="), "_a591754a8ddcdbda9c80f1db4d91" . "1e14" => base64_decode("aXN" . "fbn" . "Vsb" . "A=="), "_8ff0c68bbee5fe19" . "849c7f82cd0d6a0f" => base64_decode("cmVkaXJlY3RfdXJpcw" . "=="), "_653c065ce13fcc898c85e35e3f0" . "ab5bc" => base64_decode("c2Vj" . "cmV0"), "_c372545d70ea3c51062f75445d68" . "7929" => base64_decode("REVMRVRFIEZST00gb2F1dGhfY2xpZW50X3JlZGlyZWN0X3VyaXMgV0hFUkUgY2xpZW50X2lkIG" . "VxOnN0cjpjaWQ="), "n" . "a" . "m" . "e" => base64_decode("bmF" . "tZQ" . "=="), "_803d546c35dc6bb74c3cd32b9" . "5fcac3e" => base64_decode("U0VMRUNUIHJlZGlyZWN0X3VyaSBGUk9NIG9hdXRoX2NsaWVudF9yZWRpcmVjdF91cmlzIFdIRVJFIGNsaWVudF9pZCBlcTpzdH" . "I6Y2lk"), "_70995c4fd2bccf" . "c9acaf06d844485" . "2c7" => base64_decode("SU5TRVJUIElOVE8gb2F1dGhfY2xpZW50X3JlZGlyZWN0X3VyaXM" . "gKGNsaWVudF9pZCwgcmVkaXJlY3RfdXJpKSBWQUxVRVMgKHN0cj" . "pjaWQsIHN0cjp1KQ=="));
use Claromentis\Core\DAL;
use Claromentis\Core\Services;
use ObjectsStorage;










class Client extends \ActiveRecord
{
    protected $redirect_uris = null;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function InitDbMapping(ObjectsStorage $storage)
    {
        $storage->MapDbTable($this, $GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_2fcdfa6cef4413005aae9a" . "e3df6426e2"], $GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["i" . "d"]);
        $storage->MapDbColumn($this, $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["i" . "d"], ObjectsStorage::T_STRING, 255);
        $storage->MapDbColumn($this, $GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["nam" . "e"], ObjectsStorage::T_STRING, 255);
        $storage->MapDbColumn($this, $GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_653c065ce13fcc8" . "98c85e35e3f0ab5b" . "c"], ObjectsStorage::T_STRING, 255);
    }
    
    
    
    
    public function GetRedirectURIs()
    {
        if ($GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"]["_a591754a8ddcdbda9c80f1db4" . "d911e14"]($this->redirect_uris)) {
            $db = Services::I()->GetDb();
            $_189840d11056515e52402d1412a0b6e4 = $db->query($GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["_803d546c35dc6bb74c3c" . "d32b95fcac3e"], $this->id);
            $this->redirect_uris = $_189840d11056515e52402d1412a0b6e4->fetchAllValues();
        }
        return $this->redirect_uris;
    }
    
    
    
    
    public function SetRedirectURIs($_688eb32b375d969d8f026c11a2cd33ea)
    {
        $this->redirect_uris = $_688eb32b375d969d8f026c11a2cd33ea;
    }
    public function Save()
    {
        if (!parent::Save()) {
            return false;
        }
        if ($GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_7f628626dd1d55c71b1fc" . "0932ffd1d2c"]($this->redirect_uris)) {
            $db = Services::I()->GetDb();
            $_15afa2d452391af5d01076584c0d792a = $this->id;
            $db->query($GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["_c372545d70ea3c5106" . "2f75445d687929"], $_15afa2d452391af5d01076584c0d792a);
            foreach ($this->redirect_uris as $_797ea62e9ab498d38c2781088fc553f6) {
                $db->query($GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["_70995c4fd2bccfc9a" . "caf06d8444852c7"], $_15afa2d452391af5d01076584c0d792a, $_797ea62e9ab498d38c2781088fc553f6);
            }
        }
        return true;
    }
    public function ResetSecret()
    {
        $this->SetProperty($GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_653c065ce13fc" . "c898c85e35e3f0" . "ab5bc"], \CryptUtils::GetRandomString());
    }
    public static function CreateNew($_24b81fd345b39bff8a1dfa1607826ec3)
    {
        
        
        $client = static::Create([$GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["i" . "d"] => \CryptUtils::GetRandomString() . \CryptUtils::GetRandomString(), $GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_653c065ce13fcc898c85e3" . "5e3f0ab5bc"] => \CryptUtils::GetRandomString(), $GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["na" . "me"] => $_24b81fd345b39bff8a1dfa1607826ec3[$GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["n" . "a" . "m" . "e"]]]);
        $client->SetRedirectURIs($_24b81fd345b39bff8a1dfa1607826ec3[$GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"]["_8ff0c68b" . "bee5fe198" . "49c7f82cd" . "0d6a0f"]]);
        return $client;
    }
}