First commit

This commit is contained in:
2026-03-15 22:15:34 -05:00
commit 0858a8a751
79 changed files with 6010 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
<table>
<thead>
<tr>
<th>Time</th>
<th>Type</th>
<th>Video</th>
<th>Channel</th>
</tr>
</thead>
<tbody>
{{for ent in entries}}
<tr>
<td>{{ent.time}}</td>
<td>{{ent.type}}</td>
<td><a href="{{ent.videourl}}">{{ent.videotitle}}</a></td>
<td><a href="{{ent.channelurl}}">{{ent.channeltitle}}</a></td>
</tr>
{{end}}
</tbody>
</table>
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
@@ -0,0 +1,23 @@
<div class="row">
<div class="max">
<h1>{{name}}</h1>
</div>
<div class="min">
<button hx-post="/music/album/add" hx-vals="{{addvals}}" hx-swap="outerHTML"><i>add</i> Add to TYTD</button>
</div>
</div>
{{for song in songs}}
<div class="row">
<div class="min">
<span>{{song.songnumber}}</span>
</div>
<div class="max">
<a href="{{song.songurl}}">{{song.songname}}</a>
</div>
<div class="min">
<span>{{song.duration}}</span>
</div>
</div>
{{end}}
+34
View File
@@ -0,0 +1,34 @@
<form hx-target="body" hx-push-url="true" hx-get="/music/albums">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for albums</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{for album in albums}}
<div class="row">
<div class="min">
<img width="120" height="120" src="{{album.imgurl}}" alt="album thumbnail">
</div>
<div class="max">
<a href="{{album.albumurl}}">{{album.albumname}}</a>
</div>
</div>
{{end}}
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
@@ -0,0 +1,24 @@
<h1>{{name}}</h1>
{{for album in albums}}
<div class="row">
<div class="min">
<img width="120" height="120" src="{{album.imgurl}}" alt="album thumbnail">
</div>
<div class="max">
<a href="{{album.albumurl}}">{{album.albumname}}</a>
</div>
</div>
{{end}}
</div>
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
@@ -0,0 +1,34 @@
<form hx-target="body" hx-push-url="true" hx-get="/music/artists">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for artists</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{for artist in artists}}
<div class="row">
<div class="min">
<img width="120" height="120" src="{{artist.imgurl}}" alt="artist thumbnail">
</div>
<div class="max">
<a href="{{artist.artisturl}}">{{artist.artistname}}</a>
</div>
</div>
{{end}}
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
@@ -0,0 +1,52 @@
<div class="row">
<div class="max">
<h1>{{name}}</h1>
</div>
<div class="min">
{{if hasanysongs}}
<nav class="group split">
<a class="button left-round" href="{{zipurl}}">
<i>folder_zip</i>
<span>Download Zip</span>
</a>
<nav class="no-margin">
<button class="right-round square">
<i>keyboard_arrow_down</i>
</button>
<menu class="left no-wrap secondary-container">
<li hx-post="/music/album/add" hx-vals="{{addvals}}" hx-swap="outerHTML">Add To TYTD</li>
</menu>
</nav>
</nav>
{{else}}
<button hx-post="/music/album/add" hx-vals="{{addvals}}" hx-swap="outerHTML"><i>add</i> Add to TYTD</button>
{{end}}
</div>
</div>
<div>
{{artists}}
</div>
<ul class="list border">
{{for song in songs}}
<li>
<div class="min">
<span>{{song.songnumber}}</span>
</div>
<div class="max">
<a href="{{song.songurl}}">{{song.songname}}</a>
</div>
<div class="min">
<span>{{song.duration}}</span>
</div>
<div class="min">
{{song.btn}}
</div>
</li>
{{end}}
</ul>
@@ -0,0 +1,34 @@
<form hx-target="body" hx-push-url="true" hx-get="/music/myalbums">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for albums</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{for album in albums}}
<div class="row">
<div class="min">
<img width="120" height="120" src="{{album.imgurl}}" alt="album thumbnail">
</div>
<div class="max">
<a href="{{album.albumurl}}">{{album.albumname}}</a>
</div>
</div>
{{end}}
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
@@ -0,0 +1,36 @@
<h1>{{name}}</h1>
<form hx-target="body" hx-push-url="true" hx-get="{{searchurl}}">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for albums</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{for album in albums}}
<div class="row">
<div class="min">
<img width="120" height="120" src="{{album.imgurl}}" alt="album thumbnail">
</div>
<div class="max">
<a href="{{album.albumurl}}">{{album.albumname}}</a>
</div>
</div>
{{end}}
</div>
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
@@ -0,0 +1,34 @@
<form hx-target="body" hx-push-url="true" hx-get="/music/myartists">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for artists</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{for artist in artists}}
<div class="row">
<div class="min">
<img width="120" height="120" src="{{artist.imgurl}}" alt="artist thumbnail">
</div>
<div class="max">
<a href="{{artist.artisturl}}">{{artist.artistname}}</a>
</div>
</div>
{{end}}
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
+47
View File
@@ -0,0 +1,47 @@
<div class="row">
<div class="min">
<img width="240" height="240" src="{{albumart}}" alt="album thumbnail">
</div>
<div class="max" style="min-height: 240px;">
<div class="col top">
<div class="min">
<i>music_note</i> {{trackindex}}. {{songname}}
</div>
<div class="min">
<i>album</i> <a hx-target="body" hx-push-url="true" hx-get="{{albumurl}}" href="{{albumurl}}">{{albumname}}</a>
</div>
<div class="min">
<i>artist</i> {{artists}}
</div>
<div class="min">
{{dlbtn}}
</div>
</div>
</div>
</div>
<article class="primary-container">
{{if hasvideo }}
<div class="row no-space" id="isnt_correct">
<div class="min">
<img src="{{videothumbnail}}" height="120" alt="video thumbnail">
</div>
<div class="max">
<div class="padding">
<h5>{{videotitle}}</h5>
<nav>
<button hx-swap="outerHTML" hx-target="#isnt_correct" hx-get="{{incorrectsongurl}}" class="border round secondary">This isn&apos;t correct</button>
<a href="{{tytdurl}}" target="_blank" class="button border round secondary">View on TYTD</a>
</nav>
</div>
</div>
</div>
{{else}}
<div class="row no-space" id="isnt_correct">
<button hx-swap="outerHTML" hx-target="#isnt_correct" hx-get="{{incorrectsongurl}}" class="border round secondary">Find video</button>
</div>
{{end}}
</article>
+34
View File
@@ -0,0 +1,34 @@
<form hx-target="body" hx-push-url="true" hx-get="/music/mysongs">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for songs</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{for song in songs}}
<div class="row">
<div class="max">
<a href="{{song.songurl}}">{{song.songname}}</a>
</div>
<div class="min">
{{song.btn}}
</div>
</div>
{{end}}
<div class="row">
<div class="max">
</div>
<div class="min">
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{prev}}"><i>arrow_back</i></button>
<span>{{current}}</span>
<button class="round" hx-target="body" hx-push-url="true" hx-get="{{next}}"><i>arrow_forward</i></button>
</div>
<div class="max">
</div>
</div>
+22
View File
@@ -0,0 +1,22 @@
<h1>We need some information</h1>
<form action="/oobe" method="POST">
<div class="field label border">
<input type="url" name="companion">
<label>Companion Url</label>
</div>
<div class="field label border">
<input type="url" name="tytd">
<label>TYTD Url</label>
</div>
<div class="field label border">
<input type="text" name="user">
<label>TYTD Username</label>
</div>
<div class="field label border">
<input type="password" name="pass">
<label>TYTD Password</label>
</div>
<br>
<button>Finish</button>
</form>
+14
View File
@@ -0,0 +1,14 @@
<form hx-target="body" hx-push-url="true" hx-get="/search">
<div class="row">
<div class="max">
<div class="field label border">
<input type="text" name="q" value="{{q}}">
<label>Search for videos</label>
</div>
</div>
<div class="min">
<button>Search</button>
</div>
</div>
</form>
{{body}}
View File