/*
     $Revision$
     $Id$

     File:        mld_show_opdr.js

*/

function mld_edit_typeopdr(img, opdr_key)
{
  FcltMgr.openModalDetail("../mld/mld_change_opdrtype.asp?opdr_key=" + opdr_key,
                          L("lcl_shared_order") + " " +(prefix||"") + mld_key + "/" + volgnr,
                          { callback: function(data) { if (data.refresh) FcltMgr.reload() } }
                         );
}

function opdr_change(urole, finish)
{
  if (FcltMgr.startEdit(window))
    window.location.href = "mld_edit_opdr.asp?urole=" + urole + "&opdr_key=" + opdr_key + "&finish=" + (finish? 1 : 0);
}

function opdr_approve()
{
  FcltMgr.confirm(L("lcl_mld_opdr_approve").format(prefix + mld_key + "/" + volgnr), function() {
      // Fiatteer scherm
      var data = {
          opdr_key: opdr_key
      };
      protectRequest.dataToken(data);
      $.post("opdr_approve.asp", data, FcltCallbackRefresh, "json");
  });
}

function opdr_goedkeur_preference()
{
  $("#modalsfatext").text(L("lcl_mld_opdr_goedkeur").format(prefix + mld_key + "/" + volgnr));
  if (refiat)
    $("#sendforapproval").prop('checked', false); // Checkbox weer zetten indien die was uitgeschakeld.
  mld_show_goedkeurmodal();
}

function opdr_goedkeur()
{
  var fiat = $("#has_sendforapproval").length == 0 || ($("#has_sendforapproval").length && $("#sendforapproval")[0].checked)? 1 : 0;

  var data = { opdr_key: opdr_key,
               dofiat: fiat
             };
  protectRequest.dataToken(data);
  $.post( "opdr_goedkeur.asp"
        , data
        , FcltCallbackRefresh
        , "json"
        );
}

function opdr_setsend()
{
  FcltMgr.confirm(L("lcl_mld_opdr_setsend"), function() {
      var data = {
          opdr_key: opdr_key
      };
      protectRequest.dataToken(data);
      $.post("opdr_setsend.asp", data, FcltCallbackRefresh, "json");
  });
}
function opdr_accept()
{
  FcltMgr.confirm(L("lcl_mld_opdr_accept_1") + prefix + mld_key + "/" + volgnr + L("lcl_mld_opdr_accept_2"), function() {
      // Accepteren scherm
      var data = {
          opdr_key: opdr_key
      };
      protectRequest.dataToken(data);
      $.post("opdr_accept.asp", data, FcltCallbackRefresh, "json");
  });
}

function opdr_reject()
{
  FcltMgr.openModalDetail("../mld/opdr_reject.asp?opdr_key=" + opdr_key + "&urole=" + urole, L("lcl_mld_reject"), { callback: FcltMgr.reload });
}

function opdr_cancel()
{
  var url = "../mld/opdr_cancel_confirm.asp?opdr_key=" + opdr_key + "&dorefresh=1";
  FcltMgr.openModalDetail(url, L("lcl_mld_opdr_cancel"),
                                { callback: FcltCallbackRefresh
                                });
}

function opdr_close()
{
  if (kosten_verplicht_afm && opdr_kosten == null)
  {
    FcltMgr.alert(L("lcl_mld_opdr_kosten_verpl_afm"));
    return;
  }
  var url = "../mld/opdr_close_confirm.asp?opdr_key=" + opdr_key;
  FcltMgr.openModalDetail(url, L("lcl_mld_opdr_close"),
                                { callback: opdrCloseCallback
                                });
}

function opdr_finish(urole)
{
  opdr_change(urole, true)
}

function opdrAcceptOfferCallback(json, textStatus)
{
  // Automatisch een vervolg uitvoeringsopdracht (opdr_type is mld_typeopdr_typeopdr_key) aanmaken
  // Als er een typeopdr_key is gedefinieerd voor de offerte, wordt er  automatisch een opdracht aangemaakt. Anders refresh offerte.
  if (json.typeopdr_key > 0)
  { // Om een opdracht te kunnen kopieëren heb ik altijd "ORDBOF" rechten voor nodig. Dan kan ik ook altijd urole=bo meegeven.
    FcltMgr.setTitle(L("lcl_mld_opdr_uitvoeringopdracht"));
    parent.window.location.href = "mld_opdr.asp?urole=bo"
                                            + "&opdr_key=" + json.opdr_key
                                            + "&opdr_type=" + json.typeopdr_key
                                            + "&opdr_copy=1";
  }
  else
    FcltCallbackRefresh(json, textStatus);
}

function opdr_accept_offer()
{
  FcltMgr.openModalDetail("../mld/opdr_accept_offer.asp?opdr_key=" + opdr_key,
                          L("lcl_mld_accept"),
                          { callback: opdrAcceptOfferCallback });
}

function opdr_reject_offer()
{
  FcltMgr.openModalDetail("../mld/opdr_reject_offer.asp?opdr_key=" + opdr_key,
                          L("lcl_mld_reject"),
                          { callback: FcltCallbackRefresh });
}

function opdr_copy()
{ // Om een opdracht te kunnen kopieëren heb ik altijd "ORDBOF" rechten voor nodig. Dan kan ik ook altijd urole=bo meegeven.
  FcltMgr.openDetail("appl/mld/mld_opdr.asp?urole=bo" + "&opdr_key=" + opdr_key + "&mld_key=" + mld_key + "&opdr_copy=1", L("lcl_mld_copy") + " " + L("lcl_shared_order").toLowerCase());
}

function opdr_add_invoice()
{
  FcltMgr.openDetail("appl/fin/fin_factuur.asp?referentie=" + prefix + mld_key + "/" + volgnr, (urole == "fe"? L("lcl_menu_fin_fe") : L("lcl_menu_fin_fo")));
}

function opdr_list_invoice()
{
  FcltMgr.openDetail("appl/fin/fin_search.asp?autosearch=1&fin_type=O&opdrnr=" + prefix + mld_key + "/" + volgnr, (urole == "fe"? L("lcl_menu_fin_fe_overz") : L("lcl_menu_fin_fo_overz")));
}

function opdr_print()
{
  window.open('./mld_opdr_xml.asp?opdr_key=' + opdr_key);
}

function opdrMailCallback(data)
{
  FcltMgr.alert(L("lcl_mld_is_ordmai") + data.emails);
}

function mld_melding_materiaal()
{
  // Maximum lengte van url is 2083 karakters (maximum path lengte is 2048 karakters).
  // Daarom de strings niet via url (GET) meesturen maar via params van openModalDetail (Nadeel: nu wel clientside beschikbaar bij mld_opdr_materiaal.asp)
  var url = "mld_opdr_materiaal.asp?opdr_key=" + opdr_key + "&readonly=1" + "&uitv_key=" + $("#uitvoerende").val();

  FcltMgr.openModalDetail(url,
                          L("lcl_mld_materialen"),
                          { matkeystr: $("#matkeystr").val(),
                            matamountstr: $("#matamountstr").val(),
                            matpricestr: $("#matpricestr").val()
                          });
}
