diff --git a/var/mongoose/html/sched/sched.jim b/var/mongoose/html/sched/sched.jim
index f95197f..5b70768 100755
--- a/var/mongoose/html/sched/sched.jim
+++ b/var/mongoose/html/sched/sched.jim
@@ -7,8 +7,17 @@ require altrow rsv.class progressbar epg.class system.class
puts "Content-Type: text/html"
puts ""
+set svcmap {}
+lmap i \
+ [$::channeldb query {select hSvc, usSvcid from TBL_SVC}] \
+ {
+ set svcmap([lindex $i 1]) [lindex $i 3]
+ }
+
header
+require epg_popup
+
puts {
@@ -17,7 +26,7 @@ puts {
-
+
}
proc eventheader {{table TBL_RESERVATION} note} {
@@ -49,6 +58,8 @@ proc eventheader {{table TBL_RESERVATION} note} {
}
proc eventrow {event {table TBL_RESERVATION}} {
+ global svcmap
+
set name [$event name]
set attrs "table=$table sid=[$event get ulslot] \
@@ -83,6 +94,7 @@ proc eventrow {event {table TBL_RESERVATION}} {
} {
puts "
(Folder: [$event folder])"
}
+
puts ""
set s [$event get nsttime]
@@ -97,11 +109,26 @@ proc eventrow {event {table TBL_RESERVATION}} {
"
puts "--:--:-- | "
} else {
- set ds "[clock format $s -format "%a %d %b %Y"]
- [clock format $s -format "%H:%M %Z"]"
+ set elist [$event aul]
+
+ set ds "[clock format $s -format {%a %d %b %Y %H:%M}]"
puts " $e} { puts " blood" }
- puts "\">$ds"
+ puts "\">"
+
+ if {[llength $elist] > 0} {
+ lassign [lindex $elist 0] service_id start end event_id
+ if {$start == $s} {
+ puts "
+ $ds"
+ } else {
+ puts $ds
+ }
+ } else {
+ puts $ds
+ }
+
if {$d > 0 && $n > $s && $n < $e} {
puts " "
set perc [expr [expr $n - $s] * 100 / $d]
@@ -109,8 +136,34 @@ proc eventrow {event {table TBL_RESERVATION}} {
src=/images/745_1_11_Video_1REC.png>"
puts [progressbar $perc]
}
- puts " | "
- puts "[clock format [$event get nduration] -format %T] | "
+
+ if {[llength $elist] > 1} {
+ puts "";
+ }
+
+ puts ""
+ puts "[clock format [$event get nduration] -format %H:%M]"
+ if {[llength $elist] > 1} {
+ puts " "
+ foreach e $elist {
+ lassign $e service_id start end event_id
+ if {$start == $s} continue
+ puts "[clock format $($end - $start) \
+ -format {%H:%M}] "
+ }
+ puts " ";
+ }
+
+ puts " | "
}
puts "[join [$event iconset] ""] | "
diff --git a/var/mongoose/html/sched/script.js b/var/mongoose/html/sched/script.js
index 84ed7ca..f7ad6c8 100755
--- a/var/mongoose/html/sched/script.js
+++ b/var/mongoose/html/sched/script.js
@@ -37,8 +37,8 @@ $('table.tablesorter thead th').filter('[class!=header]')
function docancel()
{
- var table = $('#dialogue').attr('table');
- var slot = $('#dialogue').attr('slot');
+ var table = $('#sdialogue').attr('table');
+ var slot = $('#sdialogue').attr('slot');
if (confirm('Really remove scheduled event?'))
{
@@ -46,7 +46,7 @@ function docancel()
'&table=' + table, function() {
window.location.reload(true);
});
- $('#dialogue').dialog('close');
+ $('#sdialogue').dialog('close');
}
}
@@ -57,14 +57,14 @@ var $buttons2 = $.extend(
{"Cancel Event": function() { docancel() }},
$buttons1);
-var $dialog = $('#dialogue').dialog({
+var $dialog = $('#sdialogue').dialog({
title: "Schedule Details",
modal: false, autoOpen: false,
height: 500, width: 700,
show: 'scale', hide: 'fade',
draggable: true, resizable: true,
buttons: $buttons2,
- close: function(e,u) { $('#dialogue').empty().html(
+ close: function(e,u) { $('#sdialogue').empty().html(
'
'); }
});
@@ -73,11 +73,11 @@ function schedpopup(e, o)
e.preventDefault();
var slot = o.attr('slot');
var table = o.attr('table');
- $('#dialogue').attr('slot', slot).attr('table', table);
+ $('#sdialogue').attr('slot', slot).attr('table', table);
var url = 'info.jim?slot=' + slot +
'&table=' + table;
- $('#dialogue').load(url);
+ $('#sdialogue').load(url);
$dialog.dialog('open');
}
$('a.schedule').click(function(e) { schedpopup(e, $(this)) });
diff --git a/var/mongoose/lib/epg.class b/var/mongoose/lib/epg.class
index 295184d..a59dbd1 100644
--- a/var/mongoose/lib/epg.class
+++ b/var/mongoose/lib/epg.class
@@ -419,7 +419,7 @@ proc {epg dbfetch} {mode args} {
lappend records [epg new $rec]
}
} msg]} {
- puts "No cached EPG data, try again later."
+ puts "No cached EPG data, try again later ($msg)."
}
return $records
}
diff --git a/var/mongoose/lib/epg_popup b/var/mongoose/lib/epg_popup
index dc0b4be..4dfdd16 100644
--- a/var/mongoose/lib/epg_popup
+++ b/var/mongoose/lib/epg_popup
@@ -65,7 +65,10 @@ $(document).ready(function() {
.attr('xe', o.attr('xe'));
$dialog.dialog('open');
}
- $('a.event').click(function(e) { epgpopup(e, $(this)) });
+ $('a.event').click(function(e) {
+ e.preventDefault();
+ epgpopup(e, $(this))
+ });
});
}
diff --git a/var/mongoose/lib/rsv.class b/var/mongoose/lib/rsv.class
index 516854f..d868ef3 100755
--- a/var/mongoose/lib/rsv.class
+++ b/var/mongoose/lib/rsv.class
@@ -60,7 +60,7 @@ rsv method aul {} {
for {set i 0} {$i < [string length $aulEventToRecordInfo]} {incr i 16} {
binary scan [string range $aulEventToRecordInfo $i $($i + 15)] \
iiii service start end event_id
- lappend aul [list $service $start $end $event_id]
+ catch {lappend aul [list $service $start $end $event_id]}
}
return $aul
}