From 000c3f754e174e5e0e8db106cceae7d9d7d1adb3 Mon Sep 17 00:00:00 2001 From: CMDR furrycat Date: Mon, 15 Feb 2016 06:12:22 -0500 Subject: [PATCH] Build URI a bit more elegantly. --- lib/race.php | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/lib/race.php b/lib/race.php index e273d1f..4c35b4a 100644 --- a/lib/race.php +++ b/lib/race.php @@ -702,6 +702,19 @@ echo "\n"; } + function build_args($params, $key, $value, $description) { + $uri = preg_replace('/&args=[^&]+/', '', $_SERVER['REQUEST_URI']); + $uri = " $v) { + if ($k == $key) $args[] = "$key:$value"; + else $args[] = "$k:$v"; + } + $uri .= implode("+", $args); + $uri .= "\">$description"; + return $uri; + } + function module_race($action, $args) { if ($_POST['add_race']) { if (add_race($_POST["name"], $_POST["allotted_time"])) unset($_POST); @@ -777,13 +790,7 @@ foreach (array_keys($methods) as $method) { $Method = preg_replace('/_/', ' ', ucfirst($method)); if ($method == $sort) $uri = " $Method"; - else { - $uri = preg_replace('/&args=[^&]+/', '', $_SERVER['REQUEST_URI']); - /* XXX build_http_str */ - $uri = " $Method"; - } + else $uri = build_args($params, "sort", $method, $Method); $uri_list[] = $uri; } echo "

Sort by: " . implode(" // ", $uri_list) . "

\n"; @@ -793,13 +800,7 @@ foreach (array_keys($formats) as $fmt) { $Fmt = ucfirst($formats[$fmt][1]); if ($fmt == $format) $uri = " $Fmt"; - else { - $uri = preg_replace('/&args=[^&]+/', '', $_SERVER['REQUEST_URI']); - $uri = " $Fmt"; - } + else $uri = build_args($params, "format", $fmt, $Fmt); $uri_list[] = $uri; } echo "

Show: " . implode(" // ", $uri_list) . "

\n"; -- 2.7.4