API15:JTableUser/check
From Joomla! Documentation
Description
Validation and filtering
[<! removed edit link to red link >]
<! removed transcluded page call, red link never existed >
Syntax
check()
Returns
boolean True is satisfactory
Defined in
libraries/joomla/database/table/user.php
Importing
jimport( 'joomla.database.table.user' );
Source Body
function check()
{
jimport('joomla.mail.helper');
// Validate user information
if (trim( $this->name ) == '') {
$this->setError( JText::_( 'Please enter your name.' ) );
return false;
}
if (trim( $this->username ) == '') {
$this->setError( JText::_( 'Please enter a user name.') );
return false;
}
if (preg_match( "#[<>\"'%;()&]#i", $this->username) || strlen(utf8_decode($this->username )) < 2) {
$this->setError( JText::sprintf( 'VALID_AZ09', JText::_( 'Username' ), 2 ) );
return false;
}
if ((trim($this->email) == "") || ! JMailHelper::isEmailAddress($this->email) ) {
$this->setError( JText::_( 'WARNREG_MAIL' ) );
return false;
}
if ($this->registerDate == null) {
// Set the registration timestamp
$now =& JFactory::getDate();
$this->registerDate = $now->toMySQL();
}
// check for existing username
$query = 'SELECT id'
. ' FROM #__users '
. ' WHERE username = ' . $this->_db->Quote($this->username)
. ' AND id != '. (int) $this->id;
;
$this->_db->setQuery( $query );
$xid = intval( $this->_db->loadResult() );
if ($xid && $xid != intval( $this->id )) {
$this->setError( JText::_('WARNREG_INUSE'));
return false;
}
// check for existing email
$query = 'SELECT id'
. ' FROM #__users '
. ' WHERE email = '. $this->_db->Quote($this->email)
. ' AND id != '. (int) $this->id
;
$this->_db->setQuery( $query );
$xid = intval( $this->_db->loadResult() );
if ($xid && $xid != intval( $this->id )) {
$this->setError( JText::_( 'WARNREG_EMAIL_INUSE' ) );
return false;
}
return true;
}
[<! removed edit link to red link >] <! removed transcluded page call, red link never existed >
Examples
Code Examples