Quick Reply phpBB 3.0.6 доработка встроенного быстрого ответ

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Rayden
Former team member
Сообщения: 3739
Стаж: 21 год 2 месяца
Поблагодарили: 44 раза

Quick Reply phpBB 3.0.6 доработка встроенного быстрого ответ

Сообщение Rayden »

Внимание: данная тема описывает доработку встроенного быстрого ответа phpBB 3.0.6.
Не путать с модами быстрого ответа!


Почитав вот эту тему: Quick Reply 3.0.6
Почитав вот эту тему: Доработка Quick reply for phpBB3 (rxu)
И естессно, вот эту тему: Quick reply for phpBB3 - Быстрый ответ

Понабрав идей и скриптов, добавив кое-что свое, пришел к выводу, что встроенный в phpBB 3.0.6 быстрый ответ вполне можно довести до ума.
Вот что получилось:
1. Добавил в быстрый ответ панель смайлов и панель кнопок ббкода. И то и другое можно отключать через админку.
2. Добавил кликающиеся ники. (в просилвере рекомендуется использовать дополнительную иконку для ссылки на профайл)
3. При нажатии на ник в просилвере автоматически открывается быстрый ответ.
4. После вставленного ника курсор не переводится на новую строку.
5. Добавил в сабсилвер и просилвер кнопки "быстрая цитата" (английские и русские).
6. При нажатии на кнопку "быстрая цитата" в просилвере, если выделен текст, открывается быстрый ответ
7. При нажатии на кнопку "быстрая цитата" если цитируемый текст не выделен, то открывается окошко с предупреждением, что надо выделить текст.
qr306_1.0.2b.zip
тестируйте
На полное авторство не претендую, так как кроме своего кода активно использовал наработки из вышеприведенных тем. Кого гложет чистолюбие, могу добавить в авторы :)
Пофиксенный файл - qr306_1.0.2a.zip. Кто успел скачать до этого, инструкция по исправлению двумя постами ниже.

Опять файл изменен - qr306_1.0.2b.zip. В предыдущем была небольшая ошибка в инструкции.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Поручик 20.01.2010 12:32, всего редактировалось 1 раз.
Причина: Редактирование названия темы
phpBB2 FAQ
phpBB3 FAQ
Orion45
phpBB 1.2.0
Сообщения: 11
Стаж: 14 лет 9 месяцев

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение Orion45 »

аа... кодировка... Наверн надо было через пхп май админ делать...
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение HAMMER663 »

Orion45 писал(а): Наверн надо было через пхп май админ делать...
чего?
что ты собрался через pma делать?
Аватара пользователя
misterleks
phpBB 2.0.9
Сообщения: 715
Стаж: 16 лет 1 месяц
Откуда: Великий Новгород
Благодарил (а): 103 раза
Поблагодарили: 38 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение misterleks »

Pazh, нужно подключать библиотеку jquery? Без неё скрипт не сработает? Т.к. у меня не сработал :(
И есть ли решения без излишних библиотек?
Продаю комиксы, продаю инструмент, продаю товары для охоты и рыбаков... и администрирую форум!
Orion45
phpBB 1.2.0
Сообщения: 11
Стаж: 14 лет 9 месяцев

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение Orion45 »

HAMMER663 писал(а):что ты собрался через pma делать?
да я предположил просто... В мануале по модам просто написано:
Для выполнения SQL-запросов Вы можете воспользоваться любым менеджером работы с БД (например, phpMyAdmin).
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение HAMMER663 »

Orion45 если только для этого))
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение Pazh »

misterleks писал(а):нужно подключать библиотеку jquery? Без неё скрипт не сработает?
Ну если написано про пример на JQuery, то соответственно библиотеку нужно подключить
misterleks писал(а):И есть ли решения без излишних библиотек?
psywalker.ru/Forum/JS/Primitive/Dom-Zadachi/Scroll/3.html - вот добрый люди написали (из кода страницы сможете вычленить что нужно?)
Помощь в ЛС/email только за WM или ЮMoney
Аватара пользователя
misterleks
phpBB 2.0.9
Сообщения: 715
Стаж: 16 лет 1 месяц
Откуда: Великий Новгород
Благодарил (а): 103 раза
Поблагодарили: 38 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение misterleks »

Попробую. Достаточно ли будет просто скрипт внести?
Продаю комиксы, продаю инструмент, продаю товары для охоты и рыбаков... и администрирую форум!
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение Pazh »

misterleks
Найти во viewtopic_body.html (таких мест 2 - добавить в оба):

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

<a href="#postform"
Добавить после:

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

name="quick_reply"
В overall_footer.html найти:

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

<div id="wrapfooter">
Добавить после:

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

	<!-- IF S_QUICK_REPLY -->
	<script type="text/javascript">
		var aLink = document.getElementsByName('quick_reply');
		var pf = document.getElementById('postform');
		for(var i=0;i<aLink.length;i++){
			aLink[i].time;
			aLink[i].onmouseup = function(){
				function klick(a){
					a.time = setInterval(function(){
						scrollY = 0;    
						if (typeof window.pageYOffset == "number") {
							scrollY = window.pageYOffset;
						} else if (document.documentElement && document.documentElement.scrollTop) {
							scrollY = document.documentElement.scrollTop;
						}  else if (document.body && document.body.scrollTop) {
							scrollY = document.body.scrollTop; 
						} else if (window.scrollY) {
							scrollY = window.scrollY;
						}
						if(scrollY >= pf.offsetTop-60){clearInterval(a.time); a.scr = a.offsetTop;return;}
						window.scrollBy(0,40);
					},20);
				}
				klick(this);
			}
		}
	</script>
	<!-- ENDIF -->
Аналогичный результат только без jquery - плавный скроллинг в окно быстрого ответа.
Тестировалось на FF 8.0, IE 6, Safari 5.1.2, Opera 11.5, Chrome 15
Последний раз редактировалось Pazh 13.12.2011 9:44, всего редактировалось 2 раза.
Помощь в ЛС/email только за WM или ЮMoney
Аватара пользователя
misterleks
phpBB 2.0.9
Сообщения: 715
Стаж: 16 лет 1 месяц
Откуда: Великий Новгород
Благодарил (а): 103 раза
Поблагодарили: 38 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение misterleks »

А точно надо прописывать в
Pazh писал(а):В overall_footer.html найти:
Потому что в предыдущем случае вставляли в другой шаблон.

Добавлено спустя 2 минуты 31 секунду:
Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого ответ
В опере как было, так и есть. В экплорере всё намного хуже. При нажатии на ник, он плавно поехал и упёрся в низ, страницу никак не поднять, как только поднимаю, она плавно опять един в низ!
Продаю комиксы, продаю инструмент, продаю товары для охоты и рыбаков... и администрирую форум!
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение Pazh »

Подправил предыдущий свой пост. Вот это и называется - танцы с бубном под каждый браузер.
Помощь в ЛС/email только за WM или ЮMoney
Аватара пользователя
misterleks
phpBB 2.0.9
Сообщения: 715
Стаж: 16 лет 1 месяц
Откуда: Великий Новгород
Благодарил (а): 103 раза
Поблагодарили: 38 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение misterleks »

Отлично, в ИЕ точно работает, проверел! В Опере не могу проверить, она со своим кешем меня иногда бесит! Дома протестирую, но если написано:
Pazh писал(а):Тестировалось на FF 8.0, IE 6, Safari 5.1.2, Opera 11.5, Chrome 15
почему не верить :)
Продаю комиксы, продаю инструмент, продаю товары для охоты и рыбаков... и администрирую форум!
Аватара пользователя
misterleks
phpBB 2.0.9
Сообщения: 715
Стаж: 16 лет 1 месяц
Откуда: Великий Новгород
Благодарил (а): 103 раза
Поблагодарили: 38 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение misterleks »

Протестировал браузеры, которые у меня имеются, получается, что у Оперы вообще плавное перемещение отсутствует, она мгновенно перемещает в форму ответа. Далее ИЕ и FF одинаково обрабатывают скрипт, то есть без разницы, где кликнуть, в начале страницы или непосредственно перед быстрым ответам, увидим, моментальное перемещение почти до самого быстрого ответа и заключительное плавное перемещение, примерно 2 сек. А вот браузер, в котором полностью обработалось перемещение, это Хром. При нажатии на ник или цитату, окно сразу начинает движение до быстрого ответа. Перемещение происходит полностью.
Вот почему такая байда, код один, а работает везде по разному?
Продаю комиксы, продаю инструмент, продаю товары для охоты и рыбаков... и администрирую форум!
pavel.ignatenko
phpBB 1.4.0
Сообщения: 34
Стаж: 15 лет 10 месяцев
Благодарил (а): 8 раз
Поблагодарили: 3 раза

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение pavel.ignatenko »

Хочется немного доработать быстрый ответ.
Чего именно хочется:
1. Чтобы в текст цитаты вставлялась ссылка на саму цитату.
И если для обычного (не быстрого ответа) это решилось заменой части кода в posting.php

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

		$message_parser->message = '[quote="' . $post_data['quote_username'] . '"]' . censor_text(trim($message_parser->message)) . "[/quote]\n";

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

		$message_parser->message = '[quote="' . '[url=' . generate_board_url() . "/viewtopic.$phpEx?p=$post_id#p$post_id" . ']' . $post_data['quote_username'] . ' &raquo; ' . $user->format_date($post_data['post_time']) . '[/url]' . '"]' . censor_text(trim($message_parser->message)) . "[/quote]\n";  
В случае же быстрого ответа вызывается функция addquote

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

<!-- IF postrow.U_QUOTE --><li class="quote-icon"><!-- IF not S_QUICK_REPLY --><a href="{postrow.U_QUOTE}" title="{L_REPLY_WITH_QUOTE}"><span>{L_REPLY_WITH_QUOTE}</span></a><!-- ELSE --><a href="#postform" onclick="addquote({postrow.POST_ID},'{postrow.POSTER_QUOTE}'); insert_text('\r\n'); return false;" title="{L_QUOTE_TEXT}"><span>{L_QUOTE}</span></a><!-- ENDIF --></li><!-- ENDIF -->
которая есть часть стиля prosilver и которая находится в файле editor.js

Но моих познаний не хватает на то, чтобы имплементировать часть кода в этот кусок яваскрипта :(

Кроме вставки ссылки на цитату очень хочется сделать так, чтобы в случае "невыделения" текста после нажатии на кнопку "Цитата" полностью вставлялось всё сообщение. И совсем уж хочется, чтобы с учетом разрешенных уровней вложенности.

Если подобное уже где-то реализовано, то ткните меня, пожалуйста, носом.
Если нет -- помогите.

Спасибо.
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 16 лет 4 месяца
Откуда: Сергиев Посад
Благодарил (а): 373 раза
Поблагодарили: 727 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение владимир1983 »

Поддержка по сторонним сборкам не осуществляется. Обратитесь к автору сборки.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
andryugist
phpBB 1.4.0
Сообщения: 39
Стаж: 15 лет 6 месяцев
Благодарил (а): 11 раз
Поблагодарили: 1 раз

Re: Quick Reply phpBB 3.0.6 доработка встроенного быстрого о

Сообщение andryugist »

Изображение
Поставил мод, спасибо. Есть одна неточность, помогите исправить. На скрине 2 ника обозначенные цифрами, если на них нажать, то оба вставят ник в ответ. Как сделать, чтобы под цифрой 2, если нажать на ник, можно было попасть на профиль пользователя?!

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