<%@  page pageEncoding="utf-8" contentType="text/html;charset=utf-8" import="com.novell.webaccess.common.JSPConduit,
                  java.util.ResourceBundle,
                  com.novell.emframe.dev.eMFrameUtils" %>
<%   JSPConduit c = JSPConduit.getJSPConduit(request);
   c.stringTable("DevResources");
   c.stringTable("BaseResources"); %>
<%@ taglib uri="/WEB-INF/iman.tld" prefix="iman" %>
<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
<%@ taglib uri="/WEB-INF/x.tld" prefix="x" %>




<iman:stringtable bundle="DevResources"/>
<x:parse xml="${edas}" var="edasXml"/>



<HTML>
<HEAD>
   <TITLE><iman:string key="ProductName"/></TITLE>
   <LINK rel="stylesheet" href="<c:out value="${ContextPath}" />/portal/modules/dev/css/hf_style.css">
   <iman:uihandlerTools/>
   <iman:pageScripts/>
   <iman:eMFrameScripts/>
   <iman:validateNumberScripts/>
   <iman:mvedScripts mode="mvsel"/><%-- Always include for the description field --%>
   <c:if test="${DeviceType=='browser'}">
      <iman:mvedScripts mode="mvie"/>
   </c:if>
   <SCRIPT language="JavaScript" src="<%= c.getModulesUrl() + "/dev/javascripts/" %>MVStringEditor.js"></script>
   <SCRIPT language="JavaScript" src="<%= c.getModulesUrl() + "/dev/javascripts/" %>MVStringEditorIE.js"></script>
   
   <SCRIPT>
   		function mvedChange(name){
        	 //alert("An MVStringEditor has changed: "+name);
         	if(name != null || name != ""){
    	    	var editorName=""+name;
        	 	var telephoneNumberVal = document.forms[0]._Telephone_Number.value;
				var faxNumberVal = document.forms[0]._Facsimile_Telephone_Number.value;
				var returnValTel = validationLogic(telephoneNumberVal);
				var returnValFax = validationLogic(faxNumberVal);
		         //alert("editorName"+editorName);
				if(editorName=="_Telephone_Number" && returnValTel== "success"){
					var mvse = eval("window.mv" + name);
					if(mvse.m_mode=="mvie"){
	               		mvse.m_tb.value="";
	               		if(mvse.m_tb.value=="" && mvse.m_list.length>0){
         					for(var i=mvse.m_selectedRow; i<mvse.m_list.length-1; i++)
         						mvse.m_list[i] = mvse.m_list[i+1];
         					mvse.m_list.length = mvse.m_list.length-1;
         					mvieShowListUnderneath(mvse);
         					mvieOnChange(mvse);
      					}
	            	}else{
						javascript:mvselRemove(mvse);
					}
					alert("<%= c.string("ModifyUser.PhoneNumber.FullWidth") %>");
					document.forms[0]._Telephone_Number.focus();
					return;
				}
            	if(editorName=="_Facsimile_Telephone_Number" && returnValFax== "success"){
					var mvse = eval("window.mv" + name);
					if(mvse.m_mode=="mvie"){
	               		mvse.m_tb.value="";
	               		if(mvse.m_tb.value=="" && mvse.m_list.length>0){
         					for(var i=mvse.m_selectedRow; i<mvse.m_list.length-1; i++)
         						mvse.m_list[i] = mvse.m_list[i+1];
         					mvse.m_list.length = mvse.m_list.length-1;
         					mvieShowListUnderneath(mvse);
         					mvieOnChange(mvse);
      					}
	            	}else{
						javascript:mvselRemove(mvse);
					}
					alert("<%= c.string("ModifyUser.FaxNumber.FullWidth") %>");
					document.forms[0]._Facsimile_Telephone_Number.focus();
					return;
				}
			}
		}

		function validationLogic(input){
			var FULLWIDTH_CHAR_MIN_RANGE = "FF01";
			var FULLWIDTH_CHAR_MAX_RANGE = "FF60";
			var FULLWIDTH_SIGN_MIN_RANGE = "FFE0";
			var FULLWIDTH_SIGN_MAX_RANGE = "FFE6";
			var result="fail";
			for (var counter = 0; counter <= input.length - 1; counter++) {
				var charAscii=input.charCodeAt(counter);
				if ((charAscii > h2d(FULLWIDTH_CHAR_MIN_RANGE) 
						&& charAscii < h2d (FULLWIDTH_CHAR_MAX_RANGE))
						||(charAscii > h2d(FULLWIDTH_SIGN_MIN_RANGE) 
						&& charAscii < h2d(FULLWIDTH_SIGN_MAX_RANGE))) {
					result="success";	
					if(result == "success"){
						return result;
					}
					}else{
						result="fail"
					}
			}
			return result;
  		}



  		function d2h(d) {
    		return d.toString(16);
     	}
		
  		function h2d(h) {
			return parseInt(h,16);
     	}
   
      function onInit()
      {
         <%-- Other name --%>
         <c:if test="${taskIsMoo=='false'}">
            mvLoadFromPack("_CN", "<iman:toScript><c:out value="${otherName}"/></iman:toScript>");
         </c:if>
      }

      function isPageValid()
      {
         var form=document.forms[0];

         <%-- Other name --%>
         <c:if test="${otherNameRights=='RW' && taskIsMoo!='true'}">
            form.otherName.value = mvGetValuesAsPack("_CN" );
         </c:if>

         return notifyAllOfExit();
      }

   </SCRIPT>
</HEAD>

<BODY onLoad="onInit();">
<FORM name="form" method=post action="webacc">
   <iman:include page="dev/Messagebar_inc.jsp"/>
   <iman:include page="dev/BookVars_inc.jsp"/>


   <TABLE class="mediumtext" border="0" cellpadding="0" cellspacing="0">


      <%-- Other name --%>
      <c:if test="${taskIsMoo=='false'}">
      <TR>
         <TD align="left" colspan="2">
            <iman:string key="OtherName"/>:&nbsp;
         </TD>
      </TR>
      <TR>
         <TD>
            <c:if test="${otherNameRights=='RW'  || taskIsMoo=='true'}">
               <INPUT type="hidden" name="otherName" value="">
            </c:if>
            <iman:mved name="_CN" minLength="1" maxLength="64" ignoreCase="true" enforceUnique="true" readonly="${otherNameRights!='RW'}"  />
         </TD>
         <TD valign="top">
         </TD>
      </TR>
      <TR><TD height="9"></TD></TR>
      </c:if>


      <%-- L --%>
      <TR>
         <TD align="left" colspan="2">
            <c:out value="${LDisplayName}"/>:&nbsp;&nbsp;
         </TD>
      </TR>
      <TR>
         <TD>
            <c:if test="${edasRights.target.L.writeable  || taskIsMoo=='true'}">
               <INPUT type="hidden" name="eDir$target$L" value="<c:out value="${eDir$target$L}" escapeXml="false"/>">
               <SCRIPT>addToNotificationList('L', 'uih_mvStringEditor');</SCRIPT>
            </c:if>
            <x:set var="MVStringEditor_xmlNodeSet" select="$edasXml/edas/L" scope="request"/>
            <iman:mved maxLength="128" readonly="${!edasRights.target.L.writeable}" enforceUnique="true" ignoreCase="true" minLength="1" name="_L"            />
         </TD>
         <TD valign="top">
            <c:set var="mode"><x:out select="$edasXml/edas/L/@mode"/></c:set>
            <iman:mooMode name="_L_mode" value="${mode}" multi="true" />
         </TD>
      </TR>
      <TR><TD height="9"></TD></TR>

      <%-- Telephone Number --%>
      <TR>
         <TD align="left" colspan="2">
            <c:out value="${Telephone_NumberDisplayName}"/>:&nbsp;&nbsp;
         </TD>
      </TR>
      <TR>
         <TD>
            <c:if test="${edasRights.target.Telephone_Number.writeable  || taskIsMoo=='true'}">
               <INPUT type="hidden" name="eDir$target$Telephone_Number" value="<c:out value="${eDir$target$Telephone_Number}" escapeXml="false"/>">
               <SCRIPT>addToNotificationList('Telephone_Number', 'uih_mvStringEditor');</SCRIPT>
            </c:if>
            <x:set var="MVStringEditor_xmlNodeSet" select="$edasXml/edas/Telephone_Number" scope="request"/>
            <iman:mved readonly="${!edasRights.target.Telephone_Number.writeable}" enforceUnique="true" 
            			name="_Telephone_Number" onChangeCallback="mvedChange"/>
         </TD>
         <TD valign="top">
            <c:set var="mode"><x:out select="$edasXml/edas/Telephone_Number/@mode"/></c:set>
            <iman:mooMode name="_Telephone_Number_mode" value="${mode}" multi="true" />
         </TD>
      </TR>
      <TR><TD height="9"></TD></TR>

      <%-- Facsimile Telephone Number --%>
      <TR>
         <TD align="left" colspan="2">
            <c:out value="${Facsimile_Telephone_NumberDisplayName}"/>:&nbsp;&nbsp;
         </TD>
      </TR>
      <TR>
         <TD>
            <c:if test="${edasRights.target.Facsimile_Telephone_Number.writeable  || taskIsMoo=='true'}">
               <INPUT type="hidden" name="eDir$target$Facsimile_Telephone_Number" value="<c:out value="${eDir$target$Facsimile_Telephone_Number}" escapeXml="false"/>">
               <SCRIPT>addToNotificationList('Facsimile_Telephone_Number', 'uih_mvStringEditor');</SCRIPT>
            </c:if>
            <x:set var="MVStringEditor_xmlNodeSet" select="$edasXml/edas/Facsimile_Telephone_Number" scope="request"/>
            <iman:mved readonly="${!edasRights.target.Facsimile_Telephone_Number.writeable}" enforceUnique="true" 
            			name="_Facsimile_Telephone_Number" onChangeCallback="mvedChange"/>
         </TD>
         <TD valign="top">
            <c:set var="mode"><x:out select="$edasXml/edas/Facsimile_Telephone_Number/@mode"/></c:set>
            <iman:mooMode name="_Facsimile_Telephone_Number_mode" value="${mode}" multi="true" />
         </TD>
      </TR>
      <TR><TD height="9"></TD></TR>

  <!-- Description -->
   <TR>
      <TD align=left>
         <c:out value="${DescriptionDisplayName}"/>:&nbsp;&nbsp;
      </TD>      
   </TR>
   <TR>

      <TD>
         <c:if test="${edasRights.target.Description.writeable}">
            <INPUT type="hidden" name="eDir$target$Description" value="<c:out value="${eDir$target$Description}" escapeXml="false"/>" >
            <SCRIPT>addToNotificationList('Description', 'uih_mvStringEditor');</SCRIPT>
         </c:if>

         <x:set var="MVStringEditor_xmlNodeSet" select="$edasXml/edas/Description" scope="request"/>
         <c:set var="MVStringEditor_bigEditBox" value="true" scope="request"/>
         <iman:mved mode="mvsel" maxLength="1024" readonly="${!edasRights.target.Description.writeable}" enforceUnique="true" ignoreCase="true" minLength="1" name="_Description"  biggerBox="true" size="4"/>
      </TD>
      <TD valign=top>
         <c:set var="mode"><x:out select="$edasXml/edas/Description/@mode"/></c:set>
         <iman:mooMode name="_Description_mode" value="${mode}" multi="true"/>
      </TD>
   </TR>
      <TR><TD height="9"></TD></TR>

   </TABLE>

</FORM>
<iman:include page="dev/OSFooter_inc.jsp"/>
</BODY>
</HTML>
