/* Utility function to generate random string, to be used on web forms,
 * especially .html pages, since they can't use the php include file.
 * Basically this is a replicate of /phpincludes/sysutils.inc, in javascript.
 */

var MIN_DIGITS_NUMBER = 3;
var MAX_DIGITS_NUMBER = 6;

    /* These two names should be placed into page form as mandatory fields. */
var NAME_FORM_NUMBER_IMG = "auto_conf_number_img";
var NAME_FORM_NUMBER = "manual_confirmation_number";

    // Define image file names.
var files = new Array (
     'phone0.gif', 'phone1.gif', 'phone2.gif', 'phone3.gif', 'phone4.gif',
     'phone5.gif', 'phone6.gif', 'phone7.gif', 'phone8.gif', 'phone9.gif',
     'phoneast.gif', 'phonepound.gif'
);

var CONST_LEN_DIGITS = 12;  // files.length
var PATH_TO_DIGITS = '/images/tokens/';

    // Define index for image file name array.
var digits = new Array ();
for ( i = 0; i < 10; i++ )
    digits[i] = i;

digits[10] = '*';
digits[11] = '#';

//----------------------------------------------------------------------
function _GenerateRandnumFormImage_ (min_digits, max_digits)
// Generate a random number, and print a form input confirmation image.
{
    if ( isNaN (min_digits * 1) ||
         min_digits < MIN_DIGITS_NUMBER || min_digits > MAX_DIGITS_NUMBER )
        min_digits = MIN_DIGITS_NUMBER;

    if ( isNaN (max_digits * 1) ||
         max_digits < MIN_DIGITS_NUMBER || max_digits > MAX_DIGITS_NUMBER )
        max_digits = MAX_DIGITS_NUMBER;

    // Length of the img string.
    len = Math.round (Math.random() * max_digits);
    if ( len < min_digits )
    { len = min_digits; }

    indexes = new Array ();
    number = '';

    for ( i = 0; i < len; i++ )
    {
        index = Math.round (Math.random() * (CONST_LEN_DIGITS - 1));
        number = number + digits[index];
        indexes[i] = index;
    }

        // Print form input fields.
    document.write ("<input type=\"hidden\" name=\"" + NAME_FORM_NUMBER_IMG + "\" value=\"" + number + "\">\n");
    document.write ("<input type=\"text\" name=\"" + NAME_FORM_NUMBER + "\" value=\"\" size=\"" + len + "\" maxlength=\"" + len + "\">\n");

    for ( i = 0; i < len; i++ )
    {
        document.write ("<img src=\"" + PATH_TO_DIGITS + files[indexes[i]] + "\" hspace=0 vspace=0 border=0>");
    }
}

