<%@language = "javascript" %>
<% /*
     $Revision$
     $Id$

    File:           ins_inspect.asp
    Description:    Muteerscherm voor inspecties
                    dit is de 'wrapper' voor de diverse andere schermen
    Parameters:     ins_keys EN srtcont_keys voor een nieuwe OF deelsrtcont_key voor een bestaande inspectie


*/
%>
<!--#include file="../Shared/common.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="ins.inc" -->
<%
FCLTHeader.Requires({ plugins: ["jQuery", "suggest", "kenmerk"] });

var deelsrtcont_key = getQParamInt("deelsrtcont_key", -1); // Bestaande inspectie indien meegegeven.

var groupby = getQParamInt("groupby", 9);
var finishmjob = getQParamInt("finishmjob", 0) == 1;
var catclose = (finishmjob && groupby < 9); // Bulk closen per categorie.
var insPlan = getQParamInt("plan", 0) == 1;      // Inplannen inspectie.
var insClose = getQParamInt("close", 0) == 1;    // Afmelden of afronden inspectie.
var insFinish = getQParamInt("finish", 0) == 1; // Voltooien (!multi).
var insEdit = !insPlan && !insClose && !insFinish; // Wijzigen inspectie.

if (deelsrtcont_key == -1 || insFinish)
{
    // ik besef: deze zijn dus niet altijd gedefinieerd, maar die zouden ook niet gebruikt mogen worden
    // in geval van een bestaande volgens mij.
    var ins_keys = getQParamIntArray("ins_keys");
    var srtcont_keys = getQParamIntArray("srtcont_keys", catclose? [] : null); // Bij bulk closen zijn de srtcontrole keys niet meegegeven.
    var multi = ins_keys.length > 1; // Multi inplannen. Bij insFinish is het nooit multi.
}

var transitParam = buildTransitParam(["deelsrtcont_keys", "fromfinish", "finishmjob", "dist_key_arr", "loc_key_arr", "bld_key_arr",
                                      "disc_key_arr", "srtgroep_key_arr", "srtdeel_key_arr", "moredetail", "groep_str_arr", "categorie_key_arr", "srtcontrole_key_arr", "frequentie_arr",
                                      "kp_key_arr", "incbtw", "showunfin", "groupby", "deel", "mjbMoved", "mjbFreezed", "mjbXcped"]);
%>

<html>
  <head>
<%
    FCLTHeader.Generate();
%>
    <script  type="text/javascript" >
      var verynew="1";
      <% if (deelsrtcont_key < 0) { %>FcltMgr.startEdit(window);<% } %>
      function inspectClose(params)
      {
<%      if (deelsrtcont_key < 0)
        { // Scherm sluiten bij: 1) multi actie, 2) voltooien per categorie, 3) annuleren, 4) gereedmelden.
%>        if (<%=multi? 1 : 0%> == 1 || <%=catclose? 1 : 0%> == 1 || params.cancel || params.close)
          {
            FcltMgr.closeDetail(window, params );
            return true;
          }
          var title = params.srtcontrole_type == 1? L("lcl_ins_srtcontrole_insp") : (params.srtcontrole_type == 2? L("lcl_ins_srtcontrole_repl") : L("lcl_ins_srtcontrole_cert"));
          FcltMgr.setTitle(title + " " + params.deelsrtcontrole_key, {hot: false});

          // Altijd complete reload, we hebben nu een deelsrtcont_key namelijk
          window.location.href = "ins_inspect.asp?ins_keys=<%=ins_keys%>&srtcont_keys=<%=srtcont_keys%>&deelsrtcont_key=" + params.deelsrtcontrole_key;
<%      }
        else
        { // Bestaande inspectie bewerkt, switch naar show-mode
%>        $("#inspectframe")[0].src = "ins_show_inspect.asp?deelsrtcont_key=<%=deelsrtcont_key%>";
<%      } %>
      }
    </script>
  </head>

  <body>
  <% PAGE_START(); %>
<%
    if (deelsrtcont_key < 0 || insFinish)
    { // Maak een nieuwe inspectie aan.
      var page = "ins_edit_inspect.asp?ins_keys=" + ins_keys + "&srtcont_keys=" + srtcont_keys
               + (insFinish && deelsrtcont_key > 0
                 ? "&deelsrtcont_key=" + deelsrtcont_key + "&finish=1"
                 : "")
               + (insPlan? "&plan=1" : "")
               + (insClose? "&close=1" : "")
               + transitParam;
    }
    else
    {
      var page = "ins_show_inspect.asp?deelsrtcont_key=" + deelsrtcont_key;
    }
    // 1. Het hoofdframe
    IFRAMER("inspectframe", page, { FcltClose: "inspectClose" } );

    // Meldingen die aan deze priodieke inspectie zijn gekoppeld.
    // Als je geen mld rechten hebt dan hoef je iframe ook niet te tonen.
    sql = "SELECT mld_melding_key"
        + "  FROM mld_melding_object"
        + " WHERE ins_deelsrtcontrole_key = " + deelsrtcont_key;
    oRs = Oracle.Execute(sql);
    if (!oRs.eof)
    {
      var authparamsMLDBOF = user.checkAutorisation("WEB_MLDBOF", true);
      var authparamsMLDFOF = user.checkAutorisation("WEB_MLDFOF", true);
      var authparamsMLDBAC = user.checkAutorisation("WEB_MLDBAC", true);
      if (authparamsMLDBOF || authparamsMLDFOF || authparamsMLDBAC)
      {
        var murole = "bo";
        if (authparamsMLDBOF)
          murole = "bo";
        else if (authparamsMLDFOF)
          murole = "fo";
        else if (authparamsMLDBAC)
          murole = "mi";

        page = "../mld/mld_search_list.asp?deelsrtcont_key=" + deelsrtcont_key + "&tiny=1&urole=" + murole;
        IFRAMER("inscontmldframe", page, { icon: "fa-list" } );
      }
    }
    oRs.Close();
    // tracking naar subframe :-)
    if (deelsrtcont_key > 0) // iedereen die het object mag zien, mag ook de mutaties zien
    {
      var autfunction = ["WEB_INSUSE", "WEB_INSMAN"];
      var authparams = user.checkAutorisation(autfunction, true);
      if (authparams && authparams.ALGreadlevel < 9 && authparams.PRSreadlevel < 9)
      {
        page = protectQS.create("../shared/status_info.asp?insc_key=" + deelsrtcont_key + "&urole=bo");
        IFRAMER("inschistoryframe", page, { icon: "fa-list", title: L("lcl_tracking")} );
      }
    }

%>
<% PAGE_END(); %>
  </body>
</html>
<% ASPPAGE_END(); %>
