var objDiv;

function init() {
    if(!document.getElementById("word")) return;
    objDiv = document.getElementById("word");
    for(var i in objDiv.childNodes)
        i.onkeyup = evalKeyUp;
    document.forms["frmMain"].elements["iptChars"].focus();
} window.onload = init;
/**
 *
 */
function renderInput(inintCharCount) {
    var i = objDiv.childNodes.length-1;
    while(i > -1)
        objDiv.removeChild(objDiv.childNodes[i--])
    for(var i = 0; i < inintCharCount; i++)
        objDiv.appendChild(getInput(i));
    //objDiv.childNodes[0].focus();

}
/**
 *
 */
function removeInput() {
    if(!(objDiv.childNodes.length-1)) return;
    var objLastNode = objDiv.childNodes[objDiv.childNodes.length-1];
    objDiv.removeChild(objLastNode);
}
/**
 *
 */
function getInput(inintIndex) {
    var objInput = document.createElement("input");
    objInput.className = "char";
    objInput.maxLength = 1;
    objInput.onkeyup = evalKeyUp;
    objInput.tabIndex = inintIndex;
    with(objInput) {
        setAttribute("type", "text");
        setAttribute("class", "char");
        setAttribute("maxlength", 1);
        setAttribute("name", "c" + objDiv.childNodes.length);
        setAttribute("tabindex", inintIndex);
    }
    return objInput;
}
function Count() {
    return objDiv.childNodes.length;
}

function evalKeyUp(e) {
    var objEvent = new EventParser(e);
    var intIndex;
    var strValue;
    intIndex = objEvent.target.tabIndex;
    strValue = objEvent.target.value;
    if(strValue=="" && Number(intIndex) > 0) {
        objDiv.childNodes[Number(intIndex)-1].select();
        return 0;
    }
    if(intIndex < (Count()-1) && strValue!="") {
        //alert(intIndex)
        objDiv.childNodes[Number(intIndex)+1].focus();
    }
}

/**
 * methods that helps working with different aspects of DOM
 */
function EventParser(e) {
    this.e = (e) ? e : window.event;
    this.target = (document.all) ? this.e.srcElement : this.e.target;
}

function evalSubmit() {
    var objForm = document.forms["frmMain"];
    objForm.elements["p"].value = "";
    return true;
}

function goNext(inintPage) {
    var objForm = document.forms["frmMain"];
    objForm.elements["p"].value = (inintPage) ? inintPage : "";
    objForm.submit();

}
