Files
Facilitor/APPL/FAC/fac_current_tab_save.asp
Erik Groener fabfdda240 FSN#38203 Favorieten menu kunnen aanleggen
svn path=/Website/trunk/; revision=31405
2016-11-09 18:28:51 +00:00

101 lines
3.3 KiB
Plaintext

<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: fac_current_tab_save.asp
Description: SUBMIT-form
Parameters:
Context:
Note:
*/
var JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
var autoopenurl = getFParam("autoopenurl");
var autoopenttl = getFParam("autoopenttl");
var taboption = getFParam("taboption");
var filters = getFParam("filters", "");
protectRequest.validateToken();
function cleanurl(purl)
{
var autourl = purl;
// GUI_counters wissen voor gepinde tabbladen
autourl = autourl.replace(/\&from_menu_key=\d+/, "");
autourl = autourl.replace(/\?from_menu_key=\d+/, "");
autourl = autourl.replace(/\&from_search_key=\d+/, "");
autourl = autourl.replace(/\?from_search_key=\d+/, "");
autourl = autourl.replace(/\&fcltfilters=.*/, "");
autourl = autourl.replace(/\?fcltfilters=.*/, "");
__Log("Cleanurl: " + autourl);
if (autourl.indexOf("../../") == 0)
autourl = autourl.substr("../../".length + 1);
if (autourl.indexOf(HTTP.urlzelf() + "/") == 0)
autourl = autourl.substr(HTTP.urlzelf().length + 1);
if (autourl.indexOf(rooturl + "/") == 0)
autourl = autourl.substr(rooturl.length + 1);
return autourl;
}
autoopenurl = cleanurl(autoopenurl);
result = { success: true};
var sql = "SELECT fac_menu_key"
+ " , fac_menu_altlabel"
+ " , fac_menu_alturl"
+ " , fac_menu_filter"
+ " FROM fac_menu"
+ " WHERE fac_menu_altgroep = " + (taboption == "T" ? "5" : "6")
+ " AND fac_menu_altlabel = " + safe.quoted_sql(autoopenttl)
+ " AND prs_perslid_key = " + user_key;
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
// Bestaande autoopen, dus verwijderen
var sql_d = "DELETE FROM fac_menu"
+ " WHERE fac_menu_key = " + oRs("fac_menu_key").Value;
Oracle.Execute(sql_d, true);
result.toaster = (taboption == "T" ? L("lcl_current_tab_unsaved") : L("lcl_current_fav_unsaved"));
removed = true;
}
else
{
// Nieuwe autoopen, dus toevoegen
var sql_i = "INSERT INTO fac_menu"
+ " ( fac_menu_altlabel"
+ " , fac_menu_alturl"
+ " , fac_menu_altgroep"
+ " , fac_menu_filter"
+ " , prs_perslid_key"
+ " , fac_menu_volgnr"
+ " ) VALUES"
+ " (" + safe.quoted_sql(autoopenttl)
+ " ," + safe.quoted_sql(autoopenurl)
+ " ," + (taboption == "T" ? "5" : "6") // zet favoriet in tabs of menu
+ " ," + safe.quoted_sql(filters)
+ " ," + user_key
+ " ,(SELECT 10 + COALESCE(MAX(fac_menu_volgnr), 0)"
+ " FROM fac_menu"
+ " WHERE fac_menu_altgroep = " + (taboption == "T" ? "5" : "6")
+ " AND prs_perslid_key = " + user_key
+ ")"
+ " )";
Oracle.Execute(sql_i, true);
result.saved = true;
result.toaster = (taboption == "T" ? L("lcl_current_tab_saved") : L("lcl_current_fav_saved"));
}
oRs.Close();
Response.Write(JSON.stringify(result));
Response.End;
%>