[aur-dev] [PATCH] Support for verbose page titles

Callan Barrett wizzomafizzo at gmail.com
Sat Jan 12 09:05:08 EST 2008


Adds support for more verbose page titles based on current
page and action by user and removes sort by options from
search form as they're obsolete by column links.

Signed-off-by: Callan Barrett <wizzomafizzo at gmail.com>
---
 web/html/account.php    |    2 +-
 web/html/index.php      |    5 +--
 web/html/packages.php   |   19 ++++++++++++-
 web/html/pkgsubmit.php  |    2 +-
 web/lib/aur.inc         |    4 ++-
 web/lib/pkgfuncs.inc    |   71 ++++++++++++-----------------------------------
 web/template/header.php |    2 +-
 7 files changed, 43 insertions(+), 62 deletions(-)

diff --git a/web/html/account.php b/web/html/account.php
index 9caada4..9c1eb31 100644
--- a/web/html/account.php
+++ b/web/html/account.php
@@ -8,7 +8,7 @@ include("pkgfuncs_po.inc"); # Add to handle the i18n of My Packages
 include("account_po.inc");  # use some form of this for i18n support
 set_lang();                 # this sets up the visitor's language
 check_sid();                # see if they're still logged in
-html_header();              # print out the HTML header
+html_header(__("Accounts"));              # print out the HTML header
 
 
 # Main page processing here
diff --git a/web/html/index.php b/web/html/index.php
index 99cccbc..617b16a 100644
--- a/web/html/index.php
+++ b/web/html/index.php
@@ -7,10 +7,7 @@ include("pkgfuncs_po.inc"); # Add to handle the i18n of My Packages
 include("aur.inc");
 set_lang();
 check_sid();
-
-# Any cookies have been sent, can now display HTML
-#
-html_header();
+html_header(__("Home"));
 
 # Big Top Level Table (Table 1)
 echo "<div class=\"pgbox\">\n";
diff --git a/web/html/packages.php b/web/html/packages.php
index bc398ee..1600e41 100644
--- a/web/html/packages.php
+++ b/web/html/packages.php
@@ -7,7 +7,24 @@ include("pkgfuncs.inc");    # package specific functions
 include("search_po.inc");   # use some form of this for i18n support
 set_lang();                 # this sets up the visitor's language
 check_sid();                # see if they're still logged in
-html_header();              # print out the HTML header
+
+# set the title to something useful depending on
+# what "page" we're on
+#
+if (isset($_GET['ID'])) {
+	$id = pkgname_from_id($_GET['ID']);
+	if (!empty($id)) {
+		$title = $id;
+	}
+}	else if (isset($_GET['K'])) {
+	$title = "Search: " . $_GET['K'];
+} else if (isset($_GET['do_MyPackages'])) {
+	$title = __("My Packages");
+} else {
+	$title = __("Packages");
+}
+
+html_header($title);              # print out the HTML header
 
 # enable debugging
 #
diff --git a/web/html/pkgsubmit.php b/web/html/pkgsubmit.php
index 638654b..801348b 100644
--- a/web/html/pkgsubmit.php
+++ b/web/html/pkgsubmit.php
@@ -8,7 +8,7 @@ include("pkgfuncs.inc");    # package functions
 include("config.inc");      # configuration file with dir locations
 set_lang();                 # this sets up the visitor's language
 check_sid();                # see if they're still logged in
-html_header();              # print out the HTML header
+html_header("Submit");              # print out the HTML header
 echo "<div class=\"pgbox\">\n";
 echo "  <div class=\"pgboxtitle\"><span class=\"f3\">".__("Submit")."</span></div>\n";
 echo "  <div class=\"pgboxbody\">\n";
diff --git a/web/lib/aur.inc b/web/lib/aur.inc
index c18365c..a9095cd 100644
--- a/web/lib/aur.inc
+++ b/web/lib/aur.inc
@@ -334,7 +334,7 @@ function set_lang() {
 
 # common header
 #
-function html_header() {
+function html_header($title="") {
 	global $_SERVER;
 	global $_COOKIE;
 	global $_POST;
@@ -405,6 +405,8 @@ function html_header() {
 		}
 	}
 
+	$title = htmlspecialchars($title, ENT_QUOTES);
+
 	include('header.php');
 	return;
 }
diff --git a/web/lib/pkgfuncs.inc b/web/lib/pkgfuncs.inc
index 46bc522..d4f3ae7 100644
--- a/web/lib/pkgfuncs.inc
+++ b/web/lib/pkgfuncs.inc
@@ -250,6 +250,23 @@ function pkgnotify_from_sid($sid="") {
 	return $pkgs;
 }
 
+# get name of package based on pkgid
+#
+function pkgname_from_id($id="") {
+	if (!empty($id)) {
+		$dbh = db_connect();
+		$id = intval($id);
+		$q = "SELECT Name FROM Packages WHERE ID = " . mysql_real_escape_string($id);
+		$result = db_query($q, $dbh);
+		if (mysql_num_rows($result) > 0) {
+			$id = mysql_result($result, 0);
+		} else {
+			$id = "";
+		}
+	}
+	return $id;
+}
+
 # display package details
 #
 function package_details($id=0, $SID="") {
@@ -638,7 +655,7 @@ function pkg_search_page($SID="") {
 
 	# The search form
 	#
-	print "<form action='/packages.php' method='post'>\n";
+	print "<form action='/packages.php' method='get'>\n";
 	print "<input type='hidden' name='O' value='".$O."'>\n";
 
 	print "<center>\n";
@@ -714,58 +731,6 @@ function pkg_search_page($SID="") {
     print "  </select>\n";
     print "</td>\n";
     
-    /* Sort by */
-	
-    print "<td align='right'>\n";
-	print "  <span class='f5'><span class='blue'>".__("Sort by");
-	print "</span></span><br />\n";
-	print "  <select name='SB'>\n";
-
-	print "  <option value=n";
-	$_REQUEST["SB"] == "n" ? print " selected> " : print "> ";
-	print __("Name")."</option>\n";
-
-	print "  <option value=c";
-	$_REQUEST["SB"] == "c" ? print " selected> " : print "> ";
-	print __("Category")."</option>\n";
-
-	print "  <option value=l";
-	$_REQUEST["SB"] == "l" ? print " selected> " : print "> ";
-	print __("Location")."</option>\n";
-
-	print "  <option value=v";
-	$_REQUEST["SB"] == "v" ? print " selected> " : print "> ";
-	print __("Votes")."</option>\n";
-
-	print "  <option value=m";
-	$_REQUEST["SB"] == "m" ? print " selected> " : print "> ";
-	print __("Maintainer")."</option>\n";
-
-	print "  <option value=a";
-	$_REQUEST["SB"] == "a" ? print " selected> " : print "> ";
-	print __("Age")."</option>\n";
-
-	print "  </select>\n";
-	print "</td>\n";
-
-	print "<td align='right'>\n";
-	print "  <span class='f5'><span class='blue'>".__("Sort order");
-	print "</span></span><br />\n";
-	print "  <select name='SO'>\n";
-
-	print "  <option value=a";
-	$_REQUEST["SO"] == "a" ? print " selected> " : print "> ";
-	print __("Ascending")."</option>\n";
-
-	print "  <option value=d";
-	$_REQUEST["SO"] == "d" ? print " selected> " : print "> ";
-	print __("Descending")."</option>\n";
-
-	print "  </select>\n";
-	print "</td>\n";
-
-    /* End of Sort by */
-    
 	print "<td align='right'>\n";
 	print "  <span class='f5'><span class='blue'>".__("Per page");
 	print "</span></span><br />\n";
diff --git a/web/template/header.php b/web/template/header.php
index 8e02211..b27015a 100644
--- a/web/template/header.php
+++ b/web/template/header.php
@@ -4,7 +4,7 @@
 	<html xmlns="http://www.w3.org/1999/xhtml"
 	xml:lang="<?php print "$LANG\" lang=\"$LANG"; ?>">
 	<head>
-	<title>AUR (<?php print $LANG; ?>)</title>
+  <title>AUR (<?php print $LANG; ?>)<?php if ($title != "") { print " - " . $title; } ?></title>
 	<link rel='stylesheet' type='text/css' href='/css/fonts.css' />
 	<link rel='stylesheet' type='text/css' href='/css/containers.css' />
 	<link rel='stylesheet' type='text/css' href='/css/arch.css' />
-- 
1.5.3.7





More information about the aur-dev mailing list