Commit graph

141 commits

Author SHA1 Message Date
Théo Gaillard 1ba17a0e14
feat: centralize ytInitialData parsing 2020-11-26 13:43:53 +01:00
Théo Gaillard 480d31eb5e
fix: ytInitialData parsing with regex 2020-11-26 07:22:47 +01:00
Émilien Devos 3a2f4d4def
allow to set a custom anti-captcha api url (#1473) 2020-11-20 22:21:26 +01:00
Ben Heller 22d9d16a7a
Update parsing of ytInitialData (#1427)
Update parsing of ytInitialData
2020-10-22 10:02:15 +00:00
Perflyst f65e57ee82
Fix formatting 2020-10-03 15:19:12 +02:00
Ben Heller 4a6e920d0e
Use new youtube API to fetch channel videos (#1355)
* Use new API to fetch videos from channels

This mirrors the process used by subscriptions.gir.st. The old API is
tried first, and if it fails then the new one is used.

* Use the new API whenever getting videos from a channel

I created the get_channel_videos_response function because now instead
of just getting a single url, there are extra steps involved in getting
the API response for channel videos, and these steps don't need to be
repeated throughout the code.

The only remaining exception is the bypass_captcha function, which still
only makes a request to the old API. I don't know whether this code
needs to be updated to use the new API for captcha bypassing to work
correctly.

* Correctly determine video length with new api

* Remove unnecessary line
2020-09-02 20:28:57 +00:00
Omar Roth db83ede73c
Add missing default for ConfigPreferences 2020-07-26 11:09:45 -04:00
Omar Roth 452d1e8307
Fix warnings with latest version of Crystal 2020-07-26 10:59:31 -04:00
Omar Roth b5f79444f9
Fix optional value in data extractor 2020-07-21 20:11:13 -04:00
Omar Roth 8c65b8c16f
Update playlists to support polymer redesign 2020-06-24 22:19:36 -04:00
Omar Roth 056e7432bd
Update channel playlists to use polymer 2020-06-16 17:51:35 -05:00
Omar Roth 1eca969cf6
Add support for polymer redesign 2020-06-15 18:18:04 -05:00
Omar Roth c1cbdae5ee
Make HOST_URL constant 2020-06-15 18:13:14 -05:00
Omar Roth 4d4b6a2fa0
Remove top page 2020-06-15 18:11:36 -05:00
Omar Roth d30a972a90
Support Crystal 0.35.0 2020-06-15 18:11:06 -05:00
Omar Roth ca1185d0be
Fix warnings in latest version of Crystal 2020-04-09 12:18:09 -05:00
Omar Roth 3f97bebd69
Support adding video to playlist from watch page 2020-04-09 10:55:32 -05:00
Omar Roth 71bc9eea28
Add support for Anti-Captcha 2019-11-09 14:22:39 -05:00
Omar Roth bcdb8cd770
Fix default fo dark_mode 2019-11-04 17:08:13 -05:00
Omar Roth 03e24cccd0
Add support for configurable administrator email 2019-10-27 14:18:07 -04:00
Omar Roth 6930570fa2
Add HTTPClient pool 2019-10-25 12:58:16 -04:00
Omar Roth 7524b5e349
Move feed_menu and default_home into user preferences 2019-10-20 20:43:33 -04:00
Omar Roth be055d9dcb
Add support for custom playlists 2019-10-15 21:17:14 -04:00
Omar Roth 8c2ddb0255
Add config options for host binding and port 2019-09-24 13:38:50 -04:00
Omar Roth b1fc80b79a
Update sub_count extractor 2019-09-12 21:09:23 -04:00
Omar Roth 50d793e49b
Hide video count for auto-generated channels 2019-09-12 13:11:21 -04:00
Omar Roth 34c43b8349
Add support for abbreviated sub count in search 2019-09-12 13:06:27 -04:00
Omar Roth 059f50dad4
Add 'playlistThumbnail' to playlist objects 2019-08-21 19:08:11 -05:00
Omar Roth 9f9cc1ffb5
Refactor search extractor 2019-08-21 18:23:20 -05:00
Omar Roth 2b94975345
Fix playlist_thumbnail extractor 2019-08-16 20:06:21 -05:00
Omar Roth a19cdb5e72
Fix season playlists 2019-08-16 15:46:59 -05:00
psvenk f54fbd057e Add prefers-color-scheme support (#601)
* Add prefers-color-scheme support

This should fix <https://github.com/omarroth/invidious/issues/559>.
The cookie storage format has been changed from boolean
("true"/"false") to tri-state ("dark"/"light"/""), so that users
without a cookie set will get dark mode if they have enabled the dark
theme in their operating system. The code for handling the cookie
state, along with the user's operating system theme, has been factored
out into a new function `update_mode`, which is called both at window
load and at the "storage" event listener, because the "storage" event
listener is only trigerred when a change is made to the localStorage
from another tab/window (for more info - see
<https://stackoverflow.com/a/4679754>).
2019-08-15 11:29:55 -05:00
Omar Roth b63f469110
Fix typo in ConfigPreferences 2019-08-09 14:09:24 -05:00
Leon Klingele 46577fb128
Add support for player styles
This currently includes the following styles:

- Invidious, the default
- YouTube, using a centered play button and always visible video control bar

Implements https://github.com/omarroth/invidious/issues/670.
Supersedes https://github.com/omarroth/invidious/pull/661.
2019-08-09 02:04:36 +02:00
Omar Roth 1b74a04efd
Add 'force_resolve' to fix issues with rate limiting 2019-07-18 18:51:10 -05:00
Omar Roth 1a7b341745
Update Google login 2019-07-12 12:04:39 -05:00
Omar Roth af592ea8c1
Fix extraction for ytInitialData 2019-07-11 07:27:54 -05:00
Omar Roth 2cc25b1e6e
Add administrator option to disable proxying 2019-07-08 12:15:18 -05:00
Omar Roth f7dbf2bdd4
Add 'pipe' for proxying assets 2019-07-04 23:29:28 -05:00
Omar Roth 041debcd93
Revert "Chunk videoplayback response to avoid throttling"
This reverts commit 818cd2454d.
2019-07-01 10:45:09 -05:00
Omar Roth e30d70b6d4
Refactor proxy_list into global 2019-06-28 21:17:56 -05:00
Omar Roth 818cd2454d
Chunk videoplayback response to avoid throttling 2019-06-26 14:43:33 -05:00
Omar Roth 3be1c9261f
Fix sleep in pull_top_videos 2019-06-15 19:18:36 -05:00
Omar Roth fa6bf21cd1
Update Google login 2019-06-09 13:48:31 -05:00
Omar Roth b43e9ed7e7
Refactor 'description_html' 2019-06-08 15:08:27 -05:00
Omar Roth 58995bb3a2
Add support for log levels 2019-06-07 21:13:50 -05:00
Omar Roth 8c944815bc
Minor refactor 2019-06-07 21:13:50 -05:00
Omar Roth d6ec441c8e
Add buffer for notification channels 2019-06-03 13:36:49 -05:00
Omar Roth d892ba6aa5
Refactor connection channel for delivering notifications 2019-06-03 13:12:06 -05:00
Omar Roth 71bf8b6b4d
Refactor connect_listen for notifications 2019-06-02 07:41:53 -05:00