Skip to content
This repository was archived by the owner on Aug 26, 2024. It is now read-only.

override reglink create method to handle duplicates #464

Merged
merged 11 commits into from
Jun 8, 2022
18 changes: 17 additions & 1 deletion gsoc/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
from googleapiclient.discovery import build

from django.contrib.auth.models import Permission
from django.contrib import auth, messages
from django.contrib import auth
from django.db import models
from django.contrib.auth.models import User
from django.dispatch import receiver
Expand Down Expand Up @@ -1070,6 +1070,22 @@ def create_reminder(self, trigger_time=None):
else:
self.create_scheduler()

def save(self, *args, **kwargs):
try:
reglink = RegLink.objects.get(
user_role=self.user_role,
gsoc_year=self.gsoc_year,
email=self.email,
user_suborg=self.user_suborg
)
if reglink.scheduler_id is not None and reglink.reminder_id is not None:
Scheduler.objects.get(id=reglink.scheduler_id).delete()
Scheduler.objects.get(id=reglink.reminder_id).delete()
reglink.delete()
except RegLink.DoesNotExist:
pass
super(RegLink, self).save(*args, **kwargs)


class Comment(models.Model):
username = models.CharField(max_length=50)
Expand Down