from django import forms 
from . models import *
from django.contrib.auth.forms import UserCreationForm
from django.core.exceptions import ValidationError
from django.forms.fields import EmailField 
from django.forms.forms import Form 

class CustomUserCreationForm(UserCreationForm):
	email = forms.EmailField(label='email')
	password1 = forms.CharField(label='password',widget=forms.PasswordInput)
	password2 = forms.CharField(label='Confirm password',widget=forms.PasswordInput)

	def email_clean(self):
		email = self.cleaned_data['email'].lower()
		new = User.objects.filter(email=email)
		if new.count():
			raise ValidationError("User Already Exist")
		return email 

	def clean_password2(self):
		password1 = self.cleaned_data['password1']
		password2 = self.cleaned_data['password2']

		if password1 and password2 and password1 != password2:
			raise ValidationError("Password don't match")
		return password2

	def save(self,commit=True):
		user = User.objects.create_user(
			self.cleaned_data['email'], 
			self.cleaned_data['password1']
			)
		return user






class Annex_Form(forms.ModelForm):
	class Meta:
		model = AnnexSurvey
		fields = '__all__'


