var newURL;
function changeClass(what, newclass){
  document.getElementById(what).className = newclass;
}

function showID(what){
  document.getElementById(what).style.display = '';
}
function hideID(what){
  document.getElementById(what).style.display = 'none';
}
function showHideID(what){
  if(document.getElementById(what).style.display == 'none'){
    document.getElementById(what).style.display = '';
  }
  else{
    document.getElementById(what).style.display = 'none';
  }
}
function getCheckString(f,count,name)
{
    var s = ""
    var j
    for (i = 1; i <= count; i++) {
        eval('j = (f.' + name + i + '.checked) ? 1 : 0')
        s = s + j
    }
    return s
}

function fillSelectC(srcSelect,arr,dstSelect,v)
{
    var i = srcSelect.selectedIndex
    dstSelect.length = arr[i].length / v
    for (var k = 0; k < arr[i].length; k+=v) {
        dstSelect.options[k/v].text = arr[i][k]
        dstSelect.options[k/v].value = arr[i][k+v-1]
    }
    dstSelect.selectedIndex=0
}

function fillSelect(srcSelect,arr,dstSelect,v)
{
    var i = srcSelect.selectedIndex
    dstSelect.length = arr[i].length / v
    for (var k = 0; k < arr[i].length; k+=v) {
        dstSelect.options[k/v].text = arr[i][k]
        dstSelect.options[k/v].value = arr[i][k+v-1]
    }
    dstSelect.selectedIndex=0
}

function fillSelect2(srcSelect1,srcSelect2,arr,dstSelect,v)
{
    var i1 = srcSelect1.selectedIndex
    var i2 = srcSelect2.selectedIndex
    dstSelect.length = arr[i1][i2].length / v
    for (var k = 0; k < arr[i1][i2].length; k+=v) {
        dstSelect.options[k/v].text = arr[i1][i2][k]
        dstSelect.options[k/v].value = arr[i1][i2][k+v-1]
    }
}	

function fillSelect3(srcSelect,arr,dstSelect,v)
{
    // tu pobieramy nie indeks, ale wartosc, operujemy na 'hashach'
    var i = srcSelect.options[srcSelect.selectedIndex].text
    dstSelect.length = arr[i].length / v
    for (var k = 0; k < arr[i].length; k+=v) {
        dstSelect.options[k/v].text = arr[i][k]
        dstSelect.options[k/v].value = arr[i][k+v-1]
    }
    dstSelect.selectedIndex=0
}

function refreshURL(params)
{
    var s = document.URL
    if(newURL){
      s = newURL
    }
    // musimy wyciac poprzednie argumenty skryptu po znaku '?'
    var idx = s.indexOf('?')
    if (idx != -1)
        s = s.slice(0,idx) 
    document.location.href = s + "?" + params 
}
//===========================================================================
function validate()
{
    var fields = new Array('na_date')
    var fieldsd = new Array('Na datę')
    if (res.test(document.forms.theform.na_date.value)) {return true}
    alert('Zły format pola na_date')
    return invalidTextField('na_date','theform')
}
//===========================================================================
var res = /^(\d\d-\d\d-\d\d\d\d)?$/  
//===========================================================================
function validate()
{
    var fields = new Array('na_date')
    var fieldsd = new Array('Na datę')
    if (res.test(document.forms.theform.na_date.value)) {return true}
    alert('Zły format pola na_date')
    return invalidTextField('na_date','theform')
}


//===========================================================================
function replaceBadChars(str) {
  str = str.replace(/\+/g, "%2B")
  str = str.replace(/ /g, "%20")
  str = str.replace(/&/g, "%26")
  str = str.replace(/ /g, "%A0")
  return str 
}  

function getSelectedVal(selectList) {
  return selectList.options[selectList.selectedIndex].value
}

function addToString(str, add)
{
    if (add == '')
        return str
    if (str != '')
        str += '&'
    return (str + add)
}


function getSelectedRadio(radioGroup) 
{
  for(var i = 0; i < radioGroup.length; i++) {
    if (radioGroup[i].checked) {
      return radioGroup[i].value
    }
  }
}

var error_msg = '';
function isValidDate(form_name, data_field){
  eval("var curr_form = document.forms." +form_name+ "." +data_field+ ".value;");


  var sdate = new String(curr_form);
  var reg = new RegExp("\\d{4}-\\d{2}-\\d{2}");

  if(!reg.test(sdate))
  {
      error_msg = "Nieprawidłowy format daty";
      return false;
  }
 
  var tab = sdate.split("-")
  var day = (tab[2]);
  var month = (tab[1])-1;
  var year = (tab[0]);
  var date = new Date(year, month, day)
  var valid_date = new Date(new Date(year, month + 1, 1)-1);
  error_msg = "Niepoprawna data. Podana data musi być końcem miesiąca!";
  return date.toDateString() == valid_date.toDateString();
}
//--------------------------------------------------------------------------

function exportImage(chartId){
    var flashMovie = document.getElementById(chartId);
    if (flashMovie) {
        flashMovie.exportImage();  
    } 
    else{ 
        alert('BRAK WYKRESU O ID: ' + chartId)
    }
}

function showPreloader(div_id, tresc, left, top){
    var preloader_width = 150;
    var preloader_height = 50;
    var preloader_top = 20;
    var div;
    if(typeof(div_id)!= 'string')
      div = div_id;
    else
      div = $('#' + div_id);
    var pos = div.offset();
    preloader_top = pos.top + parseInt((div.height() - preloader_height) / 2);
    if(top){
      preloader_top += top;
    }

    var preloader_left = pos.left + parseInt((div.width() - preloader_width) / 2) ;
    if(left){
      preloader_left += left;
    }
    div.append("<div id='preloader' style='background-color: white; border: 1px solid gray; position: absolute; z-index: 1000; width: " + preloader_width + "px; height: " + preloader_height + "px; left: " +preloader_left+ "px; top: " + preloader_top +  "px; text-align: center;padding: 10px 10px 10px 10px'>"+tresc+"<br><img src='/images/preloader.gif'></div>");
}

function hidePreloader(){
    $('#preloader').remove();
}


