| <?php |
| require_once("/home/data/httpd/eclipse-php-classes/system/dbconnection_foundation.class.php"); |
| class Person { |
| |
| #***************************************************************************** |
| # |
| # person.class.php |
| # |
| # Author: Denis Roy |
| # Date: 2004-08-05 |
| # |
| # Description: Functions and modules related to User objects |
| # Stolen on: Nov 25/05 for use with the new website. M. Ward |
| # |
| # HISTORY: |
| # |
| #***************************************************************************** |
| |
| var $PersonID = ""; |
| var $FName = ""; |
| var $LName = ""; |
| var $Type = 0; |
| var $EMail = ""; |
| var $Phone = ""; |
| var $Fax = ""; |
| var $Mobile = ""; |
| var $Address1 = ""; |
| var $Address2 = ""; |
| var $Address3 = ""; |
| var $City = ""; |
| var $Province = ""; |
| var $Country = ""; |
| var $Postal = ""; |
| |
| //define a constant value. the max number of time to try and create a userid |
| var $MAX_ATTEMPTS = 10; |
| |
| |
| function getPersonID() { |
| return $this->PersonID; |
| } |
| function getFName() { |
| return $this->FName; |
| } |
| function getLName() { |
| return $this->LName; |
| } |
| function getType() { |
| return $this->Type; |
| } |
| function getEMail() { |
| return $this->EMail; |
| } |
| function getPostal() { |
| return $this->Postal; |
| } |
| function getPhone() { |
| return $this->Phone; |
| } |
| function getFax() { |
| return $this->Fax; |
| } |
| function getMobile() { |
| return $this->Mobile; |
| } |
| function getAddress1() { |
| return $this->Address1; |
| } |
| function getAddress2() { |
| return $this->Address2; |
| } |
| function getAddress3() { |
| return $this->Address3; |
| } |
| function getCity() { |
| return $this->City; |
| } |
| function getProvince() { |
| return $this->Province; |
| } |
| function getCountry() { |
| return $this->Country; |
| } |
| |
| |
| function setPersonID($_PersonID) { |
| $this->PersonID = $_PersonID; |
| } |
| function setFName($_FName) { |
| $this->FName = $_FName; |
| } |
| function setLName($_LName) { |
| $this->LName = $_LName; |
| } |
| //reflects EMployee or INdividual |
| function setType($_Type) { |
| $this->Type = $_Type; |
| } |
| function setEMail($_EMail) { |
| $this->EMail = $_EMail; |
| } |
| function setPhone($_Phone) { |
| $this->Phone = $_Phone; |
| } |
| function setFax($_Fax) { |
| $this->Fax = $_Fax; |
| } |
| function setMobile($_Mobile) { |
| $this->Mobile = $_Mobile; |
| } |
| function setAddress1($_Address1) { |
| $this->Address1 = $_Address1; |
| } |
| function setAddress2($_Address2) { |
| $this->Address2 = $_Address2; |
| } |
| function setAddress3($_Address3) { |
| $this->Address3 = $_Address3; |
| } |
| function setCity($_City) { |
| $this->City = $_City; |
| } |
| function setProvince($_Province) { |
| $this->Province = $_Province; |
| } |
| function setPostal($_Postal) { |
| $this->Postal = $_Postal; |
| } |
| function setCountry($_Country) { |
| $this->Country = $_Country; |
| } |
| |
| function CreatePersonID (){ |
| //set the max number of lastname chars |
| $MAX_LAST = 8; |
| //gen a username |
| $username = strtolower(substr($this->FName,0,1) . preg_replace('/[ -\']/i','',substr($this->LName,0,$MAX_LAST) ) ); |
| $loops = 2; |
| //check if the given user name is already in use, or if we have exceed the max # of loops. |
| while( ( $this->selectPersonIDExists($username) ) && ( loops <= $this->MAX_ATTEMPTS ) && ( (strlen($this->FName)-loops) >= 1 ) ) { |
| //now if the username exsits then try and gen a new one. |
| $username = strtolower(substr($this->FName,0,$loops) . preg_replace('/[ -\']/i','',substr($this->LName,0, ($MAX_LAST-$loops) ) ) ); |
| $loops+=1; |
| } |
| //ok did we go through the max number of loops(10) |
| if( $loops >= 10 ) |
| return -1; |
| else { |
| //set the username |
| $this->PersonID = $username; |
| return 0; |
| } |
| } |
| |
| function insertPerson() { |
| |
| $App = new App(); |
| |
| $dbc = new DBConnectionRW(); |
| $dbh = $dbc->connect(); |
| |
| # insert |
| $sql = "INSERT INTO People ( |
| PersonID, |
| FName, |
| LName, |
| Type, |
| EMail, |
| Phone, |
| Fax, |
| Mobile, |
| IsUnixAcctCreated |
| ) |
| VALUES ( |
| " . $App->returnQuotedString($this->getPersonID()) . ", |
| " . $App->returnQuotedString($this->getFName()) . ", |
| " . $App->returnQuotedString($this->getLName()) . ", |
| " . $App->returnQuotedString($this->getType()) . ", |
| " . $App->returnQuotedString($this->getEMail()) . ", |
| " . $App->returnQuotedString($this->getPhone()) . ", |
| " . $App->returnQuotedString($this->getFax()) . ", |
| " . $App->returnQuotedString($this->getMobile()) . ",\"0\"); |
| "; |
| |
| mysql_query($sql, $dbh)or die (mysql_error()) ; |
| $sql = "INSERT INTO PeopleAddresses ( |
| PersonID, |
| AddressID, |
| Address1, |
| Address2, |
| Address3, |
| City, |
| ProvStateRegion, |
| PostalCode, |
| CCode |
| ) |
| VALUES ( |
| " . $App->returnQuotedString($this->getPersonID()) . ",1, |
| " . $App->returnQuotedString($this->getAddress1()) . ", |
| " . $App->returnQuotedString($this->getAddress2()) . ", |
| " . $App->returnQuotedString($this->getAddress3()) . ", |
| " . $App->returnQuotedString($this->getCity()) . ", |
| " . $App->returnQuotedString($this->getProvince()) . ", |
| " . $App->returnQuotedString($this->getPostal()) . ", |
| " . $App->returnQuotedString($this->getCountry()) . "); |
| "; |
| |
| mysql_query($sql, $dbh)or die (mysql_error()) ; |
| |
| $sql = "INSERT INTO SYS_ModLog ( LogTable, PK1, PK2, LogAction, PersonID ) VALUES ( |
| \"People\", |
| " . $App->returnQuotedString($this->getPersonID()) . ", |
| \"Initial\", |
| \"INSERT\", |
| \"WebScript\" ); |
| "; |
| |
| mysql_query($sql, $dbh)or die (mysql_error()) ; |
| |
| |
| $dbc->disconnect(); |
| } |
| |
| |
| function selectPersonExists() { |
| $result = 0; |
| |
| if( ($this->FName != "") && ($this->LName != "") && ($this->EMail != "") ) { |
| $App = new App(); |
| |
| $dbc = new DBConnectionRW(); |
| $dbh = $dbc->connect(); |
| |
| $sql = "SELECT COUNT(*) AS RecordCount |
| FROM People |
| WHERE FName = " . $App->returnQuotedString($this->getFName()) . " AND LName = " . $App->returnQuotedString($this->getLName()) . " |
| AND EMail = " . $App->returnQuotedString($this->getEMail()) . ";"; |
| |
| $result = mysql_query($sql, $dbh) or die (mysql_error()) ; |
| $myrow = mysql_fetch_array($result); |
| |
| $result = $myrow['RecordCount']; |
| |
| $dbc->disconnect(); |
| return $result; |
| } |
| return -1; |
| } |
| |
| |
| |
| function selectPersonIDExists($_PersonID) { |
| $result = 0; |
| |
| if($_PersonID != "") { |
| $App = new App(); |
| |
| $dbc = new DBConnectionRW(); |
| $dbh = $dbc->connect(); |
| |
| $sql = "SELECT COUNT(*) AS RecordCount |
| FROM People |
| WHERE PersonID = " . $App->returnQuotedString($_PersonID) .";"; |
| |
| |
| $result = mysql_query($sql, $dbh)or die (mysql_error()) ; |
| $myrow = mysql_fetch_array($result); |
| |
| $result = $myrow['RecordCount']; |
| |
| $dbc->disconnect(); |
| |
| } |
| return $result; |
| } |
| |
| } |
| ?> |