diff --git a/support/schema/aur-schema.sql b/support/schema/aur-schema.sql
index ab008458..8ed407c7 100644
--- a/support/schema/aur-schema.sql
+++ b/support/schema/aur-schema.sql
@@ -22,6 +22,7 @@ CREATE TABLE Users (
ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
AccountTypeID TINYINT UNSIGNED NOT NULL DEFAULT 1,
Suspended TINYINT UNSIGNED NOT NULL DEFAULT 0,
+ Username CHAR(32) NOT NULL,
Email CHAR(64) NOT NULL,
Passwd CHAR(32) NOT NULL,
RealName CHAR(64) NOT NULL DEFAULT '',
@@ -30,6 +31,7 @@ CREATE TABLE Users (
LastVoted BIGINT UNSIGNED NOT NULL DEFAULT 0,
NewPkgNotify TINYINT UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (ID),
+ UNIQUE (Username),
UNIQUE (Email),
INDEX (AccountTypeID),
INDEX (NewPkgNotify),
diff --git a/web/README.txt b/web/README.txt
index dbc3c6d7..938504a3 100644
--- a/web/README.txt
+++ b/web/README.txt
@@ -1,3 +1,48 @@
+Setup on ArchLinux:
+===================
+1) Install Apache, MySQL, PHP, and Subversion
+ # pacman -Sy apache mysql php subversion
+
+2) Set a local 'hostname' of 'aur'
+ - Edit /etc/hosts and append 'aur' to loopback address
+ 127.0.0.1 localhost aur
+
+3) Configure Apache
+ - Edit /etc/httpd/conf/httpd.conf and append the following:
+ Replace MYUSER with your username.
+
+
";
+ print "
| |||||||||||||
"; + print "\n"; + print " | "; + print ""; + print "\n"; + print " | "; + print "
\n"; + print __("Click on the Home link above to login."); + print "
\n"; + } + } + + } else { + # display the account request form + # + display_account_form("", "NewAccount"); + } +} html_footer("\$Id$"); +# vim: ts=2 sw=2 noet ft=php ?> diff --git a/web/html/css/containers.css b/web/html/css/containers.css index 69ed1d96..1f437e70 100644 --- a/web/html/css/containers.css +++ b/web/html/css/containers.css @@ -76,6 +76,7 @@ { background-color: #ffffff; border-right: 1px solid #000; + border-left: 1px solid #000; border-bottom: 1px solid #000; text-align: center; vertical-align: top; diff --git a/web/html/index.php b/web/html/index.php index ad7b73f0..dd9b2ccb 100644 --- a/web/html/index.php +++ b/web/html/index.php @@ -11,7 +11,7 @@ if (isset($_REQUEST["user"]) || isset($_REQUEST["pass"])) { # Attempting to log in # if (!isset($_REQUEST['user'])) { - $login_error = __("You must supply a username."); + $login_error = __("You must supply an email address."); } if (!isset($_REQUEST['pass'])) { $login_error = __("You must supply a password."); @@ -21,11 +21,11 @@ if (isset($_REQUEST["user"]) || isset($_REQUEST["pass"])) { # $dbh = db_connect(); $q = "SELECT ID, Suspended FROM Users "; - $q.= "WHERE Email = '" . mysql_escape_string($_REQUEST["user"]) . "' "; + $q.= "WHERE Username = '" . mysql_escape_string($_REQUEST["user"]) . "' "; $q.= "AND Passwd = '" . mysql_escape_string($_REQUEST["pass"]) . "'"; $result = db_query($q, $dbh); if (!$result) { - $login_error = __("Incorrect password for username %s.", + $login_error = __("Incorrect password for email address, %s.", array($_REQUEST["user"])); } else { $row = mysql_fetch_row($result); @@ -70,13 +70,16 @@ html_header(); print " "; +print " | "; print __("This is where the intro text will go."); print __("For now, it's just a place holder."); print __("It's more important to get the login functionality finished."); print __("After that, this can be filled in with more meaningful text."); print " | "; -print " \n"; +# XXX Is this the proper way to add some spacing between table cells? +# +print " | "; +print " | \n"; if (!isset($_COOKIE["AURSID"])) { # the user is not logged in, give them login widgets # diff --git a/web/lang/account_po.inc b/web/lang/account_po.inc index 438f50df..ef883070 100644 --- a/web/lang/account_po.inc +++ b/web/lang/account_po.inc @@ -16,4 +16,189 @@ $_t["en"]["Under construction..."] = "Under construction..."; # $_t["fr"]["Under construction..."] = "--> Traduction française ici. <--"; # $_t["de"]["Under construction..."] = "--> Deutsche Übersetzung hier. <--"; +$_t["en"]["Account Suspended:"] = "Account Suspended:"; +# $_t["es"]["Account Suspended:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Account Suspended:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Account Suspended:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Notify:"] = "Notify:"; +# $_t["es"]["Notify:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Notify:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Notify:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Trusted User"] = "Trusted User"; +# $_t["es"]["Trusted User"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Trusted User"] = "--> Traduction française ici. <--"; +# $_t["de"]["Trusted User"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Normal User"] = "Normal User"; +# $_t["es"]["Normal User"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Normal User"] = "--> Traduction française ici. <--"; +# $_t["de"]["Normal User"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Password:"] = "Password:"; +# $_t["es"]["Password:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Password:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Password:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Email Address:"] = "Email Address:"; +# $_t["es"]["Email Address:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Email Address:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Email Address:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Confirm:"] = "Confirm:"; +# $_t["es"]["Confirm:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Confirm:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Confirm:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Real Name:"] = "Real Name:"; +# $_t["es"]["Real Name:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Real Name:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Real Name:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Account Type:"] = "Account Type:"; +# $_t["es"]["Account Type:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Account Type:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Account Type:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["IRC Nick:"] = "IRC Nick:"; +# $_t["es"]["IRC Nick:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["IRC Nick:"] = "--> Traduction française ici. <--"; +# $_t["de"]["IRC Nick:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Language:"] = "Language:"; +# $_t["es"]["Language:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Language:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Language:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Developer"] = "Developer"; +# $_t["es"]["Developer"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Developer"] = "--> Traduction française ici. <--"; +# $_t["de"]["Developer"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["New Package Notify:"] = "New Package Notify:"; +# $_t["es"]["New Package Notify:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["New Package Notify:"] = "--> Traduction française ici. <--"; +# $_t["de"]["New Package Notify:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Password fields do not match."] = "Password fields do not match."; +# $_t["es"]["Password fields do not match."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Password fields do not match."] = "--> Traduction française ici. <--"; +# $_t["de"]["Password fields do not match."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Error trying to create account, %h%s%h: %s."] = "Error trying to create account, %h%s%h: %s."; +# $_t["es"]["Error trying to create account, %h%s%h: %s."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Error trying to create account, %h%s%h: %s."] = "--> Traduction française ici. <--"; +# $_t["de"]["Error trying to create account, %h%s%h: %s."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Missing a required field."] = "Missing a required field."; +# $_t["es"]["Missing a required field."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Missing a required field."] = "--> Traduction française ici. <--"; +# $_t["de"]["Missing a required field."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["This address is already in use."] = "This address is already in use."; +# $_t["es"]["This address is already in use."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["This address is already in use."] = "--> Traduction française ici. <--"; +# $_t["de"]["This address is already in use."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Language is not currently supported."] = "Language is not currently supported."; +# $_t["es"]["Language is not currently supported."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Language is not currently supported."] = "--> Traduction française ici. <--"; +# $_t["de"]["Language is not currently supported."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["The email address is invalid."] = "The email address is invalid."; +# $_t["es"]["The email address is invalid."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["The email address is invalid."] = "--> Traduction française ici. <--"; +# $_t["de"]["The email address is invalid."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Re-type password:"] = "Re-type password:"; +# $_t["es"]["Re-type password:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Re-type password:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Re-type password:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["The account, %h%s%h, has been successfully created."] = "The account, %h%s%h, has been successfully created."; +# $_t["es"]["The account, %h%s%h, has been successfully created."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["The account, %h%s%h, has been successfully created."] = "--> Traduction française ici. <--"; +# $_t["de"]["The account, %h%s%h, has been successfully created."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Click on the Home link above to login."] = "Click on the Home link above to login."; +# $_t["es"]["Click on the Home link above to login."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Click on the Home link above to login."] = "--> Traduction française ici. <--"; +# $_t["de"]["Click on the Home link above to login."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["The address, %h%s%h, is already in use."] = "The address, %h%s%h, is already in use."; +# $_t["es"]["The address, %h%s%h, is already in use."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["The address, %h%s%h, is already in use."] = "--> Traduction française ici. <--"; +# $_t["de"]["The address, %h%s%h, is already in use."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Trusted user"] = "Trusted user"; +# $_t["es"]["Trusted user"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Trusted user"] = "--> Traduction française ici. <--"; +# $_t["de"]["Trusted user"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Normal user"] = "Normal user"; +# $_t["es"]["Normal user"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Normal user"] = "--> Traduction française ici. <--"; +# $_t["de"]["Normal user"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Any type"] = "Any type"; +# $_t["es"]["Any type"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Any type"] = "--> Traduction française ici. <--"; +# $_t["de"]["Any type"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["No results matched your search criteria."] = "No results matched your search criteria."; +# $_t["es"]["No results matched your search criteria."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["No results matched your search criteria."] = "--> Traduction française ici. <--"; +# $_t["de"]["No results matched your search criteria."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Never"] = "Never"; +# $_t["es"]["Never"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Never"] = "--> Traduction française ici. <--"; +# $_t["de"]["Never"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Active"] = "Active"; +# $_t["es"]["Active"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Active"] = "--> Traduction française ici. <--"; +# $_t["de"]["Active"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Suspended"] = "Suspended"; +# $_t["es"]["Suspended"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Suspended"] = "--> Traduction française ici. <--"; +# $_t["de"]["Suspended"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["The username, %h%s%h, is already in use."] = "The username, %h%s%h, is already in use."; +# $_t["es"]["The username, %h%s%h, is already in use."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["The username, %h%s%h, is already in use."] = "--> Traduction française ici. <--"; +# $_t["de"]["The username, %h%s%h, is already in use."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Type"] = "Type"; +# $_t["es"]["Type"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Type"] = "--> Traduction française ici. <--"; +# $_t["de"]["Type"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Status"] = "Status"; +# $_t["es"]["Status"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Status"] = "--> Traduction française ici. <--"; +# $_t["de"]["Status"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["IRC Nick"] = "IRC Nick"; +# $_t["es"]["IRC Nick"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["IRC Nick"] = "--> Traduction française ici. <--"; +# $_t["de"]["IRC Nick"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Last Voted"] = "Last Voted"; +# $_t["es"]["Last Voted"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Last Voted"] = "--> Traduction française ici. <--"; +# $_t["de"]["Last Voted"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Real Name"] = "Real Name"; +# $_t["es"]["Real Name"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Real Name"] = "--> Traduction française ici. <--"; +# $_t["de"]["Real Name"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Username:"] = "Username:"; +# $_t["es"]["Username:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Username:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Username:"] = "--> Deutsche Übersetzung hier. <--"; + ?> \ No newline at end of file diff --git a/web/lang/aur_po.inc b/web/lang/aur_po.inc index 5f4ca983..211a05b8 100644 --- a/web/lang/aur_po.inc +++ b/web/lang/aur_po.inc @@ -61,4 +61,19 @@ $_t["en"]["Packages"] = "Packages"; # $_t["fr"]["Packages"] = "--> Traduction française ici. <--"; # $_t["de"]["Packages"] = "--> Deutsche Übersetzung hier. <--"; +$_t["en"]["Trusted user"] = "Trusted user"; +# $_t["es"]["Trusted user"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Trusted user"] = "--> Traduction française ici. <--"; +# $_t["de"]["Trusted user"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["User"] = "User"; +# $_t["es"]["User"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["User"] = "--> Traduction française ici. <--"; +# $_t["de"]["User"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Developer"] = "Developer"; +# $_t["es"]["Developer"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Developer"] = "--> Traduction française ici. <--"; +# $_t["de"]["Developer"] = "--> Deutsche Übersetzung hier. <--"; + ?> \ No newline at end of file diff --git a/web/lang/common_po.inc b/web/lang/common_po.inc index 6c04677c..acaf9d2e 100644 --- a/web/lang/common_po.inc +++ b/web/lang/common_po.inc @@ -11,4 +11,59 @@ include_once("translator.inc"); global $_t; +$_t["en"]["Password"] = "Password"; +# $_t["es"]["Password"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Password"] = "--> Traduction française ici. <--"; +# $_t["de"]["Password"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Clear"] = "Clear"; +# $_t["es"]["Clear"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Clear"] = "--> Traduction française ici. <--"; +# $_t["de"]["Clear"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["required"] = "required"; +# $_t["es"]["required"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["required"] = "--> Traduction française ici. <--"; +# $_t["de"]["required"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Email Address"] = "Email Address"; +# $_t["es"]["Email Address"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Email Address"] = "--> Traduction française ici. <--"; +# $_t["de"]["Email Address"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Submit"] = "Submit"; +# $_t["es"]["Submit"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Submit"] = "--> Traduction française ici. <--"; +# $_t["de"]["Submit"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Reset"] = "Reset"; +# $_t["es"]["Reset"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Reset"] = "--> Traduction française ici. <--"; +# $_t["de"]["Reset"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Create"] = "Create"; +# $_t["es"]["Create"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Create"] = "--> Traduction française ici. <--"; +# $_t["de"]["Create"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Update"] = "Update"; +# $_t["es"]["Update"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Update"] = "--> Traduction française ici. <--"; +# $_t["de"]["Update"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Less"] = "Less"; +# $_t["es"]["Less"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Less"] = "--> Traduction française ici. <--"; +# $_t["de"]["Less"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["More"] = "More"; +# $_t["es"]["More"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["More"] = "--> Traduction française ici. <--"; +# $_t["de"]["More"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Username"] = "Username"; +# $_t["es"]["Username"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Username"] = "--> Traduction française ici. <--"; +# $_t["de"]["Username"] = "--> Deutsche Übersetzung hier. <--"; + ?> \ No newline at end of file diff --git a/web/lang/common_po.list b/web/lang/common_po.list index 395b8943..eb94023a 100644 --- a/web/lang/common_po.list +++ b/web/lang/common_po.list @@ -2,3 +2,14 @@ # in more than one PHP script. It only supports one line # strings at the moment. # +Submit +Clear +Create +Reset +Update +required +Email Address +Username +Password +More +Less diff --git a/web/lang/index_po.inc b/web/lang/index_po.inc index e5bfe70f..58bb8ab0 100644 --- a/web/lang/index_po.inc +++ b/web/lang/index_po.inc @@ -81,4 +81,19 @@ $_t["en"]["Login"] = "Login"; # $_t["fr"]["Login"] = "--> Traduction française ici. <--"; # $_t["de"]["Login"] = "--> Deutsche Übersetzung hier. <--"; +$_t["en"]["Email Address:"] = "Email Address:"; +# $_t["es"]["Email Address:"] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Email Address:"] = "--> Traduction française ici. <--"; +# $_t["de"]["Email Address:"] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["You must supply an email address."] = "You must supply an email address."; +# $_t["es"]["You must supply an email address."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["You must supply an email address."] = "--> Traduction française ici. <--"; +# $_t["de"]["You must supply an email address."] = "--> Deutsche Übersetzung hier. <--"; + +$_t["en"]["Incorrect password for email address, %s."] = "Incorrect password for email address, %s."; +# $_t["es"]["Incorrect password for email address, %s."] = "--> Traducción española aquí. <--"; +# $_t["fr"]["Incorrect password for email address, %s."] = "--> Traduction française ici. <--"; +# $_t["de"]["Incorrect password for email address, %s."] = "--> Deutsche Übersetzung hier. <--"; + ?> \ No newline at end of file diff --git a/web/lib/aur.inc b/web/lib/aur.inc index 54ec5eff..9695229a 100644 --- a/web/lib/aur.inc +++ b/web/lib/aur.inc @@ -3,12 +3,12 @@ include_once("aur_po.inc"); # Define global variables # -$LOGIN_TIMEOUT = 10; # number of idle seconds before timeout +$LOGIN_TIMEOUT = 1800; # number of idle seconds before timeout $SUPPORTED_LANGS = array( # what languages we have translations for - "en" => 1, # English - "es" => 1, # Español - "de" => 1, # Deutsch - "fr" => 1, # Français + "en" => "English", + "es" => "Español", + "de" => "Deutsch", + "fr" => "Français", ); # debugging variables @@ -71,6 +71,12 @@ function check_sid() { return; } +# verify that an email address looks like it is legitimate +# +function valid_email($addy) { + return eregi("^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,3}$", $addy); +} + # a new seed value for mt_srand() # function make_seed() { @@ -93,9 +99,41 @@ function new_sid() { return strtoupper(md5($id)); } +# obtain the user type from its database ID +# +function user_type($id=0) { + if ($id == 3) { + return __("Developer"); + } elseif ($id == 2) { + return __("Trusted user"); + } else { + return __("User"); + } +} + # obtain the username if given their current SID # function username_from_sid($sid="") { + if (!$sid) { + return ""; + } + $dbh = db_connect(); + $q = "SELECT Username "; + $q.= "FROM Users, Sessions "; + $q.= "WHERE Users.ID = Sessions.UsersID "; + $q.= "AND Sessions.SessionID = '" . mysql_escape_string($sid) . "'"; + $result = db_query($q, $dbh); + if (!$result) { + return ""; + } + $row = mysql_fetch_row($result); + + return $row[0]; +} + +# obtain the email address if given their current SID +# +function email_from_sid($sid="") { if (!$sid) { return ""; } @@ -103,7 +141,29 @@ function username_from_sid($sid="") { $q = "SELECT Email "; $q.= "FROM Users, Sessions "; $q.= "WHERE Users.ID = Sessions.UsersID "; - $q.= "AND SessionID = '" . mysql_escape_string($sid) . "'"; + $q.= "AND Sessions.SessionID = '" . mysql_escape_string($sid) . "'"; + $result = db_query($q, $dbh); + if (!$result) { + return ""; + } + $row = mysql_fetch_row($result); + + return $row[0]; +} + +# obtain the account type if given their current SID +# Return either "", "User", "Trusted User", "Developer" +# +function account_from_sid($sid="") { + if (!$sid) { + return ""; + } + $dbh = db_connect(); + $q = "SELECT AccountType "; + $q.= "FROM Users, AccountTypes, Sessions "; + $q.= "WHERE Users.ID = Sessions.UsersID "; + $q.= "AND AccountTypes.ID = Users.AccountTypesID "; + $q.= "AND Sessions.SessionID = '" . mysql_escape_string($sid) . "'"; $result = db_query($q, $dbh); if (!$result) { return ""; @@ -150,7 +210,7 @@ function db_query($query="", $db_handle="") { fwrite($fp, $query . "\n"); fclose($fp); } - $result = mysql_query($query, $db_handle); + $result = @mysql_query($query, $db_handle); return $result; } @@ -268,6 +328,7 @@ function html_header() { print " |
\n";
+ print " \n"; print "\n\n"; return; @@ -277,7 +338,7 @@ function html_header() { # common footer # function html_footer($ver="") { - print "\n\n"; + print "\n\n\n"; print " | \n";
print "