\n"; print "\n"; print "\t\n"; print "\tspeedie-aur\n"; print "\t\t
\n"; print "\n"; print "\n"; print "\t
\n"; } function printFoot() { print "\t
\n"; print "\n"; print "\t\n"; print "\n"; } function main() { $request = isset($_REQUEST['action']) ? $_REQUEST['action'] : 'view'; $query = isset($_REQUEST['q']) ? $_REQUEST['q'] : ''; $self = $_SERVER['PHP_SELF']; $packageCount = 0; $packageFiles = array(); $packageNames = array(); $packageDescs = array(); printHead(); foreach(scandir(".") as $f) { $path = pathinfo($f); if ($path['extension'] == "PKGBUILD") { $packageCount++; $packageFiles[$packageCount] = $f; $packageNames[$packageCount] = getShellString($f, "pkgname"); $packageDescs[$packageCount] = getShellString($f, "pkgdesc"); } } // Return results if ($request == "search" && $query != '') { $validPkgs = 0; $matches = array(); $matchingDescs = array(); $matchingUrls = array(); for ($i = 1; $i < $packageCount+1; $i++) { if (preg_match("/$query/i", $packageNames[$i]) == 0) { continue; } $matches[$validPkgs] = $packageNames[$i]; $matchingDescs[$validPkgs] = $packageDescs[$i]; $matchingUrls[$validPkgs] = $packageUrls[$i]; $validPkgs++; } print "\t\t\t

$validPkgs packages found matching '$query'..

\n"; print "\t\t\t\t\n"; } else if ($request == "view" && $query == '') { print "\t\t\t

Total number of packages: $packageCount

\n"; print "\t\t\t\t
\n"; } else if ($request == "view" && $query != '') { $packageCount = 0; $packageVersions = array(); $packageUrls = array(); $packageDepends = array(); $packageFilenames = array(); $packageSizes = array(); $packageGPG = array(); $packageMD5 = array(); $packageSHA256 = array(); $packageSource = array(); foreach(scandir(".") as $f) { $path = pathinfo($f); if ($path['extension'] == "PKGBUILD") { $packageCount++; $packageFilenames[$packageCount] = getShellString($f, "filename"); $packageVersions[$packageCount] = getShellString($f, "pkgver"); $packageUrls[$packageCount] = getShellString($f, "url"); $packageDepends[$packageCount] = getShellString($f, "depends"); $packageSizes[$packageCount] = getShellString($f, "size"); $packageGPG[$packageCount] = getShellString($f, "gpg"); $packageMD5[$packageCount] = getShellString($f, "md5"); $packageSHA256[$packageCount] = getShellString($f, "sha256"); $packageSources[$packageCount] = getShellString($f, "source"); } } for ($i = 1; $i < $packageCount+1; $i++) { if ($query != $packageNames[$i]) { continue; } $pkgName = $packageNames[$i]; $pkgDesc = $packageDescs[$i]; $pkgUrl = $packageUrls[$i]; $pkgVer = $packageVersions[$i]; $pkgSize = $packageSizes[$i]; $pkgDeps = $packageDepends[$i]; $pkgFilename = $packageFilenames[$i]; $pkgFile = $packageFiles[$i]; $pkgGPG = $packageGPG[$i]; $pkgMD5 = $packageMD5[$i]; $pkgSHA256 = $packageSHA256[$i]; $pkgSource = $packageSources[$i]; print "\t\t

$pkgName

\n"; print "\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\t\n"; print "\t\t\t\t\n"; print "\t\t\t
Description$pkgDesc
Version$pkgVer
URL$pkgUrl
Dependencies$pkgDeps
Size$pkgSize
Installationpacman -S $pkgName
Filename$pkgFilename
GPG$pkgGPG
MD5$pkgMD5
SHA256$pkgSHA256
Source$pkgSource
PKGBUILD
\n"; } } printFoot(); } main();