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

     File:          opdr_accept_confirm.asp
     Description:   Accepteer een specifieke opdracht
     Parameters:
         opdr_key   Opdracht key van de opdracht die moet worden geaccepteerd
     Context:
     Note:          A Rechtstreeks vanuit overzicht opdrachten
                      LET OP: in multi-mode wordt dit aangeroepen via $.post en doen we geen interactie
                              er wordt dan ook geen opmerking gevraagd
                    B Rechtstreeks vanuit showmode opdracht

*/
var opdr_key_arr = getQParamIntArray("opdr_key");
var urole = getQParamSafe("urole", "bo");
if (opdr_key_arr.length)
    var LOCKED_USER_OK = { "xmlnode": "opdracht", "key": opdr_key_arr[0] };
%>

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

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

// Als de opdrachten niet sequentieel uitgevoerd moeten worden, dan wordt er ook geen onderbroken opdracht gevonden.
var ingesloten = [];
var result = {};

// Bepaal de opdrachten in de selectie die
// ook echt geaccepteerd kunnen of mogen worden.
for (var i = 0; i < opdr_key_arr.length; i++)
{
  var this_opdr = mld.func_enabled_opdracht(opdr_key_arr[i]); // wat mag ik zoal op deze opdracht

  // Zijn bij deze opdracht alle verplichte kenmerken ingevuld?
  if (this_opdr.canAccept)
  {
    ingesloten.push(opdr_key_arr[i]);
  }
}

user.anything_todo_or_abort(ingesloten.length > 0); // We klagen niet over enkele wel en enkele niet

var result = { opdr_key: ingesloten.join(","), message: "", success: false, canCloseMld: false };
var mld_opdr = mld.mld_opdr_info(ingesloten[0]); // Neem voor informatie de eerste opdracht.
lcl.set_dialect(mld_opdr.opdr_type, "MLD_TYPEOPDR_KEY");
%>
<html>
  <head>
<%  FCLTHeader.Generate(); %>

      <script type="text/javascript">

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

        function mldAcceptCallback(data)
        {
          if (data.note_key > -1 )
            $("#note_key").val(data.note_key);

          $.post($("form[name=acceptform]")[0].action, $("[name=acceptform]").serialize(), FcltCallbackClose, "json");
        }

        async function mld_accept(close)
        {
          if (!await validateForm("u2"))
            return false;

<%        var save_note_url = "../mld/opdr_edit_note_save.asp?opdr_key=" + ingesloten[0]; %>
          if ($(".mail_notes").length > 0 && $(".mail_notes").val().trim() != "" && <%=ingesloten.length%> == 1)
          {
            var data = $("[type=checkbox], [name^=has_], #note, [name=<%=protectRequest.theVar%>]").serialize();
            var url = "<%=save_note_url%>";
            $.post(url,
                   data,
                   FcltCallbackAndThenAlways(mldAcceptCallback),
                   "json");
            return true; // disable button
          }
          else
          {
            var data = { success: true,
                         note_key: -1
                       };
            mldAcceptCallback(data);
          }

          return true; // disable button
        }

        $(function()
        {
          $("#note").focus();
        });

      </script>
  </head>

  <body class="fclt-modal" id="mod_opdraccept">
    <% MODAL_START(); %>
    <form id="acceptform" name="acceptform" action="opdr_accept_save.asp" method="post">
<%
      var nu = new Date;
      if (ingesloten.length == 1)
      {
        var ttl = L("lcl_mld_opdr_number") + " " + (mld_opdr.srtdiscprefix||"") + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr;
      }
      else
      {
        var ttl = L("lcl_shared_doaction").format(L("lcl_accept"), ingesloten.length);
      }

      MODAL_BLOCK_START("mldAccept", ttl, { icon: "fa-check" });
      RWTEXTAREATR("note",
                   "fldtxt mail_notes",
                   L("lcl_mld_note"),
                   "",
                   {html: "rows='8' cols='80'"}
                  );
      if (ingesloten.length == 1)
      {
        Response.Write("<tr><td></td><td>");
        notes.note_toggles("OPDR", { pkey: ingesloten[0] });
        Response.Write("</td></tr>");
      }

      %><input type="hidden" name="orgdate" value="<%=nu.getTime()%>">
        <input type="hidden" name="opdr_key" value="<%=ingesloten.join(",")%>">
        <input type="hidden" name="note_key" id="note_key" value="-1"><%
      MODAL_BLOCK_END();
      var buttons =  [ {title: L("lcl_accept"), icon: "fa-fclt-save", action: "mld_accept()", singlepress: true, id: "btn_accept_submit", importance: 1},
                       {title: L("lcl_cancel"), icon: "fa-fclt-cancel", action: "mld_cancel()", importance: 3} ];
      SIMPLE_BLOCK_START();
        CreateButtons(buttons);
      SIMPLE_BLOCK_END();
      IFACE.FORM_END();
%>
    </form>
    <% MODAL_END(); %>
  </body>
</html>
<% ASPPAGE_END(); %>
