mirror of
https://codeberg.org/ashley/poke.git
synced 2024-11-17 21:14:39 -05:00
969 lines
32 KiB
Text
969 lines
32 KiB
Text
<!--
|
|
This Source Code Form is subject to the terms of the GNU General Public License:
|
|
|
|
Copyright (C) 2021-2022 POKETUBE (https://github.com/iamashley0/poketube)
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see https://www.gnu.org/licenses/.
|
|
-->
|
|
<% if (!isMobile) { %>
|
|
|
|
<!DOCTYPE html><html>
|
|
<head>
|
|
<title>PokeTube - Privacy Is Your Right</title>
|
|
<link href=/css/yt-ukraine.svg?v=6 rel=icon>
|
|
<meta content=website property=og:type>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<meta content="PokeTube - Privacy Is Your Right" property=og:title>
|
|
<meta content="Privacy Is Your Right - Poketube is a libre front end for YouTube Thats focused on your privacy!" property=twitter:description>
|
|
<meta content="https://cdn.glitch.global/43b6691a-c8db-41d4-921c-8cf6aa0d9108/17a7fa1d-cdf9-4b73-9686-21e62c7fb285.image.png?v=1667739586452" property=og:image>
|
|
<meta content=summary_large_image name=twitter:card>
|
|
<meta content=@PoketaleBot name=twitter:site>
|
|
<meta content=@PoketaleBot name=twitter:creator>
|
|
<link href=/css/app-cdn.min.css rel=stylesheet>
|
|
<link href=/css/app-cdn.min.css rel=stylesheet>
|
|
<link href=/css/app.main.css rel=stylesheet>
|
|
<link href=/css/search.main.css rel=stylesheet>
|
|
<link href=/css/watch.main.css rel=stylesheet>
|
|
<link href="https://fonts.poketube.fun/css/fonts.css" rel=stylesheet>
|
|
<meta content="#1a1a1a" name="theme-color">
|
|
</head>
|
|
<style>
|
|
.mn {
|
|
background: #181818;
|
|
border-radius: 26px;
|
|
padding: 6px;
|
|
margin: auto;
|
|
position: absolute;
|
|
left: 50%;
|
|
top: 50%;
|
|
transform: translate(-50%, -50%);
|
|
}
|
|
@font-face {
|
|
font-family: 'Ginto Nord';
|
|
font-weight: 800;
|
|
src:url('https://p.poketube.fun/https://cdn.statically.io/gh/brecert/discord-quote-generator/main/Ginto-Nord-800.woff') format("woff");
|
|
}
|
|
|
|
</style> <style nonce="IJD3y0awTwA2dd0pWOP+ZQ">
|
|
#yt-masthead{line-height:0;margin:15px auto;width:440px;margin-top:25px}#logo-container{margin-right:5px;float:left;cursor:pointer;text-decoration:none}.logo{background:no-repeat url("//www.gstatic.com/youtube/img/branding/youtubelogo/1x/youtubelogo_30.png");width:125px;height:30px;cursor:pointer;display:inline-block}#masthead-search{display:flex;margin-top:3px;max-width:650px;overflow:hidden;padding:0;position:relative}.search-button{border-left:0;-moz-border-radius-topleft:0;border-top-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0;float:right;height:29px;padding:0;border:solid 1px transparent;border-color:#ffff;background:#999;;color:#333;cursor:pointer}.search-button:hover{border-color:#c6c6c6;background:#f0f0f0;box-shadow:0 1px 0 rgba(0,0,0,0.0)}.search-button-content{border:none;display:block;opacity:.6;padding:0;text-indent:-10000px;background:no-repeat url(//www.gstatic.com/youtube/src/web/htdocs/img/search.png);background-size:auto;width:15px;height:15px;box-shadow:none;margin:0 25px}#masthead-search-terms-border{flex:1 1 auto;border:1px solid #ccc;box-shadow:inset 0 1px 2px #eee;background-color:#fff;font-size:14px;height:29px;line-height:30px;margin:0 0 2px;overflow:hidden;position:relative;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:border-color .2s ease;transition:border-color .2s ease}#masthead-search-terms{background:#2c2f33;border:0;font-size:16px;height:100%;left:0;margin:0;outline:none;padding:2px 6px;position:absolute;width:100%;-moz-box-sizing:border-box;box-sizing:border-box}
|
|
</style>
|
|
<body>
|
|
|
|
<section class=youtube-video>
|
|
|
|
|
|
<style>
|
|
@import url("https://p.poketube.fun/https://site-assets.fontawesome.com/releases/v6.1.1/css/all.css");
|
|
|
|
a.class:hover {
|
|
text-decoration:underline;
|
|
font-weight:bold
|
|
}
|
|
summary{
|
|
color:gray;
|
|
}
|
|
summary:hover{
|
|
color:white;
|
|
}
|
|
</style>
|
|
|
|
<!-- WIGGLE WIGGLE WIGGLE -->
|
|
<style>
|
|
body{
|
|
overflow-x: hidden; /* Hide horizontal scrollbar */
|
|
color:#111111
|
|
}
|
|
|
|
.animated {
|
|
-webkit-animation-duration: 10s;
|
|
animation-duration: 10s;
|
|
-webkit-animation-fill-mode: both;
|
|
animation-fill-mode: both;
|
|
animation-iteration-count: infinite;
|
|
-moz-animation-iteration-count: infinite;
|
|
-webkit-animation-iteration-count: infinite;
|
|
-o-animation-iteration-count: infinite;
|
|
}
|
|
|
|
|
|
@-webkit-keyframes wiggle {
|
|
0% { -webkit-transform: skewX(9deg); }
|
|
10% { -webkit-transform: skewX(-8deg); }
|
|
20% { -webkit-transform: skewX(7deg); }
|
|
30% { -webkit-transform: skewX(-6deg); }
|
|
40% { -webkit-transform: skewX(5deg); }
|
|
50% { -webkit-transform: skewX(-4deg); }
|
|
60% { -webkit-transform: skewX(3deg); }
|
|
70% { -webkit-transform: skewX(-2deg); }
|
|
80% { -webkit-transform: skewX(1deg); }
|
|
90% { -webkit-transform: skewX(0deg); }
|
|
100% { -webkit-transform: skewX(0deg); }
|
|
}
|
|
|
|
@keyframes wiggle {
|
|
0% { transform: skewX(9deg); }
|
|
10% { transform: skewX(-8deg); }
|
|
20% { transform: skewX(7deg); }
|
|
30% { transform: skewX(-6deg); }
|
|
40% { transform: skewX(5deg); }
|
|
50% { transform: skewX(-4deg); }
|
|
60% { transform: skewX(3deg); }
|
|
70% { transform: skewX(-2deg); }
|
|
80% { transform: skewX(1deg); }
|
|
90% { transform: skewX(0deg); }
|
|
100% { transform: skewX(0deg); }
|
|
}
|
|
|
|
.wiggle {
|
|
-webkit-animation-name: wiggle;
|
|
animation-name: wiggle;
|
|
-webkit-animation-timing-function: ease-in;
|
|
animation-timing-function: ease-in;
|
|
}
|
|
|
|
.animated.wiggle {
|
|
-webkit-animation-duration: 0.75s;
|
|
animation-duration: 0.75s;
|
|
}
|
|
|
|
:root {
|
|
--text-primary: #fff;
|
|
--text-secondary: #fff;
|
|
--text-link: #3ea6ff;
|
|
|
|
--app-background: #111111;
|
|
--context-menu-background: #333;
|
|
--border-color: #444;
|
|
--item-hover-background: #373737;
|
|
--item-active-background: #383838;
|
|
|
|
--top-bar-background: #202020;
|
|
--guide-background: #212121;
|
|
|
|
--thumbnail-background: #252525;
|
|
|
|
--channel-info-background: #181818;
|
|
--channel-contents-background: #0f0f0f;
|
|
}
|
|
@font-face {
|
|
font-family: 'Ginto Nord';
|
|
font-weight: 800;
|
|
src:url('https://p.poketube.fun/https://cdn.statically.io/gh/brecert/discord-quote-generator/main/Ginto-Nord-800.woff') format("woff");
|
|
}
|
|
|
|
.video > .info {
|
|
grid-area: info;
|
|
font-size: small;
|
|
margin-left: 2px;
|
|
height: auto;
|
|
width: fit-content;
|
|
text-align: left;
|
|
margin-top: -7px;
|
|
padding: 2px;
|
|
}
|
|
|
|
.video > .info > .title {
|
|
color: var(--text-primary) !important;
|
|
font-weight: bold;
|
|
font-size: initial;
|
|
margin-bottom: 0px;
|
|
}
|
|
.video-grid{
|
|
justify-content: center;
|
|
}
|
|
.alert {
|
|
padding: 20px;
|
|
background-color: #f44336;
|
|
color: white;
|
|
opacity: 1;
|
|
transition: opacity 0.6s;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.alert.success {background-color: #04AA6D;}
|
|
.alert.info {background-color: #2196F3;}
|
|
.alert.warning {background-color: #ff9800;}
|
|
|
|
.closebtn {
|
|
margin-left: 15px;
|
|
color: white;
|
|
font-weight: bold;
|
|
float: right;
|
|
font-size: 22px;
|
|
line-height: 20px;
|
|
cursor: pointer;
|
|
transition: 0.3s;
|
|
}
|
|
|
|
.closebtn:hover {
|
|
color: black;
|
|
}
|
|
|
|
</style>
|
|
<style>section p {
|
|
font-family:Whitney, Helvetica Neue, Helvetica, Arial, sans-serif;
|
|
font-weight:400;
|
|
color:#fff;
|
|
font-size:16px;
|
|
line-height:24px;
|
|
margin-top:12px
|
|
}
|
|
.news {
|
|
margin: 2em;
|
|
background: #333;
|
|
padding: 10px;
|
|
border-radius: 1.5em;
|
|
}
|
|
|
|
.sticky-top {
|
|
position: sticky;
|
|
top: 0px;
|
|
z-index: 999;
|
|
}
|
|
.responsive {
|
|
width: 100%;
|
|
overflow-x: auto;
|
|
}
|
|
.tabs {
|
|
display: table;
|
|
font-family:inter;
|
|
border-collapse: separate;
|
|
table-layout: auto;
|
|
}
|
|
.tabs.tabs-center {
|
|
margin-left: 2em;
|
|
}
|
|
.tabs.tabs-justify {
|
|
width: 100%;
|
|
table-layout: fixed;
|
|
}
|
|
.tabs a.tab {
|
|
position: relative;
|
|
display: table-cell;
|
|
transition: all ease 0.3s;
|
|
padding: 1em 1.6em;
|
|
transform: translate3d(0, 0, 0);
|
|
color: #fff;
|
|
white-space: nowrap;
|
|
cursor: pointer;
|
|
}
|
|
.tabs a.tab:hover {
|
|
color: #3cb4fa;
|
|
}
|
|
.tabs a.tab:after {
|
|
transition: all 0.3s cubic-bezier(1, 0, 0, 1);
|
|
will-change: transform, box-shadow, opacity;
|
|
position: absolute;
|
|
content: '';
|
|
height: 3px;
|
|
bottom: 0px;
|
|
left: 0px;
|
|
right: 0px;
|
|
border-radius: 3px 3px 0px 0px;
|
|
background: #9fdafd;
|
|
box-shadow: 0px 4px 10px 3px rgba(60, 180, 250, .15);
|
|
opacity: 0;
|
|
transform: scale(0, 1);
|
|
}
|
|
.tabs a.tab.active {
|
|
color: #fff;
|
|
}
|
|
.tabs a.tab.active:after {
|
|
opacity: 1;
|
|
transform: scale(1, 1);
|
|
}
|
|
</style>
|
|
|
|
|
|
<style>
|
|
|
|
.channel-info-container > img {
|
|
width: 100%;
|
|
}
|
|
|
|
.video-grid > .video {
|
|
border-radius: 16px;
|
|
background: black;
|
|
padding: 6px;
|
|
border: #333 solid;
|
|
}
|
|
|
|
/* nice classname am i rigth */
|
|
.discover-some-bitches{
|
|
text-align: center;
|
|
width: 673px;
|
|
margin: auto;
|
|
}
|
|
</style>
|
|
<body>
|
|
|
|
<div class="app" style="background-color: var(--channel-contents-background);">
|
|
<nav>
|
|
<div class=left>
|
|
|
|
<a class="class" href="/143" style=font-family:Inter,sans-serif;color:#fff> <img style="transform: scale(1.3);width:8.5em;display: block;margin-left: auto;margin-right: auto;" src="/css/logo.svg?v=5"></a>
|
|
</div>
|
|
|
|
|
|
<div class="middle">
|
|
<div class="search">
|
|
|
|
<form action=/search><input class=search-bar autocomplete="on" id=fname name=query style="color:#fff;font-family:Inter,sans-serif;border-radius: 8px;">
|
|
<button class="btn btn-success" type=submit><i class="fa-light fa-search"></i></button>
|
|
|
|
</form>
|
|
<img src="https://search-metrics.poketube.fun/t/rep.gif" style="border:0;width: 0;visibility: hidden;">
|
|
|
|
</div> </div>
|
|
|
|
|
|
<div class=right>
|
|
<a href="/domains"><i style="display: block;margin-left: auto;margin-right: auto;" class="fa-light fa-server"></i> </a>
|
|
<a href="/privacy"><i class="fa-light fa-shield"></i></a>
|
|
<a href="/video/upload?from="><i class="fa-light fa-video"></i></a>
|
|
<a href="https://github.com/iamashley0/poketube/issues"><i class="fa-light fa-bug"></i></a>
|
|
</div>
|
|
|
|
</nav>
|
|
|
|
|
|
|
|
<div class="channel-page" >
|
|
|
|
<img src="https://t.poketube.fun/t/rep.gif" style="width: 0;visibility: hidden;display:none;" id="discover_main">
|
|
|
|
|
|
<div class="news">
|
|
<div class="video-title" style="font-family:'PokeTube Flex';font-weight:1000;white-space:nowrap;font-stretch: extra-expanded;"><i class="fa-solid fa-sparkles"></i> Whats new on poketube owo? </div>
|
|
<p>
|
|
Haiii!! we added alot (like alot woa) of cool stuff to poketube >.< <br>
|
|
|
|
- New cool & epico borders on divs<br>
|
|
- Css files are now easy to read pog<br>
|
|
- PokeTube Flex is now everywhere :3 ginto nord font will be removed <i>forever</i> soon pog<br>
|
|
- Removed Herobrine<br>
|
|
|
|
P.S : Ur a qt
|
|
</p>
|
|
</div>
|
|
<% if (!tab) { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
<a href="" class="tab active">Videos</a>
|
|
|
|
<a href="?tab=music"class="tab">Music</a>
|
|
|
|
<a href="?tab=gaming" class="tab">Gaming</a>
|
|
<% if (!isMobile) { %>
|
|
|
|
<a href="?tab=movies" class="tab">Movie Trailers</a>
|
|
|
|
<% } %>
|
|
|
|
</div>
|
|
<% } %>
|
|
<% if (tab === "music") { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
|
|
<a href="/" class="tab">Videos</a>
|
|
|
|
<a href="" class="tab active ">Music</a>
|
|
|
|
<a href="?tab=gaming" class="tab">Gaming</a>
|
|
<% if (!isMobile) { %>
|
|
|
|
<a href="?tab=movies" class="tab">Movies</a>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
</div>
|
|
<% } %>
|
|
<% if (tab === "gaming") { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
|
|
<a href="/" class="tab">Videos</a>
|
|
|
|
<a href="?tab=music" class="tab">Music</a>
|
|
<% if (!isMobile) { %>
|
|
|
|
<a href="" class="tab active">Gaming</a>
|
|
<a href="?tab=movies" class="tab">Movies</a>
|
|
<% } %>
|
|
|
|
|
|
|
|
</div>
|
|
<% } %>
|
|
|
|
<% if (tab === "movies") { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
|
|
<a href="/" class="tab">Videos</a>
|
|
<a href="?tab=music" class="tab">Music</a>
|
|
<a href="?tab=gaming" class="tab">Gaming</a>
|
|
<a href="" class="tab active">Movies</a>
|
|
|
|
|
|
|
|
</div>
|
|
<% } %>
|
|
|
|
|
|
|
|
<div class="video-grid">
|
|
<% inv.forEach(x => { %>
|
|
<a href="/watch?v=<%- x.videoId %>" class="video">
|
|
<div class="thumbnail" style="background-image: url('https://p.poketube.fun/https://i.ytimg.com/vi/<%= x.videoId %>/hqdefault.jpg?sqp=-oaymwEbCKgBEF5IVfKriqkDDggBFQAAiEIYAXABwAEG&rs=AOn4CLBy_x4UUHLNDZtJtH0PXeQGoRFTgw');border-radius: 10px;"><span class="video-length"><%- turntomins(x.lengthSeconds) %></span></div>
|
|
<div class="info">
|
|
<span class="title max-lines-2" title="<%- x.title %>" style="font-family:Inter,sans-serif;"><%- x.title %></span>
|
|
<span class="title max-lines-2" title="Video By <%- x.author %>" style="margin-top:1px">By <%- x.author %></span>
|
|
|
|
</div>
|
|
|
|
</a>
|
|
|
|
|
|
<% }) %>
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</body >
|
|
|
|
</html>
|
|
<% } %>
|
|
|
|
|
|
|
|
<% if (isMobile) { %>
|
|
<% if (isMobile) { %>
|
|
|
|
<!DOCTYPE html><html>
|
|
<head>
|
|
<title>PokeTube - Privacy Is Your Right</title>
|
|
<link href=/css/yt-ukraine.svg?v=6 rel=icon>
|
|
<meta content=website property=og:type>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<meta content="PokeTube - Privacy Is Your Right" property=og:title>
|
|
<meta content="Privacy Is Your Right - Poketube is a libre front end for YouTube Thats focused on your privacy! your personal data should be nobody's business" property=twitter:description>
|
|
<meta content="https://cdn.glitch.global/5d35aeaf-2df2-4f2f-a4b7-b486694c329b/0d71ef53-9fc2-4ddd-8814-fcf00ba69155.image.png?v=1664301040809" property=og:image>
|
|
<meta content=summary_large_image name=twitter:card>
|
|
<meta content=@PoketaleBot name=twitter:site>
|
|
<meta content=@PoketaleBot name=twitter:creator>
|
|
<link href=/css/app-cdn.min.css rel=stylesheet>
|
|
<link href="https://fonts.poketube.fun/css/fonts.css" rel=stylesheet>
|
|
<meta content="#715efb" name="theme-color">
|
|
</head>
|
|
<style>
|
|
.mn {
|
|
background: #181818;
|
|
border-radius: 26px;
|
|
padding: 6px;
|
|
margin: auto;
|
|
position: absolute;
|
|
left: 50%;
|
|
top: 50%;
|
|
transform: translate(-50%, -50%);
|
|
}
|
|
@font-face {
|
|
font-family: 'Ginto Nord';
|
|
font-weight: 800;
|
|
src:url('https://p.poketube.fun/https://cdn.statically.io/gh/brecert/discord-quote-generator/main/Ginto-Nord-800.woff') format("woff");
|
|
}
|
|
|
|
</style> <style nonce="IJD3y0awTwA2dd0pWOP+ZQ">
|
|
#yt-masthead{line-height:0;margin:15px auto;width:440px;margin-top:25px}#logo-container{margin-right:5px;float:left;cursor:pointer;text-decoration:none}.logo{background:no-repeat url("//www.gstatic.com/youtube/img/branding/youtubelogo/1x/youtubelogo_30.png");width:125px;height:30px;cursor:pointer;display:inline-block}#masthead-search{display:flex;margin-top:3px;max-width:650px;overflow:hidden;padding:0;position:relative}.search-button{border-left:0;-moz-border-radius-topleft:0;border-top-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0;float:right;height:29px;padding:0;border:solid 1px transparent;border-color:#ffff;background:#999;;color:#333;cursor:pointer}.search-button:hover{border-color:#c6c6c6;background:#f0f0f0;box-shadow:0 1px 0 rgba(0,0,0,0.0)}.search-button-content{border:none;display:block;opacity:.6;padding:0;text-indent:-10000px;background:no-repeat url(//www.gstatic.com/youtube/src/web/htdocs/img/search.png);background-size:auto;width:15px;height:15px;box-shadow:none;margin:0 25px}#masthead-search-terms-border{flex:1 1 auto;border:1px solid #ccc;box-shadow:inset 0 1px 2px #eee;background-color:#fff;font-size:14px;height:29px;line-height:30px;margin:0 0 2px;overflow:hidden;position:relative;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:border-color .2s ease;transition:border-color .2s ease}#masthead-search-terms{background:#2c2f33;border:0;font-size:16px;height:100%;left:0;margin:0;outline:none;padding:2px 6px;position:absolute;width:100%;-moz-box-sizing:border-box;box-sizing:border-box}
|
|
</style>
|
|
<body>
|
|
<center>
|
|
|
|
<center>
|
|
<section class=youtube-video>
|
|
<link href=/css/app-cdn.min.css rel=stylesheet>
|
|
<link href=/css/app.main.css rel=stylesheet>
|
|
<link href="/css/search.main.css?v=56" rel=stylesheet>
|
|
|
|
<style>
|
|
@import url("https://p.poketube.fun/https://site-assets.fontawesome.com/releases/v6.1.1/css/all.css");
|
|
|
|
a.class:hover {
|
|
text-decoration:underline;
|
|
font-weight:bold
|
|
}
|
|
summary{
|
|
color:gray;
|
|
}
|
|
summary:hover{
|
|
color:white;
|
|
}
|
|
</style>
|
|
|
|
<!-- WIGGLE WIGGLE WIGGLE -->
|
|
<style>
|
|
body{
|
|
overflow-x: hidden; /* Hide horizontal scrollbar */
|
|
color:#111111
|
|
}
|
|
|
|
.animated {
|
|
-webkit-animation-duration: 10s;
|
|
animation-duration: 10s;
|
|
-webkit-animation-fill-mode: both;
|
|
animation-fill-mode: both;
|
|
animation-iteration-count: infinite;
|
|
-moz-animation-iteration-count: infinite;
|
|
-webkit-animation-iteration-count: infinite;
|
|
-o-animation-iteration-count: infinite;
|
|
}
|
|
|
|
|
|
@-webkit-keyframes wiggle {
|
|
0% { -webkit-transform: skewX(9deg); }
|
|
10% { -webkit-transform: skewX(-8deg); }
|
|
20% { -webkit-transform: skewX(7deg); }
|
|
30% { -webkit-transform: skewX(-6deg); }
|
|
40% { -webkit-transform: skewX(5deg); }
|
|
50% { -webkit-transform: skewX(-4deg); }
|
|
60% { -webkit-transform: skewX(3deg); }
|
|
70% { -webkit-transform: skewX(-2deg); }
|
|
80% { -webkit-transform: skewX(1deg); }
|
|
90% { -webkit-transform: skewX(0deg); }
|
|
100% { -webkit-transform: skewX(0deg); }
|
|
}
|
|
|
|
@keyframes wiggle {
|
|
0% { transform: skewX(9deg); }
|
|
10% { transform: skewX(-8deg); }
|
|
20% { transform: skewX(7deg); }
|
|
30% { transform: skewX(-6deg); }
|
|
40% { transform: skewX(5deg); }
|
|
50% { transform: skewX(-4deg); }
|
|
60% { transform: skewX(3deg); }
|
|
70% { transform: skewX(-2deg); }
|
|
80% { transform: skewX(1deg); }
|
|
90% { transform: skewX(0deg); }
|
|
100% { transform: skewX(0deg); }
|
|
}
|
|
|
|
.wiggle {
|
|
-webkit-animation-name: wiggle;
|
|
animation-name: wiggle;
|
|
-webkit-animation-timing-function: ease-in;
|
|
animation-timing-function: ease-in;
|
|
}
|
|
|
|
.animated.wiggle {
|
|
-webkit-animation-duration: 0.75s;
|
|
animation-duration: 0.75s;
|
|
}
|
|
|
|
:root {
|
|
--text-primary: #fff;
|
|
--text-secondary: #fff;
|
|
--text-link: #3ea6ff;
|
|
|
|
--app-background: #111111;
|
|
--context-menu-background: #333;
|
|
--border-color: #444;
|
|
--item-hover-background: #373737;
|
|
--item-active-background: #383838;
|
|
|
|
--top-bar-background: #202020;
|
|
--guide-background: #212121;
|
|
|
|
--thumbnail-background: #252525;
|
|
|
|
--channel-info-background: #181818;
|
|
--channel-contents-background: #0f0f0f;
|
|
}
|
|
@font-face {
|
|
font-family: 'Ginto Nord';
|
|
font-weight: 800;
|
|
src:url('https://p.poketube.fun/https://cdn.statically.io/gh/brecert/discord-quote-generator/main/Ginto-Nord-800.woff') format("woff");
|
|
}
|
|
|
|
.video > .info {
|
|
grid-area: info;
|
|
font-size: small;
|
|
margin-left: 2px;
|
|
height: auto;
|
|
width: fit-content;
|
|
text-align: left;
|
|
margin-top: -9px;
|
|
padding: 2px;
|
|
}
|
|
|
|
.video > .info > .title {
|
|
color: var(--text-primary) !important;
|
|
font-weight: bold;
|
|
font-size: initial;
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
.alert {
|
|
padding: 20px;
|
|
background-color: #f44336;
|
|
color: white;
|
|
opacity: 1;
|
|
transition: opacity 0.6s;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.search button {
|
|
transform: none;
|
|
display: flex;
|
|
background: #454545;
|
|
color: #999;
|
|
border: 1px;
|
|
border-radius: 12px;
|
|
margin: 2em;
|
|
width: 6em;
|
|
justify-content: center;
|
|
height: 2.6em;
|
|
}
|
|
|
|
.alert.success {background-color: #04AA6D;}
|
|
.alert.info {background-color: #2196F3;}
|
|
.alert.warning {background-color: #ff9800;}
|
|
|
|
.closebtn {
|
|
margin-left: 15px;
|
|
color: white;
|
|
font-weight: bold;
|
|
float: right;
|
|
font-size: 22px;
|
|
line-height: 20px;
|
|
cursor: pointer;
|
|
transition: 0.3s;
|
|
}
|
|
|
|
.closebtn:hover {
|
|
color: black;
|
|
}
|
|
|
|
</style>
|
|
<style>section p {
|
|
font-family:Whitney, Helvetica Neue, Helvetica, Arial, sans-serif;
|
|
font-weight:400;
|
|
color:#fff;
|
|
font-size:16px;
|
|
line-height:24px;
|
|
margin-top:12px
|
|
}
|
|
|
|
.sticky-top {
|
|
position: sticky;
|
|
top: 0px;
|
|
z-index: 999;
|
|
}
|
|
.responsive {
|
|
width: 100%;
|
|
overflow-x: auto;
|
|
}
|
|
.tabs {
|
|
display: table;
|
|
font-family:inter;
|
|
border-collapse: separate;
|
|
table-layout: auto;
|
|
}
|
|
.tabs.tabs-center {
|
|
margin: auto;
|
|
}
|
|
.tabs.tabs-justify {
|
|
width: 100%;
|
|
table-layout: fixed;
|
|
}
|
|
.tabs a.tab {
|
|
position: relative;
|
|
display: table-cell;
|
|
transition: all ease 0.3s;
|
|
padding: 1em 1.6em;
|
|
transform: translate3d(0, 0, 0);
|
|
color: #fff;
|
|
white-space: nowrap;
|
|
cursor: pointer;
|
|
}
|
|
.tabs a.tab:hover {
|
|
color: #3cb4fa;
|
|
}
|
|
.tabs a.tab:after {
|
|
transition: all 0.3s cubic-bezier(1, 0, 0, 1);
|
|
will-change: transform, box-shadow, opacity;
|
|
position: absolute;
|
|
content: '';
|
|
height: 3px;
|
|
bottom: 0px;
|
|
left: 0px;
|
|
right: 0px;
|
|
border-radius: 3px 3px 0px 0px;
|
|
background: #9fdafd;
|
|
box-shadow: 0px 4px 10px 3px rgba(60, 180, 250, .15);
|
|
opacity: 0;
|
|
transform: scale(0, 1);
|
|
}
|
|
.tabs a.tab.active {
|
|
color: #fff;
|
|
}
|
|
.tabs a.tab.active:after {
|
|
opacity: 1;
|
|
transform: scale(1, 1);
|
|
}
|
|
</style>
|
|
|
|
|
|
<style>
|
|
|
|
.channel-info-container > img {
|
|
width: 100%;
|
|
}
|
|
|
|
|
|
.search .search-bar {
|
|
display: flex;
|
|
transform: translateY(1.5em);
|
|
background: #222;
|
|
border: 1px solid #444;
|
|
width: 298px;
|
|
height: 30px;
|
|
}
|
|
|
|
/* nice classname am i rigth */
|
|
.discover-some-bitches{
|
|
text-align: center;
|
|
width: 673px;
|
|
margin: auto;
|
|
}
|
|
</style>
|
|
<body>
|
|
|
|
<div class="app" >
|
|
<div class="app">
|
|
<nav>
|
|
|
|
<div class=left><a class="class" href="/" style=font-family:Inter,sans-serif;color:#fff> <img style="width: 8.5em;display: block;margin-left: auto;margin-right: auto;" src="/css/logo-mobile.svg"> </a>
|
|
</div>
|
|
|
|
|
|
|
|
<div class=right>
|
|
|
|
<a href="/video/upload?from="><i class="fa-light fa-video"></i></a>
|
|
</div>
|
|
|
|
</nav>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
<div class="channel-page" style="background-color: var(--channel-contents-background);">
|
|
|
|
<img src="https://t.poketube.fun/t/rep.gif" style="width: 0;visibility: hidden;display:none;" id="discover_main">
|
|
|
|
|
|
<% if (!tab) { %>
|
|
<% if (!mobilesearch) { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
<a href="" class="tab active">Videos</a>
|
|
|
|
<a href="?tab=music"class="tab">Music</a>
|
|
|
|
<a href="?tab=search" class="tab">Search</a>
|
|
<% if (!isMobile) { %>
|
|
|
|
<a href="?tab=movies" class="tab">Movies</a>
|
|
|
|
<% } %>
|
|
|
|
</div>
|
|
<% } %>
|
|
<% if (tab === "music") { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
|
|
<a href="/" class="tab">Videos</a>
|
|
|
|
<a href="" class="tab active ">Music</a>
|
|
|
|
<a href="?tab=search" class="tab">Search</a>
|
|
<% if (!isMobile) { %>
|
|
|
|
<a href="?tab=movies" class="tab">Movies</a>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
</div>
|
|
<% } %>
|
|
|
|
<% } %>
|
|
|
|
<% if (tab === "search") { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
|
|
<a href="/" class="tab">Videos</a>
|
|
|
|
<a href="?tab=music" class="tab">Music</a>
|
|
|
|
<a href="" class="tab active">Search</a>
|
|
|
|
|
|
|
|
</div>
|
|
<% } %>
|
|
|
|
<% if (mobilesearch) { %>
|
|
|
|
<div class="tabs tabs-center">
|
|
|
|
|
|
<a href="/" class="tab">Videos</a>
|
|
|
|
<a href="?tab=music" class="tab">Music</a>
|
|
|
|
<a href="" class="tab active">Search</a>
|
|
|
|
|
|
|
|
</div>
|
|
<% } %>
|
|
<% } %>
|
|
|
|
|
|
<hr style="clear: both;display: block;border: none;border-bottom: 0.5px solid #2f2f2f;margin: 0 0;/*! width: 4.5em; */height: 0;">
|
|
|
|
|
|
<% if (!tab || tab == "music" ) { %>
|
|
<% if (!mobilesearch) { %>
|
|
|
|
<div class="video-grid">
|
|
<% inv.forEach(x => { %>
|
|
<a href="/watch?v=<%- x.videoId %>" class="video">
|
|
<div class="thumbnail" style="background-image: url('https://p.poketube.fun/https://i.ytimg.com/vi/<%= x.videoId %>/hqdefault.jpg?sqp=-oaymwEbCKgBEF5IVfKriqkDDggBFQAAiEIYAXABwAEG&rs=AOn4CLBy_x4UUHLNDZtJtH0PXeQGoRFTgw');border-top-left-radius: 16px;border-top-right-radius: 16px;"><span class="video-length"><%- turntomins(x.lengthSeconds) %></span></div>
|
|
<div class="info">
|
|
<span class="title max-lines-2" title="<%- x.title %>" style="font-family:Inter,sans-serif;"><%- x.title %></span>
|
|
<span class="title max-lines-2" title="Video By <%- x.author %>" style="margin-top:1px">By <%- x.author %></span>
|
|
|
|
</div>
|
|
|
|
</a>
|
|
|
|
|
|
<% }) %>
|
|
|
|
|
|
<% } %>
|
|
<% } %>
|
|
|
|
|
|
</div>
|
|
<% if (tab == "search") { %>
|
|
|
|
<div class=search>
|
|
|
|
<form action="/?tab=search">
|
|
|
|
|
|
<input class="search-bar" autocomplete="on" id="fname" name="mobilesearch" placeholder="Search some videos lol "style="color:#fff;font-family:Inter,sans-serif;border-radius: 8px;">
|
|
|
|
|
|
<button class="btn btn-success" type=submit>
|
|
<i class="fa-light fa-search" style="margin: auto;"></i></button></form>
|
|
<img src="https://search-metrics.poketube.fun/t/rep.gif" style="border:0;width: 0;visibility: hidden;">
|
|
|
|
</div>
|
|
</div>
|
|
<% } %>
|
|
|
|
<% if (mobilesearch ) { %>
|
|
|
|
<div class=search>
|
|
|
|
<form action="/?tab=search">
|
|
<input class="search-bar" autocomplete="on" id="fname" name="mobilesearch" value="<%=mobilesearch%>" placeholder="Search some videos lol "style="color:#fff;font-family:Inter,sans-serif;border-radius: 8px;">
|
|
|
|
|
|
<button class="btn btn-success" type=submit>
|
|
<i class="fa-light fa-search" style="margin: auto;"></i></button></form>
|
|
<img src="https://search-metrics.poketube.fun/t/rep.gif" style="border:0;width: 0;visibility: hidden;">
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<div class="video-grid" style="background-color: var(--app-background);">
|
|
|
|
<% j.Search.Results.Video.forEach(x => { %>
|
|
|
|
<a href="/watch?v=<%- x.id %>" class="video">
|
|
<div class="thumbnail" style="background-image: url('https://p.poketube.fun/https://i.ytimg.com/vi/<%= x.id %>/hqdefault.jpg?sqp=-oaymwEbCKgBEF5IVfKriqkDDggBFQAAiEIYAXABwAEG&rs=AOn4CLBy_x4UUHLNDZtJtH0PXeQGoRFTgw');border-radius: 16px;"> <span class="video-length"><%=x.duration %></span> </div>
|
|
<div class="info">
|
|
<span class="title max-lines-2" title="<%- x.title %>" style="font-family:Inter,sans-serif;"><%- x.Title %></span>
|
|
<span class="title max-lines-2" title="Video By <%- x.author %>" style="margin-top:1px">By <%- x.Channel.Name %></span>
|
|
|
|
</div>
|
|
|
|
<% }) %>
|
|
|
|
<% if (continuation) { %>
|
|
|
|
<p style="text-align: left;margin-left: 16em;color: var(--text-secondary);text-decoration: none;">
|
|
<a href="/?mobilesearch=<%=mobilesearch%>">First Page</a>
|
|
</p>
|
|
<p style="text-align: left;;color: var(--text-secondary);text-decoration: none;">
|
|
<a href="/?mobilesearch=<%=mobilesearch%>&continuation=<%=j.Search.continuation%>">Next Page</a>
|
|
</p>
|
|
<% } %>
|
|
|
|
<% if (!continuation) { %>
|
|
<p style="text-align: left;margin-left: 16em;;color: var(--text-secondary);text-decoration: none;">
|
|
<a href="/?mobilesearch=<%=mobilesearch%>&continuation=<%=j.Search.continuation%>">Next Page</a>
|
|
</p>
|
|
|
|
<% } %>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
</body >
|
|
|
|
</html> <% } %>
|
|
|
|
|
|
|
|
|