コミットグラフ

291 コミット

作成者 SHA1 メッセージ 日付
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