Вопросы

Fenom в INLINE чанках

Помогите разобраться с синтаксисом. Так работает:
[[!msOptions?
                    &product=`[[+id]]`
                    &options=`size`
                    &tpl=`@INLINE 
                    {foreach $size as $value}
                        <div class='item'><input class='form-control hidden' type='radio' value='{$value}'><b>{$value}</b></div>
                    {/foreach}`
                ]]
Так тоже работает:
{$_modx->runSnippet('!msOptions', [
                    'product' => $id
                    'options' => 'size'
                    'tpl' => "@INLINE 
                        <div class='item'><input class='form-control hidden' type='radio' value='{$size[0]}'><b>{$size[0]}</b></div>"
                ])}
Павел
04 июля 2019, 12:41
modx.pro
1
2 095
0

Подключение SFTP в VS Code

При таких настройках в VSCode вылазит ошибка «Timeout while connecting to server», но с такими же настройками в SublimeText3 всё работает.

{
    "name": "web-dev",
    "host": "s9.link-host.net",
    "protocol": "ftp",
    "port": 22,
    "username": "username",
    "password": "password",
    "remotePath": "/www/",
    "uploadOnSave": true
}
Ervin
04 июля 2019, 12:33
modx.pro
1 616
0

Генерация цены на товар для сайта цветов.

Есть сайт по доставке цветов на minishop2, сейчас букеты это отдельные товары со своей ценой. Нужно сделать чтобы в админке букеты собирались из отдельных цветов. В админке выбирается базовый цветок(роза например) и указывается количество этих цветов, это все считается (цена базового цветка умножается на количество) и сохраняется.
Цена на одиночные цветы постоянно меняются и пересчитывать цены на 500+ букетов руками нет возможности.
Прошу совета как правильно это все сделать.
Александр
03 июля 2019, 15:20
modx.pro
790
0

Редирект на страницу после авторизации

Добрый день, сделал на сайте личный кабинет, вход типа сайт.рф/admin/
и в Контроле доступа у меня 3 группы пользователей.
у каждой группы пользователей доступ к просмотру только своих ресурсов. (Это уже сделано).

После авторизации, хочу сделать автоматический редирект на ресурс.
сейчас у меня так в форме входа:
[[!Login? &loginTpl=`lgnLoginTpl` &errTpl=`lgnErrTpl` &loginResourceId=`15`]]
, где 15 это вот один ресурс для первой группы юзеров.

Зашли под группой юзеров 1 — редирект на страницу 1
Зашли под группой юзеров 2 — редирект на страницу 2
Зашли под группой юзеров 3 — редирект на страницу 3
Игорь
03 июля 2019, 11:30
modx.pro
1 375
0

mSearch2 какой код демо формы https://minishop2.com/search/simple??

Задаю наверное очень глупый вопрос, но какой код-реализация демо формы на сайте в теме? Точнее нужен вот этот вариант поиска — i.imgur.com/TgQP7w1.png
Саша
03 июля 2019, 03:42
modx.pro
594
-2

php5 >> php7

Приветствую))
помогите пожалуйста… я уже 4 дня голову ломаю…
<?php
	$modx->runSnippet('db');
	
	$Data = '[[$repDBform]]';
	if (isset($_POST['login'])) {
			$Link = MySQL_Connect($DBHost, $DBUser, $DBPassword) or die ("Cannot connect to the MySQL database");
			MySQL_Select_Db($DBName, $Link) or die ("Database ".$DBName." do not exists.");
			
			$Login = $_POST['login'];
			$Pass = $_POST['passwd'];
			$Repass = $_POST['repasswd'];
			$Email = $_POST['email'];
			
			$Login = StrToLower(Trim($Login));
			$Pass = StrToLower(Trim($Pass));
			$Repass = StrToLower(Trim($Repass));
			$Email = Trim($Email);

			
		if (empty($Login) || empty($Pass) || empty($Repass) || empty($Email)) {
		    echo "Все поля должны быть заполнены.";
		} elseif (preg_match("/[^0-9a-zA-Z_-]/", $Login, $Txt)) {
				echo "<p>Логин может содержать только цифры, буквы, тире и подчеркивания..</p>";
		} elseif (preg_match("/[^0-9a-zA-Z_-]/", $Pass, $Txt)) {
				echo "<p>Пароль может содержать только цифры, буквы, тире и подчеркивания.</p>";	
		} elseif (preg_match("/[^0-9a-zA-Z_-]/", $Repass, $Txt)) {
				echo "<p>Пароль может содержать только цифры, буквы, тире и подчеркивания.</p>";	
		} elseif (StrPos('\'', $Email)) {
				echo "<p>Адрес электронной почты введен неправильно.</p>";
		} elseif ((StrLen($Login) < 4) or (StrLen($Login) > 10)) {
				echo "<p>Логин должен содержать от 4 до 10 символов.</p>";
		} elseif ((StrLen($Pass) < 4) or (StrLen($Pass) > 10)) {
				echo "<p>Пароль должен содержать от 4 до 10 символов.</p>";
		} elseif ((StrLen($Repass) < 4) or (StrLen($Repass) > 10)) {
				echo "<p>Пароль должен содержать от 4 до 10 символов.</p>";
		} elseif ((StrLen($Email) < 4) or (StrLen($Email) > 25)) {
				echo "<p>Адрес электронной почты должен быть больше 4 символов и меньше 25.</p>";
		} elseif ($Pass != $Repass) {
				echo "<p>Пароли отличаются.</p>";
		} else {
			//$salt2=$Login.'test22';
			//$salt2=md5($salt2);
			//$salt2="0x".$salt2;
    	
			$Result = MySQL_Query("SELECT name FROM users WHERE name='$Login' and `email`='$Email'") or ("Can't execute query.");
			if(MySQL_Num_Rows($Result)) {
				$Salt = $Login.$Pass;
				$Salt = md5($Salt);
				$Salt = "0x".$Salt;
				
				MySQL_Query("call changePasswd('$Login','$Salt')") or die ("Can't execute query.");
				echo "<p>Пароль учетной записи <b>".$Login."</b> успешно изменен.</p>";
			} else{
				echo 'E-mail или имя пользователя не существует!';
			}
		}		
	}
	echo $Data;
как это на MySQLi переписать?

я уже всё перепробовал…
Pavel
03 июля 2019, 01:22
modx.pro
911
0

MIGXdb, migxLoopCollection и mFilter2

Доброго времени суток.

Пытаюсь подружить mFilter2 и кастомную таблицу MIGXdb, вывожу так:
{'!mFilter2' | snippet : [
    'packageName' => 'ritual',
    'classname' => 'ritualWholesale',
    'filters' => 'wholesale|products',
    'element' => 'migxLoopCollection',
    'suggestionsRadio'=>'wholesale|products',
    'filterOptions'=>'{"autoLoad":0}',
    'showLog' => false,
    'tpl' => 'tpl.wholesale.firm',
    'tplOuter'=> 'tpl.mFilter2.outer.custom'
]}

На сайте:


Изначально создал кастомный фильтр и описал в файле, проблема в том, что сниппет почему-то берет ids как чанк…


Проверка на массив идентификаторов


А должен подставляться массив идентификаторов из MIGXdb таблицы. В чём может быть проблема, куда копать?
Кирилл Киселев
02 июля 2019, 20:38
modx.pro
1 069
0

Помогите с условием для гугла

Добрый день!
Возник вопрос по условию для гугла в шапке сайта (в тегах head)
Нужно прописать для поддоменов, для всех страниц следующий тег
<meta name="googlebot" content="noindex, nofollow">
Каким образом определить поддомен, чтобы составить условие?
Андрей
02 июля 2019, 18:30
modx.pro
673
0

Проблема "id" в minishop2

Всем привет!

Есть рабочий сайт. Захожу под администратором «пакеты>minishop2>настройки» во вкладке «Производители товаров» указаны условно два производителя:
id: 1 имя: производитель №1
id: 2 имя: производитель №2

Также на веб странице указана категория производителя «нет», которой нет в вышеуказанном списке. При добавлении категории производитель №3 id=4, номер id не меняется. Если удалить производителя, и добавить заново производителя №3 id=5 и так далее.
Собственно вопрос — как установить «производителя №3» с id=3 (изменить номер Id или обнулить), чтобы он в списке на сайте был между производителем №2 и «нет» (производителя). Просьба объяснить как для «Чайника», в MODX я новичок, как и в программировании.

Заранее спасибо!
Иван
02 июля 2019, 09:08
modx.pro
545
0