[3.1] [beta] Editor of attachments (quoting, watermark)

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

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

[3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение Татьяна5 » 30.10.2014 11:11

Название: Editor of attachments

Описание:
  • Цитирование вложений
  • Водяной знак (Watermark)
Версия Расширения: 1.0.0
Требования: phpBB 3.1.*@dev

GitHub репозиторий: https://github.com/Tatiana5/Editor-of-attachments/
Загрузить расширение: https://github.com/Tatiana5/Editor-of-a ... master.zip

Изображения для наложения водяного знака находятся в папке ext\Tatiana5\Editor-of-attachments\images\
Необходимо создавать изображения с таким же названием, расширением и по возможности размеры должны совпадать. Для разных изображений будет применён разный watermark с учётом соотношений размеров.


Расширением далее заниматься не собираюсь. У кого есть желание продолжить над ним работать - забирайте
Последний раз редактировалось Татьяна5 18.10.2017 13:54, всего редактировалось 4 раза.

Перенесено из форума Бета-версии расширений для phpBB 3.1.x в форум Анонсы и поддержка расширений для phpBB 3.1.x 11.07.2015 12:49 модератором LavIgor

Аватара пользователя
Perfecthus
phpBB 2.0.6
Сообщения: 518
Зарегистрирован: 21.10.2010 8:39
Откуда: Оттуда
Благодарил (а): 44 раза
Поблагодарили: 50 раз

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение Perfecthus » 12.04.2019 10:17

У меня почему-то вместо водяного знака, накладывает полосочку шириной в 1px. Все расширение перелопатил, не нашёл ничего из-за чего такое может происходить... Может, кто знает, где собака зарыта?

Vlad__
phpBB 2.0.4
Сообщения: 443
Зарегистрирован: 10.12.2016 11:06
Благодарил (а): 247 раз
Поблагодарили: 41 раз

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение Vlad__ » 09.10.2019 15:46

Татьяна5 писал(а):
30.10.2014 11:11
Расширением далее заниматься не собираюсь. У кого есть желание продолжить над ним работать - забирайте
Кто будет работать, советую исправить алгоритм работы цитирования вложений в теле поста. Он неправилен, так как опирается на отбор и сравнение по реальному имени файла. Соответственно если в тегах attachment заключены файлы с одинаковыми именами, при цитировании заменяется все первым найденным. Правильнее выбирать по номеру attachment=n и соответствию этого номера вложению в сообщении.

TrekRed
phpBB 2.0.0
Сообщения: 244
Зарегистрирован: 09.08.2018 1:11
Благодарил (а): 44 раза
Поблагодарили: 6 раз

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение TrekRed » 09.10.2019 17:05

Ну, так выложите правильный вариант!

Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 14475
Зарегистрирован: 12.05.2006 18:16
Откуда: Красноярск
Благодарил (а): 346 раз
Поблагодарили: 1543 раза
Контактная информация:

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение rxu » 09.10.2019 17:09

TrekRed, это вы кому команду даёте?
Изображение

Vlad__
phpBB 2.0.4
Сообщения: 443
Зарегистрирован: 10.12.2016 11:06
Благодарил (а): 247 раз
Поблагодарили: 41 раз

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение Vlad__ » 09.10.2019 18:02

rxu, по-видимому мне ;)

Да пожалуйста! Сделано на скорую руку, но работает...
Меняем в listener.php

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

				//Replacement
					$attach_in_quote = array();
					$message_parser->message = substr($message_parser->message, 0, strlen($message_parser->message) - 9); //Del "[/quote]\n"
					preg_match_all('/\[attachment=\d+\](.*)\[\/attachment\]/U', $message_parser->message, $attach_in_quote);
					$sql_attach = 'SELECT attach_id, real_filename, mimetype, extension, thumbnail
						FROM ' . ATTACHMENTS_TABLE . ' 
							WHERE post_msg_id = ' . $post_id;
					$result_attach = $this->db->sql_query($sql_attach);
					while ($attach_row = $this->db->sql_fetchrow($result_attach))
					{
						if (in_array($attach_row['real_filename'], $attach_in_quote[1]))
						{
							//Replace inline attachments
							if (strpos($attach_row['mimetype'], 'image/') !== false)
							{
								if (!empty($this->config['seoimg_version']))
								{
									$type_link = ($attach_row['thumbnail']) ? 'thumb' : 'small';
									$img_link = generate_board_url() ."/{$type_link}/{$attach_row['attach_id']}.{$attach_row['extension']}";
								}
								else
								{
									$type_link = ($attach_row['thumbnail']) ? '&t=1' : '';
									$img_link = generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . $type_link;
								}
								//Replase image inline attachments in [img]
								$message_parser->message = preg_replace('/\[attachment=\d+\]' . preg_quote($attach_row['real_filename']) . '\[\/attachment\]/', $img_open_tag . $img_link . $img_close_tag, $message_parser->message);
							}
							else
							{
								//Replase other inline attachments in [url]
								if ($allow_url)
								{
									$message_parser->message = preg_replace('/\[attachment=\d+\]' . preg_quote($attach_row['real_filename']) . '\[\/attachment\]/', '[url=' . generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . ']' . $attach_row['real_filename'] . '[/url]', $message_parser->message);
								}
								else
								{
									$message_parser->message = preg_replace('/\[attachment=\d+\]' . preg_quote($attach_row['real_filename']) . '\[\/attachment\]/', generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'], $message_parser->message);
								}
							}
							//Fix if there the same filenames
							$key_attach = array_search($attach_row['real_filename'], $attach_in_quote[1]);
							if ($key_attach !== false) 
							{
								unset($attach_in_quote[1][$key_attach]);
							}
						}
						else
						{
							//Replace (not-inline) attachments
							if (strpos($attach_row['mimetype'], 'image/') !== false)
							{
								if (!empty($this->config['seoimg_version']))
								{
									$type_link = ($attach_row['thumbnail']) ? 'thumb' : 'small';
									$img_link = generate_board_url() ."/{$type_link}/{$attach_row['attach_id']}.{$attach_row['extension']}";
								}
								else
								{
									$type_link = ($attach_row['thumbnail']) ? '&t=1' : '';
									$img_link = generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . $type_link;
								}
								//Replace image attachments in [img]
								$message_parser->message .= "\n" . $img_open_tag . $img_link . $img_close_tag;
							}
							else
							{
								//Replace other attachments in [url]
								if ($allow_url)
								{
									$message_parser->message .= "\n[url=" . generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . ']' . $attach_row['real_filename'] . '[/url]';
								}
								else
								{
									$message_parser->message .= "\n" . generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . ' ';
								}
							}
						}
					}
на

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

//Replacement
					$attach_in_quote = array();
					$message_parser->message = substr($message_parser->message, 0, strlen($message_parser->message) - 10); //Del "[/quote]\n"

                    preg_match_all('/\[attachment=(.*)\]/U', $message_parser->message, $attach_in_quote);

                    $message_parser->message = trim($message_parser->message);
                    $message_parser->message .= "\n";


					$sql_attach = 'SELECT attach_id, real_filename, mimetype, extension, thumbnail
						FROM ' . ATTACHMENTS_TABLE . ' 
							WHERE post_msg_id = ' . $post_id . ' ORDER BY filetime';
					$result_attach = $this->db->sql_query($sql_attach);
				
					$i = ((int) mysqli_num_rows($result_attach) - 1);

            		while ($attach_row = $this->db->sql_fetchrow($result_attach))
					{
						if (in_array($i, $attach_in_quote[1]))
						{
     						//Replace inline attachments
							if (strpos($attach_row['mimetype'], 'image/') !== false)
							{
								if (!empty($this->config['seoimg_version']))
								{
									$type_link = ($attach_row['thumbnail']) ? 'thumb' : 'inline';
									$img_link = generate_board_url() ."/{$type_link}/{$attach_row['attach_id']}.{$attach_row['extension']}";

								}
								else
								{
									$type_link = ($attach_row['thumbnail']) ? '&t=1' : '';
									$img_link = generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . $type_link;
								}
								//Replase image inline attachments in [img]
								   $message_parser->message = preg_replace('/\[attachment=' . $i . '\]' . preg_quote($attach_row['real_filename']) . '\[\/attachment\]/', $img_open_tag . $img_link . $img_close_tag, $message_parser->message); 
						    }
							else
							{
								//Replase other inline attachments in [url]
								if ($allow_url)
								{
									$message_parser->message = preg_replace('/\[attachment=' . $i . '\]' . preg_quote($attach_row['real_filename']) . '\[\/attachment\]/', '[url=' . generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . ']' . $attach_row['real_filename'] . '[/url]', $message_parser->message);
								}
								else
								{
									$message_parser->message = preg_replace('/\[attachment=' . $i . '\]' . preg_quote($attach_row['real_filename']) . '\[\/attachment\]/', generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'], $message_parser->message);
								}
							}
						}
						else
						{
							//Replace (not-inline) attachments
							if (strpos($attach_row['mimetype'], 'image/') !== false)
							{
								if (!empty($this->config['seoimg_version']))
								{
									$type_link = ($attach_row['thumbnail']) ? 'thumb' : 'inline';
									$img_link = generate_board_url() ."/{$type_link}/{$attach_row['attach_id']}.{$attach_row['extension']}";
								}
								else
								{
									$type_link = ($attach_row['thumbnail']) ? '&t=1' : '';
									$img_link = generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . $type_link;
								}
								//Replace image attachments in [img]
								$message_parser->message .=  $img_open_tag . $img_link . $img_close_tag;
							}
							else
							{
								//Replace other attachments in [url]
								if ($allow_url)
								{
									$message_parser->message .= "\n[url=" . generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . ']' . $attach_row['real_filename'] . '[/url]';
								}
								else
								{
									$message_parser->message .= "\n" . generate_board_url() . '/download/file.php?id=' . (int) $attach_row['attach_id'] . ' ';
								}
							}
						}
					$i--;
					}

edualla
phpBB 1.4.4
Сообщения: 147
Зарегистрирован: 15.03.2012 23:34
Благодарил (а): 161 раз
Поблагодарили: 4 раза

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение edualla » 25.10.2019 7:28

Всем привет.
После обновления движка до версии 3.2.8, я пробовал включить это расширение - но не получается. (см. вложение 0101)
Пробовал отключить его, удалить все данные и снова установить - без результата.
Есть у кого-то идея?
Или как вообще удалить все "хвосты"? (см. вложение 0202)
0101.jpg
0202.jpg

Аватара пользователя
ronim
phpBB 2.0.2
Сообщения: 304
Зарегистрирован: 10.01.2018 20:24
Откуда: Таллин ,Эстония
Благодарил (а): 91 раз
Поблагодарили: 40 раз
Контактная информация:

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение ronim » 25.10.2019 18:05

edualla, Установите STK , далее через Проверка изменений в Базе Данных можете подчистить
все "хвосты"
.Только не забываем сделать резервную копию базы данных , на случай если что удалите нужное .

edualla
phpBB 1.4.4
Сообщения: 147
Зарегистрирован: 15.03.2012 23:34
Благодарил (а): 161 раз
Поблагодарили: 4 раза

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение edualla » 26.10.2019 0:32

ronim писал(а):
25.10.2019 18:05
edualla, Установите STK , далее через Проверка изменений в Базе Данных можете подчистить

все "хвосты"

.Только не забываем сделать резервную копию базы данных , на случай если что удалите нужное .
- Спасибо, ronim, за ответ.
У меня установлен STK.
Только не знаю, где и что искать. Можете, пожалуйста, подсказать?
Спасибо заранее.

Аватара пользователя
Пчелкин
phpBB 3.1.9
Сообщения: 10065
Зарегистрирован: 15.01.2010 13:57
Откуда: От Москвы 9 часов на Боинге
Благодарил (а): 1328 раз
Поблагодарили: 1293 раза
Контактная информация:

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение Пчелкин » 26.10.2019 3:14

edualla писал(а):
26.10.2019 0:32
где и что искать.
Проверка изменений в Базе Данных можете подчистить

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

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение Sheer » 26.10.2019 12:24

Пчелкин писал(а):
26.10.2019 3:14
Проверка изменений в Базе Данных.
Проще удалить этот модуль непосредственно из админики. ACP -- Система - Управление модулями -- Администраторский раздел -- Настройка расширений и удалить модуль ACP_EDITOR_OF_ATTACHMENT
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

edualla
phpBB 1.4.4
Сообщения: 147
Зарегистрирован: 15.03.2012 23:34
Благодарил (а): 161 раз
Поблагодарили: 4 раза

Re: [3.1] [beta] Editor of attachments (quoting, watermark)

Сообщение edualla » 27.10.2019 2:25

Sheer писал(а):
26.10.2019 12:24
Проще удалить этот модуль непосредственно из админики.
- Спасибо Вам большое.
Получилось!
Всего доброго.

Ответить

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