# Path: contacts/contacts.py
# PHONE_PREFIX = "tel:"
# class Contact(pisiinterfaces.Syncable):
# class AbstractContactSynchronizationModule(pisiinterfaces.AbstractSynchronizationModule):
#     def __init__(self, id, attributes):
#     def compare(self,  contactEntry):
#     def __init__(self,  verbose,  soft,  modulesString,  config,  configsection,  name = "unkown contact source"):
#     def allContacts( self ):
#     def getContact(self,  id):
#     def flush(self):
#     def addContact( self, contactInstance ):
#     def replaceContact( self, id, updatedContact):
#     def removeContact( self, id ):
#     def _prefixNumbers(self, atts):
#     def _dePrefixNumbers(self, atts):
# def _safeString(st,  replacement = ""):
# def assembleID(contactAtts):


import os.path
import sys,os,re
import dbus, e_dbus
import pisiprogress
from contacts import contacts
from pisiconstants import *
Available Types are:
objectpath, phonenumber, address, email, name, date, uri, photo, text, longtext, boolean, timezone, number, integer, generic 

See U{http://wiki.openmoko.org/wiki/Opimd_redesign#Changes_in_fields} for details.
"""
TYPE_DEFS = { 
    "Name": 'name', 
    "Middlename": 'name', 
    "Surname": 'name', 
    "Email": 'email', 
    "Phone": 'phonenumber', 
    "Mobile phone": 'phonenumber', 
    "Home phone": 'phonenumber', 
    "Work phone": 'phonenumber', 
    "HomeStreet": 'address', 
    "HomePostalCode": 'address', 
    "HomeCity": 'address', 
    "HomeCountry": 'address', 
    "HomeState": 'address', 
    "Organisation": 'text', 
    "BusinessPostalCode": 'address', 
    "BusinessStreet": 'address', 
    "BusinessCity": 'address', 
    "BusinessCountry": 'address', 
    "BusinessState": 'address', 
    "Fax phone": 'phonenumber', 
    "Title": 'text', 
    "Departement": 'text', 
}


# Path: contacts/contacts.py
# PHONE_PREFIX = "tel:"
# class Contact(pisiinterfaces.Syncable):
# class AbstractContactSynchronizationModule(pisiinterfaces.AbstractSynchronizationModule):
#     def __init__(self, id, attributes):
#     def compare(self,  contactEntry):
#     def __init__(self,  verbose,  soft,  modulesString,  config,  configsection,  name = "unkown contact source"):
#     def allContacts( self ):
#     def getContact(self,  id):
#     def flush(self):
#     def addContact( self, contactInstance ):
#     def replaceContact( self, id, updatedContact):
#     def removeContact( self, id ):
#     def _prefixNumbers(self, atts):
#     def _dePrefixNumbers(self, atts):
# def _safeString(st,  replacement = ""):
# def assembleID(contactAtts):


# Path: modules/contacts_opimd.py
import os.path
import sys,os,re
import dbus, e_dbus
import pisiprogress
from contacts import contacts
from pisiconstants import *

Available Types are:
objectpath, phonenumber, address, email, name, date, uri, photo, text, longtext, boolean, timezone, number, integer, generic 

See U{http://wiki.openmoko.org/wiki/Opimd_redesign#Changes_in_fields} for details.
"""
TYPE_DEFS = { 
    "Name": 'name', 
    "Middlename": 'name', 
    "Surname": 'name', 
    "Email": 'email', 
    "Phone": 'phonenumber', 
    "Mobile phone": 'phonenumber', 
    "Home phone": 'phonenumber', 
    "Work phone": 'phonenumber', 
    "HomeStreet": 'address', 
    "HomePostalCode": 'address', 
    "HomeCity": 'address', 
    "HomeCountry": 'address', 
    "HomeState": 'address', 
    "Organisation": 'text', 
    "BusinessPostalCode": 'address', 
    "BusinessStreet": 'address', 
    "BusinessCity": 'address', 
    "BusinessCountry": 'address', 
    "BusinessState": 'address', 
    "Fax phone": 'phonenumber', 
    "Title": 'text', 
    "Departement": 'text', 
}


class SynchronizationModule(contacts.AbstractContactSynchronizationModule):