110 lines
2.5 KiB
PHP
110 lines
2.5 KiB
PHP
<html>
|
|
<head>
|
|
<style>
|
|
|
|
div.container { display: flex; flex-flow: row wrap; justify-content: center; }
|
|
div.item { width: 99px; height: 99px; padding: 20px; }
|
|
div.item { font-family: Helvetica; font-size: 11px; }
|
|
img { width: 64px; height: 64px; }
|
|
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<?
|
|
|
|
////////////////////////////////////////////////
|
|
// Yuba RTC Browser
|
|
////////////////////////////////////////////////
|
|
|
|
// Functions
|
|
|
|
function findicon($filename) {
|
|
$ext = pathinfo($filename)['extension'];
|
|
if (!$ext) {
|
|
$good = "icons/directory.png";
|
|
} else {
|
|
$good = "icons/null.png";
|
|
}
|
|
foreach (glob("icons/*.png") as $file) {
|
|
if (pathinfo($file)['filename'] == $ext) {
|
|
$good = $file;
|
|
}
|
|
}
|
|
return $good;
|
|
}
|
|
|
|
////////////////////////////////////////////////
|
|
|
|
$db_file = $_GET['db'];
|
|
|
|
if ($db_file) {
|
|
|
|
// Show a view
|
|
|
|
if (!is_readable($db_file)) { echo "can't read db file"; die; }
|
|
|
|
echo "<a href='?db='>index</a>";
|
|
|
|
echo "<hr>";
|
|
|
|
$dbo = new PDO("sqlite:".$db_file);
|
|
$dbo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
|
|
|
|
$array = $dbo->query("SELECT children FROM family WHERE (rowid=2)")->fetch()['children'];
|
|
|
|
$children = unserialize($array);
|
|
|
|
//echo "<pre>"; print_r($array); echo "</pre>";
|
|
|
|
|
|
echo "<hr>";
|
|
|
|
echo "\n<div class='container'>";
|
|
|
|
foreach ($children as $key => $item) {
|
|
|
|
$row_a = $dbo->query("SELECT * FROM files WHERE (pid='".$item."')")->fetchAll()[0];
|
|
|
|
//$row_b = $dbo->query("SELECT * FROM mdls WHERE (pid='".$item."')")->fetchAll()[0];
|
|
//$row_c = $dbo->query("SELECT * FROM milk WHERE (pid='".$item."')")->fetchAll()[0];
|
|
|
|
$icon = "<img src='".findicon($row_a['Filename'])."'>";
|
|
|
|
echo "\n<div class='item'>".$icon."<br>".htmlentities($row_a['Filename'])."</div>";
|
|
|
|
echo "<br>";
|
|
|
|
}
|
|
|
|
echo "\n</div>";
|
|
|
|
} else {
|
|
|
|
// DB List
|
|
|
|
$bundles = glob("skim/*.bundle");
|
|
foreach ($bundles as $bundle) {
|
|
echo "<h2>".pathinfo($bundle)['filename']."</h2>";
|
|
$dbs = glob($bundle."/*.sqlite3");
|
|
foreach ($dbs as $db_file) {
|
|
if (!strpos($db_file,"pool")) {
|
|
echo "<a href='?db=".$db_file."'>".pathinfo($db_file)['filename']."</a> ";
|
|
$dbo = new PDO("sqlite:".$db_file);
|
|
echo $dbo->query("SELECT type FROM _skim WHERE (rowid=1)")->fetch()['type'].", ";
|
|
echo $dbo->query("SELECT passed_total FROM _skim WHERE (rowid=1)")->fetch()['passed_total']." files, ";
|
|
echo $dbo->query("SELECT status FROM _skim WHERE (rowid=1)")->fetch()['status'];
|
|
echo "<br>";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
echo "<hr><br>".round($time = microtime(true)-$_SERVER["REQUEST_TIME_FLOAT"],2)." seconds";
|
|
|
|
?>
|
|
|
|
</body>
|
|
</html>
|