//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //~~~~~~~ Set Sub Menus ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ function mmLoadMenus() { if (window.mm_menu_1) return; window.mm_menu_1 = new Menu("root",120,22,"Arial, Helvetica, sans-serif",11,"#214C7E","#DEB381","#C7D2DF","#214C7E","left","middle",4,0,500,-5,7,true,true,true,0,true,true); mm_menu_1.addMenuItem(" Company History","location='about_history.asp'"); mm_menu_1.addMenuItem(" Certifications","location='about_certifications.asp'"); mm_menu_1.addMenuItem(" Financing","location='about_financing.asp'"); mm_menu_1.addMenuItem(" Principals","location='about_principals.asp'"); mm_menu_1.addMenuItem(" Job Openings","location='about_jobs.asp'"); mm_menu_1.addMenuItem(" Success Stories","location='about_stories.asp'"); mm_menu_1.hideOnMouseOut=true; mm_menu_1.bgColor='#ffffff'; mm_menu_1.menuBorder=0; mm_menu_1.menuLiteBgColor='#ffffff'; mm_menu_1.menuBorderBgColor='#214C7E'; window.mm_menu_26 = new Menu("Top Vendor Partners",190,22,"Arial, Helvetica, sans-serif",11,"#214C7E","#DEB381","#C7D2DF","#214C7E","left","middle",4,0,500,-5,7,true,true,true,0,true,true); mm_menu_26.addMenuItem(" Cisco Systems","location='solutions_partners.asp?vid=2'"); mm_menu_26.addMenuItem(" ControlScan PCI Security","location='solutions_partners.asp?vid=11'"); mm_menu_26.addMenuItem(" COVAD","location='solutions_partners.asp?vid=9'"); mm_menu_26.addMenuItem(" EMC","location='solutions_partners.asp?vid=8'"); mm_menu_26.addMenuItem(" Hewlett Packard","location='solutions_partners.asp?vid=5'"); mm_menu_26.addMenuItem(" Microsoft","location='solutions_partners.asp?vid=1'"); mm_menu_26.addMenuItem(" Stonefly Networks","location='solutions_partners.asp?vid=6'"); mm_menu_26.addMenuItem(" Symantec","location='solutions_partners.asp?vid=3'"); mm_menu_26.addMenuItem(" VMware","location='solutions_partners.asp?vid=10'"); mm_menu_26.addMenuItem(" Websense","location='solutions_partners.asp?vid=7'"); mm_menu_26.hideOnMouseOut=true; mm_menu_26.bgColor='#ffffff'; mm_menu_26.menuBorder=0; mm_menu_26.menuLiteBgColor='#ffffff'; mm_menu_26.menuBorderBgColor='#214C7E'; window.mm_menu_2 = new Menu("root",130,22,"Arial, Helvetica, sans-serif",11,"#214C7E","#DEB381","#C7D2DF","#214C7E","left","middle",4,0,500,2,0,true,true,true,0,true,true); mm_menu_2.addMenuItem(" Managed","location='solutions_managed.asp'"); mm_menu_2.addMenuItem(" Services","location='solutions_services.asp'"); mm_menu_2.addMenuItem(" Technologies","location='solutions_technologies.asp'"); mm_menu_2.addMenuItem(" Methodology","location='solutions_methodology.asp'"); mm_menu_2.addMenuItem(" Vendor Partners","location='solutions_partners.asp'"); mm_menu_2.addMenuItem(mm_menu_26); mm_menu_2.hideOnMouseOut=true; mm_menu_2.bgColor='#ffffff'; mm_menu_2.menuBorder=0; mm_menu_2.menuLiteBgColor='#ffffff'; mm_menu_2.menuBorderBgColor='#214C7E'; window.mm_menu_3 = new Menu("root",160,22,"Arial, Helvetica, sans-serif",11,"#214C7E","#DEB381","#C7D2DF","#214C7E","left","middle",4,0,500,-5,7,true,true,true,0,true,true); mm_menu_3.addMenuItem(" Top Threats","location='resources_threats.asp'"); mm_menu_3.addMenuItem(" CISV Catalog","location='resources_catalog.asp'"); mm_menu_3.addMenuItem(" Eval Software Downloads","location='resources_downloads.asp'"); mm_menu_3.addMenuItem(" Utility Downloads","location='resources_utility.asp'"); mm_menu_3.addMenuItem(" Links","location='resources_links.asp'"); mm_menu_3.hideOnMouseOut=true; mm_menu_3.bgColor='#ffffff'; mm_menu_3.menuBorder=0; mm_menu_3.menuLiteBgColor='#ffffff'; mm_menu_3.menuBorderBgColor='#214C7E'; window.mm_menu_4 = new Menu("root",140,22,"Arial, Helvetica, sans-serif",11,"#214C7E","#DEB381","#C7D2DF","#214C7E","left","middle",4,0,500,-5,7,true,true,true,0,true,true); mm_menu_4.addMenuItem(" News","location='ne_news.asp'"); mm_menu_4.addMenuItem(" Upcoming Events","location='ne_events.asp'"); mm_menu_4.addMenuItem(" Seminar Pesentations","location='ne_news_pesentations.asp'"); mm_menu_4.addMenuItem(" News Archive","location='ne_news_archives.asp'"); mm_menu_4.addMenuItem(" Past Events","location='ne_events_archives.asp'"); mm_menu_4.addMenuItem(" Newsletters","location='ne_newsletters.asp'"); mm_menu_4.hideOnMouseOut=true; mm_menu_4.bgColor='#ffffff'; mm_menu_4.menuBorder=0; mm_menu_4.menuLiteBgColor='#ffffff'; mm_menu_4.menuBorderBgColor='#214C7E'; mm_menu_1.writeMenus(); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //~~~~~~~ Functions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i= MM_contentVersion; } else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 && (navigator.appVersion.indexOf("Win") != -1)) { document.write('\n '); //FS hide this from IE4.5 Mac by splitting the tag document.write('on error resume next\n '); document.write('MM_FlashCanPlay = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & MM_contentVersion)))\n'); document.write('\n '); } // End of Flash Detection Script // Function to show the gif banner if not users browser is not able to display flash function showgif(imagename,w,h) { document.open(); document.write(''); document.close(); } // Script to show the flash banner if the users browser supports flash function showflash(flashname,w,h) { document.open(); document.write(''); document.write(''); document.write(''); document.write(''); document.write(''); document.close(); } //________________________________________________________________________________________________ //_____________________ ValidContact _____________________________________________________________ function ValidContact() { var oForm = document.forms.ContactFrm; if (oForm.FName.value.replace( / /g, "") == "") { alert("Please enter First Name!"); oForm.FName.focus(); return false; } if (oForm.LName.value.replace( / /g, "") == "") { alert("Please enter Last Name!"); oForm.LName.focus(); return false; } if (oForm.Email.value.replace( / /g, "") == "") { alert("Please enter Email Address!"); oForm.Email.focus(); return false; } if (oForm.Email.value.replace( / /g, "") != "") { var myEmail = NonSpace(oForm.Email.value); if (isEmail(myEmail)==false) { alert("Please enter a valid E-Mail address, like: name@companyname.com "); oForm.Email.focus(); return false; } } if (oForm.HomePhone.value.replace( / /g, "") != "" && !checkUSPhone(oForm.HomePhone)) { oForm.HomePhone.focus(); return false; } if (oForm.WorkPhone.value.replace( / /g, "") != "" && !checkUSPhone(oForm.WorkPhone)) { oForm.WorkPhone.focus(); return false; } if (oForm.HomePhone.value.replace( / /g, "") == "" && oForm.WorkPhone.value.replace( / /g, "") == "") { alert("Please enter at least one phone number!"); oForm.WorkPhone.focus(); return false; } if (oForm.BestToCall.value.replace( / /g, "") == "") { alert("Please select Best place to call!"); oForm.BestToCall.focus(); return false; } else if(oForm.HomePhone.value.replace( / /g, "") == "" && oForm.BestToCall.value.replace( / /g, "") == "Home") { alert("Please enter Home Phone!"); oForm.HomePhone.focus(); return false; } else if(oForm.WorkPhone.value.replace( / /g, "") == "" && oForm.BestToCall.value.replace( / /g, "") == "Work") { alert("Please enter Work Phone!"); oForm.WorkPhone.focus(); return false; } /* if (oForm.Address.value.replace( / /g, "") == "") { alert("Please enter Address!"); oForm.Address.focus(); return false; } */ if (oForm.City.value.replace( / /g, "") == "") { alert("Please enter City!"); oForm.City.focus(); return false; } /* if (oForm.State.selectedIndex == 0) { alert("Please select State!"); oForm.State.focus(); return false; } */ if (oForm.Zip.value.replace( / /g, "") != "" && !validZIP(oForm.Zip.value)) { oForm.Zip.focus(); return false; } if (oForm.Comments.value.replace( / /g, "") == "") { alert("Please enter Message!"); oForm.Comments.focus(); return false; } return true; } //________________________________________________________________________________________________ //_____________________ ValidSubscribe _____________________________________________________________ function ValidSubscribe(field) { if (SubscribeFrm.SubscribeEmail.value.replace( / /g, "") == "") { alert("Please enter Email Address!"); SubscribeFrm.SubscribeEmail.focus(); return false; } if (SubscribeFrm.SubscribeEmail.value.replace( / /g, "") != "") { var myEmail = NonSpace(SubscribeFrm.SubscribeEmail.value); if (isEmail(myEmail)==false) { alert("Please enter a valid E-Mail address, like: name@companyname.com "); SubscribeFrm.SubscribeEmail.focus(); return false; } } } //________________________________________________________________________________________________ //_____________________ NonSpace _____________________________________________________________ function NonSpace(field) { var xpos =0; var xlen =field.length; var xpos1 =0; var xpos2 =xlen; for (var i=0; i < xlen; i++) { temp = "" + field.substring(i, i+1); if (temp == " ") {xpos++;} else {var xpos1=xpos;break; } } field = field.substring(xpos1, xlen) var xlen1 = field.length; for (var i=0; i < xlen1; i++) { temp = "" + field.substring(i, i+1); if (temp != " ") {xpos1++;} else {xpos2=i;break; } } field = field.substring(0, xpos2) return field; } //________________________________________________________________________________________________ //_____________________ isEmail _____________________________________________________________ function isEmail(string) { if (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1) return true; else return false; } //________________________________________________________________________________________________ //_____________________ IsPhone _____________________________________________________________ function IsPhone(str) // is phone str valid { if (str.length != 12) // nope - wrong str length { alert('Invalid PhoneNo. Must be in the form NNN-NNN-NNNN.'); return false; } for (i=0; i<12; i++) { if (i == 3 || i == 7) { if (str.charAt(i) != "-") // nope - "-" missing { alert(' Missing - . PhoneNo must be in the form NNN-NNN-NNNN.'); return false; } } else { if (!isNum(str.charAt(i))) { alert('Non-numeric characters. PhoneNo must be in the form NNN-NNN-NNNN.'); return false; } } } return true; } //________________________________________________________________________________________________ //_____________________ IsFax _____________________________________________________________ function IsFax(str) // is Fax str valid { if (str.length != 12) // nope - wrong str length { alert('Invalid FaxNo. Must be in the form NNN-NNN-NNNN.'); return false; } for (i=0; i<12; i++) { if (i == 3 || i == 7) { if (str.charAt(i) != "-") // nope - "-" missing { alert(' Missing - . FaxNo must be in the form NNN-NNN-NNNN.'); return false; } } else { if (!isNum(str.charAt(i))) { alert('Non-numeric characters. FaxNo must be in the form NNN-NNN-NNNN.'); return false; } } } return true; } //________________________________________________________________________________________________ //_____________________ validateZIP _____________________________________________________________ function validateZIP(field) { var valid = "0123456789-"; var hyphencount = 0; if (field.value.length!=5 && field.value.length!=10) { alert("Please enter your 5 digit or ( 5 + 4 ) digit ZIP code."); return false; } for (var i=0; i < field.value.length; i++) { temp = "" + field.value.substring(i, i+1); if (temp == "-") hyphencount++; if (valid.indexOf(temp) == "-1") { alert("Invalid characters in your ZIP code. Please try again."); return false; } if ((hyphencount > 1) || ((field.value.length==10) && ""+field.value.charAt(5)!="-")) { alert("The hyphen character should be used with a properly formatted 5 digit+four ZIP code, like '12345-6789'. Please try again."); return false; } } return true; } //________________________________________________________________________________________________ //_____________________ isNum _____________________________________________________________ function isNum(chr) // is character a number? { if (chr < "0" || chr > "9") // nope return false; else // yep return true; } //________________________________________________________________________________________________ //_____________________ isNumber19 _____________________________________________________________ function isNumber19(InString) { RefString="123456789"; for (Count=0; Count < InString.length; Count++) { TempChar= InString.substring (Count, Count+1); if (RefString.indexOf (TempChar, 0)==-1) { alert("Please enter numbers only: 1 - 9 "); return false; } } return true; } //________________________________________________________________________________________________ //_____________________ isNumber09 _____________________________________________________________ function isNumber09(InString) { RefString="0123456789"; for (Count=0; Count < InString.length; Count++) { TempChar= InString.substring (Count, Count+1); if (RefString.indexOf (TempChar, 0)==-1) { alert("Please enter numbers only: 0 - 9 "); return false; } } return true; } //________________________________________________________________________________________________ //_____________________ isNumberZip _____________________________________________________________ function isNumberZip(InString) { RefString="0123456789-"; for (Count=0; Count < InString.length; Count++) { TempChar= InString.substring (Count, Count+1); if (RefString.indexOf (TempChar, 0)==-1) { alert("Please enter a valid Zip Code! "); return false; } } return true; } //________________________________________________________________________________________________ //_____________________ ValidPercent _____________________________________________________________ function ValidPercent(field) { RefString="0123456789."; for (Count=0; Count < field.length; Count++) { TempChar= field.substring (Count, Count+1); if (RefString.indexOf (TempChar, 0)==-1) { alert ("Please enter a valid percent (99.99 or a number <=100) !"); return false; } } var xpos =0; var xlen =field.length; for (var i=0; i < xlen ; i++) { temp = field.substring(i, i+1); if (temp == ".") {xpos=i;} } if (xpos == 0) {var per=field;} else {var per =field.substring(0,xpos);} if (per > 100) { alert ("Please enter a valid percent (99.99 or a number <=100) !"); return false; } else { return true;} } //________________________________________________________________________________________________ //_____________________ getExtension _____________________________________________________________ function getExtension(field) { var xpos =0; var xlen =field.length; for (var i=xlen; i > 0 ; i--) { temp = "" + field.substring(i, i-1); if (temp != ".") {xpos--;} else {break; } } var myext =field.substring(xlen+xpos, xlen).toLowerCase(); if ((myext != "gif") && (myext != "jpg") && (myext != "jpeg") && (myext != "bmp") && (myext != "jpe") && (myext != "swf")){ alert ("Please Upload an Image with GIF,JPEG,JPE,JPG,BMP or SWF extension !"); return false; } else { return true;} } //________________________________________________________________________________________________ //_____________________ getEmail _____________________________________________________________ function getEmail(field) { var xpos =0; var xlen =field.length; for (var i=xlen; i > 0 ; i--) { temp = "" + field.substring(i, i-1); if (temp != "@") {xpos--;} else {break; } } var xx =field.substring(xlen+xpos, xlen).toLowerCase(); return (xx); } //________________________________________________________________________________________________ //_____________________ warnEmpty _____________________________________________________________ var reWhitespace = /^\s+$/ // warnEmpty (theField, s) Notify user that required field theField is empty. // Notify user that required field theField is empty. // String s describes expected contents of theField.value. // Put focus in theField and return false. function warnEmpty (theField, s) { theField.focus() alert(mPrefix + s + mSuffix) return false } //________________________________________________________________________________________________ //_____________________ isEmpty _____________________________________________________________ function isEmpty(s) { return ((s == null) || (s.length == 0)) } //________________________________________________________________________________________________ //_____________________ isWhitespace _____________________________________________________________ function isWhitespace (s) { // Is s empty? // return (isEmpty(s)); return (isEmpty(s) || reWhitespace.test(s)); } function Start(page) { OpenWin = this.open(page, "CtrlWindow", "toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,width=550,height=250,top=50,left=50"); } //---------------- valid phone ---------------- // VARIABLE DECLARATIONS var digits = "0123456789"; // whitespace characters var whitespace = " \t\n\r"; // decimal point character differs by language and culture var decimalPointDelimiter = "." // non-digit characters which are allowed in phone numbers var phoneNumberDelimiters = "()-./ "; // characters which are allowed in US phone numbers var validUSPhoneChars = digits + phoneNumberDelimiters; // U.S. phone numbers have 10 digits. // They are formatted as 123-456-7890 or (123) 456-7890. var digitsInUSPhoneNumber = 10; // CONSTANT STRING DECLARATIONS // m = "missing" var mPrefix = "You did not enter a value into the " var mSuffix = " field. This is a required field. Please enter it now." // s --- "string" var sPhone = "Phone Number" // i is an abbreviation for "invalid" var iUSPhone = "This field must be a 10 digit U.S. phone number (like 415-555-1212). Please reenter it now." // p is an abbreviation for "prompt" var pEntryPrompt = "Please enter a " var pUSPhone = "10 digit U.S. phone number (like 415-555-1212)." var defaultEmptyOK = false // Check whether string s is empty. function isEmpty(s) { return ((s == null) || (s.length == 0)) } function stripCharsInBag (s, bag) { var i; var returnString = ""; // Search through string's characters one by one. // If character is not in bag, append to returnString. for (i = 0; i < s.length; i++) { // Check that current character isn't whitespace. var c = s.charAt(i); if (bag.indexOf(c) == -1) returnString += c; } return returnString; } function isDigit (c) { return ((c >= "0") && (c <= "9")) } function isInteger (s) { var i; if (isEmpty(s)) if (isInteger.arguments.length == 1) return defaultEmptyOK; else return (isInteger.arguments[1] == true); // Search through string's characters one by one // until we find a non-numeric character. // When we do, return false; if we don't, return true. for (i = 0; i < s.length; i++) { // Check that current character is number. var c = s.charAt(i); if (!isDigit(c)) return false; } // All characters are numbers. return true; } function reformat (s) { var arg; var sPos = 0; var resultString = ""; for (var i = 1; i < reformat.arguments.length; i++) { arg = reformat.arguments[i]; if (i % 2 == 1) resultString += arg; else { resultString += s.substring(sPos, sPos + arg); sPos += arg; } } return resultString; } function isUSPhoneNumber (s) { if (isEmpty(s)) if (isUSPhoneNumber.arguments.length == 1) return defaultEmptyOK; else return (isUSPhoneNumber.arguments[1] == true); return (isInteger(s) && s.length == digitsInUSPhoneNumber) } // Notify user that contents of field theField are invalid. // String s describes expected contents of theField.value. // Put select theField, pu focus in it, and return false. function warnInvalid (theField, s) { theField.focus() theField.select() alert(s) return false } function reformatUSPhone (USPhone) { return (reformat (USPhone, "", 3, "-", 3, "-", 4)) } function checkUSPhone (theField, emptyOK) { if (checkUSPhone.arguments.length == 1) emptyOK = defaultEmptyOK; if ((emptyOK == true) && (isEmpty(theField.value))) return true; else { var normalizedPhone = stripCharsInBag(theField.value, phoneNumberDelimiters) if (!isUSPhoneNumber(normalizedPhone, false)) return warnInvalid (theField, iUSPhone); else { // if you don't want to reformat as (123) 456-789, comment next line out theField.value = reformatUSPhone(normalizedPhone) return true; } } } function isInt(chr) { if (isNaN(chr)) {return false; } else { if (chr>0) { return true; } else { return false; } } } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //~~~~~~~ isZip ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ function validZIP(field) { var valid = "0123456789-"; var hyphencount = 0; if (field.length!=5 && field.length!=10) { alert("Please enter your 5 digit or 5 digit+4 zip code."); return false; } for (var i=0; i < field.length; i++) { temp = "" + field.substring(i, i+1); if (temp == "-") hyphencount++; if (valid.indexOf(temp) == "-1") { alert("Invalid characters in your zip code. Please try again."); return false; } if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-")) { alert("The hyphen character should be used with a properly formatted 5 digit+four zip code, like '12345-6789'. Please try again."); return false; } } return true; }