UWVA#50707 vertrouwelijke kenmerken,tonen en (niet) opslaan
svn path=/Website/trunk/; revision=36312
This commit is contained in:
@@ -11,12 +11,11 @@
|
|||||||
fetches all kenmerk-information
|
fetches all kenmerk-information
|
||||||
The structure of tha SQL should match the predefined structure (column names)
|
The structure of tha SQL should match the predefined structure (column names)
|
||||||
|
|
||||||
TODO: HTML5-achtige zaken toevoegen
|
TODO: HTML5-achtige types toevoegen wanneer alle browsers het daar over eens zijn
|
||||||
- required is ook een attribute met functionaliteit. Tot dusverre zetten we alleen reuired_class
|
|
||||||
moeten we behalve adt attr toevoegen ook iets met toggle en zo?
|
|
||||||
|
|
||||||
FlexFiles.inc functie bepaalNiveau is altijd nodig dus FlexFiles.inc erbij
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// FlexFiles.inc functie bepaalNiveau is altijd nodig dus FlexFiles.inc erbij
|
||||||
%><!-- #include file="../shared/FlexFiles.inc" -->
|
%><!-- #include file="../shared/FlexFiles.inc" -->
|
||||||
<%
|
<%
|
||||||
|
|
||||||
@@ -140,17 +139,16 @@ function BijlagenButton(pModule, pNiveau, pKey, tmpfolder, pKenmerk_key,
|
|||||||
{
|
{
|
||||||
url += "&tmpfolder=" + tmpfolder;
|
url += "&tmpfolder=" + tmpfolder;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pReadonly) url += "&reado=1";
|
|
||||||
url += "&multi=1";
|
url += "&multi=1";
|
||||||
|
if (pReadonly) url += "&reado=1";
|
||||||
if (kdim) url += "&extFilter=" + escape(kdim);
|
if (kdim) url += "&extFilter=" + escape(kdim);
|
||||||
if (pregexp) url += "&pregexp=" + escape(pregexp); // P800x600 voor foto van 800x600
|
if (pregexp) url += "&pregexp=" + escape(pregexp); // P800x600 voor foto van 800x600
|
||||||
var blg = "onBijlagen('" + safe.jsstring(protectQS.create(url)) + "'"
|
var blg = "onBijlagen('" + safe.jsstring(protectQS.create(url)) + "'"
|
||||||
+ ",''" // geen saveUrl
|
+ ",''" // geen saveUrl
|
||||||
+ ", true" // multi
|
+ ", true" // multi
|
||||||
+ ", this)"
|
+ ", this)";
|
||||||
res += " onClick='" + safe.htmlattr(blg) + "'"
|
res += " onClick='" + safe.htmlattr(blg) + "'"
|
||||||
+ (!pReadonly ? " onChange='checkKenmerk(this, false,\"M\",0,0,0,0)'" : "")
|
+ (!pReadonly ? " onChange='checkKenmerk(this, false,\"M\",0,0,0,0)'" : "");
|
||||||
res += ">";
|
res += ">";
|
||||||
res += "<i class='fa fa-folder-open fa-fw hasIcon bijlage' onClick='this.previousSibling.click()'></i>";
|
res += "<i class='fa fa-folder-open fa-fw hasIcon bijlage' onClick='this.previousSibling.click()'></i>";
|
||||||
}
|
}
|
||||||
@@ -168,7 +166,7 @@ function OpenFlexFile(Module, Niveau, Key, Kenmerk_key, fname, params)
|
|||||||
var s = rooturl + "/appl/shared/BijlagenStream.asp"
|
var s = rooturl + "/appl/shared/BijlagenStream.asp"
|
||||||
s += "?module=" + Module
|
s += "?module=" + Module
|
||||||
+ "&key=" + Key
|
+ "&key=" + Key
|
||||||
+ (Niveau? "&niveau=" + Niveau : "")
|
+ (Niveau ? "&niveau=" + Niveau : "")
|
||||||
+ "&kenmerk_key=" + Kenmerk_key
|
+ "&kenmerk_key=" + Kenmerk_key
|
||||||
+ "&filename=" + Server.URLencode(fname);
|
+ "&filename=" + Server.URLencode(fname);
|
||||||
if (params.mime_type)
|
if (params.mime_type)
|
||||||
@@ -178,7 +176,7 @@ function OpenFlexFile(Module, Niveau, Key, Kenmerk_key, fname, params)
|
|||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
function Operand( n)
|
function Operand(n)
|
||||||
{
|
{
|
||||||
ret_str = "<select class='operand' id='ko" + n + "' name='ko" + n + "'>"
|
ret_str = "<select class='operand' id='ko" + n + "' name='ko" + n + "'>"
|
||||||
+"<option value='='>=</option> "
|
+"<option value='='>=</option> "
|
||||||
@@ -244,7 +242,13 @@ function getDatatypeValue(table, column, checkval)
|
|||||||
// prs_key (of obsolete reqId) - key om bij defaultwaarde in ##PRS_PERSLID_KEY## te substitueren
|
// prs_key (of obsolete reqId) - key om bij defaultwaarde in ##PRS_PERSLID_KEY## te substitueren
|
||||||
// fnpre en fnpost: functies die voor en na genereren worden aangroepen *mits er kenmerken zijn*
|
// fnpre en fnpost: functies die voor en na genereren worden aangroepen *mits er kenmerken zijn*
|
||||||
// wfbuilder: toon ook flex-colname :f123 (voor workflow expression builder)
|
// wfbuilder: toon ook flex-colname :f123 (voor workflow expression builder)
|
||||||
|
// confidential: als true moeten vertrouwelijke waarden gemaskeerd worden
|
||||||
// }
|
// }
|
||||||
|
// Qua confidential zijn er 2 aspecten:
|
||||||
|
// 1. zorgen dat de echt waarden niet getoond worden, dat kan lomp als allereerste actie
|
||||||
|
// maar ik verwacht dat men ooit bv wel de bijlagenaam wil tonen maar dan onklikbaar
|
||||||
|
// 2. zorgen dat de gemaskeerde waarden niet gesubmit worden, dan dus geen submitvelden opnemen
|
||||||
|
//
|
||||||
// ================================================================================================
|
// ================================================================================================
|
||||||
function listKenmerk(sql, module, key, props)
|
function listKenmerk(sql, module, key, props)
|
||||||
{
|
{
|
||||||
@@ -303,11 +307,12 @@ function listKenmerk(sql, module, key, props)
|
|||||||
}
|
}
|
||||||
|
|
||||||
var predone = false;
|
var predone = false;
|
||||||
|
var c_maskmarker = "<i class='fa fa-ban' style='cursor:auto'></i>" // prefix, niet klikbaar
|
||||||
|
|
||||||
var colCount = 0; // Even/oneven zodat we weten of we links of rechts zitten
|
var colCount = 0; // Even/oneven zodat we weten of we links of rechts zitten
|
||||||
var forceNewLine = false; // Bij labels en grote text velden
|
var forceNewLine = false; // Bij labels en grote text velden
|
||||||
var val_seperator = '';
|
var val_seperator = '';
|
||||||
var val_label = '';
|
var flexkenmerklabel = '';
|
||||||
var idCounter = 1; // We maken alleen name/id-s voor de velden die ook echt bewerkt kunnen worden
|
var idCounter = 1; // We maken alleen name/id-s voor de velden die ook echt bewerkt kunnen worden
|
||||||
var clabelCounter = 0; // Het aantal collapsable labels
|
var clabelCounter = 0; // Het aantal collapsable labels
|
||||||
var anyDate = false;
|
var anyDate = false;
|
||||||
@@ -352,7 +357,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
var prssql = false;
|
var prssql = false;
|
||||||
for (i = 1; !oRs.eof; i++)
|
for (i = 1; !oRs.eof; i++)
|
||||||
{
|
{
|
||||||
var val = null;
|
var flexkenmerkwaarde = null;
|
||||||
val_seperator = ':';
|
val_seperator = ':';
|
||||||
var def_val = oRs("kenmerk_default").Value;
|
var def_val = oRs("kenmerk_default").Value;
|
||||||
var isExpression = false;
|
var isExpression = false;
|
||||||
@@ -360,7 +365,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
if (!kenmerk_search && !multiMode)
|
if (!kenmerk_search && !multiMode)
|
||||||
{
|
{
|
||||||
// In multiMode no filling of default values
|
// In multiMode no filling of default values
|
||||||
val = oRs("kenmerk_waarde").value;
|
flexkenmerkwaarde = oRs("kenmerk_waarde").value;
|
||||||
|
|
||||||
if (def_val && def_val.match('##EXPR##') != null)
|
if (def_val && def_val.match('##EXPR##') != null)
|
||||||
isExpression = true;
|
isExpression = true;
|
||||||
@@ -368,24 +373,24 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// For a new value, this default is used. It could be a primitive value (string, number or key) or
|
// For a new value, this default is used. It could be a primitive value (string, number or key) or
|
||||||
// it is suggested to support (later)
|
// it is suggested to support (later)
|
||||||
// a more sophisticated value, using ##asp-variable## and/or SQL:SELECT in the string.
|
// a more sophisticated value, using ##asp-variable## and/or SQL:SELECT in the string.
|
||||||
if (val != null)
|
if (flexkenmerkwaarde != null)
|
||||||
{ //__Log("val:"+val);
|
{ //__Log("flexkenmerkwaarde:"+flexkenmerkwaarde);
|
||||||
if (val == def_val && val.match('##SQL##') != null)
|
if (flexkenmerkwaarde == def_val && flexkenmerkwaarde.match('##SQL##') != null)
|
||||||
{
|
{
|
||||||
//__Log("val match");
|
//__Log("flexkenmerkwaarde match");
|
||||||
prssql = true;
|
prssql = true;
|
||||||
val = val.substr(val.indexOf('##SQL##') + 7);
|
flexkenmerkwaarde = flexkenmerkwaarde.substr(flexkenmerkwaarde.indexOf('##SQL##') + 7);
|
||||||
var sql2 = val.replace("##PRS_PERSLID_KEY##", prs_key).replace("##PRS_CONTACTPERSOON_KEY##", cont_key);
|
var sql2 = flexkenmerkwaarde.replace("##PRS_PERSLID_KEY##", prs_key).replace("##PRS_CONTACTPERSOON_KEY##", cont_key);
|
||||||
oRsPerslid = Oracle.Execute(sql2);
|
oRsPerslid = Oracle.Execute(sql2);
|
||||||
if (!oRsPerslid.eof)
|
if (!oRsPerslid.eof)
|
||||||
val = oRsPerslid(0).value;
|
flexkenmerkwaarde = oRsPerslid(0).value;
|
||||||
else
|
else
|
||||||
val = '';
|
flexkenmerkwaarde = '';
|
||||||
oRsPerslid.Close();
|
oRsPerslid.Close();
|
||||||
}
|
}
|
||||||
else if (def_val && val == def_val && def_val.match('##EXPR##') != null)
|
else if (def_val && flexkenmerkwaarde == def_val && def_val.match('##EXPR##') != null)
|
||||||
{
|
{
|
||||||
val = "";
|
flexkenmerkwaarde = "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -395,29 +400,32 @@ function listKenmerk(sql, module, key, props)
|
|||||||
var xx = props.defaults[oRs("kenmerk_omschrijving").value.toLowerCase()];
|
var xx = props.defaults[oRs("kenmerk_omschrijving").value.toLowerCase()];
|
||||||
if (typeof xx != "undefined")
|
if (typeof xx != "undefined")
|
||||||
{
|
{
|
||||||
val = xx;
|
flexkenmerkwaarde = xx;
|
||||||
if (oRs("kenmerk_kenmerktype").value == "C" || oRs("kenmerk_kenmerktype").value == "N" || oRs("kenmerk_kenmerktype").value == "B")
|
if (oRs("kenmerk_kenmerktype").value == "C" || oRs("kenmerk_kenmerktype").value == "N" || oRs("kenmerk_kenmerktype").value == "B")
|
||||||
val = val.substr(0, oRs("kenmerk_lengte").value); // Kap de waarde op de maximale lengte af
|
flexkenmerkwaarde = flexkenmerkwaarde.substr(0, oRs("kenmerk_lengte").value); // Kap de waarde op de maximale lengte af
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// De weer te geven waarde is nu bepaald
|
// De weer te geven waarde is nu bepaald
|
||||||
var kkey = oRs("kenmerk_key").value;
|
var kkey = oRs("kenmerk_key").value;
|
||||||
val_label = Server.HTMLEncode(oRs("kenmerk_omschrijving").value? oRs("kenmerk_omschrijving").value : ""); // Omschrijving kan leeg gelaten zijn
|
flexkenmerklabel= Server.HTMLEncode(oRs("kenmerk_omschrijving").value ? oRs("kenmerk_omschrijving").value : ""); // Omschrijving kan leeg gelaten zijn
|
||||||
var ktype = oRs("kenmerk_kenmerktype").value;
|
var ktype = oRs("kenmerk_kenmerktype").value;
|
||||||
var klen = oRs("kenmerk_lengte").value;
|
var klen = oRs("kenmerk_lengte").value;
|
||||||
if (!klen) klen = 4000;
|
if (!klen) klen = 4000;
|
||||||
var kdec = oRs("kenmerk_dec").value;
|
var kdec = oRs("kenmerk_dec").value;
|
||||||
var kmin = oRs("kenmerk_nmin").value;
|
var kmin = oRs("kenmerk_nmin").value;
|
||||||
var kmax = oRs("kenmerk_nmax").value;
|
var kmax = oRs("kenmerk_nmax").value;
|
||||||
var ksysteem= oRs("kenmerk_systeem").value;
|
var ksysteem = oRs("kenmerk_systeem").value;
|
||||||
var kvolgnr = "" + oRs("kenmerk_volgnr").value;
|
var kvolgnr = "" + oRs("kenmerk_volgnr").value;
|
||||||
var kdim = oRs("kenmerk_dimensie").value; // beperkt bij uploads de extensie
|
var kdim = oRs("kenmerk_dimensie").value; // beperkt bij uploads de extensie
|
||||||
var hint = oRs("kenmerk_hint").value;
|
var hint = oRs("kenmerk_hint").value;
|
||||||
var kregexp = oRs("kenmerk_regexp").value;
|
var kregexp = oRs("kenmerk_regexp").value;
|
||||||
var kdomein_key = oRs("kenmerkdomein_key").value;
|
var kdomein_key = oRs("kenmerkdomein_key").value;
|
||||||
|
|
||||||
|
var maskeren = confidential && ksysteem&4;
|
||||||
|
var maskmarker = maskeren ? c_maskmarker : ""; // misschien tijdelijk, een soort visuele assert: als je dit ziet met een echt waarde = fout
|
||||||
|
|
||||||
// if (hint == null) hint = "";
|
// if (hint == null) hint = "";
|
||||||
// PF vindt van niet if (def_val == null) def_val = " ";
|
// PF vindt van niet if (def_val == null) def_val = " ";
|
||||||
var required = oRs("kenmerk_verplicht").value;
|
var required = oRs("kenmerk_verplicht").value;
|
||||||
@@ -444,8 +452,8 @@ function listKenmerk(sql, module, key, props)
|
|||||||
continue; // Onzichtbaar
|
continue; // Onzichtbaar
|
||||||
}
|
}
|
||||||
|
|
||||||
//kenmerk_write( "<!--YY:"+colCount+":"+val_label+"-->");
|
//kenmerk_write( "<!--YY:"+colCount+":"+flexkenmerklabel+"-->");
|
||||||
//kenmerk_write( "<!--YY:"+idCounter+":"+val_label+"-->");
|
//kenmerk_write( "<!--YY:"+idCounter+":"+flexkenmerklabel+"-->");
|
||||||
|
|
||||||
var readonlyfield = forceReadonly; // startwaarde
|
var readonlyfield = forceReadonly; // startwaarde
|
||||||
if (!readonlyfield && !kenmerk_search && props.fnIsReadonly) // Zoeken is natuurlijk nooit readonly
|
if (!readonlyfield && !kenmerk_search && props.fnIsReadonly) // Zoeken is natuurlijk nooit readonly
|
||||||
@@ -525,7 +533,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// PF vraagt zich af: heeft dit ook gevolg voor print en excel?
|
// PF vraagt zich af: heeft dit ook gevolg voor print en excel?
|
||||||
// En: voor type M is het altijd nu nog leeg, en die komen dus readonly nooit!
|
// En: voor type M is het altijd nu nog leeg, en die komen dus readonly nooit!
|
||||||
// Voorlopig laat ik die dan altijd maar zien (TODO: evt niet als er 0 bestanden zijn)
|
// Voorlopig laat ik die dan altijd maar zien (TODO: evt niet als er 0 bestanden zijn)
|
||||||
if (readonlyfield && !isParent && ktype != 'L' && ktype != 'l' && ktype != 'M' && (!val || val=="") &&
|
if (readonlyfield && !isParent && ktype != 'L' && ktype != 'l' && ktype != 'M' && (!flexkenmerkwaarde || flexkenmerkwaarde=="") &&
|
||||||
(!kenmerk_search && (ktype == 'C' || ktype == 'N' || ktype == 'B' || ktype == 'D' || ktype == 'R' || ktype == 'S')) ) // Als geavanceerd dan maakt het niet uit of het readonly is. Dan moet je het kenmerk gewoon tonen.
|
(!kenmerk_search && (ktype == 'C' || ktype == 'N' || ktype == 'B' || ktype == 'D' || ktype == 'R' || ktype == 'S')) ) // Als geavanceerd dan maakt het niet uit of het readonly is. Dan moet je het kenmerk gewoon tonen.
|
||||||
{
|
{
|
||||||
oRs.MoveNext();
|
oRs.MoveNext();
|
||||||
@@ -557,7 +565,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
else
|
else
|
||||||
forceNewLine = false;
|
forceNewLine = false;
|
||||||
|
|
||||||
if (kenmerk_search || val != null && val != "")
|
if (kenmerk_search || flexkenmerkwaarde != null && flexkenmerkwaarde != "")
|
||||||
allCollapsable = false;
|
allCollapsable = false;
|
||||||
|
|
||||||
// Eerst de simpele datatypes ('C', 'D' en 'N'). De complexere overrulen kv mogelijk later nog wel.
|
// Eerst de simpele datatypes ('C', 'D' en 'N'). De complexere overrulen kv mogelijk later nog wel.
|
||||||
@@ -578,7 +586,12 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// - een R wordt een select
|
// - een R wordt een select
|
||||||
// We doen eerst die uitzonderingen
|
// We doen eerst die uitzonderingen
|
||||||
|
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// =================================================================
|
||||||
// KENMERKTYPE C (Karakter) =================================================================
|
// KENMERKTYPE C (Karakter) =================================================================
|
||||||
|
// =================================================================
|
||||||
|
// ==========================================================================================
|
||||||
if (ktype == 'C')
|
if (ktype == 'C')
|
||||||
{
|
{
|
||||||
if (flexExprIncluded && !isExpression)
|
if (flexExprIncluded && !isExpression)
|
||||||
@@ -592,17 +605,15 @@ function listKenmerk(sql, module, key, props)
|
|||||||
if (klen > 50 && !kenmerk_search)
|
if (klen > 50 && !kenmerk_search)
|
||||||
{
|
{
|
||||||
// Groot text veld wordt automatisch textarea
|
// Groot text veld wordt automatisch textarea
|
||||||
if (readonlyfield)
|
if (readonlyfield || maskeren)
|
||||||
{
|
{
|
||||||
if (formobile)
|
if (formobile)
|
||||||
{
|
{
|
||||||
kv = "<textarea class='fldflexC50 ' rows=3 readonly tabindex=-1 maxlength='"+klen+"'>" + safe.textarea(val) + "</textarea>";
|
kv = "<textarea class='fldflexC50 ' rows=3 readonly tabindex=-1 maxlength='"+klen+"'>" + safe.textarea(flexkenmerkwaarde) + "</textarea>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
kv = "<div class='readonly fldflexC50'>"
|
kv = "<div class='readonly fldflexC50'>" + safe.html(flexkenmerkwaarde) + "</div>";
|
||||||
+ safe.html(val)
|
|
||||||
+ "</div>";
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -623,24 +634,24 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ " rows=3 "
|
+ " rows=3 "
|
||||||
+ " maxlength='"+klen+"'"
|
+ " maxlength='"+klen+"'"
|
||||||
+ " name='" + nameprefix + idCounter + "val' id='" + nameprefix + idCounter + "val' "
|
+ " name='" + nameprefix + idCounter + "val' id='" + nameprefix + idCounter + "val' "
|
||||||
//+ "placeholder='"+val_label+"'"
|
//+ "placeholder='"+flexkenmerklabel+"'"
|
||||||
+ ">"
|
+ ">"
|
||||||
+ safe.textarea(val)
|
+ safe.textarea(flexkenmerkwaarde)
|
||||||
+ "</textarea>";
|
+ "</textarea>";
|
||||||
}
|
}
|
||||||
} else { // klein input veld
|
} else { // klein input veld
|
||||||
if (readonlyfield)
|
if (readonlyfield || maskeren)
|
||||||
{
|
{
|
||||||
if (formobile)
|
if (formobile)
|
||||||
{
|
{
|
||||||
kv = "<input type='text' class='fldflexC ' readonly tabindex=-1 value='"+ safe.html(val) +"'>";
|
kv = "<input type='text' class='fldflexC ' readonly tabindex=-1 value='"+ safe.html(flexkenmerkwaarde) +"'>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
kv = "<span"
|
kv = "<span"
|
||||||
+ " class='readonly "
|
+ " class='readonly "
|
||||||
+ (kenmerk_search ? "fldSflexC " : "fldflexC ")
|
+ (kenmerk_search ? "fldSflexC " : "fldflexC ")
|
||||||
+ "'>" + safe.htmlattr(val) + "</span>";
|
+ "'>" + safe.htmlattr(flexkenmerkwaarde) + "</span>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -659,8 +670,8 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ "'"
|
+ "'"
|
||||||
+ (required ? " required='required' " : "")
|
+ (required ? " required='required' " : "")
|
||||||
+ (isExpression ? " readonly " : "")
|
+ (isExpression ? " readonly " : "")
|
||||||
//+ " placeholder='"+val_label+"'"
|
//+ " placeholder='"+flexkenmerklabel+"'"
|
||||||
+ " value='" + safe.htmlattr(val) + "'"
|
+ " value='" + safe.htmlattr(flexkenmerkwaarde) + "'"
|
||||||
+ " maxlength='" + klen + "'"
|
+ " maxlength='" + klen + "'"
|
||||||
+ ">";
|
+ ">";
|
||||||
}
|
}
|
||||||
@@ -676,7 +687,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// Bijhouden van kenmerken. Later kan blijken dat ze parent kenmerken zijn.
|
// Bijhouden van kenmerken. Later kan blijken dat ze parent kenmerken zijn.
|
||||||
// Kenmerkkey alleen is niet uniek bij meerdere bezoekers of factuurregels.
|
// Kenmerkkey alleen is niet uniek bij meerdere bezoekers of factuurregels.
|
||||||
// Daarom nameprefix meenemen want die is per bezoeker of factuurregel wel uniek.
|
// Daarom nameprefix meenemen want die is per bezoeker of factuurregel wel uniek.
|
||||||
kenmerkidref[nameprefix + kkey] = new idref(nameprefix + idCounter, val);
|
kenmerkidref[nameprefix + kkey] = new idref(nameprefix + idCounter, flexkenmerkwaarde);
|
||||||
var parentkenmerkid = "";
|
var parentkenmerkid = "";
|
||||||
var parentkenmerk_key = -1;
|
var parentkenmerk_key = -1;
|
||||||
var parentkenmerkwaarde;
|
var parentkenmerkwaarde;
|
||||||
@@ -716,8 +727,12 @@ function listKenmerk(sql, module, key, props)
|
|||||||
oRs2.close();
|
oRs2.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
// KENMERKTYPE R/S (Referentie/Suggest) =====================================================
|
// ==========================================================================================
|
||||||
if (ktype == 'R' || (readonlyfield && ktype == 'S')) // Referentie naar andere tabel (listboxje)
|
// ============================================
|
||||||
|
// KENMERKTYPE R/S (Referentie/readonly Suggest) ============================================
|
||||||
|
// ============================================
|
||||||
|
// ==========================================================================================
|
||||||
|
if (ktype == "R" || ((readonlyfield || maskeren) && ktype == "S")) // Referentie naar andere tabel (listboxje)
|
||||||
{
|
{
|
||||||
var wheres = [];
|
var wheres = [];
|
||||||
var dsql = "SELECT fac_kenmerkdomein_objectnaam"
|
var dsql = "SELECT fac_kenmerkdomein_objectnaam"
|
||||||
@@ -740,19 +755,19 @@ function listKenmerk(sql, module, key, props)
|
|||||||
wheres.push("fac_usrdata_parentkey IS NOT NULL");
|
wheres.push("fac_usrdata_parentkey IS NOT NULL");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (val !== null && String(oRs_d("fac_kenmerkdomein_kolomnaam").value).match(/\_key$/i))
|
if (flexkenmerkwaarde !== null && String(oRs_d("fac_kenmerkdomein_kolomnaam").value).match(/\_key$/i))
|
||||||
{
|
{
|
||||||
var vv = parseInt(val, 10);
|
var vv = parseInt(flexkenmerkwaarde, 10);
|
||||||
if (isNaN(vv))
|
if (isNaN(vv))
|
||||||
{ // Kan gebeuren als van een text-kenmerk *achteraf* een referentiekenmerk wordt gemaakt
|
{ // Kan gebeuren als van een text-kenmerk *achteraf* een referentiekenmerk wordt gemaakt
|
||||||
// Ook: als je bij een referentie kenmerk een foutieve default-waarde (textueel) invult
|
// Ook: als je bij een referentie kenmerk een foutieve default-waarde (textueel) invult
|
||||||
__DoLog("Ongeldige referentie waarde <em>{0}</em> voor kolom {1}.{2}".format(val,
|
__DoLog("Ongeldige referentie waarde <em>{0}</em> voor kolom {1}.{2}".format(flexkenmerkwaarde,
|
||||||
oRs_d("fac_kenmerkdomein_objectnaam").value,
|
oRs_d("fac_kenmerkdomein_objectnaam").value,
|
||||||
oRs_d("fac_kenmerkdomein_kolomnaam").value), "#ff0000");
|
oRs_d("fac_kenmerkdomein_kolomnaam").value), "#ff0000");
|
||||||
val = "-1";
|
flexkenmerkwaarde = "-1";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
val = String(vv);
|
flexkenmerkwaarde = String(vv);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (oRs_d("fac_kenmerkdomein_objectnaam").Value == "FAC_USRDATA" && oRs_d("fac_usrtab_key").Value)
|
if (oRs_d("fac_kenmerkdomein_objectnaam").Value == "FAC_USRDATA" && oRs_d("fac_usrtab_key").Value)
|
||||||
@@ -766,7 +781,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ " WHERE fac_usrtab_key=" + oRs_d("fac_usrtab_key").Value
|
+ " WHERE fac_usrtab_key=" + oRs_d("fac_usrtab_key").Value
|
||||||
+ (!readonlyfield
|
+ (!readonlyfield
|
||||||
? " AND fac_usrdata_verwijder IS NULL"
|
? " AND fac_usrdata_verwijder IS NULL"
|
||||||
: " AND fac_usrdata_key = " + val)
|
: " AND fac_usrdata_key = " + flexkenmerkwaarde)
|
||||||
+ " AND (fac_usrdata_vervaldatum IS NULL OR fac_usrdata_vervaldatum > SYSDATE)"
|
+ " AND (fac_usrdata_vervaldatum IS NULL OR fac_usrdata_vervaldatum > SYSDATE)"
|
||||||
+ " UNION "
|
+ " UNION "
|
||||||
+ "SELECT fac_usrdata_key"
|
+ "SELECT fac_usrdata_key"
|
||||||
@@ -779,7 +794,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ " , fac_usrdata_volgnr"
|
+ " , fac_usrdata_volgnr"
|
||||||
+ " FROM fac_usrdata "
|
+ " FROM fac_usrdata "
|
||||||
+ " WHERE fac_usrtab_key = " + oRs_d("fac_usrtab_key").Value
|
+ " WHERE fac_usrtab_key = " + oRs_d("fac_usrtab_key").Value
|
||||||
+ " AND fac_usrdata_key = " + val;
|
+ " AND fac_usrdata_key = " + flexkenmerkwaarde;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -792,7 +807,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ " FROM " + oRs_d("fac_kenmerkdomein_objectnaam").Value
|
+ " FROM " + oRs_d("fac_kenmerkdomein_objectnaam").Value
|
||||||
+ " WHERE (" + vervalkolom + " IS NULL OR " + vervalkolom + " > SYSDATE)"
|
+ " WHERE (" + vervalkolom + " IS NULL OR " + vervalkolom + " > SYSDATE)"
|
||||||
+ (readonlyfield
|
+ (readonlyfield
|
||||||
? " AND " + oRs_d("fac_kenmerkdomein_kolomnaam").Value + " = " + safe.quoted_sql(val)
|
? " AND " + oRs_d("fac_kenmerkdomein_kolomnaam").Value + " = " + safe.quoted_sql(flexkenmerkwaarde)
|
||||||
: "")
|
: "")
|
||||||
+ " UNION "
|
+ " UNION "
|
||||||
+ "SELECT " + oRs_d("fac_kenmerkdomein_kolomnaam").Value
|
+ "SELECT " + oRs_d("fac_kenmerkdomein_kolomnaam").Value
|
||||||
@@ -806,7 +821,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
: "NULL"
|
: "NULL"
|
||||||
) + " x"
|
) + " x"
|
||||||
+ " FROM " + oRs_d("fac_kenmerkdomein_objectnaam").Value
|
+ " FROM " + oRs_d("fac_kenmerkdomein_objectnaam").Value
|
||||||
+ " WHERE " + oRs_d("fac_kenmerkdomein_kolomnaam").Value + " = " + safe.quoted_sql(val);
|
+ " WHERE " + oRs_d("fac_kenmerkdomein_kolomnaam").Value + " = " + safe.quoted_sql(flexkenmerkwaarde);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -834,7 +849,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
{
|
{
|
||||||
if (readonlyfield)
|
if (readonlyfield)
|
||||||
{
|
{
|
||||||
if (c0.value == val)
|
if (c0.value == flexkenmerkwaarde)
|
||||||
{
|
{
|
||||||
kvv = c1.value;
|
kvv = c1.value;
|
||||||
break; // Rap klaar. Kan efficienter met een WHERE?
|
break; // Rap klaar. Kan efficienter met een WHERE?
|
||||||
@@ -845,7 +860,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
if (c1.value != null && String(c1.value.length) > maxLen)
|
if (c1.value != null && String(c1.value.length) > maxLen)
|
||||||
maxLen = String(c1.value).length;
|
maxLen = String(c1.value).length;
|
||||||
appender = '<option value="' + c0.value + '"'
|
appender = '<option value="' + c0.value + '"'
|
||||||
+ (c0.value == val?' selected' : '') + '>' + safe.html(c1.value) + '</option>';
|
+ (c0.value == flexkenmerkwaarde?' selected' : '') + '>' + safe.html(c1.value) + '</option>';
|
||||||
builder[builder.length] = appender;
|
builder[builder.length] = appender;
|
||||||
}
|
}
|
||||||
oRs2.MoveNext();
|
oRs2.MoveNext();
|
||||||
@@ -855,37 +870,10 @@ function listKenmerk(sql, module, key, props)
|
|||||||
if (kvv == '') kvv = ' '; // Zodat readonly/print in ieder geval het label getoond wordt.
|
if (kvv == '') kvv = ' '; // Zodat readonly/print in ieder geval het label getoond wordt.
|
||||||
oRs2.close();
|
oRs2.close();
|
||||||
|
|
||||||
if (!readonlyfield)
|
if (readonlyfield || maskeren)
|
||||||
{ // is dus impliciet ook type R
|
|
||||||
if (flexExprIncluded && !isExpression)
|
|
||||||
onchangeExp = "calculateFlexExpressions(this"
|
|
||||||
+ ", \"" + module + "\""
|
|
||||||
+ ", " + key
|
|
||||||
+ ", \"" + (props.kenmerk_module || "") + "\""
|
|
||||||
+ ", \"" + nameprefix + "\""
|
|
||||||
+ ", \"" + extraserie + "\""
|
|
||||||
+ ");";
|
|
||||||
kv = "<select id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val'"
|
|
||||||
+ " class='"
|
|
||||||
+ (kenmerk_search ? "fldSflexR " : "fldflexR ")
|
|
||||||
+ (required ? required_class : "")
|
|
||||||
+ "'"
|
|
||||||
//+ " placeholder='"+val_label+"'"
|
|
||||||
+ (required ? " required='required' " : "")
|
|
||||||
+ (required > 1
|
|
||||||
? " onChange='checkRequiredGroup(\"" + required_group + "\");" + onchangeExp + "'"
|
|
||||||
: (flexExprIncluded && !isExpression? " onChange='" + onchangeExp + "'" : ""))
|
|
||||||
+ ">"
|
|
||||||
+ "<option value='-1' " + (required? " class='" + required_class + "'" : "") + "><!--lege waarde--></option>"
|
|
||||||
+ kvv
|
|
||||||
+ "</select>";
|
|
||||||
if (required) // wrapper voor rode streepje, IE-only. Wat vind je Jos (ik vind het te lelijk in chrome/safari)
|
|
||||||
kv = "<!--[if lt IE 8]><div id='req_" + nameprefix + idCounter + "val' class='fldflexR " + required_class + "'><![endif]-->" + kv + "<!--[if lt IE 8]></div><![endif]-->";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
var showdetail = (formobile ? "" : (xmlnode? ' details' : '') );
|
var showdetail = (formobile ? "" : (xmlnode? ' details' : '') );
|
||||||
var clickdetail = (formobile ? "" : (xmlnode? ' onClick="xmlNodeDetails(' + val + ', \'' + xmlnode + '\')"' : '') );
|
var clickdetail = (formobile ? "" : (xmlnode? ' onClick="xmlNodeDetails(' + flexkenmerkwaarde + ', \'' + xmlnode + '\')"' : '') );
|
||||||
if (ktype == "R")
|
if (ktype == "R")
|
||||||
kv = '<input class="fldflexR'
|
kv = '<input class="fldflexR'
|
||||||
+ showdetail
|
+ showdetail
|
||||||
@@ -901,7 +889,34 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ clickdetail
|
+ clickdetail
|
||||||
+ '>';
|
+ '>';
|
||||||
}
|
}
|
||||||
if (!readonlyfield && parentkenmerkid != "")
|
else
|
||||||
|
{
|
||||||
|
// is dus impliciet ook type R
|
||||||
|
if (flexExprIncluded && !isExpression)
|
||||||
|
onchangeExp = "calculateFlexExpressions(this"
|
||||||
|
+ ", \"" + module + "\""
|
||||||
|
+ ", " + key
|
||||||
|
+ ", \"" + (props.kenmerk_module || "") + "\""
|
||||||
|
+ ", \"" + nameprefix + "\""
|
||||||
|
+ ", \"" + extraserie + "\""
|
||||||
|
+ ");";
|
||||||
|
kv = "<select id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val'"
|
||||||
|
+ " class='"
|
||||||
|
+ (kenmerk_search ? "fldSflexR " : "fldflexR ")
|
||||||
|
+ (required ? required_class : "")
|
||||||
|
+ "'"
|
||||||
|
//+ " placeholder='"+flexkenmerklabel+"'"
|
||||||
|
+ (required ? " required='required' " : "")
|
||||||
|
+ (required > 1
|
||||||
|
? " onChange='checkRequiredGroup(\"" + required_group + "\");" + onchangeExp + "'"
|
||||||
|
: (flexExprIncluded && !isExpression? " onChange='" + onchangeExp + "'" : ""))
|
||||||
|
+ ">"
|
||||||
|
+ "<option value='-1' " + (required? " class='" + required_class + "'" : "") + "><!--lege waarde--></option>"
|
||||||
|
+ kvv
|
||||||
|
+ "</select>";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!readonlyfield && parentkenmerkid != "" && !maskeren)
|
||||||
{ %>
|
{ %>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
function onChangeRKenmerkParent<%=parentkenmerkid%>()
|
function onChangeRKenmerkParent<%=parentkenmerkid%>()
|
||||||
@@ -928,11 +943,15 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// onchange van de parent koppelen aan de functie die deze actie uitvoert.
|
// onchange van de parent koppelen aan de functie die deze actie uitvoert.
|
||||||
$("#<%=parentkenmerkid%>val")[0].onchange = function() {onChangeRKenmerkParent<%=parentkenmerkid%>();}
|
$("#<%=parentkenmerkid%>val")[0].onchange = function() {onChangeRKenmerkParent<%=parentkenmerkid%>();}
|
||||||
})
|
})
|
||||||
</script>
|
</script><%
|
||||||
<% }
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// ===================================================================
|
||||||
// KENMERKTYPE F/E (File) ===================================================================
|
// KENMERKTYPE F/E (File) ===================================================================
|
||||||
|
// ===================================================================
|
||||||
|
// ==========================================================================================
|
||||||
var lijst = [];
|
var lijst = [];
|
||||||
// mobile doen we heel anders, tenzij het signature is. Die doen we nog old-school
|
// mobile doen we heel anders, tenzij het signature is. Die doen we nog old-school
|
||||||
if (formobile && kdim != 'xxx' && (ktype == 'F' || ktype == 'E' || ktype == 'M'))
|
if (formobile && kdim != 'xxx' && (ktype == 'F' || ktype == 'E' || ktype == 'M'))
|
||||||
@@ -996,9 +1015,9 @@ function listKenmerk(sql, module, key, props)
|
|||||||
var fld = nameprefix + idCounter + "val";
|
var fld = nameprefix + idCounter + "val";
|
||||||
// Er is redundantie: de bestandsnaam zit in de database en staat in de folder
|
// Er is redundantie: de bestandsnaam zit in de database en staat in de folder
|
||||||
// door bijvoorbeeld niet op Ok te drukken na vervanging van het bestand
|
// door bijvoorbeeld niet op Ok te drukken na vervanging van het bestand
|
||||||
// kan er inconstistentie ontstaan. Lastig tegen te gaan dus maar detecteren en melden.
|
// kan er inconsistentie ontstaan. Lastig tegen te gaan dus maar detecteren en melden.
|
||||||
var missing = false;
|
var missing = false;
|
||||||
if (val && ktype != 'M')
|
if (flexkenmerkwaarde && ktype != 'M')
|
||||||
{
|
{
|
||||||
var fso = new ActiveXObject("Scripting.FileSystemObject");
|
var fso = new ActiveXObject("Scripting.FileSystemObject");
|
||||||
if (otherPath)
|
if (otherPath)
|
||||||
@@ -1008,9 +1027,9 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// JGL: Zou dit niet moeten/ kunnen via bijvoorbeeld iets als flexProps(module, key, String(kkey), niveau).AttachPath + "/";
|
// JGL: Zou dit niet moeten/ kunnen via bijvoorbeeld iets als flexProps(module, key, String(kkey), niveau).AttachPath + "/";
|
||||||
var vAttachPath = S("flexFilesPath") + "/" + module + "/" + subfolderKey(bepaalNiveau(module, niveau), key) + "/" + kkey;
|
var vAttachPath = S("flexFilesPath") + "/" + module + "/" + subfolderKey(bepaalNiveau(module, niveau), key) + "/" + kkey;
|
||||||
}
|
}
|
||||||
missing = !fso.FileExists(vAttachPath + "/" + val);
|
missing = !fso.FileExists(vAttachPath + "/" + flexkenmerkwaarde);
|
||||||
if (missing)
|
if (missing)
|
||||||
__Log(vAttachPath + "/" + val + " is missing");
|
__Log(vAttachPath + "/" + flexkenmerkwaarde + " is missing");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mobile heeft een compleet eigen BijlagenForm.asp
|
// Mobile heeft een compleet eigen BijlagenForm.asp
|
||||||
@@ -1060,7 +1079,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ ", $('#" + fld + "')[0]"
|
+ ", $('#" + fld + "')[0]"
|
||||||
+ ")";
|
+ ")";
|
||||||
|
|
||||||
if (!readonlyfield || val)
|
if (!readonlyfield || flexkenmerkwaarde)
|
||||||
{
|
{
|
||||||
kv = "<input type='text'"
|
kv = "<input type='text'"
|
||||||
+ (readonlyfield
|
+ (readonlyfield
|
||||||
@@ -1076,23 +1095,23 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ (required > 1
|
+ (required > 1
|
||||||
? " onChange='checkRequiredGroup(\"" + required_group + "\")'"
|
? " onChange='checkRequiredGroup(\"" + required_group + "\")'"
|
||||||
: "")
|
: "")
|
||||||
//+ " placeholder='"+val_label+"'"
|
//+ " placeholder='"+flexkenmerklabel+"'"
|
||||||
+ " value='" + safe.htmlattr(val) + "' "
|
+ " value='" + safe.htmlattr(flexkenmerkwaarde) + "' "
|
||||||
+ (!val?" style=display:none":"");
|
+ (!flexkenmerkwaarde?" style=display:none":"");
|
||||||
// + ">"; //komt later
|
// + ">"; //komt later
|
||||||
|
|
||||||
var kvClick="";
|
var kvClick="";
|
||||||
if (otherPath) // Even niet klikbaar
|
if (otherPath) // Even niet klikbaar
|
||||||
kvClick = " title='" + L("lcl_flex_autocopy") +"' ";
|
kvClick = " title='" + L("lcl_flex_autocopy") +"' ";
|
||||||
else if (readonlyfield && val && !missing) // rechtstreeks openen
|
else if (readonlyfield && flexkenmerkwaarde && !missing && !maskeren) // rechtstreeks openen
|
||||||
{
|
{
|
||||||
if (kdim == 'xxx')
|
if (kdim == 'xxx')
|
||||||
var fnclick = "parent.FcltMgr.windowopen('" + protectQS.create(OpenFlexFile(module, niveau, key, kkey, val, { mime_type: "image/png", contentdp: "inline" })) + "')";
|
var fnclick = "parent.FcltMgr.windowopen('" + protectQS.create(OpenFlexFile(module, niveau, key, kkey, flexkenmerkwaarde, { mime_type: "image/png", contentdp: "inline" })) + "')";
|
||||||
else
|
else
|
||||||
var fnclick = "parent.FcltMgr.windowopen('" + protectQS.create(OpenFlexFile(module, niveau, key, kkey, val)) + "', 'File')";
|
var fnclick = "parent.FcltMgr.windowopen('" + protectQS.create(OpenFlexFile(module, niveau, key, kkey, flexkenmerkwaarde)) + "', 'File')";
|
||||||
kvClick = " onclick='" + safe.htmlattr(fnclick) + "'";
|
kvClick = " onclick='" + safe.htmlattr(fnclick) + "'";
|
||||||
}
|
}
|
||||||
else if (readonlyfield && val && missing) // Waarschuwen
|
else if (readonlyfield && flexkenmerkwaarde && missing) // Waarschuwen
|
||||||
kvClick = " title='" + safe.htmlattr(L("lcl_flex_filenotfoundRO")) + "'";
|
kvClick = " title='" + safe.htmlattr(L("lcl_flex_filenotfoundRO")) + "'";
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1112,22 +1131,26 @@ function listKenmerk(sql, module, key, props)
|
|||||||
{
|
{
|
||||||
kv += "<input type='button' "
|
kv += "<input type='button' "
|
||||||
+ "class='bijlage1 button " + (required? required_class : "") + "' "
|
+ "class='bijlage1 button " + (required? required_class : "") + "' "
|
||||||
+ "isBijlage='1' nBijlagen='"+(val?1:0)+"' "
|
+ "isBijlage='1' nBijlagen='"+(flexkenmerkwaarde?1:0)+"' "
|
||||||
+ "value='" + L("lcl_add") + "'"
|
+ "value='" + L("lcl_add") + "'"
|
||||||
+ (val?" style='display:none' ": " ")
|
+ (flexkenmerkwaarde?" style='display:none' ": " ")
|
||||||
+ "onClick=\"" + blg + "\""
|
+ "onClick=\"" + blg + "\""
|
||||||
+">";
|
+">";
|
||||||
}
|
}
|
||||||
if (kdim == 'xxx')
|
if (kdim == 'xxx')
|
||||||
{
|
{
|
||||||
if (!missing && val)
|
if (!missing && flexkenmerkwaarde)
|
||||||
kv += "<img class='kenmerk' src=' " + protectQS.create(OpenFlexFile(module, niveau, key, kkey, val, { mime_type: "image/png", contentdp: "inline" })) + "'>";
|
kv += "<img class='kenmerk' src=' " + protectQS.create(OpenFlexFile(module, niveau, key, kkey, flexkenmerkwaarde, { mime_type: "image/png", contentdp: "inline" })) + "'>";
|
||||||
else
|
else
|
||||||
kv += "<img class='kenmerk' style='display:none'>";
|
kv += "<img class='kenmerk' style='display:none'>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// ======================================================================
|
||||||
// KENMERKTYPE M (Map) ======================================================================
|
// KENMERKTYPE M (Map) ======================================================================
|
||||||
|
// ======================================================================
|
||||||
|
// ==========================================================================================
|
||||||
else if (ktype == 'M') // Map met bestanden is altijd heel simpel
|
else if (ktype == 'M') // Map met bestanden is altijd heel simpel
|
||||||
{
|
{
|
||||||
var requiredfield = (required ? required_class : "");
|
var requiredfield = (required ? required_class : "");
|
||||||
@@ -1187,7 +1210,8 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ "' "
|
+ "' "
|
||||||
: "")
|
: "")
|
||||||
+ (!readonlyfield ? " onBlur='checkKenmerk(this, true,\"" + ktype + "\"," + klen + "," + kdec + "," + kmin + "," + kmax + ")' " : "")
|
+ (!readonlyfield ? " onBlur='checkKenmerk(this, true,\"" + ktype + "\"," + klen + "," + kdec + "," + kmin + "," + kmax + ")' " : "")
|
||||||
+ (readonlyfield? " readonly tabindex=-1 "
|
+ (readonlyfield || maskeren
|
||||||
|
? " readonly tabindex=-1 "
|
||||||
: " id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val' ");
|
: " id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val' ");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1195,76 +1219,82 @@ function listKenmerk(sql, module, key, props)
|
|||||||
// LET OP: kv is nu een "OPEN" variabele, die nog minstens een sluithaak nodig heeft!
|
// LET OP: kv is nu een "OPEN" variabele, die nog minstens een sluithaak nodig heeft!
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// ===============================================
|
||||||
// KENMERKTYPE N (Numeriek) of B (Berekening) ===============================================
|
// KENMERKTYPE N (Numeriek) of B (Berekening) ===============================================
|
||||||
if (ktype == 'N' || ktype == 'B')
|
// ===============================================
|
||||||
{ // Checkbox of numeriek/berekening input veld.
|
// ==========================================================================================
|
||||||
|
if (ktype == "N" || ktype == "B")
|
||||||
|
{
|
||||||
|
// Checkbox of numeriek/berekening input veld.
|
||||||
if (makeCheckbox) // deze doen we compleet hier
|
if (makeCheckbox) // deze doen we compleet hier
|
||||||
{
|
{
|
||||||
if (readonlyfield || ktype == 'B') // Berekening input veld is altijd readonly.
|
if (readonlyfield || ktype == "B" || maskeren) // Berekening input veld is altijd readonly.
|
||||||
{
|
{
|
||||||
if (formobile)
|
if (formobile)
|
||||||
{
|
{
|
||||||
kv = "<input type='text' class='fldflexc ' readonly tabindex=-1 value='" + (val == 1? L("lcl_check_1") : L("lcl_check_0")) + "'>";
|
kv = "<input type='text' class='fldflexc ' readonly tabindex=-1 value='" + (flexkenmerkwaarde == 1? L("lcl_check_1") : L("lcl_check_0")) + "'>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
kv = "<span"
|
kv = "<span"
|
||||||
+ " class='readonly "
|
+ " class='readonly "
|
||||||
+ (kenmerk_search ? "fldSflexC" : "fldflexC") // Is nu tekstveld
|
+ (kenmerk_search ? "fldSflexC" : "fldflexC") // Is nu tekstveld
|
||||||
+ "'>" + (val == 1? L("lcl_check_1") : L("lcl_check_0")) + "</span>";
|
+ "'>" + (flexkenmerkwaarde == 1? L("lcl_check_1") : L("lcl_check_0")) + "</span>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
kv = "<input type='checkbox' class='"
|
kv = "<input type='checkbox' class='"
|
||||||
+ (kenmerk_search
|
+ (kenmerk_search ? "fldCSflexN " : "fldCflexN ")
|
||||||
? "fldCSflexN "
|
|
||||||
: "fldCflexN ")
|
|
||||||
+ (required ? required_class : "")
|
+ (required ? required_class : "")
|
||||||
+ "'"
|
+ "'"
|
||||||
+ " onChange='checkKenmerk(this, false,\"" + ktype + "\"," + klen + "," + kdec + "," + kmin + "," + kmax + ")' "
|
+ " onChange='checkKenmerk(this, false,\"" + ktype + "\"," + klen + "," + kdec + "," + kmin + "," + kmax + ")' "
|
||||||
+ " onBlur='checkKenmerk(this, true,\"" + ktype + "\"," + klen + "," + kdec + "," + kmin + "," + kmax + ")' "
|
+ " onBlur='checkKenmerk(this, true,\"" + ktype + "\"," + klen + "," + kdec + "," + kmin + "," + kmax + ")' "
|
||||||
+ (val == 1
|
+ (flexkenmerkwaarde == 1
|
||||||
? " checked"
|
? " checked"
|
||||||
: "")
|
: "")
|
||||||
+ " id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val' "
|
+ " id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val' "
|
||||||
+ ">"
|
+ ">"
|
||||||
+ "<input type='hidden' id='has_" + nameprefix + idCounter + "val' name='has_" + nameprefix + idCounter + "val' value='1'>";
|
+ "<input type='hidden' id='has_" + nameprefix + idCounter + "val' name='has_" + nameprefix + idCounter + "val' value='1'>";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
// geen checkbox (noot PF: de readonly hiervan wordt kennelijk elders behandeld)
|
||||||
kv += " class='"
|
kv += " class='"
|
||||||
+ (kenmerk_search
|
+ (kenmerk_search ? "fldSflexN " : "fldflexN ")
|
||||||
? "fldSflexN "
|
|
||||||
: "fldflexN ")
|
|
||||||
+ (required ? required_class : "")
|
+ (required ? required_class : "")
|
||||||
+ (kdec > 0 ? " float " : " number ")
|
+ (kdec > 0 ? " float " : " number ")
|
||||||
+ (isExpression? " expression " : "")
|
+ (isExpression? " expression " : "")
|
||||||
+ "'"
|
+ "'"
|
||||||
+ (required ? " required='required' " : "")
|
+ (required ? " required='required' " : "")
|
||||||
+ (isExpression ? " readonly " : "")
|
+ (isExpression ? " readonly " : "")
|
||||||
//+ " placeholder='"+val_label+"'"
|
+ " value='" + (kdec > 0 && flexkenmerkwaarde? safe.displayfloat(parseFloat(flexkenmerkwaarde), kdec) : safe.html(flexkenmerkwaarde)) + "'"
|
||||||
+ " value='" + (kdec > 0 && val? safe.displayfloat(parseFloat(val), kdec) : safe.html(val)) + "'"
|
|
||||||
+ " maxlength='" + ((kmin >= 0? 0 : 1) + (kdec > 0? 1 : 0) + klen) + "'"
|
+ " maxlength='" + ((kmin >= 0? 0 : 1) + (kdec > 0? 1 : 0) + klen) + "'"
|
||||||
+ ">";
|
+ ">";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// KENMERKTYPE D (Date) =================================================================
|
// ==========================================================================================
|
||||||
|
// =====================================================================
|
||||||
|
// KENMERKTYPE D (Date) =====================================================================
|
||||||
|
// =====================================================================
|
||||||
|
// ==========================================================================================
|
||||||
if (ktype == 'D')
|
if (ktype == 'D')
|
||||||
{
|
{
|
||||||
kv += " class='"
|
kv += " class='"
|
||||||
+ (kenmerk_search
|
+ (kenmerk_search ? "fldSflexD " : "fldflexD ")
|
||||||
? "fldSflexD "
|
|
||||||
: "fldflexD ")
|
|
||||||
+ (required ? required_class : "")
|
+ (required ? required_class : "")
|
||||||
+ (isExpression? " expression " : "")
|
+ (isExpression? " expression " : "")
|
||||||
+ "'"
|
+ "'"
|
||||||
+ (required ? " required='required' " : "")
|
+ (required ? " required='required' " : "")
|
||||||
+ (isExpression? " readonly " : "")
|
+ (isExpression? " readonly " : "")
|
||||||
+ " value='" + safe.htmlattr(val) + "'"
|
+ " value='" + safe.htmlattr(flexkenmerkwaarde) + "'"
|
||||||
+ ">";
|
+ ">";
|
||||||
|
|
||||||
if (!readonlyfield && !isExpression)
|
if (!readonlyfield && !isExpression && !maskeren)
|
||||||
kv += "<i class=\"fa fa-calendar fa-fw dateklikker\" onclick=\"$('#"
|
kv += "<i class=\"fa fa-calendar fa-fw dateklikker\" onclick=\"$('#" + nameprefix + idCounter + "val').datepicker('show')\"></i>";
|
||||||
+ nameprefix + idCounter + "val').datepicker('show')\"></i>";
|
|
||||||
// Als er voor een datumveld geen kmin en kmax is ingevuld dan is de yearRange default -10 tot +10 jaar vanaf geselecteerd jaar.
|
// Als er voor een datumveld geen kmin en kmax is ingevuld dan is de yearRange default -10 tot +10 jaar vanaf geselecteerd jaar.
|
||||||
// Is een van beiden ingevuld dan wordt de andere op 10 jaar vanaf geselecteerde jaar gezet (deze verschuift met selectie).
|
// Is een van beiden ingevuld dan wordt de andere op 10 jaar vanaf geselecteerde jaar gezet (deze verschuift met selectie).
|
||||||
// Een opgegeven waarde is het aantal jaren voor of na het huidige jaar (waarde < 1000), of een jaartal (waarde > 1000).
|
// Een opgegeven waarde is het aantal jaren voor of na het huidige jaar (waarde < 1000), of een jaartal (waarde > 1000).
|
||||||
@@ -1279,28 +1309,33 @@ function listKenmerk(sql, module, key, props)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// =========================================================
|
||||||
// KENMERKTYPE X (Bestandsnaam/url) =========================================================
|
// KENMERKTYPE X (Bestandsnaam/url) =========================================================
|
||||||
|
// =========================================================
|
||||||
|
// ==========================================================================================
|
||||||
if (ktype == 'X')
|
if (ktype == 'X')
|
||||||
{
|
{
|
||||||
|
var viewpath;
|
||||||
if (S("flex_X_is_URL")==0)
|
if (S("flex_X_is_URL")==0)
|
||||||
var viewpath = S("image_path_virtual") + val;
|
viewpath = S("image_path_virtual") + flexkenmerkwaarde;
|
||||||
else
|
else
|
||||||
var viewpath = val;
|
viewpath = flexkenmerkwaarde;
|
||||||
|
|
||||||
if (readonlyfield) // Je mag er wel op klikken
|
if (readonlyfield || maskeren) // Je mag er wel op klikken
|
||||||
if (val)
|
if (flexkenmerkwaarde)
|
||||||
kv = '<input class="details fldflexX" onclick=\'openDoc("' + safe.jsstring(viewpath) + '")\' value="' + safe.htmlattr(val) + '">';
|
kv = '<input class="details fldflexX" onclick=\'openDoc("' + safe.jsstring(viewpath) + '")\' value="' + safe.htmlattr(flexkenmerkwaarde) + '">';
|
||||||
else
|
else
|
||||||
kv = "";
|
kv = "";
|
||||||
else if (val) // Tekstveld met 'view' button er achter plakken
|
else if (flexkenmerkwaarde) // Tekstveld met 'view' button er achter plakken
|
||||||
kv += " class='fldflexX"
|
kv += " class='fldflexX"
|
||||||
+ (required ? required_class : "")
|
+ (required ? required_class : "")
|
||||||
+ "'"
|
+ "'"
|
||||||
+ " value='" + safe.htmlattr(val) + "'"
|
+ " value='" + safe.htmlattr(flexkenmerkwaarde) + "'"
|
||||||
+ (required ? " required='required' " : "")
|
+ (required ? " required='required' " : "")
|
||||||
+ "><i class='fileopen details fa fa fa-folder-open' "
|
+ "><i class='fileopen details fa fa fa-folder-open' "
|
||||||
+ " onClick='openDoc(\"" + safe.jsstring(viewpath) + "\");'></i>";
|
+ " onClick='openDoc(\"" + safe.jsstring(viewpath) + "\");'></i>";
|
||||||
else if (!kenmerk_search) // !val // Browse button for new er achter plakken
|
else if (!kenmerk_search) // !flexkenmerkwaarde // Browse button for new er achter plakken
|
||||||
kv = "<input class='fldflexX"
|
kv = "<input class='fldflexX"
|
||||||
+ (required ? required_class : "")
|
+ (required ? required_class : "")
|
||||||
+ "'"
|
+ "'"
|
||||||
@@ -1317,16 +1352,20 @@ function listKenmerk(sql, module, key, props)
|
|||||||
? " regexp='" + kregexp + "' "
|
? " regexp='" + kregexp + "' "
|
||||||
: "")
|
: "")
|
||||||
+ "name='" + nameprefix + idCounter + "val' "
|
+ "name='" + nameprefix + idCounter + "val' "
|
||||||
+ "value='" + safe.htmlattr(val) + "'"
|
+ "value='" + safe.htmlattr(flexkenmerkwaarde) + "'"
|
||||||
+ ">";
|
+ ">";
|
||||||
else
|
else
|
||||||
kv += ">";
|
kv += ">";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// ==================================================================
|
||||||
// KENMERKTYPE S (Suggest) ==================================================================
|
// KENMERKTYPE S (Suggest) ==================================================================
|
||||||
// readonlyfield is bij "R" al meegenomen
|
// ==================================================================
|
||||||
if (ktype == 'S' && !readonlyfield) // Referentie naar andere tabel (suggest box)
|
// ==========================================================================================
|
||||||
|
// readonlyfield/maskeren is bij "R" al meegenomen
|
||||||
|
if (ktype == "S" && !readonlyfield && !maskeren) // Referentie naar andere tabel (suggest box)
|
||||||
{
|
{
|
||||||
// Huidige waarde opzoeken
|
// Huidige waarde opzoeken
|
||||||
var dsql = "SELECT fac_kenmerkdomein_objectnaam "
|
var dsql = "SELECT fac_kenmerkdomein_objectnaam "
|
||||||
@@ -1339,7 +1378,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
var oRs_d = Oracle.Execute(dsql);
|
var oRs_d = Oracle.Execute(dsql);
|
||||||
var vervalkolom = oRs_d("fac_kenmerkdomein_verval").Value;
|
var vervalkolom = oRs_d("fac_kenmerkdomein_verval").Value;
|
||||||
|
|
||||||
var suggestval = getDatatypeValue(oRs_d("fac_kenmerkdomein_objectnaam").value, oRs_d("fac_kenmerkdomein_kolomnaam").value, val);
|
var suggestval = getDatatypeValue(oRs_d("fac_kenmerkdomein_objectnaam").value, oRs_d("fac_kenmerkdomein_kolomnaam").value, flexkenmerkwaarde);
|
||||||
if (oRs_d("fac_kenmerkdomein_objectnaam").value == "FAC_USRDATA" && oRs_d("fac_usrtab_key").value)
|
if (oRs_d("fac_kenmerkdomein_objectnaam").value == "FAC_USRDATA" && oRs_d("fac_usrtab_key").value)
|
||||||
{
|
{
|
||||||
var fsql = "SELECT fac_usrdata_key"
|
var fsql = "SELECT fac_usrdata_key"
|
||||||
@@ -1412,7 +1451,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
Suggest<%=nameprefix + idCounter%> = new Suggest({objectName: "Suggest<%=nameprefix + idCounter%>",
|
Suggest<%=nameprefix + idCounter%> = new Suggest({objectName: "Suggest<%=nameprefix + idCounter%>",
|
||||||
queryField: $("#Suggest<%=nameprefix + idCounter%>_show")[0],
|
queryField: $("#Suggest<%=nameprefix + idCounter%>_show")[0],
|
||||||
queryUrl: rooturl + "/appl/shared/Suggest/SuggestKenmerkDomein.asp?kenmerkdomein_key=<%=kdomein_key%>",
|
queryUrl: rooturl + "/appl/shared/Suggest/SuggestKenmerkDomein.asp?kenmerkdomein_key=<%=kdomein_key%>",
|
||||||
initKey: '<%=val%>',
|
initKey: '<%=flexkenmerkwaarde%>',
|
||||||
keyField: $("#<%=nameprefix + idCounter%>val")[0],
|
keyField: $("#<%=nameprefix + idCounter%>val")[0],
|
||||||
fieldReadonly: <%=readonlyfield? "true" : "false"%>
|
fieldReadonly: <%=readonlyfield? "true" : "false"%>
|
||||||
<% if (parentkenmerkid != "")
|
<% if (parentkenmerkid != "")
|
||||||
@@ -1447,13 +1486,17 @@ function listKenmerk(sql, module, key, props)
|
|||||||
+ "<input type='hidden' id='execDone" + nameprefix + idCounter + "' name='execDone" + nameprefix + idCounter + "' value='0'>";
|
+ "<input type='hidden' id='execDone" + nameprefix + idCounter + "' name='execDone" + nameprefix + idCounter + "' value='0'>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ==========================================================================================
|
||||||
|
// ====================================================================
|
||||||
// KENMERKTYPE L (Label) ====================================================================
|
// KENMERKTYPE L (Label) ====================================================================
|
||||||
if (ktype == 'L' || ktype == 'l')
|
// ====================================================================
|
||||||
|
// ==========================================================================================
|
||||||
|
if (ktype == "L" || ktype == "l")
|
||||||
{ // Label line
|
{ // Label line
|
||||||
allCollapsable = (ktype == 'l'); // opnieuw beginnen met zoeken
|
allCollapsable = (ktype == "l"); // opnieuw beginnen met zoeken
|
||||||
inMobileBlock = (formobile && ktype == 'l'); // op dit moment zitten we in een mobile-collapse-content-block
|
inMobileBlock = (formobile && ktype == "l"); // op dit moment zitten we in een mobile-collapse-content-block
|
||||||
|
|
||||||
val_label = oRs("kenmerk_omschrijving").Value; // was: 1
|
flexkenmerklabel = oRs("kenmerk_omschrijving").Value; // was: 1
|
||||||
clabelCounter++;
|
clabelCounter++;
|
||||||
val_seperator = '';
|
val_seperator = '';
|
||||||
kv = def_val;
|
kv = def_val;
|
||||||
@@ -1461,7 +1504,7 @@ function listKenmerk(sql, module, key, props)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ==========================================================================================
|
// ==========================================================================================
|
||||||
// Alles bepaald, nu positioneren enzo
|
// Alles bepaald, te tonen waarde/veld in kv, nu positioneren enzo in kvhtml
|
||||||
// ==========================================================================================
|
// ==========================================================================================
|
||||||
if (!predone && props.fnpre && (kv || (ktype == 'L' || ktype == 'l')))
|
if (!predone && props.fnpre && (kv || (ktype == 'L' || ktype == 'l')))
|
||||||
{
|
{
|
||||||
@@ -1484,13 +1527,16 @@ function listKenmerk(sql, module, key, props)
|
|||||||
continue; // Teller is wel opgehoogd: volgende komt vanzelf op nieuwe regel
|
continue; // Teller is wel opgehoogd: volgende komt vanzelf op nieuwe regel
|
||||||
}
|
}
|
||||||
|
|
||||||
|
flexkenmerklabel = maskmarker + " " + flexkenmerklabel;
|
||||||
|
|
||||||
|
var kvhtml = ""; // hierin bouwen we de html op
|
||||||
if (kv != '')
|
if (kv != '')
|
||||||
{
|
{
|
||||||
// Schrijf eventueel een tabelregel begin
|
// Schrijf eventueel een tabelregel begin
|
||||||
if (((colCount&1) || forceNewLine || !kenmerk_2col) && !formobile && !notr)
|
if (((colCount&1) || forceNewLine || !kenmerk_2col) && !formobile && !notr)
|
||||||
kenmerk_write('<tr' + (ktype == 'L' || ktype == 'l'? ' id="'+nameprefix+'clabel' + clabelCounter + '"' : '')
|
kvhtml += ('<tr' + (ktype == 'L' || ktype == 'l'? ' id="'+nameprefix+'clabel' + clabelCounter + '"' : '')
|
||||||
+ ' class="trlabel ' + (ktype == 'L' || ktype == 'l'? 'flexlabel' : '') + (ktype == 'l' && !readonlyfield? ' flexcollapsable' : '') + '"'
|
+ ' class="trlabel ' + (ktype == 'L' || ktype == 'l'? 'flexlabel' : '') + (ktype == 'l' && !readonlyfield? ' flexcollapsable' : '') + '"'
|
||||||
+ (ktype == 'l'? ' onclick="$(\'#'+nameprefix+'clabel' + clabelCounter + '\').nextUntil($(\'#'+nameprefix+'clabel' + (clabelCounter + 1) + '\')).toggle();'
|
+ (ktype == 'l' ? ' onclick="$(\'#'+nameprefix+'clabel' + clabelCounter + '\').nextUntil($(\'#'+nameprefix+'clabel' + (clabelCounter + 1) + '\')).toggle();'
|
||||||
+ '$(this).toggleClass(\'flexcollapsed\');'
|
+ '$(this).toggleClass(\'flexcollapsed\');'
|
||||||
+ 'FcltMgr.resized(window);"'
|
+ 'FcltMgr.resized(window);"'
|
||||||
: '')
|
: '')
|
||||||
@@ -1501,21 +1547,21 @@ function listKenmerk(sql, module, key, props)
|
|||||||
props.label_colspan = 2;
|
props.label_colspan = 2;
|
||||||
|
|
||||||
if (props.wfbuilder) // Workflow Expression Builder
|
if (props.wfbuilder) // Workflow Expression Builder
|
||||||
kenmerk_write("<td>:flex{0}</td>".format(kkey));
|
kvhtml += ("<td>:flex{0}</td>".format(kkey));
|
||||||
|
|
||||||
if (!formobile && !nolabel)
|
if (!formobile && !nolabel)
|
||||||
kenmerk_write('\n <td class="label' + (ktype == 'L' || ktype == 'l'? ' flexlabel' : '')+ (kenmerk_search? ' flexsearch' : '') + '"'
|
kvhtml += ('\n <td class="label' + (ktype == 'L' || ktype == 'l'? ' flexlabel' : '')+ (kenmerk_search? ' flexsearch' : '') + '"'
|
||||||
+ (props.label_colspan? ' colspan=' + props.label_colspan : '') + '>');
|
+ (props.label_colspan? ' colspan=' + props.label_colspan : '') + '>');
|
||||||
|
|
||||||
if (!nolabel)
|
if (!nolabel)
|
||||||
kenmerk_write((formobile && ktype == 'l'? '<div data-role="collapsible" data-theme="c" data-content-theme="c"><h3 id="collLabel'+clabelCounter+'">' : '')
|
kvhtml += ((formobile && ktype == 'l'? '<div data-role="collapsible" data-theme="c" data-content-theme="c"><h3 id="collLabel'+clabelCounter+'">' : '')
|
||||||
+ '\n <label for="' + nameprefix + idCounter + 'val" class="' + (ktype == 'L' || ktype == 'l'? ' flexlabellabel' : '')
|
+ '\n <label for="' + nameprefix + idCounter + 'val" class="' + (ktype == 'L' || ktype == 'l'? ' flexlabellabel' : '')
|
||||||
+ (isExpression ? ' expression' : '') + '">' + '<span title="' + safe.htmlattr(hint) + '">'
|
+ (isExpression ? ' expression' : '') + '">' + '<span title="' + safe.htmlattr(hint) + '">'
|
||||||
+ val_label + ((kdim != null && kdim != "xxx")? ' [' + kdim + ']' : '') + val_seperator + '</span></label>'+(formobile && ktype == 'l' ? '</h3>' : ''));
|
+ flexkenmerklabel + ((kdim != null && kdim != "xxx")? ' [' + kdim + ']' : '') + val_seperator + '</span></label>'+(formobile && ktype == 'l' ? '</h3>' : ''));
|
||||||
|
|
||||||
// labelwaardes (vaak invulinstructie) in apart te stylen span
|
// labelwaardes (vaak invulinstructie) in apart te stylen span
|
||||||
if (formobile && (ktype == 'L' || ktype == 'l') && kv) {
|
if (formobile && (ktype == 'L' || ktype == 'l') && kv) {
|
||||||
kv = '\n <span class="flexlabelvalue">' + kv + '</span>';
|
kvhtml += '\n <span class="flexlabelvalue">' + kv + '</span>';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Bij mobile willen we de checkbox en zijn label in dezelfde ene TD hebben met colspan=2.
|
// Bij mobile willen we de checkbox en zijn label in dezelfde ene TD hebben met colspan=2.
|
||||||
@@ -1524,62 +1570,68 @@ function listKenmerk(sql, module, key, props)
|
|||||||
if ((!makeCheckbox || !formobile) && !formobile)
|
if ((!makeCheckbox || !formobile) && !formobile)
|
||||||
{
|
{
|
||||||
if (!nolabel)
|
if (!nolabel)
|
||||||
kenmerk_write('</td>');
|
kvhtml += ('</td>');
|
||||||
kenmerk_write('\n <td ' + (ktype == 'L' || ktype == 'l'? ' class="flexlabel lhint"' : (readonlyfield ? ' class="readonly flexvalue"' : ' class="flexvalue"')));
|
kvhtml += ('\n <td ' + (ktype == 'L' || ktype == 'l'? ' class="flexlabel lhint"' : (readonlyfield ? ' class="readonly flexvalue"' : ' class="flexvalue"')));
|
||||||
|
|
||||||
if (kenmerk_search && (ktype != 'L' && ktype != 'l'))
|
if (kenmerk_search && (ktype != 'L' && ktype != 'l'))
|
||||||
{
|
{
|
||||||
kenmerk_write('>');
|
kvhtml += ('>');
|
||||||
kenmerk_write(Operand(idCounter));
|
kvhtml += (Operand(idCounter));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( ktype == 'L' || ktype == 'l' )
|
if ( ktype == 'L' || ktype == 'l' )
|
||||||
if (typeof kenmerk_extraTD != "undefined" && kenmerk_extraTD)
|
if (typeof kenmerk_extraTD != "undefined" && kenmerk_extraTD)
|
||||||
kenmerk_write(' colspan=4>'); // MLD_OPDR heeft TD-tje extra
|
kvhtml += (' colspan=4>'); // MLD_OPDR heeft TD-tje extra
|
||||||
else
|
else
|
||||||
kenmerk_write(' colspan=3>');
|
kvhtml += (' colspan=3>');
|
||||||
else
|
else
|
||||||
kenmerk_write(">");
|
kvhtml += (">");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nolabel)
|
if (nolabel)
|
||||||
kenmerk_write('\n <label for="' + nameprefix + idCounter + 'val">'
|
kvhtml += ('\n <label for="' + nameprefix + idCounter + 'val">'
|
||||||
+ '<span title="' + safe.htmlattr(hint) + '">'
|
+ '<span title="' + safe.htmlattr(hint) + '">'
|
||||||
+ '</span></label>');
|
+ '</span></label>');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Schrijf vervolgens nu het echte veld
|
// Nu het eerder bepaalde waarde veld, zo nodig onderdrukt bij confidential-situatie
|
||||||
if (confidential && ksysteem&4)
|
if (maskeren) {
|
||||||
kenmerk_write("<span class='confidential'><i class='fa fa-user-secret'></i> "+L("lcl_confidential")+"</span>");
|
// nu verstop ik alles wat we hierboven bepaald hebben. Dat is wat te lomp, want nu raak je alles kwijt bij _save.
|
||||||
|
kvhtml += ("<span class='confidential'>"+ /* maskmarker + */ L("lcl_confidential")+"</span>");
|
||||||
|
}
|
||||||
else
|
else
|
||||||
kenmerk_write(kv);
|
kvhtml += kv;
|
||||||
|
|
||||||
if (typeof kenmerk_extraTD != "undefined" && kenmerk_extraTD && !formobile)
|
if (typeof kenmerk_extraTD != "undefined" && kenmerk_extraTD && !formobile)
|
||||||
kenmerk_write('\n </td><td>') // Extra leeg celletje voor layout MLD_OPDR
|
kvhtml += '\n </td><td>'; // Extra leeg celletje voor layout MLD_OPDR
|
||||||
|
|
||||||
if (val && forceReadonly && ktype != "M" && ktype != 'L' && ktype != 'l')
|
if (!maskeren && flexkenmerkwaarde && forceReadonly && ktype != "M" && ktype != "L" && ktype != "l") // check mbt confidential
|
||||||
{ // hidden veld met de *echt* waardes zodat ze wel worden opgeslagen
|
{
|
||||||
kenmerk_write("\n <input type=hidden id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val' value='" + safe.htmlattr(val) + "'>")
|
// hidden veld met de *echte* waardes zodat ze wel worden opgeslagen
|
||||||
|
kvhtml += "\n <input type=hidden id='" + nameprefix + idCounter + "val' name='" + nameprefix + idCounter + "val' value='" + safe.htmlattr(flexkenmerkwaarde) + "'>";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((kenmerk_search || !readonlyfield || (val && forceReadonly)) && ktype != "M" && ktype != 'L' && ktype != 'l')
|
if (!maskeren && (kenmerk_search || !readonlyfield || (flexkenmerkwaarde && forceReadonly)) && ktype != "M" && ktype != "L" && ktype != "l")
|
||||||
{ // Alleen dan hidden name-velden er bij
|
{
|
||||||
%> <input type=hidden name='<%=nameprefix + idCounter%>key' id='<%=nameprefix + idCounter%>key' value='<%=kkey%>'>
|
// Alleen dan hidden name-velden er bij
|
||||||
<input type=hidden name='<%=nameprefix + idCounter%>t' id='<%=nameprefix + idCounter%>t' value='<%=ktype%>'>
|
kvhtml += "<input type=hidden name='"+nameprefix + idCounter+"key' id='"+nameprefix + idCounter+"key' value='"+kkey+"'>";
|
||||||
<% if (isExpression)
|
kvhtml += "<input type=hidden name='"+nameprefix + idCounter+"t' id='"+nameprefix + idCounter+"t' value='"+ktype+"'>";
|
||||||
{ %>
|
if (isExpression)
|
||||||
<input type=hidden name='<%=nameprefix + idCounter%>e' id='<%=nameprefix + idCounter%>e' value='1'>
|
{
|
||||||
<% } %>
|
kvhtml += "<input type=hidden name='"+nameprefix + idCounter+"e' id='"+nameprefix + idCounter+"e' value='1'>";
|
||||||
<% }
|
}
|
||||||
|
}
|
||||||
idCounter++; // Nu ophogen
|
idCounter++; // Nu ophogen
|
||||||
|
|
||||||
if (!formobile)
|
if (!formobile)
|
||||||
{
|
{
|
||||||
kenmerk_write('</td>');
|
kvhtml += '</td>';
|
||||||
if (!((colCount&1) && kenmerk_2col) && !notr)
|
if (!((colCount&1) && kenmerk_2col) && !notr)
|
||||||
kenmerk_write('\n</tr>');
|
kvhtml += '\n</tr>';
|
||||||
}
|
}
|
||||||
|
// En hier schrijven we het hele veld dan naar de pagina
|
||||||
|
kenmerk_write (kvhtml);
|
||||||
}
|
}
|
||||||
oRs.MoveNext();
|
oRs.MoveNext();
|
||||||
// Collapse code er achteraan als de *volgende* een ander label is
|
// Collapse code er achteraan als de *volgende* een ander label is
|
||||||
@@ -1598,6 +1650,10 @@ function listKenmerk(sql, module, key, props)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
oRs.close();
|
oRs.close();
|
||||||
|
|
||||||
|
// All fields are done here
|
||||||
|
|
||||||
|
|
||||||
if (inMobileBlock || (!formobile && allCollapsable)) // allerlaatste ook nog
|
if (inMobileBlock || (!formobile && allCollapsable)) // allerlaatste ook nog
|
||||||
{
|
{
|
||||||
if (formobile)
|
if (formobile)
|
||||||
@@ -1848,9 +1904,9 @@ function CopyFlexFolders(oldbasepath, newbasepath, flexsql)
|
|||||||
|
|
||||||
// ================================================================================================
|
// ================================================================================================
|
||||||
// Save de kenmerken die we met listKenmerk hebben aangemaakt
|
// Save de kenmerken die we met listKenmerk hebben aangemaakt
|
||||||
// Verondersteld POST formulier (we doen een Request.Form)
|
//
|
||||||
// kenmerkTable : "mld_kenmerkopdr"
|
// kenmerkTable : "mld_kenmerkopdr"
|
||||||
// kenmerkParentKey: "mld_opdr_key"
|
// kenmerkParentKey : "mld_opdr_key"
|
||||||
// kenmerkWaarde : "mld_kenmerkopdr_waarde"
|
// kenmerkWaarde : "mld_kenmerkopdr_waarde"
|
||||||
// kenmerkKey : "mld_kenmerk_key"
|
// kenmerkKey : "mld_kenmerk_key"
|
||||||
// currentKenmerkenSQL : Voor maken array met kenmerk_keys die voor dit object al in de database waren
|
// currentKenmerkenSQL : Voor maken array met kenmerk_keys die voor dit object al in de database waren
|
||||||
@@ -1864,8 +1920,11 @@ function CopyFlexFolders(oldbasepath, newbasepath, flexsql)
|
|||||||
// - allKenmerkenSQL is dan ook verplicht met kenmerk_omschrijving en
|
// - allKenmerkenSQL is dan ook verplicht met kenmerk_omschrijving en
|
||||||
// srtkenmerk_key (zie melding_save)
|
// srtkenmerk_key (zie melding_save)
|
||||||
// - module is dan ook verplicht
|
// - module is dan ook verplicht
|
||||||
|
//
|
||||||
// In listKenmerk hebben we al gezorgd dat er alleen waarden gesubmit worden van velden die we
|
// In listKenmerk hebben we al gezorgd dat er alleen waarden gesubmit worden van velden die we
|
||||||
// ook echt mochten wijzigen. kkn en kvn zullen er dan ook altijd beide zijn
|
// ook echt mochten wijzigen. kk en kv zullen er dan ook altijd beide zijn
|
||||||
|
// Nieuw is dat we af moeten blijven van confidential kenmerken, dat zijn kenmerken die
|
||||||
|
// vertrouwelijk zijn (systeem&4) gedefinieerd en voor deze user afgeschermd zijn (confidential)
|
||||||
// ================================================================================================
|
// ================================================================================================
|
||||||
// Let op: de voorkeur is het gebruik van saveFlexKenmerken(parentKey, params)
|
// Let op: de voorkeur is het gebruik van saveFlexKenmerken(parentKey, params)
|
||||||
// voor backward compatibilitiet mag je het nog uitschrijven.
|
// voor backward compatibilitiet mag je het nog uitschrijven.
|
||||||
|
|||||||
Reference in New Issue
Block a user