function __CrmFieldMultiEditRenderItem($item, $mnemonic, $typeID, $referenceData, $editorID) { $itemID = isset($item['ID']) ? $item['ID'] : ''; $itemVal = isset($item['VALUE']) ? $item['VALUE'] : ''; ?> <div class="bx-crm-edit-fm-item"> <input type="text" class="bx-crm-edit-input" name="<?php echo htmlspecialcharsbx($mnemonic); ?> [<?php echo htmlspecialcharsbx($typeID); ?> ][<?php echo htmlspecialcharsbx($itemID); ?> ][VALUE]" value="<?php echo htmlspecialcharsbx($itemVal); ?> "><?php echo SelectBoxFromArray(CUtil::JSEscape($mnemonic) . '[' . htmlspecialcharsbx($typeID) . '][' . htmlspecialcharsbx($itemID) . '][VALUE_TYPE]', $referenceData, isset($item['VALUE_TYPE']) ? $item['VALUE_TYPE'] : '', '', "class='bx-crm-edit-input bx-crm-edit-input-small'"); ?> <div class="delete-action" onclick="BX.CrmFieldMultiEditor.items['<?php echo CUtil::addslashes($editorID); ?> '].deleteItem('<?php echo CUtil::addslashes($itemID); ?> ');" title="<?php echo GetMessage('CRM_STATUS_LIST_DELETE'); ?> "></div> </div><?php }
function ShowPanel() { if ($GLOBALS["USER"]->IsAdmin() && COption::GetOptionString("main", "wizard_solution", "", SITE_ID) == "eshop") { $GLOBALS["APPLICATION"]->SetAdditionalCSS("/bitrix/wizards/bitrix/eshop/css/panel.css"); $arMenu = Array( Array( "ACTION" => "jsUtils.Redirect([], '".CUtil::JSEscape("/bitrix/admin/wizard_install.php?lang=".LANGUAGE_ID."&wizardSiteID=".SITE_ID."&wizardName=bitrix:eshop&".bitrix_sessid_get())."')", "ICON" => "bx-popup-item-wizard-icon", "TITLE" => GetMessage("STOM_BUTTON_TITLE_W1"), "TEXT" => GetMessage("STOM_BUTTON_NAME_W1"), ) ); $GLOBALS["APPLICATION"]->AddPanelButton(array( "HREF" => "/bitrix/admin/wizard_install.php?lang=".LANGUAGE_ID."&wizardName=bitrix:eshop&wizardSiteID=".SITE_ID."&".bitrix_sessid_get(), "ID" => "eshop_wizard", "ICON" => "bx-panel-site-wizard-icon", "MAIN_SORT" => 2500, "TYPE" => "BIG", "SORT" => 10, "ALT" => GetMessage("SCOM_BUTTON_DESCRIPTION"), "TEXT" => GetMessage("SCOM_BUTTON_NAME"), "MENU" => $arMenu, )); } }
function __sbpc_bind_post_to_form($xml_id, $form_id_get = null, $arParams) { static $form_id = null; if ($form_id_get !== null) { $form_id = $form_id_get; return; } ?> <script type="text/javascript">BX.ready(function(){__blogLinkEntity({'<?php echo CUtil::JSEscape($xml_id); ?> ' : ['BG', <?php echo $arParams["ID"]; ?> , '<?php echo $arParams["LOG_ID"]; ?> ']}, <?php if ($form_id == null) { ?> window.SBPC.form.id<?php } else { ?> "<?php echo $form_id; ?> "<?php } ?> );});</script><?php }
function ShowPanel() { if ($GLOBALS["USER"]->IsAdmin() && COption::GetOptionString("main", "wizard_solution", "", SITE_ID) == "eshop") { $GLOBALS["APPLICATION"]->SetAdditionalCSS("/bitrix/wizards/bitrix/eshop/css/panel.css"); $arMenu = array(array("ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape("/bitrix/admin/wizard_install.php?lang=" . LANGUAGE_ID . "&wizardSiteID=" . SITE_ID . "&wizardName=bitrix:eshop&" . bitrix_sessid_get()) . "')", "ICON" => "bx-popup-item-wizard-icon", "TITLE" => GetMessage("STOM_BUTTON_TITLE_W1"), "TEXT" => GetMessage("STOM_BUTTON_NAME_W1")), array("ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape("/bitrix/admin/wizard_install.php?lang=" . LANGUAGE_ID . "&site_id=" . SITE_ID . "&wizardName=bitrix:eshop.mobile&" . bitrix_sessid_get()) . "')", "ICON" => "bx-popup-item-wizard-icon", "TITLE" => GetMessage("STOM_BUTTON_TITLE_W5"), "TEXT" => GetMessage("STOM_BUTTON_NAME_W5"))); /*if(COption::GetOptionString("bitrix.eshop", "demo_deleted", "", SITE_ID) != 'Y') { CModule::IncludeModule("iblock"); $dbr = CIBlock::GetList(Array(), Array("XML_ID"=>"furniture_".SITE_ID)); if($arR = $dbr->Fetch()) { if($_REQUEST['delete_demo']=='eshop' && check_bitrix_sessid()) { if(CIBlock::Delete($arR['ID'])) { DeleteDirFilesEx(SITE_DIR.'catalog/furniture'); COption::GetOptionString("bitrix.eshop", "demo_deleted", "Y", SITE_ID); } unset($_SESSION["SALE_BASKET_NUM_PRODUCTS"][SITE_ID]); } else $arMenu[] = Array( "ACTION" => "if(confirm('".GetMessage("STOM_BUTTON_CONFIRM_W2")."')) jsUtils.Redirect([], '".CUtil::JSEscape(SITE_DIR)."catalog/?delete_demo=eshop&".bitrix_sessid_get()."');", "ICON" => "bx-popup-item-delete-icon", "TITLE" => GetMessage("STOM_BUTTON_TITLE_W3"), "TEXT" => GetMessage("STOM_BUTTON_NAME_W3"), ); } else COption::SetOptionString("bitrix.eshop", "demo_deleted", "Y", "", SITE_ID); } */ $GLOBALS["APPLICATION"]->AddPanelButton(array("HREF" => "/bitrix/admin/wizard_install.php?lang=" . LANGUAGE_ID . "&wizardName=bitrix:eshop&wizardSiteID=" . SITE_ID . "&" . bitrix_sessid_get(), "ID" => "eshop_wizard", "ICON" => "bx-panel-site-wizard-icon", "MAIN_SORT" => 2500, "TYPE" => "BIG", "SORT" => 10, "ALT" => GetMessage("SCOM_BUTTON_DESCRIPTION"), "TEXT" => GetMessage("SCOM_BUTTON_NAME"), "MENU" => $arMenu)); } }
public function Authorize() { $GLOBALS["APPLICATION"]->RestartBuffer(); $bSuccess = false; if(isset($_REQUEST["code"]) && $_REQUEST["code"] <> '') { if(CSocServAuthManager::CheckUniqueKey()) { $redirect_uri = CSocServUtil::GetCurUrl('auth_service_id='.self::ID, array("code")); $appID = self::GetOption("facebook_appid"); $appSecret = self::GetOption("facebook_appsecret"); $fb = new CFacebookInterface($appID, $appSecret, $_REQUEST["code"]); if($fb->GetAccessToken($redirect_uri) !== false) { $arFBUser = $fb->GetCurrentUser(); if(isset($arFBUser["id"])) { $arFields = array( 'EXTERNAL_AUTH_ID' => self::ID, 'XML_ID' => $arFBUser["id"], 'LOGIN' => "FB_".$arFBUser["email"], 'EMAIL' => $arFBUser["email"], 'NAME'=> $arFBUser["first_name"], 'LAST_NAME'=> $arFBUser["last_name"], ); if(isset($arFBUser['picture']['data']['url']) && self::CheckPhotoURI($arFBUser['picture']['data']['url'])) if ($arPic = CFile::MakeFileArray($arFBUser['picture']['data']['url'])) $arFields["PERSONAL_PHOTO"] = $arPic; if(isset($arFBUser['birthday'])) if ($date = MakeTimeStamp($arFBUser['birthday'], "MM/DD/YYYY")) $arFields["PERSONAL_BIRTHDAY"] = ConvertTimeStamp($date); if(isset($arFBUser['gender']) && $arFBUser['gender'] != '') { if ($arFBUser['gender'] == 'male') $arFields["PERSONAL_GENDER"] = 'M'; elseif ($arFBUser['gender'] == 'female') $arFields["PERSONAL_GENDER"] = 'F'; } $arFields["PERSONAL_WWW"] = "http://www.facebook.com/".$arFBUser["id"]; $bSuccess = $this->AuthorizeUser($arFields); } } } } $aRemove = array("logout", "auth_service_error", "auth_service_id", "code", "error_reason", "error", "error_description", "check_key"); $url = $GLOBALS['APPLICATION']->GetCurPageParam(($bSuccess? '':'auth_service_id='.self::ID.'&auth_service_error=1'), $aRemove); echo ' <script type="text/javascript"> if(window.opener) window.opener.location = \''.CUtil::JSEscape($url).'\'; window.close(); </script> '; die(); }
function getJsTitle() { $title = $GLOBALS["APPLICATION"]->GetTitle("title", true); $title = html_entity_decode($title, ENT_QUOTES, SITE_CHARSET); $title = CUtil::JSEscape($title); return $title; }
function print_rrr($var) { if (is_array($var)) { if ($var == array_values($var)) { foreach ($var as $key => $value) { $var[$key] = print_rrr($value); } return "Array(" . implode(", ", $var) . ")"; } $res = "\nArray(\n"; $first = true; foreach ($var as $key => $value) { if ($first) { $first = false; } else { $res .= ",\n"; } $res .= "'" . CUtil::JSEscape($key) . "' => " . print_rrr($value); } $res .= "\n)"; return $res; } elseif (is_bool($var)) { if ($var === true) { return 'true'; } else { return 'false'; } } else { return "'" . CUtil::JSEscape($var) . "'"; } }
public function Authorize() { $GLOBALS["APPLICATION"]->RestartBuffer(); $bSuccess = 1; if (isset($_REQUEST["code"]) && $_REQUEST["code"] != '') { if (CSocServAuthManager::CheckUniqueKey()) { if (IsModuleInstalled('bitrix24') && defined('BX24_HOST_NAME')) { $redirect_uri = self::CONTROLLER_URL . "/redirect.php?redirect_to=" . urlencode(CSocServUtil::GetCurUrl('auth_service_id=' . self::ID, array("code"))); } else { $redirect_uri = CSocServUtil::GetCurUrl('auth_service_id=' . self::ID, array("code")); } $appID = trim(self::GetOption("facebook_appid")); $appSecret = trim(self::GetOption("facebook_appsecret")); $fb = new CFacebookInterface($appID, $appSecret, $_REQUEST["code"]); if ($fb->GetAccessToken($redirect_uri) !== false) { $arFBUser = $fb->GetCurrentUser(); if (is_array($arFBUser) && isset($arFBUser["id"])) { $email = $arFBUser["email"] != '' ? $arFBUser["email"] : ''; $arFields = array('EXTERNAL_AUTH_ID' => self::ID, 'XML_ID' => $arFBUser["id"], 'LOGIN' => "FB_" . $arFBUser["id"], 'EMAIL' => $email, 'NAME' => $arFBUser["first_name"], 'LAST_NAME' => $arFBUser["last_name"]); if (isset($arFBUser['picture']['data']['url']) && self::CheckPhotoURI($arFBUser['picture']['data']['url'])) { if ($arPic = CFile::MakeFileArray($arFBUser['picture']['data']['url'])) { $arFields["PERSONAL_PHOTO"] = $arPic; } } if (isset($arFBUser['birthday'])) { if ($date = MakeTimeStamp($arFBUser['birthday'], "MM/DD/YYYY")) { $arFields["PERSONAL_BIRTHDAY"] = ConvertTimeStamp($date); } } if (isset($arFBUser['gender']) && $arFBUser['gender'] != '') { if ($arFBUser['gender'] == 'male') { $arFields["PERSONAL_GENDER"] = 'M'; } elseif ($arFBUser['gender'] == 'female') { $arFields["PERSONAL_GENDER"] = 'F'; } } $arFields["PERSONAL_WWW"] = "http://www.facebook.com/" . $arFBUser["id"]; if (strlen(SITE_ID) > 0) { $arFields["SITE_ID"] = SITE_ID; } $bSuccess = $this->AuthorizeUser($arFields); } } } } $aRemove = array("logout", "auth_service_error", "auth_service_id", "code", "error_reason", "error", "error_description", "check_key", "current_fieldset"); $url = $GLOBALS['APPLICATION']->GetCurPageParam($bSuccess === true ? '' : 'auth_service_id=' . self::ID . '&auth_service_error=' . $bSuccess, $aRemove); if (CModule::IncludeModule("socialnetwork") && strpos($url, "current_fieldset=") === false) { $url = preg_match("/\\?/", $url) ? $url . "¤t_fieldset=SOCSERV" : $url . "?current_fieldset=SOCSERV"; } echo ' <script type="text/javascript"> if(window.opener) window.opener.location = \'' . CUtil::JSEscape($url) . '\'; window.close(); </script> '; die; }
function addWMVJSConfig(&$str, $key, $value, $default = false) { if (!isset($value) || $value == '' || $value === $default) return; if ($str != '{') $str .= ','; $str .= $key.': \''.CUtil::JSEscape($value).'\''; }
function GetHTML($params) { $html = ''; $max_size = 102400; $max_width = 150; $max_height = 150; $url_template = ''; $show_input = true; $show_info = true; if (is_array($params)) { if (isset($params['max_size'])) { $max_size = intval($params['max_size']); } if (isset($params['max_width'])) { $max_width = intval($params['max_width']); } if (isset($params['max_height'])) { $max_height = intval($params['max_height']); } if (isset($params['url_template'])) { $url_template = $params['url_template']; } if (isset($params['show_input'])) { $show_input = (bool) $params['show_input']; } if (isset($params['show_info'])) { $show_info = (bool) $params['show_info']; } } if ($show_input) { $html .= $this->_ob_file->GetInputHTML(array('show_info' => true, 'input_name' => $this->_input_name)); } elseif ($show_info) { $html .= $this->_ob_file->GetInfoHTML(); } if ($this->_ob_file->IsImage() && $this->_ob_file->GetSize() < $max_size) { $html .= '<br />'; //Popup link $bPopUp = $this->_ob_file->GetWidth() > $max_width || $this->_ob_file->GetHeight() > $max_height; if ($bPopUp) { $img_src = $this->_ob_file->GetImgSrc(array('url_template' => $url_template)); $img_onclick = "ImgShw('" . CUtil::JSEscape($img_src) . "', '" . $this->_ob_file->GetWidth() . "', '" . $this->_ob_file->GetHeight() . "', ''); return false;"; $html .= '<a title="' . htmlspecialcharsbx($params['a_title']) . '" onclick="' . htmlspecialcharsbx($img_onclick) . '" href="' . htmlspecialcharsbx($img_src) . '" target="_blank">'; ob_start(); CFile::OutputJSImgShw(); $html .= ob_get_contents(); ob_end_clean(); } //img tag $html .= $this->_ob_file->GetImgHtml(array('url_template' => $url_template, 'max_width' => $max_width, 'max_height' => $max_height, 'html_attributes' => array('border' => '0'))); //Close popup link if ($bPopUp) { $html .= '</a>'; } } else { $html .= '<br />' . $this->_ob_file->GetLinkHtml(array('url_template' => $url_template, 'download_text' => $params['download_text'])); } return $html; }
public function GetFormHtml($arParams,$onclickJs) { $mailru_id = self::GetOption("mailru_id"); $mailru_private_key = self::GetOption("mailru_private_key"); $aRemove = array("logout", "auth_service_error", "auth_service_id"); $url_err = $GLOBALS['APPLICATION']->GetCurPageParam('auth_service_id='.self::ID.'&auth_service_error=1', $aRemove); $url_ok = $GLOBALS['APPLICATION']->GetCurPageParam('', $aRemove); $script = ' <script type="text/javascript" src="//cdn.connect.mail.ru/js/loader.js"></script> <script type="text/javascript"> if(typeof(mailru) != "undefined"){ BX.ready(function(){mailru.loader.require("api", function() { mailru.connect.init(\''.CUtil::JSEscape($mailru_id).'\', \''.CUtil::JSEscape($mailru_private_key).'\'); mailru.events.listen(mailru.connect.events.login, function(sess){mailru.common.users.getInfo(function(res){BxMailRuAuthInfo(sess, res);});}); } );}); } function BxMailRuAuthInfo(sess, response) { var url_err = \''.CUtil::JSEscape($url_err).'\'; if(sess && response && response[0]) { var url_post = \''.CUtil::JSEscape($arParams["~AUTH_URL"]).'\'; var url_ok = \''.CUtil::JSEscape($url_ok).'\'; var data = { "auth_service_id": "'.self::ID.'", "mailru_user": response[0], "mailru_sess": sess }; BX.ajax.post(url_post, data, function(res){window.location = (res == "OK"? url_ok : url_err);}); } else { window.location = url_err; } } </script> '; CUtil::InitJSCore(array("ajax")); $GLOBALS['APPLICATION']->AddHeadString($script, true); if($onclickJs) { $s = 'mailru.connect.login();'; } else { if($arParams['NO_TEXT'] == 'Y'){ $s = '<a href="javascript:void(0)" onclick="mailru.connect.login();" class="bx-ss-button mymailru-button"></a>'; }else{ $s = '<a href="javascript:void(0)" onclick="mailru.connect.login();" class="bx-ss-button mymailru-button"></a><span class="bx-spacer"></span><span>'.GetMessage("socserv_mailru_note").'</span>'; } } return $s; }
public function Authorize() { $GLOBALS["APPLICATION"]->RestartBuffer(); $bSuccess = 1; $appID = trim(self::GetOption("twitter_key")); $appSecret = trim(self::GetOption("twitter_secret")); if (!isset($_REQUEST["oauth_token"]) || $_REQUEST["oauth_token"] == '') { $tw = new CTwitterInterface($appID, $appSecret); $callback = CSocServUtil::GetCurUrl('auth_service_id=' . self::ID); //$callback = 'http://algerman.sam:6448/script.php?auth_service_id='.self::ID; if ($tw->GetRequestToken($callback)) { $tw->RedirectAuthUrl(); } } elseif (CSocServAuthManager::CheckUniqueKey()) { $tw = new CTwitterInterface($appID, $appSecret, $_REQUEST["oauth_token"], $_REQUEST["oauth_verifier"]); if (($arResult = $tw->GetAccessToken()) !== false && $arResult["user_id"] != '') { $twUser = $tw->GetUserInfo($arResult["user_id"]); $first_name = $last_name = ""; if ($twUser["name"] != '') { $aName = explode(" ", $twUser["name"]); $first_name = $aName[0]; if (isset($aName[1])) { $last_name = $aName[1]; } } $arFields = array('EXTERNAL_AUTH_ID' => self::ID, 'XML_ID' => $arResult["user_id"], 'LOGIN' => $arResult["screen_name"], 'NAME' => $first_name, 'LAST_NAME' => $last_name); if (isset($twUser["profile_image_url"]) && self::CheckPhotoURI($twUser["profile_image_url"])) { if ($arPic = CFile::MakeFileArray($twUser["profile_image_url"])) { $arFields["PERSONAL_PHOTO"] = $arPic; } } $arFields["PERSONAL_WWW"] = "https://twitter.com/" . $arResult["screen_name"]; if (strlen(SITE_ID) > 0) { $arFields["SITE_ID"] = SITE_ID; } if (COption::GetOptionString('socialservices', 'last_twit_id', '1') == 1) { if (isset($twUser["status"]["id_str"])) { COption::SetOptionString('socialservices', 'last_twit_id', $twUser["status"]["id_str"]); } } $bSuccess = $this->AuthorizeUser($arFields); } } $aRemove = array("logout", "auth_service_error", "auth_service_id", "oauth_token", "oauth_verifier", "check_key", "current_fieldset"); $url = $GLOBALS['APPLICATION']->GetCurPageParam($bSuccess === true ? '' : 'auth_service_id=' . self::ID . '&auth_service_error=' . $bSuccess, $aRemove); if (CModule::IncludeModule("socialnetwork")) { $url = preg_match("/\\?/", $url) ? $url . "¤t_fieldset=SOCSERV" : $url . "?current_fieldset=SOCSERV"; } echo ' <script type="text/javascript"> if(window.opener) window.opener.location = \'' . CUtil::JSEscape($url) . '\'; window.close(); </script> '; die; }
public function Authorize() { $GLOBALS["APPLICATION"]->RestartBuffer(); $bSuccess = false; $appID = self::GetOption("twitter_key"); $appSecret = self::GetOption("twitter_secret"); if(!isset($_REQUEST["oauth_token"]) || $_REQUEST["oauth_token"] == '') { $tw = new CTwitterInterface($appID, $appSecret); $callback = CSocServUtil::GetCurUrl('auth_service_id='.self::ID); if($tw->GetRequestToken($callback)) $tw->RedirectAuthUrl(); } elseif(CSocServAuthManager::CheckUniqueKey()) { $tw = new CTwitterInterface($appID, $appSecret, $_REQUEST["oauth_token"], $_REQUEST["oauth_verifier"]); if(($arResult = $tw->GetAccessToken()) !== false && $arResult["user_id"] <> '') { $twUser = $tw->GetUserInfo($arResult["user_id"]); $first_name = $last_name = ""; if($twUser["name"] <> '') { $aName = explode(" ", $twUser["name"]); $first_name = $aName[0]; if(isset($aName[1])) $last_name = $aName[1]; } $arFields = array( 'EXTERNAL_AUTH_ID' => self::ID, 'XML_ID' => $arResult["user_id"], 'LOGIN' => $arResult["screen_name"], 'NAME'=> $first_name, 'LAST_NAME'=> $last_name, ); $arFields["PERSONAL_WWW"] = "https://twitter.com/".$twUser["screen_name"]; $bSuccess = $this->AuthorizeUser($arFields); } } $aRemove = array("logout", "auth_service_error", "auth_service_id", "oauth_token", "oauth_verifier", "check_key"); $url = $GLOBALS['APPLICATION']->GetCurPageParam(($bSuccess? '':'auth_service_id='.self::ID.'&auth_service_error=1'), $aRemove); echo ' <script type="text/javascript"> if(window.opener) window.opener.location = \''.CUtil::JSEscape($url).'\'; window.close(); </script> '; die(); }
private static function injectDataParams() { $result = ""; foreach (static::$data as $index => $arItem) { foreach ($arItem as $key => $value) { $jsValue = is_array($value) ? \CUtil::PhpToJSObject($value) : \CUtil::JSEscape($value); $result .= '_ba.push(["ad[' . $index . '][' . \CUtil::JSEscape($key) . ']", "' . $jsValue . '"]);'; } } return $result; }
function GetPropertyFieldHtml($arProperty, $value, $strHTMLControlName) { $ar_res = false; if (strlen($value["VALUE"])) { $db_res = CIBlockElement::GetList(array(), array("=XML_ID" => $value["VALUE"], "SHOW_HISTORY" => "Y"), false, false, array("ID", "IBLOCK_ID", "NAME")); $ar_res = $db_res->GetNext(); } if (!$ar_res) { $ar_res = array("NAME" => ""); } return '<input name="' . htmlspecialcharsbx($strHTMLControlName["VALUE"]) . '" id="' . htmlspecialcharsbx($strHTMLControlName["VALUE"]) . '" value="' . htmlspecialcharsex($value["VALUE"]) . '" size="20" type="text">' . '<input type="button" value="..." onClick="jsUtils.OpenWindow(\'' . CUtil::JSEscape('/bitrix/admin/iblock_element_search.php?lang=' . LANG . '&n=' . urlencode($strHTMLControlName["VALUE"]) . '&get_xml_id=Y&a=b') . '\', 600, 500);">' . ' <span id="sp_' . htmlspecialcharsbx($strHTMLControlName["VALUE"]) . '" >' . $ar_res['NAME'] . '</span>'; }
function ShowPanel() { global $USER, $APPLICATION; if (defined("ADMIN_SECTION") && ADMIN_SECTION == true) { return; } if ($USER->IsAdmin()) { if ($_REQUEST['add_new_site_sol'] == 'sol' && check_bitrix_sessid()) { $dbrSites = CSite::GetList($by, $ord); $arSitesID = array(); $arSitesPath = array(); $siteCnt = 0; while ($arSite = $dbrSites->Fetch()) { if ($arSite["ACTIVE"] == "Y") { $siteCnt++; } $arSitesID[] = strtolower($arSite["ID"]); $arSitesPath[] = strtolower($arSite["PATH"]); } $newSiteID = ""; while (true) { $newSiteID = chr(rand(ord("a"), ord("z"))) . chr(rand(ord("a"), ord("z"))); if (!in_array($newSiteID, $arSitesID) && !in_array("/site" . $newSiteID . "/", $arSitesPath) && !file_exists($_SERVER['DOCUMENT_ROOT'] . "/site" . $newSiteID)) { break; } } $culture = CultureTable::getRow(array('filter' => array("=FORMAT_DATE" => FORMAT_DATE, "=FORMAT_DATETIME" => FORMAT_DATETIME, "=FORMAT_NAME" => CSite::GetDefaultNameFormat(), "=CHARSET" => SITE_CHARSET))); if ($culture) { $cultureId = $culture["ID"]; } else { $addResult = CultureTable::add(array("NAME" => $newSiteID, "CODE" => $newSiteID, "FORMAT_DATE" => FORMAT_DATE, "FORMAT_DATETIME" => FORMAT_DATETIME, "FORMAT_NAME" => CSite::GetDefaultNameFormat(), "CHARSET" => SITE_CHARSET)); $cultureId = $addResult->getId(); } $arFields = array("LID" => $newSiteID, "ACTIVE" => "Y", "SORT" => 100, "DEF" => "N", "NAME" => $newSiteID, "DIR" => "/site_" . $newSiteID . "/", "SITE_NAME" => $newSiteID, "SERVER_NAME" => $_SERVER["SERVER_NAME"], "EMAIL" => COption::GetOptionString("main", "email_from"), "LANGUAGE_ID" => LANGUAGE_ID, "DOC_ROOT" => "", "CULTURE_ID" => $cultureId); $obSite = new CSite(); $result = $obSite->Add($arFields); if ($result) { LocalRedirect("/bitrix/admin/wizard_install.php?lang=" . LANGUAGE_ID . "&wizardName=bitrix:portal&wizardSiteID=" . $newSiteID . "&" . bitrix_sessid_get()); } else { echo $obSite->LAST_ERROR; } } $arMenu = array(array("ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape(SITE_DIR) . "?add_new_site_sol=sol&" . bitrix_sessid_get() . "')", "TEXT" => "<b>" . GetMessage("SOL_BUTTON_TEST_TEXT", array("#BR#" => " ")) . "</b>", "TITLE" => GetMessage("SOL_BUTTON_TEST_TITLE"))); $arSites = array(); $dbrSites = CSite::GetList($by, $ord, array("ACTIVE" => "Y")); while ($arSite = $dbrSites->GetNext()) { $arSites[] = array("ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape($arSite["DIR"]) . "');", "ICON" => $arSite["LID"] == SITE_ID ? "checked" : "", "TEXT" => $arSite["NAME"], "TITLE" => GetMessage("SOL_BUTTON_GOTOSITE") . " " . $arSite["NAME"]); } $arMenu[] = array("SEPARATOR" => true); $arMenu[] = array("TEXT" => GetMessage("SOL_BUTTON_GOTOSITE"), "MENU" => $arSites); $APPLICATION->AddPanelButton(array("HREF" => SITE_DIR . "?add_new_site_sol=sol&" . bitrix_sessid_get(), "ID" => "solutions_wizard", "ICON" => "bx-panel-install-solution-icon", "TYPE" => "BIG", "ALT" => GetMessage("SOL_BUTTON_TEST_TITLE"), "TEXT" => GetMessage("SOL_BUTTON_TEST_TEXT"), "MAIN_SORT" => 2520, "SORT" => 20, "MENU" => $arMenu, 'HINT' => array('TITLE' => str_replace('#BR#', ' ', GetMessage("SOL_BUTTON_TEST_TEXT")), 'TEXT' => GetMessage('SOL_BUTTON_TEST_TEXT_HINT')), 'HINT_MENU' => array('TITLE' => str_replace('#BR#', ' ', GetMessage("SOL_BUTTON_TEST_TEXT")), 'TEXT' => GetMessage('SOL_BUTTON_TEST_MENU_HINT')))); } }
function JSPopupRedirectHandler(&$url, $skip_security_check) { if (preg_match("#^/bitrix/admin/#", $url)) { ob_end_clean(); echo '<script type="text/javascript">top.BX.WindowManager.Get().Close(); ' . (!$_REQUEST['subdialog'] ? 'top.BX.reload(true);' : '') . '</script>'; die; } else { ob_end_clean(); echo '<script type="text/javascript">top.BX.WindowManager.Get().Close(); ' . (!$_REQUEST['subdialog'] ? 'top.BX.reload(\'' . CUtil::JSEscape($url) . '\', true);' : '') . '</script>'; die; } }
public static function getScripts() { $result = ''; if (!static::$jsInited) { \Bitrix\Main\Page\Asset::getInstance()->addJs("/bitrix/js/sale/admin/order_basket_settings.js"); $result .= ' BX.message({ SALE_ORDER_BASKET_JS_SETTINGS_TITLE: "' . \CUtil::JSEscape(Loc::getMessage("SALE_ORDER_BASKET_JS_SETTINGS_TITLE")) . '", SALE_ORDER_BASKET_JS_SETTINGS_APPLY: "' . \CUtil::JSEscape(Loc::getMessage("SALE_ORDER_BASKET_JS_SETTINGS_APPLY")) . '" }); '; static::$jsInited = true; } return $result; }
public function PrepareCrumbLinks(&$crumbs, $componentId) { if (!is_array($crumbs) || empty($crumbs)) { return; } $template = 'return BX.Crm["ProductSectionCrumbs_' . $componentId . '"].onSectionSelect({sectionId: "#section_id#", sectionName: "#section_name#"});'; foreach ($crumbs as &$crumb) { if (isset($crumb['LINK']) && isset($crumb['NAME'])) { $crumb['LINK'] = str_replace(array('#section_id#', '#section_name#'), array(CUtil::JSEscape($crumb['LINK']), CUtil::JSEscape($crumb['NAME'])), $template); } if (is_array($crumb['CHILDREN']) && !empty($crumb['CHILDREN'])) { $this->PrepareCrumbLinks($crumb['CHILDREN'], $componentId); } } unset($crumb); }
protected function reformatDropdownToJs(array $dropDownItems) { $jsItems = array(); foreach ($dropDownItems as $item) { $className = ''; $text = CUtil::JSEscape($item['TEXT']); $title = CUtil::JSEscape($item['TITLE']); $href = CUtil::JSEscape($item['HREF']); if (!empty($item['CLASS_NAME'])) { $className = ", className : '" . CUtil::JSEscape($item['CLASS_NAME']) . "'"; } $jsItems[] = "{text : '{$text}', title : '{$title}', href : '{$href}', {$className} }"; } unset($item); return '[' . implode(', ', $jsItems) . ']'; }
public static function getAvailabilityPage($minutes) { if (intval($minutes) <= 0) { throw new \Bitrix\Main\ArgumentNullException("minutes"); } $now = time(); $contents = file_get_contents(\Bitrix\Main\Application::getDocumentRoot() . '/bitrix/modules/scale/server_off.html'); $contents = str_replace("##SITE_NAME##", \CUtil::JSEscape(\COption::GetOptionString("main", "site_name", $_SERVER["SERVER_NAME"])), $contents); $contents = str_replace("##CHARSET##", LANG_CHARSET, $contents); $contents = str_replace("##AVAILABLE_MESSAGE##", Loc::getMessage("SCALE_HLP_AV_MESSAGE"), $contents); $contents = str_replace("##AVAILABLE_DATETIME##", ($now + 60 * $minutes) * 1000, $contents); $contents = str_replace("##SERVER_NOW##", $now * 1000, $contents); $contents = str_replace("##HOURS##", Loc::getMessage("SCALE_HLP_AV_HOURS") . " ", $contents); $contents = str_replace("##MINS##", Loc::getMessage("SCALE_HLP_AV_MINS") . " ", $contents); $contents = str_replace("##SECS##", Loc::getMessage("SCALE_HLP_AV_SECS") . " ", $contents); return $contents; }
function toJsObject(array $answer) { $answerParts = array(); foreach ($answer as $attr => $value) { switch (gettype($value)) { case 'string': $value = "'" . CUtil::JSEscape($value) . "'"; break; case 'boolean': $value = $value === true ? 'true' : 'false'; break; case 'array': $value = toJsObject($value); break; } $answerParts[] = $attr . ": " . $value; } return "{" . implode(", ", $answerParts) . "}"; }
public static function RenderUserSearch($ID, $searchInputID, $dataInputID, $componentName, $siteID = '', $nameFormat = '', $delay = 0) { $ID = strval($ID); $searchInputID = strval($searchInputID); $dataInputID = strval($dataInputID); $componentName = strval($componentName); $siteID = strval($siteID); if ($siteID === '') { $siteID = SITE_ID; } $nameFormat = strval($nameFormat); if ($nameFormat === '') { $nameFormat = CSite::GetNameFormat(false); } $delay = intval($delay); if ($delay < 0) { $delay = 0; } echo '<input type="text" id="', htmlspecialcharsbx($searchInputID), '" style="width:200px;" >', '<input type="hidden" id="', htmlspecialcharsbx($dataInputID), '" name="', htmlspecialcharsbx($dataInputID), '" value="">'; echo '<script type="text/javascript">', 'BX.ready(function(){', 'BX.CrmUserSearchPopup.deletePopup("', $ID, '");', 'BX.CrmUserSearchPopup.create("', $ID, '", { searchInput: BX("', CUtil::JSEscape($searchInputID), '"), dataInput: BX("', CUtil::JSEscape($dataInputID), '"), componentName: "', CUtil::JSEscape($componentName), '", user: {} }, ', $delay, ');', '});</script>'; $GLOBALS['APPLICATION']->IncludeComponent('bitrix:intranet.user.selector.new', '', array('MULTIPLE' => 'N', 'NAME' => $componentName, 'INPUT_NAME' => $searchInputID, 'SHOW_EXTRANET_USERS' => 'NONE', 'POPUP' => 'Y', 'SITE_ID' => $siteID, 'NAME_TEMPLATE' => $nameFormat), null, array('HIDE_ICONS' => 'Y')); }
public static function OnPanelCreate() { global $APPLICATION, $USER; $cur_page_param = $APPLICATION->GetCurPageParam(); $cur_page = $APPLICATION->GetCurPage(true); $cur_dir = $APPLICATION->GetCurDir(); // New page $flow_link_new = CWorkFlow::GetEditLink(array(SITE_ID, rtrim(GetDirPath($cur_page), "/") . "/untitled.php"), $status_id, $status_title, "standart.php", LANGUAGE_ID, $cur_page_param); $create_permission = $flow_link_new != '' && $USER->CanDoFileOperation('fm_edit_in_workflow', array(SITE_ID, $cur_dir)); // Document history $flow_link_hist = "/bitrix/admin/workflow_history_list.php?lang=" . LANGUAGE_ID . "&find_filename=" . urlencode($cur_page) . "&find_filename_exact_match=Y&set_filter=Y"; $history_permission = $USER->CanDoFileOperation('fm_edit_in_workflow', array(SITE_ID, $cur_page)); // Current page $flow_link_edit = CWorkFlow::GetEditLink(array(SITE_ID, $cur_page), $status_id, $status_title, "", LANGUAGE_ID, $cur_page_param); $edit_permission = $flow_link_edit != '' && $history_permission; //Big button if ($edit_permission) { $public_edit = $APPLICATION->GetPopupLink(array("URL" => $flow_link_edit . "&bxpublic=Y&from_module=workflow", "PARAMS" => array("min_width" => 700, "min_height" => 400, 'height' => 700, 'width' => 400))); $APPLICATION->AddPanelButton(array("HREF" => "javascript:" . $public_edit, "TYPE" => "BIG", "ID" => "edit", "ICON" => "bx-panel-edit-page-icon", "ALT" => GetMessage("top_panel_edit_title"), "TEXT" => GetMessage("top_panel_edit_new"), "MAIN_SORT" => "200", "SORT" => 10, "MENU" => array(), "HK_ID" => "top_panel_edit_new", "RESORT_MENU" => true, "HINT" => array("TITLE" => GetMessage("top_panel_edit_new_tooltip_title"), "TEXT" => GetMessage("top_panel_edit_new_tooltip")))); } // New page if ($create_permission) { $APPLICATION->AddPanelButtonMenu("create", array("SEPARATOR" => true, "SORT" => 49)); $APPLICATION->AddPanelButtonMenu("create", array("SRC" => "/bitrix/images/workflow/new_page.gif", "TEXT" => GetMessage("FLOW_PANEL_CREATE_WITH_WF"), "TITLE" => GetMessage("FLOW_PANEL_CREATE_ALT"), "ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape($flow_link_new) . "')", "HK_ID" => "FLOW_PANEL_CREATE_WITH_WF", "SORT" => 50)); } if ($edit_permission || $history_permission) { $APPLICATION->AddPanelButtonMenu("edit", array("SEPARATOR" => true, "SORT" => 79)); } // Current page if ($edit_permission) { $APPLICATION->AddPanelButtonMenu("edit", array("SRC" => "/bitrix/images/workflow/edit_flow_public.gif", "TEXT" => GetMessage("FLOW_PANEL_EDIT_WITH_WF"), "TITLE" => intval($status_id) > 0 ? GetMessage("FLOW_CURRENT_STATUS") . " [{$status_id}] {$status_title}" : GetMessage("FLOW_PANEL_EDIT_ALT"), "ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape($flow_link_edit) . "')", "HK_ID" => "FLOW_PANEL_EDIT_WITH_WF", "SORT" => 80)); } // Document history if ($history_permission) { $flow_link_hist = "/bitrix/admin/workflow_history_list.php?lang=" . LANGUAGE_ID . "&find_filename=" . urlencode($cur_page) . "&find_filename_exact_match=Y&set_filter=Y"; $APPLICATION->AddPanelButtonMenu("edit", array("SRC" => "/bitrix/images/workflow/history.gif", "TEXT" => GetMessage("FLOW_PANEL_HISTORY"), "TITLE" => GetMessage("FLOW_PANEL_HISTORY_ALT"), "ACTION" => "jsUtils.Redirect([], '" . CUtil::JSEscape($flow_link_hist) . "')", "HK_ID" => "FLOW_PANEL_HISTORY", "SORT" => 81)); } }
public function GetFormHtml($arParams) { $aRemove = array("logout", "auth_service_error", "auth_service_id"); $url_err = $GLOBALS['APPLICATION']->GetCurPageParam('auth_service_id='.self::ID.'&auth_service_error=1', $aRemove); $url_ok = $GLOBALS['APPLICATION']->GetCurPageParam('', $aRemove); $script = ' <script type="text/javascript" src="http://vkontakte.ru/js/api/openapi.js"></script> <script type="text/javascript"> BX.ready(function(){VK.init({apiId: \''.CUtil::JSEscape(self::GetOption("vkontakte_appid")).'\'});}); function BxVKAuthInfo(response) { var url_err = \''.CUtil::JSEscape($url_err).'\'; if(response.session) { var url_post = \''.CUtil::JSEscape($arParams["~AUTH_URL"]).'\'; var url_ok = \''.CUtil::JSEscape($url_ok).'\'; var data = { "auth_service_id": "'.self::ID.'", "vk_session": response.session }; BX.ajax.post(url_post, data, function(res){window.location = (res == "OK"? url_ok : url_err);}); } else { window.location = url_err; } } </script> '; // CUtil::InitJSCore(array("ajax")); // $GLOBALS['APPLICATION']->AddHeadString($script, true); //$s = '<a href="javascript:void(0)" onclick="VK.Auth.login(BxVKAuthInfo);" class="bx-ss-button vkontakte-button"></a><span class="bx-spacer"></span><span>'.GetMessage("socserv_vk_note").'</span>'; $s = '<a href="'.$this->GetAuthUrl().'" class="bx-ss-button vkontakte-button ga_track_site_button-autorize-via-VK"></a><span class="bx-spacer"></span><span>'.GetMessage("socserv_vk_note").'</span>'; return $s; }
} data["url"] = BX.util.add_url_param(data["url"], request); } ); BX.CrmFormTabLazyLoader.create( "<?php echo CUtil::JSEscape(strtolower($arResult['FORM_ID'])) . '_livefeed'; ?> ", { containerID: liveFeedContainerId, serviceUrl: "/bitrix/components/bitrix/crm.entity.livefeed/lazyload.ajax.php?&site=<?php echo SITE_ID; ?> &<?php echo bitrix_sessid_get(); ?> ", formID: "<?php echo CUtil::JSEscape($arResult['FORM_ID']); ?> ", tabID: "tab_live_feed", params: params } ); })(); </script> <?php }
/** * Function adds an delete action to some area inside the component. * * <ul> * <li>$arParams['CONFIRM'] = false - disable confirm; * <li>$arParams['CONFIRM'] = 'Text' - confirm with custom text; * <li>no $arParams['CONFIRM'] at all - confirm with default text * </ul> * @param string $entryId * @param string $deleteLink * @param string $deleteTitle * @param array[string]mixed $arParams * @return void * */ final public function addDeleteAction($entryId, $deleteLink, $deleteTitle = false, $arParams = array()) { global $APPLICATION; if (!$entryId || !$deleteLink) return; includeModuleLangFile(__FILE__); if (!$deleteTitle) { $deleteTitle = GetMessage('DELETE_ACTION_TITLE_DEFAULT'); } if (!is_array($arParams)) $arParams = array(); if (!$arParams['ICON'] && !$arParams['SRC'] && !$arParams['IMAGE']) $arParams['ICON'] = 'bx-context-toolbar-delete-icon'; if (substr($deleteLink, 0, 11) != 'javascript:') { if (false === strpos($deleteLink, 'return_url=')) $deleteLink.= '&return_url='.urlencode($APPLICATION->getCurPageParam()); $deleteLink.= '&'.bitrix_sessid_get(); if ($arParams['CONFIRM'] !== false) { $confirmText = $arParams['CONFIRM'] ? $arParams['CONFIRM'] : GetMessage('DELETE_ACTION_CONFIRM'); $deleteLink = 'javascript:if(confirm(\''.CUtil::JSEscape($confirmText).'\')) jsUtils.Redirect([], \''.CUtil::JSEscape($deleteLink).'\');'; } } $arBtn = array( 'URL' => $deleteLink, 'TITLE' => $deleteTitle, ); if ($arParams['ICON']) $arBtn['ICON'] = $arParams['ICON']; elseif ($arParams['SRC'] || $arParams['IMAGE']) $arBtn['SRC'] = $arParams['IMAGE'] ? $arParams['IMAGE'] : $arParams['SRC']; $GLOBALS['APPLICATION']->setEditArea($this->getEditAreaId($entryId), array( $arBtn, )); }
?> ", START_DEPARTMENT:"<?php echo $arResult["DEPARTMENT_ID"]; ?> ", DATESELECTOR: 'bx_tm_report_dateselector', MONTHS: [<?php for ($i = 1; $i < 13; $i++) { echo $i == 1 ? '' : ',', "'", CUtil::JSEscape(GetMessage('TMR_MONTH_' . $i)), "'"; } ?> ], DAYS: [<?php for ($i = 1; $i < 8; $i++) { echo $i == 1 ? '' : ',', "'", CUtil::JSEscape(GetMessage('TMR_DAY_' . $i)), "'"; } ?> ], LANG: <?php echo CUtil::PhpToJsObject($arMess); ?> , SITE_ID: '<?php echo SITE_ID; ?> ' })</script> <div style="clear: both;"></div>
$INPUT_ID = trim($arParams["~INPUT_ID"]); if(strlen($INPUT_ID) <= 0) $INPUT_ID = "title-search-input"; $INPUT_ID = CUtil::JSEscape($INPUT_ID); $CONTAINER_ID = trim($arParams["~CONTAINER_ID"]); if(strlen($CONTAINER_ID) <= 0) $CONTAINER_ID = "title-search"; $CONTAINER_ID = CUtil::JSEscape($CONTAINER_ID); if($arParams["SHOW_INPUT"] !== "N"):?> <div id="<?echo $CONTAINER_ID?>" class="form-box"> <form action="<?echo $arResult["FORM_ACTION"]?>"> <div class="form-textbox"> <div class="form-textbox-border"><input id="<?echo $INPUT_ID?>" type="text" name="q" value="" size="40" maxlength="50" autocomplete="off" /></div> </div> </form> </div> <?endif?> <script type="text/javascript"> var jsControl = new JCTitleSearch({ //'WAIT_IMAGE': '/bitrix/themes/.default/images/wait.gif', 'AJAX_PAGE' : '<?echo CUtil::JSEscape(POST_FORM_ACTION_URI)?>', 'CONTAINER_ID': '<?echo $CONTAINER_ID?>', 'INPUT_ID': '<?echo $INPUT_ID?>', 'MIN_QUERY_LEN': 2 }); </script>
); BX('<?php echo $tableId; ?> _query').focus(); </script> <?php } ?> <script type="text/javascript"> <?php if (sizeof($arResult['IBLOCKS']) > 1) { $iblockMenu = array(array('TEXT' => '<b>' . GetMessage('SPS_CHOOSE_CATALOG') . ':</b>', 'CLOSE_ON_CLICK' => false), array('SEPARATOR' => true)); foreach ($arResult['IBLOCKS'] as $arIblock) { $iblockMenu[] = array('TEXT' => '<span class="psd-catalog-menu-name" title="' . htmlspecialcharsbx($arIblock['NAME']) . '">' . htmlspecialcharsbx($arIblock['NAME']) . '</span><span class="psd-catalog-menu-lid" title="' . htmlspecialcharsbx($arIblock['SITE_NAME']) . '">' . htmlspecialcharsbx($arIblock['SITE_NAME']) . '</span>', 'ONCLICK' => $tableId . '_helper.onIblockChange(' . (int) $arIblock['ID'] . ',\'' . CUtil::JSEscape($arIblock['NAME']) . '\')'); } ?> new BX.COpener({ DIV: '<?php echo $tableId; ?> _iblock_menu_opener', MENU: <?php echo CUtil::PhpToJSObject($iblockMenu); ?> }); <?php } ?> // override SaveSetting to fix URL