| Related sites for http://www.memra.org |
| North_American_Die_Casting_Association North American association promoting the die casting industry. | | Perlite_Institute_Inc_ An international trade association of perlite producers. | | Pet_Food_Institute Represents manufacturers of dog and cat food produced in the United States. Promotes initiatives to advance pet nutrition and the role of pets in our society. | | Plastic_Shipping_Container_Institute_(PSCI) An international organization of producers of plastic pails. The membership also includes suppliers of plastic resin, handles, lids, molds, closures and colorants used in container production. | | Porcelain_Enamel_Institute Promotes programs and education that advance the common interests of porcelain enameling plants and suppliers of porcelain enameling materials and equipment. | | Rare-Earth_Magnetics_Association Information on the science and technology used in the production of rare-earth (neodymium-iron-boron and samarium-cobalt) magnets. | | Salt_Institute A non-profit association of companies that produce and market sodium chloride.(salt). Provides public information about salt and its more than 14,000 known uses. | | Semiconductor_Industry_Association Trade association representing the U.S. microchip manufacturing industry. | | Society_of_Manufacturing_Engineers International society serving its members and the manufacturing community through the advancement of professionalism, knowledge, and learning. This society has over 60,000 members in 70 countries. | | Sporting_Goods_Manufacturers_Association_(SGMA) Trade organization representing the manufacturers of sporting goods equipment, athletic apparel and athletic footwear. | | Steel_Tank_Institute Provides information regarding safe storage of petroleum products in factory-fabricated steel above and underground tanks. | | Tire_Retread_Information_Bureau Provides information about retreaded tires, retreads and retreading. | | Unified_Abrasives_Manufacturers_Association An association of abrasive product manufacturers formed with the merger of the Abrasive Grain Association, Coated Abrasives Manufacturers Association, Diamond Wheel Manufacturers Association and the G | | VDMA Non-profit organization, representing the local machinery and industrial equipment manufacturers. Germany. | | Wood_Machinery_Manufacturers_of_America Association of wood machinery manufacturers established to increase the productivity and profitability of U.S. machinery and tooling manufacturers. | | Stock_Investing_Software A comprehensive collection of finance and investing software. | | Bandido_Books Essential facts at clinical speed. Nursing books by nurses and for nurses with the latest in clinical therapeutics. Publishers of Martin's Quick-E Clinical Reference Guides. | | Comprehensive_Nursing_Care_Plans Provides samples of nursing care plans addressing problems of nursing home residents. Offers demonstration, membership types, and frequently asked questions. [May not support all browsers.] | | Creations_4_Him Christian T-shirts for nurses and other healthcare professionals. | | CurtinCalls Nursing consultant providing timely and occasionally irreverent views on nursing and healthcare. Includes discussion forum and chat room, editorials and conference and newsletter information. | | Educational_Resources,_Inc_ Educational resource that focuses on the specific needs of the international healthcare community through a variety of services for the student nurse, the LPN, the RN, the nurse educator and other hea | | End_Product_Corporation Offers reference summaries for a variety of specialties. | | Geriatric_Video_Productions Tools to improve patient outcomes, techniques for improving assessment skills, and materials which will improve geriatric nursing skills. | | Gerontological_Nurse_Ventures Products include manuals, policies and procedures, educational programs and an electronic magazine. Consultants in MDS, crisis intervention management, careplanning and education. | | Great_Nurses Offers educational products and services for nurses, including audio tapes, videos, books and educational programs throughout the USA. | | Health_Education_Systems,_Inc_ Provides computerized exams for nurses which contain critical thinking test items, and consulting services to assist faculty. Includes list of products, sample exam, and newsletter. | | Hospital_Christian_Healthcare Teaches caregivers how to meet the spiritual needs of their patients. Offers lists of publications, tapes, conferences, and seminars. | | Infusion_Knowledge Specializing in IV therapy information. Offers IV questions and answers for fee, reference cards, and self-study materials. | | MEDS_Publishing NCLEX test preparation materials, including computer software, videos, books, audio, and live review courses. | | Medware Educational software for nursing, nursing students, and allied health. | | Neuroscience_Nursing_Consultants Offers products and services including a review course, text book and study guide, stroke risk assessment, life care planning and consulting. | | Nursecom,_Inc_ Focuses on nursing and communicating with nurses. Offers information on services including book and journal publishing, association management, and conference planning and management. | | Nurses_Station_Catalog A collection of gifts and tools for the nursing profession. Scrubs, uniforms, shoes, books, clothing, hats, mugs, t-shirts, and gifts. | | Nurses_com Offers daily news and product updates for professionals in the health care industry, including information on manufacturing, technology, equipment, supplies, discussion forums, a newsletter and softwa | | Tender_Loving_Calling Offers support and inspiration for caregivers. Includes books, workshops, and calendar. | | Too_Live_Nurse Produces live shows for healthcare conventions, using humor to educate. Includes photographs, audio and video clips, cassettes and CDs for sale. | | Zwerdling_Nursing_Image_Archives Nursing, medical, and healthcare art and photographs on historic and modern postcards. Images offered for sale, wanted for purchase, available for leasing of reproduction rights. | | Abrasives_Mall Products, services, and industry news. | | C__I__Abrasives Manufactures a full line of abrasive products. Based in Korea. | | China_Abrasives_Import&Export_Corporation A foreign trade company for abrasive materials and tools. |
|
Welcome To MEMRA!! (Mechanical Equipment Manufacturers Representatives Association)
//
//
// -1) {
func = new Function(functionPrefix + " " + ev);
}
else {
func = new Function("event", functionPrefix + " " + ev);
}
eval("control." + eventType + " = func;");
}
function Anthem_GetXMLHttpRequest() {
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else {
if (window.Anthem_XMLHttpRequestProgID) {
return new ActiveXObject(window.Anthem_XMLHttpRequestProgID);
} else {
var progIDs = ["Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
for (var i = 0; i < progIDs.length; ++i) {
var progID = progIDs[i];
try {
var x = new ActiveXObject(progID);
window.Anthem_XMLHttpRequestProgID = progID;
return x;
} catch (e) {
}
}
}
}
return null;
}
// This array is used to keep track of clientCallBack functions when using
// an IOFrame to handle callbacks.
var callbackFrames = new Array();
// This function is called by the onload event of the IOFrame after the
// callback response is received. The function parses the response, updates
// the page, and invokes the clientCallBack function.
function Anthem_HandleIOFrameResponse(frameid) {
var iframe = document.getElementById(frameid);
if (iframe != null) {
var doc = Anthem_ExtractIFrameDocument(iframe);
if (doc.getElementsByTagName("textarea").length > 0) {
// Extract the response
var response = { responseText: doc.getElementById("response").value.replace(//, "") };
if (typeof(Anthem_DebugResponseText) == "function") {
Anthem_DebugResponseText(response.responseText);
}
// Parse the response
var result = Anthem_GetResult(response);
if (result.error) {
if (typeof(Anthem_DebugError) == "function") {
Anthem_DebugError(result.error);
}
if (typeof(window.Anthem_Error) == "function") {
Anthem_Error(result);
}
}
// Update the page
Anthem_UpdatePage(result);
// Run the client scripts
Anthem_EvalClientSideScript(result);
// Run the custom post callback function
for (var index in callbackFrames) {
var frame = callbackFrames[index];
if (frame != null && frame.id == frameid) {
callbackFrames.splice(index, 1);
frame.clientCallBack(result, frame.clientCallBackArg);
break;
}
}
// Run the common post callback function
if (typeof(window.Anthem_PostCallBack) == "function") {
Anthem_PostCallBack();
}
}
setTimeout("document.body.removeChild(document.getElementById(\"" + frameid + "\"))", 10);
}
}
// Returns the iframe document
function Anthem_ExtractIFrameDocument(iFrameEl) {
var doc = null;
if (iFrameEl.contentDocument) { // For NS6
doc = iFrameEl.contentDocument;
} else if (iFrameEl.contentWindow) { // For IE5.5 and IE6
doc = iFrameEl.contentWindow.document;
} else if (iFrameEl.document) { // For IE5
doc = iFrameEl.document;
} else {
//alert("Error: could not find iFrame document");
return null;
}
return doc;
}
// Returns the form that is posted back using AJAX
function Anthem_GetForm() {
var form = document.getElementById(Anthem_FormID);
return form;
}
// Returns the URL for callbacks
function Anthem_GetCallBackUrl() {
var form = Anthem_GetForm();
var action = form.action + (form.action.indexOf('?') == -1 ? "?" : "&") + "Anthem_CallBack=true";
return action;
}
function Anthem_CallBack(url, target, id, method, args, clientCallBack, clientCallBackArg, includeControlValuesWithCallBack, updatePageAfterCallBack) {
if (typeof(window.Anthem_PreCallBack) == "function") {
var preCallBackResult = Anthem_PreCallBack();
if (!(typeof preCallBackResult == "undefined" || preCallBackResult)) {
if (typeof(window.Anthem_CallBackCancelled) == "function") {
Anthem_CallBackCancelled();
}
return null;
}
}
var encodedData = "";
if (target == "Page") {
encodedData += "&Anthem_PageMethod=" + method;
} else if (target == "MasterPage") {
encodedData += "&Anthem_MasterPageMethod=" + method;
} else if (target == "Control") {
encodedData += "&Anthem_ControlID=" + id.split(":").join("_");
encodedData += "&Anthem_ControlMethod=" + method;
}
if (args) {
for (var argsIndex = 0; argsIndex < args.length; ++argsIndex) {
if (args[argsIndex] instanceof Array) {
for (var i = 0; i < args[argsIndex].length; ++i) {
encodedData += "&Anthem_CallBackArgument" + argsIndex + "=" + Anthem_Encode(args[argsIndex][i]);
}
} else {
encodedData += "&Anthem_CallBackArgument" + argsIndex + "=" + Anthem_Encode(args[argsIndex]);
}
}
}
if (updatePageAfterCallBack) {
encodedData += "&Anthem_UpdatePage=true";
}
// Anthem will normally use an XmlHttpRequest to communicate with the server.
// But if an Anthem.FileUpload control is discovered on the page, then Anthem
// will use a hidden IFRAME instead. This hidden IFRAME is often called an IOFrame
// by AJAX library authors, so that is the name we use here.
var useIOFrame = false;
// Scan the controls on the form and extract their values.
if (includeControlValuesWithCallBack) {
var form = Anthem_GetForm();
if (form != null) {
for (var elementIndex = 0; elementIndex < form.length; ++elementIndex) {
var element = form.elements[elementIndex];
if (element.name) {
var elementValue = null;
if (element.nodeName.toUpperCase() == "INPUT") {
var inputType = element.getAttribute("type").toUpperCase();
if (inputType == "TEXT" || inputType == "PASSWORD" || inputType == "HIDDEN") {
elementValue = element.value;
} else if (inputType == "CHECKBOX" || inputType == "RADIO") {
if (element.checked) {
elementValue = element.value;
}
} else if (inputType == "FILE") {
// If the FILE element has a value (the path to the file), then an
// IOFrame will be used to handle the callback.
useIOFrame = useIOFrame | !(element.value == null || element.value.length == 0);
}
} else if (element.nodeName.toUpperCase() == "SELECT") {
if (element.multiple) {
elementValue = [];
for (var i = 0; i < element.length; ++i) {
if (element.options[i].selected) {
elementValue.push(element.options[i].value);
}
}
} else if (element.length == 0) {
elementValue = null;
} else {
elementValue = element.value;
}
} else if (element.nodeName.toUpperCase() == "TEXTAREA") {
elementValue = element.value;
}
if (elementValue instanceof Array) {
for (var i = 0; i < elementValue.length; ++i) {
encodedData += "&" + element.name + "=" + Anthem_Encode(elementValue[i]);
}
} else if (elementValue != null) {
encodedData += "&" + element.name + "=" + Anthem_Encode(elementValue);
}
}
}
// ASP.NET 1.1 won't fire any events if neither of the following
// two parameters are not in the request so make sure they're
// always in the request.
if (typeof form.__VIEWSTATE == "undefined") {
encodedData += "&__VIEWSTATE=";
}
if (typeof form.__EVENTTARGET == "undefined") {
encodedData += "&__EVENTTARGET=";
}
}
}
if (encodedData.length > 0) {
encodedData = encodedData.substring(1);
}
if (typeof(Anthem_DebugRequestText) == "function") {
Anthem_DebugRequestText(encodedData.split("&").join("\n&"));
}
// Send the callback request to the server. Use an IOFrame if there is a file upload,
// otherwise use an XmlHttpRequest.
if (useIOFrame) {
// To allow multiple requests at the same time, all of the Anthem parameters are
// passed to the server via the querystring
var action = Anthem_GetCallBackUrl();
action = action + "&Anthem_IOFrame=true";
if (updatePageAfterCallBack) {
action = action + "&Anthem_UpdatePage=true";
}
// We could generate an anonymous function on the fly to handle the clientCallBack
// and assign that to the iframe onload event (in fact this is how XmlHttpRequests are
// handled). But that makes it very hard to debug the callback response. Instead
// we will stuff the clientCallBack function and args into an array and then hard code
// the onload event handler. The handler will find the appropriate callback info in
// the array and handle the clientCallBack.
var id = "f" + new String(Math.floor(9999 * Math.random())); // Generate frame number
if (typeof(clientCallBack) == "function") {
var frame = { "id":id, "clientCallBack":clientCallBack, "clientCallBackArg":clientCallBackArg };
callbackFrames.push(frame);
}
// Create a new, invisible iframe to handle the io.
var ioframe = null;
if (window.ActiveXObject) {
ioframe = document.createElement("");
} else {
ioframe = document.createElement("iframe");
ioframe.id = id;
ioframe.name = id;
ioframe.onload = function (){ Anthem_HandleIOFrameResponse(id); }
}
ioframe.style.visibility = "hidden";
ioframe.style.height = "1px";
document.body.appendChild(ioframe);
// Submit this form in the hidden iframe
var theForm = Anthem_GetForm();
var tempActionUri = theForm.action;
theForm.action = action;
theForm.target = id;
try {
theForm.submit();
} catch (e) {
result = { "value": null, "error": e.message };
if (typeof(Anthem_DebugError) == "function") {
Anthem_DebugError(e.name + ": " + e.message + " (" + e.number + ")");
}
if (typeof(window.Anthem_Error) == "function") {
Anthem_Error(result);
}
}
// Restore the form
theForm.target = "";
theForm.action = tempActionUri;
} else {
var x = Anthem_GetXMLHttpRequest();
var result = null;
if (!x) {
result = { "value": null, "error": "NOXMLHTTP" };
if (typeof(Anthem_DebugError) == "function") {
Anthem_DebugError(result.error);
}
if (typeof(window.Anthem_Error) == "function") {
Anthem_Error(result);
}
if (typeof(clientCallBack) == "function") {
clientCallBack(result, clientCallBackArg);
}
return result;
}
var action = Anthem_GetCallBackUrl();
x.open("POST", url ? url : action, clientCallBack ? true : false);
x.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
x.setRequestHeader("Accept-Encoding", "gzip, deflate");
if (typeof(clientCallBack) == "function") {
x.onreadystatechange = function() {
if (x.readyState != 4) {
return;
}
if (typeof(Anthem_DebugResponseText) == "function") {
Anthem_DebugResponseText(x.responseText);
}
result = Anthem_GetResult(x);
if (result.error) {
if (typeof(Anthem_DebugError) == "function") {
Anthem_DebugError(result.error);
}
if (typeof(window.Anthem_Error) == "function") {
Anthem_Error(result);
}
}
if (updatePageAfterCallBack) {
Anthem_UpdatePage(result);
}
Anthem_EvalClientSideScript(result);
clientCallBack(result, clientCallBackArg);
x = null;
if (typeof(window.Anthem_PostCallBack) == "function") {
Anthem_PostCallBack();
}
}
}
x.send(encodedData);
if (typeof(clientCallBack) != "function") {
if (typeof(Anthem_DebugResponseText) == "function") {
Anthem_DebugResponseText(x.responseText);
}
result = Anthem_GetResult(x);
if (result.error) {
if (typeof(Anthem_DebugError) == "function") {
Anthem_DebugError(result.error);
}
if (typeof(window.Anthem_Error) == "function") {
Anthem_Error(result);
}
}
if (updatePageAfterCallBack) {
Anthem_UpdatePage(result);
}
Anthem_EvalClientSideScript(result);
if (typeof(window.Anthem_PostCallBack) == "function") {
Anthem_PostCallBack();
}
}
}
return result;
}
function Anthem_GetResult(x) {
var result = { "value": null, "error": null };
var responseText = x.responseText;
try {
result = eval("(" + responseText + ")");
} catch (e) {
if (responseText.length == 0) {
result.error = "NORESPONSE";
} else {
result.error = "BADRESPONSE";
result.responseText = responseText;
}
}
return result;
}
function Anthem_SetHiddenInputValue(form, name, value) {
var input = null;
if (form[name]) {
input = form[name];
} else {
input = document.createElement("input");
input.setAttribute("name", name);
input.setAttribute("type", "hidden");
}
input.setAttribute("value", value);
var parentElement = input.parentElement ? input.parentElement : input.parentNode;
if (parentElement == null) {
form.appendChild(input);
form[name] = input;
}
}
function Anthem_RemoveHiddenInput(form, name) {
var input = form[name];
if (input != null && typeof(input) != "undefined") {
var parentElement = input.parentElement ? input.parentElement : input.parentNode;
if (parentElement != null) {
form[name] = null;
parentElement.removeChild(input);
}
}
}
function Anthem_FireEvent(eventTarget, eventArgument, clientCallBack, clientCallBackArg, includeControlValuesWithCallBack, updatePageAfterCallBack) {
var form = Anthem_GetForm();
Anthem_SetHiddenInputValue(form, "__EVENTTARGET", eventTarget);
Anthem_SetHiddenInputValue(form, "__EVENTARGUMENT", eventArgument);
Anthem_CallBack(null, null, null, null, null, clientCallBack, clientCallBackArg, includeControlValuesWithCallBack, updatePageAfterCallBack);
form.__EVENTTARGET.value = "";
form.__EVENTARGUMENT.value = "";
}
function Anthem_UpdatePage(result) {
var form = Anthem_GetForm();
if (result.viewState) {
Anthem_SetHiddenInputValue(form, "__VIEWSTATE", result.viewState);
}
if (result.viewStateEncrypted) {
Anthem_SetHiddenInputValue(form, "__VIEWSTATEENCRYPTED", result.viewStateEncrypted);
}
if (result.eventValidation) {
Anthem_SetHiddenInputValue(form, "__EVENTVALIDATION", result.eventValidation);
}
if (result.controls) {
for (var controlID in result.controls) {
var containerID = "Anthem_" + controlID.split("$").join("_") + "__";
var control = document.getElementById(containerID);
if (control) {
control.innerHTML = result.controls[controlID];
if (result.controls[controlID] == "") {
control.style.display = "none";
} else {
control.style.display = "";
}
}
}
}
if (result.pagescript) {
Anthem_LoadPageScript(result, 0);
}
}
// Load each script in order and wait for each one to load before proceeding
function Anthem_LoadPageScript(result, index) {
if (index < result.pagescript.length) {
try {
var isExternalScript = false;
var script = document.createElement('script');
script.type = 'text/javascript';
if (result.pagescript[index].indexOf('src=') == 0) {
isExternalScript = true;
script.src = result.pagescript[index].substring(4);
} else {
if (script.canHaveChildren ) {
script.appendChild(document.createTextNode(result.pagescript[index]));
} else {
script.text = result.pagescript[index];
}
}
var heads = document.getElementsByTagName('head');
if (heads != null && typeof(heads) != "undefined" && heads.length > 0) {
var head = heads[0];
// The order that scripts appear is important since later scripts can
// redefine a function. Therefore it is important to add every script
// to the page and in the same order that they were added on the server.
// On the other hand, if we just keep adding scripts the DOM will grow
// unnecessarily. This code scans the element block and removes
// previous instances of the identical script.
var found = false;
for (var child = 0; child < head.childNodes.length; child++) {
var control = head.childNodes[child];
if (typeof(control.tagName) == "string") {
if (control.tagName.toUpperCase() == "SCRIPT") {
if (script.src.length > 0) {
if (script.src == control.src) {
found = true;
break;
}
} else if (script.innerHTML.length > 0) {
if (script.innerHTML == control.innerHTML) {
found = true;
break;
}
}
}
}
}
if (found) {
head.removeChild(control);
}
var scriptAddedToHead = false;
if (typeof script.readyState != "undefined" && !window.opera) {
script.onreadystatechange = function() {
if (script.readyState != "complete" && script.readyState != "loaded") {
return;
} else {
Anthem_LoadPageScript(result, index + 1);
}
}
} else {
if (isExternalScript) // if it's an external script, only execute the next script when the previous one is loaded.
{
script.onload = function() {
Anthem_LoadPageScript(result, index + 1);
}
}
else // I didn't find a way for script blocks to fire some onload event. So in this case directly call the Anthem_LoadPageScript for the next script.
{
document.getElementsByTagName('head')[0].appendChild(script);
scriptAddedToHead = true;
Anthem_LoadPageScript(result, index + 1);
}
}
// Now we append the new script and move on to the next script.
// Note that this is a recursive function. It stops when the
// index grows larger than the number of scripts.
if (!scriptAddedToHead)
document.getElementsByTagName('head')[0].appendChild(script);
}
} catch (e) {
Anthem_DebugError("Error adding page script to head. " + e.name + ": " + e.message);
}
}
}
function Anthem_EvalClientSideScript(result) {
if (result.script) {
for (var i = 0; i < result.script.length; ++i) {
try {
eval(result.script[i]);
} catch (e) {
alert("Error evaluating client-side script!\n\nScript: " + result.script[i] + "\n\nException: " + e);
}
}
}
}
//Fix for bug #1429412, "Reponse callback returns previous response after file push".
//see http://sourceforge.net/tracker/index.php?func=detail&aid=1429412&group_id=151897&atid=782464
function Anthem_Clear__EVENTTARGET() {
var form = Anthem_GetForm();
Anthem_SetHiddenInputValue(form, "__EVENTTARGET", "");
}
function Anthem_InvokePageMethod(methodName, args, clientCallBack, clientCallBackArg) {
Anthem_Clear__EVENTTARGET(); // fix for bug #1429412
return Anthem_CallBack(null, "Page", null, methodName, args, clientCallBack, clientCallBackArg, true, true);
}
function Anthem_InvokeMasterPageMethod(methodName, args, clientCallBack, clientCallBackArg) {
Anthem_Clear__EVENTTARGET(); // fix for bug #1429412
return Anthem_CallBack(null, "MasterPage", null, methodName, args, clientCallBack, clientCallBackArg, true, true);
}
function Anthem_InvokeControlMethod(id, methodName, args, clientCallBack, clientCallBackArg) {
Anthem_Clear__EVENTTARGET(); // fix for bug #1429412
return Anthem_CallBack(null, "Control", id, methodName, args, clientCallBack, clientCallBackArg, true, true);
}
function Anthem_PreProcessCallBack(
control,
e,
eventTarget,
causesValidation,
validationGroup,
imageUrlDuringCallBack,
textDuringCallBack,
enabledDuringCallBack,
preCallBackFunction,
callBackCancelledFunction,
preProcessOut
) {
var valid = true;
if (causesValidation && typeof(Page_ClientValidate) == "function") {
valid = Page_ClientValidate(validationGroup);
}
if (typeof(WebForm_OnSubmit) == "function") {
valid = WebForm_OnSubmit();
}
if (valid) {
var preCallBackResult = true;
if (typeof(preCallBackFunction) == "function") {
preCallBackResult = preCallBackFunction(control, e);
}
if (typeof(preCallBackResult) == "undefined" || preCallBackResult) {
var inputType = control.getAttribute("type");
inputType = (inputType == null) ? '' : inputType.toUpperCase();
if (inputType == "IMAGE" && e != null) {
var form = Anthem_GetForm();
if (e.offsetX) { // IE
Anthem_SetHiddenInputValue(form, eventTarget + ".x", e.offsetX);
Anthem_SetHiddenInputValue(form, eventTarget + ".y", e.offsetY);
} else { // FireFox + ???
var offset = GetControlLocation(control);
Anthem_SetHiddenInputValue(form, eventTarget + ".x", e.clientX - offset.x + 1 + window.pageXOffset);
Anthem_SetHiddenInputValue(form, eventTarget + ".y", e.clientY - offset.y + 1 + window.pageYOffset);
}
}
if (imageUrlDuringCallBack || textDuringCallBack) {
var nodeName = control.nodeName.toUpperCase();
if (nodeName == "INPUT") {
if (inputType == "CHECKBOX" || inputType == "RADIO" || inputType == "TEXT") {
preProcessOut.OriginalText = GetLabelText(control.id);
SetLabelText(control.id, textDuringCallBack);
} else if (inputType == "IMAGE") {
if (imageUrlDuringCallBack) {
preProcessOut.OriginalText = control.src;
control.src = imageUrlDuringCallBack;
} else {
preProcessOut.ParentElement = control.parentElement ? control.parentElement : control.parentNode;
if (preProcessOut.ParentElement) {
preProcessOut.OriginalText = preProcessOut.ParentElement.innerHTML;
preProcessOut.ParentElement.innerHTML = textDuringCallBack;
}
}
} else if (inputType == "SUBMIT" || inputType == "BUTTON") {
preProcessOut.OriginalText = control.value;
control.value = textDuringCallBack;
}
} else if (nodeName == "SELECT" || nodeName == "SPAN") {
preProcessOut.OriginalText = GetLabelText(control.id);
SetLabelText(control.id, textDuringCallBack);
} else {
preProcessOut.OriginalText = control.innerHTML;
control.innerHTML = textDuringCallBack;
}
}
// Disable the control during callback if required
control.disabled = (typeof(enabledDuringCallBack) == "undefined") ? false : !enabledDuringCallBack;
return true;
} else {
// Callback cancelled
if (typeof(callBackCancelledFunction) == "function") {
callBackCancelledFunction(control, e);
}
return false;
}
} else {
// Validation failed
return false;
}
}
function Anthem_PreProcessCallBackOut() {
// Fields
this.ParentElement = null;
this.OriginalText = '';
}
function Anthem_PostProcessCallBack(
result,
control,
e,
eventTarget,
clientCallBack,
clientCallBackArg,
imageUrlDuringCallBack,
textDuringCallBack,
postCallBackFunction,
preProcessOut
) {
if (typeof(postCallBackFunction) == "function") {
postCallBackFunction(control, e);
}
// Re-enable the control if it was disabled during callback
control.disabled = false;
var inputType = control.getAttribute("type");
inputType = (inputType == null) ? '' : inputType.toUpperCase();
if (inputType == "IMAGE") {
var form = Anthem_GetForm();
Anthem_RemoveHiddenInput(form, eventTarget + ".x");
Anthem_RemoveHiddenInput(form, eventTarget + ".y");
}
if (imageUrlDuringCallBack || textDuringCallBack) {
var nodeName = control.nodeName.toUpperCase();
if (nodeName == "INPUT") {
if (inputType == "CHECKBOX" || inputType == "RADIO" || inputType == "TEXT") {
SetLabelText(control.id, preProcessOut.OriginalText);
} else if (inputType == "IMAGE") {
if (imageUrlDuringCallBack) {
control.src = preProcessOut.OriginalText;
} else {
preProcessOut.ParentElement.innerHTML = preProcessOut.OriginalText;
}
} else if (inputType == "SUBMIT" || inputType == "BUTTON") {
control.value = preProcessOut.OriginalText;
}
} else if (nodeName == "SELECT" || nodeName == "SPAN") {
SetLabelText(control.id, preProcessOut.OriginalText);
} else {
control.innerHTML = preProcessOut.OriginalText;
}
}
if (typeof(clientCallBack) == "function") {
clientCallBack(result, clientCallBackArg);
}
}
function Anthem_FireCallBackEvent(
control,
e,
eventTarget,
eventArgument,
causesValidation,
validationGroup,
imageUrlDuringCallBack,
textDuringCallBack,
enabledDuringCallBack,
preCallBackFunction,
postCallBackFunction,
callBackCancelledFunction,
includeControlValuesWithCallBack,
updatePageAfterCallBack
) {
// Cancel the callback if the control is disabled. Although most controls will
// not raise their callback event if they are disabled, the LinkButton will.
// This check is for the LinkButton. See SourceForge Patch 1639700.
if (control.disabled) return;
var preProcessOut = new Anthem_PreProcessCallBackOut();
var preProcessResult = Anthem_PreProcessCallBack(
control,
e,
eventTarget,
causesValidation,
validationGroup,
imageUrlDuringCallBack,
textDuringCallBack,
enabledDuringCallBack,
preCallBackFunction,
callBackCancelledFunction,
preProcessOut
);
if (preProcessResult) {
var eventType = e.type;
Anthem_FireEvent(
eventTarget,
eventArgument,
function(result) {
Anthem_PostProcessCallBack(
result,
control,
eventType,
eventTarget,
null,
null,
imageUrlDuringCallBack,
textDuringCallBack,
postCallBackFunction,
preProcessOut
);
},
null,
includeControlValuesWithCallBack,
updatePageAfterCallBack
);
}
}
function AnthemListControl_OnClick(
e,
causesValidation,
validationGroup,
textDuringCallBack,
enabledDuringCallBack,
preCallBackFunction,
postCallBackFunction,
callBackCancelledFunction,
includeControlValuesWithCallBack,
updatePageAfterCallBack
) {
var target = e.target || e.srcElement;
if (target.nodeName.toUpperCase() == "LABEL" && target.htmlFor != '')
return;
var eventTarget = target.id.split("_").join("$");
Anthem_FireCallBackEvent(
target,
e,
eventTarget,
'',
causesValidation,
validationGroup,
'',
textDuringCallBack,
enabledDuringCallBack,
preCallBackFunction,
postCallBackFunction,
callBackCancelledFunction,
true,
true
);
}
// Returns the top, left control location in FireFox
function GetControlLocation(control) {
var offsetX = 0;
var offsetY = 0;
var parent;
for (parent = control; parent; parent = parent.offsetParent) {
if (parent.offsetLeft) {
offsetX += parent.offsetLeft;
}
if (parent.offsetTop) {
offsetY += parent.offsetTop;
}
}
return { x: offsetX, y: offsetY };
}
function GetLabelText(id) {
var labels = document.getElementsByTagName('label');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor == id) {
return labels[i].innerHTML;
}
}
return null;
}
function SetLabelText(id, text) {
var labels = document.getElementsByTagName('label');
for (var i = 0; i < labels.length; i++) {
if (labels[i].htmlFor == id) {
labels[i].innerHTML = text;
return;
}
}
}
// Used by encodeURIComponentNew to mimic function encodeURIComponent in
// IE 5.5+, Netscape 6+, and Mozilla
function utf8(wide) {
var c, s;
var enc = "";
var i = 0;
while(i=0xDC00 && c=0xD800 && c=wide.length) continue;
s= wide.charCodeAt(i++);
if (s=0xDE00) continue;
c= ((c-0xD800)>6&0x3F),0x80+(c&0x3F));
else enc += String.fromCharCode(0xF0+(c>>18),0x80+(c>>12&0x3F),0x80+(c>>6&0x3F),0x80+(c&0x3F));
}
return enc;
}
var hexchars = "0123456789ABCDEF";
function toHex(n) {
return hexchars.charAt(n>>4)+hexchars.charAt(n & 0xF);
}
var okURIchars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-";
// Mimics function encodeURIComponent in IE 5.5+, Netscape 6+, and Mozilla
function encodeURIComponentNew(s) {
var s = utf8(s);
var c;
var enc = "";
for (var i= 0; i
Home
|
Officers
| Association Facts
Download 2008 Directory
OBJECTIVES OF THE ASSOCIATION
The objectives of this Association are related to the mechanical equipment industry as used in the heating, ventilating, and air conditioning industry. They are to promote the quality of mechanical equipment marketed locally, to improve the installation, operation, and maintenance procedures of all mechanical equipment in the area, to provide a source of exchange of information for the mechanical equipment industry, to endeavor to improve the bidding ethics in the building industry, to improve the professional standing of its members, to interest students in the mechanical engineering profession at all educational levels, to endeavor to have related courses or subjects included in local college curricula, to train young people in this profession, to encourage the use of codes which will improve our industry, to coordinate with other engineers' groups locally in any of the aforesaid objectives, and to promote the general welfare of its members and those associated with the mechanical equipment industry.
Category
[All]
AIR COMPRESSORS & DRYERS
AIR DEVICES
AIR DISTRIBUTION EQUIPMENT
AIR FILTERS
AIR HANDLING & CONDITIONING EQUIPT.
AIR TERMINAL UNITS
ALARM SYSTEMS
BOILERS
BURNERS, GAS/OIL
CHILLERS
COILS
COMPUTER ROOM AC
CONDENSATE SYSTEMS
CONTROLS
COOLING TOWERS
DAMPERS
DEHUMIDIFIERS
DETECTION EQUIPMENT
DRAFT INDUCERS
DUCT & FITTINGS
DUST COLLECTORS
ELECTRIC HEAT
EXPANSION JOINTS & FLEX CONNECTORS
FAN COIL UNITS
FANS, BLOWERS & VENTILATORS
FINTUBE & BASEBOARD RADIATION
FIRE DAMPERS
FLOOR HEAT
FLOW METERS & MEASURING
FUME REMOVAL EQUIPMENT
GAUGES
GREASE RECOVERY UNITS
HEAT EXCHANGERS
HEAT PUMPS
HEAT RECOVERY
HUMIDIFIERS
Indoor Air Quality
KITCHEN HOODS
LABORATORY HOODS
LIQUID FILTRATION
LOUVERS & PENTHOUSES
MAKEUP AIR EQUIPMENT
MISC
MOTORS
PANELS & CASINGS
PIPING
PUMPS
RADIANT HEATERS
ROOF CURBS & SUPPORTS
SOUND ATTENUATION
STACK & CHIMNEY SYSTEMS
STEAM EQUIPMENT
STRAINERS
TANKS
THERMAL STORAGE
UNIT HEATERS
UV LIGHTS
VALVES
VARIABLE FREQUENCY DRIVES
VEHICLE EXHAUST SYSTEMS
VIBRATION ISOLATION
WATER HEATERS
WATER TREATMENT
Manufacturer
Representative
Baltimore Chapter
c/o The Engineering Center
11 West Mt. Vernon Place
Baltimore, Maryland 21201
Powered by IT24
//
//
|
|