PageSourceSearch

https://support.wunc.org/js/FormComponentsBehavior.js

js wunc.org collected 2026-09-24 08:36:23 UTC 14,589 bytes, 171 lines download raw bytes

1/* Compressed by the perl version of jsmin. */
2/* JavaScript::Minifier 0.02 */
3
4var FC_ROW_CLASS='FormRow';var FC_INPUT_CLASS='FormInput';var FC_EDIT_BUTTON_CLASS='FormPreviewEditButton';var FC_MSG_ROW_CLASS='holdsErrorMsg';var FC_MESSAGE_ICON_CLASS='FormMsgIcon';var FC_ERROR_TEXT_CLASS='FormMsgText';var FC_INFO_TEXT_CLASS='FormElementHiddenInfoLabel';var FC_WARN_TEXT_CLASS='FormElementHiddenWarnLabel';var FC_REQUIRED_CLASS='FormElementHiddenRequired';var FC_LABEL_TEXT_CLASS='FormLabelText';var undefined;var fc_globalMessages;var fc_edit_component_fn;function FormComponent()
5{}
6function fc_setEditComponentFn(fn)
7{fc_edit_component_fn=fn;}
8function FCGlobalMessages(info_alt,warn_alt,warn_text)
9{this.info_img_alt=info_alt;this.warn_img_alt=warn_alt;this.warn_text=warn_text;}
10function fc_setGlobalMessages(info_alt,warn_alt,warn_text)
11{fc_globalMessages=new FCGlobalMessages(info_alt,warn_alt,warn_text);}
12function fc_registerComponent(_element,_isRequired)
13{var el=((typeof _element)=='string')?document.getElementById(_element):_element;Utils.addEvent(el,'focus',fc_showInformational);var blurFn=_isRequired?fc_showInfosRequired:fc_showInfosNotRequired;Utils.addEvent(el,'blur',blurFn);if((el.tagName=='INPUT')&&((el.type=='text')||(el.type=='radio')||(el.type=='checkbox')))
14{Utils.addEvent(el,'keypress',fc_handle_enter_key);}
15var infoText=fc_getPeerByClass(el,FC_INFO_TEXT_CLASS);var warnText=fc_getPeerByClass(el,FC_WARN_TEXT_CLASS);fc_initMsgContainers(el,infoText,warnText);if(infoText&&infoText.hasChildNodes()){var info=fc_getInfoMsgContainer(el);if(info&&!info.hasChildNodes()){fc_copyChildren(infoText,info);set_visible(info,false);}
16var infoCont=fc_getInfoImgContainer(el,true);if(infoCont&&!infoCont.hasChildNodes()){infoCont.appendChild(fc_makeInfoMsgImg());set_visible(infoCont,false);}}
17if(warnText&&warnText.hasChildNodes()){var error=fc_getErrorMsgContainer(el);if(getElementText(error)!=getElementText(warnText)){var warning=fc_getWarnMsgContainer(el);if(warning.hasChildNodes()==false){fc_copyChildren(warnText,warning);set_visible(warning,false);}
18var warnCont=fc_getWarnImgContainer(el);if(warnCont.hasChildNodes()==false){warnCont.appendChild(fc_makeWarningMsgImg());set_visible(warnCont,false);}}}
19var hidErr=fc_getPeerByClass(el,'HiddenErrorImage');hide_element(hidErr);fc_setMessageDisplay(el,false,false);}
20function fc_hideChildren(_container)
21{if(_container){var ch=_container.childNodes;for(var i=0;(i<ch.length);i++)
22if(!isOfClass(ch[i],FC_ERROR_TEXT_CLASS)&&(ch[i].tagName=='DIV')&&!ch[i].nohide)
23hide_element(ch[i]);}}
24function fc_setMessageDisplay(_obj,_showInfo,_showWarn)
25{var warning=fc_getWarnMsgContainer(_obj);var warningImg=fc_getWarnImgContainer(_obj);var info=fc_getInfoMsgContainer(_obj);var infoImg=fc_getInfoImgContainer(_obj);fc_hideChildren(fc_getPeerByClass(_obj,'FormInfoMsg'));if(_showInfo&&info){hide_element(warningImg);show_element(info);show_element(infoImg);}
26else if(_showWarn&&warning){hide_element(infoImg);show_element(warning);show_element(warningImg);}
27else if(!warning||(info&&(info.offsetHeight>=warning.offsetHeight))){hide_element(warningImg);show_element(info);show_element(infoImg);}
28else{hide_element(infoImg);show_element(warning);show_element(warningImg);}
29if(info&&warning){if(info.offsetHeight>warning.offsetHeight){warning.style.height=info.offsetHeight+'px';}
30else if(info.offsetHeight<warning.offsetHeight){info.style.height=warning.offsetHeight+'px';}}}
31function fc_editComponent(_evt)
32{if(fc_edit_component_fn){_evt=_evt?_evt:event;var el=_evt.target?_evt.target:_evt.srcElement;fc_edit_component_fn(el);}}
33function fc_showInformational(_evt)
34{_evt=_evt?_evt:event;var obj=_evt.target?_evt.target:_evt.srcElement;fc_setMessageDisplay(obj,true,false);fc_hideErrorMsg(obj);fc_hideWarnMsg(obj);var message=fc_getInfoMsgContainer(obj);if(message&&message.hasChildNodes()){show_element(message);set_visible(message,true);fc_showIcon(fc_getInfoImgContainer(obj,false),message);}}
35function fc_handle_enter_key(_evt)
36{_evt=_evt?_evt:event;var obj=_evt.target?_evt.target:_evt.srcElement;var rc=true;if(_evt.type&&(_evt.type=='keypress')&&(_evt.keyCode==13)){var inputs=document.getElementsByTagName('INPUT');if(inputs.length<500){rc=false;for(var i=0;(!rc&&(i<inputs.length));i++){if(inputs[i].type=='submit'){if(fc_button_purpose(inputs[i],'next')||fc_button_purpose(inputs[i],'finish')){inputs[i].focus();inputs[i].click();rc=true;}}}}}
37return rc;}
38function fc_button_purpose(_btn,_purpose)
39{var rc=false;var purpose=_purpose.toLowerCase();if((_btn.value.toLowerCase().indexOf(purpose)>=0)||(_btn.id.toLowerCase().indexOf(purpose)>=0)||(_btn.className.toLowerCase().indexOf(purpose)>=0))
40{rc=true;}
41return rc;}
42function fc_showInfosRequired(_evt)
43{_evt=_evt?_evt:event;var obj=_evt.target?_evt.target:_evt.srcElement;fc_updateWarningDisplay(obj,true);}
44function showCheckboxInfosRequired(_evt)
45{_evt=_evt?_evt:event;var obj=_evt.target?_evt.target:_evt.srcElement;if((obj.tagName=='INPUT')&&(obj.type=='checkbox'))
46fc_updateWarningDisplay(obj,true);}
47function fc_showInfosNotRequired(_evt)
48{_evt=_evt?_evt:event;var obj=_evt.target?_evt.target:_evt.srcElement;fc_updateWarningDisplay(obj,false);}
49function fc_getFormRow(_obj)
50{var row;if(_obj){if(_obj.fc_FormRow)
51row=_obj.fc_FormRow;else{var el=_obj;while(el&&!row){if(el.className&&(el.className.indexOf(FC_ROW_CLASS)>=0))
52row=el;else
53el=el.parentNode;}
54_obj.fc_FormRow=row;}}
55return row;}
56function fc_getPeerByClass(_obj,_className)
57{var peer;var row=fc_getFormRow(_obj);if(row){peer=eval('row.'+_className);if(!peer){peer=fc_getChildByClass(row,_className);if(peer)
58eval('row.'+_className+'=peer');}}
59return peer;}
60function fc_getChildByClass(_obj,_className)
61{var found;var elements=_obj.childNodes;if(!elements)
62return found;var len=elements.length;var i=0;while(i<len&&!found){var child=elements[i++];if(isOfClass(child,_className)){found=child;}
63else if(child.tagName!=undefined){var grandChild=fc_getChildByClass(child,_className);if(grandChild)
64found=grandChild;}}
65return found;}
66function fc_getElementText(_el)
67{return getElementText(_el);}
68function fc_getAbsolutePosition(posObj)
69{var retVal=new Object();retVal.x=0;retVal.y=0;while(posObj){retVal.x+=posObj.offsetLeft;retVal.y+=posObj.offsetTop;posObj=posObj.offsetParent;}
70return retVal;}
71function fc_getFieldLabel(_el)
72{return fc_getElementText(fc_getPeerByClass(_el,FC_LABEL_TEXT_CLASS));}
73function fc_getFieldInfoText(_el)
74{return fc_getElementText(fc_getPeerByClass(_el,FC_INFO_TEXT_CLASS));}
75function fc_showIcon(_img,_msg)
76{set_visible(_img,true);var imgContainer=fc_getErrorImgContainer(_img,false);show_element(imgContainer);_img.style.position='static';var top=_msg.offsetTop-_img.offsetTop;_img.style.position='relative';_img.style.top=((top>0)?top:0)+'px';}
77function fc_makeInfoMsgImg()
78{var img=document.createElement('IMG');img.src='../images/info.gif';img.alt=img.title=fc_globalMessages.info_img_alt;img.width=16;img.height=16;return img;}
79function fc_makeWarningMsgImg()
80{var img=document.createElement('IMG');img.src='../images/warning.gif';img.alt=img.title=fc_globalMessages.warn_img_alt;img.width=16;img.height=16;return img;}
81function fc_makeSpacerImg(_width)
82{var img=document.createElement('IMG');img.className='spacer';img.src='../images/Spacer.gif';img.width=_width;img.height=1;img.alt=' ';return img;}
83function fc_initMsgContainers(_obj,_infoText,_warnText)
84{var msgCont=fc_getPeerByClass(_obj,FC_MSG_ROW_CLASS);
84if(msgCont){var row=fc_getFormRow(_obj);var txtCont=fc_getChildByClass(row,FC_ERROR_TEXT_CLASS);if(txtCont){var p=txtCont.parentNode;if(_infoText&&_infoText.hasChildNodes())
85row.fc_infoMsg=fc_getOrMakeChildDiv(p,'InfoMessage2');if(_warnText&&_warnText.hasChildNodes())
86row.fc_warnMsg=fc_getOrMakeChildDiv(p,'WarnMessage2');}
87var imgCont=fc_getChildByClass(row,FC_MESSAGE_ICON_CLASS);if(imgCont){if(_infoText&&_infoText.hasChildNodes())
88row.fc_infoImg=fc_getOrMakeChildDiv(imgCont,'InfoImage2');if(_warnText&&_warnText.hasChildNodes())
89row.fc_warnImg=fc_getOrMakeChildDiv(imgCont,'WarnImage2');}}}
90function fc_getOrMakeChildDiv(_obj,_class)
91{var container=fc_getChildByClass(_obj,_class);if(!container&&_obj){container=document.createElement('DIV');container.className=_class;_obj.appendChild(container);}
92return container;}
93function fc_getInfoMsgContainer(_obj)
94{var row=fc_getFormRow(_obj);return row?row.fc_infoMsg:null;}
95function fc_getInfoImgContainer(_obj)
96{var row=fc_getFormRow(_obj);return row?row.fc_infoImg:null;}
97function fc_getWarnMsgContainer(_obj)
98{var row=fc_getFormRow(_obj);return row?row.fc_warnMsg:null;}
99function fc_getWarnImgContainer(_obj)
100{var row=fc_getFormRow(_obj);return row?row.fc_warnImg:null;}
101function fc_getErrorMsgContainer(_obj)
102{return fc_getPeerByClass(_obj,FC_ERROR_TEXT_CLASS);}
103function fc_getErrorImgContainer(_obj)
104{return fc_getPeerByClass(_obj,FC_MESSAGE_ICON_CLASS);}
105function fc_getContainer(_obj,_class,_create)
106{var container=fc_getPeerByClass(_obj,_class);if(!container&&_create){container=document.createElement('DIV');container.className=_class;}
107return container;}
108function fc_showWarningMessage(_obj)
109{fc_setMessageDisplay(_obj,false,true);var warning=fc_getWarnMsgContainer(_obj,false);if(warning&&warning.hasChildNodes()){show_element(warning);set_visible(warning,true);fc_showIcon(fc_getWarnImgContainer(_obj,false),warning);}}
110function fc_hideInitialMessage(_obj)
111{fc_hideInfoMsg(_obj);fc_setMessageDisplay(_obj,false,false);}
112function fc_hideWarningMessage(_obj)
113{fc_hideInfoMsg(_obj);fc_setMessageDisplay(_obj,false,false);}
114function fc_updateWarningDisplay(_obj,_required)
115{fc_hideErrorMsg(_obj);fc_hideInfoMsg(_obj);if(_obj.tagName!='TR'){if(!_required||!fc_isEmptyField(_obj,_required))
116fc_hideWarningMessage(_obj);else
117fc_showWarningMessage(_obj);}}
118function fc_isEmptyField(element,testSelection)
119{var empty;if(element.tagName=='INPUT'){if(element.type=='radio')
120empty=!get_which_radio(element);else if(element.type=='checkbox')
121empty=testSelection&&!element.checked;else
122empty=(element.value.length==0);}
123else
124empty=(element.value.length==0);return empty;}
125function fc_hideInfoMsg(_obj)
126{set_visible(fc_getInfoMsgContainer(_obj),false);set_visible(fc_getInfoImgContainer(_obj),false);}
127function fc_hideWarnMsg(_obj)
128{set_visible(fc_getWarnMsgContainer(_obj),false);set_visible(fc_getWarnImgContainer(_obj),false);}
129function fc_hideErrorMsg(_obj)
130{return;}
131function fc_copyChildren(srcParent,destParent)
132{var ch=srcParent.firstChild;while(ch){destParent.appendChild(ch.cloneNode(true));ch=ch.nextSibling;}}
133function fc_addTablePadding()
134{var table=document.getElementById('overTable');if(table)
135table.style.paddingBottom='45px';}
136function fc_isMacIE()
137{return((navigator.appName=='Microsoft Internet Explorer')&&(navigator.userAgent.toLowerCase().indexOf('mac')!=-1));}
138function FCDynamicMessageInfo(_inputEl,_msgHolder)
139{this.inputElement=_inputEl;this.messageHolder=_msgHolder;}
140function fc_setDimensions(_msgInfoArray,_holderClassName)
141{if(!_msgInfoArray||!_msgInfoArray.length)
142return;var input=_msgInfoArray[0].inputElement;var msgCell=fc_getPeerByClass(input,'FormInfoMsg');var imgCell=fc_getPeerByClass(input,'FormMsgIcon');var table=getAncestor('TABLE',msgCell);if(msgCell&&imgCell){var elHide=document.createElement('DIV');table.parentNode.insertBefore(elHide,table.nextSibling);var maxHeight=msgCell.style.height;var maxWidth=msgCell.style.width;var left=msgCell.offsetLeft;var msgClone=msgCell.cloneNode(true);for(var m=0;(m<_msgInfoArray.length);m++){var input=_msgInfoArray[m].inputElement;var holder=_msgInfoArray[m].messageHolder;fc_showHTMLBlock(msgCell,holder,msgCell);if(elHide.offsetTop>maxHeight)
143maxHeight=elHide.offsetTop;if(msgCell.offsetWidth>maxWidth)
144maxWidth=msgCell.offsetWidth;}
145table.parentNode.removeChild(elHide);removeChildren(msgCell);maxWidth+=5;msgCell.height=msgCell.style.height=maxHeight;msgCell.width=maxWidth;var minWidth=maxWidth-left;if(minWidth&&minWidth>0){msgCell.style.width=maxWidth+'px';msgCell.style.minWidth=minWidth+'px';msgCell.appendChild(fc_makeSpacerImg(minWidth));}
146fc_copyChildren(msgClone,msgCell);show_element(imgCell);var container=fc_getContainer(input,_holderClassName,true);container.nohide=true;msgCell.appendChild(container);set_visible(msgCell,true);}}
147function fc_showHTMLBlock(obj,contentHolder,message)
148{var icon=fc_getPeerByClass(obj,'FormMsgIcon');if(message){var hide=true;var ch=icon.childNodes;for(var i=0;(hide&&(i<ch.length));i++)
149if(ch[i].tagName=='IMG'&&ch[i].src.indexOf('error')>=0&&!isOfClass(ch[i],'HiddenErrorImage'))
150hide=false;if(hide)
151hide_element(icon);removeChildren(message);if(message.style.width){var spacer=fc_makeSpacerImg(parseInt(message.width));message.appendChild(spacer);}
152if(contentHolder&&contentHolder.hasChildNodes()){fc_copyChildren(contentHolder,message);}
153set_visible(message,true);show_element(message);}}
154function fc_showOtherMessage(_el,_msgHolder,_destContainerClass)
155{var infoImgCell=fc_getPeerByClass(_el,'FormMsgIcon');if(infoImgCell){fc_hideInitialMessage(_el);var holder=fc_getPeerByClass(_el,'ExpandedMessageHolder');if(holder)
156holder.alt=holder.alt+' '+fc_getElementText(_msgHolder);var cont=fc_getContainer(_el,_destContainerClass,true);fc_hideChildren(cont.parentNode);if(_msgHolder)
157fc_showHTMLBlock(infoImgCell,_msgHolder,cont);else
158set_visible(cont,false);}}
159function fc_activateEditButtons()
160{var btnTypes=['INPUT','BUTTON'];for(var t=0;(t<btnTypes.length);t++){var btns=document.getElementsByTagName(btnTypes[t]);if(btns.length<300){for(var b=0;(b<btns.length);b++){if(isOfClass(btns[b],FC_EDIT_BUTTON_CLASS))
161Utils.addEvent(btns[b],'click',fc_editComponent);}}}}
162function fc_activateFormInputs()
163{var containerTypes=['TD','DIV'];for(var t=0;(t<containerTypes.length);t++){var containers=document.getElementsByTagName(containerTypes[t]);if(containers.length<1000){for(var c=0;(c<containers.length);c++){if(isOfClass(containers[c],FC_INPUT_CLASS))
164fc_activateInputs(containers[c]);}}}}
165function fc_activateInputs(_container)
166{var required=fc_getPeerByClass(_container,FC_REQUIRED_CLASS)?true:false;var inputTypes=['INPUT','BUTTON','SELECT','TEXTAREA'];for(var t=0;(t<inputTypes.length);t++){var inputs=_container.getElementsByTagName(inputTypes[t]);if(inputs.length<300){for(var i=0;(i<inputs.length);i++){if((inputs[i].tagName!='INPUT')||(inputs[i].type!='hidden'))
167fc_registerComponent(inputs[i],required);}}}}
168function fc_init(_evt)
169{if(!fc_globalMessages){fc_globalMessages=new FCGlobalMessages('Information Cue','Warning Cue','This is Required.');}
170fc_activateFormInputs();fc_activateEditButtons();if(fc_isMacIE()){fc_addTablePadding();}}
171addOnLoadHandler(fc_init);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.