/*
     $Revision$
     $Id$

     File:               bes_search.js
     Status:             95%
     Description:        Javascript functies voor bestand bes_search.asp
     Parameters:
     Globals:
     Context:            Javascript script bestand voor bes_search.asp
     Note:               Merk op dat de kostenplaats er ook altijd bij wordt gezocht, handig met withExtraParamField
*/

function checkCheckboxesRFO()
{
  if (!document.getElementById("rfoNew").checked &&
      !document.getElementById("rfoOpen").checked &&
      !document.getElementById("rfoDelivered").checked &&
      (document.getElementById("rfoClosed") && !document.getElementById("rfoClosed").checked))
  {
    document.getElementById("rfoNew").checked = true;
  }
}

function checkCheckboxesOpdr()
{
  if (!document.getElementById("opdrRej").checked &&
      !document.getElementById("opdrOpen").checked &&
      !document.getElementById("opdrDelivered").checked &&
      !document.getElementById("opdrClosed").checked)
  {
    document.getElementById("opdrOpen").checked = true;
  }
}

function updateSrtGroup(pautfunction, psrtgroup, psrtdeel)
{
  var ldis_key = $('#disc :selected').val();
  $("#srtgroup").load("../Shared/loadGroup.asp",
                      { autfunction: pautfunction,
                        disc_key_arr: ldis_key,
                        module: "bes",
                        emptyOption: "",
                        srtgroup: (psrtgroup? psrtgroup : []) },
                      function ()
                      {
                        // Laad de items
                        // Selecteer eventueel de initiële items die meegegeven kunnen worden
                        updateSrtDeel(pautfunction, psrtdeel);
                      });
}

function updateSrtDeel(pautfunction, psrtdeel)
{
  var maninfo = $('#date_from').length;
  var lsrtgroup = $('#srtgroup :selected').val();
  $("#srtdeelmulti").load("../Shared/loadDeel.asp",
                          { autfunction: pautfunction,
                            srtgroup_key_arr: lsrtgroup,
                            module: "bes",
                            emptyOption: "",
                            srtdeel: (psrtdeel? psrtdeel : []),
                            verwijderd: (maninfo ? 1 : ""),
                            datefrom: (maninfo ? $('#date_from').val() : "")
                          });
}

function onChangeDiscipline()
{
  sgSrtgroep.setValue(-1, "", true, false, null, true);
  sgSrtgroep.CheckJustOne();
}

function onChangeSrtgroep(srtgroep_key)
{ // Zet de discipline indien niet ingevuld.
  if (srtgroep_key > 0 && $("#disc").val() <= 0 && typeof sgDisc != "undefined")
  {
    $.getJSON("../Shared/get_bes_info.asp",
              { srtgroep_key: srtgroep_key },
                callback_bes_info);
  }
  sgSrtdeel.setValue(-1, "", true, false, null, true);
  sgSrtdeel.CheckJustOne();
}

function onChangeSrtdeel(srtdeel_key)
{ // Zet de soortgroep indien niet ingevuld.
  if (srtdeel_key > 0 && $("#srtgroep").val() <= 0 && typeof sgSrtgroep != "undefined")
  {
    jQuery.ajaxSetup({async: false});
    $.getJSON("../Shared/get_bes_info.asp",
              { srtdeel_key: srtdeel_key },
                callback_bes_info);
    jQuery.ajaxSetup({async: true});
  }
}

function callback_bes_info(data, textStatus, jqXHR)
{ // Zet de discipline indien niet ingevuld
  // setValue(key, txt, doonChange, checkExist, extraParam, lastTry)
  if ($("#disc").val() == -1)
    sgDisc.setValue(data.disc_key, data.disc_omschr, false /*doonChange*/, true /*checkExist*/);
  if ($("#srtgroep").val() == -1)
    sgSrtgroep.setValue(data.srtgroep_key, data.srtgroep_omschr, false /*doonChange*/, true /*checkExist*/);
  if ($("#srtdeel").val() == -1)
    sgSrtdeel.setValue(data.srtdeel_key, data.srtdeel_omschr, false /*doonChange*/, true /*checkExist*/);
}
