Skip to content

Instantly share code, notes, and snippets.

View alroniks's full-sized avatar

Ivan Klimchuk alroniks

View GitHub Profile
@alroniks
alroniks / batchsubscriber.php
Created February 18, 2015 09:01
Batch Subscriber for Sendex
<?php
$modx->addPackage('sendex', MODX_CORE_PATH . 'components/sendex/model/');
$subscribers = array(
array('Фамилия Имя Отчество' , 'email@mail.ru'),
);
foreach ($subscribers as $s) {
if (!$u = $modx->getObject('modUserProfile', array('email' => $s[1]))) {
@alroniks
alroniks / Gulpfile.js
Last active April 1, 2018 14:08
Gulpfile for run watch commands for Gitify (MODX)
'use strict';
console.time('Loading plugins');
var gulp = require('gulp'),
watch = require('gulp-watch'),
shell = require('gulp-shell'),
tap = require('gulp-tap');
console.timeEnd('Loading plugins');
@alroniks
alroniks / template.html
Last active January 12, 2016 03:39
Yandex.Weather Snippet for MODX
[[!weather?
&cityId=`26850`
&tpl=`weather.tpl`
&cacheTime=`7200`
]]
<div class="wrapper navigation">
<div class="container">
<div class="row navigation__first">
<div class="col-xs-12">
<nav class="menu-catalog">
<ul>
<li class="has-submenu has-catalog"><a href="#">Каталог</a></li>
<li><a href="{$_modx->makeUrl(1844)}">Бренды</a></li>
<li class="has-submenu"><a href="{$_modx->makeUrl($_modx->resource.id)}">Покупателю</a>
{$_modx->runSnippet('!pdoMenu', [
1
00:00:00,000 --> 00:00:23,042
alright everyone I do it so it's ok so
she asked me to talk at Larkin goes to
2
00:00:23,042 --> 00:00:28,064
the last year was obliged i enjoy to
throw out hope some of you that reappear
@alroniks
alroniks / code.mdx
Created November 28, 2015 16:48
Get resources by resource group

[[!pdoResources? &tpl=@INLINE {{+id}} {{+pagetitle}} &select={"modResource":"id,pagetitle"} &parents=0 &leftJoin={ "modResourceGroupResource": {"on":"modResourceGroupResource.document = modResource.id"}, "modResourceGroup": {"on":"modResourceGroup.id = modResourceGroupResource.document_group"} } &where={"modResourceGroup.name":"test"} ]]

@alroniks
alroniks / eventStartFinish.php
Created December 10, 2015 18:19
Устанавливает дату начала и окончания события на аналогичное значение в другом поле. Если задана дата начала, и не задана дата финиша, выставляет дату финиша равной дате начала и наоборот. Так же следит за тем, чтобы дата начала не была позже даты финиша.
<?php
switch ($modx->event->name) {
case 'OnDocFormSave':
if ($resource->get('template') === 5) { // event
$start = $resource->getTVValue('event.start');
$finish = $resource->getTVValue('event.finish');
if ($start && $finish) { // o both empty or both filled, that means OK
return;
}
<?php
// обрабатываем только события OnPageNotFound, на случай, если отметили галкой и другие в настройках плагина
if ($modx->event->name != 'OnPageNotFound') {
return false;
}
// на случай, если у нас настройки кто-то менял, получаем значение переменной, через которую передаются ссылки в modx от веб-сервера
$alias = $modx->context->getOption('request_param_alias', 'q');
<?php
$str = 'fD3_';
$chars = array_merge(range('a', 'z'), range('A', 'Z'), range('0', '9'), ['_']);
$total = 0;
$brut = '';
$len = strlen($str);
/**
* @see: https://www.programmingalgorithms.com/algorithm/brute-force?lang=PHP
*/
@alroniks
alroniks / db
Created December 6, 2016 20:50
Server maintenance scripts
#!/bin/bash
flag=5
if [ ! $1 ]; then
echo "Set user name for connect to mysql"
let flag=flag-1
fi
if [ ! $2 ]; then