PHP code example of ufvjm / graphql-client

1. Go to this page and download the library: Download ufvjm/graphql-client library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

ufvjm / graphql-client example snippets


use GraphqlClient\GraphqlRequest\AuthGraphqlRequest;

//recupera os dados do formulario
$containstitucional = 'nome.sobrenome';
$senha = 'sua-senha';

try {
    $request = new stdClass();

    if(is_null($containstitucional) or is_null($senha)){
        throw new \Exception('Usuário ou senha não informados');
    }

    $request->containstitucional = $containstitucional;
    $request->password = $senha;

    // Carrega a classe de autenticação
    $authGraphqlRequest = new AuthGraphqlRequest();

    // Tenta realizar o login na Conta Institucional
    $authGraphqlRequest->loginContaInstitucional($request);

    // Recupera as informações do usuário logado
    // Dados pessoais e vinculos (aluno, docente, tae, coordenador de curso, etc) com a UFVJM
    $userInfo = $authGraphqlRequest->usuarioLogadoInfo();

    // Neste ponto, a autenticação funcionou, implementar o carregamento do usuário de banco de dados
    // proprietário da conta institucuinal ($containstitucional) utilizada na autenticação, a senha já foi validada.
    // Realize o login do usuário no seu framework para que a sessão armazene o usuário logado.
} catch (\Exception $e) {
    $errorMessage = $e->getMessage();
    // A mensagem de erro foi carregada, tratar para disponibilizar na interface para o usuário do sistema
}


// Carrega a classe de disciplina
$disciplinaGraphqlRequest = new DisciplinaGraphqlRequest();

// Recupera informações de disciplina por código
$disciplina = 
    $disciplinaGraphqlRequest->queryGetById('COM001')
    ->getResults();

// Carrega a classe de disciplina
$disciplinaGraphqlRequest = new DisciplinaGraphqlRequest();

// Carrega a paginação solicitando até 3 registros
$pagination = new ForwardPaginationQuery(3);

// Recupera as informações de disciplinas
$disciplinas = 
    $disciplinaGraphqlRequest
    ->queryList($pagination)
    ->getResults();

// Carrega a classe de disciplina
$disciplinaGraphqlRequest = new DisciplinaGraphqlRequest();

// Recupera informações de disciplina por código
$disciplina =
    $disciplinaGraphqlRequest
        ->addRelationDepartamento()
        ->queryGetById('COM001')
        ->getResults();