BUG 9775 Las Ñ no son discriminadas para los usernames SLOVED

- Adjustment in the standarized.
This commit is contained in:
Hector Cortez
2012-10-08 14:54:58 -04:00
parent ceaa97f2cc
commit 2a1b60c52b

View File

@@ -1,4 +1,5 @@
<?php <?php
/** /**
* RbacUsers.php * RbacUsers.php
* @package rbac-classes-model * @package rbac-classes-model
@@ -23,12 +24,11 @@
* Coral Gables, FL, 33134, USA, or email info@colosa.com. * Coral Gables, FL, 33134, USA, or email info@colosa.com.
* *
*/ */
/** /**
* @access public * @access public
*/ */
require_once 'classes/model/om/BaseRbacUsers.php'; require_once 'classes/model/om/BaseRbacUsers.php';
/** /**
* Skeleton subclass for representing a row from the 'USERS' table. * Skeleton subclass for representing a row from the 'USERS' table.
* *
@@ -40,7 +40,9 @@ require_once 'classes/model/om/BaseRbacUsers.php';
* *
* @package rbac-classes-model * @package rbac-classes-model
*/ */
class RbacUsers extends BaseRbacUsers { class RbacUsers extends BaseRbacUsers
{
/** /**
* Autentificacion de un usuario a traves de la clase RBAC_user * Autentificacion de un usuario a traves de la clase RBAC_user
* *
@@ -59,29 +61,32 @@ class RbacUsers extends BaseRbacUsers {
* -4: usuario vencido * -4: usuario vencido
* n : uid de usuario * n : uid de usuario
*/ */
function verifyLogin($sUsername, $sPassword ) public function verifyLogin($sUsername, $sPassword)
{ {
//invalid user //invalid user
if ( $sUsername == '' ) return -1; if ($sUsername == '') {
return -1;
}
//invalid password //invalid password
if ( $sPassword == '' ) return -2; if ($sPassword == '') {
return -2;
}
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME); $con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try { try {
$c = new Criteria( 'rbac' ); $c = new Criteria('rbac');
$c->add ( RbacUsersPeer::USR_USERNAME, $sUsername ); $c->add(RbacUsersPeer::USR_USERNAME, $sUsername);
$rs = RbacUsersPeer::doSelect( $c ); $rs = RbacUsersPeer::doSelect($c);
if ( is_array($rs) && isset( $rs[0] ) && is_object($rs[0]) && get_class ( $rs[0] ) == 'RbacUsers' ) { if (is_array($rs) && isset($rs[0]) && is_object($rs[0]) && get_class($rs[0]) == 'RbacUsers') {
$aFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME); $aFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME);
//verify password with md5, and md5 format //verify password with md5, and md5 format
//if ( $aFields['USR_PASSWORD'] == md5 ($sPassword ) ) { //if ( $aFields['USR_PASSWORD'] == md5 ($sPassword ) ) {
if (mb_strtoupper($sUsername, 'utf-8') === mb_strtoupper($aFields['USR_USERNAME'], 'utf-8')) { if (mb_strtoupper($sUsername, 'utf-8') === mb_strtoupper($aFields['USR_USERNAME'], 'utf-8')) {
if ( $aFields['USR_PASSWORD'] == md5 ($sPassword ) || 'md5:'.$aFields['USR_PASSWORD'] === $sPassword) { if ($aFields['USR_PASSWORD'] == md5($sPassword) ||
if ($aFields['USR_DUE_DATE'] < date('Y-m-d') ) { 'md5:' . $aFields['USR_PASSWORD'] === $sPassword) {
if ($aFields['USR_DUE_DATE'] < date('Y-m-d')) {
return -4; return -4;
} }
if ($aFields['USR_STATUS'] != 1 ) { if ($aFields['USR_STATUS'] != 1) {
return -3; return -3;
} }
return $aFields['USR_UID']; return $aFields['USR_UID'];
@@ -94,103 +99,100 @@ class RbacUsers extends BaseRbacUsers {
} else { } else {
return -1; return -1;
} }
} } catch (Exception $oError) {
catch (Exception $oError) {
throw($oError); throw($oError);
} }
return -1; return -1;
} }
function verifyUser($sUsername) public function verifyUser($sUsername)
{ {
//invalid user //invalid user
if ( $sUsername == '' ) return 0; if ($sUsername == '') {
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try {
$c = new Criteria( 'rbac' );
$c->add ( RbacUsersPeer::USR_USERNAME, $sUsername );
$rs = RbacUsersPeer::doSelect( $c );
if (is_array($rs) && isset( $rs[0] ) && is_object($rs[0]) && get_class ( $rs[0] ) == 'RbacUsers')
{
//return the row for futher check of which Autentificacion method belongs this user
$this->fields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME);;
return 1;
}
else
{
return 0; return 0;
} }
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try {
$c = new Criteria('rbac');
$c->add(RbacUsersPeer::USR_USERNAME, $sUsername);
$rs = RbacUsersPeer::doSelect($c);
if (is_array($rs) && isset($rs[0]) && is_object($rs[0]) && get_class($rs[0]) == 'RbacUsers') {
//return the row for futher check of which Autentificacion method belongs this user
$this->fields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME);
;
return 1;
} else {
return 0;
} }
catch (Exception $oError) { } catch (Exception $oError) {
throw($oError); throw($oError);
} }
} }
function getByUsername($sUsername) public function getByUsername($sUsername)
{ {
//invalid user //invalid user
if ( $sUsername == '' ) return 0; if ($sUsername == '') {
return 0;
}
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME); $con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try { try {
$c = new Criteria( 'rbac' ); $c = new Criteria('rbac');
$c->add ( RbacUsersPeer::USR_USERNAME, $sUsername ); $c->add(RbacUsersPeer::USR_USERNAME, $sUsername);
$rs = RbacUsersPeer::doSelect( $c ); $rs = RbacUsersPeer::doSelect($c);
if ( is_array($rs) && isset( $rs[0] ) && is_object($rs[0]) && get_class ( $rs[0] ) == 'RbacUsers' ) { if (is_array($rs) && isset($rs[0]) && is_object($rs[0]) && get_class($rs[0]) == 'RbacUsers') {
$aFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME); $aFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME);
return $aFields; return $aFields;
} else { } else {
return false; return false;
} }
} } catch (Exception $oError) {
catch (Exception $oError) {
throw($oError); throw($oError);
} }
} }
function verifyUserId($sUserId) public function verifyUserId($sUserId)
{ {
//invalid user //invalid user
if ( $sUserId == '' ) return 0; if ($sUserId == '') {
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try {
$c = new Criteria( 'rbac' );
$c->add ( RbacUsersPeer::USR_UID, $sUserId );
$rs = RbacUsersPeer::doSelect( $c );
if (is_array($rs) && isset( $rs[0] ) && is_object($rs[0]) && get_class ( $rs[0] ) == 'RbacUsers')
{
return 1;
}
else
{
return 0; return 0;
} }
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try {
$c = new Criteria('rbac');
$c->add(RbacUsersPeer::USR_UID, $sUserId);
$rs = RbacUsersPeer::doSelect($c);
if (is_array($rs) && isset($rs[0]) && is_object($rs[0]) && get_class($rs[0]) == 'RbacUsers') {
return 1;
} else {
return 0;
} }
catch (Exception $oError) { } catch (Exception $oError) {
throw($oError); throw($oError);
} }
} }
function load($sUsrUid) public function load($sUsrUid)
{ {
$con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME); $con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try { try {
$c = new Criteria( 'rbac' ); $c = new Criteria('rbac');
$c->add ( RbacUsersPeer::USR_UID, $sUsrUid ); $c->add(RbacUsersPeer::USR_UID, $sUsrUid);
$rs = RbacUsersPeer::doSelect( $c ); $rs = RbacUsersPeer::doSelect($c);
if ( is_array($rs) && isset( $rs[0] ) && is_object($rs[0]) && get_class ( $rs[0] ) == 'RbacUsers' ) { if (is_array($rs) && isset($rs[0]) && is_object($rs[0]) && get_class($rs[0]) == 'RbacUsers') {
$aFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME); $aFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME);
return $aFields; return $aFields;
} }
return false; return false;
} } catch (Exception $oError) {
catch ( Exception $oError) {
throw($oError); throw($oError);
} }
return $res; return $res;
} }
function create($aData) { public function create($aData)
{
$oConnection = Propel::getConnection(RbacUsersPeer::DATABASE_NAME); $oConnection = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try { try {
$oRBACUsers = new RbacUsers(); $oRBACUsers = new RbacUsers();
@@ -203,7 +205,7 @@ class RbacUsers extends BaseRbacUsers {
$iResult = $oRBACUsers->save(); $iResult = $oRBACUsers->save();
//$oConnection->commit(); //$oConnection->commit();
return $aData['USR_UID']; return $aData['USR_UID'];
/*} /* }
else { else {
$sMessage = ''; $sMessage = '';
$aValidationFailures = $oRBACUsers->getValidationFailures(); $aValidationFailures = $oRBACUsers->getValidationFailures();
@@ -211,45 +213,46 @@ class RbacUsers extends BaseRbacUsers {
$sMessage .= $oValidationFailure->getMessage() . '<br />'; $sMessage .= $oValidationFailure->getMessage() . '<br />';
} }
throw(new Exception('The registry cannot be created!<br />' . $sMessage)); throw(new Exception('The registry cannot be created!<br />' . $sMessage));
}*/ } */
} } catch (Exception $oError) {
catch (Exception $oError) {
$oConnection->rollback(); $oConnection->rollback();
throw($oError); throw($oError);
} }
} }
function update($aData) { public function update($aData)
{
$oConnection = Propel::getConnection(RbacUsersPeer::DATABASE_NAME); $oConnection = Propel::getConnection(RbacUsersPeer::DATABASE_NAME);
try { try {
$this->fromArray($aData, BasePeer::TYPE_FIELDNAME); $this->fromArray($aData, BasePeer::TYPE_FIELDNAME);
$this->setNew(false); $this->setNew(false);
$iResult = $this->save(); $iResult = $this->save();
} } catch (Exception $oError) {
catch (Exception $oError) {
$oConnection->rollback(); $oConnection->rollback();
throw($oError); throw($oError);
} }
} }
function remove($sUserUID = '') { public function remove($sUserUID = '')
{
$this->setUsrUid($sUserUID); $this->setUsrUid($sUserUID);
$this->delete(); $this->delete();
} }
//Added by Qennix at Feb 14th, 2011 //Added by Qennix at Feb 14th, 2011
//Gets an associative array with total users by authentication sources //Gets an associative array with total users by authentication sources
function getAllUsersByAuthSource(){ public function getAllUsersByAuthSource()
{
$oCriteria = new Criteria('rbac'); $oCriteria = new Criteria('rbac');
$oCriteria->addSelectColumn(RbacUsersPeer::UID_AUTH_SOURCE); $oCriteria->addSelectColumn(RbacUsersPeer::UID_AUTH_SOURCE);
$oCriteria->addSelectColumn('COUNT(*) AS CNT'); $oCriteria->addSelectColumn('COUNT(*) AS CNT');
$oCriteria->add(RbacUsersPeer::USR_STATUS,'CLOSED',Criteria::NOT_EQUAL); $oCriteria->add(RbacUsersPeer::USR_STATUS, 'CLOSED', Criteria::NOT_EQUAL);
$oCriteria->addGroupByColumn(RbacUsersPeer::UID_AUTH_SOURCE); $oCriteria->addGroupByColumn(RbacUsersPeer::UID_AUTH_SOURCE);
$oDataset = RbacUsersPeer::doSelectRS($oCriteria); $oDataset = RbacUsersPeer::doSelectRS($oCriteria);
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$aAuth = Array(); $aAuth = Array();
while ($oDataset->next()){ while ($oDataset->next()) {
$row = $oDataset->getRow(); $row = $oDataset->getRow();
$aAuth[$row['UID_AUTH_SOURCE']] = $row['CNT']; $aAuth[$row['UID_AUTH_SOURCE']] = $row['CNT'];
} }
@@ -257,27 +260,29 @@ class RbacUsers extends BaseRbacUsers {
} }
//Returns all users with auth_source //Returns all users with auth_source
function getListUsersByAuthSource($auth_source){ public function getListUsersByAuthSource($auth_source)
{
$oCriteria = new Criteria('rbac'); $oCriteria = new Criteria('rbac');
$oCriteria->addSelectColumn(RbacUsersPeer::USR_UID); $oCriteria->addSelectColumn(RbacUsersPeer::USR_UID);
if ($auth_source=='00000000000000000000000000000000'){ if ($auth_source == '00000000000000000000000000000000') {
$oCriteria->add( $oCriteria->add(
$oCriteria->getNewCriterion(RbacUsersPeer::UID_AUTH_SOURCE,$auth_source, Criteria::EQUAL)->addOr( $oCriteria->getNewCriterion(RbacUsersPeer::UID_AUTH_SOURCE, $auth_source, Criteria::EQUAL)->addOr(
$oCriteria->getNewCriterion(RbacUsersPeer::UID_AUTH_SOURCE,'', Criteria::EQUAL) $oCriteria->getNewCriterion(RbacUsersPeer::UID_AUTH_SOURCE, '', Criteria::EQUAL)
)); ));
}else{ } else {
$oCriteria->add(RbacUsersPeer::UID_AUTH_SOURCE, $auth_source, Criteria::EQUAL); $oCriteria->add(RbacUsersPeer::UID_AUTH_SOURCE, $auth_source, Criteria::EQUAL);
} }
$oCriteria->add(RbacUsersPeer::USR_STATUS,0,Criteria::NOT_EQUAL); $oCriteria->add(RbacUsersPeer::USR_STATUS, 0, Criteria::NOT_EQUAL);
$oDataset = RbacUsersPeer::doSelectRS($oCriteria); $oDataset = RbacUsersPeer::doSelectRS($oCriteria);
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$aUsers = array(); $aUsers = array();
while($oDataset->next()){ while ($oDataset->next()) {
$row = $oDataset->getRow(); $row = $oDataset->getRow();
$aUsers[] = $row['USR_UID']; $aUsers[] = $row['USR_UID'];
} }
return $aUsers; return $aUsers;
} }
}
} // Users // Users