diff --git a/manage_subscriptions/forms.py b/manage_subscriptions/forms.py index ae2fee1..d83cc53 100644 --- a/manage_subscriptions/forms.py +++ b/manage_subscriptions/forms.py @@ -21,7 +21,11 @@ class SubscriptionForm(forms.ModelForm): fields = [ "title", "plan", + "high_amount", "amount", + "short_description", + "long_description", + "image", "principal_types", ] # Include all fields you want from the model diff --git a/manage_subscriptions/migrations/0003_subscription_high_amount_subscription_image_and_more.py b/manage_subscriptions/migrations/0003_subscription_high_amount_subscription_image_and_more.py new file mode 100644 index 0000000..7802351 --- /dev/null +++ b/manage_subscriptions/migrations/0003_subscription_high_amount_subscription_image_and_more.py @@ -0,0 +1,35 @@ +# Generated by Django 5.0.2 on 2024-04-10 09:15 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("manage_subscriptions", "0002_subscription_principal_types"), + ] + + operations = [ + migrations.AddField( + model_name="subscription", + name="high_amount", + field=models.DecimalField(decimal_places=2, default=0.0, max_digits=14), + ), + migrations.AddField( + model_name="subscription", + name="image", + field=models.ImageField( + blank=True, null=True, upload_to="subscription_img" + ), + ), + migrations.AddField( + model_name="subscription", + name="long_description", + field=models.TextField(blank=True, null=True), + ), + migrations.AddField( + model_name="subscription", + name="short_description", + field=models.CharField(blank=True, max_length=255, null=True), + ), + ] diff --git a/manage_subscriptions/models.py b/manage_subscriptions/models.py index 4d5be4e..5125750 100644 --- a/manage_subscriptions/models.py +++ b/manage_subscriptions/models.py @@ -18,11 +18,13 @@ class Plan(BaseModel): class Subscription(BaseModel): title = models.CharField(max_length=255) - # short_description = models.CharField(max_length=255, null=True, blank=True) - # long_description = models.TextField(null=True, blank=True) + short_description = models.CharField(max_length=255, null=True, blank=True) + long_description = models.TextField(null=True, blank=True) + image = models.ImageField(upload_to="subscription_img", null=True, blank=True) plan = models.ForeignKey( Plan, related_name="subscription_plan", on_delete=models.CASCADE ) + high_amount = models.DecimalField(max_digits=14, decimal_places=2, default=0.00) amount = models.DecimalField(max_digits=14, decimal_places=2, default=0.00) principal_types = models.ManyToManyField( IAmPrincipalType, related_name="principal_type_subscriptions", blank=True diff --git a/templates/stripe_html/index.html b/templates/stripe_html/index.html index 2b06644..0066750 100644 --- a/templates/stripe_html/index.html +++ b/templates/stripe_html/index.html @@ -73,19 +73,31 @@ - - - {% for subscription in subscriptions %}
-
{{ subscription.title }}
+
{{ + subscription.title }}
+ {% if subscription.image %} + {{ subscription.title }} + {% endif %}
+ {% if subscription.short_description %} +

{{ subscription.short_description }}

+ {% endif %} + {% if subscription.long_description %} +

{{ subscription.long_description|truncatewords:20 }}

+ {% endif %}
Subscription Amount
+ {% if subscription.high_amount and subscription.high_amount > subscription.amount %} +

£ {{ subscription.high_amount }} £ {{ + subscription.amount }}

+ {% else %}

£ {{ subscription.amount }}

+ {% endif %}
@@ -98,6 +110,7 @@

No subscriptions available.

{% endfor %} +
@@ -427,7 +440,7 @@