Files
Facilitor/APPL/Shared/functieselector.inc
Jos Groot Lipman b4dd7daf63 FSN#38631 Suggestvelden eigen icoon
svn path=/Website/trunk/; revision=31806
2016-12-03 09:46:47 +00:00

97 lines
4.3 KiB
C++

<% /*
$Revision$
$Id$
File: functieselector.inc
Description: Algemene interface functie om een persoonsfunctie suggestbox te maken
Deze moet je kunnen includen en aanroepen.
parameters fieldName: veldnaam van het srtperslidKey veld. Dit veld wordt gesubmit.
objectName: naam van het suggest object dat wordt aangemaakt.
params: object met meegegeven parameters.
*/ %>
<%
FCLTHeader.Requires({ plugins: ["suggest", "jQuery"], js: [] });
function FCLTfunctieselector(fieldName, objectName, params)
{
if (typeof params=="undefined") params = {};
var lwhenEmpty = (params.whenEmpty != null ? params.whenEmpty : (params.readonly ? L("lcl_select_readonly") : L("lcl_select_functie")));
var lfunctieName = (device.test(device.supportsPlaceholder) ? "" : lwhenEmpty);
var lextraInit = "";
if (params.srtperslidKey && params.srtperslidKey > 0)
{
sql = "SELECT prs_srtperslid_key"
+ ", " + lcl.xsqla('prs_srtperslid_omschrijving', 'prs_srtperslid_key')
+ " FROM prs_v_aanwezigsrtperslid "
+ " WHERE prs_srtperslid_key = " + params.srtperslidKey;
var oRs = Oracle.Execute(sql);
lfunctieName = oRs("prs_srtperslid_omschrijving").value;
}
// Bouw de url voor de persoons query op
var functieQueryUrl = rooturl + "/appl/shared/suggest/SuggestFunctie.asp?x=x"
+ (params.filtercode? "&filtcode=" + params.filtercode : "");
if (params.label)
{ %><tr <%=params.trclass?"class='"+params.trclass+"'":""%>>
<td class="label">
<label for="<%=fieldName%>_show"><%=params.label%>:</label>
</td>
<td>
<%
} %>
<nobr>
<input id="<%=fieldName%>_show" class="flddep<%=!params.readonly&&params.required? " required" : ""%>" value="<%=safe.htmlattr(lfunctieName)%>" placeholder="<%=lwhenEmpty%>"
<%=params.readonly? " readonly tabindex=-1" : ""%>
<%=params.onChange && !params.readonly? " sgonChange='" + params.onChange + "'" : ""%>>
<input type="hidden" id="<%=fieldName%>" name="<%=fieldName%>" value="<%=params.srtperslidKey%>">
<%
if (params.extraParamField)
{ /* het extra parameter veld wordt door suggest object gevuld */%>
<input type="hidden" id="<%=params.extraParamField%>" name="<%=params.extraParamField%>" value="<%=safe.htmlattr(lextraInit)%>">
<%
} %>
</nobr>
<%
if (params.label)
{ %>
</td></tr>
<%
} %>
<%
if (!params.readonly)
{
if (params.urlAdd)
{
var urlAddTxt = "[";
for (var i = 0; i < params.urlAdd.length; i++)
{
urlAddTxt += (i > 0? ", " : "") + "{ urlParam: \"" + params.urlAdd[i].urlParam + "\", field: \"" + params.urlAdd[i].field + "\" }";
}
urlAddTxt += "]"
}
%>
<script type="text/javascript">
jQuery(document).ready( function()
{
<%=objectName%> = new Suggest({ objectName: "<%=objectName%>",
queryField: $("#<%=fieldName%>_show")[0],
queryUrl: "<%=functieQueryUrl%>",
initKey: <%=params.srtperslidKey? params.srtperslidKey : -1%>,
icon: "fa-address-card-o",
keyField: $("#<%=fieldName%>")[0]
<%=params.urlAdd? ", urlAdd: " + urlAddTxt : ""%>
<%=params.extraParamField? ", extraParamField: $(\"" + "#" + params.extraParamField + "\")[0]" : ""%>
<%=params.extraParamField? ", initExtraParam: \"" + safe.jsstring("" + lextraInit) + "\"": ""%>
<%=params.isBad? ", isBad: true": ""%>
<%=params.readonly? ", fieldReadonly: true": ""%>
});
}
)
</script>
<%
}
}
%>