[MODDB] Изменение методов сброса пароля

Здесь авторы могут постить бета-версии своих модификаций для phpBB 3.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

[MODDB] Изменение методов сброса пароля

Сообщение Amator »

Название модификации: [MODDB] Изменение методов сброса пароля
Автор: Amator

Описание: Дает возможность выбирать из трех методов сброса пароля:
  • Только E-Mail
  • Только Логин
  • E-Mail и Логин одновременно
Управление методами через административную панель
Версия: 1.08

Релизная тема на phpBB.com: http://www.phpbb.com/community/viewtopi ... &t=2152502

Скачать старую версию 0.3 Beta(восстановление только через ввод E-Mail): http://forum.computerhelp.org.ua/mods/p ... _email.zip

Тема на phpbb.com

Изменения от 1.02:
  • Исправление для предотвращения ошибок при установке посредством AutoMod
Изменения от 1.0:
  • Небольшие исправления для соответствия Правилам написания модификаций(Coding Guidlines)
Изменения от 0.6:
  • Небольшое дополнение в инструкцию
Изменения от 0.5:
  • Небольшое исправление(спасибо MIT)
  • Проверено на совместимость с phpBB 3.0.9
Изменения от 0.3 Beta:
  • Изменение названия модификации
  • Добавление еще двух методов сброса(только через логин и через пару логин-email)
  • Управление методами через панель администрирования
Изменения от 0.2 Beta:
  • Добавлен украинский язык
Изменения от 0.1 Beta:
  • Изменения для предотвращения конфликтов с другими модификациями
  • Изменение языковой переменной
Последний раз редактировалось Amator 23.01.2013 17:34, всего редактировалось 14 раз.
Аватара пользователя
Alek$
Former team member
Сообщения: 2616
Стаж: 21 год 1 месяц
Откуда: Новосибирск
Поблагодарили: 37 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Alek$ »

Amator, с почином! :)
По поводу инструкции по установке могу посоветовать использовать inline-действия вот в этом месте:

Код: Выделить всё

		<open src="/includes/ucp/ucp_remind.php">
			<edit>
				<find><![CDATA[			$sql = 'SELECT user_id, username, user_permissions, user_email, user_jabber, user_notify_type, user_type, user_lang, user_inactive_reason
				FROM ' . USERS_TABLE . "
				WHERE user_email_hash = '" . $db->sql_escape(phpbb_email_hash($email)) . "'
					AND username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'";]]></find>
				<action type="replace-with"><![CDATA[			$sql = 'SELECT user_id, username, user_permissions, user_email, user_jabber, user_notify_type, user_type, user_lang, user_inactive_reason
				FROM ' . USERS_TABLE . "
				WHERE user_email_hash = '" . $db->sql_escape(phpbb_email_hash($email)) . "'";]]></action>
			</edit>
		</open>
Это уменьшит вероятность конфликтов, если какой-нибудь другой мод затрагивает то же место в коде.
Самая страшная ошибка, это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
Первая помощь по всем phpBB-вопросам: phpBB2 и phpBB3 FAQ; Правила общения;
Все консультации в icq или личке - на платной основе.
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Amator »

Спасибо) Исправлю

Добавлено спустя 6 минут 36 секунд:
Хм... Как там сделать inline если нужно изменить несколько строк? Вернее в исходном коде фрагмент который нужно заменить идет в несколько строк, а не в одну.
Аватара пользователя
Alek$
Former team member
Сообщения: 2616
Стаж: 21 год 1 месяц
Откуда: Новосибирск
Поблагодарили: 37 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Alek$ »

Amator в данном случае можно разбить find на два:

Код: Выделить всё

		<open src="/includes/ucp/ucp_remind.php">
			<edit>
				<find><![CDATA[			$sql = 'SELECT user_id, username, user_permissions, user_email, user_jabber, user_notify_type, user_type, user_lang, user_inactive_reason
				FROM ' . USERS_TABLE . "</find>
				<find>WHERE user_email_hash = '" . $db->sql_escape(phpbb_email_hash($email)) . "'
					AND username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'";]]></find>
				<action type="replace-with"><![CDATA[				WHERE user_email_hash = '" . $db->sql_escape(phpbb_email_hash($email)) . "'";]]></action>
			</edit>
		</open>
Тогда, если какой-нибудь мод затрагивает список полей в SELECT'e, его изменения не будут потеряны.
Самая страшная ошибка, это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
Первая помощь по всем phpBB-вопросам: phpBB2 и phpBB3 FAQ; Правила общения;
Все консультации в icq или личке - на платной основе.
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Amator »

А если сделать вот так(этот кусок кода только один раз появляется во всем скрипте ведь):

Код: Выделить всё

		<open src="/includes/ucp/ucp_remind.php">
			<edit>
				<find><![CDATA[				WHERE user_email_hash = '" . $db->sql_escape(phpbb_email_hash($email)) . "'
					AND username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'"]]></find>
				<action type="replace-with"><![CDATA[				WHERE user_email_hash = '" . $db->sql_escape(phpbb_email_hash($email)) . "'"]]></action>
			</edit>
		</open>
?
Аватара пользователя
Alek$
Former team member
Сообщения: 2616
Стаж: 21 год 1 месяц
Откуда: Новосибирск
Поблагодарили: 37 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Alek$ »

Amator, тоже вариант :)
Самая страшная ошибка, это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
Первая помощь по всем phpBB-вопросам: phpBB2 и phpBB3 FAQ; Правила общения;
Все консультации в icq или личке - на платной основе.
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Amator »

Если можно задам вопрос. В оригинале при неправильно введенном логине или адресе почты выдавало сообщение из языковой переменной 'NO_EMAIL_USER' - насколько понимаю кроме этого случая она нигде не появляется. Будет ли логично изменить сообщение о ошибке на "Пользователь с таким E-Mail не найден" или что то подобное?
Аватара пользователя
Alek$
Former team member
Сообщения: 2616
Стаж: 21 год 1 месяц
Откуда: Новосибирск
Поблагодарили: 37 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Alek$ »

Думаю, да.
Самая страшная ошибка, это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
Первая помощь по всем phpBB-вопросам: phpBB2 и phpBB3 FAQ; Правила общения;
Все консультации в icq или личке - на платной основе.
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Amator »

Обновил
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Восстановление пароля только с помощью E-Mail

Сообщение Amator »

Обновление до 0.3 Beta, добавил украинский язык.
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Изменение методов сброса пароля

Сообщение Amator »

Наконец удалось сделать новую версию - 0.5. Ссылка в первом посте.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: [BETA] Изменение методов сброса пароля

Сообщение Пчелкин »

Хм..нашел проще штуку..
http://www.phpbb.com/community/viewtopic.php?t=636415
Эта модификация позволит пользователям входить на конференцию с помощью своего зарегистрированного имени или адреса электронной почты, указанного при регистрации.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Изменение методов сброса пароля

Сообщение Amator »

Пчелкин, описание повнимательнее прочитайте) Prime Login via E-Mail это модификация для входа на конференцию с помощью адреса почты, а не для сброса пароля.
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: [BETA] Изменение методов сброса пароля

Сообщение MIT »

Amator, вместо выборки из таблицы CONFIG_TABLE лучше работать с массивом $config.
Amator
phpBB 1.4.3
Сообщения: 88
Стаж: 16 лет 11 месяцев
Благодарил (а): 25 раз
Поблагодарили: 5 раз

Re: [BETA] Изменение методов сброса пароля

Сообщение Amator »

MIT, у меня вроде так все и происходит. Мне rxu такой вариант подсказал, так как я о нем не знал. Проверю где я упустил это.

Вернуться в «Бета-версии модов для phpBB 3.0.x»