﻿// JavaScript Document

//funkcja zarzadzajaca formularzem dla
//edycji organizacji
function displayMenusOrgEdit(pointer){
            var selectedOption = pointer.options[pointer.selectedIndex].value;
        
            if(selectedOption == 'SZKOL'){
                document.forms[0].elements[8].disabled=false;
                document.forms[0].elements[9].disabled=false;
                document.forms[0].elements[17].disabled=false;
                document.forms[0].elements[18].disabled=false;
                document.forms[0].elements[19].disabled=false;
                document.forms[0].elements[20].disabled=false;
                document.forms[0].elements[21].disabled=false;
                document.forms[0].elements[22].disabled=false;
                document.forms[0].elements[23].disabled=false;
                document.forms[0].elements[24].disabled=false;
                document.forms[0].elements[25].disabled=false;
            }
            else if(selectedOption == 'ORGPR' || selectedOption == 'ORGNZ'){
                document.forms[0].elements[8].disabled=true;
                document.forms[0].elements[9].disabled=true;
                document.forms[0].elements[8].value='';
                document.forms[0].elements[9].value='';
                document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
                document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
                document.forms[0].elements[17].disabled=true;
                document.forms[0].elements[18].disabled=true;
                document.forms[0].elements[19].disabled=true;
                
                document.forms[0].elements[20].disabled=true;
                document.forms[0].elements[21].disabled=true;
                document.forms[0].elements[22].disabled=true;
                document.forms[0].elements[23].disabled=true;
                document.forms[0].elements[24].disabled=true;
                document.forms[0].elements[25].disabled=true;
                
                document.forms[0].elements[18].checked=false;
                document.forms[0].elements[19].checked=false;
                document.forms[0].elements[20].checked=false;
                document.forms[0].elements[21].checked=false;
                document.forms[0].elements[22].checked=false;
                document.forms[0].elements[23].checked=false;
            }
            else{
                document.forms[0].elements[8].disabled=false;
                document.forms[0].elements[9].disabled=false;
            
                document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
                document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
                document.forms[0].elements[19].value=document.forms[0].elements[19].options[0].value;
                
                document.forms[0].elements[18].checked=false;
                document.forms[0].elements[19].checked=false;
                document.forms[0].elements[20].checked=false;
                document.forms[0].elements[21].checked=false;
                document.forms[0].elements[22].checked=false;
                document.forms[0].elements[23].checked=false;
                
                document.forms[0].elements[19].disabled=false;
                document.forms[0].elements[20].disabled=true;
                document.forms[0].elements[21].disabled=true;
                document.forms[0].elements[22].disabled=true;
                document.forms[0].elements[23].disabled=true;
                document.forms[0].elements[24].disabled=true;
                document.forms[0].elements[25].disabled=true;
                document.forms[0].elements[17].disabled=true;
                document.forms[0].elements[18].disabled=true;
            }
        }

//funkcja inicjalizujaca wyglad formularza
//dla edycji organizacji 
function initFormOrgEdit(){
            
    if(orgRegonFlag == 'false')
        document.getElementById('errormsg').style.display='block';
            
    var orgTypeSel = document.forms[0].elements[7];
            
    var selectedOption = orgTypeSel.options[orgTypeSel.selectedIndex].value;
        if(selectedOption == 'SZKOL'){
            document.forms[0].elements[8].disabled=false;
            document.forms[0].elements[9].disabled=false;
            document.forms[0].elements[17].disabled=false;
            document.forms[0].elements[18].disabled=false;
            document.forms[0].elements[19].disabled=false;
            document.forms[0].elements[20].disabled=false;
            document.forms[0].elements[21].disabled=false;
            document.forms[0].elements[22].disabled=false;
            document.forms[0].elements[23].disabled=false;
            document.forms[0].elements[24].disabled=false;
            document.forms[0].elements[23].disabled=false;
         }
         else if(selectedOption == 'ORGPR' || selectedOption == 'ORGNZ'){
            document.forms[0].elements[8].disabled=true;
            document.forms[0].elements[9].disabled=true;
            document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
            document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
            document.forms[0].elements[17].disabled=true;
            document.forms[0].elements[18].disabled=true;
            document.forms[0].elements[19].disabled=true;
                
            document.forms[0].elements[22].checked=false;
            document.forms[0].elements[23].checked=false;
            document.forms[0].elements[24].checked=false;
            document.forms[0].elements[25].checked=false;
                
            document.forms[0].elements[20].disabled=true;
            document.forms[0].elements[21].disabled=true;
            document.forms[0].elements[22].disabled=true;
            document.forms[0].elements[23].disabled=true;
            document.forms[0].elements[24].disabled=true;
            document.forms[0].elements[25].disabled=true;
         }
         else{
            document.forms[0].elements[8].disabled=false;
            document.forms[0].elements[9].disabled=false;
            
            document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
            document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
              
            document.forms[0].elements[22].checked=false;
            document.forms[0].elements[23].checked=false;
            document.forms[0].elements[24].checked=false;
            document.forms[0].elements[25].checked=false;
                
            document.forms[0].elements[19].disabled=false;
            document.forms[0].elements[20].disabled=true;
            document.forms[0].elements[21].disabled=true;
            document.forms[0].elements[22].disabled=true;
            document.forms[0].elements[23].disabled=true;
            document.forms[0].elements[24].disabled=true;
            document.forms[0].elements[25].disabled=true;
            document.forms[0].elements[17].disabled=true;
            document.forms[0].elements[18].disabled=true;
         }
}
//funkcja czyszczaca informacje o blednym regonie
//wykorzystywana w edycji jednostki oraz
//przy tworzeniu nowej
function clearRegonInfo(){
    document.getElementById('regonAlertMsg').innerHTML='';
}

//funkcja zarzadzajaca wyswietlaniem informacji
//zwrotnych z zapytania ajax
//wykorzystywana w edycji i dodawaniu
//organizacji
function manageRegon(value){
    var pointer = document.getElementById('regonAlertMsg');
    var info = document.createElement("div");
    if(value == null){
        orgRegonFlag = 'false';
        document.getElementById('errormsg').style.display='block';
        info.className = 'error';
        info.innerHTML= '! Wystąpił błąd wewnętrzny. Proszę spróbować wpisać kod jeszcze raz';
        pointer.appendChild(info);
    }
    if(value == 'true'){
        orgRegonFlag = 'true';
        if(validated == true)
            document.getElementById('errormsg').style.display='none';
        info.className = 'ok';
        info.innerHTML= ' Podany regon jest prawidłowy';
        pointer.appendChild(info);
    }
    if(value == 'false'){
        orgRegonFlag = 'false';
        document.getElementById('errormsg').style.display='block';
        if(document.getElementById('okmsg'))
            document.getElementById('okmsg').style.display='none';
        info.className = 'error';
        info.innerHTML= '! Podany regon jest nieprawidłowy';
        pointer.appendChild(info);
    }
	if(value == 'used'){
        orgRegonFlag = 'used';
        document.getElementById('errormsg').style.display='block';
        if(document.getElementById('okmsg'))
            document.getElementById('okmsg').style.display='none';
        info.className = 'error';
        info.innerHTML= '! Podany regon jest juz użyty';
        pointer.appendChild(info);
    }
}
//funcja przekierowuje do listy organizacji
//wykorzystywana w edycji rganizacji
function cancelEditOrgForm(){
    url = '/edunet_admin/OrganizationList.jsp';
    var confirmFlag = confirm("Czy na pewno chcesz zrezygnować z edycji i przejść do listy?");
    if(confirmFlag)
        submitEditOrgForm('search');
}
//ukrywa obszar z bledem
//wykorzystywana w edycji i dodawaniu organizacji
function hideErrorArea(){
    document.getElementById('errormsg').style.display='none';
}
//waliduje caly formularz edycji organizacji     
function validateEditOrgForm(){
    //triggerRegExVal('regon',"^[0-9]{14}$|(^$)","! Wpisz regon w poprawnym formacie");
    triggerVal('typ_jednostki', isSelectNoEmpty,"! Musisz wybrać typ jednostki");
    triggerVal('typ_szkoly', isNotFirstSelectedInOrg,"! Wybierz typ szkoy");
    triggerVal('nr_telefonu', validatePhoneAny, "! Podany format telefonu jest błędny");
    triggerVal('email',validateEmail,"! Wpisz adres email w poprawnym formacie");
    triggerVal('nazwa',isNotEmpty,"! Pole jest obowiązkowe");
    triggerVal('kod_miejscowosc',validatePostcodePlace, "! Podany format jest błędny");
    triggerVal('stronawww',validateWWW, "! Podaj adres strony WWW w poprawnym formacie");
}

//funkcja ajaxowa odpytujaca o poprawnosc regonu
function requestForRegon(pointer){
    var value = pointer.value;
    if(value == ''){		
    	//triggerVal('regon',isNotEmpty,"! Musisz podać regon");
        orgRegonFlag = 'true';
        return;
    }
    var pattern = new RegExp("^[0-9]{14}$|(^$)");
	if( !(value.match(pattern))){
             triggerRegExVal('regon',"^[0-9]{14}$|(^$)","! Wpisz regon w poprawnym formacie");
             if(document.getElementById('okmsg'))
                document.getElementById('okmsg').style.display='none';
             return;
        }
    var params = 'action=ajax&orgRegon='+value;
    new Ajax.Request('ajaxProcessor',
        {
            method:'get',
            parameters : params,
            asynchronous : true,
            requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
            onComplete: function(transport){
            var response = transport.responseXML;
            manageRegon(response.getElementsByTagName("regonFlag").item(0).firstChild.data);
        },
            onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
        });
}
//submit dla edycji organizacji
function submitEditOrgForm(taskValue){
    if(taskValue == 'search'){
       document.forms[0].task.value=taskValue;
       document.forms[0].submit();
       return;
    }
        
    validated = true;
        clearAlerts('orgListForm');
        validateEditOrgForm();
        if(validated == true && orgRegonFlag == 'true'){
            document.forms[0].task.value=taskValue;
            document.forms[0].submit();
            return;
        }
        if(orgRegonFlag == 'false'){
            manageRegon('false');
        }
		if(orgRegonFlag == 'used'){
            manageRegon('used');
        }
        if(document.getElementById('okmsg')){
            alert('jest');
            document.getElementById('okmsg').style.display='none';
        }
        document.getElementById('errormsg').style.display='block';
}

//funkcja inicjalizuje widok formularza
//wykorzystywana w liscie organizacji
function initOrgListForm(){
    var firstSelPointer = document.forms[0].elements[1];
    var selectedOption = firstSelPointer.options[firstSelPointer.selectedIndex].value;
    var secSelPointer = document.forms[0].elements[2];
    var thirdSelPointer = document.forms[0].elements[3];
        if(firstSelPointer.value != null && firstSelPointer.value == 'SZKOL'){
            secSelPointer.disabled=false;
        }
        if(selectedOption != null && selectedOption == 'ZESPS'){
            secSelPointer.disabled=false;
            thirdSelPointer.disabled=false;
        }
        if(selectedOption != null && selectedOption != 'ZESPS'){
            thirdSelPointer.disabled=true;
            thirdSelPointer.value=thirdSelPointer.options[0].value;
        }
        if(selectedOption != null && selectedOption != 'ZESPS' && selectedOption != 'SZKOL'){
            secSelPointer.disabled=true;
            secSelPointer.value=thirdSelPointer.options[0].value;
            thirdSelPointer.disabled=true;
            thirdSelPointer.value=thirdSelPointer.options[0].value;
        }
}

//funkcja inicjalizuje widok formularza
//wykorzystywana w liscie organizacji
function initOrgListForm2(){
    var firstSelPointer = document.forms[1].elements[1];
    var selectedOption = firstSelPointer.options[firstSelPointer.selectedIndex].value;
    var secSelPointer = document.forms[1].elements[2];
    var thirdSelPointer = document.forms[1].elements[3];
        if(firstSelPointer.value != null && firstSelPointer.value == 'SZKOL'){
            secSelPointer.disabled=false;
        }
        if(selectedOption != null && selectedOption == 'ZESPS'){
            secSelPointer.disabled=false;
            thirdSelPointer.disabled=false;
        }
        if(selectedOption != null && selectedOption != 'ZESPS'){
            thirdSelPointer.disabled=true;
            thirdSelPointer.value=thirdSelPointer.options[1].value;
        }
        if(selectedOption != null && selectedOption != 'ZESPS' && selectedOption != 'SZKOL'){
            secSelPointer.disabled=true;
            secSelPointer.value=thirdSelPointer.options[1].value;
            thirdSelPointer.disabled=true;
            thirdSelPointer.value=thirdSelPointer.options[1].value;
        }
}

//funkcja zarzadzajaca widokiem formularza
//listy organizacji
function displayOrgListMenus(pointer){
        var selectedOption = pointer.options[pointer.selectedIndex].value;
        
        if(selectedOption == 'SZKOL'){
            document.forms[0].elements[2].disabled=false;
        }
        if(selectedOption == 'ZESPS'){
           
            document.forms[0].elements[2].disabled=false;
            document.forms[0].elements[3].disabled=false;
        }
        if(selectedOption != 'ZESPS'){
            
            document.forms[0].elements[3].disabled=true;
            document.forms[0].elements[3].value=document.forms[0].elements[2].options[0].value;
        }
        if(selectedOption != 'SZKOL' && selectedOption != 'ZESPS'){
            
            document.forms[0].elements[2].disabled=true;
            document.forms[0].elements[3].disabled=true;
            document.forms[0].elements[2].value=document.forms[0].elements[2].options[0].value;
            document.forms[0].elements[3].value=document.forms[0].elements[3].options[0].value;
        }
}

//funkcja zarzadzajaca widokiem formularza
//listy organizacji
function displayOrgListMenus2(pointer){
        var selectedOption = pointer.options[pointer.selectedIndex].value;
        
        if(selectedOption == 'SZKOL'){
            document.forms[1].elements[2].disabled=false;
        }
        if(selectedOption == 'ZESPS'){      
            document.forms[1].elements[2].disabled=false;
            document.forms[1].elements[3].disabled=false;
        }
        if(selectedOption != 'ZESPS'){
            
            document.forms[1].elements[3].disabled=true;
            document.forms[1].elements[3].value=document.forms[1].elements[2].options[0].value;
        }
        if(selectedOption != 'SZKOL' && selectedOption != 'ZESPS'){
            
            document.forms[1].elements[2].disabled=true;
            document.forms[1].elements[3].disabled=true;
            document.forms[1].elements[2].value=document.forms[1].elements[2].options[0].value;
            document.forms[1].elements[3].value=document.forms[1].elements[3].options[0].value;
        }
        if(selectedOption == '0') {
            document.forms[1].elements[2].selectedIndex=0;
            document.forms[1].elements[3].selectedIndex=0;
        }
}
//submit dla listy organizacji    
function submitOrgListForm(taskValue){
        document.forms[0].task.value=taskValue;
        document.forms[0].submit();
}

//submit dla listy organizacji    
function submitOrgListForm2(taskValue){
        document.forms[1].task.value=taskValue;
        document.forms[1].submit();
}

function displayMenusOrgNew(pointer){
    var selectedOption = pointer.options[pointer.selectedIndex].value;
        
    if(selectedOption == 'SZKOL'){
        document.forms[0].elements[8].disabled=false;
        document.forms[0].elements[9].disabled=false;
        document.forms[0].elements[17].disabled=false;
        document.forms[0].elements[18].disabled=false;
        document.forms[0].elements[19].disabled=false;
        document.forms[0].elements[20].disabled=false;
        document.forms[0].elements[21].disabled=false;
        document.forms[0].elements[22].disabled=false;
        document.forms[0].elements[23].disabled=false;
        document.forms[0].elements[24].disabled=false;
        document.forms[0].elements[25].disabled=false;
     }
     else if(selectedOption == 'ORGPR' || selectedOption == 'ORGNZ'){
        document.forms[0].elements[8].disabled=true;
        document.forms[0].elements[9].disabled=true;
        document.forms[0].elements[8].value='';
        document.forms[0].elements[9].value='';
        document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
        document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
        document.forms[0].elements[17].disabled=true;
        document.forms[0].elements[18].disabled=true;
        document.forms[0].elements[19].disabled=true;
                
        document.forms[0].elements[20].disabled=true;
        document.forms[0].elements[21].disabled=true;
        document.forms[0].elements[22].disabled=true;
        document.forms[0].elements[23].disabled=true;
        document.forms[0].elements[24].disabled=true;
        document.forms[0].elements[25].disabled=true;
                
        document.forms[0].elements[18].checked=false;
        document.forms[0].elements[19].checked=false;
        document.forms[0].elements[20].checked=false;
        document.forms[0].elements[21].checked=false;
        document.forms[0].elements[22].checked=false;
        document.forms[0].elements[23].checked=false;
     }
      else{
        document.forms[0].elements[8].disabled=false;
        document.forms[0].elements[9].disabled=false;
            
        document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
        document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
        document.forms[0].elements[19].value=document.forms[0].elements[19].options[0].value;
                
        document.forms[0].elements[18].checked=false;
        document.forms[0].elements[19].checked=false;
        document.forms[0].elements[20].checked=false;
        document.forms[0].elements[21].checked=false;
        document.forms[0].elements[22].checked=false;
        document.forms[0].elements[23].checked=false;
                
        document.forms[0].elements[19].disabled=false;
        document.forms[0].elements[20].disabled=true;
        document.forms[0].elements[21].disabled=true;
        document.forms[0].elements[22].disabled=true;
        document.forms[0].elements[23].disabled=true;
        document.forms[0].elements[24].disabled=true;
        document.forms[0].elements[25].disabled=true;
        document.forms[0].elements[17].disabled=true;
        document.forms[0].elements[18].disabled=true;
      }
}  
        
function initFormOrgNew(){
    if(orgCodeFlag == false || orgRegonFlag == 'false')
        document.getElementById('errormsg').style.display='block';
            
        var orgTypeSel = document.forms[0].elements[7];
            
        var selectedOption = orgTypeSel.options[orgTypeSel.selectedIndex].value;
            if(selectedOption == 'SZKOL'){
                document.forms[0].elements[8].disabled=false;
                document.forms[0].elements[9].disabled=false;
                document.forms[0].elements[17].disabled=false;
                document.forms[0].elements[18].disabled=false;
                document.forms[0].elements[19].disabled=false;
                document.forms[0].elements[20].disabled=false;
                document.forms[0].elements[21].disabled=false;
                document.forms[0].elements[22].disabled=false;
                document.forms[0].elements[23].disabled=false;
                document.forms[0].elements[24].disabled=false;
                document.forms[0].elements[23].disabled=false;
            }
            else if(selectedOption == 'ORGPR' || selectedOption == 'ORGNZ'){
                document.forms[0].elements[8].disabled=true;
                document.forms[0].elements[9].disabled=true;
                document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
                document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
                document.forms[0].elements[17].disabled=true;
                document.forms[0].elements[18].disabled=true;
                document.forms[0].elements[19].disabled=true;
                
                document.forms[0].elements[22].checked=false;
                document.forms[0].elements[23].checked=false;
                document.forms[0].elements[24].checked=false;
                document.forms[0].elements[25].checked=false;
                
                document.forms[0].elements[20].disabled=true;
                document.forms[0].elements[21].disabled=true;
                document.forms[0].elements[22].disabled=true;
                document.forms[0].elements[23].disabled=true;
                document.forms[0].elements[24].disabled=true;
                document.forms[0].elements[25].disabled=true;
            }
            else{
                document.forms[0].elements[8].disabled=false;
                document.forms[0].elements[9].disabled=false;
            
                document.forms[0].elements[17].value=document.forms[0].elements[17].options[0].value;
                document.forms[0].elements[18].value=document.forms[0].elements[18].options[0].value;
                document.forms[0].elements[19].value=document.forms[0].elements[19].options[0].value;
                
                document.forms[0].elements[22].checked=false;
                document.forms[0].elements[23].checked=false;
                document.forms[0].elements[24].checked=false;
                document.forms[0].elements[25].checked=false;
                
                document.forms[0].elements[19].disabled=false;
                document.forms[0].elements[20].disabled=true;
                document.forms[0].elements[21].disabled=true;
                document.forms[0].elements[22].disabled=true;
                document.forms[0].elements[23].disabled=true;
                document.forms[0].elements[24].disabled=true;
                document.forms[0].elements[25].disabled=true;
                document.forms[0].elements[17].disabled=true;
                document.forms[0].elements[18].disabled=true;
            }
}
//czysci info o blednym kodzie organizacji
function clearOrgCode(){
        document.getElementById('kod_jednostkiAlertMsg').innerHTML='';
}
//zarzadza wyswietlaniem info o kodzie organizacji
function manageOrgCode(value){
        var pointer = document.getElementById('kod_jednostkiAlertMsg');
        var info = document.createElement("div");
        if(value == null){
            orgCodeFlag = false;
            document.getElementById('errormsg').style.display='block';
            info.className = 'error';
            info.innerHTML= '! Wystpi błąd wewntrzny. Proszę spróbować wpisać kod jeszcze raz';
            pointer.appendChild(info);
        }
        if(value == 'true'){
            orgCodeFlag = true;
            if(validated == true)
                document.getElementById('errormsg').style.display='none';
            info.className = 'ok';
            info.innerHTML= ' Podany kod jest prawidłowy';
            pointer.appendChild(info);
        }
        if(value == 'false'){
            orgCodeFlag = false;
            if(document.getElementById('okmsg'))
                document.getElementById('okmsg').style.display='none';
            document.getElementById('errormsg').style.display='block';
            info.className = 'error';
            info.innerHTML= '! Podany kod już występuje. Proszę wpisać nowy';
            pointer.appendChild(info);
        }
}
//ajaxowe zapytanie o kod organizacji
function requestForOrgCode(pointer){
        var value = pointer.value;
        if(value == ''){
            triggerVal('kod_jednostki',isNotEmpty,"! Pole jest obowiązkowe");
            return;
        }
            
        var flag = testCode(pointer);
        if(flag == false){
            if(document.getElementById('okmsg'))
                document.getElementById('okmsg').style.display='none';
            triggerVal('kod_jednostki',testCode,"! Podaj kod w poprawnym formacie");
            return;
         }
        
        var params = 'action=ajax&ajaxOrgCode='+value;
        new Ajax.Request('ajaxProcessor',
        {
            method:'get',
            parameters : params,
            asynchronous : true,
            requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
            onComplete: function(transport){
            var response = transport.responseXML;
            manageOrgCode(response.getElementsByTagName("orgFlag").item(0).firstChild.data);
        },
            onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
        });
}

function cancelNewOrgFrom(){
        url = '/edunet_admin/OrganizationList.jsp';
        var confirmFlag = confirm("Czy na pewno chcesz zrezygnować z edycji i przejść do listy?");
        if(confirmFlag)
            submitNewOrgForm('search');
}
//waliduje formularz dla nowej organizacji 
function validateNewOrgForm(){
		//triggerVal('regon', isNotEmpty,"! Musisz podać regon");		//regon nieobowiązkowy
        triggerRegExVal('regon',"^[0-9]{14}$|(^$)","! Wpisz regon w poprawnym formacie");
        triggerVal('typ_jednostki', isSelectNoEmpty,"! Musisz wybrać typ jednostki");
        triggerVal('typ_szkoly', isNotFirstSelectedInOrg,"! Wybierz typ szkoy");
        triggerVal('nr_telefonu', validatePhoneAny, "! Podany format telefonu jest błędny");
        triggerVal('email',validateEmail,"! Wpisz adres email w poprawnym formacie");
        triggerVal('nazwa',isNotEmpty,"! Pole jest obowiązkowe");
        triggerVal('kod_jednostki',isNotEmpty,"! Pole jest obowiązkowe");
		triggerVal('kod_jednostki',testCode,"! Podaj kod w poprawnym formacie");
        triggerVal('kod_miejscowosc',validatePostcodePlace, "! Podany format jest błędny");
        triggerVal('stronawww',validateWWW, "! Podaj adres strony WWW w poprawnym formacie");	
}
function submitNewOrgForm(taskValue){
        if(taskValue == 'search'){
            document.forms[0].task.value=taskValue;
            document.forms[0].submit();
            return;
        }
        
        validated = true;
        clearAlerts('orgListForm');
        validateNewOrgForm();
        if(validated == true && orgCodeFlag == true && orgRegonFlag == 'true'){
            document.forms[0].task.value=taskValue;
            document.forms[0].submit();
            return;
        }
        if(orgCodeFlag == false){
            manageOrgCode('false');
        }
		if(orgRegonFlag == 'false'){
            manageRegon('false');
        } 
		if(orgRegonFlag == 'used'){
            manageRegon('used');
        }		
        document.getElementById('errormsg').style.display='block';
}
function sortList(url){
    window.open(url, '_self');
}
function deleteConfirm(link, msg, url, e){
    con =  confirm(msg);
    if(con){
        link.href=url;
        //link.click();
    }
    else{
        if (!e) var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
    }
}
function edit(url, e){
    window.open(url, "_self");
    if (!e) var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
}

function validateEditRoleForm(){
    triggerVal('kod_roli',isNotEmpty,"! Pole jest obowiązkowe");
    triggerVal('nazwa',isNotEmpty,"! Pole jest obowiązkowe");
}
function submitEditRoleForm(taskValue){
    if(taskValue == 'search'){
            document.forms[0].task.value=taskValue;
            document.forms[0].submit();
            return;
    }
    validated = true;
    clearAlerts('roleListForm');
    validateEditRoleForm();
    if(validated == true){
        document.forms[0].task.value=taskValue;
        document.forms[0].submit();
        return;
    }
    if(document.getElementById('okmsg'))
        document.getElementById('okmsg').style.display='none';
    displayMessageArea();
}
function manageModuleAccess(firstCheckId, secCheckId){
    if($(firstCheckId).checked)
        Field.enable(secCheckId);
    else
        Field.disable(secCheckId);
}

function cancelRoleForm(){
    var confirmFlag = confirm("Czy na pewno chcesz zrezygnować z edycji roli i przejść do listy?");
        if(confirmFlag)
            submitEditRoleForm('search');
}

function validateNewRoleForm(){
    triggerVal('nazwa',isNotEmpty,"! Pole jest obowiązkowe");
    triggerVal('kod_roli',isNotEmpty,"! Pole jest obowiązkowe");
    }

function validateNewUserForm(){
    	//triggerVal('editEdunetId',isNotEmpty,"! Pole jest obowiązkowe");
    	triggerVal('editPeselMd5',requestForPesel,"! Podany numer PESEL już istnieje");
    	triggerVal('editPeselMd5',validatePesel,"! Podany numer PESEL jest nieprawidłowy");
    	triggerVal('editLastname',isNotEmpty,"! Pole jest obowiązkowe");
    	triggerVal('editFirstname',isNotEmpty,"! Pole jest obowiązkowe");
    	triggerVal('editEmail',isNotEmpty,"! Pole jest obowiązkowe");
    	triggerVal('editEmail',validateEmail,"! Podany edres e-mail jest nieprawidłowy");
    	triggerVal('editPassword1',requestForPassword,"! Podane haslo jest nieprawidłowy");
    }
    
function submitNewRoleForm(taskValue){
    if(taskValue == 'search'){
            document.forms[0].task.value=taskValue;
            document.forms[0].submit();
            return;
    }
    validated = true;
    clearAlerts('roleListForm');
    validateNewRoleForm();
    if(validated == true && roleCodeOk == true){
        document.forms[0].task.value=taskValue;
        document.forms[0].submit();
        return;
    }
}
function displayMessageArea(){
    document.getElementById('errormsg').style.display='block';
}

//ajaxowe zapytanie o kod roli
function requestForRoleCode(pointer){
        document.getElementById('kod_roliAlertMsg').innerHTML='';
        var value = pointer.value;
        if(value == ''){
            if(document.getElementById('okmsg'))
                document.getElementById('okmsg').style.display='none';
            triggerVal('kod_roli',isNotEmpty,"! Pole jest obowiązkowe");
            displayMessageArea();
            return;
        }
            
        var flag = testFiveSymbolsCode(pointer);
        if(flag == false){
            if(document.getElementById('okmsg'))
                document.getElementById('okmsg').style.display='none';
            triggerVal('kod_roli',testFiveSymbolsCode,"! Podaj kod w poprawnym formacie");
            displayMessageArea();
            return;
         }
        
        var params = 'action=ajax&ajaxRoleCode='+value;
        new Ajax.Request('ajaxProcessor',
        {
            method:'get',
            parameters : params,
            asynchronous : true,
            requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
            onComplete: function(transport){
            var response = transport.responseXML;
            manageCodeUniversal(response.getElementsByTagName("roleCodeFlag").item(0).firstChild.data, 'kod_roliAlertMsg', roleCodeOk);
        },
            onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
        });
}

function manageCodeUniversal(value, codeFieldMessageAreaId, codeFlagParamName){
        var pointer = document.getElementById(codeFieldMessageAreaId);
        var info = document.createElement("div");
        if(value == null){
            codeFlagParamName = false;
            displayMessageArea();
            info.className = 'error';
            info.innerHTML= '! Wystpi błąd wewntrzny. Proszę spróbować wpisać kod jeszcze raz';
            pointer.appendChild(info);
        }
        if(value == 'true'){
            codeFlagParamName = true;
            if(validated == true)
                hideErrorArea();
            info.className = 'ok';
            info.innerHTML= ' Podany kod jest prawidłowy';
            pointer.appendChild(info);
        }
        if(value == 'false'){
            codeFlagParamName = false;
            if(document.getElementById('okmsg'))
                document.getElementById('okmsg').style.display='none';
            displayMessageArea();
            info.className = 'error';
            info.innerHTML= '! Podany kod już występuje. Proszę wpisać nowy';
            pointer.appendChild(info);
        }
}

//submit dla tworzenie uzytkownika
function submitUserForm(taskValue){
        
    validated = true;
    clearAlerts('usersActionForm');
    
    validateNewUserForm();
}

editId = null; 
function generateEdunetId(elemImie,elemNazwisko,elemId) {
	var imie = $F(elemImie);
	var nazwisko = $F(elemNazwisko);
	editId = elemId;
  if(imie != "" && nazwisko != "") {
		var params = 'action=ajax&ajaxFirstname='+imie+'&ajaxLastname='+nazwisko;
		new Ajax.Request('ajaxProcessor',
		{
				method:'get',
				parameters : params,
				asynchronous : true,
				requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
				onSuccess: function(transport){
				var response = transport.responseXML;
				var id = response.getElementsByTagName("edunetId").item(0).firstChild.data;
					if(id == 'error'){
							var pointer = $('editEdunetIdAlertMsg');
							var info = document.createElement("div");
							codeFlagParamName = false;
							document.getElementById('errormsg').style.display='block';
							info.className = 'error';
							info.innerHTML= '! Wystpi błąd wewntrzny. Proszę spróbować wpisać imię i nazwisko jeszcze raz';
							pointer.appendChild(info);
					} else {
						  $(editId).value = id;
					    var pointer = document.getElementById(codeFieldMessageAreaId);
							var info = document.createElement("div");
							document.getElementById('errormsg').style.display='block';
							info.className = 'error';
							info.innerHTML= '! OK';
							pointer.appendChild(info);
					}
				},
				onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
		});

		
	}
}

peselReturnf = false; 
function requestForPesel(pesel) {
		var peselMd5 = hex_md5(pesel.value);       
        var params = 'action=ajax&ajaxPesel='+peselMd5;
        var req = new Ajax.Request('ajaxProcessor',
        {
            method:'get',
            parameters : params,
            asynchronous : true,
            requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
            onSuccess: function(transport){
            var response = transport.responseXML;
            var stat = response.getElementsByTagName("peselFlag").item(0).firstChild.data;
              if(stat == 'true'){
               peselReturnf = true;
              } else {
               peselReturnf = false;
              }
            },
            onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
        });
        return peselReturnf;
}

passwordReturnf = false;
function requestForPassword(password) {      
        var params = 'action=ajax&ajaxPassword='+password.value;
        var req = new Ajax.Request('ajaxProcessor',
        {
            method:'get',
            parameters : params,
            asynchronous : true,
            requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
            onSuccess: function(transport){
            var response = transport.responseXML;
            var stat = response.getElementsByTagName("passwordFlag").item(0).firstChild.data;
              if(stat == 'true'){
               passwordReturnf = true;
              } else {
               passwordReturnf = false;
              }
            },
            onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
        });
        return passwordReturnf;
}

function parseXMLDataU2O(xmlObject){
	var rootXML = xmlObject.getElementsByTagName('units').item(0);
    //elements = $('searchUnit');
	elements = document.forms['usersActionForm']['searchUnit'];
	//CZYSZCZENIE Z POPRZEDNICH 
	for(var i=elements.options.length-1;i>=0;i--)
	{
		elements.options[i+1]=null;
	}
    var unitsXML = rootXML.getElementsByTagName("unit");
    for(var i = 0 ; i < unitsXML.length ; i++){
        unitXML = unitsXML[i];
        var unitId = unitXML.getElementsByTagName("unitId").item(0).firstChild.data;
        var unitName = unitXML.getElementsByTagName("unitName").item(0).firstChild.data;
        elements.options[i+1] = new Option(unitName, unitId);
    }
}

function requestForUnitsToOrg(orgCode){
        var params = 'action=ajax&ajaxOrgCodeForUnits='+orgCode;
        new Ajax.Request('ajaxProcessor',
        {
            method:'get',
            parameters : params,
            asynchronous : true,
            requestHeaders : ['Content-Type', 'application/x-www-form-urlencoded ; charset=UTF-8'],
            onComplete: function(transport){
            var response = transport.responseXML;
            parseXMLDataU2O(response);
			},
            onFailure: function(){ alert('Wystpił błąd wewnętrzny. Proszę spróbować wykonać operację ponownie') }
        });
}

function clearSearchUsersForm() {
	document.getElementById('searchImieNazwisko').value = "";
	document.getElementById('searchEmail').value = "";
	document.getElementById('searchEdunetId').value = "";
	document.getElementById('searchRole').selectedIndex = 0;
	document.getElementById('searchOrganization').selectedIndex = 0;
	document.getElementById('searchResultSize').selectedIndex = 0;
	document.getElementById('searchStatus').selectedIndex = 0;
	document.getElementById('searchModule').selectedIndex = 0;
	document.getElementById('searchUnit').selectedIndex = 0;
}

function clearSearchJobsForm() {
	document.getElementById('wyksztalcenieSearch').value = 0;
	document.getElementById('stopienSearch').value = 0;
}

function cancelEditUserForm(){
    var confirmFlag = confirm("Czy na pewno chcesz zrezygnować z edycji i przejść do listy?");
    if(confirmFlag) {
            document.forms[0].action.value='search';
            document.forms[0].submit();
            return;
    }
}

function simplesearch() {
	initVal = "szukane słowo";
	el = document.getElementById("search");
	if(el.value == initVal)
		el.value = "";
	if(document.getElementById('search-edunet').checked == true) {
		document.forms['simplesearch'].action='/do/search';
	} else {
		document.forms['simplesearch'].action='/do/lista_placowek';
	}
	document.forms['simplesearch'].submit();
}

function managePassGenerator(refToCheck){
	if(refToCheck.checked){
		document.forms[0].elements[11].value='';
		document.forms[0].elements[12].value='';
		document.forms[0].elements[11].disabled=true;
		document.forms[0].elements[12].disabled=true;
	}else{
		document.forms[0].elements[11].disabled=false;
		document.forms[0].elements[12].disabled=false;
	}
}

function startuj_z_edunet(p) {
	document.body.style.behavior='url(#default#homepage)';
   	document.body.setHomePage(p);
}

function dodaj_do_ulubionych(t,u){
    var title=t;
    var url=u;

    if (window.sidebar) {
		window.sidebar.addPanel(title, url,"");
    } else if( window.opera && window.print ) {
	    var mbm = document.createElement('a');
	    mbm.setAttribute('rel','sidebar');
	    mbm.setAttribute('href',url);
	    mbm.setAttribute('title',title);
	    mbm.click();
    } else if( document.all ) 
		window.external.AddFavorite(url, title);
}