From: Diane Trout Date: Wed, 16 Sep 2009 21:36:44 +0000 (+0000) Subject: Force addition of HTSUser object if someone is creating an auth_users object X-Git-Tag: 0.3.2~24 X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=htsworkflow.git;a=commitdiff_plain;h=6465782187e3b47465116718da97ae808a4d2442 Force addition of HTSUser object if someone is creating an auth_users object --- diff --git a/htsworkflow/frontend/samples/models.py b/htsworkflow/frontend/samples/models.py index 38c1863..749c82e 100644 --- a/htsworkflow/frontend/samples/models.py +++ b/htsworkflow/frontend/samples/models.py @@ -1,6 +1,8 @@ import urlparse from django.db import models from django.contrib.auth.models import User, UserManager +from django.db.models.signals import pre_save, post_save +from django.db import connection from htsworkflow.frontend import settings from htsworkflow.frontend.reports.libinfopar import * @@ -272,3 +274,15 @@ class HTSUser(User): def admin_url(self): return '/admin/%s/%s/%d' % (self._meta.app_label, self._meta.module_name, self.id) + +def HTSUserInsertID(sender, instance, **kwargs): + """ + Force addition of HTSUsers when someone just modifies the auth_user object + """ + u = HTSUser.objects.filter(pk=instance.id) + if len(u) == 0: + cursor = connection.cursor() + cursor.execute('INSERT INTO samples_htsuser (user_ptr_id) VALUES (%s);' % (instance.id,)) + cursor.close() + +post_save.connect(HTSUserInsertID, sender=User)