Skip to content

Instantly share code, notes, and snippets.

View ASDAFF's full-sized avatar
🏠
Working from home

ASDAFF ASDAFF

🏠
Working from home
View GitHub Profile
@ASDAFF
ASDAFF / BasketHelper.php
Created November 25, 2020 17:16
Класс для удобной реализации добавления удаления и обновления товаров в корзину на D7
<?php
namespace Isaev;
use \Bitrix\Main\Loader;
use \Bitrix\Sale;
use \Bitrix\Main\SystemException;
Loader::includeModule('sale');
Loader::includeModule('catalog');
@ASDAFF
ASDAFF / script.js
Created November 25, 2020 17:15 — forked from Isa3v/script.js
Возврат к позиции на странице при нажатии “Назад” (History API)
var isDeviceIos = navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPhone/i);
var historyScrollBack = (historyTab) => {
if (history.state && historyTab.hasOwnProperty('lastScroll')) {
window.scrollTo(0, historyTab.lastScroll);
}
};
// Возрват к позиции при нажатии кнопки назад (Запись)
window.addEventListener((isDeviceIos ? "pagehide" : "beforeunload"), function (e) {
@ASDAFF
ASDAFF / README.MD
Created November 25, 2020 17:15 — forked from Isa3v/README.MD
Получаем купоны доступные пользователю

Получаем купоны доступные пользователю Bitrix

@ASDAFF
ASDAFF / README.MD
Created November 25, 2020 17:14 — forked from Isa3v/README.MD
Добавляем список товаров с ссылками в письмо с заказом

Добавляет переменную для шаблона письма заказа, добавляющая список заказов с ссылками

#ORDER_LINKS_ITEMS#- Добавляем в шаблон письма о новом заказе

@ASDAFF
ASDAFF / README.MD
Created November 25, 2020 17:14 — forked from Isa3v/README.MD
Настройка сортировки Bitrix в компонентах

Bitrix сортировка

  • Подключаем перед catalog.section, news.list
  • Заменяем $arParams["ELEMENT_SORT_FIELD"] и $arParams["ELEMENT_SORT_ORDER"] на $_SESSION["ELEMENT_SORT_FIELD"] и $_SESSION["ELEMENT_SORT_ORDER"]
@ASDAFF
ASDAFF / init.php
Created November 25, 2020 17:13 — forked from Isa3v/init.php
Защищаем веб-формы битрикса от примитивных ботов (Скрытая капча)
<?
\Bitrix\Main\EventManager::getInstance()->addEventHandler("main", "OnEndBufferContent", "OnEndBufferWebFormAntiSpam");
function OnEndBufferWebFormAntiSpam(&$content)
{
// Добавляем стили перед head
$xStyle = '<style>.xname{display:block;height:.1px;margin:0!important;overflow:hidden;padding:0!important;width:.1px;border:0;opacity:.01;}</style>'; // Стили для поля
$content = str_ireplace('</head>', $xStyle.'</head>', $content);
// Добавляем поля
$findField = '<input type="hidden" name="WEB_FORM_ID"'; // У всех веб-форм есть это поле (Должно быть)
$xField = '<input class="xname name" tabindex="-1" autocomplete="off" type="text" name="last_name" value="">'; // Максимально завлекающее ботов поля с утыканными name
@ASDAFF
ASDAFF / README.md
Created November 25, 2020 16:35 — forked from Isa3v/README.md
Сортировка и назначение свойств фильтра для каждого раздела (Bitrix)

Сортировка и назначение свойств фильтра для каждого раздела (Bitrix)

  • Для начала создаем пользовательское поле с типом "Строка"


    Называем строку "UF_FILTER_SECTION"
  • В init.php вписываем наш класс к событию редактирования раздела и заливаем класс в путь указанный нами
@ASDAFF
ASDAFF / SECTIONS.php
Created September 5, 2019 19:26
Нормальная иерархия разделов битрикс
<?
/*ПРИМЕР СПИСКА
Array
(
[ROOT] => Array
(
[CHILD] => Array
(
[12] => Array
(
@ASDAFF
ASDAFF / auth.php
Created September 5, 2019 19:20
Авторизация пользователя Ajax Битрикс
<?
include($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
global $USER;
if (!is_object($USER)) $USER = new CUser;
$arAuthResult = $USER->Login($_REQUEST['login'], $_REQUEST['pass'], "Y");
$APPLICATION->arAuthResult = $arAuthResult;
exit(json_encode($arAuthResult));
@ASDAFF
ASDAFF / register.php
Created September 5, 2019 19:19
Регистрация пользователя Ajax Битрикс
<?
include($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
global $USER;
$arResult = $USER->Register($_REQUEST['mail'], $_REQUEST['name'], $_REQUEST['last_name'], $_REQUEST['pass'], $_REQUEST['pass'], $_REQUEST['mail']);
exit(json_encode($arResult));