From 4e42dcf655005bac131c95b887106aa62271f6f1 Mon Sep 17 00:00:00 2001 From: hummypkg Date: Wed, 29 Jun 2011 23:53:16 +0000 Subject: [PATCH] show new folders git-svn-id: file:///root/webif/svn/humax/pkg/src/webif/trunk@211 2a923420-c742-0410-a762-8d5b09965624 --- var/mongoose/cgi-bin/browse.jim | 5 ++-- var/mongoose/cgi-bin/browse/browse.js | 19 ++++++++++++++ var/mongoose/cgi-bin/browse/new.jim | 25 ------------------- var/mongoose/cgi-bin/browse/newdir.jim | 34 ++++++++++++++++++++++++++ var/mongoose/lib/epg_search | 2 ++ 5 files changed, 58 insertions(+), 27 deletions(-) delete mode 100755 var/mongoose/cgi-bin/browse/new.jim create mode 100755 var/mongoose/cgi-bin/browse/newdir.jim diff --git a/var/mongoose/cgi-bin/browse.jim b/var/mongoose/cgi-bin/browse.jim index 3a24539..352da19 100755 --- a/var/mongoose/cgi-bin/browse.jim +++ b/var/mongoose/cgi-bin/browse.jim @@ -17,10 +17,11 @@ cgi_input #set _cgi(dir) "/media/My Video/Chuggington" proc directory {file bfile} { + regsub -all " +" $bfile "" tbfile puts "
" puts "" - puts "" - regsub -all " +" $bfile "" tbfile + puts "" puts "$bfile
" } diff --git a/var/mongoose/cgi-bin/browse/browse.js b/var/mongoose/cgi-bin/browse/browse.js index 5f04ac7..55e053f 100755 --- a/var/mongoose/cgi-bin/browse/browse.js +++ b/var/mongoose/cgi-bin/browse/browse.js @@ -35,6 +35,21 @@ function folder_size_callback(data, status, xhr) $.each(data, insert_folder_size); } +function set_folder_new(folder, cnt) +{ + folder = folder.replace(/ /g, ''); + folder = folder.replace(/([ #;&,.+*~\':"!^$[\]()=>|\/@])/g, '\\$1'); + console.log("Folder: (%s) = (%s)", folder, cnt); + $('#img' + folder).attr('src', '/images/711_1_09_Media_Folder_C.png'); +} + +function new_folder_callback(data, status, xhr) +{ + //console.log("Status: %s", status); + //console.dir(data); + $.each(data, set_folder_new); +} + function delete_callback(file, type, id) { var el = 'div.bf#' + id; @@ -218,5 +233,9 @@ var menuclick = function(action, el, pos) // Load folder sizes $.getJSON('/cgi-bin/browse/sizes.jim?dir=' + encodeURIComponent(dir), folder_size_callback); + + // Flag folders with unwatched items + $.getJSON('/cgi-bin/browse/newdir.jim?dir=' + encodeURIComponent(dir), + new_folder_callback); }); diff --git a/var/mongoose/cgi-bin/browse/new.jim b/var/mongoose/cgi-bin/browse/new.jim deleted file mode 100755 index 8f452dc..0000000 --- a/var/mongoose/cgi-bin/browse/new.jim +++ /dev/null @@ -1,25 +0,0 @@ -#!/mod/bin/jimsh - -package require cgi - -puts "Content-Type: application/json" -puts "" - -cgi_input -#cgi_dump - -set _cgi(dir) "/media/My Video" - -set dir [dict get $_cgi dir] -# Strip double slashes -regsub -all -- {\/+} "$dir/*" "/" dir - -puts "{" -foreach subdir [glob -nocomplain "$dir"] { - set new 0 - foreach hmt [glob -nocomplain "$subdir/*.hmt"] { - puts "HMT: $hmt" - } -} -puts "}" - diff --git a/var/mongoose/cgi-bin/browse/newdir.jim b/var/mongoose/cgi-bin/browse/newdir.jim new file mode 100755 index 0000000..1f8ca40 --- /dev/null +++ b/var/mongoose/cgi-bin/browse/newdir.jim @@ -0,0 +1,34 @@ +#!/mod/bin/jimsh + +package require cgi +package require pack + +puts "Content-Type: application/json" +puts "" + +cgi_input +#cgi_dump + +#set _cgi(dir) "/media/My Video" + +set root [dict get $_cgi dir] +# Strip double slashes +regsub -all -- {\/+} "$root/*" "/" root + +puts "{" +foreach dir [glob -nocomplain "$root"] { + if {[file exists "$dir/.series"]} { + set fd [open "$dir/.series"] + set bytes [read $fd 8] + set recs [unpack $bytes -uintle 0 32] + set plays [unpack $bytes -uintle 32 32] + set diff $($recs - $plays) + if {$diff != 0} { + set node [lindex [split $dir /] end] + puts "\"$node\": $diff," + } + } +} +puts "\"dummy\" : 0" +puts "}" + diff --git a/var/mongoose/lib/epg_search b/var/mongoose/lib/epg_search index 59ff42b..5b17fce 100755 --- a/var/mongoose/lib/epg_search +++ b/var/mongoose/lib/epg_search @@ -79,6 +79,8 @@ if {[llength $res] > 0} { puts "Keyword Searches" foreach keyword $res { set kw [string range [lindex $keyword 1] 1 end] + # Attempt to clean the keyword string. + regsub -all {[\000-\037]} $kw "" kw puts "$kw " }