diff --git a/utils/properties/searchFields.base.ts b/utils/properties/searchFields.base.ts index 67152fe6..e8bf5fa7 100644 --- a/utils/properties/searchFields.base.ts +++ b/utils/properties/searchFields.base.ts @@ -293,6 +293,46 @@ export class SearchFieldsBase { operator: "tp", equalityOperator: " = ", filterType: "checkbox" + }, + ["peerreviewed"]: { + name: "Peer reviewed", + type: "triplet", + param: "peerreviewed", + operator: "pv", + equalityOperator: " = ", + filterType: "triplet" + }, + ["isgreen"]: { + name: "Green", + type: "triplet", + param: "isgreen", + operator: "ig", + equalityOperator: " = ", + filterType: "triplet" + }, + ["openaccesscolor"]: { + name: "OA Color", + type: "refine", + param: "openaccesscolor", + operator: "oc", + equalityOperator: " exact ", + filterType: "radio" + }, + ["isindiamondjournal"]: { + name: "Published in a Diamond OA journal", + type: "triplet", + param: "isindiamondjournal", + operator: "dj", + equalityOperator: " = ", + filterType: "triplet" + }, + ["publiclyfunded"]: { + name: "Publicly funded", + type: "triplet", + param: "publiclyfunded", + operator: "pf", + equalityOperator: " = ", + filterType: "triplet" } }; @@ -309,6 +349,26 @@ export class SearchFieldsBase { { name: OpenaireEntities.DATASETS, id: "datasets", count: "0" }, { name: OpenaireEntities.SOFTWARE, id: "software", count: "0" }, { name: OpenaireEntities.OTHER, id: "other", count: "0" } + ], + ["isgreen"]: [ + { name: "All", id: "", count: "0" }, + { name: "Yes", id: "true", count: "0" }, + { name: "No", id: "false", count: "0" } + ], + ["isindiamondjournal"]: [ + { name: "All", id: "", count: "0" }, + { name: "Yes", id: "true", count: "0" }, + { name: "No", id: "false", count: "0" } + ], + ["peerreviewed"]: [ + { name: "All", id: "", count: "0" }, + { name: "Yes", id: "true", count: "0" }, + { name: "No", id: "false", count: "0" } + ], + ["publiclyfunded"]: [ + { name: "All", id: "", count: "0" }, + { name: "Yes", id: "true", count: "0" }, + { name: "No", id: "false", count: "0" } ] }; @@ -770,7 +830,9 @@ export class SearchFieldsBase { //add project field depending on funder public HIDDEN_FIELDS: string[] = ["fundinglevel0_id", "fundinglevel1_id", "fundinglevel2_id", - "relfundinglevel0_id", "relfundinglevel1_id", "relfundinglevel2_id", "relproject", "instancetypename"]; + "relfundinglevel0_id", "relfundinglevel1_id", "relfundinglevel2_id", "relproject", "instancetypename", + "isgreen", "openaccesscolor", "isindiamondjournal", "peerreviewed" + ]; public DEPENDENT_FIELDS: { [key: string]: string } = { ["relproject"]: "relfunder", @@ -780,9 +842,16 @@ export class SearchFieldsBase { ["relfundinglevel0_id"]: "relfunder", ["relfundinglevel1_id"]: "relfundinglevel0_id", ["relfundinglevel2_id"]: "relfundinglevel1_id", - ["instancetypename"]: "type" + ["instancetypename"]: "type", + // ["isgreen"]: "type" }; + public DEPENDENT_FIELDS_AND_VALUES: { [key: string]: { field: string, values: string[] } } = { + ["isgreen"]: { field: "type", values: ["publications"] }, + ["openaccesscolor"]: { field: "type", values: ["publications"] }, + ["isindiamondjournal"]: { field: "type", values: ["publications"] }, + ["peerreviewed"]: { field: "type", values: ["publications"] }, + }; public ADVANCED_SEARCH_OPERATORS: string[] = ["and", "or"];