Вопросы

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

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

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

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

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

Задаю наверное очень глупый вопрос, но какой код-реализация демо формы на сайте в теме? Точнее нужен вот этот вариант поиска — i.imgur.com/TgQP7w1.png
Саша
03 июля 2019, 03:42
modx.pro
625
-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
958
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 130
0

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

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

Вывод категории 1го уровня + фильтрация по товарам mFilter2

Приветствую, существует структура такого вида…

Дмитрий Середюк
01 июля 2019, 23:51
modx.pro
1 436
+1

n товар бесплатно. Minishop2

Подскажите решение, как реализовать, при покупке 10 товаров, 1 бесплатно.
За ранее благодарен!
Дмитрий
01 июля 2019, 23:45
modx.pro
987
0

Интеграция mspPSB с АТОЛ + ОФД Контур

Добрый день.
Интересует как реализовать интеграцию mspPSB с АТОЛ + ОФД Контур, или если АТОЛ не нужен — то с ОФД Контур.
В цели хотелось бы знать что необходимо для реализации интернет-платежей на сайте. Эту заметку читал: modx.pro/store/12791
Из нее понял что нужно: касса (АТОЛ Онлайн) + ОФД (Контур). А вот для приема платежей на сайте нужен эквайринг. Банк у нас Промсвязь и как раз вовремя подоспел необходимый компонент mspPSB, но в документации написано что пока только умеет работать с «ЧекОнлайн». В приницпе мы готовы пользоваться и этим сервисом, как альтернатива, если не получится интегрировать с ОФД Контур
Андрей
01 июля 2019, 10:28
modx.pro
953
0

Настройка Турбо страниц для Яндекса (Готовое решение)

Долго разбирался как настроить Турбо страницы для Яндекса. Много разного мануала нашел, в итоге решил поделиться тем, что у меня получилось. Не судите строго.
Может кто-то что-то подскажет, как реализовать проще или что-то улучшить. Может кому-то помогут мои наработки.
Рейтинга не хватило разместить в разделе Готовые решения или Пошаговые инструкции, оставляю в Вопросах.
Андрей Шевяков
30 июня 2019, 15:45
modx.pro
12
10 566
+2