sledgehammer999
6a82cb1af6
Update WebUI translations from old format
2024-03-16 01:20:11 +08:00
sledgehammer999
f8ae8f419d
Add helper scripts to manage WebUI translations
2024-03-16 01:20:11 +08:00
Chocobo1
ac91c1348b
Use client side translation for public login page
...
The translation strings are meant to be synced from Transifex.
2024-03-16 01:20:11 +08:00
Thomas Piccirello
c06817f4eb
Add button for sending test email
...
This allows for easily testing whether the provided email configuration is correct.
PR #20488 .
2024-03-08 21:51:44 +08:00
Vladimir Golovnev
1702b6c891
Correctly handle share limits in torrent options dialog
...
PR #20485 .
2024-03-04 11:54:10 +03:00
Loris Laera
f65af03c67
NSIS: Add Luxembourgish translation
...
PR #19943
---------
Co-authored-by: sledgehammer999 <hammered999@gmail.com>
2024-03-04 09:04:48 +02:00
sledgehammer999
a567f8b600
Update gitignore for vscode ( #20494 )
...
PR #20494
2024-03-03 13:51:06 +02:00
Chocobo1
71f1e6df59
GHA CI: disable security hardening flag
...
OpenSSL isn't compatible with `/guard:cf` flag so we omit it for now.
Related: https://github.com/openssl/openssl/issues/22554
Closes #20479 .
PR #20487 .
2024-03-03 13:49:07 +08:00
dependabot[bot]
896f5fe729
GHA CI: Bump action version
...
PR #20486 .
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-03 13:33:07 +08:00
sledgehammer999
8a1bc8e5fd
Bump copyright year
2024-03-03 06:02:40 +02:00
sledgehammer999
6964132475
Sync translations from Transifex and run lupdate
2024-03-03 05:53:09 +02:00
JayRet
f265eb0166
Improve WebUI login behavior
...
Closes #20441 .
PR #20442 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-03-02 14:47:02 +08:00
Vladimir Golovnev
0114610a40
Provide torrent creation feature via WebAPI
...
PR #20366 .
Closes #5614 .
Co-authored-by: Radu Carpa <radu.carpa@cern.ch>
2024-02-27 15:57:16 +03:00
Chocobo1
15697f904d
Add a small delay before processing the key input of search boxes
...
PR #20465 .
Closes #20025 .
Closes #20235 .
2024-02-27 12:57:55 +08:00
Chocobo1
46e8ee50c8
Allow to set custom suffix to window title
...
This is to allow users to differentiate qbt instances when there are multiple running.
PR #20429 .
Closes #17905 .
2024-02-27 12:41:12 +08:00
Chocobo1
364bcf73ee
Write format result directly to file
...
And not print to stdout.
2024-02-25 20:17:56 +08:00
Chocobo1
031fa6183c
Add viewport meta tag
...
This helps displaying WebUI on mobile devices. Note that WebUI aren't
optimized for mobile yet.
2024-02-25 20:17:56 +08:00
Chocobo1
66c34ddb6e
Avoid leaking user locale preference to the web
2024-02-25 20:17:56 +08:00
Chocobo1
3f2b4afc21
Add description meta tag
2024-02-25 20:17:56 +08:00
Chocobo1
e1fa7e01c6
Remove unneeded polyfill
...
All browsers already have native support for it.
2024-02-25 20:17:56 +08:00
Chocobo1
9192c988ed
Warp script in anonymous scope (IIFE)
...
It was erroneously removed in 9b64d50660
.
2024-02-25 20:17:56 +08:00
Chocobo1
cffd74b62a
Add support for SSL torrents
...
The 'SSL torrent' feature is not standardized. I.e. there are no BEP (BitTorrent Enhancement Proposals) associated with it, so we do not greatly encourage its usage as it will only work with libtorrent clients and derivatives. It will not work with other torrent clients that do not support the libtorrent specific implementation.
This PR aims to provide minimal support for those who need SSL torrents. Furthermore, it is intended that there will be no UI support (nor indication) of adding/creating SSL torrents.
* Prerequisites:
I omit the instructions of creating those files as the intended audience (experts & advanced users) should have no problem with it. All files are as follow:
1. Root (torrent publisher) certificate
2. Root private key
3. A .torrent file created with root certificate
5. Peer certificate (signed by the root certificate)
6. Peer private key
7. Diffie-Hellman parameters file
All files are stored in .pem format.
* Enable SSL torrent protocol in qbt
There are 2 hidden keys to put in qbt config file, under `[BitTorrent]` section:
1. `Session\SSL\Enabled`: set it to `true`.
2. `Session\SSL\Port`: set it to some unused port or omit the key entirely to let qbt pick one for you.
* Add an SSL torrent to qbt
The only way of adding an SSL torrent is via WebAPI. The `/api/v2/torrents/add` endpoint will support 3 additional parameters. You must provide them for an SSL torrent.
1. `ssl_certificate`: Contents of the peer certificate file (in PEM format).
2. `ssl_private_key`: Contents of the peer private key file.
3. `ssl_dh_params`: Contents of the Diffie-Hellman parameters file.
* Change the SSL parameters to a torrent
In case you provided wrong SSL parameters when adding a torrent, there is a new endpoint `/api/v2/torrents/setSSLParameters` that you can update the SSL parameters. The parameters (`ssl_*`) are the same as `/api/v2/torrents/add` endpoint.
* Query the SSL parameters of a torrent
There is a new endpoint `/api/v2/torrents/SSLParameters` that you can query the SSL parameters of a torrent.
References:
* https://www.libtorrent.org/manual-ref.html#ssl-torrents
* https://blog.libtorrent.org/2012/01/bittorrent-over-ssl/
PR #20338 .
---------
Co-authored-by: Radu Carpa <radu.carpa@cern.ch>
2024-02-25 19:58:58 +08:00
xavier2k6
c6ee0ff017
GHA CI: Bump libtorrent 2 version to 2.0.10
...
PR #20455 .
2024-02-25 19:30:20 +08:00
sledgehammer999
dc501c39be
Merge pull request #20444 from sledgehammer999/sync_changelog
...
Consolidate all the Changelog entries into master
2024-02-24 13:31:32 +02:00
Vladimir Golovnev
7786e1b084
Improve received metadata handling
...
Avoid blocking call to libtorrent when accessing underlying torrent_info object.
PR #20424 .
2024-02-21 17:25:54 +03:00
sledgehammer999
80dea08328
Consolidate all the Changelog entries into master
2024-02-18 20:26:10 +02:00
Chocobo1
bb8a012b1c
Revise cache internals
...
Now cache initialization and `get()` is less costly to use and it shifts the weight to `set()`.
PR #20430 .
2024-02-18 14:16:00 +08:00
Chocobo1
63c9b6388e
Rename to WebUI
...
PR #20428 .
2024-02-18 13:58:44 +08:00
Chocobo1
3d24a4e0f7
Specify standards conformance mode to MSVC
...
https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170
PR #20427 .
2024-02-18 13:03:00 +08:00
Vladimir Golovnev
f04edd555f
Open "lock" files for the same folder only once
...
PR #20414 .
Closes #12203 .
2024-02-15 08:42:44 +03:00
Chocobo1
e31b553807
Stop sync requests after qbt has been shutdown
2024-02-14 03:38:09 +08:00
Chocobo1
a9741bb203
Defer loading of js code on landing pages
...
So that DOM tree can be processed earlier.
2024-02-14 03:38:09 +08:00
Chocobo1
67e0a2de44
Combine script tags
2024-02-14 03:38:09 +08:00
Chocobo1
1afb3ff433
Add support for dark theme
2024-02-14 03:38:09 +08:00
Chocobo1
16a91f26fb
Simplify code
2024-02-14 03:38:09 +08:00
Chocobo1
963a7faab8
Migrate to Cache for commonly used data
...
Previously it was abusing the `localStorage` and now it is storing data in memory (per session).
2024-02-14 03:38:09 +08:00
Chocobo1
d06d5b923a
Cache program preferences
...
So that qbt can just use the data from memory which is vastly faster than waiting for a response
over the net.
2024-02-14 03:38:09 +08:00
xavier2k6
6d68ab4dae
GHA CI: Bump boost dependency and revise install method
...
PR #20371 .
2024-02-14 03:36:47 +08:00
Vladimir Golovnev
60bb819e2e
Allow WebAPI to specify filename and mime type for result data
...
PR #20377 .
2024-02-12 09:07:09 +03:00
Chocobo1
8ef99b336c
Remove 'no cache' directive for POST requests
...
The response for POST request is only cachable under a specific condition and
qbt doesn't use it.
https://developer.mozilla.org/en-US/docs/Glossary/Cacheable
2024-02-11 23:28:44 +08:00
Chocobo1
f7e9ff0fb0
Clean up functions in global scope
2024-02-11 23:28:44 +08:00
Chocobo1
9b64d50660
Conditionally hide settings in Advanced Options
2024-02-11 23:28:44 +08:00
Chocobo1
5fe5c333b5
Rename file
2024-02-11 23:28:44 +08:00
Chocobo1
49f819ef78
Use correct type for each option
2024-02-11 23:28:44 +08:00
Vladimir Golovnev
2755190d8e
Link PowrProf library to qBittorrent base
...
PR #20387 .
2024-02-10 11:59:14 +03:00
Chocobo1
f87ea1b5d3
Sort languages combobox by language code
...
* Avoid creating redundant file lists
* Sort languages combobox by language code
PR #20365 .
2024-02-05 13:44:18 +08:00
Vladimir Golovnev
88a4990435
Don't use iterator after erase
...
PR #20357 .
Closes #20356 .
2024-02-03 08:10:14 +03:00
Chocobo1
9bfb447dd3
Improve WebUI responsiveness
...
This migrates Category and Tag to `Map` type from `Object` type. And done some algorithm and data structure optimization.
PR #20297 .
2024-01-27 22:04:39 +08:00
Vladimir Golovnev
d652a10495
Add seeding limits to RSS and Watched folders options UI
...
PR #20324 .
Closes #19605 .
2024-01-27 14:30:27 +03:00
jNullj
df41940ebc
Fix typo in preferences.html
...
PR #20326 .
2024-01-26 10:58:57 +03:00