push
This commit is contained in:
73
app/forms/settings.py
Normal file
73
app/forms/settings.py
Normal file
@@ -0,0 +1,73 @@
|
||||
from flask_wtf import FlaskForm
|
||||
from flask_wtf.file import FileAllowed, FileField
|
||||
from wtforms import BooleanField, IntegerField, PasswordField, RadioField, SelectField, StringField, SubmitField
|
||||
from wtforms.validators import DataRequired, Email, Optional
|
||||
|
||||
|
||||
class KSeFSettingsForm(FlaskForm):
|
||||
source_mode = RadioField('Źródło ustawień', choices=[('user', 'Moje ustawienia'), ('global', 'Profil współdzielony firmy')], default='user')
|
||||
environment = SelectField(
|
||||
'Środowisko KSeF',
|
||||
choices=[('prod', 'PROD'), ('test', 'TEST')],
|
||||
validators=[Optional()],
|
||||
)
|
||||
auth_mode = SelectField('Tryb autoryzacji', choices=[('token', 'Token'), ('certificate', 'Certyfikat')])
|
||||
token = PasswordField('Token', validators=[Optional()])
|
||||
client_id = StringField('Client ID', validators=[Optional()])
|
||||
certificate_file = FileField('Certyfikat', validators=[Optional(), FileAllowed(['pem', 'crt', 'cer', 'p12', 'pfx'], 'Dozwolone: pem, crt, cer, p12, pfx')])
|
||||
submit = SubmitField('Zapisz KSeF')
|
||||
|
||||
|
||||
class MailSettingsForm(FlaskForm):
|
||||
source_mode = RadioField('Źródło SMTP', choices=[('global', 'Użyj ustawień globalnych'), ('user', 'Podaj indywidualne ustawienia')], default='global')
|
||||
server = StringField('SMTP host', validators=[Optional()])
|
||||
port = StringField('SMTP port', validators=[Optional()])
|
||||
username = StringField('SMTP login', validators=[Optional()])
|
||||
password = PasswordField('SMTP hasło', validators=[Optional()])
|
||||
sender = StringField('Nadawca', validators=[Optional(), Email()])
|
||||
security_mode = SelectField('Zabezpieczenie połączenia', choices=[('tls', 'TLS / STARTTLS'), ('ssl', 'SSL'), ('none', 'Brak')], validators=[Optional()], default='tls')
|
||||
test_recipient = StringField('Adres testowy', validators=[Optional(), Email()])
|
||||
submit = SubmitField('Zapisz SMTP')
|
||||
test_submit = SubmitField('Wyślij test maila')
|
||||
|
||||
|
||||
class NotificationSettingsForm(FlaskForm):
|
||||
source_mode = RadioField('Źródło Pushover', choices=[('global', 'Użyj ustawień globalnych'), ('user', 'Podaj indywidualne ustawienia')], default='global')
|
||||
pushover_user_key = StringField('Pushover user key', validators=[Optional()])
|
||||
pushover_api_token = PasswordField('Pushover API token', validators=[Optional()])
|
||||
min_amount = StringField('Powiadom od kwoty', validators=[Optional()])
|
||||
quiet_hours = StringField('Cichy harmonogram, np. 22:00-07:00', validators=[Optional()])
|
||||
enabled = BooleanField('Włącz powiadomienia')
|
||||
submit = SubmitField('Zapisz powiadomienia')
|
||||
test_submit = SubmitField('Wyślij test Pushover')
|
||||
|
||||
|
||||
class AppearanceSettingsForm(FlaskForm):
|
||||
theme_preference = SelectField('Motyw interfejsu', choices=[('light', 'Jasny'), ('dark', 'Ciemny')], validators=[DataRequired()])
|
||||
submit = SubmitField('Zapisz wygląd')
|
||||
|
||||
|
||||
class CompanyForm(FlaskForm):
|
||||
name = StringField('Nazwa firmy', validators=[DataRequired()])
|
||||
tax_id = StringField('NIP', validators=[Optional()])
|
||||
sync_enabled = BooleanField('Włącz harmonogram pobierania')
|
||||
sync_interval_minutes = IntegerField('Interwał sync (min)', validators=[Optional()])
|
||||
bank_account = StringField('Numer rachunku bankowego', validators=[Optional()])
|
||||
read_only_mode = BooleanField('Tryb tylko odczyt (R/O)')
|
||||
submit = SubmitField('Zapisz firmę')
|
||||
|
||||
|
||||
class UserForm(FlaskForm):
|
||||
email = StringField('E-mail', validators=[DataRequired(), Email()])
|
||||
name = StringField('Imię i nazwisko', validators=[DataRequired()])
|
||||
password = PasswordField('Hasło', validators=[Optional()])
|
||||
role = SelectField('Rola globalna', choices=[('admin', 'Admin'), ('operator', 'Operator'), ('readonly', 'Readonly')])
|
||||
company_id = SelectField('Firma', coerce=int, validators=[Optional()])
|
||||
access_level = SelectField('Dostęp do firmy', choices=[('full', 'Pełny'), ('readonly', 'Tylko odczyt')])
|
||||
submit = SubmitField('Dodaj / przypisz użytkownika')
|
||||
|
||||
|
||||
class NfzModuleSettingsForm(FlaskForm):
|
||||
source_mode = RadioField('Źródło konfiguracji NFZ', choices=[('global', 'Użyj ustawień globalnych'), ('user', 'Ustaw indywidualnie')], default='global')
|
||||
enabled = BooleanField('Włącz moduł faktur NFZ')
|
||||
submit = SubmitField('Zapisz moduł NFZ')
|
||||
Reference in New Issue
Block a user