예제 #1
0
 def SelectPlacesProvider(self):
     setWindowProperty(self.window, 'index', "")
     modeselect = []
     itemlist = None
     modeselect.append(__language__(32016))  # concerts
     modeselect.append(__language__(32017))  # festivals
     modeselect.append(__language__(32027))  # geopics
     modeselect.append(__language__(32028))  # eventful
     modeselect.append(__language__(32029))  # FourSquare
     modeselect.append(__language__(32030))  # MapQuest
     modeselect.append(__language__(32031))  # Google Places
     modeselect.append(__language__(32019))  # reset
     dialogSelection = xbmcgui.Dialog()
     provider_index = dialogSelection.select(__language__(32020), modeselect)
     if not provider_index < 0:
         if modeselect[provider_index] == __language__(32031):
             GP = GooglePlaces()
             category = GP.SelectCategory()
             if category is not None:
                 self.PinString, itemlist = GP.GetGooglePlacesList(self.lat, self.lon, self.radius * 1000, category)
         elif modeselect[provider_index] == __language__(32029):
             FS = FourSquare()
             section = FS.SelectSection()
             if section is not None:
                 itemlist, self.PinString = FS.GetPlacesListExplore(self.lat, self.lon, section)
         elif modeselect[provider_index] == __language__(32016):
             LFM = LastFM()
             category = LFM.SelectCategory()
             if category is not None:
                 results = LFM.GetNearEvents(self.lat, self.lon, self.radius, category)
                 itemlist, self.PinString = LFM.CreateVenueList(results)
         elif modeselect[provider_index] == __language__(32030):
             MQ = MapQuest()
             itemlist, self.PinString = MQ.GetItemList(self.lat, self.lon, self.zoom_level)
         elif modeselect[provider_index] == __language__(32017):
             LFM = LastFM()
             category = LFM.SelectCategory()
             if category is not None:
                 results = LFM.GetNearEvents(self.lat, self.lon, self.radius, category, True)
                 itemlist, self.PinString = LFM.CreateVenueList(results)
         elif modeselect[provider_index] == __language__(32027):
             folder_path = xbmcgui.Dialog().browse(0, __language__(32021), 'pictures')
             setWindowProperty(self.window, 'imagepath', folder_path)
             itemlist, self.PinString = GetImages(folder_path)
         elif modeselect[provider_index] == __language__(32028):
             EF = Eventful()
             category = EF.SelectCategory()
             if category is not None:
                 itemlist, self.PinString = EF.GetEventfulEventList(self.lat, self.lon, "", category, self.radius)
         elif modeselect[provider_index] == __language__(32019):
             self.PinString = ""
             itemlist = []
         if itemlist is not None:
             FillListControl(self.venuelist, itemlist)
         self.street_view = False
예제 #2
0
 def onInit(self, startGUI=True):
     log('onInit')
     itemlist = []
     self.init_vars()
     log("WindowID:" + str(xbmcgui.getCurrentWindowId()))
     self.window = xbmcgui.Window(xbmcgui.getCurrentWindowId())
     log("window = " + str(self.window))
     setWindowProperty(self.window, 'NavMode', '')
     setWindowProperty(self.window, 'streetview', '')
     if __addon__.getSetting("VenueLayout") == "1":
         setWindowProperty(self.window, 'ListLayout', '1')
     else:
         setWindowProperty(self.window, 'ListLayout', '0')
     for arg in sys.argv:
         param = arg.lower()
         log("param = " + param)
         if param.startswith('location='):
             self.location = param[9:]
         elif param.startswith('lat='):
             self.strlat = param[4:]
         elif param.startswith('lon='):
             self.strlon = param[4:]
         elif param.startswith('type='):
             self.type = param[5:]
         elif param.startswith('zoom='):
             self.zoom_level = param[5:]
         elif param.startswith('aspect='):
             self.aspect = param[7:]
         elif param.startswith('folder='):
             folder = param[7:]
             itemlist, self.PinString = self.GetImages(folder)
         elif param.startswith('artist='):
             artist = param[7:]
             LFM = LastFM()
             results = LFM.GetArtistEvents(artist)
             itemlist, self.PinString = LFM.CreateVenueList(results)
         elif param.startswith('list='):
             listtype = param[5:]
             self.zoom_level = 14
             if listtype == "nearfestivals":
                 LFM = LastFM()
                 results = LFM.GetNearEvents(self.lat, self.lon, self.radius, "", True)
                 itemlist, self.PinString = LFM.CreateVenueList(results)
             elif listtype == "nearconcerts":
                 LFM = LastFM()
                 results = LFM.GetNearEvents(self.lat, self.lon, self.radius)
                 itemlist, self.PinString = LFM.CreateVenueList(results)
         elif param.startswith('direction='):
             self.direction = param[10:]
         elif param.startswith('prefix='):
             self.prefix = param[7:]
             if not self.prefix.endswith('.') and self.prefix != "":
                 self.prefix = self.prefix + '.'
         # get lat / lon values
     if self.location == "geocode":
         self.lat, self.lon = ParseGeoTags(self.strlat, self.strlon)
     elif (self.location == "") and (self.strlat == ""):  # both empty
         self.lat, self.lon = GetLocationCoordinates()
         self.zoom_level = 2
     elif (not self.location == "") and (self.strlat == ""):  # latlon empty
         self.lat, self.lon = self.GetGeoCodes(False, self.location)
     else:
         self.lat = float(self.strlat)
         self.lon = float(self.strlon)
     self.GetGoogleMapURLs()
     if startGUI:
         self.venuelist = self.getControl(self.CONTROL_PLACES_LIST)
         self.GetGoogleMapURLs()
         FillListControl(self.venuelist, itemlist)
         self.window.setProperty("map_image", self.GoogleMapURL)
         self.window.setProperty("streetview_image", self.GoogleStreetViewURL)
         settings = xbmcaddon.Addon(id='script.maps.browser')
         if not settings.getSetting('firststart') == "true":
             settings.setSetting(id='firststart', value='true')
             dialog = xbmcgui.Dialog()
             dialog.ok(__language__(32001), __language__(32002), __language__(32003))
     log('onInit finished')