<%@ LANGUAGE = JavaScript %>
<% /*
     $Revision$
     $Id$

    File:           bez_edit_bezoekers.asp
    Description:    Laat zelfstandig een bezoekersdeel wijzigen
    Parameters:     afspraak_key (bestaande bez_afspraak) of
                    rsv_ruimte_key (bestaande res_rsv_ruimte)
    Context:        Alleen vanuit res-bezoekers want daar is het een iframe
                    Vanuit 'normale' afspraken is het included
    Note:
*/

%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../shared/iface.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="./bez_edit_bezoekers.inc" -->
<!-- #include file="./bez.inc" -->
<%
FCLTHeader.Requires({ js: ["../bez/bez.js"]
                    })

var urole = getQParamSafe("urole");
var authparams = user.checkAutorisation({ fe: "WEB_BEZUSE",
                                          bo: "WEB_BEZBOF",
                                          fo: "WEB_BEZFOF"} [urole]);

var rsv_ruimte_key = -1;
var afspraak_key = getQParamInt("afspraak_key", -1);
var autoadd = getQParamInt("autoadd", 0);  // zoveel bezoekers automatisch toevoegen
var nrBez
var bez_actie_key = -1;

if (afspraak_key == -1)
{
  var rsv_ruimte_key = getQParamInt("rsv_ruimte_key"); // dan moet deze er zijn
  sql = "SELECT a.bez_afspraak_key"
      + "     , a.bez_actie_key"
      + "  FROM bez_afspraak a"
      + " WHERE a.res_rsv_ruimte_key = " + rsv_ruimte_key;
  oRs = Oracle.Execute(sql);
  if (!oRs.eof)
  {
    afspraak_key = oRs("bez_afspraak_key").value;
    bez_actie_key = oRs("bez_actie_key").value;
  }
  else // Als er nog geen afspraak is dan de default actie nemen.
    bez_actie_key = bez.default_actie();
  sql = "SELECT rr.res_rsv_ruimte_bezoekers"
      + ", rr.res_rsv_ruimte_van"
      + ", rr.res_rsv_ruimte_tot"
      + ", rr.res_ruimte_opstel_key"
      + ", rr.alg_ruimte_key"
      + "  FROM res_rsv_ruimte rr"
      + " WHERE rr.res_rsv_ruimte_key = " + rsv_ruimte_key;
  oRs = Oracle.Execute(sql);
  var nrBez = oRs("res_rsv_ruimte_bezoekers").value;
  var bez_afspraak_datum = new Date(oRs("res_rsv_ruimte_van").value);
  var bez_afspraak_eind = new Date(oRs("res_rsv_ruimte_tot").value);
  var alg_ruimte_key = oRs("alg_ruimte_key").value;
  if (oRs("res_ruimte_opstel_key").value)
    var restype = "R";
  else
    var restype = "CV"

  if (restype == "R")
  {
    sql = "SELECT rrg.alg_locatie_key, rrg.alg_gebouw_key"
        + "  FROM res_ruimte_opstelling ro"
        + ", res_v_res_ruimte_gegevens rrg"
        + " WHERE ro.res_ruimte_key = rrg.res_ruimte_key"
        + " AND ro.res_ruimte_opstel_key = " + oRs("res_ruimte_opstel_key").value;
    oRs = Oracle.Execute(sql);
  }
  else
  {
    sql = "SELECT og.alg_locatie_key, og.alg_gebouw_key"
        + " FROM alg_v_allonroerendgoed og"
        + " WHERE og.alg_ruimte_key = " + alg_ruimte_key;
    oRs = Oracle.Execute(sql);
  }
  var locatie_key = oRs("alg_locatie_key").value;
  var gebouw_key = oRs("alg_gebouw_key").value;
  oRs.Close();
  sql = "SELECT alg_gebouw_bez"
      + "  FROM alg_gebouw"
      + " WHERE alg_gebouw_key = " + gebouw_key;
  var oRs = Oracle.Execute(sql);
  var bezoekbaar = oRs("alg_gebouw_bez").Value;
  oRs.Close();
  if (!bezoekbaar)
    abort_with_warning(L("lcl_gebouw_niet_bez"));
}

var fronto = urole == "fo"; // DEPRECATED
var backo = urole == "bo";

var titel = "";
if (S("bez_sel_contactpersoon") > 0 && S("bez_sel_internpersoon") == 1)
  titel = L("lcl_bez_select_cntprsbezoeker");
else
  if (S("bez_sel_contactpersoon") > 0)
    titel = L("lcl_bez_select_cntbezoeker");
  else
    titel = L("lcl_bez_select_prsbezoeker");
%>
<html>
  <head>
<%  FCLTHeader.Generate() %>
    <script>
      var urole = "<%=urole%>";
      var titel = "<%=safe.jsstring(titel)%>";
       function bez_submit()
      {
        if (!validateForm("u2"))
          return false;
        $.post($("form[name=u2]")[0].action, $("[name=u2]").serialize(), FcltCallbackClose, "json");
        return true;
      }
      function bez_cancel()
      {
        FcltMgr.closeDetail(window, { cancel: true } );
      }

      jQuery(document).ready(function()
                             {
                               get_freeprk_info();
                             });
    </script>
  </head>
  <body id="editbody">
<%  var buttons =  [ {title: L("lcl_submit"), icon: "opslaan.png", action: "bez_submit()", id: "bsubmit_bez_bezoekers" },
                     {title: L("lcl_cancel"), icon: "undo.png", action: "bez_cancel()", id: "bcancel_bez_bezoekers" } ];
    IFRAMER_HEADER(L("lcl_bez_bezoekers"), buttons)
%>
    <div id="edit">
      <form name="u2"
            action="bez_edit_bezoekers_save.asp?urole=<%=urole%>&rsv_ruimte_key=<%=rsv_ruimte_key%>"
            method="post">
        <input type="hidden" name="locatiekey" id="locatiekey" value="<%=locatie_key%>"></td>
        <input type="hidden" name="date_from" id="date_from" value="<%=bez_afspraak_datum.valueOf()%>"></td>
        <input type="hidden" name="date_to" id="date_to" value="<%=bez_afspraak_eind.valueOf()%>"></td>
<%
        if (S("res_appointment_action"))
        {
%>      <table>
<%
            var sql = "SELECT bez_actie_key"
                    + "     , " + lcl.xsqla('bez_actie_omschrijving', 'bez_actie_key')
                    + "  FROM bez_actie"
                    + " WHERE bez_actie_verwijder IS NULL"
                    + "   AND BITAND(bez_actie_flags, 1) = 0" // Niet de oproepers, die alleen via reservering
                    + " ORDER BY bez_actie_key";
            FCLTselector( "actie_key"
                        , sql
                        , { label: L("lcl_bez_bezoeker_actie")
                          , initKey: bez_actie_key
                          }
                        );
%>      </table>
<%
        }
        bez_edit_bezoekers(afspraak_key, bez_afspraak_datum, bez_afspraak_eind, locatie_key, { nrBez: nrBez, autoadd: autoadd });

    IFACE.FORM_END();
%>
      </form>
    </div>
  </body>
</html>