forked from server/soundboard
86 lines
4.3 KiB
HTML
86 lines
4.3 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>WIAI Soundboard</title>
|
|
<link rel="stylesheet" href="/static/main.css" />
|
|
|
|
<!-- favicon clipart source: https://openclipart.org/detail/190592/button -->
|
|
<link rel="apple-touch-icon-precomposed" sizes="57x57" href="/static/favicon/apple-touch-icon-57x57.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/static/favicon/apple-touch-icon-114x114.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="/static/favicon/apple-touch-icon-72x72.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="/static/favicon/apple-touch-icon-144x144.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="60x60" href="/static/favicon/apple-touch-icon-60x60.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="120x120" href="/static/favicon/apple-touch-icon-120x120.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="76x76" href="/static/favicon/apple-touch-icon-76x76.png" />
|
|
<link rel="apple-touch-icon-precomposed" sizes="152x152" href="/static/favicon/apple-touch-icon-152x152.png" />
|
|
<link rel="icon" type="image/png" href="/static/favicon/favicon-196x196.png" sizes="196x196" />
|
|
<link rel="icon" type="image/png" href="/static/favicon/favicon-96x96.png" sizes="96x96" />
|
|
<link rel="icon" type="image/png" href="/static/favicon/favicon-32x32.png" sizes="32x32" />
|
|
<link rel="icon" type="image/png" href="/static/favicon/favicon-16x16.png" sizes="16x16" />
|
|
<link rel="icon" type="image/png" href="/static/favicon/favicon-128.png" sizes="128x128" />
|
|
<meta name="application-name" content="WIAI Soundboard"/>
|
|
<meta name="msapplication-TileColor" content="#FFFFFF" />
|
|
<meta name="msapplication-TileImage" content="/static/favicon/mstile-144x144.png" />
|
|
<meta name="msapplication-square70x70logo" content="/static/favicon/mstile-70x70.png" />
|
|
<meta name="msapplication-square150x150logo" content="/static/favicon/mstile-150x150.png" />
|
|
<meta name="msapplication-wide310x150logo" content="/static/favicon/mstile-310x150.png" />
|
|
<meta name="msapplication-square310x310logo" content="/static/favicon/mstile-310x310.png" />
|
|
</head>
|
|
<body>
|
|
<nav>
|
|
<a href="#sounds" id="sounds-nav">Sounds</a>
|
|
<a href="#streams">Streams</a>
|
|
<a href="#voice">Voices</a>
|
|
{% if not edit %}
|
|
<div class="extra"><a href="/edit">Edit</a></div>
|
|
{% else %}
|
|
<div class="extra"><a href="/">Done</a></div>
|
|
{% endif %}
|
|
</nav>
|
|
<content>
|
|
<section id="sounds" style="display:none;">
|
|
<div>
|
|
<a onclick="toggleLocalMode();" id="local-mode-button"><button title="play sounds on server">[S]</button></a>
|
|
<input type="text" id="search" autofocus/>
|
|
<div id="reset">✕</div>
|
|
<ul class="tags">
|
|
{% for tag in tags %}
|
|
<li><a href="#" tabindex="-1">{{ tag.name }}</a></li>
|
|
{% endfor %}
|
|
</ul>
|
|
</div><!--
|
|
{% for sound in sounds %}
|
|
--><div class="sound{{ ' edit' if edit }}"><a title="{{ sound.split('.', 1)[0] }}" tabindex="0" class="unselectable" {{ 'href=/edit/' + sound | urlencode if edit else 'onclick=playSound(\'' + sound | urlencode + '\');' }}>{{ sound.split('.', 1)[0] }}</a></div><!--
|
|
{% endfor %}-->
|
|
</section>
|
|
<section id="streams" style="display:none;">
|
|
<div>
|
|
<form>
|
|
<label for="video">Stream URL</label>
|
|
<input id="streaming-url" type="text" name="video" placeholder="paste stream url here..." />
|
|
</form>
|
|
<button onclick="playStream();">Play!</button>
|
|
</div>
|
|
<button name="submit" onclick="killAllAudio();">Terminate videos</button>
|
|
</section>
|
|
<section id="voice" style="display:none;">
|
|
<form action="/say/" method="POST">
|
|
<label for="text">Text</label>
|
|
<input type="text" name="text" id="text" />
|
|
<label for="voice">Language/Voice</label>
|
|
<input type="text" name="voice" id="voice" placeholder="DE" />
|
|
<label for="speed">Speed</label>
|
|
<input type="range" name="speed" min="80" max="450" step="10" value="160" id="speed" />
|
|
<label for="pitch">Pitch</label>
|
|
<input type="range" name="pitch" min="0" max="99" step="1" value="50" id="pitch" />
|
|
<input type="submit" value="Voice" />
|
|
</form>
|
|
</section>
|
|
</content>
|
|
<script src="/static/howler.js"></script>
|
|
<script src="/static/main.js"></script>
|
|
</body>
|
|
</html>
|