Edit C:\galaxie\deploy\Tomcat6\work\Catalina\localhost\galaxie\org\apache\jsp\js\edit_005fjs_jsp.java
package org.apache.jsp.js; import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.jsp.*; import java.util.*; import com.edeal.frontline.*; import java.util.*; import com.edeal.frontline.*; import java.util.*; public final class edit_005fjs_jsp extends org.apache.jasper.runtime.HttpJspBase implements org.apache.jasper.runtime.JspSourceDependent { private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); private static java.util.List _jspx_dependants; static { _jspx_dependants = new java.util.ArrayList(5); _jspx_dependants.add("/js/presentField.js"); _jspx_dependants.add("/js/utils.js"); _jspx_dependants.add("/js/checkFields.jsp"); _jspx_dependants.add("/js/calendar.jsp"); _jspx_dependants.add("/WEB-INF/taglib.tld"); } private org.apache.jasper.runtime.TagHandlerPool _005fjspx_005ftagPool_005ffl_005fwebapp_005fnobody; private javax.el.ExpressionFactory _el_expressionfactory; private org.apache.AnnotationProcessor _jsp_annotationprocessor; public Object getDependants() { return _jspx_dependants; } public void _jspInit() { _005fjspx_005ftagPool_005ffl_005fwebapp_005fnobody = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(getServletConfig()); _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); } public void _jspDestroy() { _005fjspx_005ftagPool_005ffl_005fwebapp_005fnobody.release(); } public void _jspService(HttpServletRequest request, HttpServletResponse response) throws java.io.IOException, ServletException { PageContext pageContext = null; HttpSession session = null; ServletContext application = null; ServletConfig config = null; JspWriter out = null; Object page = this; JspWriter _jspx_out = null; PageContext _jspx_page_context = null; try { response.setContentType("text/html;charset=UTF-8"); pageContext = _jspxFactory.getPageContext(this, request, response, null, true, 8192, true); _jspx_page_context = pageContext; application = pageContext.getServletContext(); config = pageContext.getServletConfig(); session = pageContext.getSession(); out = pageContext.getOut(); _jspx_out = out; out.write('\n'); out.write("/******************************************************************************\n"); out.write(" * Copyright (c) 2000-2008 e-Deal\n"); out.write(" *\n"); out.write(" * e-Deal S.A.\n"); out.write(" * 55 rue Brillat Savarin\n"); out.write(" * 75013 Paris\n"); out.write(" * France\n"); out.write(" *\n"); out.write(" * T: +33 (0)1 53 80 80 30\n"); out.write(" * F: +33 (0)1 73 01 69 77\n"); out.write(" * http://www.e-deal.com\n"); out.write(" * \n"); out.write(" * La diffusion de ce code source sous quelque forme que ce soit sans\n"); out.write(" * l'autorisation de E-DEAL est interdite.\n"); out.write(" *\n"); out.write(" * Vous �tes autoris�s � modifier ce code source uniquement pour votre usage\n"); out.write(" * propre et sous r�serve que les mentions de copyright demeurent intactes.\n"); out.write(" *\n"); out.write(" * Ce code est fourni en l'�tat. Aucune garantie d'aucune sorte, explicite ou\n"); out.write(" * implicite n'est donn�e. En aucun cas E-DEAL ne pourra �tre tenu pour\n"); out.write(" * responsable des dommages pouvant r�sulter de l'utilisation de ce code\n"); out.write(" * source.\n"); out.write(" ******************************************************************************/\n"); out.write("\n"); out.write("function presentFieldsValue()\n"); out.write("{\n"); out.write("\tvar elem = document.forms[0].elements;\n"); out.write("\tvar sep = \"|\";\n"); out.write("\tif (document.forms[0].$$multivalSeparator) {\n"); out.write("\t\tsep = document.forms[0].$$multivalSeparator.value;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tif (typeof(Utils) == \"object\") {\n"); out.write("\t\tfor (i=0;i<elem.length;i++) {\n"); out.write("\t\t\tUtils.normalizeInputFromViewForSave(elem[i].name, document.forms[0], sep);\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar i=0;\n"); out.write("\tmyTab = new Array();\n"); out.write("\tmyTab.push(\"IntActID\");\n"); out.write("\tfor (i=0;i<elem.length;i++)\n"); out.write("\t{\n"); out.write("\t\tif ( ($(elem[i]).attr(\"ed\") == \"true\") || (elem[i].type == \"select-multiple\") || (elem[i].type == \"checkbox\") || (elem[i].type == \"radio\"))\n"); out.write("\t\t{\n"); out.write("\t\t\tvar ignoreItem = false;\n"); out.write("\t\t\tvar name = elem[i].name;\n"); out.write("\t\t\tfor (j = myTab.length; (myTab[j] != name) && j>-1; j--);\n"); out.write("\t\t\tif (j == -1)\n"); out.write("\t\t\t{\n"); out.write("\t\t\t\tmyTab[myTab.length] = name;\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\n"); out.write("\tdocument.forms[0].elements[\"$$presentFields\"].value = myTab.join(sep);\n"); out.write("}\n"); out.write('\n'); out.write('\n'); out.write("/******************************************************************************\n"); out.write(" * Copyright (c) 2000-2011 e-Deal\n"); out.write(" *\n"); out.write(" * e-Deal S.A.\n"); out.write(" * 55 rue Brillat Savarin\n"); out.write(" * 75013 Paris\n"); out.write(" * France\n"); out.write(" *\n"); out.write(" * T: +33 (0)1 53 80 80 30\n"); out.write(" * F: +33 (0)1 73 01 69 77\n"); out.write(" * http://www.e-deal.com\n"); out.write(" * \n"); out.write(" * La diffusion de ce code source sous quelque forme que ce soit sans\n"); out.write(" * l'autorisation de E-DEAL est interdite.\n"); out.write(" *\n"); out.write(" * Vous �tes autoris�s � modifier ce code source uniquement pour votre usage\n"); out.write(" * propre et sous r�serve que les mentions de copyright demeurent intactes.\n"); out.write(" *\n"); out.write(" * Ce code est fourni en l'�tat. Aucune garantie d'aucune sorte, explicite ou\n"); out.write(" * implicite n'est donn�e. En aucun cas E-DEAL ne pourra �tre tenu pour\n"); out.write(" * responsable des dommages pouvant r�sulter de l'utilisation de ce code\n"); out.write(" * source.\n"); out.write(" ******************************************************************************/\n"); out.write("/**\n"); out.write(" * Remove all selected items from a select multiple object.\n"); out.write(" * fldName specified an hidden input containing list the values separated by '$$multivalSeparator'.\n"); out.write(" * The name of the select multiple element is 'lbl' + fldName. If not exist, it is just fldName and\n"); out.write(" * the string representation of the values list doesn't be store.\n"); out.write(" *\n"); out.write(" * @param fldName name of the field (required).\n"); out.write(" * @param frmName name of the form (optional, default is forms[0]).\n"); out.write(" */\n"); out.write("function unselectMultiple(fldName, frmName) {\n"); out.write("\tvar f = null;\n"); out.write("\tvar i;\n"); out.write("\tif(frmName) {\n"); out.write("\t\tf = document.forms[frmName];\n"); out.write("\t} else {\n"); out.write("\t\tf = document.forms[0];\n"); out.write("\t}\n"); out.write("\tif(!f) return;\n"); out.write("\n"); out.write("\tvar lblFld = f.elements['lbl' + fldName];\n"); out.write("\tvar realFld = f.elements[fldName];\n"); out.write("\tvar multivalSeparator = (f.elements['$$multivalSeparator'] ? f.elements['$$multivalSeparator'].value : '|');\n"); out.write("\n"); out.write("\tvar usedFld = lblFld ? lblFld : realFld;\n"); out.write("\n"); out.write("\tif(usedFld && usedFld.selectedIndex != -1) {\n"); out.write("\t\tif(lblFld) {\n"); out.write("\t\t\tvar vectValue = realFld.value.split(multivalSeparator);\n"); out.write("\t\t\tfor(i = lblFld.options.length - 1; i >= 0; i--) {\n"); out.write("\t\t\t\tfldValue = lblFld.options[i].value;\n"); out.write("\t\t\t\tif(fldValue != '_blank') { \n"); out.write("\t\t\t\t\tif(lblFld.options[i].selected) {\n"); out.write("\t\t\t\t\t\tlblFld.options[i] = null;\n"); out.write("\t\t\t\t\t\tvectValue[i] = null;\n"); out.write("\t\t\t\t\t}\n"); out.write("\t\t\t\t}\n"); out.write("\t\t\t}\n"); out.write("\t\t\trealFld.value = '';\n"); out.write("\t\t\tfor(i = 0, j = 0; i < vectValue.length; i++) {\n"); out.write("\t\t\t\trealFld.value += (vectValue[i] == null ? '' : (j++ == 0 ? '' : multivalSeparator) + vectValue[i]);\n"); out.write("\t\t\t}\n"); out.write("\t\t} else {\n"); out.write("\t\t\tfor(i = realFld.options.length - 1; i >= 0; i--) {\n"); out.write("\t\t\t\tfldValue = realFld.options[i].value;\n"); out.write("\t\t\t\tif(fldValue != '_blank') { \n"); out.write("\t\t\t\t\tif(realFld.options[i].selected) {\n"); out.write("\t\t\t\t\t\trealFld.options[i] = null;\n"); out.write("\t\t\t\t\t}\n"); out.write("\t\t\t\t}\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("}\n"); out.write("\n"); out.write("/**\n"); out.write(" * Convert money (in String) in another currency\n"); out.write(" * Conversion can be only from a euro-zone currency to euro or reverse\n"); out.write(" * Symbols :\n"); out.write(" *\t\tfrf : Franc francais\n"); out.write(" *\t\tdem : Deutsch mark\n"); out.write(" *\t\titl : Lire italienne\n"); out.write(" *\t\tiep : Livre irlandaise\n"); out.write(" *\t\tesp : Peseta espagnole\n"); out.write(" *\t\tpte : Escudo portugais\n"); out.write(" *\t\tnlg : Florin hollandais\n"); out.write(" *\t\tfim : Mark finlandais\n"); out.write(" *\t\tbef : Franc belge\n"); out.write(" *\t\tluf : Franc luxembourgeois\n"); out.write(" *\t\tats : Shilling autrichien\n"); out.write(" *\t\teur : Euro\n"); out.write(" */\n"); out.write(" \n"); out.write("function convert(money, curr1, curr2) {\n"); out.write("\tif (money == '') {\n"); out.write("\t\treturn '';\n"); out.write("\t}\n"); out.write("\tvar value = parseFloat(money);\n"); out.write("\tif (isNaN(value)) {\n"); out.write("\t\treturn '';\n"); out.write("\t}\n"); out.write("\tvar convVal;\n"); out.write("\tif (curr1.toLowerCase() == 'frf' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion franc francais -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 6.55957;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'frf') {\n"); out.write("\t\t// conversion euro -> franc francais\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 6.55957;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'dem' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion mark (Allemagne) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 1.95583;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'dem') {\n"); out.write("\t\t// conversion euro -> mark (Allemagne)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 1.95583;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'itl' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion lire (Italie) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 1936.27;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'itl') {\n"); out.write("\t\t// conversion euro -> lire (Italie)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 1936.27;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'iep' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion livre irlandaise -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 0.787564;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'iep') {\n"); out.write("\t\t// conversion euro -> livre irlandaise\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 0.787564;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'esp' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion peseta (Espagne) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 166.386;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'esp') {\n"); out.write("\t\t// conversion euro -> peseta (Espagne)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 166.386;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'pte' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion escudo (Portugal) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 200.482;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'pte') {\n"); out.write("\t\t// conversion euro -> escudo (Portugal)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 200.482;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'nlg' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion florin (Pays-Bas) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 2.20371;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'nlg') {\n"); out.write("\t\t// conversion euro -> florin (Pays-Bas)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 2.20371;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'fim' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion Mark finlandais (Finlande) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 5.94573;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'fim') {\n"); out.write("\t\t// conversion euro -> Mark finlandais (Finlande)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 5.94573;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'bef' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion franc belge -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 40.3399;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'bef') {\n"); out.write("\t\t// conversion euro -> franc belge\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 40.3399;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'luf' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion franc luxembourgeois -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 40.3399;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'luf') {\n"); out.write("\t\t// conversion euro -> franc luxembourgeois\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 40.3399;\n"); out.write("\n"); out.write("\t} else if (curr1.toLowerCase() == 'ats' && curr2.toLowerCase() == 'eur') {\n"); out.write("\t\t// conversion schilling (Autriche) -> euro\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) / 13.7603;\n"); out.write("\t} else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'ats') {\n"); out.write("\t\t// conversion euro -> schilling (Autriche)\n"); out.write("\t\tconvVal = (100 *parseFloat(value)) * 13.7603;\n"); out.write("\n"); out.write("\t}\n"); out.write("\treturn (Math.round(convVal)/100).toString();\n"); out.write("}\n"); out.write("\n"); out.write("/* removing leading and tail spaces and replaces mlti^le spaces by one single space\n"); out.write(" */\n"); out.write("function trimStr(str) {\n"); out.write("\tif (str == \"\") {\n"); out.write("\t\treturn str;\n"); out.write("\t}\n"); out.write("\tvar res = str;\n"); out.write("\twhile (res.indexOf(\" \") > -1) {\n"); out.write("\t\tres = res.split(\" \").join(\" \");\n"); out.write("\t}\n"); out.write("\tif (res.indexOf(\" \") == 0) {\n"); out.write("\t\tres = res.substring(1);\n"); out.write("\t}\n"); out.write("\tif (res.lastIndexOf(\" \") == (res.length - 1)) {\n"); out.write("\t\tres = res.substring(0, res.length - 1);\n"); out.write("\t}\n"); out.write("\treturn res;\n"); out.write("}\n"); out.write("\n"); out.write("function flEscape(str) {\n"); out.write("\tif (str == \"\") {\n"); out.write("\t\treturn str;\n"); out.write("\t}else {\n"); out.write("\t\t//return escape(str).split(\"+\").join(\"%2b\");\n"); out.write("\t\treturn encodeURIComponent(str).split(\"+\").join(\"%2b\");\n"); out.write("\t}\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("/**\n"); out.write(" * replaces some special caracters by corresponding codes\n"); out.write(" */\n"); out.write("function formatToWeb(str, edit) {\n"); out.write("\tvar result;\n"); out.write("//\tif (!str || trimStr(str).length == 0)\n"); out.write("\tif (false)\n"); out.write("\t\tresult = edit ? \"\" : \" \";\n"); out.write("\telse {\n"); out.write("\t\tvar buffer = \"\";\n"); out.write("\t\tvar c;\n"); out.write("\t\tvar i;\n"); out.write("\t\tfor (i = 0; i < str.length; i++) {\n"); out.write("\t\t\tc = str.substring(i, i+1);\n"); out.write("\t\t\tswitch (c) {\n"); out.write("\t\t\t\tcase '\\n' :\n"); out.write("\t\t\t\t\tbuffer += edit ? \"\\n\" : \"<br>\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '<' :\n"); out.write("\t\t\t\t\tbuffer += \"<\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '>' :\n"); out.write("\t\t\t\t\tbuffer += \">\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '&' :\n"); out.write("\t\t\t\t\tbuffer += \"&\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '\"' :\n"); out.write("\t\t\t\t\tbuffer += \""\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã? ' :\n"); out.write("\t\t\t\t\tbuffer += \"à\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¢' :\n"); out.write("\t\t\t\t\tbuffer += \"â\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¤' :\n"); out.write("\t\t\t\t\tbuffer += \"ä\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?©' :\n"); out.write("\t\t\t\t\tbuffer += \"é\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¨' :\n"); out.write("\t\t\t\t\tbuffer += \"è\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?ª' :\n"); out.write("\t\t\t\t\tbuffer += \"ê\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?«' :\n"); out.write("\t\t\t\t\tbuffer += \"ë\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?®' :\n"); out.write("\t\t\t\t\tbuffer += \"î\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¯' :\n"); out.write("\t\t\t\t\tbuffer += \"ï\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?´' :\n"); out.write("\t\t\t\t\tbuffer += \"ô\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¶' :\n"); out.write("\t\t\t\t\tbuffer += \"ö\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¹' :\n"); out.write("\t\t\t\t\tbuffer += \"ù\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?»' :\n"); out.write("\t\t\t\t\tbuffer += \"û\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¼' :\n"); out.write("\t\t\t\t\tbuffer += \"ü\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?¤' :\n"); out.write("\t\t\t\t\tbuffer += \"¤\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?£' :\n"); out.write("\t\t\t\t\tbuffer += \"£\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?µ' :\n"); out.write("\t\t\t\t\tbuffer += \"µ\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?²' :\n"); out.write("\t\t\t\t\tbuffer += \"²\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?§' :\n"); out.write("\t\t\t\t\tbuffer += \"§\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase 'Ã?§' :\n"); out.write("\t\t\t\t\tbuffer += \"ç\";\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tdefault :\n"); out.write("\t\t\t\t\tbuffer += c;\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t\tresult = buffer;\n"); out.write("\t}\n"); out.write("\treturn result;\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("/**\n"); out.write(" * replaces some special caracters by corresponding codes\n"); out.write(" */\n"); out.write("function formatToJavascript(pStr) {\n"); out.write("\tvar i = 0;\n"); out.write("\tvar strResult = '';\n"); out.write("//\tif (!str || trimStr(str).length == 0)\n"); out.write("\tif(pStr) {\n"); out.write("\t\tfor(i = 0; i < pStr.length; i++) {\n"); out.write("\t\t\tc = pStr.charAt(i);\n"); out.write("\t\t\tswitch (c) {\n"); out.write("\t\t\t\tcase '\\n' :\n"); out.write("\t\t\t\t\tstrResult += '\\\\n';\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '\"' :\n"); out.write("\t\t\t\t\tstrResult += '\\\\\\\"';\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '\\'' :\n"); out.write("\t\t\t\t\tstrResult += '\\\\\\'';\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tcase '\\\\' :\n"); out.write("\t\t\t\t\tstrResult += '\\\\\\\\';\n"); out.write("\t\t\t\t\tbreak;\n"); out.write("\t\t\t\tdefault :\n"); out.write("\t\t\t\t\tstrResult += c;\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\treturn strResult;\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("/**\n"); out.write(" * returns the given number rounded up to the given number of decimals\n"); out.write(" */\n"); out.write("function roundDecimal(nbr , nbDecimals) {\n"); out.write("\tvar multi = 1;\n"); out.write("\tvar i;\n"); out.write("\tvar nbDec = 2;\n"); out.write("\tif (nbDecimals)\n"); out.write("\t\tnbDec = nbDecimals;\n"); out.write("\t\t\n"); out.write("\tfor (i=0 ; i < nbDec ; i++)\n"); out.write("\t\tmulti *= 10;\n"); out.write("\treturn (Math.round(multi * nbr)/multi);\n"); out.write("}\n"); out.write("\n"); out.write("/**\n"); out.write(" * replace key by value in specified string\n"); out.write(" */\n"); out.write("function strReplace(pStr, pKey, pValue) {\n"); out.write("\treturn pStr.split(pKey).join(pValue);\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("/**\n"); out.write(" * lite Vector class\n"); out.write(" */\n"); out.write("function FlVector(pArray) {\n"); out.write("\tthis.elements = pArray ? pArray : new Array();\n"); out.write("\n"); out.write("\tthis.size = FlVectorSize;\n"); out.write("\tthis.isEmpty = FlVectorIsEmpty;\n"); out.write("\tthis.addElement = FlVectorAddElement;\n"); out.write("\tthis.removeElementAt = FlVectorRemoveElementAt;\n"); out.write("\tthis.removeElement = FlVectorRemoveElement;\n"); out.write("\tthis.elementAt = FlVectorElementAt;\n"); out.write("\tthis.contains = FlVectorContains;\n"); out.write("\tthis.toString = FlVectorToString;\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorSize() {\n"); out.write("\treturn this.elements.length;\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorIsEmpty() {\n"); out.write("\treturn this.elements.length == 0;\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorAddElement(pObj) {\n"); out.write("\tthis.elements[this.elements.length] = pObj;\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorRemoveElementAt(pIndex) {\n"); out.write("\tvar i = 0;\n"); out.write("\tif(pIndex >= 0 && pIndex < this.elements.length) {\n"); out.write("\t\tthis.elements[pIndex] = null;\n"); out.write("\t\tfor(i = pIndex + 1; i < this.elements.length; i++) {\n"); out.write("\t\t\tthis.elements[i - 1] = this.elements[i];\n"); out.write("\t\t}\n"); out.write("\t\tthis.elements.length = this.elements.length - 1;\n"); out.write("\t}\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorRemoveElement(pObj) {\n"); out.write("\tvar i = 0;\n"); out.write("\tfor(i = 0; i < this.elements.length; i++) {\n"); out.write("\t\tif(this.elements[i] == pObj) {\n"); out.write("\t\t\tthis.removeElementAt(i);\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorElementAt(pIndex) {\n"); out.write("\tif(pIndex >= 0 && pIndex < this.elements.length) {\n"); out.write("\t\treturn this.elements[pIndex];\n"); out.write("\t} else {\n"); out.write("\t\treturn null;\n"); out.write("\t}\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorContains(pObj) {\n"); out.write("\tvar i = 0;\n"); out.write("\tfor(i = 0; i < this.elements.length; i++) {\n"); out.write("\t\tif(this.elements[i] == pObj) {\n"); out.write("\t\t\treturn true;\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\treturn false;\n"); out.write("}\n"); out.write("\n"); out.write("function FlVectorToString(pSeparator) {\n"); out.write("\treturn this.elements.join(pSeparator ? pSeparator : ';');\n"); out.write("}\n"); out.write("\n"); out.write("function trimString(str) {\n"); out.write(" str = this != window? this : str;\n"); out.write(" return str.replace(/^\\s+/g, '').replace(/\\s+$/g, '');\n"); out.write("}\n"); out.write("\n"); out.write("String.prototype.trim = trimString;\n"); out.write("\n"); out.write("function arrayIndexOf(value, array) {\n"); out.write("\tarray = this != window ? this : array;\n"); out.write("\tif (array) {\n"); out.write("\t\tfor (var i = 0; i < array.length; i++) {\n"); out.write("\t\t\tif (array[i] == value) {\n"); out.write("\t\t\t\treturn i;\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\treturn -1;\n"); out.write("}\n"); out.write("function arrayLastIndexOf(value, array) {\n"); out.write("\tarray = this != window ? this : array;\n"); out.write("\tif (array) {\n"); out.write("\t\tfor (var i = array.length - 1; i <= 0; i--) {\n"); out.write("\t\t\tif (array[i] == value) {\n"); out.write("\t\t\t\treturn i;\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\treturn -1;\n"); out.write("}\n"); out.write("\n"); out.write("function replaceParam(url, paramName, newValue){\n"); out.write("\n"); out.write("\tif (!url) {\n"); out.write("\t\treturn;\n"); out.write("\t}\n"); out.write("\tvar queryStringIdx = url.indexOf(\"?\");\n"); out.write("\tif (queryStringIdx == -1) {\n"); out.write("\t\treturn url + \"?\" + paramName + \"=\" + encodeURIComponent(newValue);\n"); out.write("\t} \n"); out.write("\tvar queryString = url.substring(queryStringIdx + 1, url.length);\n"); out.write("\tvar paramNames = new Array();\n"); out.write("\tvar paramValues = new Array();\n"); out.write("\tvar params = queryString.split('&');\n"); out.write("\tvar paramIdx = -1;\n"); out.write("\tfor (var i = 0; i < params.length; i++) {\n"); out.write("\t\tvar idx = params[i].indexOf(\"=\");\n"); out.write("\t\tparamNames[i] = params[i].substring(0, idx);\n"); out.write("\t\tif (paramNames[i] == paramName && paramIdx == -1) {\n"); out.write("\t\t\tparamIdx = i;\n"); out.write("\t\t}\n"); out.write("\t\tparamValues[i] = params[i].substring(idx + 1, params[i].length);\n"); out.write("\t}\n"); out.write("\tif (paramIdx == -1) {\n"); out.write("\t\tparamNames.push(paramName);\n"); out.write("\t\tparamValues.push(newValue);\n"); out.write("\t} else {\n"); out.write("\t\tparamValues[paramIdx] = newValue;\n"); out.write("\t}\n"); out.write("\tvar newQueryArray = new Array();\n"); out.write("\tfor (var i =0; i < paramNames.length; i++) {\n"); out.write("\t\tif (paramValues[i]) {\n"); out.write("\t\t\tnewQueryArray.push(paramNames[i] + \"=\" + paramValues[i]);\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\treturn url.substring(0, queryStringIdx) + \"?\" + newQueryArray.join(\"&\");\n"); out.write("}\n"); out.write("\n"); out.write("/*\n"); out.write(" * Allowing to impose a max length for\n"); out.write(" * provided object (textarea for example)\n"); out.write(" * And display specified message in order\n"); out.write(" * to inform current user if its text is\n"); out.write(" * truncate\n"); out.write(" */\n"); out.write("function imposeMaxLength(Event, Object)\n"); out.write("{\n"); out.write("\tvar MaxLenght = 3000;\n"); out.write("\tif(Event.type=\"blur\" && Object.value.length > MaxLenght){\n"); out.write("\t\talert(getMessage(\"M903F\",\"Champ tronqué à la limite de taille suivante:\", true)+\" \"+MaxLenght);\n"); out.write("\t\tObject.value = Object.value.substring(0, MaxLenght);\n"); out.write("\t}\n"); out.write("\treturn (Object.value.length < MaxLenght)||(Event.keyCode == 8 ||Event.keyCode==46||(Event.keyCode>=35&&Event.keyCode<=40));\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write('\n'); out.write('\n'); /****************************************************************************** * Copyright (c) 2000-2004 e-Deal * * e-Deal S.A. * 55 rue Brillat Savarin * 75013 Paris * France * * T: +33 (0)1 53 80 80 30 * F: +33 (0)1 73 01 69 77 * http://www.e-deal.com * * La diffusion de ce code source sous quelque forme que ce soit sans * l'autorisation de E-DEAL est interdite. * * Vous êtes autorisés à modifier ce code source uniquement pour votre usage * propre et sous réserve que les mentions de copyright demeurent intactes. * * Ce code est fourni en l'état. Aucune garantie d'aucune sorte, explicite ou * implicite n'est donnée. En aucun cas E-DEAL ne pourra être tenu pour * responsable des dommages pouvant résulter de l'utilisation de ce code * source. * * CVS Info for $RCSfile$ * * $Revision$ * $Author$ $Date$ ******************************************************************************/ out.write("\n"); out.write("// Ce fichier contient les fonctions de contrÃ?´le de saisie\n"); out.write("// \n"); out.write("// La fonction principale est checkField(-, -, -, -, -)\n"); final org.apache.commons.logging.Log logger = org.apache.commons.logging.LogFactory.getLog(getClass()); String contextPath = (String)session.getAttribute("contextPath"); FlContext context = null; if(contextPath != null) { context = Frontline.getContext(contextPath); } else { context = Frontline.getContext(request.getContextPath()); } DataDictionary dico = context.getDataDictionary(); if (context.isFullUnicode() || context.isDbOracle()) { response.setContentType("application/x-javascript; charset=UTF-8"); } else { response.setContentType("application/x-javascript; charset=ISO-8859-1"); } FlLocale locale = FlLocale.getInstance(session); out.write("\n"); out.write("\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// Declaration des formats par défaut\n"); out.write("//==================================================\n"); out.write("\n"); out.write("var centuryLimit = 90;\n"); out.write("\n"); out.write("var separateurDecimal = \""); out.print( FlLocale.getInstance(session).getDecimalSeparator() ); out.write("\";\n"); out.write("var separateurMilliers = \""); out.print( FlLocale.getInstance(session).getGroupingSeparator() ); out.write("\";\n"); out.write("var dateFormatIn = \""); out.print( FlLocale.getInstance(session).getInputJavascriptDateFormat() ); out.write("\";\n"); out.write("var dateFormatOut = \""); out.print( FlLocale.getInstance(session).getOutputJavascriptDateFormat() ); out.write("\";\n"); out.write("var dateSeparator = \""); out.print( FlLocale.getInstance(session).getDateSeparator() ); out.write("\";\n"); out.write("var hourSeparator = \""); out.print( FlLocale.getInstance(session).getHourSeparator() ); out.write("\";\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// tempStatus ecrit un message dans la barre d'état\n"); out.write("// et l'enlève automatiquement au bout de 4 sec\n"); out.write("//==================================================\n"); out.write("function tempStatus(message)\n"); out.write("{\n"); out.write("\twindow.status = message;\n"); out.write("\twindow.setTimeout(\"window.status=''\", 4000);\n"); out.write("}\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// myReplace remplace une sous-chaine sans la \n"); out.write("// considérer comme une expression régulière regex\n"); out.write("//==================================================\n"); out.write("function myReplace(str, oldStr, newStr) {\n"); out.write("\treturn str.split(oldStr).join(newStr);\n"); out.write("}\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// removeLeadingZeros enlève les 0 du début de la \n"); out.write("// chaine afin d'éviter qu'elle ne soit considérée\n"); out.write("// comme un entier en base 8 ou 16\n"); out.write("//==================================================\n"); out.write("function removeLeadingZeros(str) {\n"); out.write("\tif (str == '')\n"); out.write("\t\treturn str;\n"); out.write("\tvar i = 0;\n"); out.write("\twhile (i < str.length && str.substr(i , 1) == '0')\n"); out.write("\t\ti++;\n"); out.write("\tif (i == str.length)\n"); out.write("\t\treturn '0';\n"); out.write("\treturn str.substr(i);\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// checkDate controle si une chaine (non vide) \n"); out.write("// peut Ã?ªtre intertprÃ?©tÃ?©e en date Ã?©tant donnÃ?©\n"); out.write("// un format d'entrÃ?©e Si c'est le cas, elle\n"); out.write("// elle rend la date suivant un format de retour,\n"); out.write("// sinon elle rend la chaine vide\n"); out.write("//==================================================\n"); out.write("function checkDate(strDate, srcFormat, dstFormat) {\n"); out.write("\n"); out.write("// Le format :\n"); out.write("// mm, MM, dd, DD, yy, yyyy\n"); out.write("\n"); out.write("//--------------------------------------------------\n"); out.write("// On verifie que le format d'entrÃ?©e est acceptable\n"); out.write("//--------------------------------------------------\n"); out.write("\tvar srcFmt = srcFormat.split(dateSeparator);\n"); out.write("\tvar srcIndex = new Array(-1, -1, -1);\n"); out.write("\tvar i;\n"); out.write("\n"); out.write("\tif(srcFmt.length != 3) {\n"); out.write("\t\treturn '';\n"); out.write("\t}\n"); out.write("\n"); out.write("\tfor(i = 0; i < 3; i++) {\n"); out.write("\t\tif(srcFmt[i].toLowerCase() == 'dd') {\n"); out.write("\t\t\tsrcIndex[0] = i;\n"); out.write("\t\t} else if(srcFmt[i].toLowerCase() == 'mm') {\n"); out.write("\t\t\tsrcIndex[1] = i;\n"); out.write("\t\t} else if(srcFmt[i].toLowerCase() == 'yy' || srcFmt[i].toLowerCase() == 'yyyy') {\n"); out.write("\t\t\tsrcIndex[2] = i;\n"); out.write("\t\t} else {\n"); out.write("\t\t\treturn '';\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\tfor(i = 0; i < 3; i++) {\n"); out.write("\t\tif(srcIndex[i] == -1) return '';\n"); out.write("\t}\n"); out.write("\n"); out.write("//--------------------------------------------------\n"); out.write("// On verifie si le format de retour est acceptable\n"); out.write("//--------------------------------------------------\n"); out.write("\tvar dstIndex;\n"); out.write("\tvar dstFmt;\n"); out.write("\tif (!dstFormat || dstFormat == '') {\n"); out.write("\t\tdstFmt = srcFmt;\n"); out.write("\t\tdstIndex = srcIndex;\n"); out.write("\t} else {\n"); out.write("\t\t\n"); out.write("\t\tdstFmt = dstFormat.split(dateSeparator);\n"); out.write("\t\tdstIndex = new Array(-1, -1, -1);\n"); out.write("\n"); out.write("\t\tif(dstFmt.length != 3) return '';\n"); out.write("\n"); out.write("\t\tfor(i = 0; i < 3; i++) {\n"); out.write("\t\t\tif(dstFmt[i].toLowerCase() == 'dd') {\n"); out.write("\t\t\t\tdstIndex[0] = i;\n"); out.write("\t\t\t} else if(dstFmt[i].toLowerCase() == 'mm') {\n"); out.write("\t\t\t\tdstIndex[1] = i;\n"); out.write("\t\t\t} else if(dstFmt[i].toLowerCase() == 'yy' || dstFmt[i].toLowerCase() == 'yyyy') {\n"); out.write("\t\t\t\tdstIndex[2] = i;\n"); out.write("\t\t\t} else {\n"); out.write("\t\t\t\treturn '';\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t\tfor(i = 0; i < 3; i++) {\n"); out.write("\t\t\tif(dstIndex[i] == -1) return '';\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\n"); out.write("//--------------------------------------------------\n"); out.write("// Les formats sont OK, on vÃ?©rifie la valeur donnÃ?©e\n"); out.write("//--------------------------------------------------\n"); out.write("\tvar majFmt = new Array('DD', 'MM', 'YY');\n"); out.write("\tvar unsortedDate = strDate.split(dateSeparator);\n"); out.write("\t\n"); out.write("\tif (unsortedDate.length != 3)\n"); out.write("\t\treturn '';\n"); out.write("\t\n"); out.write("\tfor(i = 0; i < 3; i++) {\n"); out.write("//\t\tif(isNaN(unsortedDate[i])) {\n"); out.write("\t\tif(isNaN(removeLeadingZeros(unsortedDate[i]))) {\n"); out.write("\t\t\treturn '';\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\n"); out.write("\tvar sortDate = new Array(3);\n"); out.write("\n"); out.write("\tfor(i = 0; i < 3; i++) {\n"); out.write("//\t\tsortDate[i] = parseInt(unsortedDate[srcIndex[i]]);\n"); out.write("\t\tsortDate[i] = parseInt(removeLeadingZeros(unsortedDate[srcIndex[i]]));\n"); out.write("\t\t// modif\n"); out.write("\t\t// rajoutÃ?© par RaF pour 赩ter que dd/mm/ se transforme en dd/mm/NaN\n"); out.write("\t\tif (isNaN(sortDate[i])) {\n"); out.write("\t\t\treturn '';\n"); out.write("\t\t}\n"); out.write("\t\t// fin modif\n"); out.write("\t}\n"); out.write("\n"); out.write("\t\t// vÃ?©rification du mois\n"); out.write("\tif(sortDate[1] < 1 || sortDate[1] > 12) {\n"); out.write("\t\treturn '';\n"); out.write("\t}\n"); out.write("\n"); out.write("\t\t// passage Ã? 4 chiffres de l'annÃ?©e\n"); out.write("\tif(sortDate[2] < 100) {\n"); out.write("\t\tif(sortDate[2] > centuryLimit) {\n"); out.write("\t\t\tsortDate[2] += 1900;\n"); out.write("\t\t} else {\n"); out.write("\t\t\tsortDate[2] += 2000;\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\n"); out.write("\t\t// vÃ?©rification du jours\n"); out.write("\tvar maxDays;\n"); out.write("\tswitch (sortDate[1]) {\n"); out.write("\t\tcase 2:\n"); out.write("\t\t\tif((sortDate[2] % 4) == 0 && (!((sortDate[2] % 100) == 0) || (sortDate[2] % 400) == 0)) {\n"); out.write("\t\t\t\tmaxDays = 29;\n"); out.write("\t\t\t} else {\n"); out.write("\t\t\t\tmaxDays = 28;\n"); out.write("\t\t\t}\n"); out.write("\t\t\tbreak;\n"); out.write("\t\tcase 4:\n"); out.write("\t\tcase 6:\n"); out.write("\t\tcase 9:\n"); out.write("\t\tcase 11:\n"); out.write("\t\t\tmaxDays = 30;\n"); out.write("\t\tdefault:\n"); out.write("\t\t\tmaxDays = 31;\n"); out.write("\t}\n"); out.write("\n"); out.write("\tif(sortDate[0] < 1 || sortDate[0] > maxDays) return '';\n"); out.write("\n"); out.write("\n"); out.write("//--------------------------------------------------\n"); out.write("// La valeur donnÃ?©e est OK, \n"); out.write("// on la rend selon le format de retour\n"); out.write("//--------------------------------------------------\n"); out.write("\tfor(i = 0; i < 3; i++) {\n"); out.write("\t\tif(dstFmt[dstIndex[i]].substring(0, 2) == majFmt[i]) {\n"); out.write("\t\t\tunsortedDate[dstIndex[i]] = '0000' + sortDate[i].toString();\n"); out.write("\t\t\tunsortedDate[dstIndex[i]] = unsortedDate[dstIndex[i]].substring(unsortedDate[dstIndex[i]].length - dstFmt[dstIndex[i]].length);\n"); out.write("\t\t} else {\n"); out.write("\t\t\tunsortedDate[dstIndex[i]] = sortDate[i].toString();\n"); out.write("\t\t\tif(unsortedDate[dstIndex[i]].length > dstFmt[dstIndex[i]].length) {\n"); out.write("\t\t\t\tunsortedDate[dstIndex[i]] = parseInt(unsortedDate[dstIndex[i]].substring(unsortedDate[dstIndex[i]].length - dstFmt[dstIndex[i]].length)).toString();\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\treturn unsortedDate.join(dateSeparator);\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// checkHour verifie si une chaine peut être\n"); out.write("// inteprétée en une heure. Le second paramètre\n"); out.write("// est le séparateur des heures / minutes\n"); out.write("//==================================================\n"); out.write("function checkHour(strHour, key) {\n"); out.write("\tvar dstHour = new Array(0, 0);\n"); out.write("\tvar srcHour = strHour.split(key);\n"); out.write("\n"); out.write("\tif(srcHour.length == 2) {\n"); out.write("\t\tfor(i = 0; i < 2; i++) {\n"); out.write("\t\t\tdstHour[i] = srcHour[i];\n"); out.write("\t\t}\n"); out.write("\t} else {\n"); out.write("\t\tif(strHour.length <= 2) {\n"); out.write("\t\t\tdstHour[0] = strHour;\n"); out.write("\t\t} else if(strHour.length <= 4) {\n"); out.write("\t\t\tdstHour[0] = strHour.substring(0, strHour.length - 2);\n"); out.write("\t\t\tdstHour[1] = strHour.substring(strHour.length - 2);\n"); out.write("\t\t} else {\n"); out.write("\t\t\treturn '';\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\n"); out.write("\tvar hourLimit = new Array(23, 59);\n"); out.write("\tfor(i = 0; i < 2; i++) {\n"); out.write("\t\tif(isNaN(dstHour[i])) {\n"); out.write("\t\t\treturn '';\n"); out.write("\t\t} else if(parseInt(dstHour[i]) < 0 || parseInt(dstHour[i]) > hourLimit[i]) {\n"); out.write("\t\t\treturn '';\n"); out.write("\t\t} else {\n"); out.write("\t\t\tdstHour[i] = '00' + dstHour[i];\n"); out.write("\t\t\tdstHour[i] = dstHour[i].substring(dstHour[i].length - 2);\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\treturn dstHour.join(key);\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// checkEmail contrôle si une chaine peut être \n"); out.write("// syntaxiquement considérée comme une adresse\n"); out.write("// e-mail, si c'est le cas elle rend la valeur\n"); out.write("// d'entrée sinon elle rend la chaine vide.\n"); out.write("//==================================================\n"); out.write("<!-- <!-- /*function checkEmail(laValeur) { -->\n"); out.write("<!-- pos = laValeur.indexOf(\"@\"); -->\n"); out.write("<!-- if (pos == -1) -->\n"); out.write("<!-- return \"\"; -->\n"); out.write("\n"); out.write("<!-- gauche = laValeur.substring(0 , pos); -->\n"); out.write("<!-- droite = laValeur.substr(pos + 1); -->\n"); out.write("<!-- if ( gauche == \"\" || encodeURIComponent(gauche) != gauche ) -->\n"); out.write("<!-- return \"\"; -->\n"); out.write("<!-- pos = droite.indexOf(\".\"); -->\n"); out.write("<!-- if (pos == 0) -->\n"); out.write("<!-- return \"\"; -->\n"); out.write("<!-- pos = droite.indexOf(\"..\"); -->\n"); out.write("<!-- if (pos != -1) -->\n"); out.write("<!-- return \"\"; -->\n"); out.write("<!-- pos = droite.lastIndexOf(\".\"); -->\n"); out.write("<!-- if (pos == -1) -->\n"); out.write("<!-- return \"\"; -->\n"); out.write("<!-- if (droite.indexOf(\"@\") != -1) -->\n"); out.write("<!-- \t return \"\"; \t -->\n"); out.write("<!-- \tif (encodeURIComponent(droite) != droite) -->\n"); out.write("<!-- \t\treturn \"\";\t -->\n"); out.write("<!-- \tif ( (pos != (droite.length - 3)) && (pos != (droite.length - 4)) && (pos!=(droite.length-5)) ) -->\n"); out.write("<!-- \t\treturn \"\"; -->\n"); out.write("<!-- return laValeur; -->\n"); out.write("<!-- } -->\n"); out.write("<!-- modifiée vers celle en dessous à cause d'un problème de validation d'email le 24/11/2015 par amb & htu -->\n"); out.write("<!-- http://u-project2.umanis.com/view.php?id=31724 */--> -->\n"); out.write("\n"); out.write("\n"); out.write("function checkEmail(laValeur) {\n"); out.write("\tvar re = /^([\\w-]+(?:\\.[\\w-]+)*)@((?:[\\w-]+\\.)*\\w[\\w-]{0,66})\\.([a-z]{2,32}(?:\\.[a-z]{2,32})?)$/i;\n"); out.write("\t\n"); out.write(" if (re.test(laValeur))\n"); out.write("\t\treturn laValeur;\n"); out.write("\telse\n"); out.write("\t\treturn \"\";\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// checkInteger essaie de convertir une chaine en \n"); out.write("// un nombre entier; si elle y arrive, elle rend\n"); out.write("// une chaine qu'est le nombre trouvé reformatté\n"); out.write("// avec l'éventuel séparateur de milliers.\n"); out.write("//==================================================\n"); out.write("function checkInteger(laValeur , sepMil) {\n"); out.write("\tvar sep=separateurMilliers; var valTxt; var i; var j; var c; var res=\"\"; var neg=0;\n"); out.write("\t\n"); out.write("\tif (sepMil)\n"); out.write("\tsep = sepMil;\n"); out.write("\t\n"); out.write("\tvalTxt = removeLeadingZeros(laValeur);\n"); out.write("\tvalTxt = myReplace(valTxt, \" \", \"\");\n"); out.write("\tvalTxt = myReplace(valTxt, sep, \"\");\n"); out.write("\t\n"); out.write("\tif (valTxt == null || valTxt == '') {\n"); out.write("\t\tvalTxt = '0';\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tfor (i=0 ; i<valTxt.length ; i++) {\n"); out.write("\t\tc = valTxt.substr(i , 1);\n"); out.write("\t\tif (i>0)\n"); out.write("\t\t\tif (c<\"0\" || c>\"9\")\n"); out.write("\t\t\t\treturn \"\";\n"); out.write("\t\t\telse if ((c<\"0\" || c>\"9\") && c!=\"-\") \n"); out.write("\t\t\t\treturn \"\";\n"); out.write("\t}\n"); out.write("\n"); out.write("\tnVal = parseInt(valTxt); \n"); out.write("\tif (isNaN(nVal))\n"); out.write("\t return \"\";\n"); out.write("\n"); out.write("\tvalTxt = nVal.toString();\n"); out.write(" \n"); out.write("\tif (valTxt.substr(0 , 1) == \"-\") {\n"); out.write("\t\tneg = 1;\n"); out.write("\t\tvalTxt = valTxt.substr(1);\n"); out.write("\t}\n"); out.write("\n"); out.write("\tres=\"\";\n"); out.write("\tfor (j=0 , i=valTxt.length-1 ; i>=0 ; i-- , j++) {\n"); out.write("\t\tif (j!=0 && j%3 == 0)\n"); out.write("\t\t\tres = sep + res;\n"); out.write("\t\tres = valTxt.substr(i , 1) + res;\n"); out.write("\t}\n"); out.write("\tif (neg == 1)\n"); out.write("\t\tres = \"-\" + res;\n"); out.write(" \t\n"); out.write("\treturn res;\n"); out.write("}\n"); out.write("\n"); out.write("\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// checkFloat essaie de convertir une chaine en\n"); out.write("// un nombre réel; si elle y arrive, elle rend\n"); out.write("// une chaine qu'est le nombre trouvé reformatté\n"); out.write("// avec le séparateur de décimaux et l'éventuel \n"); out.write("// séparateur de milliers. \n"); out.write("//==================================================\n"); out.write("function checkFloat(laValeur , sepDeci, sepMil) {\n"); out.write(" var sep=separateurMilliers; var sepDec=separateurDecimal; var valTxt; var i; var j; var c; var res=\"\"; var neg=0; var pos; var sepDec;\n"); out.write(" \n"); out.write(" if (sepMil)\n"); out.write(" \tsep = sepMil;\n"); out.write(" \t\n"); out.write(" if (sepDeci)\n"); out.write(" \tsepDec = sepDeci;\n"); out.write("\n"); out.write(" if (laValeur != '0' && laValeur != ('0' + sepDec + '0')) {\n"); out.write(" \t\tvalTxt = removeLeadingZeros(laValeur);\n"); out.write(" } else {\n"); out.write(" \t\tvalTxt = laValeur;\n"); out.write(" }\n"); out.write(" \n"); out.write(" valTxt = myReplace(valTxt, \" \", \"\");\n"); out.write(" valTxt = myReplace(valTxt, sep, \"\");\n"); out.write(" valTxt = myReplace(valTxt , sepDec , \".\");\n"); out.write(" \n"); out.write("\tfor (i=0 ; i<valTxt.length ; i++) {\n"); out.write("\t\tc = valTxt.substr(i , 1);\n"); out.write("\t\tif (i>0)\n"); out.write("\t\t\tif ((c<\"0\" || c>\"9\") && c!=\".\") \n"); out.write("\t\t\t\treturn \"\";\n"); out.write("\t\t\telse if ((c<\"0\" || c>\"9\") && c!=\".\" && c!=\"-\")\n"); out.write("\t\t\t\treturn \"\";\n"); out.write("\t}\n"); out.write("\n"); out.write(" if ( valTxt.indexOf(\".\") > -1 && valTxt.lastIndexOf(\".\") != valTxt.indexOf(\".\") )\n"); out.write(" \treturn \"\";\n"); out.write(" \n"); out.write(" nVal = parseFloat(valTxt);\n"); out.write(" if (isNaN(nVal))\n"); out.write(" return \"\";\n"); out.write("\n"); out.write("\n"); out.write(" valTxt = nVal.toString();\n"); out.write(" \n"); out.write(" if (valTxt.substr(0 , 1) == \"-\") {\n"); out.write(" \tneg = 1;\n"); out.write(" \tvalTxt = valTxt.substr(1);\n"); out.write(" }\n"); out.write(" \n"); out.write(" pos = valTxt.indexOf(\".\");\n"); out.write(" if (pos == -1) {\n"); out.write(" \tpartieEntiere = valTxt;\n"); out.write(" \tpartieDecimale = \"\";\n"); out.write(" } else if (pos == 0) {\n"); out.write(" \tpartieEntiere = \"0\";\n"); out.write(" \tpartieDecimale = valTxt.substr(1);\n"); out.write(" } else {\n"); out.write(" \tpartieEntiere = valTxt.substr(0, pos);\n"); out.write(" \tpartieDecimale = valTxt.substr(pos+1);\n"); out.write(" }\n"); out.write(" \n"); out.write(" res=\"\";\n"); out.write(" for (j=0 , i=partieEntiere.length-1 ; i>=0 ; i-- , j++) {\n"); out.write(" \tif (j!=0 && j%3 == 0)\n"); out.write(" \t\tres = sep + res;\n"); out.write(" \tres = partieEntiere.substr(i , 1) + res;\n"); out.write(" }\n"); out.write(" \n"); out.write(" if (neg == 1)\n"); out.write(" \tres = \"-\" + res;\n"); out.write(" \t\n"); out.write(" if (partieDecimale != \"\")\n"); out.write(" \tres = res + sepDec + partieDecimale;\n"); out.write(" \t\n"); out.write(" return res;\n"); out.write("}\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// checkString permet d'appliquer un format sur une\n"); out.write("// chaîne de caractères. Le format est spécifié \n"); out.write("// dans le second paramètre. Il vaut 'lower', \n"); out.write("// 'upper', 'capitalize' ou 'remaccents' (to remove accents).\n"); out.write("//==================================================\n"); out.write("function checkString(val, op) {\n"); out.write("\tif (val == '') {\n"); out.write("\t\treturn '';\n"); out.write("\t}\n"); out.write("\tif (op.toLowerCase() == 'upper') {\n"); out.write("\t\treturn val.toUpperCase();\n"); out.write("\t} else if (op.toLowerCase() == 'lower') {\n"); out.write("\t\treturn val.toLowerCase();\n"); out.write("\t} else if (op.toLowerCase() == 'capitalize') {\n"); out.write("\t\tresult = val.substring(0,1).toUpperCase();\n"); out.write("\t\tfor (i=1 ; i<val.length ; i++)\n"); out.write("\t\t if (val.substring(i-1, i) == ' ' || val.substring(i-1, i) == '-' || val.substring(i-1, i) == '\\\\' || val.substring(i-1, i) == '/')\n"); out.write("\t\t result += val.substring(i, i+1).toUpperCase();\n"); out.write("\t\t else\n"); out.write("\t\t result += val.substring(i, i+1).toLowerCase();\n"); out.write("\t\treturn result;\n"); out.write("\t} else if (op.toLowerCase() == 'remaccents') {\n"); out.write("\t\tresult = val;\n"); out.write("\t\tresult = val;\n"); out.write("\t\twhile(result.indexOf('à ') > -1) {\n"); out.write("\t\t\tresult = result.replace('à ', 'a');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('â') > -1) {\n"); out.write("\t\t\tresult = result.replace('â', 'a');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ä') > -1) {\n"); out.write("\t\t\tresult = result.replace('ä', 'a');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ç') > -1) {\n"); out.write("\t\t\tresult = result.replace('ç', 'c');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('é') > -1) {\n"); out.write("\t\t\tresult = result.replace('é', 'e');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('è') > -1) {\n"); out.write("\t\t\tresult = result.replace('è', 'e');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ê') > -1) {\n"); out.write("\t\t\tresult = result.replace('ê', 'e');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ë') > -1) {\n"); out.write("\t\t\tresult = result.replace('ë', 'e');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ï') > -1) {\n"); out.write("\t\t\tresult = result.replace('ï', 'i');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('î') > -1) {\n"); out.write("\t\t\tresult = result.replace('î', 'i');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ô') > -1) {\n"); out.write("\t\t\tresult = result.replace('ô', 'o');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ö') > -1) {\n"); out.write("\t\t\tresult = result.replace('ö', 'o');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ù') > -1) {\n"); out.write("\t\t\tresult = result.replace('ù', 'u');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('û') > -1) {\n"); out.write("\t\t\tresult = result.replace('û', 'u');\n"); out.write("\t\t}\n"); out.write("\t\twhile(result.indexOf('ü') > -1) {\n"); out.write("\t\t\tresult = result.replace('ü', 'u');\n"); out.write("\t\t}\n"); out.write("\t\treturn result;\n"); out.write("\t} else {\n"); out.write("\t\treturn val;\n"); out.write("\t}\n"); out.write("}\n"); out.write("\n"); out.write("function checkUrl(val) {\n"); out.write("\tif (val == '') {\n"); out.write("\t\treturn '';\n"); out.write("\t}\n"); out.write("\tif (val.substring(0,7).toLowerCase() == 'http://'.toLowerCase()) {\n"); out.write("\t\tif (val.substring(7,8) !='' ){\n"); out.write("\t\t\treturn true;\n"); out.write("\t\t}else {\n"); out.write("\t\t\treturn false;\n"); out.write("\t\t}\n"); out.write("\t} else if (val.substring(0,6).toLowerCase() == 'ftp://'.toLowerCase()) {\n"); out.write("\t\tif (val.substring(6,7) !='' ){\n"); out.write("\t\t\treturn true;\n"); out.write("\t\t}else {\n"); out.write("\t\t\treturn false;\n"); out.write("\t\t}\n"); out.write("\t} else if (val.substring(0,8).toLowerCase() == 'https://'.toLowerCase()) {\n"); out.write("\t\tif (val.substring(8,9) !='' ){\n"); out.write("\t\t\treturn true;\n"); out.write("\t\t}else {\n"); out.write("\t\t\treturn false;\n"); out.write("\t\t}\n"); out.write("\t} else if (val.substring(0,4).toLowerCase() == 'www.'.toLowerCase()) {\n"); out.write("\t\tif (val.substring(4,5) !='' ){\n"); out.write("\t\t\treturn true;\n"); out.write("\t\t}else {\n"); out.write("\t\t\treturn false;\n"); out.write("\t\t}\n"); out.write("\t} else {\n"); out.write("\t\treturn false\n"); out.write("\t}\n"); out.write("}\n"); out.write("// checkField est la fonction qui regroupe tous les tests\n"); out.write("function checkField(laValeur , leType , estOblig , format1 , format2) {\n"); out.write(" if (laValeur == \"\")\n"); out.write(" if (estOblig)\n"); out.write(" return false;\n"); out.write(" else\n"); out.write(" return true;\n"); out.write("\n"); out.write("\n"); out.write(" if (leType.toLowerCase() == \"date\")\n"); out.write(" return checkDate(laValeur , format1 , format2)\n"); out.write("\n"); out.write(" if (leType.toLowerCase() == \"hour\")\n"); out.write(" return checkHour(laValeur , format1);\n"); out.write("\n"); out.write(" if (leType.toLowerCase() == \"email\")\n"); out.write(" return checkEmail(laValeur);\n"); out.write("\n"); out.write(" if (leType.toLowerCase() == \"integer\")\n"); out.write(" return checkInteger(laValeur , format1);\n"); out.write("\n"); out.write(" if (leType.toLowerCase() == \"float\")\n"); out.write(" return checkFloat(laValeur , format1 , format2);\n"); out.write(" \n"); out.write(" if (leType.toLowerCase() == \"string\")\n"); out.write(" return checkString(laValeur , format1);\n"); out.write("\n"); out.write(" return laValeur;\n"); out.write("}\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// toSysNum prend en premier paramètre une valeur\n"); out.write("// numérique en chaine, en second paramètre le\n"); out.write("// séparateur de décimaux, en 3eme paramètre le\n"); out.write("// séparateur de milliers; et rend une chaine\n"); out.write("// prête pour un parse.\n"); out.write("//==================================================\n"); out.write("function toSysNum(valeur , sepDeci , sepMil) {\n"); out.write("\tvar sep=separateurMilliers; var sepDec=separateurDecimal;\n"); out.write("\t\n"); out.write("\tif (sepMil)\n"); out.write(" \t\tsep = sepMil;\n"); out.write(" \t\n"); out.write(" \tif (sepDeci)\n"); out.write(" \t\tsepDec = sepDeci;\n"); out.write(" \t\n"); out.write("\tvar res;\n"); out.write("\tres = myReplace(valeur , \" \" , \"\");\n"); out.write("\tres = myReplace(res , sep , \"\");\n"); out.write("\tres = myReplace(res , sepDec , \".\");\n"); out.write("\treturn res;\n"); out.write("}\n"); out.write("\n"); out.write("//==================================================\n"); out.write("// prepNumsForSubmit prend en premier paramètre le\n"); out.write("// séparateur de décimaux, en second paramètre le\n"); out.write("// séparateur de milliers; les paramètres suivants\n"); out.write("// étant les 'Field' à reformatter.\n"); out.write("//==================================================\n"); out.write("function prepNumsForSubmit() {\n"); out.write("\targs = prepNumsForSubmit.arguments;\t\n"); out.write("\tsepDec = args[0];\n"); out.write("\tsepMil = args[1];\n"); out.write("\t\n"); out.write("\tfor (i=2 ; i<args.length ; i++) {\n"); out.write("\t\tfld = args[i];\n"); out.write("\t\tfldVal = fld.value;\n"); out.write("\t\tfldVal = myReplace(fldVal, \" \", \"\");\n"); out.write("\t\tfldVal = myReplace(fldVal , sepMil , \"\");\n"); out.write("\t\tfldVal = myReplace(fldVal , sepDec , \".\");\n"); out.write("\t\tfld.value = fldVal;\t\n"); out.write("\t}\n"); out.write("\t\n"); out.write("}\n"); out.write("\n"); out.write("function prepAutoNumsForSubmit(frmName, sepDec, sepMil) {\n"); out.write("\treturn;\n"); out.write("}\n"); out.write("\n"); out.write("function ctrlNumField(aField, aType , mesg, sepDeci , sepMillier) {\n"); out.write("\tif (myReplace(aField.value , \" \" , \"\") == \"\") {\n"); out.write("\t\taField.value = \"\";\n"); out.write("\t\treturn true;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar sepMil = separateurMilliers;\n"); out.write("\tvar sepDec = separateurDecimal;\n"); out.write("\tif (sepMillier)\n"); out.write(" \t\tsepMil = sepMillier;\n"); out.write(" \tif (sepDeci)\n"); out.write(" \t\tsepDec = sepDeci;\n"); out.write("\tvar v;\n"); out.write("\n"); out.write("\tif (aType.toLowerCase() == \"integer\")\n"); out.write("\t\tv = checkField(aField.value, aType, false, sepMil);\n"); out.write("\telse\n"); out.write("\t\tv = checkField(aField.value, aType, false, sepDec, sepMil);\n"); out.write("\n"); out.write("\tif (v) {\n"); out.write("\t\taField.value = v;\n"); out.write("\t\treturn true;\n"); out.write("\t}\n"); out.write("\n"); out.write("\tif (mesg) {\n"); out.write("\t\ttempStatus(mesg);\n"); out.write(" \t}\n"); out.write("\taField.value = '';\n"); out.write("\treturn false;\n"); out.write("}\n"); out.write("\n"); out.write("function ctrlDateField(aField, mesg, formatIn, formatOut) {\n"); out.write("\tif (myReplace(aField.value , \" \" , \"\") == \"\") {\n"); out.write("\t\taField.value = \"\";\n"); out.write("\t\treturn true;\n"); out.write("\t}\n"); out.write("\n"); out.write("\tvar formIn = dateFormatIn;\n"); out.write("\tvar formOut = dateFormatOut;\n"); out.write("\tif (formatIn) {\n"); out.write("\t\tformIn = formatIn;\n"); out.write("\t}\n"); out.write("\tif (formatOut) {\n"); out.write("\t\tformOut = formatOut;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tv = checkField(aField.value, 'date', false, formIn, formOut);\n"); out.write("\t\n"); out.write("\tif (v) {\n"); out.write("\t\taField.value = v;\n"); out.write("\t\treturn true;\n"); out.write("\t}\n"); out.write("\n"); out.write("\tif (mesg) {\n"); out.write("\t\ttempStatus(mesg);\n"); out.write("\t}\n"); out.write("\taField.value = '';\n"); out.write("\treturn false;\n"); out.write("}\n"); out.write("\n"); out.write("function ctrlHourField(aField, mesg, sep) {\n"); out.write("\tif (myReplace(aField.value , \" \" , \"\") == \"\") {\n"); out.write("\t\taField.value = \"\";\n"); out.write("\t\treturn true;\n"); out.write("\t}\n"); out.write("\n"); out.write("\tvar separator = hourSeparator;\n"); out.write("\tif (sep) {\n"); out.write("\t\tseparator = sep;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tv = checkField(aField.value, 'hour', false, separator);\n"); out.write("\t\n"); out.write("\tif (v) {\n"); out.write("\t\taField.value = v;\n"); out.write("\t\treturn true;\n"); out.write("\t}\n"); out.write("\n"); out.write("\tif (mesg) {\n"); out.write("\t\ttempStatus(mesg);\n"); out.write("\t}\n"); out.write("\taField.value = '';\n"); out.write("\treturn false;\n"); out.write("}\n"); out.write("//============================================\n"); out.write("// Compare deux dates\n"); out.write("// parametres :\n"); out.write("//\t\tdate1 la partie jour de la première date (par defaut '01/01/1970')\n"); out.write("// \t\thour1 la partie horaire de la première date (par défaut '00:00')\n"); out.write("//\t\tdate2 la partie jour de la deuxième date (par defaut '01/01/1970')\n"); out.write("// \t\thour2 la partie horaire de la deuxième date (par defaut '00:00')\n"); out.write("// \t\tformatDate le format de la date en entrée (par défaut 'DD/MM/yyyy')\n"); out.write("//\t\tsepHeure\tle séparateur des heures (par défaut : )\n"); out.write("// renvoit le nombre de millisecondes de différence\n"); out.write("//\t\t0 si (date1, hour1)==(date2, hour2)\n"); out.write("//\t\t>0 si (date1, hour1) > (date2, hour2)\n"); out.write("//\t\t<0 si (date1, hour1) < (date2, hour2)\n"); out.write("//=============================================================\n"); out.write("function compareDate(date1, hour1, date2, hour2, formatDate, sepHeure) {\n"); out.write("\tfDate = dateFormatOut;\n"); out.write("\tsep = hourSeparator;\n"); out.write("\t\n"); out.write("\tif (formatDate) {\n"); out.write("\t\tfDate = formatDate;\n"); out.write("\t}\n"); out.write("\tif (sepHeure) {\n"); out.write("\t\tsep = sepHeure;\n"); out.write("\t}\n"); out.write("\tvar d1;\n"); out.write("\tvar h1;\n"); out.write("\tvar d2;\n"); out.write("\tvar h2;\t\n"); out.write("\tif (date1) {\n"); out.write("\t\td1 = date1;\n"); out.write("\t} else {\n"); out.write("\t\td1 = checkField(\"01/01/1970\", \"date\", false, dateFormatOut, fDate);\n"); out.write("\t}\n"); out.write("\tif (hour1) {\n"); out.write("\t\th1 = hour1;\n"); out.write("\t} else {\n"); out.write("\t\th1 = checkField(\"00:00\", \"hour\", false, hourSeparator, sep);\n"); out.write("\t}\n"); out.write("\tif (date2) {\n"); out.write("\t\td2 = date2;\n"); out.write("\t} else {\n"); out.write("\t\td2 = checkField(\"01/01/1970\", \"date\", false, dateFormatOut, fDate);\n"); out.write("\t}\n"); out.write("\tif (hour2) {\n"); out.write("\t\th2 = hour2;\n"); out.write("\t} else {\n"); out.write("\t\th2 = checkField(\"00:00\", \"hour\", false, hourSeparator, sep);\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\t//controle\n"); out.write("\t\n"); out.write("\ts1 = checkHour(h1 , sep);\n"); out.write("\ts2 = checkDate(d1, fDate, 'MM/DD/yyyy');\n"); out.write("\t\n"); out.write("\ts3 = checkHour( h2 , sep);\n"); out.write("\ts4 = checkDate(d2, fDate, 'MM/DD/yyyy');\n"); out.write("\t\n"); out.write("\tstartTime = new Date(s2.concat(\" \").concat(s1));\n"); out.write("\tendTime = new Date(s4.concat(\" \").concat(s3));\n"); out.write("\t\n"); out.write("\tmillidiff = startTime - endTime;\n"); out.write("\n"); out.write("\treturn millidiff;\n"); out.write("}\n"); /****************************************************************************** * CVS Log File * * $Log$ * Revision 1.13 2010-09-14 16:41:52 jeanseb * allow email to have 4 chars extension * * Revision 1.12 2010/02/17 10:40:44 jeanseb * erroneous chars * * Revision 1.11 2009/10/29 09:15:35 jeanseb * bug fix: if Oracle, the js has to be considered as UTF8 * * Revision 1.10 2008/03/25 14:23:16 brian * On accepte la valeur '0' (avant on la remplace avec '') * * Revision 1.9 2008/01/25 18:20:01 brian * Fixed bug where integer zeros where getting cleared out as invalid * * Revision 1.8 2008/01/23 19:36:51 sali * fix bug on compare date * * Revision 1.7 2008/01/07 13:32:58 nomar * bug CIBLAGE V2:PreNumsForSubmit() * * Revision 1.6 2007/07/06 17:40:45 sali * correction bug 636: compareDate with locale * * Revision 1.5 2007/05/22 15:02:23 nomar * log system (Phase1 pour *.jsp) * * Revision 1.4 2006/11/16 21:18:57 omourad * adding date separator * * Revision 1.3 2005/10/14 12:35:19 raphael * utilisation du sÂ?parateur d'heure de la locale correction des accents * * Revision 1.2 2005/08/24 07:50:08 raphael * dÂ?sactivation de prepNUmForSubmit et de prepAutoNumsForSubmit * * Revision 1.1 2005/06/07 09:02:14 raphael * version initiale * * Revision 1.2 2005/02/28 19:07:09 imad * Fixed thousands separator bug * * Revision 1.1 2004/07/23 18:20:32 brian * Initial Revision * *****************************************************************************/ out.write('\n'); out.write('\n'); out.write('\n'); /****************************************************************************** * Copyright (c) 2000-2004 e-Deal * * e-Deal S.A. * 55 rue Brillat Savarin * 75013 Paris * France * * T: +33 (0)1 53 80 80 30 * F: +33 (0)1 73 01 69 77 * http://www.e-deal.com * * La diffusion de ce code source sous quelque forme que ce soit sans * l'autorisation de E-DEAL est interdite. * * Vous êtes autorisés à modifier ce code source uniquement pour votre usage * propre et sous réserve que les mentions de copyright demeurent intactes. * * Ce code est fourni en l'état. Aucune garantie d'aucune sorte, explicite ou * implicite n'est donnée. En aucun cas E-DEAL ne pourra être tenu pour * responsable des dommages pouvant résulter de l'utilisation de ce code * source. ******************************************************************************/ response.setContentType("application/x-javascript"); FlLocale userLocale = (FlLocale.getInstance(session)); String dateFormat = "dd/MM/yyyy"; try { dateFormat = userLocale.getDateFormat().toPattern(); } catch (Exception e) { dateFormat = "dd/MM/yyyy"; } out.write('\n'); out.write("\n"); out.write("function openCalendar(field, dateFormat) {\n"); out.write("\tvar found=0;\n"); out.write("\tvar pos=-1;\n"); out.write("\twhile (found == 0) {\n"); out.write("\t\tpos++;\n"); out.write("\t\tif (document.forms[pos]) {\n"); out.write("\t\t\tif (document.forms[pos] == field.form) {\n"); out.write("\t\t\t\tfound = 1;\n"); out.write("\t\t\t}\n"); out.write("\t\t}\n"); out.write("\n"); out.write("\t\tif (pos > 20) {\n"); out.write("\t\t\tpos = -1;\n"); out.write("\t\t\tfound = 1;\n"); out.write("\t\t}\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar curDateStr = \"\";\n"); out.write("\tvar curDate = parseDate((dateFormat ? dateFormat : \""); out.print( dateFormat ); out.write("\"), field.value);\n"); out.write("\tif (curDate != null) {\n"); out.write("\t\tcurDateStr = \"&calyear=\" + curDate[0] + \"&calmonth=\" + curDate[1];\n"); out.write("\t}\n"); out.write("\tvar winDateSel = window.open(\""); if (_jspx_meth_fl_005fwebapp_005f0(_jspx_page_context)) return; out.write("/common/calendar/calendar_popup.jsp?fn=\" + field.name + \"&fp=\" + pos + (dateFormat ? \"&df=\" + dateFormat : \"\") + curDateStr, \"DateSelector\", \"menubar=no,toolbar=no,scrollbars=auto,resizable=yes,width=250,height=280\");\n"); out.write("}\n"); out.write("\n"); out.write("function strReplace(pStr, pKey, pValue) {\n"); out.write("\treturn pStr.split(pKey).join(pValue);\n"); out.write("}\n"); out.write("\n"); out.write("function removeLeadingZeros(inStr) {\n"); out.write("\tvar res = inStr;\n"); out.write("\twhile (res.length > 0 && res.substring(0,1) == \"0\") {\n"); out.write("\t\tres = res.substring(1);\n"); out.write("\t}\n"); out.write("\treturn res;\n"); out.write("}\n"); out.write("\n"); out.write("function parseDate(patern, value) {\t\n"); out.write("\tvar yk = \"yyyy\";\n"); out.write("\tvar yp = patern.indexOf(yk);\n"); out.write("\tif (yp == -1) {\n"); out.write("\t\tyk = \"yyy\";\n"); out.write("\t\typ = patern.indexOf(yk);\n"); out.write("\t}\n"); out.write("\tif (yp == -1) {\n"); out.write("\t\tyk = \"yy\";\n"); out.write("\t\typ = patern.indexOf(yk);\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar mk = \"MM\"\n"); out.write("\tvar mp = patern.indexOf(mk);\n"); out.write("\tif (mp == -1) {\n"); out.write("\t\tmk = \"M\";\n"); out.write("\t\tmp = patern.indexOf(mk);\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar dk = \"dd\"\n"); out.write("\tvar dp = patern.indexOf(dk);\n"); out.write("\tif (dp == -1) {\n"); out.write("\t\tdk = \"d\";\n"); out.write("\t\tdp = patern.indexOf(dk);\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tif (yp == -1 || mp == -1 || dp == -1) {\n"); out.write("\t\treturn null;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar yi=0, mi=0, di=0;\n"); out.write("\tif (yp < mp && mp < dp) {\n"); out.write("\t\tyi = 1; mi = 2; di = 3;\n"); out.write("\t} else if (mp < yp && yp < dp) {\n"); out.write("\t\tyi = 2; mi = 1; di = 3;\n"); out.write("\t} else if (yp < dp && dp < mp) {\n"); out.write("\t\tyi = 1; mi = 3; di = 2;\n"); out.write("\t} else if (dp < yp && yp < mp) {\n"); out.write("\t\tyi = 2; mi = 3; di = 1;\n"); out.write("\t} else if (mp < dp && dp < yp) {\n"); out.write("\t\tyi = 3; mi = 1; di = 2;\n"); out.write("\t} else if (dp < mp && mp < yp) {\n"); out.write("\t\tyi = 3; mi = 2; di = 1;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar strRegExp = patern;\n"); out.write("\tstrRegExp = strReplace(strRegExp, \"\\\\\", \"\\\\\\\\\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, \"/\", \"\\\\/\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, \"*\", \"\\\\*\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, \"+\", \"\\\\+\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, \"?\", \"\\\\?\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, \".\", \"\\\\.\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, dk, \"([\\\\d.]+)\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, mk, \"([\\\\d.]+)\");\n"); out.write("\tstrRegExp = strReplace(strRegExp, yk, \"([\\\\d.]+)\");\n"); out.write("\t\n"); out.write("\tvar regexpr, yvt, mvt, dvt;\n"); out.write("\teval(\"regexpr = /\" + strRegExp + \"/\");\n"); out.write("\tyvt = value.replace(regexpr, \"$\"+yi);\n"); out.write("\tmvt = value.replace(regexpr, \"$\"+mi);\n"); out.write("\tdvt = value.replace(regexpr, \"$\"+di);\n"); out.write("\t\n"); out.write("\tif (yvt == value || mvt == value || dvt == value) {\n"); out.write("\t\treturn null;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\tvar yv, mv, dv;\n"); out.write("\tyv = parseInt(removeLeadingZeros(yvt));\n"); out.write("\tmv = parseInt(removeLeadingZeros(mvt));\n"); out.write("\tdv = parseInt(removeLeadingZeros(dvt));\n"); out.write("\n"); out.write("\n"); out.write("\tif (isNaN(dv) || isNaN(mv) || isNaN(yv)) {\n"); out.write("\t\treturn null;\n"); out.write("\t}\n"); out.write("\t\n"); out.write("\treturn new Array(yv, mv, dv);\n"); out.write("}\n"); out.write('\n'); } catch (Throwable t) { if (!(t instanceof SkipPageException)){ out = _jspx_out; if (out != null && out.getBufferSize() != 0) try { out.clearBuffer(); } catch (java.io.IOException e) {} if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); else log(t.getMessage(), t); } } finally { _jspxFactory.releasePageContext(_jspx_page_context); } } private boolean _jspx_meth_fl_005fwebapp_005f0(PageContext _jspx_page_context) throws Throwable { PageContext pageContext = _jspx_page_context; JspWriter out = _jspx_page_context.getOut(); // fl:webapp com.edeal.frontline.WebappTag _jspx_th_fl_005fwebapp_005f0 = (com.edeal.frontline.WebappTag) _005fjspx_005ftagPool_005ffl_005fwebapp_005fnobody.get(com.edeal.frontline.WebappTag.class); _jspx_th_fl_005fwebapp_005f0.setPageContext(_jspx_page_context); _jspx_th_fl_005fwebapp_005f0.setParent(null); int _jspx_eval_fl_005fwebapp_005f0 = _jspx_th_fl_005fwebapp_005f0.doStartTag(); if (_jspx_th_fl_005fwebapp_005f0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { _005fjspx_005ftagPool_005ffl_005fwebapp_005fnobody.reuse(_jspx_th_fl_005fwebapp_005f0); return true; } _005fjspx_005ftagPool_005ffl_005fwebapp_005fnobody.reuse(_jspx_th_fl_005fwebapp_005f0); return false; } }
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de