Добавлена памятка, поправки поиска
This commit is contained in:
@@ -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>
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user