Wordpress 等でのPHPのマルウェア・ウィルス・改ざんコードをデコードして難読化をオンラインで解除し、
元の読みやすいコードに戻し解読できます。
<?php
/* __________________________________________________
| Built by Clearly IP Inc. |
| on 2023-01-02 21:42:57 |
|__________________________________________________|
*/
namespace FreePBX\modules\Clearlysp\CIP\Controllers\v1; use FreePBX\modules\Clearlysp\CIP\Controllers\Base; use DOMDocument; class GlobalProvisioning extends Base { public function globalProvisioning($request, $response, $args) { goto OA24W; VE0sG: $user = $request->getQueryParam("\143\154\157\x75\144\137\165\x73\x65\162\x6e\141\x6d\x65"); goto Jp9Ed; KPhhX: if ($usermanUser) { goto f6Hla; } goto kYuVc; Un9or: return self::returnError($response, _("\123\x6f\x66\164\160\150\157\x6e\145\x20\163\x75\142\x73\143\162\x69\160\164\151\157\156\x20\151\163\x20\156\157\x74\40\141\143\164\x69\166\145"), 404); goto DM6Mn; sHY4k: $this->token = $tokendata["\164\157\x6b\x65\156"]; goto mGo7t; xh6sm: $this->apiurl = $tokendata["\143\x6c\x69\x65\x6e\164\x73"]["\141\x70\151\125\x72\x6c"]; goto sHY4k; VzTp0: $quickdialData = array(); goto dzNhs; nC3Bg: return self::returnAsXML($response, $payload); goto ketzl; SMSja: $allUsers = $this->FreePBX->Clearlysp->getAllQuickDialEntries(); goto vcNQA; vcNQA: $blfData = $this->FreePBX->Clearlysp->getBLFInformation($usermanUser["\151\x64"]); goto A03mI; Jp9Ed: $pass = $request->getQueryParam("\143\x6c\x6f\165\144\137\x70\x61\x73\x73\x77\x6f\x72\144"); goto V4EGo; Ik9lT: $cloudid = $body["\x63\x6c\x6f\x75\x64\x5f\151\x64"]; goto nz6RJ; Jyn8n: $apiconf = json_decode($this->FreePBX->Clearlysp->getApiConfig(), true); goto D27hX; biJmD: return self::returnError($response, _("\x55\156\141\142\x6c\145\x20\x74\157\40\x63\157\x6d\x70\154\x65\164\x65\40\171\157\165\162\40\162\x65\x71\165\x65\x73\x74\x2c\x20\160\154\145\x61\x73\x65\40\143\157\156\x74\141\143\164\40\143\165\x73\x74\157\155\x65\x72\x20\x63\141\162\x65\56"), 400); goto j3tQ_; F50YD: $sort = $apiconf["\161\x75\x69\x63\153\144\x69\141\x6c\x73\157\x72\164\x69\x6e\147"]; goto fQtyI; Q7h9t: f6Hla: goto YHhMp; YHhMp: if (!empty($usermanUser["\x64\x65\x66\141\165\154\164\x5f\145\x78\x74\x65\156\163\x69\x6f\x6e"])) { goto ogh9Q; } goto W3fLD; IQVkV: $cloudid = $request->getQueryParam("\x63\154\157\x75\144\137\151\144"); goto VE0sG; mGo7t: $payload = $this->buildPayload($quickdialData, $usermanUser); goto nC3Bg; j3tQ_: kcKFZ: goto Q2Y7o; V4EGo: f4Nj8: goto N37W5; DM6Mn: mQMLM: goto Q3pRP; RvQs_: if ($tokendata["\x73\165\x62\x73\x63\x72\x69\x70\164\151\x6f\x6e"]) { goto mQMLM; } goto Un9or; g36uk: $permissions = $this->FreePBX->Clearlysp->isAllowed($usermanUser["\151\144"]); goto NFUGI; OA24W: $tokendata = $this->FreePBX->Clearlysp->getTokenData(); goto RvQs_; Q2Y7o: $usermanUser = $this->validateUser($user, $pass); goto KPhhX; skbFi: $body = $request->getParsedBody(); goto Ik9lT; D27hX: if (empty($apiconf["\161\165\151\x63\x6b\144\151\141\154\x73\157\x72\164\x69\156\x67"])) { goto McQPQ; } goto F50YD; W3fLD: return self::returnError($response, _("\x49\x6e\x76\x61\x6c\151\x64\40\125\x73\145\x72\x20\103\x6f\156\146\151\147\165\162\x61\x74\x69\157\156"), 404); goto hoz1m; dzNhs: foreach ($allUsers as $fpbxUser) { goto Nt0tt; Ovhzk: $ext = $fpbxUser["\x64\x65\x66\141\x75\154\164\x5f\145\170\x74\x65\156\x73\151\x6f\x6e"]; goto NbJHs; NbJHs: switch ($sort) { case "\165\163\145\x72\155\141\x6e\x46\151\x72\163\164\116\x61\x6d\x65": $key = $fpbxUser["\x66\x6e\141\155\x65"]; goto re5eM; case "\165\163\x65\x72\x6d\141\x6e\x4c\141\x73\x74\x4e\141\155\x65": $key = $fpbxUser["\154\x6e\141\x6d\145"]; goto re5eM; case "\165\x73\145\x72\155\141\x6e\104\151\x73\160\x6c\x61\x79\116\141\155\x65": $key = $fpbxUser["\144\x69\x73\160\154\141\x79\x6e\x61\x6d\145"]; goto re5eM; default: $key = $fpbxUser["\x64\x65\146\x61\165\x6c\164\137\145\170\164\x65\156\163\x69\157\x6e"]; goto re5eM; } goto b7iQ2; Ah0Ck: VD0b0: goto jE4Zp; B4w4N: if (isset($fpbxUser["\x64\x69\x73\x70\x6c\x61\171\156\x61\x6d\145"])) { goto l6LhZ; } goto l4vyh; hFC4n: goto VD0b0; goto hND62; RGaAq: $quickdialData[$key] = array("\x6e\141\155\145" => $name, "\145\170\x74\145\156\163\x69\x6f\156" => $ext); goto Ah0Ck; Nt0tt: if (isset($fpbxUser["\x64\145\146\141\x75\154\164\x5f\x65\x78\164\x65\x6e\163\x69\x6f\x6e"])) { goto ILadg; } goto XmVdN; vmjfn: if (isset($blfData[$fpbxUser["\x64\x65\x66\x61\x75\154\x74\x5f\x65\x78\x74\145\156\x73\151\157\156"]])) { goto UCPf_; } goto hFC4n; KYjZW: ILadg: goto B4w4N; h7ReP: $name = htmlentities($fpbxUser["\144\151\163\160\154\141\171\x6e\141\155\x65"], ENT_XML1); goto Ovhzk; l4vyh: $fpbxUser["\x64\151\x73\x70\x6c\141\171\156\x61\x6d\145"] = $fpbxUser["\x6e\141\x6d\x65"]; goto lCNpN; btSef: re5eM: goto RGaAq; b7iQ2: G8jPu: goto btSef; XmVdN: $fpbxUser["\x64\145\x66\141\165\x6c\164\x5f\145\170\164\x65\156\x73\151\x6f\x6e"] = $fpbxUser["\x65\170\x74\x65\x6e\x73\151\157\156"]; goto KYjZW; lCNpN: l6LhZ: goto vmjfn; hND62: UCPf_: goto h7ReP; jE4Zp: } goto cA14a; mHXLP: hloOQ: goto SMSja; FVgaM: $pass = $body["\143\154\x6f\165\144\x5f\x70\141\x73\x73\167\157\x72\144"]; goto gwgwo; bdcpG: $device = $this->FreePBX->Core->getDevice($usermanUser["\x64\x65\146\141\165\x6c\164\x5f\145\x78\x74\x65\x6e\x73\151\x6f\x6e"]); goto MHJPe; b3MBa: AhfGA: goto IQVkV; Oy5uG: ksort($quickdialData); goto xh6sm; oX28b: return self::returnError($response, _("\x53\x6f\x66\164\160\x68\157\x6e\145\40\x6e\x6f\164\40\x65\x6e\x61\142\154\x65\144\x20\x66\x6f\x72\40\164\150\x69\163\x20\165\163\145\x72"), 404); goto mHXLP; MHJPe: $mapping = $this->FreePBX->Clearlysp->getClientMapping($usermanUser["\x69\144"]); goto g36uk; kYuVc: return self::returnError($response, _("\x49\x6e\166\x61\154\151\144\40\143\x72\x65\x64\145\x6e\x74\x69\x61\x6c\x73"), 403); goto Q7h9t; N37W5: if (!(strpos($cloudid, "\103\x4c\105\x41\122\114\x59\x49\120") !== 0)) { goto kcKFZ; } goto biJmD; fQtyI: McQPQ: goto VzTp0; NFUGI: if (!($permissions["\x65\x6e\x61\x62\154\x65\144"] !== "\145\x6e\x61\x62\x6c\145\x64")) { goto hloOQ; } goto oX28b; A03mI: $sort = "\x65\170\x74\145\156\163\x69\x6f\x6e"; goto Jyn8n; Q3pRP: if ($request->isGet()) { goto AhfGA; } goto skbFi; gwgwo: goto f4Nj8; goto b3MBa; cA14a: OD_4A: goto Oy5uG; hoz1m: ogh9Q: goto bdcpG; nz6RJ: $user = $body["\143\154\157\165\x64\x5f\x75\x73\x65\x72\156\x61\155\x65"]; goto FVgaM; ketzl: } private function buildPayload($data = array(), $user = array()) { goto uZAw8; VKCm4: tQx2G: goto F34Jy; Z1j2C: $root->appendChild($fragment); goto Y9gtk; asBp1: $fragment->appendXml($frag); goto Z1j2C; HLYMv: Sg2BV: goto NKCjI; MFUSw: $prefKeys->appendChild($xml->createElement("\147\145\x6e\x65\x72\151\x63\123\155\x73\x46\x65\x74\143\x68\111\156\102\x61\143\x6b\x67\x72\x6f\x75\156\x64\111\156\164\x65\162\x76\x61\x6c", $smsBackgroundFetchInterval)); goto aMF3e; FW5y0: $root = $xml->createElement("\162\x6f\x6f\x74"); goto bSWCf; yFXVv: sRRla: goto THq9K; RBDcC: $quickDial = $this->buildQuickDial($xml, $data); goto plISZ; s0nRJ: $serverContactsAllowed = isset($userPermissions["\163\145\x72\166\x65\162\x5f\143\x6f\x6e\164\x61\143\164\163"]) && $userPermissions["\163\145\162\166\x65\x72\x5f\x63\157\156\164\141\x63\x74\163"] === "\145\156\141\x62\x6c\145\144" ? "\x61\x62\x2c\x77\x73" : "\x61\142"; goto bX1dl; sGd9f: if (empty($blindXfer)) { goto VKmu_; } goto Bu1u5; DpCtt: $prefKeys = $xml->createElement("\x70\x72\145\x66\x4b\145\171\x73"); goto YVmFD; NKCjI: $recordingAllowed = isset($userPermissions["\162\145\x63\x6f\162\x64\151\156\147"]) && $userPermissions["\x72\x65\x63\x6f\162\144\151\x6e\147"] !== "\x65\156\141\142\154\x65\x64" ? "\61" : "\x30"; goto YFhxQ; hC5ug: $parkinglot = $this->FreePBX->Parking->getAllParkingLots(); goto kkrXw; nq62g: $frag = "\x3c\x61\x63\164\151\x6f\x6e\x42\165\x74\x74\157\156\163\76\12\11\11\11\x9\11\11\74\x69\x74\145\x6d\x20\x69\x64\x3d\x22\x63\165\x73\164\157\155\101\143\164\x69\x6f\x6e\102\165\x74\164\x6f\x6e\61\x22\76\12\11\11\11\11\x9\11\11\74\x64\151\x73\x70\154\x61\x79\x4e\x61\x6d\x65\76\x50\141\x72\153\74\x2f\144\151\163\x70\x6c\x61\x79\x4e\x61\155\145\76\12\x9\11\11\x9\x9\x9\11\x3c\141\x63\x74\151\157\x6e\40\164\x79\x70\x65\75\42\144\164\155\146\x22\40\166\x61\154\x75\145\x3d\42" . $dtmfAction . "\x22\57\76\12\11\11\11\x9\x9\x9\11\74\160\157\x72\164\x72\x61\x69\164\x55\162\x6c\76" . sprintf(self::$defaultProvisionServer . "\57\x63\x6f\156\x74\x61\143\x74\x69\x6d\141\x67\145\163\57\45\163\57\x3f\x74\157\153\x65\156\x3d\45\163", "\160\x61\x72\x6b\151\156\x67", $this->token) . "\74\x2f\160\x6f\162\164\x72\141\151\164\x55\x72\154\76\12\x9\11\x9\11\x9\11\x9\x3c\x63\157\x6e\x64\151\164\151\157\x6e\163\76\xa\x9\11\11\x9\x9\x9\11\x9\74\x63\x6f\x6e\x64\x69\x74\151\x6f\x6e\x20\164\x79\160\145\x3d\x22\143\x61\x6c\x6c\x53\164\141\164\145\42\40\166\141\154\x75\145\75\x22\x49\156\x63\x6f\155\x69\156\x67\x52\151\156\x67\151\156\x67\54\x45\163\164\x61\x62\x6c\151\163\150\145\x64\x22\x2f\76\xa\x9\x9\11\x9\x9\11\11\x3c\57\x63\x6f\x6e\x64\151\164\151\157\156\x73\76\xa\11\x9\x9\x9\x9\x9\x3c\57\151\164\145\x6d\x3e\12\11\x9\x9\x9\11\74\57\141\x63\x74\x69\157\x6e\x42\165\x74\x74\157\156\x73\x3e"; goto LKT69; LKT69: $fragment = $xml->createDocumentFragment(); goto asBp1; bX1dl: $prefKeys->appendChild($xml->createElement("\143\x6f\156\164\x61\x63\x74\x53\157\165\x72\x63\x65\124\x79\x70\x65", $serverContactsAllowed)); goto RBDcC; Bu1u5: $dtmfAction = "{$blindXfer}{$lot}\43"; goto nq62g; NIF6v: $smsBackgroundFetchInterval = $this->FreePBX->Clearlysp->getDesktopSMSBackgroundFetchInterval(); goto MFUSw; iRhD1: $prefKeys->appendChild($xml->createElement("\147\x65\x6e\145\x72\151\x63\x53\155\163\106\x65\x74\143\x68\111\156\164\x65\162\x76\x61\154", $smsFetchInterval)); goto NIF6v; uZAw8: $xml = new DOMDocument(); goto FW5y0; bSWCf: $modifications = $xml->createElement("\155\157\144\x69\x66\x69\143\x61\164\151\x6f\156\x73"); goto DpCtt; DbXAq: Contactmanager::addContactUrlToConfigXml($xml, $root, $user["\151\x64"]); goto HLYMv; oz9m0: $usersettings = $this->FreePBX->Clearlysp->getCombinedSettings($user["\151\144"]); goto hgSH2; Y9gtk: VKmu_: goto VKCm4; YFhxQ: $prefKeys->appendChild($xml->createElement("\x6e\157\162\145\x63", $recordingAllowed)); goto s0nRJ; Hrbxp: $blindXfer = $blindXferFeatureCode->getCodeActive(); goto sGd9f; l6VRz: $blindXferFeatureCode = new \featurecode("\143\x6f\x72\x65", "\x62\x6c\151\x6e\144\170\146\x65\x72"); goto Hrbxp; THq9K: if (!$lot) { goto tQx2G; } goto l6VRz; kkrXw: $lot = false; goto t5Nar; twizK: return $xml->saveXML($root); goto UV_rA; iwV8F: if (!(isset($userPermissions["\163\145\x72\x76\145\x72\137\143\157\x6e\x74\141\x63\x74\163"]) && $userPermissions["\x73\x65\x72\x76\145\162\x5f\x63\x6f\x6e\164\x61\143\164\163"] === "\145\156\x61\x62\154\x65\144")) { goto Sg2BV; } goto DbXAq; t5Nar: foreach ($parkinglot as $pl) { goto L9qpG; Pf6R7: jxNtF: goto Gn06b; SRTZk: goto x2yxW; goto Pf6R7; N3Lbs: $lot = $pl["\160\x61\162\153\x65\170\164"]; goto SRTZk; Gn06b: x2yxW: goto lN_YX; L9qpG: if (!($pl["\x69\x64"] === $usersettings["\160\141\162\x6b\151\156\147\x6c\x6f\164"])) { goto jxNtF; } goto N3Lbs; lN_YX: } goto yFXVv; DLvdk: $root->appendChild($modifications); goto xqg70; hgSH2: if (!($this->FreePBX->Modules->checkStatus("\x70\x61\x72\x6b\151\x6e\147") && isset($usersettings["\x65\x6e\141\142\x6c\x65\160\141\x72\x6b"]) && $usersettings["\145\156\141\x62\154\x65\x70\141\162\153"] === "\x65\156\141\x62\x6c\145\144")) { goto QyaRA; } goto hC5ug; YVmFD: $modifications->appendChild($prefKeys); goto DLvdk; plISZ: $root->appendChild($quickDial); goto oz9m0; xqg70: $smsFetchInterval = $this->FreePBX->Clearlysp->getDesktopSMSFetchInterval(); goto iRhD1; aMF3e: $userPermissions = $this->FreePBX->Clearlysp->isAllowed($user["\151\x64"]); goto iwV8F; F34Jy: QyaRA: goto twizK; UV_rA: } private function buildQuickDial($xml, $data = array()) { goto Onx7P; BLSjC: WGTik: goto uzbbx; Onx7P: $quickDial = $xml->createElement("\161\x75\x69\143\x6b\104\151\141\154"); goto qzsQp; qzsQp: foreach ($data as $user) { goto OZUHv; OZUHv: $item = $xml->createElement("\151\164\145\155"); goto dqgm9; uBZL8: if (!Contactmanager::hasContactImage()) { goto vZUuO; } goto d7evF; jMfIp: $item->appendChild($xml->createElement("\x75\x72\x69", $user["\145\x78\x74\145\x6e\163\151\x6f\x6e"])); goto ll9R_; FJ6eJ: vZUuO: goto oI34q; d7evF: $imageurl = sprintf(self::$defaultProvisionServer . "\x2f\143\x6f\156\164\x61\143\x74\151\x6d\141\x67\145\163\x2f\45\163\57\77\x74\157\x6b\145\x6e\x3d\x25\163", $user["\145\x78\164\145\156\163\151\157\156"], $this->token); goto Jjqtn; dqgm9: $item->setAttributeNode(new \DOMAttr("\x69\x64", $user["\145\x78\x74\145\x6e\163\151\x6f\x6e"])); goto LOC1I; DYfFa: $_REQUEST["\x64\151\x64"] = $user["\x65\170\x74\x65\156\163\151\x6f\156"]; goto uBZL8; oI34q: $quickDial->appendChild($item); goto hDz2r; hDz2r: sTWPg: goto HFZrx; LOC1I: $item->appendChild($xml->createElement("\x64\x69\x73\160\x6c\141\x79\x4e\x61\155\145", $user["\x6e\141\x6d\145"])); goto jMfIp; ll9R_: $_REQUEST["\x65\170\164"] = $user["\145\x78\x74\x65\156\x73\x69\x6f\156"]; goto DYfFa; Jjqtn: $item->appendChild($xml->createElement("\160\157\162\164\162\141\x69\x74\x55\162\154", $imageurl)); goto FJ6eJ; HFZrx: } goto BLSjC; uzbbx: return $quickDial; goto r9jfR; r9jfR: } }<?php
/* __________________________________________________
| Built by Clearly IP Inc. |
| on 2023-01-02 21:42:57 |
|__________________________________________________|
*/
namespace FreePBX\modules\Clearlysp\CIP\Controllers\v1;
use FreePBX\modules\Clearlysp\CIP\Controllers\Base;
use DOMDocument;
class GlobalProvisioning extends Base
{
public function globalProvisioning($request, $response, $args)
{
$tokendata = $this->FreePBX->Clearlysp->getTokenData();
if ($tokendata["subscription"]) {
if ($request->isGet()) {
$cloudid = $request->getQueryParam("cloud_id");
$user = $request->getQueryParam("cloud_username");
$pass = $request->getQueryParam("cloud_password");
goto V4EGo;
}
$body = $request->getParsedBody();
$cloudid = $body["cloud_id"];
$user = $body["cloud_username"];
$pass = $body["cloud_password"];
V4EGo:
if (!(strpos($cloudid, "CLEARLYIP") !== 0)) {
$usermanUser = $this->validateUser($user, $pass);
if ($usermanUser) {
if (!empty($usermanUser["default_extension"])) {
$device = $this->FreePBX->Core->getDevice($usermanUser["default_extension"]);
$mapping = $this->FreePBX->Clearlysp->getClientMapping($usermanUser["id"]);
$permissions = $this->FreePBX->Clearlysp->isAllowed($usermanUser["id"]);
if (!($permissions["enabled"] !== "enabled")) {
$allUsers = $this->FreePBX->Clearlysp->getAllQuickDialEntries();
$blfData = $this->FreePBX->Clearlysp->getBLFInformation($usermanUser["id"]);
$sort = "extension";
$apiconf = json_decode($this->FreePBX->Clearlysp->getApiConfig(), true);
if (empty($apiconf["quickdialsorting"])) {
goto McQPQ;
}
$sort = $apiconf["quickdialsorting"];
McQPQ:
$quickdialData = array();
foreach ($allUsers as $fpbxUser) {
if (isset($fpbxUser["default_extension"])) {
goto ILadg;
}
$fpbxUser["default_extension"] = $fpbxUser["extension"];
ILadg:
if (isset($fpbxUser["displayname"])) {
goto l6LhZ;
}
$fpbxUser["displayname"] = $fpbxUser["name"];
l6LhZ:
if (isset($blfData[$fpbxUser["default_extension"]])) {
$name = htmlentities($fpbxUser["displayname"], ENT_XML1);
$ext = $fpbxUser["default_extension"];
switch ($sort) {
case "usermanFirstName":
$key = $fpbxUser["fname"];
goto re5eM;
case "usermanLastName":
$key = $fpbxUser["lname"];
goto re5eM;
case "usermanDisplayName":
$key = $fpbxUser["displayname"];
goto re5eM;
default:
$key = $fpbxUser["default_extension"];
goto re5eM;
}
re5eM:
$quickdialData[$key] = array("name" => $name, "extension" => $ext);
goto Ah0Ck;
}
Ah0Ck:
}
ksort($quickdialData);
$this->apiurl = $tokendata["clients"]["apiUrl"];
$this->token = $tokendata["token"];
$payload = $this->buildPayload($quickdialData, $usermanUser);
return self::returnAsXML($response, $payload);
}
return self::returnError($response, _("Softphone not enabled for this user"), 404);
}
return self::returnError($response, _("Invalid User Configuration"), 404);
}
return self::returnError($response, _("Invalid credentials"), 403);
}
return self::returnError($response, _("Unable to complete your request, please contact customer care."), 400);
}
return self::returnError($response, _("Softphone subscription is not active"), 404);
}
private function buildPayload($data = array(), $user = array())
{
$xml = new DOMDocument();
$root = $xml->createElement("root");
$modifications = $xml->createElement("modifications");
$prefKeys = $xml->createElement("prefKeys");
$modifications->appendChild($prefKeys);
$root->appendChild($modifications);
$smsFetchInterval = $this->FreePBX->Clearlysp->getDesktopSMSFetchInterval();
$prefKeys->appendChild($xml->createElement("genericSmsFetchInterval", $smsFetchInterval));
$smsBackgroundFetchInterval = $this->FreePBX->Clearlysp->getDesktopSMSBackgroundFetchInterval();
$prefKeys->appendChild($xml->createElement("genericSmsFetchInBackgroundInterval", $smsBackgroundFetchInterval));
$userPermissions = $this->FreePBX->Clearlysp->isAllowed($user["id"]);
if (!(isset($userPermissions["server_contacts"]) && $userPermissions["server_contacts"] === "enabled")) {
goto Sg2BV;
}
Contactmanager::addContactUrlToConfigXml($xml, $root, $user["id"]);
Sg2BV:
$recordingAllowed = isset($userPermissions["recording"]) && $userPermissions["recording"] !== "enabled" ? "1" : "0";
$prefKeys->appendChild($xml->createElement("norec", $recordingAllowed));
$serverContactsAllowed = isset($userPermissions["server_contacts"]) && $userPermissions["server_contacts"] === "enabled" ? "ab,ws" : "ab";
$prefKeys->appendChild($xml->createElement("contactSourceType", $serverContactsAllowed));
$quickDial = $this->buildQuickDial($xml, $data);
$root->appendChild($quickDial);
$usersettings = $this->FreePBX->Clearlysp->getCombinedSettings($user["id"]);
if (!($this->FreePBX->Modules->checkStatus("parking") && isset($usersettings["enablepark"]) && $usersettings["enablepark"] === "enabled")) {
goto QyaRA;
}
$parkinglot = $this->FreePBX->Parking->getAllParkingLots();
$lot = false;
foreach ($parkinglot as $pl) {
if (!($pl["id"] === $usersettings["parkinglot"])) {
goto Gn06b;
}
$lot = $pl["parkext"];
Gn06b:
}
if (!$lot) {
goto tQx2G;
}
$blindXferFeatureCode = new \featurecode("core", "blindxfer");
$blindXfer = $blindXferFeatureCode->getCodeActive();
if (empty($blindXfer)) {
goto VKmu_;
}
$dtmfAction = "{$blindXfer}{$lot}#";
$frag = "<actionButtons>\n\t\t\t\t\t\t<item id=\"customActionButton1\">\n\t\t\t\t\t\t\t<displayName>Park</displayName>\n\t\t\t\t\t\t\t<action type=\"dtmf\" value=\"" . $dtmfAction . "\"/>\n\t\t\t\t\t\t\t<portraitUrl>" . sprintf(self::$defaultProvisionServer . "/contactimages/%s/?token=%s", "parking", $this->token) . "</portraitUrl>\n\t\t\t\t\t\t\t<conditions>\n\t\t\t\t\t\t\t\t<condition type=\"callState\" value=\"IncomingRinging,Established\"/>\n\t\t\t\t\t\t\t</conditions>\n\t\t\t\t\t\t</item>\n\t\t\t\t\t</actionButtons>";
$fragment = $xml->createDocumentFragment();
$fragment->appendXml($frag);
$root->appendChild($fragment);
VKmu_:
tQx2G:
QyaRA:
return $xml->saveXML($root);
}
private function buildQuickDial($xml, $data = array())
{
$quickDial = $xml->createElement("quickDial");
foreach ($data as $user) {
$item = $xml->createElement("item");
$item->setAttributeNode(new \DOMAttr("id", $user["extension"]));
$item->appendChild($xml->createElement("displayName", $user["name"]));
$item->appendChild($xml->createElement("uri", $user["extension"]));
$_REQUEST["ext"] = $user["extension"];
$_REQUEST["did"] = $user["extension"];
if (!Contactmanager::hasContactImage()) {
goto vZUuO;
}
$imageurl = sprintf(self::$defaultProvisionServer . "/contactimages/%s/?token=%s", $user["extension"], $this->token);
$item->appendChild($xml->createElement("portraitUrl", $imageurl));
vZUuO:
$quickDial->appendChild($item);
}
return $quickDial;
}
}■【無料】ワードプレス:マルウェアスキャン&セキュリティープラグイン [マルウェア・ウィルス検出と駆除]
■WordPress のマルウェア駆除、セキュリティー対策 カスタマイズや修正、引っ越し・復旧のご依頼承ります
(C)2019 ワードプレス ドクター All rights reserved.