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
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
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
Samantaz Fox
beb9894c47
Merge pull request #3124 from iv-org/add-404-status-code
2022-07-06 22:05:01 +02:00
Samantaz Fox
0e3820b634
Add #to_http_params method to Query ( Fixes #3148 )
2022-07-04 22:21:27 +02: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
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
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
Émilien Devos
c201ea53ba
Add 404 status code on all possible endpoints
2022-05-27 14:06:38 +00: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
Samantaz Fox
81ca205caa
Fix download of captions
2022-05-07 15:34:56 +02:00
Samantaz Fox
f5fb4c6c64
Apply 2859.diff
2022-05-01 21:10:43 +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
0503d2a9f3
Fix 'adaptiveFormats' not available for livestreams in videos API
2022-04-27 00:22:10 +02:00
Émilien Devos
2ea986326d
Bump videojs to 7.12.1 ( #3011 )
2022-04-22 22:37:45 +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
f9b8bc006f
Create a search processors module
2022-03-29 20:31:23 +02:00
Jonas
a09fbad8b0
Merge branch 'iv-org:master' into verified-badge
2022-03-13 19:06:52 +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
Jonas
6de449811d
Merge branch 'iv-org:master' into verified-badge
2022-02-25 19:29:12 +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
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
Samantaz Fox
b58b0440d6
Fix captions regex
2022-02-22 19:44:41 +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)
dbba9d7687
Expose version in /api/v1/stats with statistic disabled
2022-02-18 17:23:16 +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
01135db80a
video_playback: Check "host" parameter validity
2022-02-11 02:04:05 +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
ad4a06fca5
Move user captcha code to its own module
2022-02-07 17:15:22 +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
Dimitris Apostolou
7e4690e43c
Fix typos
2022-02-07 14:57:14 +02: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
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
matthewmcgarvey
a82d21ff78
Cleanup channel helpers code
2022-01-27 20:12:42 -06: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
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
5e3c9cf290
Remove useless arguments from playlist-related functions
2022-01-28 02:19:53 +01:00
matthewmcgarvey
df9f897ebe
Fix code broken when extracting data control route
2022-01-25 19:28:16 -06:00
matthewmcgarvey
d755d05f88
Move more routes to new pattern
2022-01-25 19:10:18 -06:00
Samantaz Fox
714a001332
DB: playlists: make that 'insert' never raises
2022-01-25 23:53:00 +01:00
Samantaz Fox
5ad2fc64b4
DB: Move a forgotten 'UPDATE channels' statement
2022-01-25 23:42:36 +01:00
Samantaz Fox
2ae074a9a4
Merge pull request #2821 from matthewmcgarvey/channel-search
...
Handle invalid channel id in channel: search
2022-01-25 19:34:43 +01:00
Matthew McGarvey
c5967ad572
will -> should
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2022-01-25 11:35:19 -06:00
matthewmcgarvey
574e35a720
HTML escape user input
2022-01-19 09:01:13 -06:00
matthewmcgarvey
56e505164d
404 error with message and provide example
2022-01-18 18:56:26 -06:00
matthewmcgarvey
b2a738cf13
Fix loading reddit comments when there are no threads found
2022-01-17 12:11:47 -06:00
matthewmcgarvey
dc62b6ffdb
Can fetch related channels using just the channel ucid]
2022-01-10 17:07:52 -06:00
matthewmcgarvey
4962c00ba8
Update to fetch related channels again
2022-01-08 12:31:16 -06:00
Samantaz Fox
302fecbdcb
Clean useless database arguments (5/5)
2022-01-04 17:15:43 +01:00
Samantaz Fox
d74873fed1
Clean useless database arguments (4/5)
2022-01-04 17:15:43 +01:00
Samantaz Fox
40ed4a0506
Clean useless database arguments (3/5)
2022-01-04 17:15:43 +01:00
Samantaz Fox
c25d664edc
Clean useless database arguments (2/5)
2022-01-04 17:15:43 +01:00
Samantaz Fox
9bad7e2940
Clean useless database arguments (1/5)
2022-01-04 17:15:43 +01:00
Samantaz Fox
914cfbd953
Move DB queries related to 'annotations' in a separate module
2022-01-04 17:15:43 +01:00
Samantaz Fox
85cf27119c
Move DB queries related to playlists in a separate module (3/3)
2022-01-04 17:15:43 +01:00
Samantaz Fox
7691f53520
Move DB queries related to 'users' in a separate module (2/2)
2022-01-04 17:15:43 +01:00
Samantaz Fox
094f835642
Move DB queries related to 'users' in a separate module (1/2)
2022-01-04 17:13:52 +01:00
Samantaz Fox
92eea3b18b
Move DB queries related to session tokens in a separate module
2022-01-04 17:13:52 +01:00
Samantaz Fox
c021b93b5c
Move DB queries related to channels in a separate module
2022-01-04 17:13:52 +01:00
Samantaz Fox
46d08237c6
Move DB queries related to playlists in a separate module (2/3)
2022-01-04 17:13:52 +01:00
Samantaz Fox
3deafe9f8d
Move DB queries related to playlists in a separate module (1/3)
2022-01-04 17:13:51 +01:00
bbielsa
b90bceb2dc
Fix formatting of preferences.cr and videos.cr
2021-12-15 19:38:58 +01:00
bbielsa
5abe7fe123
Rename 'remember_position' to 'save_player_pos' for clarity
2021-12-15 19:37:55 +01:00
bbielsa
a6a0bbf398
Add remember_position field to the Preferences and VideoPreferences structs, and add a checkbox in the preferences page to toggle it
2021-12-15 19:37:55 +01:00
Samantaz Fox
ee91effb7a
Merge pull request #2576 from SamantazFox/fix-locales-handling
...
Fix locales handling
2021-12-12 22:26:22 +01:00
Samantaz Fox
7b9d26d688
Fix #2670
...
Fixes "Download widget replaces spaces in filename with +"
https://github.com/iv-org/invidious/issues/2670
2021-11-29 23:12:55 +01:00
Samantaz Fox
139786b9ef
i18n: pass only the ISO code string to 'translate()'
...
Don't use the whole Hash everywhere.
Also fall back nicely to english string if no translation exists.
2021-11-21 01:50:11 +01:00
Samantaz Fox
00904ae3f2
Merge pull request #2444 from syeopite/only-use-redirect-endpoint-when-needed
...
Only use the /redirect endpoint when automatically redirecting to another instance
2021-11-13 20:40:09 +01:00
syeopite
6ec4dcfafd
Fix handling for maxres thumbnail
2021-11-12 03:47:58 -08:00
syeopite
48191aca6e
Fix copy-paste error
2021-11-12 03:47:57 -08:00
syeopite
83556bace2
Allow thumbnail queries with QUIC disabled
2021-11-12 03:47:57 -08:00
syeopite
814c9e6c3a
Use https for storyboard image requests
2021-11-12 03:47:57 -08:00
syeopite
547abe17d9
Use https for ggpht requests
2021-11-12 03:47:57 -08:00
syeopite
6b8450558d
Allow storyboard queries with QUIC disabled
2021-11-12 03:47:57 -08:00
syeopite
c3747c2d49
Allow ggpht queries with QUIC disabled
2021-11-12 03:47:57 -08:00
syeopite
245122104a
Respect use_quic param and fix typos
2021-11-12 03:47:57 -08:00
syeopite
d379a36c0e
Add compile-time flag to remove code for QUIC
2021-11-12 03:47:50 -08:00
Samantaz Fox
6cf0ff6b49
Remove useless auto_generated param from PlaylistVideo#to_xml
...
given the variables available in this function's context, 'author' and 'ucid'
provide the same data 'self.author' and 'self.ucid', respectively.
Given that fact, the variable `auto_generated` has no impact on the logic of
this function, and hence can be safely removed. this greatly simplifies the
code and makes it perfectly compatible with crystal's calling convention for
'#to_xml' methods.
2021-10-29 16:26:42 +02:00
Samantaz Fox
86f75758a7
Fix 'to_json' in struct PlaylistVideo
2021-10-29 16:26:42 +02:00
Samantaz Fox
33780f1995
Also fix 'to_json' in struct Video
2021-10-29 16:26:35 +02:00
syeopite
bb396a310e
Remove unneeded redirect.invidious.io code in /redirect
2021-10-26 16:12:25 -07:00
syeopite
66e7285108
Only use /redirect when automatically redirecting
2021-10-26 16:12:16 -07:00
Samantaz Fox
2b81a82620
Merge pull request #2529 from DmitrySandalov/master
...
Feature Request: Localization for trending iv-org#331
2021-10-26 23:49:56 +02:00
syeopite
17e481c107
Reduce block verbosity further
2021-10-25 01:14:14 -07:00
syeopite
88ad7c8d8d
Update src/invidious/routes/playlists.cr
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2021-10-25 01:14:09 -07:00
syeopite
1adcac175e
Update src/invidious/routes/channels.cr
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2021-10-25 01:14:09 -07:00
syeopite
dd8c412abc
Fix Style/IsAFilter issues
2021-10-25 01:14:08 -07:00
syeopite
e969c1490a
Fix Performance/ChainedCallWithNoBang issues
2021-10-25 01:12:26 -07:00
syeopite
e91421253e
Fix Style/VerboseBlock issues
2021-10-25 01:12:26 -07:00
syeopite
35d15c7c2b
Fix Style/VariableNames issues
2021-10-25 01:12:26 -07:00
syeopite
20cb751ff6
Fix Lint/UnusedArgument issues
2021-10-25 01:12:26 -07:00
syeopite
0614b52f03
Fix Lint/RedundantStringCoercion issues
2021-10-25 01:12:19 -07:00
Dmitry Sandalov
d9c58c4837
Feature Request: Localization for trending iv-org#331
2021-10-21 14:54:15 +03:00
syeopite
888c7e2c29
Merge pull request #2491 from syeopite/extract-image-routes
...
Extract image routes
2021-10-15 22:13:10 +00:00
Samantaz Fox
678b10dbcf
Lookback 50 videos
2021-10-11 23:52:57 +02:00
diogo
a1d6411f1f
propagate video_id field on getting playlists
2021-10-11 23:51:07 +02:00
diogo
0a9e19646a
pass the api/v1/playlists with videos before the offset
2021-10-11 23:43:41 +02:00
syeopite
4246c7a523
Extract image routes
2021-10-11 13:22:11 -07:00
Samantaz Fox
adc12addfa
Add config option to display source code URL in footer ( #2450 )
2021-10-07 13:53:12 +02:00
syeopite
81b12b8001
Add support to make invidious API-only via flag ( #2363 )
2021-10-02 20:04:02 +00:00
syeopite
6d68fbc31d
Fix livestream regex regression caused by #2271
...
Closes #2352
Special thanks to @WaywardHeart for finding this issue!
2021-09-25 02:47:52 +00:00
syeopite
4fcd0964cd
Extract API routes ( #2271 )
...
* Extract API routes from invidious.cr
* Remove deprecated APIs
- insights
- top feed
2021-08-30 18:27:47 +02:00
syeopite
5005212bec
Extract feed routes ( #2269 )
...
* Extract feed routes from invidious.cr
* Removes the deprecated route for /feed/top
* Deprecate /view_all_playlist & use /feed/playlists
* Move feed views into their own directory
* Add haltf method to halt current route context
* Change status_code + return blocks to use haltf
* Set appropriate response headers for RSS routes
2021-08-30 16:58:24 +02:00
syeopite
fceb8093f1
Use `athena-negotiation` to detect language through Accept-Language header ( #2324 )
...
Detect language through Accept-Language header
2021-08-24 19:59:27 +00:00
syeopite
d984a898d4
Remove usage of haltf in /api/v1/channels/:ucid/comments
2021-08-23 17:07:45 -07:00
syeopite
66b45a8fe2
Bountiful changes
...
- Use haltf in more locations
- Fix wrong URL params
- Rename API modules
- Remove API routing file and move everything to general iv routing
file
2021-08-23 16:28:30 -07:00
syeopite
39b34eece8
Extract API routes from invidious.cr (3/3)
...
- Auth (excluding notifications*) APIs
- Mixes
*Notifications currently require the "connection_channel" channel
for talking with the notifications job. Unfortunately, we cannot
access that within the route modules yet.
2021-08-14 00:18:25 -07:00
syeopite
b3426fdc94
Restructure API routes to use more namespaces
2021-08-14 00:18:25 -07:00
syeopite
6aa65593ef
Extract API routes from invidious.cr (2/?)
...
- Video playback endpoints
- Search feed api
- Video info api
2021-08-14 00:18:24 -07:00
syeopite
66becbf46f
Restructure API route organisation
2021-08-14 00:18:24 -07:00
syeopite
cbf3d75087
Extract API routes from invidious.cr (1/?)
2021-08-14 00:18:24 -07:00
Émilien Devos
12b46bbd41
switch to innertube API for about channels ( #2255 )
2021-08-12 16:00:26 -07:00
Émilien Devos
88c5e3b6fa
Use the new youtube api for comments ( #2217 )
...
* use the new youtube api for comments
* remove PG_DB & action parameter + allow force region
* support new comments data with onResponseReceivedEndpoints
2021-08-12 19:14:30 +02:00
syeopite
7afa027b95
Switch routing logic to use modules ( #2298 )
...
* Switch routing logic to use modules
* Add more macros for adding routes of different HTTP methods
2021-08-11 12:36:25 +02:00
syeopite
1321c90920
Extract channel routes ( #2227 )
...
* Extract primary channel routes from invidious.cr
Also removes timedtext_video stub since all it does is redirect to the
homepage. However, Invidious's 404 handler already does this.
--
As the template for the channel about page doesn't exist yet, the
behavior for the /channel/:ucid/about endpoint has been changed to be
the same as what's currently present on Invidious
(cherry picked from commit 8fad19d8057d7d22e3de27ebbc88a9978c1df27b)
* Manually extract brand_redirect from 1b569bbc99207cae7c20aa285f42477ae361dd30
This commit manually extracts the brand_redirect function from the
commit mentioned.
However, the redirect to the `.../about` endpoint is removed due to the
fact that it doesn't exist yet.
This commit is also mainly just a bridge for the next few cherry picks from
\#2215
* Update brand_redirect to use youtubei resolve_url
(cherry picked from commit 53335fe7cfdfac392365b7cac447bc7cc6478134)
* Add additional channel endpoints to brand_redirect
(cherry picked from commit 8fc6f3add637dabb09b2034f4d82fc3d039ba15c)
* Add separate handler for /profile endpoint
* Add /channel/:ucid/home route
* Document all channel brand_urls
2021-08-03 23:46:15 +02:00
syeopite
578bbcd181
Fix raw parameter for videos in listen mode ( #2270 )
2021-07-28 16:28:09 -07:00
syeopite
54b19a04bb
Fix caption parsing on age restricted videos
2021-06-27 08:35:28 -07:00
Mateusz Makowski
90c907710c
Display username in header
2021-06-19 04:58:42 -07:00
syeopite
4a095eb98e
Fix <hr> styling on empty search page
2021-06-19 04:17:49 -07:00
syeopite
b63bebb519
Allow automatic instance redirect to be turned off
...
Instead the "switch invidious instance" link would bring users to
redirect.invidious.io
2021-06-19 04:16:18 -07:00