add route to search instances by field value

This commit is contained in:
2026-07-21 20:43:36 +02:00
parent dc5a8897e0
commit 9c5e089573
8 changed files with 632 additions and 12 deletions
+8 -11
View File
@@ -16,7 +16,7 @@ set_exception_handler(function (\Throwable $e) use ($logger) {
'exception' => $e,
'trace' => $e->getTraceAsString()
]);
http_response_code(500);
header('Content-Type: application/json');
echo json_encode([
@@ -40,7 +40,7 @@ $corsConfig = $container->make(\Api\Core\Config::class)->get('cors', []);
if (!empty($corsConfig['enabled'])) {
$origin = $corsManager->getOrigin();
$requestOrigin = $_SERVER['HTTP_ORIGIN'] ?? 'none';
// Log CORS request details for debugging
$logger->debug('CORS request received', [
'request_origin' => $requestOrigin,
@@ -49,10 +49,10 @@ if (!empty($corsConfig['enabled'])) {
'method' => $_SERVER['REQUEST_METHOD'],
'path' => $request->path()
]);
// Apply CORS headers to all responses
$corsManager->applyHeaders();
// Handle preflight OPTIONS requests
if ($corsManager->isPreflightRequest()) {
$corsManager->handlePreflight();
@@ -63,7 +63,7 @@ if (!empty($corsConfig['enabled'])) {
if ($request->path() === '/cors-check' && $request->method() === 'GET') {
$corsManager = $container->make(CorsManager::class);
$corsConfig = $container->make(\Api\Core\Config::class)->get('cors', []);
$response->json([
'cors_enabled' => !empty($corsConfig['enabled']),
'request_origin' => $_SERVER['HTTP_ORIGIN'] ?? null,
@@ -87,12 +87,9 @@ if (strpos($request->path(), '/api/') === 0) {
}
// register routes (path without version prefix)
// $router->get('/users/index', 'UsersController@index');
// $router->post('/users/create', 'UsersController@create');
// $router->get('/example/test', 'ExampleController@test');
// $router->get('/dipendenti/cerca', 'DipendentiController@search');
$router->get('/api/contratti/cerca', 'ContrattiController@search');
$router->get('/api/dipendenti/cerca', 'DipendentiController@search');
$router->get('/contratti/cerca', 'ContrattiController@search');
$router->get('/dipendenti/cerca', 'DipendentiController@search');
$router->get('/elixforms/instances/search', 'ElixFormsController@searchInstances');
// Rate limiting by IP address
$key = $_SERVER['REMOTE_ADDR'] ?? 'unknown';