Reverting back to admin pages as login and updates in the mobile api

This commit is contained in:
Vivek
2025-12-17 22:05:13 +05:30
parent 48c8abb366
commit 105da4a876
39 changed files with 2147 additions and 452 deletions

View File

@@ -5,18 +5,19 @@ from django.contrib.auth.forms import AuthenticationForm
from django.contrib.auth import get_user_model
User = get_user_model()
class RegisterForm(UserCreationForm):
full_name = forms.CharField(max_length=150, required=False, label="Full name")
email = forms.EmailField(required=True, label="Email")
class Meta:
model = get_user_model()
model = User
fields = ("username", "full_name", "email", "password1", "password2")
def clean_email(self):
email = self.cleaned_data.get("email")
user = get_user_model()
user = User
if user.objects.filter(email__iexact=email).exists():
raise forms.ValidationError("A user with that email already exists.")
return email
@@ -59,4 +60,35 @@ class CustomerLoginForm(AuthenticationForm):
"class": "input",
"autocomplete": "current-password",
})
)
)
class CustomerProfileForm(forms.ModelForm):
class Meta:
model = User
fields = [
"first_name",
"last_name",
"email",
"phone_number",
"pincode",
"district",
"state",
"country",
"place",
"latitude",
"longitude",
]
widgets = {
"first_name": forms.TextInput(attrs={"class": "form-control"}),
"last_name": forms.TextInput(attrs={"class": "form-control"}),
"email": forms.EmailInput(attrs={"class": "form-control"}),
"phone_number": forms.TextInput(attrs={"class": "form-control"}),
"pincode": forms.TextInput(attrs={"class": "form-control"}),
"district": forms.TextInput(attrs={"class": "form-control"}),
"state": forms.TextInput(attrs={"class": "form-control"}),
"country": forms.TextInput(attrs={"class": "form-control"}),
"place": forms.TextInput(attrs={"class": "form-control"}),
"latitude": forms.NumberInput(attrs={"class": "form-control", "step": "any"}),
"longitude": forms.NumberInput(attrs={"class": "form-control", "step": "any"}),
}

View File

@@ -16,7 +16,9 @@ from django.contrib.auth.tokens import default_token_generator
from django.contrib.auth import authenticate, login
from django.shortcuts import render
from .customer_forms import RegisterForm, CustomerLoginForm
from .customer_forms import RegisterForm
from .customer_forms import CustomerLoginForm
from .customer_forms import CustomerProfileForm
from django.contrib.auth import logout
from django.shortcuts import redirect
@@ -127,4 +129,27 @@ def customer_dashboard(request):
def logout_view(request):
logout(request)
messages.success(request, "You have been logged out successfully.")
return redirect("login")
return redirect("login")
@login_required(login_url="login")
def customer_calendar(request):
return render(request, "customer/customer_calendar.html")
# ...existing imports...
@login_required(login_url="login")
def customer_profile(request):
user = request.user
if request.method == "POST":
form = CustomerProfileForm(request.POST, instance=user)
if form.is_valid():
form.save()
messages.success(request, "Profile updated.")
return redirect("customer_profile")
else:
form = CustomerProfileForm(instance=user)
return render(request, "customer/customer_profile.html", {"form": form})