<?php // Add a basic home page to the API, without auth $router->get('/', function() { return view('welcome'); }); // Comfort route to test DB and PDO // https://github.com/laravel/framework/issues/30737 $router->get('/test-db', function() { try { DB::connection()->getPdo(); } catch (\Exception $e) { die("<pre>Could not connect to the database. Please check your configuration. error:" . $e ); } }); // Comfort route to test the status list $router->get('/test-status', 'StatusController@getAvailableStatus'); $router->get('api/auth/login', 'AuthController@login'); $router->get('api/auth/tequilareturn', 'AuthController@tequilareturn'); // logout $router->group(['middleware' => 'jwt.auth'], function () use ($router) { // Users $router->get('api/user', 'UsersController@getData'); $router->get('api/user/permittedjobs', 'UsersController@getPermittedJobs'); $router->get('api/user/hascommentedormarked', 'UsersController@getCommentedAndMarkedApplicantsByUser'); $router->get('api/user/data/{sciper}', 'UsersController@getUserDataBySciper'); $router->get('api/user/connection', 'UsersController@getLastConnection'); $router->patch('api/user/connection', 'UsersController@setLastConnection'); // Applicants $router->get('api/applicants', 'ApplicantsController@getAll'); $router->get('api/applicants/job/{job}', 'ApplicantsController@getJobApplicants'); $router->get('api/applicant/{id:[0-9]+}', 'ApplicantsController@getOneById'); $router->get('api/applicant/{id:[0-9]+}/export', 'ApplicantsController@export'); $router->delete('api/applicant/{id:[0-9]+}', 'ApplicantsController@delete'); // Comments $router->get('api/applicant/{id:[0-9]+}/comments', 'CommentsController@getApplicantComments'); $router->put('api/comment', 'CommentsController@create'); $router->patch('api/comment/{id:[0-9]+}', 'CommentsController@update'); $router->delete('api/comment/{id:[0-9]+}', 'CommentsController@delete'); // Markers $router->get('api/applicant/{id:[0-9]+}/marker', 'MarkersController@getUserMarkerOnApplicant'); $router->put('api/marker', 'MarkersController@create'); $router->patch('api/marker/{id:[0-9]+}', 'MarkersController@update'); $router->delete('api/marker/{id:[0-9]+}', 'MarkersController@delete'); // Status $router->get('api/status', 'StatusController@getAvailableStatus'); $router->patch('api/status/applicant/{id:[0-9]+}', 'StatusController@updateApplicantStatus'); // Positions, jobs and locations $router->get('api/positions', 'PositionsController@getAll'); $router->get('api/locations', 'PositionsController@getAvailableLocations'); $router->get('api/jobs', 'PositionsController@getAvailableJobs'); $router->get('api/groups', 'PositionsController@getAvailableAccessGroups'); $router->put('api/position', 'PositionsController@createPosition'); $router->put('api/location', 'PositionsController@createLocation'); $router->put('api/job', 'PositionsController@createJob'); $router->patch('api/position/{id:[0-9]+}', 'PositionsController@updatePosition'); $router->delete('api/position/{id:[0-9]+}', 'PositionsController@deletePosition'); // Files $router->get('api/file/{id:[0-9]+}', 'FilesController@getFile'); $router->get('api/files/applicant/{id:[0-9]+}', 'FilesController@exportApplicantFiles'); // Stats $router->get('api/stats/total', 'StatsController@getTotal'); // Mails $router->post('api/mail/applicant', 'MailsController@mailApplicant'); });