[3.1][3.2] [dev] Disallow links before X posts

Все расширения, созданные нашим сообществом для phpBB, как находящиеся в разработке, так и прошедшие валидацию на официальном сайте phpbb.com, будут анонсированы тут. Вся техническая поддержка по этим расширениям оказывается в этом форуме.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9749
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 175 раз
Поблагодарили: 2716 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Татьяна5 » 29.09.2017 13:57

Где-то не настроены права. Либо уже чехарда с правами из-за накопившихся ошибок в БД (если форум старый, такое возможно)

Отправлено спустя 20 секунд:
Только к теме расширения это уже не относится

Аватара пользователя
romaamor
phpBB 3.0.0 RC2
Сообщения: 1525
Зарегистрирован: 31.03.2012 20:28
Откуда: Одесса
Благодарил (а): 522 раза
Поблагодарили: 126 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение romaamor » 29.09.2017 14:03

Татьяна5 писал(а):
29.09.2017 13:57
Где-то не настроены права.
Смотрю.
Татьяна5 писал(а):
29.09.2017 13:57
ибо уже чехарда с правами из-за накопившихся ошибок в БД
Форум старый, но домин меняли из за блокировки . Вышли от АГС.
Татьяна5 писал(а):
29.09.2017 13:57
ибо уже чехарда с правами из-за накопившихся ошибок в БД (если форум старый, такое возможно)
Как исправить ? STK ?

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9749
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 175 раз
Поблагодарили: 2716 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Татьяна5 » 29.09.2017 14:08

romaamor писал(а):
29.09.2017 14:03
Как исправить ? STK ?
Там только дубли удалить можно
Проблема с чехардой прав редкая, так что сначала надо разобраться есть ли она вообще, а потом вручную по базе вылавливать что именно не так

Аватара пользователя
Sheer
phpBB Guru
phpBB Guru
Сообщения: 11485
Зарегистрирован: 18.02.2007 19:01
Откуда: Калининград не Кенигсберг
Благодарил (а): 53 раза
Поблагодарили: 2578 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Sheer » 29.09.2017 14:19

А трассировку делал?

Отправлено спустя 2 минуты 26 секунд:
Татьяна5 писал(а):
29.09.2017 14:08
Там только дубли удалить можно
Не только. Потерянные тоже.
Sheer писал(а):
23.12.2014 21:53
Удаление дубликатов прав доступа - Удаляет повторяющиеся права доступа, наличие дубликатов может нарушить систему аутентификации.
Удаление потерянных прав доступа - Поиск несуществующих прав доступа, наличие таких прав может нарушить систему аутентификации.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 4179
Зарегистрирован: 11.01.2005 14:29
Откуда: Питер
Благодарил (а): 109 раз
Поблагодарили: 442 раза

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Siava » 02.06.2018 22:35

Re: [release] PM Welcome - ЛС при первом посещении - конфликт с этим расширением :(

Хотя если написать обычное ЛС новичку, то у него во входящем все ссылки будут на месте.
Но если же отправляет "робот", то его ссылки убиваются.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
https://siava.ru/forum/ (phpbb 2.0.x, 3.1.x 3.2.x)

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9749
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 175 раз
Поблагодарили: 2716 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Татьяна5 » 05.06.2018 1:30

Siava, добавила событие для других расширений

Это расширение обновить, а в том повесить на событие tatiana5.disallowlinks.disable_links_before нечто вроде

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

	public function disable_links_before($event)
	{
		if ($this->is_pm)
		{
			$event['url_status'] = true;
		}
	}
($this->is_pm устанавливала в true в функции user_welcome)

Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 4179
Зарегистрирован: 11.01.2005 14:29
Откуда: Питер
Благодарил (а): 109 раз
Поблагодарили: 442 раза

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Siava » 05.06.2018 11:23

Татьяна5, всё работает! Изображение
Еще одно нарушение правил и будете забанены. © Mr. Anderson
https://siava.ru/forum/ (phpbb 2.0.x, 3.1.x 3.2.x)

Аватара пользователя
igorbond
phpBB 3.0.7
Сообщения: 2470
Зарегистрирован: 09.01.2012 3:34
Благодарил (а): 573 раза
Поблагодарили: 114 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение igorbond » 11.06.2018 22:13

После установки заметил такую проблему, что идет как я понимаю конфликт с расширением Double Account Preventer потому как после установки вашего расширения, в ЛС приходят уведомление о клоне и виде например

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

[url=http://сайт.ru/forum/]Сергей Владимирович[/url]
А не как ранее

Сергей Владимирович

В общем url в них не работает.
Изображение

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9749
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 175 раз
Поблагодарили: 2716 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Татьяна5 » 11.06.2018 22:55

igorbond, Re: [3.1][3.2] [dev] Disallow links before X posts - это общее решение для всех расширений. Только условие в разных местах в true устанавливается

Аватара пользователя
igorbond
phpBB 3.0.7
Сообщения: 2470
Зарегистрирован: 09.01.2012 3:34
Благодарил (а): 573 раза
Поблагодарили: 114 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение igorbond » 12.06.2018 14:45

Татьяна5, Это я видел, только что, как и куда нужно сделать, не понял
Изображение

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9749
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 175 раз
Поблагодарили: 2716 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Татьяна5 » 12.06.2018 15:01

igorbond, это расширение обновить, а другом внести правки по образцу (точной инструкции для всех и вся быть не может)

Аватара пользователя
igorbond
phpBB 3.0.7
Сообщения: 2470
Зарегистрирован: 09.01.2012 3:34
Благодарил (а): 573 раза
Поблагодарили: 114 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение igorbond » 12.06.2018 15:05

Тут я установил думаю новую версию, так как только пару дней назад ее поставил. Просто честно я не пойму, что там и куда надо ставить.
Изображение

Аватара пользователя
Pazh
Former team member
Сообщения: 2194
Зарегистрирован: 09.11.2009 17:46
Благодарил (а): 41 раз
Поблагодарили: 454 раза

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Pazh » 08.08.2018 0:07

Татьяна5 писал(а):
05.06.2018 1:30
Это расширение обновить, а в том повесить на событие tatiana5.disallowlinks.disable_links_before нечто вроде
Тань, поправь код в сообщении внутри на этот:

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

			$url_status = $event['url_status'];
			$url_status = true;
			$event['url_status'] = $url_status;
и небольшое уточнение - перед отправкой ЛС или поста нужно сделать

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

$this->is_pm = true;
а сразу после отправки

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

$this->is_pm = false;
Чтобы уж совсем хорошо было, а то народ начнет копипастить твой пример, и задавать вопросы - а почему не работает
форум ЖК Вестердам Помощь в ЛС/email только за WM или ЯД

Аватара пользователя
Pazh
Former team member
Сообщения: 2194
Зарегистрирован: 09.11.2009 17:46
Благодарил (а): 41 раз
Поблагодарили: 454 раза

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Pazh » 08.08.2018 0:17

fix для совмещения расширения с расширением Отлов множественных регистраций - Double Account Preventer
в файле \ext\shredder\dap\event\listener.php расширения DAP
найти:

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

	protected $php_ext;
Добавить после:

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

	protected $is_send_message;
Найти:

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

			'core.page_footer_after'			=> 'seo_return',
Добавить после:

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

			'tatiana5.disallowlinks.disable_links_before' => 'disable_links_before',
Найти;

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

				$this->core->send_dap_pm($user_id, $user_row['username'], $user_row['user_email'], $user_row['user_regdate'], $ip_common_names, $c_common_names);
Заменить на:

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

				$this->is_send_message = true;
				$this->core->send_dap_pm($user_id, $user_row['username'], $user_row['user_email'], $user_row['user_regdate'], $ip_common_names, $c_common_names);
				$this->is_send_message = false;
Найти:

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

				$this->core->submit_dap_post($user_id, $user_row['username'], $user_row['user_email'], $user_row['user_regdate'], $ip_common_names, $c_common_names);
Заменить на:

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

				$this->is_send_message = true;
				$this->core->submit_dap_post($user_id, $user_row['username'], $user_row['user_email'], $user_row['user_regdate'], $ip_common_names, $c_common_names);
				$this->is_send_message = false;
Найти:

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

	public function seo_return($event)
Добавить ПЕРЕД:

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

	public function disable_links_before($event)
	{
		if ($this->is_send_message)
		{
			$url_status = $event['url_status'];
			$url_status = true;
			$event['url_status'] = $url_status;
		}
	}
форум ЖК Вестердам Помощь в ЛС/email только за WM или ЯД

Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 9749
Зарегистрирован: 08.08.2011 2:02
Благодарил (а): 175 раз
Поблагодарили: 2716 раз

Re: [3.1][3.2] [dev] Disallow links before X posts

Сообщение Татьяна5 » 08.08.2018 2:52

Pazh писал(а):
08.08.2018 0:15
на этот
Нет разницы, присваивать значение напрямую или через переменную
Строки

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

$event['url_status'] = true;
и

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

			$url_status = true;
			$event['url_status'] = $url_status;
практически одинаковы (во втором случае лишняя переменная заводится)

В строке $url_status = $event['url_status']; нет смысла, т.к. в следующей значение $url_status переопределяется на true
Pazh писал(а):
08.08.2018 0:15

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

$this->is_pm = false;
(Тут не понимаю)
Зачем? Разве переменная не создаётся заново для каждой отдельной отправки сообщения?
По-хорошему её можно задать как false в конструкторе, но это необязательно

Вернуться в «Анонсы и поддержка расширений для phpBB»