aurweb/web/lib/routing.inc.php
Lukas Fleischer 45bd1b34f1 routing.inc.php: Add get_pkgbase_uri()
This will be used to create links to package base pages later. For now,
this just returns a link to the corresponding package page since a
package base currently only consists of a single package having the same
name as the base itself.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-04-05 12:21:36 +02:00

79 lines
1.5 KiB
PHP

<?php
$ROUTES = array(
'' => 'home.php',
'/index.php' => 'home.php',
'/packages' => 'packages.php',
'/register' => 'account.php',
'/account' => 'account.php',
'/accounts' => 'account.php',
'/login' => 'login.php',
'/logout' => 'logout.php',
'/passreset' => 'passreset.php',
'/rpc' => 'rpc.php',
'/rss' => 'rss.php',
'/submit' => 'pkgsubmit.php',
'/tu' => 'tu.php',
'/addvote' => 'addvote.php',
);
$PKG_PATH = '/packages';
$USER_PATH = '/account';
function get_route($path) {
global $ROUTES;
$path = rtrim($path, '/');
if (isset($ROUTES[$path])) {
return $ROUTES[$path];
} else {
return NULL;
}
}
function get_uri($path) {
global $USE_VIRTUAL_URLS;
global $ROUTES;
if ($USE_VIRTUAL_URLS) {
return $path;
} else {
return get_route($path);
}
}
function get_pkg_route() {
global $PKG_PATH;
return $PKG_PATH;
}
function get_pkg_uri($pkgname) {
global $USE_VIRTUAL_URLS;
global $PKG_PATH;
if ($USE_VIRTUAL_URLS) {
return $PKG_PATH . '/' . urlencode($pkgname) . '/';
} else {
return '/' . get_route($PKG_PATH) . '?N=' . urlencode($pkgname);
}
}
function get_pkgbase_uri($pkgbase_name) {
return get_pkg_uri($pkgbase_name);
}
function get_user_route() {
global $USER_PATH;
return $USER_PATH;
}
function get_user_uri($username) {
global $USE_VIRTUAL_URLS;
global $USER_PATH;
if ($USE_VIRTUAL_URLS) {
return $USER_PATH . '/' . urlencode($username) . '/';
} else {
return '/' . get_route($USER_PATH) . '?U=' . urlencode($username);
}
}