function on_before_validate($values)
{
if ($values['username'] == "" || $values['username'] == NULL) {
$this->password_in_clear = $password = $this->random_password();
$ci = CI_Controller::get_instance();
$ci->load->helper('url');
$ci->load->library('session');
$ci->load->library('extemplate');
$ci->load->library("email");
$ci->load->config('tank_auth', TRUE);
$hasher = new PasswordHash($ci->config->item('phpass_hash_strength', 'tank_auth'), $ci->config->item('phpass_hash_portable', 'tank_auth'));
$hashed_password = $hasher->HashPassword($password);
$values["password"] = $hashed_password;
$values["created"] = datetime_now();
$values['username'] = trim($values['email']);
$values["last_ip"] = $_SERVER['REMOTE_ADDR'];
$data = $values;
$data['site_name'] = 'http://www.ressphere.com';
$data['password'] = $this->password_in_clear;
if ($ci->config->item('email_account_details')) {
base::_begin_send_email('Welcome to', $data['email'], $data, $ci);
}
}
return parent::on_before_validate($values);
}