Author: duncan
Date: Mon Feb 18 06:40:06 2008
New Revision: 10376

Log:
Converted all web modules to use kaa.rpc calls
Added required functions to record_client


Modified:
   branches/rel-1/freevo/src/tv/record_client.py
   branches/rel-1/freevo/src/www/htdocs/config.rpy
   branches/rel-1/freevo/src/www/htdocs/configedit.rpy
   branches/rel-1/freevo/src/www/htdocs/edit_favorite.rpy
   branches/rel-1/freevo/src/www/htdocs/encoding_web.rpy
   branches/rel-1/freevo/src/www/htdocs/favorites.rpy
   branches/rel-1/freevo/src/www/htdocs/fileinfo.rpy
   branches/rel-1/freevo/src/www/htdocs/genre.rpy
   branches/rel-1/freevo/src/www/htdocs/guide.rpy
   branches/rel-1/freevo/src/www/htdocs/guidechannel.rpy
   branches/rel-1/freevo/src/www/htdocs/iceslistchanger.rpy
   branches/rel-1/freevo/src/www/htdocs/index.rpy
   branches/rel-1/freevo/src/www/htdocs/library.rpy
   branches/rel-1/freevo/src/www/htdocs/manualrecord.rpy
   branches/rel-1/freevo/src/www/htdocs/pluginconfig.rpy
   branches/rel-1/freevo/src/www/htdocs/proginfo.rpy
   branches/rel-1/freevo/src/www/htdocs/record.rpy
   branches/rel-1/freevo/src/www/htdocs/search.rpy
   branches/rel-1/freevo/src/www/htdocs/viewlogfile.rpy
   branches/rel-1/freevo/src/www/htdocs/vlcwin.rpy
   branches/rel-1/freevo/src/www/htdocs/wap_login.rpy
   branches/rel-1/freevo/src/www/htdocs/wap_rec.rpy
   branches/rel-1/freevo/src/www/htdocs/webremote.rpy
   branches/rel-1/freevo/src/www/htdocs/youtube.rpy

Modified: branches/rel-1/freevo/src/tv/record_client.py
==============================================================================
--- branches/rel-1/freevo/src/tv/record_client.py       (original)
+++ branches/rel-1/freevo/src/tv/record_client.py       Mon Feb 18 06:40:06 2008
@@ -158,6 +158,18 @@
         print self.timeit(now)+': getNextProgramStart.nextstart=%r' % nextstart
 
 
+    def pingNow(self):
+        """ Ping the recordserver to see if it is running """
+        _debug_('pingNow', 2)
+        inprogress = self.recordserver_rpc('ping')
+        if inprogress is None:
+            return None
+        inprogress.wait()
+        result = inprogress.get_result()
+        _debug_('pingNow.result=%r' % (result,), 2)
+        return result
+
+
     def findNextProgramNow(self, isrecording=False):
         """ Find the next programme to record """
         _debug_('findNextProgramNow(isrecording=%r)' % (isrecording,), 2)
@@ -194,6 +206,18 @@
         return result
 
 
+    def findProgNow(self, chan=None, start=None):
+        """ See if a programme is a favourite """
+        _debug_('findProgNow(chan=%r, start=%r)' % (chan, start), 1)
+        inprogress = self.recordserver_rpc('findProg', chan, start)
+        if inprogress is None:
+            return None
+        inprogress.wait()
+        result = inprogress.get_result()
+        _debug_('findProgNow.result=%r' % (result,), 1)
+        return result
+
+
     def findMatchesNow(self, title):
         """ See if a programme is a favourite """
         _debug_('findMatchesNow(title=%r)' % (title), 1)
@@ -254,6 +278,18 @@
         return result
 
 
+    def getFavoriteNow(self, name):
+        """ See if a programme is a favourite """
+        _debug_('getFavoriteNow(name=%r)' % (name), 1)
+        inprogress = self.recordserver_rpc('getFavorite', name)
+        if inprogress is None:
+            return None
+        inprogress.wait()
+        result = inprogress.get_result()
+        _debug_('getFavoriteNow.result=%r' % (result,), 1)
+        return result
+
+
     def removeFavoriteNow(self, name):
         """ See if a programme is a favourite """
         _debug_('removeFavoriteNow(name=%r)' % (name), 1)
@@ -280,6 +316,18 @@
         return result
 
 
+    def adjustPriorityNow(self, name, mod=0):
+        """ See if a programme is a favourite """
+        _debug_('adjustPriorityNow(name=%r, mod=%r)' % (name, mod), 1)
+        inprogress = self.recordserver_rpc('adjustPriority', name, mod)
+        if inprogress is None:
+            return None
+        inprogress.wait()
+        result = inprogress.get_result()
+        _debug_('adjustPriorityNow.result=%r' % (result,), 1)
+        return result
+
+
     def getFavoriteObjectNow(self, prog):
         """ See if a programme is a favourite """
         _debug_('getFavoriteObjectNow(prog=%r)' % (prog), 1)
@@ -366,6 +414,12 @@
         return self.server_rpc('getScheduledRecordings', callback)
 
 
+    def scheduleRecording(self, callback, prog):
+        """ schedule a programme for recording, using a callback function """
+        _debug_('scheduleRecording(callback=%r, prog=%r)' % (callback, prog), 
2)
+        return self.server_rpc('scheduleRecording', callback, prog)
+
+
     def updateFavoritesSchedule(self, callback):
         """ Update the favourites using a callback function """
         print 'updateFavoritesSchedule(callback=%r)' % (callback)
@@ -695,6 +749,10 @@
     # kaa.rpc callback tests
     
#--------------------------------------------------------------------------------
 
+    if function == "pingnow":
+        result = rc.pingNow()
+        print 'result: %r\n"%s"' % (result, result)
+
     if function == "findnextprogramnow":
         result = rc.findNextProgramNow(True)
         print 'recording:%r\n"%s"' % (result, result)
@@ -721,6 +779,10 @@
     if function == "updatefavoritesschedule":
         rc.updateFavoritesSchedule(handler)
 
+    if function == "findprognow":
+        result = rc.findProgNow(args)
+        print '%s: result: %r' % (rc.timeit(start), result)
+
     if function == "findmatchesnow":
         result = rc.findMatchesNow(args)
         print '%s: result: %r' % (rc.timeit(start), result)
@@ -729,10 +791,18 @@
         result = rc.getFavoritesNow()
         print '%s: result: %r' % (rc.timeit(start), result)
 
+    if function == "getfavoritenow":
+        result = rc.getFavoriteNow(args)
+        print '%s: result: %r' % (rc.timeit(start), result)
+
     if function == "removefavoritenow":
         result = rc.removeFavoriteNow()
         print '%s: result: %r' % (rc.timeit(start), result)
 
+    if function == "adjustprioritynow":
+        result = rc.adjustPriorityNow(args)
+        print '%s: result: %r' % (rc.timeit(start), result)
+
 
     
#--------------------------------------------------------------------------------
     # Twisted xmlrpc tests

Modified: branches/rel-1/freevo/src/www/htdocs/config.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/config.rpy     (original)
+++ branches/rel-1/freevo/src/www/htdocs/config.rpy     Mon Feb 18 06:40:06 2008
@@ -1,6 +1,14 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
+# web interface to edit local_config.py
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo:
+#
+# -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.
 # Please see the file freevo/Docs/CREDITS for a complete list of authors.

Modified: branches/rel-1/freevo/src/www/htdocs/configedit.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/configedit.rpy (original)
+++ branches/rel-1/freevo/src/www/htdocs/configedit.rpy Mon Feb 18 06:40:06 2008
@@ -1,6 +1,14 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
+# Web interface to display local_config.py
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo:
+#
+# -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.
 # Please see the file freevo/Docs/CREDITS for a complete list of authors.

Modified: branches/rel-1/freevo/src/www/htdocs/edit_favorite.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/edit_favorite.rpy      (original)
+++ branches/rel-1/freevo/src/www/htdocs/edit_favorite.rpy      Mon Feb 18 
06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# edit_favorites.rpy - Web interface to edit your favorites.
+# Web interface to edit your favorites.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -31,10 +31,10 @@
 
 import sys, time, string
 
+import config
 from tv.record_types import Favorite
 import tv.epg_xmltv
-import tv.record_client as ri
-import config
+from tv.record_client import RecordClient
 
 from www.web_types import HTMLResource, FreevoResource
 
@@ -43,17 +43,18 @@
 
 
 class EditFavoriteResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
 
     def _render(self, request):
         fv = HTMLResource()
         form = request.args
 
-        (server_available, message) = ri.connectionTest()
+        server_available = self.recordclient.pingNow()
         if not server_available:
             fv.printHeader(_('Edit Favorite'), 'styles/main.css')
-            fv.printMessagesFinish(
-                [ '<b>'+_('ERROR')+'</b>: '+_('Recording server is 
unavailable.') ]
-                )
+            fv.printMessagesFinish([ '<b>'+_('ERROR')+'</b>: '+_('Recording 
server is unavailable.') ])
             return String( fv.res )
 
         chan = Unicode(fv.formValue(form, 'chan'))
@@ -67,11 +68,11 @@
         if isinstance( name, str ):
             name = Unicode( name, 'latin-1' )
 
-        (result, favs) = ri.getFavorites()
+        (result, favs) = self.recordclient.getFavoritesNow()
         num_favorites = len(favs)
 
         if action == 'add' and chan and start:
-            (result, prog) = ri.findProg(chan, start)
+            (result, prog) = self.recordclient.findProgNow(chan, start)
 
             if not result:
                 fv.printHeader('Edit Favorite', 'styles/main.css')
@@ -93,7 +94,7 @@
 
             fav = Favorite(prog.title, prog, TRUE, TRUE, TRUE, priority, FALSE)
         elif action == 'edit' and name:
-            (result, fav) = ri.getFavorite(name)
+            (result, fav) = self.recordclient.getFavoriteNow(name)
         else:
             pass
 
@@ -288,12 +289,12 @@
 
 
         if config.TV_RECORD_DUPLICATE_DETECTION:
-            (tempStatus, tempFav) = ri.getFavorite(fav.name)
+            (tempStatus, tempFav) = self.recordclient.getFavoriteNow(fav.name)
             if hasattr(tempFav, 'allowDuplicates'):
                 fv.res += 
'document.editfavorite.allowDuplicates.options[%s].selected=true\n' % 
abs(int(tempFav.allowDuplicates)-1)
 
         if config.TV_RECORD_ONLY_NEW_DETECTION:
-            (tempStatus, tempFav) = ri.getFavorite(fav.name)
+            (tempStatus, tempFav) = self.recordclient.getFavoriteNow(fav.name)
             if hasattr(tempFav, 'onlyNew'):
                 fv.res += 
'document.editfavorite.onlyNew.options[%s].selected=true\n' % 
int(tempFav.onlyNew)
 

Modified: branches/rel-1/freevo/src/www/htdocs/encoding_web.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/encoding_web.rpy       (original)
+++ branches/rel-1/freevo/src/www/htdocs/encoding_web.rpy       Mon Feb 18 
06:40:06 2008
@@ -1,4 +1,13 @@
-#!/usr/bin/python
+# -*- coding: iso-8859-1 -*-
+# 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
+# -----------------------------------------------------------------------
+# Web interface to encoding server
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo:
+#
 # -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.

Modified: branches/rel-1/freevo/src/www/htdocs/favorites.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/favorites.rpy  (original)
+++ branches/rel-1/freevo/src/www/htdocs/favorites.rpy  Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# favorites.rpy - Web interface to display your favorite programs.
+# Web interface to display your favorite programs.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -33,7 +33,7 @@
 import urllib
 import config
 
-import tv.record_client as ri
+from tv.record_client import RecordClient
 import util.tv_util as tv_util
 
 from www.web_types import HTMLResource, FreevoResource
@@ -43,18 +43,18 @@
 
 
 class FavoritesResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
 
     def _render(self, request):
         fv = HTMLResource()
         form = request.args
 
-        (server_available, message) = ri.connectionTest()
+        server_available = self.recordclient.pingNow()
         if not server_available:
             fv.printHeader(_('Favorites'), 'styles/main.css', 
selected=_('Favorites'))
-            fv.printMessagesFinish(
-                [ '<b>'+_('ERROR')+'</b>: '+_('Recording server is 
unavailable.') ]
-                )
-
+            fv.printMessagesFinish(['<b>'+_('ERROR')+'</b>: '+_('Recording 
server is unavailable.')])
             return String( fv.res )
 
         action = fv.formValue(form, 'action')
@@ -74,18 +74,18 @@
             onlyNew = fv.formValue(form, 'onlyNew')
 
         if action == 'remove':
-            ri.removeFavorite(name)
+            self.recordclient.removeFavoriteNow(name)
         elif action == 'add':
-            ri.addEditedFavorite(name, title, chan, dow, mod, priority, 
allowDuplicates, onlyNew)
+            self.recordclient.addEditedFavoriteNow(name, title, chan, dow, 
mod, priority, allowDuplicates, onlyNew)
         elif action == 'edit':
-            ri.removeFavorite(oldname)
-            ri.addEditedFavorite(name, title, chan, dow, mod, priority, 
allowDuplicates, onlyNew)
+            self.recordclient.removeFavoriteNow(oldname)
+            self.recordclient.addEditedFavoriteNow(name, title, chan, dow, 
mod, priority, allowDuplicates, onlyNew)
         elif action == 'bump':
-            ri.adjustPriority(name, priority)
+            self.recordclient.adjustPriorityNow(name, priority)
         else:
             pass
 
-        (status, favorites) = ri.getFavorites()
+        (status, favorites) = self.recordclient.getFavoritesNow()
 
 
         days = {
@@ -149,7 +149,7 @@
             fv.tableCell(cell, 'class="'+status+'" colspan="1"')
 
             if config.TV_RECORD_DUPLICATE_DETECTION:
-                (tempStatus, tempFav) = ri.getFavorite(fav.name)
+                (tempStatus, tempFav) = 
self.recordclient.getFavoriteNow(fav.name)
                 if hasattr(tempFav,'allowDuplicates') and 
int(tempFav.allowDuplicates) == 1:
                     cell = 'ALLOW'
                 elif hasattr(tempFav,'allowDuplicates') and 
int(tempFav.allowDuplicates) == 0:
@@ -159,7 +159,7 @@
                 fv.tableCell(cell, 'class="'+status+'" colspan="1"')
 
             if config.TV_RECORD_ONLY_NEW_DETECTION:
-                (tempStatus, tempFav) = ri.getFavorite(fav.name)
+                (tempStatus, tempFav) = 
self.recordclient.getFavoriteNow(fav.name)
                 if hasattr(tempFav,'onlyNew') and int(tempFav.onlyNew) == 1:
                     cell = 'ONLY NEW'
                 elif hasattr(tempFav,'onlyNew') and int(tempFav.onlyNew) == 0:

Modified: branches/rel-1/freevo/src/www/htdocs/fileinfo.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/fileinfo.rpy   (original)
+++ branches/rel-1/freevo/src/www/htdocs/fileinfo.rpy   Mon Feb 18 06:40:06 2008
@@ -1,7 +1,13 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# proginfo.rpy - Dynamically update program info popup box.
+# Dynamically update program info popup box.
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo:
+#
 # -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.

Modified: branches/rel-1/freevo/src/www/htdocs/genre.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/genre.rpy      (original)
+++ branches/rel-1/freevo/src/www/htdocs/genre.rpy      Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# genre.rpy - Show what is on for today for a particular category
+# Show what is on for today for a particular category
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -31,15 +31,18 @@
 
 import sys, time, string
 
-import tv.record_client as ri
+import util, config
+from tv.record_client import RecordClient
 from www.web_types import HTMLResource, FreevoResource
 import tv.epg_xmltv
-import util, config
 
 TRUE = 1
 FALSE = 0
 
 class GenreResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
 
 # need sub to get list of possible categories
 
@@ -80,14 +83,14 @@
         category = fv.formValue(form, 'category')
 
         guide = tv.epg_xmltv.get_guide()
-        (got_schedule, schedule) = ri.getScheduledRecordings()
-        if got_schedule:
+        schedule = self.recordclient.getScheduledRecordingsNow()
+        if schedule is not None:
             schedule = schedule.getProgramList()
 
         fv.printHeader(_('TV Genre for %s') % time.strftime('%a %b %d', 
time.localtime(mfrguidestart)), \
             config.WWW_STYLESHEET, config.WWW_JAVASCRIPT)
 
-        if not got_schedule:
+        if schedule is None:
             fv.printMessages(['<b>'+_('ERROR')+'</b>: '+_('Recording server is 
unavailable.')])
 
         allcategories = []
@@ -155,7 +158,7 @@
                     # use counter to see if we have data
                     gotdata += 1
                     if got_schedule:
-                        (result, message) = ri.isProgScheduled(prog, schedule)
+                        (result, message) = 
self.recordclient.isProgScheduledNow(prog, schedule)
                         if result:
                             status = 'scheduled'
                             really_now = time.time()

Modified: branches/rel-1/freevo/src/www/htdocs/guide.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/guide.rpy      (original)
+++ branches/rel-1/freevo/src/www/htdocs/guide.rpy      Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# guide.rpy - Web interface to the Freevo EPG.
+# Web interface to the Freevo EPG.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -35,11 +35,11 @@
 from www.web_types import HTMLResource, FreevoResource
 from twisted.web.woven import page
 
+import config
 import util.tv_util as tv_util
 import util
-import config
 import tv.epg_xmltv
-import tv.record_client as ri
+from tv.record_client import RecordClient
 from twisted.web import static
 
 DEBUG = 0
@@ -48,6 +48,9 @@
 FALSE = 0
 
 class GuideResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
 
     def makecategorybox(self, chanlist):
         allcategories = []
@@ -138,31 +141,29 @@
             mfrprevguide = 0
 
         guide = tv.epg_xmltv.get_guide()
-        (got_schedule, schedule) = ri.getScheduledRecordings()
-        if got_schedule:
+        schedule = self.recordclient.getScheduledRecordingsNow()
+        if schedule:
             schedule = schedule.getProgramList()
 
         fv.printHeader(_('TV Guide'), config.WWW_STYLESHEET, 
config.WWW_JAVASCRIPT, selected=_('TV Guide'))
         fv.res += '<div id="content">\n';
         fv.res += '&nbsp;<br/>\n'
-        if not got_schedule:
-            fv.printMessages(
-                [ '<b>'+_('ERROR')+'</b>: '+_('Recording server is 
unavailable.') ]
-                )
+        if schedule is None:
+            fv.printMessages([ '<b>'+_('ERROR')+'</b>: '+_('Recording server 
is unavailable.') ])
 
         desc = ''
 
         fv.tableOpen()
         fv.tableRowOpen('class="chanrow"')
-        fv.tableCell('<form>'+_('Time')+':&nbsp;' + 
self.maketimejumpboxday(now) + self.maketimejumpboxoffset(now) + '<input 
type=submit value="'+_('View')+'"></form>', 'class="utilhead"')
+        fv.tableCell('<form>'+_('Time')+':&nbsp;' + 
self.maketimejumpboxday(now) + self.maketimejumpboxoffset(now) +
+            '<input type=submit value="'+_('View')+'"></form>', 
'class="utilhead"')
         categorybox =  self.makecategorybox(guide.chan_list)
         if categorybox:
             fv.tableCell('<form 
action="genre.rpy">'+_('Show')+'&nbsp;'+_('Category')+':&nbsp;'+categorybox+'<input
 type=submit value="'+_('Change')+'"></form>', 'class="utilhead"')
         fv.tableRowClose()
         fv.tableClose()
 
-        fv.tableOpen('id="guide" cols=\"%d\"' % \
-                     ( n_cols*cpb + 1 ) )
+        fv.tableOpen('id="guide" cols=\"%d\"' % (n_cols * cpb + 1))
         showheader = 0
         for chan in guide.chan_list:
             #put guidehead every X rows
@@ -199,7 +200,8 @@
             c_left = n_cols * cpb
 
             if not chan.programs:
-                rowdata.append('<td class="programnodata" colspan="%s">&laquo; 
' % (n_cols*cpb) + _('This channel has no data loaded') + ' &raquo;' )
+                rowdata.append('<td class="programnodata" colspan="%s">&laquo; 
' % (n_cols*cpb) + \
+                    _('This channel has no data loaded') + ' &raquo;')
 
             for prog in chan.programs:
                 if prog.stop > mfrguidestart and \
@@ -208,8 +210,8 @@
 
                     status = 'program'
 
-                    if got_schedule:
-                        (result, message) = ri.isProgScheduled(prog, schedule)
+                    if schedule:
+                        (result, message) = 
self.recordclient.isProgScheduledNow(prog, schedule)
                         if result:
                             status = 'scheduled'
                             really_now = time.time()
@@ -224,7 +226,7 @@
                             # show started earlier than the guide start,
                             # insert left arrows
                             cell += '&laquo; '
-                        showtime_left = int(prog.stop - now + ( now % INTERVAL 
) )
+                        showtime_left = int(prog.stop - now + (now % INTERVAL))
                         intervals = showtime_left / PRECISION
                         colspan = intervals
                         # prog.title = string.replace(prog.title, "&", "SUB")
@@ -299,11 +301,11 @@
             u"         </tr>\n"\
             u"      </tfoot>\n"\
             u"   </table>\n"\
-            u"</div>\n" )
+            u"</div>\n")
         fv.res += "<iframe id='hidden' style='visibility: hidden; width: 1px; 
height: 1px'></iframe>\n"
         fv.printFooter()
 
-        return String( fv.res )
+        return String(fv.res)
 
 
 resource = GuideResource()

Modified: branches/rel-1/freevo/src/www/htdocs/guidechannel.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/guidechannel.rpy       (original)
+++ branches/rel-1/freevo/src/www/htdocs/guidechannel.rpy       Mon Feb 18 
06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# guide.rpy - Web interface to the Freevo EPG.
+# Web interface to the Freevo EPG.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -40,7 +40,7 @@
 import util
 import config
 import tv.epg_xmltv
-import tv.record_client as ri
+from tv.record_client import RecordClient
 from twisted.web import static
 from www.configlib import *
 
@@ -50,6 +50,9 @@
 FALSE = 0
 
 class GuideResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
 
     def GetChannelList(self, guide):
         clist = []
@@ -83,7 +86,7 @@
             program_tip = 'Scheduled Program : %s' %  
Unicode(sch_prog.sub_title)
 
         if self.got_schedule:
-            (result, message) = ri.isProgScheduled(prog, self.schedule)
+            (result, message) = self.recordclient.isProgScheduledNow(prog, 
self.schedule)
             if result:
                 status = 'programlinerecord'
                 if self.currenttime > prog.start  and self.currenttime < 
prog.stop:
@@ -188,7 +191,7 @@
         form = request.args
 
         self.guide = tv.epg_xmltv.get_guide()
-        (self.got_schedule, self.schedule) = ri.getScheduledRecordings()
+        (self.got_schedule, self.schedule) = 
self.recordclient.getScheduledRecordingsNow()
         self.currenttime = time.time()
 
         if self.got_schedule:

Modified: branches/rel-1/freevo/src/www/htdocs/iceslistchanger.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/iceslistchanger.rpy    (original)
+++ branches/rel-1/freevo/src/www/htdocs/iceslistchanger.rpy    Mon Feb 18 
06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# iceslistchanger.rpy - change ices playlist via web interface.
+# Change ices playlist via web interface.
 # -----------------------------------------------------------------------
 # $Id$
 #

Modified: branches/rel-1/freevo/src/www/htdocs/index.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/index.rpy      (original)
+++ branches/rel-1/freevo/src/www/htdocs/index.rpy      Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# index.rpy - The main index to the web interface.
+# The main index to the web interface.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -31,7 +31,7 @@
 
 import sys, time
 
-import tv.record_client
+from tv.record_client import RecordClient
 from www.web_types import HTMLResource, FreevoResource
 import util, config
 import util.tv_util as tv_util
@@ -47,11 +47,12 @@
         fv.printHeader(_('Welcome'), 'styles/main.css',selected=_('Home'))
         fv.res += '<div id="contentmain">\n'
 
-        fv.res += '<br/><br/><h2>'+( _('Freevo Web Status as of %s') % \
-                time.strftime('%B %d ' + config.TV_TIME_FORMAT, 
time.localtime()) ) +'</h2>'
+        fv.res += '<br/><br/><h2>'+_('Freevo Web Status as of %s') % \
+                (time.strftime('%B %d '+config.TV_TIME_FORMAT, 
time.localtime())) +'</h2>'
 
-        (server_available, schedule) = tv.record_client.connectionTest()
-        if not server_available:
+        recordings = RecordClient().getScheduledRecordingsNow()
+
+        if recordings is None:
             fv.res += '<p class="alert"><b>'+_('Notice')+'</b>: '+_('The 
recording server is down.')+'</p>\n'
         else:
             fv.res += '<p class="normal">'+_('The recording server is up and 
running.')+'</p>\n'
@@ -60,12 +61,12 @@
         if listexpire == 1:
             fv.res += '<p class="alert"><b>'+_('Notice')+'</b>: '+_('Your 
listings expire in 1 hour.')+'</p>\n'
         elif listexpire < 12:
-            fv.res += '<p class="alert"><b>'+_('Notice')+'</b>: '+( _('Your 
listings expire in %s hours.') % listexpire ) +'</p>\n'
+            fv.res += '<p class="alert"><b>'+_('Notice')+'</b>: '+_('Your 
listings expire in %s hours.') % \
+                listexpire+'</p>\n'
         else:
             fv.res += '<p class="normal">'+_('Your listings are up to 
date.')+'</p>\n'
 
-        (got_schedule, recordings) = tv.record_client.getScheduledRecordings()
-        if got_schedule:
+        if recordings:
             progl = recordings.getProgramList().values()
             f = lambda a, b: cmp(a.start, b.start)
             progl.sort(f)
@@ -80,13 +81,14 @@
             if num_sched_progs == 1:
                 fv.res += '<p class="normal">'+_('One program scheduled to 
record.')+'</p>\n'
             elif num_sched_progs > 0:
-                fv.res += '<p class="normal">'+(_('%i programs scheduled to 
record.') % num_sched_progs )+'</p>\n'
+                fv.res += '<p class="normal">'+_('%i programs scheduled to 
record.') % num_sched_progs+'</p>\n'
             else:
                 fv.res += '<p class="normal">'+_('No programs scheduled to 
record.')+'</p>\n'
         else:
             fv.res += '<p class="normal">'+_('No programs scheduled to 
record.')+'</p>\n'
 
-        diskfree = _('%i of %i Mb free in %s')  % ( (( 
util.freespace(config.TV_RECORD_DIR) / 1024) / 1024), 
((util.totalspace(config.TV_RECORD_DIR) /1024) /1024), config.TV_RECORD_DIR)
+        diskfree = _('%i of %i Mb free in %s') % 
(((util.freespace(config.TV_RECORD_DIR) / 1024) / 1024), \
+            ((util.totalspace(config.TV_RECORD_DIR) /1024) /1024), 
config.TV_RECORD_DIR)
         fv.res += '<p class="normal">' + diskfree + '</p>\n'
         fv.res += '</div>'
         fv.printWebRemote()
@@ -94,7 +96,7 @@
         #fv.printLinks()
         fv.printFooter()
 
-        return String( fv.res )
+        return String(fv.res)
 
 
 resource = IndexResource()

Modified: branches/rel-1/freevo/src/www/htdocs/library.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/library.rpy    (original)
+++ branches/rel-1/freevo/src/www/htdocs/library.rpy    Mon Feb 18 06:40:06 2008
@@ -1,13 +1,14 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# library.rpy - a script to display and modify your video library
+# Web interface to display and modify your video library
 # -----------------------------------------------------------------------
 # $Id$
 #
 # Notes:
 # Todo: -allow for an imdb popup
 #       -stream tv, video and music somehow
+#
 # -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.
@@ -37,7 +38,7 @@
 import util.tv_util as tv_util
 import util.fxdparser as fxdparser
 import util.mediainfo
-import tv.record_client as ri
+from tv.record_client import RecordClient
 import kaa.imlib2 as imlib2
 import kaa.metadata as metadata
 
@@ -58,6 +59,8 @@
         self.allowed_dirs.extend(config.AUDIO_ITEMS)
         self.allowed_dirs.extend( [ ('Recorded TV', config.TV_RECORD_DIR) ])
         self.allowed_dirs.extend(config.IMAGE_ITEMS)
+        self.recordclient = RecordClient()
+
 
     def is_access_allowed(self, dir_str):
         print 'is_access_allowed(self, dir_str=%r)' % (dir_str)
@@ -330,9 +333,9 @@
             favre = ''
             favs = []
             if action_mediatype == 'movies' or action_mediatype == 'rectv':
-                (got_schedule, recordings) = ri.getScheduledRecordings()
-                if got_schedule:
-                    progs = recordings.getProgramList()
+                schedule = self.recordclient.getScheduledRecordingsNow()
+                if schedule:
+                    progs = schedule.getProgramList()
                     f = lambda a, b: cmp(a.start, b.start)
                     progl = progs.values()
                     progl.sort(f)
@@ -350,7 +353,7 @@
 
                 #generate our favorites regular expression
                 favre = ''
-                (result, favorites) = ri.getFavorites()
+                (result, favorites) = self.recordclient.getFavoritesNow()
                 if result:
                     favs = favorites.values()
                 else:

Modified: branches/rel-1/freevo/src/www/htdocs/manualrecord.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/manualrecord.rpy       (original)
+++ branches/rel-1/freevo/src/www/htdocs/manualrecord.rpy       Mon Feb 18 
06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# manualrecord.rpy - Web interface to manually schedule recordings.
+# Web interface to manually schedule recordings.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -31,7 +31,7 @@
 import sys, time
 
 import tv.epg_xmltv, tv.epg_types
-import tv.record_client as ri
+from tv.record_client import RecordClient
 
 # Use the alternate strptime module which seems to handle time zones
 #
@@ -56,18 +56,24 @@
 
 
 class ManualRecordResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
+
+    def rc_handler(self, result):
+        """ Handler for record client callbacks """
+        print 'result=%r' % (result,)
+
 
     def _render(self, request):
         fv = HTMLResource()
         form = request.args
 
-        (server_available, message) = ri.connectionTest()
+        server_available = self.recordclient.pingNow()
         if not server_available:
             fv.printHeader(_('Manual Record'), 
'styles/main.css',selected=_("Manual Record"))
-            fv.printMessagesFinish(
-                [ '<b>'+_('ERROR')+'</b>: '+_('Recording server is 
unavailable.') ]
-                )
-            return String( fv.res )
+            fv.printMessagesFinish(['<b>'+_('ERROR')+'</b>: '+_('Recording 
server is unavailable.')])
+            return String(fv.res)
 
         curtime_epoch = time.time()
         curtime = time.localtime(curtime_epoch)
@@ -97,14 +103,17 @@
                 if int(startmonth) < currentmonth:
                     startyear = str(int(startyear) + 1)
                 # create utc second start time
-                starttime = time.mktime(strptime.strptime(str(startmonth)+" 
"+str(startday)+" "+str(startyear)+" 
"+str(starthour)+":"+str(startminute)+":00",'%m %d %Y %H:%M:%S'))
+                starttime = time.mktime(strptime.strptime(str(startmonth)+' 
'+str(startday)+' '+str(startyear)+\
+                    ' '+str(starthour)+':'+str(startminute)+':00','%m %d %Y 
%H:%M:%S'))
                 # create utc stop time
-                stoptime = time.mktime(strptime.strptime(str(stopmonth)+" 
"+str(stopday)+" "+str(stopyear)+" 
"+str(stophour)+":"+str(stopminute)+":00",'%m %d %Y %H:%M:%S'))
+                stoptime = time.mktime(strptime.strptime(str(stopmonth)+' 
'+str(stopday)+' '+str(stopyear)+\
+                    ' '+str(stophour)+':'+str(stopminute)+':00','%m %d %Y 
%H:%M:%S'))
                 # so we don't record for more then maxdays (maxdays day * 
24hr/day * 60 min/hr * 60 sec/min)
                 if abs(stoptime - starttime) < (MAXDAYS * 86400):
                     if starttime < stoptime:
                         if stoptime < curtime_epoch + MINPICKUP:
-                            errormsg = "Sorry, the stop time does not give 
enough time for cron to pickup the change.  Please set it to record for a few 
minutes longer."
+                            errormsg = 'Sorry, the stop time does not give 
enough time for cron to pickup the change.'\
+                                +' Please set it to record for a few minutes 
longer.'
                         else:
                             # assign attributes to object
                             prog = tv.epg_types.TvProgram()
@@ -118,7 +127,7 @@
                             prog.start = starttime
                             prog.stop = stoptime
                             # use ri to add to schedule
-                            ri.scheduleRecording(prog)
+                            
self.recordclient.scheduleRecording(self.rc_handler, prog)
                             return '<html><head><meta HTTP-EQUIV="REFRESH" 
CONTENT="0;URL=record.rpy"></head></html>'
                     else:
                         errormsg = _("start time is not before stop time.")
@@ -140,7 +149,9 @@
             #build some reusable date inputs
             #month
             monthselect = '<select name="%s" %s >'
-            months = [ _('Jan'), _('Feb'), _('Mar'), _('Apr'), _('May'), 
_('Jun'), _('Jul'), _('Aug'), _('Sep'), _('Oct'), _('Nov'), _('Dec') ]
+            months = [
+                _('Jan'), _('Feb'), _('Mar'), _('Apr'), _('May'), _('Jun'),
+                _('Jul'), _('Aug'), _('Sep'), _('Oct'), _('Nov'), _('Dec') ]
             iter=1
             for m in months:
                 if curtime[1] == iter:
@@ -183,12 +194,16 @@
                 iter = iter + 5
             minuteselect = minuteselect + "</select>\n"
 
-            startcell = monthselect % ("startmonth", 
'onChange="document.manrec.stopmonth.selectedIndex=document.manrec.startmonth.selectedIndex"')
-            startcell = startcell + dayselect % ("startday", 
'onChange="document.manrec.stopday.selectedIndex=document.manrec.startday.selectedIndex"')
+            startcell = monthselect % ("startmonth",
+                
'onChange="document.manrec.stopmonth.selectedIndex=document.manrec.startmonth.selectedIndex"')
+            startcell = startcell + dayselect % ("startday",
+                
'onChange="document.manrec.stopday.selectedIndex=document.manrec.startday.selectedIndex"')
             startcell = startcell + '@'
-            startcell = startcell + hourselect % ("starthour", 
'onChange="document.manrec.stophour.selectedIndex=document.manrec.starthour.selectedIndex"')
+            startcell = startcell + hourselect % ("starthour",
+                
'onChange="document.manrec.stophour.selectedIndex=document.manrec.starthour.selectedIndex"')
             startcell = startcell + ':'
-            startcell = startcell + minuteselect % ("startminute", 
'onChange="document.manrec.stopminute.selectedIndex=document.manrec.startminute.selectedIndex"')
+            startcell = startcell + minuteselect % ("startminute",
+                
'onChange="document.manrec.stopminute.selectedIndex=document.manrec.startminute.selectedIndex"')
 
             stopcell = monthselect % ("stopmonth", " ")
             stopcell = stopcell + dayselect % ("stopday", " ")
@@ -226,10 +241,12 @@
             fv.tableCell(startcell, 'class="basic" colspan="1" nowrap')
             fv.tableCell(stopcell, 'class="basic" colspan="1" nowrap')
             fv.tableCell('<input name="title" size="20">', 'class="basic" 
colspan="1"')
-            fv.tableCell('<textarea name="desc" rows="1" cols="20" 
wrap="soft"></textarea>', 'class="basic" colspan="1"')
+            fv.tableCell('<textarea name="desc" rows="1" cols="20" 
wrap="soft"></textarea>',
+                'class="basic" colspan="1"')
             fv.tableRowClose()
             fv.tableRowOpen('class="chanrow"')
-            fv.tableCell('<center><input type="hidden" name="action" 
value="add" /><input type="submit" value="'+_('Add to Recording Schedule')+'" 
/></center>', 'class="basic" colspan="5"')
+            fv.tableCell('<center><input type="hidden" name="action" 
value="add" /><input type="submit" value="'+
+                _('Add to Recording Schedule')+'" /></center>', 'class="basic" 
colspan="5"')
             fv.tableRowClose()
 
             fv.tableClose()
@@ -239,6 +256,6 @@
             fv.printLinks()
             fv.printFooter()
 
-        return String( fv.res )
+        return String(fv.res)
 
 resource = ManualRecordResource()

Modified: branches/rel-1/freevo/src/www/htdocs/pluginconfig.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/pluginconfig.rpy       (original)
+++ branches/rel-1/freevo/src/www/htdocs/pluginconfig.rpy       Mon Feb 18 
06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# pluginconfig - update plugin settings in local_conf.py
+# Web interface update plugin settings in local_conf.py
 # -----------------------------------------------------------------------
 # $Id$
 #

Modified: branches/rel-1/freevo/src/www/htdocs/proginfo.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/proginfo.rpy   (original)
+++ branches/rel-1/freevo/src/www/htdocs/proginfo.rpy   Mon Feb 18 06:40:06 2008
@@ -1,7 +1,13 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# proginfo.rpy - Dynamically update program info popup box.
+# Dynamically update program info popup box.
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo:
+#
 # -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.
@@ -33,7 +39,6 @@
 import util
 import config
 import tv.epg_xmltv
-import tv.record_client as ri
 from twisted.web import static
 
 MAX_DESCRIPTION_CHAR = 1000

Modified: branches/rel-1/freevo/src/www/htdocs/record.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/record.rpy     (original)
+++ branches/rel-1/freevo/src/www/htdocs/record.rpy     Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# record.rpy - Web interface to your scheduled recordings.
+# Web interface to your scheduled recordings.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -32,7 +32,7 @@
 import sys, time
 import util.tv_util as tv_util
 
-import tv.record_client as ri
+from tv.record_client import RecordClient
 
 from www.web_types import HTMLResource, FreevoResource
 
@@ -42,6 +42,8 @@
 FALSE = 0
 
 class RecordResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
 
     def _render(self, request):
         fv = HTMLResource()
@@ -54,17 +56,14 @@
         start = fv.formValue(form, 'start')
         action = fv.formValue(form, 'action')
 
-        (server_available, message) = ri.connectionTest()
-        if not server_available:
+        server_available = self.recordclient.pingNow()
+        if server_available is None:
             fv.printHeader('Scheduled Recordings', 'styles/main.css')
-            fv.printMessagesFinish(
-                [ '<b>'+_('ERROR')+'</b>: '+_('Recording server is 
unavailable.') ]
-                )
-
+            fv.printMessagesFinish(['<b>'+_('ERROR')+'</b>: '+_('Recording 
server is unavailable.')])
             return String( fv.res )
 
         if action == 'remove':
-            (status, recordings) = ri.getScheduledRecordings()
+            recordings = self.recordclient.getScheduledRecordingsNow()
             progs = recordings.getProgramList()
 
             prog = None
@@ -74,34 +73,24 @@
 
             if prog:
                 print 'want to remove prog: %s' % String(prog)
-                ri.removeScheduledRecording(prog)
+                self.recordclient.removeScheduledRecordingNow(prog)
         elif action == 'add':
-            (status, prog) = ri.findProg(chan, start)
+            (status, prog) = self.recordclient.findProgNow(chan, start)
 
             if not status:
                 fv.printHeader('Scheduled Recordings', 'styles/main.css')
                 fv.printMessagesFinish(
-                    [ '<b>'+_('ERROR') + '</b>: ' + \
-                      ( _('No program found on %s at %s.')%\
-                        ( '<b>'+chan+'</b>',
-                          '<b>'+time.strftime('%x %X',
-                                              time.localtime(int(start)))+\
-                          '</b>'
-                          )
-                           )+\
-                      ( ' <i>(%s)</i>' % String(prog) ) ] )
-
+                    ['<b>'+_('ERROR') + '</b>: ' + \
+                      _('No program found on %s at %s.') % \
+                           ('<b>'+chan+'</b>', '<b>'+time.strftime('%x %X', 
time.localtime(int(start)))+'</b>')+\
+                       (' <i>(%s)</i>' % String(prog))])
                 return String(fv.res)
 
+            self.recordclient.scheduleRecordingNow(prog)
 
-            #print 'RESULT: %s' % status
-            #print 'PROG: %s' % String(prog)
-            ri.scheduleRecording(prog)
-
-
-        (status, recordings) = ri.getScheduledRecordings()
+        recordings = self.recordclient.getScheduledRecordingsNow()
         progs = recordings.getProgramList()
-        (status, favs) = ri.getFavorites()
+        (status, favs) = self.recordclient.getFavoritesNow()
 
         fv.printHeader(_('Scheduled Recordings'), 'styles/main.css', 
selected=_('Scheduled Recordings'))
 
@@ -124,7 +113,7 @@
         for prog in progl:
             status = 'basic'
 
-            (isFav, junk) = ri.isProgAFavorite(prog, favs)
+            (isFav, message) = self.recordclient.isProgAFavoriteNow(prog, favs)
             if isFav:
                 status = 'favorite'
             try:
@@ -135,8 +124,10 @@
                 pass
 
             fv.tableRowOpen('class="chanrow"')
-            fv.tableCell(time.strftime('%b %d ' + config.TV_TIME_FORMAT, 
time.localtime(prog.start)), 'class="'+status+'" colspan="1"')
-            fv.tableCell(time.strftime('%b %d ' + config.TV_TIME_FORMAT, 
time.localtime(prog.stop)), 'class="'+status+'" colspan="1"')
+            fv.tableCell(time.strftime('%b %d '+config.TV_TIME_FORMAT, 
time.localtime(prog.start)),
+                'class="'+status+'" colspan="1"')
+            fv.tableCell(time.strftime('%b %d '+config.TV_TIME_FORMAT, 
time.localtime(prog.stop)),
+                'class="'+status+'" colspan="1"')
 
             chan = tv_util.get_chan_displayname(prog.channel_id)
             if not chan: chan = _('UNKNOWN')

Modified: branches/rel-1/freevo/src/www/htdocs/search.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/search.rpy     (original)
+++ branches/rel-1/freevo/src/www/htdocs/search.rpy     Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# search.rpy - Web interface to search the Freevo EPG.
+# Web interface to search the Freevo EPG.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -32,21 +32,24 @@
 import sys, time
 import util.tv_util as tv_util
 
-import tv.record_client as ri
-from www.web_types import HTMLResource, FreevoResource
 import config
+from tv.record_client import RecordClient
+from www.web_types import HTMLResource, FreevoResource
 
 TRUE = 1
 FALSE = 0
 
 
 class SearchResource(FreevoResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
+
 
     def _render(self, request):
         fv = HTMLResource()
         form = request.args
 
-        (server_available, message) = ri.connectionTest()
+        (server_available, message) = self.recordclient.pingNow()
         if not server_available:
             fv.printHeader(_('Search Results'), 'styles/main.css', 
selected=_('Search'))
             fv.res += '<h4>'+_('ERROR')+': '+_('recording server is 
unavailable')+'</h4>'
@@ -64,11 +67,11 @@
 
         #print 'DEBUG: movies_only=%s' % movies_only
 
-        (got_matches, progs) = ri.findMatches(find, movies_only)
+        (got_matches, progs) = self.recordclient.findMatchesNow(find, 
movies_only)
 
         if got_matches:
-            (result, favs) = ri.getFavorites()
-            (result, recordings) = ri.getScheduledRecordings()
+            (result, favs) = self.recordclient.getFavoritesNow()
+            (result, recordings) = 
self.recordclient.getScheduledRecordingsNow()
             if result:
                 rec_progs = recordings.getProgramList()
 
@@ -108,7 +111,7 @@
                         except:
                             sys.stderr.write('isRecording not set')
 
-                if ri.isProgAFavorite(prog, favs):
+                if self.recordclient.isProgAFavoriteNow(prog, favs):
                     status = 'favorite'
 
 

Modified: branches/rel-1/freevo/src/www/htdocs/viewlogfile.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/viewlogfile.rpy        (original)
+++ branches/rel-1/freevo/src/www/htdocs/viewlogfile.rpy        Mon Feb 18 
06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# plugins.rpy - Show all plugins
+# Web interface to show all plugins
 # -----------------------------------------------------------------------
 # $Id$
 #

Modified: branches/rel-1/freevo/src/www/htdocs/vlcwin.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/vlcwin.rpy     (original)
+++ branches/rel-1/freevo/src/www/htdocs/vlcwin.rpy     Mon Feb 18 06:40:06 2008
@@ -1,7 +1,13 @@
-#!/usr/bin/python
 # -*- coding: iso-8859-1 -*-
+# 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# proginfo.rpy - Dynamically update program info popup box.
+# Web interface to vlc
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo:
+#
 # -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.

Modified: branches/rel-1/freevo/src/www/htdocs/wap_login.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/wap_login.rpy  (original)
+++ branches/rel-1/freevo/src/www/htdocs/wap_login.rpy  Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# wap_login.rpy - Wap interface login form.
+# Wap interface login form.
 # -----------------------------------------------------------------------
 # $Id$
 #

Modified: branches/rel-1/freevo/src/www/htdocs/wap_rec.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/wap_rec.rpy    (original)
+++ branches/rel-1/freevo/src/www/htdocs/wap_rec.rpy    Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# wap_rec.rpy - Wap shedule recording page.
+# Wap shedule recording page.
 # -----------------------------------------------------------------------
 # $Id$
 #
@@ -33,21 +33,17 @@
 
 import tv.epg_xmltv
 import tv.epg_types
-import tv.record_client as ri
+from tv.record_client import RecordClient
 from www.wap_types import WapResource, FreevoWapResource
-
-# Use the alternate strptime module which seems to handle time zones
-#
-# XXX Remove when we are ready to require Python 2.3
-if float(sys.version[0:3]) < 2.3:
-    import tv.strptime as strptime
-else:
-    import _strptime as strptime
+import _strptime as strptime
 
 class WRecResource(FreevoWapResource):
+    def __init__(self):
+        self.recordclient = RecordClient()
 
-    def _render(self, request):
 
+    def _render(self, request):
+        """ Render the page """
         fv = WapResource()
         form = request.args
         fv.session = request.getSession()
@@ -77,7 +73,7 @@
                 prog.title = "Wap Recorded"
                 prog.start = starttime
                 prog.stop = stoptime
-                ri.scheduleRecording(prog)
+                self.recordclient.scheduleRecordingNow(prog)
                 fv.res += '  <card id="card3" title="Freevo">\n'
                 fv.res += '   <p><strong>Rec. Sheduled</strong><br/>\n'
                 fv.res += '          Date : %s<br/>\n' % startdate
@@ -102,7 +98,7 @@
                 fv.res += '  <timer value="30"/>\n'
                 fv.res += '   <p><big><strong>Freevo WAP 
Sheduler</strong></big></p>\n'
 
-                (server_available, message) = ri.connectionTest()
+                server_available = self.recordclient.pingNow()
                 if not server_available:
                     fv.res += '<p>ERROR: Record Server offline</p>\n'
                 else:
@@ -110,9 +106,12 @@
 
                 fv.res += '  </card>\n'
                 fv.res += '  <card id="card2" title="Freevo">\n'
-                fv.res += '       <p>Date: <input  name="date" title="Date 
(dd/mm/yy)" format="NN/NN/NN" size="6" value="%s" /><br/>\n' % 
time.strftime("%d/%m/%y", time.localtime(time.time()))
-                fv.res += '          Start Time: <input  name="start" 
title="Start Time (hh:mm)" format="NN:NN" size="4" value="%s" /><br/>\n' % 
time.strftime("%H:%M", time.localtime(time.time()))
-                fv.res += '          Stop Time: <input  name="stop" 
title="Stop Time (hh:mm)" format="NN:NN" size="4" value="%s" /><br/>\n' % 
time.strftime("%H:%M", time.localtime(time.time() + 3600))
+                fv.res += '       <p>Date: <input  name="date" title="Date 
(dd/mm/yy)" format="NN/NN/NN" '+\
+                    'size="6" value="%s" /><br/>\n' % 
time.strftime("%d/%m/%y", time.localtime(time.time()))
+                fv.res += '          Start Time: <input  name="start" 
title="Start Time (hh:mm)" format="NN:NN" '+\
+                    'size="4" value="%s" /><br/>\n' % time.strftime("%H:%M", 
time.localtime(time.time()))
+                fv.res += '          Stop Time: <input  name="stop" 
title="Stop Time (hh:mm)" format="NN:NN" '+\
+                    'size="4" value="%s" /><br/>\n' % time.strftime("%H:%M", 
time.localtime(time.time() + 3600))
                 fv.res += '          Channel: <select  name="channel">\n'
                 for ch in guide.chan_list:
                     fv.res += '                   <option 
value="'+ch.id+'">'+ch.displayname+"</option>\n"

Modified: branches/rel-1/freevo/src/www/htdocs/webremote.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/webremote.rpy  (original)
+++ branches/rel-1/freevo/src/www/htdocs/webremote.rpy  Mon Feb 18 06:40:06 2008
@@ -1,7 +1,7 @@
 # -*- coding: iso-8859-1 -*-
 # 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
 # -----------------------------------------------------------------------
-# webremote.rpy - Web Based Remote Control for Freevo.
+# Web Based Remote Control for Freevo.
 # -----------------------------------------------------------------------
 # $Id$
 #

Modified: branches/rel-1/freevo/src/www/htdocs/youtube.rpy
==============================================================================
--- branches/rel-1/freevo/src/www/htdocs/youtube.rpy    (original)
+++ branches/rel-1/freevo/src/www/htdocs/youtube.rpy    Mon Feb 18 06:40:06 2008
@@ -1,4 +1,13 @@
-#!/usr/bin/python
+# -*- coding: iso-8859-1 -*-
+# 
vim:autoindent:tabstop=4:softtabstop=4:shiftwidth=4:expandtab:filetype=python:
+# -----------------------------------------------------------------------
+# Web interface to youtube
+# -----------------------------------------------------------------------
+# $Id$
+#
+# Notes:
+# Todo: 
+#
 # -----------------------------------------------------------------------
 # Freevo - A Home Theater PC framework
 # Copyright (C) 2002 Krister Lagerstrom, et al.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to