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

    File:               bes_srtprod_sel.asp
    Description:        Kiezen van een product (bij een artikel)
    Parameters:         srtdeel_key

    Context:            vanuit artikel lijst
    Note:               je kunt dit ook beschouwen als een mini-srtdeel_edit

*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/save2db.inc" -->

<%
FCLTHeader.Requires({ plugins: ["suggest", "jQuery"], js: [] });

var authparams = user.checkAutorisation("WEB_PRDMSU");
%>

<html>
  <head>
<%  FCLTHeader.Generate(); %>
<%
    var srtdeel_key = getQParamInt('srtdeel_key');
    var submitting = getQParamInt("submit", 0) == 1;

    if (submitting)
    {
      protectRequest.validateToken();
      var createnew = getFParamInt("createnew",0)==1;
      if (createnew)
      {
        var sql = "SELECT bes_s_bes_srtprod_key.nextval srtprod_key FROM DUAL";
        var oRs = Oracle.Execute(sql);
        var srtprod_key = oRs("srtprod_key").value;

        sql = "INSERT INTO bes_srtprod"
            + "       (bes_srtprod_key, bes_srtgroep_key, bes_srtprod_omschrijving, bes_srtprod_eenheid)"
            + "     SELECT " + srtprod_key + ", bes_srtgroep_key, bes_srtdeel_omschrijving, bes_srtdeel_eenheid"
            + "       FROM bes_srtdeel"
            + "      WHERE bes_srtdeel_key = " + srtdeel_key;
        Oracle.Execute(sql);
      }
      else // gewoon een bestaande gekozen
      {
        var srtprod_key = getFParamInt("srtprod_key");
      }

      // Registreren bij het artikel
      var sql = "UPDATE bes_srtdeel"
              + "   SET bes_srtprod_key = " + (srtprod_key>0?srtprod_key:"NULL")
              + " WHERE bes_srtdeel_key = " + srtdeel_key;
      Oracle.Execute(sql);
      var msg = "";
%>    <script>
        $(document).ready(function()
                          {
                            FcltMgr.closeDetail(window, { warning: "<%=safe.jsstring(msg)%>" } )
                          });
      </script>
<%    Response.End;
    }

    var srtprod_key = -1; // oude
    var srtprod_oms = "" // oude

    var sql = "SELECT bsd.bes_srtprod_key, bes_srtprod_omschrijving"
            + "  FROM bes_srtdeel bsd, bes_srtprod bsp"
            + " WHERE bes_srtdeel_key = " + srtdeel_key
            + "   AND bsd.bes_srtprod_key = bsp.bes_srtprod_key";
    var oRs = Oracle.Execute(sql);
    if (!oRs.Eof)
    {
      srtprod_key = oRs("bes_srtprod_key").Value;
      srtprod_oms = oRs("bes_srtprod_omschrijving").Value
    }
%>

    <script type="text/javascript" >
      function bes_submit()
      {
        document.activeElement.blur(); // trigger laatste onChanges

        // Standaard checks op verplichte velden, datum formaat, numeriek en float formaat, currency formaat.
        if (!validateForm("u2"))
          return false;

        document.u2.submit();
      }

      function bes_cancel()
      {
          FcltMgr.closeDetail(window, { cancel: true } );
      }

      function bes_newprod()
      {
          if (confirm(L("lcl_bes_newsrtprodQ")))
          {
            $("#createnew").val(1);
            document.u2.submit();
          }
      }

      $(document).ready(function () {
          sgFilter = new Suggest({ objectName: "sgFilter",
                             initKey: <%=srtprod_key||-1%>,
                             keyField: $("#srtprod_key")[0],
                             queryField: document.getElementById("itemfilter"),
                             queryUrl: "../shared/suggest/suggestBesProd.asp?1=1"});

      })
    </script>
  </head>

  <body class="modal" id="mod_besprod">
    <form action="bes_srtprod_sel.asp?submit=1&srtdeel_key=<%=srtdeel_key%>" method="post" name="u2">

<%    BLOCK_START("besArtikelMini", L("lcl_bes_srtdeelblok"))

    var sql = "SELECT bes_srtdeel_omschrijving, bes_srtdeel_eenheid, prs_bedrijf_naam"
            + "  FROM bes_srtdeel bsd, prs_bedrijf bedr"
            + " WHERE bes_srtdeel_key = " + srtdeel_key
            + "   AND bedr.prs_bedrijf_key(+) = bsd.prs_bedrijf_key";
    var oRs = Oracle.Execute(sql);

    ROFIELDTR("fld", L("lcl_bes_Supplier"), oRs("prs_bedrijf_naam").Value);
    ROFIELDTR("fld", L("lcl_bes_srtdeel_oms"), oRs("bes_srtdeel_omschrijving").Value);
    ROFIELDTR("fld", L("lcl_bes_unity"), oRs("bes_srtdeel_eenheid").Value, { suppressEmpty: true });

%>
          <tr>
           <td class="label"><label class="selector" for="itemfilter"><%=L("lcl_bes_srtprod")%>:</label>
              </td>
           <td>
              <input type="text" name="itemfilter" id="itemfilter"
                    value='<%=safe.htmlattr(srtprod_oms)%>'>
             <input type="hidden" id="createnew" name="createnew" value="0">
           </td>
          </tr>


    <% BLOCK_END()
      var buttons =  [ {title: L("lcl_bes_newsrtprod"), action:"bes_newprod()" },
                       {title: L("lcl_submit"), action:"bes_submit()" },
                       {title: L("lcl_cancel"), action:"bes_cancel()" } ];
      CreateButtons(buttons)
    IFACE.FORM_END();
%>
    </form>
</body>
</html>
