<%--
 * Copyright by Intland Software
 *
 * All rights reserved.
 *
 * This software is the confidential and proprietary information
 * of Intland Software. ("Confidential Information"). You
 * shall not disclose such Confidential Information and shall use
 * it only in accordance with the terms of the license agreement
 * you entered into with Intland.
 *
 * $Revision$ $Date$
--%>

<%@ taglib uri="jstl-c" prefix="c" %>
<%@ taglib uri="jstl-fmt" prefix="fmt" %>
<%@ taglib uri="jstl-fn" prefix="fn" %>

<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>

<%@ taglib uri="taglib" prefix="tag" %>
<%@ taglib uri="uitaglib" prefix="ui" %>

<meta name="decorator" content="main">
<meta name="module" content="sysadmin">
<meta name="stylesheet" content="sysadmin.css">

<%
	int fieldCounter = 1;
	int importCounter = 1;
%>

<ui:actionMenuBar>
	<span class="titlenormal"><ui:pageTitle>Assign Columns of Imported Data</ui:pageTitle></span>
</ui:actionMenuBar>

<c:set var="nr_of_records" value="${fn:length(importForm.dataList)}" />
<c:set var="nr_of_fields" value="${fn:length(importForm.dataList[0])}" />

<form:form commandName="importForm" action="${flowUrl}">

<form:errors cssClass="error"/>

<div class='actionBar'>
	&nbsp;&nbsp;<input type="submit" class="button" name="_eventId_back" value="&lt; Back" />
	&nbsp;&nbsp;<input type="submit" class="button" name="_eventId_next" value="Next &gt;" />
	&nbsp;&nbsp;<input type="submit" class="button" name="_eventId_cancel" value="Cancel" />
</div>

<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="0">

<TR>
	<TD NOWRAP CLASS="mandatory">&nbsp;Start Import at Row:&nbsp;</TD>

	<TD><form:input size="4" path="startImportAtRow" cssClass="fixSelectWidth" /></TD>
</TR>

<c:forEach var="field" items="${importForm.fieldList}">
<c:set var="fieldCounter" value="<%=Integer.toString(fieldCounter++)%>"/>
<TR>
	<c:if test="${field.mandatory}">
<%
	importCounter = 1;
%>
		<TD NOWRAP CLASS="mandatory">&nbsp;<c:out value="${field.description}"/>:&nbsp;</TD>
		<TD>
			<form:select path="importFieldMap[${fieldCounter}]">
				<c:forEach var="importField" items="${importForm.importMandatoryOptions}">
					<c:set var="importCounter" value="<%=Integer.toString(importCounter++)%>"/>
					<form:option label="${importField}" value="${importCounter}"/>
				</c:forEach>
			</form:select>
		</TD>
	</c:if>
	<c:if test="${!field.mandatory}">
<%
	importCounter = 0;
%>
		<TD NOWRAP CLASS="optional">&nbsp;<c:out value="${field.description}"/>:&nbsp;</TD>
		<TD>
			<form:select path="importFieldMap[${fieldCounter}]">
				<c:forEach var="importField" items="${importForm.importOptionalOptions}">
					<c:set var="importCounter" value="<%=Integer.toString(importCounter++)%>"/>
					<form:option label="${importField}" value="${importCounter}"/>
				</c:forEach>
			</form:select>
		</TD>
	</c:if>
</TR>
</c:forEach>

</TABLE>

</form:form>

<c:set var="maxPreviewSize" value="25" />

Scanned <STRONG><fmt:formatNumber value="${nr_of_records}" /></STRONG> rows
and <STRONG><fmt:formatNumber value="${nr_of_fields}" /></STRONG> columns.

<c:if test="${nr_of_records gt maxPreviewSize}">
	(The list below is truncated to <STRONG><fmt:formatNumber value="${maxPreviewSize}" /></STRONG> rows.)
</c:if>

<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0">
<%	int counter = 0;	%>

	<TR CLASS="head">
	<c:forEach begin="1" end="${nr_of_fields}" var="current">
		<TH CLASS="textData"><c:out value="[${current}]" /></TH>
		<tag:tableColumnSeparator header="true" />
	</c:forEach>
	</TR>

	<c:forEach items="${importForm.dataList}" var="record" end="${maxPreviewSize - 1}">
		<TR VALIGN="top" CLASS="<%=((counter++ % 2) == 0 ? "even" : "odd")%>">
			<c:forEach items="${record}" var="column">
				<TD CLASS="textDataWrap"><c:out value="${column}" /></TD>

				<tag:tableColumnSeparator />
			</c:forEach>
		</TR>
	</c:forEach>
</TABLE>