Skip to content

Instantly share code, notes, and snippets.

@eonarik
eonarik / getdata.class.php
Last active April 7, 2019 16:24
modx processor web/resources/getdata
<?php // v. 2.0.2
require_once dirname(dirname(dirname(__FILE__))).'/site/web/resources/getdata.class.php';
class modWebResourcesGetdataProcessor extends modSiteWebResourcesGetdataProcessor {
public function initialize(){
$this->setDefaultProperties(array(
'cache' => true, // Use cache
'cache_lifetime' => 3600, // cache seconds
@eonarik
eonarik / turbo.html
Last active July 27, 2019 08:01
yandex turbo
requred pdoTools, phpthumbon, jevix
<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:yandex="http://news.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/" xmlns:turbo="http://turbo.yandex.ru" version="2.0">
<channel>
<title>[[++site_name]]</title>
<link>[[++site_url]]</link>
<description>[[#[[++site_start]].description]]</description>
[[!pdoResources?
&parents=`0`
@eonarik
eonarik / functions.js
Last active December 20, 2018 19:32
js functions
const obj2get = function (obj) {
let data = []
for (let key in obj) {
let value = obj[key]
if (typeof value === 'object') {
assignValue(data, value, key)
} else {
data.push(`${key}=${value}`)
}
@eonarik
eonarik / get2obj.js
Created September 27, 2018 17:29
js $_GET to javascript object
// рекурсивное преобразование урл параметров в js object
const get2obj = function () {
let obj = {}
let gets = location.search.substring(1).split('&')
for(var i = 0; i < gets.length; i++) {
let parts = gets[i].split('=')
let keys = decodeURIComponent(parts.shift()).replace(/\[(.*?)\]/g, '.$1').split(/\./)
obj = assignValue({...obj}, keys, parts.join('='), 0)
@eonarik
eonarik / robokassaLink.snippet.php
Last active August 7, 2018 10:31
modx snippet robokassaLink
@eonarik
eonarik / finalParent.snippet.php
Created February 28, 2018 00:30
modx snippet finalParent
<?php
if (!isset($modx)) return '';
if (!function_exists('getParentIds'))
{
function getParentIds($id = 0, $depth = 9, $finalWhere = array('parent' => 0), $alias = 'modResource')
{
global $modx;
@eonarik
eonarik / fileInfo.snippet.php
Last active March 12, 2018 15:25
modx snippet fileInfo
<?php
// v1.0.1
$file = $modx->getOption('input', $scriptProperties, false);
$options = $modx->getOption('options', $scriptProperties, false);
if ($file)
{
$full_path = MODX_BASE_PATH . '/' . ltrim($file, '/');
list($key, $dop) = explode(':', $options);
switch ($key)
@eonarik
eonarik / modcaptcha_formit_hook.php
Created October 22, 2017 19:07
modCaptcha FormIt hook
<?php
$values = $hook->getValues();
if (empty($values['captcha']))
{
$hook->addError('captcha', 'Введите символы с картинки');
return false;
}
// modCaptcha Extra required. http://modx.com/extras/package/modcaptcha
@eonarik
eonarik / tvsCategory.snippet.php
Last active June 15, 2018 17:05
modx snippet out tvs in category
<?php
// v.1.0.2
// вывод тв полей из определенного раздела
$category = $modx->getOption('category', $scriptProperties, null);
$resourceId = $modx->getOption('resourceId', $scriptProperties, $modx->resource->id);
$limit = $modx->getOption('limit', $scriptProperties, 0);
$tvs = $modx->getOption('tvs', $scriptProperties, null);
$tpl = $modx->getOption('tpl', $scriptProperties, '');
var $galleryContainer = $('.js-gallery'),
$galleryNavConatiner = $('.js-gallery-nav'),
$galleryNavItem = $('.js-gallery-nav__item');
var $gallery = $galleryContainer.slick({
slidesToShow: 1,
slidesToScroll: 1,
arrows: false,
fade: true