С увеличением физического количества страниц в directCRM и одновременным визуальным уменьшением количества этих страниц в меню (иначе у пользователей разбегались глаза и все становилось плохо) возникла необходимость быстрого перехода на нужную страницу.
7 июля 2015
Быстрый поиск
С увеличением физического количества страниц в directCRM и одновременным визуальным уменьшением количества этих страниц в меню (иначе у пользователей разбегались глаза и все становилось плохо) возникла необходимость быстрого перехода на нужную страницу.
При этом, если уж мы решили делать быстрый переход по страницам directCRM, то почему бы и не добавить быстрый поиск по данным в БД — тривиальный, просто на совпадение введенной строки.
В качестве эталонной реализации такого поиска, разумеется, был взят Spotlight из Mac OS X, а также пара интерфейсных мелочей была потырена из попапа быстрого перехода по каналам в Slack (про лучший способ творчества, надеемся, все в курсе). Ну и дизайнер наш также постарался.
Вызывается поиск двумя способами — либо нажатием комбинации клавиш Ctrl + K, либо кликом по иконке с лупой около аватарки:
![Вызов поиска](https://image.mindbox.ru/draw/70ff8426-bcd0-4d52-9338-ec6a11b6bdb0.png/-/size/1600/webp/1)
При первом открытии выводится строка поиска и результаты трех последних результатов поиска (в истории учитываются только результативные результаты — те, по которым был совершен переход), а над строкой поиска выводятся подсказки по сочетаниям клавиш:
![Строка поиска](https://image.mindbox.ru/draw/4126c659-3541-4c54-80cb-86fa84857cfc.png/-/size/1600/webp/1)
Например, если ввести знак вопроса, то появится тултип с описаниями ключевых сокращений для тонкой настройки поиска (ожидается, что наиболее часто используемым будет восклицательный знак, который ограничивает область поиска только страницами directCRM):
![Тултип](https://image.mindbox.ru/draw/1499027a-939e-4a7f-9f98-657dc4bb4ad8.png/-/size/1600/webp/1)
Как уже говорилось, поиск ищет по названию страниц, а также по данным в БД. Например, хочется найти страницу с действиями:
![Поиск](https://image.mindbox.ru/draw/a05d174f-17a4-47e0-82e9-f1c91cab5c65.png/-/size/1600/webp/1)
Или потребителя по ID (стрелкой показано, что такой потребитель действительно существует):
![Поиск по ID](https://image.mindbox.ru/draw/a07ec331-9fbf-4a25-8789-01e526df1e3d.png/-/size/1600/webp/1)
Можно ограничить область только страницами:
![Можно ограничить область только страницами](https://image.mindbox.ru/draw/0dc2e51c-a3bb-4fb0-9fb7-a26675850da4.png/-/size/1600/webp/1)
Все результаты поиска делятся на 4 раздела, по соответствующим пунктам меню — Потребители, Кампании, Отчеты и Администрирование. Исторический раздел идет бонусом.
Чтобы не перегружать попап, в каждой группе показывается изначально показывается только 3 результата, а остальные можно догрузить, кликнув по соответствующей строке.
При этом в любом случае не будет выведено больше 100 элементов в каждой группе.
Например, ниже видно, что всего найдено 5053 результата, показано 3 и всего показать можно еще 97 (тут неизбежно появится скролл):
![Всего найдено](https://image.mindbox.ru/draw/a724c201-bae6-4ee6-bd04-ba8c1335ab5d.png/-/size/1600/webp/1)
В целом, тезисно это все про быстрый поиск =)