diff --git a/myproject/myapp/models.py b/myproject/myapp/models.py index 663f7ba01fbff5ba31935f8efe32cd1f4aec32c5..b09b3f1348e1803ab24326caa517da4d3ac5937b 100644 --- a/myproject/myapp/models.py +++ b/myproject/myapp/models.py @@ -63,8 +63,8 @@ class UserTokenCount(models.Model): @receiver(post_save, sender=User) def create_or_update_user_profile(sender, instance, created, **kwargs): if created: - UserTokenCount.objects.create(user=instance) - # Profile.objects.create(user=instance) + UserTokenCount.objects.get_or_create(user=instance) + Profile.objects.get_or_create(user=instance) # instance.profile.save() class Action(Enum): diff --git a/myproject/myapp/templates/index1.html b/myproject/myapp/templates/index1.html index db04949e1d2a937f992abe928c21330c2c815937..530819ec9591a2a77e2bacb4665127f434eff3e0 100644 --- a/myproject/myapp/templates/index1.html +++ b/myproject/myapp/templates/index1.html @@ -19,6 +19,7 @@ </div> </div> + {% if token_count > 0 %} <div class="gap-16 items-center py-8 px-4 mx-auto max-w-screen-xl lg:grid lg:grid-cols-2"> <form enctype="multipart/form-data" method="post" id="uploadForm"> {% csrf_token %} @@ -30,6 +31,17 @@ </button> </form> </div> + {% else %} + <div class="gap-16 items-center py-8 px-4 mx-auto max-w-screen-xl lg:grid lg:grid-cols-2"> + <div class="font-light text-gray-500 sm:text-lg dark:text-gray-400"> + <h2 class="mb-4 text-4xl tracking-tight font-extrabold text-gray-900 dark:text-white">Tokens required</h2> + <p class="mb-4">You require more tokens to use this service</p> + <button class="text-white bg-gray-800 hover:bg-gray-900 focus:outline-none focus:ring-4 focus:ring-gray-300 font-medium rounded-lg text-sm px-5 py-2.5 me-2 mb-2 dark:bg-gray-800 dark:hover:bg-gray-700 dark:focus:ring-gray-700 dark:border-gray-700"> + <a href="{% url 'pricing' %}">Buy Tokens</a> + </button> + </div> + </div> + {% endif %} <div id="player" class="py-8 px-4 mx-auto max-w-screen-xl lg:py-8 hidden"> diff --git a/myproject/myapp/views.py b/myproject/myapp/views.py index 90742248de9a0ca26b471d74e34c2fd6cb8bd905..912c1a2e709dba26d9b036eebaf279c72869f621 100644 --- a/myproject/myapp/views.py +++ b/myproject/myapp/views.py @@ -111,6 +111,8 @@ def index(request): # Handle authenticated users if request.user.is_authenticated: + token_count = UserTokenCount.objects.get(user=request.user).token_count + context['token_count'] = token_count if request.method == 'POST': form = InstrumentDetectionForm(request.POST, request.FILES) if form.is_valid() and 'audio_file' in request.FILES: