Skip to content

Instantly share code, notes, and snippets.

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

Danil Isaev Isa3v

🏠
Working from home
View GitHub Profile
@Isa3v
Isa3v / README.md
Last active March 26, 2019 13:51
Сортировка элементов по польз. полю раздела (Bitrix, Cron)

Сортировка элементов по польз. полю раздела (Bitrix, Cron)

Задача:

У раздела добавить поле, под куски в названии товара, влияющие на его сортировку. Написать скрипт, который раз в день (часов в 7-8 утра) будет пробегаться по товарам и изменять их сортировку с 500 на 100 для товаров, начинающихся с этих фраз раздела. Можно привязать его к скрипту загрузки каталога.

Решение:

Добавляем скрипт например в ..bitrix/php_interface/ называм его sortByTag.php

У скрипта нужно поменять только 2 поля:

    public $iblockID = 14; - маняем цифру на ID нужного инфоблока
@Isa3v
Isa3v / README.md
Last active January 14, 2020 05:10
Shell терминал linux: Для разработчика без опыта использования терминала

Полезные bash комманды, если ты не сис-админ

  • ctrl+c - прекратить выполнение комманды \
  • clear - очистить экран терминала
  • cd /ПУТЬ - Перейти к указанному пути
  • ls -l - Показать что находится в папке в формате таблицы
  • rm -rf /files/foo/ - удаление папки foo и всех файлов внутри. Больше примеров и подробностей
  • ssh root@server.my -p 22 - подключение по ssh к серверу server.my под логином root использьзуя 22 порт
  • df -h - Сколько осталось места
  • scp -r root@server.my:/home/dir/ /home/local/my/ - Скопировать всё содержимое папки на сервере (рекурсивно) в локальную папку (с подробным выводом). Использую например чтоб перенести файлы с сервера на сервер. (До этого я выкачивал через фтп на комп, а затем обратно на другой сервер с компа)
  • ls -i /home/foo /root/bar - создаёт символическую ссылку по имени bar, которая указывает на файл foo.
@Isa3v
Isa3v / README.md
Last active June 17, 2020 13:26
Просто картинки для Readme.md
We couldn’t find that file to show.
@Isa3v
Isa3v / README.MD
Created July 15, 2020 05:54
Добавляем список товаров с ссылками в письмо с заказом

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

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

@Isa3v
Isa3v / script.js
Created July 31, 2020 12:14
Возврат к позиции на странице при нажатии “Назад” (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) {
@Isa3v
Isa3v / README.md
Last active February 3, 2021 07:23
yml modx evo

YML выгрузка (MODx evo)

Делаем YML выгрузку через сниппет с возможностью использования php

Задача:

  1. Сформировать YML-файл
  2. Если цена пустая или равна "По запросу", то ее выгружать не нужно
  3. Сложность в том, что цена написана как "100 руб." или "100 евро" и нужно из этого забрать валюту и цифру

Решение:

@Isa3v
Isa3v / script.js
Created March 5, 2021 04:37
Переменная css (100vh) для всех устройств и IOS Safari через JS
const appHeight = () => {
const doc = document.documentElement
doc.style.setProperty('--max-height-app', `calc(${window.innerHeight}px)`);
}
appHeight()
@Isa3v
Isa3v / PropStringDesc.php
Created May 26, 2021 06:39
Пользовательское поле (свойство раздела) Bitrix - строка с описанием
<?php
// $eventManager->addEventHandler("main", "OnUserTypeBuildList", ['PropStringDesc', "getUserTypeDescription"]);
class PropStringDesc extends \CUserTypeString
{
public function getUserTypeDescription()
{
return [
'USER_TYPE_ID' => 'PropStringDesc',
@Isa3v
Isa3v / README.md
Last active June 28, 2021 13:39
Сортировка свойств инфоблока для определенного раздела (Bitrix)

Сортировка свойств инфоблока для определенного раздела

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

  • Далее нам нужно создать свою вкладку в панели редактирования раздела.

    Разработчик Bitrix Framework" -> Кастомизация административной формы заказа - тут довольно хорошо описан процесс создания вкладки. Делаем по аналогии (Смотрим init.php)

    После добавления события, появляется вкладка в разделах:
@Isa3v
Isa3v / bash.sh
Created March 17, 2022 09:10
Git откатиться к коммиту (Массовый revert)
git read-tree -m -u COMMIT_JASH