diff --git a/entity/Offer_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js b/entity/Offer_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js index 59afaeee93260759e6f7bf4230d7a92d00a0565f..371a5b567d5a947056b3aa0982100e741e66eb45 100644 --- a/entity/Offer_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js +++ b/entity/Offer_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js @@ -1,5 +1,5 @@ import("system.result"); import("Favorites_lib"); -result.object(FavoritesUtil.getUserNotificationGroups()); +result.object(FavoritesUtil.getUserFavoriteGroups()); diff --git a/entity/Order_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js b/entity/Order_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js index 59afaeee93260759e6f7bf4230d7a92d00a0565f..371a5b567d5a947056b3aa0982100e741e66eb45 100644 --- a/entity/Order_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js +++ b/entity/Order_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js @@ -1,5 +1,5 @@ import("system.result"); import("Favorites_lib"); -result.object(FavoritesUtil.getUserNotificationGroups()); +result.object(FavoritesUtil.getUserFavoriteGroups()); diff --git a/entity/Organisation_entity/recordcontainers/db/filterextensions/favoriten_filter/filterValuesProcess.js b/entity/Organisation_entity/recordcontainers/db/filterextensions/favoriten_filter/filterValuesProcess.js index 59afaeee93260759e6f7bf4230d7a92d00a0565f..371a5b567d5a947056b3aa0982100e741e66eb45 100644 --- a/entity/Organisation_entity/recordcontainers/db/filterextensions/favoriten_filter/filterValuesProcess.js +++ b/entity/Organisation_entity/recordcontainers/db/filterextensions/favoriten_filter/filterValuesProcess.js @@ -1,5 +1,5 @@ import("system.result"); import("Favorites_lib"); -result.object(FavoritesUtil.getUserNotificationGroups()); +result.object(FavoritesUtil.getUserFavoriteGroups()); diff --git a/entity/Person_entity/recordcontainers/db/filterextensions/favorits_filter/filterValuesProcess.js b/entity/Person_entity/recordcontainers/db/filterextensions/favorits_filter/filterValuesProcess.js index abda1bae0cf87dddb3f11485a75fc4dc7dadee9e..0ebab765b8e2b53cd11f746c306600f7e6f46327 100644 --- a/entity/Person_entity/recordcontainers/db/filterextensions/favorits_filter/filterValuesProcess.js +++ b/entity/Person_entity/recordcontainers/db/filterextensions/favorits_filter/filterValuesProcess.js @@ -1,4 +1,4 @@ import("system.result"); import("Favorites_lib"); -result.object(FavoritesUtil.getUserNotificationGroups()); \ No newline at end of file +result.object(FavoritesUtil.getUserFavoriteGroups()); \ No newline at end of file diff --git a/entity/Product_entity/Product_entity.aod b/entity/Product_entity/Product_entity.aod index 01c9b42d47200f35bc2900eee2e91a39e3ffd178..5fbf1ca2f5300aa1a2e8e8bfd7f16fa65e71a2cd 100644 --- a/entity/Product_entity/Product_entity.aod +++ b/entity/Product_entity/Product_entity.aod @@ -614,6 +614,15 @@ <filterConditionProcess>%aditoprj%/entity/Product_entity/recordcontainers/db/filterextensions/attribute_filter/filterConditionProcess.js</filterConditionProcess> <filtertype>BASIC</filtertype> </filterExtensionSet> + <filterExtension> + <name>Favorite_filter</name> + <title>Favoritegroup</title> + <contentType>TEXT</contentType> + <filterValuesProcess>%aditoprj%/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js</filterValuesProcess> + <filterConditionProcess>%aditoprj%/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js</filterConditionProcess> + <groupedRecordField></groupedRecordField> + <filtertype>BASIC</filtertype> + </filterExtension> </filterExtensions> </dbRecordContainer> <indexRecordContainer> diff --git a/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js b/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..2db1e9e36cfa068a562f0c1c253c874eb648f33a --- /dev/null +++ b/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js @@ -0,0 +1,11 @@ +import("Favorites_lib"); +import("system.result"); +import("Sql_lib"); + +var favoFilterCond = newWhere(); +var rowIds = FavoritesUtil.getRowIdsOfFavoriteGroup(); + +for(i = 0; i < rowIds.length; i++) + favoFilterCond.or("PRODUCT.PRODUCTID", rowIds[i], SqlBuilder.EQUAL()); + +result.string(favoFilterCond.toString()); \ No newline at end of file diff --git a/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js b/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..371a5b567d5a947056b3aa0982100e741e66eb45 --- /dev/null +++ b/entity/Product_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js @@ -0,0 +1,5 @@ +import("system.result"); +import("Favorites_lib"); + +result.object(FavoritesUtil.getUserFavoriteGroups()); + diff --git a/entity/Productprice_entity/Productprice_entity.aod b/entity/Productprice_entity/Productprice_entity.aod index 88bf091386f6c700f3730d959eb07137ce3fdc38..61bf5454ab35395bca8b5fb61db8ee6d5996cfba 100644 --- a/entity/Productprice_entity/Productprice_entity.aod +++ b/entity/Productprice_entity/Productprice_entity.aod @@ -9,7 +9,7 @@ <element>Product_entity</element> </siblings> <onValidation>%aditoprj%/entity/Productprice_entity/onValidation.js</onValidation> - <useFavorites v="false" /> + <useFavorites v="true" /> <titlePlural>Prices</titlePlural> <recordContainer>db</recordContainer> <entityFields> @@ -234,6 +234,10 @@ <name>#PROVIDER_AGGREGATES</name> <useAggregates v="true" /> </entityProvider> + <entityField> + <name>PRODUCTPRICE_OBJECTTYPE</name> + <valueProcess>%aditoprj%/entity/Productprice_entity/entityfields/productprice_objecttype/valueProcess.js</valueProcess> + </entityField> </entityFields> <recordContainers> <dbRecordContainer> @@ -329,6 +333,16 @@ <expression>%aditoprj%/entity/Productprice_entity/recordcontainers/db/recordfieldmappings/fromquantity.displayvalue/expression.js</expression> </dbRecordFieldMapping> </recordFieldMappings> + <filterExtensions> + <filterExtension> + <name>FavoriteFilter</name> + <title>Favoritegroup</title> + <contentType>TEXT</contentType> + <filterValuesProcess>%aditoprj%/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterValuesProcess.js</filterValuesProcess> + <filterConditionProcess>%aditoprj%/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterConditionProcess.js</filterConditionProcess> + <filtertype>BASIC</filtertype> + </filterExtension> + </filterExtensions> </dbRecordContainer> </recordContainers> </entity> diff --git a/entity/Productprice_entity/entityfields/productprice_objecttype/valueProcess.js b/entity/Productprice_entity/entityfields/productprice_objecttype/valueProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..4296d2e68be85ce5dca121343c5c37cd7d5a5874 --- /dev/null +++ b/entity/Productprice_entity/entityfields/productprice_objecttype/valueProcess.js @@ -0,0 +1,3 @@ +import("system.result"); + +result.string("Productprice"); \ No newline at end of file diff --git a/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterConditionProcess.js b/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterConditionProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..c657ebe1ac71578a6aa535aa58f3c953ae76ceeb --- /dev/null +++ b/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterConditionProcess.js @@ -0,0 +1,11 @@ +import("Favorites_lib"); +import("system.result"); +import("Sql_lib"); + +var favoFilterCond = newWhere(); +var rowIds = FavoritesUtil.getRowIdsOfFavoriteGroup(); + +for(i = 0; i < rowIds.length; i++) + favoFilterCond.or("PRODUCTPRICE.PRODUCTPRICEID", rowIds[i], SqlBuilder.EQUAL()); + +result.string(favoFilterCond.toString()); \ No newline at end of file diff --git a/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterValuesProcess.js b/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterValuesProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..0ebab765b8e2b53cd11f746c306600f7e6f46327 --- /dev/null +++ b/entity/Productprice_entity/recordcontainers/db/filterextensions/favoritefilter/filterValuesProcess.js @@ -0,0 +1,4 @@ +import("system.result"); +import("Favorites_lib"); + +result.object(FavoritesUtil.getUserFavoriteGroups()); \ No newline at end of file diff --git a/neonView/ProductpricePreview_view/ProductpricePreview_view.aod b/neonView/ProductpricePreview_view/ProductpricePreview_view.aod index bf1fad13d59c383237b85a5751735e30afaa7778..bb516112119a7134549491a865cba256ce618926 100644 --- a/neonView/ProductpricePreview_view/ProductpricePreview_view.aod +++ b/neonView/ProductpricePreview_view/ProductpricePreview_view.aod @@ -16,6 +16,12 @@ <subtitleField>PRODUCT_ID</subtitleField> <entityField>#ENTITY</entityField> </cardViewTemplate> + <favoriteViewTemplate> + <name>Favorites</name> + <objectType>PRODUCTPRICE_OBJECTTYPE</objectType> + <rowId>PRODUCTPRICEID</rowId> + <entityField>#ENTITY</entityField> + </favoriteViewTemplate> <genericViewTemplate> <name>PriceInfo</name> <showDrawer v="true" /> diff --git a/process/Favorites_lib/process.js b/process/Favorites_lib/process.js index 7d1efcc6747705abee9b6f8b82ff517e7d9a0c58..04ae6f9b9e05ec23289c5eb0705427413573d741 100644 --- a/process/Favorites_lib/process.js +++ b/process/Favorites_lib/process.js @@ -7,7 +7,7 @@ import("Sql_lib"); function FavoritesUtil(){} -FavoritesUtil.getUserNotificationGroups = function() +FavoritesUtil.getUserFavoriteGroups = function() { var allTypes = []; var alias = favorite.getFavoritesAlias();