// funkcja służy do pokazywania, ukrywania bloku z tkstem służącym opisowi 
//poszczególnych komponentów z zestawów dla benchmarków
function showTextArea(thisEl, blockId, blockTextId){
    //var form = $('zestaw');
    //form.disable()
    if(document.getElementById(blockId).style.display == 'none'){
	    document.getElementById(blockId).style.display = '';
    }else{
	    document.getElementById(blockId).style.display = 'none';
    }
    //if($(blockId).getStyle('display')=='none'){
        //Effect.Appear(blockId);
	//$(blockId).show()
    //}else{
        //Effect.Fade(blockId);
	//$(blockId).hide();
        //$(blockTextId).clear();
    //}
}
                                   
                                    

//funkcja będzie odpowiedzialna z ładowanie elementów zestawu usera w 
//odpowiednie pola wyboru elementów zestawu
//function populateSet(){
//}
//funkcja odpowiedzialna za pokazywanie odpowiedniego bloku z polami wybranego 
//benchmarka
function showHideBlock(formName, selectName){
   //alert(document[formName][selectName].value);
   var metoda = $('k_body').getElementsByClassName('benchmarkiMetodaPola');
   var pola = $('k_body').getElementsByClassName('benchmarkiPole');

   if(document.zestaw.last.value>0){
	   document.getElementById('benchmarkiMetoda_'+document.zestaw.last.value).style.display = 'none';
   }
   
//var tables = document.getElementsByTagName('div');
//alert(tables[2]);
//for(var i=0;tables.length;i++){
	//if(tables[i]){
	//	if (tables[i].className =='benchmarkiMetodaPola'){
		//	tables[i].style.display='none';
		//}
	//}
//}  

//metoda.each(function(itemm) {
           //alert(item.firstChild);
  //        itemm.hide();
  // });
     var f = document[formName];
     for(j = 0; j < f.elements.length; j++) {
         var e = f.elements[j];  
          if(e.type=="text"){
                    if(e.className == 'benchmarkiPole'){
                        e.value = '';
                    }
                }
     }
    //pola.each(function(item) {
          //  item.disable();
      //      item.clear();
    //});

   var selectedValue = $(selectName).getValue();
   //alert(selectedValue);
   $('benchmarkiMetoda_'+selectedValue).show();
   $('test_id').value = selectedValue;
   document.zestaw.last.value = selectedValue;
}

function changeTabs(element, subElement){
				
		var prefix = element.substring(0,element.indexOf('_'));
                var licznik = 1;
                if(subElement){
                        var subCurrent = subElement+"_1";
                        while($(subCurrent)){
				if($(subCurrent).hasClassName('selected')){
						$(subCurrent).removeClassName('selected');
				}
				licznik++;
				subCurrent = subElement+'_'+licznik;
		}
                }
		licznik = 1;
		var currentElement = prefix+'_'+licznik;
		
		while($(currentElement)){
				if($(currentElement).hasClassName('selected')){
						$(currentElement).removeClassName('selected');
				}
				licznik++;
				currentElement = prefix+'_'+licznik;
		}
		$(element).addClassName('selected'); 
		
}
function setCurrent(curElement, a_criteria_p, a_number, a_main){
        $('a_criteria_p').value = a_criteria_p;
        $('a_number').value = a_number;
        $('a_main').value = a_main;
       // alert($(curElement).value);
}

function trim(s)
{
        return s.replace(/^\s+|\s+$/, '');
}
		
function checkFormRankingi(form_name){
    var f = document[form_name];
    var wynikiPuste = true;
    var metodaPuste = true;
    var sprzetPuste = true;
    var dodatkowePelne = false;
     for(j = 0; j < f.elements.length; j++) {
                var e = f.elements[j];  
                var illegalChars= /[\(\)\<\>,;:\\\"\[\]]/;
                var illegalCharsWyniki= /[a-zA-Z\(\)\<\>,;:\\\"\[\]]/;
                var nameChars = /nazwa_\d_1/;
                if(e.type=='textarea'){
                    var elVal = trim(e.value);
                    if(e.name=='benchmarkiAdditionalInfoAll'){
                        if(elVal.length>1000){
                            dodatkowePelne = true;
                        }
                    }
                    
                }
                if(e.type=="text"){
                    var elVal = trim(e.value);
                    //alert(e.className);
                    if(e.className == 'benchmarkiPole'){
                        if(e.style.display != 'none'){
                            if(elVal != ''){
                                if(elVal.match(illegalCharsWyniki) == null){
                                    wynikiPuste = false;
                                }
                            }
                        }
                    }
                }
                if(e.type=="select-one"){
                    if(e.name=='metoda_id'){
                        if(e.selectedIndex > 0){
                            metodaPuste = false;
                        }
                    }else if(e.name.match(nameChars) != null){
                        if(e.selectedIndex > 0){
                            sprzetPuste = false;
                        //alert(e.name);
                        }
                    }
                }
     }
     if(metodaPuste){
         $('metodaPuste').show();
         $('wynikiPuste').hide();
     }else{
         $('metodaPuste').hide();
         if(wynikiPuste){
             $('wynikiPuste').show();
         }else{
             $('wynikiPuste').hide();
         }
     }
     if(dodatkowePelne){
         $('dodatkowePelne').show();
     }else{
         $('dodatkowePelne').hide();
     }
     
     
     if(sprzetPuste){
         $('sprzetPuste').show();
     }else{
         $('sprzetPuste').hide();
     }
     
     if(metodaPuste==false && sprzetPuste==false && wynikiPuste==false && dodatkowePelne==false){
         f.submit();
         //alert('Dziękujemy za wysłanie formularza z wynikami.');
     } else {
     	alert('Proszę uzupełnić brakujące pola.');
     }
    // alert('wynikiPuste '+wynikiPuste);
    // alert('metodaPuste '+metodaPuste);
    // alert('sprzetPuste '+sprzetPuste);
     

}
function checkForm(form_name){

        //document.powiadomienie.submit();
        //alert(form_name);
        var f = document[form_name];
        //alert(f);
        var error = false;
        // Now loop through the elements in our form
        for(j = 0; j < f.elements.length; j++) {
                var e = f.elements[j];  // the element we're working on
                 
                 var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/;
                 var illegalChars= /[\(\)\<\>,;:\\\"\[\]]/;
                // alert(e.type+" "+e.name);
                if(e.type=="text" || e.type=="textarea"){
                        var el_val = trim(e.value);
                        if(el_val==''){
                                e.style.border = '1px solid red';
                                error = true;
                                 if($(e.name+'_error')!=null){
                                       $(e.name+'_error').style.display = '';
                                 }
                        }else{
                                if(e.name.match("mail")){ 
                                        //alert(emailFilter.test(el_val));
                                        //alert(el_val);
                                        if (!emailFilter.test(el_val)) {              //test email for illegal characters
                                                e.style.border = '1px solid red';
                                                error = true;
                                        }else if (el_val.match(illegalChars)) {
                                                e.style.border = '1px solid red';
                                                error = true;
                                        }else{
                                                e.style.border = '1px solid #ccc';
                                        }
                                }else{
                                        e.style.border = '1px solid #ccc';
                                }
                                if($(e.name+'_error')!=null){
                                        $(e.name+'_error').style.display = 'none';
                                }
                        }
                                
                        //alert(e.value.trim());
                }
                if(e.type=="select-one"){
                        if(e.selectedIndex <= 0){
                               // alert(e.name);
                               if($(e.name+'_error')!=null){
                                       $(e.name+'_error').style.display = '';
                               }
                                e.style.border = '1px solid red';
                                error = true;
                        }else{
                                e.style.border = '1px solid #ccc';
                                if($(e.name+'_error')!=null){
                                        $(e.name+'_error').style.display = 'none';
                                }
                        }
                        //alert(e.selectedIndex);
                        //alert(e);
                }
                if(e.type=="select-multiple"){
                        //alert(e.name);
                        var mSelected = false;
                        for(i=0;i<e.options.length;i++){
                                if(e.options[i].selected){
                                        mSelected = true;
                                }
                        }
                        if(mSelected){
                                e.style.border = '1px solid #ccc';
                                if($(e.name+'_error')!=null){
                                        $(e.name+'_error').style.display = 'none';
                                }
                        }else{
                                if($(e.name+'_error')!=null){
                                        $(e.name+'_error').style.display = '';
                                }
                                e.style.border = '1px solid red';
                                error = true;
                        }
                }
                if(e.type=="hidden"){
                        if(e.name=='tresc'){
                             //   alert(e.value);
                        }
                }
        }
        if(!error){
                form_name.submit();
        }
        //document.getElementById('sender_name').style.border = '1px solid red';
}

function disableRest(poziom){
	var max = 5;
	var katValue = $('kat_select_'+poziom).selectedIndex;
	//alert($('kat_select_'+poziom).options[katValue].value);
	$('kategoria_id').value = $('kat_select_'+poziom).options[katValue].value;
	for(var i=poziom+1;i<max;i++){
		if($('kat_'+i)!=null){
			$('kat_'+i).remove();
			//$('kat_'+i).innerHTML = '';
		}
	}
}
//funkcja usuwa odpowiedni input z kategoriami (ostatni, jeśli jest więcej niz jeden)
function disableRestComplex(poziom_y,poziom_x){
        //zmienna max - maksymalny pozim zagłebienia podkategorii
	var max = 5;
	var katValue = $('kat_select_'+poziom_y+'_'+poziom_x).selectedIndex;
	
	$('kategoria_'+poziom_y).value = $('kat_select_'+poziom_y+'_'+poziom_x).options[katValue].value;
       // alert($('kategoria_'+poziom_y).value);
	for(var i=poziom_x+1;i<max;i++){
              //  alert('kat_'+poziom_y+'_'+i);
		if($('kat_'+poziom_y+'_'+i)!=null){
                        
			$('kat_'+poziom_y+'_'+i).remove();
                        
			//$('kat_'+i).innerHTML = '';
		}
	}
      //  alert($('kategoria_'+poziom_y).value);
}
function removeCategory(ktora_kategoria){
       // alert(ktora_kategoria);
        var max = 5;
        if(ktora_kategoria>1){
                var tmp = ktora_kategoria-1;
                //alert('kat_'+tmp+'_'+);
                for(var i=max;i>=0;i--){
                        if($('kat_'+tmp+'_'+i)!=null){
                                $('kat_'+tmp+'_'+i).remove();
                        }
                }
                $('ktora_kategoria').value = parseInt($('ktora_kategoria').value)-1;
                $('after_indicator_block_'+tmp).remove();
                $('indicator_block_'+tmp).remove()
                $('kategoria_'+tmp).remove()
        }else{
                alert('Nie można więcej usuwać.');
        }
}

var ns6=document.getElementById&&!document.all
// fumckcja potrzeba do kontrolowania ilości wpisywanych znaków 
function restrictinput(maxlength,e,placeholder){
	if (window.event&&event.srcElement.value.length>=maxlength)
		return false
	else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
		var pressedkey=/[a-zA-Z0-9\.\,\/]/ //detect alphanumeric keys
		if (pressedkey.test(String.fromCharCode(e.which)))
		e.stopPropagation()
	}
}
// fumckcja potrzeba do kontrolowania ilości wpisywanych znaków 
function countlimit(maxlength,e,placeholder){
	var theform=eval(placeholder)
	var lengthleft=maxlength-theform.value.length
	var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder)
	if (window.event||e.target&&e.target==eval(placeholder)){
		if (lengthleft<0)
			theform.value=theform.value.substring(0,maxlength)
		placeholderobj.innerHTML=lengthleft
	}
}

// fumckcja potrzeba do kontrolowania ilości wpisywanych znaków 
function displaylimit(thename, theid, thelimit){
	var theform=theid!=""? document.getElementById(theid) : thename
	var limit_text='możesz wpisać jeszcze <b><span id="'+theform.toString()+'">'+thelimit+'</span></b> znaków'
	if (document.all||ns6)
		document.write(limit_text)
	if (document.all){
		eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
		eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
	}
	else if (ns6){
		document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); 
		document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); 
	}
}


function skomentuj(komentarzId, sciezka){
	//$('tresc_komentarza').style.display='';
	oldId = $('komentarz_parent_id').value;
	if(oldId > 0){
		$('span_'+oldId).style.color='#000';
	}
	
	$('komentarz_parent_id').value = komentarzId;
	
	$('sciezkaid_parent').value = sciezka;
	if(komentarzId>0){
		$('span_'+komentarzId).style.color='red';
	}
	// if($('tresc_komentarza').style.display=='none'){
		//         $('tresc_komentarza').style.display='';
			// new Effect.BlindDown('tresc_komentarza');
			//           $('tresc_komentarza').style.display='';
	//}
}

//zmiana zakładek w boxie recenzji
function changeReviewTabs(listId, itemId)
{
	var ul = document.getElementById(listId);
	for(i=0; i < ul.childNodes.length; i++)
	{
		child = ul.childNodes[i];
		if(child.nodeName != 'LI') continue;
		
		//alert(child.id + '_content');
		var tabContent = document.getElementById(child.id + '_content');
		if(child.id == itemId)
		{
			child.className = 'selected';
			tabContent.className = 'contentAreaHolder';
		}
		else
		{
			child.className = '';
			tabContent.className = 'contentAreaHolder hidden';
		}
	}
}