/** * Compilação de Documentos * * Possibilidade de construção de documentos utilizando o gerenciamento de * compilação instalado no servidor. Necessária informação de Plugins de * entrada e saída, informando assim o tipo de documento enviado e requerido * durante o processamento. Também é informado os documentos que devem ser * utilizados para criação do documento de saída. O usuário necessita estar * autenticado no sistema para utilizar este serviço. * * @param string $token Token de Autenticação * @param string $input Plugin de Entrada para Utilização * @param string $output Plugin de Saída para Utilização * @param array $documents Documentos para Processamento * @return array Informações sobre o Documento Resultante */ public function compile() { // Captura de Parâmetros $token = (string) func_get_arg(0); $input = (string) func_get_arg(1); $output = (string) func_get_arg(2); $documents = func_get_arg(3); $documents = is_array($documents) ? $documents : array(); // Camada de Modelo $model = new Model_Users(); // Verificar Token de Autenticação $user = $model->check($token); // Existe Referência? if (empty($user)) { // Apresentar Erro de Autenticação throw new Exception('Authentication Error', 403); } // Camada de Modelo $model = new Model_Compiler(); // Processamento $result = $model->compile($user, $input, $output, $documents); // Apresentação return $result; }
/** * Alteração de Hash de Usuário * * Existem alguns casos que o hash utilizado pelo usuário necessita ser * modificado, visando segurança. Para isto, esta ação do serviço solicita * para a camada de modelo a alteração deste conteúdo e apresenta ao cliente * este valor alterado. * * @param string $token Token de Autenticação do Usuário * @param int $id Identificador do Usuário para Alteração de Hash * @return string Conteúdo do Novo Hash Gerado */ public function hash() { // Captura de Parâmetros $token = (string) func_get_arg(0); $id = (int) func_get_arg(1); // Camada de Modelo $model = new Model_Users(); // Resultado Inicial $result = null; // Verificar Credenciais if ($model->check($token, true)) { // Remover Informações $result = $model->hash($id); } // Apresentar Resultados return $result; }