/*************************************************
/ Funkcja sprawdzająca czy typ jest tablicą
/************************************************/
function is_array(arr){
 if((typeof arr)=='object'){
  if(arr instanceof Array){
   return true;
  }
 }
 return false;
}

/*************************************************
/ zmiana klasy elementu
/************************************************/
function newClass(el, newClassName){
  el.className = newClassName;
}

/*************************************************
/ Redirect na URL
/************************************************/
function go2UrlAndSend(v, link, varname, modrewrite)
{
  var tmp = '';
  if(v.value!=''){
    if(modrewrite==1){
      tmp = link + '/' + v.value;
    }else{
      if(varname!='')
      tmp = link + '&' + varname + '=' + v.value;
      else
      tmp = link + '&' + v.value;
    }
  }
  if(tmp!='') window.location = tmp;
}

/*************************************************
/ Auto ukrywanie/odsłanianie elementów (inna)
/************************************************/
function HideShowAreas(tab)
{
  for(var i in tab){ 
    var el = document.getElementById(tab[i]);
    if(el){
      if(el.style.display=='block' || el.style.display=='')
      el.style.display='none';
      else
      el.style.display='';
    }
  }
  return true;
}

/*************************************************
/ Wysyłanie formularza
/************************************************/
function formSubmit(id)
{
  if(document.getElementById(id)){
    document.getElementById(id).submit();
  }
}





// s: Pokaż/Ukryj DIV
function show_hide(id) {
    var el = document.getElementById(id);
    if(el) {
        el.style.display = (el.style.display == "none") ? '' : 'none';
    }
}
// e: Pokaż/Ukryj DIV

// s: Odblokuj przycisk rejestracji
function unlockRegisterButton() {
    var btn = document.getElementById('RegOptions_Submit');
    var ck1 = document.getElementById('RegOptions_Agreement');
    var ck2 = document.getElementById('RegOptions_Send');

    if(btn) {
        if((ck1 && ck1.checked) && (ck2 && ck2.checked)){
            btn.disabled = false;
            btn.src = pathgfx+'/buttons/en/register.gif';
        } else {
            btn.disabled = true;
            btn.src = pathgfx+'/buttons/en/register_disabled.gif';
        }
        //alert('btn: '+btn.disabled+'     '+btn.className+"\n"+'ck1: '+ck1.checked+"\n"+'ck2: '+ck2.checked+"\n");
    }
}
// e: Odblokuj przycisk rejestracji


// s: Odblokuj przycisk aktualizacji
function unlockUpdateButton() {
    var btn = document.getElementById('RegOptions_Submit');
    var ck1 = document.getElementById('RegOptions_Agreement');
    var ck2 = document.getElementById('RegOptions_Send');

    if(btn) {
        if((ck1 && ck1.checked) && (ck2 && ck2.checked)){
            btn.disabled = false;
            btn.src = pathgfx+'/buttons/en/update.gif';
        } else {
            btn.disabled = true;
            btn.src = pathgfx+'/buttons/en/update_disabled.gif';
        }
        //alert('btn: '+btn.disabled+'     '+btn.className+"\n"+'ck1: '+ck1.checked+"\n"+'ck2: '+ck2.checked+"\n");
    }
}
// e: Odblokuj przycisk aktualizacji





function showHiddenArea(id)
{
  for(var a in id){
    if(document.getElementById(id[a])){
      var item = document.getElementById(id[a]);
      if(item.style.display=='')
      item.style.display='none';
      else
      item.style.display='';
    }
  }
}

function showHideSubMenu(v, count, name)
{
  for(var a in name){
    for(i=1; i<=count; i++){
      if(document.getElementById(name[a] + i)) 
      document.getElementById(name[a] + i).style.display='none'; 
    }
    if(document.getElementById(name[a] + v))
    document.getElementById(name[a] + v).style.display='';
  } 
}


/*
 * autor: jacek wasilewski (netcare)
 */
function jw_addMaxlengthTextarea(){
	if(document.getElementsByTagName){
		var el=document.getElementsByTagName('textarea'), ile=el.length;
		for(var i=0;i<ile;i++){
			if(el[i].getAttribute("maxlength")){
				var max=parseInt(el[i].getAttribute("maxlength"),10);
                var fieldID = el[i].getAttribute("id") + '_count';
				if(!isNaN(max)){
					el[i].msgid='textarea__msg__'+i;
					el[i].maxlength = max;
					el[i].onfocus=function(){
                        if(document.getElementById(fieldID)) document.getElementById(fieldID).innerHTML=(this.maxlength-this.value.length);
					}
					el[i].onblur=function(){
						if(this.value.length>this.maxlength){this.value=this.value.substr(0,this.maxlength);}
						if(document.getElementById(this.msgid)){document.getElementById(this.msgid).style.display='none';}
					} 
					el[i].onkeyup=function(){
						if(this.value.length>this.maxlength){this.value=this.value.substr(0,this.maxlength);}
						if(document.getElementById(fieldID)) document.getElementById(fieldID).innerHTML=(this.maxlength-this.value.length);
					}
				}
			}
		}//end for
	}
}
if(window.addEventListener){window.addEventListener("load", jw_addMaxlengthTextarea, false);}else if(window.attachEvent){window.attachEvent("onload", jw_addMaxlengthTextarea);}


function labelBgSwitch(v,action, field){
	
  if(action==1 && !v.sc){ v.className = SElabeln; }else if(action==2 && !v.sc) { v.className = SElabela; } 
  if(action==3 && !v.sc){
    for(i=1; i<=SElabels; i++){
      var item = document.getElementById(SElabelsName+i);
      item.className=SElabeln;
      item.sc = false;
    }
    v.sc = true;
    v.className = SElabela;
    document.getElementById(SEHiddenField).value=field;
  }
}



function showHideOnValue(v, values, idek)
{
  for(var a in values){
    if(v.value==values[a]){ 
      for(var i in idek){ document.getElementById(idek[i]).style.display=''; }
      return true;
    }else{
      for(var i in idek){ document.getElementById(idek[i]).style.display='none'; }
    }
  }
}



function formSubmit(id)
{
  if(document.getElementById(id)){
    document.getElementById(id).submit();
  }
}



/*************************************************
/ Auto ukrywanie/odsłanianie elementów (inna)
/************************************************/
function HideShowAreas(tab, action, clear)
{
  for(var i in tab){
    var el = document.getElementById(tab[i]);

    if(el){
      if((action=='none' && (el.style.display=='block' || el.style.display=='')) || (action=='' && el.style.display=='none')){
      el.style.display=''+action+'';
      }
    }
    if(clear==1) clearValues(tab[i]);
  }
  return true;
}

/*************************************************
/ Akcja wywołujaca ukrywanie/odsłanianie obszarów
/ ~ na daną wartość selecta
/************************************************/
function autoShowSections(v, values, idek, clear, invert)
{
  for(var i in idek){
    if(is_array(idek[i])){
    HideShowAreas(idek[i], (invert==1 ? '' : 'none'), clear);
    }else{
       if(document.getElementById(idek[i])){
       document.getElementById(idek[i]).style.display=(invert==1 ? '' : 'none');
       if(clear==1) clearValues(idek[i]);
       }
    }
  }

  for(var a in values){
    if(v.value==values[a]){
      if(is_array(idek[a])){
      HideShowAreas(idek[a], (invert==1 ? 'none' : ''));
      }else{
         if(document.getElementById(idek[a]))
         document.getElementById(idek[a]).style.display=(invert==1 ? 'none' : '');
      }
    }
  }
}

function clearValues(id)
{
  var area = document.getElementById(id);
  if(area){
     var t = area.getElementsByTagName('input');
     for(var i=0; i<t.length; i++){
       //alert(t[i].type + " : " + t[i].name + " : " + t[i].value);
       if(t[i].type=='radio'){
         //alert(t[i].defaultChecked);
         t[i].checked = t[i].defaultChecked;
       }
       if(t[i].type=='text'){
         t[i].value = '';
       }
     }
     t = area.getElementsByTagName('select');
     for(var i=0; i<t.length; i++){
         t[i].selectedIndex = t[i].defaultSelected;
     }

     t = area.getElementsByTagName('textarea');
     for(var i=0; i<t.length; i++){
         t[i].value = '';
     }
  }
}


/*************************************************
/ Obsługa zakładek
/************************************************/
function switchTab(tab){
  
}
