Quitadas relgas de navegacion del fichero faces-config, para utilizar la

navegación implicita de JSF 2.0
This commit is contained in:
Marcos Garcia Nuñez
2019-12-08 19:13:23 +01:00
parent fac86a7c20
commit 1e05d8e82f
19 changed files with 83 additions and 198 deletions

View File

@@ -2,114 +2,4 @@
<faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_3.xsd" version="2.3"> xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_3.xsd" version="2.3">
<navigation-rule>
<navigation-case>
<from-outcome>home</from-outcome>
<to-view-id>/home.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>RegisterUser</from-outcome>
<to-view-id>/profile/RegisterUser.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>RegisterUserResult</from-outcome>
<to-view-id>/profile/RegisterUserResult.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AddPatient</from-outcome>
<to-view-id>/profile/AddPatient.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AddFamilyDoctor</from-outcome>
<to-view-id>/profile/AddFamilyDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AddSpecialistDoctor</from-outcome>
<to-view-id>/profile/AddSpecialistDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ChangeFamilyDoctor</from-outcome>
<to-view-id>/profile/ChangeFamilyDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ShowPatient</from-outcome>
<to-view-id>/profile/ShowPatient.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ShowFamilyDoctor</from-outcome>
<to-view-id>/profile/ShowFamilyDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ShowSpecialistDoctor</from-outcome>
<to-view-id>/profile/ShowSpecialistDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>UpdateSpecialistDoctor</from-outcome>
<to-view-id>/profile/UpdateSpecialistDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>UpdateFamilyDoctor</from-outcome>
<to-view-id>/profile/UpdateFamilyDoctor.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>UpdatePatient</from-outcome>
<to-view-id>/profile/UpdatePatient.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>UpdateProfile</from-outcome>
<to-view-id>/profile/UpdateProfile.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>changecap</from-outcome>
<to-view-id>/profile/ChangePrimaryHealthCareCenter.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AddMedicalTest</from-outcome>
<to-view-id>/medicaltest/MedicalTests.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>VisitView</from-outcome>
<to-view-id>/visit/VisitView.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ManageCAPs</from-outcome>
<to-view-id>/systemAdmin/ManageSpecialties.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ManageMedicalSpecialties</from-outcome>
<to-view-id>/systemAdmin/ManageSpecialties.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AddUserAdmin</from-outcome>
<to-view-id>/systemAdmin/ManageSpecialties.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ScheduleVisit</from-outcome>
<to-view-id>/visit/VisitView.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>QueryVisit</from-outcome>
<to-view-id>/visit/VisitView.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>MedicaltestManage</from-outcome>
<to-view-id>/medicaltest/MedicalTests.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>QueryDoctorBySpecialty</from-outcome>
<to-view-id>/medicaltest/MedicalTests.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>ListDoctorsbySpecialty</from-outcome>
<to-view-id>/medicaltest/MedicalTests.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AskQuestion</from-outcome>
<to-view-id>/medicaltest/MedicalTests.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>AnswerQuestion</from-outcome>
<to-view-id>/medicaltest/MedicalTests.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config> </faces-config>

View File

@@ -59,14 +59,10 @@
<url-pattern>*.xhtml</url-pattern> <url-pattern>*.xhtml</url-pattern>
</servlet-mapping> </servlet-mapping>
<!-- <error-page> --> <error-page>
<!-- <error-code>404</error-code> --> <error-code>500</error-code>
<!-- <location>/error.xhtml</location> --> <location>/error.xhtml</location>
<!-- </error-page> --> </error-page>
<!-- <error-page> -->
<!-- <error-code>500</error-code> -->
<!-- <location>/error.xhtml</location> -->
<!-- </error-page> -->
<session-config> <session-config>
<session-timeout>30</session-timeout> <session-timeout>30</session-timeout>

View File

@@ -77,7 +77,7 @@
<ui:fragment rendered="#{not home.logedIn}"> <ui:fragment rendered="#{not home.logedIn}">
<h:outputText value="hola, invitado " /> <h:outputText value="hola, invitado " />
<p:commandButton value="login" icon="pi pi-sign-in" onclick="PF('dlgLogin').show();" title="login" /> <p:commandButton value="login" icon="pi pi-sign-in" onclick="PF('dlgLogin').show();" title="login" />
<p:button value="Registrarse" icon="pi pi-user-plus" outcome="RegisterUser" /> <p:button value="Registrarse" icon="pi pi-user-plus" outcome="/profile/RegisterUser" />
</ui:fragment> </ui:fragment>
</f:facet> </f:facet>
</p:menubar> </p:menubar>

View File

@@ -43,7 +43,7 @@
oncomplete="handleLoginRequest(xhr, status, args)" /> oncomplete="handleLoginRequest(xhr, status, args)" />
</div> </div>
<div class="ui-g-6"> <div class="ui-g-6">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
</div> </div>
</p:panel> </p:panel>

View File

@@ -27,7 +27,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -6,7 +6,7 @@
<ui:composition template="../header.xhtml"> <ui:composition template="../header.xhtml">
<ui:define name="content"> <ui:define name="content">
<h:form id="frmRegisterUserResult" rendered="#{registerUser.registered}"> <h:form id="frmRegisterUserResult" rendered="#{RegisterUser.registered}">
<div class="ui-g-3 ui-md-3" /> <div class="ui-g-3 ui-md-3" />
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
@@ -15,24 +15,24 @@
<div class="ui-g-12"> <div class="ui-g-12">
Enhorabuena Enhorabuena
<p:outputLabel value="#{registerUser.name}" /> <p:outputLabel value="#{RegisterUser.name}" />
, se ha registrado correctamente, el sistema le ha asignado un <b> <p:outputLabel value="Código de Identificación Personal (CIP)" rendered="#{registerUser.patient}" /> , se ha registrado correctamente, el sistema le ha asignado un <b> <p:outputLabel value="Código de Identificación Personal (CIP)" rendered="#{RegisterUser.patient}" />
<p:outputLabel value="Número de Profesional" rendered="#{registerUser.familyDoctor or registerUser.specialistDoctor}" /> <p:outputLabel value="Número de Profesional" rendered="#{RegisterUser.familyDoctor or RegisterUser.specialistDoctor}" />
</b> , por favor recuerdelo ya que deberá utilizarlo para logearse en el sistema. </b> , por favor recuerdelo ya que deberá utilizarlo para logearse en el sistema.
</div> </div>
<div class="ui-g-12"> <div class="ui-g-12">
<p:outputLabel value="Su Código de Identificación Personal (CIP) es el siguiente:" rendered="#{registerUser.patient}" /> <p:outputLabel value="Su Código de Identificación Personal (CIP) es el siguiente:" rendered="#{RegisterUser.patient}" />
<p:outputLabel value="Número de Profesional es el siguiente:" rendered="#{registerUser.familyDoctor or registerUser.specialistDoctor}" /> <p:outputLabel value="Número de Profesional es el siguiente:" rendered="#{RegisterUser.familyDoctor or RegisterUser.specialistDoctor}" />
</div> </div>
<div class="ui-g-12" style="font-size: larger; font-weight: bold; text-align: center;"> <div class="ui-g-12" style="font-size: larger; font-weight: bold; text-align: center;">
<p:outputLabel value="#{registerUser.id}" /> <p:outputLabel value="#{RegisterUser.id}" />
</div> </div>
<div class="ui-g-3"></div> <div class="ui-g-3"></div>
<div class="ui-g-6"> <div class="ui-g-6">
<p:button value="Ir a la página principal" outcome="home" icon="pi pi-home" /> <p:button value="Ir a la página principal" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-3"></div> <div class="ui-g-3"></div>
</div> </div>
@@ -42,7 +42,7 @@
<div class="ui-g-3 ui-md-3" /> <div class="ui-g-3 ui-md-3" />
</h:form> </h:form>
<h:form id="frmRegisterUser" rendered="#{not registerUser.registered}"> <h:form id="frmRegisterUser" rendered="#{not RegisterUser.registered}">
<h:outputScript> <h:outputScript>
function handleRequest(xhr, status, args) { function handleRequest(xhr, status, args) {
if(args.specs) { if(args.specs) {
@@ -65,9 +65,9 @@
<p:outputLabel value="Tipo de usuario:" for="selUsertype" /> <p:outputLabel value="Tipo de usuario:" for="selUsertype" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:selectOneButton id="selUsertype" value="#{registerUser.userType}" required="true" unselectable="false" requiredMessage="Debe especificar un tipo de usuario"> <p:selectOneButton id="selUsertype" value="#{RegisterUser.userType}" required="true" unselectable="false" requiredMessage="Debe especificar un tipo de usuario">
<f:selectItems value="#{registerUser.userTypes}" var="item" itemLabel="#{item.userTypename}" itemValue="#{item.name}" /> <f:selectItems value="#{RegisterUser.userTypes}" var="item" itemLabel="#{item.userTypename}" itemValue="#{item.name}" />
<p:ajax listener="#{registerUser.onUserTypeChange}" update="selMS,selPHC" oncomplete="handleRequest(xhr, status, args)" /> <p:ajax listener="#{RegisterUser.onUserTypeChange}" update="selMS,selPHC" oncomplete="handleRequest(xhr, status, args)" />
</p:selectOneButton> </p:selectOneButton>
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
@@ -80,7 +80,7 @@
<p:outputLabel value="NIF:" for="nif" /> <p:outputLabel value="NIF:" for="nif" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="nif" value="#{registerUser.nif}" required="true" requiredMessage="Por favor, indque su NIF" /> <p:inputText id="nif" value="#{RegisterUser.nif}" required="true" requiredMessage="Por favor, indque su NIF" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="nif" display="text" /> <p:message for="nif" display="text" />
@@ -90,7 +90,7 @@
<p:outputLabel value="Nombre:" for="name" /> <p:outputLabel value="Nombre:" for="name" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="name" value="#{registerUser.name}" required="true" requiredMessage="Por favor, indique su nombre" /> <p:inputText id="name" value="#{RegisterUser.name}" required="true" requiredMessage="Por favor, indique su nombre" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="name" /> <p:message for="name" />
@@ -100,7 +100,7 @@
<p:outputLabel value="Apellidos:" for="surname" /> <p:outputLabel value="Apellidos:" for="surname" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="surname" value="#{registerUser.surname}" required="true" requiredMessage="Por favor, indique sus apellidos" /> <p:inputText id="surname" value="#{RegisterUser.surname}" required="true" requiredMessage="Por favor, indique sus apellidos" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="surname" /> <p:message for="surname" />
@@ -110,7 +110,7 @@
<p:outputLabel value="Correo electrónico:" for="email" /> <p:outputLabel value="Correo electrónico:" for="email" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="email" value="#{registerUser.email}" required="true" requiredMessage="Por favor, especifique su correo electrónico" /> <p:inputText id="email" value="#{RegisterUser.email}" required="true" requiredMessage="Por favor, especifique su correo electrónico" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="email" /> <p:message for="email" />
@@ -119,7 +119,7 @@
<p:outputLabel value="Contraseña" for="password" /> <p:outputLabel value="Contraseña" for="password" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:password id="password" value="#{registerUser.password}" match="passwordRepeat" required="true" requiredMessage="Por favor, especifique una contraseña" maxlength="50" <p:password id="password" value="#{RegisterUser.password}" match="passwordRepeat" required="true" requiredMessage="Por favor, especifique una contraseña" maxlength="50"
feedback="true" promptLabel="Especifique una contraseña segura" weakLabel="La contraseña es débil" goodLabel="La contraseña es buena" strongLabel="La contraseña es segura" feedback="true" promptLabel="Especifique una contraseña segura" weakLabel="La contraseña es débil" goodLabel="La contraseña es buena" strongLabel="La contraseña es segura"
validatorMessage="La contraseña y su verificación deben ser iguales" /> validatorMessage="La contraseña y su verificación deben ser iguales" />
</div> </div>
@@ -130,7 +130,7 @@
<p:outputLabel value="Verificación de contraseña:" for="passwordRepeat" /> <p:outputLabel value="Verificación de contraseña:" for="passwordRepeat" />
</div> </div>
<div class="ui-g-4"> <div class="ui-g-4">
<p:password id="passwordRepeat" value="#{registerUser.password}" required="true" requiredMessage="Por favor, escriba la verificación de su contraseña" maxlength="50" /> <p:password id="passwordRepeat" value="#{RegisterUser.password}" required="true" requiredMessage="Por favor, escriba la verificación de su contraseña" maxlength="50" />
</div> </div>
<div class="ui-g-6"> <div class="ui-g-6">
<p:message for="passwordRepeat" /> <p:message for="passwordRepeat" />
@@ -141,10 +141,10 @@
<p:outputLabel value="Centro:" for="selPHC" /> <p:outputLabel value="Centro:" for="selPHC" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:selectOneMenu id="selPHC" value="#{registerUser.primaryHealthCareCenter}" converter="omnifaces.SelectItemsConverter" required="#{registerUser.familyDoctor}" <p:selectOneMenu id="selPHC" value="#{RegisterUser.primaryHealthCareCenter}" converter="omnifaces.SelectItemsConverter" required="#{RegisterUser.familyDoctor}"
requiredMessage="Por favor, selecciona un centro de antención primaria"> requiredMessage="Por favor, selecciona un centro de antención primaria">
<f:selectItem itemLabel="Seleccione un centro de antención primario..." itemValue="" noSelectionOption="true" /> <f:selectItem itemLabel="Seleccione un centro de antención primario..." itemValue="" noSelectionOption="true" />
<f:selectItems value="#{registerUser.phcList}" var="phc" itemLabel="#{phc.location}" itemValue="#{phc}" /> <f:selectItems value="#{RegisterUser.phcList}" var="phc" itemLabel="#{phc.location}" itemValue="#{phc}" />
<p:column>#{phc.name}</p:column> <p:column>#{phc.name}</p:column>
<p:column>#{phc.location}</p:column> <p:column>#{phc.location}</p:column>
</p:selectOneMenu> </p:selectOneMenu>
@@ -159,10 +159,10 @@
<p:outputLabel value="Especialidad médica:" for="selMS" /> <p:outputLabel value="Especialidad médica:" for="selMS" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:selectOneMenu id="selMS" value="#{registerUser.medicalSpecialty}" converter="omnifaces.SelectItemsConverter" required="#{registerUser.specialistDoctor}" <p:selectOneMenu id="selMS" value="#{RegisterUser.medicalSpecialty}" converter="omnifaces.SelectItemsConverter" required="#{RegisterUser.specialistDoctor}"
requiredMessage="Por favor, seleccione una especialidad médica"> requiredMessage="Por favor, seleccione una especialidad médica">
<f:selectItem itemLabel="Seleccione una especialidad médica..." itemValue="" noSelectionOption="true" /> <f:selectItem itemLabel="Seleccione una especialidad médica..." itemValue="" noSelectionOption="true" />
<f:selectItems value="#{registerUser.medicalSpecialtiesList}" var="ms" itemLabel="#{ms.description}" itemValue="#{ms}" /> <f:selectItems value="#{RegisterUser.medicalSpecialtiesList}" var="ms" itemLabel="#{ms.description}" itemValue="#{ms}" />
<p:column>#{ms.name}</p:column> <p:column>#{ms.name}</p:column>
<p:column>#{ms.description}</p:column> <p:column>#{ms.description}</p:column>
</p:selectOneMenu> </p:selectOneMenu>
@@ -175,10 +175,10 @@
<div class="ui-g-12 ui-g-nopad"> <div class="ui-g-12 ui-g-nopad">
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
<div class="ui-g-2 ui-md-2 "> <div class="ui-g-2 ui-md-2 ">
<p:commandButton validateClient="true" ajax="false" value="Registrarse" update="mesgs" action="#{registerUser.addNewUser}" icon="pi pi-check" /> <p:commandButton validateClient="true" ajax="false" value="Registrarse" update="mesgs" action="#{RegisterUser.addNewUser}" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -27,7 +27,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -27,7 +27,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -30,23 +30,24 @@
<p:outputLabel value="Tipo de usuario:" for="selUsertype" /> <p:outputLabel value="Tipo de usuario:" for="selUsertype" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:selectOneButton id="selUsertype" value="#{registerUser.userType}" disabled="true" required="true" unselectable="false" <p:selectOneButton id="selUsertype" value="#{RegisterUser.userType}" disabled="true" required="true" unselectable="false"
requiredMessage="Debe especificar un tipo de usuario"> requiredMessage="Debe especificar un tipo de usuario">
<f:selectItems value="#{registerUser.userTypes}" var="item" itemLabel="#{item.userTypename}" itemValue="#{item.name}" /> <f:selectItems value="#{RegisterUser.userTypes}" var="item" itemLabel="#{item.userTypename}" itemValue="#{item.name}" />
</p:selectOneButton> </p:selectOneButton>
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>
</p:panel> </p:panel>
<br/>
<p:panel id="DatosPersonales" header="Actualizar datos personales"> <p:panel id="DatosPersonales" header="Actualizar datos personales">
<div class="ui-g ui-fluid"> <div class="ui-g ui-fluid">
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<h:outputLabel value="value = 10" rendered="#{row == 10}" /> <h:outputLabel value="value = 10" rendered="#{row == 10}" />
<p:outputLabel value="Código de Identificación Personal (CIP):" rendered="#{registerUser.patient}" for="id" /> <p:outputLabel value="Código de Identificación Personal (CIP):" rendered="#{RegisterUser.patient}" for="id" />
<p:outputLabel value="Número de Profesional:" rendered="#{registerUser.familyDoctor or registerUser.specialistDoctor}" for="id" /> <p:outputLabel value="Número de Profesional:" rendered="#{RegisterUser.familyDoctor or RegisterUser.specialistDoctor}" for="id" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="id" value="#{registerUser.id}" disabled="true" required="true" requiredMessage="Por favor, indque su identificador" /> <p:inputText id="id" value="#{RegisterUser.id}" disabled="true" required="true" requiredMessage="Por favor, indque su identificador" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="id" display="text" /> <p:message for="id" display="text" />
@@ -56,7 +57,7 @@
<p:outputLabel value="NIF:" for="nif" /> <p:outputLabel value="NIF:" for="nif" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="nif" value="#{registerUser.nif}" required="true" requiredMessage="Por favor, indque su NIF" /> <p:inputText id="nif" value="#{RegisterUser.nif}" required="true" requiredMessage="Por favor, indque su NIF" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="nif" display="text" /> <p:message for="nif" display="text" />
@@ -66,7 +67,7 @@
<p:outputLabel value="Nombre:" for="name" /> <p:outputLabel value="Nombre:" for="name" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="name" value="#{registerUser.name}" required="true" requiredMessage="Por favor, indique su nombre" /> <p:inputText id="name" value="#{RegisterUser.name}" required="true" requiredMessage="Por favor, indique su nombre" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="name" /> <p:message for="name" />
@@ -76,7 +77,7 @@
<p:outputLabel value="Apellidos:" for="surname" /> <p:outputLabel value="Apellidos:" for="surname" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="surname" value="#{registerUser.surname}" required="true" requiredMessage="Por favor, indique sus apellidos" /> <p:inputText id="surname" value="#{RegisterUser.surname}" required="true" requiredMessage="Por favor, indique sus apellidos" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="surname" /> <p:message for="surname" />
@@ -86,7 +87,7 @@
<p:outputLabel value="Correo electrónico:" for="email" /> <p:outputLabel value="Correo electrónico:" for="email" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:inputText id="email" value="#{registerUser.email}" required="true" requiredMessage="Por favor, especifique su correo electrónico" /> <p:inputText id="email" value="#{RegisterUser.email}" required="true" requiredMessage="Por favor, especifique su correo electrónico" />
</div> </div>
<div class="ui-g-6 ui-md-6"> <div class="ui-g-6 ui-md-6">
<p:message for="email" /> <p:message for="email" />
@@ -95,7 +96,7 @@
<p:outputLabel value="Contraseña" for="password" /> <p:outputLabel value="Contraseña" for="password" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:password id="password" value="#{registerUser.password}" match="passwordRepeat" required="true" requiredMessage="Por favor, especifique una contraseña" maxlength="50" <p:password id="password" value="#{RegisterUser.password}" match="passwordRepeat" required="true" requiredMessage="Por favor, especifique una contraseña" maxlength="50"
feedback="true" promptLabel="Especifique una contraseña segura" weakLabel="La contraseña es débil" goodLabel="La contraseña es buena" strongLabel="La contraseña es segura" feedback="true" promptLabel="Especifique una contraseña segura" weakLabel="La contraseña es débil" goodLabel="La contraseña es buena" strongLabel="La contraseña es segura"
validatorMessage="La contraseña y su verificación deben ser iguales" /> validatorMessage="La contraseña y su verificación deben ser iguales" />
</div> </div>
@@ -106,7 +107,7 @@
<p:outputLabel value="Verificación de contraseña:" for="passwordRepeat" /> <p:outputLabel value="Verificación de contraseña:" for="passwordRepeat" />
</div> </div>
<div class="ui-g-4"> <div class="ui-g-4">
<p:password id="passwordRepeat" value="#{registerUser.password}" required="true" requiredMessage="Por favor, escriba la verificación de su contraseña" maxlength="50" /> <p:password id="passwordRepeat" value="#{RegisterUser.password}" required="true" requiredMessage="Por favor, escriba la verificación de su contraseña" maxlength="50" />
</div> </div>
<div class="ui-g-6"> <div class="ui-g-6">
<p:message for="passwordRepeat" /> <p:message for="passwordRepeat" />
@@ -117,10 +118,10 @@
<p:outputLabel value="Centro:" for="selPHC" /> <p:outputLabel value="Centro:" for="selPHC" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:selectOneMenu id="selPHC" value="#{registerUser.primaryHealthCareCenter}" converter="omnifaces.SelectItemsConverter" required="#{registerUser.familyDoctor}" <p:selectOneMenu id="selPHC" value="#{RegisterUser.primaryHealthCareCenter}" converter="omnifaces.SelectItemsConverter" required="#{RegisterUser.familyDoctor}"
requiredMessage="Por favor, selecciona un centro de antención primaria"> requiredMessage="Por favor, selecciona un centro de antención primaria">
<f:selectItem itemLabel="Seleccione un centro de antención primario..." itemValue="" noSelectionOption="true" /> <f:selectItem itemLabel="Seleccione un centro de antención primario..." itemValue="" noSelectionOption="true" />
<f:selectItems value="#{registerUser.phcList}" var="phc" itemLabel="#{phc.location}" itemValue="#{phc}" /> <f:selectItems value="#{RegisterUser.phcList}" var="phc" itemLabel="#{phc.location}" itemValue="#{phc}" />
<p:column>#{phc.name}</p:column> <p:column>#{phc.name}</p:column>
<p:column>#{phc.location}</p:column> <p:column>#{phc.location}</p:column>
</p:selectOneMenu> </p:selectOneMenu>
@@ -135,10 +136,10 @@
<p:outputLabel value="Especialidad médica:" for="selMS" /> <p:outputLabel value="Especialidad médica:" for="selMS" />
</div> </div>
<div class="ui-g-4 ui-md-4"> <div class="ui-g-4 ui-md-4">
<p:selectOneMenu id="selMS" value="#{registerUser.medicalSpecialty}" converter="omnifaces.SelectItemsConverter" required="#{registerUser.specialistDoctor}" <p:selectOneMenu id="selMS" value="#{RegisterUser.medicalSpecialty}" converter="omnifaces.SelectItemsConverter" required="#{RegisterUser.specialistDoctor}"
requiredMessage="Por favor, seleccione una especialidad médica"> requiredMessage="Por favor, seleccione una especialidad médica">
<f:selectItem itemLabel="Seleccione una especialidad médica..." itemValue="" noSelectionOption="true" /> <f:selectItem itemLabel="Seleccione una especialidad médica..." itemValue="" noSelectionOption="true" />
<f:selectItems value="#{registerUser.medicalSpecialtiesList}" var="ms" itemLabel="#{ms.description}" itemValue="#{ms}" /> <f:selectItems value="#{RegisterUser.medicalSpecialtiesList}" var="ms" itemLabel="#{ms.description}" itemValue="#{ms}" />
<p:column>#{ms.name}</p:column> <p:column>#{ms.name}</p:column>
<p:column>#{ms.description}</p:column> <p:column>#{ms.description}</p:column>
</p:selectOneMenu> </p:selectOneMenu>
@@ -151,10 +152,10 @@
<div class="ui-g-12 ui-g-nopad"> <div class="ui-g-12 ui-g-nopad">
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
<div class="ui-g-2 ui-md-2 "> <div class="ui-g-2 ui-md-2 ">
<p:commandButton validateClient="true" value="Registrarse" update="mesgs" action="#{registerUser.addNewUser}" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Registrarse" update="mesgs" action="#{RegisterUser.addNewUser}" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -26,7 +26,7 @@
<p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" /> <p:commandButton validateClient="true" value="Guardar" update="mesgs" icon="pi pi-check" />
</div> </div>
<div class="ui-g-2 ui-md-2"> <div class="ui-g-2 ui-md-2">
<p:button value="Volver" outcome="home" icon="pi pi-home" /> <p:button value="Volver" outcome="/home" icon="pi pi-home" />
</div> </div>
<div class="ui-g-4 ui-md-4"></div> <div class="ui-g-4 ui-md-4"></div>
</div> </div>

View File

@@ -34,7 +34,7 @@ public class MenuMBean implements Serializable {
DefaultMenuItem item; DefaultMenuItem item;
DefaultSubMenu subMenu; DefaultSubMenu subMenu;
model.addElement(createMenuItem("Home", "pi pi-home", "home", null)); model.addElement(createMenuItem("Home", "pi pi-home", "/home", null));
if (SessionUtils.isLogedIn() == true) { if (SessionUtils.isLogedIn() == true) {
@@ -42,10 +42,10 @@ public class MenuMBean implements Serializable {
// TODO: mostrar este menú solo si el usuario es administrador // TODO: mostrar este menú solo si el usuario es administrador
if (1 == 1) { if (1 == 1) {
subMenu = new DefaultSubMenu("Administración del sistema", "pi pi-cog"); subMenu = new DefaultSubMenu("Administración del sistema", "pi pi-cog");
subMenu.addElement(createMenuItem("Esp. médicas", "pi pi-calendar", "ManageMedicalSpecialties", null)); subMenu.addElement(createMenuItem("Esp. médicas", "pi pi-calendar", "/systemAdmin/ManageSpecialties", null));
subMenu.addElement(createMenuItem("Centros At. Primaria", "pi pi-briefcase", "ManageCAPs", null)); subMenu.addElement(createMenuItem("Centros At. Primaria", "pi pi-briefcase", "/systemAdmin/ManageSpecialties", null));
subMenu.addElement(new DefaultSeparator()); subMenu.addElement(new DefaultSeparator());
subMenu.addElement(createMenuItem("Añadir usuario Admin", "pi pi-calendar", "AddUserAdmin", null)); subMenu.addElement(createMenuItem("Añadir usuario Admin", "pi pi-calendar", "/systemAdmin/ManageSpecialties", null));
model.addElement(subMenu); model.addElement(subMenu);
} }
@@ -53,8 +53,8 @@ public class MenuMBean implements Serializable {
// TODO: mostrar este menú solo si el usuario es paciente // TODO: mostrar este menú solo si el usuario es paciente
if (1 == 1) { if (1 == 1) {
subMenu = new DefaultSubMenu("Visitas", "pi pi-calendar"); subMenu = new DefaultSubMenu("Visitas", "pi pi-calendar");
subMenu.addElement(createMenuItem("Agendar", "pi pi-calendar", "ScheduleVisit", null)); subMenu.addElement(createMenuItem("Agendar", "pi pi-calendar", "/visit/VisitView", null));
subMenu.addElement(createMenuItem("Consultar", "pi pi-briefcase", "QueryVisit", null)); subMenu.addElement(createMenuItem("Consultar", "pi pi-briefcase", "/visit/VisitView", null));
model.addElement(subMenu); model.addElement(subMenu);
} }
@@ -63,12 +63,12 @@ public class MenuMBean implements Serializable {
if (1 == 1) { if (1 == 1) {
subMenu = new DefaultSubMenu("Pruebas Medicas", "pi pi-clone"); subMenu = new DefaultSubMenu("Pruebas Medicas", "pi pi-clone");
subMenu.addElement(createMenuItem("Añadir", "pi pi-clone", "AddMedicalTest", null)); subMenu.addElement(createMenuItem("Añadir", "pi pi-clone", "/medicaltest/MedicalTests", null));
subMenu.addElement(createMenuItem("Gestionar", "pi pi-briefcase", "MedicaltestManage", null)); subMenu.addElement(createMenuItem("Gestionar", "pi pi-briefcase", "/medicaltest/MedicalTests", null));
subMenu.addElement(new DefaultSeparator()); subMenu.addElement(new DefaultSeparator());
subMenu.addElement(createMenuItem("Consultar médicos pro esp.", "pi pi-search", "QueryDoctorBySpecialty", null)); subMenu.addElement(createMenuItem("Consultar médicos pro esp.", "pi pi-search", "/medicaltest/MedicalTests", null));
subMenu.addElement(new DefaultSeparator()); subMenu.addElement(new DefaultSeparator());
subMenu.addElement(createMenuItem("Listar médicos", "pi pi-list", "ListDoctorsbySpecialty", null)); subMenu.addElement(createMenuItem("Listar médicos", "pi pi-list", "/medicaltest/MedicalTests", null));
model.addElement(subMenu); model.addElement(subMenu);
} }
@@ -78,10 +78,10 @@ public class MenuMBean implements Serializable {
subMenu = new DefaultSubMenu("Preguntas", "pi pi-clone"); subMenu = new DefaultSubMenu("Preguntas", "pi pi-clone");
// TODO: Si es paciente puede preguntar // TODO: Si es paciente puede preguntar
if (true == true) if (true == true)
subMenu.addElement(createMenuItem("Añadir pregunta", "pi pi-clone", "AskQuestion", null)); subMenu.addElement(createMenuItem("Añadir pregunta", "pi pi-clone", "/medicaltest/MedicalTests", null));
// TODO: Si es medico de familia puede responder // TODO: Si es medico de familia puede responder
if (true == true) if (true == true)
subMenu.addElement(createMenuItem("Responder pregunta", "pi pi-question", "AnswerQuestion", null)); subMenu.addElement(createMenuItem("Responder pregunta", "pi pi-question", "/medicaltest/MedicalTests", null));
model.addElement(subMenu); model.addElement(subMenu);
} }
@@ -90,24 +90,24 @@ public class MenuMBean implements Serializable {
// Perfil // Perfil
subMenu = new DefaultSubMenu("Gestionar perfil", "pi pi-id-card"); subMenu = new DefaultSubMenu("Gestionar perfil", "pi pi-id-card");
if (SessionUtils.isLogedIn() == false) { if (SessionUtils.isLogedIn() == false) {
subMenu.addElement(createMenuItem("Registro de usuario", "pi pi-users", "RegisterUser", null)); subMenu.addElement(createMenuItem("Registro de usuario", "pi pi-users", "/profile/RegisterUser", null));
subMenu.addElement(createMenuItem("Registro de paciente", "pi pi-user-plus", "AddPatient", null)); subMenu.addElement(createMenuItem("Registro de paciente", "pi pi-user-plus", "/profile/AddPatient", null));
subMenu.addElement(createMenuItem("Registro de médico", "pi pi-user-plus", "AddFamilyDoctor", null)); subMenu.addElement(createMenuItem("Registro de médico", "pi pi-user-plus", "/profile/AddFamilyDoctor", null));
subMenu.addElement(createMenuItem("Registro de especialista", "pi pi-user-plus", "AddFamilyDoctor", null)); subMenu.addElement(createMenuItem("Registro de especialista", "pi pi-user-plus", "/profile/AddFamilyDoctor", null));
subMenu.addElement(createMenuItem("Registro de médico", "pi pi-user-plus", "AddSpecialistDoctor", null)); subMenu.addElement(createMenuItem("Registro de médico", "pi pi-user-plus", "/profile/AddSpecialistDoctor", null));
subMenu.addElement(new DefaultSeparator()); subMenu.addElement(new DefaultSeparator());
} else { } else {
subMenu.addElement(createMenuItem("Actualizar mi perfil", "pi pi-user-edit", "UpdateProfile", null)); subMenu.addElement(createMenuItem("Actualizar mi perfil", "pi pi-user-edit", "/profile/UpdateProfile", null));
subMenu.addElement(new DefaultSeparator()); subMenu.addElement(new DefaultSeparator());
// TODO: mostrar este menú solo si el usuario es paciente // TODO: mostrar este menú solo si el usuario es paciente
if (true == true) { if (true == true) {
subMenu.addElement(createMenuItem("Cambiar médico de familia", "pi pi-chevron-circle-right", "ChangeFamilyDoctor", null)); subMenu.addElement(createMenuItem("Cambiar médico de familia", "pi pi-chevron-circle-right", "/profile/ChangeFamilyDoctor", null));
subMenu.addElement(new DefaultSeparator()); subMenu.addElement(new DefaultSeparator());
} }
// TODO: mostrar este menú solo si el usuario es médico de familia // TODO: mostrar este menú solo si el usuario es médico de familia
if (true == true) if (true == true)
subMenu.addElement(createMenuItem("Cambiar CAP", "fa fa-h-square", "changecap", null)); subMenu.addElement(createMenuItem("Cambiar CAP", "fa fa-h-square", "/profile/ChangePrimaryHealthCareCenter", null));
} }
model.addElement(subMenu); model.addElement(subMenu);
} }

View File

@@ -36,7 +36,7 @@ import managedbean.common.ValidationUtils;
* @author Marcos García Núñez (mgarcianun@uoc.edu) * @author Marcos García Núñez (mgarcianun@uoc.edu)
* *
*/ */
@Named("registerUser") @Named("RegisterUser")
@ViewScoped @ViewScoped
public class RegisterUserMBean extends ManagedBeanBase implements Serializable { public class RegisterUserMBean extends ManagedBeanBase implements Serializable {

View File

@@ -41,7 +41,6 @@ public class LoginMBean extends ManagedBeanBase {
} }
public String login() { public String login() {
FacesMessage message = null;
boolean loggedIn = false; boolean loggedIn = false;
LoggedUserTO usr = null; LoggedUserTO usr = null;
@@ -56,7 +55,7 @@ public class LoginMBean extends ManagedBeanBase {
this.addFacesMessageKeep(FacesMessage.SEVERITY_INFO, "Login correcto", "Bienvenido " + usr.getName()); this.addFacesMessageKeep(FacesMessage.SEVERITY_INFO, "Login correcto", "Bienvenido " + usr.getName());
return ("home?faces-redirect=true"); return ("/home?faces-redirect=true");
} else } else
this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Loggin Error", "El usuario o la contraseña son incorrectos"); this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Loggin Error", "El usuario o la contraseña son incorrectos");
} catch (Exception ex) { } catch (Exception ex) {
@@ -66,7 +65,6 @@ public class LoginMBean extends ManagedBeanBase {
} else } else
this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Loggin Error", "El usuario o la contraseña son incorrectos"); this.addFacesMessage(FacesMessage.SEVERITY_WARN, "Loggin Error", "El usuario o la contraseña son incorrectos");
FacesContext.getCurrentInstance().addMessage(null, message);
PrimeFaces.current().ajax().addCallbackParam("loggedIn", loggedIn); PrimeFaces.current().ajax().addCallbackParam("loggedIn", loggedIn);
return ""; return "";
@@ -78,6 +76,6 @@ public class LoginMBean extends ManagedBeanBase {
SessionUtils.DestroySession(); SessionUtils.DestroySession();
return "home?faces-redirect=true"; return "/home?faces-redirect=true";
} }
} }