Skip to main content

Black Friday 2025! Only until December 1st: coupon FRIDAY25 for 40% off Yearly/Lifetime membership!

Read more here

theihasan/geezap

97 stars
2 code files
View theihasan/geezap on GitHub

app/Http/Requests/UpdateSkillRequest.php

Open in GitHub
use App\Enums\SkillProficiency;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
 
class UpdateSkillRequest extends FormRequest
{
public function authorize(): bool
{
return true;
}
 
public function rules(): array
{
return [
'skill' => ['required', 'array'],
'skill_level' => ['required', 'array', Rule::in(SkillProficiency::toValues())],
];
}
 
public function messages(): array
{
return [
'skills.required' => 'The skills field is required',
'skills.array' => 'The skills field must be an array',
'skill_level.required' => 'The skill level field is required',
'skill_level.string' => 'The skill level field must be a string',
'skill_level.enum' => 'The skill level field must be a valid skill level',
];
}
}

app/Http/Controllers/ProfileController.php

Open in GitHub
use App\Http\Requests\UpdateSkillRequest;
use Illuminate\Http\RedirectResponse;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Redirect;
 
class ProfileController extends Controller
{
// ...
 
public function updateSkill(UpdateSkillRequest $request): RedirectResponse
{
$data = $request->validated();
$user = Auth::user();
$user->update([
'skills' => json_encode($data)
]);
 
return Redirect::route('profile.update')->with('status', 'Skills updated successfully');
}
 
// ...
}

We'd Love Your Feedback

Tell us what you like or what we can improve

Feel free to share anything you like or dislike about this page or the platform in general.