CModule::IncludeModule("iblock");
$arSelect = [
'ID',
'NAME',
];
$arFilter = [
'IBLOCK_CODE' => 'news',
];
if ($_REQUEST['PAGEN_1'] > 1) {
$arNavStartParams = [
'iNumPage' => $_REQUEST['PAGEN_1'] - 1,
'nPageSize' => 6,
];
$arFilter['!ID'] = [1, 2, 3, 4]; // TODO: получить эти данные в запросе и закешировать
} else {
$arNavStartParams = [
'nTopCount' => 0,
'iNumPage' => 1,
'nPageSize' => 10,
];
}
$obFields = CIBlockElement::GetList(
['ID' => 'asc'],
$arFilter,
false,
$arNavStartParams,
$arSelect
);
$arCurrentData = [];
while($arField = $obFields->Fetch()) {
print_r($arField);
}
use \Bitrix\Main\Service\GeoIp;
$result = GeoIp\Manager::getDataResult('178.219.187.10', 'en');
if ($result->isSuccess()) {
$obGeoData = $result->getGeoData();
print_r($obGeoData);
}
[ip] => 178.219.187.10
[lang] => en
[countryName] => Russia
[regionName] => Moskva
[subRegionName] =>
[cityName] => Moscow
[countryCode] => RU
[regionCode] => RU-MOW
[zipCode] =>
[latitude] => 55.75222
[longitude] => 37.61556
[timezone] => Europe/Moscow
[asn] =>
[ispName] =>
[organizationName] =>
[handlerClass] => Bitrix\Main\Service\GeoIp\SypexGeo
[ip] => 178.219.187.10
[lang] => ru
[countryName] => Россия
[regionName] => Москва
[subRegionName] =>
[cityName] => Москва
[countryCode] => RU
[regionCode] => RU-MOW
[zipCode] =>
[latitude] => 55.75222
[longitude] => 37.61556
[timezone] => Europe/Moscow
[asn] =>
[ispName] =>
[organizationName] =>
[handlerClass] => Bitrix\Main\Service\GeoIp\SypexGeo
CModule::IncludeModule("search");
if (COption::GetOptionString("search", "stat_phrase") == "Y")
{
$statistic = new CSearchStatistic('kudis.ru', '1С-Битрикс,Битрикс24');
$statistic->PhraseStat(12, 3);
}
$this->setResultCacheKeys([
'YOUR_PARAM',
]);
$APPLICATION->AddBufferContent('ShowCondTitle');
function ShowCondTitle()
{
global $APPLICATION;
if (!$APPLICATION->GetTitle())
return "Стандартная страница";
else
return $APPLICATION->GetTitle();
}
class Kudis
{
public static function sortByNameAsc($arrA, $arrB)
{
$a = $arrA['NAME'];
$b = $arrB['NAME'];
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
}
uasort($arResult['GRID']['ROWS'], ['Kudis', 'sortByNameAsc']);
$USER->GetLogin()
$arResult['FORM_TYPE'] == "login"
, тогда показываем кнопку Войти$arResult['FORM_TYPE'] == "logout"
, показываем $arResult['USER_NAME'] или $arResult['USER_LOGIN'] AddEventHandler('main', 'OnBeforeUserUpdate', ['Kudis', 'checkLogin']);
AddEventHandler('main', 'OnBeforeUserAdd', ['Kudis', 'checkLogin']);
class Kudis
{
public static function checkLogin($arFields)
{
if (strlen($arFields['LOGIN']) < 10)
{
$GLOBALS['APPLICATION']->ThrowException('Слишком короткий логин!');
return false;
}
return true;
}
}
array(
"CONDITION" => "#^/service/.+?/([^\/]+)/#",
"RULE" => "PERSON_ID=\$1",
"ID" => "",
"PATH" => "/service/index.php",
),
UPDATE `имя базы`.`b_iblock_element` t SET t.`ACTIVE` = 'Y' WHERE t.`ID` = id_элемента
AddEventHandler("main", "OnBeforeUserUpdate", Array("Kudis", "picHandler"));
AddEventHandler("main", "OnBeforeUserAdd", Array("Kudis", "picHandler"));
define("MAX_WIDTH", 10);
define("MAX_HEIGHT", 10);
class Kudis
{
function picHandler(&$arFields)
{
if (is_array($arFields['UF_USERPIC']) && !empty($arFields['UF_USERPIC'])) {
$fileSize = CFile::GetImageSize ($arFields['UF_USERPIC']['tmp_name']);
if ($fileSize[0] > MAX_WIDTH || $fileSize[1] > MAX_HEIGHT) {
global $APPLICATION;
$APPLICATION->throwException('Максимальный размер картинки для Вас: ' . MAX_WIDTH . 'x' . MAX_HEIGHT);
return false;
}
}
}
}
array(
"CONDITION" => "#^/catalog/(\\d+)/(\\d+)/id(\\d+)/[^\/]*$#",
"RULE" => "SECTION_ID=\$1&SUBSECTION_ID=\$2&ELEMENT_ID=\$3",
"ID" => "galament:shop",
"PATH" => "/catalog/index.php",
),
if(isset($arVariables["action"]) && in_array($arVariables["action"], $arCompareCommands))
$componentPage = "compare";
elseif(isset($arVariables["ELEMENT_ID"]) && intval($arVariables["ELEMENT_ID"]) > 0)
$componentPage = "element";
elseif(isset($arVariables["ELEMENT_CODE"]) && strlen($arVariables["ELEMENT_CODE"]) > 0)
$componentPage = "element";
elseif(isset($arVariables["SECTION_ID"]) && intval($arVariables["SECTION_ID"]) > 0)
$componentPage = "section";
elseif(isset($arVariables["SECTION_CODE"]) && strlen($arVariables["SECTION_CODE"]) > 0)
$componentPage = "section";
elseif(isset($_REQUEST["q"]))
$componentPage = "search";
else
$componentPage = "sections";
$this->IncludeComponentTemplate($componentPage);
$user_id = 2;
$arGroups_db = CUser::GetUserGroupList( $user_id );
$aimGroupId = 4; //id группы, куда добавляем
$aimGroupLastDate = '09.05.2018 23:59:59'; // дата, которая нужна, если из какой-то переменной в timestamp, то используйте ConvertTimeStamp($var, "FULL"), она приведёт формат к текущему формату базы битрикса
$aimGroupUpdated = false;
while ($arGroup = $arGroups_db->Fetch()){
if ($arGroup['GROUP_ID'] == $aimGroupId) {
$arGroup['DATE_ACTIVE_TO'] = $aimGroupLastDate;
$aimGroupUpdated = true;
}
$arGroups[] = $arGroup;
}
if (!$aimGroupUpdated) {
$arGroups[] = [
'GROUP_ID' => $aimGroupId,
'DATE_ACTIVE_FROM' => ConvertTimeStamp(time(), "FULL"),
'DATE_ACTIVE_TO' => $aimGroupLastDate
];
}
CUser::SetUserGroup($user_id, $arGroups);