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

     File:               opdr_cancel.asp
     Description:        Annuleer een specifieke opdracht
     Parameters:
         opdr_key        Opdracht key van de opdracht die moet worden geannuleerd
     Context:
     Note:

*/
var opdr_key = getQParamInt("opdr_key", -1);
var LOCKED_USER_OK = { "xmlnode": "opdracht", "key": opdr_key };
%>

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

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

user.auth_required_or_abort(opdr_key > 0); // Hebben we een opdracht key gekregen?

// Controleren of ik deze opdracht mag annuleren
var this_opdr = mld.func_enabled_opdracht(opdr_key); // wat mag ik zoal op deze opdracht
user.auth_required_or_abort(this_opdr.canCancel); // Mag ik deze opdracht annuleren

var mld_opdr = this_opdr.mld_opdr;
lcl.set_dialect(mld_opdr.opdr_type, "MLD_TYPEOPDR_KEY");

// Kenmerken die verplicht zijn bij Afwijzen worden in het popup scherm getoond en moeten verplicht ingevuld worden. Dat hoef ik hier niet meer te testen.
%>

<html>
  <head>
<%	FCLTHeader.Generate(); %>

    <script type="text/javascript">

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

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

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

        return true; // disable button
      }

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

    </script>
  </head>

  <body class="fclt-modal" id="mod_opdrcancel">
<% MODAL_START(); %>
    <form id="cancelform" name="cancelform" action="opdr_cancel_save.asp?opdr_key=<%=opdr_key%>" method="post">
<%
      var mld_opdr = mld.mld_opdr_info(opdr_key);
      var ttl = L("lcl_mld_opdr_number") + " " + (mld_opdr.srtdiscprefix||"") + mld_opdr.mld_key + "/" + mld_opdr.mld_opdr_bedrijfopdr_volgnr;

      MODAL_BLOCK_START("mldCancel", ttl, { icon: "fa-times" });
      RWTEXTAREATR("opdr_opm",
                   "fldtxt required",
                   L("lcl_mld_inf_Opmerking"),
                   mld_opdr.opdr_opmerking,
                   {html: "rows='8'", readonly: !this_opdr.canOpmChange});
      MODAL_BLOCK_END();

      // De verplichte afwijs (cancel) kenmerken tonen bij het afmelden. Vooralsnog worden de andere verplichte kenmerken niet getoond.
      generateFlexKenmerkBlock({ opdr_key: opdr_key,
                                 opdr_type: mld_opdr.opdr_type,
                                 opdr_type_org: mld_opdr.opdr_type,
                                 opdr_status: mld_opdr.opdr_status,
                                 mld_key: mld_opdr.mld_key,
                                 stdm_arr: [mld_opdr.stdm_key], // Stdmelding
                                 cancel: true,
                                 act_key: -1,
                                 reado: (!(this_opdr.canFlexChange || this_opdr.canChangeARFlex)? "1" : null),
                                 prs_key: user_key, // Perslid key, wordt alleen gebruikt als geldt (!kenmerk_search && !multiMode)
                                 showConfidential: this_opdr.canViewConfidential
                               });

      var buttons =  [ {title: L("lcl_mld_opdr_cancel_button"), icon: "fa-fclt-save", action: "mld_close()", singlepress: true, id: "btn_close_submit", importance: 1 },
                       {title: L("lcl_back"), 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(); %>
