44 lines
1.4 KiB
Python
44 lines
1.4 KiB
Python
from django import forms
|
|
from manage_subscriptions.models import PrincipalSubscription, Subscription, Plan
|
|
|
|
|
|
class PlanForm(forms.ModelForm):
|
|
class Meta:
|
|
model = Plan
|
|
fields = ["title", "days"] # Include all fields you want from the model
|
|
|
|
# You can add custom validation for Plan fields here if needed
|
|
# Example:
|
|
# def clean_title(self):
|
|
# title = self.cleaned_data.get('title')
|
|
# # Add your validation logic here
|
|
# return title
|
|
|
|
|
|
class SubscriptionForm(forms.ModelForm):
|
|
class Meta:
|
|
model = Subscription
|
|
fields = [
|
|
"title",
|
|
"plan",
|
|
"high_amount",
|
|
"amount",
|
|
"short_description",
|
|
# "long_description",
|
|
# "image",
|
|
"principal_types",
|
|
"referral_percentage",
|
|
] # Include all fields you want from the model
|
|
|
|
|
|
class PrincipalSubscriptionForm(forms.ModelForm):
|
|
class Meta:
|
|
model = PrincipalSubscription
|
|
fields = "__all__" # Includes all fields from the model
|
|
widgets = {
|
|
"start_date": forms.DateInput(attrs={"type": "date"}),
|
|
"end_date": forms.DateInput(attrs={"type": "date"}),
|
|
"grace_period_end_date": forms.DateInput(attrs={"type": "date"}),
|
|
"cancelled_date_time": forms.DateTimeInput(attrs={"type": "datetime"}),
|
|
}
|