| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- namespace App\Controllers;
- use App\Models\UserModel;
- use CodeIgniter\API\ResponseTrait;
- class AuthController extends BaseController
- {
- use ResponseTrait;
- public function login()
- {
- $userModel = new UserModel();
- $data = $this->request->getJSON(true);
- $user = $userModel->findByEmail($data['email']);
- if (!$user || !password_verify($data['password'], $user['password_hash'])) {
- return $this->failUnauthorized('Credenciales inválidas');
- }
- // Aquí podrías generar un JWT o sesión
- return $this->respond([
- 'message' => 'Login exitoso',
- 'user' => [
- 'id' => $user['id'],
- 'email' => $user['email'],
- 'role' => $user['role']
- ]
- ]);
- }
- public function register()
- {
- $userModel = new UserModel();
- $data = $this->request->getJSON(true);
- $userModel->insert([
- 'username' => $data['username'],
- 'email' => $data['email'],
- 'password_hash' => password_hash($data['password'], PASSWORD_DEFAULT),
- 'role' => $data['role'] ?? 'user'
- ]);
- return $this->respondCreated(['message' => 'Usuario registrado']);
- }
- }
|