Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 147 комментариев

Павел Левин
Павел Левин
А планируется ли передача класса через параметр для шаблона tplWrapper?, а то там зашит «breadcrumbs» и делать другой чанк ради класса, не знаю…

и еще вопрос, как заменить стрелочку (которая меж ними)?
Василий Наумкин
Василий Наумкин
Павел Левин
Павел Левин
Спасибо.

Выводжу так:
[[!pdoCrumbs? &limit=`2` &showCurrent=`1` &from=`[[+parent]]`]]
получаю пустоту.

Еще выводил:
[[!pdoCrumbs? &limit=`2` &showCurrent=`1` &from=`[[+id]]`]]
собственно без изменений, пусто.

Подскажите пример. Я вывожу данные на главной странице, последние новости/изменения.
Василий Наумкин
Василий Наумкин
Тогда нужно было смотреть родной MODXывый /user/update.class.php. Вот код оттуда:
public function setUserGroups() {
	$memberships = array();
	$groups = $this->getProperty('groups',null);
	if ($groups !== null) {
		$primaryGroupId = 0;
		/* remove prior user group links */
		$oldMemberships = $this->object->getMany('UserGroupMembers');
		/** @var modUserGroupMember $membership */
		foreach ($oldMemberships as $membership) { $membership->remove(); }

		/* create user group links */
		$groupsAdded = array();
		$groups = is_array($groups) ? $groups : $this->modx->fromJSON($groups);
		$idx = 0;
		foreach ($groups as $group) {
			if (in_array($group['usergroup'],$groupsAdded)) continue;
			$membership = $this->modx->newObject('modUserGroupMember');
			$membership->set('user_group',$group['usergroup']);
			$membership->set('role',$group['role']);
			$membership->set('member',$this->object->get('id'));
			$membership->set('rank',isset($group['rank']) ? $group['rank'] : $idx);
			if (empty($group['rank'])) {
				$primaryGroupId = $group['usergroup'];
			}
			$memberships[] = $membership;
			$groupsAdded[] = $group['usergroup'];
			$idx++;
		}
		$this->object->addMany($memberships,'UserGroupMembers');
		$this->object->set('primary_group',$primaryGroupId);
	}
	return $memberships;
}
Олег Трубин
Олег Трубин
Да, Василий, я и раньше смотрел твой код HA и office. Более того, когда писал свой процессор create, «стянул» у тебя этот метод. И в create пользователь в группы нормально добавляется. А вот в update почему-то нет, хотя ошибок никаких не выдаёт.
Василий Наумкин
Василий Наумкин
Держи новую версию pdoTools — там добавлен сниппет pdoCrumbs, который выводит родителей от указанного ресурса.

Работает довольно быстро. Например у меня в поиске вывод навигации у каждой строки добавляет всего 0.15 — 0.2 сек для страницы.
Параметры примерно совместимы с BreadCrumb.

Потестируй, если все окей — буду выпускать.
Василий Наумкин
Василий Наумкин
Это у нас там не сделан вывод сообщений об ошибке каждого поля.

В консоле видно, что от сервера приходит
email:Этот адрес электронной почты уже используется!
То есть, ты уже занял свой email при авторизации через gmail.
Kirill Bedin
Kirill Bedin
В общем удалось зарегистрироваться с почтой на @inbox.ru. В кабинете при попытке поменять электронную почту на bedinkv@gmail.com — «Ошибка при обновлении профиля». Подозреваю, что всё это из-за первоначальной авторизации через G+.