Постинг и редактирование через Ajax

Список разделов phpBBex 1.x (поддерживается) Пожелания 1.x

Описание: В phpBBex 1.x чего-то не хватает? Напишите об этом здесь, и мы постараемся исправиться.
Правила раздела: Одна тема — один запрос новой возможности. Обязательно формируйте внятный заголовок, максимально отражающий суть вашей идеи. Также приведите примеры, где предлагаемая вами возможность будет актуальна.
Модератор: Поддержка

Сообщение #1 factotum » 31.08.2013, 13:32

Хочется увидеть мнение. Есть ли планы, когда?
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #2 factotum » 31.08.2013, 13:39

http://area51.phpbb.com/phpBB/viewtopic.php?p=231163
можно ли считать ответ засчитанным?
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #3 Sumanai » 31.08.2013, 13:50

factotum:можно ли считать ответ засчитанным?

Если это будет в phpBB 3.1, то да, оно будет и в phpBBex, и да, VEG не будет реализовывать то, что собирается реализовать команда phpBB.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #4 factotum » 31.08.2013, 14:00

Sumanai, это очевидные факты. не разобрал планы на phpBB 3.1 - будет ли?

+ 175 additions
- 427 deletions
пока статус пуллов выглядит так...
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #5 Sumanai » 31.08.2013, 14:18

factotum:не разобрал планы на phpBB 3.1 - будет ли?

Да я тоже ничего не пойму. Если не будет- будет большой фейл, и VEG, я думаю, начнёт пилить свою реализацию или возьмёт за основу моды для phpBB.
Вижу вот это:
The following operations should use AJAX:
Pretty much everything that uses confirm_box - deleting posts, moderator options, etc. [ticket] merged
Everything that displays a message and then redirects, such as subscribing to a topic [ticket] merged
Approving and denying posts [ticket] merged
Changing settings in the UCP and MCP [denied]
Editing posts - RFC
Reordering forums in the ACP [ticket] merged
Quick reply [ticket]
merged означает принятие правок в репозиторий и их объединение с кодом будущей версии, как я понял.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #6 VEG » 31.08.2013, 15:26

На самом деле при нормальном интернете и выключенных типовых уведомлениях сообщения добавляются почти как на AJAX. По крайней мере я дискомфорта не ощущаю. У меня это выглядит моментально, причём в отличие от других систем вы здесь сразу попадаете на нужную страницу. Сколько раз попадал в ситуацию с быстрым ответом на AJAX, когда я ответил, вижу своё сообщение, нажимаю F5 — а сообщения нет! Секундное замешательство, а потом становится понятно, что оно просто появилось на другой странице.

Ближайшее, что планируется перевести на AJAX — это предпросмотр. Очень напрягает, когда из быстрого ответа при предпросмотре попадаешь в форуму полного ответа.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 12 лет

Сообщение #7 Sumanai » 31.08.2013, 15:34

VEG:Сколько раз попадал в ситуацию с быстрым ответом на AJAX, когда я ответил, вижу своё сообщение, нажимаю F5 — а сообщения нет! Секундное замешательство, а потом становится понятно, что оно просто появилось на другой странице.

На vBulletin при постинге на полной странице кидает на новую с полным обновлением. Так что решаемо.
Хотя вот из минусов- не очень заметно, что появились новые сообщения. Они подгружаются, но оказываются выше своего ответа. Но это можно решить уведомлением или перекидыванием на страницу полного ответа в таких ситуациях, как сейчас.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #8 VEG » 31.08.2013, 15:49

Sumanai:На vBulletin при постинге на полной странице кидает на новую с полным обновлением.
Почему-то именно на форумах vBulletin я и сталкивался с такой проблемой :) Может быть, в более новых версиях исправлено.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 12 лет

Сообщение #9 Sumanai » 31.08.2013, 15:50

VEG:Почему-то именно на форумах vBulletin я и сталкивался с такой проблемой :) Может быть, в более новых версиях исправлено.

Это я видел вроде на 4.2.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #10 factotum » 31.08.2013, 16:08

VEG:На самом деле при нормальном интернете и выключенных типовых уведомлениях сообщения добавляются почти как на AJAX.
немного в замешательстве. Я о таком механизме:
есть отрисованная в браузере страница.
при добавлении нового сообщения добавляется лишь контейнер с сообщением без перезагрузки страницы. Тоже касается и редактирования
Почему:
+ минимальная нагрузка на сервер
+ минимальная нагрузка на браузер

Подобный механизм достаточно неплохо реализован на онлайнере. Долго фиксили переход на новую страницу, но сейчас работа не вызывает нареканий.
Небольшие казусы все же есть, но это не существенно.
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #11 Sumanai » 31.08.2013, 16:21

factotum:есть отрисованная в браузере страница.

На хроме я замечал противное моргание отрисовки даже на локалхосте (я уж молчу про интернет), а в файрфоксе всё отлично, и в интернете тоже.
И вообще, думаю, никто не против этой фичи, но её ещё реализовать надо. А это объёмная работа.
Последний раз редактировалось Sumanai 31.08.2013, 16:23, всего редактировалось 1 раз.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #12 factotum » 31.08.2013, 16:22

Sumanai:merged означает принятие правок в репозиторий и их объединение с кодом будущей версии, как я понял.
у меня тоже мнение. пугает дата: Wed Jul 13, 2011 8:37 pm.

До сих пор висит в запланированных редактирование и панель быстрого ответа.

Два года не хватило...

Добавлено спустя 4 минуты 3 секунды:
Sumanai:На хроме я замечал противное моргание отрисовки даже на локалхосте
правильно реализованный механизм не вызывает таких дерганий. в JS это частая ошибка. Вместо того, что бы добавить готовый контейнер - закидывают элементы.
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #13 Sumanai » 31.08.2013, 16:28

factotum:Два года не хватило...

Обычное дело для phpBB. Никто не кидается тут же реализовывать. Быстрый ответ года три футболили за "не нужно", так что это ещё хорошая ситуация, что вообще в запланированные занесли.

Добавлено спустя 2 минуты 19 секунд:
factotum:правильно реализованный механизм не вызывает таких дерганий. в JS это частая ошибка

Я не про яваскрипт, а про текущую ситуацию. В файрфоксе например тут добавление ответа не вызывает заметной задержки в перерисовке, и в принципе не отличается от Аякса. А вот в хроме даже на локалхосте, который отвечает быстрее любого хостинга, заметна перерисовка- на секунду видим белую страницу.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #14 factotum » 31.08.2013, 16:31

Sumanai:Обычное дело для phpBB
это и печалит. за эти два года альтернативные движки уже подкрались близко. Еще через два года - окажутся далеко впереди.

Добавлено спустя 5 минут 9 секунд:
Sumanai:а про текущую ситуацию.
Иван Иваныч))
Тут все просто. Страница перегружается. Реализация достаточно хороша, но хотелось бы избежать именно перезагрузки страницы, если никто не опередил.
Добавить сообщение -> сравнение количества постов на текущей странице с базой -> без изменений -> добавило контейнер / количество постов изменилось -> перегрузило страницу.
Это мечтаю вслух)
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #15 Sumanai » 31.08.2013, 16:42

factotum:Реализация достаточно хороша, но хотелось бы избежать именно перегрузки страницы,

Главное чтобы хуже не вышло :smile:

factotum:Добавить сообщение -> сравнение количества постов на текущей странице с базой -> без изменений -> добавило контейнер / количество постов изменилось -> перегрузило страницу.

Логика то понятна, дело осталось за малым- реализация :smile:
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #16 factotum » 31.08.2013, 17:34

я тут помечтал немного и дал бы поправку на логику.
при логике выше - так же как на упомянутом онлайнере в казусы попадают склеенные и отредактированные сообщения.
Теоретически более верным было бы создавать переменную с временем последних изменений лишь на последней странице.
Редактирование поста -> время обновилось
Склеивание поста -> время обновилось
Сверили с переменной на странице -> добавили контейнер / обновили страницу

Осталось подумать о цене (в смысле затрат ресурсов сервера) таких операций
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #17 Sumanai » 31.08.2013, 17:50

factotum:Теоретически более верным было бы создавать переменную с временем последних изменений лишь на последней странице.

Чем topic_last_post_time в таблице тем не устраивает? Он обновляется при добавлении новых постов и склеивании со старым. При редактировании нет, но к чему это? По моему лишнее.
<input type="hidden" value="время_генерации_формы" name="creation_time"> в формах ответа тоже есть. Осталось сверить два числа :smile:
Думаю, сервер от сверки двух десятизначных чисел не загнётся.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #18 factotum » 31.08.2013, 18:06

Sumanai, пожалуй да. то, что нужно. остается сделать выбор - ждать с моря погоды от ядра или развивать свою ветку, поглядывая на подсказки пуллов 3.1)
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #19 Sumanai » 31.08.2013, 18:19

factotum:ждать с моря погоды от ядра

По моим прикидкам, 3.1 выйдет не раньше конца 2014. Стоит ли ждать?

factotum:или развивать свою ветку, поглядывая на подсказки пуллов 3.1)

Как VEG решит.
Я за перетягивание функциональности из 3.1. К моменту выхода беты 3.1 у нас будет уже практически релиз на этом ядре :smile:
Всё равно рано или поздно перетянем, так что лучше раньше, чем позже.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца


Вернуться в Пожелания 1.x