Adding classes Address and Coord, moving functions into the classes.
[treecutter.git] / xinclude / contact.py
index 379a33607fff3e10a1da373c831600ab1474f5c8..e7e0ab32820a0127f7344fd8b88b310cde60e5c1 100755 (executable)
@@ -3,39 +3,9 @@
 
 from vobject import readComponents
 import sys
-from addr import mapimage, geocode
+from address import Address
 from geohash import encode
 
-def coord2dms(coord):
-  ns = coord[0]
-  ew = coord[1]
-  mnt,sec = divmod(ns*3600,60)
-  deg,mnt = divmod(mnt,60)
-  out = u'''%d°%2d'%5.2f"%s''' % ( deg,mnt,sec,'N')
-  mnt,sec = divmod(ew*3600,60)
-  deg,mnt = divmod(mnt,60)
-  out +=  u''' %d°%2d'%05.2f"%s''' % ( deg,mnt,sec,'E')
-  return out
-
-
-def maplink(lat,lon):
-  return '''
-<uri type="location">
-  <link xlink:href=
-   "http://www.openstreetmap.org/?mlat=%s&amp;mlon=%s&amp;zoom=18&amp;layers=M">
-  <inlinemediaobject>
-    <imageobject condition="web">
-      <imagedata fileref="%s.png" format="PNG"/>
-    </imageobject>
-    <textobject>
-      <phrase>geo:%s,%s</phrase>
-    </textobject>
-  </inlinemediaobject>
-  <para>%s</para>
-  </link>
-</uri>
-''' % (lat, lon, encode(float(lat), float(lon)), lat, lon, coord2dms((lat, lon)))
-
 for arg in sys.argv[1:]:
   al = arg.split("=")
   if al[0] == "lang":
@@ -43,7 +13,6 @@ for arg in sys.argv[1:]:
   if al[0] == "xptr":
     argument = al[1]
 
-
 (cards,query) = argument.split('?')
 (key, name) = query.split(':')
 with open(cards, 'r') as f:
@@ -78,25 +47,25 @@ if 'n' in found.contents.keys():
   if not empty:
     pn += '<personname>'
     if n.prefix != '':
-      pn += '<honorific>'+n.prefix+'</honorific>'
+      pn += '<honorific>'+n.prefix+'</honorific> '
     if n.given != '':
-      pn += '<firstname>'+n.given+'</firstname>'
+      pn += '<firstname>'+n.given+'</firstname> '
     if n.additional != '':
-      pn += '<othername>'+n.additional+'</othername>'
+      pn += '<othername>'+n.additional+'</othername> '
     if n.family != '':
-      pn += '<surname>'+n.family+'</surname>'
+      pn += '<surname>'+n.family+'</surname> '
     if n.suffix != '':
-      pn += '<lineage>'+n.suffix+'</lineage>'
+      pn += '<lineage>'+n.suffix+'</lineage> '
     pn += '</personname>'
 
 ad = ''
 if 'adr' in found.contents.keys():
   for a, t in zip(found.contents['adr'],found.contents['tel']):
-    ad += '\n<address type="'+a.type_param+'">'
+    ad += '\n<address type="'+a.type_param+'"> '
     if a.value.street != '':
       ad += '<street>'+a.value.street+'</street>'
     if a.value.code != '':
-      ad += '<postcode>'+a.value.code+'</postcode>'
+      ad += '<postcode>'+a.value.code+'</postcode> '
     if a.value.city != '':
       ad += '<city>'+a.value.city+'</city>'
     if a.value.country != '':
@@ -120,7 +89,8 @@ if 'org' in found.contents.keys():
 
 url = ''
 if 'url' in found.contents.keys():
-  url += '<uri type="website"><link xlink:href="'+found.url.value+'"/></uri>'
+  url += '<uri type="website"><link xlink:href="'+found.url.value+'"/></uri> '
+
 geo = ''
 #if 'geo' in found.contents.keys():
 #  (lat,lon) = found.geo.value.split(';')