0.00
705 читателей, 3309 топиков

PhpThumbOf почему не работает zoom-crope от верха (zc_T) [РЕШЕНО]

Всем привет
Почему может не работать вот такая структура
[!phpthumb? &input=`[+TV_PArametr+]` &options=`h_400,w_180,zc_T`!]


Так вот кроп с обрезкой от верха не работает. Работает дефолтно как и при zc_1

imagick — модуль установлен.

Что не так может быть?

[РЕШЕНО] Подсветка кода на сайте, исключение тегов Modx из обработки парсером

Здравствуйте.

Подскажите, есть какое-то готовое решение для подсветки кода во фронт-энде (+ кнопка в TinyMCE)?
Не получается найти.

___
Пока сделал так:
1. Для оформления примеров обычного кода (PHP, HTML, JS, ...) — использую решение отсюда

2. Для оформления примеров с вызовом специальных тегов ModX (чтобы их не обрабатывал парсер) — сделал так (взял код из Brackify):
Плагин на OnWebPagePrerender:

    $e = &$modx->Event;
    if ($e->name == "OnWebPagePrerender"){
        $page = $modx->documentOutput;
        $brackets = '[ (,) ],[ [,] ],[ !,! ],{ {,} },[ +,+ ],[ *,* ],[ ~,~ ]' ;
        $despaced = str_replace(' ','',$brackets);
        $search = explode(',',$brackets);
        $replace = explode (',',$despaced);
        $page = str_replace($search,$replace,$page);
        $kav = "'" ;
        $kavdespaced = str_replace("'",'`',$kav);
        $kavsearch = explode(',',$kav);
        $kavreplace = explode (',',$kavdespaced);
        $page = str_replace($kavsearch,$kavreplace,$page);
        $js = "(`,`)" ;
        $jsdespaced = str_replace("`","'",$js);
        $jssearch = explode(',',$js);
        $jsreplace = explode (',',$jsdespaced);
        $page = str_replace($jssearch,$jsreplace,$page);      
        $modx->documentOutput = $page;
        $modx->documentOutput = $page;
    }


При написании примера вызова (какого-нибудь сниппета, чанка или параметра):
  1. разделять пробелами все спецсимволы ( [ [, ] ] и т.д.),
  2. вместо символа ` — писать одинарную кавычку '


В принципе, уже достаточно.

[EVO] Wayfinder - вывод меню таблицей

Здравствуйте. Не могу найти информацию как вывести меню в таком виде:
<table width="100%">
			<tr>
				<td width="33.3%">
					<ul id="second-menu">
						<li></li>
					</ul>
				</td>
				<td width="33.3%">
					<ul id="second-menu">
							<li></li>
					</ul>
				</td>
				<td width="33.3%">
					<ul id="second-menu">
						<li></li>
					</ul>
				</td>
			</tr>
		</table>

Понятно что надо создать шаблон, но он выведет все ссылки, а есть ли возможность чтобы он выводил 1/3 меню в каждом столбце, не прибегая к SQL запросам?
Заранее спасибо

MODX и Nginx какой конфиг правильней

С учетом что все больше и больше серверо на Nginx то хотелось бы выбрать оптимальный конфиг для него:

В офф документации предлагают вот такое решение:

location / {
        root /home/sites/example.com;
        if (!-e $request_filename) {
            rewrite ^/(.*)$ /index.php?q=$1 last;
        }
    }

но встречаль на сайтах что использование if есть костыль и не очень грамотное решение, после еще небольшого поиска нашел такой вариант:

location / {
        #try to get file directly, try it as a directory or fall back to modx
        try_files $uri $uri/ @modx;
    }
 
    location @modx {
        #including ? in second rewrite argument causes nginx to drop GET params, so append them again
        rewrite ^/(.*)$ /index.php?q=$1&$args;
    }

но так как сам не очень хорошо владею вопросом то хотел спросить может кто обьяснит разницу этих конфигов или предложит еще какой оптимальный вариант

p.s. Для редиректа с WWW на без WWW и наоборот можно использовать вот такой вариант:

server {
    listen 80;
    server_name www.example.com;
    return 301 $scheme://example.com$request_uri;
}

server {
    listen 80;
    server_name example.com;
    ## here goes the rest of your conf...
}

[EVO] eForm проверка без перезагрузки

Здравствуйте! Возникла такая проблема.
Есть форма простая с двумя полями Имя и Сообщение, изначально она скрыта с помощью jscript, нажимаешь кнопку и она вылазит снизу. Всё работает кроме одного — проверки данных. Сама по себе она работает, но в eForm ошибки показывает после перезагрузки страницы, соответственно пользователь ничего не ввёл, нажал отправить, страница ребутнулась и форма спряталась опять за кнопку, и пользователь не видит ошибок. Если вводит всё верно то всё норм. Как сделать на еформе чтобы страницы не перезагружалась, а сразу вылазили ошибки, пробовал подключить jQuery Validate, он срабатывает но форма все равно отправляется)) ajaxSubmit не канает т.к. на хостинге нет Zend. Как сказать eForm что не нужно перезагружать страницу?

[EVO] Помощь MultiPhotos

Уважаемы гуру, нужна помощь, как вывести сразу 3 вызова MultiPhotos на странице и чтоб они были разные, на сайте есть верхний баннер, слайдер + партнеры, в вызове указываю &tvname=`имя tv` не срабатывает, в плагине указываю через запятую созданные tv параметры, на другой странице у меня даже 9 вызовов MultiPhotos есть, подскажите, срочно нужно,
Спасибо заранее

[EVO] Как обработать фильтрацию Ditto с помошью Ajax?

Добрый день.
Возникла задача фильтрации списка товаров без перезакрузки страницы. Облазил интернет в поисках каких либо решений но так и ненашел подходяшего решения. В Ajax я не селен, да и в програмировании новичек. Поэтому обращаюсь к более опытным людям кто сталкивался с даными задачями.
Задача такова. Я передаю значения методом GET, меня перекидывает на страницу обработки где все фильтрует замечательно. Но появилась задача, на странице отображения результатов есть отдельный блоке фильтрация чекбоксами по 8 параметрам. При выборе которого без перезагрузки страницы должно фильтровать из результатов поиска. Как можно это реализовать? Подскажите пожалуйста.

[EVO] Свои php функции для фильтрации: EVAL, FUNCTION

Есть такая задача:
Пользователь, предположим для простоты, что участник лотереи, вводит passcode в eform. При отправке делается запрос в базу mysql и сверяется с имеющимися passcode (их туча), если он есть, у него берётся параметр и в зависимости от того, к какой категории относится код, контактные данные пользователя отправляются на разные мейлы. Хочетцо пошутить, что на рандомные, но я и так путано объясняю.
В общем как это сделать в eform?
function pass_verif ($pass, $modx) {
$sql_out = «SELECT `value` FROM `pass` »;
$rs = $modx->db->query($sql_out);
$row = $modx->db->getColumn('value',$rs);

if(in_array($pass, $row)) return true;
else return false;
}
Возвращает тру-фолс.
Ставлю его над вызовом eform, в шаблоне формы — eform="::1: Извините, нет такого кода:#EVAL return true;
В eform добавил в вызов eform &eFormOnBeforeMailSent=`pass_verif` Т.к. я получил ошибку, я сто-то делаю не так.
Я ковырял код на основе топиков в старом сообществе. Кто делал?
В документации понял, что он просто есть EVAL и FUNCTION, которому можно как-то вписать свою функцию, но как оно делается?

[EVO] Вызов парсера через Modx Api

Не отрабатывает сниппет внутри чанка. Как можно напрямую вызвать парсер? или есть другое решение.

Вызываю Ditto

$res = $modx->runSnippet('Ditto', array( 'parents' => '16,17', 'tpl' => 'tov-items', 'filter' => $filter));


внутри tov-items есть вызов сниппета if, который соответственно не обрабатывается, а очень хотелось бы.

PS: всё это дело вызывается ajax-м bezumkin.ru/sections/javascript/39/