3.0 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Title
| Title | 
|---|
| Search Form | 
Custom search form
From version 2.5.0 ACA search support multiple search configurations. In this tutorial, we are going to implement the following features:
Extension Properties
| Name | Type | Default value | Description | 
|---|---|---|---|
| id | string | Unique identifier of the search | |
| name | string | "" | Display title of the form | 
| order | string | Visualization order in the dropdown | |
| default | boolean | if the search has to be used as default search | |
| app:fields | string[] | list of aspects property to add in the query and search in the value for the given text. The property will be concatenated in AND | 
Search configuration properties
In order to learn more about : -The search UI configuration possibilities refer to the ADF Search configuration documentation -The search Query configuration possibilities refer to the Full text search reference documentation
Add a new search form
Update your-app.extensions.json file, and insert a new entry to the features.search section:
{
  "features": {
    "search": [
      {
        "id": "app.search.custom_search",
        "order": 200,
        "name": "APP.SEARCH.MY_CUSTOM_SEARCH",
        "default": false,
        "app:fields": [ "cm:name", "cm:title", "cm:description", "TEXT", "TAG"],
        "filterQueries": [
          {
            "query": "+ASPECT: 'cm:person'"
          }
        ]
      }
    ]
  }
}
Note that the entries of the filterQueries array are joined using the AND operator.
Replace a search form
To replace an already present search form you need to add a new search configuration with the same id of an already present configuration
Replace default search
To replace the default search with your configuration set to true the default field
{
  "features": {
    "search": [
      {
        "id": "app.search.custom_search",
        "order": 200,
        "name": "APP.SEARCH.MY_CUSTOM_SEARCH",
        "default": true,
        "app:fields": [ "cm:name", "cm:title", "cm:description", "TEXT", "TAG"],
        "filterQueries": [
          {
            "query": "+ASPECT: 'cm:person'"
          }
        ]
      }
    ]
  }
}
Adding rule to search form
It support the visible rule to show the configuration
{
  "features": {
    "search": [
      {
        "id": "app.search.custom_search",
        "order": 200,
        "name": "APP.SEARCH.MY_CUSTOM_SEARCH",
        "rules": {
          "visible": "<name of the rule>"
        }
      }
    ]
  }
}