Exemplo n.º 1
0
    def send_mail(self,to,subject, _body):              
        body = _body.replace('\n', '\r\n')
        guid=str(uuid.uuid4())
        body = config.get('ckan.site_url') + "/user/register?guid=" + guid + "&activate"
        # Prepare actual message
        message = """From: %s
        To: %s
        Subject: %s

        %s 
        """ % (config.get('dk.aarhuskommune.odaa_from'),str(to),subject,body)

        try:
            result=self.connection()       
            connectString = """dbname='%s' user='******' host='%s' password='******'""" % (result["database"],result["user"],result["host"],result["password"])
            conn = psycopg2.connect(connectString)
            c = conn.cursor()            
            p=request.params["password1"]            
            password=self._encode(result["password"],p)
            now = datetime.datetime.now()                                    
            sql="INSERT INTO mailnotifikation VALUES ('" + guid + "','" + str(now) + "','" + request.params["name"] + "','" +request.params["fullname"] +   "','" + request.params["email"] + "','" + password + "','False')"
            c.execute(sql)
	    conn.commit()

            nowlm = now - datetime.timedelta(days=int(config.get('dk.aarhuskommune.odaa_days')))
            sNowlm=nowlm.strftime('%Y-%m-%d')            
            sql="delete from mailnotifikation where _date<'%s'" % (sNowlm);           
            c.execute(sql)
	    conn.commit()
            conn.close()
            smtpObj = smtplib.SMTP('localhost')        
            to=to.split(',')
            smtpObj.sendmail(config.get('dk.aarhuskommune.odaa_from'), to, message)
        except Exception as e:
            logging.error('Error: unable to send email. %s ',e)
Exemplo n.º 2
0
 def emailNotifikation(self,context):   
     result=self.connection()           
     connectString = """dbname='%s' user='******' host='%s' password='******'""" % (result["database"],result["user"],result["host"],result["password"])
     conn = psycopg2.connect(connectString)
     c = conn.cursor()                     
     now = datetime.datetime.now()        
     date=now.strftime('%Y/%m/%d %H:%M:%S')
     sql="SELECT * FROM mailnotifikation where _guid='%s' and registered='False';" % request.params.get('guid', 'Not present').encode('utf-8')
     c.execute(sql)
     rows=c.fetchall()   
     if len(rows)>0:
         password=self._decode(result["password"], rows[0][5])
         data_dict={'name': rows[0][2], 'email': rows[0][4], 'fullname': rows[0][3],'password1':password,'password2':password}
         sql="UPDATE mailnotifikation SET registered='True' WHERE _guid='%s';" % request.params.get('guid', 'Not present').encode('utf-8')
 	    c.execute(sql)
         conn.commit()
         conn.close()
         self._save_new(context,data_dict)