var WAX = function() { var _parseCriterias = 0; var _parseCriterias = 0; var _eventTypes = 0; var _minStringLen = 0; var _maxStringLen = 0; var _minElementWidth = 0; var _maxElementWidth = 0; var _minElementHeight = 0; var _maxElementHeight = 0; var _minStringWidth = 0; var _maxStringWidth = 0; var _minStringHeight = 0; var _maxStringHeight = 0; var _farTextMaxDeltaX = 0; var _farTextMaxDeltaY = 0; var _minStringLength = 0; var _maxStringLength = 0; var _docMinHeight = 0; var _parseTimeOut = 500; var _timedOut = false; var _hasTimeOut = true; var _arrInputs = {}; var ParseCriterias = { None: 0, EventObjects: 4, VerifyAttributeByAttachedText: 32, IgnoreImages: 64, IgnoreHiddenInputs: 2048, EnableAjaxSupport: 16384, VerifyDocumentHeight: 32768, InputsOnly: 65536, IgnoreFieldSets: 131072, IgnoreForms: 262144 }; var Event = { None: 0, OnClick: 1, OnSubmit: 2, OnMouseDown: 4, OnMouseUp: 8, HREFJavaScriptMethod: 16, FormAction: 32, Command: 64, HREFPound: 128, Role: 256 }; var InputType = { Unknown: 0, Text: 1, TextArea: 2, Password:3 , Submit: 4, Image: 5, Button: 6, Checkbox: 7, Radio: 8, Reset: 9, File: 10, Hidden: 11, Select: 12, EventObject: 13 }; var ElementType = { Unknown: 0, Label: 1, TableCell: 2, Header: 3, Table: 4, TableBody: 5, TableRow: 6, Input: 7, TextArea: 8, Button: 9, Image: 10, Select: 11, Link: 12, Container: 13, SelectOption: 14, Generic: 15, Form: 16, Comments: 17, FieldSet: 18 }; function Rect(left, top, right, bottom) { this.left = left; this.top = top; this.right = right; this.bottom = bottom; this.getLeft = function getLeft() { return this.left; }, this.getTop = function getTop() { return this.top; }, this.getRight = function getRight() { return this.right; }, this.getBottom = function getBottom() { return this.bottom; }, this.getRect = function getRect() { return this.left + ',' + this.top + ',' + this.right + ',' + this.bottom; } } return { getElement: function(index) { if( null == _arrInputs ) { return; } if( index<0 || index>=_arrInputs.length ) { return null; } return _arrInputs[index]; }, getLangs: function() { var arrLangs = new Array(); var metaTags = window.document.getElementsByTagName("meta"); var sLang = null; var oDocElement = window.document.documentElement; if( null != oDocElement ) { var sAttribute = oDocElement.getAttribute("lang"); if( null == sAttribute ) { window.document.documentElement.getAttribute("xml:lang"); } if( null != sAttribute && !( sAttribute=="en" && 2==sAttribute.length) ) { arrLangs.push(sAttribute); } } for( var i=0; i (_parseTimeOut*2) ) { _timedOut = true; } var arrLabels = new Array(); arrLabels.push(0); if( !_timedOut ) { this.collectNonInputs(oElement, oBoundaries, arrInputsDesc, arrLabels, arrInputs); if( _timedOut ) { arrLabels = new Array(); arrLabels.push(0); } } arrInputsDesc[0] = (arrInputsDesc.length-1)/2; var sDescription = arrInputsDesc.join("#!#"); sDescription = arrInputsDesc[1] = sDescription.length + "#!#" + sDescription; arrLabels[0] = (arrLabels.length-1)/2; if( 1==arrLabels.length ) { arrLabels.push("0"); } _arrInputs = arrInputs; sLabels = arrLabels.join("#!#"); sLabels = arrLabels[1] = sLabels.length + "#!#" + sLabels; var sAll = sDescription+sLabels; return ( ((_timedOut && _hasTimeOut) ? "E_TIMEDOUT" : "") + sAll.length.toString() + "#!#" + sAll); }, collectForms: function(arrInputsDesc, arrInputs) { if( _parseCriterias&ParseCriterias.IgnoreForms ) { return false; } if( typeof arrInputsDesc == "undefined" || typeof arrInputs == "undefined" ) { return false; } if( Array != arrInputsDesc.constructor || Array != arrInputs.constructor) { return false; } var oForms = window.document.forms; var elementType = {}; var inputType = {}; var length = oForms.length; for( var i=0; i maxCombinedParseTime ) { _timedOut = true; } if( !_timedOut && !(_parseCriterias&ParseCriterias.IgnoreImages) && !(_parseCriterias&ParseCriterias.InputsOnly) ) { this.processInputs(oElement.getElementsByTagName("IMG"), null, arrInputsDesc, arrInputs); } var endTime = new Date().getTime(); if( (endTime-startTime) > maxCombinedParseTime ) { _timedOut = true; } var endTime = new Date().getTime(); if( (endTime-startTime) > maxCombinedParseTime ) { _timedOut = true; } return true; }, collectNonInputs: function(oParent, oBoundaries, arrInputsDesc, arrLabels, arrInputs) { if( typeof oParent == "undefined" || typeof oBoundaries == "undefined" || typeof arrInputsDesc == "undefined" || typeof arrLabels == "undefined" || typeof arrInputs == "undefined" ) { return false; } if( Rect != oBoundaries.constructor || Array != arrInputsDesc.constructor || Array != arrLabels.constructor || Array != arrInputs.constructor ) { return false; } var matchUsingAttachedText = true; var usingEventObjects = (ParseCriterias.EventObjects==(_parseCriterias&ParseCriterias.EventObjects) ); var verifyAttributeByAttachedText = ( ParseCriterias.VerifyAttributeByAttachedText==(_parseCriterias&ParseCriterias.VerifyAttributeByAttachedText) ); var enableAjaxSupport = ( ParseCriterias.EnableAjaxSupport==(_parseCriterias&ParseCriterias.EnableAjaxSupport) ); if( !matchUsingAttachedText && !usingEventObjects && !verifyAttributeByAttachedText ) { return true; } var eventTypes = (usingEventObjects ? _eventTypes : 0); var oRectElement = new Rect(0, 0, 0, 0); var isFormCollection = false; var oItems = oParent.getElementsByTagName("*"); if( typeof oItems == "undefined" || 0==oItems.length ) { oItems = oParent.all; if( typeof oItems == "undefined" || 0==oItems.length ) { return false; } } var elementType = {}; var inputType = {}; var startTime = new Date().getTime(); var i = 0; for( i=0; i_parseTimeOut ) { _timedOut = true; break; } } var oElement = oItems[i]; if( typeof oElement == "undefined" ) { continue; } elementType.value = ElementType.Unknown; inputType.value = InputType.Unknown; if( !this.getElementType(oElement, elementType, inputType) && ElementType.Unknown != elementType.value ) { continue; } if( ElementType.Input==inputType.value || ElementType.Select==elementType.value || ElementType.Button==inputType.value || ElementType.Image==elementType.value || ElementType.SelectOption==elementType.value || ElementType.Form==elementType.value || InputType.File==inputType.value || InputType.Submit==inputType.value ) { continue; } var oRect = oElement.getBoundingClientRect(); if( InputType.Unknown == inputType.value && usingEventObjects ) { if( 0!=eventTypes && this.hasEventHandler(eventTypes, oElement) ) { inputType.value = InputType.EventObject; } } if( InputType.Unknown != inputType.value ) { var width = oRect.right - oRect.left; var height = oRect.bottom - oRect.top; var outOfBounds = ( width<_minElementWidth || width>_maxElementWidth || height<_minElementHeight || height>_maxElementHeight ); if( outOfBounds ) { if( _parseCriterias&ParseCriterias.IgnoreHiddenInputs ) { continue; } if( 0!=width && 0!=height ) { continue; } } if( InputType.TextArea == inputType.value || InputType.EventObject == inputType.value ) { var sInputDesc = this.processInput(oElement, oRect, elementType, inputType); if( null != sInputDesc ) { if( null != oBoundaries ) { this.expandRect(oRect, oBoundaries); } arrInputs.push(oElement); arrInputsDesc.push(sInputDesc.length); arrInputsDesc.push(sInputDesc); } } } else if( matchUsingAttachedText || verifyAttributeByAttachedText ) { var ptX = ((oRect.right-oRect.left)/2)+oRect.left; var ptY = ((oRect.bottom-oRect.top)/2)+oRect.top; if( !(ptX>=oBoundaries.left && ptX<=oBoundaries.right && ptY>=oBoundaries.top && ptY<=oBoundaries.bottom) ) { continue; } var sText = this.getElementText(oElement, oRect); if( null == sText ) { var oFirstChild = oElement.firstChild; if( null != oFirstChild ) { sText = this.getElementText(oFirstChild, oRect); } } if( null != sText ) { sText = sText.trim(); var length = sText.length; var sLabel = ""; if( length>0 ) { sLabel = "{" + elementType.value + ",0},{" + oRect.left + "," + oRect.top + "," + oRect.right + "," + oRect.bottom + "}"; sLabel+= "#!#" + length + "#!#" + sText; } else { sLabel = "{" + elementType.value + ",0},{" + oRect.left + "," + oRect.top + "," + oRect.right + "," + oRect.bottom + "}"; sLabel+= "#!#0"; } arrLabels.push(sLabel.length); arrLabels.push(sLabel); } } } return true; }, processInputs : function(oInputs, oBoundaries, arrInputsDesc, arrInputs) { if( typeof oInputs == "undefined" || typeof arrInputsDesc == "undefined" || typeof arrInputsDesc == "arrInputs" ) { return false; } if( ( oBoundaries!=null && Rect != oBoundaries.constructor ) || Array != arrInputsDesc.constructor || Array != arrInputs.constructor ) { return false; } var length = oInputs.length; if( 0 == length ) { return true; } var ignoreHiddenInputs = (ParseCriterias.IgnoreHiddenInputs==(_parseCriterias&ParseCriterias.IgnoreHiddenInputs)); var startTime = new Date().getTime(); var i = 0; for (i = 0; i_parseTimeOut ) { _timedOut = true; break; } } var oElement = oInputs[i]; var oRect = oElement.getBoundingClientRect(); if( !this.IsValidElement(oElement, oRect, ignoreHiddenInputs) ) { continue; } var elementType = {}; var inputType = {}; if( !this.getElementType(oElement, elementType, inputType) || InputType.Checkbox == inputType.value || ElementType.SelectOption == elementType.value ) { continue; } var sInputDesc = this.processInput(oElement, oRect, elementType, inputType); if( null != sInputDesc ) { if( null != oBoundaries ) { this.expandRect(oRect, oBoundaries); } arrInputs.push(oElement); arrInputsDesc.push(sInputDesc.length); arrInputsDesc.push(sInputDesc); } } return true; }, getElementText: function(oElement, oRect) { if( typeof oElement == "undefined" || typeof oRect == "undefined" ) { return null; } if( ClientRect != oRect.constructor ) { return null; } var width = oRect.right-oRect.left; var height = oRect.bottom-oRect.top; if( width<_minStringWidth || width>_maxStringWidth || height<_minStringHeight || height>_maxStringHeight ) { return null; } var innerText = oElement.innerText; if( null == innerText ) { return null; } innerText = innerText.trim(); var length = innerText.length; if( length<_minStringLength || length>_maxStringLength ) { return null; } return innerText; }, processInput: function(oElement, oRect, elementType, inputType) { if( typeof oElement == "undefined" || typeof oRect == "undefined" ) { return null; } if( ClientRect != oRect.constructor ) { return null; } var ajaxSupport = ( ParseCriterias.EnableAjaxSupport==(_parseCriterias&ParseCriterias.EnableAjaxSupport) ); var isImage = ( ParseCriterias.IgnoreImages==(_parseCriterias&ParseCriterias.IgnoreImages) ); var outerHTML = null; if( ElementType.Form!=elementType.value && ElementType.FieldSet!=elementType.value ) { outerHTML = oElement.outerHTML; } else if (InputType.Select == inputType.value) { outerHTML = "#"); } else { innerText = innerText.trim(); arrOptions.push(innerText); } } if( arrOptions.length >0 ) { var sOptions = "\"" + arrOptions.join("\":\"") + "\""; sOptions.replace("#", " "); innerText = arrOptions.length + "#!#" + sOptions; } } if( 0==length ) { innerText = "0#!#"; } } else if( InputType.Submit==inputType.value ) { innerText = oElement.getAttribute("value"); if( null == innerText ) { innerText = oElement.innerText; } } else if( InputType.EventObject==inputType.value ) { var oFirstChild = oElement.firstChild; if( null != oFirstChild ) { innerText = oFirstChild.innerText; } if( null == innerText || 0 == innerText.length ) { innerText = oElement.innerText; } if( null != innerText ) { innerText = innerText.trim(); } } else if( ElementType.Link == elementType.value ) { innerText = oElement.innerText; } else if( InputType.Radio == inputType.value && (null == innerText || 0 == innerText.length) ) { var oNextSibling = oElement.nextSibling; if( null != oNextSibling ) { innerText = oNextSibling.innerText; } } var arrDesc = this.getInputDescription(oElement, oRect, elementType, inputType); if( null == arrDesc ) { return null; } if( null == innerText ) { arrDesc.push("0"); } else { innerText = innerText.trim(); var length = innerText.length; if( 0==length ) { arrDesc.push("0"); } else { arrDesc.push(innerText.length); arrDesc.push(innerText); } } if( null == outerHTML ) { arrDesc.push("0"); } else { var length = outerHTML.length; if( 0==length ) { arrDesc.push("0"); } else { arrDesc.push(outerHTML.length); arrDesc.push(outerHTML); } } return arrDesc.join("#!#"); }, getInputDescription: function(oElement, oRect, elementType, inputType) { if( typeof oElement == "undefined" || typeof oRect == "undefined" ) { return null; } if( ClientRect != oRect.constructor ) { return null; } var arrItems = new Array(); arrItems.push("{" + elementType.value + "," + inputType.value + "},{" + oRect.left + "," + oRect.top + "," + oRect.right + "," + oRect.bottom + "}"); var oAttributes = oElement.attributes; if( null==oAttributes ) { arrItems.push("0"); } else { var length = oAttributes.length; arrItems.push(length); if( length > 0 ) { var sAttrs = ""; var i = 0; for( i=0; i0 ) { var sTemp = "\"" + oAttrPair.name + "\":\"" + oAttrPair.value + "\"," + sAttrs; sAttrs = sTemp; } else { sAttrs = "\"" + oAttrPair.name + "\":\"" + oAttrPair.value + "\""; } continue; } if( sAttrs.length>0 ) { sAttrs+=",\""; } else { sAttrs+= "\""; } sAttrs += oAttrPair.name + "\":\"" + oAttrPair.value + "\""; } arrItems.push(sAttrs.length); arrItems.push(sAttrs); } } return arrItems; }, expandRect: function(oElementRect, oBoundaries) { if( null == oBoundaries ) { return true; } if( typeof oElementRect == "undefined" || typeof oBoundaries == "undefined" ) { return false; } if( ClientRect != oElementRect.constructor || Rect != oBoundaries.constructor ) { return false; } if( oElementRect.left0) ? oElementRect.left-_farTextMaxDeltaX : 0); } if( oElementRect.top0) ? oElementRect.top-_farTextMaxDeltaY : 0); } if( oElementRect.right>oBoundaries.right ) { oBoundaries.right = oElementRect.right+_farTextMaxDeltaX; } if( oElementRect.bottom>oBoundaries.bottom ) { oBoundaries.bottom = oElementRect.bottom+_farTextMaxDeltaY; } return true; }, getElementType: function(oElement, elementType, inputType) { elementType.value = ElementType.Unknown; inputType.value = InputType.Unknown; if( typeof oElement == "undefined" ) { return false; } var isInputType = false; var nodeName = oElement.nodeName.toUpperCase(); var length = nodeName.length; if( 1==length ) { if( nodeName == "A" ) { elementType.value = ElementType.Link; } else if( nodeName == "B" ) { elementType.value = ElementType.Label; } } else if( 2==length ) { if( nodeName == "TD" || nodeName == "TH" ) { elementType.value = ElementType.TableCell; } if ( nodeName == "TR" ) { elementType.value = ElementType.TableRow; } if ( nodeName == "EM" ) { elementType.value = ElementType.Header; } else if( nodeName == "H1" || nodeName == "H2" || nodeName == "H3" || nodeName == "H4" || nodeName == "H5" || nodeName == "H6" ) { elementType.value = ElementType.Header; } } else if( 3==length ) { if ( nodeName == "DIV" ) { elementType.value = ElementType.Container; } else if( nodeName == "IMG" ) { elementType.value = ElementType.Image; isInputType = true; } } else if( 4==length ) { if ( nodeName == "SPAN" ) { elementType.value = ElementType.Container; } else if ( nodeName == "FORM" ) { inputType.value = InputType.Unknown; elementType.value = ElementType.Form; } } else if( 5==length ) { if( nodeName == "INPUT" ) { elementType.value = ElementType.Input; isInputType = true; } else if( nodeName == "LABEL" ) { elementType.value = ElementType.Label; } } else if( 6==length ) { if( nodeName == "OPTION" ) { elementType.value = ElementType.SelectOption; } else if( nodeName == "SELECT" ) { elementType.value = ElementType.Select; inputType.value = InputType.Select; } else if( nodeName == "BUTTON" ) { elementType.value = ElementType.Button; this.getElementInputType(oElement, inputType); if( InputType.Submit != inputType.value ) { inputType.value = InputType.Button; } } else if( nodeName == "STRONG" ) { elementType.value = ElementType.Header; } } else if( 8==length ) { if( nodeName == "TEXTAREA" ) { elementType.value = ElementType.TextArea; inputType.value = InputType.TextArea; } else if( nodeName == "FIELDSET" ) { inputType.value = InputType.Unknown; elementType.value = ElementType.FieldSet; } } if( ElementType.Unknown == elementType.value ) { elementType.value = ElementType.Generic; } if( true == isInputType ) { this.getElementInputType(oElement, inputType); if( ElementType.Image==elementType.value && InputType.Submit!=inputType.value ) { inputType.value = InputType.Image; } } return true; }, getElementInputType: function(oElement, inputType) { inputType.value = InputType.Unknown; if( typeof oElement == "undefined" ) { return false; } var sType = oElement.getAttribute("type"); if( null == sType || 0 == sType.length ) { inputType.value = InputType.Text; return true; } inputType.value = InputType.Text; sType = sType.toUpperCase(); if( sType == "PASSWORD" ) { inputType.value = InputType.Password; } else if( sType == "SUBMIT" ) { inputType.value = InputType.Submit; } else if( sType == "IMAGE" ) { inputType.value = InputType.Image; } else if( sType == "BUTTON" ) { inputType.value = InputType.Button; } else if( sType == "CHECKBOX" ) { inputType.value = InputType.Checkbox; } else if( sType == "RADIO" ) { inputType.value = InputType.Radio; } else if( sType == "RESET" ) { inputType.value = InputType.Reset; } else if( sType == "FILE" ) { inputType.value = InputType.File; } else if( sType == "HIDDEN" ) { inputType.value = InputType.Hidden; } else { inputType.value = InputType.Text; } return true; }, IsValidElement: function(oElement, oRect, bIgnoreHiddenInputs) { if( typeof oElement == "undefined" || typeof oRect == "undefined" || ClientRect != oRect.constructor ) { return false; } var nWidth = oRect.right - oRect.left; var nHeight = oRect.bottom - oRect.top; if( 0 == nWidth && 0 == nHeight ) { return (bIgnoreHiddenInputs?false:true); } if( nWidth<_minElementWidth || nWidth>_maxElementWidth || nHeight<_minElementHeight || nHeight>_maxElementHeight ) { return false; } var valid = true; try { var sType = oElement.getAttribute("type"); if( null != sType ) { if( sType == "hidden" ) { valid = false; } } } catch(err) {} return valid; }, hasEventHandler: function(eventType, oElement) { if( 0 == eventType || typeof oElement == "undefined") { return false; } if( eventType&Event.OnClick ) { if( null != oElement.getAttribute("onclick") ) { return true; } } if( eventType&Event.OnSubmit ) { if( null != oElement.getAttribute("onsubmit") ) { return true; } } if( eventType&Event.OnMouseDown ) { if( null != oElement.getAttribute("onmousedown") ) { return true; } } if( eventType&Event.OnMouseUp ) { if( null != oElement.getAttribute("onmouseup") ) { return true; } } if( eventType&Event.HREFJavaScriptMethod || eventType&Event.HREFPound ) { var handler = oElement.getAttribute("href"); if( null != handler ) { handler = handler.toLowerCase(); if( 0 == handler.indexOf("javascript") ) { return true; } if( 0 == handler.indexOf("#") ) { return true; } } } if( eventType&Event.Command ) { if( null != oElement.getAttribute("command") ) { return true; } } if( eventType&Event.FormAction ) { if( null != oElement.getAttribute("formaction") ) { return true; } } if( eventType&Event.Role ) { var handler = oElement.getAttribute("role"); if( null != handler ) { handler = handler.toLowerCase(); if( 0 == handler.indexOf("button") ) { return true; } } } return false; } };} ();function waxGetLangs() { return WAX.getLangs();}function waxGetElement(index) { if( null == index ) { return; } return WAX.getElement(index);}function waxGetCandidates(args) { if (Array != args.constructor || ( 15!=args.length && 16!=args.length) ) { return "E_INVALIDARG"; } return WAX.Parse(args);}
Please visit  http://www.sis.utk.edu/www.sis.utk.edu/ASvoting and cast your vote for new 2012-2013 officers and members-at-large.

Cast your ballot for one (1) vice-president/ president-elect, one (1) secretary, and up to two (2) members-at-large. 


Ballots will be collected between Thursday July 19, 2012 and 5 PM EDT Wednesday August 1, 2012.


Congratulations to all of the nominees, and thanks to those who nominated them.



-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- To join/leave the list or browse the ISALUMNI archives, please see: http://listserv.utk.edu/archives/isalumni.html