Skip to content

Conversation

@ObjatieGroba
Copy link
Contributor

@ObjatieGroba ObjatieGroba commented Apr 5, 2023

При показе студентам хочется показывать более свежие задачи повыше - для этого можно сортировку по паре (-start_date, id), что и сделано

@ObjatieGroba ObjatieGroba force-pushed the master branch 5 times, most recently from 58f13bc to f4f5aec Compare April 5, 2023 01:34
if (global->vertical_navigation != DFLT_G_VERTICAL_NAVIGATION)
unparse_bool(f, "vertical_navigation", global->vertical_navigation);
if (global->vertical_navigation_sdate_sort != DFLT_G_VERTICAL_NAVIGATION_SDATE_SORT)
unparse_bool(f, "vertical_navigation_sdate_sort", global->vertical_navigation_sdate_sort);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ограничение на размер имени параметра - 32 символа.

vertical_navigation_sdate_sort - ровно 31.

@ObjatieGroba ObjatieGroba force-pushed the master branch 2 times, most recently from 630f29e to 8c73ff2 Compare April 5, 2023 01:44
@blackav
Copy link
Owner

blackav commented Apr 5, 2023

Я бы сделал стринговый параметр vertical_navigation_sort в котором задавалась спецификация сортировки, по типу "so" - сначала short_name, затем open_date

@ObjatieGroba
Copy link
Contributor Author

ObjatieGroba commented Apr 5, 2023

@blackav а есть ли какой-то пример этой форматной строки и функции которая умеет её интерпретировать?

Просто сейчас это звучит как сложная фича, которая возможно еще и не будет пользоваться спросом.

Или можно сделать такую строку но пока поддерживать только "o" - open_date?

@blackav
Copy link
Owner

blackav commented Apr 6, 2023

Когда есть строка критерия сортировки, и в дальнейшем захочется добавить какие-то другие критерии, не потребуется добавлять новые параметры, что достаточно геморно. Обработка строки критерия в коде будет в одном месте.
Начать можно и с чего-то простого, пусть просто "o".

@blackav
Copy link
Owner

blackav commented Apr 6, 2023

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants