b54215f146
Manager::readOpds() doesn't modify its input
2021-04-12 15:14:12 +02:00
9033f2f28e
Manager::readXml() doesn't modify its input
2021-04-12 15:14:12 +02:00
ec9186b174
Library::removeBookById() updates the search DB
...
This fix makes the `XmlLibraryTest.removeBookByIdUpdatesTheSearchDB`
unit-test pass.
2021-04-09 17:06:45 +04:00
aaaa5a637e
Library::filter() doesn't create empty books
...
This changes how the `XmlLibraryTest.removeBookByIdUpdatesTheSearchDB`
unit-test fails.
2021-04-09 17:06:45 +04:00
24ed96a38c
Library.removeBookById() drops the reader too
...
This fix makes the `XmlLibraryTest.removeBookByIdDropsTheReader`
unit-test pass.
2021-04-09 17:05:56 +04:00
5cb276a933
adding kind and path attributes to suggest response object and using it in autocomplete
2021-04-07 21:04:33 +05:30
aa2a031ba4
Xapian headers are not exposed through libkiwix
2021-04-07 18:24:33 +04:00
7872734f44
changed method of injecting root link
2021-03-24 14:17:58 +05:30
c557bb271b
injecting root link directly and renamed head_part to head_taskbar
2021-03-24 02:10:16 +05:30
93264f7409
added root functionality for block external link feature
2021-03-23 03:17:14 +05:30
e214efecd4
Language code conversion via ICU
...
Language code is converted from ISO 639-3 to ISO 639 (which is
understood by Xapian) via ICU. The previous approach via an explicit
map had its advantages since Xapian has more than one stemmer
implementations for some languages (selectable via Xapian-specific
identifiers). This commit relies on the defaults associated with the
ISO 639 language codes.
2021-03-17 14:32:03 +01:00
09233bf4f3
Support for partial queries in catalog search
...
The search text in the catalog query is interpreted as partial by
default, but partial query mode can be disabled in C++. The latter
possibility is not exposed via the /catalog/search kiwix-serve endpoint,
though.
2021-03-17 14:32:03 +01:00
a599fb3892
Initial version of Xapian-based catalog search
2021-03-17 14:32:03 +01:00
a17fc0ef2d
Library::getBooksByTitleOrDescription()
2021-03-17 14:32:03 +01:00
db06b2c7ca
Library::BookIdCollection typedef
2021-03-17 14:32:03 +01:00
a20f9e2ce1
Library::filter() works in two stages
...
1. Get the subset of books matching the q (title/description) parameter
of the search
2. Filter out books not matching the other parameters of the search.
Stage 1. currently works in the old way, but will be replaced by Xapian
based search in subsequent commits.
2021-03-17 14:32:03 +01:00
b7b0bdbdd8
Both Book::update() methods update the category
2021-03-17 14:10:57 +04:00
4abc4f8518
Support for book category attribute in library.xml
2021-03-17 14:10:57 +04:00
6b2067c236
Reading category element from OPDS stream
2021-03-17 14:10:57 +04:00
e55bf514e8
Dedicated 'category' parameter in catalog search
2021-03-17 14:10:57 +04:00
80d4f7e349
Extracted InternalServer::search_catalog()
2021-03-17 14:10:57 +04:00
58186ffb26
kiwix::Book::getCategory()
2021-03-17 14:09:48 +04:00
ae32ff40c0
Dropped an extra colon from book <updated> dates
2021-03-17 14:02:27 +04:00
26331b401e
Fixed the month in OPDS feed <updated> date
...
`tm::tm_mon` varies in the [0, 11] range.
2021-03-17 14:02:27 +04:00
67caae6c32
Use the new libzim's getRandomEntry instead of implementing it ourselves.
2021-03-02 14:16:09 +01:00
839fc10a4f
Fixed the Windows build
...
Opening ZIM archives by file descriptor (as well as embedded
ZIM archives) is not supported under Windows.
2021-02-10 14:19:47 +01:00
5a8b825c70
Testing of JNIKiwixReader.getDirectAccessInformation()
2021-02-10 14:19:47 +01:00
7a465e66d7
Renamed org.kiwix.kiwixlib.{Pair->DirectAccessInfo}
2021-02-10 14:19:47 +01:00
5a99634dfd
Java wrapper test checks favicon.png too
2021-02-10 14:19:47 +01:00
e028bcbb04
Android's java.io.FileDescriptor is different
2021-02-10 14:19:47 +01:00
9cdf7a44c0
JNIKiwixReader can open an embedded ZIM archive
2021-02-10 14:19:47 +01:00
4d23e44de7
JNIKiwixReader ctor taking a file descriptor
...
... and a corresponding unit test
2021-02-10 14:19:47 +01:00
98d69ef59b
Added testReader unit-test for the java wrapper
2021-02-10 14:19:47 +01:00
e40827fbac
Renamed the java wrapper unit test runner script
2021-02-10 14:19:47 +01:00
a798e0c0a1
Made the java wrapper unit test run & pass
...
The kiwixlib java wrapper unit test can be run manually via the
src/wrapper/java/org/kiwix/testing/compile_test.sh script.
The test ZIM files in src/wrapper/java/org/kiwix/testing were created
using the create_test_zimfiles. They must be updated/re-generated and
committed in git whenever their source data or the create_test_zimfiles
script changes. Note: small.zim.embedded is not used at this point, it
was created for testing the enhancement coming in a few commits.
2021-02-10 14:19:47 +01:00
24b2e6e585
Remove unnecessary include.
2021-01-26 17:53:25 +01:00
3fd1310008
Use c++11 std::thread instead of pthread.
2021-01-26 17:53:25 +01:00
4749656828
Do not crash if zim file has no Counter
metadata.
2021-01-26 15:15:27 +01:00
84895c4036
Better </head> detection regex
2021-01-18 13:16:56 +01:00
a8bf9dd5b4
Better Kiwix Serve Taskbar insertion (after charset definition)
2021-01-18 11:18:53 +01:00
a61c94ef10
Add GPLv3 header
2021-01-18 10:54:33 +01:00
8c43fd8d36
Fix taskbar insertion in case of '<head>' attributes
2021-01-11 14:37:19 +01:00
3e2810dff4
Support 'video/*' * 'audio/*' mimetypes in getMediaCount()
2021-01-07 12:32:32 +01:00
44c4aa931a
Better use kiwix::startsWith()
2021-01-03 15:17:03 +01:00
95b32b168d
More robust getMediaCount()
2021-01-01 17:05:32 +01:00
1002c15e0d
Remove unnecessary checks.
...
`Reader` cannot be created with a null `zimArchive`.
We don't have to check for zimArchive being not null.
2020-12-09 14:25:02 +01:00
d51000c4a9
Use new libzim method hasFulltextIndex
to check for fulltext index.
2020-12-09 14:25:02 +01:00
ba302bed33
Use new libzim method getFaviconEntry
to get the favicon.
2020-12-09 14:25:02 +01:00
6900b4e506
fix build on FreeBSD
...
With this header, sockaddr_in and INADDR_ANY are not defined
2020-12-07 09:38:46 -05:00
1a5a2e7a8e
Adapt kiwix-lib to the new libzim api.
2020-12-02 12:16:48 +01:00