X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=bin%2Fplc-kml.py;h=f091b82df77b7f730d6d930672a74f5b50faf091;hb=b466ae5477434db790d03928349f0d0aa18798d4;hp=2a1ecf9ebd5fe6cd10a5852d236f64145e9a5543;hpb=6469aed9563248b2d3c78a1b48ad35f0b4d343a3;p=myplc.git
diff --git a/bin/plc-kml.py b/bin/plc-kml.py
index 2a1ecf9..f091b82 100755
--- a/bin/plc-kml.py
+++ b/bin/plc-kml.py
@@ -1,7 +1,5 @@
#!/usr/bin/env plcsh
#
-# $Id$
-
# this script generates a kml file, located under the default location below
# you should crontab this job from your myplc image
# you can then use the googlemap.js javascript for creating your applet
@@ -48,7 +46,7 @@ class KmlMap:
self.open()
self.write_header()
# cache peers
- peers = GetPeers({},['peer_id','peername'])
+ peers = GetPeers()
all_sites = GetSites({'enabled':True,'is_public':True})
all_sites.sort(KmlMap.site_compare)
for site in all_sites:
@@ -77,12 +75,13 @@ class KmlMap:
self.write("""
""")
- def peer_name (self,site, peers):
+ def peer_info (self,site, peers):
if not site['peer_id']:
- return "local"
+ return (api.config.PLC_NAME, "http://%s/"%api.config.PLC_API_HOST,)
for peer in peers:
if peer['peer_id'] == site['peer_id']:
- return peer['peername']
+ return (peer['peername'],peer['peer_url'].replace("PLCAPI/",""),)
+ return "Unknown peer_name"
def write_site (self, site, peers):
# discard sites with missing lat or lon
@@ -102,43 +101,9 @@ class KmlMap:
baseurl='http://%s'%api.config.PLC_WWW_HOST
peer_id=site['peer_id']
- # open description
- description='
'
- # Name and URL
- description += '- '
- description += ' Site page '%locals()
- if site['url']:
- site_url=site['url']
- description += ' -- %(site_url)s '%locals()
- description += '
'
- # NODES
- if nb_nodes:
- description += '- '
- description += '%(nb_nodes)d node(s)'%locals()
- description += ' (in Comon)'%locals()
- description += '
'
- else:
- description += '- No node
'
- #SLICES
- if nb_slices:
- description += '- %(nb_slices)d slice(s)
'%locals()
- else:
- description += '- No slice
'
- # PEER
- if peer_id:
- peername = self.peer_name(site,peers)
- description += '- '
- description += 'At peer %(peername)s'%locals()
- description += '
'
- # close description
- description +='
'
-
- if not self.options.labels:
- name=""
- description=""
-
# STYLE
- if self.options.use_google_icons:
+ # the size for google icons
+ if not self.options.use_custom_icons:
if not peer_id:
# local sites
iconfile=default_local_builtin
@@ -148,6 +113,7 @@ class KmlMap:
iconfile=default_foreign_builtin
xyspec="16003232"
iconurl="root://icons/%(iconfile)s"%locals()
+ # the size for our own brew of icons
else:
if not peer_id:
iconfile=self.options.local_icon
@@ -158,6 +124,73 @@ class KmlMap:
iconspec="%(iconurl)s%(xyspec)s"%locals()
+ # open description
+ # can't seem to get classes to get through to the google maps API
+ # so have to use hard-wired settings
+ description = ""
+ description += ""
+
+ if not self.options.labels:
+ name=""
+ description=""
+
# set the camera 50km high
template="""
@@ -186,15 +219,16 @@ def main () :
parser.add_option("-n","--no-label",action="store_false",dest="labels",
default=True,
help="outputs only geographic positions, no labels")
- parser.add_option("-c","--custom",action="store_false",dest="use_google_icons",
- default=True,
- help="use locally customized icons rather than the google-provided defaults")
+ # default - for private depls. - is to use google-provided icons like palette-3
+ parser.add_option("-c","--custom",action="store_true",dest="use_custom_icons",
+ default=False,
+ help="use locally customized icons rather than the %s and %s defaults"%(default_local_builtin,default_foreign_builtin))
parser.add_option("-l","--local",action="store",dest="local_icon",
default=default_local_icon,
- help="set icon url to use for local sites marker -- default is %s"%default_local_icon)
+ help="set icon url to use for local sites marker -- requires -c -- default is %s"%default_local_icon)
parser.add_option("-f","--foreign",action="store",dest="foreign_icon",
default=default_foreign_icon,
- help="set icon url to use for foreign sites marker -- default is %s"%default_foreign_icon)
+ help="set icon url to use for foreign sites marker -- requires -c -- default is %s"%default_foreign_icon)
(options, args) = parser.parse_args()
if len(args) != 0: