|string> */ public function rules(): array { return [ 'email' => 'required|email', 'password' => 'required|min:8', ]; } /** * Get the error messages for the defined validation rules. * * @return array */ public function messages(): array { return [ 'email.required' => 'Email wajib diisi', 'email.email' => 'Format email tidak valid', 'password.required' => 'Password wajib diisi', 'password.min' => 'Password minimal 8 karakter', ]; } /** * Configure the validator instance. * * @param \Illuminate\Validation\Validator $validator * @return void */ public function withValidator(Validator $validator): void { $validator->after(function ($validator) { $email = $this->input('email'); // Custom validation: email must contain polije.ac.id if ($email && !str_contains($email, 'polije.ac.id')) { $validator->errors()->add('email', 'Gunakan email resmi Polije (@polije.ac.id atau @student.polije.ac.id)'); } }); } /** * Get custom attributes for validator errors. * * @return array */ public function attributes(): array { return [ 'email' => 'Email', 'password' => 'Password', ]; } }