FCLT#43129 Bolletjes en zo nu ook PDA en beter reageren op S("mld_melding_actiecode")
svn path=/Website/trunk/; revision=41307
This commit is contained in:
@@ -31,7 +31,7 @@ function note_save(mld_key, note, params)
|
||||
]
|
||||
|
||||
// fenotes betekenis:
|
||||
// 0 FE kan niet reageren, per notitie, default niet zichtbaar voor FE, raar als je dan ook S("mld_flag_on_fenote") zou hebben
|
||||
// 0 FE kan niet reageren, per notitie, default niet zichtbaar voor FE, raar als je dan ook S("mld_melding_actiecode")==1 zou hebben
|
||||
// 1 FE kan reageren, alle notities zichtbaar voor FE (transparantiemodus)
|
||||
// 2 FE kan reageren, per notitie, default niet zichtbaar voor FE
|
||||
// 3 FE kan reageren, per notitie, default wel zichtbaar voor FE
|
||||
@@ -89,62 +89,65 @@ function note_save(mld_key, note, params)
|
||||
var note_key = noteIns.sequences["mld_melding_note_key"];
|
||||
Oracle.Execute(noteIns.sql);
|
||||
|
||||
if (mfe.haveOnlyFErights) // Frontend gebruiker
|
||||
if (S("mld_melding_actiecode")==1) // doen we pingpong?
|
||||
{
|
||||
if (params.notifyBO && eigenMelding && (mld_info.actiecode & 1) != 1) // Misschien 'actie' naar BO
|
||||
if (mfe.haveOnlyFErights) // Frontend gebruiker
|
||||
{
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = 1 + 128" // BO+attentie
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
shared.trackaction("MLDA2B", mld_key)
|
||||
}
|
||||
}
|
||||
else if (zichtbaarFE) // Backoffice gebruiker
|
||||
{
|
||||
if ((mld_info.actiecode & 128) == 128)
|
||||
{ // Altijd attentie er af
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = BITAND(mld_melding_actiecode, 255 - 128)"
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
|
||||
if (params.notifyFE)
|
||||
{
|
||||
// Notificatie (MLDNOT) indien notitie zichtbaar is voor FE.
|
||||
// (tracking ervan is overkill: de notitie zelf is eigenlijk tracking)
|
||||
// 'Notitie bij {0}: {1}'
|
||||
var txt = L("lcl_mld_is_mldnotetrack").format((mld_info.prefix||"") + mld_key, note);
|
||||
var txt = txt.split("\n")[0].split("\r")[0]; // Altijd alleen eerste regel
|
||||
if (txt.length > 80)
|
||||
txt = txt.substr(0, 80);
|
||||
txt = txt + "...";
|
||||
Oracle.Execute("BEGIN fac.putnotificationsrtprio("
|
||||
+ "NULL, "
|
||||
+ mld_info.melder_key
|
||||
+ ", 'MLDNOT', "
|
||||
+ mld_key
|
||||
+ ", " + safe.quoted_sql(txt)
|
||||
+ ", NULL, NULL, NULL, NULL, 2, NULL); END;");
|
||||
}
|
||||
if (S("mld_flag_on_fenote") > 0 && params.action2FE && (mld_info.actiecode & 2) != 2) // Misschien actie naar FE
|
||||
{
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = 2" // Actie stond er nog niet en gaat naar FE
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
shared.trackaction("MLDA2M", mld_key)
|
||||
}
|
||||
else // Misschien naar de backoffice zetten?
|
||||
{
|
||||
if (!params.action2FE && (mld_info.actiecode & 1) != 1)
|
||||
if (params.notifyBO && eigenMelding && (mld_info.actiecode & 1) != 1) // Misschien 'actie' naar BO
|
||||
{
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = 1" // Actie nu bij BO. Zelf gedaan dus geen attentie
|
||||
+ " SET mld_melding_actiecode = 1 + 128" // BO+attentie
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
shared.trackaction("MLDA2B", mld_key);
|
||||
shared.trackaction("MLDA2B", mld_key)
|
||||
}
|
||||
}
|
||||
else if (zichtbaarFE) // Backoffice gebruiker
|
||||
{
|
||||
if ((mld_info.actiecode & 128) == 128)
|
||||
{ // Altijd attentie er af
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = BITAND(mld_melding_actiecode, 255 - 128)"
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
|
||||
if (params.notifyFE)
|
||||
{
|
||||
// Notificatie (MLDNOT) indien notitie zichtbaar is voor FE.
|
||||
// (tracking ervan is overkill: de notitie zelf is eigenlijk tracking)
|
||||
// 'Notitie bij {0}: {1}'
|
||||
var txt = L("lcl_mld_is_mldnotetrack").format((mld_info.prefix||"") + mld_key, note);
|
||||
var txt = txt.split("\n")[0].split("\r")[0]; // Altijd alleen eerste regel
|
||||
if (txt.length > 80)
|
||||
txt = txt.substr(0, 80);
|
||||
txt = txt + "...";
|
||||
Oracle.Execute("BEGIN fac.putnotificationsrtprio("
|
||||
+ "NULL, "
|
||||
+ mld_info.melder_key
|
||||
+ ", 'MLDNOT', "
|
||||
+ mld_key
|
||||
+ ", " + safe.quoted_sql(txt)
|
||||
+ ", NULL, NULL, NULL, NULL, 2, NULL); END;");
|
||||
}
|
||||
if (params.action2FE && (mld_info.actiecode & 2) != 2) // Misschien actie naar FE
|
||||
{
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = 2" // Actie stond er nog niet en gaat naar FE
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
shared.trackaction("MLDA2M", mld_key)
|
||||
}
|
||||
else // Misschien naar de backoffice zetten?
|
||||
{
|
||||
if (!params.action2FE && (mld_info.actiecode & 1) != 1)
|
||||
{
|
||||
var sql = "UPDATE mld_melding"
|
||||
+ " SET mld_melding_actiecode = 1" // Actie nu bij BO. Zelf gedaan dus geen attentie
|
||||
+ " WHERE mld_melding_key = " + mld_key;
|
||||
Oracle.Execute(sql);
|
||||
shared.trackaction("MLDA2B", mld_key);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -762,7 +762,7 @@ if (mld_key > 0)
|
||||
<textarea id='note' name='note' class='fldtxt' rows='4' cols='80' maxlength='4000'><%=safe.textarea(note_oms)%></textarea>
|
||||
<%
|
||||
// fenotes betekenis:
|
||||
// 0 FE kan niet reageren, per notitie, default niet zichtbaar voor FE, raar als je dan ook S("mld_flag_on_fenote") zou hebben
|
||||
// 0 FE kan niet reageren, per notitie, default niet zichtbaar voor FE, raar als je dan ook S("mld_melding_actiecode")==1 zou hebben
|
||||
// 1 FE kan reageren, alle notities zichtbaar voor FE (transparantiemodus)
|
||||
// 2 FE kan reageren, per notitie, default niet zichtbaar voor FE
|
||||
// 3 FE kan reageren, per notitie, default wel zichtbaar voor FE
|
||||
@@ -789,7 +789,7 @@ if (mld_key > 0)
|
||||
}
|
||||
|
||||
//actie bij melder zetten
|
||||
if (note_key == -1 && !eigenMelding && S("mld_flag_on_fenote") && mld_info.fenotes > 0)
|
||||
if (note_key == -1 && !eigenMelding && S("mld_melding_actiecode")==1 && mld_info.fenotes > 0)
|
||||
{
|
||||
var actie_bij_melder = (mld_info.actiecode & 2) == 2; // stond actie al bij melder?
|
||||
if (actie_bij_melder)
|
||||
@@ -815,7 +815,7 @@ if (mld_key > 0)
|
||||
else // Frontend mag actie ook zelf houden (in plaats van actie naar backoffice)
|
||||
{
|
||||
var actie_bij_BO = (mld_info.actiecode & 1) == 1; // stond actie al bij backoffice? FE mag nooit terugpakken
|
||||
if (!actie_bij_BO)
|
||||
if (!actie_bij_BO && S("mld_melding_actiecode")==1)
|
||||
{
|
||||
Response.Write("<div class='noteoptions'>");
|
||||
CHECKBOX("fldcheck", "notifyBO", true); // default altijd actie naar BO
|
||||
|
||||
@@ -48,6 +48,7 @@ var sql = "";
|
||||
var action = "../mld/mld_edit_note_save.asp?urole="+urole+"&mld_key=" +pkey;
|
||||
|
||||
var mld_info = mld.mld_melding_info(pkey);
|
||||
var meldernaam = new Perslid(mld_info.melder_key).naam();
|
||||
lcl.set_dialect(mld_info.srtdisc, "MLD_SRTDISCIPLINE_KEY");
|
||||
pnote.subject = mld_info.prefix + pkey;
|
||||
pnote.fenotes = mld_info.fenotes;
|
||||
@@ -320,17 +321,31 @@ var sql = "";
|
||||
window.location.href = "<%=back_reference() + '¬itie=1'%>";
|
||||
}
|
||||
}
|
||||
function visToggler(deze)
|
||||
{
|
||||
var vis = $(deze).prop("checked");
|
||||
$("#notioption,#actionoption").css("display", vis ? "inline":"none");
|
||||
if (vis)
|
||||
$('#action2FE,#notifyFE').prop('checked', <%=S("mld_note_default_notifyFE")%> == 1).checkboxradio("refresh");
|
||||
else
|
||||
$('#action2FE,#notifyFE').prop('checked', false).checkboxradio("refresh");
|
||||
}
|
||||
|
||||
function notiToggler(deze)
|
||||
{
|
||||
var noti = $(deze).prop("checked");
|
||||
$("#notioption").css("display", noti ? "inline":"none");
|
||||
if (noti)
|
||||
{
|
||||
var v_actie_bij_melder = <%=(S("mld_note_default_notifyFE") == 1? 1 : 0)%> == 1;
|
||||
$("#notifyFE").prop("checked", v_actie_bij_melder).checkboxradio("refresh");
|
||||
}
|
||||
else
|
||||
$("#notifyFE").prop("checked", false).checkboxradio("refresh");
|
||||
<% if (!(mld_info.actiecode & 2)) { %>
|
||||
var noti = $(deze).prop('checked');
|
||||
if (!noti)
|
||||
$('#action2FE').prop('checked', false).checkboxradio("refresh");
|
||||
<% } %>
|
||||
}
|
||||
function actionToggler(deze)
|
||||
{
|
||||
<% if (!(mld_info.actiecode & 2)) { %>
|
||||
var action = $(deze).prop('checked');
|
||||
if (action)
|
||||
$('#notifyFE').prop('checked', true).checkboxradio("refresh");
|
||||
<% } %>
|
||||
}
|
||||
</script>
|
||||
<%
|
||||
@@ -348,18 +363,32 @@ var sql = "";
|
||||
if (!pnote.eigenMelding && pnote.fenotes != 1) // same for add and edit, difference is made in functions note_add and note_change
|
||||
{
|
||||
// keuze voor wel of niet zichtbaar FE
|
||||
CHB_FIELD("zichtbaarFE", "<nobr>" + L("lcl_mld_zichtbaar_FE") + "</nobr>", pnote.zichtbaar, {disabled: false, onclick: "notiToggler(this)"});
|
||||
CHB_FIELD("zichtbaarFE", "<nobr>" + L("lcl_mld_zichtbaar_FE") + "</nobr>", pnote.zichtbaar, {disabled: false, onclick: "visToggler(this)"});
|
||||
}
|
||||
else
|
||||
CHB_FIELD("zichtbaarFE", "<nobr>" + L("lcl_mld_zichtbaar_FE") + "</nobr>", pnote.zichtbaar, {disabled: true, onclick: "notiToggler(this)"});
|
||||
CHB_FIELD("zichtbaarFE", "<nobr>" + L("lcl_mld_zichtbaar_FE") + "</nobr>", pnote.zichtbaar, {disabled: true, onclick: "visToggler(this)"});
|
||||
|
||||
//actie bij melder zetten
|
||||
if (!pnote.eigenMelding && S("mld_flag_on_fenote") && pnote.fenotes > 0) // same for add and edit, difference is made in functions note_add and note_change
|
||||
if (!pnote.eigenMelding && S("mld_melding_actiecode")==1 && pnote.fenotes > 0) // same for add and edit, difference is made in functions note_add and note_change
|
||||
{
|
||||
var actie_bij_melder = (mld_info.actiecode & 2) == 2; // stond actie al bij melder?
|
||||
if (actie_bij_melder)
|
||||
{
|
||||
var lbl = L("lcl_mld_latenbij_FE").format(meldernaam);
|
||||
}
|
||||
else
|
||||
{
|
||||
actie_bij_melder = pnote.zichtbaar && S("mld_note_default_notifyFE")==1;
|
||||
var lbl = L("lcl_mld_toekennen_FE").format(meldernaam);
|
||||
}
|
||||
// We doen aan pingpongen
|
||||
var actie_bij_melder = (pnote.zichtbaar && S("mld_note_default_notifyFE")==1 ? 1 : 0);
|
||||
Response.Write("<span id='notioption'"+(pnote.zichtbaar? "style='display:inline'" :" style='display:none'")+">");
|
||||
CHB_FIELD("notifyFE", "<nobr>" + L("lcl_mld_toekennen_FE") + "</nobr>", actie_bij_melder, {disabled: false});
|
||||
CHB_FIELD("notifyFE", "<nobr>" + L("lcl_mld_notify_FE").format(meldernaam) + "</nobr>", actie_bij_melder, { onclick: "notiToggler(this)"});
|
||||
Response.Write("</span>");
|
||||
|
||||
Response.Write("<span id='actionoption' style='{0}'>".format(pnote.zichtbaar? "display:inline":"display:none"));
|
||||
CHB_FIELD("action2FE", lbl, actie_bij_melder, { onclick: "actionToggler(this)" });
|
||||
Response.Write("</span>");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user