Matthieu Gautier
fbc7656b3f
Use proper argument order when building the SearchRenderer from a Searcher
2022-06-02 17:08:50 +02:00
Matthieu Gautier
b857293cfd
Build the bookSelection query string when we parse the query.
...
We have to reuse the query the user give us to generate the
pagination links.
At search result rendering step we don't have access to the query object.
The best place to know which arguments are used to select books
(and so which arguments to keep in the pagination links) is when we
parse the query to select books.
Fix tests (pagination links) with book selector other than "books.id="
(pattern=jazz&books.query.lang=eng)
2022-06-02 12:37:52 +02:00
Matthieu Gautier
077ceac5a5
Make the search_rendered handle multizim search.
...
This introduce a intermediate mustache object to store information
about the request made by the user.
2022-06-02 12:22:28 +02:00
Matthieu Gautier
aad95e3413
Introduce a results intermediate object in the template rendering.
...
Url in href must not be html encoded. As we already url encode the path, it
is ok to have `'` in the url.
2022-05-23 19:16:14 +02:00
Matthieu Gautier
f0dd34b6db
Introduce buildQueryData helper in SearchRenderer
2022-05-23 19:13:25 +02:00
Matthieu Gautier
bbdde93f49
Introduce a pagination object to render search result.
2022-05-23 19:12:17 +02:00
Matthieu Gautier
cb62da65c3
Raise a exception if something went wrong in the template rendering.
2022-05-23 10:56:39 +02:00
Veloman Yunkan
84c68d4d7b
Search results pagination bugfix
...
Search results pagination is disabled for a single page outcome too.
2022-05-18 12:45:47 +04:00
Matthieu Gautier
422f4c7dd7
Reuse constructor when creating the SearchRenderer with basic constructor.
2022-03-04 17:08:59 +01:00
Matthieu Gautier
609bc24cbe
Small cleanups.
...
- Remove unused `archive`
- Replace tab by spaces
2022-02-25 15:46:13 +01:00
Matthieu Gautier
d9124ed40b
Set the book title only if we have a library.
2022-02-25 15:46:13 +01:00
Matthieu Gautier
921671eb4d
Do not use ostringstream to convert the uuid into string.
...
`zim::Uuid` already have a string convertion operator. Let's use it.
2022-02-25 15:46:13 +01:00
Matthieu Gautier
ec18eb40ea
Readd a `SearchRenderer` constructor without `Library` argument.
...
Adding the library argument breaks the API. It is better to add
another constructor to not have to create another major version.
2022-02-25 15:46:13 +01:00
Tristan Havelick
58be502f3f
add book titles to search results
2022-02-16 12:50:18 +01:00
Matthieu Gautier
fa83a61a54
Move all public *Tools.h in src.
...
This by definition remove all the tool functions from the public API.
2021-07-07 14:43:13 +02:00
Maneesh P M
bcece66960
Add SearchRenderer handles for libzim structures
...
Introduces a new member mp_search that houses the zim::Search object,
adds a new constructor for this purpose. This commit also add an
overload for getHtml that takes start and end integers as arguments
since they are not part of the search object we include.
2021-07-03 14:05:50 +05:30
Maneesh P M
e2f6d91d51
Remove get_readerIndex in favor of get_zimId
...
The function get_readerIndex was used to get the zimId using an ordered
vector of readers. Now we can use get_zimId directly.
2021-05-26 14:45:25 +02:00
manan jethwani
c74b935a9b
added pageLength for search_pagination
2020-08-12 02:08:02 +05:30
Matthieu Gautier
3294508d87
Correctly cast double to int.
...
Ms cl compiler complains about the implicit conversion.
2019-09-10 14:10:40 +02:00
Matthieu Gautier
a13244dc0e
Rename `hasResult` to `hasResults`
2019-09-09 14:43:51 +02:00
Matthieu Gautier
78dbd66522
[HTML Rendering] Do not render page navigation buttons if only one page.
2019-09-09 14:43:51 +02:00
Matthieu Gautier
fdc291b7c2
[HTML Rendering] Do not do division by zero.
...
We must correctly handle the case if resultStart is equal to resultEnd.
2019-09-09 14:43:51 +02:00
Matthieu Gautier
64dfea2547
Move the search html renderer in a different class than the searcher.
...
This is two different functionnalies, we don't need to polute the searcher
api with things to render the html.
2019-08-11 10:19:48 +02:00