#!/mod/bin/jimsh package require cgi package require sqlite3 source /mod/webif/lib/setup require altrow set databases [glob /var/lib/humaxtv/*.db] lappend databases {*}[glob /mod/etc/*.db] lappend databases "/mnt/hd2/dms_cds.db" header set ftab [cgi_get tab] set fdb [cgi_get db] if {$fdb != 0} { puts "<h1><a href=/cgi-bin/db.jim>Remove filters</a></h1>" } proc db_info {db_file} { global fdb ftab if {$fdb != 0 && [file tail $db_file] ne $fdb} { return } if {![file exists $db_file]} { return } set db [sqlite3.open $db_file] set tables [$db query { select name from sqlite_master where type='table' order by name }] puts "<h1><a href=/cgi-bin/db.jim?db=[file tail $db_file]> $db_file</a></h1>" foreach table $tables { set table [lindex $table 1] if {$ftab != 0 && $ftab ne $table} { continue } set columns [$db query "pragma table_info($table)"] set datas [$db query "SELECT * FROM $table order by 1"] puts "<h2><a href=/cgi-bin/db.jim?db=[file tail $db_file]&tab=$table>$table</a></h2>" puts "<table class=borders>" puts " <tr>" foreach column $columns { puts " <th>[lindex $column 3]</th>" } puts " </tr>" foreach data $datas { altrow for {set i 1} {$i < [llength $data]} {incr i 2} { puts " <td>[lindex $data $i]</td>" } puts " </tr>" } puts "</table>" } $db close } if {$fdb == 0} { puts "Please choose database to view:<ul>" foreach db $databases { puts "<li><a href=$::env(REQUEST_URI)?db=[file tail $db]> $db</a></li>" } puts "</ul>" } else { foreach db $databases { db_info $db } } footer