audioform_static.py 870 B

1234567891011121314151617181920212223242526272829
  1. from flask_wtf import Form
  2. from wtforms import StringField, validators, SubmitField
  3. from larigira.formutils import AutocompleteStringField
  4. class StaticAudioForm(Form):
  5. nick = StringField(
  6. "Audio nick",
  7. validators=[validators.required()],
  8. description="A simple name to recognize this audio",
  9. )
  10. path = AutocompleteStringField(
  11. "dl-suggested-files",
  12. "Path",
  13. validators=[validators.required()],
  14. description="Full path to audio file",
  15. )
  16. submit = SubmitField("Submit")
  17. def populate_from_audiospec(self, audiospec):
  18. if "nick" in audiospec:
  19. self.nick.data = audiospec["nick"]
  20. if "paths" in audiospec:
  21. self.path.data = audiospec["paths"][0]
  22. def staticaudio_receive(form):
  23. return {"kind": "static", "nick": form.nick.data, "paths": [form.path.data]}