~jamesj/openobject-addons/c2c_budget_fixes

« back to all changes in this revision

Viewing changes to dm_emailvision/dm_emailvision_api.py

[IMP] Adding multi_company_stock_module, nto finished

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
from osv import fields
24
24
from osv import osv
25
25
import pooler
 
26
 
26
27
from lxml import etree
27
28
import httplib
28
29
import base64
 
30
import time
29
31
 
30
32
 
31
33
class dm_mail_service(osv.osv):
52
54
    ev_random = obj.mail_service_id.ev_random
53
55
 
54
56
    email_dest = obj.address_id.email
 
57
    email_reply = obj.segment_id.campaign_id.trademark_id.email
55
58
    email_subject = obj.document_id.subject
 
59
    name_from = obj.segment_id.campaign_id.trademark_id.name
 
60
    name_reply = obj.segment_id.campaign_id.trademark_id.name
 
61
 
56
62
 
57
63
    pool = pooler.get_pool(cr.dbname)
58
64
    ir_att_obj = pool.get('ir.attachment')
59
65
    ir_att_ids = ir_att_obj.search(cr,uid,[('res_model','=','dm.campaign.document'),('res_id','=',obj.id),('file_type','=','html')])
60
66
    for attach in ir_att_obj.browse(cr,uid,ir_att_ids):
61
67
        message = base64.decodestring(attach.datas)
 
68
        root = etree.HTML(message)
 
69
        body = root.find('body')
 
70
 
62
71
        print "message :", message
63
72
 
64
 
        html_content = etree.HTML(message)
 
73
        html_content = ''.join([ etree.tostring(x) for x in body.getchildren()])
 
74
        print "body :", html_content
65
75
        text_content = "This is a test"
66
76
 
 
77
 
67
78
        "Composing XML"
68
79
        msg = etree.Element("MultiSendRequest")
69
80
        sendrequest = etree.SubElement(msg, "sendrequest")
70
81
 
71
82
        dyn = etree.SubElement(sendrequest, "dyn")
 
83
 
72
84
        dynentry1 = etree.SubElement(dyn, "entry")
73
85
        dynkey1 = etree.SubElement(dynentry1, "key")
74
86
        dynkey1.text = "EMAIL_DEST"
75
87
        dynvalue1 = etree.SubElement(dynentry1, "value")
76
88
        dynvalue1.text = email_dest
 
89
 
77
90
        dynentry2 = etree.SubElement(dyn, "entry")
78
91
        dynkey2 = etree.SubElement(dynentry2, "key")
79
92
        dynkey2.text = "SUBJECT"
80
93
        dynvalue2 = etree.SubElement(dynentry2, "value")
81
94
        dynvalue2.text = email_subject
82
95
 
 
96
        dynentry3 = etree.SubElement(dyn, "entry")
 
97
        dynkey3 = etree.SubElement(dynentry3, "key")
 
98
        dynkey3.text = "EMAIL_REPLY"
 
99
        dynvalue3 = etree.SubElement(dynentry3, "value")
 
100
        dynvalue3.text = email_reply
 
101
 
 
102
        dynentry4 = etree.SubElement(dyn, "entry")
 
103
        dynkey4 = etree.SubElement(dynentry4, "key")
 
104
        dynkey4.text = "NAME_FROM"
 
105
        dynvalue4 = etree.SubElement(dynentry4, "value")
 
106
        dynvalue4.text = name_from
 
107
 
 
108
        dynentry5 = etree.SubElement(dyn, "entry")
 
109
        dynkey5 = etree.SubElement(dynentry5, "key")
 
110
        dynkey5.text = "NAME_REPLY"
 
111
        dynvalue5 = etree.SubElement(dynentry5, "value")
 
112
        dynvalue5.text = name_reply
 
113
 
 
114
 
83
115
        content = etree.SubElement(sendrequest, "content")
84
116
        entry1 = etree.SubElement(content, "entry")
85
117
        key1 = etree.SubElement(entry1, "key")
86
118
        key1.text = "1"
87
119
        value1 = etree.SubElement(entry1, "value")
88
 
        value1.text = etree.CDATA(etree.tostring(html_content))
 
120
        value1.text = etree.CDATA(html_content)
89
121
        entry2 = etree.SubElement(content, "entry")
90
122
        key2 = etree.SubElement(entry2, "key")
91
123
        key2.text = "2"
99
131
        random = etree.SubElement(sendrequest, "random")
100
132
        random.text = ev_random
101
133
        senddate = etree.SubElement(sendrequest, "senddate")
102
 
        senddate.text = "2008-05-06T00:00:00.000+01:00"
 
134
        senddate.text = time.strftime('%Y-%m-%dT%H:%M:%S')
103
135
        synchrotype = etree.SubElement(sendrequest, "synchrotype")
104
136
        synchrotype.text = "NOTHING"
105
137