Skip to content

Instantly share code, notes, and snippets.

View dermanov-ru's full-sized avatar

Mark dermanov-ru

View GitHub Profile
<?php
/**
* Масштабирует фото, сохраняет копию файла и возвращает путь к нему
* либо возвращает ссылку на картинку-заглушку
*
* ---
*
* Водяной знак - если существует файл /upload/watermark/watermark_original.png - он будет
* смасштабирован под фото и нанесен на всю поверхность с небольшим отступом от края.
@dermanov-ru
dermanov-ru / send_to_graylog.sh
Created May 27, 2019 14:45
send_to_graylog.sh
# send any data to graylog server with http gelf protocol
# $1 - facility (info|warning|etc)
# $2 - application
# $3 - type
# $4 - short text (title)
# $5 - full text (body)
function send_to_graylog {
this_host="stage.np.ru"
graylog_http_gelf_host="IP:PORT"
msg='{"facility":"'$1'", "application":"'$2'", "type":"'$3'", "short_message":"'$4'", "full_message":"'$5'", "host":"'$this_host'"}'
@dermanov-ru
dermanov-ru / webform__add.php
Created July 10, 2019 18:56
Пример создания веб-формы через миграцию и использование
<?
// include core
/*
* создает новую форму и вопросы всех возможных типов
* */
// у формы обязательно должен быть хоть один статус и один из них обязательно по умолчанию
// иначе не сохранить результат в админке или через стд компоненты
$status = new \Webform\Install\StatusBuilder();
$status->add("Первый", true);
<?php
/**
* Ищет по тексту в инфоблоке.
*
* @param $iblockId int | array - ID инфоблока в котором искать. Может быть массивом.
* @param $query string - поисковый запрос. может содержать специфичные для Sphinx операторы ( * ) - будет передан прямо в Sphinx.
* рекомендуется передавать запрос вида <code>"*" . $searchQuery . "*"</code>
* @param $sectionId int - ID раздела в каталоге, в рамках которого искать
* @return array - список ID найденных элементов
*
@dermanov-ru
dermanov-ru / NewRelicMiddleware.php
Created November 4, 2020 12:29
NewRelic APM Transactions name + Laravel
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Routing\Route;
use Illuminate\Support\Str;
class NewRelicMiddleware