[aur-dev] [PATCH 1/5] Add database wrapper class and new connection method

canyonknight canyonknight at gmail.com
Sun Feb 3 11:26:28 EST 2013


Uses the Singleton pattern to ensure all queries use the same
database connection that is released upon script completion.

All database connections should now be called with DB::connect() and
not db_connect().

Signed-off-by: canyonknight <canyonknight at gmail.com>
---
 web/html/account.php       |  2 +-
 web/html/home.php          |  2 +-
 web/html/logout.php        |  2 +-
 web/html/pkgsubmit.php     |  2 +-
 web/lib/DB.class.php       | 28 ++++++++++++++++++
 web/lib/acctfuncs.inc.php  | 48 +++++++++++++++----------------
 web/lib/aur.inc.php        | 49 +++++++++++--------------------
 web/lib/aurjson.class.php  |  2 +-
 web/lib/pkgfuncs.inc.php   | 72 +++++++++++++++++++++++-----------------------
 web/lib/translator.inc.php |  2 +-
 10 files changed, 110 insertions(+), 99 deletions(-)
 create mode 100644 web/lib/DB.class.php

diff --git a/web/html/account.php b/web/html/account.php
index 2133734..7cd0263 100644
--- a/web/html/account.php
+++ b/web/html/account.php
@@ -20,7 +20,7 @@ $action = in_request("Action");
 if (isset($_COOKIE["AURSID"])) {
 	# visitor is logged in
 	#
-	$dbh = db_connect();
+	$dbh = DB::connect();
 	$atype = account_from_sid($_COOKIE["AURSID"]);
 
 	if ($action == "SearchAccounts") {
diff --git a/web/html/home.php b/web/html/home.php
index 0b51d55..a10ebf0 100644
--- a/web/html/home.php
+++ b/web/html/home.php
@@ -10,7 +10,7 @@ include_once('stats.inc.php');
 
 html_header( __("Home") );
 
-$dbh = db_connect();
+$dbh = DB::connect();
 
 ?>
 
diff --git a/web/html/logout.php b/web/html/logout.php
index 3d059e7..2d8bebc 100644
--- a/web/html/logout.php
+++ b/web/html/logout.php
@@ -11,7 +11,7 @@ include_once("acctfuncs.inc.php");         # access AUR common functions
 #
 if (isset($_COOKIE["AURSID"])) {
 	if (!isset($dbh)) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	delete_session_id($_COOKIE["AURSID"], $dbh);
 	# setting expiration to 1 means '1 second after midnight January 1, 1970'
diff --git a/web/html/pkgsubmit.php b/web/html/pkgsubmit.php
index 5dd58af..78fceac 100644
--- a/web/html/pkgsubmit.php
+++ b/web/html/pkgsubmit.php
@@ -356,7 +356,7 @@ if ($uid):
 
 		# Update the backend database
 		if (!$error) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 			begin_atomic_commit($dbh);
 
 			$pdata = pkgdetails_by_pkgname($new_pkgbuild['pkgname'], $dbh);
diff --git a/web/lib/DB.class.php b/web/lib/DB.class.php
new file mode 100644
index 0000000..0975989
--- /dev/null
+++ b/web/lib/DB.class.php
@@ -0,0 +1,28 @@
+<?php
+
+class DB {
+
+	/**
+	 * A database object
+	 */
+	private static $dbh = null;
+
+	/**
+	 * Return an already existing database object or newly instantiated object
+	 *
+	 * @return \PDO A database connection using PDO
+	 */
+	public static function connect() {
+		if (self::$dbh === null) {
+			try {
+				self::$dbh = new PDO(AUR_db_DSN_prefix . ":" . AUR_db_host
+					. ";dbname=" . AUR_db_name, AUR_db_user, AUR_db_pass);
+				self::$dbh->exec("SET NAMES 'utf8' COLLATE 'utf8_general_ci';");
+			} catch (PDOException $e) {
+				die('Error - Could not connect to AUR database');
+			}
+		}
+
+		return self::$dbh;
+	}
+}
diff --git a/web/lib/acctfuncs.inc.php b/web/lib/acctfuncs.inc.php
index 3759c63..1e25f62 100644
--- a/web/lib/acctfuncs.inc.php
+++ b/web/lib/acctfuncs.inc.php
@@ -95,7 +95,7 @@ function process_account_form($UTYPE,$TYPE,$A,$U="",$T="",$S="",$E="",
 	global $SUPPORTED_LANGS;
 
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	if(isset($_COOKIE['AURSID'])) {
@@ -301,7 +301,7 @@ function search_results_page($UTYPE,$O=0,$SB="",$U="",$T="",
 	$search_vars = array();
 
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT Users.*, AccountTypes.AccountType ";
@@ -367,7 +367,7 @@ function search_results_page($UTYPE,$O=0,$SB="",$U="",$T="",
 	$q.= "LIMIT " . $HITS_PER_PAGE . " OFFSET " . $OFFSET;
 
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$result = $dbh->query($q);
@@ -398,7 +398,7 @@ function try_login($dbh=NULL) {
 
 	if ( isset($_REQUEST['user']) || isset($_REQUEST['passwd']) ) {
 		if (!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$userID = valid_user($_REQUEST['user'], $dbh);
 
@@ -522,7 +522,7 @@ function valid_user($user, $dbh=NULL) {
 	/*	if ( $user = valid_username($user) ) { */
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	if ( $user ) {
@@ -549,7 +549,7 @@ function valid_user($user, $dbh=NULL) {
  */
 function open_user_proposals($user, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT * FROM TU_VoteInfo WHERE User = " . $dbh->quote($user) . " ";
 	$q.= "AND End > UNIX_TIMESTAMP()";
@@ -575,7 +575,7 @@ function open_user_proposals($user, $dbh=NULL) {
  */
 function add_tu_proposal($agenda, $user, $votelength, $submitteruid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "INSERT INTO TU_VoteInfo (Agenda, User, Submitted, End, SubmitterID) VALUES ";
@@ -596,7 +596,7 @@ function add_tu_proposal($agenda, $user, $votelength, $submitteruid, $dbh=NULL)
  */
 function create_resetkey($resetkey, $uid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "UPDATE Users ";
 	$q.= "SET ResetKey = '" . $resetkey . "' ";
@@ -617,7 +617,7 @@ function create_resetkey($resetkey, $uid, $dbh=NULL) {
  */
 function password_reset($hash, $salt, $resetkey, $email, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "UPDATE Users ";
 	$q.= "SET Passwd = '$hash', ";
@@ -662,7 +662,7 @@ function good_passwd($passwd) {
  */
 function valid_passwd($userID, $passwd, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	if ( strlen($passwd) > 0 ) {
 		# get salt for this user
@@ -724,7 +724,7 @@ function valid_pgp_fingerprint($fingerprint) {
  */
 function user_suspended($id, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	if (!$id) {
 		return false;
@@ -750,7 +750,7 @@ function user_suspended($id, $dbh=NULL) {
  */
 function user_delete($id, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "DELETE FROM Users WHERE ID = " . $id;
 	$dbh->query($q);
@@ -767,7 +767,7 @@ function user_delete($id, $dbh=NULL) {
  */
 function user_is_privileged($id, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT AccountTypeID FROM Users WHERE ID = " . $id;
 	$result = $dbh->query($q);
@@ -791,7 +791,7 @@ function user_is_privileged($id, $dbh=NULL) {
  */
 function delete_session_id($sid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "DELETE FROM Sessions WHERE SessionID = " . $dbh->quote($sid);
@@ -808,7 +808,7 @@ function delete_session_id($sid, $dbh=NULL) {
  */
 function delete_user_sessions($uid, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "DELETE FROM Sessions WHERE UsersID = " . intval($uid);
@@ -827,7 +827,7 @@ function clear_expired_sessions($dbh=NULL) {
 	global $LOGIN_TIMEOUT;
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "DELETE FROM Sessions WHERE LastUpdateTS < (UNIX_TIMESTAMP() - $LOGIN_TIMEOUT)";
@@ -847,7 +847,7 @@ function clear_expired_sessions($dbh=NULL) {
  */
 function account_details($uid, $username, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT Users.*, AccountTypes.AccountType ";
 	$q.= "FROM Users, AccountTypes ";
@@ -877,7 +877,7 @@ function account_details($uid, $username, $dbh=NULL) {
  */
 function tu_voted($voteid, $uid, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT COUNT(*) FROM TU_Votes ";
@@ -901,7 +901,7 @@ function tu_voted($voteid, $uid, $dbh=NULL) {
  */
 function current_proposal_list($order, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT * FROM TU_VoteInfo WHERE End > " . time() . " ORDER BY Submitted " . $order;
@@ -926,7 +926,7 @@ function current_proposal_list($order, $dbh=NULL) {
  */
 function past_proposal_list($order, $lim, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT * FROM TU_VoteInfo WHERE End < " . time() . " ORDER BY Submitted " . $order . $lim;
@@ -949,7 +949,7 @@ function past_proposal_list($order, $lim, $dbh=NULL) {
  */
 function proposal_count($dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT COUNT(*) FROM TU_VoteInfo";
@@ -969,7 +969,7 @@ function proposal_count($dbh=NULL) {
  */
 function vote_details($voteid, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT * FROM TU_VoteInfo ";
@@ -991,7 +991,7 @@ function vote_details($voteid, $dbh=NULL) {
  */
 function voter_list($voteid, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$whovoted = array();
@@ -1024,7 +1024,7 @@ function voter_list($voteid, $dbh=NULL) {
  */
 function cast_proposal_vote($voteid, $uid, $vote, $newtotal, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "UPDATE TU_VoteInfo SET " . $vote . " = (" . $newtotal . ") WHERE ID = " . $voteid;
diff --git a/web/lib/aur.inc.php b/web/lib/aur.inc.php
index d8c5cb4..9a84ec7 100644
--- a/web/lib/aur.inc.php
+++ b/web/lib/aur.inc.php
@@ -11,6 +11,7 @@ include_once('translator.inc.php');
 set_lang();
 
 include_once("config.inc.php");
+include_once("DB.class.php");
 include_once("routing.inc.php");
 include_once("version.inc.php");
 include_once("acctfuncs.inc.php");
@@ -38,7 +39,7 @@ function check_sid($dbh=NULL) {
 		# the visitor is logged in, try and update the session
 		#
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT LastUpdateTS, UNIX_TIMESTAMP() FROM Sessions ";
 		$q.= "WHERE SessionID = " . $dbh->quote($_COOKIE["AURSID"]);
@@ -145,7 +146,7 @@ function username_from_id($id="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT Username FROM Users WHERE ID = " . $dbh->quote($id);
 	$result = $dbh->query($q);
@@ -170,7 +171,7 @@ function username_from_sid($sid="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT Username ";
 	$q.= "FROM Users, Sessions ";
@@ -198,7 +199,7 @@ function email_from_sid($sid="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT Email ";
 	$q.= "FROM Users, Sessions ";
@@ -226,7 +227,7 @@ function account_from_sid($sid="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT AccountType ";
 	$q.= "FROM Users, AccountTypes, Sessions ";
@@ -255,7 +256,7 @@ function uid_from_sid($sid="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT Users.ID ";
 	$q.= "FROM Users, Sessions ";
@@ -271,24 +272,6 @@ function uid_from_sid($sid="", $dbh=NULL) {
 }
 
 /**
- * Establish a connection with a database using PDO
- *
- * @return \PDO A database connection
- */
-function db_connect() {
-	try {
-		$dbh = new PDO(AUR_db_DSN_prefix . ":" . AUR_db_host . ";dbname=" . AUR_db_name, AUR_db_user, AUR_db_pass);
-	}
-	catch (PDOException $e) {
-		echo "Error - Could not connect to AUR database: " . $e->getMessage();
-	}
-
-	$dbh->exec("SET NAMES 'utf8' COLLATE 'utf8_general_ci';");
-
-	return $dbh;
-}
-
-/**
  * Common AUR header displayed on all pages
  *
  * @global string $LANG Language selected by the visitor
@@ -331,7 +314,7 @@ function html_footer($ver="") {
 function can_submit_pkg($name="", $sid="", $dbh=NULL) {
 	if (!$name || !$sid) {return 0;}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT MaintainerUID ";
 	$q.= "FROM Packages WHERE Name = " . $dbh->quote($name);
@@ -390,7 +373,7 @@ function uid_from_username($username="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT ID FROM Users WHERE Username = " . $dbh->quote($username);
 	$result = $dbh->query($q);
@@ -415,7 +398,7 @@ function uid_from_email($email="", $dbh=NULL) {
 		return "";
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT ID FROM Users WHERE Email = " . $dbh->quote($email);
 	$result = $dbh->query($q);
@@ -481,7 +464,7 @@ function mkurl($append) {
  */
 function get_salt($user_id, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT Salt FROM Users WHERE ID = " . $user_id;
 	$result = $dbh->query($q);
@@ -501,7 +484,7 @@ function get_salt($user_id, $dbh=NULL) {
  */
 function save_salt($user_id, $passwd, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$salt = generate_salt();
 	$hash = salted_hash($passwd, $salt);
@@ -571,7 +554,7 @@ function parse_comment($comment) {
  */
 function begin_atomic_commit($dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$dbh->beginTransaction();
 }
@@ -583,7 +566,7 @@ function begin_atomic_commit($dbh=NULL) {
  */
 function end_atomic_commit($dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$dbh->commit();
 }
@@ -598,7 +581,7 @@ function end_atomic_commit($dbh=NULL) {
  */
 function last_insert_id($dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	return $dbh->lastInsertId();
 }
@@ -613,7 +596,7 @@ function last_insert_id($dbh=NULL) {
  */
 function latest_pkgs($numpkgs, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT * FROM Packages ";
diff --git a/web/lib/aurjson.class.php b/web/lib/aurjson.class.php
index 616b783..b905275 100644
--- a/web/lib/aurjson.class.php
+++ b/web/lib/aurjson.class.php
@@ -52,7 +52,7 @@ class AurJSON {
         // do the routing
         if ( in_array($http_data['type'], self::$exposed_methods) ) {
             // set up db connection.
-            $this->dbh = db_connect();
+            $this->dbh = DB::connect();
 
             // ugh. this works. I hate you php.
             $json = call_user_func(array(&$this, $http_data['type']),
diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php
index 568ca3d..b29acb3 100644
--- a/web/lib/pkgfuncs.inc.php
+++ b/web/lib/pkgfuncs.inc.php
@@ -20,7 +20,7 @@ function canDeleteComment($comment_id=0, $atype="", $uid=0, $dbh=NULL) {
 		return TRUE;
 	}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT COUNT(ID) AS CNT ";
 	$q.= "FROM PackageComments ";
@@ -89,7 +89,7 @@ function canSubmitBlacklisted($atype = "") {
 function pkgCategories($dbh=NULL) {
 	$cats = array();
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT * FROM PackageCategories WHERE ID != 1 ";
 	$q.= "ORDER BY Category ASC";
@@ -113,7 +113,7 @@ function pkgCategories($dbh=NULL) {
 function pkgid_from_name($name="", $dbh=NULL) {
 	if (!$name) {return NULL;}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT ID FROM Packages ";
 	$q.= "WHERE Name = " . $dbh->quote($name);
@@ -138,7 +138,7 @@ function package_dependencies($pkgid, $dbh=NULL) {
 	$pkgid = intval($pkgid);
 	if ($pkgid > 0) {
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT pd.DepName, pd.DepCondition, p.ID FROM PackageDepends pd ";
 		$q.= "LEFT JOIN Packages p ON pd.DepName = p.Name ";
@@ -167,7 +167,7 @@ function package_required($name="", $dbh=NULL) {
 	$deps = array();
 	if ($name != "") {
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT DISTINCT p.Name, PackageID FROM PackageDepends pd ";
 		$q.= "JOIN Packages p ON pd.PackageID = p.ID ";
@@ -192,13 +192,13 @@ function package_required($name="", $dbh=NULL) {
  */
 function package_comments_count($pkgid, $dbh=NULL) {
 	if (!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$pkgid = intval($pkgid);
 	if ($pkgid > 0) {
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT COUNT(*) FROM PackageComments ";
 		$q.= "WHERE PackageID = " . $pkgid;
@@ -227,7 +227,7 @@ function package_comments($pkgid, $dbh=NULL) {
 	$pkgid = intval($pkgid);
 	if ($pkgid > 0) {
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT PackageComments.ID, UserName, UsersID, Comments, CommentTS ";
 		$q.= "FROM PackageComments, Users ";
@@ -268,7 +268,7 @@ function add_package_comment($pkgid, $uid, $comment, $dbh=NULL) {
 	global $AUR_LOCATION;
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "INSERT INTO PackageComments ";
@@ -326,7 +326,7 @@ function package_sources($pkgid, $dbh=NULL) {
 	$pkgid = intval($pkgid);
 	if ($pkgid > 0) {
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT Source FROM PackageSources ";
 		$q.= "WHERE PackageID = " . $pkgid;
@@ -354,7 +354,7 @@ function pkgvotes_from_sid($sid="", $dbh=NULL) {
 	$pkgs = array();
 	if (!$sid) {return $pkgs;}
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT PackageID ";
 	$q.= "FROM PackageVotes, Users, Sessions ";
@@ -383,7 +383,7 @@ function pkgname_from_id($pkgids, $dbh=NULL) {
 		$pkgids = sanitize_ids($pkgids);
 		$names = array();
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT Name FROM Packages WHERE ID IN (";
 		$q.= implode(",", $pkgids) . ")";
@@ -397,7 +397,7 @@ function pkgname_from_id($pkgids, $dbh=NULL) {
 	}
 	elseif ($pkgids > 0) {
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT Name FROM Packages WHERE ID = " . $pkgids;
 		$result = $dbh->query($q);
@@ -421,7 +421,7 @@ function pkgname_from_id($pkgids, $dbh=NULL) {
  */
 function pkgname_is_blacklisted($name, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT COUNT(*) FROM PackageBlacklist ";
 	$q.= "WHERE Name = " . $dbh->quote($name);
@@ -441,7 +441,7 @@ function pkgname_is_blacklisted($name, $dbh=NULL) {
  **/
 function get_package_details($id=0, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT Packages.*,Category ";
@@ -482,7 +482,7 @@ function display_package_details($id=0, $row, $SID="", $dbh=NULL) {
 	global $USE_VIRTUAL_URLS;
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	if (isset($row['error'])) {
@@ -556,7 +556,7 @@ function display_package_details($id=0, $row, $SID="", $dbh=NULL) {
  */
 function pkg_search_page($SID="", $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	// get commonly used variables...
@@ -814,7 +814,7 @@ function pkg_flag($atype, $ids, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "UPDATE Packages SET";
@@ -868,7 +868,7 @@ function pkg_unflag($atype, $ids, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "UPDATE Packages SET ";
@@ -911,7 +911,7 @@ function pkg_delete ($atype, $ids, $mergepkgid, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	if ($mergepkgid) {
@@ -1013,7 +1013,7 @@ function pkg_adopt ($atype, $ids, $action=true, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$field = "MaintainerUID";
@@ -1073,7 +1073,7 @@ function pkg_vote ($atype, $ids, $action=true, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$my_votes = pkgvotes_from_sid($_COOKIE["AURSID"], $dbh);
 	$uid = uid_from_sid($_COOKIE["AURSID"], $dbh);
@@ -1143,7 +1143,7 @@ function pkg_vote ($atype, $ids, $action=true, $dbh=NULL) {
  */
 function getvotes($pkgid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT UsersID,Username FROM PackageVotes ";
@@ -1175,7 +1175,7 @@ function getvotes($pkgid, $dbh=NULL) {
  */
 function user_voted($uid, $pkgid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT * FROM PackageVotes WHERE UsersID = ". $dbh->quote($uid);
@@ -1201,7 +1201,7 @@ function user_voted($uid, $pkgid, $dbh=NULL) {
  */
 function user_notify($uid, $pkgid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 
 	$q = "SELECT * FROM CommentNotify WHERE UserID = " . $dbh->quote($uid);
@@ -1236,7 +1236,7 @@ function pkg_notify ($atype, $ids, $action=true, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$uid = uid_from_sid($_COOKIE["AURSID"], $dbh);
 
@@ -1315,7 +1315,7 @@ function pkg_delete_comment($atype, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$uid = uid_from_sid($_COOKIE["AURSID"], $dbh);
 	if (canDeleteComment($comment_id, $atype, $uid, $dbh)) {
@@ -1349,7 +1349,7 @@ function pkg_change_category($pid, $atype, $dbh=NULL) {
 	}
 
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$catArray = pkgCategories($dbh);
 	if (!array_key_exists($category_id, $catArray)) {
@@ -1391,7 +1391,7 @@ function pkg_change_category($pid, $atype, $dbh=NULL) {
  */
 function pkgdetails_by_pkgname($pkgname, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "SELECT * FROM Packages WHERE Name = " . $dbh->quote($pkgname);
 	$result = $dbh->query($q);
@@ -1417,7 +1417,7 @@ function pkgdetails_by_pkgname($pkgname, $dbh=NULL) {
  */
 function new_pkgdetails($pkgname, $license, $pkgver, $category_id, $pkgdesc, $pkgurl, $uid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = sprintf("INSERT INTO Packages (Name, License, Version, CategoryID, Description, URL, SubmittedTS, ModifiedTS, SubmitterUID, MaintainerUID) VALUES (%s, %s, %s, %d, %s, %s, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), %d, %d)",
 	$dbh->quote($pkgname),
@@ -1448,7 +1448,7 @@ function new_pkgdetails($pkgname, $license, $pkgver, $category_id, $pkgdesc, $pk
  */
 function update_pkgdetails($pkgname, $license, $pkgver, $pkgdesc, $pkgurl, $uid, $pkgid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	# This is an overwrite of an existing package
 	$q = sprintf("UPDATE Packages SET ModifiedTS = UNIX_TIMESTAMP(), Name = %s, Version = %s, License = %s, Description = %s, URL = %s, OutOfDateTS = NULL, MaintainerUID = %d WHERE ID = %d",
@@ -1475,7 +1475,7 @@ function update_pkgdetails($pkgname, $license, $pkgver, $pkgdesc, $pkgurl, $uid,
  */
 function add_pkg_dep($pkgid, $depname, $depcondition, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = sprintf("INSERT INTO PackageDepends (PackageID, DepName, DepCondition) VALUES (%d, %s, %s)",
 	$pkgid,
@@ -1496,7 +1496,7 @@ function add_pkg_dep($pkgid, $depname, $depcondition, $dbh=NULL) {
  */
 function add_pkg_src($pkgid, $pkgsrc, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "INSERT INTO PackageSources (PackageID, Source) VALUES (";
 	$q .= $pkgid . ", " . $dbh->quote($pkgsrc) . ")";
@@ -1515,7 +1515,7 @@ function add_pkg_src($pkgid, $pkgsrc, $dbh=NULL) {
  */
 function update_pkg_category($pkgid, $category_id, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = sprintf( "UPDATE Packages SET CategoryID = %d WHERE ID = %d",
 	$category_id,
@@ -1534,7 +1534,7 @@ function update_pkg_category($pkgid, $category_id, $dbh=NULL) {
  */
 function remove_pkg_deps($pkgid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "DELETE FROM PackageDepends WHERE PackageID = " . $pkgid;
 
@@ -1551,7 +1551,7 @@ function remove_pkg_deps($pkgid, $dbh=NULL) {
  */
 function remove_pkg_sources($pkgid, $dbh=NULL) {
 	if(!$dbh) {
-		$dbh = db_connect();
+		$dbh = DB::connect();
 	}
 	$q = "DELETE FROM PackageSources WHERE PackageID = " . $pkgid;
 
diff --git a/web/lib/translator.inc.php b/web/lib/translator.inc.php
index 1477b17..ec8cb58 100644
--- a/web/lib/translator.inc.php
+++ b/web/lib/translator.inc.php
@@ -91,7 +91,7 @@ function set_lang($dbh=NULL) {
 		# No language but a session; use default lang preference
 		#
 		if(!$dbh) {
-			$dbh = db_connect();
+			$dbh = DB::connect();
 		}
 		$q = "SELECT LangPreference FROM Users, Sessions ";
 		$q.= "WHERE Users.ID = Sessions.UsersID ";
-- 
1.8.1.2



More information about the aur-dev mailing list