var $db = FALSE;
function DBConn()
+ {
+ $this->db = DBConn::$dbcnnx;
+ }
+
+ static function create()
{
GLOBAL $G_dbauth;
if (DBConn::$dbcnnx == FALSE) {
if (!(DBConn::$dbcnnx = @pg_connect ($G_dbauth))) {
- echo "DB connection failed.";
- exit;
+ return (FALSE);
}
}
- $this->db = DBConn::$dbcnnx;
- return;
+ $out = new DBConn();
+
+ return $out;
}
function db()
{
var $item;
var $item_n;
- function BriskDB()
+ function BriskDB($dbconn)
{
- GLOBAL $DOCUMENT_ROOT, $G_dbpfx, $G_false;
+ $this->dbconn = $dbconn;
+ }
+
+ static function create()
+ {
+ GLOBAL $DOCUMENT_ROOT, $G_dbpfx;
+
+ $ret = FALSE;
+
log_main("BriskDB create:start");
- $this->dbconn = new DBConn();
+ do {
+ if (($dbconn = DBConn::create()) == FALSE)
+ break;
+
+ $ret = new BriskDB($dbconn);
+ } while (0);
- log_main("BriskDB create:end");
+ return ($ret);
}
function users_load()
return FALSE;
}
- function &getrecord_bylogin($login) {
- GLOBAL $G_false, $G_dbpfx;
+ function getrecord_bylogin($login) {
+ GLOBAL $G_dbpfx;
$user_sql = sprintf("SELECT * FROM %susers WHERE login = lower('%s') AND (type & CAST (X'%08x' as integer)) = 0;", $G_dbpfx, escsql($login), USER_FLAG_TY_DISABLE);
if (($user_pg = pg_query($this->dbconn->db(), $user_sql)) == FALSE)
- return $ret;
+ return FALSE;
if (pg_numrows($user_pg) != 1)
- return $ret;
+ return FALSE;
$user_obj = pg_fetch_object($user_pg, 0);
- function &login_verify($login, $pass)
+ function login_verify($login, $pass)
{
- GLOBAL $G_dbpfx, $G_false;
+ GLOBAL $G_dbpfx;
- $ret = &$G_false;
+ $ret = FALSE;
log_main("login_verify: ".$login);
//O for ($i = 0 ; $i < $this->item_n ; $i++) {
//O log_main("login_verify: BEGIN");
- if (($user_obj = $this->getrecord_bylogin($login)) == FALSE)
- return $ret;
+ if (($user_obj = $this->getrecord_bylogin($login)) == FALSE) {
+ return FALSE;
+ }
log_main("login[".$user_obj->code."]: ".$user_obj->login);
if (($a_sem = Challenges::lock_data()) != FALSE) {
if (($chals = &Challenges::load_data()) != FALSE) {
for ($e = 0 ; $e < $chals->item_n ; $e++) {
-
log_main("challenge[".$e."]: ".$chals->item[$e]->login);
if (strcmp($login, $chals->item[$e]->login) == 0) {
log_main("login_verify [".$pass."] with [".md5($chals->item[$e]->token.$user_obj->pass)."]");
return ($ret);
}
- function &getitem_bylogin($login, &$id) {
- GLOBAL $G_false;
-
- $ret = &$G_false;
+ function getitem_bylogin($login, &$id) {
+ $ret = FALSE;
$id = -1;
log_main("getitem_bylogin: ".$login);
return TRUE;
}
- function &getdbconn()
+ function getdbconn()
{
- $ret = $this->dbconn;
- return ($ret);
+ return ($this->dbconn);
}
// ttok text UNIQUE,