yura3d |
Отправлено: 9 августа 2009 — 12:07
|
ExBB Team ExBB Developer ExBB Mods Author
Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009
Откуда: Минск, Беларусь
Репутация: 353
|
Светлана пишет:Так как же с этим: "Если у кого-нибудь будет время, объясните пожалуйста, как в странице регистрации сделать обязательными к заполнению поля: место проживания (откуда), дату рождения?" Это сложно? Вопрос без подковыки - я просто не знаю.
Прошу прощения за задержку с ответом, я уже несколько дней нахожусь за городом, и с Интернетом здесь очень туго (его практически нет, а предлгаемый моим сотовым оператором EDGE жутко лагает)
Ближе к теме, сделать обязательным заполнение указанных Вами полей несложно. Откройте файл register.php, найдите строку:
CODE:$fm->input['location'] = (strlen($fm->input['location']) >= 3) ? $fm->input['location']:'';
И замените её строками:
CODE:if (strlen($fm->input['location']) < 4)
$fm->_Message($fm->LANG['Registration'], $fm->LANG['LocationEmpty']);
Далее откройте файл modules/birstday/register_save.php, найдите строки:
CODE:unset($birstday_data);
}
И под ними разместите строки:
CODE:else
$fm->_Message($fm->LANG['Registration'], $fm->LANG['BirstdayEmpty']);
Осталось только добавить соответствующие языковые строки для вывода предупреждений о незаполненных полях. Для этого откройте файл language/russian/lang_front_register.php, найдите строку:
CODE:$this->LANG['NameExist'] = 'Такое имя уже есть! Пожалуйста вернитесь и подберите себе другое имя';
И разместите после неё строки:
CODE:$this->LANG['LocationEmpty'] = 'Вы не указали место жительства';
$this->LANG['BirstdayEmpty'] = 'Вы не указали дату рождения';
На этом всё, если будет необходимо, смогу также помочь с проверкой этих полей при редактировании профиля (это делается по аналогии с тем, что я привёл выше), а также с динамической проверкой этих полей на Ajax (подробнее о такой проверке здесь) |
|
|
Светлана |
Отправлено: 10 августа 2009 — 07:43
|
Забанен
Покинул форум
Сообщений всего: 240
Дата рег-ции: Июнь 2009
Репутация: 8
[+]
|
Спасибо, Юра!!! Сделала, работает. Попробую сделать проверку полей при редактировании...
M-A-X, кнопка "жалоба" была удалена за ненужностью на именно том форуме. Ну, нет смысла на том узкоспециализированном. Все друг друга знают. А ник перенесён не просто для "красоты". Так уменьшается высота постов. Часто обмен мнениями происходит в "одну строку". Если нужно, то конечно, можно строку с ником выделить цветом и рамкой (перенесено ведь в таблицу). Дело вкуса, в общем, но за мнение - спасибо.yura3d пишет:Менял себе капчу в предыдущей версии и проверку мыла делал, Так как спамили боты с гмейла и мейл.ру. Я запретил такие мыла регить Вот это можно подробней, плз?
(Добавление)
Есть ли мод (расширение) создания групп пользователей? |
|
|
M-A-X |
Отправлено: 10 августа 2009 — 20:45
|
Advanced Member
Покинул форум
Сообщений всего: 278
Дата рег-ции: Июль 2009
Откуда: Киев
Репутация: 10
|
Проверка запрещенных мыл
В язык/lang_front_register.php в строке
CODE:$this->LANG['YouEmailDesc'] = 'Введіть існуючу адресу! Якщо Ви бажаете, можете закрити її для перегляду іншими користувачами.';
добавляем предупреждение, что с гмейла нельзя региться
В язык/lang_front_register.php добавляем лучше после строки
CODE:$this->LANG['EmailExist']
такую строку
CODE:$this->LANG['Emailban'] = 'gmail.com тра-та-та Ваш текст :)';
Типа сообщение юзеру о попытке зарегиться с гмейла
В register.php добавляем после CODE: /* Email validation */
if ($fm->exbb['emailfunctions'] === TRUE) {
саму проверку:
CODE: /* check for gmail.com */
$bannedemail = 'gmail.com';
$pos1 = stripos($fm->input['emailaddress'], $bannedemail);
$bannedemail = 'mail.ru';
$pos1 = $pos1 + stripos($fm->input['emailaddress'], $bannedemail);
// ах, попався
if (!$pos1 === false) {
$fm->_Message($fm->LANG['Registration'],$fm->LANG['EmailBan']);
}
Проверяем на гмейл и мейл.ру.
Правда если у юзера мыло вида login@gmail.comtext или textgmail.comtext@domain, то тоже будет предупреждение, но, думаю, таких міл нету. Можно проверить стоит ли имя искомого сервера в конце.
Может чуть непрофи сделано. Делалось полгода назад и так оно меньше ресурсов жрет. )
Сообщение с какого именно запрещенного сервера была предпринята попытка регистации не выводим ибо незачем.
Потом проверку на мыло не делал, а просто в капче плюсовал единицу и просил пользователей написать на единицу меньше.
Если там будет целый банлист серваков, можно записать их в массив. Как кому удобно.
П.С. А подход написания кода в 1.0 rc1 немного поменялся по сравнению с 0.1.4 фул модс
П.П.С. Может сделать, чтобы после вставки бб-кода курсор помещался в его центр?(Отредактировано автором: 10 августа 2009 — 20:58) |
|
|
yura3d |
Отправлено: 11 августа 2009 — 15:59
|
ExBB Team ExBB Developer ExBB Mods Author
Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009
Откуда: Минск, Беларусь
Репутация: 353
|
M-A-X пишет:CODE:/* check for gmail.com */
$bannedemail = 'gmail.com';
$pos1 = stripos($fm->input['emailaddress'], $bannedemail);
$bannedemail = 'mail.ru';
$pos1 = $pos1 + stripos($fm->input['emailaddress'], $bannedemail);
// ах, попався
if (!$pos1 === false) {
$fm->_Message($fm->LANG['Registration'],$fm->LANG['EmailBan']);
}
Для возможности более гибкого добавления доменов в список запрета лучше воспользоваться следующим вариантом:
CODE:$bannedemail = array('gmail.com', 'mail.ru'); // В этот массив добавить запрещённые почтовые домены
foreach ($bannedemail as $banemail)
if (stripos($fm->input['emailaddress'], $banemail) !== FALSE)
$fm->_Message($fm->LANG['Registation'], $fm->LANG['EmailBan']);
M-A-X пишет:Иногда в форме для ввода сообщения много текста. Показывается только маленькая часть.
Может сделать, чтобы как-то менять высоту формы пошагово? Шаг - 150 или сколько пикселей
Возможно в будущем будет соответствующий мод
M-A-X пишет:И и меть возможность задания опции выравнивания по центру, справа от текста.
Возможность выравнивания текста по центру есть, используйте бб-код [c][/c]. Выравнивание по правому краю Вы можете реализовать самостоятельно, прочитав Руководство: Добавление собственных бб-кодов
M-A-X пишет:На форму редактирования добавить кнопку отменить.
При редактировании её роль выполняет кнопка Очистить
M-A-X пишет:Может стоить изменение названия темы для модераторов вывести в окно редактирования сообщения?
При редактировании абсолютно любого сообщения в теме не вижу смысла в такой возможности. В некоторых движках возможность редактирования названия темы реализована при редактировании первого сообщения темы, у нас же она вынесена в отдельную опцию модерирования и дублировать её где-то ещё, на мой взгляд, нет смысла
M-A-X пишет:Вроде уже упоминалось
Чтобы не нажимать на кнопочку B для выделения жирным, а работало alt, а лучше ctrl+b.
Уже неоднократно обсуждалось, почему от использования горячих клавиш при вставки бб-кодов пришлось отказаться, поищите в поиске
/!\ В дальнейшем в этой теме обсуждаем только вопросы, касающиеся оформления, все остальные вопросы, пожалуйста, в соответствующие разделы |
|
|
|