viplist.xhtml 3.71 KB
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<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:body>
	<ui:composition template="#{sessionHandler.template}">

		<f:metadata>
			<f:event type="preRenderView" listener="#{vipListView.initView}" />
		</f:metadata>


		<ui:define name="content">

			<h:form id="vipform">

				<br /><br />


				<p:dataTable paginator="true" rows="100" id="vipList" value="#{vipListView.viplist}" widgetVar="viplist" styleClass="moya_datatable4" var="vip" >

					<f:facet name="header">
						<p:outputPanel>
							<h:outputText value="Search all fields:" />
							<p:inputText id="globalFilter" onkeyup="PF('viplist').filter()" style="width:150px" placeholder="Enter keyword" />
						</p:outputPanel>
					</f:facet>

					<p:column headerText="#{i18n['vip.hostsName']}" filterBy="#{vip.host.wholeName}" filterMatchMode="contains" style="width: 140px;">

					<!-- p:column headerText="#{i18n['vip.hostsName']}" style="width: 140px;" -->
						<h:link id="viphostsname" outcome="/useradmin/edit" value="#{vip.host.wholeName}" >
							<f:param name="id" value="#{vip.host.id}" />
						</h:link>
						 <p:tooltip id="viphostsnamephone" for="viphostsname" value="#{vip.host.phone}" />
					</p:column>

					<p:column headerText="#{i18n['vip.description']}" filterBy="#{vip.shortDisplayDescr}" filterMatchMode="contains">
					<!-- p:column headerText="#{i18n['vip.shortdescr']}" style="width: 170px;" -->
						<h:outputText id="vipdescr" value="#{vip.shortDisplayDescr}" title="#{vip.description}" />
					</p:column>

					<p:column headerText="#{i18n['vip.description']}" filterBy="#{vip.description}" filterMatchMode="contains">
						<h:outputText value="#{vip.description}"/>
					</p:column>

					<p:column filterBy="#{vip.searchableProductnames}" filterMatchMode="contains" headerText="#{i18n['vip.products']} | #{i18n['vip.productQuantity']} | #{i18n['vip.productDelivered']}">
					<!-- p:column headerText="#{i18n['vip.products']} | #{i18n['vip.productQuantity']} | #{i18n['vip.productDelivered']}" -->
						<h:dataTable border="0" var="prod" value="#{vip.products}" id="products">
							<p:column>
								<h:outputText title="#{prod.notes}" value="#{prod.productName}" />
							</p:column>
							<p:column>
								<h:outputText value="#{prod.quantity}">
									<f:convertNumber maxFractionDigits="3" minFractionDigits="0" />
								</h:outputText>
							</p:column>
							<p:column>
								<h:outputText value="#{prod.delivered}">
									<f:convertNumber maxFractionDigits="3" minFractionDigits="0" />
								</h:outputText>
							</p:column>
						</h:dataTable>
					</p:column>

					<p:column style="width: 90px; text-align: center;">
						<p:commandButton id="delivebtn" rendered="#{not empty vip.id}" value="#{i18n['vip.deliver']}" actionListener="#{vipListView.deliverDialog(vip)}" >
							<p:ajax event="dialogReturn" listener="#{vipListView.updateViplist()}" update="products" />
						</p:commandButton>
					</p:column>
					<p:column  style="width: 70px;">
						<h:link outcome="/vip/edit" value="#{i18n['vip.edit']}" >
							<f:param name="id" value="#{vip.id}" />
						</h:link>
					</p:column>
					<p:column  style="width: 70px;">
						<p:commandLink actionListener="#{vipListView.deleteEntry(vip)}" update="vipList" rendered="#{empty vip.products}">
							<h:outputText value="#{i18n['vip.delete']}"/>
						</p:commandLink>
					</p:column>
				</p:dataTable>
			</h:form>
		</ui:define>

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