Добавлена памятка, поправки поиска

This commit is contained in:
Book Pauk
2022-09-27 15:53:36 +07:00
parent 6b9287176c
commit 8f1c222548
2 changed files with 43 additions and 5 deletions

View File

@@ -17,7 +17,7 @@
<q-icon name="la la-copy" size="20px" />
</div>
<div v-if="showGenres" class="q-ml-sm">
<div v-if="showGenres && book.genre" class="q-ml-sm">
{{ bookGenre }}
</div>

View File

@@ -98,7 +98,7 @@
<div class="q-mx-xs" />
<DivBtn class="text-white q-mt-xs bg-grey-13" :size="30" :icon-size="24" icon="la la-question" round @click="showSearchHelp">
<q-tooltip :delay="1500" anchor="bottom middle" content-style="font-size: 80%" max-width="400px">
Подсказка
Памятка
</q-tooltip>
</DivBtn>
@@ -435,11 +435,47 @@ class Search {
}
showSearchHelp() {
this.$root.stdDialog.alert(`
let info = '';
info += `<div style="min-width: 250px" />`;
info += `
<p>
Здесь должна быть подсказка<br>
Работу поискового движка можно описать одной фразой: найти авторов по указанным критериям.
Далее по уже найденным авторам ищутся книги, которые группируются по сериям.
<br><br>
По умолчанию поисковое значение трактуется как "начинается с". Например значение автора "Пушкин"
трактуется как: найти авторов, имя которых начинается с "Пушкин". Поиск всегда ведется без
учета регистра - значения "Ельцин" и "ельцин" равнозначны.
<br><br>
В поисковых полях "Автор", "Серия", "Название" также доступны следующие префиксы:
<ul>
<li>
"=" поиск по точному совпадению. Например, если задать "=Пушкин Александр Сергеевич" в поле автора,
то будет найден в точности этот автор
</li>
<br>
<li>
"*" поиск подстроки в строке. Например, для "*Александр" в поле автора, то будут найдены
все авторы, имя которых содержит "Александр"
</li>
<br>
<li>
"#" поиск подстроки в строке, но только для тех значений (в т.ч. пустых), которые не начинаются ни с одной буквы русского или латинского алфавита.
Например, значение "#поворот" в поле автора означает: найти всех авторов, имя которых начинается не с русской или латинской буквы и содержит слово "поворот".
Указание простого "#" в поиске для названия означает: найти всех авторов, названия книг которых начинаются не с русской или латинской буквы или пусты.
</li>
<br>
<li>
"?" поиск пустых значений или тех, что начинаются с этого символа. Например, "?" в поле серии означает: найти всех авторов, у которых есть книги без серий
или название серии начинается с "?".
Значение "?" в поле названия означает: найти всех авторов, книги которых без названия или начинаются с "?".
</li>
<br>
Специльное имя автора "?" служит для поиска и группировки книг без автора.
</ul>
</p>
`, 'Подсказка', {iconName: 'la la-info-circle'});
`;
this.$root.stdDialog.alert(info, 'Памятка', {iconName: 'la la-info-circle'});
}
showHiddenHelp() {
@@ -841,6 +877,8 @@ class Search {
searchValue = searchValue.substring(1);
return !bookValue || (!enru.has(bookValue[0]) && bookValue.indexOf(searchValue) >= 0);
} else if (searchValue[0] == '?') {
return bookValue == '' || bookValue.indexOf(searchValue) == 0;
} else {
return bookValue.indexOf(searchValue) == 0;