SaudeBemEstar

From Labmm2

(Difference between revisions)
Jump to: navigation, search
Line 12: Line 12:
O projecto Saúde e Bem Estar trata um dos temas mais importantes da actualidade, pois mais de metade da população portuguesa sofre de excesso de peso.<br/>
O projecto Saúde e Bem Estar trata um dos temas mais importantes da actualidade, pois mais de metade da população portuguesa sofre de excesso de peso.<br/>
-
Além do controlo de peso, a alimentação influencia a nossa saúde em geral, desse modo, o Saúde e Bem Estar mostrará como tratar vários problemas de saúde sem recorrer a medicamentos, consumindo apenas determinados alimentos, de uma forma 100% saudável. <br/>
+
Além do controlo de peso, a alimentação influencia a nossa saúde em geral, desse modo, o Saúde e Bem Estar mostrará como tratar vários problemas de saúde sem recorrer a medicamentos, consumindo apenas determinados alimentos, de uma forma 100% saudável. <br/><br/>
-
O site foca 8 tratamentos saudáveis para 8 das doenças mais comuns:<br/>
+
-
''' - Colesterol  <br/>
+
Este site foca nos principais temas de saude e bem estar que são a Alimentação e o Exercicio Fisico.<br/>
-
''' - Ácido Úrico  <br/>
+
Além disso terá uma secção "Sabia Que?" onde o utilizador poderá ler factos e mitos sobre alimentação e outras curiosidades.<br/>
-
''' - Hipertensão  <br/>
+
A página IMC volta a estar presente como já esteve na época normal mas desta vez melhorada em:<br/>
-
''' - Constipação  <br/>
+
'''-Aspecto geral da página<br/>
-
''' - Alergia  <br/>
+
'''-Código JavaScript aprefeiçoado - agora funciona e os dados aparecem correctamente no sitio certo, sem danificar a formatação do resto da página.
-
''' - Obstipação  <br/>
+
'''-Conselhos para atingir o peso ideal na página IMC consoante o IMC do utilizador
-
''' - Enxaqueca  <br/>
+
-
''' - Depressão  <br/>
+
-
No site integrará uma lista de receitas saudáveis para todos os momentos de cada refeição, desde as entradas, carnes, peixes, e por fim sobremesas.<br/>
 
-
 
-
Além disso haverá uma ajuda para o controlo total do peso: perder, ganhar e até manter peso.<br/>
 
==Arborescencia==
==Arborescencia==
-
Segue aqui a estrotura arborescente do nosso projecto:<br/>
+
A arborescencia é simples, o site é constituido por 6 páginas: Home, Alimentação, Exercicio, Sabia Que?(acesso ao quizz), Contactos<br/><br/>
 +
Todas ligadas entre elas através do menu principal á excepção do "Quizz" que apenas é acedido e dá acesso á página "Sabia Que?"
 +
 
-
[[File:Arborescencia.jpg]]
 
==Javascript==
==Javascript==
-
Este site integra uma calculadora de IMC (Índice de Massa Corporal), aqui fica o código, explicado:<br/><br/>
 
-
 
-
<pre>
 
-
function calculaIMC()
 
-
{
 
-
var sexo = document.forms.IMC.sexo.value;
 
-
 
-
 
-
 
-
var peso=document.getElementById("pes").value;
 
-
var altura=document.getElementById("alt").value;
 
-
var IMC;
 
-
altura= altura/100;
 
-
altura= Math.pow(altura,2);
 
-
IMC=peso/altura;
 
-
IMC= IMC.toFixed(2);
 
-
if (isNaN(IMC) ) {alert("Dados inválidos, por favor introduza de novo.")}
 
-
else if (IMC>200) {alert("Dados inválidos, por favor introduza de novo.")}
 
-
else if  (IMC<3)  {alert("Dados inválidos, por favor introduza de novo.")}
 
-
else{
 
-
switch (sexo)
 
-
{
 
-
case ("Masculino"):
 
-
{
 
-
if (IMC<20.7){document.getElementById("resultadoz").style.color="#00F" ;
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Tem défice de peso. Para começar a adquirir um peso adquado às suas características de forma saudavel vá ao menú alimentação e clique no sub-menu ganhar peso");}
 
-
 
-
else if (IMC>=20.7 && IMC<=26.4){document.getElementById("resultadoz").style.color="#0F6" ; document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Parabéns, tem o peso adequado. Para manter o seu peso de forma saudavel vá ao menú alimentação e clique no sub-menu manter peso");}
 
-
 
-
else if (IMC>=26.5 && IMC<=27.8){document.getElementById("resultadoz").style.color="#FF0" ; document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Tem algum peso em excesso mas nada de grave. Para começar a perder peso de forma saudavel vá ao menú alimentação e clique no sub-menu perder peso");}
 
-
else if (IMC>=27.9 && IMC<=31.1){document.getElementById("resultadoz").style.color="#F90" ;
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Está obeso. Para começar a perder peso de forma saudavel vá ao menú alimentação e clique no sub-menu perder peso");}
 
-
else if (IMC>31.1){document.getElementById("resultadoz").style.color="#F00" ; document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Sofre de obesidade morbida. Para começar a perder peso de forma saudavel vá ao menú alimentação e clique no sub-menu perder peso");}
 
-
break;
 
-
}
 
-
case ("Feminino"):
 
-
{
 
-
if (IMC<19.1){document.getElementById("resultadoz").style.color="#00F" ;
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Tem défice de peso. Para começar a adquirir um peso adquado às suas características de forma saudavel vá ao menú alimentação e clique no sub-menu ganhar peso");
 
-
}
 
-
else if (IMC>=19.2 && IMC<=25.8){
 
-
document.getElementById("resultadoz").style.color="#0F6" ;
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Parabéns, tem o peso adequado. Para manter o seu peso de forma saudavel vá ao menú alimentação e clique no sub-menu manter peso");
 
-
}
 
-
else if (IMC>=25.9 && IMC<=27.3){document.getElementById("resultadoz").style.color="#FF0" ;
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Tem algum peso em excesso mas nada de grave. Para começar a perder peso de forma saudavel vá ao menú alimentação e clique no sub-menu perder peso");
 
-
}
 
-
 
-
else if (IMC>=27.4 && IMC<=32.3){document.getElementById("resultadoz").style.color="#F90" ;
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Está obesa. Para começar a perder peso de forma saudavel vá ao menú alimentação e clique no sub-menu perder peso");
 
-
}
 
-
else if (IMC>32.3){document.getElementById("resultadoz").style.color="#F00";
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC + ": Sofre de obesidade morbida. Para começar a perder peso de forma saudavel vá ao menú alimentação e clique no sub-menu perder peso");
 
-
 
-
}
 
-
break;
 
-
}
 
-
document.getElementById("resultadoz").innerHTML = ("IMC = "+IMC);<br/>
 
-
 
-
</pre>
 
-
 
-
Para começar o script vai buscar os valores inseridos pelo utilizador e verificar se estão correctos, para isso vai verificar se são números com a função IsNaN. em seguida vai verificar se os valores são "normais", nesse caso os critérios são:<br/>
 
-
O IMC terá que ser menor que 200, (o grau de obesidade máximo começa em 31.1 nos Homens e em 32.3 nas mulheres, e maior que 3, pois será também impossível.<br/>
 
-
<br/>
 
-
Depois das validações, o programa verifica se o sexo introduzido foi masculino ou feminino, que apesar de não haver diferença no resultado numérico do IMC, os critérios que definem a categoria do peso da pessoa são ligeiramente diferentes.<br/>
 
-
<br/>
 
-
Para cada "categoria" de valores o programa irá executar uma função que irá escrever um texto que aconselhará cada pessoa a chegar ao peso ideal, ou manter o mesmo.<br/>
 
-
<br/>
 
-
<br/>
 
-
<br/>
 
-
 
-
<br/>
 
-
 
-
<br/>
 
-
Tivémos algumas dificuldades na estrotura de menús "drop-down",  que não conseguimos integrar apenas com código CSS e tivémos que procurar ajuda com javascript. Deste modo, quando o utilizador faz mouse over ou mouse out. O código utilizado foi este:<br/><br/>
 
-
<pre>
 
-
function mostraopcoes1()
 
-
{
 
-
var coisas1= document.getElementById('aliment11')
 
-
coisas1.style.visibility='visible';
 
-
var coisas2= document.getElementById('aliment12')
 
-
coisas2.style.visibility='visible';
 
-
var coisasa= document.getElementById('aliment13')
 
-
coisasa.style.visibility='visible';
 
-
}
 
-
function mostraopcoes3()
 
-
{
 
-
var coisas5= document.getElementById('aliment31')
 
-
coisas5.style.visibility='visible';
 
-
var coisas6= document.getElementById('aliment32')
 
-
coisas6.style.visibility='visible';
 
-
var coisasa9= document.getElementById('aliment33')
 
-
coisasa9.style.visibility='visible';
 
-
var coisasa13= document.getElementById('aliment34')
 
-
coisasa13.style.visibility='visible';
 
-
}
 
-
function escondeopcoes3()
 
-
{
 
-
var coisas3= document.getElementById('aliment31')
 
-
coisas3.style.visibility='hidden'
 
-
var coisas4= document.getElementById('aliment32')
 
-
coisas4.style.visibility='hidden'
 
-
var coisasa11= document.getElementById('aliment33')
 
-
coisasa11.style.visibility='hidden'
 
-
var coisasa12= document.getElementById('aliment34')
 
-
coisasa12.style.visibility='hidden'
 
-
}
 
-
 
-
function escondeopcoes1()
 
-
{
 
-
 
-
var coisas7= document.getElementById('aliment11')
 
-
coisas7.style.visibility='hidden';
 
-
var coisas8= document.getElementById('aliment12')
 
-
coisas8.style.visibility='hidden';
 
-
var coisasa1= document.getElementById('aliment13')
 
-
coisasa1.style.visibility='hidden';
 
-
 
-
}
 
-
 
-
function escondetratamentos(){
 
-
var trata1= document.getElementById("tratament11")
 
-
trata1.style.visibility="hidden";
 
-
var trata2= document.getElementById("tratament12")
 
-
trata2.style.visibility="hidden";
 
-
var trata3= document.getElementById("tratament13")
 
-
trata3.style.visibility="hidden";
 
-
var trata4= document.getElementById("tratament14")
 
-
trata4.style.visibility="hidden";
 
-
var trata5= document.getElementById("tratament15")
 
-
trata5.style.visibility="hidden";
 
-
var trata6= document.getElementById("tratament16")
 
-
trata6.style.visibility="hidden";
 
-
var trata7= document.getElementById("tratament17")
 
-
trata7.style.visibility="hidden";
 
-
var trata8= document.getElementById("tratament18")
 
-
trata8.style.visibility="hidden";
 
-
}
 
-
function mostratratamentos(){
 
-
var atrata1= document.getElementById("tratament11")
 
-
atrata1.style.visibility="visible";
 
-
var atrata2= document.getElementById("tratament12")
 
-
atrata2.style.visibility="visible";
 
-
var atrata3= document.getElementById("tratament13")
 
-
atrata3.style.visibility="visible";
 
-
var atrata4= document.getElementById("tratament14")
 
-
atrata4.style.visibility="visible";
 
-
var atrata5= document.getElementById("tratament15")
 
-
atrata5.style.visibility="visible";
 
-
var atrata6= document.getElementById("tratament16")
 
-
atrata6.style.visibility="visible";
 
-
var atrata7= document.getElementById("tratament17")
 
-
atrata7.style.visibility="visible";
 
-
var atrata8= document.getElementById("tratament18")
 
-
atrata8.style.visibility="visible";
 
-
}
 
-
 
-
</pre>
 
-
Cada sub-menu é mostrado/escondido através destas funções acima, que são chamadas através de eventos mouse over e mouse out.<br/>
 
-
<br/>
 
-
 
-
Para que a animação dos menus funcionasse foi utilizada esta função: <br/>
 
-
<br/>
 
-
<pre>
 
-
function imgali(x){
 
-
switch (x){
 
-
case 1:document.getElementById("imgal").src= "imagens/bot_alimentaçao.png";
 
-
break;
 
-
case 0:document.getElementById("imgal").src="imagens/bot_alimen_2.png";
 
-
    break;
 
-
}
 
-
      }
 
-
function imgex(x){
 
-
switch (x){
 
-
case 1:document.getElementById("imgexe").src="imagens/bot_exec1.png";
 
-
break;
 
-
case 0:document.getElementById("imgexe").src="imagens/bot_exec2.png";
 
-
    break;
 
-
}
 
-
      }
 
-
function imgmitos(x){
 
-
switch (x){
 
-
case 1:document.getElementById("imgmit").src="imagens/bot_mitos2.png";
 
-
break;
 
-
case 0:document.getElementById("imgmit").src="imagens/bot_mitos1.png";
 
-
    break;
 
-
}
 
-
      }
 
-
function imgim(x){
 
-
switch (x){
 
-
case 1:document.getElementById("imgimc").src="imagens/bot_imc1.png";
 
-
break;
 
-
case 0:document.getElementById("imgimc").src="imagens/bot_imc2.png";
 
-
    break;
 
-
}
 
-
      }
 
-
function imgcont(x){
 
-
switch (x){
 
-
case 1:document.getElementById("imgcon").src="imagens/bot_cont1.png";
 
-
break;
 
-
case 0:document.getElementById("imgcon").src="imagens/bot_cont2.png";
 
-
    break;
 
-
}
 
-
      }
 
-
</pre>
 
-
 
-
 
-
==CSS==
 
-
<pre>
 
-
#dropdown{position:relative; font-size: 10px; margin:0; padding:0;
 
-
top:-30px;
 
-
width:inherit;
 
-
}
 
-
#dropdown ul{font-size: 10px; margin:0; padding:0; line-height:30px;}
 
-
#dropdown li{ font-size: 10px; margin:0; padding:0; list-style:none; float:left; position:relative;}
 
-
 
-
#menus #dropdown ul li {
 
-
padding-right:10px;
 
-
}
 
-
       
 
-
#menus #dropdown ul li a img{
 
-
border:0px;}
 
-
#dropdown ul li a{font-size: 10px; text-align:center; font-family:Arial, Helvetica, sans-serif; text-decoration:none; height:60px; width:125px; display:block; color:#000;}
 
-
#dropdown ul li ul a{font-size: 10px; text-align:center; font-family:Arial, Helvetica, sans-serif; text-decoration:none; height:30px; width:125px; display:block; color:#000; border:1px solid #000; background-color:#09F;}
 
-
#dropdown ul li ul a:hover{font-size: 10px; text-align:center; font-family:Arial, Helvetica, sans-serif; text-decoration:none; height:30px; width:125px; display:block; color:#000; border:1px solid #000; background-color:#0F0;}
 
-
 
-
 
-
#dropdown ul ul{
 
-
font-size: 10px;
 
-
position:absolute;
 
-
visibility:hidden;
 
-
top:60px;
 
-
left: 6px;
 
-
height: 110px;
 
-
}
 
-
#dropdown ul li:hover ul{ font-size: 10px; visibility:visible;}
 
-
 
-
 
-
#dropdown ul li ul:hover ul{font-size: 10px; visibility:visible;}
 
-
 
-
#dropdown ul ul ul{
 
-
font-size: 10px;
 
-
position:absolute;
 
-
left:127px;
 
-
height: 158px;
 
-
width: 138px;
 
-
z-index: 5;
 
-
}
 
-
 
-
 
-
 
-
 
-
 
-
 
-
#calculadora{float:left; border: solid medium #000;}
 
-
body{ font-family: , sans-serif; border:1px #000;}
 
-
#topo{
 
-
position:relative;
 
-
position:absolute;
 
-
width:950px;
 
-
height:397px;
 
-
}
 
-
#logo{
 
-
position:absolute;
 
-
width:200px;
 
-
height:250px;
 
-
float:left;
 
-
max-width:200px;
 
-
max-height:250px;
 
-
top:8px;
 
-
height:10em;
 
-
left: 18px;
 
-
z-index: 1;
 
-
}
 
-
#menus{
 
-
width:748px;
 
-
height:250px;
 
-
float:left;
 
-
max-width:750px;
 
-
max-height:250px;
 
-
position:relative;
 
-
left:224px;
 
-
padding-left: 10px;
 
-
    padding-top:50px;
 
-
 
-
top:80px;
 
-
height:323px;
 
-
margin-top:-5em;
 
-
position:relative;
 
-
z-index:2;
 
-
text-align:center;
 
-
}
 
-
 
-
#menus img{ width:130px; height:60px; padding-left:5px;}
 
-
#menus img:hover{ width:130px; height:60px; padding-left:5px;}
 
-
#conteudos{ position:relative; width:950px; height:450px; max-width:950px; max-height:450px; top:250px; left:14px;}
 
-
#sidebar{
 
-
position:absolute;
 
-
width:193px;
 
-
height:458px;
 
-
max-width:200px;
 
-
max-height:450px;
 
-
left: 17px;
 
-
top: 0px;
 
-
}
 
-
#info{width:710px; height:auto; float:right; max-width:750px; max-height:450px; top:250px;
 
-
padding-left:150px;
 
-
}
 
-
 
-
#imgLogo{
 
-
margin-top:-6em;
 
-
position:absolute;
 
-
left: -8px;
 
-
top: 121px;
 
-
}
 
-
#imgLogo *{
 
-
margin:0px auto;
 
-
}
 
-
 
-
 
-
 
-
#butoes li{display: inline;
 
-
list-style-type: none;
 
-
padding-right: 2px;
 
-
 
-
}
 
-
#topo {
 
-
position:relative;
 
-
left: 12px;
 
-
top: 0px;
 
-
}
 
-
 
-
 
-
#menuAliment{ background-image:url(imagens/bot_alimen_2.png)}
 
-
#menuAliment hover{ background-image:url(imagens/bot_alimenta%C3%A7ao.png)}
 
-
 
-
#menuPrincipal{  width:130px; height:60px; padding-left:5px;}
 
-
 
-
#aliment11{visibility:hidden; top:-60px; position:absolute;}
 
-
#aliment12{visibility:hidden; top:-60px; position:absolute;}
 
-
#aliment13{visibility:hidden; top:-60px; position:absolute;}
 
-
#aliment31{visibility:hidden; top:-60px; position:absolute;}
 
-
#aliment32{visibility:hidden; top:-60px; position:absolute;}
 
-
#aliment33{visibility:hidden; top:-60px; position:absolute;}
 
-
#aliment34{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament11{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament12{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament13{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament14{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament15{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament16{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament17{visibility:hidden; top:-60px; position:absolute;}
 
-
#tratament18{visibility:hidden; top:-60px; position:absolute;}
 
-
 
-
#conteudos{
 
-
position:relative;
 
-
top:-180px;
 
-
z-index:1;
 
-
border-style:groove;
 
-
border:1px;
 
-
   
 
-
}
 
-
 
-
 
-
 
-
 
 
-
body{
 
-
font-family:Arial, Helvetica, sans-serif;
 
-
background-image:url(imagens/greenPattern.jpg);
 
-
}
 
-
p{
 
-
font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
 
-
font-size:18px;
 
-
font-style:italic;
 
-
color:#060;
 
-
}
 
-
 
-
#resultadoz{
 
-
position:absolute;
 
-
width:682px;
 
-
height:446px;
 
-
left: 231px;
 
-
top: 2px;
 
-
}
 
-
</pre>
 
==Melhoramentos Futuros==
==Melhoramentos Futuros==
-
Devido á quantidade enorme de problemas encontrados durante a contrução do site, muitas coisas não funcionam como nós pretendiamos, para um melhoramento futuro gostariamos de melhorar a estrotura visual do site, alguns
 
-
menus  que não funcionam correctamente, e o posicionamento de alguns textos ficou aquém dos nossos objectivos.
 
-
<br/>
 
-
<br/>
 
-
<br/>
 
==Problemas/Conclusões==
==Problemas/Conclusões==
-
Sem dúvida o maior problema que enfrentámos foi com o template, devido á quantidade enorme de erros que ele estava a dar, decidimos deixar de utilizar o mesmo, ou seja, cada alteração na estrotura do site tivémos que alterar "á unha" em todas as páginas do site.<br/>
 
-
Além disso enfrentámos os típicos problemas com javascript  como por exemplo o script conseguir ler e calcular valores (testado com linha de script "alert(nome da variável)") mas simplesmente se recusava a apresentar os mesmos no local que pretendiamos.<br/>
 
-
Infelizmente chegámos á entrega final do projecto sem conseguir resolver um problema com os menús drop-down, que por vezes desaparecem sem que isso seja suposto, o que prejudica imenso a navegação no site pois ficaram várias páginas inacessíveis.<br/><br/>
 
-
No fim de tudo o problema maior foi mesmo o tempo,  mas esse era já um problema esperado que fez com que o projecto não mostrasse todo o seu potencial tanto informativo como mesmo de entretenimento devido a problemas que chegam ao fim sem ser resolvidos e são entregues assim mesmo como ficaram.<br/>
 
-
De forma geral com este projecto desenvolvemos a nossa tolerância a ultrapassar problemas, que nem faziamos ideia existirem, e além disso elucidou-nos para a realidade da exigencia do mercado de trabalho a nível de web-design.
 

Revision as of 16:03, 10 July 2011

Nesta página será divulgado o processo de criação do projecto "Saúde e Bem Estar".


Contents

Alunos

Rui Espinha 45715
Tiago Ferreira 46266
José Rocha 43394


Conceito

O projecto Saúde e Bem Estar trata um dos temas mais importantes da actualidade, pois mais de metade da população portuguesa sofre de excesso de peso.

Além do controlo de peso, a alimentação influencia a nossa saúde em geral, desse modo, o Saúde e Bem Estar mostrará como tratar vários problemas de saúde sem recorrer a medicamentos, consumindo apenas determinados alimentos, de uma forma 100% saudável.

Este site foca nos principais temas de saude e bem estar que são a Alimentação e o Exercicio Fisico.
Além disso terá uma secção "Sabia Que?" onde o utilizador poderá ler factos e mitos sobre alimentação e outras curiosidades.
A página IMC volta a estar presente como já esteve na época normal mas desta vez melhorada em:
-Aspecto geral da página
-Código JavaScript aprefeiçoado - agora funciona e os dados aparecem correctamente no sitio certo, sem danificar a formatação do resto da página. -Conselhos para atingir o peso ideal na página IMC consoante o IMC do utilizador

Arborescencia

A arborescencia é simples, o site é constituido por 6 páginas: Home, Alimentação, Exercicio, Sabia Que?(acesso ao quizz), Contactos

Todas ligadas entre elas através do menu principal á excepção do "Quizz" que apenas é acedido e dá acesso á página "Sabia Que?"



Javascript

Melhoramentos Futuros

Problemas/Conclusões

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox