Пикап Форум - Всемирный форум пикаперов _ Обсуждение сайта и форума _ ВНИМАНИЕ! Новые функции на форуме
Автор: Директор Пляжа 24.10.2010, 18:06
Итак, покопался в скриптах.
В тестовом режиме добавил следующие возможности:
1. Обратите внимание в постах, рядом с вашими никами и аватарами теперь две новых ссылки: "Вставить ник" и "Цитата". При клике на п. "Вставить ник" внизу автоматически открывается окно быстрого ответа, куда вставляется никнейм пользователя, выделенный жирным. Также, если вы выделите какую то часть сообщения пользователя и нажмете на ссылку "Цитата", то сообщение будет процитировано внизу в форме быстрого ответа.
Что это все означает? Офигенную экономию времени, лишних движений и снижение нагрузки на форум. Фактически вам не нужно кликать на ссылку "Ответить", а приступить к постингу сразу, не покидая страницу. К тому же решена пресловутая проблема с мультицитированием.
2. Обратите внимание, над списком пользователей появился пункт - "Обновить список", при клике на которой произойдет обновление списка пользователей онлайн, без перезагрузки страницы. Реализовано с помощью технологии AJAX. Можно было, конечно, сделать так, чтобы список обновлялся динамически, без клика по пункту "Обновить...", но это создало бы нагрузку на сервер.
3. По умолчанию в личных сообщениях теперь доступна полноценная форма ответа. Теперь чатится в ЛС будет проще и опять же, не надо лишний раз грузить страницу, чтобы написать ответ. Проверьте свои ящики, обнаружите нововведение.
4. Немногим известно, что существует облегченная, текстовая версия форума по адресу - http://www.pickupforum.com/lofiversion/ . Как видите, это версия без баннеров, графики и прочих перегруженных элементов. Например таким образом удобно смотреть форум с телефона. Но была одна проблема - смотреть форум можно, а отвечать в темах нельзя. Так вот, теперь такая возомжность появилась. Теперь вы можете постить на форум со своих мобильников, не растрачивая трафик.
5. Теперь можно постить видео. Ура:)
Видео интерпретируется автоматически. Т.е. вы просто пишите в сообщении ссылку на видео и движок форума автоматом будет рисовать окошко.
Но вот в некоторых случаях может потребоваться заключение ссылки на видео в теги media youtube.com video.yandex.ru
Обращаю внимание, что введение новых функций частенько означает введение новых багов и глюков. Так что если у вас что-то заработает не так, появятся непонятные куски кода или произойдет что то еще, отписывайтесь.
Автор: Гней Помпей 24.10.2010, 18:13
у меня не работают ни "вставить ник", ни "цитата". Возможно, потому, что функции прописывается как "http://www.pickupforum.com/java script:ins()" убери пробелы в слове "javascript"
Автор: Аpple 24.10.2010, 18:19
Предлагаю сделать определение для nestedQuotes. Рекурсивный обход дерева до автора со сбором мета-информации.
Автор: Гней Помпей 24.10.2010, 18:37
вооо, теперь намано
Автор: Директор Пляжа 24.10.2010, 19:28
В Хроме вставка ника и цитаты не работает.
Автор: Водар Паветра 24.10.2010, 20:47
Цитата
В Хроме вставка ника и цитаты не работает.
пилять! я только им и пользуюсь... кстати, в этот раз сработало!
Автор: Водар Паветра 24.10.2010, 20:49
вставка цитат работает и в Хроме, однако они вставляются в окно быстрого ответа без тэгов [ quote][ /quote]...
Автор: Директор Пляжа 24.10.2010, 21:31
Теперь можно постить видео. Ура:)
Видео интерпретируется автоматически. Т.е. вы просто пишите в сообщении ссылку на видео и движок форума автоматом будет рисовать окошко.
Но вот в некоторых случаях может потребоваться заключение ссылки на видео в теги media youtube.com video.yandex.ru
Ну и пример:
Автор: Директор Пляжа 24.10.2010, 21:41
Цитата(Водар Паветра @ 24.10.2010, 21:49)
вставка цитат работает и в Хроме, однако они вставляются в окно быстрого ответа без тэгов [ quote][ /quote]...
Shit happens. К сожалению не могу пока найти способа срабатывания этой фигни во всех браузерах... там либо только для Хрома, либо Firefox, IE начиная с 7 версии, Opera... но не Хром. Кусок Javascript кода, который отвечает за вставку могу выложить, если кто знает, как его универсальным сделать, будет гуд.
Автор: 4YBAK 24.10.2010, 23:29
класс! с цитированием гораздо легче жить!
Автор: Аpple 25.10.2010, 9:11
Цитата(Директор Пляжа)
Кусок Javascript кода, который отвечает за вставку могу выложить, если кто знает, как его универсальным сделать, будет гуд.
Выкладывай, посмотрим.
Автор: OLYssA 25.10.2010, 9:36
че ты вы нахимичили, форум тупит, когда переходишь с раздела в раздел
Автор: Директор Пляжа 25.10.2010, 9:43
Забыл упомянуть, замечания Олиссы рассматриваться не будут. Она неправильно обозначает проблемы и замечания:)
Автор: OLYssA 25.10.2010, 16:15
Ну и не рассматривай)
Автор: Директор Пляжа 25.10.2010, 16:39
Цитата(OLYssA @ 25.10.2010, 17:15)
Ну и не рассматривай)
Оля, я посмотрю конечно... но ты скажи конкретно, что не так? При каких действиях? И.т.д.
Автор: OLYssA 25.10.2010, 16:41
когда находясь в одном разделе нажимаешь на верхнюю ссылку главной страницы (не картинку, а именно название) форум подвисает. А если на картинку - то норм.
Автор: Директор Пляжа 25.10.2010, 16:49
Цитата(OLYssA @ 25.10.2010, 17:41)
когда находясь в одном разделе нажимаешь на верхнюю ссылку главной страницы (не картинку, а именно название) форум подвисает. А если на картинку - то норм.
Он не подвисает. Это обрабатываются скрипты. По ощущениями, стало немного медленее грузится, да... и это закономерно, ведь добавился новый код с введением новых функций. Но мы тут с Яриком сегодня вечерком будем разбираться. Видишь ли, проблема может быть и на стороне хостера также... проблемы с кэшированием и.т.д.
Пока что кликай на картинку... хотя такое поведение немного странно:)
Автор: Директор Пляжа 25.10.2010, 20:36
Короче... добавил вроде отправку быстрого сообщения через AJAX без перезагрузки страницы... но... не работает так, как надо :)
Автор: Директор Пляжа 25.10.2010, 22:36
Так и не удалось добиться нормальной работы модуля AJAX, посему функция отключил. Не выходит тут пока мини-Вконтактик.
Кстати в профиле скоро можно будет указывать ссылку на страницу вконтакте:) Coming soon!
Автор: Директор Пляжа 25.10.2010, 23:04
Цитата(Аpple @ 25.10.2010, 10:11)
Цитата(Директор Пляжа)
Кусок Javascript кода, который отвечает за вставку могу выложить, если кто знает, как его универсальным сделать, будет гуд.
Теоретически если его дописать под определение браузера, чтобы он подгружал работающую функцию при определении USER-Agent пользователя, то можно решить проблему)
Автор: Аpple 26.10.2010, 13:04
Цитата(Директор Пляжа)
Вот код
Это ж стандартное формирование вывода на РНР, вызова функций, которые занимаются непосредственно вставкой (определение copyQ() и ins() ) тут нет =)
Ланенько, чуть позже, когда освобожусь, вытащу скрипт из документа и посмотрю. Интересует меня не формирование вызова функций, а их определение и описание.
Цитата(Директор Пляжа)
чтобы он подгружал работающую функцию при определении USER-Agent пользователя
Надеюсь имелось в виду на клиентской стороне? Тогда мы не подгружаем разные функции, а всего лишь меняем поведение единственной.
Автор: Аpple 26.10.2010, 15:06
Покопал. Не зря говорят "It's easy to optimize correct code, than correct optimized one". Ждем-с код, в котором определены все функции, отвечающие за цитирование и вставку.
Автор: Директор Пляжа 26.10.2010, 18:34
Цитата(Аpple @ 26.10.2010, 14:04)
Цитата(Директор Пляжа)
Вот код
Это ж стандартное формирование вывода на РНР, вызова функций, которые занимаются непосредственно вставкой (определение copyQ() и ins() ) тут нет =)
Ланенько, чуть позже, когда освобожусь, вытащу скрипт из документа и посмотрю. Интересует меня не формирование вызова функций, а их определение и описание.
Цитата(Директор Пляжа)
чтобы он подгружал работающую функцию при определении USER-Agent пользователя
Надеюсь имелось в виду на клиентской стороне? Тогда мы не подгружаем разные функции, а всего лишь меняем поведение единственной.
Ну типа того, нечто вроде
if Chrome { код }
А вот и используемый код:
Код
function ins(name) { my_show_div(my_getbyid('qr_open')); if (document.REPLIER.Post) { var input=document.REPLIER.Post; input.value=input.value+"[b]"+name+"[/b]"+" \n" } }
function copyQ(qinf,date,pid) { txt=''; if (document.getSelection) { txt=document.getSelection(); } else if (document.selection) { txt=document.selection.createRange().text; } if (txt.replace(" ","") != "") { txt='[quote name=\''+qinf+'\' date=\''+date+'\' post='+pid+']\n'+txt+'\n[/quote]\n'; } }
function pasteQ() { my_show_div(my_getbyid('qr_open')); if (document.REPLIER.Post) document.REPLIER.Post.value += txt; }
Автор: Аpple 26.10.2010, 19:10
Значит так-с, говорю по коду, который выложен выше, БЕЗ проверок. Т.е чисто по памяти и по знаниям (если вдруг ошибся - значит херово).
Мне конечно не дано понять суть разделения одного функционала на две разные функции, ну да ладно. В Хроме не срабатывает последний кусок кода. Я ПОЛАГАЮ из-за того, что не происходит неявного преобразования типа к строковому объекту. getSelection возвращает, насколько я помню, не ТЕКСТ, а объект, в котором содержится информация об элементе, тип и др., включая метод toString. Попробую набросать свой вариант быстренько (опечатки могут быть, т.к пишу прям на форуме):
Код
window.quoteSelection;
function ins(name) { var fastReply = document.getElementById("fast-reply_textarea");
Проверен: 1. IE 6+ 2. Safari 3+ 3. Firefox 4. Chrome 5. Opera Никаких ошибок, включая правильную вставку тегов цитаты. Если не будет работать - ей богу не знаю, уволить тогда меня надо =)
Автор: Директор Пляжа 27.10.2010, 20:31
Отлично! Немного усовершенствуем, и переименуем функцию, чтобы в шаблонах имя не менять:
Код
function ins(name) { my_show_div(my_getbyid('qr_open')); if (document.REPLIER.Post) { var input=document.REPLIER.Post; input.value=input.value+"[b]"+name+"[/b]"+" \n" } }
function copyQ(qinf,date,pid) { var quoteArea = document.getElementById("fast-reply_textarea"); var quoteSelected;
вместо onmouseover, вставим onClick, так как Хром при наведении начинает автоматом вставлять текст в окно ввода:)
Apple, огромное спасибо!!!
Автор: Директор Пляжа 27.10.2010, 20:48
Итак, подытожим.
Благодаря кодерскому гуру Apple (фанфары и благодарности) стала во всех популярных браузерах работать функция Вставки ника и Быстрой Цитаты. Фактически, не нужно теперь жать Ответить, а сразу приступать к постингу... тем более, что в "Быстром ответе" теперь доступно плавающее окошко... которое, правда, в Хроме работать отказывается.
Пару фишек еще обязательно добавлю и обновлю первый пост.
Автор: Аpple 27.10.2010, 21:25
Цитата(Директор Пляжа)
Apple, огромное спасибо!!!
Пожалуйста =)
Цитата(Директор Пляжа)
которое, правда, в Хроме работать отказывается.
Надо будет глянуть обязательно.
Автор: Директор Пляжа 27.10.2010, 22:43
Код
<script type="text/javascript"> <!-- document.onkeydown=function(e){ if (e) event=e if ((event.keyCode==13)&&(event.ctrlKey)){ try{ if (e){ document.REPLIER.submit.click(); } }catch(e){}; }} --> </script>
Добавил отправку сообщений по CTRL+Enter при быстром ответе
Автор: Директор Пляжа 27.10.2010, 23:18
Цитата(Аpple @ 27.10.2010, 22:25)
Надо будет глянуть обязательно.
Уже работает. Там из за одного пункта не работало ни в Огнелисе, ни в Хроме.
Автор: Tirgis 7.11.2010, 18:05
Цитата(Директор Пляжа @ 24.10.2010, 18:06)
4. Немногим известно, что существует облегченная, текстовая версия форума по адресу - http://www.pickupforum.com/lofiversion/ . Как видите, это версия без баннеров, графики и прочих перегруженных элементов. Например таким образом удобно смотреть форум с телефона. Но была одна проблема - смотреть форум можно, а отвечать в темах нельзя. Так вот, теперь такая возомжность появилась. Теперь вы можете постить на форум со своих мобильников, не растрачивая трафик.
УРА! Но с моего мобильника не работает. Samsung S5620.
Автор: stuffin muffin 1.4.2011, 20:34
я вас прошу - добавьте ироничный смайлик. его пипец как не хватает на этом форуме
Автор: RK 14.6.2011, 19:16
По посту графики: добавьте плз автоподбор размера окна. А то некоторые посты сильно расширяются ввысь и вширь.
Автор: Sap R3 18.5.2014, 9:07
А ещё сделайте плиз, чтобы любое редактирование и исправление текста в теме отмечалось ещё в списке тем, т.е. если я изменил своё сообщение в теме, то это отмечается ещё перед открытием темы, например посл. изменение: время часы/минуты, день/месяц/год.
Автор: Olyssiya 19.5.2014, 6:14
Цитата(Sap R3 @ 18.5.2014, 12:07)
А ещё сделайте плиз, чтобы любое редактирование и исправление текста в теме отмечалось ещё в списке тем, т.е. если я изменил своё сообщение в теме, то это отмечается ещё перед открытием темы, например посл. изменение: время часы/минуты, день/месяц/год.
Автор, на черта? У тебя на форуме 6 сообщений
Автор: Makedonskiy 21.5.2014, 20:42
Цитата(Olyssiya @ 19.5.2014, 7:14)
Цитата(Sap R3 @ 18.5.2014, 12:07)
А ещё сделайте плиз, чтобы любое редактирование и исправление текста в теме отмечалось ещё в списке тем, т.е. если я изменил своё сообщение в теме, то это отмечается ещё перед открытием темы, например посл. изменение: время часы/минуты, день/месяц/год.
Автор, на черта? У тебя на форуме 6 сообщений
Иначе он уйдет от нас, и нам будет грустно!!!
Автор: KLOD 15.11.2014, 3:56
Товарищи админы. Сделайте вверху еще одну кнпочку "сообщения за день"
Если например зайти с планшета и кликнуть "Новые сообщения" прочитать темку, пока выделилась минута другая. То потом, когда сажусь дома за комп, чтобы ответить - приходится искать их вручную и теряются темы, которые не прочел. Т.е. они уже не отображаются в списке новых. Так неоднократно пропускал темы, в которых люди просили моего совета.
Дополнительная кнопка "сообщения за день" была бы очень кстати