Commit graph

1295 commits

Author SHA1 Message Date
Chocobo1
7e99ce6d7f
Document current WebUI browser compatibility 2019-03-23 12:32:20 +08:00
Vladimir Golovnev (Glassez)
ead078a38e
Add preliminary support of libtorrent v1.2
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
Mike Tzou
20f2c86d25
Merge pull request #10214 from AceLewis/master
Remove autocorrect/autocapitalise in WebUI
2019-03-17 15:05:19 +08:00
thalieht
bcfa62cc76 Rename "#" column to "Tier" in the tracker list 2019-03-13 21:08:40 +02:00
sledgehammer999
c2d1af9853
Merge pull request #10338 from sledgehammer999/raise_qt5_ver
Raise minimum Qt version to 5.9.0
2019-03-08 00:42:26 +02:00
Chocobo1
adbd34c795
Move helper functions to Utils::Gui namespace 2019-03-05 14:55:22 +08:00
sledgehammer999
5c63ad3b95
Raise minimum Qt version to 5.9.0 2019-03-04 16:48:49 +02:00
thalieht
ce437817de Make various minor changes 2019-02-25 17:05:15 +02:00
thalieht
8a19a0d4a0 Remove const in declarations' arguments that are passed by value 2019-02-25 17:05:15 +02:00
thalieht
70f1537d9f Add const to almost all remaining vars and arguments that qualify 2019-02-25 17:05:15 +02:00
thalieht
8c944bd4e1 Avoid repeating the return type 2019-02-16 18:54:18 +02:00
thalieht
92a290895b Convert vars into refs to avoid copy construction from const refs 2019-02-16 18:54:17 +02:00
thalieht
d8cbc9266a Use 'auto' to avoid duplicating the type name 2019-02-16 18:54:17 +02:00
thalieht
947c7e1d64 Convert to range-based for loop 2019-02-16 16:53:26 +02:00
Mike Tzou
78ab0e4ba9
Merge pull request #10220 from thalieht/const
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
ca3ce87e06 Add const to many vars and arguments
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Mike Tzou
efed3fc78c
Merge pull request #10256 from Chocobo1/license
Add license header
2019-02-08 12:07:08 +08:00
Mike Tzou
c540e57f55
Merge pull request #10227 from Chocobo1/login
Prevent login credential appearing in URL
2019-02-07 13:16:24 +08:00
Chocobo1
6d29a3af60
Make use of std algorithms 2019-02-05 13:35:54 +08:00
Chocobo1
f789df7edf
Add license header 2019-02-04 17:28:55 +08:00
AceLewis
bfdd674054 Remove autocorrect/autocapitalise from filepaths on WebUI 2019-02-02 13:50:02 +01:00
Chocobo1
4483b72bfd
Move JavaScript code to its own file 2019-02-02 15:00:53 +08:00
Chocobo1
8096e49c24
Display warning when Javascript is disabled 2019-02-02 14:55:08 +08:00
Chocobo1
32474b05c5
Remove mootools lib from login page 2019-02-01 13:38:14 +08:00
Chocobo1
0738b3860b
Prevent login credential appearing in URL
Closes #10221.
2019-02-01 13:38:12 +08:00
Mike Tzou
40eb8a1f4a
Merge pull request #10175 from Chocobo1/cert
Load WebUI certificate & key from file path
2019-02-01 13:37:13 +08:00
Mike Tzou
0facdf3dfb
Merge pull request #10190 from Piccirello/webui-sorted-icon
Fix direction of Web UI sorted column icon
2019-02-01 13:20:54 +08:00
Mike Tzou
899b0c1104
Merge pull request #10096 from Piccirello/webui-libtorrent-version
Match WebUI About page to GUI
2019-01-31 13:14:46 +08:00
Chocobo1
5cdb3b6a2d
Load WebUI certificate & key from file path
This allow users to update certificate & key more easily, i.e. without the need to import them
into qbt.

Closes #6675, #7547, #8315, #8564.
2019-01-28 16:33:48 +08:00
Vladimir Golovnev (Glassez)
b0446380c6
Separate URL components before percent-decoding
Allow special characters in query string parameters.
Closes #9116.
2019-01-27 15:33:19 +03:00
Mike Tzou
b8def07cd8
Merge pull request #10146 from Piccirello/webui-escape-key
Add Web UI support for escape key
2019-01-22 11:30:50 +08:00
Thomas Piccirello
d1dc9a39ae Match WebUI About page to GUI 2019-01-20 18:40:25 -08:00
Thomas Piccirello
86c21baf40 Simplify tab logic 2019-01-20 18:39:15 -08:00
Thomas Piccirello
ece27b84cc Fix wrong element id being used 2019-01-20 16:00:29 -08:00
Thomas Piccirello
81943fb3b0 Fix direction of Web UI sorted column icon 2019-01-20 15:52:38 -08:00
Tom Piccirello
972b8d11fe
Fix broken image link 2019-01-18 17:49:55 -08:00
sledgehammer999
2ac7f2defe
Update copyright year 2019-01-17 01:08:51 +02:00
Mike Tzou
ec90b69c9e
Merge pull request #10061 from Piccirello/webui-cache-bust
Include application version in css/js url for cache busting
2019-01-16 12:32:04 +08:00
Thomas Piccirello
dbaebf4f33 Rename parametrics.js to speedslider.js 2019-01-14 02:00:08 -08:00
Thomas Piccirello
851c02acb0 Capitalize event name 2019-01-14 00:57:24 -08:00
Thomas Piccirello
2f33ecf37b Fix bug where input wouldn't always be focused 2019-01-14 00:57:24 -08:00
Thomas Piccirello
74a772aafb Add Web UI support for escape key 2019-01-14 00:57:24 -08:00
Mike Tzou
2e5c09aeba
Merge pull request #10130 from Chocobo1/svg
Fix icon issues
2019-01-14 10:52:45 +08:00
Vladimir Golovnev
7e98035df5
Merge pull request #10136 from glassez/drop-old-libtorrent
Drop support of libtorrent < 1.1.10
2019-01-12 09:44:24 +03:00
Vladimir Golovnev
198034f976
Merge pull request #10145 from glassez/drop-legacy-webapi
Drop legacy WebAPI support
2019-01-11 17:41:53 +03:00
Vladimir Golovnev (Glassez)
302c99d7d5
Drop support of libtorrent < 1.1.10 2019-01-11 15:13:17 +03:00
Mike Tzou
b7091cf9a4
Merge pull request #10006 from Piccirello/webui-tables
Allow WebUI Trackers and Content tables to be manipulated
2019-01-11 14:10:27 +08:00
Chocobo1
a8ba5bda79
Update WebUI img to use svg images 2019-01-11 13:53:32 +08:00
Chocobo1
6f34afce21
Fix speed limit icon too large on WebUI
Closes #10127.
2019-01-11 13:51:46 +08:00
Vladimir Golovnev (Glassez)
2ce3aa9731
Drop legacy WebAPI support 2019-01-10 20:16:06 +03:00
Thomas Piccirello
f0e67cbb53 Remove excanvas from WebUI
Excanvas adds Canvas support to IE 8 and lower, which we no longer support.
2019-01-04 23:48:17 -08:00
Mike Tzou
d7c561df6b
Merge pull request #10106 from Chocobo1/js
Various fixes in WebUI
2019-01-05 10:45:15 +08:00
Bert Verhelst
9f8f9b6702
Converted remaining icons to svg 2019-01-04 00:24:30 +02:00
Chocobo1
a0f3678163
Fix only the first newline char is replaced
Must use regex to replace all instances of newline chars.
2019-01-04 00:56:54 +08:00
Chocobo1
9289b009b6
Fix missing semicolon in WebUI 2019-01-04 00:56:43 +08:00
Thomas Piccirello
28fa5a895c Allow WebUI Content tab to be sorted 2019-01-03 00:34:59 -08:00
Thomas Piccirello
06edabb9be Encode torrent name before passing in URL 2019-01-03 00:34:59 -08:00
Thomas Piccirello
26a9af850b Move WebUI Peers code to separate file 2019-01-03 00:34:59 -08:00
Thomas Piccirello
a5266c7018 Prevent WebUI tables from being highlighted 2019-01-03 00:34:59 -08:00
Thomas Piccirello
5d114614bb Allow WebUI Trackers table to be manipulated 2019-01-03 00:34:59 -08:00
Mike Tzou
f3c65f34b6
Merge pull request #10075 from Chocobo1/login
Add autocomplete attribute to WebUI
2019-01-03 14:15:11 +08:00
Chocobo1
d133ccc69f
Add autocomplete attribute to WebUI
This helps the password manager to identify each field and provide
adequate actions.
2018-12-31 19:36:53 +08:00
sledgehammer999
d322e10a83
Merge pull request #10027 from glassez/compile-ts
Compile translations at build time
2018-12-31 11:31:45 +02:00
Thomas Piccirello
877a2a2802 Include application version in css/js url for cache busting
This change forces new versions of all css and js files to be picked up when qBittorrent is updated.
2018-12-28 13:35:49 -05:00
Thomas Piccirello
9197b0a5ea Add version to lib file name. Move parametrics out of lib folder. 2018-12-28 13:34:48 -05:00
sledgehammer999
7c172edd50
Sync translations from Transifex and run lupdate 2018-12-24 18:44:53 +02:00
Vladimir Golovnev (Glassez)
7b3eed323b
QMake: Compile translations at build time 2018-12-22 16:02:17 +03:00
Mike Tzou
8aa2789ded
Merge pull request #10023 from Chocobo1/html
Change qbt exit message to HTML5
2018-12-21 19:31:59 +08:00
Mike Tzou
25cefee0f8
Merge pull request #9959 from Chocobo1/strict
Use Javascript strict mode
2018-12-20 20:16:39 +08:00
Chocobo1
8dd334dc5d
Change qbt exit message to HTML5 2018-12-19 18:29:00 +08:00
Chocobo1
e98d4e874f
Unify translation files loading action
Since it is possible alternative WebUI could be coded in languages other than English,
WebUI must be able to load user-provided webui_en.qm.
At least one translated string must exist in order to generate an usable .qm file.
2018-12-18 23:14:09 +08:00
sledgehammer999
b69dd05216
Update WebUI .ts files 2018-12-17 01:16:23 +02:00
Mike Tzou
deed457764
Merge pull request #9993 from Chocobo1/referer
Enforce referrer-policy in WebUI
2018-12-14 13:23:04 +08:00
Mike Tzou
eebbf3b1ee
Merge pull request #9981 from Piccirello/webui-torrent-filter
Add torrent name filtering to WebUI
2018-12-14 13:18:29 +08:00
Chocobo1
c1912e17c1
Revise CSP header
The majority of the CSP is tuned for built-in WebUI, it may not be
suitable for alternative UI.

Also add QLatin1String to strings. This code path is called repeatedly,
it is worth adding QLatin1String to squeeze out the last bit of
performance.
2018-12-13 15:31:32 +08:00
Chocobo1
d0886f8db0
Reformat WebUI code 2018-12-12 12:30:39 +08:00
Chocobo1
ba32525b45
Fix errors from using strict mode 2018-12-12 12:09:55 +08:00
Chocobo1
1cb065edc6
Use Javascript strict mode 2018-12-12 12:07:31 +08:00
Thomas Piccirello
7f349732ee Send numeric status without translation 2018-12-11 01:37:33 -05:00
Thomas Piccirello
9e1f7a72b7 Simplify map initialization 2018-12-11 01:37:32 -05:00
Thomas Piccirello
33351e3d8d Add WebUI Trackers context menu 2018-12-11 01:37:32 -05:00
Thomas Piccirello
4947b0a44f Add DHT, PeX, and LSD to WebUI Tracker list 2018-12-11 01:37:32 -05:00
Thomas Piccirello
b8e4c6b0be Add additional Tracker columns to WebUI 2018-12-11 00:41:18 -05:00
Thomas Piccirello
dd790d94c9 Use const where appropriate 2018-12-11 00:41:18 -05:00
sledgehammer999
cd2c448e6d Bump Web API version 2018-12-11 00:41:18 -05:00
Mike Tzou
cf9d903ba9
Merge pull request #9541 from Piccirello/webui-file-priority
Set priority for multiple files in one WebAPI request
2018-12-11 13:32:53 +08:00
Thomas Piccirello
66015164d7 Fix display bugs in WebUI Files tab. Remove <IE9 support
Priority select boxes would frequently go blank due to an unexpected priority value. On first load, the torrent-scoped file checkbox's state was inconsistent with the state of the torrent's files.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
a44ed9cfd3 Fix incorrect priority value sent from WebUI
Closes #9070.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
c5b8f62780 Set priority for multiple files in one WebAPI request
Closes #6259.
2018-12-10 23:21:09 -05:00
Chocobo1
7fd30fa90f
Enforce referrer-policy in WebUI
This stops leaking private data to other websites via Referrer header.
2018-12-10 22:17:04 +08:00
Mike Tzou
e1f19b7c75
Merge pull request #9986 from Piccirello/webui-peers-columns
Match WebUI Peers table column order to GUI
2018-12-10 12:34:11 +08:00
Thomas Piccirello
66f6823965 Add torrent name filtering to WebUI
Closes #721
2018-12-09 11:30:56 -05:00
Mike Tzou
2eb213e2f9
Merge pull request #9758 from Piccirello/new-search-webui-2
Add Search feature to WebUI
2018-12-09 16:01:21 +08:00
Mike Tzou
0418401ddd
Merge pull request #9976 from Piccirello/fix-js-error
Fix JavaScript error
2018-12-09 15:56:38 +08:00
Thomas Piccirello
f3c1e82199 Match WebUI Peers table column order to GUI 2018-12-09 00:36:43 -05:00
Thomas Piccirello
a8d5b146be Fetch data less frequently when torrents tab isn't visible 2018-12-07 23:33:15 -05:00
Thomas Piccirello
b7ad751ec3 Add Search tab to WebUI
Closes #859, #8107.
2018-12-07 23:33:15 -05:00
Tom Piccirello
adcfbf0b8c
Fix JavaScript error
Fixes a JavaScript error caused by the element lookup returning null
2018-12-07 18:41:32 -05:00
Thomas Piccirello
3aeaf6a054 Disallow setting a blank alternative WebUI location 2018-12-07 00:57:59 -05:00
Thomas Piccirello
402715004c Add slow torrent options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
2ebc6a056e Add "Use alternative Web UI" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
c237accf82 Add "Apply rate limit to peers on LAN" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
e499e1ba85 Add email "From" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
abf43b695b Set WebUI download options using set preferences
"Start torrent" and "Create subfolder" are now set depending on the user's set preferences, which matches the behavior exhibited by the GUI.
2018-12-07 00:55:29 -05:00
Thomas Piccirello
7151d6babd Show list of categories on WebUI download page 2018-12-07 00:55:29 -05:00
Thomas Piccirello
a7c2ee3ce6 Hide WebUI text input for custom monitor save locations 2018-12-07 00:55:29 -05:00
Thomas Piccirello
19ccd8c7d3 Add "When adding a torrent" options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
d05cf47169 Add WebUI Auto TMM options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
bf4df54fb8 Replace all line breaks and fix legend code style. 2018-12-07 00:55:29 -05:00
Thomas Piccirello
127e4acb24 Add speed limit icons to WebUI Speed options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
b9229babfc Add WebUI Random port button and proxy unencrypted password notice 2018-12-07 00:55:29 -05:00
Thomas Piccirello
66e3be1579 Replace WebUI Options fixed-width labels
This allows the labels to auto-expand based on the language used, and also removes unnecessary whitespace. Additionally, this results in a look more consistent with the GUI which right-aligns labels.
2018-12-07 00:55:29 -05:00
Thomas Piccirello
99ca872011 Reorder WebUI options to match GUI 2018-12-07 00:52:50 -05:00
Mike Tzou
6bb4eb825b
Merge pull request #9942 from Chocobo1/pbkdf2
Do password hashing properly
2018-12-06 16:22:22 +08:00
Chocobo1
05d6a29416
Apply PBKDF2 when storing passwords 2018-12-05 13:28:42 +08:00
thalieht
1f36b8b89f Combine qAsConst() with copyAsConst() to asConst() 2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555 Convert all foreach() to range-based for() 2018-11-28 23:40:12 +02:00
Thomas Piccirello
4d3a894bcb Allow tables to be added without a parent panel 2018-11-28 00:21:56 -05:00
Thomas Piccirello
881b692c58 Simplify implementation 2018-11-28 00:21:56 -05:00
Thomas Piccirello
b2f454399c Add ability to pass urls to the webui download page 2018-11-28 00:21:56 -05:00
Thomas Piccirello
64c20bf6b2 Allow WebUI sidebar to be collapsed 2018-11-25 15:05:31 -05:00
Thomas Piccirello
2ef16f669b Show ellipsis when WebUI sidebar is too narrow 2018-11-25 14:57:49 -05:00
Vladimir Golovnev
0e8323659e
Merge pull request #9869 from Piccirello/download-bug
Fix WebUI bug on override of Start Torrent option
2018-11-25 06:40:22 +03:00
Mike Tzou
45cfac6c00
Merge pull request #9891 from Chocobo1/i18n
Fix missing words in WebUI
2018-11-24 10:55:13 +08:00
Chocobo1
b79a231d2e
Fix missing words in WebUI
This is because Qt translator returns empty string when the translation
is not provided, now we fallback to the original string from source code.

Closes #9868.
2018-11-23 23:42:20 +08:00
Mike Tzou
70707a2664
Merge pull request #9884 from Piccirello/webui-cookie-samesite
Add SameSite attribute to WebUI session cookie
2018-11-22 10:40:37 +08:00
Thomas Piccirello
cd47380b85 Add SameSite attribute to WebUI session cookie
This attribute prevents the cookie from being submitted on any cross-site request, strongly limiting CSRF.

Closes #9877.
2018-11-20 22:12:24 -05:00
Mike Tzou
d05897c89a
Merge pull request #9859 from Chocobo1/host
Add option for WebUI Host header validation
2018-11-20 12:37:55 +08:00
Mike Tzou
9826aec4cf
Merge pull request #9820 from Piccirello/webui-col-icon
Show icon in WebUI sorted column
2018-11-19 15:06:01 +08:00
Tom Piccirello
2d7138839d Fix WebUI bug on override of Start Download option
Disabled form values aren't submitted, causing the add_paused value not to be sent when Start Torrent was checked. qBittorrent would then fall back to the global Start Download preference.

Closes #9855.
2018-11-18 22:46:19 -05:00
Chocobo1
58be2d4bc2
Put WebUI security related options into a groupbox 2018-11-19 11:05:04 +08:00
Chocobo1
344e47dcfb
Add option for WebUI Host header validation
Closes #9743.
2018-11-19 11:05:04 +08:00
Chocobo1
d866033a8e
Fix divide-by-zero crash
Previously here was using a cheap method to avoid divisor becoming < 0, but from
the crash stacktrace it seems this is not enough, now the divisor is properly
clamped to have 1 as the minimum.
Also it will now display "Unknown" for invalid calculation results.

Closes #9857.
2018-11-18 13:50:23 +08:00
Thomas Piccirello
555382779c Show icon in WebUI sorted column 2018-11-12 19:37:54 -05:00
Chocobo1
3fa5358c3f
Remove speed limit checkbox in Options dialog
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Chocobo1
209e6a889a
Fix MSVC warning C4804
Full message of the warning:
webui\api\searchcontroller.cpp(54): warning C4804: '>': unsafe use of type 'bool'
in operation
2018-11-02 14:35:35 +08:00
Vladimir Golovnev
69bf848f32
Merge pull request #9777 from glassez/fix-altwebui
Fix Alternative Web UI to be available. Closes #9720
2018-10-29 09:20:14 +03:00
Vladimir Golovnev (Glassez)
f309a5279e
Fix Alternative Web UI to be available 2018-10-29 08:32:57 +03:00
Vladimir Golovnev
4fee16fafb
Merge pull request #8217 from Piccirello/webui-statusbar-freespace
Free disk space in WebUI status bar
2018-10-28 10:02:49 +03:00
Vladimir Golovnev (Glassez)
f0f329b402
Fix indentation in tstool.py 2018-10-26 20:46:02 +03:00
Vladimir Golovnev
30dadfceea
Merge pull request #9718 from qbittorrent/webapi-version-bump
Bump WebAPI version
2018-10-25 08:41:53 +03:00
Vladimir Golovnev
7e36cc746f
Merge pull request #8584 from Piccirello/new-search-api-2
WebUI search API. Closes #2495
2018-10-24 13:13:16 +03:00
Thomas Piccirello
f2957c721d Use QElapsedTimer 2018-10-22 23:17:46 -04:00
Thomas Piccirello
2aea235e34 Add free disk space to WebUI status bar
Closes #6829.
2018-10-22 22:06:14 -04:00
Tom Piccirello
41462a39c7
Bump WebAPI version 2018-10-17 10:54:40 -04:00
Thomas Piccirello
bab18036aa Fix WebUI Auto TMM context menu bug
When multiple torrents are selected with different Auto TMM values, the Auto TMM context menu option is hidden. This option is never unhidden, requiring a refresh of the page.
2018-10-15 21:08:42 -04:00
Thomas Piccirello
ae374f6903 Catch invalid values 2018-10-15 04:31:29 -04:00
Eugene Shalygin
e590fff2fe cmake: restore out-of-source build
Qt translations have to be compiled in a shared library or executable,
and since we use static libraries for the components, webui translation
files have to be compiled into the main executable.
2018-10-14 11:06:20 +02:00
Vladimir Golovnev
5d2e35d14d
Merge pull request #9026 from glassez/www-translate
Use independent translation for WebUI
2018-10-12 13:39:18 +03:00
Vladimir Golovnev
3e8f3d61fb
Merge pull request #9586 from Piccirello/webui-categories
Add categories WebAPI
2018-10-12 10:27:13 +03:00