Skip to content

Instantly share code, notes, and snippets.

View helloris25's full-sized avatar
😎

helloris25

😎
View GitHub Profile
@helloris25
helloris25 / Быстрый импорт элементов инфоблока из xml-файла с настройками по умолчанию:
Last active August 29, 2015 14:09
Быстрый импорт элементов инфоблока из xml-файла с настройками по умолчанию:
<?php
$ABS_FILE_NAME = $_SERVER["DOCUMENT_ROOT"]."/xml/demo.xml";
$WORK_DIR_NAME = substr($ABS_FILE_NAME, 0, strrpos($ABS_FILE_NAME, "/")+1);
$obXMLFile = new CIBlockXMLFile;
// Удаляем результат предыдущей загрузки
$obXMLFile->DropTemporaryTables();
// Подготавливаем БД
if($obXMLFile->CreateTemporaryTables())
{
@helloris25
helloris25 / nanoTpl.js
Last active August 29, 2015 14:27
Simplest JS template engine
/*
* String nanoTpl (String template, Object data)
*
* Usage: nanoTpl('Hello ${name}! (not ${name}?)', { name: 'Gandalf' })
*
* Result: Hello Gandalf! (not Gandalf?)
*/
function nanoTpl (template, data) {
var result = template;
@helloris25
helloris25 / RegExp YouTube video iFrame | object
Created September 16, 2015 14:31
RegExp YouTube video iFrame | object
$regexstr = '~
# Match Youtube link and embed code
(?: # Group to match embed codes
(?:<iframe [^>]*src=")? # If iframe match up to first quote of src
|(?: # Group to match if older embed
(?:<object .*>)? # Match opening Object tag
(?:<param .*</param>)* # Match all param tags
(?:<embed [^>]*src=")? # Match embed tag to the first quote of src
)? # End older embed code group
)? # End embed code groups
@helloris25
helloris25 / import_section
Created September 24, 2014 06:52
Импорт категорий в битрик
<?php
/**
* ПОЛУЧАЕМ ВСЕ ПОДКАТЕГОРИИ OASIS
*/
// ID корневой секции
$root_id = 82663;
$rsParentSection = CIBlockSection::GetByID($root_id);
if ($arParentSection = $rsParentSection->GetNext())
@helloris25
helloris25 / index.php
Created September 28, 2015 10:50
Вывести массив PHP как объект JS в Битркис
<script>
console.log(<? echo CUtil::PhpToJSObject($arResult, false, true); ?>);
</script>
@helloris25
helloris25 / .md
Created October 16, 2015 08:58 — forked from iAdramelk/.md
Длинная телега про Бутстрап

Вводная часть

У CSS есть несколько базовых проблем, которые позволяют очень быстро отстрелить себе ногу при неправильном использовании:

  1. Глобальный неймспейс – в серверном программировании все что написано в файле, в файле и остается. Все же что написано в css и js засирает глобальное пространство имен со всеми вытекающими. В JS эту проблему сейчас побороли всякими модульными системами, а вот с css сложнее. В идеальном мире это должен починить Shadow DOM и настоящие Web Components, но пока их нет единственный способ с этим бороться – следовать какой-то системе именований селекторов, которая по возможности уменьшает и исключает возможные конфликты.

  2. Каскадность – если на один элемент может сработать несколько правил, то они все и сработают последовательно. Если есть элемент h1.title, на него сработают все правила для тегов h1 и все правила для класса .title. Так как весь html состоит из тегов, то правил которые применяются на теги без классов будут работать на все вообще.

Соответственно наз

@helloris25
helloris25 / gist:86dd4769c5860f4efb00b4e2d036d4c7
Created June 30, 2017 11:35
Конвертация всех таблицы в нужную кодировку
Конвертацию БД из Win-1251 в UTF8 можно произвести разными способами, но самый быстрый и простой - использование SQL-запроса, приведенного ниже.
ALTER TABLE `db_name`.`table_name` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
При помощи этого запроса, можно конвертировать таблицу базы данных в любую, доступную в MySQL кодировку. Но что делать, если таблиц 100, 200 или больше, и все таблицы необходимо перекодировать в UTF8 из Win-1251? Для решения этой проблемы, можно отправить в MySQL запрос, который сгенерирует необходимые SQL-запросы для всех таблиц БД. При использовании PHPMyAdmin останется только скопировать результаты и запустить их как SQL-запрос:
SELECT CONCAT( 'ALTER TABLE `', t.`TABLE_SCHEMA` , '`.`', t.`TABLE_NAME` , '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;' ) AS sqlcode
FROM `information_schema`.`TABLES` t
WHERE 1
AND t.`TABLE_SCHEMA` = 'My_DB_for_convert'
ORDER BY 1
@helloris25
helloris25 / sql
Last active July 21, 2017 14:10
Обновление полей в которых суммы из другой таблицы с условием
UPDATE Table_1 T_1
LEFT JOIN
(
SELECT
id_table1,
Sum(CASE
WHEN direction = 'one'
THEN volume
ELSE 0
END) AS sum_one,
@helloris25
helloris25 / simple_create_section.php
Last active February 4, 2018 17:18
Быстрое создание секций битриксе
<?php
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetPageProperty("NOT_SHOW_NAV_CHAIN", "Y");
$APPLICATION->SetTitle("Импорт секций инфоблока");
if(CModule::IncludeModule("iblock")) {
$arIBlocks = [];
$rsIBlocks = CIBlock::GetList(["sort" => "asc"], ["ACTIVE" => "Y"]);
while($arIBlock = $rsIBlocks->Fetch())
{
@helloris25
helloris25 / pug.md
Created October 5, 2018 09:32 — forked from neretin-trike/pug.md
Туториал по HTML препроцессору Pug (Jade)