Commit Graph

2840 Commits

Author SHA1 Message Date
Brahim Hadriche
1fb0a49592 Make DASH absolute urls when local 2023-01-13 12:05:01 -05:00
DUOLabs333
4b2d942024 Convert tabs to spaces 2023-01-11 15:58:07 -05:00
Samantaz Fox
05258d56bd
Add support for the new channel layout - part 2 (#3419) 2023-01-10 21:16:12 +01:00
DUOLabs333
456e91426a Formatting 2023-01-08 16:44:44 -05:00
DUOLabs333
4fc1b8ae86 Remove superfluous 'end' 2023-01-08 16:20:23 -05:00
DUOLabs333
32471382c4 Different cosmetic fixes 2023-01-08 16:18:35 -05:00
Samantaz Fox
a37522a03d
Implement workaround for broken shorts objects 2023-01-08 13:50:52 +01:00
DUO Labs
8d08cfe30f
Add comments to src/invidious/yt_backend/extractors.cr
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-01-05 20:42:11 -05:00
Émilien Devos
98301a2237
Add ability to disable all user notifications (#3473) 2023-01-05 23:08:05 +00:00
DUOLabs333
0d3610f63d Change regex used in short_text_to_number 2023-01-04 18:12:15 -05:00
DUOLabs333
85dd3533bb Fix for the ArithmeticOverflow Problem 2023-01-03 20:18:10 -05:00
DUOLabs333
76758baab8 Removed unneccesary String::Builder and removed cues that was just a blank line 2023-01-03 13:10:26 -05:00
DUOLabs333
9d83e2da4e Add newline 2023-01-03 10:29:17 -05:00
DUOLabs333
45b8f6d0cd More linting 2023-01-03 10:25:05 -05:00
DUOLabs333
b49ed65a07 Linting 2023-01-03 10:21:16 -05:00
DUOLabs333
8df1c3bb57 Add support for timedtext captions 2023-01-03 10:17:47 -05:00
confused_alex
865704dc7b
Fixed dead link (#3526) 2023-01-01 18:41:58 +00:00
Samantaz Fox
f9eb839c7a
channel: remove dead playlists code 2022-12-22 17:26:32 +01:00
Samantaz Fox
69b8e0919f
api: Add support for the "featured channels" endpoint 2022-12-22 17:26:30 +01:00
Samantaz Fox
4e3a930626
frontend: Add support for the "featured channels" page 2022-12-22 16:13:35 +01:00
Samantaz Fox
b6a4de66a5
frontend: Unify the various channel pages 2022-12-22 16:13:34 +01:00
Samantaz Fox
40c666cab2
api: Add support for shorts and livestreams 2022-12-22 16:13:34 +01:00
Samantaz Fox
6c9754e663
frontend: Add support for shorts and livestreams 2022-12-22 16:13:34 +01:00
Samantaz Fox
5d6abd5301
extractors: Fix ReelItemRendererParser 2022-12-22 16:13:34 +01:00
Samantaz Fox
52ef89f02d
channel: Add support for shorts and livestreams (backend only) 2022-12-22 16:13:34 +01:00
Samantaz Fox
2903e896ec
channel: use YT API + extractors to fetch videos 2022-12-22 16:13:34 +01:00
Samantaz Fox
c5ee2bfc0f
channel: use YT API to fetch playlist items 2022-12-22 16:13:34 +01:00
Samantaz Fox
8e8ca4fcc5
Prepare to create a 'Channel' module 2022-12-22 16:13:34 +01:00
Samantaz Fox
ce7db8d2cb
extractors: Add continuation token parser 2022-12-22 16:13:26 +01:00
Samantaz Fox
bdc51cd20f
extractors: separate 'extract' and 'parse' logic 2022-12-04 18:24:39 +01:00
Samantaz Fox
9588fcb5d1
frontend: remove paging on channel videos 2022-12-04 15:31:50 +01:00
Samantaz Fox
fbcce57ce2
channel: use extractor utils to parse tabs (+ code cleaning) 2022-12-02 19:56:52 +01:00
Samantaz Fox
09b9b758de
Add param 8AEB for getting youtube stories (#3258) 2022-11-21 21:29:49 +01:00
Samantaz Fox
f44506b7e0
yt api: bump web client version 2022-11-20 23:48:59 +01:00
Samantaz Fox
afc0ec3c30
search: Fix short text parsing 2022-11-20 23:28:21 +01:00
Samantaz Fox
516efd2df3
Cleanup videos (#3238) 2022-11-17 01:03:23 +01:00
Samantaz Fox
47cc26cb3c
videos: fix 'Arithmetic overflow' error 2022-11-16 18:25:32 +01:00
Samantaz Fox
cc5c83333f
videos: improve fetching of streaming data 2022-11-13 14:40:00 +01:00
Wes van der Vleuten
c95ee10d69 Added parital watch indicator on more locations 2022-11-08 23:18:24 +01:00
Wes van der Vleuten
f604c1c68b Fixed thumbnails with darkreader, Added watched indicator in more locations 2022-11-08 23:15:42 +01:00
Wes van der Vleuten
7b57381773 Added watch indicator 2022-11-07 20:04:46 +01:00
Wes van der Vleuten
437f42250e
Watched marker 2022-11-07 03:49:00 +01:00
Samantaz Fox
9da1827e95
Dirty fix to get back the channel videos 2022-11-02 01:03:39 +01:00
Samantaz Fox
46a63e6150
extractors: Add support for reelItemRenderer 2022-11-01 17:48:43 +01:00
Samantaz Fox
f267394bbe
extractors: Add support for richGridRenderer 2022-11-01 17:48:35 +01:00
Samantaz Fox
2acff70811
videos: handle different JSON structs being present in cache 2022-10-31 20:30:35 +01:00
Samantaz Fox
db91d3af66
videos: Fix some bugs 2022-10-31 20:30:35 +01:00
Samantaz Fox
83795c245a
videos: Support the new like button's structure 2022-10-31 20:30:30 +01:00
Samantaz Fox
d659a451d6
videos: remove unused 'VideoRedirect' exception 2022-10-31 20:09:04 +01:00
Samantaz Fox
87a5d70062
videos: move API's JSON structure to a dedicated module 2022-10-31 20:09:04 +01:00
Samantaz Fox
ae03ed7bf7
videos: move player/next parsing code to a dedicated file 2022-10-31 20:09:04 +01:00
Samantaz Fox
e23ceb6ae9
videos: Fix extraction code according to tests 2022-10-31 20:09:04 +01:00
Samantaz Fox
7df0cfcbed
Videos: fix 'views' parsing for livestreams 2022-10-31 20:09:04 +01:00
Samantaz Fox
6aaea7fafa
Videos: parse data during first fetching
There will be less data to be stores in the DB cache
2022-10-31 20:09:04 +01:00
Samantaz Fox
cd03fa06ae
videos: move 'Caption' and associated global/functions to a separate file 2022-10-31 20:09:04 +01:00
Samantaz Fox
9baaef412f
videos: move 'VideoPreferences' and its associated function to a separate file
This will require some rework later.
2022-10-31 20:09:04 +01:00
Samantaz Fox
88141c459c
videos: move formats structure to a separate file/module 2022-10-31 20:09:04 +01:00
Samantaz Fox
6250039405
videos: move regions list to a dedicated file 2022-10-31 20:09:03 +01:00
Samantaz Fox
4055c3bec8
i18n: Add Bengali, Catalan, Basque, Sinhala and Slovak
Add languages even if translation is <= 25%
2022-10-30 13:46:28 +01:00
Samantaz Fox
72cf49eda1
Remove twitter:site meta tag from watch view (#3361) 2022-10-25 20:41:30 +02:00
Samantaz Fox
e2ab488e7f
Add meta tags to channels (#3347) 2022-10-25 20:39:06 +02:00
thecashewtrader
1e96206b0b Remove twitter:site meta tag from watch view 2022-10-25 15:49:45 +05:30
thecashewtrader
6f301db11c Remove twitter:site meta tag from channel view 2022-10-25 15:25:58 +05:30
Samantaz Fox
cdb370f56b
Add channel name to embeds (#3338) 2022-10-23 14:16:43 +02:00
thecashewtrader
a1e0a6b499 Add meta tags to channels 2022-10-15 19:37:47 +05:30
thecashewtrader
6ea3673cf0 Move uploader channel name to og:site_name 2022-10-13 21:44:16 +05:30
Samantaz Fox
3b39b8c772
Add table cleaning job (#3294) 2022-10-12 10:06:36 +02:00
thecashewtrader
ffb42a9b23 Add channel name to embeds 2022-10-08 15:13:02 +05:30
Samantaz Fox
dcfa0687f4
Allow to set max playlist length via a config variable (#3283) 2022-09-28 19:53:59 +02:00
Jakub Filo
7c45026383 Fix playlist limit 2022-09-28 12:21:23 +02:00
Samantaz Fox
221d472127
Replicate headers and params made by yt apps (#3290) 2022-09-15 23:26:21 +02:00
Samantaz Fox
7df176d750
Keep listen mode after related video click (#3160) 2022-09-11 15:32:14 +02:00
Samantaz Fox
53fb6ad039
Fix replies count (#3299) 2022-09-08 00:10:38 +02:00
Samantaz Fox
8ab339396a
Message when the video doesn't exist in playlist (#3243) 2022-09-03 19:26:05 +02:00
Samantaz Fox
5048a89b9b
Add/Change Javascript license notice (#3262) 2022-09-03 15:03:52 +02:00
Emilien Devos
c658fd27cc better spoof requests 2022-09-02 21:18:56 +02:00
Emilien Devos
260bab598e reword error messages 2022-09-02 20:20:43 +02:00
Emilien Devos
6f3b4fbaaf fix replies count 2022-09-02 20:16:02 +02:00
Émilien Devos
31244cbcc8 replicate headers and params made by yt apps 2022-08-30 14:20:08 +00:00
Andrei E
508a5761a1 Handle long usernames gracefully 2022-08-28 13:26:30 +01:00
Jakub Filo
4818b89ab1 Allow to set maximum custom playlist length via a config variable. 2022-08-27 22:36:07 +02:00
Émilien Devos
a7d9df5516
add check video id for android client too (#3280) 2022-08-25 10:39:10 +02:00
Émilien Devos
389e49183c throw error if the videoID returned is different 2022-08-23 19:34:54 +00:00
Emilien Devos
ca4c2115ee Message when the video doesn't exist in playlist 2022-08-23 11:45:44 +00:00
Samantaz Fox
5565204273
StaticFileHandler: use HTTP::Status rather than integers 2022-08-15 13:22:39 +02:00
Samantaz Fox
d950a0ef5d
StaticFileHandler: Adapt for Crystal 1.6
See:
 - https://github.com/crystal-lang/crystal/pull/12310
 - https://github.com/kemalcr/kemal/pull/644
2022-08-15 13:22:27 +02:00
Samantaz Fox
b2c0f7efc3
Fix missing hash key: "toggleButtonRenderer" (issue #3260) 2022-08-15 10:34:52 +02:00
Samantaz Fox
9e58bc19c4
Fix #3265 2022-08-13 20:23:45 +02:00
CalculationPaper
c847d6d370
Update licenses.ecr
Oh, it's handlers not helpers.
2022-08-12 19:59:35 +02:00
CalculationPaper
bbf66c9b72
Add/Change Javascript license notice 2022-08-12 07:58:52 +02:00
Samantaz Fox
cb8a375c5e
routing: Directly call Kemal's add_route function 2022-08-10 20:50:49 +02:00
Samantaz Fox
848a60aa9b
routes: remove useless 'locale' variable in error 505 handler 2022-08-10 01:01:31 +02:00
Samantaz Fox
88ea794fdb
routes: move error 404 logic to its own module 2022-08-10 01:00:44 +02:00
Samantaz Fox
870350fd61
routes: move before_all logic to its own module 2022-08-10 00:55:58 +02:00
Samantaz Fox
1e25894f7e
routing: move the remaining routes registration to a wrapper function 2022-08-10 00:48:09 +02:00
Samantaz Fox
223e74569a
routing: move feed routes registration to Invidious::Routing 2022-08-10 00:46:35 +02:00
Samantaz Fox
0a4d793556
routing: move search routes registration to Invidious::Routing 2022-08-10 00:31:15 +02:00
Samantaz Fox
5503914abe
routing: move playlist routes registration to Invidious::Routing 2022-08-10 00:26:41 +02:00
Samantaz Fox
906466d7fb
routing: move watch/embed routes registration to Invidious::Routing 2022-08-10 00:22:40 +02:00
Samantaz Fox
e2532de766
routing: move image proxy routes registration to Invidious::Routing 2022-08-10 00:20:04 +02:00
Samantaz Fox
3ac4390d11
routing: move channel routes registration to Invidious::Routing 2022-08-10 00:14:26 +02:00
Samantaz Fox
389ae7a573
routing: register playback routes with a function, rather than a macro 2022-08-10 00:10:29 +02:00
Samantaz Fox
176247091d
routing: register API routes with a function, rather than a macro 2022-08-10 00:07:47 +02:00
Samantaz Fox
e22cc73f32
routing: register user routes with a function, rather than a macro 2022-08-09 23:56:34 +02:00
Samantaz Fox
c23ad25899
routing: remove HEAD from HTTP methods
Kemal automatically creates an associated HEAD route for all GET routes
2022-08-09 23:39:53 +02:00
Émilien Devos
7f2ec18372
Add param 8AEB for getting youtube stories 2022-08-09 10:05:13 +02:00
Samantaz Fox
9cc0418769
Merge pull request #3249 from iv-org/improve-extractor 2022-08-07 21:58:17 +02:00
Emilien Devos
218f7be1a7 For android client send sdk version to youtube 2022-08-07 21:37:11 +02:00
Emilien Devos
246955b68a if case for sectionListRenderer 2022-08-07 10:31:42 +02:00
Samantaz Fox
b0be2237fa
Merge pull request #3248 from iv-org/fix-cookies 2022-08-07 01:33:11 +02:00
Samantaz Fox
945394fb1a
Merge pull request #3252 from SamantazFox/bump-ytapi-clients 2022-08-07 01:15:49 +02:00
Samantaz Fox
19886f71f5
Merge pull request #3250 from iv-org/fix-cookies 2022-08-07 00:52:30 +02:00
Samantaz Fox
23855c09dc
Remove 'screen' where not required 2022-08-07 00:37:09 +02:00
Samantaz Fox
618ab01cd7
Add TVHtml5 client 2022-08-07 00:36:22 +02:00
Samantaz Fox
349d90b60e
Add IOS clients 2022-08-07 00:32:26 +02:00
Samantaz Fox
9e7c2dcdbb
Move the default API key to a constant for clarity 2022-08-06 23:49:36 +02:00
Samantaz Fox
f353589a53
Bump web clients versions 2022-08-06 23:47:16 +02:00
Samantaz Fox
fc97929dee
Bump android app version 2022-08-06 23:28:19 +02:00
Émilien Devos
3d77642a1e
Disable decrypt_polling by default + add comment (#3244) 2022-08-06 17:09:10 +00:00
Emilien Devos
b55c1a35bf Set cookies to Lax 2022-08-06 19:01:57 +02:00
Mateusz Jabłoński
5df700a56e Added image tag to RSS channel for favicon rendering
https://validator.w3.org/feed/docs/rss2.html#ltimagegtSubelementOfLtchannelgt
2022-08-06 17:14:17 +02:00
Samantaz Fox
4ab54f284c
Merge pull request #3214 from SamantazFox/fix-scheduled-streams 2022-08-03 22:44:58 +02:00
Samantaz Fox
7e648840a1
Move InfoException to exceptions.cr 2022-07-19 21:05:49 +02:00
Samantaz Fox
049ed114fd
Separate video data fetching from parsing in videos.cr 2022-07-18 23:35:34 +02:00
Émilien Devos
6c4ed282bb HTML escape username 2022-07-14 21:26:58 +00:00
Samantaz Fox
c8765385df
Fetch data from next endpoint for scheduled streams 2022-07-14 17:56:53 +02:00
AHOHNMYC
0338b26d5c
Include _helpers.js in embedded view 2022-07-14 02:07:19 +03:00
Émilien Devos
586000ca3d add more explanation about checking the player dependencies 2022-07-12 08:38:22 +00:00
Samantaz Fox
abc81ebd08
Merge pull request #3165 from SamantazFox/small-fixes-06-2022 2022-07-11 17:41:58 +02:00
Samantaz Fox
cd6c73e487
Merge pull request #3162 from 138138138/138138138-audio-quality-1 2022-07-11 17:36:28 +02:00
Samantaz Fox
69ad57338f
Mention why we use multiple AdaptationSet for audio 2022-07-11 17:29:42 +02:00
138138138
cbcf31a4f9
Skip OTF streams in DASH audio
Skip OTF streams, prevent creating empty AdaptationSet in DASH audio
2022-07-10 16:54:56 +08:00
138138138
b19beac5b4
Update src/invidious/views/components/player.ecr
better syntax

Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2022-07-10 16:29:50 +08:00
Samantaz Fox
beb9894c47
Merge pull request #3124 from iv-org/add-404-status-code 2022-07-06 22:05:01 +02:00
Émilien Devos
5556a996cd
Update comment for NotFoundException 2022-07-06 19:59:05 +00:00
Samantaz Fox
f7b1dcc271
Don't treat LIVE_STREAM_OFFLINE playability status as an error (fixes #3155) 2022-07-04 22:24:36 +02:00
Samantaz Fox
eb226e1dcf
Remove all backend code related to dislikes 2022-07-04 22:24:23 +02:00
Samantaz Fox
06af5a004e
Remove useless link in item forms (buttons on thumbnail) 2022-07-04 22:24:11 +02:00
Samantaz Fox
ce32873ef8
Remove item (video/channel/mix) thumbnail from keyboard navigation tree 2022-07-04 22:23:56 +02:00
Samantaz Fox
99bc230fe6
Fix missing hash key: "availableCountries" (Closes #3047) 2022-07-04 22:23:31 +02:00
Samantaz Fox
0e3820b634
Add #to_http_params method to Query (Fixes #3148) 2022-07-04 22:21:27 +02:00
11tuvork28
864f27ef72 switched to extract_selected_tab for the community tab 2022-07-03 14:59:33 +02:00
11tuvork28
a8b72d8342 Fixed community tab 2022-07-03 14:23:34 +02:00
11tuvork28
15d2cfba90 Fix Missing hash key: "selected" (KeyError) 2022-07-03 14:03:42 +02:00
11tuvork28
2851d993ad updated comment to represent current structure 2022-07-03 14:03:30 +02:00
138138138
3f1d88282e
Update some comments 2022-06-25 19:26:14 +08:00
138138138
e0f6988eb5
DASH Default to high quality m4a 2022-06-25 18:52:34 +08:00
138138138
a62adccd3d
change lang to label
lang has to be BCP 47 standard. Using label also can let video.js know there are 2 audio tracks.
2022-06-25 16:33:02 +08:00
138138138
c75bf35f59
Update DASH format to serve 2 audio to player
player.audioTracks() can successfully show
tracks_: Array(2)
2022-06-24 17:26:30 +08:00
138138138
3013782b7b
formatting 2022-06-23 03:03:54 +08:00
138138138
81abebd144
Highest quality m4a on audio only mode as default
Audio mode will automatically select highest quality m4a as default.
2022-06-23 02:27:46 +08:00
138138138
140b6c1227
DASH playback force highest quality m4a
Since VideoJS is unable to handle adaptive audio quality, the best audo quality is forced for every video quality.
2022-06-23 02:13:22 +08:00
138138138
de74056925
Keep listen mode after related video click
When clicking the related videos, listen mode will be kept by passing listen=true/listen=false on the URL.
2022-06-22 20:09:29 +08:00
Samantaz Fox
b5c54b4e41
Merge pull request #3137 from SamantazFox/add-hashtags
Add hashtags
2022-06-09 00:35:09 +02:00
Samantaz Fox
23cd04fe88
Merge pull request #3116 from DoodlesEpic/fix-reddit-comments-nojs-ytkids
Fix document is empty error on yt kids video when reddit comments are enabled
2022-06-09 00:33:09 +02:00
Samantaz Fox
2313ca8f72
Merge pull request #3084 from AHOHNMYC/js-helpers-polyfills
JS refactoring part 2: helper functions, poyfills
2022-06-09 00:30:34 +02:00
Samantaz Fox
3593f67eb6
Fix: related videos is a Hash(String, String) 2022-06-08 23:57:16 +02:00
Samantaz Fox
d7f6b6b018
Fix CI: support reloadContinuationItemsCommand containers 2022-06-08 23:56:40 +02:00
Samantaz Fox
2b1e1b11a3
Fix CI: support BADGE_STYLE_TYPE_VERIFIED_ARTIST 2022-06-08 23:56:40 +02:00
Samantaz Fox
33da64a669
Add support for hashtags 2022-06-08 23:56:40 +02:00
meow
a402128a7d Move _helpers.js include from various .ecr's into template.ecr head tag 2022-06-05 21:19:59 +03:00
Émilien Devos
4ae77bcef9
Remove rating display from the frontend 2022-06-04 15:39:04 +02:00
Émilien Devos
e84416e56d
Remove dislikes icon (#3092) 2022-06-04 12:58:34 +02:00
Émilien Devos
c201ea53ba Add 404 status code on all possible endpoints 2022-05-27 14:06:38 +00:00
DoodlesEpic
ad37db4c82 Fix document is empty error on yt kids video when reddit comments are enabled 2022-05-24 20:34:36 -03:00
Samantaz Fox
6ff3a633f7
Merge pull request #2968 from mathiusD/description-link 2022-05-21 18:58:47 +02:00
Samantaz Fox
46891437e9
Add Estonian to i18n.cr 2022-05-21 18:39:49 +02:00
Samantaz Fox
32be373552
Invert title & video ID in downloaded file name
Fixes a regression of #2922
Issue reported by email
2022-05-19 23:16:51 +02:00
Féry Mathieu (Mathius)
d8fb4f0a87
Update text_to_parsed_content for add docs
Follow this comment :
https://github.com/iv-org/invidious/pull/2968#discussion_r851808433
2022-05-18 23:45:47 +02:00
Féry Mathieu (Mathius)
2e195575a6
Rename uriMatch to urlMatch inside comments.cr
This refactor update text_to_parsed_content method
2022-05-18 23:45:47 +02:00
Féry Mathieu (Mathius)
28efeaa4f2
Update management of channel description
Follow this comment :
https://github.com/iv-org/invidious/pull/2968#issuecomment-1066428317
2022-05-18 23:45:28 +02:00
Samantaz Fox
137534f901
Fix for #3096 2022-05-18 23:36:50 +02:00
Féry Mathieu (Mathius)
c9594d46af
Add links redirect inside channel description 2022-05-18 23:24:41 +02:00
meow
1097648f0a Fix HTML validation. This is how browser really split tags 2022-05-17 10:09:01 +03:00
Samantaz Fox
ca27e096f3
Merge pull request #3094 from rfwatson/remove-puts-statements
Remove puts statements in config.cr
2022-05-11 17:49:45 +02:00
Rob Watson
125997f45f Remove puts statements in config.cr 2022-05-11 10:22:39 +02:00
Samantaz Fox
81ca205caa
Fix download of captions 2022-05-07 15:34:56 +02:00
meow
7dd699370f js code rewrite. Created _helpers.js with XHR and storage wrapper 2022-05-06 04:46:59 +03:00
Samantaz Fox
9bd9dcc41c
Add Slovenian to i18n.cr 2022-05-04 22:36:31 +02:00
Samantaz Fox
059796c60d
Merge pull request #3076 from SamantazFox/fix-3062-3063
Fix regressions of #2936
2022-05-04 22:29:10 +02:00
Samantaz Fox
b0342b7449
Other minor fixes 2022-05-03 22:28:19 +02:00
Samantaz Fox
b867dd82ca
Merge pull request #3077 from SamantazFox/verified-checkmark
Merge "Youtube verification badge" again (with fixes)
2022-05-02 23:57:01 +02:00
Samantaz Fox
a122286d48
Add Hindi to i18n.cr 2022-05-02 20:49:12 +02:00
Samantaz Fox
b84ce6a556
Fix "cast from Nil to Bool failed" 2022-05-01 21:11:12 +02:00
Samantaz Fox
f5fb4c6c64
Apply 2859.diff 2022-05-01 21:10:43 +02:00
Samantaz Fox
ac686fefe1
Merge pull request #3075 from SamantazFox/video-api-newpipe-compat-2
Video API: Improve NewPipe compatibility (part 2)
2022-05-01 19:11:59 +02:00
Samantaz Fox
e690e166b0
Fix javascript:void(0) instead of youtu.be links 2022-05-01 18:48:08 +02:00
Samantaz Fox
6a02dd8842
Fix broken hashtag links 2022-05-01 17:42:53 +02:00
Samantaz Fox
7f2176d7fc
Add 'targetDurationSec' and 'maxDvrDurationSec' to videos API 2022-05-01 17:21:10 +02:00
Samantaz Fox
96afc1a45d
Revert html escaping of backtrace 2022-05-01 13:40:02 +02:00
Émilien Devos
595c3fb833
Revert "Youtube verification badge" (#3070) 2022-04-30 23:42:38 +02:00
Samantaz Fox
1d25c55c0b
Merge pull request #2859 from jonas-w/verified-badge
Youtube verification badge
2022-04-30 18:54:38 +02:00
Samantaz Fox
b7f0b054b8
It's OTF, not OFT 2022-04-27 21:46:45 +02:00
Samantaz Fox
8144308aee
Add extra data to 'adaptiveFormats' in videos API 2022-04-27 00:22:34 +02:00
Samantaz Fox
0503d2a9f3
Fix 'adaptiveFormats' not available for livestreams in videos API 2022-04-27 00:22:10 +02:00
Samantaz Fox
d4acd03698
Merge pull request #3044 from MathiusD/base-time-code-lost
Fix regression related of timestamp 0:00
2022-04-24 17:32:01 +02:00
Émilien Devos
2ea986326d
Bump videojs to 7.12.1 (#3011) 2022-04-22 22:37:45 +02:00
Féry Mathieu (Mathius)
da53de2097
Fix regression related of timestamp 0:00 2022-04-20 00:42:09 +02:00
Samantaz Fox
3702e8c6fe
Fix comment "pings" (#3038) 2022-04-17 18:02:47 +02:00
Samantaz Fox
0a1614a872
Also move the other Kemal class override to src/ext/ 2022-04-16 22:48:24 +02:00
Samantaz Fox
1f66d7ef74
Keep using kilt for rendering
Directly using Crystal's ECR seems to be causing issues, so
don't use kemal's 'render' macro and patch 'content_for' to
have the same behavior as before Kemal v1.1.1
2022-04-16 22:48:24 +02:00
Samantaz Fox
84b6429ca6
Fix error due to templating engine change 2022-04-16 22:48:24 +02:00
Samantaz Fox
fa4ce6b4e6
Merge pull request #3033 from SamantazFox/search-fixes
Search fixes
2022-04-16 20:32:41 +02:00
Samantaz Fox
4130136718
Merge pull request #2936 from MathiusD/expand-link
Increase size of links displayed in video description
2022-04-16 20:31:28 +02:00
Samantaz Fox
c7c1b8d4f1
Fix issues in Search::Query 2022-04-16 20:25:25 +02:00
AHOHNMYC
570dbc7b47
Fix filter checkbox
Due to different prefixes in id (`filter-features` in `input` and `filter-feature` in `label`) click on `label` didn't affect corresponding checkbox.
2022-04-16 08:58:45 +03:00
Féry Mathieu (Mathius)
6c122248f5
Update regex reduce_uri utils
Follow this comment :
https://github.com/iv-org/invidious/pull/2936#discussion_r850712676
2022-04-14 22:42:21 +02:00
Samantaz Fox
8262aa4138
Merge pull request #2895 from MathiusD/master
Persist player volume/speed
2022-04-09 20:05:28 +02:00
Samantaz Fox
5637c6e651
Merge pull request #3013 from iv-org/rescue-db-errors-get-video
Rescue DB errors in get_video()
2022-04-09 19:35:49 +02:00
Leo
6f705b053a
Updates the URL of the var url_faq (#3016) 2022-04-09 08:20:28 +02:00
Samantaz Fox
4900ce24fa
Merge pull request #2956 from SamantazFox/search-filters
Overhaul search filters
2022-04-08 23:49:03 +02:00
Samantaz Fox
135aaf56fd
Rescue DB errors in get_video() 2022-04-08 22:52:34 +02:00
Samantaz Fox
62d7abdd9e
Add a user friendly message for when no results are found 2022-04-08 22:28:43 +02:00
Féry Mathieu (Mathius)
68ac18dc98
Remove useless call
Follow this comment :
https://github.com/iv-org/invidious/pull/2936#discussion_r841277735
2022-04-03 23:26:34 +02:00
Samantaz Fox
af02917766
Code cleanup 2022-04-03 22:28:11 +02:00
Samantaz Fox
d93a7b315d
Make use of Search::Query/Filters and associated HTML generator 2022-04-03 22:27:52 +02:00
Samantaz Fox
a813955ad3
Add Search::Query class to handle search queries 2022-04-03 20:03:34 +02:00
Samantaz Fox
1e3425fdee
Add filters UI HTML generator 2022-04-03 20:01:24 +02:00
Émilien Devos
c152243b4d
new method for bypassing age restriction (#2996) 2022-03-30 19:52:39 +02:00
Samantaz Fox
6991d0851f
Add a function to generate HTTP::Params from Filters 2022-03-29 20:31:23 +02:00
Samantaz Fox
fb2a331f79
Add a function to parse search filters from invidious URL params 2022-03-29 20:31:23 +02:00
Samantaz Fox
c888524523
Add a function to parse invidious legacy search filters 2022-03-29 20:31:23 +02:00
Samantaz Fox
75c9dbaf6b
Add a function to parse youtube search parameters 2022-03-29 20:31:23 +02:00
Samantaz Fox
c01a29fe76
Add a function to build youtube search filters
(it aims at replacing produce_search_params)
2022-03-29 20:31:23 +02:00
Samantaz Fox
80417281c4
Add a struct for search filters 2022-03-29 20:31:23 +02:00
Samantaz Fox
f9b8bc006f
Create a search processors module 2022-03-29 20:31:23 +02:00
Jonas Wunderlich
ec3e67e0d2 Wait that was too much replacing 2022-03-26 20:18:24 +01:00
Jonas Wunderlich
611e7e9dd8 Changed icon to checkmark and for verified author to checkmark-circle 2022-03-26 20:13:33 +01:00
Samantaz Fox
ed265cfdcd
Request minified JSON from innertube (#2974) 2022-03-16 09:07:30 +01:00
Jonas Wunderlich
aa09bbe23d Done some refactoring 2022-03-13 20:16:30 +01:00
Jonas
a09fbad8b0
Merge branch 'iv-org:master' into verified-badge 2022-03-13 19:06:52 +01:00
AHOHNMYC
357ba2f4f6
Uppercase some first letters 2022-03-13 08:53:27 +03:00
Samantaz Fox
6d3b907307
Update --help to mention that --migrate is still in beta 2022-03-11 20:51:12 +01:00
Samantaz Fox
55da1e3e92
Merge pull request #2878 from matthewmcgarvey/migrations
Add custom migration implementation
2022-03-11 20:49:26 +01:00
Samantaz Fox
f7b557eed1
API: fix suggestions not workin
Closes #2914 
Thanks to @TiA4f8R for the help
2022-03-06 01:12:57 +01:00
Féry Mathieu (Mathius)
19805b91d9
Patch links related to youtube.com
Related to followings comments :
- https://github.com/iv-org/invidious/pull/2936#discussion_r815253405
2022-02-26 17:53:39 +01:00
Féry Mathieu (Mathius)
420c458b6a
Update links related to youtube.com
Following comment at :
- https://github.com/iv-org/invidious/pull/2936#discussion_r814435888
2022-02-25 21:07:12 +01:00
Jonas
6de449811d
Merge branch 'iv-org:master' into verified-badge 2022-02-25 19:29:12 +01:00
Féry Mathieu (Mathius)
0f1bb3fb3b
Update reduce_uri signature
Following request_change at :
- https://github.com/iv-org/invidious/pull/2936#discussion_r814436660
2022-02-25 11:47:07 +01:00
Féry Mathieu (Mathius)
78c447829a
Increase size of links displayed in video description 2022-02-25 02:11:30 +01:00
Samantaz Fox
7f445f6167
Merge pull request #2915 from MathiusD/RefreshChannelsJob-frenquency
Allow configuration of the time between 2 RefreshChannelsJob
2022-02-25 00:04:48 +01:00
Samantaz Fox
575b039170
Merge pull request #2922 from SamantazFox/download-widget-fix
Download widget fix
2022-02-24 22:53:06 +01:00
Samantaz Fox
7a32269d7f
Merge pull request #2925 from matthewmcgarvey/routes-final
Move last remaining routes in main file to new pattern
2022-02-24 22:49:01 +01:00
Samantaz Fox
004e371051
Don't double-encode file title 2022-02-24 22:37:54 +01:00
matthewmcgarvey
d5f43bae92 Combine notifications endpoints and move them 2022-02-23 22:45:07 -06:00
matthewmcgarvey
e215a20a0a Move live endpoints into Channels route 2022-02-23 22:41:34 -06:00
matthewmcgarvey
919413e2b9 Move captcha endpoint into Login route 2022-02-23 22:39:43 -06:00
Samantaz Fox
6082887070
Add missing '_label' suffix to translation identifier 2022-02-23 16:43:59 +01:00
Samantaz Fox
8da336b7aa
Move the "watch history" checkbox under the "user" section 2022-02-23 16:42:34 +01:00
Le Jester
897f871f99
Make the history recording optional. 2022-02-23 13:03:21 +01:00
Samantaz Fox
2f335b3d2c
Use a dedicated endpoind for downloads
This allows us to not pass file name ("title") in the form
data and to enforce some sanity checks
2022-02-23 13:00:30 +01:00
matthewmcgarvey
3b1837a99b Move remaining routes to new structure 2022-02-22 23:20:09 -06:00
matthewmcgarvey
cc59de0c93 Extract live endpoints to route 2022-02-22 23:04:30 -06:00
Féry Mathieu (Mathius)
e60a1836fe
Lint config.example.yml and config.cr
Follow lint indications :
- https://github.com/iv-org/invidious/pull/2915#discussion_r812396203
- https://github.com/iv-org/invidious/pull/2915#discussion_r812396807
2022-02-22 23:19:59 +01:00
Samantaz Fox
b58b0440d6
Fix captions regex 2022-02-22 19:44:41 +01:00
Féry Mathieu (Mathius)
09a585c93b
Add sameSite policy in cookie management in server side 2022-02-22 18:57:21 +01:00
Samantaz Fox
fe057c7873
Make a function that builds the download widget's HTML 2022-02-22 17:42:41 +01:00
Féry Mathieu (Mathius)
555bb711c9
Removal of changes to methods now unrelated to the issue
Unrelated to the issue since the change in management of channel_refresh_interval
Cf this remark : https://github.com/iv-org/invidious/pull/2915#discussion_r811373503
2022-02-22 08:17:50 +01:00
Féry Mathieu (Mathius)
fd0ac3a671
Update management of channel_refresh_interval
Follow indications:
https://github.com/iv-org/invidious/pull/2915#discussion_r811373503
2022-02-22 01:35:35 +01:00
Féry Mathieu (Mathius)
f109d812a1
Move TimeSpanConverter with another Converters
Follow indications :
https://github.com/iv-org/invidious/pull/2915#discussion_r811373953
2022-02-22 01:34:19 +01:00
Féry Mathieu (Mathius)
5d2f2690e2
Lint config properties
Follow lint indications :
https://github.com/iv-org/invidious/pull/2915#discussion_r811375584
2022-02-22 00:59:55 +01:00
Féry Mathieu (Mathius)
dfab62ce48
Rename new property to channel_refresh_interval
Follow indications :
https://github.com/iv-org/invidious/pull/2915#discussion_r811373503
2022-02-22 00:46:26 +01:00
Samantaz Fox
857096ba5f
Merge pull request #2910 from MathiusD/expose-version
Expose version by default on api/v1/stats
2022-02-22 00:39:54 +01:00
Samantaz Fox
fd55b08a1d
Add albanian to the locales list 2022-02-22 00:17:18 +01:00
Féry Mathieu (Mathius)
18197e7e3e
Lint description of channel_refresh_time 2022-02-21 11:13:24 +01:00
Féry Mathieu (Mathius)
f75a81c9ee
Make configurable time between each RefreshChannelsJob 2022-02-21 10:53:20 +01:00
Féry Mathieu (Mathius)
dbba9d7687
Expose version in /api/v1/stats with statistic disabled 2022-02-18 17:23:16 +01:00
Samantaz Fox
7112f35793
comments: don't error out when video has no comments
continuationItems is nil when video has no comments
2022-02-14 21:54:26 +01:00
Féry Mathieu (Mathius)
7048193f00
Move store of modification in Cookie instead of localStorage 2022-02-14 17:22:06 +01:00
Féry Mathieu (Mathius)
c952754c8c
Add videojs-persist plugin 2022-02-14 17:01:10 +01:00
Samantaz Fox
85ba04b715
Merge pull request #2871 from SamantazFox/user-code-cleaning
User code cleaning & fixing
2022-02-14 15:38:05 +01:00
Samantaz Fox
8af202e86b
Merge pull request #2892 from matthewmcgarvey/video-playability
Raise error if video not playable, also handle missing related videos
2022-02-14 00:59:07 +01:00
Samantaz Fox
57353fe0c6
Fix Freetube subscriptions import 2022-02-13 22:40:51 +01:00
Samantaz Fox
60e870b277
Fix OPML import 2022-02-12 17:32:20 +01:00
matthewmcgarvey
bf054dfda5 Do not check for pending migrations on app start
This is so that we don't break deploys with this PR.
Instead we only ship the 'invidious --migrate' cli command
and let people test that. Maybe even ship a new migration that wouldn't break
apps that don't run the migrations. Then we roll out the functionality
that requires migrations.
2022-02-12 09:20:43 -06:00
matthewmcgarvey
59654289cb Run migrations through CLI instead of when app starts 2022-02-11 22:43:16 -06:00
matthewmcgarvey
cf13c11236 Migrations tweaks 2022-02-11 22:29:19 -06:00
matthewmcgarvey
ddf1e84f7c Raise exception if playability not ok, also handle missing related videos 2022-02-10 23:43:14 -06:00
Samantaz Fox
01135db80a
video_playback: Check "host" parameter validity 2022-02-11 02:04:05 +01:00
Samantaz Fox
cdd473e195
DB: fix inverted arguments in User.update_password()
Closes https://github.com/iv-org/invidious/issues/2875
2022-02-10 19:52:45 +01:00
Samantaz Fox
da10cdd5ab
Merge pull request #2872 from SamantazFox/misaligned-captions
Use a regex to fix badly aligned captions
2022-02-10 18:38:59 +01:00
matthewmcgarvey
8ec992a8a3 Add custom migration implementation 2022-02-09 00:50:32 -06:00
Samantaz Fox
ec55b905cb
Fix empty error page on BrokenTubeException 2022-02-09 01:36:17 +01:00
Samantaz Fox
492d1144e0
Apply changes from code review 2022-02-08 03:05:49 +01:00
Samantaz Fox
4f4b19a962
embed page: fix typo in videojs-overlay script URL 2022-02-08 02:41:08 +01:00
Samantaz Fox
febd785428
Add missing subtitle languages 2022-02-08 02:13:14 +01:00
Samantaz Fox
76cc8ac66b
HTML escape error message 2022-02-08 01:48:44 +01:00
Samantaz Fox
f73aef33f0
Add compile option to disable fetching of player dependencies 2022-02-07 22:45:08 +01:00
Samantaz Fox
d12dff9dcf
Use a regex to fix badly aligned captions 2022-02-07 22:18:24 +01:00
Samantaz Fox
99d770be64
Move user pages (ECR files) to subfolder 2022-02-07 17:39:15 +01:00
Samantaz Fox
71a8867a4a
Move user cookies to their own module 2022-02-07 17:39:15 +01:00
Samantaz Fox
2bbd424fce
Move import logic to its own module 2022-02-07 17:38:50 +01:00
Samantaz Fox
ef8dc7272b
Put CSV import function under its own module 2022-02-07 17:15:22 +01:00
Samantaz Fox
ad4a06fca5
Move user captcha code to its own module 2022-02-07 17:15:22 +01:00
Samantaz Fox
c04f45d5e3
Move user struct to own file, under Invidious namespace 2022-02-07 17:15:22 +01:00
Samantaz Fox
fb36155022
Move user routes definitions to a macro in routing.cr 2022-02-07 17:15:21 +01:00
Samantaz Fox
7ace3fc989
Move remaining user-related routes out of main file 2022-02-07 17:15:21 +01:00
Samantaz Fox
170e754998
Merge pull request #2868 from SamantazFox/related-channels-items-fix
Related channel may contain a continuation entry
2022-02-07 16:54:44 +01:00
Samantaz Fox
6a75fa08dc
Merge pull request #2492 from mastihios/patch-input-html-escape
Change <input value="..."> encoding to HTML.escape
2022-02-07 16:53:43 +01:00
Dimitris Apostolou
7e4690e43c
Fix typos 2022-02-07 14:57:14 +02:00
jonas-w
f8b29674b2 Gave them marks some space and added nil checks 2022-02-07 02:25:34 +01:00
jonas-w
fe55141a7b Crystal format 2022-02-07 02:04:50 +01:00
jonas-w
9205ccc124 Removed dummy values and added checks for items.ecr 2022-02-07 02:00:43 +01:00
Samantaz Fox
698a6f3886
API: handle related channels parsing exceptions 2022-02-07 00:52:18 +01:00
Samantaz Fox
1668e4187e
Related channel may contain a continuation entry 2022-02-07 00:37:47 +01:00
jonas-w
00df3e2c40 Refactored code and added badges to Search but many dummies because of the way components/item works 2022-02-04 19:59:07 +01:00
jonas-w
a2578ac6b4 Added Verified Badge to related videos 2022-02-04 17:55:22 +01:00
jonas-w
1fee636afa Added verification badge to video player and error with related_videos 2022-02-03 23:18:50 +01:00
jonas-w
154bca4635 Added Verification Badge to Youtube Comments 2022-02-03 22:32:00 +01:00
jonas-w
c584e31657 Inlined the if statement 2022-02-03 22:14:00 +01:00
jonas-w
66340281e6 Added verification badge for channel view 2022-02-03 21:42:28 +01:00
Samantaz Fox
ba37259258
Also propagate changes to watch ECR page 2022-02-03 04:24:31 +01:00
Samantaz Fox
eca8d2e7d7
Apply suggestions from code review
Co-authored-by: Matthew McGarvey <matthewmcgarvey14@gmail.com>
2022-02-03 03:55:43 +01:00
mastihios
cb0f7bf6b0
Change <input value="..."> encoding to HTML.escape 2022-02-03 01:47:18 +01:00
Samantaz Fox
1ec15dc073
Propagate related videos changes to API function 2022-02-03 01:44:11 +01:00
Samantaz Fox
f124e8cf93
Fix parsing of related videos 2022-02-03 01:37:30 +01:00
Samantaz Fox
9621175dc9
extractors: Add helper for short view count text 2022-02-03 01:37:30 +01:00
Samantaz Fox
e6ddd6d6c1
make HelperExtractors non-private 2022-02-03 01:37:30 +01:00
Samantaz Fox
d7ebd763f5
video parsing: add secondary_results root element 2022-02-03 01:37:30 +01:00
Samantaz Fox
99091e919c
video parsing: raise if major root element is missing 2022-02-03 01:37:30 +01:00
Samantaz Fox
6ddbccbc95
Add new exception for parsing issues 2022-02-03 01:37:23 +01:00
Samantaz Fox
4e44a91d08
Add support for clips 2022-02-02 00:41:02 +01:00
Samantaz Fox
fc5f84a0cd
Merge pull request #2827 from SamantazFox/more-code-cleanup
More code cleanup
2022-02-02 00:36:19 +01:00
Samantaz Fox
d546f1870e
Merge pull request #2845 from SamantazFox/more-db-improvements
More db improvements
2022-01-30 23:34:48 +01:00
Samantaz Fox
f5cb7ba96c
Merge pull request #2833 from matthewmcgarvey/get-channel-cleanup
Channel helpers cleanup
2022-01-30 23:16:15 +01:00
Samantaz Fox
519c227c4f
Use short syntax for 'File.open' block 2022-01-29 13:43:26 +01:00
Samantaz Fox
6f4665588f
search.cr: use do/end rather than inline {} block 2022-01-28 15:54:38 +01:00
Samantaz Fox
eba311baa9
Merge pull request #2397 from syeopite/dep-manager-for-videojs-stuff
Add dependency manager script for videojs stuff
2022-01-28 15:30:13 +01:00
matthewmcgarvey
e92b3779ad Add back in refreshing of channels every 2 days 2022-01-27 20:12:45 -06:00
matthewmcgarvey
a82d21ff78 Cleanup channel helpers code 2022-01-27 20:12:42 -06:00
Samantaz Fox
63e1165936
videos.cr: use '.dig?()' where possible 2022-01-28 02:22:48 +01:00
Samantaz Fox
84cc732281
search functions: Don't return result count
This is useless, as the items count can be directly acessed
using the '.size' method, so use that instead when needed.
2022-01-28 02:22:36 +01:00
Samantaz Fox
971b6ec96f
Fix 'Lint/UselessAssign' warnings reported by ameba 2022-01-28 02:19:53 +01:00
Samantaz Fox
46f7ca9ffa
Remove useless intermediary variable in youtube_api.cr
This fixes an ameba warning
2022-01-28 02:19:53 +01:00
Samantaz Fox
dee20f92a7
Avoid infinite loop in ChannelVideo's to_xml/to_json methods 2022-01-28 02:19:53 +01:00
Samantaz Fox
12b818a83c
Fix more 'Lint/ShadowingOuterLocalVar' warnings reported by ameba 2022-01-28 02:19:53 +01:00
Samantaz Fox
1c91110464
Fix some 'Lint/ShadowingOuterLocalVar' warnings reported by ameba 2022-01-28 02:19:53 +01:00
Samantaz Fox
4cd7a3e83f
Remove useless 'locale = env.get...' from many routes 2022-01-28 02:19:53 +01:00
Samantaz Fox
fa99c9aa85
Use '.dig?()' in playlist parsing 2022-01-28 02:19:53 +01:00
Samantaz Fox
2d949834e9
Make 'additional_fields' optional in JSON error template functions
This allows us to de-duplicate functions
2022-01-28 02:19:53 +01:00
Samantaz Fox
c7b74aa8b4
Remove useless 'locale' argument from error template functions 2022-01-28 02:19:53 +01:00
Samantaz Fox
5e3c9cf290
Remove useless arguments from playlist-related functions 2022-01-28 02:19:53 +01:00
Samantaz Fox
67dd2b419a
db: use prepared statements rather than crafted argument list 2022-01-26 17:31:01 +01:00
matthewmcgarvey
df9f897ebe Fix code broken when extracting data control route 2022-01-25 19:28:16 -06:00
matthewmcgarvey
8ef1e81294 Make certain routes ignored if api only 2022-01-25 19:10:18 -06:00
matthewmcgarvey
d755d05f88 Move more routes to new pattern 2022-01-25 19:10:18 -06:00
Samantaz Fox
ce4a52325b
db: use now() function instead of passing Time.utc 2022-01-26 01:49:29 +01:00
Samantaz Fox
714a001332
DB: playlists: make that 'insert' never raises 2022-01-25 23:53:00 +01:00
Samantaz Fox
c78f84d5c6
DB: Move integrity check to the base.cr file 2022-01-25 23:53:00 +01:00
Samantaz Fox
a6c9b263da
DB: don't pass PG_DB to check_table/check_enum 2022-01-25 23:53:00 +01:00