Vistas admin

Por último vamos con las vistas creamos en src/main/webapp el archivo plantilla.xhtml
 
   
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
 <ui:insert name="header">
				<ui:include src="encabezado.xhtml"></ui:include>
</ui:insert>
  <ui:insert name="content">
				<ui:include src="contenido.xhtml"></ui:include>
</ui:insert>      
        
    </h:body>
</html>
  
       
     

En el mismo directorio creamos la clase encabezado.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
    <ui:composition>
        <div class="card">
    <h:form>
<p:growl id="messages"/>
<p:menubar>
<p:submenu label="Administración Liga" icon="ui-icon-document">
<p:menuitem value="Información"    />
<p:menuitem value="Administración Equipos"    />
<p:separator />

</p:submenu>

</p:menubar>

</h:form>

</div>
        
    </ui:composition>    
                
        
    </h:body>
</html>
  
         
     

Creamos el archivo contenido.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
  <ui:composition>
     
       <h1>Bienvenido a Liga Azteca</h1>
      
      
        
  </ui:composition>              
        
    </h:body>
</html>
  
   
     

Realizamos la vista login.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    <div style="margin:0 auto;width:70%">
 <ui:composition template="plantilla.xhtml" >
 <ui:define name="content"  >
 
 
 
 <h:form>
 <p:growl id="messagesLogin"/>
  <p:panel header="Ingresar usuario y contraseña  Liga Azteca Atizapan" footer="Tutosoftware">
  
  
  <h:panelGrid columns="2" cellpadding="5">
<h:outputLabel value="Email:" for="email"  style="color:white" />
<p:inputText id="email"   value="#{loginView.email}" required="true" label="usuario">
</p:inputText>

<h:outputLabel value="Contraseña:" for="password" style="color:white"  />
<p:password id="password" value="#{loginView.password}"     required="true" label="password">
</p:password>

<f:facet name="footer">

<p:commandButton  value="Acceder" action="#{loginView.loginLiga}" update="messagesLogin" >  </p:commandButton>

</f:facet>

</h:panelGrid>
  
  
  
  
        
   </p:panel>
 
 
 
 
 
 
 
 </h:form>
 
 
 

 
 
 
 </ui:define>
 </ui:composition>
 
      </div>   
    </h:body>
</html>
  
   
     

Creamos el segundo template que es el administrador en el mismo directorio creamos plantillaAdmin.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
 <ui:insert name="headerAdmin">
				<ui:include src="encabezadoAdmin.xhtml"></ui:include>
</ui:insert>
  <ui:insert name="contentAdmin">
				<ui:include src="contenidoAdmin.xhtml"></ui:include>
</ui:insert>      
        
    </h:body>
</html>
  
  
  
  
     

Creamos el archivo encabezadoAdmin.xhtml
 
   
   <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:c="http://java.sun.com/jstl/core">
  
    <h:head>
    </h:head>

    <h:body>
    
    
    <ui:composition>
        <div class="card">
    <h:form>
<p:growl id="messages"/>
<p:menubar>
<p:submenu label="Liga de Futbol Soccer Azteca Atizapan" icon="ui-icon-document">
<p:menuitem value="Generar Torneo"  outcome="agregarTorneo.xhtml" />

<p:separator />

</p:submenu>
<p:submenu label="Acciones" icon="ui-icon-pencil">


</p:submenu>


<p:menuitem value="Salir" action="#{loginView.logout()}" icon="ui-icon-close" />

</p:menubar>

</h:form>

</div>
        
    </ui:composition>    
                
        
    </h:body>
</html>
   
   
   
     

Creamos el archivo contenidoAdmin.xhtml
 
   
  
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    
  <ui:composition>
     
       <h1>Liga de Futbol Azteca de Atizapan</h1>
      
      <p>Elige la opción de menú que necesites realizar.</p>
      
      
      
      
      
      
        
  </ui:composition>              
        
    </h:body>
</html>
  
  
  
     

Cremos el archivo admin.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    <ui:composition template="plantillaAdmin.xhtml">
	</ui:composition>
    
        
        
                
        
    </h:body>
</html>
  
  
  
 
     

Creamos el archivo agregarTorneo.xhtml
 
   
  <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">
    
    <h:head>
    </h:head>

    <h:body>
    
    <div style="margin:0 auto;width:70%">
 <ui:composition template="plantillaAdmin.xhtml" >
 <ui:define name="contentAdmin"  >
 
 
 
 <h:form  id="form">
 <p:growl id="messagesLogin"/>
  <p:panel header="Agregar Torneo de Liga" footer="Tutosoftware 2021">
  
  
  <h:panelGrid columns="3" cellpadding="5">
<h:outputLabel value="Nombre del Torneo:" for="nombreTorneo"  style="color:white" />
<p:inputText id="nombreTorneo"   value="#{torneoView.nombreTorneo}" 
 size="100" required="true" requiredMessage="Nombre del torneo requerido" >
</p:inputText>
<p:message for="nombreTorneo"   ></p:message>


<h:outputLabel value="Cupo de equipos:" for="cantidadEquipos"  style="color:white" />
 <p:selectOneMenu id="cantidadEquipos" value="#{torneoView.cantidadEquipos}" 
 required="true" requiredMessage="Cupo requerido">
                <f:selectItem itemLabel="Seleccionar número de equipos" itemValue=""/>
                <f:selectItem itemLabel="2" itemValue="2"/>
                <f:selectItem itemLabel="3" itemValue="3"/>
                <f:selectItem itemLabel="4" itemValue="4"/>
                <f:selectItem itemLabel="5" itemValue="5"/>
                <f:selectItem itemLabel="6" itemValue="6"/>
                <f:selectItem itemLabel="7" itemValue="7"/>
                <f:selectItem itemLabel="8" itemValue="8"/>
                <f:selectItem itemLabel="9" itemValue="9"/>
                <f:selectItem itemLabel="10" itemValue="10"/>
                <f:selectItem itemLabel="11" itemValue="11"/>
                <f:selectItem itemLabel="12" itemValue="12"/>
                <f:selectItem itemLabel="13" itemValue="13"/>
                <f:selectItem itemLabel="14" itemValue="14"/>
                <f:selectItem itemLabel="15" itemValue="15"/>
                <f:selectItem itemLabel="16" itemValue="16"/>
                <f:selectItem itemLabel="17" itemValue="17"/>
                <f:selectItem itemLabel="18" itemValue="18"/>
                <f:selectItem itemLabel="19" itemValue="19"/>
                <f:selectItem itemLabel="20" itemValue="20"/>
           <f:facet name="footer">
                        <p:divider styleClass="p-mt-0" />
                        <h:outputText value="19 opciones" style="font-weight:bold;color:white"/>
                    </f:facet>
                </p:selectOneMenu>
<p:message for="cantidadEquipos"   ></p:message>            

<h:outputLabel value="Costo de inscripción:" for="costoInscripcion"  style="color:white" />
<p:inputNumber id="costoInscripcion" value="#{torneoView.costoInscripcion}" modifyValueOnWheel="false" 
 size="40" required="true" requiredMessage="Costo de inscripción requerido" >
</p:inputNumber>
<p:message for="costoInscripcion"   ></p:message>



<h:outputLabel value="Número de jugadores registrados por equipo:" for="numJugPorEquipo"  style="color:white" />
<p:inputNumber id="numJugPorEquipo" value="#{torneoView.numJugPorEquipo}" modifyValueOnWheel="false" 
 size="3" required="true" requiredMessage="Numero de jugadores requerido" >
</p:inputNumber>
<p:message for="numJugPorEquipo"   ></p:message>



<h:outputLabel value="Número de vueltas:" for="numVueltas"  style="color:white" />
 <p:selectOneMenu id="numVueltas" value="#{torneoView.numVueltas}" 
 required="true" requiredMessage="Número de vueltas requerido">
                <f:selectItem itemLabel="Seleccionar número de vueltas" itemValue=""/>
                <f:selectItem itemLabel="1" itemValue="1"/>
                <f:selectItem itemLabel="2" itemValue="2"/>
               
           <f:facet name="footer">
                        <p:divider styleClass="p-mt-0" />
                        <h:outputText value="2 opciones" style="font-weight:bold;color:white"/>
                    </f:facet>
                </p:selectOneMenu>
<p:message for="numVueltas"   ></p:message>  


<h:outputLabel value="Refuerzos:" for="refuerzos"  style="color:white" />
<p:inputNumber id="refuerzos" value="#{torneoView.refuerzos}" modifyValueOnWheel="false" 
 size="2" required="true" requiredMessage="Numero de refuerzos requerido" >
</p:inputNumber>
<p:message for="refuerzos"   ></p:message>




<f:facet name="footer">

<p:commandButton  value="Crear Torneo"  action="#{torneoView.crearTorneo}" update="form" ></p:commandButton>

</f:facet>

</h:panelGrid>
  
  
  
  
        
   </p:panel>
 
 
 
  </h:form>	
 
 
 
 </ui:define>
 </ui:composition>
 
      </div>   
    </h:body>
</html>