String.prototype.trim = function() {
  //return this.replace(/^\s*/, "").replace(/\s*$/, "");
  //http://en.wikipedia.org/wiki/Trim_%28programming%29#JavaScript
  return this.replace(/^\s+|\s+$/g, "");
}

function getFirstChild(objParent) {
    objChild = objParent.firstChild;
    while (objChild !== null && objChild.nodeType != 1) {
        objChild = objChild.nextSibling;
    }
    return objChild;
}

function getLastChild(objParent) {
    objChild = objParent.lastChild;
    while (objChild !== null && objChild.nodeType != 1) {
        objChild = objChild.previousSibling;
    }
    return objChild;
}

function getPreviousSibling(objElement) {
    objPreviousSibling = objElement.previousSibling;
    while (objPreviousSibling !== null && objPreviousSibling.nodeType != 1) {
        objPreviousSibling = objPreviousSibling.previousSibling;
    }
    return objPreviousSibling;
}

function getNextSibling(objElement) {
    objNextSibling = objElement.nextSibling;
    while (objNextSibling !== null && objNextSibling.nodeType != 1) {
        objNextSibling = objNextSibling.nextSibling;
    }
    return objNextSibling;
}


function resetSelect(strId) {
    var objSel =  document.getElementById(strId);
    objSel.length = 0;
    objSel.options[0] = new Option('', 0);
    //alert(objSel.id);
}

function resetForm(strForm) {
    objForm = document.forms[strForm];
    objForm.reset();
    for (i = 0, n = objForm.length; i < n; i++) {
        strElement = objForm[i].name;
        if (strElement != "") {
            objElement = objForm.elements[strElement];
            if (objElement.tagName == "SELECT") {
                objElement.selectedIndex = 0;
            }
            if (objElement.tagName == "INPUT" && objElement.type == "text") {
                objElement.value = "";
            }
        }
    }
    objForm.submit();
}

function fillCombo(objSelect, tableName, fieldCondition, conditionValue, fieldValue, fieldText, addAsFirstOptionValue, addAsFirstOptionText, selectedSelId) {
            //var objSelect = document.getElementById(selectId);
            //objSelect.readonly = true;
            var oDS = new YAHOO.util.XHRDataSource(base_url + "index.php/functions/getData/"); //http://localhost/ci-mk/index.php/functions/getData/
            var oRequest = "tableName=" + tableName + "&fieldCondition=" + fieldCondition + "&conditionValue=" + conditionValue + "&fieldValue=" + fieldValue + "&fieldText=" + fieldText;
            //alert(oRequest);
            oDS.connMethodPost = true;
            oDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
            oDS.responseSchema = {
                recordDelim: "\n",
                fieldDelim: "\t",
                fields: ["id","text"]
            };

            var oFillComboCallback = {
                success:function(oRequest, oParsedResponse, oPayload) {
                    //alert(oParsedResponse.results);
                    //alert(oParsedResponse.results[0]['id'] + "-" + oParsedResponse.results[0]['text']);
                    var i = 0, k,
                        nSelIndex = 0;
                    var nOptions = oParsedResponse.results.length;
                    objSelect.options.length = 0;
                    //alert(addAsFirstOptionValue !== '');
                    if (typeof addAsFirstOptionValue != 'undefined' && (addAsFirstOptionValue !== '' || addAsFirstOptionText !== '')) {
                        objSelect.options[i] = new Option(addAsFirstOptionText, addAsFirstOptionValue);
                        i++;
                        nOptions++;
                    }
                    for (k = 0; i < nOptions; i++, k++) {
                        objSelect.options[i] = new Option(oParsedResponse.results[k]['text'], oParsedResponse.results[k]['id']);
                        if (selectedSelId == oParsedResponse.results[k]['id']) {
                            nSelIndex = i;
                        }
                    }
                    if (nSelIndex != 0)
                        objSelect.options.selectedIndex = nSelIndex;

                    //objSelect.readonly = false;
                },
                failure:function() {
                    alert("Eroare!");
                }
                //scope: oDS,
                //argument:
            }

            oDS.sendRequest(oRequest, oFillComboCallback);

            // Enable caching
            //oDS.maxCacheEntries = 100;
}

function fillComboInstitutie(objSelect, tableName, arrCondition, fieldValue, fieldText, addAsFirstOptionValue, addAsFirstOptionText, selectedSelId) {
            //var objSelect = document.getElementById(selectId);
            //objSelect.readonly = true;
            var oDS = new YAHOO.util.XHRDataSource(base_url + "index.php/functions/getDataForInstitutie/"); //http://localhost/ci-mk/index.php/functions/getData/
            var oRequest = "tableName=" + tableName + "&fieldValue=" + fieldValue + "&fieldText=" + fieldText;

            for (strCondition in arrCondition) {
                oRequest += "&fieldCondition[" + strCondition + "]=" + arrCondition[strCondition];
            }

            //alert(oRequest);
            oDS.connMethodPost = true;
            oDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
            oDS.responseSchema = {
                recordDelim: "\n",
                fieldDelim: "\t",
                fields: ["id","text"]
            };

            var oFillComboCallback = {
                success:function(oRequest, oParsedResponse, oPayload) {
                    //dumpProps(oParsedResponse);
                    //alert(oParsedResponse.results);
                    //alert(oParsedResponse.results[0]['id'] + "-" + oParsedResponse.results[0]['text']);
                    var i = 0, k,
                        nSelIndex = 0;
                    var nOptions = oParsedResponse.results.length;
                    objSelect.options.length = 0;
                    //alert(addAsFirstOptionValue !== '');
                    //if (typeof addAsFirstOptionValue != 'undefined' && (addAsFirstOptionValue !== '' || addAsFirstOptionText !== '')) {
                    if (typeof addAsFirstOptionValue != 'undefined' && typeof addAsFirstOptionText != 'undefined') {
                        objSelect.options[i] = new Option(addAsFirstOptionText, addAsFirstOptionValue);
                        i++;
                        nOptions++;
                    }
                    for (k = 0; i < nOptions; i++, k++) {
                        objSelect.options[i] = new Option(oParsedResponse.results[k]['text'], oParsedResponse.results[k]['id']);
                        if (selectedSelId == oParsedResponse.results[k]['id']) {
                            nSelIndex = i;
                        }
                    }
                    if (nSelIndex != 0)
                        objSelect.options.selectedIndex = nSelIndex;

                    //objSelect.readonly = false;
                },
                failure:function() {
                    alert("Eroare!");
                }
                //scope: oDS,
                //argument:
            }

            oDS.sendRequest(oRequest, oFillComboCallback);

            // Enable caching
            //oDS.maxCacheEntries = 100;
}

function fillComboOpc(selectId, conditionValue, fieldValue, fieldText, addAsFirstOptionValue, addAsFirstOptionText, selectedSelId) {
            var objSelect = document.getElementById(selectId);
            //objSelect.readonly = true;
            var oDS = new YAHOO.util.XHRDataSource(base_url + "index.php/functions/getDataForOpc/"); //http://localhost/ci-mk/index.php/functions/getDataForOpc/
            var oRequest = "conditionValue=" + conditionValue + "&fieldValue=" + fieldValue + "&fieldText=" + fieldText;
            //alert(oRequest);
            oDS.connMethodPost = true;
            oDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
            oDS.responseSchema = {
                recordDelim: "\n",
                fieldDelim: "\t",
                fields: ["id","text"]
            };

            var oFillComboCallback = {
                success:function(oRequest, oParsedResponse, oPayload) {
                    //alert('#' + oParsedResponse.results);
                    //alert(oParsedResponse.results[0]['id'] + "-" + oParsedResponse.results[0]['text']);
                    var i = 0, k,
                        nSelIndex = 0;
                    var nOptions = oParsedResponse.results.length;
                    objSelect.options.length = 0;
                    //alert(addAsFirstOptionValue !== '');
                    if (typeof addAsFirstOptionValue != 'undefined' && (addAsFirstOptionValue !== '' || addAsFirstOptionText !== '')) {
                        objSelect.options[i] = new Option(addAsFirstOptionText, addAsFirstOptionValue);
                        i++;
                        nOptions++;
                    }
                    for (k = 0; i < nOptions; i++, k++) {
                        objSelect.options[i] = new Option(oParsedResponse.results[k]['text'], oParsedResponse.results[k]['id']);
                        if (selectedSelId == oParsedResponse.results[k]['id']) {
                            nSelIndex = i;
                        }
                    }
                    if (nSelIndex != 0)
                        objSelect.options.selectedIndex = nSelIndex;

                    //objSelect.readonly = false;
                },
                failure:function() {
                    alert("Eroare!");
                }
                //scope: oDS,
                //argument:
            }

            oDS.sendRequest(oRequest, oFillComboCallback);

            // Enable caching
            oDS.maxCacheEntries = 50;
}

function checkIfInstitutieExists(nForm) {
    var objInstitutie = objForm.elements['institutie[id]'],
        objDenumire = objForm.elements['denumire'];

    if (objDenumire.value.trim() != '') {
        for (var i = 0, n = objInstitutie.length; i < n; i++) {
            if (objInstitutie.options[i].text.toLowerCase() == objDenumire.value.trim().toLowerCase()) {
                objInstitutie.selectedIndex = i;
                objDenumire.value = "";
                loadInstitutieData(nForm,objInstitutie.options[i].value);
                return true;
                break;
            }
        }
    }
    return false;
}

function checkIfInstitutieExists2() {
    var objInstitutie = objForm.elements['institutie[id]'],
        objDenumire = objForm.elements['denumire'];

    if (objDenumire.value.trim() != '') {
        for (var i = 0, n = objInstitutie.length; i < n; i++) {
            if (objInstitutie.options[i].text.toLowerCase() == objDenumire.value.trim().toLowerCase()) {
                objInstitutie.selectedIndex = i;
                objDenumire.value = "";
                return true;
                break;
            }
        }
    }
    return false;
}

function doWhenAltaScoala() {
    var objDenumire = objForm.elements['denumire'];

    if (objDenumire.value.trim() != '') {
        if (checkIfInstitutieExists2()) {
            doLoadInstitutieDataForCNMK();
        } else {
            var arrElement = new Array();
            arrElement['director'] = document.getElementById('trInstitutieDirector');
            arrElement['director_mandatory'] = objForm.elements['director_mandatory'];
            arrElement['adresa'] = document.getElementById('trInstitutieAdresa');
            arrElement['adresa_mandatory'] = objForm.elements['adresa_mandatory'];
            arrElement['director'].style.display = "";
            arrElement['director_mandatory'].value = 1;
            arrElement['adresa'].style.display = "";
            arrElement['adresa_mandatory'].value = 1;
        }
    }
}

function doLoadInstitutieDataForCNMK() { // CNMK - Concursul National Media Kinder
    var objInstitutie = objForm.elements['institutie[id]'];
    var arrFields = ['director','adresa'],
        arrCondition = new Array();

    arrCondition['id'] = objInstitutie.value;
    loadData('institutie', arrFields, arrCondition, "getInstitutieDataForCNMK", showInstitutieFieldsForCNMK);
}

function showInstitutieFieldsForCNMK(arrFields) {
    var arrElement = new Array();

    arrElement['director'] = document.getElementById('trInstitutieDirector');
    arrElement['adresa'] = document.getElementById('trInstitutieAdresa');
    arrElement['director_mandatory'] = objForm.elements['director_mandatory'];
    arrElement['adresa_mandatory'] = objForm.elements['adresa_mandatory'];

    arrElement['adresa_mandatory'].value = 0;
    if (arrFields) {
        for (strField in arrFields) {
            if (arrFields[strField] == "") {
                arrElement[strField].style.display = "";
                arrElement[strField + '_mandatory'].value = 1;
            } else {
                arrElement[strField].style.display = "none";
                arrElement[strField + '_mandatory'].value = 0;
            }
        }
    }
}

function loadData(tableName, arrFields, arrCondition, strFunctionNamePhp, callbackFunction) {
            var oDS = new YAHOO.util.XHRDataSource(base_url + "index.php/functions/" + strFunctionNamePhp + "/");
            var oRequest = "tableName=" + tableName;

            for (x in arrFields) {
                oRequest += "&fields[" + x + "]=" + arrFields[x];
            }
            for (strCondition in arrCondition) {
                oRequest += "&conditions[" + strCondition + "]=" + arrCondition[strCondition];
            }
            //alert(oRequest);

            oDS.connMethodPost = true;
            oDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
            oDS.responseSchema = {
                recordDelim: "#ENDROW",
                fieldDelim: "#\t",
                fields: arrFields
            };
            /*oDS.doBeforeParseData = function( oRequest , oFullResponse , oCallback ) {
                alert(oFullResponse);
            }*/

            var oFillComboCallback = {
                success:function(oRequest, oParsedResponse, oPayload) {
                    //alert(oParsedResponse);
                    //dumpProps(oParsedResponse);
                    var arrResult = oParsedResponse.results[0] || [];
                    callbackFunction(arrResult);
                },
                failure:function() {
                    alert("Eroare!");
                    callbackFunction(false);
                }
                //scope: oDS,
                //argument:
            }

            oDS.sendRequest(oRequest, oFillComboCallback);

            // Enable caching
            //oDS.maxCacheEntries = 100;
}

function loadInstitutieData(form, institutieId) {
            var oDS = new YAHOO.util.XHRDataSource(base_url + "index.php/functions/getAllDataForInstitutie/"); //http://localhost/ci-mk/index.php/functions/getData/
            //var oRequest = "tableName=" + tableName + "&fieldValue=" + fieldValue + "&fieldText=" + fieldText;
            var oRequest = "form=" + form + "&id=" + institutieId;
            //alert(oRequest);
            var arrElements = new Array();

            arrElements['adresa'] = objForm.elements['institutie[adresa]'];
            arrElements['telefon'] = objForm.elements['institutie[telefon]'];
            arrElements['director'] = objForm.elements['institutie[director]'];
            arrElements['tel_director'] = objForm.elements['institutie[tel_director]'];
            arrElements['email_director'] = objForm.elements['institutie[email_director]'];
            arrElements['nume_coordonator'] = objForm.elements['inscrierepc[nume_coordonator]'];

            //alert(oRequest);
            oDS.connMethodPost = true;
            oDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
            oDS.responseSchema = {
                recordDelim: "#ENDROW",
                fieldDelim: "#\t",
                fields: ["adresa","telefon","director","tel_director","email_director","nume_coordonator"]
            };

            var oFillComboCallback = {
                success:function(oRequest, oParsedResponse, oPayload) {
                    //alert(oParsedResponse);
                    //dumpProps(oParsedResponse);
                    var arrResult = oParsedResponse.results[0] || [];
                    var bFound = false;
                    for (strField in arrResult) {
                        alert(strField + " # " + arrResult[strField]);
                        if (typeof arrElements[strField] != 'undefined') {
                            if (arrResult[strField] != '') {
                                arrElements[strField].value = arrResult[strField];
                                arrElements[strField].style.backgroundColor = "#DDDDDD";
                                //arrElements[strField].onkeypress = new Function("return false;");  //IE don't block the "backspace"
                                arrElements[strField].onkeydown = new Function("return false;");
                                //arrElements[strField].disabled = true;
                                //arrElements[strField].readonly = true;
                                bFound = true;
                            } else {
                                arrElements[strField].value = "";
                                arrElements[strField].style.backgroundColor = "";
                                arrElements[strField].onkeydown = "";
                                /*if (strField == "telefon" || strField == "tel_director") {
                                    arrElements[strField].onkeypress = new Function ("return checkIt(event);");  // generates "event" is not defined error
                                } else {
                                    arrElements[strField].onkeypress = "";
                                }*/
                                //arrElements[strField].disabled = false;
                                //arrElements[strField].readonly = false;
                            }
                        }
                    }

                    if (form == 1 && (typeof arrResult['nume_coordonator'] != 'undefined') && arrResult['nume_coordonator'] != '') {
                        alert('Instituţia selectată de d-voastră este deja înscrisă într-un program şi are un cadru didactic coordonator într-unul dintre programele de contribuţie!\nVă rugăm să ne contactaţi pentru a clarifica situaţia înscrierilor la adresa programe@mediakinder.ro.');
                        objForm.elements['institutie[id]'].selectedIndex = 0;
                    } else if (bFound && document.getElementById('trObservatie1')) {
                        document.getElementById('trObservatie1').style.display = '';
                        document.getElementById('trObservatie2').style.display = '';
                    } else if (document.getElementById('trObservatie1')) {
                        document.getElementById('trObservatie1').style.display = 'none';
                        document.getElementById('trObservatie2').style.display = 'none';
                        objForm.elements['observatie'].innerHTML = "";
                    }

                    if (objForm.elements['institutie[id]'].selectedIndex == 0) {
                        for (strField in arrElements) {
                            //alert(strField + " # " + arrResult[strField]);
                            if (typeof arrElements[strField] != 'undefined') {
                                arrElements[strField].value = "";
                                arrElements[strField].style.backgroundColor = "";
                                arrElements[strField].onkeydown = "";
                            }
                        }
                    }

                },
                failure:function() {
                    alert("Eroare!");
                }
                //scope: oDS,
                //argument:
            }

            oDS.sendRequest(oRequest, oFillComboCallback);

            // Enable caching
            //oDS.maxCacheEntries = 100;
}













var strProgramCorespondent = "",
    bProgramCorespondent = false,
    objForm;

function dumpProps(obj, parent) {
   // Go through all the properties of the passed-in object
   for (var i in obj) {
      // if a parent (2nd parameter) was passed in, then use that to
      // build the message. Message includes i (the object's property name)
      // then the object's property value on a new line
      if (parent) { var msg = parent + "." + i + "\n" + obj[i]; } else { var msg = i + "\n" + obj[i]; }
      // Display the message. If the user clicks "OK", then continue. If they
      // click "CANCEL" then quit this level of recursion
      if (!confirm(msg)) { return; }
      // If this property (i) is an object, then recursively process the object
      if (typeof obj[i] == "object") {
         if (parent) { dumpProps(obj[i], parent + "." + i); } else { dumpProps(obj[i], i); }
      }
   }
}

function checkEmail(txtEmail) {
    	strMail = txtEmail.replace(/ /g,"");
    		regex = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
    	if (regex.test(strMail)) {
    			return true;
    	} else {
    			return false;
    	}
  }

  function checkIt(evt) {
      evt = (evt) ? evt : window.event
      var charCode = (evt.which) ? evt.which : evt.keyCode
      if (charCode > 31 && (charCode < 48 || charCode > 57)) {
          status = "Doar cifre!"
          return false
      }
      status = ""
      return true

  }

  function loadImage(objSel) {
        var objImg = document.getElementById('imgProgram1'),
            selPrg = objSel.options[objSel.selectedIndex].text;
        //alert(selPrg);
        if (selPrg != "") {
            objImg.style.display = "inline";
            objImg.src = base_url + "application/static/images/thumbs/" + selPrg + ".jpg";
        } else {
            objImg.style.display = "none";
        }
  }

  function loadImage2(strPrg) {
        var objImg = document.getElementById('imgProgram2');
        objImg.src = base_url + "application/static/images/thumbs/" + strPrg + ".jpg";
  }

  function nextStep(nPas, callbackFunction) {
        var objNextElement,
            objElements = new Array(),
            objPc_id = document.getElementById('selPc_id'),
            objOpc_id = document.getElementById('selOpc_id'),
            objLocalitateId = objForm.elements['institutie[localitate_id]'],
            objLocalitate = objForm.elements['localitate'],
            objInstitutieId = objForm.elements['institutie[id]'],
            objDenumire = objForm.elements['denumire'],
            objInstitutieTipId = objForm.elements['institutie[tip_id]'],
            strMessage = "Vă rugăm să completaţi toate câmpurile!";

        if ((objPc_id.value >= 1 && objPc_id.value <= 5) || (objPc_id.value >= 9 && objPc_id.value <= 13)) {
            objElements[0] = objForm.elements['institutie[judet_id]'];
            objElements[1] = objForm.elements['institutie[tip_id]'];
            objElements[2] = objForm.elements['institutie[adresa]'];
            objElements[3] = objForm.elements['institutie[telefon]'];
            objElements[4] = objForm.elements['institutie[director]'];
            objElements[5] = objForm.elements['institutie[tel_director]'];
            objElements[6] = objForm.elements['institutie[email_director]'];
            objElements[7] = objForm.elements['inscrierepc[nr_copii]'];
            objElements[8] = objForm.elements['cadru_did[nume]'];
            //objElements[9] = objForm.elements['cadru_did[adresare_id]'];
            objElements[10] = objForm.elements['cadru_did[cnp]'];
            objElements[11] = objForm.elements['cadru_did[functia_id]'];
            objElements[12] = objForm.elements['cadru_did[adresa]'];
            objElements[13] = objForm.elements['cadru_did[telefon_mob]'];
            objElements[14] = objForm.elements['cadru_did[email]'];
            objElements[15] = objForm.elements['inscrierepc[opc_id]'];

            for (x in objElements) {
                objNextElement = objElements[x];
                //alert("check" + x + " - " + objElements[x].name + " - " + objNextElement.value);

                if (x != 5) {
                    if (objNextElement.value.replace(/ /g,"") == '' || objNextElement.value == 0) {
                        //bErr = true;
                        //alert(strMessage + " - " + objElements[x].name + " - " + objNextElement.value.replace(/ /g,"") + " - " + objNextElement.value);
                        alert(strMessage);
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                //alert(objElements[x].name);
                if (x == 0) {
                    if (objLocalitateId.value == 0 && objLocalitate.value.replace(/ /g,"") == "") {
                        alert(strMessage);
                        objLocalitateId.focus();
                        return false;
                        break;
                    } else if (objLocalitateId.value > 0 && objLocalitate.value.replace(/ /g,"") != "") {
                        alert("Aţi ales o localitate şi aţi mai introdus şi o altă localitate! Vă rog să verificaţi!");
                        objLocalitate.focus();
                        return false;
                        break;
                    }
                }
                if (x == 1) {
                    if (objInstitutieId.value == 0 && objDenumire.value.replace(/ /g,"") == "") {
                        alert(strMessage);
                        objInstitutieId.focus();
                        return false;
                        break;
                    } else if (objInstitutieId.value > 0 && objDenumire.value.replace(/ /g,"") != "") {
                        alert("Aţi ales o şcoală / grădiniţă şi aţi mai introdus şi o altă şcoală / grădiniţă! Vă rog să verificaţi!");
                        objDenumire.focus();
                        return false;
                        break;
                    }
                }
                if (x == 3) {
                    if (objNextElement.value.length != 10) {
                        alert("Vă rugăm să verificaţi numărul de telefon al instituţiei. Trebuie să fie format din 10 cifre!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 5) {
                    if (objNextElement.value != "" && objNextElement.value != "07") {
                        if (objNextElement.value.length != 10 || objNextElement.value.substr(0,2) != "07") {
                            alert("Vă rugăm să verificaţi numărul de telefon mobil al directorului!");
                            objNextElement.focus();
                            return false;
                            break;
                        }
                    } else {
                        objNextElement.value = "";
                    }
                }
                if (x == 6) {
                    if (!checkEmail(objNextElement.value)) {
                        alert("Adresă de e-mail incorectă. Verificaţi vă rog!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 10) {
                    var nLen = objNextElement.value.length;
                    if ((objNextElement.value.substr(0,1) != 1) && (objNextElement.value.substr(0,1) != 2) || (nLen != 13)) {
                        alert("CNP invalid!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 13) {
                    if (objNextElement.value.length != 10 || objNextElement.value.substr(0,2) != "07") {
                        alert("Vă rugăm să verificaţi numărul de telefon mobil!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 14) {
                    if (!checkEmail(objNextElement.value)) {
                        alert("Adresă de e-mail incorectă. Verificaţi vă rog!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
            }
            if (document.getElementById('trAcordDirectiune').style.visibility == "visible" && !objForm.elements['chkAcordDirectiune'].checked) {
                //alert("Direcţiunea şcolii trebuie să fie de acord cu înscrierea în Programul de Contribuţie!");
                alert("Direcţiunea instituţiei trebuie să fie de acord cu înscrierea în programul de contribuţie.!");
                return false;
            }

            if (!objForm.elements['chkTermeniConditii'].checked) {
                alert("Trebuie să fiţi de acord cu termenii si cu conditiile!");
                return false;
            }
        } else {
            objElements[0] = objForm.elements['cadru_did[nume]'];
            //objElements[1] = objForm.elements['cadru_did[adresare_id]'];
            objElements[1] = objForm.elements['inscrierepc[opc_id]'];
            objElements[2] = objForm.elements['cadru_did[cnp]'];
            objElements[3] = objForm.elements['cadru_did[functia_id]'];
            objElements[4] = objForm.elements['cadru_did[adresa]'];
            objElements[5] = objForm.elements['cadru_did[telefon_mob]'];
            objElements[6] = objForm.elements['cadru_did[email]'];
            objElements[7] = objForm.elements['institutie[judet_id]'];
            objElements[8] = objForm.elements['institutie[tip_id]'];
            objElements[9] = objForm.elements['institutie[adresa]'];
            objElements[10] = objForm.elements['institutie[telefon]'];

            //alert(objInstitutieTipId.value);
            if (objInstitutieTipId.value == 1) {
                objElements[11] = objForm.elements['inscrierepc[clasa]'];
                objElements[12] = objForm.elements['inscrierepc[litera]'];
            } else {
                objElements[11] = objForm.elements['inscrierepc[grupa_id]'];
            }



            for (x in objElements) {
                objNextElement = objElements[x];
                //alert(x + " # " + objNextElement.name);
                if (objNextElement.value.replace(/ /g,"") == '' || objNextElement.value == 0) {
                    //bErr = true;
                    alert(strMessage);
                    objNextElement.focus();
                    return false;
                    break;
                }
                if (x == 2) {
                    var nLen = objNextElement.value.length;
                    if ((objNextElement.value.substr(0,1) != 1) && (objNextElement.value.substr(0,1) != 2) || (nLen != 13)) {
                        alert("CNP invalid!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 5) {
                    if (objNextElement.value.length != 10 || objNextElement.value.substr(0,2) != "07") {
                        alert("Vă rugăm să verificaţi numărul de telefon mobil!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 6) {
                    if (!checkEmail(objNextElement.value)) {
                        alert("Adresă de e-mail incorectă. Verificaţi vă rog!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }
                if (x == 7) {
                    if (objLocalitateId.value == 0 && objLocalitate.value.replace(/ /g,"") == "") {
                        alert(strMessage);
                        objLocalitateId.focus();
                        return false;
                        break;
                    } else if (objLocalitateId.value > 0 && objLocalitate.value.replace(/ /g,"") != "") {
                        alert("Aţi ales o localitate şi aţi mai introdus şi o altă localitate! Vă rog să verificaţi!");
                        objLocalitate.focus();
                        return false;
                        break;
                    }
                }
                if (x == 8) {
                    if (objInstitutieId.value == 0 && objDenumire.value.replace(/ /g,"") == "") {
                        alert(strMessage);
                        objInstitutieId.focus();
                        return false;
                        break;
                    } else if (objInstitutieId.value > 0 && objDenumire.value.replace(/ /g,"") != "") {
                        alert("Aţi ales o şcoală / grădiniţă şi aţi mai introdus şi o altă şcoală / grădiniţă! Vă rog să verificaţi!");
                        objDenumire.focus();
                        return false;
                        break;
                    }

                }
                if (x == 10) {
                    if (objNextElement.value.length != 10) {
                        alert("Vă rugăm să verificaţi numărul de telefon al instituţiei. Trebuie să fie format din 10 cifre!");
                        objNextElement.focus();
                        return false;
                        break;
                    }
                }

            }

            if (objForm.elements['inscrierepc[nume_coordonator]'].value.replace(/ /g,"") == "" && objForm.elements['chkNuCoordonator'].checked == false) {
                alert(strMessage);
                return false;
            }

            if (!objForm.elements['chkTermeniConditii'].checked) {
                alert("Trebuie să fiţi de acord cu termenii şi cu condiţiile!");
                return false;
            }
        }

        if (nPas == 1) {
            arrTxt = new Array();
            arrElement = new Array();
            arrElement2 = new Array();

            //for (strElement in objForm.elements) {
            for (var i = 0; i < objForm.length; i++) {
                strElement = objForm[i].name;
                if (strElement != "") {
                    //alert(strElement + " # "  + objForm.elements[strElement].tagName + " # " + objForm.elements[strElement].type);
                    bCopy = false;
                    objElement = objForm.elements[strElement];
                    if (objElement.tagName == 'INPUT' && objElement.type == "text") {
                        objText = document.getElementById('f' + nrFormular + 'txt_' + objElement.name);
                        objText.innerHTML = objElement.value;
                        bCopy = true;
                    }
                    if (objElement.tagName == 'SELECT' && objElement.type == "select-one") {
                        //alert('f' + nrFormular + 'txt_' + objElement.name);
                        //alert(objForm.elements[strElement].name + " # " + objElement.selectedIndex);
                        objText = document.getElementById('f' + nrFormular + 'txt_' + objElement.name);
                        objText.innerHTML = objElement.options[objElement.selectedIndex].text;
                        bCopy = true;
                    }
                    if (objElement.tagName == 'TEXTAREA') {
                        objText = document.getElementById('f' + nrFormular + 'txt_' + objElement.name);
                        objText.innerHTML = objElement.value;
                        bCopy = true;
                    }

                    if (bCopy) {
                        arrTxt.push(objText);
                        if (objElement.style.display != "none") {
                            //alert(objElement + " # " + objElement.name);
                            arrElement.push(objElement);
                        }
                        objElement.style.display = "none";
                    }
                }
            }

            var objElement1 = document.getElementById('trObservatie1');
            var objElement2 = document.getElementById('trObservatie2');
            if (objForm.elements['observatie'].value.replace(/ /g,'') == '' && (objElement1.style.display != "none" && objElement2.style.display != "none")) {
                arrElement2.push(objElement1);
                arrElement2.push(objElement2);
                objElement1.style.display = "none";
                objElement2.style.display = "none";
            }

            var objDivNuCoordonator = document.getElementById('divNuCoordonator');
            var objChkNuCoordonator = document.getElementById('chkNuCoordonator');
            var objH3NuCoordonator = document.getElementById('h3NuCoordonator');
            if (objChkNuCoordonator.checked) {
                objDivNuCoordonator.style.display = "block";
                objChkNuCoordonator.style.display = "none";
                objH3NuCoordonator.style.color = "#0000ee";
            } else {
                objDivNuCoordonator.style.display = "none";
                //objDivNuCoordonator.style.color = "";
            }

            var objButton = document.getElementById('btnPas1');
            objButton.style.display = "none";
            //arrElement.push(objButton);

            objButton = document.getElementById('btnPas2_1');
            objButton.style.display = "none";
            //arrElement.push(objButton);

            objButton = document.getElementById('btnPas2_2');
            objButton.style.display = "none";
            //arrElement.push(objButton);

            objButton = document.getElementById('btnEditare1');
            objButton.style.display = "inline";

            objButton = document.getElementById('btnEditare2');
            objButton.style.display = "inline";

            objButton = document.getElementById('btnFinalizare1');
            objButton.style.display = "inline";

            objButton = document.getElementById('btnFinalizare2');
            objButton.style.display = "inline";

            window.scroll(0,0);
            var objDivMessageTop = document.getElementById('divMessageTop');
            objDivMessageTop.style.display = "block";

        } else if (typeof callbackFunction == "function") {
            callbackFunction();
        } else {
            objForm.submit();
        }

        return true;

  }


function editForm() {
    for (x in arrTxt) {
        arrTxt[x].innerHTML = "";
    }
    for (x in arrElement) {
        arrElement[x].style.display = "inline";
    }
    for (x in arrElement2) {
        arrElement2[x].style.display = "";
    }

    objDivNuCoordonator = document.getElementById('divNuCoordonator');
    objChkNuCoordonator = document.getElementById('chkNuCoordonator');
    objH3NuCoordonator = document.getElementById('h3NuCoordonator');
    objDivNuCoordonator.style.display = "block";
    objChkNuCoordonator.style.display = "inline";
    objH3NuCoordonator.style.color = "";

    //objButton = document.getElementById('btnPas1');
    //objButton.style.display = "inline";

    objButton = document.getElementById('btnPas2_1');
    objButton.style.display = "inline";

    objButton = document.getElementById('btnPas2_2');
    objButton.style.display = "inline";

    objButton = document.getElementById('btnEditare1');
    objButton.style.display = "none";

    objButton = document.getElementById('btnEditare2');
    objButton.style.display = "none";

    objButton = document.getElementById('btnFinalizare1');
    objButton.style.display = "none";

    objButton = document.getElementById('btnFinalizare2');
    objButton.style.display = "none";

    var objDivMessageTop = document.getElementById('divMessageTop');
    objDivMessageTop.style.display = "none";
    window.scroll(0,0);
}

function hideForm() {
    document.getElementById('formContent').innerHTML = "";
    document.getElementById('btnPas1').style.display = "inline";
}

function showForm(bObiect,bPc) {
    var objProgram = document.getElementById('selPc_id');
    var objObiect = document.getElementById('selOpc_id');
    var strMessage = "Vă rugăm să completaţi toate câmpurile!";
    var bMessage = false;
    var bAcordDirectiune = false;
    if (typeof bPc == "undefined") {
        bPc = true;
    }
    if (typeof bObiect == "undefined") {
        bObiect = true;
    }

    if (bPc && (objProgram.value == 0 || objProgram.value == '')) {
        bMessage = true;
    }
    if (bObiect && (objObiect.value == 0 || objObiect.value == "")) {
        bMessage = true;
    }

    if (bMessage) {
        alert(strMessage);
    } else {
        if ((objProgram.value >= 1 && objProgram.value <= 5) || (objProgram.value >= 9 && objProgram.value <= 13)) {
            document.getElementById('formContent').innerHTML = document.getElementById('divFormular1').innerHTML;
            nrFormular = 1;
        } else {
            document.getElementById('formContent').innerHTML = document.getElementById('divFormular2').innerHTML;
            nrFormular = 2;
        }
        document.getElementById('btnPas1').style.display = "none";

        strProgramSelectat = objProgram.options[objProgram.selectedIndex].text.toLowerCase();
        switch (strProgramSelectat) {
            case 'amk4': strProgramCorespondent = "amk10"; break;
            case 'amk5': strProgramCorespondent = "amk11"; break;
            case 'amk6': strProgramCorespondent = "amk12"; break;
            case 'amk7': strProgramCorespondent = "amk12"; break;
            case 'amk8': strProgramCorespondent = "amk13"; break;
            default:
                strProgramCorespondent = "";
        }

        switch (strProgramSelectat) {
            case 'amk9': bAcordDirectiune = false; break;
            case 'amk10': bAcordDirectiune = false; break;
            case 'amk11': bAcordDirectiune = false; break;
            case 'amk12': bAcordDirectiune = false; break;
            case 'amk13': bAcordDirectiune = false; break;
            default: bAcordDirectiune = true;
        }
        document.getElementById('trAcordDirectiune').style.visibility = ((bAcordDirectiune)?"visible":"hidden");

        if (strProgramCorespondent != '') {
            document.getElementById('spanAmkName0').innerHTML = strProgramSelectat;
            document.getElementById('spanAmkName1').innerHTML = strProgramSelectat;
            document.getElementById('spanAmkName2').innerHTML = strProgramCorespondent;
            document.getElementById('spanAmkName3').innerHTML = strProgramCorespondent;

            loadImage2(strProgramCorespondent);

            document.getElementById('trCorespondent').style.display = "";
            document.getElementById('trCorespondentImg').style.display = "";
        } else {
            document.getElementById('trCorespondent').style.display = "none";
            document.getElementById('trCorespondentImg').style.display = "none";
        }
    }

}

function fillInstitutie() {
    var judetId = objForm.elements['institutie[judet_id]'].value,
        localitateId = objForm.elements['institutie[localitate_id]'].value,
        institutieTipId = objForm.elements['institutie[tip_id]'].value,
        objInstitutie = objForm.elements['institutie[id]'],
        arrCondition = new Array();

    if (judetId != 0 && judetId != '' && localitateId != 0 && localitateId != '' && institutieTipId != 0 && institutieTipId != '') {
        arrCondition["institutie_judet_id"] = judetId;
        arrCondition["institutie_localitate_id"] = localitateId;
        arrCondition["institutie_tip_id"] = institutieTipId;
        arrCondition["institutie_deleted"] = 0;

        fillComboInstitutie(objInstitutie,'institutie', arrCondition ,'institutie_id','institutie_denumire',0,'');
        //fillComboInstitutie(\'selInstitutie\',\'institutie\',\'institutie_judet_id\',judetId,\'institutie_localitate_id\',localitateId,\'institutie_tip_id\',institutieId,\'institutie_id\',\'institutie_denumire\',0,\'&nbsp;\');"');
    } else {
        objInstitutie.length = 0;
        objInstitutie.options[0] = new Option("", 0);
    }

}

function fillInstitutie2() {
    var judetId = objForm.elements['institutie[judet_id]'].value,
        localitateId = objForm.elements['institutie[localitate_id]'].value,
        //institutieTipId = objForm.elements['institutie[tip_id]'].value,
        objInstitutie = objForm.elements['institutie[id]'],
        arrCondition = new Array();

    //if (judetId != 0 && judetId != '' && localitateId != 0 && localitateId != '' && institutieTipId != 0 && institutieTipId != '') {
    if (judetId != 0 && judetId != '' && localitateId != 0 && localitateId != '') {
        arrCondition["institutie_judet_id"] = judetId;
        arrCondition["institutie_localitate_id"] = localitateId;
        arrCondition["institutie_tip_id"] = 1; //scoala
        arrCondition["institutie_deleted"] = 0;

        fillComboInstitutie(objInstitutie,'institutie', arrCondition ,'institutie_id','institutie_denumire',0,'');
    } else {
        objInstitutie.length = 0;
        objInstitutie.options[0] = new Option("", 0);
    }

}

function switchFieldsForInstitutie(selValue) {
    var objClasa = objForm.elements['inscrierepc[clasa]'],
        objGrupa = objForm.elements['inscrierepc[grupa_id]'],
        objLitera = objForm.elements['inscrierepc[litera]'],
        objGrupaNume = objForm.elements['inscrierepc[grupa_nume]'],
        objTrGrupaDetail = document.getElementById('trGrupaDetail');
    switch (selValue) {
        case '1':
                objClasa.style.display = "inline";
                objLitera.style.display = "inline";
                objGrupa.style.display = "none";
                objGrupa.selectedIndex = 0;
                objTrGrupaDetail.style.display = "none";
                objGrupaNume.value = "";
                break;
        case '2':
                objClasa.style.display = "none";
                objLitera.style.display = "none";
                objGrupa.style.display = "inline";
                objClasa.selectedIndex = 0;
                objLitera.selectedIndex = 0;
                objTrGrupaDetail.style.display = "";
                break;
    }
}

function doIfChangeJudet(selectedLocalitateId) {
    //objForm.elements['institutie[id]'].length = 0;
    //fillCombo(objForm.elements['institutie[localitate_id]'],'localitate','localitate_judet_id',this.value,'localitate_id','localitate_denumire',0,'&nbsp;');

    var objJudet = objForm.elements['institutie[judet_id]'],
        objLocalitate = objForm.elements['institutie[localitate_id]'],
        objInstitutie = objForm.elements['institutie[id]'],
        objLabel1 = document.getElementById('lblLocalitate1'),
        objLabel2 = document.getElementById('lblLocalitate2');

    if (typeof objInstitutie != 'undefined') {
        objInstitutie.length = 1;
    }

    //alert(objJudet.options[objJudet.selectedIndex].text);
    if (objJudet.options[objJudet.selectedIndex].text.trim() == "Bucureşti") {
        if (objLabel1) {
            objLabel1.innerHTML = "Sector:";
        }
        if (objLabel2) {
            objLabel2.innerHTML = "Sector:";
        }
    } else {
        if (objLabel1) {
            objLabel1.innerHTML = "Localitate:";
        }
        if (objLabel2) {
            objLabel2.innerHTML = "Localitate:";
        }
    }
    fillCombo(objLocalitate,'localitate','localitate_judet_id',objJudet.value,'localitate_id','localitate_denumire',0,'',((typeof selectedLocalitateId != "undefined")?selectedLocalitateId:''));
}

function enlargeDropdown(objSel) {
    objSel.style.position = "absolute";
    objSel.style.width = "auto";
}

function shortDropdown(objSel) {
    objSel.style.position = "static";
    objSel.style.width = "";
}

