From 6b4de8eaa59649214a0ee0cea82506e9ee782dc5 Mon Sep 17 00:00:00 2001 From: Erik Groener Date: Thu, 28 Jan 2016 08:54:59 +0000 Subject: [PATCH] FSN#35197 AiAi bij verwijderen van widgets svn path=/Website/trunk/; revision=27948 --- APPL/API2/api2.inc | 12 +++++++++++- APPL/MGT/fac_widget.asp | 5 +++++ APPL/SCF/scaffolding.inc | 16 ++++++++++++---- APPL/SCF/scaffolding_edit.inc | 2 +- APPL/SCF/scaffolding_list.inc | 6 +++++- APPL/SCF/scaffolding_search.inc | 2 +- 6 files changed, 35 insertions(+), 8 deletions(-) diff --git a/APPL/API2/api2.inc b/APPL/API2/api2.inc index 902efab1d9..7de3e35d07 100644 --- a/APPL/API2/api2.inc +++ b/APPL/API2/api2.inc @@ -1118,7 +1118,16 @@ function generic_REST_GET(model, gparams) + " FROM " + query.tables.join(", ") + (query.wheres.length ? " WHERE " + query.wheres.join(" AND " ) : ""); - var orderbys = gparams.GET.orderbys||[]; + var orderbys = ((params.orderby && params.orderby.length > 0) ? [] : gparams.GET.orderbys || []); + if (params.orderby) + { + for (var i = 0; i < params.orderby.length; i++) + { + var field = model.fields[params.orderby[i]]; + orderbys.push(field.dbs); + } + } + if (!params.include && params.columns && params.columns.length > 1) // Sorteren volgens 'columns' { for (var i = 0; i < params.columns.length; i++) @@ -1130,6 +1139,7 @@ function generic_REST_GET(model, gparams) } } } + if (!orderbys.length) orderbys.push(model.fields.name?model.fields.name.dbs:model.fields.id.dbs); diff --git a/APPL/MGT/fac_widget.asp b/APPL/MGT/fac_widget.asp index b8f9d164fe..051c716ee9 100644 --- a/APPL/MGT/fac_widget.asp +++ b/APPL/MGT/fac_widget.asp @@ -43,6 +43,11 @@ scaffolding(this_model, "widget_width", "refreshtime", "created" + ], + "orderby": [ + "group", + "sequence", + "name" ] } }); diff --git a/APPL/SCF/scaffolding.inc b/APPL/SCF/scaffolding.inc index 1d5bfd519e..7617f89460 100644 --- a/APPL/SCF/scaffolding.inc +++ b/APPL/SCF/scaffolding.inc @@ -427,11 +427,19 @@ function scf_RWFIELDTR(model, fld, val, key, params) } } -function scf_RWHIDDENTR(pname, pvalue) +function scf_RWHIDDENTR(model, fld, val) { - if (pvalue && typeof pvalue == "object" && "id" in pvalue) - pvalue = pvalue.id; - Response.Write(''); + var v_val = val; + if (val && typeof val == "object" && "id" in val) + v_val = val.id; + + var field = model.fields[fld]; + if (val && (field.typ == "date" || field.typ == "datetime")) + { + v_val = val.valueOf(); + } + + Response.Write(''); } function scf_LABELTR(fld, field, params) diff --git a/APPL/SCF/scaffolding_edit.inc b/APPL/SCF/scaffolding_edit.inc index 551c4dfadf..fc5c9167d4 100644 --- a/APPL/SCF/scaffolding_edit.inc +++ b/APPL/SCF/scaffolding_edit.inc @@ -216,7 +216,7 @@ function scaffolding_edit(model, scf_params) var field = model.fields[fld]; if (field.hidden_fld || (field.readonly && !(key > 0))) { // Eerst de hidden velden. - scf_RWHIDDENTR(fld, xxx_data[fld]); + scf_RWHIDDENTR(model, fld, xxx_data[fld]); } else fld_arr.push(fld); diff --git a/APPL/SCF/scaffolding_list.inc b/APPL/SCF/scaffolding_list.inc index b8d965a488..818c831515 100644 --- a/APPL/SCF/scaffolding_list.inc +++ b/APPL/SCF/scaffolding_list.inc @@ -16,6 +16,7 @@ function scaffolding_list(model, scf_params) scf_params.list = scf_params.list || {}; scf_params.list.columns = scf_params.list.columns || []; scf_params.list.groupby = scf_params.list.groupby || []; + scf_params.list.orderby = scf_params.list.orderby || []; var transit = ""; if ("transit" in scf_params) @@ -133,7 +134,10 @@ function scaffolding_list(model, scf_params) buttons.push({ icon: "plus.png", title: L("lcl_add"), action: "scf_add()", id: "btn_scf_add" }); } - var xxx_params = { filter : scf_params.filter || shared.qs2json(model), columns: scf_params.list.columns, groupby: scf_params.list.groupby }; + var xxx_params = { filter : scf_params.filter || shared.qs2json(model), + columns: scf_params.list.columns, + orderby: scf_params.list.orderby, + groupby: scf_params.list.groupby }; if (!("limit" in xxx_params.filter)) { diff --git a/APPL/SCF/scaffolding_search.inc b/APPL/SCF/scaffolding_search.inc index 436caaee44..c5965ede8b 100644 --- a/APPL/SCF/scaffolding_search.inc +++ b/APPL/SCF/scaffolding_search.inc @@ -218,7 +218,7 @@ function scaffolding_search(model, scf_params) } if (includefilters.length) - scf_RWHIDDENTR("includefilter", includefilters.join(",")); + scf_RWHIDDENTR(model, "includefilter", includefilters.join(",")); BLOCK_END(); var buttons = [];