<%@ language="javascript" %>

<% /*
     $Revision$
     $Id$

    File:               bes_bedrijfproduct_save.asp
    Description:        Sla de wijziging van een product (srtprod) op
    Parameters:
        bes_srtprod_key Key van een product (srtprod)
        weegfactor      Weeffactor van het product
        bedrijf_key     Key van een bedrijf
    Context:            Op onChange van product inputbox in bes_bedrijfproduct_search_list.asp
    Note:
*/ %>

<%
var JSON_Result = true;
%>

<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../shared/save2db.inc" -->

<%
//protectRequest.validateToken();
/***** Get webform parameters *****/
var bes_srtprod_key = getFParamInt("bes_srtprod_key");
var prs_bedrijf_key = getFParamInt("prs_bedrijf_key");
var message = "";
/***** End get webform parameters *****/

var autfunction = "WEB_BESMSU";

// De functie checkAutorisation(autfunction, true) geeft null terug indien er geen autorisatie voor autfunction wordt gevonden
var authparams = user.checkAutorisation(autfunction, true);

if (authparams)
{
  var sql = "SELECT bes_bedrijf_srtprod_weging"
          + "     , bes_bedrijf_srtprod_prijs"
          + "  FROM bes_bedrijf_srtprod WHERE bes_srtprod_key = " + bes_srtprod_key;
  oRs = Oracle.Execute(sql);

  var fields = [{ dbs: "bes_srtprod_key",            typ: "key",   frm: "bes_srtprod_key" },
                { dbs: "bes_bedrijf_srtprod_weging", typ: "float", frm: "weegfactor" },
                { dbs: "bes_bedrijf_srtprod_prijs",  typ: "float", frm: "prijs" },
                { dbs: "prs_bedrijf_key",            typ: "key",   frm: "prs_bedrijf_key" }
               ];
  if (!oRs.eof)
  {
    var weegfactor = getFParam("weegfactor", oRs("bes_bedrijf_srtprod_weging").value? oRs("bes_bedrijf_srtprod_weging").value : "");
    var prijs = getFParam("prijs", oRs("bes_bedrijf_srtprod_prijs").value? oRs("bes_bedrijf_srtprod_prijs").value : "");

    if (weegfactor != "" || prijs != "")
    {
      sql = buildUpdate("bes_bedrijf_srtprod", fields)
          + " bes_srtprod_key = " + bes_srtprod_key;
      var err = Oracle.Execute(sql, true);
      if (err.friendlyMsg)
        message = err.friendlyMsg;
    }
    else
    {
      sql = "DELETE bes_bedrijf_srtprod"
          + " WHERE bes_srtprod_key = " + bes_srtprod_key;
      Oracle.Execute(sql);
    }
    // Geen tracking
  }
  else
  {
    var weegfactor = getFParam("weegfactor", "");
    var prijs = getFParam("prijs", "");

    if (weegfactor != "" || prijs != "")
    {
      var regIns = buildInsert("bes_bedrijf_srtprod", fields);
      var bes_bedrijf_srtprod_key = regIns.sequences["bes_bedrijf_srtprod_key"];

      sql = regIns.sql;
      var err = Oracle.Execute(sql, true);
      if (err.friendlyMsg)
        message = err.friendlyMsg
    }
    // Geen tracking
  }
}
else
{ // Geen autorisatie
  message = L("lcl_no_auth");
}

var result = {succes: true, message: message};
Response.Write(JSON.stringify(result));
%>
