from django import forms from django.contrib.auth.models import User from .models import UserProfile, BLOOD_GROUPS from django.contrib.auth.forms import UserCreationForm class UserRegisterForm(UserCreationForm): email = forms.EmailField(required=True) blood_group = forms.ChoiceField(choices=BLOOD_GROUPS, required=True) location = forms.CharField(max_length=255, required=True) phone = forms.CharField(max_length=20, required=True) class Meta: model = User fields = ['username', 'email'] class UserUpdateForm(forms.ModelForm): class Meta: model = User fields = ['first_name', 'last_name'] widgets = { 'first_name': forms.TextInput(attrs={'class': 'form-control'}), 'last_name': forms.TextInput(attrs={'class': 'form-control'}), } class ProfileUpdateForm(forms.ModelForm): class Meta: model = UserProfile fields = ['bio', 'location', 'phone', 'birth_date', 'blood_group', 'profile_pic'] widgets = { 'bio': forms.Textarea(attrs={'class': 'form-control', 'rows': 3}), 'location': forms.TextInput(attrs={'class': 'form-control'}), 'phone': forms.TextInput(attrs={'class': 'form-control'}), 'birth_date': forms.DateInput(attrs={'class': 'form-control', 'type': 'date'}), 'blood_group': forms.Select(attrs={'class': 'form-control'}, choices=BLOOD_GROUPS), 'profile_pic': forms.FileInput(attrs={'class': 'form-control'}), }