Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php namespace Drupal\miniorange_oauth_client\Controller; use Drupal\user\Entity\..
Decoded Output download
<?php
namespace Drupal\miniorange_oauth_client\Controller;
use Drupal\user\Entity\User;
use Drupal\Component\Utility\Html;
use Drupal\Core\Controller\ControllerBase;
use Drupal\miniorange_oauth_client\Utilities;
use Symfony\Component\HttpFoundation\Response;
use Drupal\miniorange_oauth_client\DBQueries;
use Drupal\Core\Url;
use Drupal\miniorange_oauth_client\appValues;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Drupal\miniorange_oauth_client\GrantTypes\HandleJWT;
use Drupal\miniorange_oauth_client\MiniorangeOAuthClientCustomer;
use Drupal\profile\Entity\Profile;
use Drupal\Core\Ajax\AjaxResponse;
use Drupal\Core\Ajax\OpenModalDialogCommand;
use Drupal\miniorange_oauth_client\GrantTypes\ImplicitGrant;
use Drupal\miniorange_oauth_client\MiniorangeOAuthRoleRestriction;
use Drupal\miniorange_oauth_client\mOOAuthLogout;
use Drupal\miniorange_oauth_client\mOUserRegistration;
use Drupal\profile\Entity\ProfileType;
use Drupal\Core\Entity\EntityStorageException;
class miniorange_oauth_clientController extends ControllerBase
{
public static function miniorange_oauth_client_mo_login()
{
$BG = \Drupal::service("session");
$mQ = \Drupal::moduleHandler();
$IR = \Drupal::service("current_route_match")->getParameter("app_name");
if (!(session_status() == PHP_SESSION_NONE)) {
goto vi;
}
session_start();
vi:
if (!(!empty($IR) && (new appValues($IR))->grantTypevalue == "implicit")) {
goto j2;
}
if (!(isset($_SERVER["QUERY_STRING"]) && !empty($_SERVER["QUERY_STRING"]))) {
goto Hi;
}
$Ww = $_GET;
Hi:
if (!(!isset($_COOKIE["login_query"]) && empty($_SERVER["QUERY_STRING"]))) {
goto KS;
}
echo "<script type="text/javascript">\xd\xa var qfragment = window.location.hash;\xd\xa const currentpath = window.location.protocol + window.location.pathname;
qfragment = qfragment.split("#")[1];
document.cookie = "login_query=" + qfragment;\xd\xa window.location.href = currentpath + "?" + qfragment;\xd
</script>";
exit;
KS:
if (!(isset($_COOKIE["login_query"]) && !empty($_COOKIE["login_query"]))) {
goto rv;
}
$AH = $_COOKIE["login_query"];
$IT = explode("&", $AH);
$Ww = [];
foreach ($IT as $wZ) {
$C3 = explode("=", $wZ);
if (!(sizeof($C3) > 1)) {
goto Ho;
}
$Ww[$C3[0]] = $C3[1];
Ho:
Ln:
}
Z9:
rv:
$mQ->invokeAll("mo_pre_auth_response_process", [$Ww]);
ImplicitGrant::validate_token_and_state($Ww);
$xM = isset($Ww["state"]) ? $Ww["state"] : '';
$KL = Utilities::decodeState($xM);
$GF = isset($KL["testsso"]) ? $KL["testsso"] === true ? true : false : false;
$tw = $BG->get("appname");
$PN = new appValues($tw);
$Qq = $PN->get_appType();
$U1 = $PN->loginflowtype;
if ($Qq == "Custom_Open_id" || $U1 == "OpenID") {
goto uK;
}
$d0 = isset($Ww["access_token"]) && !empty($Ww["access_token"]) ? $Ww["access_token"] : '';
goto bL;
uK:
$d0 = isset($Ww["id_token"]) && !empty($Ww["id_token"]) ? $Ww["id_token"] : '';
bL:
if (!(empty($d0) && isset($Ww["token"]) && !empty($Ww["token"]))) {
goto jY;
}
$d0 = $Ww["token"];
jY:
Utilities::save_tokens_in_cookie_and_session($Ww, new appValues($tw), $GF);
$Zi = new ImplicitGrant($tw);
return $Zi->mo_oauth_client_mo_login($PN, $d0, $Ww);
j2:
$mQ->invokeAll("mo_pre_auth_response_process", [$_GET]);
$rI = isset($_GET["code"]) ? $_GET["code"] : '';
$rI = Html::escape($rI);
$xM = isset($_GET["state"]) ? $_GET["state"] : '';
$xM = Html::escape($xM);
$KL = Utilities::decodeState($xM);
$GF = isset($KL["testsso"]) ? $KL["testsso"] === true ? true : false : false;
$IR = self::validate_code_and_state($rI, $xM, $GF);
$BG->remove("oauth2state");
$PN = new appValues($IR);
$Qq = $PN->get_appType();
$U1 = $PN->loginflowtype;
[$CK, $uE] = $Qq == "Custom_Open_id" || $U1 == "OpenID" ? self::implement_openid_flow($PN, $rI, '', $GF) : self::implement_oauth_flow($PN, $rI, '', $GF);
$N8 = self::flattenArray($uE);
if (!($GF || isset($_COOKIE["mo_testConfig"]))) {
goto IR;
}
self::Test_Configuration($N8, $PN->appName);
IR:
return self::performSSOinDrupal($uE, $N8, $PN, $CK, $xM);
}
public static function flattenArray($mu, $av = '')
{
$s0 = array();
foreach ($mu as $C3 => $wZ) {
$ZI = $av . $C3;
if (is_array($wZ)) {
goto qa;
}
$s0[$ZI] = $wZ;
goto ww;
qa:
$s0 = array_merge($s0, self::flattenArray($wZ, $ZI . ">"));
ww:
v5:
}
bc:
return $s0;
}
public static function mo_oauth_attr_map($dm, $Zw, $KP = "attr")
{
$uk = array();
foreach ($dm as $C3 => $wZ) {
if (!(!empty($wZ) && !empty($Zw[$C3]))) {
goto K9;
}
if (array_key_exists($wZ, $uk) && $KP == "role") {
goto FW;
}
$uk[trim($wZ, " ")] = $Zw[$C3];
goto SO;
FW:
if ($uk[$wZ][-1] != ";") {
goto W2;
}
$uk[trim($wZ, " ")] = $uk[$wZ] . $Zw[$C3];
goto F5;
W2:
$uk[trim($wZ, " ")] = $uk[$wZ] . ";" . $Zw[$C3];
F5:
SO:
K9:
St:
}
Jy:
return $uk;
}
public static function to_explode_semicolon($wh)
{
$YQ = array();
foreach ($wh as $C3 => $vi) {
$vi = explode(";", $vi);
$YQ[$C3] = $vi;
za:
}
Z7:
return $YQ;
}
public static function create_profile($Pv, $nV, $PN)
{
if (\Drupal::service("module_handler")->moduleExists("profile")) {
goto fH;
}
return new Response();
fH:
$XZ = $PN->enable_profile_mapping;
if ($XZ) {
goto T9;
}
return new Response();
T9:
$mM = $PN->profile_entity_type;
$P3 = isset($nV->toArray()[$mM . "_profiles"][0]) ? $nV->toArray()[$mM . "_profiles"][0]["target_id"] : NULL;
$sa = ProfileType::load($mM);
$nt = $sa->toArray()["roles"];
$yw = $nV->getRoles();
if (!(!empty(array_intersect($nt, $yw)) || empty($nt))) {
goto N2;
}
if (!is_null($P3)) {
goto j9;
}
try {
$Y_ = Profile::create(["type" => $mM, "uid" => $nV->id(), "field_agree_terms" => 1]);
$Y_->save();
$P3 = $Y_->toArray()["profile_id"][0]["value"];
} catch (EntityStorageException $ia) {
\Drupal::logger("miniorange_oauth_client")->notice("EntityStorageException: Error while creating and saving the profile type.");
}
j9:
if (empty($Pv)) {
goto c7;
}
foreach ($Pv as $C3 => $wZ) {
$Y_ = Profile::load($P3);
$Y_->set($C3, $wZ);
da:
}
SM:
$Y_->save();
c7:
N2:
}
public static function perform_role_mapping($PN, $Tc, $nV, $rq, $NC = '')
{
$F6 = $PN->get_roleAttribute();
$dX = $PN->get_enableRolemapping();
$TF = $PN->get_disableRoleUpdate();
$w4 = $PN->get_roleMap();
$w4 = !empty($w4) ? $w4 : array();
$d7 = array();
$tK = array();
foreach ($w4 as $C3) {
if (!($C3["user_sp_role_name"] != '' && $C3["user_idp_role_name"] != '')) {
goto EQ;
}
array_push($d7, $C3["user_sp_role_name"]);
array_push($tK, $C3["user_idp_role_name"]);
EQ:
m2:
}
E3:
$HQ = self::mo_oauth_attr_map($d7, $tK, "role");
$Ds = array();
if (!is_array($rq) && !empty($rq)) {
goto NH;
}
$Ds = is_array($rq) ? $rq : [];
goto p0;
NH:
$rq = str_replace(["[", "]"], '', $rq);
$rq = explode(",", $rq);
foreach ($rq as $C3 => $wZ) {
$Ds[] = str_replace(""", '', trim($wZ));
va:
}
pH:
p0:
if (!($dX && !is_null($F6) && !empty($F6))) {
goto SF;
}
$Cg = $nV->getRoles();
if ($TF) {
goto Rt;
}
foreach ($Cg as $C3 => $wZ) {
if (in_array($wZ, array_keys($HQ))) {
goto Hg;
}
if (!($wZ != $PN->get_defaultRole())) {
goto ZJ;
}
$nV->removeRole($wZ);
$nV->save();
ZJ:
Hg:
tw:
}
H8:
Rt:
foreach ($HQ as $C3 => $wZ) {
$eB = FALSE;
$K4 = explode(";", $wZ);
foreach ($K4 as $Kr => $sQ) {
if (strpos($sQ, "&") !== false) {
goto pw;
}
if (!in_array($sQ, $Ds)) {
goto tv;
}
$eB = TRUE;
goto Kh;
tv:
goto N1;
pw:
$l0 = true;
$Kf = explode("&", $sQ);
foreach ($Kf as $l2 => $DD) {
if (in_array($DD, $Ds)) {
goto p7;
}
$l0 = false;
goto ZR;
p7:
Fq:
}
ZR:
$eB = $l0 ? TRUE : FALSE;
if (!$eB) {
goto TS;
}
goto Kh;
TS:
N1:
fi:
}
Kh:
if ($eB && $C3 != "authenticated") {
goto Ud;
}
$nV->removeRole($C3);
$nV->save();
goto kf;
Ud:
$nV->addRole($C3);
$nV->save();
kf:
Er:
}
U6:
SF:
}
public static function getToken($FD, $ok, $DT, $sm, $rI, $eu, $QE, $FL, $IR, $GF = false, $YI = '')
{
$base_url = \Drupal::request()->getSchemeAndHttpHost() . \Drupal::request()->getBasePath();
$BG = \Drupal::service("session");
$PN = new appValues($IR);
$Wy = array();
$KM = $PN->scope;
if ($ok == "authorization_code_with_pkce") {
goto LW;
}
if ($ok == "refresh_token") {
goto aR;
}
if ($QE && !$FL) {
goto T1;
}
if (!$QE && $FL) {
goto X5;
}
$Wy = Utilities::callService($FD, "redirect_uri=" . urlencode($eu) . "&grant_type=" . $ok . "&client_id=" . urlencode($DT) . "&client_secret=" . urlencode($sm) . "&code=" . $rI, array("Authorization" => "Basic " . base64_encode($DT . ":" . $sm), "Accept" => "application/json", "Content-Type" => "application/x-www-form-urlencoded"), '', $GF);
goto oq;
X5:
$Wy = Utilities::callService($FD, "redirect_uri=" . urlencode($eu) . "&grant_type=" . $ok . "&client_id=" . urlencode($DT) . "&client_secret=" . urlencode($sm) . "&code=" . $rI, array("Accept" => "application/json", "Content-Type" => "application/x-www-form-urlencoded"), '', $GF);
oq:
goto CQ;
T1:
$Wy = Utilities::callService($FD, "redirect_uri=" . urlencode($eu) . "&grant_type=" . $ok . "&code=" . $rI, array("Authorization" => "Basic " . base64_encode($DT . ":" . $sm), "Accept" => "application/json", "Content-Type" => "application/x-www-form-urlencoded"), '', $GF);
CQ:
goto s7;
LW:
$NZ = $BG->get("codeVerifier");
$BG->remove("codeVerifier");
$Wy = Utilities::callService($FD, "redirect_uri=" . urlencode($eu) . "&grant_type=authorization_code" . "&code=" . $rI . "&code_verifier=" . $NZ . "&client_id=" . urlencode($DT), array("Accept" => "application/json", "Content-Type" => "application/x-www-form-urlencoded", "Origin" => $base_url), '', $GF);
goto s7;
aR:
$MY = [];
$p5 = "redirect_uri=" . urlencode($eu) . "&grant_type=" . $ok . "&refresh_token=" . $YI;
if (!$QE) {
goto zs;
}
$MY = ["Authorization" => "Basic " . base64_encode($DT . ":" . $sm), "Accept" => "application/json", "Content-Type" => "application/x-www-form-urlencoded"];
zs:
if (!$FL) {
goto j_;
}
$p5 = $p5 . "&client_id=" . urlencode($DT) . "&client_secret=" . urlencode($sm);
j_:
$Wy = Utilities::callService($FD, $p5, $MY, '', $GF);
s7:
$HP = json_decode($Wy, true);
if (isset($HP["access_token"]) || isset($HP["id_token"])) {
goto iy;
}
\Drupal::logger("miniorange_oauth_client")->error("Invalid response received while fetching access token from url-<br> {$FD} <br><br> Response => <pre><code>" . print_r($HP, TRUE) . "<pre><code>");
if ($ok == "refresh_token") {
goto CV;
}
if ($GF) {
goto fl;
}
Utilities::anonymousRedirect('', '', "Something went wrong, Please contact the site administrator.");
goto u8;
CV:
\Drupal::logger("mo_session_manager")->warning("access token renewal failed.<br> response = '%response' ", ["%response" => print_r($HP, TRUE)]);
goto u8;
fl:
Utilities::show_error_message_testconfig("Invalid response received while fetching access token from url-<br>{$FD} <br><br> Response => <pre><code>" . print_r($HP, TRUE) . "<pre><code>");
u8:
iy:
Utilities::save_tokens_in_cookie_and_session($HP, new appValues($IR), $GF);
return $HP;
}
public static function validate_code_and_state($rI, $xM, $GF)
{
$BG = \Drupal::service("session");
if (empty($rI)) {
goto Uw;
}
if (empty($xM)) {
goto wp;
}
$IR = '';
$xM = Utilities::decodeState($xM);
if (!empty($BG->get("appname"))) {
goto FB;
}
if (!(isset($xM["appname"]) && !empty($xM["appname"]))) {
goto Kg;
}
$IR = $xM["appname"];
Kg:
goto Hj;
FB:
$IR = $BG->get("appname");
Hj:
if (!empty($IR)) {
goto xQ;
}
\Drupal::logger("miniorange_oauth_client")->error("Invalid state parameter");
if ($GF) {
goto R_;
}
Utilities::anonymousRedirect();
goto Ys;
R_:
Utilities::show_error_message_testconfig("Invalid state parameter");
Ys:
xQ:
goto Og;
Uw:
\Drupal::logger("miniorange_oauth_client")->error("<pre><code>" . print_r($_GET, true) . "<pre><code>");
if ($GF) {
goto T0;
}
Utilities::anonymousRedirect();
goto Ru;
T0:
Utilities::show_error_message_testconfig("<pre><code>" . print_r($_GET, true) . "<pre><code>");
Ru:
goto Og;
wp:
$lD = DBQueries::get_all_app_names_with_oauth_login_enabled();
return $lD[0]->app_name;
Og:
return $IR;
}
public static function implement_openid_flow($PN, $tX = '', $JK = '', $GF = false)
{
$rI = $tX;
$do = $PN->get_valuesInHeader();
$dG = $PN->get_valuesInBody();
$ok = $PN->grantTypevalue;
$rI = $tX;
$qO = Utilities::getCallbackUrl($PN->appName);
if (!(!$do == TRUE || !$do == 1)) {
goto zv;
}
$do = false;
zv:
if (!(!$dG == TRUE || !$dG == 1)) {
goto cm;
}
$dG = false;
cm:
if ($ok == "password") {
goto BR;
}
$CK = self::getToken($PN->get_accessTokenEndpoint(), $ok, $PN->get_clientId(), $PN->get_clientSecret(), $rI, $qO, $do, $dG, $PN->appName, $GF);
goto QY;
BR:
$CK = $JK->getToken($PN, $GF);
QY:
if (isset($CK["id_token"])) {
goto h1;
}
\Drupal::logger("miniorange_oauth_client")->error("The OAuth response doesn't contain an ID token. Please try selecting 'OAuth 2.0 Application' from the 'Select Application Type' radio button, if it contains an access token.<br><br><b>Response : </b><pre><code>" . print_r($CK, true) . "</code></pre>");
if ($GF) {
goto Cy;
}
Utilities::anonymousRedirect('', '', "Something went wrong, Please contact the site administrator.");
goto h6;
Cy:
Utilities::show_error_message_testconfig("The OAuth response doesn't contain an ID token. Please try selecting 'OAuth 2.0 Application' from the 'Select Application Type' radio button, if it contains an access token.<br><br><b>Response : </b><pre><code>" . print_r($CK, true) . "</code></pre>");
h6:
h1:
$H6 = new HandleJWT($PN, $CK["id_token"], $GF);
$uE = $H6->getUserAttributesFromIDToken();
return [$CK, $uE];
}
public static function implement_oauth_flow($PN, $tX = '', $JK = '', $GF = false)
{
$do = $PN->get_valuesInHeader();
$dG = $PN->get_valuesInBody();
$BS = $PN->appName;
$ok = $PN->grantTypevalue;
$rI = $tX;
$qO = Utilities::getCallbackUrl($PN->appName);
$hR = \Drupal::config("miniorange_oauth_client.settings")->get("miniorange_oauth_client_group_info_ep_" . $BS);
if (!(!$do == TRUE || !$do == 1)) {
goto vb;
}
$do = false;
vb:
if (!(!$dG == TRUE || !$dG == 1)) {
goto XD;
}
$dG = false;
XD:
if ($ok == "password" && !empty($JK)) {
goto LI;
}
$CK = self::getToken($PN->get_accessTokenEndpoint(), $ok, $PN->get_clientId(), $PN->get_clientSecret(), $rI, $qO, $do, $dG, $BS, $GF);
goto qP;
LI:
$CK = $JK->getToken($PN, $GF);
qP:
if (isset($CK["access_token"])) {
goto Lc;
}
\Drupal::logger("miniorange_oauth_client")->error("The OAuth response doesn't contain an access token. Please try selecting 'OpenID Connect Application' from the 'Select Application Type' radio button, if it contains an ID token.<br><br><b>Response : </b><pre><code>" . print_r($CK, true) . "</code></pre>");
if ($GF) {
goto RM;
}
Utilities::anonymousRedirect('', '', "Something went wrong, Please contact the site administrator.");
goto TL;
RM:
Utilities::show_error_message_testconfig("The OAuth response doesn't contain an access token. Please try selecting 'OpenID Connect Application' from the 'Select Application Type' radio button, if it contains an ID token.<br><br><b>Response : </b><pre><code>" . print_r($CK, true) . "</code></pre>");
TL:
goto vs;
Lc:
$qf = $CK["access_token"];
vs:
$GW = $PN->get_userInfoEndpoint();
if (!(substr($GW, -1) == "=")) {
goto tS;
}
$GW .= $qf;
tS:
$uE = self::getResourceOwner($GW, $qf, $GF);
if (empty($hR)) {
goto xq;
}
$vD = Utilities::getGroupsInfo($hR, $qf, $GF);
$vD = !empty($vD) ? $vD : [];
$uE = array_merge($uE, $vD);
xq:
return [$CK, $uE];
}
public static function final_redirect_url_after_login($xM, $M0, $T2)
{
$xM = Utilities::decodeState($xM);
$AV = '';
if (isset($xM["destination"]) && !empty($xM["destination"])) {
goto US;
}
if (isset($xM["restrictedpagedestination"]) && !empty($xM["restrictedpagedestination"])) {
goto v6;
}
if ($M0 != '') {
goto p5;
}
if (isset($xM["referer"]) && !empty($xM["referer"])) {
goto B5;
}
$AV = Url::fromRoute("entity.user.canonical", ["user" => $T2])->toString();
goto BO;
B5:
$AV = $xM["referer"];
BO:
goto lN;
p5:
$AV = $M0;
lN:
goto VP;
v6:
$AV = $xM["restrictedpagedestination"];
VP:
goto Eg;
US:
$AV = $xM["destination"];
Eg:
return $AV;
}
public static function performSSOinDrupal($uE, $N8, $PN, $CK, $xM = '')
{
$BG = \Drupal::service("session");
$mQ = \Drupal::moduleHandler();
$BU = \Drupal::config("miniorange_oauth_client.settings");
$mQ->invokeAll("mo_pre_user_load", [$uE, $CK]);
$GN = '';
$gL = '';
$el = '';
$q1 = '';
if (empty($PN->get_emailAttr())) {
goto V0;
}
$gL = $PN->get_emailAttr();
V0:
if (empty($PN->get_nameAttr())) {
goto Ic;
}
$GN = $PN->get_nameAttr();
Ic:
if (!(!empty($gL) && isset($N8[$gL]))) {
goto Tt;
}
$q1 = $N8[$gL];
Tt:
if (!($GN != "Select" && isset($N8[$GN]))) {
goto CZ;
}
$el = $N8[$GN];
CZ:
$w8 = $BU->get("miniorange_oauth_client_load_user");
if (!($w8 == "Email" && empty($q1))) {
goto hv;
}
Utilities::save_SSO_report_data("FAILURE. Email not mapped", $PN->appName, $el ? $el : "-", "-");
Utilities::show_sso_error_message("Email address not received.", "Please ensure Email Attribute field is configured properly in the Attribute & Role Mapping tab of the module.");
hv:
if (!($w8 == "Username" && empty($el))) {
goto et;
}
Utilities::save_SSO_report_data("FAILURE. Username not mapped", $PN->appName, $el ? $el : "-", "-");
Utilities::show_sso_error_message("Username not received.", "Please ensure Username Attribute field is configured properly in the Attribute & Role Mapping tab of the module.");
et:
$gw = Utilities::Is_Restricted_Domain($q1);
if (!$gw) {
goto i8;
}
Utilities::save_SSO_report_data("FAILURE. Domain Restricted", $PN->appName, $el ? $el : "-", $q1);
Utilities::anonymousRedirect('', "A user (email - <i>" . $q1 . "</i>, username - <i>" . $el . "</i>) with restricted domain is attemping to login", "You are not allowed to login to this site, please contact the site administrator.");
i8:
self::is_role_allowed($PN, $uE);
if ($w8 == "Email") {
goto W4;
}
if ($w8 == "Username") {
goto eX;
}
goto uY;
W4:
$nV = user_load_by_mail($q1);
goto uY;
eX:
$nV = user_load_by_name($el);
uY:
$dX = $PN->get_enableRolemapping();
$HN = $PN->get_defaultRole();
if (!empty($el)) {
goto r5;
}
$el = $q1;
r5:
$sw = $BU->get("miniorange_oauth_require_profile_field");
if (!empty($nV->uid)) {
goto Cm;
}
$mQ->invokeAll("mo_pre_user_register", [$uE]);
$Cb = new mOUserRegistration($PN->autocreateuser, $PN->create_disable_user, $PN->redirect_disable, $PN->redirect_unregister, $el, $q1, $dX, $HN, $PN->appName);
$nV = $Cb->create_new_user($uE);
Cm:
$nV = User::load($nV->id());
$mQ->invokeAll("mo_post_user_load", [$nV, $uE, $CK]);
if ($nV->isActive()) {
goto zc;
}
$EA = $BU->get("miniorange_oauth_activate_users");
if ($EA) {
goto kw;
}
Utilities::anonymousRedirect($PN->redirect_disable, '', "The username <i>" . $nV->getAccountName() . "</i> has not been activated or is blocked.");
goto UF;
kw:
$nV->set("status", TRUE);
$nV->save();
\Drupal::logger("miniorange_oauth_client")->notice("The username <i>" . $nV->getAccountName() . "</i> has been activated");
UF:
zc:
$G7 = $BU->get("miniorange_oauth_restrict_sso_for_admin");
if (!($G7 && $nV->hasRole("administrator"))) {
goto yB;
}
Utilities::anonymousRedirect($PN->redirect_disable, "A user with administrator Role is attemping SSO", "Something went wrong, Please contact the site administrator.");
yB:
self::perform_attribute_mapping($nV, $PN, $N8);
self::implement_role_mapping($nV, $PN, $uE);
self::perform_profile_mapping($nV, $PN, $uE);
self::perform_group_mapping($nV, $PN, $uE);
$mQ->invokeAll("mo_post_mapping", [$nV, $uE, $CK]);
$AV = self::final_redirect_url_after_login($xM, $PN->redirect_after_login, $nV->id());
Utilities::save_SSO_report_data("SUCCESS", $PN->appName, $el, $q1, $AV);
$BG->set("mo_sso_session", true);
$BG->set("appname", $PN->appName);
if (!($PN->sendidtokeninslorequest && isset($CK["id_token"]))) {
goto k8;
}
$BG->set("mo_id_token", $CK["id_token"]);
k8:
$WT = array();
$WT["redirect"] = $AV;
user_login_finalize($nV);
$BG->set("mo_sso_session", true);
$BG->set("appname", $PN->appName);
$mQ->invokeAll("mo_post_user_login", [&$nV, $uE]);
$mQ->invokeAll("mo_oauth_user_token", [&$nV, $CK, $AV]);
if (!($sw == 1 && !Utilities::check_for_redirect_to_user_profile_form($q1))) {
goto rN;
}
Utilities::redirect_to_profile_form($nV->id());
rN:
$Wy = new RedirectResponse($WT["redirect"]);
\Drupal::service("page_cache_kill_switch")->trigger();
return $Wy;
}
public static function is_role_allowed($PN, $uE)
{
$wS = $PN->enable_role_based_restriction;
$hm = $PN->role_restriction_attrname;
$SM = $PN->list_of_roles;
$v6 = $PN->typeof_role_restriction;
$TI = $PN->redirect_url_for_role_restriction;
if (!($wS && $SM && $v6 && $hm)) {
goto VV;
}
$Jh = new MiniorangeOAuthRoleRestriction($uE, $hm, $SM, $TI);
if ($v6 === "whitelist") {
goto tR;
}
$Jh->validate_blacklisted_role_restriction();
goto hS;
tR:
$Jh->validate_whitelisted_role_restriction();
hS:
VV:
return new Response();
}
public static function perform_attribute_mapping($nV, $PN, $uE)
{
$at = $PN->get_attributeMap();
$at = !empty($at) ? $at : array();
$dm = array();
$Zw = array();
foreach ($at as $C3) {
if (!($C3["machine_name"] != '' && $C3["attribute_name"] != '')) {
goto n0;
}
array_push($Zw, $C3["machine_name"]);
array_push($dm, $C3["attribute_name"]);
n0:
Tv:
}
xo:
$a2 = self::mo_oauth_attr_map($dm, $Zw);
$Au = array();
if (!(isset($a2) && !empty($a2))) {
goto fk;
}
foreach ($a2 as $Kr => $sQ) {
if (!isset($uE[$Kr])) {
goto wo;
}
$Au[$sQ] = $uE[$Kr];
wo:
YH:
}
Gp:
foreach ($Au as $C3 => $wZ) {
$nV->{$C3} = $wZ;
$nV->save();
aE:
}
cw:
fk:
}
public static function implement_role_mapping($nV, $PN, $uE)
{
$A0 = $PN->get_roleAttribute();
if (!(isset($A0) && !empty($A0))) {
goto dT;
}
$rq = self::getnestedattribute($uE, $A0);
if (is_null($nV)) {
goto fV;
}
self::perform_role_mapping($PN, $uE, $nV, $rq, $PN->appName);
fV:
dT:
}
public static function perform_profile_mapping($nV, $PN, $uE)
{
$NG = $PN->get_profileMap();
$NG = !empty($NG) ? $NG : array();
$b3 = array();
$Qg = array();
if (empty($NG)) {
goto RO;
}
foreach ($NG as $C3) {
if (!($C3["user_profile_field_name"] != '' && $C3["user_profile_idp_attribute_name"] != '')) {
goto mM;
}
array_push($b3, $C3["user_profile_field_name"]);
array_push($Qg, $C3["user_profile_idp_attribute_name"]);
mM:
Tm:
}
pY:
$Pr = self::mo_oauth_attr_map($b3, $Qg, "role");
$Ao = array();
if (!(isset($Pr) && !empty($Pr))) {
goto rn;
}
$Pr = self::to_explode_semicolon($Pr);
foreach ($Pr as $C3 => $vi) {
$yl = array();
foreach ($vi as $wZ) {
if (!array_key_exists($wZ, $uE)) {
goto vo;
}
array_push($yl, $uE[$wZ]);
vo:
P_:
}
D4:
$Ao[$C3] = $yl;
Wb:
}
GT:
self::create_profile($Ao, $nV, $PN);
rn:
RO:
}
public static function perform_group_mapping($nV, $PN, $uE)
{
$Ji = $PN->enablegroupmapping;
$bv = $PN->keepExistingGroups;
$a7 = $PN->groupAttribute;
$mp = !empty($PN->groupmap) ? json_decode($PN->groupmap, true) : [];
$IH = '';
if (empty($a7)) {
goto jS;
}
$IH = self::getnestedattribute($uE, $a7);
jS:
$TH = [];
if (!is_array($IH) && !empty($IH)) {
goto Cu;
}
$TH = is_array($IH) ? $IH : [];
goto bz;
Cu:
$IH = str_replace(["[", "]"], '', $IH);
$IH = explode(",", $IH);
foreach ($IH as $C3 => $wZ) {
$TH[] = str_replace(""", '', trim($wZ));
Rs:
}
EI:
bz:
$DI = [];
$FB = [];
foreach ($mp as $C3) {
if (empty(trim($C3["oauth_server_attrs"]))) {
goto oH;
}
array_push($DI, $C3["group_name"]);
array_push($FB, $C3["oauth_server_attrs"]);
oH:
VO:
}
rO:
$YN = self::mo_oauth_attr_map($DI, $FB, "role");
if (!($Ji && is_array($TH) && !empty($YN) && $nV)) {
goto by;
}
foreach ($YN as $C3 => $wZ) {
$Kt = false;
$Nn = \Drupal::entityTypeManager()->getStorage("group");
$CP = $Nn->load($C3);
if (!$CP) {
goto aT;
}
if (!$CP->getMember($nV)) {
goto he;
}
$Kt = true;
he:
$us = explode(";", $wZ);
if (!empty(array_intersect($TH, $us))) {
goto HO;
}
if (!($Kt && !$bv)) {
goto wz;
}
$CP->removeMember($nV);
$CP->save();
wz:
goto uH;
HO:
if ($CP->getMember($nV)) {
goto dp;
}
$CP->addMember($nV);
$CP->save();
dp:
uH:
aT:
fg:
}
vE:
by:
}
public static function Test_Configuration($uE, $IR)
{
$s9 = \Drupal::service("extension.list.module")->getPath("miniorange_oauth_client");
$base_url = \Drupal::request()->getSchemeAndHttpHost() . \Drupal::request()->getBasePath();
setrawcookie("mo.testConfig", true, \Drupal::time()->getRequestTime() - 300, "/");
$Yu = isset($uE["email"]) ? $uE["email"] : "User";
$H3 = '';
Utilities::show_attr($uE, $H3, 0, '', "<tr style="text-align:center;">", "<td style='font-weight:bold;padding:2%;border:2px solid #949090; word-wrap:break-word;'>");
$cK = is_array($uE) ? json_encode($uE) : '';
\Drupal::configFactory()->getEditable("miniorange_oauth_client.settings")->set("miniorange_oauth_client_attr_list_from_server_" . $IR, $cK)->save();
$ns = [];
if (!is_array($uE)) {
goto Dq;
}
$ns = array_combine(array_keys($uE), array_keys($uE));
Dq:
$ns = is_array($ns) ? json_encode($ns) : '';
\Drupal::configFactory()->getEditable("miniorange_oauth_client.settings")->set("miniorange_oauth_client_attr_list_from_server_mapping_" . $IR, $ns)->save();
echo "<div style="font-family:Calibri;padding:0 3%;">";
echo "<div style="color: #3c763d;background-color: #dff0d8; padding:2%;margin-bottom:20px;text-align:center; border:1px solid #AEDB9A;
\xa font-size:15pt;">
TEST SUCCESSFUL\xd
</div>\xd\xa <div style="display:block;text-align:center;margin-bottom:4%;">\xd\xa <img style="width:15%;"src="" . $base_url . "/" . $s9 . "/assets/img/green_check.png">
\xa </div>";
echo "<span style="font-size:13pt;"><b>Hello</b>, " . $Yu . "</span><br/>\xd
<p style="font-weight:bold;font-size:13pt;margin-left:1%;">ATTRIBUTES RECEIVED:</p>
\xa <table style="border-collapse:collapse;border-spacing:0; display:table;width:100%; font-size:13pt;background-color:#EDEDED;">\xd\xa <tr style="text-align:center;">
<td style="font-weight:bold;border:2px solid #949090;padding:2%;">ATTRIBUTE NAME</td>
\xa <td style="font-weight:bold;padding:2%;border:2px solid #949090; word-wrap:break-word;">ATTRIBUTE VALUE</td>\xd\xa </tr>";
echo $H3;
echo "</table></div>";
echo "<div style="margin:3%;display:block;text-align:center;">
<input style="padding:1%;width:37%;background: #0091CD none repeat scroll 0% 0%;cursor: pointer;font-size:15px;\xd
border-width: 1px;border-style: solid;border-radius: 3px;white-space: nowrap;box-sizing: border-box;border-color: #0073AA;
\xa box-shadow: 0px 1px 0px rgba(120, 200, 230, 0.6) inset;color: #FFF;"type="button" value="Configure Attribute/Role Mapping"\xd\xa onClick="close_and_redirect();">\xd
\xd\xa <input style="padding:1%;width:100px;background: #0091CD none repeat scroll 0% 0%;cursor: pointer;font-size:15px;\xd\xa border-width: 1px;border-style: solid;border-radius: 3px;white-space: nowrap;box-sizing: border-box;border-color: #0073AA;
\xa box-shadow: 0px 1px 0px rgba(120, 200, 230, 0.6) inset;color: #FFF;"type="button" value="Done" onClick="self.close();">\xd
</div>
<script>
function close_and_redirect(){\xd
window.opener.location.href = "" . Url::fromRoute("miniorange_oauth_client.mapping")->toString() . "";\xd
self.close();
}
\xa </script>";
exit;
}
public static function getResourceOwner($GW, $FZ, $GF = false)
{
$Wy = Utilities::callService($GW, NULL, array("Authorization" => "Bearer " . $FZ), "GET", $GF);
$HP = json_decode($Wy, true);
if (isset($HP["error_description"])) {
goto TQ;
}
if (!isset($HP["error"])) {
goto ng;
}
if (is_array($HP["error"])) {
goto E2;
}
echo $HP["error"];
goto qv;
E2:
print_r($HP["error"]);
qv:
exit;
ng:
goto uI;
TQ:
if (is_array($HP["error_description"])) {
goto vA;
}
echo $HP["error_description"];
goto n_;
vA:
print_r($HP["error_description"]);
n_:
exit;
uI:
return $HP;
}
public static function testattrmappingconfig($zm, $rh)
{
foreach ($rh as $C3 => $Dp) {
if (is_array($Dp) || is_object($Dp)) {
goto C5;
}
echo "<tr style='text-align:center;'><td style='font-weight:bold;border:2px solid #949090;padding:2%;'>";
if (empty($zm)) {
goto Zb;
}
echo $zm . ".";
Zb:
echo $C3 . "</td><td style='font-weight:bold;padding:2%;border:2px solid #949090; word-wrap:break-word;'>" . $Dp . "</td></tr>";
goto Bx;
C5:
if (empty($zm)) {
goto xO;
}
$zm .= ".";
xO:
self::testattrmappingconfig($zm . $C3, $Dp);
Bx:
Qb:
}
Xz:
return new Response();
}
public static function getnestedattribute($Dp, $C3)
{
if (isset($C3)) {
goto yd;
}
return '';
yd:
$YR = explode(">", $C3);
$U8 = '';
if (sizeof($YR) > 1) {
goto sT;
}
$U8 = $YR[0];
if (isset($Dp[$U8]) && !is_array($Dp[$U8])) {
goto wN;
}
if (!isset($Dp[$U8])) {
goto BB;
}
return self::extractLeafNodes($Dp[$U8]);
BB:
goto Mm;
wN:
return $Dp[$U8];
Mm:
goto OD;
sT:
$U8 = $YR[0];
if (!isset($Dp[$U8])) {
goto Ca;
}
return self::getnestedattribute($Dp[$U8], str_replace($U8 . ">", '', $C3));
Ca:
OD:
}
public static function extractLeafNodes($mu)
{
$s0 = array();
foreach ($mu as $C3 => $wZ) {
if (is_array($wZ)) {
goto rd;
}
$s0[] = $wZ;
goto Y1;
rd:
$s0 = array_merge($s0, self::extractLeafNodes($wZ));
Y1:
Aj:
}
cP:
return $s0;
}
public static function mo_oauth_client_initiateLogin($GF = false, $fn = '')
{
\Drupal::service("page_cache_kill_switch")->trigger();
Utilities::checkUpgradeUrlStatus();
$mQ = \Drupal::moduleHandler();
if (isset($_GET["appname"]) && !empty($_GET["appname"])) {
goto eV;
}
$pW = \Drupal::config("miniorange_oauth_client.settings")->get("auto_redirect_app_name");
goto ZQ;
eV:
$pW = trim(Html::escape($_GET["appname"]));
ZQ:
$PN = new appValues($pW);
$Gz = $PN->getAllConfig();
$qO = Utilities::getCallbackUrl($pW);
$mh = $Gz["authorizeEndpoint"];
$xM = Utilities::generateState($Gz["appName"], $fn, $GF);
$ok = $Gz["grantTypevalue"];
if (!($ok == "implicit")) {
goto ey;
}
$mc = new ImplicitGrant($Gz["appName"]);
$mc->mo_oauth_client_initiateLogin($PN, $fn, $GF);
ey:
if (strpos($mh, "?") !== false) {
goto Zt;
}
$mh = $mh . "?client_id=" . $PN->get_clientId() . "&scope=" . $Gz["scope"] . "&redirect_uri=" . $qO . "&response_type=code&state=" . $xM;
goto td;
Zt:
$mh = $mh . "&client_id=" . $PN->get_clientId() . "&scope=" . $Gz["scope"] . "&redirect_uri=" . $qO . "&response_type=code&state=" . $xM;
td:
if (!(session_status() == PHP_SESSION_NONE)) {
goto zF;
}
session_start();
zF:
$BG = \Drupal::service("session");
$BG->set("oauth2state", $xM);
$BG->set("appname", $Gz["appName"]);
if (!($ok == "authorization_code_with_pkce")) {
goto GP;
}
$Vh = random_bytes(64);
$NZ = rtrim(strtr(base64_encode($Vh), "+/", "-_"), "=");
$mb = hash("sha256", $NZ, true);
$ja = rtrim(strtr(base64_encode($mb), "+/", "-_"), "=");
$mh = $mh . "&code_challenge=" . $ja . "&code_challenge_method=S256";
$BG->set("codeVerifier", $NZ);
GP:
$mQ->invokeAll("mo_pre_authorization_request", [&$mh, $_GET]);
$Wy = new RedirectResponse($mh);
$Wy->send();
exit;
}
public static function test_mo_config()
{
setrawcookie("mo.testConfig", true, \Drupal::time()->getRequestTime() + 300, "/");
miniorange_oauth_clientController::miniorange_oauth_client_mologin("testOAuthConfig");
}
public static function miniorange_oauth_client_mologin($fn = '')
{
$C_ = \Drupal::request();
$BU = \Drupal::config("miniorange_oauth_client.settings");
$cM = $BU->get("miniorange_oauth_client_customer_admin_fraud_check");
$lp = $BU->get("miniorange_oauth_client_customer_admin_token");
$ql = $BU->get("miniorange_oauth_client_customer_admin_email");
$BX = $BU->get("miniorange_oauth_client_license_key");
$J9 = $BU->get("auto_redirect_app_name");
$OS = $BU->get("miniorange_oauth_isMultiSitePluginRequested") == true;
$nd = $BU->get("mo_last_license_fetch_time");
$Yb = time();
if (!($Yb - $nd > 604800)) {
goto yh;
}
self::moOAuthLicenseFetch(true);
yh:
$yg = \Drupal::state()->get("miniorange_oauth_is_trial");
$L0 = $BU->get("miniorange_oauth_licenseExpiry") ?? '';
$BS = $C_->query->get("appname", $J9);
$P6 = DBQueries::get_all_apps_from_db();
$l3 = in_array($BS, $P6) ? (new appValues($BS))->enable_login_with_oauth : 0;
$iO = Utilities::check_fraud();
if (empty($ql)) {
goto nf;
}
if (empty($BX)) {
goto d_;
}
if (!$OS && ($iO !== Utilities::decrypt_data($cM, $lp) && $iO !== Utilities::decrypt_data($cM, $lp, "AES-128-ECB"))) {
goto aL;
}
if ($yg && (!$L0 || strtotime($L0) < $Yb)) {
goto Pv;
}
if ($fn === "testOAuthConfig" && isset($_GET["appname"]) && !empty($_GET["appname"])) {
goto AZ;
}
if ($fn !== "testOAuthConfig" && $l3) {
goto BA;
}
Utilities::show_sso_error_message("Configurations not found or Login using OAuth provider is disabled.", "Please ensure the SSO or Test Connection URL is correct and Login with OAuth is enabled.");
goto gN;
nf:
Utilities::show_sso_error_message("It appears that you are not logged into the module.", "Please log in to the module.");
goto gN;
d_:
Utilities::show_sso_error_message("It appears that you have not verified your license key", "Please verify your license key.");
goto gN;
aL:
Utilities::show_sso_error_message("The license key you have entered has already been used.", "Please enter a key which has not been used before on any other instance or if you have exhausted all your keys, you can purchase more licenses.");
goto gN;
Pv:
Utilities::show_sso_error_message("Your trial license has expired on " . date("l M j, Y", strtotime($L0)), ". Reach out to us at <a href="mailto::[email protected]">[email protected]</a> to upgrade your license.");
goto gN;
AZ:
return self::mo_oauth_client_initiateLogin(true);
goto gN;
BA:
return self::mo_oauth_client_initiateLogin(false, $fn);
gN:
}
public function oauth_client_logout()
{
$eK = new mOOAuthLogout();
return $eK->mo_oauth_logout();
}
public static function openCustomerRequestForm()
{
$Wy = new AjaxResponse();
$wn = \Drupal::formBuilder()->getForm("\Drupal\miniorange_oauth_client\Form\MiniorangeCustomerRequest");
$Wy->addCommand(new OpenModalDialogCommand("miniOrange OAuth Client Customer Support", $wn, ["width" => "45%"]));
return $Wy;
}
public static function moOAuthLicenseFetch($kI = FALSE)
{
$BU = \Drupal::config("miniorange_oauth_client.settings");
$NH = \Drupal::configFactory()->getEditable("miniorange_oauth_client.settings");
$Yu = $BU->get("miniorange_oauth_client_customer_admin_email");
$nQ = new MiniorangeOAuthClientCustomer($Yu, null);
$uX = json_decode($nQ->ccl(), true);
if (isset($uX["status"]) && $uX["status"] == "SUCCESS") {
goto DH;
}
$XR = t("Failed to fetch licensing update");
$S6 = "error";
goto xV;
DH:
$NH->set("mo_last_license_fetch_time", time())->save();
$NH->set("miniorange_oauth_licenseExpiry", $uX["licenseExpiry"])->save();
$NH->set("miniorange_oauth_supportExpiry", $uX["supportExpiry"])->save();
$NH->set("miniorange_oauth_isMultiSitePluginRequested", isset($uX["isMultiSitePluginRequested"]) ? $uX["isMultiSitePluginRequested"] : false)->save();
$cd = isset($uX["noOfSP"]) ? $uX["noOfSP"] : 1;
$NH->set("miniorange_oauth_noOfSP", $cd)->save();
$zM = isset($uX["trial"]) ? $uX["trial"] : false;
\Drupal::state()->set("miniorange_oauth_is_trial", $zM);
$XR = t("Successfully fetched the licensing update");
$S6 = "status";
xV:
$S6 == "status" ? \Drupal::logger("miniorange_oauth_client")->notice($XR) : \Drupal::logger("miniorange_oauth_client")->error($XR);
if ($kI) {
goto gJ;
}
$S6 == "status" ? \Drupal::messenger()->addStatus($XR) : \Drupal::messenger()->addError($XR);
return new RedirectResponse(Url::fromRoute("miniorange_oauth_client.customer_setup")->toString());
gJ:
return new Response();
}
}
?>
Did this file decode correctly?
Original Code
<?php
namespace Drupal\miniorange_oauth_client\Controller;
use Drupal\user\Entity\User;
use Drupal\Component\Utility\Html;
use Drupal\Core\Controller\ControllerBase;
use Drupal\miniorange_oauth_client\Utilities;
use Symfony\Component\HttpFoundation\Response;
use Drupal\miniorange_oauth_client\DBQueries;
use Drupal\Core\Url;
use Drupal\miniorange_oauth_client\appValues;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Drupal\miniorange_oauth_client\GrantTypes\HandleJWT;
use Drupal\miniorange_oauth_client\MiniorangeOAuthClientCustomer;
use Drupal\profile\Entity\Profile;
use Drupal\Core\Ajax\AjaxResponse;
use Drupal\Core\Ajax\OpenModalDialogCommand;
use Drupal\miniorange_oauth_client\GrantTypes\ImplicitGrant;
use Drupal\miniorange_oauth_client\MiniorangeOAuthRoleRestriction;
use Drupal\miniorange_oauth_client\mOOAuthLogout;
use Drupal\miniorange_oauth_client\mOUserRegistration;
use Drupal\profile\Entity\ProfileType;
use Drupal\Core\Entity\EntityStorageException;
class miniorange_oauth_clientController extends ControllerBase
{
public static function miniorange_oauth_client_mo_login()
{
$BG = \Drupal::service("\x73\x65\163\163\x69\157\x6e");
$mQ = \Drupal::moduleHandler();
$IR = \Drupal::service("\x63\x75\162\x72\145\x6e\x74\x5f\x72\x6f\x75\164\x65\137\155\141\164\x63\x68")->getParameter("\x61\160\x70\x5f\x6e\141\155\x65");
if (!(session_status() == PHP_SESSION_NONE)) {
goto vi;
}
session_start();
vi:
if (!(!empty($IR) && (new appValues($IR))->grantTypevalue == "\x69\x6d\x70\x6c\x69\x63\151\164")) {
goto j2;
}
if (!(isset($_SERVER["\121\x55\105\x52\x59\x5f\123\x54\122\111\x4e\x47"]) && !empty($_SERVER["\x51\125\105\x52\x59\137\x53\124\122\x49\x4e\107"]))) {
goto Hi;
}
$Ww = $_GET;
Hi:
if (!(!isset($_COOKIE["\154\157\x67\x69\x6e\x5f\x71\165\145\162\171"]) && empty($_SERVER["\x51\x55\x45\122\x59\137\123\x54\x52\x49\116\107"]))) {
goto KS;
}
echo "\74\163\143\x72\151\160\164\x20\x74\171\x70\145\x3d\x22\164\x65\x78\x74\x2f\152\141\166\141\163\143\x72\151\160\164\x22\76\xd\xa\x20\x20\40\40\40\40\x20\x20\x20\40\40\x20\166\x61\162\x20\161\146\162\141\x67\155\145\x6e\x74\40\75\x20\x77\x69\x6e\144\157\167\56\154\157\x63\141\164\x69\x6f\x6e\56\150\x61\163\x68\73\xd\xa\40\x20\x20\40\40\40\40\x20\x20\40\x20\40\x63\157\x6e\x73\x74\x20\x63\x75\162\162\x65\x6e\164\160\x61\x74\150\40\x3d\40\x77\x69\156\144\157\167\x2e\x6c\x6f\x63\141\164\151\157\x6e\56\160\162\157\x74\x6f\x63\x6f\x6c\40\53\40\167\151\x6e\144\x6f\x77\56\x6c\x6f\x63\x61\164\151\157\x6e\x2e\160\141\164\x68\156\x61\155\x65\73\15\12\x20\x20\x20\40\x20\x20\x20\x20\40\40\40\x20\161\146\x72\141\x67\155\145\156\164\40\x3d\40\x71\x66\162\141\x67\155\x65\x6e\x74\56\x73\x70\x6c\151\164\x28\x22\43\42\51\133\x31\x5d\x3b\15\12\x20\x20\x20\x20\x20\x20\x20\x20\40\x20\x20\40\144\x6f\x63\x75\x6d\145\x6e\164\x2e\x63\157\x6f\153\x69\x65\x20\75\x20\x22\x6c\x6f\x67\151\x6e\x5f\x71\x75\145\162\171\75\42\x20\53\40\161\146\162\141\x67\155\x65\x6e\x74\73\xd\xa\x20\x20\x20\40\40\x20\x20\40\40\40\40\40\x77\x69\x6e\144\x6f\167\x2e\154\x6f\143\x61\164\x69\157\x6e\x2e\x68\x72\145\146\40\x3d\x20\x63\x75\162\x72\145\x6e\164\x70\141\x74\x68\40\x2b\40\x22\x3f\42\40\x2b\40\x71\x66\162\141\x67\155\x65\x6e\x74\x3b\xd\12\x20\x20\x20\x20\40\x20\40\40\74\x2f\163\143\x72\151\x70\x74\x3e";
exit;
KS:
if (!(isset($_COOKIE["\x6c\157\147\151\156\137\161\x75\145\x72\x79"]) && !empty($_COOKIE["\x6c\157\x67\151\156\x5f\x71\165\145\x72\x79"]))) {
goto rv;
}
$AH = $_COOKIE["\x6c\x6f\x67\x69\156\x5f\x71\x75\x65\162\171"];
$IT = explode("\46", $AH);
$Ww = [];
foreach ($IT as $wZ) {
$C3 = explode("\x3d", $wZ);
if (!(sizeof($C3) > 1)) {
goto Ho;
}
$Ww[$C3[0]] = $C3[1];
Ho:
Ln:
}
Z9:
rv:
$mQ->invokeAll("\155\x6f\137\x70\162\145\x5f\141\165\x74\150\137\x72\145\163\x70\x6f\156\163\x65\137\x70\x72\157\143\145\x73\x73", [$Ww]);
ImplicitGrant::validate_token_and_state($Ww);
$xM = isset($Ww["\x73\164\x61\x74\x65"]) ? $Ww["\163\x74\x61\164\145"] : '';
$KL = Utilities::decodeState($xM);
$GF = isset($KL["\x74\x65\x73\x74\163\163\157"]) ? $KL["\164\145\163\164\x73\163\157"] === true ? true : false : false;
$tw = $BG->get("\141\x70\160\156\x61\155\145");
$PN = new appValues($tw);
$Qq = $PN->get_appType();
$U1 = $PN->loginflowtype;
if ($Qq == "\103\x75\163\164\157\x6d\137\117\160\x65\156\x5f\x69\144" || $U1 == "\x4f\160\x65\x6e\x49\104") {
goto uK;
}
$d0 = isset($Ww["\141\x63\143\x65\163\x73\x5f\x74\157\x6b\145\156"]) && !empty($Ww["\x61\143\x63\145\163\x73\137\164\x6f\x6b\145\156"]) ? $Ww["\141\x63\x63\x65\x73\163\137\x74\157\153\x65\156"] : '';
goto bL;
uK:
$d0 = isset($Ww["\x69\x64\x5f\164\x6f\x6b\145\156"]) && !empty($Ww["\151\144\137\164\x6f\153\x65\x6e"]) ? $Ww["\x69\144\137\x74\x6f\x6b\145\156"] : '';
bL:
if (!(empty($d0) && isset($Ww["\164\157\153\145\x6e"]) && !empty($Ww["\164\x6f\x6b\x65\x6e"]))) {
goto jY;
}
$d0 = $Ww["\x74\157\153\x65\156"];
jY:
Utilities::save_tokens_in_cookie_and_session($Ww, new appValues($tw), $GF);
$Zi = new ImplicitGrant($tw);
return $Zi->mo_oauth_client_mo_login($PN, $d0, $Ww);
j2:
$mQ->invokeAll("\x6d\x6f\137\x70\x72\x65\137\141\x75\x74\x68\137\162\x65\x73\160\157\x6e\x73\x65\x5f\160\x72\x6f\143\x65\x73\163", [$_GET]);
$rI = isset($_GET["\x63\157\x64\145"]) ? $_GET["\143\x6f\x64\145"] : '';
$rI = Html::escape($rI);
$xM = isset($_GET["\x73\164\141\164\x65"]) ? $_GET["\x73\x74\141\164\x65"] : '';
$xM = Html::escape($xM);
$KL = Utilities::decodeState($xM);
$GF = isset($KL["\x74\x65\163\x74\x73\x73\x6f"]) ? $KL["\x74\145\163\164\x73\x73\157"] === true ? true : false : false;
$IR = self::validate_code_and_state($rI, $xM, $GF);
$BG->remove("\x6f\x61\x75\x74\x68\62\163\x74\x61\x74\x65");
$PN = new appValues($IR);
$Qq = $PN->get_appType();
$U1 = $PN->loginflowtype;
[$CK, $uE] = $Qq == "\x43\x75\163\x74\x6f\x6d\137\x4f\160\x65\156\x5f\151\144" || $U1 == "\117\x70\145\x6e\x49\104" ? self::implement_openid_flow($PN, $rI, '', $GF) : self::implement_oauth_flow($PN, $rI, '', $GF);
$N8 = self::flattenArray($uE);
if (!($GF || isset($_COOKIE["\x6d\157\x5f\x74\145\163\164\x43\157\x6e\146\x69\147"]))) {
goto IR;
}
self::Test_Configuration($N8, $PN->appName);
IR:
return self::performSSOinDrupal($uE, $N8, $PN, $CK, $xM);
}
public static function flattenArray($mu, $av = '')
{
$s0 = array();
foreach ($mu as $C3 => $wZ) {
$ZI = $av . $C3;
if (is_array($wZ)) {
goto qa;
}
$s0[$ZI] = $wZ;
goto ww;
qa:
$s0 = array_merge($s0, self::flattenArray($wZ, $ZI . "\x3e"));
ww:
v5:
}
bc:
return $s0;
}
public static function mo_oauth_attr_map($dm, $Zw, $KP = "\x61\x74\x74\x72")
{
$uk = array();
foreach ($dm as $C3 => $wZ) {
if (!(!empty($wZ) && !empty($Zw[$C3]))) {
goto K9;
}
if (array_key_exists($wZ, $uk) && $KP == "\x72\157\154\x65") {
goto FW;
}
$uk[trim($wZ, "\40")] = $Zw[$C3];
goto SO;
FW:
if ($uk[$wZ][-1] != "\73") {
goto W2;
}
$uk[trim($wZ, "\x20")] = $uk[$wZ] . $Zw[$C3];
goto F5;
W2:
$uk[trim($wZ, "\x20")] = $uk[$wZ] . "\x3b" . $Zw[$C3];
F5:
SO:
K9:
St:
}
Jy:
return $uk;
}
public static function to_explode_semicolon($wh)
{
$YQ = array();
foreach ($wh as $C3 => $vi) {
$vi = explode("\x3b", $vi);
$YQ[$C3] = $vi;
za:
}
Z7:
return $YQ;
}
public static function create_profile($Pv, $nV, $PN)
{
if (\Drupal::service("\155\x6f\x64\165\154\145\x5f\x68\x61\156\x64\154\x65\x72")->moduleExists("\160\162\x6f\x66\151\x6c\x65")) {
goto fH;
}
return new Response();
fH:
$XZ = $PN->enable_profile_mapping;
if ($XZ) {
goto T9;
}
return new Response();
T9:
$mM = $PN->profile_entity_type;
$P3 = isset($nV->toArray()[$mM . "\137\x70\x72\x6f\x66\x69\154\x65\x73"][0]) ? $nV->toArray()[$mM . "\x5f\x70\x72\157\x66\151\154\x65\x73"][0]["\x74\141\162\x67\x65\164\x5f\x69\144"] : NULL;
$sa = ProfileType::load($mM);
$nt = $sa->toArray()["\162\x6f\154\145\163"];
$yw = $nV->getRoles();
if (!(!empty(array_intersect($nt, $yw)) || empty($nt))) {
goto N2;
}
if (!is_null($P3)) {
goto j9;
}
try {
$Y_ = Profile::create(["\x74\x79\160\x65" => $mM, "\165\x69\x64" => $nV->id(), "\x66\151\145\154\144\x5f\x61\x67\162\x65\145\137\x74\145\x72\155\163" => 1]);
$Y_->save();
$P3 = $Y_->toArray()["\x70\162\157\146\151\154\145\137\151\144"][0]["\x76\x61\154\x75\145"];
} catch (EntityStorageException $ia) {
\Drupal::logger("\x6d\151\x6e\x69\157\x72\x61\156\147\145\137\157\141\x75\x74\x68\137\x63\x6c\x69\145\156\164")->notice("\x45\156\x74\151\164\171\x53\164\157\x72\141\147\145\105\170\x63\x65\x70\x74\x69\x6f\156\x3a\40\105\x72\162\157\162\40\167\150\151\x6c\x65\40\x63\162\145\141\164\x69\156\x67\x20\141\156\144\x20\x73\x61\166\151\x6e\x67\x20\164\x68\145\40\x70\x72\x6f\146\x69\x6c\x65\40\164\171\x70\x65\56");
}
j9:
if (empty($Pv)) {
goto c7;
}
foreach ($Pv as $C3 => $wZ) {
$Y_ = Profile::load($P3);
$Y_->set($C3, $wZ);
da:
}
SM:
$Y_->save();
c7:
N2:
}
public static function perform_role_mapping($PN, $Tc, $nV, $rq, $NC = '')
{
$F6 = $PN->get_roleAttribute();
$dX = $PN->get_enableRolemapping();
$TF = $PN->get_disableRoleUpdate();
$w4 = $PN->get_roleMap();
$w4 = !empty($w4) ? $w4 : array();
$d7 = array();
$tK = array();
foreach ($w4 as $C3) {
if (!($C3["\165\163\x65\162\137\163\x70\x5f\x72\157\154\x65\137\156\x61\x6d\145"] != '' && $C3["\x75\x73\x65\162\x5f\151\144\x70\137\162\x6f\154\145\137\156\141\155\x65"] != '')) {
goto EQ;
}
array_push($d7, $C3["\165\x73\145\162\137\163\x70\137\x72\x6f\x6c\x65\x5f\156\141\x6d\145"]);
array_push($tK, $C3["\165\163\145\162\137\151\144\x70\137\162\157\x6c\145\137\156\141\x6d\x65"]);
EQ:
m2:
}
E3:
$HQ = self::mo_oauth_attr_map($d7, $tK, "\x72\x6f\x6c\x65");
$Ds = array();
if (!is_array($rq) && !empty($rq)) {
goto NH;
}
$Ds = is_array($rq) ? $rq : [];
goto p0;
NH:
$rq = str_replace(["\x5b", "\x5d"], '', $rq);
$rq = explode("\54", $rq);
foreach ($rq as $C3 => $wZ) {
$Ds[] = str_replace("\42", '', trim($wZ));
va:
}
pH:
p0:
if (!($dX && !is_null($F6) && !empty($F6))) {
goto SF;
}
$Cg = $nV->getRoles();
if ($TF) {
goto Rt;
}
foreach ($Cg as $C3 => $wZ) {
if (in_array($wZ, array_keys($HQ))) {
goto Hg;
}
if (!($wZ != $PN->get_defaultRole())) {
goto ZJ;
}
$nV->removeRole($wZ);
$nV->save();
ZJ:
Hg:
tw:
}
H8:
Rt:
foreach ($HQ as $C3 => $wZ) {
$eB = FALSE;
$K4 = explode("\x3b", $wZ);
foreach ($K4 as $Kr => $sQ) {
if (strpos($sQ, "\46") !== false) {
goto pw;
}
if (!in_array($sQ, $Ds)) {
goto tv;
}
$eB = TRUE;
goto Kh;
tv:
goto N1;
pw:
$l0 = true;
$Kf = explode("\46", $sQ);
foreach ($Kf as $l2 => $DD) {
if (in_array($DD, $Ds)) {
goto p7;
}
$l0 = false;
goto ZR;
p7:
Fq:
}
ZR:
$eB = $l0 ? TRUE : FALSE;
if (!$eB) {
goto TS;
}
goto Kh;
TS:
N1:
fi:
}
Kh:
if ($eB && $C3 != "\x61\165\164\150\x65\156\164\x69\x63\141\x74\x65\144") {
goto Ud;
}
$nV->removeRole($C3);
$nV->save();
goto kf;
Ud:
$nV->addRole($C3);
$nV->save();
kf:
Er:
}
U6:
SF:
}
public static function getToken($FD, $ok, $DT, $sm, $rI, $eu, $QE, $FL, $IR, $GF = false, $YI = '')
{
$base_url = \Drupal::request()->getSchemeAndHttpHost() . \Drupal::request()->getBasePath();
$BG = \Drupal::service("\163\x65\x73\x73\x69\157\156");
$PN = new appValues($IR);
$Wy = array();
$KM = $PN->scope;
if ($ok == "\x61\x75\x74\150\x6f\x72\x69\x7a\x61\164\x69\x6f\x6e\137\x63\157\144\x65\x5f\x77\x69\x74\x68\137\x70\x6b\143\145") {
goto LW;
}
if ($ok == "\x72\x65\146\162\145\x73\150\x5f\x74\157\x6b\x65\156") {
goto aR;
}
if ($QE && !$FL) {
goto T1;
}
if (!$QE && $FL) {
goto X5;
}
$Wy = Utilities::callService($FD, "\162\x65\144\x69\162\x65\x63\x74\x5f\x75\162\151\75" . urlencode($eu) . "\46\147\162\141\x6e\164\137\164\171\x70\145\75" . $ok . "\x26\143\x6c\x69\x65\156\164\x5f\x69\x64\x3d" . urlencode($DT) . "\46\143\154\x69\145\156\164\137\x73\145\143\x72\145\164\75" . urlencode($sm) . "\x26\x63\x6f\x64\x65\x3d" . $rI, array("\x41\165\164\x68\x6f\162\151\x7a\x61\x74\151\x6f\156" => "\102\141\163\x69\143\40" . base64_encode($DT . "\72" . $sm), "\x41\143\x63\x65\160\x74" => "\141\160\160\154\151\143\141\164\151\157\156\x2f\152\x73\157\x6e", "\103\157\156\x74\x65\x6e\x74\55\124\171\x70\145" => "\x61\160\x70\x6c\151\143\141\164\x69\157\x6e\x2f\x78\55\167\167\167\55\x66\157\162\155\x2d\165\x72\x6c\x65\156\143\157\144\x65\x64"), '', $GF);
goto oq;
X5:
$Wy = Utilities::callService($FD, "\x72\145\x64\151\162\x65\x63\x74\137\x75\162\x69\75" . urlencode($eu) . "\x26\x67\x72\x61\156\164\137\x74\x79\x70\x65\75" . $ok . "\46\x63\154\151\145\156\x74\x5f\151\x64\75" . urlencode($DT) . "\x26\x63\x6c\151\x65\x6e\164\x5f\163\x65\x63\x72\145\x74\x3d" . urlencode($sm) . "\46\143\157\x64\x65\x3d" . $rI, array("\101\143\143\145\160\x74" => "\141\x70\x70\x6c\x69\x63\141\164\x69\x6f\156\x2f\152\163\x6f\x6e", "\103\x6f\x6e\x74\145\156\164\55\124\171\160\x65" => "\x61\x70\160\x6c\x69\x63\x61\164\x69\157\x6e\57\x78\55\167\167\167\55\146\157\162\x6d\55\x75\x72\154\145\x6e\143\x6f\144\145\x64"), '', $GF);
oq:
goto CQ;
T1:
$Wy = Utilities::callService($FD, "\162\145\x64\151\162\x65\143\x74\137\165\162\151\75" . urlencode($eu) . "\46\x67\162\x61\x6e\x74\137\164\x79\160\x65\x3d" . $ok . "\x26\143\x6f\x64\x65\x3d" . $rI, array("\101\165\x74\150\157\x72\x69\x7a\141\x74\151\x6f\x6e" => "\x42\141\163\151\143\x20" . base64_encode($DT . "\72" . $sm), "\x41\x63\x63\145\x70\x74" => "\141\x70\160\154\x69\x63\141\164\151\x6f\156\57\152\x73\157\156", "\103\x6f\x6e\x74\x65\x6e\x74\55\124\171\x70\x65" => "\141\160\x70\154\151\x63\x61\164\151\x6f\156\57\170\55\x77\167\x77\55\146\x6f\162\155\55\x75\162\x6c\145\156\143\157\144\145\144"), '', $GF);
CQ:
goto s7;
LW:
$NZ = $BG->get("\x63\157\x64\145\x56\145\162\x69\146\x69\145\162");
$BG->remove("\143\157\144\x65\x56\145\162\151\146\x69\x65\x72");
$Wy = Utilities::callService($FD, "\162\145\x64\151\162\145\x63\164\137\x75\162\x69\x3d" . urlencode($eu) . "\x26\147\162\x61\156\164\x5f\x74\x79\160\145\75\x61\165\x74\x68\x6f\162\151\x7a\x61\164\151\x6f\156\x5f\143\157\144\x65" . "\46\x63\157\144\145\x3d" . $rI . "\x26\143\x6f\x64\145\x5f\x76\145\162\x69\x66\151\x65\162\x3d" . $NZ . "\46\143\154\x69\x65\156\x74\x5f\x69\144\x3d" . urlencode($DT), array("\101\143\x63\x65\160\164" => "\141\160\160\x6c\x69\x63\141\164\151\157\156\x2f\152\163\x6f\156", "\x43\157\156\164\145\x6e\164\x2d\x54\x79\160\x65" => "\141\160\160\154\151\x63\141\x74\151\x6f\x6e\x2f\x78\x2d\167\167\x77\55\146\157\x72\155\x2d\165\162\x6c\145\156\x63\x6f\144\145\144", "\x4f\x72\151\147\x69\156" => $base_url), '', $GF);
goto s7;
aR:
$MY = [];
$p5 = "\162\145\144\151\x72\145\143\164\x5f\165\162\x69\75" . urlencode($eu) . "\x26\147\162\x61\x6e\x74\137\x74\x79\160\x65\75" . $ok . "\x26\162\145\146\x72\x65\163\150\137\x74\157\x6b\145\156\75" . $YI;
if (!$QE) {
goto zs;
}
$MY = ["\101\x75\x74\150\157\162\151\172\141\164\x69\157\x6e" => "\x42\141\x73\x69\143\x20" . base64_encode($DT . "\72" . $sm), "\101\x63\x63\x65\160\164" => "\141\x70\x70\x6c\151\x63\x61\x74\x69\157\156\x2f\x6a\163\157\156", "\103\x6f\x6e\x74\x65\x6e\164\x2d\124\x79\x70\145" => "\141\160\x70\x6c\151\x63\141\x74\x69\157\156\x2f\170\55\x77\167\x77\x2d\x66\x6f\x72\155\55\165\x72\x6c\145\x6e\x63\x6f\144\145\x64"];
zs:
if (!$FL) {
goto j_;
}
$p5 = $p5 . "\46\x63\154\151\145\x6e\x74\137\x69\x64\x3d" . urlencode($DT) . "\x26\143\x6c\151\145\x6e\164\137\x73\x65\143\162\145\x74\x3d" . urlencode($sm);
j_:
$Wy = Utilities::callService($FD, $p5, $MY, '', $GF);
s7:
$HP = json_decode($Wy, true);
if (isset($HP["\141\143\x63\x65\x73\x73\x5f\x74\x6f\153\x65\156"]) || isset($HP["\x69\144\x5f\164\x6f\x6b\x65\x6e"])) {
goto iy;
}
\Drupal::logger("\x6d\151\156\151\157\162\x61\156\x67\x65\x5f\157\x61\x75\164\150\x5f\143\x6c\x69\x65\156\164")->error("\111\156\x76\x61\x6c\151\144\x20\162\x65\x73\x70\x6f\x6e\x73\x65\x20\x72\x65\x63\x65\x69\166\145\144\x20\x77\x68\x69\x6c\x65\x20\x66\145\x74\x63\150\151\156\x67\x20\x61\x63\x63\145\163\163\40\164\x6f\153\145\x6e\40\146\162\157\155\40\x75\x72\154\x2d\x3c\142\x72\76\x20{$FD}\x20\x3c\142\162\x3e\74\142\x72\76\40\122\x65\163\160\x6f\156\163\145\40\x3d\76\40\x3c\160\x72\145\76\x3c\143\x6f\x64\145\76" . print_r($HP, TRUE) . "\x3c\x70\162\x65\76\74\143\x6f\144\145\76");
if ($ok == "\x72\x65\146\162\145\x73\x68\x5f\x74\x6f\x6b\x65\x6e") {
goto CV;
}
if ($GF) {
goto fl;
}
Utilities::anonymousRedirect('', '', "\123\157\x6d\145\164\150\x69\x6e\x67\x20\x77\145\156\164\x20\x77\162\157\x6e\x67\54\x20\120\x6c\x65\x61\x73\145\40\143\157\156\164\x61\x63\x74\x20\164\150\x65\40\163\x69\x74\145\x20\x61\144\155\x69\156\x69\163\164\x72\x61\x74\157\162\56");
goto u8;
CV:
\Drupal::logger("\155\157\x5f\x73\145\x73\163\x69\x6f\156\137\x6d\141\x6e\x61\147\x65\162")->warning("\141\143\143\145\163\163\40\164\157\x6b\145\x6e\x20\162\x65\156\145\167\x61\x6c\x20\x66\x61\151\x6c\145\x64\56\74\142\x72\76\x20\x72\x65\x73\x70\157\x6e\163\x65\x20\x3d\x20\47\45\162\145\x73\160\157\156\163\x65\x27\x20", ["\x25\x72\x65\163\160\157\x6e\x73\x65" => print_r($HP, TRUE)]);
goto u8;
fl:
Utilities::show_error_message_testconfig("\x49\x6e\x76\141\x6c\x69\x64\x20\x72\145\163\160\x6f\156\163\x65\x20\162\x65\143\x65\151\166\x65\144\x20\x77\150\x69\x6c\x65\40\146\145\x74\x63\150\x69\156\x67\x20\141\143\143\x65\x73\x73\40\164\x6f\x6b\x65\156\x20\146\x72\157\x6d\40\x75\x72\154\x2d\74\x62\x72\76{$FD}\40\x3c\142\162\76\x3c\x62\x72\x3e\x20\x52\145\163\160\157\x6e\x73\145\40\75\76\x20\x3c\x70\162\145\76\x3c\143\157\x64\x65\x3e" . print_r($HP, TRUE) . "\x3c\x70\162\145\x3e\x3c\x63\157\144\x65\76");
u8:
iy:
Utilities::save_tokens_in_cookie_and_session($HP, new appValues($IR), $GF);
return $HP;
}
public static function validate_code_and_state($rI, $xM, $GF)
{
$BG = \Drupal::service("\163\x65\x73\163\x69\x6f\156");
if (empty($rI)) {
goto Uw;
}
if (empty($xM)) {
goto wp;
}
$IR = '';
$xM = Utilities::decodeState($xM);
if (!empty($BG->get("\141\x70\160\x6e\141\x6d\145"))) {
goto FB;
}
if (!(isset($xM["\141\160\x70\156\x61\x6d\145"]) && !empty($xM["\x61\x70\160\156\141\x6d\x65"]))) {
goto Kg;
}
$IR = $xM["\141\160\x70\156\x61\155\145"];
Kg:
goto Hj;
FB:
$IR = $BG->get("\x61\160\x70\x6e\x61\x6d\x65");
Hj:
if (!empty($IR)) {
goto xQ;
}
\Drupal::logger("\155\151\156\x69\x6f\162\x61\156\x67\x65\x5f\157\141\165\164\150\137\143\x6c\151\145\x6e\164")->error("\x49\x6e\x76\141\154\151\144\x20\x73\x74\141\x74\145\x20\160\x61\162\x61\x6d\145\164\145\x72");
if ($GF) {
goto R_;
}
Utilities::anonymousRedirect();
goto Ys;
R_:
Utilities::show_error_message_testconfig("\111\x6e\166\x61\154\x69\144\x20\163\x74\x61\164\145\x20\160\141\162\141\155\x65\164\145\x72");
Ys:
xQ:
goto Og;
Uw:
\Drupal::logger("\155\151\x6e\x69\157\162\x61\x6e\x67\x65\137\x6f\x61\x75\164\x68\x5f\143\154\x69\x65\x6e\164")->error("\74\160\162\145\76\x3c\143\157\144\x65\76" . print_r($_GET, true) . "\x3c\x70\162\x65\76\x3c\143\x6f\144\x65\x3e");
if ($GF) {
goto T0;
}
Utilities::anonymousRedirect();
goto Ru;
T0:
Utilities::show_error_message_testconfig("\x3c\x70\162\145\x3e\x3c\143\157\x64\x65\76" . print_r($_GET, true) . "\74\x70\x72\x65\76\x3c\x63\157\x64\x65\x3e");
Ru:
goto Og;
wp:
$lD = DBQueries::get_all_app_names_with_oauth_login_enabled();
return $lD[0]->app_name;
Og:
return $IR;
}
public static function implement_openid_flow($PN, $tX = '', $JK = '', $GF = false)
{
$rI = $tX;
$do = $PN->get_valuesInHeader();
$dG = $PN->get_valuesInBody();
$ok = $PN->grantTypevalue;
$rI = $tX;
$qO = Utilities::getCallbackUrl($PN->appName);
if (!(!$do == TRUE || !$do == 1)) {
goto zv;
}
$do = false;
zv:
if (!(!$dG == TRUE || !$dG == 1)) {
goto cm;
}
$dG = false;
cm:
if ($ok == "\160\141\x73\163\167\x6f\162\x64") {
goto BR;
}
$CK = self::getToken($PN->get_accessTokenEndpoint(), $ok, $PN->get_clientId(), $PN->get_clientSecret(), $rI, $qO, $do, $dG, $PN->appName, $GF);
goto QY;
BR:
$CK = $JK->getToken($PN, $GF);
QY:
if (isset($CK["\151\x64\x5f\164\x6f\153\145\x6e"])) {
goto h1;
}
\Drupal::logger("\155\151\156\151\x6f\162\x61\x6e\147\x65\137\157\x61\x75\164\150\137\x63\x6c\x69\x65\x6e\x74")->error("\x54\x68\145\x20\x4f\101\165\x74\x68\x20\162\x65\163\160\157\156\163\145\40\144\157\x65\163\x6e\47\164\x20\x63\157\156\164\x61\x69\x6e\x20\x61\156\x20\111\x44\x20\x74\157\x6b\x65\x6e\x2e\x20\120\154\145\141\x73\x65\40\x74\162\171\x20\163\x65\x6c\x65\x63\164\x69\156\147\x20\47\117\x41\165\x74\150\x20\62\56\60\x20\101\160\160\154\x69\143\x61\x74\x69\x6f\x6e\x27\40\x66\x72\157\x6d\x20\x74\x68\145\40\x27\123\x65\x6c\145\x63\164\x20\101\x70\160\154\151\143\x61\164\x69\157\x6e\40\x54\x79\160\145\47\x20\162\141\144\x69\157\x20\x62\x75\x74\x74\x6f\156\54\x20\151\146\x20\151\164\x20\x63\x6f\x6e\x74\141\151\156\x73\x20\x61\156\40\141\x63\x63\145\163\163\40\x74\157\x6b\145\x6e\56\x3c\142\162\x3e\x3c\x62\x72\76\74\142\x3e\x52\145\x73\x70\x6f\x6e\x73\x65\40\72\40\x3c\x2f\x62\x3e\74\160\x72\x65\x3e\74\x63\157\144\145\76" . print_r($CK, true) . "\x3c\57\x63\x6f\x64\145\x3e\74\x2f\x70\x72\x65\x3e");
if ($GF) {
goto Cy;
}
Utilities::anonymousRedirect('', '', "\123\157\x6d\x65\164\x68\x69\156\x67\40\x77\x65\x6e\x74\40\x77\162\157\x6e\x67\x2c\x20\x50\x6c\x65\x61\x73\145\40\143\157\x6e\x74\141\143\x74\x20\164\150\145\40\163\x69\164\145\40\x61\144\x6d\x69\156\151\163\x74\x72\141\x74\x6f\162\56");
goto h6;
Cy:
Utilities::show_error_message_testconfig("\x54\150\145\x20\117\101\x75\164\150\40\162\145\x73\160\x6f\156\163\x65\40\x64\157\x65\x73\156\47\x74\40\x63\157\x6e\164\141\x69\x6e\40\141\156\40\111\x44\x20\164\157\153\145\156\56\x20\x50\x6c\x65\141\x73\x65\x20\x74\162\x79\x20\163\x65\154\x65\143\x74\151\156\147\x20\x27\x4f\101\165\x74\150\40\62\56\x30\x20\x41\160\160\154\151\x63\x61\x74\151\x6f\x6e\x27\x20\x66\162\157\155\x20\164\x68\x65\40\47\x53\x65\154\x65\143\x74\x20\101\x70\160\154\x69\x63\141\164\x69\x6f\156\x20\x54\171\x70\145\47\x20\162\x61\144\151\x6f\x20\142\x75\164\x74\157\156\54\x20\151\x66\x20\151\x74\x20\x63\157\x6e\x74\141\x69\156\163\x20\141\156\40\141\x63\x63\145\163\x73\40\x74\x6f\153\145\x6e\x2e\74\142\162\76\74\x62\162\76\74\x62\76\122\x65\163\160\x6f\156\x73\145\x20\72\40\x3c\57\x62\76\x3c\x70\x72\x65\x3e\x3c\x63\x6f\144\x65\x3e" . print_r($CK, true) . "\74\x2f\x63\x6f\144\145\76\74\57\160\x72\x65\x3e");
h6:
h1:
$H6 = new HandleJWT($PN, $CK["\x69\x64\137\x74\x6f\x6b\145\x6e"], $GF);
$uE = $H6->getUserAttributesFromIDToken();
return [$CK, $uE];
}
public static function implement_oauth_flow($PN, $tX = '', $JK = '', $GF = false)
{
$do = $PN->get_valuesInHeader();
$dG = $PN->get_valuesInBody();
$BS = $PN->appName;
$ok = $PN->grantTypevalue;
$rI = $tX;
$qO = Utilities::getCallbackUrl($PN->appName);
$hR = \Drupal::config("\x6d\x69\156\151\157\162\x61\x6e\147\x65\x5f\x6f\141\165\164\150\137\x63\154\x69\x65\x6e\x74\x2e\x73\145\x74\164\151\x6e\x67\163")->get("\155\x69\156\151\157\162\141\156\147\x65\x5f\x6f\x61\165\164\150\x5f\x63\154\x69\145\x6e\x74\x5f\x67\162\157\x75\x70\137\x69\156\x66\157\137\145\160\137" . $BS);
if (!(!$do == TRUE || !$do == 1)) {
goto vb;
}
$do = false;
vb:
if (!(!$dG == TRUE || !$dG == 1)) {
goto XD;
}
$dG = false;
XD:
if ($ok == "\x70\141\163\163\x77\x6f\x72\144" && !empty($JK)) {
goto LI;
}
$CK = self::getToken($PN->get_accessTokenEndpoint(), $ok, $PN->get_clientId(), $PN->get_clientSecret(), $rI, $qO, $do, $dG, $BS, $GF);
goto qP;
LI:
$CK = $JK->getToken($PN, $GF);
qP:
if (isset($CK["\x61\x63\143\x65\163\163\137\x74\x6f\153\145\x6e"])) {
goto Lc;
}
\Drupal::logger("\x6d\x69\156\151\157\162\141\x6e\x67\x65\137\157\141\165\164\150\x5f\143\154\x69\145\x6e\164")->error("\x54\x68\x65\x20\117\x41\x75\164\150\40\x72\145\163\x70\157\156\163\145\x20\144\157\145\163\156\47\164\x20\143\x6f\156\x74\141\x69\156\40\x61\x6e\40\x61\x63\x63\145\x73\163\40\x74\x6f\x6b\x65\x6e\56\x20\x50\154\145\x61\x73\145\40\164\x72\171\40\x73\x65\x6c\145\x63\164\x69\156\x67\x20\47\117\x70\145\156\x49\104\40\x43\x6f\x6e\156\145\x63\x74\x20\101\x70\160\x6c\x69\143\x61\164\x69\157\x6e\x27\x20\146\x72\157\x6d\40\164\150\145\40\47\x53\145\154\145\x63\x74\x20\101\160\x70\x6c\x69\x63\x61\x74\x69\157\156\x20\124\x79\160\x65\x27\x20\x72\x61\x64\151\x6f\40\x62\x75\164\x74\x6f\x6e\x2c\40\151\x66\x20\151\164\x20\143\157\156\164\141\151\156\x73\x20\141\x6e\40\x49\104\40\x74\157\x6b\145\x6e\56\74\142\162\x3e\74\142\162\76\x3c\x62\76\122\145\x73\x70\x6f\156\163\x65\x20\x3a\40\x3c\57\x62\x3e\x3c\160\162\145\x3e\x3c\x63\157\144\x65\x3e" . print_r($CK, true) . "\x3c\x2f\143\x6f\x64\145\x3e\74\x2f\160\162\145\x3e");
if ($GF) {
goto RM;
}
Utilities::anonymousRedirect('', '', "\x53\x6f\x6d\145\x74\x68\151\156\147\40\x77\x65\x6e\x74\40\167\162\157\156\147\x2c\x20\x50\154\x65\141\x73\145\x20\143\x6f\x6e\164\141\x63\x74\x20\164\150\145\40\163\x69\164\145\40\141\x64\x6d\x69\156\151\x73\164\162\141\x74\157\162\x2e");
goto TL;
RM:
Utilities::show_error_message_testconfig("\124\150\x65\40\117\101\x75\164\x68\40\x72\x65\x73\x70\x6f\x6e\163\x65\x20\144\x6f\145\x73\x6e\47\x74\x20\143\x6f\x6e\x74\x61\x69\x6e\x20\x61\156\40\x61\x63\x63\145\x73\x73\x20\164\x6f\153\145\x6e\x2e\x20\120\154\145\x61\163\x65\40\x74\x72\171\x20\163\145\154\145\x63\164\x69\x6e\147\x20\x27\117\x70\x65\156\x49\x44\40\x43\x6f\x6e\x6e\x65\x63\x74\40\101\160\160\x6c\x69\143\141\x74\151\x6f\156\47\x20\146\x72\157\x6d\40\164\150\145\x20\x27\123\x65\154\x65\x63\x74\40\101\x70\x70\x6c\151\x63\141\x74\151\157\x6e\x20\x54\x79\x70\145\47\40\x72\141\x64\x69\x6f\40\142\165\164\x74\157\156\x2c\40\x69\146\x20\151\164\40\143\157\x6e\x74\x61\x69\x6e\x73\x20\x61\x6e\x20\x49\x44\x20\164\157\153\145\156\56\x3c\x62\162\76\x3c\x62\162\x3e\74\x62\x3e\x52\145\163\x70\x6f\156\163\145\40\x3a\40\x3c\x2f\142\x3e\74\160\162\145\76\74\x63\x6f\x64\x65\76" . print_r($CK, true) . "\74\57\143\157\x64\x65\76\74\57\160\162\145\76");
TL:
goto vs;
Lc:
$qf = $CK["\x61\143\143\145\x73\163\x5f\x74\157\x6b\x65\x6e"];
vs:
$GW = $PN->get_userInfoEndpoint();
if (!(substr($GW, -1) == "\75")) {
goto tS;
}
$GW .= $qf;
tS:
$uE = self::getResourceOwner($GW, $qf, $GF);
if (empty($hR)) {
goto xq;
}
$vD = Utilities::getGroupsInfo($hR, $qf, $GF);
$vD = !empty($vD) ? $vD : [];
$uE = array_merge($uE, $vD);
xq:
return [$CK, $uE];
}
public static function final_redirect_url_after_login($xM, $M0, $T2)
{
$xM = Utilities::decodeState($xM);
$AV = '';
if (isset($xM["\144\x65\163\164\151\156\x61\164\151\x6f\x6e"]) && !empty($xM["\144\145\163\164\x69\x6e\x61\x74\151\x6f\x6e"])) {
goto US;
}
if (isset($xM["\x72\145\x73\x74\162\x69\143\164\x65\144\x70\141\x67\145\144\145\163\x74\151\x6e\x61\164\x69\157\x6e"]) && !empty($xM["\162\x65\x73\x74\162\x69\143\164\145\x64\x70\x61\147\145\x64\x65\x73\x74\151\156\141\x74\151\157\x6e"])) {
goto v6;
}
if ($M0 != '') {
goto p5;
}
if (isset($xM["\162\145\x66\145\162\x65\162"]) && !empty($xM["\162\x65\x66\145\162\x65\x72"])) {
goto B5;
}
$AV = Url::fromRoute("\x65\x6e\164\151\164\171\x2e\165\163\145\x72\x2e\x63\141\x6e\x6f\156\151\x63\x61\154", ["\165\x73\145\x72" => $T2])->toString();
goto BO;
B5:
$AV = $xM["\162\x65\146\x65\x72\x65\x72"];
BO:
goto lN;
p5:
$AV = $M0;
lN:
goto VP;
v6:
$AV = $xM["\162\x65\163\x74\162\x69\x63\164\x65\144\160\141\x67\x65\x64\145\x73\164\x69\156\x61\x74\151\157\156"];
VP:
goto Eg;
US:
$AV = $xM["\144\145\x73\164\x69\x6e\x61\x74\x69\157\156"];
Eg:
return $AV;
}
public static function performSSOinDrupal($uE, $N8, $PN, $CK, $xM = '')
{
$BG = \Drupal::service("\x73\x65\x73\163\x69\157\156");
$mQ = \Drupal::moduleHandler();
$BU = \Drupal::config("\155\x69\156\151\x6f\162\141\x6e\147\x65\137\x6f\141\x75\x74\150\137\143\154\x69\x65\x6e\x74\x2e\163\x65\x74\164\151\x6e\147\163");
$mQ->invokeAll("\155\157\x5f\160\162\145\x5f\165\163\145\162\x5f\154\x6f\141\x64", [$uE, $CK]);
$GN = '';
$gL = '';
$el = '';
$q1 = '';
if (empty($PN->get_emailAttr())) {
goto V0;
}
$gL = $PN->get_emailAttr();
V0:
if (empty($PN->get_nameAttr())) {
goto Ic;
}
$GN = $PN->get_nameAttr();
Ic:
if (!(!empty($gL) && isset($N8[$gL]))) {
goto Tt;
}
$q1 = $N8[$gL];
Tt:
if (!($GN != "\123\x65\x6c\x65\143\x74" && isset($N8[$GN]))) {
goto CZ;
}
$el = $N8[$GN];
CZ:
$w8 = $BU->get("\x6d\151\156\x69\x6f\162\141\156\147\145\137\157\x61\165\164\150\x5f\x63\x6c\x69\x65\156\x74\137\154\157\141\144\x5f\x75\x73\x65\x72");
if (!($w8 == "\x45\155\x61\x69\154" && empty($q1))) {
goto hv;
}
Utilities::save_SSO_report_data("\106\x41\x49\x4c\125\122\x45\56\40\105\x6d\141\x69\154\40\156\x6f\164\x20\x6d\141\160\160\145\144", $PN->appName, $el ? $el : "\x2d", "\55");
Utilities::show_sso_error_message("\x45\155\141\151\x6c\x20\x61\144\x64\x72\x65\x73\163\x20\x6e\157\x74\x20\x72\145\x63\145\x69\166\x65\144\x2e", "\120\154\x65\141\x73\145\x20\x65\x6e\x73\165\162\145\x20\105\155\x61\151\154\40\101\164\164\162\x69\x62\x75\x74\145\40\x66\x69\x65\154\x64\x20\151\163\40\x63\x6f\156\x66\151\147\x75\x72\145\x64\40\160\162\157\160\145\x72\154\171\x20\151\156\40\x74\150\x65\x20\101\164\x74\x72\x69\x62\x75\x74\x65\x20\46\x20\x52\157\154\145\40\x4d\x61\160\160\151\x6e\x67\40\164\x61\142\x20\157\x66\40\164\150\145\x20\155\157\x64\x75\x6c\x65\x2e");
hv:
if (!($w8 == "\125\x73\145\162\156\141\x6d\145" && empty($el))) {
goto et;
}
Utilities::save_SSO_report_data("\x46\x41\x49\x4c\125\122\105\56\x20\125\163\x65\x72\156\x61\x6d\145\x20\156\157\x74\40\x6d\x61\160\x70\x65\x64", $PN->appName, $el ? $el : "\55", "\x2d");
Utilities::show_sso_error_message("\x55\x73\145\x72\x6e\x61\x6d\145\x20\x6e\157\164\x20\x72\x65\x63\145\x69\166\x65\x64\56", "\x50\154\145\141\163\145\x20\145\156\x73\x75\162\145\x20\125\163\145\x72\x6e\x61\x6d\145\40\101\x74\164\x72\x69\142\x75\x74\145\40\146\x69\145\154\x64\x20\x69\163\x20\x63\x6f\156\146\x69\147\165\162\x65\x64\40\x70\162\157\160\x65\x72\154\x79\40\x69\x6e\x20\x74\150\x65\x20\101\164\x74\x72\151\142\165\164\x65\x20\46\40\x52\x6f\154\145\x20\x4d\141\x70\160\151\x6e\147\x20\x74\141\x62\x20\157\146\x20\164\150\x65\40\155\157\144\x75\x6c\x65\56");
et:
$gw = Utilities::Is_Restricted_Domain($q1);
if (!$gw) {
goto i8;
}
Utilities::save_SSO_report_data("\106\x41\111\x4c\125\x52\105\56\x20\104\157\x6d\x61\151\x6e\x20\x52\145\163\164\x72\151\143\164\x65\144", $PN->appName, $el ? $el : "\x2d", $q1);
Utilities::anonymousRedirect('', "\101\40\165\x73\x65\x72\x20\x28\145\155\x61\x69\154\40\55\40\74\x69\76" . $q1 . "\74\57\151\x3e\x2c\x20\x75\163\x65\162\156\141\155\145\x20\x2d\x20\x3c\x69\76" . $el . "\74\x2f\x69\76\51\40\x77\x69\164\150\x20\162\145\x73\x74\162\151\143\x74\145\x64\40\x64\x6f\x6d\141\151\x6e\x20\x69\x73\40\x61\164\164\145\x6d\x70\151\156\147\x20\x74\157\x20\x6c\157\147\151\x6e", "\131\157\165\x20\141\162\145\x20\x6e\157\x74\x20\x61\154\x6c\157\167\x65\144\x20\164\x6f\40\154\x6f\147\x69\x6e\40\x74\x6f\40\x74\x68\x69\163\40\163\151\x74\145\x2c\40\160\x6c\x65\141\163\x65\40\x63\x6f\156\x74\x61\x63\164\x20\164\150\x65\x20\163\151\164\x65\40\x61\x64\155\151\156\151\x73\164\x72\x61\164\157\162\x2e");
i8:
self::is_role_allowed($PN, $uE);
if ($w8 == "\105\x6d\x61\x69\154") {
goto W4;
}
if ($w8 == "\x55\163\145\x72\156\x61\x6d\145") {
goto eX;
}
goto uY;
W4:
$nV = user_load_by_mail($q1);
goto uY;
eX:
$nV = user_load_by_name($el);
uY:
$dX = $PN->get_enableRolemapping();
$HN = $PN->get_defaultRole();
if (!empty($el)) {
goto r5;
}
$el = $q1;
r5:
$sw = $BU->get("\x6d\x69\156\151\x6f\162\x61\x6e\x67\145\x5f\157\141\165\164\x68\x5f\x72\x65\x71\x75\x69\x72\145\x5f\x70\162\157\146\x69\x6c\145\x5f\146\x69\145\x6c\144");
if (!empty($nV->uid)) {
goto Cm;
}
$mQ->invokeAll("\x6d\x6f\x5f\x70\162\145\x5f\165\x73\x65\x72\x5f\x72\x65\x67\x69\163\164\x65\162", [$uE]);
$Cb = new mOUserRegistration($PN->autocreateuser, $PN->create_disable_user, $PN->redirect_disable, $PN->redirect_unregister, $el, $q1, $dX, $HN, $PN->appName);
$nV = $Cb->create_new_user($uE);
Cm:
$nV = User::load($nV->id());
$mQ->invokeAll("\x6d\157\x5f\160\157\163\x74\137\x75\163\145\x72\137\154\x6f\x61\x64", [$nV, $uE, $CK]);
if ($nV->isActive()) {
goto zc;
}
$EA = $BU->get("\155\x69\156\x69\157\162\141\156\x67\x65\137\157\141\x75\164\x68\137\141\143\164\x69\x76\141\x74\145\137\x75\163\145\x72\163");
if ($EA) {
goto kw;
}
Utilities::anonymousRedirect($PN->redirect_disable, '', "\x54\x68\145\x20\x75\x73\145\x72\156\141\155\145\x20\74\151\76" . $nV->getAccountName() . "\x3c\x2f\x69\76\40\x68\141\x73\40\x6e\x6f\x74\40\x62\145\145\156\x20\x61\x63\x74\151\166\x61\x74\145\x64\x20\x6f\162\x20\x69\163\40\142\x6c\x6f\143\x6b\x65\144\x2e");
goto UF;
kw:
$nV->set("\x73\x74\x61\x74\165\x73", TRUE);
$nV->save();
\Drupal::logger("\155\151\x6e\151\x6f\162\x61\156\x67\145\137\157\141\x75\x74\150\137\x63\154\x69\x65\156\164")->notice("\x54\x68\x65\40\165\163\145\162\156\141\x6d\x65\x20\74\151\76" . $nV->getAccountName() . "\x3c\57\151\76\x20\x68\x61\x73\40\142\145\145\156\x20\x61\143\164\151\x76\x61\x74\x65\144");
UF:
zc:
$G7 = $BU->get("\155\151\156\x69\x6f\162\141\x6e\147\x65\x5f\x6f\x61\x75\164\150\137\162\x65\x73\164\x72\151\x63\x74\x5f\x73\x73\157\137\x66\x6f\x72\x5f\141\144\155\151\x6e");
if (!($G7 && $nV->hasRole("\141\x64\155\151\156\151\x73\164\x72\x61\x74\157\x72"))) {
goto yB;
}
Utilities::anonymousRedirect($PN->redirect_disable, "\101\x20\165\x73\x65\x72\40\167\151\x74\150\40\x61\x64\155\x69\x6e\x69\x73\164\x72\x61\164\x6f\162\x20\x52\x6f\154\x65\x20\151\163\40\x61\164\164\x65\x6d\x70\151\156\x67\x20\123\x53\x4f", "\123\157\x6d\x65\164\150\151\x6e\x67\x20\167\x65\x6e\164\x20\x77\162\x6f\156\x67\54\x20\x50\x6c\145\x61\163\x65\x20\x63\157\156\x74\x61\143\x74\40\x74\x68\x65\x20\x73\x69\x74\x65\40\x61\x64\x6d\x69\x6e\151\163\x74\x72\x61\x74\x6f\162\56");
yB:
self::perform_attribute_mapping($nV, $PN, $N8);
self::implement_role_mapping($nV, $PN, $uE);
self::perform_profile_mapping($nV, $PN, $uE);
self::perform_group_mapping($nV, $PN, $uE);
$mQ->invokeAll("\x6d\157\x5f\x70\157\x73\x74\137\x6d\x61\x70\x70\151\x6e\x67", [$nV, $uE, $CK]);
$AV = self::final_redirect_url_after_login($xM, $PN->redirect_after_login, $nV->id());
Utilities::save_SSO_report_data("\123\125\103\103\x45\x53\123", $PN->appName, $el, $q1, $AV);
$BG->set("\155\x6f\x5f\x73\163\x6f\137\163\x65\163\x73\x69\157\x6e", true);
$BG->set("\141\160\x70\x6e\x61\155\x65", $PN->appName);
if (!($PN->sendidtokeninslorequest && isset($CK["\x69\144\x5f\164\x6f\x6b\x65\156"]))) {
goto k8;
}
$BG->set("\x6d\157\x5f\x69\x64\x5f\164\157\x6b\145\156", $CK["\151\x64\137\x74\x6f\153\145\x6e"]);
k8:
$WT = array();
$WT["\162\145\144\x69\x72\x65\x63\x74"] = $AV;
user_login_finalize($nV);
$BG->set("\x6d\x6f\137\x73\x73\x6f\x5f\163\x65\163\163\151\157\x6e", true);
$BG->set("\x61\160\160\x6e\x61\155\x65", $PN->appName);
$mQ->invokeAll("\x6d\157\137\x70\157\x73\164\x5f\x75\163\x65\162\137\154\157\x67\151\156", [&$nV, $uE]);
$mQ->invokeAll("\155\157\x5f\x6f\141\x75\x74\150\137\x75\x73\x65\162\137\164\157\153\x65\x6e", [&$nV, $CK, $AV]);
if (!($sw == 1 && !Utilities::check_for_redirect_to_user_profile_form($q1))) {
goto rN;
}
Utilities::redirect_to_profile_form($nV->id());
rN:
$Wy = new RedirectResponse($WT["\x72\145\144\x69\162\x65\143\x74"]);
\Drupal::service("\160\141\x67\x65\x5f\143\141\x63\x68\x65\x5f\x6b\x69\x6c\154\137\x73\x77\151\x74\143\x68")->trigger();
return $Wy;
}
public static function is_role_allowed($PN, $uE)
{
$wS = $PN->enable_role_based_restriction;
$hm = $PN->role_restriction_attrname;
$SM = $PN->list_of_roles;
$v6 = $PN->typeof_role_restriction;
$TI = $PN->redirect_url_for_role_restriction;
if (!($wS && $SM && $v6 && $hm)) {
goto VV;
}
$Jh = new MiniorangeOAuthRoleRestriction($uE, $hm, $SM, $TI);
if ($v6 === "\167\150\151\164\x65\x6c\x69\x73\x74") {
goto tR;
}
$Jh->validate_blacklisted_role_restriction();
goto hS;
tR:
$Jh->validate_whitelisted_role_restriction();
hS:
VV:
return new Response();
}
public static function perform_attribute_mapping($nV, $PN, $uE)
{
$at = $PN->get_attributeMap();
$at = !empty($at) ? $at : array();
$dm = array();
$Zw = array();
foreach ($at as $C3) {
if (!($C3["\x6d\x61\143\150\151\x6e\x65\137\x6e\x61\155\145"] != '' && $C3["\x61\164\x74\x72\x69\x62\165\164\x65\x5f\x6e\141\x6d\145"] != '')) {
goto n0;
}
array_push($Zw, $C3["\155\141\x63\150\151\x6e\145\x5f\156\x61\155\x65"]);
array_push($dm, $C3["\141\164\164\162\x69\x62\165\x74\145\137\156\x61\155\x65"]);
n0:
Tv:
}
xo:
$a2 = self::mo_oauth_attr_map($dm, $Zw);
$Au = array();
if (!(isset($a2) && !empty($a2))) {
goto fk;
}
foreach ($a2 as $Kr => $sQ) {
if (!isset($uE[$Kr])) {
goto wo;
}
$Au[$sQ] = $uE[$Kr];
wo:
YH:
}
Gp:
foreach ($Au as $C3 => $wZ) {
$nV->{$C3} = $wZ;
$nV->save();
aE:
}
cw:
fk:
}
public static function implement_role_mapping($nV, $PN, $uE)
{
$A0 = $PN->get_roleAttribute();
if (!(isset($A0) && !empty($A0))) {
goto dT;
}
$rq = self::getnestedattribute($uE, $A0);
if (is_null($nV)) {
goto fV;
}
self::perform_role_mapping($PN, $uE, $nV, $rq, $PN->appName);
fV:
dT:
}
public static function perform_profile_mapping($nV, $PN, $uE)
{
$NG = $PN->get_profileMap();
$NG = !empty($NG) ? $NG : array();
$b3 = array();
$Qg = array();
if (empty($NG)) {
goto RO;
}
foreach ($NG as $C3) {
if (!($C3["\x75\163\145\x72\137\160\x72\x6f\x66\x69\x6c\x65\x5f\146\x69\x65\154\144\137\x6e\x61\x6d\x65"] != '' && $C3["\x75\x73\145\x72\x5f\x70\162\157\x66\x69\154\145\x5f\x69\x64\x70\137\x61\164\164\x72\x69\x62\165\164\x65\x5f\x6e\141\155\145"] != '')) {
goto mM;
}
array_push($b3, $C3["\165\163\x65\x72\137\160\162\x6f\146\x69\154\145\x5f\146\x69\x65\x6c\x64\137\x6e\141\x6d\x65"]);
array_push($Qg, $C3["\165\163\145\x72\137\160\x72\157\146\151\x6c\x65\137\x69\144\160\x5f\x61\164\164\162\x69\142\x75\x74\x65\137\156\141\155\145"]);
mM:
Tm:
}
pY:
$Pr = self::mo_oauth_attr_map($b3, $Qg, "\x72\157\x6c\x65");
$Ao = array();
if (!(isset($Pr) && !empty($Pr))) {
goto rn;
}
$Pr = self::to_explode_semicolon($Pr);
foreach ($Pr as $C3 => $vi) {
$yl = array();
foreach ($vi as $wZ) {
if (!array_key_exists($wZ, $uE)) {
goto vo;
}
array_push($yl, $uE[$wZ]);
vo:
P_:
}
D4:
$Ao[$C3] = $yl;
Wb:
}
GT:
self::create_profile($Ao, $nV, $PN);
rn:
RO:
}
public static function perform_group_mapping($nV, $PN, $uE)
{
$Ji = $PN->enablegroupmapping;
$bv = $PN->keepExistingGroups;
$a7 = $PN->groupAttribute;
$mp = !empty($PN->groupmap) ? json_decode($PN->groupmap, true) : [];
$IH = '';
if (empty($a7)) {
goto jS;
}
$IH = self::getnestedattribute($uE, $a7);
jS:
$TH = [];
if (!is_array($IH) && !empty($IH)) {
goto Cu;
}
$TH = is_array($IH) ? $IH : [];
goto bz;
Cu:
$IH = str_replace(["\x5b", "\x5d"], '', $IH);
$IH = explode("\54", $IH);
foreach ($IH as $C3 => $wZ) {
$TH[] = str_replace("\x22", '', trim($wZ));
Rs:
}
EI:
bz:
$DI = [];
$FB = [];
foreach ($mp as $C3) {
if (empty(trim($C3["\x6f\141\x75\164\150\x5f\x73\145\x72\x76\145\x72\137\x61\164\164\x72\x73"]))) {
goto oH;
}
array_push($DI, $C3["\x67\x72\157\165\x70\x5f\x6e\x61\155\145"]);
array_push($FB, $C3["\x6f\141\x75\x74\150\x5f\163\145\x72\166\x65\162\x5f\141\164\164\162\x73"]);
oH:
VO:
}
rO:
$YN = self::mo_oauth_attr_map($DI, $FB, "\162\157\x6c\x65");
if (!($Ji && is_array($TH) && !empty($YN) && $nV)) {
goto by;
}
foreach ($YN as $C3 => $wZ) {
$Kt = false;
$Nn = \Drupal::entityTypeManager()->getStorage("\147\162\157\x75\x70");
$CP = $Nn->load($C3);
if (!$CP) {
goto aT;
}
if (!$CP->getMember($nV)) {
goto he;
}
$Kt = true;
he:
$us = explode("\73", $wZ);
if (!empty(array_intersect($TH, $us))) {
goto HO;
}
if (!($Kt && !$bv)) {
goto wz;
}
$CP->removeMember($nV);
$CP->save();
wz:
goto uH;
HO:
if ($CP->getMember($nV)) {
goto dp;
}
$CP->addMember($nV);
$CP->save();
dp:
uH:
aT:
fg:
}
vE:
by:
}
public static function Test_Configuration($uE, $IR)
{
$s9 = \Drupal::service("\145\x78\x74\145\x6e\x73\x69\157\156\56\x6c\x69\x73\x74\x2e\x6d\x6f\144\x75\x6c\145")->getPath("\x6d\x69\156\x69\157\162\141\156\x67\145\x5f\x6f\141\x75\x74\150\137\x63\x6c\x69\145\x6e\164");
$base_url = \Drupal::request()->getSchemeAndHttpHost() . \Drupal::request()->getBasePath();
setrawcookie("\155\157\56\164\145\163\x74\x43\x6f\x6e\146\151\x67", true, \Drupal::time()->getRequestTime() - 300, "\x2f");
$Yu = isset($uE["\145\x6d\x61\151\x6c"]) ? $uE["\145\x6d\141\151\x6c"] : "\125\163\x65\162";
$H3 = '';
Utilities::show_attr($uE, $H3, 0, '', "\x3c\x74\162\40\163\x74\171\154\x65\x3d\x22\164\x65\170\x74\x2d\141\154\151\147\156\72\143\145\156\x74\145\x72\x3b\42\x3e", "\x3c\x74\x64\40\x73\164\x79\154\145\x3d\x27\x66\157\156\x74\55\x77\145\151\x67\x68\164\x3a\x62\x6f\x6c\144\x3b\x70\141\144\x64\x69\x6e\147\72\62\45\x3b\142\157\x72\x64\145\x72\x3a\x32\160\170\x20\x73\157\154\x69\x64\x20\43\x39\64\71\x30\71\x30\x3b\x20\x77\x6f\162\144\x2d\167\162\x61\160\72\x62\162\x65\141\x6b\55\167\x6f\162\x64\x3b\x27\x3e");
$cK = is_array($uE) ? json_encode($uE) : '';
\Drupal::configFactory()->getEditable("\x6d\151\x6e\151\157\x72\x61\x6e\147\145\x5f\157\x61\x75\164\150\137\x63\154\151\145\156\x74\56\163\145\x74\x74\151\156\x67\x73")->set("\x6d\x69\x6e\151\157\162\x61\156\x67\145\x5f\157\141\x75\x74\150\x5f\x63\x6c\151\145\156\x74\x5f\141\164\164\162\137\154\151\x73\164\x5f\x66\162\x6f\155\x5f\163\x65\x72\x76\x65\x72\137" . $IR, $cK)->save();
$ns = [];
if (!is_array($uE)) {
goto Dq;
}
$ns = array_combine(array_keys($uE), array_keys($uE));
Dq:
$ns = is_array($ns) ? json_encode($ns) : '';
\Drupal::configFactory()->getEditable("\155\x69\156\x69\x6f\162\141\156\x67\x65\137\157\141\x75\x74\150\x5f\143\154\x69\x65\156\x74\56\x73\145\x74\164\x69\x6e\x67\163")->set("\155\151\x6e\x69\x6f\162\141\x6e\x67\145\137\x6f\x61\165\164\x68\x5f\x63\154\x69\x65\156\x74\x5f\x61\164\164\162\137\154\151\163\164\137\146\162\x6f\155\x5f\x73\145\x72\x76\x65\x72\137\x6d\141\160\x70\151\x6e\147\137" . $IR, $ns)->save();
echo "\x3c\144\151\x76\40\x73\x74\171\x6c\x65\75\x22\x66\x6f\x6e\164\55\x66\141\x6d\x69\x6c\171\72\103\x61\154\151\x62\x72\x69\x3b\x70\141\144\x64\x69\156\x67\72\60\x20\63\x25\x3b\x22\76";
echo "\x3c\144\151\166\40\x73\x74\171\x6c\x65\75\42\x63\x6f\154\157\x72\72\x20\x23\x33\x63\67\x36\x33\x64\73\142\141\x63\153\x67\x72\x6f\165\x6e\x64\x2d\143\x6f\154\x6f\162\x3a\40\x23\144\x66\x66\60\x64\70\73\40\160\x61\x64\144\x69\x6e\147\72\x32\45\x3b\x6d\141\x72\147\x69\156\55\142\157\x74\164\157\155\72\62\x30\160\x78\x3b\164\x65\x78\164\55\x61\154\151\x67\156\72\x63\x65\x6e\x74\x65\x72\73\x20\142\x6f\x72\x64\145\x72\72\x31\160\170\40\163\x6f\154\x69\144\x20\43\101\105\104\x42\71\x41\x3b\15\xa\x20\x20\x20\x20\x20\40\x20\x20\x20\x20\40\40\x20\40\40\40\40\x20\x20\40\x20\x20\40\x20\x20\x20\x20\40\x20\x20\x66\157\x6e\164\55\163\151\x7a\145\x3a\x31\65\160\x74\x3b\x22\76\15\12\x20\x20\40\40\x20\x20\x20\x20\x20\40\x20\40\40\x20\x20\x20\x20\x20\x20\40\40\40\x20\40\40\40\40\40\x20\x20\124\x45\123\124\x20\123\x55\x43\x43\x45\123\x53\x46\125\x4c\xd\12\x20\x20\40\40\40\40\40\40\40\40\x20\40\x20\40\x20\x20\x20\40\40\40\x20\x20\40\40\x20\x20\40\x20\x3c\x2f\144\x69\x76\x3e\xd\xa\x20\40\x20\40\x20\40\x20\40\x20\x20\x20\40\x20\40\x20\40\40\x20\40\40\40\40\x20\40\40\40\x20\x20\x3c\x64\x69\x76\40\x73\164\171\x6c\x65\75\x22\x64\x69\x73\160\x6c\141\x79\x3a\x62\x6c\x6f\143\x6b\73\x74\x65\x78\x74\55\x61\x6c\x69\x67\x6e\72\x63\x65\156\164\145\x72\x3b\155\x61\162\147\151\x6e\x2d\x62\157\x74\x74\x6f\x6d\x3a\x34\45\x3b\x22\76\xd\xa\x20\40\40\40\x20\x20\40\40\x20\x20\40\x20\40\x20\x20\40\x20\x20\40\x20\40\x20\x20\x20\40\x20\x20\40\40\40\x3c\151\x6d\x67\40\163\x74\x79\154\145\x3d\42\167\151\x64\x74\150\72\x31\65\x25\x3b\42\x73\162\143\x3d\42" . $base_url . "\57" . $s9 . "\57\x61\163\x73\x65\164\163\57\x69\155\x67\57\147\x72\x65\x65\156\137\x63\x68\145\x63\153\56\x70\156\x67\42\76\15\xa\x20\40\40\40\40\x20\x20\40\40\x20\x20\40\x20\x20\40\x20\x20\x20\x20\40\x20\x20\x20\40\x20\40\40\x20\x3c\x2f\144\151\x76\76";
echo "\74\163\160\141\156\x20\163\x74\171\x6c\145\75\42\x66\x6f\x6e\x74\x2d\x73\x69\172\145\72\x31\63\x70\x74\x3b\x22\76\74\142\76\x48\x65\x6c\x6c\157\x3c\57\x62\76\54\x20" . $Yu . "\x3c\57\x73\x70\141\x6e\76\x3c\x62\162\57\x3e\xd\12\x20\40\x20\40\40\40\40\x20\40\40\40\40\40\x20\40\x20\x20\x20\40\40\40\x20\x20\40\40\x20\40\40\74\160\x20\x73\x74\x79\x6c\x65\75\42\x66\157\156\x74\x2d\167\145\151\147\150\x74\x3a\142\157\x6c\144\73\146\x6f\156\164\55\163\151\x7a\x65\x3a\x31\x33\x70\x74\73\155\141\162\147\151\x6e\55\x6c\145\x66\x74\x3a\x31\x25\x3b\x22\76\x41\124\x54\122\x49\x42\125\x54\105\123\x20\122\x45\103\105\x49\x56\105\x44\72\74\57\160\76\15\xa\x20\40\x20\x20\x20\x20\x20\40\x20\40\x20\x20\40\40\x20\40\x20\40\40\40\x20\x20\x20\40\40\40\40\x20\x3c\x74\141\142\x6c\145\40\163\x74\171\x6c\x65\75\x22\x62\x6f\162\144\145\x72\55\x63\x6f\x6c\x6c\x61\160\x73\145\72\x63\x6f\x6c\x6c\141\160\163\x65\73\142\x6f\x72\x64\x65\162\x2d\163\x70\x61\143\x69\x6e\147\72\x30\x3b\40\x64\x69\x73\160\x6c\141\171\72\x74\141\142\x6c\145\x3b\x77\151\x64\x74\x68\72\61\60\60\x25\x3b\40\146\x6f\156\164\x2d\x73\151\x7a\145\72\61\x33\160\164\x3b\x62\x61\x63\x6b\x67\x72\x6f\165\156\144\55\x63\157\x6c\x6f\162\x3a\x23\x45\x44\105\x44\105\x44\73\42\76\xd\xa\x20\x20\40\40\x20\40\40\40\40\x20\x20\x20\40\x20\40\40\x20\40\40\x20\40\x20\40\x20\x20\x20\40\40\x20\40\x20\40\x3c\x74\162\40\163\x74\171\x6c\145\x3d\42\164\x65\x78\x74\55\141\154\151\147\156\72\143\x65\x6e\164\145\162\x3b\42\x3e\15\12\x20\x20\40\x20\40\x20\x20\x20\40\x20\x20\40\x20\x20\x20\40\40\40\40\40\x20\x20\x20\x20\x20\x20\40\x20\40\40\x20\40\40\x20\40\x20\x3c\164\x64\40\163\164\x79\x6c\x65\x3d\42\146\x6f\x6e\x74\x2d\167\145\151\x67\x68\164\72\142\157\x6c\144\73\x62\157\x72\144\145\x72\x3a\62\160\170\40\x73\x6f\x6c\151\x64\x20\x23\71\x34\71\x30\x39\x30\73\160\141\144\x64\x69\156\147\72\x32\45\73\42\x3e\101\x54\x54\x52\x49\102\x55\x54\105\40\116\x41\115\x45\74\x2f\x74\x64\x3e\15\xa\40\40\x20\40\x20\x20\x20\40\x20\40\40\x20\x20\x20\x20\x20\x20\40\x20\x20\40\40\40\40\x20\x20\40\40\x20\40\x20\40\x20\x20\40\x20\x3c\x74\144\x20\163\164\x79\154\145\75\42\x66\x6f\x6e\x74\x2d\x77\145\151\x67\150\x74\72\142\x6f\154\144\73\160\x61\144\x64\x69\156\x67\72\62\x25\x3b\x62\157\162\144\145\x72\72\x32\160\170\40\x73\x6f\x6c\151\144\40\43\71\64\x39\x30\x39\x30\73\40\167\157\x72\x64\x2d\167\x72\x61\x70\x3a\142\162\145\141\153\55\167\x6f\x72\144\73\42\x3e\101\124\124\x52\x49\x42\125\x54\x45\x20\x56\101\114\x55\x45\74\x2f\x74\144\76\xd\xa\x20\x20\40\x20\x20\x20\x20\40\40\40\40\40\x20\40\x20\x20\40\x20\x20\x20\x20\x20\40\x20\40\40\40\40\x20\40\40\x20\74\x2f\164\162\76";
echo $H3;
echo "\x3c\x2f\164\x61\x62\154\145\76\74\x2f\144\151\166\76";
echo "\74\x64\x69\166\40\163\164\171\x6c\145\x3d\42\155\x61\162\x67\x69\156\72\x33\x25\73\144\151\163\x70\x6c\x61\x79\x3a\x62\154\157\143\x6b\73\164\145\170\164\55\x61\154\x69\x67\x6e\72\143\x65\x6e\164\145\162\73\x22\x3e\15\12\40\40\x20\40\x20\40\40\x20\40\x20\x20\40\40\x20\x20\40\40\40\x20\40\40\x20\x20\40\x20\x20\x20\x20\40\x20\74\151\x6e\160\x75\164\40\x73\164\x79\x6c\145\75\x22\160\x61\144\x64\x69\x6e\x67\x3a\61\x25\73\167\x69\144\164\150\72\x33\67\45\x3b\142\141\x63\x6b\x67\x72\157\x75\x6e\x64\x3a\x20\x23\x30\60\71\61\103\104\40\156\157\x6e\x65\x20\162\x65\160\145\x61\x74\x20\163\143\162\x6f\x6c\x6c\x20\x30\45\40\60\x25\x3b\143\165\x72\x73\x6f\x72\72\x20\160\x6f\x69\x6e\x74\x65\x72\73\146\157\x6e\x74\x2d\x73\151\172\145\72\x31\65\x70\x78\x3b\xd\12\40\40\x20\40\x20\x20\40\x20\x20\40\x20\40\x20\x20\40\x20\x20\40\40\x20\40\x20\x20\40\x20\x20\x20\x20\40\x20\x20\x20\x20\x20\x62\157\162\x64\145\x72\x2d\x77\151\x64\164\150\72\x20\x31\x70\x78\73\x62\x6f\162\144\145\x72\55\163\x74\171\x6c\145\x3a\40\163\157\154\151\x64\73\x62\157\x72\x64\x65\162\55\162\x61\144\x69\165\x73\x3a\x20\x33\x70\170\73\167\x68\151\164\x65\x2d\163\160\x61\x63\145\72\x20\156\157\x77\162\141\160\73\x62\x6f\170\55\x73\x69\x7a\x69\x6e\147\x3a\40\x62\x6f\162\x64\145\x72\55\142\x6f\170\x3b\142\157\x72\144\x65\x72\x2d\143\157\154\157\x72\72\x20\x23\x30\60\67\63\101\101\73\15\xa\40\x20\x20\40\40\40\x20\x20\40\40\40\x20\x20\x20\40\40\x20\x20\40\x20\40\x20\40\x20\x20\40\x20\x20\40\x20\40\x20\40\x20\x62\x6f\x78\55\x73\x68\x61\144\157\167\x3a\40\60\x70\170\x20\61\x70\x78\x20\60\160\170\x20\x72\147\x62\x61\50\61\62\60\54\x20\x32\60\x30\54\40\x32\63\x30\x2c\x20\60\56\x36\x29\x20\x69\156\x73\145\x74\x3b\143\157\154\x6f\x72\x3a\40\43\x46\106\x46\x3b\42\164\x79\160\x65\x3d\x22\x62\165\x74\164\x6f\156\x22\x20\166\x61\154\x75\x65\x3d\x22\103\x6f\156\146\x69\x67\165\162\145\40\101\x74\164\x72\151\142\165\164\x65\57\122\x6f\154\145\x20\x4d\141\160\160\151\156\147\42\xd\xa\40\40\x20\x20\x20\40\x20\40\x20\40\x20\x20\x20\40\40\x20\40\40\40\40\x20\x20\40\40\x20\40\x20\x20\x20\x20\x6f\x6e\103\x6c\x69\143\153\x3d\42\143\154\157\x73\145\137\141\156\144\137\x72\145\144\151\x72\145\143\x74\x28\x29\73\x22\x3e\xd\12\xd\xa\40\40\40\40\40\x20\x20\x20\x20\40\40\x20\40\x20\x20\x20\40\40\40\40\x20\x20\40\x20\40\x20\40\x20\40\x20\x3c\151\156\x70\x75\x74\x20\x73\164\x79\x6c\x65\75\42\x70\x61\x64\x64\151\x6e\147\x3a\x31\x25\x3b\x77\x69\x64\164\x68\x3a\x31\x30\x30\x70\170\73\x62\141\143\153\x67\162\157\165\156\144\x3a\40\x23\60\60\71\x31\103\104\x20\x6e\157\156\x65\x20\162\x65\160\145\x61\x74\40\x73\x63\162\157\x6c\x6c\40\60\45\40\60\45\73\x63\165\x72\163\157\x72\x3a\40\x70\157\151\x6e\164\x65\x72\73\146\x6f\x6e\x74\x2d\x73\x69\x7a\x65\72\x31\x35\160\x78\x3b\xd\xa\40\x20\40\40\40\x20\40\x20\40\40\x20\40\x20\x20\x20\40\x20\x20\40\x20\40\x20\40\40\x20\40\40\x20\40\40\40\40\40\40\142\157\162\144\x65\x72\x2d\167\x69\144\x74\x68\x3a\40\x31\x70\170\x3b\x62\x6f\162\144\145\162\55\163\x74\171\154\x65\72\40\x73\x6f\x6c\151\144\x3b\x62\x6f\162\x64\x65\x72\x2d\x72\x61\144\151\x75\x73\72\x20\63\x70\170\x3b\167\150\x69\164\145\x2d\163\160\141\143\145\x3a\40\x6e\x6f\167\x72\x61\x70\73\142\157\170\x2d\x73\151\x7a\x69\156\147\x3a\40\142\x6f\162\144\145\162\x2d\142\x6f\x78\x3b\142\157\162\x64\145\x72\x2d\x63\x6f\154\x6f\x72\72\40\x23\x30\60\x37\x33\101\101\x3b\15\xa\x20\40\x20\40\x20\40\40\40\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\40\x20\40\40\x20\40\40\40\40\40\40\x20\40\40\40\x20\x62\157\x78\55\x73\150\141\x64\x6f\167\72\40\60\160\x78\40\x31\160\x78\x20\60\160\170\40\x72\147\x62\141\50\x31\62\x30\54\40\x32\x30\x30\x2c\40\x32\63\60\x2c\40\x30\56\66\x29\x20\x69\156\x73\x65\164\x3b\x63\x6f\x6c\x6f\162\x3a\40\x23\x46\106\106\x3b\42\x74\x79\x70\x65\75\42\x62\165\x74\164\x6f\156\42\40\x76\141\154\165\145\75\42\x44\x6f\156\145\42\x20\x6f\x6e\103\x6c\x69\143\153\x3d\x22\163\145\154\x66\x2e\x63\x6c\x6f\163\x65\x28\x29\x3b\x22\x3e\xd\12\40\x20\x20\x20\x20\40\40\x20\40\40\40\40\x20\40\40\x20\40\40\x20\x20\x20\x20\x20\x20\40\x20\x3c\57\144\151\x76\76\15\12\40\x20\x20\40\x20\x20\40\40\40\40\40\x20\40\x20\40\40\40\x20\x20\40\x20\40\40\x20\40\x20\x3c\x73\143\x72\x69\x70\x74\x3e\15\12\40\40\x20\x20\x20\x20\x20\x20\40\x20\x20\x20\40\40\x20\x20\40\x20\40\x20\40\x20\40\x20\40\x20\x20\40\40\x20\x66\x75\156\143\164\x69\x6f\x6e\x20\x63\154\x6f\163\145\137\141\156\x64\137\162\145\x64\151\162\x65\143\164\50\x29\173\xd\12\x20\x20\40\x20\40\40\x20\x20\40\x20\x20\x20\x20\40\x20\40\x20\x20\40\x20\x20\x20\40\x20\40\40\40\x20\40\40\x20\x20\40\x20\x20\167\x69\x6e\144\x6f\x77\x2e\x6f\x70\145\156\145\162\56\154\157\x63\x61\x74\151\157\x6e\x2e\150\x72\x65\146\40\75\40\42" . Url::fromRoute("\x6d\x69\156\151\x6f\162\141\x6e\147\145\137\157\141\165\164\150\137\x63\x6c\x69\x65\x6e\x74\x2e\155\x61\x70\x70\151\156\147")->toString() . "\x22\x3b\xd\12\x20\40\40\40\40\40\x20\x20\x20\x20\40\x20\40\x20\40\40\x20\40\x20\40\x20\x20\x20\x20\40\x20\x20\40\x20\x20\40\40\x20\40\x73\x65\154\146\x2e\x63\x6c\157\x73\145\x28\51\x3b\15\12\40\40\x20\40\x20\x20\40\x20\x20\x20\40\x20\x20\40\x20\40\40\x20\40\x20\40\x20\x20\40\x20\x20\40\40\x20\x20\175\15\xa\40\x20\40\40\40\40\40\40\x20\40\40\40\x20\x20\40\x20\40\x20\40\x20\40\x20\x20\40\40\40\74\57\x73\143\x72\x69\x70\164\76";
exit;
}
public static function getResourceOwner($GW, $FZ, $GF = false)
{
$Wy = Utilities::callService($GW, NULL, array("\x41\x75\164\x68\157\x72\151\x7a\x61\x74\x69\157\156" => "\x42\x65\141\162\x65\x72\x20" . $FZ), "\x47\105\x54", $GF);
$HP = json_decode($Wy, true);
if (isset($HP["\145\x72\x72\157\x72\x5f\144\145\x73\143\x72\x69\160\x74\x69\157\156"])) {
goto TQ;
}
if (!isset($HP["\x65\162\162\157\162"])) {
goto ng;
}
if (is_array($HP["\145\x72\x72\x6f\162"])) {
goto E2;
}
echo $HP["\145\162\162\157\162"];
goto qv;
E2:
print_r($HP["\x65\x72\x72\x6f\162"]);
qv:
exit;
ng:
goto uI;
TQ:
if (is_array($HP["\145\162\162\x6f\162\137\x64\145\x73\x63\162\151\x70\x74\151\157\156"])) {
goto vA;
}
echo $HP["\145\x72\162\157\162\137\144\x65\163\143\162\151\x70\x74\151\x6f\156"];
goto n_;
vA:
print_r($HP["\145\x72\162\157\162\x5f\x64\x65\163\143\x72\151\160\x74\x69\x6f\156"]);
n_:
exit;
uI:
return $HP;
}
public static function testattrmappingconfig($zm, $rh)
{
foreach ($rh as $C3 => $Dp) {
if (is_array($Dp) || is_object($Dp)) {
goto C5;
}
echo "\x3c\164\162\x20\x73\164\171\x6c\x65\75\x27\164\145\170\x74\55\141\154\x69\x67\x6e\x3a\143\x65\x6e\164\x65\x72\73\47\76\x3c\x74\144\40\x73\164\171\154\145\75\47\x66\x6f\156\x74\55\167\x65\151\x67\x68\x74\x3a\x62\157\x6c\144\73\142\x6f\162\x64\145\x72\x3a\x32\x70\170\x20\x73\157\154\151\144\x20\x23\71\64\71\x30\71\x30\x3b\x70\141\x64\x64\151\x6e\147\72\x32\x25\x3b\47\x3e";
if (empty($zm)) {
goto Zb;
}
echo $zm . "\56";
Zb:
echo $C3 . "\x3c\57\164\x64\x3e\x3c\x74\144\x20\x73\164\171\154\145\x3d\x27\x66\x6f\x6e\x74\x2d\167\145\x69\x67\x68\164\72\142\x6f\x6c\x64\x3b\x70\141\x64\144\x69\156\147\72\62\45\73\x62\x6f\x72\x64\145\162\72\62\x70\x78\40\x73\157\x6c\151\144\x20\43\x39\64\x39\x30\x39\x30\73\40\x77\157\162\x64\x2d\167\x72\x61\160\72\142\x72\x65\x61\153\x2d\x77\x6f\162\x64\x3b\x27\76" . $Dp . "\74\57\164\144\x3e\x3c\x2f\x74\162\76";
goto Bx;
C5:
if (empty($zm)) {
goto xO;
}
$zm .= "\56";
xO:
self::testattrmappingconfig($zm . $C3, $Dp);
Bx:
Qb:
}
Xz:
return new Response();
}
public static function getnestedattribute($Dp, $C3)
{
if (isset($C3)) {
goto yd;
}
return '';
yd:
$YR = explode("\x3e", $C3);
$U8 = '';
if (sizeof($YR) > 1) {
goto sT;
}
$U8 = $YR[0];
if (isset($Dp[$U8]) && !is_array($Dp[$U8])) {
goto wN;
}
if (!isset($Dp[$U8])) {
goto BB;
}
return self::extractLeafNodes($Dp[$U8]);
BB:
goto Mm;
wN:
return $Dp[$U8];
Mm:
goto OD;
sT:
$U8 = $YR[0];
if (!isset($Dp[$U8])) {
goto Ca;
}
return self::getnestedattribute($Dp[$U8], str_replace($U8 . "\x3e", '', $C3));
Ca:
OD:
}
public static function extractLeafNodes($mu)
{
$s0 = array();
foreach ($mu as $C3 => $wZ) {
if (is_array($wZ)) {
goto rd;
}
$s0[] = $wZ;
goto Y1;
rd:
$s0 = array_merge($s0, self::extractLeafNodes($wZ));
Y1:
Aj:
}
cP:
return $s0;
}
public static function mo_oauth_client_initiateLogin($GF = false, $fn = '')
{
\Drupal::service("\x70\141\x67\145\x5f\143\x61\143\x68\x65\x5f\153\x69\x6c\x6c\x5f\163\167\151\x74\x63\x68")->trigger();
Utilities::checkUpgradeUrlStatus();
$mQ = \Drupal::moduleHandler();
if (isset($_GET["\141\x70\160\156\x61\x6d\x65"]) && !empty($_GET["\x61\x70\x70\156\x61\x6d\x65"])) {
goto eV;
}
$pW = \Drupal::config("\155\151\156\x69\x6f\x72\x61\x6e\x67\x65\137\x6f\141\x75\x74\x68\x5f\143\x6c\151\145\156\164\56\163\145\x74\x74\x69\x6e\147\x73")->get("\141\x75\164\157\137\x72\x65\144\x69\x72\x65\x63\164\137\x61\160\160\x5f\156\x61\x6d\x65");
goto ZQ;
eV:
$pW = trim(Html::escape($_GET["\141\160\x70\x6e\141\155\145"]));
ZQ:
$PN = new appValues($pW);
$Gz = $PN->getAllConfig();
$qO = Utilities::getCallbackUrl($pW);
$mh = $Gz["\141\x75\x74\150\157\x72\x69\172\145\105\x6e\144\x70\x6f\151\x6e\164"];
$xM = Utilities::generateState($Gz["\141\160\x70\116\141\155\145"], $fn, $GF);
$ok = $Gz["\x67\162\141\x6e\x74\x54\x79\160\145\x76\141\x6c\165\x65"];
if (!($ok == "\151\x6d\160\154\x69\143\x69\x74")) {
goto ey;
}
$mc = new ImplicitGrant($Gz["\x61\x70\160\116\141\155\145"]);
$mc->mo_oauth_client_initiateLogin($PN, $fn, $GF);
ey:
if (strpos($mh, "\x3f") !== false) {
goto Zt;
}
$mh = $mh . "\x3f\x63\x6c\x69\145\x6e\164\137\151\x64\75" . $PN->get_clientId() . "\x26\x73\x63\x6f\160\x65\x3d" . $Gz["\163\x63\157\x70\145"] . "\x26\162\145\144\151\162\x65\x63\164\x5f\165\x72\151\75" . $qO . "\x26\162\x65\x73\x70\157\x6e\x73\145\x5f\x74\x79\x70\x65\75\143\157\144\145\x26\x73\x74\x61\x74\x65\75" . $xM;
goto td;
Zt:
$mh = $mh . "\46\143\x6c\151\145\156\x74\137\x69\144\75" . $PN->get_clientId() . "\x26\163\x63\157\x70\145\75" . $Gz["\x73\143\x6f\x70\x65"] . "\46\x72\145\144\x69\x72\145\143\x74\137\165\x72\151\75" . $qO . "\46\162\x65\x73\x70\157\156\x73\x65\137\164\x79\160\145\75\143\x6f\144\x65\x26\x73\164\141\x74\x65\75" . $xM;
td:
if (!(session_status() == PHP_SESSION_NONE)) {
goto zF;
}
session_start();
zF:
$BG = \Drupal::service("\163\145\163\163\151\x6f\156");
$BG->set("\157\141\165\x74\x68\62\x73\164\141\164\x65", $xM);
$BG->set("\141\160\160\156\141\x6d\x65", $Gz["\141\160\160\116\141\x6d\x65"]);
if (!($ok == "\141\165\x74\x68\x6f\162\x69\172\x61\164\x69\x6f\156\137\x63\157\144\x65\137\x77\151\164\150\137\160\x6b\x63\145")) {
goto GP;
}
$Vh = random_bytes(64);
$NZ = rtrim(strtr(base64_encode($Vh), "\x2b\x2f", "\x2d\137"), "\75");
$mb = hash("\x73\x68\141\x32\65\66", $NZ, true);
$ja = rtrim(strtr(base64_encode($mb), "\53\x2f", "\x2d\137"), "\x3d");
$mh = $mh . "\46\143\x6f\x64\x65\137\143\x68\141\154\154\145\156\147\x65\x3d" . $ja . "\46\143\157\144\x65\x5f\143\150\141\x6c\x6c\145\156\x67\145\x5f\155\145\164\150\157\144\75\123\x32\x35\66";
$BG->set("\x63\157\144\x65\x56\145\x72\151\146\x69\145\x72", $NZ);
GP:
$mQ->invokeAll("\x6d\157\x5f\160\x72\x65\137\x61\x75\164\150\x6f\x72\x69\x7a\x61\x74\x69\x6f\156\x5f\162\x65\161\165\145\163\x74", [&$mh, $_GET]);
$Wy = new RedirectResponse($mh);
$Wy->send();
exit;
}
public static function test_mo_config()
{
setrawcookie("\x6d\157\x2e\x74\145\163\x74\103\x6f\x6e\x66\x69\x67", true, \Drupal::time()->getRequestTime() + 300, "\57");
miniorange_oauth_clientController::miniorange_oauth_client_mologin("\164\145\163\164\117\x41\x75\164\150\x43\x6f\156\x66\x69\x67");
}
public static function miniorange_oauth_client_mologin($fn = '')
{
$C_ = \Drupal::request();
$BU = \Drupal::config("\155\151\x6e\151\x6f\162\x61\x6e\147\x65\137\x6f\141\x75\164\x68\137\143\x6c\151\x65\156\x74\x2e\163\x65\x74\164\x69\x6e\x67\x73");
$cM = $BU->get("\155\x69\156\x69\x6f\x72\141\x6e\147\145\x5f\157\x61\x75\164\x68\137\143\x6c\151\145\156\x74\x5f\143\x75\x73\x74\157\155\x65\162\137\x61\x64\155\x69\x6e\137\146\x72\x61\165\144\137\x63\150\145\x63\153");
$lp = $BU->get("\155\151\156\x69\x6f\x72\141\156\x67\145\137\x6f\141\x75\164\150\x5f\143\154\151\x65\x6e\164\137\143\165\163\164\x6f\155\x65\x72\x5f\x61\x64\x6d\x69\x6e\x5f\164\157\153\145\156");
$ql = $BU->get("\155\151\x6e\x69\157\x72\141\156\147\x65\x5f\x6f\x61\x75\x74\150\x5f\143\x6c\151\145\x6e\164\137\x63\x75\163\164\157\155\145\162\x5f\x61\x64\155\151\x6e\x5f\145\x6d\x61\x69\154");
$BX = $BU->get("\x6d\x69\156\x69\x6f\162\x61\x6e\147\145\137\x6f\141\x75\164\150\137\x63\154\151\x65\156\x74\x5f\154\x69\143\145\x6e\x73\145\137\153\x65\171");
$J9 = $BU->get("\141\x75\164\x6f\137\162\145\144\151\162\x65\143\164\x5f\x61\x70\x70\137\156\141\x6d\145");
$OS = $BU->get("\155\x69\x6e\x69\157\x72\x61\156\x67\x65\x5f\157\141\x75\164\150\137\x69\x73\115\x75\154\164\151\123\151\x74\145\x50\154\165\147\151\x6e\x52\x65\x71\x75\x65\x73\x74\x65\x64") == true;
$nd = $BU->get("\155\x6f\x5f\x6c\x61\163\164\x5f\154\x69\143\x65\x6e\x73\145\137\146\x65\164\143\150\x5f\x74\x69\155\x65");
$Yb = time();
if (!($Yb - $nd > 604800)) {
goto yh;
}
self::moOAuthLicenseFetch(true);
yh:
$yg = \Drupal::state()->get("\155\151\x6e\x69\x6f\162\141\156\x67\145\x5f\157\141\x75\164\x68\x5f\x69\x73\137\164\162\151\x61\x6c");
$L0 = $BU->get("\155\x69\x6e\x69\x6f\162\x61\x6e\x67\145\137\157\141\165\164\x68\137\x6c\151\x63\145\156\163\145\105\170\x70\151\x72\171") ?? '';
$BS = $C_->query->get("\141\x70\160\156\x61\155\x65", $J9);
$P6 = DBQueries::get_all_apps_from_db();
$l3 = in_array($BS, $P6) ? (new appValues($BS))->enable_login_with_oauth : 0;
$iO = Utilities::check_fraud();
if (empty($ql)) {
goto nf;
}
if (empty($BX)) {
goto d_;
}
if (!$OS && ($iO !== Utilities::decrypt_data($cM, $lp) && $iO !== Utilities::decrypt_data($cM, $lp, "\x41\x45\x53\x2d\61\62\70\x2d\x45\x43\102"))) {
goto aL;
}
if ($yg && (!$L0 || strtotime($L0) < $Yb)) {
goto Pv;
}
if ($fn === "\164\145\x73\164\x4f\101\165\x74\150\103\157\x6e\x66\151\147" && isset($_GET["\141\x70\x70\156\141\x6d\145"]) && !empty($_GET["\x61\160\160\156\141\x6d\x65"])) {
goto AZ;
}
if ($fn !== "\164\x65\163\164\x4f\x41\165\164\x68\103\x6f\156\146\x69\147" && $l3) {
goto BA;
}
Utilities::show_sso_error_message("\x43\x6f\x6e\146\151\147\165\x72\141\164\151\157\x6e\x73\40\x6e\x6f\x74\40\146\x6f\165\x6e\x64\40\157\162\40\114\157\147\151\156\x20\165\163\151\x6e\147\40\x4f\101\165\x74\150\40\160\162\x6f\x76\151\144\x65\x72\x20\x69\x73\x20\x64\151\163\141\x62\x6c\145\144\56", "\120\154\x65\141\x73\145\x20\x65\156\x73\x75\x72\x65\x20\x74\150\145\x20\123\x53\117\40\x6f\x72\40\x54\145\163\x74\x20\103\157\156\156\145\x63\x74\151\157\156\x20\125\122\x4c\40\x69\163\x20\143\157\x72\x72\145\x63\x74\40\x61\156\x64\40\x4c\157\147\151\x6e\x20\x77\x69\x74\150\x20\x4f\101\x75\x74\150\40\x69\x73\40\x65\x6e\x61\142\x6c\x65\x64\56");
goto gN;
nf:
Utilities::show_sso_error_message("\111\x74\x20\141\160\160\x65\x61\x72\163\40\x74\150\x61\x74\40\x79\157\165\x20\x61\x72\145\40\x6e\x6f\164\40\154\157\147\x67\145\x64\x20\x69\156\x74\157\x20\x74\150\x65\40\x6d\157\x64\165\x6c\x65\56", "\x50\154\145\141\x73\x65\x20\154\157\x67\x20\x69\156\x20\164\x6f\40\x74\150\x65\x20\x6d\x6f\144\x75\154\x65\x2e");
goto gN;
d_:
Utilities::show_sso_error_message("\111\164\x20\141\160\x70\x65\x61\x72\x73\x20\164\x68\141\164\40\171\157\x75\40\x68\x61\x76\x65\40\156\157\164\x20\166\145\162\x69\146\x69\x65\x64\x20\x79\x6f\165\x72\x20\x6c\151\x63\x65\x6e\x73\145\x20\x6b\x65\x79", "\x50\x6c\145\141\163\145\40\166\145\162\x69\x66\171\40\x79\157\x75\x72\x20\154\x69\143\145\x6e\x73\145\40\x6b\145\x79\56");
goto gN;
aL:
Utilities::show_sso_error_message("\124\150\x65\x20\x6c\151\x63\145\x6e\x73\145\40\153\145\171\40\171\x6f\x75\x20\150\x61\166\145\x20\145\156\164\x65\162\145\x64\40\x68\141\163\x20\x61\x6c\x72\x65\141\144\x79\40\x62\145\x65\156\x20\x75\x73\145\x64\x2e", "\x50\154\145\141\163\145\40\145\x6e\164\x65\162\40\x61\x20\153\145\171\x20\x77\150\151\143\x68\40\x68\x61\x73\40\156\x6f\x74\40\x62\x65\145\156\40\x75\x73\x65\144\x20\142\145\x66\157\162\145\40\x6f\156\x20\141\x6e\171\x20\157\x74\150\x65\162\x20\151\x6e\x73\x74\141\156\143\x65\40\x6f\x72\x20\x69\x66\40\171\157\x75\x20\150\141\166\145\40\x65\x78\150\141\165\x73\x74\145\144\x20\141\x6c\154\40\x79\x6f\x75\162\40\x6b\145\171\x73\54\40\x79\157\165\40\143\x61\x6e\40\x70\x75\162\143\150\141\163\145\x20\x6d\157\162\145\40\x6c\151\x63\x65\156\x73\x65\x73\56");
goto gN;
Pv:
Utilities::show_sso_error_message("\131\x6f\x75\162\x20\x74\162\x69\141\x6c\x20\x6c\151\x63\x65\x6e\x73\145\40\150\x61\163\x20\x65\x78\x70\x69\162\x65\144\40\x6f\x6e\40" . date("\x6c\40\115\40\x6a\x2c\40\131", strtotime($L0)), "\x2e\40\x52\145\141\x63\x68\40\x6f\165\x74\x20\164\x6f\40\165\x73\x20\141\164\x20\x3c\141\40\150\162\x65\x66\75\42\155\x61\x69\x6c\164\x6f\72\x3a\x64\x72\x75\160\141\154\x73\x75\x70\160\x6f\162\164\100\x78\x65\x63\165\x72\151\x66\x79\56\x63\x6f\x6d\x22\x3e\x64\162\x75\160\141\154\x73\x75\160\x70\157\162\164\x40\x78\145\x63\165\x72\x69\x66\171\56\143\x6f\x6d\74\57\x61\76\40\x74\x6f\x20\x75\160\x67\x72\x61\144\145\x20\171\x6f\x75\x72\x20\x6c\x69\143\x65\156\163\x65\56");
goto gN;
AZ:
return self::mo_oauth_client_initiateLogin(true);
goto gN;
BA:
return self::mo_oauth_client_initiateLogin(false, $fn);
gN:
}
public function oauth_client_logout()
{
$eK = new mOOAuthLogout();
return $eK->mo_oauth_logout();
}
public static function openCustomerRequestForm()
{
$Wy = new AjaxResponse();
$wn = \Drupal::formBuilder()->getForm("\x5c\104\x72\x75\160\x61\154\x5c\x6d\x69\x6e\x69\x6f\x72\x61\156\147\145\x5f\157\141\x75\x74\150\x5f\x63\154\x69\x65\x6e\164\134\106\x6f\162\x6d\x5c\x4d\151\x6e\x69\157\162\141\x6e\147\145\x43\x75\163\164\x6f\x6d\145\162\x52\145\161\165\145\x73\164");
$Wy->addCommand(new OpenModalDialogCommand("\x6d\151\156\151\117\162\x61\x6e\x67\x65\x20\117\x41\165\164\x68\40\103\154\x69\x65\x6e\x74\x20\103\x75\163\x74\157\x6d\x65\162\x20\x53\x75\160\x70\157\x72\164", $wn, ["\x77\x69\144\164\150" => "\64\x35\45"]));
return $Wy;
}
public static function moOAuthLicenseFetch($kI = FALSE)
{
$BU = \Drupal::config("\155\151\156\151\157\162\141\156\147\x65\137\x6f\141\x75\x74\150\137\x63\x6c\151\145\x6e\164\x2e\x73\145\164\x74\151\x6e\x67\163");
$NH = \Drupal::configFactory()->getEditable("\155\151\156\151\157\162\141\156\x67\x65\137\157\x61\x75\164\150\x5f\143\154\x69\145\x6e\x74\x2e\163\x65\164\x74\151\156\147\x73");
$Yu = $BU->get("\155\151\156\x69\x6f\162\141\156\x67\145\x5f\157\141\165\164\150\x5f\143\x6c\x69\145\x6e\x74\137\x63\x75\x73\x74\157\155\x65\162\x5f\x61\x64\x6d\x69\156\137\145\155\x61\151\154");
$nQ = new MiniorangeOAuthClientCustomer($Yu, null);
$uX = json_decode($nQ->ccl(), true);
if (isset($uX["\x73\x74\141\164\165\x73"]) && $uX["\163\164\141\164\165\x73"] == "\x53\125\103\103\x45\x53\123") {
goto DH;
}
$XR = t("\106\x61\151\154\x65\x64\40\x74\157\40\x66\x65\164\x63\150\40\x6c\x69\x63\145\156\163\x69\x6e\x67\x20\x75\160\144\141\x74\145");
$S6 = "\145\162\x72\x6f\x72";
goto xV;
DH:
$NH->set("\x6d\157\x5f\154\141\x73\x74\137\154\x69\x63\x65\x6e\163\145\137\146\145\164\x63\150\137\x74\x69\x6d\145", time())->save();
$NH->set("\x6d\x69\156\x69\157\x72\x61\x6e\147\145\x5f\157\141\165\x74\150\x5f\x6c\151\x63\145\x6e\x73\145\105\170\160\151\x72\171", $uX["\x6c\151\143\x65\156\x73\145\x45\x78\160\151\162\x79"])->save();
$NH->set("\155\x69\x6e\151\157\162\141\x6e\x67\x65\x5f\x6f\x61\165\164\x68\x5f\163\165\x70\160\157\162\x74\x45\x78\160\151\x72\171", $uX["\163\165\160\x70\x6f\x72\164\105\170\x70\151\x72\171"])->save();
$NH->set("\x6d\151\x6e\x69\x6f\x72\x61\156\147\x65\x5f\x6f\141\165\164\150\137\151\x73\x4d\165\x6c\x74\151\x53\151\x74\145\120\x6c\165\147\x69\x6e\x52\145\x71\165\145\163\164\x65\x64", isset($uX["\x69\163\x4d\x75\154\164\151\x53\x69\x74\145\120\154\x75\x67\151\x6e\x52\145\x71\x75\145\163\x74\145\x64"]) ? $uX["\151\163\x4d\165\x6c\x74\x69\x53\151\164\145\120\x6c\165\x67\151\x6e\x52\145\161\x75\x65\x73\x74\x65\x64"] : false)->save();
$cd = isset($uX["\x6e\157\x4f\146\x53\120"]) ? $uX["\156\157\x4f\146\x53\x50"] : 1;
$NH->set("\x6d\151\x6e\x69\157\162\x61\156\x67\x65\x5f\157\x61\165\x74\150\x5f\x6e\x6f\117\x66\123\120", $cd)->save();
$zM = isset($uX["\164\x72\151\x61\154"]) ? $uX["\164\x72\x69\141\154"] : false;
\Drupal::state()->set("\x6d\151\156\151\x6f\x72\x61\156\147\145\137\x6f\x61\165\x74\150\x5f\151\x73\137\164\x72\x69\x61\x6c", $zM);
$XR = t("\123\x75\143\143\x65\163\163\146\165\x6c\154\x79\x20\x66\145\164\x63\x68\x65\144\40\x74\150\x65\x20\154\x69\x63\x65\156\x73\x69\156\147\x20\165\x70\x64\141\x74\x65");
$S6 = "\x73\x74\141\164\x75\163";
xV:
$S6 == "\163\x74\x61\164\165\163" ? \Drupal::logger("\155\151\156\x69\157\x72\141\x6e\147\145\x5f\157\x61\165\164\x68\x5f\x63\154\x69\x65\156\x74")->notice($XR) : \Drupal::logger("\x6d\151\x6e\151\x6f\162\x61\156\x67\x65\x5f\157\x61\x75\164\150\x5f\x63\x6c\151\x65\x6e\x74")->error($XR);
if ($kI) {
goto gJ;
}
$S6 == "\163\x74\x61\164\165\163" ? \Drupal::messenger()->addStatus($XR) : \Drupal::messenger()->addError($XR);
return new RedirectResponse(Url::fromRoute("\x6d\151\156\x69\157\x72\x61\156\147\x65\x5f\x6f\141\x75\x74\150\x5f\143\x6c\151\x65\x6e\x74\56\x63\x75\x73\164\157\155\x65\162\x5f\x73\145\164\x75\160")->toString());
gJ:
return new Response();
}
}
Function Calls
None |
Stats
MD5 | 36b2f28f80707b590da570c0c6e56df5 |
Eval Count | 0 |
Decode Time | 124 ms |