32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
|
from django import forms
|
||
|
from django.core.exceptions import ValidationError
|
||
|
from django.utils.translation import ugettext_lazy as _
|
||
|
from rest_framework import serializers
|
||
|
|
||
|
from .. import settings
|
||
|
from .options import SoftwareService, SoftwareServiceForm
|
||
|
|
||
|
|
||
|
# TODO monitor quota since out of sync?
|
||
|
|
||
|
class SeaFileForm(SoftwareServiceForm):
|
||
|
email = forms.EmailField(label=_("Email"), widget=forms.TextInput(attrs={'size':'40'}))
|
||
|
quota = forms.IntegerField(label=_("Quota"), initial=settings.SAAS_SEAFILE_DEFAULT_QUOTA,
|
||
|
help_text=_("Disk quota in MB."))
|
||
|
|
||
|
|
||
|
class SeaFileDataSerializer(serializers.Serializer):
|
||
|
email = serializers.EmailField(label=_("Email"))
|
||
|
quota = serializers.IntegerField(label=_("Quota"), default=settings.SAAS_SEAFILE_DEFAULT_QUOTA,
|
||
|
help_text=_("Disk quota in MB."))
|
||
|
|
||
|
|
||
|
class SeaFileService(SoftwareService):
|
||
|
name = 'seafile'
|
||
|
verbose_name = "SeaFile"
|
||
|
form = SeaFileForm
|
||
|
serializer = SeaFileDataSerializer
|
||
|
icon = 'orchestra/icons/apps/seafile.png'
|
||
|
site_domain = settings.SAAS_SEAFILE_DOMAIN
|
||
|
change_readonly_fileds = ('email',)
|