Пример #1
0
 public function GetCategorySequence($CODE)
 {
     if (self::$CategoryIB <= 0 || !$CODE) {
         return array();
     }
     $arCategoryListXML = $this->GetCategoryList();
     $arCategoryList = array();
     foreach ($arCategoryListXML as $arCategory) {
         $arCategoryList[$arCategory["ID"]] = $arCategory;
     }
     $arSequnce = array("CATEGORY_1" => false, "CATEGORY_2" => false);
     $CODE = ToUpper($CODE);
     $arFullSequence = array();
     while (array_key_exists($CODE, $arCategoryListXML)) {
         array_unshift($arFullSequence, ToLower($CODE));
         if ($arCategoryListXML[$CODE]["IBLOCK_SECTION_ID"] > 0 && $arCategoryList[$arCategoryListXML[$CODE]["IBLOCK_SECTION_ID"]]) {
             $CODE = ToUpper($arCategoryList[$arCategoryListXML[$CODE]["IBLOCK_SECTION_ID"]]["CODE"]);
         } else {
             break;
         }
     }
     if (array_key_exists(0, $arFullSequence)) {
         $arSequnce["CATEGORY_1"] = $arFullSequence[0];
     }
     if (count($arFullSequence) > 1) {
         $arSequnce["CATEGORY_2"] = end($arFullSequence);
     }
     $arSequnce["FULL"] = $arFullSequence;
     return $arSequnce;
 }
Пример #2
0
 function CSearchStatistic($phrase = "", $tags = "")
 {
     $phrase = ToLower(trim($phrase, " \t\n\r"));
     if ($l = strlen($phrase)) {
         if ($l > 250) {
             $p = strrpos($phrase, ' ');
             if ($p === false) {
                 $this->_phrase = substr($phrase, 0, 250);
             } else {
                 $this->_phrase = substr($phrase, 0, $p);
             }
         } else {
             $this->_phrase = $phrase;
         }
     } else {
         $this->_phrase = false;
     }
     $arTags = tags_prepare($tags);
     if (count($arTags)) {
         asort($arTags);
         $this->_tags = implode(", ", $arTags);
     } else {
         $this->_tags = false;
     }
     $this->_session_id = bitrix_sessid();
     if (isset($_SESSION["SESS_SESSION_ID"])) {
         $this->_stat_sess_id = intval($_SESSION["SESS_SESSION_ID"]);
     }
 }
Пример #3
0
 function GetStatusInfo($string)
 {
     switch (ToLower(trim($string))) {
         case "прибыл":
         case "позднее прибытие":
         case "приземлился":
             $result["CODE"] = "L";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_L");
             break;
         case "задержан":
             $result["CODE"] = "D";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_D");
             break;
         case "":
             $result["CODE"] = "P";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_P");
             break;
         case "отправлен":
             $result["CODE"] = "F";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_F");
             break;
         case "отменен":
             $result["CODE"] = "C";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_C");
             break;
         default:
             $result["CODE"] = "";
             $result["NAME"] = htmlspecialchars($string);
     }
     $result["~NAME"] = htmlspecialchars($string);
     return $result;
 }
Пример #4
0
	public static function CleanURL($URL)
	{
		if (false !== ($pos = strpos($URL, '?')))
		{
			$query = substr($URL, $pos+1);
			$URL = substr($URL, 0, $pos);

			$arQuery = explode('&', $query);

			$arExcludedParams = array('clear_cache', 'clear_cache_session', 'back_url_admin', 'back_url', 'backurl', 'login', 'logout', 'compress');
			foreach ($arQuery as $key => $param)
			{
				if (false !== ($pos = strpos($param, '=')))
				{
					$param_name = ToLower(substr($param, 0, $pos));
					if (
						substr($param_name, 0, 7) == 'freetrix_'
						|| substr($param_name, 0, 5) == 'show_'
						|| in_array($param_name, $arExcludedParams)
					)
					{
						unset($arQuery[$key]);
					}
				}
			}

			if (count($arQuery) > 0)
			{
				$URL .= '?'.implode('&', $arQuery);
			}
		}

		return $URL;
	}
Пример #5
0
 function GetStatusInfo($string)
 {
     switch (ToLower(trim($string))) {
         case "прибыл":
             $result["CODE"] = "L";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_L");
             break;
         case "задержан":
         case "задерживается":
             $result["CODE"] = "D";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_D");
             break;
         case "":
             $result["CODE"] = "P";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_P");
             break;
         case "вылетел":
             $result["CODE"] = "F";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_F");
             break;
         case "отменен":
             $result["CODE"] = "C";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_C");
             break;
         case "регистрация":
             $result["CODE"] = "R";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_R");
             break;
         default:
             $result["CODE"] = "";
             $result["NAME"] = htmlspecialchars($string);
     }
     $result["~NAME"] = htmlspecialchars($string);
     return $result;
 }
Пример #6
0
 public static function getTypes($params = array('LANGUAGE_ID' => LANGUAGE_ID))
 {
     if (!is_array($params)) {
         $params = array();
     }
     if (!isset($params['LANGUAGE_ID'])) {
         $params['LANGUAGE_ID'] = LANGUAGE_ID;
     }
     $result = array();
     $lang = ToLower($params['LANGUAGE_ID']);
     $langMapped = static::mapLanguage($lang);
     $res = \Bitrix\Sale\Location\TypeTable::getList(array('select' => array('*', 'TNAME' => 'NAME.NAME', 'TLANGUAGE_ID' => 'NAME.LANGUAGE_ID'), 'order' => array('SORT' => 'asc', 'NAME.NAME' => 'asc')));
     while ($item = $res->fetch()) {
         if (!isset($result[$item['CODE']])) {
             $result[$item['CODE']] = array('CODE' => $item['CODE'], 'ID' => $item['ID'], 'NAME' => array());
         }
         $result[$item['CODE']]['NAME'][$item['TLANGUAGE_ID']] = $item['TNAME'];
     }
     foreach ($result as $code => &$data) {
         if ((string) $data['NAME'][$lang] != '') {
             $name = $data['NAME'][$lang];
         } else {
             if ((string) $data['NAME'][$langMapped] != '') {
                 $name = $data['NAME'][$langMapped];
             } else {
                 $name = $data['NAME']['en'];
             }
         }
         $data['NAME_CURRENT'] = $name;
     }
     return $result;
 }
Пример #7
0
 function GetStatusInfo($string)
 {
     switch (ToLower(trim($string))) {
         case "прилетел":
             $result["CODE"] = "L";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_L");
             break;
         case "не вылетел":
             $result["CODE"] = "D";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_D");
             break;
         case "-":
             $result["CODE"] = "P";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_P");
             break;
         case "вылетел":
             $result["CODE"] = "F";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_F");
             break;
         case "отменен":
             $result["CODE"] = "C";
             $result["NAME"] = GetMessage("AIRPORT_BOARD_STATUS_C");
             break;
         default:
             $result["CODE"] = "";
             $result["NAME"] = "";
     }
     $result["~NAME"] = htmlspecialchars($string);
     return $result;
 }
Пример #8
0
 /**
  * Делает первую букву каждого слова заглавной.
  * @param  string $string
  * @return string
  */
 public static function CapitalizeFirst($string)
 {
     $string = explode(' ', $string);
     foreach ($string as &$s) {
         $s = ToUpper(substr($s, 0, 1)) . ToLower(substr($s, 1));
     }
     return implode(' ', $string);
 }
Пример #9
0
 function UnInstallDB($arParams = array())
 {
     global $DB, $DBType, $APPLICATION;
     $this->errors = false;
     if (!array_key_exists("savedata", $arParams) || $arParams["savedata"] != "Y") {
         $this->errors = $DB->RunSQLBatch($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/report/install/db/" . ToLower($DB->type) . "/uninstall.sql");
     }
     UnRegisterModule("report");
     return true;
 }
Пример #10
0
function CheckReg()
{
    global $RegLogin, $RegPass, $RegPass2, $RegName, $RegEmail;
    global $Errors, $Lang, $CLang;
    $RegLogin = ToLower($RegLogin);
    if (CheckSymb_($RegLogin)) {
        $Errors[] = $Lang['SymbErr'];
        return;
    }
    if (CheckSymb_($RegPass)) {
        $Errors[] = $Lang['SymbErr'];
        return;
    }
    if (!$RegLogin) {
        $Errors[] = $Lang['MustFillLogin'];
        return;
    }
    if (!$RegPass) {
        $Errors[] = $Lang['MustFillPass'];
        return;
    }
    if (!$RegName) {
        $Errors[] = $Lang['MustFillName'];
        return;
    }
    if (!$RegEmail) {
        $Errors[] = $Lang['MustFillEmail'];
        return;
    }
    if ($RegPass != $RegPass2) {
        $Errors[] = $Lang['PassNotPass2'];
        return;
    }
    if (strlen($RegLogin) < 3) {
        $Errors[] = $Lang['LoginTooShort'];
        return;
    }
    if (strlen($RegLogin) > 64) {
        $Errors[] = $Lang['LoginTooLong'];
        return;
    }
    if (strlen($RegPass) < 3) {
        $Errors[] = $Lang['PassTooShort'];
        return;
    }
    if (strlen($RegPass) > 64) {
        $Errors[] = $Lang['PassTooLong'];
        return;
    }
    if (!ValidMail($RegEmail)) {
        $Errors[] = $Lang['MustFillCorrEmail'];
        return;
    }
    NextStep();
}
Пример #11
0
 public function decode($data)
 {
     $res = json_decode($data, true);
     self::checkException();
     // PHP<5.3.3 returns no error for JSON_ERROR_UTF8 and some other ones
     if ($res === null && ToLower($data) != 'null') {
         self::throwException(self::JSON_ERROR_UNKNOWN);
     }
     if (!Application::getInstance()->isUtfMode()) {
         $res = self::unConvertData($res);
     }
     return $res;
 }
Пример #12
0
 public static function cleanUp()
 {
     $dbConnection = Main\HttpApplication::getConnection();
     try {
         $dbConnection->query('drop table ' . static::getTableName());
         $allowedTypes = array('REGION', 'SUBREGION', 'CITY', 'VILLAGE', 'STREET');
         foreach ($allowedTypes as $type) {
             //$dbConnection->query('drop table b_sale_loc_wc_'.ToLower($type)); // here replace according to map: TYPE_CODE => TABLE_ID
             $dbConnection->query('truncate table b_sale_loc_wc_' . ToLower($type));
         }
     } catch (\Bitrix\Main\DB\SqlQueryException $e) {
     }
 }
Пример #13
0
	public function UnInstallDB($arParams = array())
	{
		global $DB, $DBType, $APPLICATION;

		$errors = false;
		if(!array_key_exists("savedata", $arParams) || $arParams["savedata"] != "Y")
			$errors = $DB->RunSQLBatch($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/".self::MODULE_ID."/install/db/".ToLower($DB->type)."/uninstall.sql");
		if($errors !== false)
			throw new \Exception(implode("<br>", $errors));

		UnRegisterModule(self::MODULE_ID);

		return true;
	}
 function _cnVerifyFileField($value, $arConf)
 {
     if (!empty($arConf['MAX_FILE_SIZE']) && $value['size'] > $arConf['MAX_FILE_SIZE']) {
         return 'FILE_SIZE';
     }
     if (!empty($arConf['ALLOWED_FILE_TYPES'])) {
         $ext = ToLower(end(explode('.', $value['name'])));
         $arValidExt = explode(',', ToLower($arConf['ALLOWED_FILE_TYPES']));
         if (!in_array($ext, $arValidExt)) {
             return 'FILE_TYPE';
         }
     }
     return true;
 }
Пример #15
0
 public static function cleanUpData()
 {
     $dbConnection = Main\HttpApplication::getConnection();
     Helper::dropTable(static::getTableName());
     $binary = ToLower($dbConnection->getType()) == 'mysql' ? 'binary' : '';
     // http://bugs.mysql.com/bug.php?id=34096
     // ORACE: OK, MSSQL: OK
     Main\HttpApplication::getConnection()->query("create table " . static::getTableName() . " (\n\n\t\t\tID " . Helper::getSqlForDataType('int') . " not null " . Helper::getSqlForAutoIncrement() . " primary key,\n\t\t\tWORD " . Helper::getSqlForDataType('varchar', 50) . " " . $binary . " not null,\n\t\t\tPOSITION " . Helper::getSqlForDataType('int') . " default '0'\n\t\t)");
     Helper::addAutoIncrement(static::getTableName());
     // only for ORACLE
     Helper::createIndex(static::getTableName(), 'TMP', array('WORD'), true);
     Helper::dropTable(static::getTableNameWord2Location());
     // ORACLE: OK, MSSQL: OK
     Main\HttpApplication::getConnection()->query("create table " . static::getTableNameWord2Location() . " (\n\n\t\t\tLOCATION_ID " . Helper::getSqlForDataType('int') . " not null,\n\t\t\tWORD_ID " . Helper::getSqlForDataType('int') . " not null,\n\n\t\t\tprimary key (LOCATION_ID, WORD_ID)\n\t\t)");
     Helper::dropTable(static::getTableNamePositionTemporal());
     $dbConnection->query("create table " . static::getTableNamePositionTemporal() . " (\n\t\t\tWORD_ID " . Helper::getSqlForDataType('int') . " not null,\n\t\t\tPOSITION " . Helper::getSqlForDataType('int') . " default '0'\n\t\t)");
 }
Пример #16
0
 private static function getDbTruncTextFunction($dbtype, $param)
 {
     switch (ToLower($dbtype)) {
         case 'mysql':
             $result = "SUBSTR(" . $param . ", 1, 1024)";
             break;
         case 'mssql':
             $result = "SUBSTRING(" . $param . ", 1, 1024)";
             break;
         case 'oracle':
             $result = "TO_CHAR(SUBSTR(" . $param . ", 1, 1024))";
             break;
         default:
             $result = $param;
             break;
     }
     return $result;
 }
Пример #17
0
 function CSearchSuggest($strFilterMD5 = "", $phrase = "")
 {
     $strFilterMD5 = strtolower($strFilterMD5);
     if (preg_match("/^[0-9a-f]{32}\$/", $strFilterMD5)) {
         $this->_filter_md5 = $strFilterMD5;
     }
     $phrase = ToLower(trim($phrase, " \t\n\r"));
     if ($l = strlen($phrase)) {
         if ($l > 250) {
             $p = strrpos($phrase, ' ');
             if ($p === false) {
                 $phrase = substr($phrase, 0, 250);
             } else {
                 $phrase = substr($phrase, 0, $p);
             }
         }
         $this->_phrase = $phrase;
     }
 }
Пример #18
0
 public static function GetID($subject_name)
 {
     $subject_name = trim($subject_name, " \n\t");
     $result = CGreensightRFSubject::gs_array_search($subject_name, CGreensightRFSubject::$_RF_SUBJECTS);
     if (!$result) {
         $subject_name = explode(' ', $subject_name);
         foreach ($subject_name as $s) {
             $ls = ToLower($s);
             if ($ls == 'республика' || $ls == 'край' || $ls == 'область' || $ls == 'округ') {
                 continue;
             }
             $result = CGreensightRFSubject::gs_array_search($s, CGreensightRFSubject::$_RF_SUBJECTS);
             if ($result) {
                 break;
             }
         }
     }
     return $result;
 }
Пример #19
0
    function EditPost($params)
    {
        global $USER, $DB;
        $postId = IntVal(CBlogMetaWeblog::DecodeParams($params[0]["#"]["value"][0]["#"]));
        $user = CBlogMetaWeblog::DecodeParams($params[1]["#"]["value"][0]["#"]);
        $password = CBlogMetaWeblog::DecodeParams($params[2]["#"]["value"][0]["#"]);
        $arPostInfo = $params[3]["#"]["value"][0]["#"]["struct"][0]["#"]["member"];
        $publish = $params[4]["#"]["value"][0]["#"]["boolean"][0]["#"];
        foreach ($arPostInfo as $val) {
            ${$val["#"]["name"][0]["#"]} = CBlogMetaWeblog::DecodeParams($val["#"]["value"][0]["#"]);
        }
        $arCategory = array();
        if (is_array($categories["data"][0]["#"]["value"])) {
            foreach ($categories["data"][0]["#"]["value"] as $val) {
                $catTmp = CBlogMetaWeblog::DecodeParams($val["#"]);
                if (strlen($catTmp) > 0) {
                    $arCategory[] = $catTmp;
                }
            }
        }
        if (CBlogMetaWeblog::Authorize($user, $password)) {
            $result = '';
            $userId = $USER->GetID();
            if (IntVal($postId) > 0) {
                $arSelectedFields = array("ID", "BLOG_ID", "TITLE", "DATE_PUBLISH", "AUTHOR_ID", "DETAIL_TEXT", "DETAIL_TEXT_TYPE");
                $dbPost = CBlogPost::GetList(array(), array("AUTHOR_ID" => $userId, "ID" => $postId), false, array("nTopCount" => 1), $arSelectedFields);
                if ($arPost = $dbPost->Fetch()) {
                    $arBlog = CBlog::GetByID($arPost["BLOG_ID"]);
                    if (intval($arBlog["SOCNET_GROUP_ID"]) > 0 && CModule::IncludeModule("socialnetwork") && method_exists("CSocNetGroup", "GetSite")) {
                        $arSites = array();
                        $rsGroupSite = CSocNetGroup::GetSite($arBlog["SOCNET_GROUP_ID"]);
                        while ($arGroupSite = $rsGroupSite->Fetch()) {
                            $arSites[] = $arGroupSite["LID"];
                        }
                    } else {
                        $arSites = array(SITE_ID);
                    }
                    $CATEGORYtmp = array();
                    $dbCategory = CBlogCategory::GetList(array(), array("BLOG_ID" => $arPost["BLOG_ID"]));
                    while ($arCat = $dbCategory->Fetch()) {
                        $arCatBlog[ToLower($arCat["NAME"])] = $arCat["ID"];
                    }
                    foreach ($arCategory as $tg) {
                        $tg = trim($tg);
                        if (!in_array($arCatBlog[ToLower($tg)], $CATEGORYtmp)) {
                            if (IntVal($arCatBlog[ToLower($tg)]) > 0) {
                                $CATEGORYtmp[] = $arCatBlog[ToLower($tg)];
                            } else {
                                $CATEGORYtmp[] = CBlogCategory::Add(array("BLOG_ID" => $arPost["BLOG_ID"], "NAME" => $tg));
                                foreach ($arSites as $site_id_tmp) {
                                    BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/category/");
                                }
                            }
                        }
                    }
                    $dbSite = CSite::GetByID(SITE_ID);
                    $arSite = $dbSite->Fetch();
                    $serverName = htmlspecialcharsEx($arSite["SERVER_NAME"]);
                    if (strlen($serverName) <= 0) {
                        if (defined("SITE_SERVER_NAME") && strlen(SITE_SERVER_NAME) > 0) {
                            $serverName = SITE_SERVER_NAME;
                        } else {
                            $serverName = COption::GetOptionString("main", "server_name", "www.bitrixsoft.com");
                        }
                    }
                    $dbImage = CBlogImage::GetList(array(), array("POST_ID" => false, "BLOG_ID" => $arBlog["ID"], "IS_COMMENT" => "N"));
                    while ($arImage = $dbImage->Fetch()) {
                        $path = "";
                        $path = CFile::GetPath($arImage["FILE_ID"]);
                        $path = "http://" . $serverName . $path;
                        if (strpos($description, $path) !== false) {
                            $description = str_replace('<img src="' . $path . '" alt=""/>', "[IMG ID=" . $arImage["ID"] . "]", $description);
                            CBlogImage::Update($arImage["ID"], array("POST_ID" => $arPost["ID"]));
                        }
                    }
                    $arFields = array("TITLE" => $title, "DETAIL_TEXT" => $description, "DETAIL_TEXT_TYPE" => "html", "PUBLISH_STATUS" => $publish == 1 ? "P" : "D", "CATEGORY_ID" => implode(",", $CATEGORYtmp));
                    $postId = CBlogPost::Update($arPost["ID"], $arFields);
                    CBlogPostCategory::DeleteByPostID($arPost["ID"]);
                    foreach ($CATEGORYtmp as $v) {
                        CBlogPostCategory::Add(array("BLOG_ID" => $arPost["BLOG_ID"], "POST_ID" => $arPost["ID"], "CATEGORY_ID" => $v));
                    }
                    if (IntVal($postId) > 0) {
                        foreach ($arSites as $site_id_tmp) {
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/first_page/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/calendar/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/last_messages/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/commented_posts/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/popular_posts/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/last_comments/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/groups/" . $arBlog["GROUP_ID"] . "/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/trackback/" . $arPost["ID"] . "/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/comment/" . $arPost["ID"] . "/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/rss_out/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/rss_all/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/rss_sonet/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/rss_all/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/favorite/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/post/" . $arPost["ID"] . "/");
                        }
                        return '<params>
									<param>
										<value>
											<i4>' . $postId . '</i4>
										</value>
									</param>
								</params>';
                    } else {
                        return '<fault>
							<value>
								<struct>
									<member>
										<name>faultCode</name>
										<value><int>3</int></value>
										</member>
									<member>
										<name>faultString</name>
										<value><string>Error on saving post</string></value>
										</member>
									</struct>
								</value>
							</fault>';
                    }
                }
            }
        } else {
            return '<fault>
				<value>
					<struct>
						<member>
							<name>faultCode</name>
							<value><int>3</int></value>
							</member>
						<member>
							<name>faultString</name>
							<value><string>' . $arAuthResult["MESSAGE"] . '</string></value>
							</member>
						</struct>
					</value>
				</fault>';
        }
    }
Пример #20
0
 function __SLEGetLogCommentRecord($arComments, $arParams, &$arAssets)
 {
     // for the same post log_update - time only, if not - date and time
     $timestamp = MakeTimeStamp(array_key_exists("LOG_DATE_FORMAT", $arComments) ? $arComments["LOG_DATE_FORMAT"] : $arComments["LOG_DATE"]);
     $timeFormated = FormatDateFromDB($arComments["LOG_DATE"], stripos($arParams["DATE_TIME_FORMAT"], 'a') || ($arParams["DATE_TIME_FORMAT"] == 'FULL' && IsAmPmMode()) !== false ? strpos(FORMAT_DATETIME, 'TT') !== false ? 'G:MI TT' : 'G:MI T' : 'HH:MI');
     $dateTimeFormated = FormatDate(!empty($arParams['DATE_TIME_FORMAT']) ? $arParams['DATE_TIME_FORMAT'] == 'FULL' ? $GLOBALS['DB']->DateFormatToPHP(str_replace(':SS', '', FORMAT_DATETIME)) : $arParams['DATE_TIME_FORMAT'] : $GLOBALS['DB']->DateFormatToPHP(FORMAT_DATETIME), $timestamp);
     if (strcasecmp(LANGUAGE_ID, 'EN') !== 0 && strcasecmp(LANGUAGE_ID, 'DE') !== 0) {
         $dateTimeFormated = ToLower($dateTimeFormated);
     }
     // strip current year
     if (!empty($arParams['DATE_TIME_FORMAT']) && ($arParams['DATE_TIME_FORMAT'] == 'j F Y G:i' || $arParams['DATE_TIME_FORMAT'] == 'j F Y g:i a')) {
         $dateTimeFormated = ltrim($dateTimeFormated, '0');
         $curYear = date('Y');
         $dateTimeFormated = str_replace(array('-' . $curYear, '/' . $curYear, ' ' . $curYear, '.' . $curYear), '', $dateTimeFormated);
     }
     $path2Entity = $arComments["ENTITY_TYPE"] == SONET_ENTITY_GROUP ? CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_GROUP"], array("group_id" => $arComments["ENTITY_ID"])) : CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER"], array("user_id" => $arComments["ENTITY_ID"]));
     if (intval($arComments["USER_ID"]) > 0) {
         $suffix = is_array($GLOBALS["arExtranetUserID"]) && in_array($arComments["USER_ID"], $GLOBALS["arExtranetUserID"]) ? GetMessage("SONET_LOG_EXTRANET_SUFFIX") : "";
         $arTmpUser = array("NAME" => $arComments["~CREATED_BY_NAME"], "LAST_NAME" => $arComments["~CREATED_BY_LAST_NAME"], "SECOND_NAME" => $arComments["~CREATED_BY_SECOND_NAME"], "LOGIN" => $arComments["~CREATED_BY_LOGIN"]);
         $bUseLogin = $arParams["SHOW_LOGIN"] != "N" ? true : false;
         $arCreatedBy = array("FORMATTED" => CUser::FormatName($arParams["NAME_TEMPLATE"], $arTmpUser, $bUseLogin) . $suffix, "URL" => CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER"], array("user_id" => $arComments["USER_ID"], "id" => $arComments["USER_ID"])));
         $arCreatedBy["TOOLTIP_FIELDS"] = array("ID" => $arComments["USER_ID"], "NAME" => $arComments["~CREATED_BY_NAME"], "LAST_NAME" => $arComments["~CREATED_BY_LAST_NAME"], "SECOND_NAME" => $arComments["~CREATED_BY_SECOND_NAME"], "LOGIN" => $arComments["~CREATED_BY_LOGIN"], "USE_THUMBNAIL_LIST" => "N", "PATH_TO_SONET_MESSAGES_CHAT" => $arParams["PATH_TO_MESSAGES_CHAT"], "PATH_TO_SONET_USER_PROFILE" => $arParams["PATH_TO_USER"], "PATH_TO_VIDEO_CALL" => $arParams["PATH_TO_VIDEO_CALL"], "DATE_TIME_FORMAT" => $arParams["DATE_TIME_FORMAT"], "SHOW_YEAR" => $arParams["SHOW_YEAR"], "CACHE_TYPE" => $arParams["CACHE_TYPE"], "CACHE_TIME" => $arParams["CACHE_TIME"], "NAME_TEMPLATE" => $arParams["NAME_TEMPLATE"] . $suffix, "SHOW_LOGIN" => $arParams["SHOW_LOGIN"], "PATH_TO_CONPANY_DEPARTMENT" => $arParams["PATH_TO_CONPANY_DEPARTMENT"], "INLINE" => "Y");
     } else {
         $arCreatedBy = array("FORMATTED" => GetMessage("SONET_C73_CREATED_BY_ANONYMOUS"));
     }
     $arTmpUser = array("NAME" => $arComments["~USER_NAME"], "LAST_NAME" => $arComments["~USER_LAST_NAME"], "SECOND_NAME" => $arComments["~USER_SECOND_NAME"], "LOGIN" => $arComments["~USER_LOGIN"]);
     $arParamsTmp = $arParams;
     $arParamsTmp["AVATAR_SIZE"] = isset($arParams["AVATAR_SIZE_COMMON"]) ? $arParams["AVATAR_SIZE_COMMON"] : $arParams["AVATAR_SIZE"];
     $arTmpCommentEvent = array("EVENT" => $arComments, "LOG_DATE" => $arComments["LOG_DATE"], "LOG_DATE_TS" => MakeTimeStamp($arComments["LOG_DATE"]), "LOG_DATE_DAY" => ConvertTimeStamp(MakeTimeStamp($arComments["LOG_DATE"]), "SHORT"), "LOG_TIME_FORMAT" => $timeFormated, "LOG_DATETIME_FORMAT" => $dateTimeFormated, "TITLE_TEMPLATE" => "", "TITLE" => "", "TITLE_FORMAT" => "", "ENTITY_NAME" => $arComments["ENTITY_TYPE"] == SONET_ENTITY_GROUP ? $arComments["GROUP_NAME"] : CUser::FormatName($arParams['NAME_TEMPLATE'], $arTmpUser, $bUseLogin), "ENTITY_PATH" => $path2Entity, "CREATED_BY" => $arCreatedBy, "AVATAR_SRC" => CSocNetLogTools::FormatEvent_CreateAvatar($arComments, $arParamsTmp));
     $arEvent = CSocNetLogTools::FindLogCommentEventByID($arComments["EVENT_ID"]);
     if ($arEvent && array_key_exists("CLASS_FORMAT", $arEvent) && array_key_exists("METHOD_FORMAT", $arEvent)) {
         $arLog = $arParams["USER_COMMENTS"] == "Y" ? array() : array("TITLE" => $arComments["~LOG_TITLE"], "URL" => $arComments["~LOG_URL"], "PARAMS" => $arComments["~LOG_PARAMS"]);
         $arFIELDS_FORMATTED = call_user_func(array($arEvent["CLASS_FORMAT"], $arEvent["METHOD_FORMAT"]), $arComments, $arParams, false, $arLog);
         if ($arParams["USE_COMMENTS"] != "Y") {
             if (array_key_exists("CREATED_BY", $arFIELDS_FORMATTED) && isset($arFIELDS_FORMATTED["CREATED_BY"]["TOOLTIP_FIELDS"])) {
                 $arTmpCommentEvent["CREATED_BY"]["TOOLTIP_FIELDS"] = $arFIELDS_FORMATTED["CREATED_BY"]["TOOLTIP_FIELDS"];
             }
         }
     }
     $message = $arFIELDS_FORMATTED && array_key_exists("EVENT_FORMATTED", $arFIELDS_FORMATTED) && array_key_exists("MESSAGE", $arFIELDS_FORMATTED["EVENT_FORMATTED"]) ? $arFIELDS_FORMATTED["EVENT_FORMATTED"]["MESSAGE"] : $arTmpCommentEvent["EVENT"]["MESSAGE"];
     if (strlen($message) > 0) {
         $arFIELDS_FORMATTED["EVENT_FORMATTED"]["FULL_MESSAGE_CUT"] = CSocNetTextParser::closetags(htmlspecialcharsback($message));
     }
     if (is_array($arTmpCommentEvent)) {
         $arFIELDS_FORMATTED["EVENT_FORMATTED"]["DATETIME"] = $arTmpCommentEvent["LOG_DATE_DAY"] == ConvertTimeStamp() ? $timeFormated : $dateTimeFormated;
         $arTmpCommentEvent["EVENT_FORMATTED"] = $arFIELDS_FORMATTED["EVENT_FORMATTED"];
         if (isset($arComments["UF"]["UF_SONET_COM_URL_PRV"]) && !empty($arComments["UF"]["UF_SONET_COM_URL_PRV"]["VALUE"])) {
             $arCss = $GLOBALS["APPLICATION"]->sPath2css;
             $arJs = $GLOBALS["APPLICATION"]->arHeadScripts;
             ob_start();
             $GLOBALS["APPLICATION"]->IncludeComponent("bitrix:system.field.view", $arComments["UF"]["UF_SONET_COM_URL_PRV"]["USER_TYPE_ID"], array("arUserField" => $arComments["UF"]["UF_SONET_COM_URL_PRV"], "arAddField" => array("NAME_TEMPLATE" => $arParams["NAME_TEMPLATE"], "PATH_TO_USER" => $arParams["~PATH_TO_USER"])), null, array("HIDE_ICONS" => "Y"));
             $urlPreviewText = ob_get_clean();
             $arTmpCommentEvent["EVENT_FORMATTED"]["FULL_MESSAGE_CUT"] .= $urlPreviewText;
             $arAssets["CSS"] = array_merge($arAssets["CSS"], array_diff($GLOBALS["APPLICATION"]->sPath2css, $arCss));
             $arAssets["JS"] = array_merge($arAssets["JS"], array_diff($GLOBALS["APPLICATION"]->arHeadScripts, $arJs));
             unset($arComments["UF"]["UF_SONET_COM_URL_PRV"]);
         }
         $arTmpCommentEvent["UF"] = $arComments["UF"];
         if (isset($arTmpCommentEvent["EVENT_FORMATTED"]) && is_array($arTmpCommentEvent["EVENT_FORMATTED"])) {
             $arFields2Cache = array("DATETIME", "MESSAGE", "FULL_MESSAGE_CUT", "ERROR_MSG");
             foreach ($arTmpCommentEvent["EVENT_FORMATTED"] as $field => $value) {
                 if (!in_array($field, $arFields2Cache)) {
                     unset($arTmpCommentEvent["EVENT_FORMATTED"][$field]);
                 }
             }
         }
         if (isset($arTmpCommentEvent["EVENT"]) && is_array($arTmpCommentEvent["EVENT"])) {
             if (!empty($arTmpCommentEvent["EVENT"]["URL"])) {
                 $arTmpCommentEvent["EVENT"]["URL"] = str_replace("#GROUPS_PATH#", COption::GetOptionString("socialnetwork", "workgroups_page", "/workgroups/", SITE_ID), $arTmpCommentEvent["EVENT"]["URL"]);
             }
             $arFields2Cache = array("ID", "SOURCE_ID", "EVENT_ID", "USER_ID", "LOG_DATE", "RATING_TYPE_ID", "RATING_ENTITY_ID", "URL");
             foreach ($arTmpCommentEvent["EVENT"] as $field => $value) {
                 if (!in_array($field, $arFields2Cache)) {
                     unset($arTmpCommentEvent["EVENT"][$field]);
                 }
             }
         }
         if (isset($arTmpCommentEvent["CREATED_BY"]) && is_array($arTmpCommentEvent["CREATED_BY"])) {
             $arFields2Cache = array("TOOLTIP_FIELDS", "FORMATTED", "URL");
             foreach ($arTmpCommentEvent["CREATED_BY"] as $field => $value) {
                 if (!in_array($field, $arFields2Cache)) {
                     unset($arTmpCommentEvent["CREATED_BY"][$field]);
                 }
             }
             if (isset($arTmpCommentEvent["CREATED_BY"]["TOOLTIP_FIELDS"]) && is_array($arTmpCommentEvent["CREATED_BY"]["TOOLTIP_FIELDS"])) {
                 $arFields2Cache = array("ID", "PATH_TO_SONET_USER_PROFILE", "NAME", "LAST_NAME", "SECOND_NAME", "LOGIN", "EMAIL");
                 foreach ($arTmpCommentEvent["CREATED_BY"]["TOOLTIP_FIELDS"] as $field => $value) {
                     if (!in_array($field, $arFields2Cache)) {
                         unset($arTmpCommentEvent["CREATED_BY"]["TOOLTIP_FIELDS"][$field]);
                     }
                 }
             }
         }
     }
     foreach ($arTmpCommentEvent["EVENT"] as $key => $value) {
         if (strpos($key, "~") === 0) {
             unset($arTmpCommentEvent["EVENT"][$key]);
         }
     }
     return $arTmpCommentEvent;
 }
Пример #21
0
                    </div>
                <?php 
        }
        ?>
                        <div class="blog-qtl<?php 
        if (in_array($CurPost["PUBLISH_STATUS"], array(BLOG_PUBLISH_STATUS_READY, BLOG_PUBLISH_STATUS_DRAFT))) {
            ?>
 blog-post-hidden<?php 
        }
        ?>
">
                            <div class="blog-qtr">
                                <div class="blog-idea-body">
                                    <div class="idea-owner">
                                        <div class="bx-idea-condition-description status-color-<?php 
        echo ToLower($arStatusList[$CurPost["POST_PROPERTIES"]["DATA"]["UF_STATUS"]["VALUE"]]["XML_ID"]);
        ?>
">
                                            <div <?php 
        if ($arResult["IDEA_MODERATOR"]) {
            ?>
class="status-action idea-action-cursor" onclick="JSPublicIdea.ShowStatusDialog(this, '<?php 
            echo $CurPost["ID"];
            ?>
')" id="status-<?php 
            echo $CurPost["ID"];
            ?>
"<?php 
        }
        ?>
><?php 
Пример #22
0
<?php

if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
if ($arParams["SET_NAV_CHAIN_IDEA"] == "Y") {
    $Category = $arResult["POST_PROPERTIES"]["DATA"]["UF_CATEGORY_CODE"]["VALUE"];
    $bParentCat = false;
    $arCategoryList = CIdeaManagment::getInstance()->Idea()->GetCategoryList();
    if (isset($arCategoryList[$Category])) {
        if ($arCategoryList[$Category]["DEPTH_LEVEL"] > 1) {
            foreach ($arCategoryList as $Cat) {
                if ($arCategoryList[$Category]["IBLOCK_SECTION_ID"] == $Cat["ID"]) {
                    $APPLICATION->AddChainItem($Cat["NAME"], str_replace("#category_1#", ToLower($Cat["CODE"]), $arParams["EXT"][0]["PATH_TO_CATEGORY_1"]));
                    $bParentCat = true;
                    break;
                }
            }
        }
        if ($bParentCat) {
            $APPLICATION->AddChainItem($arCategoryList[$Category]["NAME"], str_replace(array("#category_1#", "#category_2#"), array(ToLower($Cat["CODE"]), ToLower($Category)), $arParams["EXT"][0]["PATH_TO_CATEGORY_2"]));
        } else {
            $APPLICATION->AddChainItem($arCategoryList[$Category]["NAME"], str_replace(array("#category_1#"), array(ToLower($Category)), $arParams["EXT"][0]["PATH_TO_CATEGORY_1"]));
        }
        if (isset($arResult["Post"]["TITLE"])) {
            $APPLICATION->AddChainItem($arResult["Post"]["TITLE"]);
        }
    }
}
Пример #23
0
                $sort_order = $_SESSION["order"];
            } else {
                $sort_order = ToLower($arParams["ELEMENT_SORT_ORDER"]);
            }
        }
        foreach ($arAvailableSort as $key => $val) {
            $newSort = $sort_order == 'desc' ? 'asc' : 'desc';
            ?>
									<a rel="nofollow" href="<?php 
            echo $APPLICATION->GetCurPageParam('sort=' . $key . '&order=' . $newSort, array('sort', 'order', 'mode'));
            ?>
" class="button_middle <?php 
            echo $sort == $key ? 'current' : '';
            ?>
 <?php 
            echo ToLower($sort_order);
            ?>
 <?php 
            echo $key;
            ?>
" rel="nofollow">
										<i></i><span><?php 
            echo GetMessage('SECT_SORT_' . $key);
            ?>
</span>
									</a>
							<?php 
        }
        ?>
						</div>			
						<div class="sort_display">
Пример #24
0
                    ?>
<option value="<?php 
                    echo htmlspecialcharsbx($intPropID);
                    ?>
" <?php 
                    echo $strSelected;
                    ?>
><?php 
                    echo htmlspecialcharsex($arIBlock['OFFERS_PROPERTY'][$intPropID]['NAME']);
                    ?>
</option><?php 
                }
                ?>
</select></td>
					<td valign="top"><select name="SKU_PROP_SELECT" id="SKU_PROP_SELECT"><option value="">--- <?php 
                echo ToLower(GetMessage('YANDEX_SKU_EXPORT_PROP_COND'));
                ?>
 ---</option><?php 
                foreach ($arCondSelectProp as $key => $value) {
                    ?>
<option value="<?php 
                    echo htmlspecialcharsbx($key);
                    ?>
" <?php 
                    echo $key == $arSKUExport['SKU_PROP_COND']['COND'] ? 'selected' : '';
                    ?>
><?php 
                    echo htmlspecialcharsex($value);
                    ?>
</option><?php 
                }
Пример #25
0
 function ImportUser()
 {
     if ($this->isErrorOccured) {
         return false;
     }
     $this->errorMessage = "";
     $defaultEmail = $this->GetDefaultEmail();
     if (!($arUser = $this->csv->FetchDelimiter())) {
         return false;
     }
     $arFields = array();
     foreach ($this->arHeader as $index => $key) {
         if (($f = trim($arUser[$index])) != '') {
             $arFields[$key] = $f;
         }
     }
     if (!array_key_exists("NAME", $arFields) || strlen($arFields["NAME"]) < 1) {
         $this->errorMessage = GetMessage("CSV_IMPORT_NO_NAME") . " (" . implode(", ", $arFields) . ").<br>";
         return true;
     }
     if (!array_key_exists("LAST_NAME", $arFields) || strlen($arFields["LAST_NAME"]) < 1) {
         $this->errorMessage = GetMessage("CSV_IMPORT_NO_LASTNAME") . " (" . implode(", ", $arFields) . ").<br>";
         return true;
     }
     if (!array_key_exists("PASSWORD", $arFields) || strlen($arFields["PASSWORD"]) < 1) {
         $arFields["PASSWORD"] = $this->GenerateUserPassword(6);
     }
     $arFields["CONFIRM_PASSWORD"] = $arFields["PASSWORD"];
     if (!array_key_exists("EMAIL", $arFields) || strlen($arFields["EMAIL"]) < 3 || !check_email($arFields["EMAIL"])) {
         $arFields["EMAIL"] = $defaultEmail;
     }
     if (!array_key_exists("LOGIN", $arFields)) {
         $arFields["LOGIN"] = ToLower($arFields["NAME"] . " " . $arFields["LAST_NAME"]);
     }
     if (array_key_exists("PERSONAL_BIRTHDAY", $arFields) && (strlen($arFields["PERSONAL_BIRTHDAY"]) < 2 || !CheckDateTime($arFields["PERSONAL_BIRTHDAY"]))) {
         unset($arFields["PERSONAL_BIRTHDAY"]);
     }
     if (array_key_exists("DATE_REGISTER", $arFields) && (strlen($arFields["DATE_REGISTER"]) < 2 || !CheckDateTime($arFields["DATE_REGISTER"]))) {
         unset($arFields["DATE_REGISTER"]);
     }
     if ($this->externalAuthID !== null && !array_key_exists("EXTERNAL_AUTH_ID", $arFields)) {
         $arFields["EXTERNAL_AUTH_ID"] = $this->externalAuthID;
     }
     if (!array_key_exists("XML_ID", $arFields)) {
         $arFields["XML_ID"] = md5(uniqid(rand(), true));
     }
     if (!array_key_exists("CHECKWORD", $arFields) || strlen($arFields["CHECKWORD"]) <= 0) {
         $arFields["CHECKWORD"] = md5(CMain::GetServerUniqID() . uniqid());
     }
     if ($this->imageFilePath !== null) {
         if (array_key_exists("PERSONAL_PHOTO", $arFields) && strlen($arFields["PERSONAL_PHOTO"]) > 0) {
             $arFile = CFile::MakeFileArray($this->imageFilePath . "/" . $arFields["PERSONAL_PHOTO"]);
             $arFile["MODULE_ID"] = "main";
             $arFields["PERSONAL_PHOTO"] = $arFile;
         }
         if (array_key_exists("WORK_LOGO", $arFields) && strlen($arFields["WORK_LOGO"]) > 0) {
             $arFile = CFile::MakeFileArray($this->imageFilePath . "/" . $arFields["WORK_LOGO"]);
             $arFile["MODULE_ID"] = "main";
             $arFields["WORK_LOGO"] = $arFile;
         }
     } else {
         unset($arFields["PERSONAL_PHOTO"]);
         unset($arFields["WORK_LOGO"]);
     }
     $arFields["GROUP_ID"] = $this->userGroups;
     $user = new CUser();
     $userID = (int) $user->Add($arFields);
     if ($userID <= 0) {
         if ($user->LAST_ERROR != '') {
             $this->errorMessage = $arFields["NAME"] . " " . $arFields["LAST_NAME"] . ": " . $user->LAST_ERROR;
         }
     }
     if ($userID <= 0 && $this->ignoreDuplicate === false) {
         $postFix = 2;
         $login = $arFields["LOGIN"];
         do {
             $rsUser = CUser::GetByLogin($arFields["LOGIN"]);
             if (!$rsUser->Fetch()) {
                 break;
             }
             $arFields["LOGIN"] = $login . $postFix;
             $userID = (int) $user->Add($arFields);
             if ($userID > 1) {
                 break;
             }
             $postFix++;
         } while (true);
     }
     if ($userID > 0) {
         if ($this->attachIBlockID > 0) {
             $iblockSectionID = $this->__GetIBlockSectionID($arFields);
             if ($iblockSectionID > 0) {
                 if (!$this->isUserPropertyCreate) {
                     $this->isUserPropertyCreate = $this->__CreateUserProperty();
                 }
                 $arUpdate = array();
                 $arUpdate[$this->userPropertyName] = array($iblockSectionID);
                 $user->Update($userID, $arUpdate);
             }
         }
         if ($this->callback !== null) {
             call_user_func_array($this->callback, array(&$arFields, &$userID));
         }
     }
     return true;
 }
Пример #26
0
     } elseif ($arEvents["EVENT_ID"] == "blog_comment") {
         if (!array_key_exists("blog", $arSocNetFeaturesSettings) || !CSocNetFeaturesPerms::CanPerformOperation($GLOBALS["USER"]->GetID(), SONET_ENTITY_USER, $arEvents["ENTITY_ID"], "blog", "view_comment", $bCurrentUserIsAdmin)) {
             continue;
         }
     } else {
         if (!array_key_exists($arEvents["EVENT_ID"], $arSocNetFeaturesSettings) || !CSocNetFeaturesPerms::CanPerformOperation($GLOBALS["USER"]->GetID(), SONET_ENTITY_USER, $arEvents["ENTITY_ID"], $arEvents["EVENT_ID"], $arSocNetFeaturesSettings[$arEvents["EVENT_ID"]]["minoperation"][0], $bCurrentUserIsAdmin)) {
             continue;
         }
     }
     $path2Entity = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER"], array("user_id" => $arEvents["ENTITY_ID"]));
 }
 $arDateTmp = ParseDateTime($arEvents["LOG_DATE"], CSite::GetDateFormat('FULL'));
 $day = IntVal($arDateTmp["DD"]);
 $month = IntVal($arDateTmp["MM"]);
 $year = IntVal($arDateTmp["YYYY"]);
 $dateFormated = $day . ' ' . ToLower(GetMessage('MONTH_' . $month . '_S')) . ' ' . $year;
 $timeFormated = $arDateTmp["HH"] . ':' . $arDateTmp["MI"] . ':' . $arDateTmp["SS"];
 $arEvents["MESSAGE_FORMAT"] = htmlspecialcharsback($arEvents["MESSAGE"]);
 if (StrLen($arEvents["CALLBACK_FUNC"]) > 0) {
     if (StrLen($arEvents["MODULE_ID"]) > 0) {
         CModule::IncludeModule($arEvents["MODULE_ID"]);
     }
     $arEvents["MESSAGE_FORMAT"] = call_user_func($arEvents["CALLBACK_FUNC"], $arEvents);
 }
 if ($arEvents["EVENT_ID"] == "system" || $arEvents["EVENT_ID"] == "system_friends" || $arEvents["EVENT_ID"] == "system_groups") {
     $arEvents["TITLE_TEMPLATE"] = "";
     $arEvents["URL"] = "";
     switch ($arEvents["TITLE"]) {
         case "join":
             list($titleTmp, $messageTmp) = CSocNetLog::InitUsersTmp($arEvents["MESSAGE"], GetMessage("SONET_ACTIVITY_TITLE_JOIN1"), GetMessage("SONET_ACTIVITY_TITLE_JOIN2"), $arParams);
             $arEvents["TITLE"] = $titleTmp;
Пример #27
0
    /**
     * Отрисовать одно поле.
     * @param  array  $_field массив с описанием поля
     * @return string HTML-текст
     */
    public static function RenderField($_field)
    {
        if (ToLower($_field['TYPE']) != 'hidden') {
            $result = '<div class="rf_fwrapper_o ' . $_field['WCLASS'] . '" ' . ($_field['WSTYLE'] ? 'style="' . $_field['WSTYLE'] . '" ' : '') . 'id="rf_wrapper_o_' . $_field['ID'] . '">
				<div class="rf_lwrapper" id="rf_lwrapper_' . $_field['ID'] . '">
					<label for="' . $_field['ID'] . '" id="rf_label_' . $_field['ID'] . '">' . $_field['LABEL'] . '</label>
					' . ($_field['REQUIRED'] ? '<span class="rf_required">*</span>' : '') . '
				</div>
				<div class="rf_fwrapper_i" id="rf_fwrapper_i_' . $_field['ID'] . '">';
        } else {
            $result = '';
        }
        // общая строка для большинства элементов
        $field = 'name="' . $_field['NAME'] . '" id="' . $_field['ID'] . '"' . ($_field['DISABLED'] ? ' disabled' : '') . ($_field['CLASS'] ? ' class="' . $_field['CLASS'] . '"' : '') . ($_field['ONCLICK'] ? ' onclick="' . $_field['ONCLICK'] . '"' : '') . ($_field['ONHOVER'] ? ' onmouseover="' . $_field['ONHOVER'] . '"' : '') . ($_field['ONCHANGE'] ? ' onchange="' . $_field['ONCHANGE'] . '"' : '') . ($_field['ONHOUT'] ? ' onmouseout="' . $_field['ONHOUT'] . '"' : '');
        // типы почти по алфавиту
        switch (ToLower($_field['TYPE'])) {
            // привязка к теме форума с возможностью создать новую
            case 'bind_forum_topic2':
                $result .= '<div class="rf_selectforum">
					<select id="' . $_field['ID'] . '_selectforum" name="' . $_field['NAME'] . '_selectforum">
					<option value="" selected></option>';
                foreach ($_field['FORUMS'] as $k => $v) {
                    $result .= '<option value="' . $k . '">' . $v . '</option>';
                }
                $result .= '</select></div>
					<div class="rf_createtopic">
						<div class="rf_inner_label" id="rf_inner_label_' . $_field['ID'] . '">
							<label for="' . $_field['ID'] . '_createtopic">Название темы форума</label>
						</div>
						<div class="rf_inner_input" id="rf_inner_input_' . $_field['ID'] . '">
							<input type="text" id="' . $_field['ID'] . '_createtopic" name="' . $_field['NAME'] . '_createtopic">
						</div>
					</div>';
                // обратите внимание - тут нет брейка, следом должен идти bind_forum_topic1
                // привязка к теме форума
            // привязка к теме форума
            case 'bind_forum_topic1':
                $result .= '<input type="text" ' . $field . ' value="' . $_field['VALUE'] . '">
					<input type="button" onclick="jsUtils.OpenWindow(\'/bitrix/admin/forum_topics_search_gs.php?FC=' . $_field['ID'] . ($_field['FORUM_ID'] ? '&FORUM_ID=' . $_field['FORUM_ID'] : '') . '\', 600, 500);" value="...">';
                break;
                // привязка к элементу инфоблока с возможностью создать новый
            // привязка к элементу инфоблока с возможностью создать новый
            case 'bind_iblock_element2':
                $result .= '<span class="rf_command" onclick="document.getElementById(\'' . $_field['ID'] . '_creatediv\').style.display=\'block\';">Создать</span>
					<div class="rf_hidden" id="' . $_field['ID'] . '_creatediv">';
                $result .= CFormRenderer::RenderFields($_field);
                $result .= '</div>';
                // обратите внимание - тут нет брейка, следом должен идти bind_iblock_element1
                // привязка к элементу инфоблока
            // привязка к элементу инфоблока
            case 'bind_iblock_element1':
                $result .= '<input type="text" ' . $field . ' value="' . $_field['VALUE'] . '">
					<span id="sp_' . md5($_field['ID']) . '_text">' . $_field['SPAN_VALUE'] . '</span>
					<input type="button" onclick="jsUtils.OpenWindow(\'/bitrix/admin/iblock_element_search.php?IBLOCK_ID=' . (int) $_field['IBLOCK_ID'] . '&n=' . $_field['ID'] . '&k=text\', 600, 500);" value="...">';
                break;
                // привязка к пользователю
            // привязка к пользователю
            case 'bind_user':
                $result .= '<input type="text" ' . $field . ' value="' . $_field['VALUE'] . '">
					<span id="div_sp_' . md5($_field['ID']) . '_text">' . $_field['SPAN_VALUE'] . '</span>
					<input type="button" onclick="jsUtils.OpenWindow(\'/bitrix/admin/user_search.php?FN=' . CFormRenderer::$formname . '&FC=' . $_field['ID'] . '\', 600, 500);" value="...">';
                // немного говнеца в стиле битрикса
                $result .= '<iframe id="rf_iframe_' . $_field['ID'] . '" style="width: 0; height: 0; border: none;"></iframe>
					<script type="text/javascript">
					var prev_' . $_field['ID'] . '_val = \'' . $_field['VALUE'] . '\';
					function rf_input_' . $_field['ID'] . '_check()
					{
						var val = document.getElementById(\'' . $_field['ID'] . '\').value;
						if(val != prev_' . $_field['ID'] . '_val)
						{
							document.getElementById("rf_iframe_' . $_field['ID'] . '").src=\'/bitrix/admin/get_user.php?ID=\'
								+ val + \'&strName=sp_' . md5($_field['ID']) . '_text&lang=ru&admin_section=Y\';
							prev_' . $_field['ID'] . '_val = val;
						}
					}
					setInterval(function() { rf_input_' . $_field['ID'] . '_check(); }, 1000);
					</script>';
                break;
                // кнопарь
            // кнопарь
            case 'button':
                $result .= '<input type="button" ' . $field . ' value="' . $_field['VALUE'] . '">';
                break;
                // обычный текстовый инпут с календариком
            // обычный текстовый инпут с календариком
            case 'date':
                ob_start();
                global $APPLICATION;
                $APPLICATION->IncludeComponent("bitrix:main.calendar", "", array("SHOW_INPUT" => "Y", "FORM_NAME" => CFormRenderer::$formname, "INPUT_NAME" => $_field['NAME'], "INPUT_NAME_FINISH" => "", "INPUT_VALUE" => $_field['VALUE'], "INPUT_VALUE_FINISH" => "", "SHOW_TIME" => "N", "HIDE_TIMEBAR" => "N"));
                $result .= ob_get_clean();
                /*$result .= '<input type="text" '.$field.' value="'.htmlspecialchars($_field['VALUE']).'">'
                		.Calendar($_field['NAME'], CFormRenderer::$formname);*/
                break;
                // файл
            // файл
            case 'file':
                $result .= '<input type="file" ' . $field . '>';
                break;
                // хидден
            // хидден
            case 'hidden':
                $result .= '<input type="hidden" ' . $field . ' value="' . htmlspecialcharsEx($_field['VALUE']) . '">';
                break;
                // множественная привязка к элементу инфоблока
            // множественная привязка к элементу инфоблока
            case 'multibind_iblock_element1':
                $max_i = 10;
                if (is_array($_field['VALUE'])) {
                    $max_i = sizeof($_field['VALUE']) + 10;
                }
                for ($i = 0; $i < $max_i; $i++) {
                    $result .= '<div class="rf_multielementbind_wrapper' . ($i && !$_field['VALUE'][$i] ? ' rf_hidden' : '') . '" id="multielementbind_wrapper_' . $_field['ID'] . '_' . $i . '">';
                    $result .= '<input type="text" ' . 'name="' . $_field['NAME'] . '_' . $i . '" id="' . $_field['ID'] . '_' . $i . '"' . ' value="' . $_field['VALUE'][$i] . '">
						<span id="sp_' . md5($_field['ID']) . '_text">' . $_field['SPAN_VALUE'][$i] . '</span>
						<input type="button" onclick="jsUtils.OpenWindow(\'/bitrix/admin/iblock_element_search.php?lang=ru&IBLOCK_ID=' . (int) $_field['IBLOCK_ID'] . '&n=' . $_field['ID'] . '_' . $i . '&k=text\', 600, 500);" value="...">' . ($i == $max_i - 1 ? '' : '<span class="rf_command" onclick="document.getElementById(\'multielementbind_wrapper_' . $_field['ID'] . '_' . ($i + 1) . '\').style.display = \'block\';this.style.display=\'none\';">Ещё...</span>') . '</div>';
                }
                break;
                // множественная привязка к элементу инфоблока с возможностью создать новый
            // множественная привязка к элементу инфоблока с возможностью создать новый
            case 'multibind_iblock_element2':
                $max_i = 10;
                if (is_array($_field['VALUE'])) {
                    $max_i = sizeof($_field['VALUE']) + 10;
                }
                for ($i = 0; $i < $max_i; $i++) {
                    $result .= '<div class="rf_multielementbind_wrapper' . ($i && !$_field['VALUE'][$i] ? ' rf_hidden' : '') . '" id="multielementbind_wrapper_' . $_field['ID'] . '_' . $i . '">
						<span class="rf_command" onclick="document.getElementById(\'' . $_field['ID'] . '_creatediv_' . $i . '\').style.display=\'block\';">Создать</span>
						<div class="rf_hidden" id="' . $_field['ID'] . '_creatediv_' . $i . '">';
                    $result .= CFormRenderer::RenderFields($_field, 'sub_', '_' . $i);
                    $result .= '</div>';
                    $result .= '<input type="text" ' . 'name="' . $_field['NAME'] . '_' . $i . '" id="' . $_field['ID'] . '_' . $i . '"' . ' value="' . $_field['VALUE'][$i] . '">
						<span id="sp_' . md5($_field['ID'] . '_' . $i) . '_text">' . $_field['SPAN_VALUE'][$i] . '</span>
						<input type="button" onclick="jsUtils.OpenWindow(\'/bitrix/admin/iblock_element_search.php?lang=ru&IBLOCK_ID=' . (int) $_field['IBLOCK_ID'] . '&n=' . $_field['ID'] . '_' . $i . '&k=text\', 600, 500);" value="...">' . ($i == $max_i - 1 ? '' : '<span class="rf_command" onclick="document.getElementById(\'multielementbind_wrapper_' . $_field['ID'] . '_' . ($i + 1) . '\').style.display = \'block\';this.style.display=\'none\';">Ещё...</span>') . '</div>';
                }
                break;
                // множественная привязка к пользователям
            // множественная привязка к пользователям
            case 'multibind_user':
                $max_i = 5;
                if (is_array($_field['VALUE'])) {
                    $max_i = sizeof($_field['VALUE']) + 5;
                }
                for ($i = 0; $i < $max_i; $i++) {
                    $result .= '<div class="rf_multielementbind_wrapper' . ($i && !$_field['VALUE'][$i] ? ' rf_hidden' : '') . '" id="multiuserbind_wrapper_' . $_field['ID'] . '_' . $i . '">' . '<input type="text" ' . 'name="' . $_field['NAME'] . '_' . $i . '" id="' . $_field['ID'] . '_' . $i . '"' . ' value="' . $_field['VALUE'][$i] . '">
						<span id="div_sp_' . md5($_field['ID'] . '_' . $i) . '_text">' . $_field['SPAN_VALUE'][$i] . '</span>
						<input type="button" onclick="jsUtils.OpenWindow(\'/bitrix/admin/user_search.php?FN=' . CFormRenderer::$formname . '&FC=' . $_field['ID'] . '_' . $i . '\', 600, 500);" value="...">' . ('<iframe id="rf_iframe_' . $_field['ID'] . '_' . $i . '" style="width: 0; height: 0; border: none;"></iframe>
							<script type="text/javascript">
								var prev_' . $_field['ID'] . '_' . $i . '_val = \'' . $_field['VALUE'][$i] . '\';
								function rf_input_' . $_field['ID'] . '_' . $i . '_check()
								{
									var val = document.getElementById(\'' . $_field['ID'] . '_' . $i . '\').value;
									if(val != prev_' . $_field['ID'] . '_' . $i . '_val)
									{
										document.getElementById("rf_iframe_' . $_field['ID'] . '_' . $i . '").src=\'/bitrix/admin/get_user.php?ID=\'
											+ val + \'&strName=sp_' . md5($_field['ID'] . '_' . $i) . '_text&lang=ru&admin_section=Y\';
										prev_' . $_field['ID'] . '_' . $i . '_val = val;
									}
								}
								setInterval(function() { rf_input_' . $_field['ID'] . '_' . $i . '_check(); }, 1000);
							</script>') . ($i == $max_i - 1 ? '' : '<span class="rf_command" onclick="document.getElementById(\'multiuserbind_wrapper_' . $_field['ID'] . '_' . ($i + 1) . '\').style.display = \'block\';this.style.display=\'none\';">Ещё...</span>') . '</div>';
                }
                break;
                // множественные файлы
            // множественные файлы
            case 'multifile':
                $result .= '<div id="multifile_wrapper_' . $_field['ID'] . '_0" class="rf_multifile_wrapper">
					<input
					type="file"
					id="' . $_field['ID'] . '_0"
					name="' . $_field['NAME'] . '_0"> <span class="rf_command" onclick="document.getElementById(\'multifile_wrapper_' . $_field['ID'] . '_1\').style.display=\'block\';">Ещё</span></div>';
                for ($i = 1; $i < 5; $i++) {
                    $result .= '<div id="multifile_wrapper_' . $_field['ID'] . '_' . $i . '" class="rf_multifile_wrapper rf_hidden">
						<input
						type="file"
						id="' . $_field['ID'] . '_' . $i . '"
						name="' . $_field['NAME'] . '_' . $i . '">';
                    if ($i < 4) {
                        $result .= '<span class="rf_command" onclick="document.getElementById(\'multifile_wrapper_' . $_field['ID'] . '_' . ($i + 1) . '\').style.display=\'block\';">Ещё</span>';
                    }
                    $result .= '</div>';
                }
                break;
                // селект с возможностью создать новый элемент
            // селект с возможностью создать новый элемент
            case 'selectplus':
                $result .= '<div class="rf_hidden" id="' . $_field['ID'] . '_creatediv">
					<input type="text" id="' . $_field['ID'] . '_addnew" name="' . $_field['NAME'] . '_addnew">
					</div>
					<span class="rf_command" onclick="document.getElementById(\'' . $_field['ID'] . '_creatediv\').style.display=\'block\';">Добавить элемент</span>';
                // обратите внимание на отсутствие брейка - далене должен идти case 'select'
                // селект
            // селект
            case 'select':
                $result .= '<select ' . $field . '>
					<option value=""' . ($_field['VALUE'] == '' ? ' selected' : '') . '></option>';
                foreach ($_field['ITEMS'] as $k => $v) {
                    $result .= '<option value="' . $k . '"' . ($_field['VALUE'] == $k ? ' selected' : '') . '>' . $v . '</option>';
                }
                $result .= '</select>';
                break;
                // сабмит
            // сабмит
            case 'submit':
                $result .= '<input type="submit" ' . $field . ' value="' . $_field['VALUE'] . '">';
                break;
                // текстареа
            // текстареа
            case 'textarea':
                $result .= '<textarea ' . $field . ' rows="10" cols="60">' . htmlspecialchars($_field['VALUE']) . '</textarea>';
                break;
                // массив текстовых полей с ключами
            // массив текстовых полей с ключами
            case 'textarray':
                if (is_array($_field['VALUE'])) {
                    $sizeof = sizeof($_field['VALUE']);
                } else {
                    $_field['VALUE'] = array(array('' => ''));
                    $sizeof = 5;
                }
                $result .= '<table id="' . $_field['ID'] . '_table">';
                $i = 0;
                foreach ($_field['VALUE'] as &$v) {
                    $result .= '<tr id="' . $_field['ID'] . '_tr_' . $i . '">
						<td><input type="text" class="' . $_field['CLASS'] . ' rf_textarray_key"   name="' . $_field['ID'] . '_key[' . $i . ']"   id="' . $_field['ID'] . '_key_' . $i . '" value="' . htmlspecialchars($k) . '"></td>
						<td><input type="text" class="' . $_field['CLASS'] . ' rf_textarray_value" name="' . $_field['ID'] . '_value[' . $i . ']" id="' . $_field['ID'] . '_key_' . $i . '" value="' . htmlspecialchars($v) . '"></td>
						</tr>';
                    $i++;
                }
                // тут немножко говнеца
                $result .= '</table>
					<script type="text/javascript">
						var last' . $_field['ID'] . '_counter = "' . $i . '";
					</script>
					<span class="rf_command" onclick="
						var newtr = document.createElement(\'tr\');
						newtr.id  = \'' . $_field['ID'] . '_tr_\' + last' . $_field['ID'] . '_counter;
						document.getElementById(\'' . $_field['ID'] . '_table\').appendChild(newtr);
						var newinp       = document.createElement(\'input\');
						newinp.type      = \'text\';
						newinp.className = \'' . $_field['CLASS'] . ' rf_textarray_key\';
						newinp.id        = \'' . $_field['ID'] . '_key_\' + last' . $_field['ID'] . '_counter;
						newinp.name      = \'' . $_field['ID'] . '_key[\' + last' . $_field['ID'] . '_counter + \']\';
						var newtd        = document.createElement(\'td\');
						newtr.appendChild(newtd);
						newtd.appendChild(newinp);
						newinp           = document.createElement(\'input\');
						newinp.type      = \'text\';
						newinp.className = \'' . $_field['CLASS'] . ' rf_textarray_key\';
						newinp.id        = \'' . $_field['ID'] . '_value_\' + last' . $_field['ID'] . '_counter;
						newinp.name      = \'' . $_field['ID'] . '_value[\' + last' . $_field['ID'] . '_counter + \']\';
						newtd            = document.createElement(\'td\');
						newtr.appendChild(newtd);
						newtd.appendChild(newinp)
						last' . $_field['ID'] . '_counter++;
					">Ещё</span>';
                break;
                // привязка к Яндекс-карте
            // привязка к Яндекс-карте
            case 'yandexmap':
                require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/fileman/properties.php';
                ob_start();
                CIBlockPropertyMapYandex::GetPropertyFieldHtml(array('ID' => $_field['ID'], 'NAME' => $_field['LABEL'], 'ACTIVE' => 'Y', 'CODE' => $_field['NAME'], 'MULTIPLE' => 'N', 'USER_TYPE' => 'map_yandex', 'USER_TYPE_SETTINGS' => ''), array('VALUE' => $_field['VALUE']), array('VALUE' => $_field['NAME'], 'FORM_NAM' => CFormRenderer::$formname, 'MODE' => 'FORM_FILL'));
                $cart = ob_get_clean();
                if ($_field['MAP_CENTER']) {
                    $cart = str_replace('map.disableRuler();', 'map.disableRuler(); map.setCenter(new context.YMaps.GeoPoint(' . $_field['MAP_CENTER'] . '), 10, context.YMaps.MapType.MAP);', $cart);
                }
                $result .= $cart;
                break;
                //Пароль
            //Пароль
            case 'password':
                $result .= '<input type="password" ' . $field . '>';
                break;
                // обычный текстовый инпут
            // обычный текстовый инпут
            case 'text':
            default:
                $result .= '<input type="text" ' . $field . ' value="' . htmlspecialchars($_field['VALUE']) . '">';
                break;
        }
        if (ToLower($_field['TYPE'] != 'hidden')) {
            $result .= '</div></div>';
        }
        return $result;
    }
            <td class="time"><?php 
                echo $flight['TIME']['ESTIMATED']['TIME'];
                echo isset($flight['TIME']['ESTIMATED']['DATE']['DAY']) ? ' <div class="date">' . $flight['TIME']['ESTIMATED']['DATE']['DAY'] . '/' . $flight['TIME']['ESTIMATED']['DATE']['MONTH'] . '</div>' : "";
                ?>
</td>
            <td class="time"><?php 
                echo $flight['TIME']['ACTUAL']['TIME'];
                echo isset($flight['TIME']['ACTUAL']['DATE']['DAY']) ? ' <div class="date">' . $flight['TIME']['ACTUAL']['DATE']['DAY'] . '/' . $flight['TIME']['ACTUAL']['DATE']['MONTH'] . '</div>' : "";
                ?>
</td>
			<td class="terminal"><?php 
                echo $flight['TERMINAL'];
                ?>
</td>
            <td class="state state_<?php 
                echo ToLower($flight['STATUS']['CODE']);
                ?>
"><?php 
                echo $flight['STATUS']['NAME'];
                ?>
</td>
		  </tr>
          <?php 
            }
            ?>
          </tbody>
        </table>
        <?php 
        }
        ?>
    <?php 
Пример #29
0
 $arResult["Post"]["DATE_PUBLISH_DATE"] = FormatDateFromDB($arResult["Post"]["DATE_PUBLISH"], FORMAT_DATE);
 if (strcasecmp(LANGUAGE_ID, 'EN') !== 0 && strcasecmp(LANGUAGE_ID, 'DE') !== 0) {
     $arResult["Post"]["DATE_PUBLISH_FORMATED"] = ToLower($arResult["Post"]["DATE_PUBLISH_FORMATED"]);
     $arResult["Post"]["DATE_PUBLISH_DATE"] = ToLower($arResult["Post"]["DATE_PUBLISH_DATE"]);
 }
 // strip current year
 if (!empty($arParams['DATE_TIME_FORMAT_S']) && ($arParams['DATE_TIME_FORMAT_S'] == 'j F Y G:i' || $arParams['DATE_TIME_FORMAT_S'] == 'j F Y g:i a')) {
     $arResult["Post"]["DATE_PUBLISH_FORMATED"] = ltrim($arResult["Post"]["DATE_PUBLISH_FORMATED"], '0');
     $arResult["Post"]["DATE_PUBLISH_DATE"] = ltrim($arResult["Post"]["DATE_PUBLISH_DATE"], '0');
     $curYear = date('Y');
     $arResult["Post"]["DATE_PUBLISH_FORMATED"] = str_replace(array('-' . $curYear, '/' . $curYear, ' ' . $curYear, '.' . $curYear), '', $arResult["Post"]["DATE_PUBLISH_FORMATED"]);
     $arResult["Post"]["DATE_PUBLISH_DATE"] = str_replace(array('-' . $curYear, '/' . $curYear, ' ' . $curYear, '.' . $curYear), '', $arResult["Post"]["DATE_PUBLISH_DATE"]);
 }
 $arResult["Post"]["DATE_PUBLISH_TIME"] = FormatDateFromDB($arResult["Post"]["DATE_PUBLISH"], strpos($arParams["DATE_TIME_FORMAT_S"], 'a') !== false || ($arParams["DATE_TIME_FORMAT_S"] == 'FULL' && IsAmPmMode()) !== false ? strpos(FORMAT_DATETIME, 'TT') !== false ? 'G:MI TT' : 'G:MI T' : 'GG:MI');
 if (strcasecmp(LANGUAGE_ID, 'EN') !== 0 && strcasecmp(LANGUAGE_ID, 'DE') !== 0) {
     $arResult["Post"]["DATE_PUBLISH_TIME"] = ToLower($arResult["Post"]["DATE_PUBLISH_TIME"]);
 }
 $arResult["arUser"] = CBlogUser::GetUserInfo($arPost["AUTHOR_ID"], $arParams["PATH_TO_USER"], array("AVATAR_SIZE" => isset($arParams["AVATAR_SIZE_COMMON"]) ? $arParams["AVATAR_SIZE_COMMON"] : $arParams["AVATAR_SIZE"], "AVATAR_SIZE_COMMENT" => $arParams["AVATAR_SIZE_COMMENT"]));
 $arResult["arUser"]["isExtranet"] = intval($arPost["AUTHOR_ID"]) > 0 && is_array($GLOBALS["arExtranetUserID"]) && in_array($arPost["AUTHOR_ID"], $GLOBALS["arExtranetUserID"]);
 $arResult["Post"]["urlToPost"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_POST"], array("post_id" => CBlogPost::GetPostID($arPost["ID"], $arPost["CODE"], $arParams["ALLOW_POST_CODE"]), "user_id" => $arPost["AUTHOR_ID"]));
 if (strlen($arPost["CATEGORY_ID"]) > 0) {
     $bHasTag = true;
     $arCategory = explode(",", $arPost["CATEGORY_ID"]);
     $dbCategory = CBlogCategory::GetList(array(), array("@ID" => $arCategory));
     while ($arCatTmp = $dbCategory->Fetch()) {
         $arCatTmp["~NAME"] = $arCatTmp["NAME"];
         $arCatTmp["NAME"] = htmlspecialcharsEx($arCatTmp["NAME"]);
         $arCatTmp["urlToCategory"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_SEARCH_TAG"], array("tag" => urlencode($arCatTmp["NAME"])));
         $arResult["Category"][] = $arCatTmp;
     }
 }
Пример #30
0
}
$arParams['LINE_ELEMENT_COUNT'] = intval($arParams['LINE_ELEMENT_COUNT']);
if (2 > $arParams['LINE_ELEMENT_COUNT'] || 5 < $arParams['LINE_ELEMENT_COUNT']) {
    $arParams['LINE_ELEMENT_COUNT'] = 3;
}
if (!in_array($arParams['VIEW_MODE'], $arViewModeList)) {
    $arParams['VIEW_MODE'] = 'SECTION';
}
$arParams['TEMPLATE_THEME'] = (string) $arParams['TEMPLATE_THEME'];
if ('' != $arParams['TEMPLATE_THEME']) {
    $arParams['TEMPLATE_THEME'] = preg_replace('/[^a-zA-Z0-9_\\-\\(\\)\\!]/', '', $arParams['TEMPLATE_THEME']);
    if ('site' == $arParams['TEMPLATE_THEME']) {
        $arParams['TEMPLATE_THEME'] = COption::GetOptionString('main', 'wizard_eshop_adapt_theme_id', 'blue', SITE_ID);
    }
    if ('' != $arParams['TEMPLATE_THEME']) {
        if (!is_file($_SERVER['DOCUMENT_ROOT'] . $this->GetFolder() . '/' . ToLower($arParams['VIEW_MODE']) . '/themes/' . $arParams['TEMPLATE_THEME'] . '/style.css')) {
            $arParams['TEMPLATE_THEME'] = '';
        }
    }
}
if ('' == $arParams['TEMPLATE_THEME']) {
    $arParams['TEMPLATE_THEME'] = 'blue';
}
if ('Y' != $arParams['PRODUCT_DISPLAY_MODE']) {
    $arParams['PRODUCT_DISPLAY_MODE'] = 'N';
}
if ('BANNER' == $arParams['VIEW_MODE']) {
    $arParams['PRODUCT_DISPLAY_MODE'] = 'N';
}
$arParams['ADD_PICT_PROP'] = trim($arParams['ADD_PICT_PROP']);
if ('-' == $arParams['ADD_PICT_PROP']) {