I found the code... it does in fact allow numbers and, it excludes the letters o and O (cap o)
I'd like to remove the zero too but I'm not a good enuff php programer to do so
Here is the code that generates the password.
Code:
function fetch_random_password($length = 8)
{
$password_characters = 'ABCDEFGHJKLMNPQRSTUVWXYZabcdefghjkmnpqrstuvwxyz';
$total_password_characters = strlen($password_characters) - 1;
$digit = vbrand(0, $length - 1);
$newpassword = '';
for ($i = 0; $i < $length; $i++)
{
if ($i == $digit)
{
$newpassword .= chr(vbrand(48, 57));
continue;
}
$newpassword .= $password_characters{vbrand(0, $total_password_characters)};
}
return $newpassword;
}
// #############################################################################
/**
* vBulletin's hash fetcher, note this may change from a-f0-9 to a-z0-9 in future.
*
* @param integer Length of desired hash, limited to 40 characters at most
*/
function fetch_random_string($length = 32)
{
$hash = sha1(TIMENOW . SESSION_HOST . microtime() . uniqid(mt_rand(), true) . implode('', @fstat(fopen( __FILE__, 'r'))));
return substr($hash, 0, $length);
}
// #############################################################################
/**
* vBulletin's own random number generator
*
* @param integer Minimum desired value
* @param integer Maximum desired value
* @param mixed Seed for the number generator (if not specified, a new seed will be generated)
*/
function vbrand($min = 0, $max = 0, $seed = -1)
{
mt_srand(crc32(microtime()));
if ($max AND $max <= mt_getrandmax())
{
$number = mt_rand($min, $max);
}
else
{
$number = mt_rand();
}
// reseed so any calls outside this function don't get the second number
mt_srand();
return $number;
}