Open the menu

Detalhes de implementação

Para uma customização mais fácil, é detalhado abaixo os detalhes de implementação do aplicativo.

Estrutura

O aplicativo é, de forma resumida, uma página HTML simples.
O aplicativo possui três telas distintas:

  • Loading: é uma tela de carregamento que o aplicativo utiliza ao efetuar operações em segundo plano.
  • Iframe: é uma tela com um iframe para que o usuário possa navegar no site.
  • Login: é uma tela de login que é responsável por autenticar o usuário no portal.

O aplicativo utiliza o AngularJS para controlar seu estado e aplicar os devidos templates. Cada tela mencionada acima é um template de AngularJS na página principal (index.html).
Como uma página HTML simples, o aplicativo está dividido nos seguintes arquivos:
index.html
É a estrutura do HTML do aplicativo.
app.js
Contém a lógica do aplicativo.
styles.scss / styles.css
Contém o estilo CSS do aplicativo. O arquivo styles.scss é compilado no arquivo styles.css.

index.html

A estrutura básica do index.html é:

Os scripts com type text/ng-template são os templates AngularJS utilizados em cada uma das telas.
O script com id loading.html pertence à tela de carregamento do aplicativo, o com id iframe.html à tela de Iframe e o com id login.html, à tela de login.

Os templates citados são renderizados, de acordo com o fluxo do aplicativo, na div que contém o atributo ng-view.

app.js

A estrutura básica do app.js é a seguinte:

Nesse script, existem algumas classes e objetos de apoio:

  • AppSecureStorage: classe que auxilia o acesso à área de armazenamento seguro
  • AppStorage: classe que auxilia o acesso à área de armazenamento não seguro
  • Localization: objeto para auxiliar operações de localização
  • AjaxConfig: objeto que armazena opções de chamadas ajax

Em app.Controllers, são armazenados os controladores AngularJS.
O controlador MainController é responsável pelo processamento inicial.
O controlador AutoLoginController é responsável pelo auto login do usuário.
O controlador LoginController é responsável por controlar o login do usuário (tanto a tela quanto a execução do login).
O controlador IframeController é responsável por controlar a tela de Iframe.