[Checkins] SVN: zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/ savepoint

Andreas Jung andreas at andreas-jung.com
Fri Jul 17 11:57:01 EDT 2009


Log message for revision 101965:
  savepoint
  

Changed:
  U   zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/base.py
  U   zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/configure.zcml
  U   zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/views.py

-=-
Modified: zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/base.py
===================================================================
--- zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/base.py	2009-07-17 15:56:55 UTC (rev 101964)
+++ zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/base.py	2009-07-17 15:57:01 UTC (rev 101965)
@@ -85,8 +85,23 @@
         LOG.debug('Request end (%3.2lf seconds)' % (time.time() -ts))
         return encoded_result
 
-    def convertZIPEmail(zip_archive, converter_name='pdf-prince', email_param={}):
+    def convertZIPEmail(self, zip_archive, converter_name='pdf-prince', email_param={}):
+
+        def send_email(sender, recipient, subject, body):
+            import email.MIMEText
+            import email.Header
+            from repoze.sendmail.interfaces import IMailDelivery
+            from zope.component import getUtility
+            msg = email.MIMEText.MIMEText(body.encode('UTF-8'), 'plain', 'UTF-8')
+            msg["From"] = sender
+            msg["To"] = recipient
+            msg["Subject"] = email.Header.Header(subject, 'UTF-8')
+            mailer = getUtility(IMailDelivery, 'my-app.smtp')
+            mailer.send(sender, [recipient], msg.as_string())
+    
         result = self.convertZIP(zip_archive, converter_name)
+        send_email('info at zopyx.com', 'info at zopyx.com', 'test', 'test')
+        return 'foo'
 
 
     def availableConverters(self):

Modified: zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/configure.zcml
===================================================================
--- zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/configure.zcml	2009-07-17 15:56:55 UTC (rev 101964)
+++ zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/configure.zcml	2009-07-17 15:57:01 UTC (rev 101965)
@@ -1,7 +1,9 @@
-<configure xmlns="http://namespaces.repoze.org/bfg">
+<configure xmlns="http://namespaces.repoze.org/bfg"
+           xmlns:mail="http://namespaces.repoze.org/mail">
 
   <!-- this must be included for the view declarations to work -->
   <include package="repoze.bfg.includes" />
+  <include package="repoze.sendmail"  file="meta.zcml"/>
 
   <view
      for=".models.Server"
@@ -16,6 +18,12 @@
 
   <view
      for=".models.Server"
+     view=".views.convertZIPEmail"
+     name="convertZIPEmail"
+     /> 
+
+  <view
+     for=".models.Server"
      view=".views.availableConverters"
      name="availableConverters"
      /> 
@@ -33,4 +41,10 @@
      name="static"
      />
 
+  <mail:smtpMailer
+    name="my-app.smtp"
+    hostname="localhost"
+    port="25"
+  />
+
 </configure>

Modified: zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/views.py
===================================================================
--- zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/views.py	2009-07-17 15:56:55 UTC (rev 101964)
+++ zopyx.smartprintng.server/trunk/zopyx/smartprintng/server/views.py	2009-07-17 15:57:01 UTC (rev 101965)
@@ -46,6 +46,16 @@
         return xmlrpclib.Fault(123, msg)
 
 @xmlrpc_view
+def convertZIPEmail(context, zip_archive, converter_name='pdf-prince'):
+    core = ServerCore()
+    try:
+        return core.convertZIPEmail(zip_archive, converter_name)
+    except Exception, e:
+        msg = 'Conversion failed (%s)' % e
+        LOG.error(msg, exc_info=True)
+        return xmlrpclib.Fault(123, msg)
+
+ at xmlrpc_view
 def availableConverters(context):
     return ServerCore().availableConverters()
 



More information about the Checkins mailing list