

 $(document).ready(function() {
   initPQ();
 });


outfmts = new Array("graph","trows","tcols","spread");

function initPQ() {
  for (j=0;j<outfmts.length;j++)
    if (document.getElementById(outfmts[j]+"action").checked) showParams(outfmts[j]);
  if (document.pqform.sslist.value != "") showSSList();
}

function showParams(param) {
  for (j=0;j<outfmts.length;j++) {
    if (outfmts[j] == param) {
      document.getElementById(outfmts[j]+"params").style.display = "block";
      toggleParams(outfmts[j],true);
    }
    else {
      document.getElementById(outfmts[j]+"params").style.display = "none";
      toggleParams(outfmts[j],false);
    }
  }
  document.getElementById("datefmtselect").disabled = param == "spread";
  document.getElementById("datefmt").disabled = param == "spread";
  document.getElementById("dtseparator").disabled = param == "spread";
  document.getElementById("dtseparatorother").disabled = param == "spread" || document.getElementById("dtseparator").value != "other";
  document.getElementById("timefmt").disabled = param == "spread";
  document.getElementById("timehour").disabled = param == "spread";
}

function toggleParams(param,enable) {
  flds = new Array("title","width","height","style","char","yscale","yint","nolegend","tstamp",
                   "legendxytmargin","legendxylmargin","legendxybmargin","legendxyrmargin",
                   "fieldwidth","na","rm","suppressna","suppressrm","stylesize",
                   "gridlinesxmaj","gridlinesxmin","gridlinesymaj","gridlinesymin",
                   "showcomments","showdisclaimer","vperrow","vline","legendbox");
  for (i=0;i<flds.length;i++) {
    var nolegend = document.getElementById(param+"nolegend");
    var style = document.getElementById(param+"style");
    var suppresststamp = document.getElementById(param+"suppresststamp");
    var suppressna = document.getElementById(param+"suppressna");
    var suppressrm = document.getElementById(param+"suppressrm");
    if (!(enable && (flds[i].substr(0,8) == "legendxy" && nolegend && nolegend.checked ||
                     flds[i] == "char" && style && style.value!="char" ||
                     flds[i] == "stylesize" && style && (style.value=="dot" || style.value=="char" || style.value=="wdr") ||
                     flds[i] == "tstamp" && suppresststamp && suppresststamp.checked ||
                     flds[i] == "na" && suppressna && suppressna.checked ||
                     flds[i] == "rm" && suppressrm && suppressrm.checked))) {
      var fldobj = document.getElementById(param+flds[i]);
      if (fldobj) fldobj.disabled = !enable;
    }
  }
}

function showSSList() {
  document.getElementById("SSList").style.display = "table-row";
}

function showNSMOptions() {
  document.getElementById("DSpecList").style.display = "table-row";
  document.getElementById("Location").style.display  = "table-row";
  document.getElementById("Offset").style.display    = "table-row";
  document.getElementById("MaxOffset").style.display = "table-row";
}

function updateDateFmtSelect() {
  dtseparator = document.getElementById("dtseparator").value;
  if (dtseparator == "other") dtseparator = document.getElementById("dtseparatorother").value;
  datefmtselect =
    document.getElementById("datefmt").value + "|" +
    dtseparator + "|" +
    document.getElementById("timefmt").value + "|" +
    document.getElementById("timehour").value;
  found = false;
  for (opt=0; opt<document.getElementById("datefmtselect").options.length; opt++) {
    if (document.getElementById("datefmtselect").options[opt].value == datefmtselect) {
      document.getElementById("datefmtselect").value = datefmtselect;
      found = true;
    }
  }
  if (!found) document.getElementById("datefmtselect").value = "custom";
}

function setDateFmt() {
  if (document.getElementById("datefmtselect").value != "custom") {
    datefmt = document.getElementById("datefmtselect").value.split("|");
    document.getElementById("datefmt").value = datefmt[0];
    if (datefmt[1] == "" || datefmt[1] == " " || datefmt[1] == "\\\\n") {
      document.getElementById("dtseparator").value = datefmt[1];
    }
    else {
      document.getElementById("dtseparator").value = "other";
      document.getElementById("dtseparatorother").disabled = false;
      document.getElementById("dtseparatorother").value = datefmt[1];
    }
    document.getElementById("timefmt").value = datefmt[2];
    document.getElementById("timehour").value = datefmt[3];
  }
  dtSep();
}

function dtSep() {
  document.getElementById('dtseparatorother').disabled = document.getElementById("dtseparator").value != 'other';
  if (document.getElementById("dtseparator").value != 'other') document.getElementById('dtseparatorother').value = "";
}

function validate() {
  if ($('#sslist').val() == '' && 
      $('#dspecs').val() == '' && 
      $('#stnlist').val() == null && 
      $('#stnlisttext').val() == '') {
    alert("You must specify at least one source."); return;
  }
  if ($('#sslist').val() == '' &&
      $('#dspecs').val() == '' && 
      $('#serlist').val() == null && 
      $('#serlisttext').val() == '') {
    alert("You must specify at least one series."); return;
  }
  if ($('#when').val() == '') {
    alert("You must specify at date range."); return;
  }
  document.pqform.submit();
}
