Commit Graph

1349 Commits

Author SHA1 Message Date
Chocobo1
e162aef5be Fix coding inconsistencies in preferences.html
1. Format table tags properly
2. Add a proper label tag
3. Don't use abbreviation for seconds, we use full name everywhere else
2020-03-24 16:14:37 +02:00
Chocobo1
837528c206 Use QDeadlineTimer for tracking WebUI banned duration
It simplifies our code and the new timer is monotonic.
2020-03-24 16:14:36 +02:00
Chocobo1
b19153287b Expose WebUI ban counter to users 2020-03-24 16:14:36 +02:00
Chocobo1
544d3f9025 Close document properly after writing
Closing document explicitly is recommended by MDN:
https://developer.mozilla.org/en-US/docs/Web/API/Document/write
2020-03-24 16:14:35 +02:00
Nick Korotysh
7a463299ea Inherit text color for filter list elements
Filter list (left side panel) in WebUI is implemented using <a> tags,
CSS defines default style for all <a> elements, and specific style for
filter list elements. Default style for <a> elements sets color, and
this color also used in list. This is looks not so well. So lets just
inherit text color from parent element, and as so as it is not set, so
default text color will be used.
This makes filter list looks like other UI elemets, making all UI more
consistent (like in desktop app).
2020-03-24 16:14:34 +02:00
Nick Korotysh
2f70d273b4 Use SVG image for WebUI favicon
This will allow browsers to get high quality icon with required
resolution instead of resizing some small raster image.
Browsers can have even more benefit from it. For example, Firefox uses
high resolution icon to display it in "Top Sites" instead of page
preview.

Nothing changes for browsers which doesn't support SVG favicons, older
PNG icon will be used in such case.
2020-03-24 16:14:29 +02:00
NotTsunami
0cd4900e92 Remove redundant null checks
Attempting to delete a null pointer is a noop in C++.

Closes #2864.

[1] https://isocpp.org/wiki/faq/freestore-mgmt#delete-handles-null
2020-03-24 16:14:28 +02:00
NotTsunami
7444227c9a WebUI: Use correct operators in logical expressions
As suggested in https://github.com/qbittorrent/qBittorrent/pull/11825#discussion_r365557626
2020-03-24 16:14:15 +02:00
FranciscoPombal
07196571e8 Add piece_extent_affinity to AdvancedSettings
Expose option in WebUI settings and WebAPI.

Requires WebAPI version bump.

Closes #11436.
2020-03-24 16:14:14 +02:00
Denis
b083bd78e7 WebUI: Fix first row renaming in files tab
Ids started from zero and first row converts to false.
Closes #11826.
2020-03-24 16:14:13 +02:00
Chocobo1
d7ab472363 Bump copyright year 2020-03-24 16:14:10 +02:00
An0n
c4eb6eccaf Change placement of stop tracker timeout 2020-03-24 16:14:10 +02:00
an0n666
1c091cef76 Expose stop_tracker_timeout in advanced settings 2020-03-24 16:14:09 +02:00
Chocobo1
e37b08a879 Remove unused variable 2020-03-24 16:14:08 +02:00
Chocobo1
39018ef1db Add explicit semicolon 2020-03-24 16:14:07 +02:00
Chocobo1
c6cadb6800 Remove duplicate line 2020-03-24 16:14:06 +02:00
FranciscoPombal
71ca3a5cc9 WebUI: fix populating statistics window
Closes #11665
2020-03-24 16:14:04 +02:00
Chocobo1
4205e99479 Migrate away from deprecated API in Qt 5.14 2020-03-24 16:14:01 +02:00
FranciscoPombal
35c7e6bf2c WebUI: Prevent excessive sync requests
Don't sync main data if a request to do so is already in progress.

This prevents piling up of requests and bogging down slow/busy machines, since the current implementation of `/api/v2/sync/maindata` is very computationally intensive, especially with lots of torrents.

Everything gets updated on the next scheduled request anyway (via the timeout mechanism).
2020-03-24 16:13:59 +02:00
FranciscoPombal
37bc47ee04 WebUI: remove unused/deprecated option
Fixup 8200ef6
Remove "Listen on IPv6 address" option.
2020-03-24 16:13:58 +02:00
FranciscoPombal
c5dc361213 WebUI: Implement "Secure" flag for session cookie
Closes #11724.

Option is enabled by default for users using qBittorrent's built-in HTTPS capabilities. This flag will never be set if qBittorrent is using plain HTTP.

Users using HTTPS reverse proxies, like "qbt <-> (http) <-> proxy <-> (https) <-> user" should override the flag in the proxy in order to set it, if they wish to do so.
2020-03-24 16:13:56 +02:00
Thomas Piccirello
63c9e29419 Rename Country column to "Country / Region"
Not all flags displayed strictly belong to countries.
2020-03-24 16:13:55 +02:00
sledgehammer999
dab392645d Sync translations from Transifex and run lupdate 2019-12-18 00:33:46 +02:00
sledgehammer999
2d1fa9e154 Bump Web API version 2019-12-18 00:33:44 +02:00
sledgehammer999
2bda2a37e3 Rework the listening IP/interface selection code
Closes #11561
2019-12-18 00:18:48 +02:00
nl6720
87e1c80e28 Fix quoting of alert() in client.js
Fix alert() I broke in #11615 .
2019-12-18 00:18:46 +02:00
Thomas Piccirello
2d3efbc711 Add ability to rename torrent files from the WebUI
Renaming folders is not yet supported. Closes #8892.
2019-12-18 00:18:45 +02:00
Thomas Piccirello
8e394e0cdb Fix incorrect function being used 2019-12-18 00:18:44 +02:00
nl6720
0623c623d5 Mention lack of HTTPS in WebUI magnet link warning
According to Mozilla docs, registerProtocolHandler() is only
available when using secure contexts (i.e. HTTPS for everything
outside localhost).
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/registerProtocolHandler

The message "Your browser does not support this feature" does not
make this obvious and can lead to confusion if the user is using a
modern browser.
2019-12-18 00:18:42 +02:00
Chocobo1
93fe20afcd Fix HTML elements size in search tab
Specifying a height/width value might cut the displayed text or
obstruct centering the text in the button, so let it auto decide
instead.
Closes #11553.
2019-12-18 00:18:39 +02:00
Chocobo1
7f217110cd Fix missing translations in search plugins dialog
Closes #11551.
2019-12-18 00:18:37 +02:00
sledgehammer999
f46058bbd6 Sync translations from Transifex and run lupdate 2019-12-02 23:37:06 +02:00
sledgehammer999
bd3f723ebf Merge pull request #11474 from sledgehammer999/webui_bump
Bump Web API version
2019-11-27 22:37:40 +02:00
sledgehammer999
c27457efda Sync translations from Transifex and run lupdate 2019-11-21 21:21:58 +02:00
Chocobo1
8fe8cbd3d1 Reuse code path in switch cases 2019-11-14 12:14:29 +08:00
Chocobo1
9b5df92078 Give better name to parameter checking function
This function will throw exceptions if the required parameters do not
exsit hence a stronger word is more appropriate here.

Also change the function parameter type to QVector. We don't need the
duplicate entries checking as currently we only use 3 fields at max and
can be easily checked by hand. So drop back to QVector which can be
constructed more efficiently.
2019-11-14 12:14:20 +08:00
sledgehammer999
eff0208382 Bump Web API version
Closes #11403
2019-11-11 02:18:59 +02:00
sledgehammer999
0ff3b7641d Correctly update WebUI translations 2019-11-11 02:13:35 +02:00
sledgehammer999
871161310b Sync translations from Transifex and run lupdate 2019-11-11 02:03:06 +02:00
Chocobo1
6fd678195c Replace deprecated Qt functions
QSet::toList() is replaced by QSet::values()
2019-10-31 12:40:24 +08:00
Chocobo1
e32ef7f5c5 Use implicit sharing when getting categories from Session class 2019-10-30 01:46:57 +08:00
sledgehammer999
009ccbef7f Bump Web API version
Closes #11304
2019-10-27 17:20:28 +02:00
Chocobo1
e0a23ba93d Use InfoHash type in queueing operations
This avoids redundant type conversions.
2019-10-02 15:21:16 +08:00
Mike Tzou
975b44d05f Merge pull request #11241 from thalieht/delfolder
Add "Remove torrent and its files" option to share ratio limiting
2019-09-29 09:51:41 +08:00
thalieht
53e7faa47c Rename share ratio limiting options 2019-09-26 13:34:03 +03:00
thalieht
07eb261991 Add "Remove torrent and its files" option to share ratio limiting 2019-09-26 13:34:03 +03:00
xnor
ecc3ff3ca4 WebUI: fix escaping of HTML special characters
JS code for torrent general properties, files, peers, trackers inconsistently
escaped HTML special characters, then the dynamicTable inconsistently escaped
again and then the value was set to HTML element text or html properties.

To fix this mess, don't escape any property values in the prop-*.js files.
Instead, make dynamicTable set HTML element text instead of html property by
default. This behavior can be overridden by setting a custom updateTd
function on the respective column, if needed. This is where the HTML escaping
should be done.

Also reordered existing updateTd functions to match column order, changed
custom updateTd functions from setting html to text property wherever possible,
removed custom updateTd functions that turned out to be redundant.
2019-09-21 13:09:42 +00:00
Thomas Piccirello
9804a2e06a Fix typo 2019-09-14 18:25:46 -07:00
Thomas Piccirello
1439bcc864 Move JavaScript code into explicit namespaces
This cleans up the global namespace by explicitly exporting shared values. All html and JavaScript files have been converted to use explicit exports except for client.js and mocha-init.js
2019-09-14 18:24:53 -07:00
Mike Tzou
f3b4fb8600 Merge pull request #11154 from ClemPera/patch-1
Remove max character limit of location path
2019-09-07 11:55:29 +08:00