161 lines
5.7 KiB
PHP
161 lines
5.7 KiB
PHP
<?php
|
|
|
|
use App\Form\Models\Form;
|
|
use App\Member\Member;
|
|
|
|
return [
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Default Search Engine
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option controls the default search connection that gets used while
|
|
| using Laravel Scout. This connection is used when syncing all models
|
|
| to the search service. You should adjust this based on your needs.
|
|
|
|
|
| Supported: "algolia", "meilisearch", "database", "collection", "null"
|
|
|
|
|
*/
|
|
|
|
'driver' => env('SCOUT_DRIVER', 'meilisearch'),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Index Prefix
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here you may specify a prefix that will be applied to all search index
|
|
| names used by Scout. This prefix may be useful if you have multiple
|
|
| "tenants" or applications sharing the same search infrastructure.
|
|
|
|
|
*/
|
|
|
|
'prefix' => env('SCOUT_PREFIX', ''),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Queue Data Syncing
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option allows you to control if the operations that sync your data
|
|
| with your search engines are queued. When this is set to "true" then
|
|
| all automatic data syncing will get queued for better performance.
|
|
|
|
|
*/
|
|
|
|
'queue' => env('SCOUT_QUEUE', false),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Database Transactions
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This configuration option determines if your data will only be synced
|
|
| with your search indexes after every open database transaction has
|
|
| been committed, thus preventing any discarded data from syncing.
|
|
|
|
|
*/
|
|
|
|
'after_commit' => false,
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Chunk Sizes
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| These options allow you to control the maximum chunk size when you are
|
|
| mass importing data into the search engine. This allows you to fine
|
|
| tune each of these chunk sizes based on the power of the servers.
|
|
|
|
|
*/
|
|
|
|
'chunk' => [
|
|
'searchable' => 500,
|
|
'unsearchable' => 500,
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Soft Deletes
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option allows to control whether to keep soft deleted records in
|
|
| the search indexes. Maintaining soft deleted records can be useful
|
|
| if your application still needs to search for the records later.
|
|
|
|
|
*/
|
|
|
|
'soft_delete' => false,
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Identify User
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This option allows you to control whether to notify the search engine
|
|
| of the user performing the search. This is sometimes useful if the
|
|
| engine supports any analytics based on this application's users.
|
|
|
|
|
| Supported engines: "algolia"
|
|
|
|
|
*/
|
|
|
|
'identify' => env('SCOUT_IDENTIFY', false),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Algolia Configuration
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here you may configure your Algolia settings. Algolia is a cloud hosted
|
|
| search engine which works great with Scout out of the box. Just plug
|
|
| in your application ID and admin API key to get started searching.
|
|
|
|
|
*/
|
|
|
|
'algolia' => [
|
|
'id' => env('ALGOLIA_APP_ID', ''),
|
|
'secret' => env('ALGOLIA_SECRET', ''),
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| MeiliSearch Configuration
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here you may configure your MeiliSearch settings. MeiliSearch is an open
|
|
| source search engine with minimal configuration. Below, you can state
|
|
| the host and key information for your own MeiliSearch installation.
|
|
|
|
|
| See: https://docs.meilisearch.com/guides/advanced_guides/configuration.html
|
|
|
|
|
*/
|
|
|
|
'meilisearch' => [
|
|
'host' => env('MEILISEARCH_HOST', 'http://meilisearch:7700'),
|
|
'key' => env('MEILI_MASTER_KEY', null),
|
|
'index-settings' => [
|
|
Member::class => [
|
|
'filterableAttributes' => ['address', 'birthday', 'ausstand', 'bill_kind', 'group_id', 'memberships', 'id'],
|
|
'searchableAttributes' => ['fullname', 'address'],
|
|
'sortableAttributes' => ['lastname', 'firstname'],
|
|
'displayedAttributes' => ['age_group_icon', 'group_name', 'links', 'is_leader', 'lastname', 'firstname', 'fullname', 'address', 'ausstand', 'birthday', 'id', 'memberships', 'bill_kind', 'group_id'],
|
|
'pagination' => [
|
|
'maxTotalHits' => 1000000,
|
|
]
|
|
],
|
|
Form::class => [
|
|
'filterableAttributes' => ['to', 'is_active'],
|
|
'searchableAttributes' => ['name'],
|
|
'sortableAttributes' => ['from'],
|
|
'displayedAttributes' => ['from', 'name', 'id', 'to'],
|
|
'pagination' => [
|
|
'maxTotalHits' => 1000000,
|
|
]
|
|
]
|
|
],
|
|
],
|
|
|
|
];
|