# -*- coding: utf-8 -*-

from django.conf import settings
from django.contrib.auth.models import Permission
from django.contrib.sites.models import Site
from django.core.mail import send_mail

domain=Site.objects.filter(pk=1).values('domain')[0]['domain']

def mail2perm(obj, url='', pre='', msg='', perm='change', sender=settings.DEFAULT_FROM_EMAIL, sbj=''):
   if not msg:
      if not url:
         try: url=obj.get_absolute_url()
         except: pass
      if url:url='\n\nClick on the link to see details:\n\n http://%s%s' % (domain,url)
      msg='%s%s'  % ( (pre or sbj) , url )

   perm=Permission.objects.filter(codename='%s_%s'%(perm,obj._meta.module_name), content_type__app_label=obj._meta.app_label).get()

   recips=[]
   for user in perm.user_set.all():
      if user.email: recips.append(user.email)

   send_mail((sbj or 'New '+ obj._meta.verbose_name), msg, sender, recips)