A what's on grid view

Discussion in 'TiVo Underground' started by offthefront, Jan 29, 2003.

  1. offthefront

    offthefront New Member

    5
    0
    Jun 4, 2002
    uk

    Advertisements

    Inspired by the excellent whatson module and the fact that my digiguide subscription had expired, I decided to see if I could do something vaguely equivalent with tivoweb.

    Given I've never written any tcl or html before, I surprised myself by coming up with something I'm using now, so I though I'd share it with everyone.

    It shows what's on in a grid. You can choose Favourite/Watched Channels, how many hours to show in grid. You can search backward and forward. The page autoupdates on the hour.

    I've had fun throwing this together. It has been interesting just to see how different browsers render tables (which is how I implemented the grid). I think I have a reasonable solution in the browsers that I have tested it in. I've tested in Mozilla, Konquerer, w3m on Linux and it seems to work well. It doesn't work well in lynx as its table rendering is poor. It seems to work on IE too.

    I've been using it with the small icons recently posted by AlexV in http://www.tivocommunity.com/tivo-vb/showthread.php?postid=966797#post966797. These work well to keep the grid row size small.

    Some things I'd like to add.
    Clicking on the channel name changes channel, but this reloads the page and is thus slow. I'd like to execute the SendKey commands without reloading the page.
    Keep the column and row headers fixed while the rest of the table scrolls. The html spec hints that this may be possible, but I don't know if any browsers
    support it yet.

    Let me know what you think.
    Sue.

    Attached newer version
     

    Attached Files:

  2. mrtickle

    mrtickle Active Member

    2,824
    0
    Aug 26, 2001
    Birmingham, UK
    Very nice! Seems to work ok in Opera. It might need some tweaking for programmes that aren't nice lengths though, Radio 4 seems to upset it :)
     
  3. Zirak

    Zirak Member

    973
    0
    Apr 24, 2002
    New York
    Small point - The times on the top of the screen are GMT; The times on individual shows are correct though (local time).
     
  4. dperovic

    dperovic Where's my Series 3?

    24
    0
    Dec 20, 2001
    Cherry Hill, NJ
    When I clicked on the TiVo icon next to a show, I got the following error:


    INTERNAL SERVER ERROR
    --cut here--
    action_showing '/1159313/154' ''
    can't read "genrenums": no such variable
    while executing
    "lsearch $genrenums $genre"
    ("foreach" body line 2)
    invoked from within
    "foreach genre $genres {
    set genreindex [lsearch $genrenums $genre]
    if { $genreindex != -1 } {
    if { $genrestr != "" } {
    append ..."
    ("uplevel" body line 255)
    invoked from within
    "uplevel $body"
    invoked from within
    "transaction {uplevel $body}"
    (procedure "RetryTransaction" line 5)
    invoked from within
    "RetryTransaction {
    if { [regexp {([0-9]*)/(.*)} $objectid junk fsid subobjid] } {
    set showing [db $db openidconstruction $fsid $subobjid]
    } els..."
    (procedure "::action_showing" line 47)
    invoked from within
    "::action_$action $chan $part $env"
    ("eval" body line 1)
    invoked from within
    "eval {::action_$action $chan $part $env}"
    --cut here--
     
  5. mrtickle

    mrtickle Active Member

    2,824
    0
    Aug 26, 2001
    Birmingham, UK

    Advertisements

    This is obviously caused by the new genres and is not a fault of the module. See the main tivoweb thread for the fix!

    (are we going to have tivoweb genre error reports against every module ever released, I wonder! :rolleyes: )
     
  6. LJ

    LJ New Member

    786
    0
    Nov 11, 2001
    West...
    :eek: :)
    Maybe opening another window which sends the keys and then closes itself is a possibility?

    Using 'target="_blank"' in an 'a' tag will open a new window, then a bit of JavaScript along the lines of 'javascript:window.close();' will close the window. I guess you could specify the size and position of the new window so it looks ok.

    Maybe frames?? I'm not sure off the top of my head how to link movement in one frame to others though.
     
  7. jcblack

    jcblack New Member

    164
    0
    Jul 26, 2001
    lexington, ky
    WOW! The grid module is GREAT! I wish tivo had the grid onscreen, its just so easy to use (i can't believe there is a patent on it, seems like a no brainer organizational chart!). Nice touch having the suggestions/recording icons show up! really reallly handy! Thanks for the module!!!!
     
  8. mrtickle

    mrtickle Active Member

    2,824
    0
    Aug 26, 2001
    Birmingham, UK
    The icons appear probably because they also appear in Digiguide, of which this is an excellent clone. I think Digiguide are launching in the US too. :)
    And Digiguide was originally inspired by the Sky onscreen Electronic Programme Guide here in the UK when Sky launched their digital service in 1998. Sky is the company that TiVo partnered with to do marketing, who stabbed TiVo in the back by releasing their own non-tivo dual-tuner PVR. Funny old world.
     
  9. kitschcamp

    kitschcamp Tweaked and poked

    1,846
    0
    May 18, 2001
    Adelaide,...
    This is bizarre. I'm feeling as if I'm the victim of an elaborate practical joke. I just cannot get it to work at all on my machine.

    A results page comes back with nothing in it at all, no matter what. Waaah?
     
  10. jcblack

    jcblack New Member

    164
    0
    Jul 26, 2001
    lexington, ky
    Kitschamp, same happened to me. change the options from favorites to channels watched. I don't have favorites set up. maybe thats your problem?
     
  11. AlexV

    AlexV Bloke with a TiVo

    13
    0
    Apr 10, 2002
    Cambridge, UK
    This is a great module - I was planning on learning tcl and writing something similar myself, but when searching to see if there was anything similar around already, I found this! The only thing I was thinking of doing differently was to have a frames setup so that the channel names would not scroll out of view horizontally, but I guess there are lots of people who don't like any sort of frames anyway.

    So much kudos and congratulations to offthefront for producing this excellent module.

    I hope you won't take it the wrong way that I thought I could make some cosmetic enhancements - it is because I thought this module was so good already that I wanted to spend the time making it easier on my eyes.

    I have attached a slightly modified grid.itcl which adds CSS class attributes to the various different table elements produced, and an updated version of my Clear Yellow css theme file which takes advantage of them. If other theme authors would like to use the grid classes, they are all in a group at the bottom of the Clear Yellow css file. Clear Yellow remains optimised for IE.

    Thanks again for the module!
     

    Attached Files:

  12. offthefront

    offthefront New Member

    5
    0
    Jun 4, 2002
    uk
    Thanks for all the kind comments.

    I thought about using frames for the row and column headers. Two problems with this approach. Scrolling needs to be coordinated between the main frame and the headers. It is also hard to know how large each table cell is going to be until the table is rendered. The broswer takes care of this itself if there is just one table. If there were seperate frames, I would need to fix the cell sizes myself. The html spec here http://www.w3.org/TR/REC-html40/struct/tables.html suggests the browser could do the seperate scrolling, given the right hints, but I don't know of any browser that currently does this.

    Kitschcamp : All I can think is that you don't have any favourites specified and this is the default view at start up. Try choosing Channels Watched and see if this shows anything as jcblack suggested.

    AlexV : I've included your changes in the main file.

    Zirak : I made the Column headers not GMT specific. (I hope! Can someone not living in GMT let me know.)

    Sue.
     

    Attached Files:

  13. 6022tivo

    6022tivo A Happy Member

    2,062
    1
    Oct 29, 2002
    UK
    Have just installed this module, and I think it is great and well recommended. Very clear and a good format, I was a digiguide customer, and this is a good alternative.
     
  14. Animgif

    Animgif Stud, Esquire

    5,490
    0
    Jan 4, 2002
    The City So...
    Quite nice! I'd like to add that although TivoWeb doesn't work really well with Safari (v67), your tables render just fine.
     
  15. Adlopa

    Adlopa New Member

    182
    0
    Mar 6, 2002
    London
    Oh dear...

    INTERNAL SERVER ERROR
    --cut here--
    action_grid '/' ''
    can't read "thumbdata": no such variable
    while executing
    "scan $thumbdata "%s %d %d" thumbtype numthumbs thumbconf"
    (procedure "get_thumbimage" line 2)
    invoked from within
    "get_thumbimage $score"
    ("foreach" body line 144)
    invoked from within
    "foreach showingfsid [lrange $showings $x [expr $x+19]] {
    regexp {([0-9]*)/(.*)} $showingfsid junk showingobjid subobjid
    set showing [db $db openidco..."
    ("uplevel" body line 2)
    invoked from within
    "uplevel $body"
    invoked from within
    "transaction {uplevel $body}"
    (procedure "RetryTransaction" line 5)
    invoked from within
    "RetryTransaction {
    foreach showingfsid [lrange $showings $x [expr $x+19]] {
    regexp {([0-9]*)/(.*)} $showingfsid junk showingobjid subobjid
    set..."
    (procedure "sue_wochandata" line 18)
    invoked from within
    "sue_wochandata $chan $fsid $minseconds $maxseconds $callsign $stationfsid $filler $columnWidth"
    ("uplevel" body line 2)
    invoked from within
    "uplevel $body"
    invoked from within
    "ForeachMfsFile fsid name type "/Schedule" "$stationfsid:$chkdate" {
    if {[catch [sue_wochandata $chan $fsid $minseconds $maxseconds $callsign $st..."
    (procedure "::action_grid" line 192)
    invoked from within
    "::action_$action $chan $part $env"
    ("eval" body line 1)
    invoked from within
    "eval {::action_$action $chan $part $env}"
    --cut here--

    Something to do with LJ's thumbs module..?
     
  16. offthefront

    offthefront New Member

    5
    0
    Jun 4, 2002
    uk
    Hmmm, curious. I've never seen this. Do you get this all the time or is this just occasionally? Has anyone else had this problem?

    Sue.
     
  17. Adlopa

    Adlopa New Member

    182
    0
    Mar 6, 2002
    London
    Alas, all the time but only since I installed this from here...
     
  18. LJ

    LJ New Member

    786
    0
    Nov 11, 2001
    West...
    Ah - looks like you found a bug in the Thumbs unsetting code. I'll post a new version shortly...

    Edit: version 3.5 of lj_utils.itcl now up.

    Edit2: Now, how to fix the series that have had the ThumsData value deleted... *thinks...*
     
  19. Adlopa

    Adlopa New Member

    182
    0
    Mar 6, 2002
    London
    Nope, still getting the same problem LJ...
     
  20. PaulOckenden

    PaulOckenden New Member

    12
    0
    Jan 26, 2004
    Brighton, UK
    I'm seeing the same error as Adlopa.

    P.
     

Share This Page

spam firewall

Advertisements