-
-
-
-
+
+
+
+
-
-
+
Ambiente do Usuario
diff --git a/Ambiente_Usuario_copy2.html b/Ambiente_Usuario_copy2.html
new file mode 100644
index 0000000..cab6159
--- /dev/null
+++ b/Ambiente_Usuario_copy2.html
@@ -0,0 +1,104 @@
+
+
+
+
+
+
+
+
+
+ Ambiente do Usuario
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Css/global/Estrutura.css b/Css/global/Estrutura.css
index a56e2fc..d60049b 100644
--- a/Css/global/Estrutura.css
+++ b/Css/global/Estrutura.css
@@ -1,3 +1,5 @@
+/*base de conexões com todos os elementos da páginas*/
+
@import './Menu_Lateral.css';
@import './Telas.css';
@import './import.css';
\ No newline at end of file
diff --git a/js/Ambiente/Config/Estrutural_config/config.js b/js/Ambiente/Config/Estrutural_config/config.js
index 0fc9043..76d4fde 100644
--- a/js/Ambiente/Config/Estrutural_config/config.js
+++ b/js/Ambiente/Config/Estrutural_config/config.js
@@ -1,6 +1,9 @@
+
+//Variavel botão 1 responsavel por inicar a função
var botao_1 = document.getElementById('opicao_1');
botao_1.addEventListener('click', surgir1);
+//Nessa função o conteudo da tela é modificado e novas informaçõe são apresentadas 'lembre de alinhar o nome da função com o seu botão respecitivo, sendo essa do botão 1'
function surgir1() {
var estilo = document.getElementById('conexao');
@@ -9,9 +12,13 @@ function surgir1() {
painel.innerHTML = 'ola1';
}
+
+
+//Variavel botão 2 responsavel por inicar a função
var botao_2 = document.getElementById('opicao_2');
botao_2.addEventListener('click', surgir2);
+//Nessa função o conteudo da tela é modificado e novas informaçõe são apresentadas 'lembre de alinhar o nome da função com o seu botão respecitivo, sendo essa do botão 2'
function surgir2() {
var estilo = document.getElementById('conexao');
var painel = document.getElementById('preenchimento');
@@ -19,9 +26,11 @@ function surgir2() {
painel.innerHTML = 'ola2';
}
+//Variavel botão 3 responsavel por inicar a função
var botao_3 = document.getElementById('opicao_3');
botao_3.addEventListener('click', surgir3);
+//Nessa função o conteudo da tela é modificado e novas informaçõe são apresentadas 'lembre de alinhar o nome da função com o seu botão respecitivo, sendo essa do botão 3'
function surgir3() {
var estilo = document.getElementById('conexao');
var painel = document.getElementById('preenchimento');
@@ -29,9 +38,11 @@ function surgir3() {
painel.innerHTML = 'ola3';
}
+//Variavel botão 4 responsavel por inicar a função
var botao_4 = document.getElementById('opicao_4');
botao_4.addEventListener('click', surgir4);
+//Nessa função o conteudo da tela é modificado e novas informaçõe são apresentadas 'lembre de alinhar o nome da função com o seu botão respecitivo, sendo essa do botão 4'
function surgir4() {
var estilo = document.getElementById('conexao');
var painel = document.getElementById('preenchimento');
@@ -39,10 +50,11 @@ function surgir4() {
painel.innerHTML = 'ola4';
}
-
+//Variavel botão 5 responsavel por inicar a função
var botao_5 = document.getElementById('opicao_5');
botao_5.addEventListener('click', surgir5);
+//Nessa função o conteudo da tela é modificado e novas informaçõe são apresentadas 'lembre de alinhar o nome da função com o seu botão respecitivo, sendo essa do botão 5'
function surgir5() {
var estilo = document.getElementById('conexao');
var painel = document.getElementById('preenchimento');
@@ -50,9 +62,11 @@ function surgir5() {
painel.innerHTML = 'ola5';
}
+//Variavel botão 6 responsavel por inicar a função
var botao_6 = document.getElementById('opicao_6');
botao_6.addEventListener('click', surgir6);
+//Nessa função o conteudo da tela é modificado e novas informaçõe são apresentadas 'lembre de alinhar o nome da função com o seu botão respecitivo, sendo essa do botão 6'
function surgir6() {
var estilo = document.getElementById('conexao');
var painel = document.getElementById('preenchimento');
diff --git a/js/Ambiente/Config/Estrutural_config/construtor_config.js b/js/Ambiente/Config/Estrutural_config/construtor_config.js
index e69de29..eda24d4 100644
--- a/js/Ambiente/Config/Estrutural_config/construtor_config.js
+++ b/js/Ambiente/Config/Estrutural_config/construtor_config.js
@@ -0,0 +1 @@
+//onde estará a construção da estrutura de configuração do ambiente do usuário
\ No newline at end of file
diff --git a/js/Ambiente/Estrutura/Estrutura_Primaria.js b/js/Ambiente/Estrutura/Estrutura_Primaria.js
index 9c4da6b..81bcb41 100644
--- a/js/Ambiente/Estrutura/Estrutura_Primaria.js
+++ b/js/Ambiente/Estrutura/Estrutura_Primaria.js
@@ -1,20 +1,30 @@
-//Variavel que recebe as validação do login do usuário
+
+//Varivel para valida a autenticação do usuário, se for true o ambiente é construido, se for false, um tela de erro é apresentada no lugar do ambiente, e caso a resposta demore para ser apresentada um tela de carregamento é apresentada.
var autenteticação = true;
+//If que constrola o cenario de true
if (autenteticação == true) {
+ //constante que controla o estilo css que está estilizando todo o ambiente do usuário.
const estilos = document.getElementById('conexao');
estilos.href = '../Css/global/Estrutura.css';
+ //variaveis de conexão de informações, possuindo informações algumas informaçõe sendo elas:
+ //Nome do usuário
+ //Nome da empresa
+ //Imagem do usuário
+ //Imagem de fundo do usuário
var Usuário = 'Daivid';
var Empresa = 'ItGuys';
var ImagemUser = '../Acessts/Imagens/1605305486169.jpg';
var imagemFun = 'url(../Acessts/Imagens/01160209321024.jpg)';
+
+ //Essa ultima variavel é dedicada ao controle de hiriaquia, caso alguem tenha permissão para visualizar essa categoria, será true, caso ela não tenha permissão, será false, e então toda essa categoria não será apresentada.
var visuMonitor = true;
-
+ //constante conectada com estilos internos dentro do próprio html, para trazer a capacidade de controlar a imagem que está no fundo do perfil do suário.
const fundouser = document.getElementById('fundouser');
fundouser.innerHTML =
@@ -39,6 +49,7 @@ if (autenteticação == true) {
'transition: 1s ease;'
;
+ //Constante de construção primira do ambiente do usuário, é aqui onde toda á página é construida, ao mesmo tempo que as variaveis mudificam certas informações.
const construtor_primario = document.getElementById('entrada_1');
construtor_primario.innerHTML =
@@ -90,6 +101,7 @@ if (autenteticação == true) {
+
''
+
+ //Estrutura vaizia dedicada para aparesentação do painel de monitoramento caso o usuário tenha permissão para o visualizar.
''
+
''
@@ -119,24 +131,39 @@ if (autenteticação == true) {
''
;
+ //Construtores responsavels sobre a construção de alguns scripts que não são default, que só atendem o ambiente do usuário.
+
+ //construtor da reação do menu sobre as interações do usuário
const script1 = document.createElement('script');
script1.src = '../js/Ambiente/Estrutura/Reacao_menu.js';
document.body.appendChild(script1);
- const script2 = document.createElement('script');
- script2.src = '../js/Ambiente/Monitoramento/Estrutura_Secundaria_Monitor.js';
- document.body.appendChild(script2);
+ //construtor da sub camada de construção, alinhada sobre a condicional onde se a pessoa possui permisão para visualizar o monitoramente de sua empresa, visuMonitor será igual á true, enquanto se ela não tiver permissão para visualizar o visuMonitor será igual á false
+ if (visuMonitor == true) {
+ const script2 = document.createElement('script');
+ script2.src = '../js/Ambiente/Monitoramento/Estrutura_Secundaria_Monitor.js';
+ document.body.appendChild(script2);
+ };
-} else {
+}
+
+//Else sendo a reação opostao ao do if, logo sendo esse o cenario onde a autenticação não seja valida.
+else {
+
+ //Constante de controle sobre estilos css do painel de erro.
const estilos = document.getElementById('conexao');
estilos.href = '../Css/page/Telas_acao/erro_404.css';
-
+ //variaveis de conexão de informações, possuindo informações algumas informaçõe sendo elas:
+ //o Status do erro
+ //Mensagem do erro
+ //Um mensagem complementar sobre o erro
var Status = 'Erro 404';
var mensagem = 'Desculpe mas sua página não foi encontrada';
var sub_mensagem = 'Tente fazer seu, login novamente';
+ //Constante usada para a criação da estrutura, sendo usada para apresentar todo o painel
const erro = document.getElementById('entrada_1');
erro.innerHTML = ''
@@ -167,3 +194,23 @@ if (autenteticação == true) {
}
+
+// Event listener para o botão de logout
+const logoutButton = document.getElementById('logoutButton');
+if (logoutButton) {
+ logoutButton.addEventListener('click', function () {
+ // Limpar o token do localStorage ao clicar no botão de logout
+ clearAuthToken();
+ // Redirecionar para a página de login ou qualquer outra página desejada após o logout
+ window.location.href = '../login.html';
+ });
+}
+
+
+
+
+
+
+
+
+
diff --git a/js/Ambiente/Estrutura/Reacao_menu.js b/js/Ambiente/Estrutura/Reacao_menu.js
index 8b304a0..3bd33df 100644
--- a/js/Ambiente/Estrutura/Reacao_menu.js
+++ b/js/Ambiente/Estrutura/Reacao_menu.js
@@ -1,4 +1,13 @@
+//Função de adapitação do menu e da tela do ambiente do usuário, resumidamente ao apertar na seinha do menu, todo o ambiente do usuário é reajustado, enquanto da mesma forma ao pertar a setinha novamente todo o ambiente do usuário retornar ao seu laouyt tradicional
+
+
+//Aqui são as variaveis que conectao todos esses elementos, dentre elas:
+//botão conecta o pontao de condicional da ação
+//cabecario elemento pertencente da tela do usuário
+//tela seria o iframe que apresenta todas as informações do ambiente do usuário
+//menu seria os elementos visuais do usuário
+//temas seria alguns elementos do proprio menu
var botao = document.querySelector('#menu')
var cabecario = document.querySelector('.cabecario_1')
var tela = document.querySelector('.transmissão')
@@ -6,7 +15,7 @@ var menu = document.querySelector('.capitulo_1')
var temas = document.querySelectorAll('.item_menu')
-
+//Aqui se aplica o evento de cliente, sobre afunção que aplica as classes no menu caberio e telas
botao.addEventListener('click', function () {
menu.classList.toggle('expansao');
cabecario.classList.toggle('expansao');
diff --git a/js/Ambiente/Estrutura/load.js b/js/Ambiente/Estrutura/load.js
index e7aaf61..9835333 100644
--- a/js/Ambiente/Estrutura/load.js
+++ b/js/Ambiente/Estrutura/load.js
@@ -1,36 +1,44 @@
+// Adiciona um ouvinte de evento para quando o conteúdo do DOM estiver completamente carregado
document.addEventListener("DOMContentLoaded", function () {
+ // Obtém o elemento com o ID 'entrada_1'
var main = document.getElementById("entrada_1");
- // Verificar se a tag main está vazia
+ // Verifica se a tag main está vazia
if (main.innerHTML.trim() === "") {
-
+ // Se a tag estiver vazia, obtém novamente o mesmo elemento
const tela_laod = document.getElementById('entrada_1');
+ // Adiciona um elemento canvas ao conteúdo da tag main
tela_laod.innerHTML = '';
+ // Obtém o contexto 2D do canvas para desenhar
const canvas = document.getElementById('animationCanvas');
const ctx = canvas.getContext('2d');
- // Define canvas dimensions
+ // Define as dimensões do canvas para preencher a tela
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
+ // Define um objeto 'circle' que armazena as propriedades da animação
const circle = {
- centerX: canvas.width / 2,
- centerY: canvas.height / 2,
- radius: 150, // Raio do caminho circular
- rotationSpeed: 0.02,
- angle: 0,
- linePath: [], // Para armazenar a trajetória
- maxPathLength: 350 // Limite para o comprimento da trajetória
+ centerX: canvas.width / 2, // Centro do círculo no eixo X
+ centerY: canvas.height / 2, // Centro do círculo no eixo Y
+ radius: 150, // Raio do círculo
+ rotationSpeed: 0.02, // Velocidade de rotação
+ angle: 0, // Ângulo atual
+ linePath: [], // Armazena a trajetória do ponto
+ maxPathLength: 350 // Comprimento máximo da trajetória
};
+ // Função para desenhar a trajetória circular
function drawCircularPath() {
+ // Limpa o canvas antes de desenhar
ctx.clearRect(0, 0, canvas.width, canvas.height);
- // Adiciona o ponto da trajetória atual ao caminho
+ // Calcula as coordenadas do ponto atual na trajetória circular
const pathX = circle.centerX + circle.radius * Math.cos(circle.angle);
const pathY = circle.centerY + circle.radius * Math.sin(circle.angle);
+ // Adiciona o ponto atual à trajetória
circle.linePath.push({ x: pathX, y: pathY });
// Desenha a trajetória acumulada
@@ -39,34 +47,36 @@ document.addEventListener("DOMContentLoaded", function () {
ctx.moveTo(circle.linePath[i].x, circle.linePath[i].y);
ctx.lineTo(circle.linePath[i + 1].x, circle.linePath[i + 1].y);
}
- ctx.strokeStyle = '#22c0a3';
- ctx.lineWidth = 10;
- ctx.stroke();
+ ctx.strokeStyle = '#22c0a3'; // Define a cor da linha
+ ctx.lineWidth = 10; // Define a largura da linha
+ ctx.stroke(); // Desenha a linha no canvas
- // Limita o comprimento da trajetória e reinicia a trajetória quando necessário
+ // Limita o comprimento da trajetória
if (circle.linePath.length > circle.maxPathLength) {
circle.linePath.shift(); // Remove o primeiro ponto do caminho
- if (circle.angle >= Math.PI * 2) { // Completa um ciclo
+ // Reinicia a trajetória se um ciclo completo foi completado
+ if (circle.angle >= Math.PI * 2) { // Verifica se completou um ciclo
circle.angle = 0; // Reinicia o ângulo
circle.linePath = []; // Limpa a trajetória
}
}
}
+ // Função de animação que atualiza a posição do ponto e desenha a trajetória
function animate() {
- circle.angle += circle.rotationSpeed;
- drawCircularPath();
- requestAnimationFrame(animate);
+ circle.angle += circle.rotationSpeed; // Atualiza o ângulo
+ drawCircularPath(); // Desenha a trajetória atual
+ requestAnimationFrame(animate); // Solicita a próxima animação
}
- animate();
+ animate(); // Inicia a animação
// Ajusta o tamanho do canvas quando a janela é redimensionada
window.addEventListener('resize', () => {
- canvas.width = window.innerWidth;
- canvas.height = window.innerHeight;
- circle.centerX = canvas.width / 2;
- circle.centerY = canvas.height / 2;
+ canvas.width = window.innerWidth; // Ajusta a largura
+ canvas.height = window.innerHeight; // Ajusta a altura
+ circle.centerX = canvas.width / 2; // Atualiza o centro X
+ circle.centerY = canvas.height / 2; // Atualiza o centro Y
});
}
-});
\ No newline at end of file
+});
diff --git a/js/Ambiente/Monitoramento/Estrutura_Secundaria_Monitor.js b/js/Ambiente/Monitoramento/Estrutura_Secundaria_Monitor.js
index dd7b7bf..4310ea5 100644
--- a/js/Ambiente/Monitoramento/Estrutura_Secundaria_Monitor.js
+++ b/js/Ambiente/Monitoramento/Estrutura_Secundaria_Monitor.js
@@ -1,12 +1,15 @@
+// Verifica se a variável 'visuMonitor' é verdadeira
if (visuMonitor == true) {
-
+ // Obtém o elemento com o ID 'sub_entrada' para inserir o conteúdo
const construtor_Secundarios_Monitoramento = document.getElementById('sub_entrada');
+ // Define o conteúdo HTML a ser inserido no 'sub_entrada'
construtor_Secundarios_Monitoramento.innerHTML =
'
Monitoramento
'
+ + // Cria o item do menu "Monitoramento"
+ '
' // Cria um submenu
+
- '
'
- +
+ // Cada link dentro do submenu, com imagem e texto
'
'; // Fecha o submenu
};
-
+// Adiciona um evento para mostrar o submenu quando o mouse entra no item do menu
document.getElementById('testes').addEventListener('mouseenter', function () {
- document.getElementById('sub_menu').classList.add('show');
+ document.getElementById('sub_menu').classList.add('show'); // Adiciona a classe 'show' para exibir o submenu
});
+// Adiciona um evento para esconder o submenu quando o mouse sai do item do menu
document.getElementById('testes').addEventListener('mouseleave', function () {
- document.getElementById('sub_menu').classList.remove('show');
+ document.getElementById('sub_menu').classList.remove('show'); // Remove a classe 'show' para ocultar o submenu
});
+// Adiciona um evento para manter o submenu visível enquanto o mouse está sobre ele
document.getElementById('sub_menu').addEventListener('mouseenter', function () {
- this.classList.add('show');
+ this.classList.add('show'); // Adiciona a classe 'show' para manter o submenu visível
});
+// Adiciona um evento para esconder o submenu quando o mouse sai do submenu
document.getElementById('sub_menu').addEventListener('mouseleave', function () {
- this.classList.remove('show');
-});
\ No newline at end of file
+ this.classList.remove('show'); // Remove a classe 'show' para ocultar o submenu
+});
diff --git a/js/Login/login.js b/js/Login/login.js
index 8106acd..21e9629 100644
--- a/js/Login/login.js
+++ b/js/Login/login.js
@@ -3,7 +3,7 @@
async function getApiUrl() {
try {
//solicitação do arquivo config_url.php
- const response = await fetch('../../../php/config_url.php');
+ const response = await fetch('../../../Sites/Site_ItGuys/php/config_url.php');
//Aplicação de um if caso a resposta do php seja oposta ao ok
if (!response.ok) {
throw new Error('Network response was not ok');
diff --git a/js/padrao_A1.js b/js/padrao_A1.js
index 07a6dad..db07a58 100644
--- a/js/padrao_A1.js
+++ b/js/padrao_A1.js
@@ -1,7 +1,7 @@
// Função para obter a URL base do servidor
async function getApiUrl() {
try {
- const response = await fetch('../../php/config_url.php'); // Solicita a URL base do PHP
+ const response = await fetch('../../../Sites/Site_ItGuys/php/config_url.php'); // Solicita a URL base do PHP
if (!response.ok) {
throw new Error('Network response was not ok');
}
@@ -18,19 +18,18 @@ function getAuthToken() {
return localStorage.getItem('x-access-token');
}
+
+
async function criarBlocos() {
try {
- // Obtém a URL base do servidor
const apiUrl = await getApiUrl();
- // Obter o token JWT do localStorage
const token = getAuthToken();
- // Fazer uma requisição para o servidor para obter os dados dos blocos
const response = await fetch(`${apiUrl}/mounting`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
- 'x-access-token': token ? token : '' // Usando x-access-token diretamente no cabeçalho
+ 'x-access-token': token ? token : ''
}
});
@@ -39,278 +38,426 @@ async function criarBlocos() {
}
const dadosDosBlocos = await response.json();
+
+ // Acessando o primeiro objeto do array retornado
+ const usuarioInfo = dadosDosBlocos[0]; // Acessa o primeiro item do array
+
+ // Agora acessa as propriedades do objeto
+ const Usuário = usuarioInfo.usuario;
+ const Empresa = usuarioInfo.empresa;
+ const ImagemUser = usuarioInfo.imagemUser;
+ const imagemFun = `url(${usuarioInfo.imagemFun})`;
+
+ console.log(usuarioInfo);
+ console.log(Usuário);
+ console.log(Empresa);
+ console.log(ImagemUser);
+ console.log(imagemFun);
+
+ var visuMonitor = usuarioInfo.Permissoes_Monitor;
+
+
+ //constante que controla o estilo css que está estilizando todo o ambiente do usuário.
+ const estilos = document.getElementById('conexao');
+ estilos.href = './Css/global/Estrutura.css';
+
+ const fundouser = document.getElementById('fundouser');
+
+ fundouser.innerHTML =
+ '.Corpo_1 .Colunas_1 {'
+ +
+ 'display: flex;'
+ +
+ 'flex-direction: row;'
+ +
+ 'background-image:' + imagemFun + ';'
+ +
+ 'background-position: center;'
+ +
+ 'background-size: cover;'
+ +
+ 'width: 15vw;'
+ +
+ 'height: 10vh;'
+ +
+ 'overflow: hidden;'
+ +
+ 'transition: 1s ease;'
+ ;
+
+
+ const construtor_primario = document.getElementById('entrada_1');
+
+ construtor_primario.innerHTML =
+ ''
+ +
+ ''
+ +
+ '
'
+ +
+ ''
+ +
+ //Estrutura vaizia dedicada para aparesentação do painel de monitoramento caso o usuário tenha permissão para o visualizar.
+ ''
+ +
+ ''
+ +
+ '