From b46cee71f79795f7300c275f2cfea7fca27a752d Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Tue, 7 Feb 2017 17:49:10 +0100 Subject: Web interface --- frontend/list.php | 40 ++++++++++++---------------------------- 1 file changed, 12 insertions(+), 28 deletions(-) (limited to 'frontend/list.php') diff --git a/frontend/list.php b/frontend/list.php index 24340a8..39b727a 100644 --- a/frontend/list.php +++ b/frontend/list.php @@ -3,39 +3,23 @@ require_once('conf.php'); $repo = []; -$stmt = $db->prepare( - 'SELECT `package`.`id`,`package`.`name`,`url`,`desc`,`author`.`name` ' . - 'FROM `package`,`author` ' . - 'WHERE `package`.`author_id` = `author`.`id`'); -$stmt->execute(); -$stmt->bind_result($id, $name, $url, $desc, $author); -while ($stmt->fetch() === true) { - $repo[] = [ - 'id' => $id, - 'name' => $name, - 'author' => $author, - 'desc' => $desc, - 'url' => $url, +foreach (Package::search($_pdo) as $pkg) { + $new_pkg = [ + 'name' => $pkg->name, + 'author' => $pkg->getAuthor()->name, + 'desc' => $pkg->desc, + 'url' => $pkg->url, 'versions' => [] ]; -} -$stmt->close(); -$stmt = $db->prepare( - 'SELECT `major`,`minor`,`revision`,`depends` ' . - 'FROM `version` WHERE `package_id`=?'); -$stmt->bind_param('i', $pkg); -$stmt->bind_result($maj, $min, $rev, $deps); -for ($i = 0; $i < count($repo); $i++) { - $pkg = $repo[$i]['id']; - $stmt->execute(); - while ($stmt->fetch() === true) { - $repo[$i]['versions'][] = [ - 'version' => [$maj, $min, $rev], - 'depends' => json_decode($deps) + foreach ($pkg->getVersions() as $version) { + $new_pkg['version'][] = [ + 'version' => [$version->major, $version->minor, $version->revision], + 'depends' => json_decode($version->depends) ]; } - unset($repo[$i]['id']); + + $repo[] = $new_pkg; } print(json_encode($repo)); -- cgit v1.2.3