220 Commits

Author SHA1 Message Date
Matthieu Gautier
d2709b8bb4 Merge pull request #455 from kiwix/api-break-bumpup-major-version
Bump-up version to 10.0.0
2021-02-10 10:47:06 +01:00
Emmanuel Engelhart
6bfa1689d6 Bump-up version to 10.0.0 2021-02-10 10:31:01 +01:00
Kelson
9dabe6453d Merge pull request #452 from kiwix/version-update
Bump-up version (and libzim required version)
2021-02-08 21:30:11 +01:00
Veloman Yunkan
508a2174aa Bump-up version (and libzim required version) 2021-02-07 19:53:46 +04:00
Matthieu Gautier
3157cd155b Merge pull request #445 from kiwix/no_pthread 2021-01-26 18:06:16 +01:00
Matthieu Gautier
da247042c0 Use c++11 std::thread instead of pthread. 2021-01-26 17:53:25 +01:00
Kelson
50314fdae8 Merge pull request #428 from kiwix/libzim_next
Adapt kiwx-lib to the new api of libzim (libzim_next).
2020-12-03 09:11:28 +01:00
Matthieu Gautier
6706e04f50 Adapt kiwix-lib to the new libzim api. 2020-12-02 12:16:48 +01:00
Matthieu Gautier
6d527a9245 New version 9.4.1 2020-11-17 15:42:13 +01:00
Matthieu Gautier
9b4ac7997f New version 9.4.0 2020-08-28 16:04:40 +02:00
Matthieu Gautier
b5e458eb63 New version 9.3.1 2020-07-15 16:42:16 +02:00
Matthieu Gautier
e1433f8dea Release 9.3.0 2020-07-02 15:17:46 +02:00
Matthieu Gautier
e16a1937d2 Merge pull request #374 from kiwix/new_api_multithread_suggestion
Add new thread safe suggestion API.
2020-07-02 14:12:12 +02:00
Matthieu Gautier
995ad90a59 Add new thread safe suggestion API.
Previous API were using an internal vector to store the suggestions search
results.

The new API takes a vector as out argument. So user can call the functions
without having to protect the search.

We should change the android API to reflect the change but it is a bit
more complex to do at JNI level. As android do not call it multithreaded
we are safe for now. And we need the new API asap for kiwix-desktop.

So we keep the same API on android for now, the new api will be made
in next version.
2020-07-01 17:16:13 +02:00
Matthieu Gautier
86ca1f6468 Release 9.2.3 2020-07-01 11:33:30 +02:00
Matthieu Gautier
ff2dcb7e73 New version 9.2.2 2020-06-03 10:47:39 +02:00
Matthieu Gautier
add69cbcb3 New version 9.2.1 2020-06-02 10:18:12 +02:00
Matthieu Gautier
2420d6134a New version 9.2 2020-05-18 15:23:01 +02:00
Matthieu Gautier
92546e54ba New version 9.1.2 2020-04-20 15:31:14 +02:00
Matthieu Gautier
492ac43253 New version 9.1.1 2020-04-17 17:36:11 +02:00
Matthieu Gautier
25f9082a9e New version 9.1.0 2020-04-08 15:38:25 +02:00
Matthieu Gautier
edc88eb872 Merge pull request #330 from kiwix/block-external-links
Add external links blocking in serve
2020-03-30 16:57:08 +02:00
renaud gaudin
10523168bc moved blockExternalLink outside of taskbar
- `setBlockExternalLinks()` on server
- zero-dependency JS code
- JS script added in `inject_externallinks_blocker()`
- changed URL to `/catch/external?source=<source>`
2020-03-27 11:25:39 +00:00
renaud gaudin
1d38e7ae73 Add external links blocking in serve
In many use cases, it is not wanted to have user accidentaly click on external links
and leave the served ZIM content.
This could be because the result is unpredictible (reader not implementing this properly)
or because the serve user knows there's no backup internet connexion or because there is
an induced cost behind external links that doesn't affect served content.

using a new flag (`blockExternalLinks`) on `Response`/`setTaskBar`, a piece of JS code
is injected into the taskbar code.
This code adds a JS handler on all link click events and verifies the destination.
If the destination appears to be an external link (1), the link target is changed to
a specific URL:

```
/external?source=<original_uri>
```

(1) external is a link that's not on the same origin and starts with either `http:` `https:` or `//`.

Server implements a new handler on `/external` that displays a new page (`captured_external.html`)
which returns a generic message explaining the situation and offering to click on the link
again should the user really want to.
This is done by specifically asking `set_taskbar` to not block external requests on that page.

This approach allows integrators using a reverse proxy to handle that endpoint differently (rebrand it)

1. `Server` now has an `m_blockExternalLinks` defaulting to `false`
1. `Server.setTaskbar` is extended to support an additional bool to set the variable.
1. `Response` now has an `m_blockExternalLinks`
1. `Response` constr expects an additional bool for `blockExternalLinks`.
1. `Response.set_taskbar` is extended to support an additional bool to set the variable.
1. JNI/Java Wrapper reflects the extensions.
1. New resource file `templates/block_external.js` (included in head_part). Should it be in skin?
1. New resource file `templates/captured_external.html` for `handle_captured_external()`
1. Added a comment on `head_part.html` to help with JS insertion at the right place
1. `introduce_taskbar()` conditionnaly inserts the JS inside the taskbar
2020-03-26 12:06:36 +00:00
Matthieu Gautier
283ebd1fcf Merge pull request #328 from kiwix/java_article_size
[JAVA] Add a method to get the size of an article.
2020-03-04 17:10:18 +01:00
Matthieu Gautier
7455c55dd5 [JAVA] Add a method to get the size of an article.
Fix #327
2020-03-04 16:40:03 +01:00
Matthieu Gautier
a168b1df96 New version 9.0.1 2020-02-21 14:58:04 +01:00
Matthieu Gautier
572f9a0243 Merge pull request #326 from kiwix/fix_pair_size
[JAVA] Use a long to store the offset of a article in the zim file.
2020-02-19 14:58:43 +01:00
Matthieu Gautier
18eea94175 [JAVA] Use a long to store the offset of a article in the zim file.
Fixes kiwix/kiwix-android#1769
2020-02-19 14:27:51 +01:00
Matthieu Gautier
5a65413750 Merge pull request #325 from kiwix/new_version
New version 9.0.0
2020-02-12 14:54:12 +01:00
Matthieu Gautier
e2d57aa5dc New version 9.0.0 2020-02-12 14:48:03 +01:00
Matthieu Gautier
e68f164ad4 Merge pull request #323 from kiwix/fix_wrapper
Fix wrapper
2020-02-12 10:47:29 +01:00
Matthieu Gautier
9b83edd9e5 [Java] Add a wrapper on method to update book from another book or reader. 2020-02-11 17:44:14 +01:00
Matthieu Gautier
dc8be0398f Fix typo getTagStr in the wrapper 2020-02-10 17:25:31 +01:00
Matthieu Gautier
0cf2cedfdf Merge pull request #316 from kiwix/tagging_system
Tagging system
2020-01-30 18:21:28 +01:00
Matthieu Gautier
5cee77858e Add flavour attribute to book.
Fix #259
Fix kiwix/kiwix-tools#316
2020-01-30 17:48:56 +01:00
Matthieu Gautier
ed66344f31 Add method to get value of tag from a book.
Only the `getTagStr` method is available on android because we need a
proper exception handling on wrapping side.

Fix #298
2020-01-30 17:48:56 +01:00
Matthieu Gautier
5c3c637664 Android manager (#311)
Android manager
2020-01-28 15:48:38 +01:00
Matthieu Gautier
9ccee662b4 Fix typo in metadata. 2020-01-28 12:08:18 +01:00
Matthieu Gautier
85b482e482 Add a small java test on the kiwix-lib.
Will the compilation should be made by meson.
It seems it is not possible to specify a existing jar
to link with. Use a custom script for now.
2020-01-28 12:08:18 +01:00
Matthieu Gautier
6d897c5fce Create the jar library when creating the java wrapper. 2020-01-28 12:08:18 +01:00
Matthieu Gautier
b38b80690b Be able to create a wrapper for java.
Android is a specific wrapper.
Java is another one.
2020-01-28 12:08:18 +01:00
Kelson
a4de2b47e2 Bump-up version to 8.2.2 and update Changelog 2019-12-08 12:12:39 +01:00
Kelson
0aea397969 Merge pull request #300 from kiwix/exec-perm
Add execution permission to a few scripts
2019-12-08 10:03:57 +01:00
Kelson
79152fcc10 Add execution permission to a few scripts 2019-12-07 14:00:22 +01:00
Kelson
a3a91ef81b Bump-up to 8.2.1 in build.gradle 2019-11-27 19:15:24 +01:00
Matthieu Gautier
db39bd1390 New version 8.1.0 2019-09-26 15:56:30 +02:00
Matthieu Gautier
cb891c9a09 Fix join (#279)
Fix join
2019-09-17 16:28:52 +02:00
Matthieu Gautier
38e15fce07 New version 8.0.1 2019-09-17 16:22:28 +02:00
Matthieu Gautier
e240c9b5a7 new version 8.0.0 2019-09-17 11:47:18 +02:00