[IMP]: improvement for Open Partner detail
authorksa (Open ERP) <ksa@tinyerp.co.in>
Wed, 28 Jul 2010 13:34:59 +0000 (19:04 +0530)
committerksa (Open ERP) <ksa@tinyerp.co.in>
Wed, 28 Jul 2010 13:34:59 +0000 (19:04 +0530)
bzr revid: ksa@tinyerp.co.in-20100728133459-sf23uwhnjtrome4u

addons/thunderbird/partner/partner.py
addons/thunderbird/plugin/tiny_plugin-2.0.xpi

index 3b4f616..d3270f6 100644 (file)
@@ -108,51 +108,51 @@ class tinythunderbird_partner(osv.osv):
         res = {}\r
         if partner:\r
             partner=partner[0]\r
+            print "partnert",partner\r
             test = address_obj.read(cr,user, partner)\r
             res = {\r
                 'partner_name': test['partner_id'] and test['partner_id'][1] or '',\r
                 'contactname': test['name'] or '',\r
-#                'type': test['type'] or '',\r
                 'street': test['street'] or '',\r
                 'street2': test['street2'] or '',\r
                 'zip': test['zip'] or '',\r
                 'city': test['city'] or '',\r
-                'country': test['country_id'] and test['country_id'][1] or '',\r
-                'state': test['state_id'] and test['state_id'][1] or '',\r
+                'country': test['country_id'] and test['country_id'][0] or '',\r
+                'state': test['state_id'] and test['state_id'][0] or '',\r
                 'email': test['email'] or '',\r
                 'phone': test['phone'] or '',\r
                 'mobile': test['mobile'] or '',\r
                 'fax': test['fax'] or '',\r
-                'res_id':test['id'] or '',\r
+                'res_id': str(partner),\r
             }\r
         return res.items()\r
 \r
-
-    def thunderbird_createcontact1(self,cr,user,vals):\r
+    def thunderbird_newcreatecontact(self,cr,user,vals):\r
         dictcreate = dict(vals)\r
-        email = dictcreate['email']\r
-        add_obj = self.pool.get('res.partner.address')\r
-        partner_ids = add_obj.search(cr,user,[('email','ilike',email)])\r
-        if partner_ids:\r
-            partner_ids = partner_ids[0]\r
-            partner = add_obj.read(cr,user,partner_ids)\r
-            res = {}\r
-            res = dictcreate.update({'partner_id':partner['partner_id'][0],\r
-                               'name':partner['name'],\r
-                               'street':partner['street'],\r
-                               'street2':partner['street2'],\r
-                               'zip':partner['zip'],\r
-                               'city':partner['city'],\r
-                               'country_id':partner['country_id'][0],\r
-                               'state_id':partner['state_id'],\r
-                               'phone':partner['phone'],\r
-                               'fax':partner['fax'],\r
-                               'mobile':partner['mobile'],\r
-                               'email':partner['email'],\r
-                               'res_id':partner['id']})\r
-            return res\r
-#        create_id = add_obj.create(cr, user, dictcreate)\r
-#        return create_id\r
+        res_id = dictcreate.get('res_id',False)\r
+        result={}\r
+        if res_id:\r
+            dictcreate.pop('res_id')\r
+            add_obj = self.pool.get('res.partner.address')\r
+            add_data = add_obj.read(cr, user, int(res_id), [])\r
+            result={           'partner_id': add_data['partner_id'] and add_data['partner_id'][0] or False,\r
+                               'country_id': dictcreate['country_id'] and int(dictcreate['country_id'][0]) or False,\r
+                               'state_id': dictcreate['state_id'] and int(dictcreate['state_id'][0]) or False,\r
+                               'name': dictcreate['name'],\r
+                               'street': dictcreate['street'],\r
+                               'street2': dictcreate['street2'],\r
+                               'zip': dictcreate['zip'],\r
+                               'city': dictcreate['city'],\r
+                               'country_id': dictcreate['country_id'][0],\r
+                               'state_id': dictcreate['state_id'],\r
+                               'phone': dictcreate['phone'],\r
+                               'fax': dictcreate['fax'],\r
+                               'mobile': dictcreate['mobile'],\r
+                               'email': dictcreate['email'],\r
+                               }\r
+        add_obj.write(cr, user,res_id,result )\r
+\r
+        return True\r
 \r
     def thunderbird_createpartner(self,cr,user,vals):\r
         dictcreate = dict(vals)\r
@@ -162,16 +162,6 @@ class tinythunderbird_partner(osv.osv):
             return 0\r
         create_id = address_obj.create(cr, user, dictcreate)\r
         return create_id
-
-#    def thunderbird_createnewaddress(self,cr,user,vals):\r
-#        dictcreate = dict(vals)
-#        address_obj = self.pool.get('res.partner.address')\r
-#        search_id = address_obj.search(cr, user,[('name','=',dictcreate['name'])])\r
-#        if search_id:\r
-#            return 0\r
-#        create_id = address_obj.create(cr, user, dictcreate)\r
-#        return create_id\r
-\r
 \r
     def thunderbird_searchobject(self,cr,user,vals):\r
         dictcreate = dict(vals)\r
@@ -268,6 +258,17 @@ class tinythunderbird_partner(osv.osv):
                 object.append(obj)\r
         return object\r
 \r
+    def thunderbird_objectcountry(self,cr,user,vals):\r
+        country_list = []\r
+        cr.execute("SELECT id, name from res_country")\r
+        country_list = cr.fetchall()\r
+        return country_list\r
+\r
+    def thunderbird_objectstate(self,cr,user,vals):\r
+        cr.execute("SELECT id, name from res_country_state")\r
+        state_country_list = cr.fetchall()\r
+        return state_country_list\r
+\r
     def thunderbird_list_search_object(self,cr,user,vals):\r
         model_obj = self.pool.get('ir.model')\r
         object=''\r
index 4ae95c6..69eb82d 100644 (file)
Binary files a/addons/thunderbird/plugin/tiny_plugin-2.0.xpi and b/addons/thunderbird/plugin/tiny_plugin-2.0.xpi differ