Skip to content
Snippets Groups Projects
Commit 15aac043 authored by Johannes Hörmann's avatar Johannes Hörmann
Browse files

use vars.get($local.filter).filter instead of vars.get($local.userfilter)...

use vars.get($local.filter).filter instead of vars.get($local.userfilter) since it also may include permissions and not only the filter selected by the user
parent a081f90a
No related branches found
No related tags found
No related merge requests found
Showing
with 42 additions and 31 deletions
......@@ -147,6 +147,7 @@
<name>jdito</name>
<jDitoRecordAlias>Data_alias</jDitoRecordAlias>
<isFilterable v="true" />
<isRequireContainerFiltering v="true" />
<contentProcess>%aditoprj%/entity/360Degree_entity/recordcontainers/jdito/contentProcess.js</contentProcess>
<recordFields>
<element>UID.value</element>
......
......@@ -11,17 +11,18 @@ if (vars.exists("$param.ObjectType_param") && vars.get("$param.ObjectType_param"
var active;
var selectMap = ContextUtils.getSelectMap ()
if(vars.exists("$local.userfilter") && vars.get("$local.userfilter") )
if(vars.exists("$local.filter") && vars.get("$local.filter") )
{
var filter = JSON.parse(vars.getString("$local.userfilter"));
if(filter.childs != null && filter.childs.length > 0)
{
filter.childs.forEach(function(child)
var filter = vars.get("$local.filter");
if (filter.filter)
if(filter.childs != null && filter.childs.length > 0)
{
if(child.name === "ACTIVE")
active = child.key;
});
}
filter.childs.forEach(function(child)
{
if(child.name === "ACTIVE")
active = child.key;
});
}
}
var contextList = JSON.parse(vars.getString("$param.ObjectType_param"));
......
......@@ -138,6 +138,7 @@
<recordContainers>
<jDitoRecordContainer>
<name>jdito</name>
<isFilterable v="true" />
<isRequireContainerFiltering v="true" />
<contentProcess>%aditoprj%/entity/AddressValidation_entity/recordcontainers/jdito/contentProcess.js</contentProcess>
<recordFields>
......
import("system.logging");
import("system.result");
import("WsValidation_lib");
import("system.vars");
......@@ -12,11 +13,13 @@ if (vars.exists("$param.Country_param") && vars.get("$param.Country_param"))
// get the value typed by the user
var filter = "";
var sysFilter = vars.getString("$sys.filter");
if(sysFilter.filter != null) {
filter = sysFilter.filter.childs[0].value;
var localFilter = vars.getString("$local.filter");
if(localFilter.filter != null) {
filter = localFilter.filter.childs[0].value;
}
if (!filter && vars.exists("$param.CurrentValue_param") && vars.get("$param.CurrentValue_param"))
filter = vars.get("$param.CurrentValue_param");
......
......@@ -77,10 +77,11 @@ else if (parentType)
}
//when there are filters selected, add them to the conditon
if (vars.exists("$local.userfilter") && vars.get("$local.userfilter"))
if (vars.exists("$local.filter") && vars.get("$local.filter"))
{
var filter = vars.get("$local.userfilter");
condition.andSqlCondition(JditoFilterUtils.getSqlCondition(filter, "AB_ATTRIBUTE", uidTableAlias));
var filter = vars.get("$local.filter");
if (filter.filter)
condition.andSqlCondition(JditoFilterUtils.getSqlCondition(filter.filter, "AB_ATTRIBUTE", uidTableAlias));
}
var attributes = db.table(condition.buildSql(sqlSelect, "1=1", sqlOrder));
......
......@@ -50,12 +50,13 @@ if (!classificationId)
.or("CLASSIFICATION.OBJECT_ROWID is null"))
}
if (vars.exists("$local.userfilter") && vars.get("$local.userfilter"))
if (vars.exists("$local.filter") && vars.get("$local.filter"))
{
var filter = vars.get("$local.userfilter");
cond.andSqlCondition((JditoFilterUtils.getSqlCondition(filter, "CLASSIFICATION", undefined, {
CLASSIFICATIONTYPE : "CLASSIFICATIONTYPE.CLASSIFICATIONTYPE"
})));
var filter = vars.get("$local.filter");
if (filter.filter)
cond.andSqlCondition((JditoFilterUtils.getSqlCondition(filter.filter, "CLASSIFICATION", undefined, {
CLASSIFICATIONTYPE : "CLASSIFICATIONTYPE.CLASSIFICATIONTYPE"
})));
}
result.object(db.table(cond.buildSql("select case when CLASSIFICATIONID is not null then 'C,' || CLASSIFICATIONID else 'T,' || CLASSIFICATIONTYPEID end, CLASSIFICATIONID, CLASSIFICATIONGROUP, CLASSIFICATIONSCORE_ID, CLASSIFICATIONTYPEID, CLASSIFICATIONTYPE_ID, OBJECT_TYPE, OBJECT_ROWID, SCORETYPE, CLASSIFICATIONTYPE.CLASSIFICATIONTYPE from CLASSIFICATION \n\
......
......@@ -35,10 +35,10 @@ users = users.map(function (user)
];
});
var filter = vars.get("$local.userfilter");
var filter = vars.get("$local.filter");
//TODO: this is a workaround that filters the records manually, it should be possible to filter the users with a tools.* method
users = JditoFilterUtils.filterRecords(["UID", "TITLE", "ISACTIVE", "FIRSTNAME", "LASTNAME", "EMAIL_ADDRESS", "", "DESCRIPTION", "CONTACT_ID", "", "DEPARTMENT"], users, filter);
users = JditoFilterUtils.filterRecords(["UID", "TITLE", "ISACTIVE", "FIRSTNAME", "LASTNAME", "EMAIL_ADDRESS", "", "DESCRIPTION", "CONTACT_ID", "", "DEPARTMENT"], users, filter.filter);
var order = vars.get("$local.order");
var columnOrder = {
......
......@@ -30,10 +30,11 @@ var tableNameCond = _getTableNameCondition();
recordCond.andSqlCondition(tableNameCond);
//user defined filter
if (vars.exists("$local.userfilter") && vars.get("$local.userfilter"))
if (vars.exists("$local.filter") && vars.get("$local.filter"))
{
var filter = vars.get("$local.userfilter");
recordCond.andSqlCondition((JditoFilterUtils.getSqlCondition(filter, "AB_LOGHISTORY")));
var filter = vars.get("$local.filter");
if (filter.filter)
recordCond.andSqlCondition((JditoFilterUtils.getSqlCondition(filter.filter, "AB_LOGHISTORY")));
}
var dataQuery = recordCond.buildSql("select AB_LOGHISTORY.DATE_NEW, AB_LOGHISTORY.USER_NEW, AB_LOGHISTORY.DESCRIPTION \n\
......
......@@ -33,11 +33,12 @@ if (uidParam)
}
else
{
var filter = vars.get("$local.userfilter")
var filter = vars.get("$local.filter")
var selectedRelationType = null;
if (filter)
if (filter && filter.filter)
{
filter = filter.filter;
if (filter.childs.length > 0)
{
selectedRelationType = filter.childs[0].value;
......
......@@ -101,7 +101,7 @@ function JditoFilterUtils () {}
* @param {Array} pColumns one dimensional array with all column names (only the columns with the idValue, displayValue columns should be null or ""),
* the order has to match the columns of the recordFields property in the recordcontainer
* @param {Array} pRecords two dimensional array with all records
* @param {String|Object} pFilter the value of $local.userfilter
* @param {String|Object} pFilter the value of vars.get($local.filter).filter
*
* @return {Array} the filtered records
*/
......@@ -133,10 +133,11 @@ JditoFilterUtils.filterRecords = function (pColumns, pRecords, pFilter)
*
* @example
* var condition = SqlCondition.begin();
* if (vars.exists("$local.userfilter") && vars.get("$local.userfilter"))
* if (vars.exists("$local.filter") && vars.get("$local.filter"))
* {
* var filter = vars.get("$local.userfilter");
* condition.andSqlCondition((JditoFilterUtils.getSqlCondition(filter, "AB_ATTRIBUTE")));
* var filter = vars.get("$local.filter");
* if (filter.filter)
* condition.andSqlCondition((JditoFilterUtils.getSqlCondition(filter.filter, "AB_ATTRIBUTE")));
* }
* var attributeSql = condition.buildSql("select AB_ATTRIBUTEID from AB_ATTRIBUTE");
*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment