Skip to content

Instantly share code, notes, and snippets.

View pafnuty's full-sized avatar
⚒️
No time for commit, just push!

Pavel Belousov pafnuty

⚒️
No time for commit, just push!
View GitHub Profile
@pafnuty
pafnuty / bx_fenom.md
Last active September 16, 2015 06:33
Сравнение синтаксисов Bitrix и Fenom

Сравнение синтаксисов

Bitrix:

<?if($arParams['DISPLAY_TOP_PAGER']):?>
    <?=$arResult['NAV_STRING']?>
<?endif;?>

Fenom:

@pafnuty
pafnuty / D7_module_cheatsheet.md
Last active March 20, 2020 12:57 — forked from may-cat/Памятка по сборке модуля на D7
Памятка по сборке модуля на D7

Памятка по сборке модуля на D7

  1. Склонировать d7dull в папку /local/modules

  2. Заменить названия во всех файлах с учётом регистра maycat — ваш ник, разрешены ТОЛЬКО латинские буквы d7dull — название модуля Для этого нужно пройтись контекстным поиском по всей папке и внести изменения + переименовать файл в папке admin в соответствии с названияем модуля

  3. Продумать структуру классов и завести их в папке lib/ (подробнее о приёмах организации структуры - смотри видео) С помощью include.php подключить автолоад созданным классам

@pafnuty
pafnuty / declination.js
Created August 11, 2015 14:02
Идентичные PHP и JS функции для правильного склонения слов
/**
* Функция для склонения слов
* Пример использования: declination(5,'комментари|й|я|ев')
*
* @author Павел Белоусов <pb@info-expert.ru>
*
* @param int number число, для которого будет расчитано окончание
* @param string words слово и варианты окончаний для 1|2|1 (1 комментарий, 2 комментария, 100 комментариев)
*
* @return string - слово с правильным окончанием
@pafnuty
pafnuty / group.tpl
Last active June 9, 2016 17:43
Пример вывода новостей с группировкой по дням через модуль BlockPro 4
{* Пример вывода новостей с группировкой по дням *}
{* Определяем пустой массив для сгруппированных новостей *}
{set $groupList = []}
{*
Пробегаем по существующему массиву с новостями и
собираем новый массив, группируя его по нужному параметру
*}
{foreach $list as $key=>$item}
@pafnuty
pafnuty / getuserinfo.tpl
Last active August 29, 2015 14:23
Вывод информации об авторе новости через BlockPro 4
{*
$block_id - это уникальный идентификатор блока (у блоков с разными настройками он разный) для того,
что бы правильно организовать постраничную навигацию на ajax.
*}
<div id="{$block_id}">
{* Массив с логинами авторов новостей *}
{set $users = []}
{* Заполняем массив логинами *}
{foreach $list as $key => $el}
{set $users[] = $el.autor}
@pafnuty
pafnuty / tt.js
Last active August 29, 2015 14:22
описание сниппета
$('.main-checkbox').on('change', function () {
var itemData = $(this).data('checkboxes'),
item = $(itemData + ':enabled');
if ($(this).prop('checked')) {
item.prop('checked', true).trigger('change');
}
else {
item.prop('checked', false).trigger('change');
}
<?
/**
* Функция для склонения слов
* Пример использования: declination(5,'комментари|й|я|ев')
*
*
* @param int n число, для которого будет расчитано окончание
* @param string words слово и варианты окончаний для 1|2|1 (1 комментарий, 2 комментария, 100 комментариев)
*
* @return string - слово с правильным окончанием
@pafnuty
pafnuty / svg-css-classes-work.js
Created May 22, 2015 07:56
hasClass, addClass, removeClass, toggleClass для SVG-элементов на чистом JS
/**
* Работаем с классами у SVG-элементов
* Код добавляет возможность использовать следующие функции:
* hasClass, addClass, removeClass, toggleClass
*
* Использование:
* var svgEl = document.querySelector('.svg-selector');
* svgEl.hasClass('className'); // hasClass
* svgEl.addClass('className'); // addClass
* svgEl.removeClass('className'); // removeClass
th.order-col {
padding: 0 !important;
&.selected,
&:hover {
background: @green;
border-color: @green;
}
}
[data-sort] {
cursor: pointer;
@pafnuty
pafnuty / pseudolinks.js
Created May 16, 2015 13:28
Псевдоссылки 2.0