audioform_static.py 962 B

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