Source code for larigira.audioform_randomdir

import flask_wtf
from wtforms import StringField, validators, SubmitField, IntegerField

from larigira.formutils import AutocompleteStringField


[docs]class Form(flask_wtf.Form): nick = StringField( "Audio nick", validators=[validators.required()], description="A simple name to recognize this audio", ) path = AutocompleteStringField( "dl-suggested-dirs", "Path", validators=[validators.required()], description="Full path to source directory", ) howmany = IntegerField( "Number", validators=[validators.optional()], default=1, description="How many songs to be picked" "from this dir; defaults to 1", ) submit = SubmitField("Submit")
[docs] def populate_from_audiospec(self, audiospec): if "nick" in audiospec: self.nick.data = audiospec["nick"] if "paths" in audiospec: self.path.data = audiospec["paths"][0] if "howmany" in audiospec: self.howmany.data = audiospec["howmany"] else: self.howmany.data = 1
[docs]def receive(form): return { "kind": "randomdir", "nick": form.nick.data, "paths": [form.path.data], "howmany": form.howmany.data or 1, }