Вопросы
Пустое поле в фильтре YandexMaps

Подскажите, почему слева пусто?
Вывожу вот так:
[[!yandexMaps?
&tvCoords=`coords`
&zoom=`10`
¢erCoords=`59.945648, 30.315868`
&checkZoomRange=`0`
&fieldForBalloonContent=`pagetitle`
&markerPresetFieldText=`pagetitle`
&showMoreLink=`true`
&showMoreLinkTpl=`mapBalloon`
&styleMapBlock=`width:100%; height:60vh;`
&styleFiltersBlock=`display:none;`
&objectsTypesJSON=`[
{
"Buildings": {
"parent":"2",
"preset":"islands"
}
}
]`
]] [РЕШЕНО] $modx->newQuery получить значение TV зная id документа
Добрый вечер. По некоторым причинам нет возможности использовать конструкцию $modx->getObject, но существует еще $modx->newQuery
Как через данный запрос получить значение TV зная id документа?
Спасибо за ответы!
UPD
В моем случае решение выглядит так
Как через данный запрос получить значение TV зная id документа?
Спасибо за ответы!
UPD
В моем случае решение выглядит так
<?php
switch ($modx->event->name) {
case 'msOnGetProductPrice':
$values = & $modx->event->returnedValues;
if (isset($values['price'])) {
$price = $values['price'];
}
$parent = $product->get('parent');
$q = $modx->newQuery('modTemplateVar');
$q->leftJoin('modTemplateVarResource', 'modTemplateVarResource', 'modTemplateVarResource.tmplvarid = modTemplateVar.id');
$q->where(array('modTemplateVar.name' => 'day', 'modTemplateVarResource.contentid' => $parent));
$q->select('modTemplateVarResource.value');
if ($q->prepare() AND $q->stmt->execute()) {
$sale_day = (string)$modx->getValue($q->stmt);
if (date("N") == $sale_day) {
$q = $modx->newQuery('modTemplateVar');
$q->leftJoin('modTemplateVarResource', 'modTemplateVarResource', 'modTemplateVarResource.tmplvarid = modTemplateVar.id');
$q->where(array('modTemplateVar.name' => 'percent', 'modTemplateVarResource.contentid' => $parent));
$q->select('modTemplateVarResource.value');
if ($q->prepare() AND $q->stmt->execute()) {
$sale_percent = (string)$modx->getValue($q->stmt);
$sale_percent = (100 - $sale_percent) / 100;
$price = preg_replace('/\s+/', '', $price);
$new_price = round($price * $sale_percent);
$values['price'] = $new_price;
}
}
}
break;
} Не приходят уведомления о заявках на почту
Резко перестали приходить уведомления о заявках на почту. Приходят только в 1С. ModX Evolution 1.1
В чем проблема?
В чем проблема?
Как правильно добавлять связи к кастомным объектам?
Всем привет.
Для проекта надо создать несколько кастомных пдо-объектов. С самими объектами проблем нет, а вот с их связями есть.
Как мне привязать свой объект к пользователю, чтоб потом можно было делать вот так:
Для проекта надо создать несколько кастомных пдо-объектов. С самими объектами проблем нет, а вот с их связями есть.
Как мне привязать свой объект к пользователю, чтоб потом можно было делать вот так:
$modx->user->getOne('myObject1') и так:$modx->user->getMany('myObject2')В схеме объекта я пишу <aggregate alias="User" class="modUser" local="user_id" foreign="id" cardinality="one" owner="foreign" />Достаточно ли этого, или надо каким-то образом модифицировать объект modUser, чтоб у него появилась симметричная связь, только composite? Если надо, то как? Появляются ссылки в поиске непонятные.
Всем привет, в поиске появляются ссылки типа такого (прикладываю скрин), сайт как и большинство был взломан в июне, но его чистили, но до сих пор появляются ссылки в поиске такие, таких директорий в сайте нет, может кто сталкивался с такой проблемой?
Проверка file со стороны сервера перед отправкой письма
Добрый день, не могу ни как разобраться почему у меня не до конца срабатывает условие. Вроде как делаю все по документации formit
создал валидатор «checkfile»
создал валидатор «checkfile»
<?php
$output = true;
$maxFileSize = 50 * 1024 * 1024;
$fileName = $_FILES[$key]['name'];
$fileSize = $_FILES[$key]['size'];
if ($fileName != '') {
if($fileSize > $maxFileSize) {
$validator->addError($key,'Размер файла превышает 50 Мб.');
$output = false;
}
}
return $output;вызываю форму [[!AjaxForm?
&snippet=`FormIt`
&form=`tpl.AjaxForm.example`
&hooks=`email`
&customValidators=`checkfile`
&emailSubject=`Сообщение с сайта [[++site_name]]`
&emailTo=`[[++emailsender]]`
&validate=`name:required,email:required,phone:required,files:checkfile`
&validationErrorMessage=`В форме содержатся ошибки!`
&successMessage=`Сообщение успешно отправлено`
]]и вот чанк самой формы<form action="" class="ajax_form af_example" enctype="multipart/form-data">
<div class="left">
<div class="group">
<input type="text" name="name" value="[[+fi.name]]" placeholder="Имя">
<span class="error_name">[[+fi.error.name]]</span>
</div>
<div class="group">
<input type="phone" name="phone" value="[[+fi.phone]]" placeholder="Телефон">
<span class="error_name">[[+fi.error.phone]]</span>
</div>
<div class="group">
<input type="email" name="email" value="[[+fi.email]]" placeholder="Электронная почта">
<span class="error_name">[[+fi.error.email]]</span>
</div>
<input type="file" id="file" name="files" value="[[+fi.files]]">
<label for="file" class="file">
<p>Прикрепить файл</p>
<p>не более 50 мб</p>
</label>
<p class="error_files">[[+fi.error.files]]</p>
</div>
<div class="right">
<textarea name="text" placeholder="Сообщение"></textarea>
<div class="range-slide">
<p class="title">Ваш бюджет</p>
<div id="slider" data-min="35000" data-max="400000"></div>
<div class="numbers">
<span id="input-with-keypress-2"></span>
<p>–</p>
<span id="input-with-keypress-3"></span>
<input type="text" id="input-with-keypress-0" name="price_from" value="1000000">
<input type="text" id="input-with-keypress-1" name="price_to">
</div>
</div>
<button type="submit">Отправить</button>
<p>Нажимая на кнопку «Связаться», я даю согласие на обработку персональных данных, как описано в «<a href="#">Соглашении об использовании сайта</a>»</p>
</div>
[[+fi.success:is=`1`:then=`
<div class="alert alert-success">[[+fi.successMessage]]</div>
`]]
[[+fi.validation_error:is=`1`:then=`
<div class="alert alert-danger">[[+fi.validation_error_message]]</div>
`]]
</form>при отправки формы с файлом превышающим 50мб поля становиться не активными и больше ни чего не происходит, сообщение об ошибке не выскакивает. Подскажите пожалуйста что я сделал не так) Прошу подсказать как правильно импортировать товары через встроенный скрипт minishop2
Я не часто пользуюсь CMS но недавно решил выбрать ModX в качестве платформы для интернет магазина. Сам магазин сверстал и html и прочее на ModX натянул. Сейчас у меня есть csv файл с несколькими тысячами строк данных о товарах: заголовок(title), цена(price), картинки(от 1 на товар до 6)(img) и описание(description). Я знаю что есть скрипт Василия Наумкина, знаю что им много кто пользуется, но я не понимаю как происходит процесс от начала до конца.
Можете пожалуйста сказать, как происходит весь процесс импорта.
P.S. Не кидайтесь тапками pls
Можете пожалуйста сказать, как происходит весь процесс импорта.
P.S. Не кидайтесь тапками pls
[РЕШЕНО] miniShop2. Связи товаров, вывод с условием, Fenom
Подскажите, пожалуйста, как правильно указать переменную условия наличия у товара связанных товаров?..
Вызываю Связанные товары с условием:
Вызываю Связанные товары с условием:
{if ***************}
<h3>Сопутствующие товары:</h3>
{'!pdoPage@Bootstrap4' | snippet : [
'element' => 'msProducts',
'tpl' => 'tpl.msProducts.row',
'parents' => '2',
'link' => '1',
'limit' => '5',
'master' => $_modx->resource.id,
]}
{/if}Решение:{var $links = '!pdoPage@Bootstrap4' | snippet : [
'element' => 'msProducts',
'tpl' => 'tpl.msProducts.row',
'parents' => '2',
'link' => '1',
'limit' => '5',
'master' => $_modx->resource.id,
'showlog' => 1
]}
{if $links?}
<h3>Сопутствующие товары:</h3>
<div class="card-deck">
<div class="row justify-content-around">
{$links}
</div>
</div>
{'page.nav' | placeholder}
{/if} Как через плагин внести изменения в поле content?
Какое событие нужно брать?
<?php
if ($modx->event->name == 'OnLoadWebDocument') {
$content = str_replace(' src='," data-src=",$content);
}