Регистрация
Вход через соцсети
Восстановление пароля

Регистрация пользователя.

Новый топик
Страницы: 1  |  2
07.04.2010, 15:35
Ответить | Цитировать
Гость
Гость

Как сменить HTMLкод в регистрации пользователя? (Netcat 3,5)
08.04.2010, 01:46
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Меню Разработка - Системные таблицы - Пользователи - Добавление (шаблоны действий). Если ссылки добавления нет, то у вас не установлен модуль "Интерфейс пользователя"

Temet nosce...
08.04.2010, 11:26
Ответить | Цитировать
Гость
Гость

Альтернативная форма добавления объекта textarea пустая.
08.04.2010, 12:38
Ответить | Цитировать
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

ссылка - сгенерировать код формы
09.04.2010, 10:39
Ответить | Цитировать
Гость
Гость

Спасибо. А как быть есть нужен двуязычный сайт? Русский и английский, а компонент только на одном разделе.
09.04.2010, 11:03
Ответить | Цитировать
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

про организацию многоязычный написано здесь Ссылка

Саму форму вы можете выводить через разнообразные проверки, к примеру если она должна быть в разных разделах с разным дизайном в альтернативной форме добавления пишем.

Код:
".($sub==95?" код формы для раздела с id 95 ": NULL )."

".($sub==96?" код формы для раздела с id 96 ": NULL )."


Если нужно то добавляем проверки в условие добавления объекта и действие после добавления
Код:

if ($sub==95){
.......
}


точно так же и с многоязычный вставляйте соответствующие проверки и в зависимости от языка выводите нужный контент.
12.04.2010, 10:34
Ответить | Цитировать
Гость
Гость

Логин, то еще полбеды. А вот с регистрацией ваш пример не сработает. Текущий раздел будет не 95 или 96, а раздел с регистрацией. Следовательно надо отлавливать реферер, но что если пользователь вошел сразу на страницу или не с текущего сайта? Как определить какой ему нужен язык?
12.04.2010, 14:57
Ответить | Цитировать
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

не изобретайте велосипед.

есть как минимум 3 способа организации многоязычности на сайте:
1. на системе создается несколько сайтов вида
site.ru
site.com

2. на системе создается один сайт с подразделами для каждого языка
site.ru/ru/
site.ru/en/

3. на системе создается один сайт, переключение языков осуществляется через переменную, к примеру: <a href='?lang=en'>Английский</a>

В любом случае весь контент в макетах дизайна и компонентах выводится через проверки как я писал выше ".(condition?"true":"false").", с той лишь разницей что в случае 1 мы смотрим на сайте с каким id находится пользователь, в случае 2 смотрим в подразделе с каким id находится пользователь, в случае 3 какое значение имеет у пользователя переменная lang. Естественно что реализация зависит от выбранного метода многосайтовости.

Если вам нужно показывать посетителю язык по умолчанию, скачайте базу ip адресов по странам и в зависимости от ip пользователя выполняйте те или иные действия: перенаправляйте его на нужный сайт, перенаправляйте его в нужный раздел или устанавливайте ему нужное значение переменной lang.
13.04.2010, 17:25
Ответить | Цитировать
Гость
Гость

Вот только в первом и втором варианте страница регистрации находится либо надо одном из сайтов(если идти по пути 1) или в одном из разделов (если идти по пути 2, а там может регистарция находится вне разделов многоязычности).
Путь 1
ru.site.com/profile
en.site.com/ <-- тут раздел с регистрацией создать не получится, т.к. регистрация завязана на системную таблицу.

Путь 2
site.com/ru/
site.com/en/
site.com/profile/registration <-- и каким образом определить язык без переменной lang?

Путь 2.1
site.com/ru/
site.com/en/profile/registration <--- тут в проверкой понятно, вот только при появленнии еще одного языка (fr например, тут сложности, получается встает вопрос из пути 2)

Вменяемым вижу только путь с передачей переменной.
13.04.2010, 19:57
Ответить | Цитировать
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

Нет не так.
Путь 1
ru.site.com/profile
ru.site.com/profile/registration

en.site.com/profile
en.site.com/profile/registration

В этом случае пользователи действительно будут привязаны к разным сайтам, но для этого есть $ignore_catalogue=1; - смотрите документацию.

Путь 2
site.com/ru/profile
site.com/ru/profile/registration

site.com/en/profile
site.com/en/profile/registration

Регистрация это компонент пользователи с действием по умолчанию добавление, следовательно регистрация может быть прикреплена к какому угодно числу разделов, тоже самое касается и профиля пользователя.

Путь 3
когда структура сайта не дублируется и язык переключается переменной
site.com/profile
site.com/profile/registration

<a href='lang=en'>en</>
в макете дизайна в шаблоне вывода навигации в самом начале пишем:
пишем значение переменной lang в куки пользователя
Код:
if ($_GET[lang]) {
$lang = $_GET[lang];
setcookie ("lang", $lang, time()+2592000, '/');
header("Expires: Tue, 1 Jul 2003 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Pragma: no-cache");
}


Ну и затем в зависимости от значения этой переменной выводим контент
Код:
".opt($lang=='en',"......")."
".opt($lang=='de',"......")."


Если где то переменная lang не будет доступной ее нужно объявить глобальной, к примеру для префикса списка объектов компонента
Код:
";
global $lang;
$result .= "
14.04.2010, 11:55
Ответить | Цитировать
Гость
Гость

Спасибо большое. В официальной документации такого найти нереально. улыбка
И последний глупый вопрос. Тогда изменение пароля и изменение анкеты надо создать свои компоненты? Номер раздела же забит жестко в настройках модуля.
198 196 2010-04-14 12:39:14 9915
Страницы: 1  |  2
Описание проекта