Всего 123 773 комментария

Руслан Алеев
14 декабря 2023, 14:55
0
Вам нужно скопировать тему админки (которая default в templates/default), переименовать ее и в системной настройке manager_theme указать свою новую тему, с исправленным login.tpl
Дмитрий
14 декабря 2023, 14:41
0
да, если править manager/templates/default/security/login.tpl, то после обновления он перезаписывается
Дмитрий
14 декабря 2023, 14:41
0
я хочу изменить внешний вид страницы авторизации, для этого нужно править manager/templates/default/security/login.tpl, который перезаписывается при обновлении
Евгений
14 декабря 2023, 09:28
0
На последний вопрос можно внимания не обращать — туплю. Размещение формы на странице решается правкой шаблонов обоих контроллеров.
Андрей
13 декабря 2023, 23:33
0
может есть мысль какая?)
Андрей
13 декабря 2023, 19:57
0
Добрый день! Возможно с помощью этого плагина блокировать подсеть?
Володя
13 декабря 2023, 18:07
+1
Недавно же тоже самое было modx.pro/help/24407#comment-141536
Откройте сниппет msProduct и по аналогии сделайте.
Владимир
13 декабря 2023, 16:35
+1
Проблема неработающего компонента в том, что в
core/components/currencyrate/model/currencyrate/mysql/crlist.map.inc.php
и
core/components/currencyrate/model/schema/currencyrate.mysql.schema.xml
у строковых полей (dbtype = varchar) стоит phptype = varchar, а должен стоять string
Кровельный
13 декабря 2023, 16:19
0
В феноме чанка tpl.yandexMaps надо заменить счетчик.
{include ++$count}
на
{var $count = ++$count}
Евгений
13 декабря 2023, 14:45
0
Вы уж простите настойчивость, но вот чтобы вообще все вопросы снять такая еще задача — воткнуть эту форму в середину контента, который выводится контроллером officeAuth, то есть все таки вызвать officeProfile из шаблона tpl.Office.auth.logout — такое в принципе возможно?
Евгений
13 декабря 2023, 14:31
0
ура! заработало!!! спасибо за терпение.
Для тех, кто с этим же столкнется, внимательно читаем документацию к контроллеру, а именно параметр &requiredFields
Список обязательных полей при редактировании. Эти поля должны быть заполнены для успешного обновления профиля. Например, &requiredFields=`username,fullname,email`
В моем случае дефолтный список менять не стал, просто добавил в шаблон формы эти поля в скрытых:
<form method="post" id="office-profile-form" enctype="multipart/form-data" class="form_db mb-4 row align-items-center">
    <input type="hidden" name="username" value="{$username}"/>
    <input type="hidden" name="fullname" value="{$fullname}"/>
    <input  type="hidden" name="email" value="{$email}"/>
	<label for="extended.video">Ссылка на видео</label><input type="text" size="20" name="extended[video]" value="[[+extended.video]]" class="ml-3" />    	
	<button type="submit">сохранить</button>
</form>
Володя
13 декабря 2023, 10:56
0
ответ от коннектора в консоли браузера посмотрите!
например на данном сайте запрос joxi.ru/52aJly3hEMj5NA
ответ joxi.ru/823go4Df9PvdG2
вот при нажатии кнопки сохранить в обновлении профиля что у вас отправляется и что приходит в ответ от сервера?
Евгений
13 декабря 2023, 09:57
0
в 2-х браузерах смотрю в консоли — не вижу ошибок. Дело в том что я не очень то программист, очень начинающий, поэтому то и купил платное приложение. Предлагаю мучительный процесс обучения на собственных ошибках уже завершить и ткнуть носом в косяк. Пожалуйста!
Володя
13 декабря 2023, 09:42
0
А вопрос все тот же
после нажатия кнопки сохранить какой ответ от коннектора? В консоли браузера посмотрите.
вот уверен на 100% что там помимо сообщения с ошибкой есть данные о том чего не хватает.
Евгений
13 декабря 2023, 09:36
0
Осознание благодаря действенной терапии Володи приходит, допер что надо вызывать officeProfile после officeAuth, сейчас в личном кабинете имеем:
[[!officeAuth? &groups=`Users` &HybridAuth=`0` ]]
[[!officeProfile? &profileFields=`extended[video]` &tplProfile=`tpl.Office.addvideo.form`]]
Такая конструкция выдает панельку с ошибкой «Ошибка при обновлении профиля»
Код шаблона
<form method="post" id="office-profile-form" enctype="multipart/form-data" class="form_db mb-4 row align-items-center">
	<label for="extended.video">Ссылка на видео</label> <input type="text" size="20" name="extended[video]" value="[[+extended.video]]" />    	
	<button type="submit">сохранить</button>
</form>
Где я опять косячу?
Артур Шевченко
12 декабря 2023, 21:29
0
Я просто сказал, что есть альтернатива)))
Игорь
12 декабря 2023, 19:16
0
Спасибо большое. Вы, как всегда, очень помогли (это если «мягко выражаясь», а реально решили мою проблему).
Александр
12 декабря 2023, 16:36
0
экспериментальным путем

{foreach $options as $option}
{* "свежесозданные" опции выводят длину массива 1 при невыбранном значении *}
{* костыль для того, чтобы не пересохранять товары *}

{var $empty}
{foreach $option.value as $val}{$val}{/foreach}
{/var}

{if $empty}
    <div>
        <label ><span>{$option.caption}:</span></label>
        <div>
            <span>
                {if $option.value is array}
                    {$option.value | join : ', '}
                {else}
                    {$option.value}
                {/if}
            </span>
        </div>
    </div>
{/if}
{/foreach}