public function updateUser($oldID, $newID, $credentials)
{
$query = sprintf('UPDATE %s SET ', $this->_params['table']);
$values = array();
/* Build the SQL query. */
$query .= $this->_params['username_field'] . ' = ?';
$values[] = $newID;
$query .= ', ' . $this->_params['password_field'] . ' = ?';
$values[] = Horde_Auth::getCryptedPassword($credentials['password'], '', $this->_params['encryption'], $this->_params['show_encryption']);
if (!empty($this->_params['soft_expiration_field'])) {
$query .= ', ' . $this->_params['soft_expiration_field'] . ' = ?';
$values[] = $this->_calc_expiration('soft');
}
if (!empty($this->_params['hard_expiration_field'])) {
$query .= ', ' . $this->_params['hard_expiration_field'] . ' = ?';
$values[] = $this->_calc_expiration('hard');
}
$query .= sprintf(' WHERE %s = ?', $this->_params['username_field']);
$values[] = $oldID;
try {
$this->_db->update($query, $values);
} catch (Horde_Db_Exception $e) {
throw new Horde_Auth_Exception($e);
}
}