Павел Романов

Павел Романов

С нами с 03 марта 2014; Место в рейтинге пользователей: #70
Павел Романов
11 июля 2016, 13:23
0
Попробуйте в плагине на 17 строке заменить:
$date = time();
на:
if($resource->editedon != 0){
    $date = $resource->editedon;
} else {
    $date = $resource->createdon;
}
Павел Романов
10 июля 2016, 14:49
+1
Поставьте пробелы:
[ [ ..... ] ]
Павел Романов
10 июля 2016, 14:43
+1
[[!+modx.user.id:memberof=`Administrator`:then=`.........`:else=`.........`]]
Павел Романов
10 июля 2016, 14:07
1
+1
Добрый день.
Например, так:
[[!+modx.user.id:is=`0`:then=`Контент для анонимов`:else=`Контент для залогиненных`]]
Павел Романов
10 июля 2016, 13:41
0
Допустим, у Вас домен site.ru.
Попробуйте в вызове указать параметр:
[[!FormIt?
&hooks=`email`
&emailTpl=`letterZvonok.sent`
&emailSubject=`Message`
&emailTo=`me@myemailaddress.com`
&emailFrom=`info@site.ru`
]]
Павел Романов
09 июля 2016, 20:17
0
Попробуйте указать явно &emailFrom, причем, с тем же доменом, что и сайт.
Павел Романов
06 июля 2016, 13:48
2
+2
Да, только в Revo их лучше прописывать не так:
[[*id:is=`15`:then=`[[$chunk]]`]]
а так:
[[$[[*id:is=`15`:then=`chunk`]]]]
Это из-за того, что парсер сначала выполняет все чанки на странице, а потом только выводит нужные в соответствии с условиями.
Во втором же варианте будут обработаны только текстовые строки и пустые [[$]], если условие не выполнено.

Но если используете Fenom, то можно не извращаться, поскольку там парсер работает по-другому:
{if $_modx->resource.id == 15}{$_modx->getChunk('chunk')}{/if}
Павел Романов
06 июля 2016, 11:50
+1
1. У человека Evolution — там именно [*content*]
2. Для вывода по условиям нужно поставить PHx.
Павел Романов
05 июля 2016, 19:03
+2
Ну вообще-то конечно сниппет — самое оптимальное для таких вложенностей.
Но если стоит pdoTools и выводите соответствующими инструментами, то попробуйте Fenom использовать:
{var $av = $_pls['tv.aviable']}
{if $av == 0}
	Нет в наличии
{else}
	{if $av > 1 && < 10}
		<i class="fa fa-circle"></i>
	{else}
		{if $av >= 10 && < 30}
			<i class="fa fa-circle"></i> <i class="fa fa-circle"></i>
		{else}
			{if $av >= 30}
				<i class="fa fa-circle"></i> <i class="fa fa-circle"></i> <i class="fa fa-circle"></i>
			{/if}
		{/if}
	{/if}
{/if}
Вроде, нигде не ошибся ))
Павел Романов
05 июля 2016, 16:17
0
Попробуйте так:

<?php
$tip_poddonov = $hook->getValue('tip_poddonov');
$maxweight = $hook->getValue('maxweight');
$q = count($tip_poddonov);
$count = 0;
while($count < $q){
    $string .= '<b>Тип поддонов для грузов:</b> '.$tip_poddonov[$count].'<br /><b>Макс. вес груза на палете, кг:</b> '.$maxweight[$count].'<br /><br />';
    $count++;
}
$modx->setPlaceholder('all', $string);
return true;
Павел Романов
04 июля 2016, 17:24
+2
Системная настройка tree_default_sort.
Павел Романов
03 июля 2016, 18:04
0
Ну и славненько ).
Вообще, IMHO, если вывод чуть хитрее стандартного (несколько вкладок у формы, зависимые TV, запросы, подобные Вашему), лучше всегда конфигурации использовать — там, кстати, и возможностей больше.
Павел Романов
03 июля 2016, 17:15
0
1. Если вывести на какой-нибудь странице:
[[Snippet? &id=`1`]]
Что-то выводит?

2. И сделайте, все же, через конфигурацию.
Павел Романов
03 июля 2016, 16:38
0
Я сейчас проверил — работает. Сделайте конфигурацию — таким образом Вы избегнете ошибок.
Например, эта строка, как минимум, должна быть такой:
{"header":"Альбом", "sortable":"false", "dataIndex":"albumname", "renderer": "this.renderChunk", "renderchunktpl":"[[Snippet? &id=`[[+album]]`]]"}
Павел Романов
03 июля 2016, 15:53
0
Да, сорри, это я не понял, что речь про админку.

Прежде чем писать свой, попробуйте сделать это MIGX-поле через конфигурацию.
Только для вывода в таблице назовите поле не album, а как-нибудь иначе, например, albumname.
У него в качестве ререндера выберите thisRenderChunk и в поле renderChunk template пропишите:
[[Snippet? &id=`[[+album]]`]]
Павел Романов
03 июля 2016, 11:18
0
Можно сделать сниппет по мотивам этого:

<?php
if(empty($id)) return '';
$table = 'modx_gallery_albums';
$sql = "SELECT `name` FROM `$table` WHERE `id` = $id";
$query = new xPDOCriteria($modx, $sql);
if ($query->prepare() && $query->stmt->execute()){
    $res = $query->stmt->fetchAll(PDO::FETCH_ASSOC);
    foreach ($res as $row){
        $out = $row['name'];
    }
} else {
    $out = "Ошибка";
}
return $out;

И вызывать его так:
[[Snippet? &id=`[[+album]]`]]

А можно поставить Rowboat и вызывать так:
[[Rowboat?
   &table=`modx_gallery_albums`
   &tpl=`album-name`
   &where=`{"id":"[[+album]]"}`
]]

Чанк «album-name»:
[[+name]]
Павел Романов
01 июля 2016, 12:14
0
У Вас что этот [[+results] выводит?
Павел Романов
01 июля 2016, 11:53
0
А так работает?
<fieldset id="mse2_[[+table]][[+delimeter]][[+filter]]">
	<span>Сортировать по формату:</span>
	[[+rows]]
</fieldset>
Павел Романов
01 июля 2016, 11:39
1
+1
У Вас дата в базе хранится в виде 2016-07-01 03:00:00, а Вы пытаетесь фильтровать по дате в Unix-формате.
Если в лоб, то решение следующее:
1. Сделать еще одно поле timeUnix типа текст.

2. Сделать плагин на событие OnDocFormSave, который будет брать дату из поля timeEvent, переводить ее в нужный формат и записывать в поле TV timeUnix:
<?php
$res = $modx->getObject('modResource', $id);
$date = $res->getTVValue('timeEvent');
if(empty($date)) return '';
$time = strtotime($date);
$res->setTVValue('timeUnix', $time);

3. Выборку в pdoResources cделать уже через этот новый TV:
&where=`{"timeUnix:>=,<=:AND":[1467331200,1498867200]}`
Павел Романов
30 июня 2016, 15:36
+1
Вы пытаетесь получить значение поля из формы, да еще и без указания самого поля)).
Вам же нужно записать значение в плейсхолдер:
$hook->setValue('allFormFields','тут_то_что_нужно записать');