Перейти к контенту

Вставка ника + цитата в форме быстрого ответа


Рекомендуемые сообщения

Хуком такое не исправить.

я же исправил

к тому же убрал разбор ul, я представляю, что будет, если будет одновременно разбираться скажем 1000 постов - лишняя нагрузка на сервер

 

 

Палыч, критика еще никому не мешала

Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 294
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

OverHerz, я поражаюсь. Вам делают что-то бесплатно, а Вы ещё и возмущаетесь...Что за народ...!

Что-то мне напомнило это фразу "Жрите что дают" (с). :)

Критика только полезна.

На счёт свистелок - я уже давал идею автору, но видимо он решил обойти это стороной.

Хотя эффекты прикручиваются в два счёта, буквально, парой строк. Грех не использовать эффект, когда, во-первых, сам ипб построен на свистелках; во-вторых, в самом ИПБ уже всё есть.

 

За что влепили "-" OverHerz'у, мне не понятно. Видимо у кого-то играет детское воспаление ЧСВ. И кажется, я догадываюсь у кого. :)

Жалко, что посмотреть на этом форуме нельзя. Ситуацию выравниваю.

Изменено пользователем idTails
Ссылка на комментарий
Поделиться на других сайтах

вот

Не спора ради:

а) на кастомных скинах вот эта конструкция работать не будет:

         $code = str_replace("<ul class='user_fields'>"," {$part}<ul class='user_fields'>",$code);

Потому что к классу user_fields дизайнеы порой добавляют свои собственные классы. -1 к совместимости со скинами от изначальной версии.

 

б) Вы сделали две строки вместо одной. Заменив задачу "добавить в линейку в конец три кнопки" на "добавить другую линейку с тремя кнопками", вы конечно упростили себе задачу, только это уже совсем другой мод. Я как-то не нахожу карсивыми и удобными две параллельные строки кнопок под аватаром. Особенно когда на них всего по 2-3 кнопки на каждой.

 

Наверное, постпуми так: отключаемые якоря и селектор эффектов на выбор пользователя сделаю. Сделаю так же и проверку на существование блока user_fields, и если его нет - прикручу создание. Пожалуй, это удовлетворит ваши пожелания без потери совместимости и разбиения меню кнопок на несколько строк, что хотелось бы мне :)

 

к тому же убрал разбор ul, я представляю, что будет, если будет одновременно разбираться скажем 1000 постов - лишняя нагрузка на сервер

explode/implode по вашему работает медленнее, чем str_replace?) и где будет 1000 постов на одной странице, на какой доске? спорим, при таком сценарии форум умрет на выборке данных по юзерам раньше, чем дело дойдет до построения userInfoPane?

Изменено пользователем Ritsuka
Ссылка на комментарий
Поделиться на других сайтах

explode/implode по вашему работает медленнее, чем str_replace?)

причем тут это? у вас и то и то вместе. У вас там и explode и implode и strpos и foreach (который, кстати, работает гораздо медленее while) и str_replace. Вот о чем я. Допустим, что на форуме будет 100 человек, на каждой странице по 15 постов, 1500 циклов умноженное на размер $parts (размер которого 3, т.е имеем в итоге 4500 циклов) просто с ничего. Я же оставил одни str_replace, снизив нагрузку в десятки раз.

 

Я прекрасно знаю, что такое нагрузка, приходилось и по 500 тыс записей в 6-мерных OLAP массивах обрабатывать. Поэтому я такие косяки сразу вижу. Вообщем это не выход для совместимости со скинами.

 

Вы сделали две строки вместо одной. Заменив задачу "добавить в линейку в конец три кнопки" на "добавить другую линейку с тремя кнопками", вы конечно упростили себе задачу

ну если у современных кодеров это так называется, то мне грустно

 

где будет 1000 постов на одной странице

вы на форуме одна чтоли сидите? )) Я прям не знаю, вы про системы с высокой нагрузкой в первый раз чтоли слышите? Имеем 200 пользователей, которые читают форум, на каждой странице по 15 постов - вот вам и 3000 циклов (в котором еще и foreach, т.е имеем все 9000 циклов). Я понимаю, что на локалке все быстро работает с одним пользователем. Просто если каждый так будет хуки писать, то форум в итоге ляжет.

 

Я как-то не нахожу карсивыми и удобными две параллельные строки кнопок под аватаром

тут вопрос в юзабельности, отдельной строкой удобнее пользоваться, чем рядом из 6-8 кнопок, в которой глаза разбегаются. Я бы вообще сделал так - когда наводишь мышкой на аватар, всплывают эти кнопки. Они по сути не нужны, пока человек только читает.

 

спорим, при таком сценарии форум умрет на выборке данных по юзерам раньше, чем дело дойдет до построения userInfoPane?

форум умрет как раз не на выборке, а когда будет все это по второму кругу гонять, разбирать, складывать, заменять

 

я уж молчу про косяк с date в цитатах - в IPB по-умолчанию используется timestamp, который учитывает часовой пояс пользователя. Иначе каша получается с датами (про косяк IPB пока забудем, исправят как-нибудь)

Изменено пользователем OverHerz
Ссылка на комментарий
Поделиться на других сайтах

Собственно, вот:

frq.xml.zip

 

Тут добавлено:

- кнопки для своего поста,

- две дополнительные настройки: выбор эффекта для раскрытия инфо и выбор, к каким кнопкам цеплять якоря.

 

Просто если каждый так будет хуки писать, то форум в итоге ляжет.

Очередной фанатик, считающий, что на форуме, написанном индусами в лучших традициях говнокода, использование foreach вместо while будет сколь либо заметно...

 

я уж молчу про косяк с date в цитатах - в IPB по-умолчают используется timestamp, которые учитывают часовой пояс

Там баг в другом, совсем не в часовом поясе)

Ссылка на комментарий
Поделиться на других сайтах

Очередной фанатик

ну быдлокод, он как говорится не в задаче, а в голове. Не важно для чего ты пишешь, важно как... Да и не в foreach vs while дело.

 

Там баг в другом, совсем не в часовом поясе)

 

вот как в самом движке

 

[quote name='OverHerz' timestamp='1281871055' post='371479']

смысл тут городить что-то свое...

 

и в итоге имеем баг - в базу кладется не число, а строка, которая естественно не меняется при смене часового пояса и у разных людей. В итоге имеем кашу. Я хоть с поясом +1 зайду будет 7:10, что с +10, все равно будет 7:10, хотя время у меня не 7, а 13 уже.

Изменено пользователем OverHerz
Ссылка на комментарий
Поделиться на других сайтах

смысл тут городить что-то свое...

В последней версии вообще нет никаких дат. И тому есть определенная причина. Но за наводку на timestamp спасибо. Когда мод писался впервые - такого поля в теге еще не было. Как исправят баг - обязательно сделаю :)

 

ну быдлокод, он как говорится не в задаче, а в голове. Не важно для чего ты пишешь, важно как... Да и не в foreach vs while дело.

Ну да, дело в том, что я вам не нравлюсь, и вам надо к чему-то придраться. Если не к коду, то к моей голове хотя бы, где, вы точно знаете, все очень плохо х)

 

Вы моды случаем не пишете? Дадите посмотреть свой бесплатный код? Просто любопытно да и поучиться хочется, как пишут настоящие гуру.

Изменено пользователем Ritsuka
Ссылка на комментарий
Поделиться на других сайтах

Ну да, дело в том, что я вам не нравлюсь, и вам надо к чему-то придраться. Если не к коду, то к моей голове хотя бы, где, вы точно знаете, все очень плохо х)

совсем даже наоборот. Вы мне нравитесь хотя бы за то, что пишите моды :)

 

Вы моды случаем не пишете? Дадите посмотреть свой бесплатный код? Просто любопытно да и поучиться хочется, как пишут настоящие гуру.

моды я уже давно не пишу. Пишу я последнее время закрытые веб 2.0 системы, и естественно не бесплатно )

Ссылка на комментарий
Поделиться на других сайтах

Я так мыслю поругались то Вы продуктивно? :) Обоим спасибо! За то что есть еще люди которые пишут.

Я вот "чистый потребитель" :) и если бы не вы...

 

Обновил 3.1.1 --> 3.1.2 старая версия мода работает. На новую не меняю, что-то боязно :)

Изменено пользователем Design_Nick
Ссылка на комментарий
Поделиться на других сайтах

Пишу я последнее время закрытые веб 2.0 системы, и естественно не бесплатно )

Вредина х)

 

Я не против конструктивной критики, и мне не трудно что-то добавить по запросу. Но отказываться от столь уместного в данном случае explode... Просто из любопытства спрошу: а как вы бы сдеали вставку этих трех кнопок, если бы обязательным условием было бы дописать их именно внутрь конкретного <ul>?

Ссылка на комментарий
Поделиться на других сайтах

Я не против конструктивной критики, и мне не трудно что-то добавить по запросу. Но отказываться от столь уместного в данном случае explode... Просто из любопытства спрошу: а как вы бы сдеали вставку этих трех кнопок, если бы обязательным условием было бы дописать их именно внутрь конкретного <ul>?

конкретно я бы это сделал через javascript-фреймворки, в данном случае prototype, ибо они работают как раз с DOM-деревом и позволяют в это же дерево вставлять что угодно. Плюс все это бы обрабатывалось бы на компе пользователя, а не на сервере. Код страницы естественно почти не меняется, но нам это и не нужно.

 

Нужно лишь нагенерировать яваскрипт-код. alert работает, значит и все остальное тоже будет работать. Хотя придется помучаться )

Изменено пользователем OverHerz
Ссылка на комментарий
Поделиться на других сайтах

конкретно я бы это сделал через javascript-фреймворки, в данном случае prototype, ибо они работают как раз с DOM-деревом и позволяют в это же дерево вставлять что угодно.

Как отвратительно - с больной головы на здоровую. На моем нетбуке на некоторых сайтах из-за такого подхода 100% загрузка CPU на минуту при открытии подобных страниц. И именно поэтому у меня установлен NoScript и заблокированы скрипты для всех сайтов, и без лишней нужны я эту блокировку не снимаю, а если какой-то сайт плохо работает без JS - просто на него забиваю. Что есть один explode с текстовым массивом в PHP по сравнению с поиском по всему дереву DOM в JavaScript? Почему пользователи должны мучаться тормозами, висяками, не сразу появляющимися прыгающими кнопками и прочей ерундой, а так же платить ресурсами своего CPU за по сути копеечную экономию ресурсов сервера?

 

Не спорю, есть случаи, когда использование JS оправданно. Но абсолютно уверен - это не тот случай.

Ссылка на комментарий
Поделиться на других сайтах

ну это как посмотреть, тормоза они не из-за скриптов, а из-за того, что их неправильно пишут. Тот же ajax пахать не будет, если вырубить яваскрипт. Произвести 15 замен на странице не такая серьезная задача.

 

есть еще dom php, но там уже другие грабли

 

но в любом случае разбор тысяч постов не выход, поэтому я сделал как побыстрее

Изменено пользователем OverHerz
Ссылка на комментарий
Поделиться на других сайтах

Я бы вообще сделал так - когда наводишь мышкой на аватар, всплывают эти кнопки. Они по сути не нужны, пока человек только читает.

Чур, идея моя!!! ^^

Ссылка на комментарий
Поделиться на других сайтах

но в любом случае разбор тысяч постов не выход, поэтому я сделал как побыстрее

Да ладно, там всего 20 строк текста. Мы же не весь код через explode гоним, а только отпарсенный шаблон userInfoPane. Четрые блока да 3 ul-ки. Не понимаю, почему вы так переживаете :)

 

Кстати, идея сделать кнопки при наведении на аватар мне тоже приходила, еще в самом начале, но... Я стараюсь сделать хук, который максимально совместим с различными дизайнами, версиями, другими хуками/модами, работал бы в максимальном числе браузеров и с максимальным числом версий. Поэтому все делается на стороне сервера, и пусть решение не самое элегантное, но зато самое надежное и простое. В последнее время мне кажется, что чем решение проще - тем оно лучше. И мой немалый опыт разработки только подтверждает эту мою позицию.

 

Если умеете и хотите сделать супер-аякс с высплывающими кнопками по наведению на аву - пожалуйста, я только рад буду. Но сам такое делать не хочу - это слишком сложно и вычурно для такой простой функции, как "ник и цитата". Да и поддерживать такой мод будет адским трудом - у многих пользователей возникнут проблемы совместимости с их дизайном и скриптами, как аккуратно это не напиши.

Ссылка на комментарий
Поделиться на других сайтах

Я бы вообще сделал так - когда наводишь мышкой на аватар, всплывают эти кнопки. Они по сути не нужны, пока человек только читает.

Как быть с теми у кого нет аватара?

Ссылка на комментарий
Поделиться на других сайтах

Ну, во первых цитата не моя. :)

Во-вторых, есно у меня сделано по такому же принципу, но немного по другому. Что мешает охватить не аватар и всё поле юзеринфо?

Ссылка на комментарий
Поделиться на других сайтах

Английская - на IPS: http://community.invisionpower.com/files/file/3395-nick-and-quote-to-fast-reply-form/

 

Русская - все еще не поверена модераторами, поэтому можно взять из аттача тут.

Ссылка на комментарий
Поделиться на других сайтах

Рицка, млодчинка!1!!1 ^______^

Только вот я хочу что бы ник еще был жирным. Куда что дописывать? (может быть еще и цветным).

Ссылка на комментарий
Поделиться на других сайтах

Посмотрите в настройки тега member. Его использую для вывода ника. Можно через парсер этого кода и расрашивание добавить, и жирный шрифт, и все что угодно.
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.