parsaaghayi-backend/routes/api.php

34 lines
1.7 KiB
PHP

<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Api\Blog\CategoryController;
use App\Http\Controllers\Api\Blog\HomeController;
use App\Http\Controllers\Api\Blog\PostController;
use App\Http\Controllers\Api\Blog\TagController;
use App\Http\Controllers\Api\Website\AboutMeController;
use App\Http\Controllers\Api\Website\ProjectController;
use App\Http\Controllers\Api\Website\ServiceController;
Route::middleware('throttle:60,1')->group(function () {
Route::prefix('website')->group(function () {
Route::get('about-me/{id}/translation/{locale}', [AboutMeController::class, 'getTranslation']);
Route::get('services/{locale}', [ServiceController::class, 'index']);
Route::get('services/{id}/translation/{locale}', [ServiceController::class, 'showTranslation']);
Route::group(['prefix' => 'projects'], function () {
Route::get('/translation/{locale}', [ProjectController::class, 'index']);
Route::get('/{id}/translation/{locale}', [ProjectController::class, 'show']);
Route::post('/', [ProjectController::class, 'store']);
Route::put('/{id}', [ProjectController::class, 'update']);
Route::delete('/{id}', [ProjectController::class, 'destroy']);
});
});
Route::prefix('blog')->group(function () {
Route::apiResource('posts', PostController::class);
Route::apiResource('categories', CategoryController::class);
Route::apiResource('tags', TagController::class);
Route::get('homepage', [HomeController::class, 'index']);
Route::get('categories/{slug}/posts', [CategoryController::class, 'getCategoryWithPosts']);
});
});