Ryan Roth wrote:
> Ok ignore the last patch I sent.  I did not like the idea of having to
> use a cron job to schedule the updates.  Cron seems to cause a lot of
> people confusion.  I tweaked the helper to use the time.sleep function
> to wait between updates.  To enable the plug ad the following to the
> local_conf:
> 
> plugin.activate('helpers.weather')

If you make this a plug-in then it needs to be in the plugins directory
:) Will do this, but will need a new name.

> WEATHER_UPDATE_INTERVAL = 20
> 
> The interval number is in minutes.
> 
> 
> ------------------------------------------------------------------------
> 
> Index: src/helpers/weather.py
> ===================================================================
> --- src/helpers/weather.py    (revision 8792)
> +++ src/helpers/weather.py    (working copy)
> @@ -5,10 +5,15 @@
>  # $Id$
>  #
>  # Notes:
> -#   Requires cron to call "freevo weather" to get updates. The weather.py
> -#   plugin will grab new data if the cache is older than two hours, so
> -#   run your cron job more often than that.
> +#   To enable add the following to your local_conf.py
>  #
> +#   plugin.activate('helpers.weather')
> +#   WEATHER_UPDATE_INTERVAL = 10
> +#
> +#   The WEATHER_UPDATE_INTERVAL is set in whole minutes.
> +#   The weather.py plugin will grab new data if the cache is older than
> +#   two hours, so set the update interval to more often than that.
> +#
>  # Todo:
>  #
>  # -----------------------------------------------------------------------
> @@ -34,22 +39,32 @@
>  
>  import os
>  import stat
> -import urllib
> +import time
>  import config
>  
> -location = []
> -dataurl = []
> -WEATHER_DIR = os.path.join(config.SHARE_DIR, 'images', 'weather')
> -for local in config.PLUGIN_WEATHER_LOCATIONS:
> -    location = local[0]
> -    dataurl = "http://www.msnbc.com/m/chnk/d/weather_d_src.asp?acid=%s"; % 
> location
> -    mapurl = "http://w3.weather.com/weather/map/%s?from=LAPmaps"; % location
> -    cacheDir = '%s/weather_%s' % (config.FREEVO_CACHEDIR, location)
> -    cacheFile = '%s/data' % (cacheDir)
> -    mapFile = '%s/map' % (cacheDir)
> +if hasattr(config, 'PLUGIN_WEATHER_LOCATIONS'):
> +    while hasattr(config, 'WEATHER_UPDATE_INTERVAL'):
> +        location = []
> +        dataurl = []
> +        WEATHER_DIR = os.path.join(config.SHARE_DIR, 'images', 'weather')
> +        for local in config.PLUGIN_WEATHER_LOCATIONS:
> +            location = local[0]
> +            dataurl = 
> "http://www.msnbc.com/m/chnk/d/weather_d_src.asp?acid=%s"; % location
> +            mapurl = "http://w3.weather.com/weather/map/%s?from=LAPmaps"; % 
> location
> +            cacheDir = '%s/weather_%s' % (config.FREEVO_CACHEDIR, location)
> +            cacheFile = '%s/data' % (cacheDir)
> +            mapFile = '%s/map' % (cacheDir)
>  
> -    if not os.path.isdir(cacheDir):
> -        os.mkdir(cacheDir, 
> stat.S_IMODE(os.stat(config.FREEVO_CACHEDIR)[stat.ST_MODE]))
> +            if not os.path.isdir(cacheDir):
> +                os.mkdir(cacheDir, 
> stat.S_IMODE(os.stat(config.FREEVO_CACHEDIR)[stat.ST_MODE]))
>  
> -    os.system ('wget %s -O %s 2> /dev/null' % (dataurl, cacheFile))
> -    os.system ('wget %s -O %s 2> /dev/null' % (mapurl, mapFile))
> +            os.system ('wget %s -O %s 2> /dev/null' % (dataurl, cacheFile))
> +            os.system ('wget %s -O %s 2> /dev/null' % (mapurl, mapFile))
> +            if config.DEBUG == 1:
> +                print "Updated Weather Data\n"
> +            time.sleep(config.WEATHER_UPDATE_INTERVAL * 60)
> +    else:
> +        print "\nWEATHER_UPDATE_INTERVAL not defined in local_conf.py\n"
> +else:
> +
> +    print "\nPLUGIN_WEATHER_LOCATIONS not defined in local_conf.py\n"

You don't need \n with python print because you get a newline anyway.

Duncan


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freevo-devel mailing list
Freevo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freevo-devel

Reply via email to