mirror of
https://github.com/mediacms-io/mediacms.git
synced 2025-11-20 21:46:04 -05:00
MediaCMS backend, initial commit
This commit is contained in:
59
users/forms.py
Normal file
59
users/forms.py
Normal file
@@ -0,0 +1,59 @@
|
||||
from django import forms
|
||||
from .models import User, Channel
|
||||
|
||||
|
||||
class SignupForm(forms.Form):
|
||||
name = forms.CharField(max_length=100, label="Name")
|
||||
|
||||
def signup(self, request, user):
|
||||
user.name = self.cleaned_data["name"]
|
||||
user.save()
|
||||
|
||||
|
||||
class UserForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = User
|
||||
fields = (
|
||||
"name",
|
||||
"description",
|
||||
"email",
|
||||
"logo",
|
||||
"notification_on_comments",
|
||||
"is_featured",
|
||||
"advancedUser",
|
||||
"is_manager",
|
||||
"is_editor",
|
||||
#"allow_contact",
|
||||
)
|
||||
|
||||
def clean_logo(self):
|
||||
image = self.cleaned_data.get("logo", False)
|
||||
if image:
|
||||
if image.size > 2 * 1024 * 1024:
|
||||
raise forms.ValidationError("Image file too large ( > 2mb )")
|
||||
return image
|
||||
else:
|
||||
raise forms.ValidationError("Please provide a logo")
|
||||
|
||||
def __init__(self, user, *args, **kwargs):
|
||||
super(UserForm, self).__init__(*args, **kwargs)
|
||||
self.fields.pop("is_featured")
|
||||
if not user.is_superuser:
|
||||
self.fields.pop("advancedUser")
|
||||
self.fields.pop("is_manager")
|
||||
self.fields.pop("is_editor")
|
||||
|
||||
|
||||
class ChannelForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = Channel
|
||||
fields = ("banner_logo",)
|
||||
|
||||
def clean_banner_logo(self):
|
||||
image = self.cleaned_data.get("banner_logo", False)
|
||||
if image:
|
||||
if image.size > 2 * 1024 * 1024:
|
||||
raise forms.ValidationError("Image file too large ( > 2mb )")
|
||||
return image
|
||||
else:
|
||||
raise forms.ValidationError("Please provide a banner")
|
||||
Reference in New Issue
Block a user