Hi, I didn't get anything back from the developers about my original WWW favorites patch. This one is updated with 24 hour format support.
Thanks to Hans Meine for his advice, I added this to the config.py: # Time Format if (TV_TIMEFORMAT.find("%H") >= 0): FORMAT24HOUR = 1 else: FORMAT24HOUR = 0 then altered my original changes to make use of this. So when editing/adding a favorite you now have two or three drop down boxes (depending on your TV_TIMEFORMAT setting) which make up the time. This allows for more accurate start times for your favorites (every 5 minutes, rather than every 30). I want to put this changes into the main freevo interface too, I've not really got to grips with it yet and was wondering if it was possible to have multiple columns of object lists, would need three, one for hours, one for minutes and one for am/pm. I've noticed these patches getting bigger and bigger, I was originally told to post them to the mailing list but don't want to annoy anyone so please let me know if I should be submitting them another way :) again feedback greatly appreciated. Cheers, Alex (Muttley on #freevo)
? Freevo.e3p ? pyos ? src/www/htdocs/help/wiki Index: src/config.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/config.py,v retrieving revision 1.110.2.2 diff -u -r1.110.2.2 config.py --- src/config.py 28 Aug 2004 17:07:42 -0000 1.110.2.2 +++ src/config.py 11 Nov 2004 01:48:31 -0000 @@ -616,6 +616,12 @@ if not VIDEO_SHOW_DATA_DIR and not HELPER: print 'Error: VIDEO_SHOW_DATA_DIR not found' +# Time Format +if (TV_TIMEFORMAT.find("%H") >= 0): + FORMAT24HOUR = 1 +else: + FORMAT24HOUR = 0 + # # Autodetect the CD/DVD drives in the system if not given in local_conf.py # Index: src/util/tv_util.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/util/tv_util.py,v retrieving revision 1.6 diff -u -r1.6 tv_util.py --- src/util/tv_util.py 10 Jul 2004 12:33:42 -0000 1.6 +++ src/util/tv_util.py 11 Nov 2004 01:48:33 -0000 @@ -99,18 +99,23 @@ rem = min - (hour*60) ap = 'AM' - if hour > 12: + if (hour > 12) and (not config.FORMAT24HOUR): hour = hour - 12 ap = 'PM' - if hour == 0: + if (hour == 0) and (not config.FORMAT24HOUR): hour = 12 - if rem == 0: - rem = '00' - - return '%s:%s %s' % (hour, rem, ap) + if (config.FORMAT24HOUR) and (hour < 10): + hour = '0%s' % hour + + if rem < 10: + rem = '0%s' % rem + if (config.FORMAT24HOUR): + return '%s:%s' % (hour, rem) + else: + return '%s:%s %s' % (hour, rem, ap) def descfsize(size): if size < 1024: Index: src/www/htdocs/edit_favorite.rpy =================================================================== RCS file: /cvsroot/freevo/freevo/src/www/htdocs/edit_favorite.rpy,v retrieving revision 1.17.2.1 diff -u -r1.17.2.1 edit_favorite.rpy --- src/www/htdocs/edit_favorite.rpy 11 Aug 2004 00:12:33 -0000 1.17.2.1 +++ src/www/htdocs/edit_favorite.rpy 11 Nov 2004 01:48:34 -0000 @@ -117,6 +117,7 @@ from tv.record_types import Favorite import tv.epg_xmltv import tv.record_client as ri +import config from www.web_types import HTMLResource, FreevoResource @@ -252,59 +253,90 @@ fv.tableCell(cell, 'class="'+status+'" colspan="1"') - cell = '\n<select name="mod" selected="%s">\n' % fav.mod - cell += ' <option value="ANY">'+_('ANY TIME')+'</option>\n' + if fav.mod != 'ANY': + mod_hour = int(fav.mod/60) + mod_min = fav.mod - (mod_hour*60) + if (mod_hour > 12) and (not config.FORMAT24HOUR): + mod_hour = mod_hour - 12 + mod_moaf = 2 + else: + mod_moaf = 1 + else: + mod_hour = 'ANY' + mod_min = 'ANY' + mod_moaf = 'ANY' + + cell = '\n<select name="mod_hour" selected="%s" STYLE="width: 50px">\n' % mod_hour*60 + cell += ' <option value="ANY">'+_('ANY TIME')+'</option>' + if not config.FORMAT24HOUR: + cell += """ + <option value="0">12</option> + <option value="60">1</option> + <option value="120">2</option> + <option value="180">3</option> + <option value="240">4</option> + <option value="300">5</option> + <option value="360">6</option> + <option value="420">7</option> + <option value="480">8</option> + <option value="540">9</option> + <option value="600">10</option> + <option value="660">11</option> + </select> + """ + else: + cell += """ + <option value="0">00</option> + <option value="60">01</option> + <option value="120">02</option> + <option value="180">03</option> + <option value="240">04</option> + <option value="300">05</option> + <option value="360">06</option> + <option value="420">07</option> + <option value="480">08</option> + <option value="540">09</option> + <option value="600">10</option> + <option value="660">11</option> + <option value="720">12</option> + <option value="780">13</option> + <option value="840">14</option> + <option value="900">15</option> + <option value="960">16</option> + <option value="1020">17</option> + <option value="1080">18</option> + <option value="1140">19</option> + <option value="1200">20</option> + <option value="1260">21</option> + <option value="1320">22</option> + <option value="1380">23</option> + </select> + """ + cell += '\n<select name="mod_min" selected="%s" STYLE="width: 50px">\n' % mod_min + cell += ' <option value="ANY">'+_('ANY TIME')+'</option>' cell += """ - <option value="0">12:00 AM</option> - <option value="30">12:30 AM</option> - <option value="60">1:00 AM</option> - <option value="90">1:30 AM</option> - <option value="120">2:00 AM</option> - <option value="150">2:30 AM</option> - <option value="180">3:00 AM</option> - <option value="210">3:30 AM</option> - <option value="240">4:00 AM</option> - <option value="270">4:30 AM</option> - <option value="300">5:00 AM</option> - <option value="330">5:30 AM</option> - <option value="360">6:00 AM</option> - <option value="390">6:30 AM</option> - <option value="420">7:00 AM</option> - <option value="450">7:30 AM</option> - <option value="480">8:00 AM</option> - <option value="510">8:30 AM</option> - <option value="540">9:00 AM</option> - <option value="570">9:30 AM</option> - <option value="600">10:00 AM</option> - <option value="630">10:30 AM</option> - <option value="660">11:00 AM</option> - <option value="690">11:30 AM</option> - <option value="720">12:00 PM</option> - <option value="750">12:30 PM</option> - <option value="780">1:00 PM</option> - <option value="810">1:30 PM</option> - <option value="840">2:00 PM</option> - <option value="870">2:30 PM</option> - <option value="900">3:00 PM</option> - <option value="930">3:30 PM</option> - <option value="960">4:00 PM</option> - <option value="990">4:30 PM</option> - <option value="1020">5:00 PM</option> - <option value="1050">5:30 PM</option> - <option value="1080">6:00 PM</option> - <option value="1110">6:30 PM</option> - <option value="1140">7:00 PM</option> - <option value="1170">7:30 PM</option> - <option value="1200">8:00 PM</option> - <option value="1230">8:30 PM</option> - <option value="1260">9:00 PM</option> - <option value="1290">9:30 PM</option> - <option value="1320">10:00 PM</option> - <option value="1350">10:30 PM</option> - <option value="1380">11:00 PM</option> - <option value="1410">11:30 PM</option> + <option value="0">00</option> + <option value="5">05</option> + <option value="10">10</option> + <option value="15">15</option> + <option value="20">20</option> + <option value="25">25</option> + <option value="30">30</option> + <option value="35">35</option> + <option value="40">40</option> + <option value="45">45</option> + <option value="50">50</option> + <option value="55">55</option> </select> """ + if not config.FORMAT24HOUR: + cell += '\n<select name="mod_moaf" selected="%s" STYLE="width: 50px">\n' % mod_moaf + cell += ' <option value="ANY">'+_('ANY TIME')+'</option>' + cell += """ + <option value="0">AM</option> + <option value="1">PM</option> + </select> + """ fv.tableCell(cell, 'class="'+status+'" colspan="1"') # cell = '\n<select name="priority" selected="%s">\n' % fav.priority @@ -337,10 +369,21 @@ fv.res += 'document.editfavorite.dow.options[(1+%s)].selected=true\n' % fav.dow if fav.mod == 'ANY': - fv.res += 'document.editfavorite.mod.options[0].selected=true\n' + fv.res += 'document.editfavorite.mod_hour.options[0].selected=true\n' + else: + mod_index = mod_hour+1 + fv.res += 'document.editfavorite.mod_hour.options[%s].selected=true\n' % mod_index + + if fav.mod == 'ANY': + fv.res += 'document.editfavorite.mod_min.options[0].selected=true\n' + else: + mod_min_index = (mod_min/5)+1 + fv.res += 'document.editfavorite.mod_min.options[%s].selected=true\n' % mod_min_index + + if fav.mod == 'ANY': + fv.res += 'document.editfavorite.mod_moaf.options[0].selected=true\n' else: - mod_index = int(fav.mod)/30 + 1 - fv.res += 'document.editfavorite.mod.options[%s].selected=true\n' % mod_index + fv.res += 'document.editfavorite.mod_moaf.options[%s].selected=true\n' % mod_moaf fv.res += '</script>' Index: src/www/htdocs/favorites.rpy =================================================================== RCS file: /cvsroot/freevo/freevo/src/www/htdocs/favorites.rpy,v retrieving revision 1.17 diff -u -r1.17 favorites.rpy --- src/www/htdocs/favorites.rpy 20 May 2004 15:56:12 -0000 1.17 +++ src/www/htdocs/favorites.rpy 11 Nov 2004 01:48:34 -0000 @@ -139,9 +139,27 @@ title = fv.formValue(form, 'title') chan = fv.formValue(form, 'chan') dow = fv.formValue(form, 'dow') - mod = fv.formValue(form, 'mod') + mod_hour = fv.formValue(form, 'mod_hour') + mod_min = fv.formValue(form, 'mod_min') + mod_moaf = fv.formValue(form, 'mod_moaf') priority = fv.formValue(form, 'priority') - + + if mod_hour is None: + mod_hour = 0 + elif mod_hour != 'ANY': + mod_hour = int(mod_hour) + + if mod_min is None: + mod_min = 0 + elif mod_min != 'ANY': + mod_min = int(mod_min) + + if mod_hour == 'ANY' or mod_min == 'ANY' or mod_moaf == 'ANY': + mod = 'ANY' + else: + if mod_moaf == '1': + mod_hour = (mod_hour + 720) + mod = (mod_hour + mod_min) if action == 'remove': ri.removeFavorite(name)
signature.asc
Description: This is a digitally signed message part