FSN#35338 Alle CodeCharge schermen herschrijven naar gewoon ASP II

svn path=/Website/trunk/; revision=28050
This commit is contained in:
Erik Groener
2016-02-04 14:20:47 +00:00
parent 47de8cf9ed
commit 2577970b50
2 changed files with 66 additions and 2 deletions

View File

@@ -25,6 +25,7 @@ api2 = {
var val;
if (formfields[i].frm)
{
var fld = model.fields[formfields[i].name];
var typ = model.fields[formfields[i].name].typ;
// Haal waarde uit de formparameters.
@@ -47,7 +48,27 @@ api2 = {
break;
case "key":
case "number":
val = getFParamInt(formfields[i].frm, null);
if (fld.bits)
{
val = 0;
for (var b=0; b < fld.bits.length; b++)
{
var bit = fld.bits[b];
if (bit.typ == "check")
{
var invert = bit.invert;
val += ((Request.Form(bit.name).count==1)?(invert?0:bit.mask):(invert?bit.mask:0));
}
else if (bit.typ == "LOV")
{
val += getFParamInt(bit.name, 0);
}
}
}
else
{
val = getFParamInt(formfields[i].frm, null);
}
break;
case "check":
case "check0":

View File

@@ -172,12 +172,30 @@ function scf_ROFIELDTR(model, fld, val, key, params)
if (field.translate && key)
params.translate = { fld: field.dbs, key: key }
if (field.typ == "check" || field.typ == "check0")
if (field.bits)
{
for (var i=0; i < field.bits.length; i++)
{
var bit = field.bits[i];
if (bit.typ == "check")
{
var data = (val & bit.mask);
ROCHECKBOXTR("fldtxt", bit.label, data, params);
}
else if (bit.typ == "LOV")
{
var data = (val.id & bit.mask);
ROFIELDTR("fldtxt", bit.label, data, params);
}
}
}
else if (field.typ == "check" || field.typ == "check0")
ROCHECKBOXTR("fldtxt", field.label, txt, params);
else
if (!field.hidden_fld)
ROFIELDTR("fldtxt", field.label, txt, params);
}
function scf_RWFIELDTR(model, fld, val, key, params)
{
var params = params || {};
@@ -330,6 +348,31 @@ function scf_RWFIELDTR(model, fld, val, key, params)
});
}
}
else if (field.bits)
{
var params_bits = params;
params_bits.hidden_fld = true;
RWFIELDTR(fld, "fld", field.label, val, params_bits);
for (var i=0; i < field.bits.length; i++)
{
var bit = field.bits[i];
if (bit.typ == "check")
{
var data = (val & bit.mask);
RWCHECKBOXTR(bit.name, "fldcheck", bit.label, data);
}
else if (bit.typ == "LOV")
{
var data = (val & bit.mask);
var sql = api2.splitLOV2sql(bit.LOV);
FCLTselector(bit.name,
sql,
{ label: bit.label,
initKey: params.search?"":data
});
}
}
}
else if (field.LOV)
{
if (field.required && field.LOV.split(";").length == 2 && val && val.id == field.LOV.split(";")[0])