Update of /cvsroot/freevo/freevo/src/image/plugins
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26888

Modified Files:
        apod.py 
Log Message:
added some userproofing to apod

Index: apod.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/image/plugins/apod.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** apod.py     24 Feb 2004 16:29:19 -0000      1.3
--- apod.py     29 Jun 2004 01:39:20 -0000      1.4
***************
*** 9,12 ****
--- 9,15 ----
  # -----------------------------------------------------------------------
  # $Log$
+ # Revision 1.4  2004/06/29 01:39:20  mikeruelle
+ # added some userproofing to apod
+ #
  # Revision 1.3  2004/02/24 16:29:19  mikeruelle
  # make the plugin name and description show in the menu
***************
*** 51,54 ****
--- 54,58 ----
  from item import Item
  from image.imageitem import ImageItem
+ from gui.AlertBox import AlertBox
  
  class ApodMainMenuItem(Item):
***************
*** 62,67 ****
          self.title = _( 'APOD' )
          self.apoddir = apoddir
!       self.info = { 'name' : 'APOD', 'description' : 'Astronomy Picture of the day', 
'title' : 'APOD' }
!       self.type = 'image'
  
      def actions(self):
--- 66,71 ----
          self.title = _( 'APOD' )
          self.apoddir = apoddir
!         self.info = { 'name' : 'APOD', 'description' : 'Astronomy Picture of the 
day', 'title' : 'APOD' }
!         self.type = 'image'
  
      def actions(self):
***************
*** 70,75 ****
      def create_apod_menu(self, arg=None, menuw=None):
          apodmenuitems = []
!       apodmenuitems += [menu.MenuItem(_('Current Picture'), 
action=self.fetchCurrentPicture)]
!       apodmenuitems += [menu.MenuItem(_('Previous Pictures'), 
action=self.browsePictureDir)]
          apod_menu = menu.Menu( _( 'Apod Pictures' ), apodmenuitems)
          rc.app(None)
--- 74,79 ----
      def create_apod_menu(self, arg=None, menuw=None):
          apodmenuitems = []
!         apodmenuitems += [menu.MenuItem(_('Current Picture'), 
action=self.fetchCurrentPicture)]
!         apodmenuitems += [menu.MenuItem(_('Previous Pictures'), 
action=self.browsePictureDir)]
          apod_menu = menu.Menu( _( 'Apod Pictures' ), apodmenuitems)
          rc.app(None)
***************
*** 88,92 ****
                                               menuw.back_one_menu, 0)]
          apodpic_menu = menu.Menu(_('Apod Pictures'), apodpic_items,
!                                        reload_func=menuw.back_one_menu )
          rc.app(None)
          menuw.pushmenu(apodpic_menu)
--- 92,96 ----
                                               menuw.back_one_menu, 0)]
          apodpic_menu = menu.Menu(_('Apod Pictures'), apodpic_items,
!                                      reload_func=menuw.back_one_menu )
          rc.app(None)
          menuw.pushmenu(apodpic_menu)
***************
*** 95,106 ****
      def fetchCurrentPicture(self, arg=None, menuw=None):
          url = 'http://antwrp.gsfc.nasa.gov/apod/%s'
!         myfile=urllib.urlopen(url % 'index.html')
!         apodpage=myfile.read()
!         result = re.search("a href=\"(image.*)\"", apodpage)
!         apodpichref = result.group(1)
!       apodfile = os.path.join(self.apoddir,os.path.basename(apodpichref))
!         urllib.urlretrieve(url % apodpichref, apodfile)
!         imgitem = ImageItem(apodfile, self)
!       imgitem.view(menuw=menuw)
  
  class PluginInterface(plugin.MainMenuPlugin):
--- 99,127 ----
      def fetchCurrentPicture(self, arg=None, menuw=None):
          url = 'http://antwrp.gsfc.nasa.gov/apod/%s'
!         apodpichref = ''
!         try:
!             myfile=urllib.urlopen(url % 'index.html')
!             apodpage=myfile.read()
!             result = re.search("a href=\"(image.*)\"", apodpage)
!             apodpichref = result.group(1)
!         except:
!             #unreachable or url error
!             realurl = url % 'index.html'
!             print 'APOD ERROR: could not open %s' % realurl
!             AlertBox(text=_('Unable to open URL')).show()
!             return
! 
!         apodfile = os.path.join(self.apoddir,os.path.basename(apodpichref))
! 
!         try:
!             urllib.urlretrieve(url % apodpichref, apodfile)
!             imgitem = ImageItem(apodfile, self)
!             imgitem.view(menuw=menuw)
!         except:
!             #unreachable or url error
!             realurl = url % apodpichref
!             print 'APOD ERROR: could not open %s' % realurl
!             AlertBox(text=_('Unable to open URL')).show()
!             return
  
  class PluginInterface(plugin.MainMenuPlugin):
***************
*** 117,126 ****
              self.reason = _('Need a directory to store APOD pictures.')
              return
!       
!       if not os.path.isdir(apoddir):
!           self.reason = _('directory %s does not exist.') % apoddir
              return
  
!       self.apoddir = apoddir
  
          # init the plugin
--- 138,151 ----
              self.reason = _('Need a directory to store APOD pictures.')
              return
!     
!         if not os.path.isdir(apoddir):
!             self.reason = _('directory %s does not exist.') % apoddir
              return
  
!         if not os.access(apoddir, os.R_OK|os.W_OK|os.X_OK):
!             self.reason = _('directory %s must be able to be read, written to and 
executed by the user running freevo.') % apoddir
!             return
! 
!         self.apoddir = apoddir
  
          # init the plugin
***************
*** 128,133 ****
  
      def items(self, parent):
!             return [ ApodMainMenuItem(parent, self.apoddir) ]
!                                                                                      
     
  
  
--- 153,158 ----
  
      def items(self, parent):
!         return [ ApodMainMenuItem(parent, self.apoddir) ]
!                                                                                      
   
  
  



-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
Freevo-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to