Commit graph

609 commits

Author SHA1 Message Date
syeopite
5f65e92500
Merge pull request #2508 from syeopite/lazy-load-images
Lazy load (some) images
2021-10-17 18:25:59 +00:00
TheFrenchGhosty
22e8f7e287 Fix #2510 2021-10-14 21:00:14 +02:00
TheFrenchGhosty
0ad2793b68 Link to invidious.io/donate/ in the footer 2021-10-14 20:20:25 +02:00
syeopite
585e4617e8
Lazy load (some) images 2021-10-14 08:18:44 -07:00
diogo
7eba7fbcc7
add index to playlist item 2021-10-11 23:30:49 +02:00
mastihios
0947c26612
Fix URL-encoding in href strings (#2460)
* hrefs: replace HTML.escape w/ URI.encode_www_form

* Fix search_query_encoded
2021-10-11 05:18:20 -07:00
Samantaz Fox
adc12addfa
Add config option to display source code URL in footer (#2450) 2021-10-07 13:53:12 +02:00
Samantaz Fox
d806310665
Revert "Fix typo (#2456)" (#2457)
This reverts commit 4982bff74d.
2021-10-04 19:51:57 +02:00
Jorge Maldonado Ventura
4982bff74d
Fix typo (#2456) 2021-10-04 17:47:57 +00:00
syeopite
9c44e41a4c
Merge pull request #2228 from syeopite/extract-items-overhaul
Overhaul extract_item(s) functions and add infrastructure for parsing YouTube categories
2021-10-02 20:00:16 +00:00
mastihios
7b2aa5f98e
add icon-buttons to playlist items (#2442) 2021-10-02 11:59:33 +00:00
syeopite
a50f64f6e9
Add parser for categories (shelfRenderer)
This commit adds a new parser for YT's shelfRenderers which are
typically used to denote different categories.The code for featured
channels parsing has also been moved to use the new parser but some
additional refactoring are needed there.

The ContinuationExtractor has also been improved and is now capable of
extraction continuation data that is packaged under
"appendContinuationItemsAction"

In additional this commit adds some useful helper functions to extract
the current selected tab the continuation token. This is to mainly
reduce code size and repetition.
--
This cherry-picked commit also removes the code for parsing featured
channels present on the original.

(cherry picked from commit 8000d538db)
2021-09-24 21:07:06 -07:00
syeopite
86ca568d6d
Remove login type button from frontend (#2423) 2021-09-23 08:44:26 +02:00
syeopite
02431b3f98
Use correct videojs-vtt-thumbnails location in licences.ecr 2021-09-18 13:30:17 -07:00
syeopite
0323202a03
Revert to iv-org fork of silvermine-videojs-quality-selector
Upstream requires at least two additional sources. Whereas Invidious needs it to be
able to display a single additional source for normal (dashless)
qualites. Aka medium and hd720.
2021-09-18 13:30:17 -07:00
syeopite
62c1991b88
Typo 2021-09-18 13:30:17 -07:00
syeopite
3a6085ad31
Readd player.css 2021-09-18 13:30:17 -07:00
syeopite
2451497b31
Typo 2021-09-18 13:30:17 -07:00
syeopite
262131f68e
Add script to resolve and fetch VideoJS files 2021-09-18 13:30:15 -07:00
syeopite
5054510d15
Prevent VR from being initialized in listen mode (#2396) 2021-09-15 01:37:23 +02:00
Samantaz Fox
947fe4fbb3
HTML escape video mimetype
Video mimetype may contain code information between double quotes.
If not properly escaped, it breaks the browser's parser. E.g:
```
type="video/mp4; codecs=" avc1.64001f,="" mp4a.40.2""=""
```

Thank Robin for catching this!
2021-09-13 18:20:11 +02:00
syeopite
50c8afb525
Handle equirectangular projections for VR (#2379) 2021-09-10 07:42:39 +00:00
Émilien Devos
8b62c05fe2
remove 3gp only from the player (#2376)
+ video quality precedence on default player when js is not enabled
2021-09-03 09:39:11 +02:00
TheFrenchGhosty
8e3ff79f22 Remove the mention of 'Omar Roth' from the footer 2021-09-01 12:23:50 +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
Samantaz Fox
56ebef4352
Multiple front-end fixes (#2247)
Fixes:
* Sanitize user-provided content in HTML (Fixes #2193)
* Fix encoding of search query in prev/next pages (Fixes #2229)
* Fix some issues introduced with #2196:
   - Fix alignment of all <h3> elements (Move the inline style from the parent to the <h3> element)
   - Add missing comma on 'dir' HTML attribute (Typo introduced by PR #2196)

Code cleaning:
* Remove unnecessary 'each_sclice' + 'each' double loop in ECR files
* Clean the player's <source> list generation code (in player.ecr)
2021-07-15 23:01:36 +02:00
syeopite
3e5c353298
Merge pull request #2205 from syeopite/fix-age-restricted-videos
Partial (and temporary) fix for age restricted videos
2021-07-14 10:11:03 -07:00
syeopite
54b19a04bb
Fix caption parsing on age restricted videos 2021-06-27 08:35:28 -07:00
Samantaz Fox
cfcb64c516
Fix layout of video 'card' items
Previous changes broke alignment of text and icons
2021-06-25 20:47:15 +02:00
Samantaz Fox
eecfc155b8
Right-align the RSS icon in channel playlists 2021-06-25 02:15:49 +02:00
Samantaz Fox
9cef7945c0
Fix RTL text in video titles on Firefox
The behavior was as follow: on Right-To-Left text (e.g Arabic) that is wrapped
(because it's too long to fit on one line), the second row and following rows
may or may not be right aligned (as RTL text should be). Opening the devtools
fixes that alignement, as consistently as closing the devtool breaks it.

This problem seems to arrive only in the following configurations (link nested
in a paragraph, both of which may or may not have the dir= attribute):

* `<p><a href="some_link">RTL_TEXT</a></p>`
* `<p><a href="some_link" dir="auto">RTL_TEXT</a></p>`
* `<p dir="auto"><a href="some_link">RTL_TEXT</a></p>`

with the following CSS:

```
p {
	unicode-bidi: plaintext;
	text-align: start;
}
```

Changing the HTML to the following configuration (a paragraph with the dir=
attribute, nested in a link) seems to fix it:

`<a href="some_link"><p dir="auto">RTL_TEXT</p></a>`
2021-06-25 02:03:09 +02:00
Mostafa Ahangarha
1b1932f787 fix feed alignment on community view 2021-06-24 17:40:02 +04:30
Samantaz Fox
9e4fd193c6 Limit descriptions width to ease mixed LTR/RTL text reading
This will prevent, on large pages, the LTR and RTL text to be
far away, on each side of the page. This could happen on channel
and playlists descriptions, when the page is displayed on a large
screen.
2021-06-24 17:35:44 +04:30
Mostafa Ahangarha
d16a748f37 set alignment for feed link 2021-06-24 17:08:40 +04:30
7ec93825b6 Change description-box from flex to block
I also make minor changes to the surroundings so that the same layout
and functionality as before is preserved.
2021-06-24 15:12:05 +04:30
syeopite
349f073b8e
Remove unnecessary "Welcome, " on username display 2021-06-19 06:03:50 -07:00
Mateusz Makowski
90c907710c
Display username in header 2021-06-19 04:58:42 -07:00
syeopite
7c49a0ba7a
Rephrase auto instance redirect preference 2021-06-19 04:17:49 -07:00
syeopite
4a095eb98e
Fix <hr> styling on empty search page 2021-06-19 04:17:49 -07:00
syeopite
d793d4ba78
Add switch invidious instance btn to all chan tabs 2021-06-19 04:17:49 -07:00
syeopite
b9cd40fe1e
Add redirect buttons to error template 2021-06-19 04:16:18 -07:00
syeopite
173cd7c15e
Fix switch invidious instance btn on videos 2021-06-19 04:16:18 -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
syeopite
cf72b34866
Fix locale discrepancy for instance redirect btn 2021-06-19 04:16:18 -07:00
syeopite
d06cf2a07b
Add playlist redirect 2021-06-19 04:16:18 -07:00
syeopite
10804927bb
Add channel redirect 2021-06-19 04:16:18 -07:00
syeopite
f178297452
Generalize redirect route 2021-06-19 04:16:18 -07:00
syeopite
311e7684b2
Add instance redirect on empty/broken search 2021-06-19 04:16:18 -07:00
syeopite
37ff2ac2b9
Overhaul button icon html and styling 2021-06-19 04:16:18 -07:00
syeopite
4786d586cf
Add new icon button for instance redirects 2021-06-19 04:16:17 -07:00
syeopite
008598b56f
Change wording of redirect hyperlink 2021-06-19 04:16:17 -07:00
syeopite
f3bc55e37e
Expose instance redirect to frontend 2021-06-19 04:16:17 -07:00
Samantaz Fox
a2f5342a83 Multiple search fixes
* Remove percent-encoding of the search query when calling youtube API, as it
  breaks UTF-8
* Empty search redirects to /search, not /
* Show the fullscreen search "home page" (from #1977) at /search
* Allow 'region=' parameter to be passed to /search
* Other minor fixes
2021-06-13 21:52:36 +02:00
Émilien Devos
1a2ca8634d
typo in the template file 2021-06-04 18:53:24 +00:00
syeopite
f529948d81
Change videojs-vr to the unminified version 2021-05-23 09:24:49 -07:00
syeopite
a0fb75efcb
Add licence for videojs-vr 2021-05-23 09:22:37 -07:00
syeopite
6e6f4d5a37
Allow configurable support of interactive 360 vid 2021-05-23 09:22:37 -07:00
syeopite
df0cd30236
Add support for VR videos through videojs-vr 2021-05-23 09:22:29 -07:00
TheFrenchGhosty
75e5b49c3a
Merge pull request #2008 from syeopite/mobile-ui
Improve player controls for mobile devices
2021-05-13 10:33:47 +02:00
TheFrenchGhosty
3cf08dc451
Merge pull request #2052 from Myzel394/patch-1
Add autofocus attribute to search input
2021-05-13 10:32:38 +02:00
syeopite
e6fba5d802
Fix locale discrepancy for extend desc feature 2021-05-10 00:34:34 -07:00
syeopite
50ba3c5d5c
Remove unused class attr on label 2021-05-10 00:26:43 -07:00
syeopite
65663fb857
Update code to reflect 'read more' btn name change 2021-05-10 00:26:42 -07:00
syeopite
8df2f38d34
Change wording of 'read more/less' & add to locale 2021-05-10 00:25:22 -07:00
syeopite
c5fae84263
Add functionality to read more button 2021-05-10 00:25:20 -07:00
sh4dowb
533d0a1fd4
Added "Read More" button for video descriptions 2021-05-10 00:24:11 -07:00
syeopite
06b27d932d
Move player styling to separate file 2021-05-03 03:44:33 -07:00
syeopite
ac1ac2cfed
Add mobile-ui js to licenses 2021-05-03 03:44:33 -07:00
syeopite
53cdb04be7
Improve mobile ux with videojs-mobile-ui 2021-05-03 03:44:33 -07:00
Myzel394
c106de02e9
Added autofocus attribute to search input
Since the main action of this form is to search something, the input should automatically be focused.
2021-04-30 15:12:36 +02:00
TheFrenchGhosty
b9e57d0283
Merge pull request #1977 from syeopite/add996
Change empty home page to search engine like layout
2021-04-17 17:02:47 +00:00
syeopite
5c0458a887
Move navbar search bar render check to templated 2021-04-17 05:18:58 -07:00
syeopite
65942cd46c
Rename empty.ecr to search_homepage.ecr 2021-04-17 05:16:35 -07:00
syeopite
5f466eed79
Rename default_home option 'none' to 'Search' 2021-04-07 19:36:40 -07:00
syeopite
d9528f5cc3
Change positioning of footer to use flexbox 2021-04-06 23:53:38 -07:00
syeopite
909606826d
Change footer div into footer element 2021-04-06 04:15:08 -07:00
syeopite
ea16c01fa2
Fix mobile responsive design for footer 2021-04-05 20:24:02 -07:00
syeopite
a8649f286c
Handle nil type for default_homepage 2021-04-04 17:19:31 -07:00
syeopite
94f285695e
Add missing closing div element 2021-04-04 16:10:27 -07:00
syeopite
049e8e07ef
Fix footer position to bottom of page 2021-04-04 02:45:38 -07:00
syeopite
716a845e92
Fix missing navbar search bar 2021-04-04 02:26:07 -07:00
syeopite
555108c7fd
Add styling to search bar on empty home page 2021-04-04 00:48:14 -07:00
syeopite
e1af3d9bf3
Add html of search bar to empty home page 2021-04-03 23:26:58 -07:00
syeopite
e864c7541c
Hide header search bar when default_home is empty 2021-04-03 21:32:30 -07:00
syeopite
8b75590d3e
Remove news trending section from ui 2021-03-28 01:25:04 -07:00
syeopite
148071a744
Add 'www' to URL on watch on youtube button 2021-03-25 11:24:02 -07:00
syeopite
56fab9d178
Add watch on youtube button on each video item 2021-03-24 18:34:06 -07:00
syeopite
f422a77014
Add translation to Audio Mode icon on vid result 2021-03-24 18:07:18 -07:00
Samantaz Fox
23e5b6ba72 Remove extra 'next page' button at then end of a playlist 2021-03-23 02:25:47 +00:00
syeopite
977c34c0d7
Remove unused script element in search.ecr 2021-03-19 11:33:27 -07:00
syeopite
48a3c3a0c1
Add hover state to filter UI 2021-03-13 10:57:27 -08:00
syeopite
b56ebd13b6
Fix indent in search.ecr for filters 2021-03-13 09:14:55 -08:00
syeopite
83b5fd252e
Enhance search filter UI for JS disabled users
Change filters UI box to use <details>.

Stylize detail button for filter ui

Fix localization for 'filter'

Fix CSS

Fix styling
2021-03-01 03:45:07 -08:00
TheFrenchGhosty
0b2109576a
Merge pull request #1804 from tenpura-shrimp/captionpreload
do not preload captions
2021-02-25 17:54:28 +01:00
Andrew Zhao
295e5c9731 show how long ago stream started 2021-02-24 23:08:04 -05:00
Andrew Zhao
9b79e35d52 do not preload captions 2021-02-24 01:02:55 -05:00
Andrew Zhao
148f3002ec use large thumbnail for channels in search 2021-02-04 18:20:49 -05:00
Perflyst
ec82c1f957
Merge pull request #1730 from notpushkin/patch-1
Add link[rel="alternate"] pointing to YouTube version
2021-02-04 07:55:39 +01:00
saltycrys
5f03a583d1 Update code for Crystal 0.36.0
Rename `HTTPClient@socket` to `HTTPClient@io`, see
https://github.com/crystal-lang/crystal/pull/9543.

Rename `URI#full_path` to `URI#request_target`, see
https://github.com/crystal-lang/crystal/pull/10099.
2021-02-02 20:01:02 +01:00
Perflyst
82da5cfd01
Merge pull request #1712 from tenpura-shrimp/bumpvideojs
Bump videojs and fix webworker
2021-01-31 12:18:40 +01:00