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

     File:          opdr_edit_note_save.asp
     Description:   Het echte bewaren van een opdracht notitie, zonder interactie
     Parameters:    opdr_key   opdrachtnummer
                    note_key   notitie key
                    note       notitie tekst
                    urole
     Context:       Vanuit opdr_edit_note.asp

*/
var JSON_Result = true;

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

<%
var opdr_key = getQParamInt("opdr_key");
var note_key = getQParamInt("note_key", -1);
var note = getFParam("note", "");

var this_opdr = mld.func_enabled_opdracht(opdr_key); // wat mag ik zoal op deze opdracht
var mld_opdr = mld.mld_opdr_info(opdr_key);
lcl.set_dialect(mld_opdr.opdr_type, "MLD_TYPEOPDR_KEY");

user.auth_required_or_abort(this_opdr.canEditOpdrNote);

if (note != "")
{
    var fields =  [ { dbs: "mld_opdr_key",               typ: "key",     val: opdr_key },
                    { dbs: "prs_perslid_key",            typ: "key",     val: user_key },
                    { dbs: "mld_opdr_note_omschrijving", typ: "varchar", frm: "note", len:4000 }
                  ]
    if (note_key > -1)
    {
        var sql = buildUpdate("mld_opdr_note", fields)
                + " mld_opdr_note_key = " + note_key
                + " AND prs_perslid_key = " + user_key; // Voorkom dat er een notitie van een ander aangepast wordt.
        Oracle.Execute(sql);
    }
    else
    {
        fields.push({ dbs: "mld_opdr_note_key", typ: "key", seq: "mld_s_mld_opdr_note_key" });

        var noteIns = buildInsert("mld_opdr_note", fields);
        note_key = noteIns.sequences["mld_opdr_note_key"];
        Oracle.Execute(noteIns.sql);
    }
}
var result = {success: true,
              opdr_key: opdr_key,
              note_key: note_key
             };

Response.Write(JSON.stringify(result));
Response.End;
%>