diff --git a/CONTROL/control b/CONTROL/control
index de3a77b..6fd3612 100644
--- a/CONTROL/control
+++ b/CONTROL/control
@@ -1,10 +1,10 @@
Package: webif
Priority: optional
Section: web
-Version: 1.3.0
+Version: 1.3.0-1
Architecture: mipsel
Maintainer: af123@hpkg.tv
-Depends: tcpfix,webif-channelicons(>=1.1.22-1),lighttpd(>=1.4.39-1),jim(>=0.76-2),jim-oo,jim-sqlite3(>=0.76),jim-cgi(>=0.7-1),jim-binary(>=0.76),service-control(>=2.1),busybox(>=1.20.2-1),lsof(>=4.87),epg(>=1.2.1-1),hmt(>=2.0.9),ssmtp,cron-daemon(>=1.18.3-3),at(>=3.1.18),anacron,trm(>=1.1),openssl-command,nicesplice,id3v2,file,rsvsync(>=1.0.2),webif-charts(>=1.2-1),stripts(>=1.2.5-3),tmenu(>=1.08),ffmpeg,id3v2,multienv(>=1.6),tcpping(>=1.1),e2fsprogs,wireless-tools(>=29-1),dbupdate,recmon(>=2.0.7)
+Depends: tcpfix,webif-channelicons(>=1.1.22-1),lighttpd(>=1.4.39-1),jim(>=0.76-2),jim-oo,jim-sqlite3(>=0.76),jim-cgi(>=0.7-1),jim-binary(>=0.76),service-control(>=2.1),busybox(>=1.20.2-1),lsof(>=4.87),epg(>=1.2.1-1),hmt(>=2.0.9),ssmtp,cron-daemon(>=1.18.3-3),at(>=3.1.18),anacron,trm(>=1.1),openssl-command,nicesplice,id3v2,file,rsvsync(>=1.0.6),webif-charts(>=1.2-1),stripts(>=1.2.5-3),tmenu(>=1.08),ffmpeg,id3v2,multienv(>=1.6),tcpping(>=1.1),e2fsprogs,wireless-tools(>=29-1),dbupdate,recmon(>=2.0.7)
Suggests:
Description: An evolving web interface for the Humax.
Tags: http://hummy.tv/forum/threads/7116/
diff --git a/webif/html/sched/list/index.jim b/webif/html/sched/list/index.jim
index 02a8e28..645f93e 100755
--- a/webif/html/sched/list/index.jim
+++ b/webif/html/sched/list/index.jim
@@ -198,16 +198,16 @@ proc eventrow {event {table TBL_RESERVATION}} {
puts [progressbar $perc]
}
- if {[llength $elist] > 1} {
+ set c [llength $elist]
+ if {$c > 1} {
set i 0
- set c [llength $elist]
set max 5
foreach e $elist {
lassign $e service_id start end event_id
if {$start == $s} continue
- if {[incr i] == $max} {
- set remain $($c - $i)
+ if {[incr i] == $max &&
+ [set remain $($c - $i)] > 1} {
puts "
@@ -258,12 +258,12 @@ proc eventrow {event {table TBL_RESERVATION}} {
} else {
puts "--:--:--"
}
- if {[llength $elist] > 1} {
+ if {$c > 1} {
set i 0
foreach e $elist {
lassign $e service_id start end event_id
if {$start == $s} continue
- if {[incr i] == $max} {
+ if {[incr i] == $max && [expr $c - $i] > 1} {
puts ""
} else {
puts "
"
diff --git a/webif/html/settings/modules/epg/settings.hook b/webif/html/settings/modules/epg/settings.hook
index e6fc2b1..af3ae1f 100755
--- a/webif/html/settings/modules/epg/settings.hook
+++ b/webif/html/settings/modules/epg/settings.hook
@@ -97,7 +97,7 @@ puts "
class=\"text ui-widget-content ui-corner-all\">
"
-foreach xehopt {2 3 4 5 6} {
+foreach xehopt {2 3 4 5 6 7 8} {
puts -nonewline "
-"
-if {$current} {
- puts "
-
- "
-}
-
-puts "
-
-
- Visit settings to change EPG options.
-
+
+
+Visit settings to change EPG options.
+
"
epg cleanup
set end [clock milliseconds]
puts ""
footer
diff --git a/webif/html/xepg/script.js b/webif/html/xepg/script.js
index 365f052..3897e22 100644
--- a/webif/html/xepg/script.js
+++ b/webif/html/xepg/script.js
@@ -73,6 +73,22 @@ $('div.xeprog').qtip({
}
});
+if (nowoffset)
+{
+ var $kt = $('#xe0');
+ var ktpos = $kt.position();
+
+ var height = $('#keypos').position().top - 20;
+ var top = ktpos.top - 35;
+
+ var nowpos = ktpos.left + ($kt.width() * nowoffset);
+
+ $('#xepgnow')
+ .css('left', nowpos + 'px')
+ .css('top', top)
+ .height(height)
+ .show('slow');
+}
});
diff --git a/webif/lib/bin/auto b/webif/lib/bin/auto
index 5d0c355..f16b171 100755
--- a/webif/lib/bin/auto
+++ b/webif/lib/bin/auto
@@ -672,23 +672,35 @@ proc expire {dir {flag ""}} {
}
}
-proc scan_run {dir flag callback} {
+proc scan_run {dir flag callback {seen {}}} {
global dustbin
if {$dir eq $dustbin} return
if {[specialdir $dir]} return
+ file stat $dir st
+ set key "$st(dev):$st(ino)"
+ if {$key in $seen} {
+ log "Already seen $dir ($key)" 2
+ return
+ }
+ lappend seen $key
+
if {[file exists "$dir/.$flag"]} { $callback $dir }
foreach entry [readdir -nocomplain $dir] {
if {[file isdirectory "$dir/$entry"]} {
- scan_run "$dir/$entry" $flag $callback
+ scan_run "$dir/$entry" $flag $callback $seen
+
+ file stat "$dir/$entry" st
+ set key "$st(dev):$st(ino)"
+ lappend seen $key
}
}
}
-proc xscan {dir attr {force 0} {recurse 1}} {{indent 0} {forceflag ""}} {
+proc xscan {dir attr {force 0} {recurse 1} {seen {}}} {{indent 0} {forceflag ""}} {
global dustbin
incr indent 2
@@ -696,26 +708,36 @@ proc xscan {dir attr {force 0} {recurse 1}} {{indent 0} {forceflag ""}} {
log "[string repeat " " $indent]\[$dir]" 2
if {$dir eq $dustbin} {
- log "Dustbin, skipping." 2
+ log "[string repeat " " $indent]Dustbin, skipping." 2
incr indent -2
return
}
+ file stat "$dir/" st
+
if {[specialdir $dir]} {
# Special folder
- file stat "$dir/" st
if {$st(dev) != $::rootdev} {
- log "Special folder on different device, skipping." 2
+ log "[string repeat " " $indent]Special folder on different device, skipping." 2
incr indent -2
return
}
if {$force} {
set force 0
set forceflag ""
- log "Special folder, overriding recursion." 2
+ log "[string repeat " " $indent]Special folder, overriding recursion." 2
}
}
+ # Already seen
+ set key "$st(dev):$st(ino)"
+ if {$key in $seen} {
+ log "[string repeat " " $indent]Already seen, skipping." 2
+ incr indent -2
+ return
+ }
+ lappend seen $key
+
# Recursion
if {!$force && [file exists "$dir/.auto${attr}r"]} {
log "[string repeat " " $indent] (R)" 2
@@ -733,7 +755,10 @@ proc xscan {dir attr {force 0} {recurse 1}} {{indent 0} {forceflag ""}} {
foreach entry [readdir -nocomplain $dir] {
if {$recurse && [file isdirectory "$dir/$entry"]} {
- xscan "$dir/$entry" $attr $force
+ xscan "$dir/$entry" $attr $force $recurse $seen
+ file stat "$dir/$entry" st
+ set key "$st(dev):$st(ino)"
+ lappend seen $key
}
}
diff --git a/webif/lib/rsv.class b/webif/lib/rsv.class
index 64b0ddc..49aff91 100755
--- a/webif/lib/rsv.class
+++ b/webif/lib/rsv.class
@@ -268,6 +268,9 @@ rsv method set_skip {event} {
set aulEventToRecordInfo ""
set nsttime [$event get start]
set nduration [$event get duration]
+ if {[$event get event_id] eq $usevtid} {
+ set ucVolume $usevtid
+ }
}
rsv method remove_pending {} {