1
0
Fork 0
mirror of https://git.sr.ht/~cadence/cloudtube synced 2026-03-02 02:31:35 +00:00

Add descriptions to settings

This commit is contained in:
Cadence Ember 2021-04-26 00:02:23 +12:00
parent 49d32cfee2
commit e4f6ffe122
No known key found for this signature in database
GPG key ID: BC1C2C61CF521B17
2 changed files with 67 additions and 25 deletions

View file

@ -6,21 +6,27 @@ mixin fieldset(name)
.fieldset-contents
block
mixin input(id, description, type, placeholder, disabled, list)
mixin input({id, label, description, type, placeholder, disabled, list})
- disabled = disabled || false
.field-row
label.description(for=id)= description
input(type=type id=id name=id value=settings[id] placeholder=placeholder disabled=disabled list=`${id}-list`).border-look
label.field-row__label(for=id)= label
input(type=type id=id name=id value=settings[id] placeholder=placeholder disabled=disabled list=`${id}-list`).border-look.field-row__input
if list
datalist(id=`${id}-list`)
each item in list
option(value=item)
if description
.field-row__description= description
mixin select(id, description, disabled, options)
mixin select({id, label, description, disabled, options})
- disabled = disabled || false
.field-row
label.description(for=id)= description
select(id=id name=id disabled=disabled).border-look
label.field-row__label(for=id)= label
select(id=id name=id disabled=disabled).border-look.field-row__input
each option in options
option(value=option.value selected=(option.value == settings[id]))= option.text
if description
.field-row__description!= description
block head
title Settings - CloudTube
@ -30,25 +36,47 @@ block content
form(method="post" action="/settings")
+fieldset("Settings")
+input("instance", "Instance", "url", constants.user_settings.instance.default, false, instances)
+input({
id: "instance",
label: "Instance",
description: 'CloudTube will fetch information from this <a href="https://invidious.io/">Invidious</a> or <a href="https://git.sr.ht/~cadence/NewLeaf">NewLeaf</a> instance.',
type: "url",
placeholder: constants.user_settings.instance.default,
list: instances
})
+select("quality", "Preferred qualities", false, [
{value: "0", text: "720p"},
{value: "4", text: "360p"},
{value: "1", text: "Best possible"},
{value: "2", text: "Best <=1080p"},
{value: "3", text: "Best <=30fps"}
])
+select({
id: "local",
label: "Fetch videos",
description: "If remote, the instance above will be used.\nIf local, CloudTube will try to connect to an instance running on your own computer. This can bypass blocks, but requires you to run the instance software.",
options: [
{value: "0", text: "Remote instance"},
{value: "1", text: "Locally"}
]
})
+select("save_history", "Watched videos history", false, [
{value: "0", text: "Don't store"},
{value: "1", text: "Store on server"}
])
+select({
id: "quality",
label: "Preferred qualities",
description: "All qualities are available on the watch page. This defines their sort order.",
options: [
{value: "0", text: "720p"},
{value: "4", text: "360p"},
{value: "1", text: "Best possible"},
{value: "2", text: "Best <=1080p"},
{value: "3", text: "Best <=30fps"}
]
})
+select("local", "Fetch videos", false, [
{value: "0", text: "Remote instance"},
{value: "1", text: "Locally"}
])
+select({
id: "save_history",
label: "Watched videos history",
description: "Watched videos will appear in a dimmer colour.\nTurning this off will delete your existing watch history.",
options: [
{value: "0", text: "Don't store"},
{value: "1", text: "Store on server"}
]
})
.save-settings
button.border-look Save