public function execute($parameters = []) { if (!isset($parameters['action'])) { $result = ['Result' => 'ERROR', 'Message' => 'Faltan parámetros']; return json_encode($result); } switch ($parameters['action']) { case 'emailExists': if (isset($parameters['email'])) { return json_encode($this->emailExists($parameters['email'])); } else { return json_encode(SiteService::MissingParameters()); } case 'logout': return json_encode(User::logOut()); break; case 'login': extract($parameters); $password = $pass; // Válido que el correo exista en la base de datos if ($this->usernameExists($user)) { $login = User::loginNormal($user, $password); return json_encode($this->processLoginResult($login)); } $result = ['Result' => 'ERROR', 'Message' => 'El correo electrónico no existe']; return $result; break; case 'password-recovery': $email = $parameters['email']; break; default: $result = []; $result['Result'] = 'ERROR'; $result['Message'] = 'Acción no definida'; return json_encode($result); } }