webif/var/mongoose/html/sched/sched.jim

198 lines
4.5 KiB
Plaintext
Raw Normal View History

#!/mod/bin/jimsh
package require cgi
source /mod/var/mongoose/lib/setup
require altrow rsv.class progressbar epg.class system.class
puts "Content-Type: text/html"
puts ""
header
puts {
<script type=text/javascript src=/js/jquery.tablesorter.js></script>
<link type=text/css href=/css/tsort.css rel=Stylesheet />
<link href=/css/jquery.contextMenu.css rel=stylesheet type=text/css />
<script type=text/javascript src=/js/jquery.contextMenu.js></script>
<script type=text/javascript src=/js/jquery.form.js></script>
<script type=text/javascript src=script.js></script>
<div id=dialogue></div>
}
proc eventheader {{table TBL_RESERVATION} note} {
puts {
<fieldset style="display: inline; padding: 1em">
<legend>
}
puts "<h3>$note</h3>"
puts {
</legend>
<table class="borders tablesorter">
<thead>
<tr>
}
if {$table eq "pending" } { puts "<th>Action</th>" }
puts {
<th></th>
<th>&nbsp;</th><th>Channel</th>
<th>Programme</th>
<th>Start Time</th>
<th>Duration</th>
<th>Mode</th>
</tr>
</thead>
<tbody>
}
}
proc eventrow {event {table TBL_RESERVATION}} {
set name [$event name]
set attrs "table=$table sid=[$event get ulslot] \
reckind=[$event get ucRecKind] rsvtype=[$event get ersvtype] \
ar=[expr ! [$event padded]]"
altrow $attrs
set rsvicon [$event icon]
set RKIcon [$event RKIcon]
if {[$event get ucRecKind] == 4} {
set series 1
} else {
set series 0
}
if {$rsvicon ne ""} {
set rsvicon "<img src='/images/$rsvicon' height=20>"
if {[$event get ersvtype] == 3} {
if {[$event padded]} {
set padding "<- [expr [$event get ulPreOffset] / 60], [expr [$event get ulPostOffset] / 60] ->"
append rsvicon \
"<img src=/img/pad.png height=20
title=\"$padding\" alt=\"$padding\">"
} else {
append rsvicon \
"<img src=/img/ar.png height=20>"
}
}
}
if {$RKIcon ne ""} {
set RKIcon "<img src='/images/$RKIcon' height=20>"
}
if {$table eq "pending"} {
switch [$event get action] {
0 { set icon "add" }
1 { set icon "close" }
2 { set icon "ar" }
3 { set icon "pad" }
4 { set icon "folder" }
}
puts "<td align=center>
<img class=va width=30 src=/img/$icon.png></td>"
}
puts "<td>[$event get ulslot]</td>"
if {[$event get usLcn] ne ""} {
puts "
<td>
[epg channelicon [$event channel_name] 50]
</td>
<td nowrap>[$event get usLcn]<br>
[$event channel_name]</td>
"
} else {
puts "<td>&nbsp;<br><br></td><td>&nbsp;</td>"
}
puts "<td nowrap>
<a slot=[$event get ulslot] table=$table
href=# class=schedule>$name</a>"
if {
([$event get ucRecKind] == 4 && $name ne [$event folder]) ||
([$event get ucRecKind] == 1 && [$event folder] ne "")
} {
puts "<br><span class=also>&nbsp;(Folder: [$event folder])</span>"
}
puts "</td>"
set s [$event get nsttime]
set d [$event get nduration]
set e $($s + $d)
set n [clock seconds]
set ds "[clock format $s -format "%a %d %b %Y"]<br>
[clock format $s -format "%H:%M %Z"]"
if { $n > $e && [$event get ersvtype] <= 3} {
puts "<td nowrap class=va
alt=\"$ds\" title=\"$ds\">
--- -- --- ----<br>--:--"
puts "</td><td>--:--:--</td>"
} else {
puts "<td nowrap class=\"va"
if {$n > $e} { puts " blood" }
puts "\">$ds"
if {$d > 0 && $n > $s && $n < $e} {
puts "<br>"
set perc [expr [expr $n - $s] * 100 / $d]
puts "<img class=va
src=/images/745_1_11_Video_1REC.png>"
puts [progressbar $perc]
}
puts "</td><td>"
puts "[clock format [$event get nduration] -format %T]</td>"
}
puts "<td nowrap>$rsvicon $RKIcon</td>"
puts "<td><a href=# class=smenu sid=[$event get ulslot]>
<img border=0 src=/img/more_btn.gif></a></td>"
puts "</tr>"
}
proc eventfooter {} {
puts "</tbody></table></fieldset>"
}
set events [rsv list pending]
if {[llength $events] > 0} {
eventheader pending "Pending Scheduled Events"
foreach event $events {eventrow $event pending}
eventfooter
puts {
<small>
<button onclick="window.location='/cgi-bin/db.jim?db=rsvp.db&tab=pending';">
Raw database view
</button>
</small>
}
}
set events [rsv list]
eventheader "live" "Scheduled Events"
foreach event $events {eventrow $event}
eventfooter
puts {
<br>
<small>
<button onclick="window.location='/backup.shtml';">
Backup/Restore Scheduled Recordings/Events
</button>
<button onclick="window.location='/cgi-bin/db.jim?db=rsv.db&tab=TBL_RESERVATION';">
Raw database view
</button>
<script type=text/javascript>
$('button').button();
</script>
}
source assets.jim
footer