96 lines
1.5 KiB
PHP
96 lines
1.5 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Models\Job;
|
|
|
|
Route::get('/', function () {
|
|
return view('home', ['greeting'=>'Hello']);
|
|
});
|
|
|
|
Route::get('/jobs', function () {
|
|
$jobs = Job::orderBy('salary','desc')->latest()->paginate(5);
|
|
return view('jobs/index', [
|
|
'jobs' => $jobs
|
|
]);
|
|
});
|
|
|
|
Route::get('/jobs/{id}/edit', function ($id) {
|
|
$job=Job::find($id);
|
|
return view('jobs.edit',['job'=>$job]);
|
|
});
|
|
// return view('jobs', ['jobs' => $jobs]);
|
|
// });
|
|
|
|
//Update
|
|
Route::patch('/jobs/{id}', function ($id) {
|
|
//validate
|
|
request()->validate([
|
|
'title'=>['required','min:3'],
|
|
'salary'=>['required']
|
|
]);
|
|
|
|
$job=Job::findOrFail($id);
|
|
$job->update([
|
|
'title'=>request('title'),
|
|
'salary'=>request('salary')
|
|
]);
|
|
return redirect('/jobs/'. $job->id);
|
|
|
|
});
|
|
|
|
//Destroy
|
|
Route::delete('/jobs/{id}', function ($id) {
|
|
$job=Job::findOrFail($id);
|
|
$job->delete();
|
|
return redirect('/jobs');
|
|
|
|
});
|
|
|
|
Route::get('/contact', function () {
|
|
return view('contact');
|
|
});
|
|
|
|
Route::get('/jobs/create', function () {
|
|
return view('jobs/create');
|
|
});
|
|
|
|
Route::get('/jobs/{id}', function ($id) {
|
|
$job = Job::find($id);
|
|
|
|
return view('jobs/show', ['job' => $job]);
|
|
});
|
|
|
|
Route::post('/jobs', function () {
|
|
request()->validate([
|
|
'title'=>['required','min:3'],
|
|
'salary'=>['required']
|
|
]);
|
|
Job::create(['title'=>request('title'),'salary'=>request('salary'),'employer_id'=>1]);
|
|
return redirect('/jobs');
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|