admin.site.register(Forwarder)
admin.site.register(VirtualUser)
admin.site.register(UserPermissions)
+admin.site.register(Log)
def __unicode__(self):
return "%s -> %s pattern '%s'" % (self.user, self.domain, self.pattern)
+
+class Log(models.Model):
+ user = models.ForeignKey(User, null=False)
+ when = models.DateTimeField(null=False, auto_now=True)
+ what = models.CharField(max_length=2048, null=False, blank=False)
+
+ def __unicode__(self):
+ return "%s (%s): %s" % (self.when, self.user, self.what)
+
+ class Meta:
+ ordering=('-when',)
from models import *
from forms import *
+def log(user, what):
+ l = Log()
+ l.user = user
+ l.what = what
+ print l
+ l.save()
+
@login_required
def home(request):
users = VirtualUser.objects.extra(where=["EXISTS (SELECT 1 FROM mailmgr_userpermissions p WHERE p.user_id=%s AND p.domain_id = local_domain_id AND local_part ~* ('^'||p.pattern||'$'))" % request.user.id])
messages.add_message(request, messages.INFO, 'User %s updated' % vu)
if password_changed:
messages.add_message(request, messages.INFO, 'Password changed for user %s' % vu)
+ log(request.user, "%s user %s, including changing the password" % (userparam=='add' and 'Added' or 'Updated', vu))
+ else:
+ log(request.user, "%s user %s, without changing the password" % (userparam=='add' and 'Added' or 'Updated', vu))
return HttpResponseRedirect('/')
else:
# Generate a new form
form = ForwarderForm(data=request.POST, instance=fwd, user=request.user)
if form.is_valid():
form.save()
+ log(request.user, "%s forwarding %s -> %s" % (userparam=='add' and 'Added' or 'Updated', fwd, fwd.remote_name))
messages.add_message(request, messages.INFO, 'Forwarder %s updated' % fwd)
return HttpResponseRedirect('/')
else: