55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
<?php
|
||
|
||
namespace App\Http\Controllers;
|
||
|
||
use App\Models\CareerApplication;
|
||
use Illuminate\Http\Request;
|
||
use Illuminate\Support\Facades\Storage;
|
||
|
||
class CareerController extends Controller
|
||
{
|
||
public function index()
|
||
{
|
||
return view('front.career.index', [
|
||
'meta' => [
|
||
'title' => __('career.title', ['default' => 'Kariyer']),
|
||
'description' => __('career.description', ['default' => 'Ekibimize katılmak için aşağıdaki formu doldurarak CV\'nizi iletebilirsiniz.']),
|
||
]
|
||
]);
|
||
}
|
||
|
||
public function store(Request $request)
|
||
{
|
||
$request->validate([
|
||
'name' => 'required|string|max:255',
|
||
'email' => 'required|email|max:255',
|
||
'phone' => 'nullable|string|max:20',
|
||
'cv' => 'required|file|mimes:pdf,doc,docx|max:5120', // Max 5MB
|
||
'message' => 'nullable|string',
|
||
]);
|
||
|
||
$cvPath = null;
|
||
if ($request->hasFile('cv')) {
|
||
$cvPath = $request->file('cv')->store('cvs', 'public');
|
||
}
|
||
|
||
CareerApplication::create([
|
||
'name' => $request->name,
|
||
'email' => $request->email,
|
||
'phone' => $request->phone,
|
||
'cv_path' => $cvPath,
|
||
'message' => $request->message,
|
||
'status' => 'pending',
|
||
]);
|
||
|
||
if ($request->ajax()) {
|
||
return response()->json([
|
||
'success' => true,
|
||
'message' => __('career.success_message')
|
||
]);
|
||
}
|
||
|
||
return redirect()->back()->with('success', __('career.success_message'));
|
||
}
|
||
}
|