--- /dev/null
+/* ***** BEGIN LICENSE BLOCK *****\r
+ * Copyright (c) 2008-2009 EADS DEFENCE AND SECURITY - All rights reserved.\r
+ * ximfmail is under the triple license MPL 1.1/GPL 2.0/LGPL 2.1.\r
+ *\r
+ *\r
+ * Redistribution and use, in source and binary forms, with or without modification,\r
+ * are permitted provided that the following conditons are met :\r
+ *\r
+ * 1. Redistributions of source code must retain the above copyright notice,\r
+ * 2. MPL 1.1/GPL 2.0/LGPL 2.1. license agreements must be attached\r
+ * in the redistribution of the source code.\r
+ * 3. Neither the names of the copyright holders nor the names of any contributors\r
+ * may be used to endorse or promote products derived from this software without specific\r
+ * prior written permission from EADS Defence and Security.\r
+ *\r
+ * Alternatively, the contents of this file may be used under the terms of\r
+ * either of the GNU General Public License Version 2 or later (the "GPL"),\r
+ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),\r
+ * in which case the provisions of the GPL or the LGPL are applicable instead\r
+ * of those above. If you wish to allow use of your version of this file only\r
+ * under the terms of either the GPL or the LGPL, and not to allow others to\r
+ * use your version of this file under the terms of the MPL, indicate your\r
+ * decision by deleting the provisions above and replace them with the notice\r
+ * and other provisions required by the GPL or the LGPL. If you do not delete\r
+ * the provisions above, a recipient may use your version of this file under\r
+ * the terms of any one of the MPL, the GPL or the LGPL.\r
+ *\r
+ * REMINDER :\r
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND\r
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\r
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\r
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\r
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\r
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING\r
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
+ *\r
+ * EADS Defence and Security - 1 Boulevard Jean Moulin -\r
+ * ZAC de la Clef Saint Pierre - 78990 Elancourt - FRANCE (IDDN.FR.001.480012.002.S.P.2008.000.10000)\r
+ *\r
+ * Contributor(s):\r
+ * Copyright(c) Airbus Defence and Space 2014 - All rights reserved\r
+ * ***** END LICENSE BLOCK ***** */\r
+var XIMF_RULE_TARGET_NAME_MANDATORY_HEADERS = "MandatoryHeaders";\r
+var gSpecialMandatoryHeaders = [];\r
+//\r
+function SpecialMandatoryHeaders(nameHeader,refHeader){\r
+ if(nameHeader && refHeader){\r
+ var o = new Object();\r
+ o.nameHeader = nameHeader;\r
+ o.refHeader = refHeader;\r
+ gSpecialMandatoryHeaders.push(o);\r
+ }\r
+ $("#addressingWidget").bind("command",SpecialXimfRule_CheckAddress);\r
+ AddEventSpecialMandatoryHeaders();\r
+}\r
+//\r
+function AddEventSpecialMandatoryHeaders(){\r
+ $("#addressingWidget textbox").bind("input",function(evt){\r
+ if(evt.currentTarget.value.length <= 1) {\r
+ SpecialXimfRule_CheckAddress();\r
+ }\r
+ });\r
+}\r
+//\r
+function SpecialXimfRule_CheckAddress(){\r
+ try{\r
+ var menulist = $("#addressingWidget menulist");\r
+ for(var idxSMH = 0 ; idxSMH < gSpecialMandatoryHeaders.length ; ++idxSMH){\r
+ var valueRef = "addr_" + gSpecialMandatoryHeaders[idxSMH].refHeader;\r
+ var nameHeader = gSpecialMandatoryHeaders[idxSMH].nameHeader;\r
+ var valueRefSelected = false;\r
+ for(var i=0;i<menulist.length;++i){\r
+ var valueMenuList = $(menulist[i]).attr("value");\r
+ if( valueMenuList === valueRef){\r
+ // "addr_cc"\r
+ try{\r
+ var id = $(menulist[i]).attr("id");\r
+ var idBox = "addressCol2#" + id.slice(id.indexOf("#")+1,id.length);\r
+ elt = document.getElementById(idBox);\r
+ if(elt.value !== ""){\r
+ // Apply specific rule SpecialXimfRule_MandatoryHeadersCC\r
+ SpecialXimfRule_MandatoryHeaders(nameHeader);\r
+ valueRefSelected = true;\r
+ }\r
+ }catch(ex){}\r
+ break;\r
+ }\r
+ }\r
+ // no rules to apply : unregister it\r
+ if(!valueRefSelected){\r
+ SpecialXimfRule_No_MandatoryHeaders(nameHeader);\r
+ }\r
+ }\r
+ // register new textboxes events\r
+ setTimeout("AddEventSpecialMandatoryHeaders()", 50);\r
+ }catch(e){\r
+ gConsole.logStringMessage("[ximfmail - SpecialXimfRule_CheckAddress ] \n " + err + "\nfile : " + Error().fileName+"\nline : "+err.lineNumber);\r
+ }\r
+}\r
+//\r
+function SpecialXimfRule_MandatoryHeaders(nameHeader){\r
+ try{\r
+ // get headers to mandatory\r
+ var hdrLabel = $("label[ximfheader='"+nameHeader+"']");\r
+ if(hdrLabel){\r
+ hdrLabel[0].setAttribute("ximfmandatory","true");\r
+ CheckXimfhdrsSelection();\r
+ }\r
+ }catch(e){\r
+ gConsole.logStringMessage("[ximfmail - SpecialXimfRule_MandatoryHeaders ] \n " + err + "\nfile : " + Error().fileName+"\nline : "+err.lineNumber);\r
+ }\r
+}\r
+//\r
+function SpecialXimfRule_No_MandatoryHeaders(nameHeader){\r
+ try{\r
+ //get headers to unmandatory\r
+ var hdrLabel = $("label[ximfheader='"+nameHeader+"']");\r
+ if(hdrLabel){\r
+ hdrLabel[0].setAttribute("ximfmandatory","false");\r
+ hdrLabel[0].setAttribute("style","color:inherit;");\r
+ CheckXimfhdrsSelection();\r
+ }\r
+ }catch(e){\r
+ gConsole.logStringMessage("[ximfmail - SpecialXimfRule_MandatoryHeaders ] \n " + err + "\nfile : " + Error().fileName+"\nline : "+err.lineNumber);\r
+ }\r
+}
\ No newline at end of file