Warn about overwriting previously imported SMS
[retroconv] / contactsServ.py
index 93e5fa3..d1a42fc 100644 (file)
-import evolution
-from pygobject import *
-from ctypes import *
+from evolution import ebook
+import pygobject
+import ctypes
+import sys
 #from wrapper import *
 
 
-ebook = CDLL('libebook-1.2.so.9')
+#ebook = CDLL('libebook-1.2.so.5')
 E_CONTACT_HOMEPAGE_URL = 42
 E_CONTACT_PHOTO = 94
 E_CONTACT_EMAIL = 97
 E_CONTACT_BIRTHDAY_DATE = 107
 
 class address_book:
-               
-       def getContactNameFromPhone(self, phoneNum):
-               
-
-               addresses = evolution.ebook.open_addressbook('default')
-               contacts = addresses.get_all_contacts()
-
-
-                #ai = GList.new(ebook.e_contact_get_attributes(hash(self._contact), E_CONTACT_EMAIL))
-
-               for econtact in contacts:
-                       
-                       try: 
-                               #print econtact.get_name()
-                               phones = econtact.get_property('phone') 
-                               
-                               phones_p=int(str(phones)[13:-1],16)
-                               phoneList = GList.new(phones_p)
-                               
-                               while phoneList.has_next():
-                                       currPhone = string_at(phoneList.next())
-                                       
-                                       if currPhone == phoneNum:
-                                               return econtact.get_name()
-                       except:
-                               continue
-                               
-                               
-                               
        
        def populateNames(self, recvLst, sentLst):
                
-               addresses = evolution.ebook.open_addressbook('default')
+               addresses = ebook.open_addressbook('default')
                contacts = addresses.get_all_contacts()
                
                listX=[]
-               
-               
-               """"for msg in recvLst:
-                       for contact in contacts:
-                               try:
-                                       phones = contact.get_property('phone')  
-                                       phones_p=int(str(phones)[13:-1],16)
-                               except:
-                                       continue
-                                       
-                               phoneList = GList.new(phones_p)
-                               
-                               while phoneList.has_next():
-                                       currPhone = string_at(phoneList.next())
-                                       if currPhone[-7:] == msg.fromNum[-7:]:
-                                               msg.setSenderName(contact.get_name())
-                                               break
-               """
-               
+
                for contact in contacts:
                
                        try:
                                phones = contact.get_property('phone')  
                                phones_p=int(str(phones)[13:-1],16)
-                               phoneList = GList.new(phones_p)
-                               
-                               
-                               
-                                       
-                               
-                               
-                               
-                               
+                               phoneList = pygobject.GList.new(phones_p)
                                
                                while phoneList.has_next():
-                                       currPhone = string_at(phoneList.next())
+                                       currPhone = ctypes.string_at(phoneList.next())
                                        for msg in recvLst:
                                                if currPhone[-7:] == msg.fromNum[-7:]:
                                                        msg.setSenderName(contact.get_name())
                                                        photo = contact.get_property('photo')
-                                                       pi = cast(c_void_p(hash(photo)), POINTER(EContactPhoto))
+                                                       pi = ctypes.cast(ctypes.c_void_p(hash(photo)), ctypes.POINTER(pygobject.EContactPhoto))
                                                        
                                                        if pi.contents.data.uri.startswith("image/"):
                                                                #data = string_at(pi.contents.data.inlined.data)
-                                                               data = string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length)
+                                                               data = ctypes.string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length)
                                                                length = pi.contents.data.inlined.length
                                                                msg.setImageData(data, length)
+                                                       #else:
+                                                               #print contact.get_name()+" : "+pi.contents.data.uri
                                                
                                        for msg in sentLst:
                                                if currPhone[-7:] == msg.toNum[-7:]:
                                                        msg.setRecName(contact.get_name())
                                                        photo = contact.get_property('photo')
-                                                       pi = cast(c_void_p(hash(photo)), POINTER(EContactPhoto))
+                                                       pi = ctypes.cast(ctypes.c_void_p(hash(photo)), ctypes.POINTER(pygobject.EContactPhoto))
                                                        
                                                        if pi.contents.data.uri.startswith("image/"):
                                                                #data = string_at(pi.contents.data.inlined.data)
-                                                               data = string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length)
+                                                               data = ctypes.string_at(pi.contents.data.inlined.data, pi.contents.data.inlined.length)
                                                                length = pi.contents.data.inlined.length
                                                                msg.setImageData(data, length)
                                                                
                                                        
                        except:
+                               #print sys.exc_info()
                                continue