<?xml version="1.0" encoding="UTF-8"?>
<!--
	* Licensed to the Apache Software Foundation (ASF) under one or more
	* contributor license agreements.  See the NOTICE file distributed with
	* this work for additional information regarding copyright ownership.
	* The ASF licenses this file to You under the Apache License, Version 2.0
	* (the "License"); you may not use this file except in compliance with
	* the License.  You may obtain a copy of the License at
	*
	*      http://www.apache.org/licenses/LICENSE-2.0
	*
	* Unless required by applicable law or agreed to in writing, software
	* distributed under the License is distributed on an "AS IS" BASIS,
	* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
	* See the License for the specific language governing permissions and
	* limitations under the License.
-->

<ui:composition xmlns:c="http://java.sun.com/jsp/jstl/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:tc="http://myfaces.apache.org/tobago/component">

	<c:set var="replaceNavigation" value="true" />
	<c:if test="${empty navigationSource}" >
		<c:set var="replaceNavigation" value="false" />
	</c:if>

	<c:if test="${empty isPreviousRendered}">
		<c:set var="isPreviousRendered" value="true" />
	</c:if>
	
	<c:choose>
		<!-- replace navigation -->
		<c:when test="${replaceNavigation}" >
			<ui:include src="${navigationSource}" />
		</c:when>
		
		<!-- default navigation -->
		<c:otherwise>
			<tc:panel>
				<f:facet name="layout">
					<tc:gridLayout columns="*;auto;auto;auto;auto" />
				</f:facet>
				
				<c:if test="${!controller.previousAvailable or (controller.backwardNavigationStrategy == 'notallowed')}" >
					<c:set var="previousDisabled" value="true" />
				</c:if>
			
				<tc:cell />
				<tc:button action="${controller.previous}"
					rendered="${isPreviousRendered}"
					disabled="${previousDisabled}" 
					immediate="${controller.backwardNavigationImmediate}"
					label="Previous" />
				<tc:button action="${controller.next}"
					disabled="${!controller.nextAvailable}"
					label="Next" />
				<tc:button action="${controller.finish}"
					disabled="${!controller.finishAvailable}"
					label="Finish" />
				<tc:button action="${controller.cancel}"
					label="Cancel"
					immediate="true" />
			
			</tc:panel>
		</c:otherwise>
	</c:choose>

</ui:composition>
