function isNumeric(sText)
{

	var nLength = 0;
	var sResults = '';
	
	nLength = sText.length;
	
	for (x=0; x<nLength; x++)
		{
			sResults = sText.charAt(x);
			if (!((sResults >= 0) && (sResults <= 9)))
			{	
				return false;
			}
		}
	return true;

}

function isNumericText (sText)
{

	var nLength = 0;
	var sResults = '';
	
	nLength = sText.length;
	
	for (x=0; x<nLength; x++)
		{
			sResults = sText.charAt(x);
			if (!((sResults >= 0) && (sResults <= 9)) && (sResults != ','))
			{	
				return false;
			}
		}
	return true;

}

function IsEmpty(sValue)
{
	if ((0 == sValue.length) || ('' == sValue))
		{return true;}
	else
		{return false;}

}

function ChangeWS (sLocation)
{
	parent.m_sSearchLog = '';
	parent.ChangeSearch();
	parent.frames('Workspace').location.href = sLocation
}

function writeLine (sText)
{
	document.write (sText);	
}

function openChildWindow (sHref, bModal, oArg)
{

	if (bModal)
		{
			window.showModalDialog (sHref, oArg, 'status:yes;resizable:yes;scroll:yes;dialogHeight=' + window.screen.availHeight -20 + ';dialogWidth=' + window.screen.availWidth -20)
		}
	else
		{
			window.showModelessDialog (sHref, oArg, 'menu:yes;status:yes;resizable:yes;scroll:yes;dialogHeight=' + (window.screen.availHeight - 20) + ';dialogWidth=' + (window.screen.availWidth - 20))

		}
		
}

function openChildWindowWithDimensions (sHref, bModal, oArg, nHeight, nWidth, bRetObj)
{
	
	if (bModal)
		{
			oWindow = window.showModalDialog (sHref, oArg, 'status:yes;resizable:yes;scroll:yes;dialogHeight=' + nHeight + ';dialogWidth=' + nWidth)
		}
	else
		{
			oWindow = window.showModelessDialog (sHref, oArg, 'status:yes;resizable:yes;scroll:yes;dialogHeight=' + nHeight + ';dialogWidth=' + nWidth)

		}
	if (bRetObj)
		{
			return oWindow;
		}
	else
		{
			return;
		}
}

function isValidFormat (sType, sText)
{
		
		if ('email' == sType)
		{
			if ((-1 == sText.indexOf('@')) || (-1 == sText.indexOf('.')))
				{	
					parent.m_sCurrentErrorMsg = 'Incorrect format! Email format should be like: yourname@address.com';
					return (false);
				}
		}		
		if ('url' == sType)
		{
			
			if (sText.length == 0)
				{return (true);}
				
			if ((-1 == sText.indexOf('http://')) || (-1 == sText.indexOf('.')))
				{	
					parent.m_sCurrentErrorMsg = 'Incorrect format! URL format should be like: http://www.address.com';
					return (false);
				}

		}
		if ('pwd' == sType)
		{
			if (6 > sText.length)
				{	
					parent.m_sCurrentErrorMsg = 'Incorrect format! Passwords must be at least 6 characters long.';
					return (false);
				}

		}	
		if ('call' == sType)
		{
			if ((3 > sText.length) || sType.match(/.n/))
				{	
					parent.m_sCurrentErrorMsg = 'Incorrect format! Callsigns must be at least 3 characters long and contain a non-leading number.';
					return (false);
				}

		}	
		if ('rst' == sType)
		{

			if ((! isNumeric(sText)) || (sText.length < 2) || (sText.length > 3))
				{	
					parent.m_sCurrentErrorMsg = 'Incorrect format! RST must be 2 or 3 characters long and contain only numbers.';
					return (false);
				}

		}					
	return true;
}

function validate(sType, sText)
{

	if (isValidFormat (sType, sText))
		{
			return;
		}
	else
		{
			alert (parent.m_sCurrentErrorMsg);
		}

}

function upperMe (oControl)
{
	oControl.value = oControl.value.toUpperCase();
}

function Help(sHelpContext,sHelpType)
{
	
	var bReturn = true;
	bReturn = window.showModalDialog(parent.m_sParentPath + 'Help/Help.asp?c=' + sHelpContext + '&t=' + sHelpType, 'NULL', 'status:no;resizable:no;scroll:yes;dialogHeight=15;dialogWidth=25')
	return bReturn;
}

function pictureFrame(sCaption,sPicPath)
{
	var bReturn = true;
	bReturn = window.showModalDialog(parent.m_sParentPath + 'Help/PictureFrame.asp?c=' + sCaption + '&p=' + sPicPath, 'NULL', 'status:no;resizable:no;scroll:yes;dialogHeight=25;dialogWidth=27')
	return bReturn;
}

function openNewWindow (sHref)
{
	window.open(sHref);
	return;
}

// name - name of the cookie
// value - value of the cookie
// [expires] - expiration date of the cookie (defaults to end of current session)
// [path] - path for which the cookie is valid (defaults to path of calling document)
// [domain] - domain for which the cookie is valid (defaults to domain of calling document)
// [secure] - Boolean value indicating if the cookie transmission requires a secure transmission
// * an argument defaults when it is assigned null as a placeholder
// * a null placeholder is not required for trailing omitted arguments
function setCookie(name, value, expires, path, domain, secure) {


var expires = new Date();
nextWeek = expires.getTime() + 7*24*3600*1000;
expires.setTime(nextWeek);



  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}

// name - name of the desired cookie
// * return string containing value of specified cookie or null if cookie does not exist
function getCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}

// name - name of the cookie
// [path] - path of the cookie (must be same as path used to create cookie)
// [domain] - domain of the cookie (must be same as domain used to create cookie)
// * path and domain default if assigned null or omitted if no explicit argument proceeds
function deleteCookie(name, path, domain) {
  if (getCookie(name)) {
    document.cookie = name + "=" + 
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

// date - any instance of the Date object
// * hand all instances of the Date object to this function for "repairs"
function fixDate(date) {
  var base = new Date(0);
  var skew = base.getTime();
  if (skew > 0)
    date.setTime(date.getTime() - skew);
}


function checkCookies()
{

	var oneDay= 1*24*60*60*1000;
	var expDate = new Date();
	expDate.setTime (expDate.getTime() + oneDay);
	var cookieExpires = expDate.toGMTString();

	setCookie('test','test',expDate)
	if (0 == document.cookie.length)
		{
			Help('cookie');
		}
	else
		{
			document.cookie="test=CLEAR; expires=Sun, 09-Nov-97 01:00:00 GMT";
		}
}

function checkVersion()
{

if (-1 == navigator.appName.indexOf('Explorer'))
	{
		Help('app')
	}
else	
	{
		if ((-1 == navigator.appVersion.indexOf('5')) && (-1 == navigator.appVersion.indexOf('6')))
			{
				Help('ver')
			}
	}

}

function ToQRZ (sCallsign)
{
	openChildWindow ('http://www.qrz.com/callsign?callsign=' + sCallsign, false)
}


function SearchLog(nLogID)
{
	ChangeWS('DisplayLogChoices.asp?t=s&nLID=' + nLogID);
}

function getCountry()
{

		if (navigator.browserLanguage.substr(0,2) == "af")
		  setCountry('Afrikaans')
		else if (navigator.browserLanguage.substr(0,2) == "ar")
		{
		 if (navigator.browserLanguage.substr(3,2) == "ae")
		  setCountry('Arabic / United Arab Emirates')
		 else if (navigator.browserLanguage.substr(3,2) == "bh")
		  setCountry('Arabic / Bahrain')
		 else if (navigator.browserLanguage.substr(3,2) == "eg")
		  setCountry('Arabic / Egypt')
		 else if (navigator.browserLanguage.substr(3,2) == "dz")
		  setCountry('Arabic / Algeria')
		 else if (navigator.browserLanguage.substr(3,2) == "iq")
		  setCountry('Arabic / Iraq')
		 else if (navigator.browserLanguage.substr(3,2) == "jo")
		  setCountry('Arabic / Jordan')
		 else if (navigator.browserLanguage.substr(3,2) == "kw")
		  setCountry('Arabic / Kuwait')
		 else if (navigator.browserLanguage.substr(3,2) == "lb")
		  setCountry('Arabic / Lebanon')
		 else if (navigator.browserLanguage.substr(3,2) == "ly")
		  setCountry('Arabic / Libya')
		 else if (navigator.browserLanguage.substr(3,2) == "ma")
		  setCountry('Arabic / Morocco')
		 else if (navigator.browserLanguage.substr(3,2) == "om")
		  setCountry('Arabic / Oman')
		 else if (navigator.browserLanguage.substr(3,2) == "qa")
		  setCountry('Arabic / Qatar')
		 else if (navigator.browserLanguage.substr(3,2) == "sa")
		  setCountry('Arabic / Saudi Arabia')
		 else if (navigator.browserLanguage.substr(3,2) == "sy")
		  setCountry('Arabic / Syria')
		 else if (navigator.browserLanguage.substr(3,2) == "tn")
		  setCountry('Arabic / Tunisia')
		 else if (navigator.browserLanguage.substr(3,2) == "ye")
		  setCountry('Arabic / Yemen')
		 else setCountry('Arabic')
		}
		else if (navigator.browserLanguage.substr(0,2) == "be")
		  setCountry('Belarusian')
		else if (navigator.browserLanguage.substr(0,2) == "bg")
		  setCountry('Bulgarian')
		else if (navigator.browserLanguage.substr(0,2) == "ca")
		  setCountry('Catalan')
		else if (navigator.browserLanguage.substr(0,2) == "cs")
		  setCountry('Czech')
		else if (navigator.browserLanguage.substr(0,2) == "da")
		  setCountry('Danish')
		else if (navigator.browserLanguage.substr(0,2) == "de")
		{
		 if (navigator.browserLanguage.substr(3,2) == "at")
		  setCountry('German / Austria')
		 else if (navigator.browserLanguage.substr(3,2) == "ch")
		  setCountry('German / Switzerland')
		 else if (navigator.browserLanguage.substr(3,2) == "li")
		  setCountry('German / Liechtenstein')
		 else if (navigator.browserLanguage.substr(3,2) == "lu")
		  setCountry('German / Luxembourg')
		else setCountry('German / Germany')
		}
		else if (navigator.browserLanguage.substr(0,2) == "el")
		  setCountry('Greek / Greece')
		else if (navigator.browserLanguage.substr(0,2) == "en")
		{
		 if (navigator.browserLanguage.substr(3,2) == "us")
		  setCountry('English / United States')
		 else if (navigator.browserLanguage.substr(3,2) == "au")
		  setCountry('English / Austrailia')
		 else if (navigator.browserLanguage.substr(3,2) == "bz")
		  setCountry('English / Belize')
		 else if (navigator.browserLanguage.substr(3,2) == "ca")
		  setCountry('English / Canada')
		 else if (navigator.browserLanguage.substr(3,2) == "gb")
		  setCountry('English / Great Britain')
		 else if (navigator.browserLanguage.substr(3,2) == "ie")
		  setCountry('English / Ireland')
		 else if (navigator.browserLanguage.substr(3,2) == "jm")
		  setCountry('English / Jamaica')
		 else if (navigator.browserLanguage.substr(3,2) == "nz")
		  setCountry('English / New Zealand')
		 else if (navigator.browserLanguage.substr(3,2) == "tt")
		  setCountry('English / Trinidad')
		 else if (navigator.browserLanguage.substr(3,2) == "za")
		  setCountry('English / South Africa')
		 else setCountry('English')
		}
		else if (navigator.browserLanguage.substr(0,2) == "es")
		{
		 if (navigator.browserLanguage.substr(3,2) == "ar")
		  setCountry('Spanish / Argentina')
		 else if (navigator.browserLanguage.substr(3,2) == "bo")
		  setCountry('Spanish / Bolivia')
		 else if (navigator.browserLanguage.substr(3,2) == "cl")
		  setCountry('Spanish / Chile')
		 else if (navigator.browserLanguage.substr(3,2) == "co")
		  setCountry('Spanish / Colombia')
		 else if (navigator.browserLanguage.substr(3,2) == "cr")
		  setCountry('Spanish / Costa Rica')
		 else if (navigator.browserLanguage.substr(3,2) == "do")
		  setCountry('Spanish / Dominican Republic')
		 else if (navigator.browserLanguage.substr(3,2) == "ec")
		  setCountry('Spanish / Ecuador')
		 else if (navigator.browserLanguage.substr(3,2) == "gt")
		  setCountry('Spanish / Guatemala')
		 else if (navigator.browserLanguage.substr(3,2) == "hn")
		  setCountry('Spanish / Honduras')
		 else if (navigator.browserLanguage.substr(3,2) == "mx")
		  setCountry('Spanish / Mexico')
		 else if (navigator.browserLanguage.substr(3,2) == "ni")
		  setCountry('Spanish / Nicaragua')
		 else if (navigator.browserLanguage.substr(3,2) == "pa")
		  setCountry('Spanish / Panama')
		 else if (navigator.browserLanguage.substr(3,2) == "pe")
		  setCountry('Spanish / Peru')
		 else if (navigator.browserLanguage.substr(3,2) == "pr")
		  setCountry('Spanish / Puerto Rico')
		 else if (navigator.browserLanguage.substr(3,2) == "py")
		  setCountry('Spanish / Paraguay')
		 else if (navigator.browserLanguage.substr(3,2) == "sv")
		  setCountry('Spanish / El Salvador')
		 else if (navigator.browserLanguage.substr(3,2) == "uy")
		  setCountry('Spanish / Uruguay')
		 else if (navigator.browserLanguage.substr(3,2) == "ve")
		  setCountry('Spanish / Venezuela')
		 else setCountry('Spanish / Spain')
		}
		else if (navigator.browserLanguage.substr(0,2) == "et")
		  setCountry('Estonian')
		else if (navigator.browserLanguage.substr(0,2) == "eu")
		  setCountry('Basque')
		else if (navigator.browserLanguage.substr(0,2) == "fa")
		  setCountry('Farsi')
		else if (navigator.browserLanguage.substr(0,2) == "fi")
		  setCountry('Finnish')
		else if (navigator.browserLanguage.substr(0,2) == "fo")
		  setCountry('Faeroese')
		else if (navigator.browserLanguage.substr(0,2) == "fr")
		{
		 if (navigator.browserLanguage.substr(3,2) == "be")
		  setCountry('French / Belgium')
		 else if (navigator.browserLanguage.substr(3,2) == "ca")
		  setCountry('French / Canada')
		 else if (navigator.browserLanguage.substr(3,2) == "ch")
		  setCountry('French / Switzerland')
		 else if (navigator.browserLanguage.substr(3,2) == "ca")
		  setCountry('French / Luxembourg')
		 else setCountry('French / France')
		}
		else if (navigator.browserLanguage.substr(0,2) == "gd")
		{
		 if (navigator.browserLanguage.substr(3,2) == "ie")
		  setCountry('Gaelic / Ireland')
		 else setCountry('Gaelic / Scotland')
		}
		else if (navigator.browserLanguage.substr(0,2) == "he")
		  setCountry('Hebrew')
		else if (navigator.browserLanguage.substr(0,2) == "hi")
		  setCountry('Hindi')
		else if (navigator.browserLanguage.substr(0,2) == "hr")
		  setCountry('Croatian')
		else if (navigator.browserLanguage.substr(0,2) == "hu")
		  setCountry('Hungarian')
		else if (navigator.browserLanguage.substr(0,2) == "in")
		  setCountry('Indonesian')
		else if (navigator.browserLanguage.substr(0,2) == "is")
		  setCountry('Icelandic')
		else if (navigator.browserLanguage.substr(0,2) == "he")
		  setCountry('Hebrew')
		else if (navigator.browserLanguage.substr(0,2) == "it")
		{
		 if (navigator.browserLanguage.substr(3,2) == "ch")
		  setCountry('Italian / Switzerland')
		 else setCountry('Italian / Italy')
		}
		else if (navigator.browserLanguage.substr(0,2) == "ja")
		  setCountry('Japanese / Japan')
		else if (navigator.browserLanguage.substr(0,2) == "ji")
		  setCountry('Yiddish')
		else if (navigator.browserLanguage.substr(0,2) == "ko")
		  setCountry('Korean / Korea')
		else if (navigator.browserLanguage.substr(0,2) == "lt")
		  setCountry('Lithuanian / Lithuania')
		else if (navigator.browserLanguage.substr(0,2) == "lv")
		  setCountry('Latvian')
		else if (navigator.browserLanguage.substr(0,2) == "mk")
		  setCountry('Macedonian / Macedonia')
		else if (navigator.browserLanguage.substr(0,2) == "ms")
		  setCountry('Malaysian / Malaysia')
		else if (navigator.browserLanguage.substr(0,2) == "mt")
		  setCountry('Maltese / Malta')
		else if (navigator.browserLanguage.substr(0,2) == "nl")
		{
		 if (navigator.browserLanguage.substr(3,2) == "be")
		  setCountry('Dutch / Belgium')
		 else setCountry('Dutch / Netherlands')
		}
		else if (navigator.browserLanguage.substr(0,2) == "pl")
		  setCountry('Polish / Poland')
		else if (navigator.browserLanguage.substr(0,2) == "pt")
		{
		 if (navigator.browserLanguage.substr(3,2) == "br")
		  setCountry('Portuguese / Brazil')
		 else setCountry('Portuguese / Portugual')
		}
		else if (navigator.browserLanguage.substr(0,2) == "rm")
		  setCountry('Rhaeto-Romanic / Romania')
		else if (navigator.browserLanguage.substr(0,2) == "ro")
		  setCountry('Romanian / Romania')
		else if (navigator.browserLanguage.substr(0,2) == "ru")
		  setCountry('Russian / Russia')
		else if (navigator.browserLanguage.substr(0,2) == "sb")
		  setCountry('Sorbian')
		else if (navigator.browserLanguage.substr(0,2) == "sk")
		  setCountry('Slovak')
		else if (navigator.browserLanguage.substr(0,2) == "sl")
		  setCountry('Slovenian')
		else if (navigator.browserLanguage.substr(0,2) == "sq")
		  setCountry('Albanian / Albania')
		else if (navigator.browserLanguage.substr(0,2) == "sr")
		  setCountry('Serbian / Serbia')
		else if (navigator.browserLanguage.substr(0,2) == "sv")
		{
		 if (navigator.browserLanguage.substr(3,2) == "fi")
		  setCountry('Swedish / Finland')
		 else setCountry('Swedish / Sweden')
		}
		else if (navigator.browserLanguage.substr(0,2) == "sx")
		  setCountry('Sutu')
		else if (navigator.browserLanguage.substr(0,2) == "sz")
		  setCountry('Sami')
		else if (navigator.browserLanguage.substr(0,2) == "th")
		  setCountry('Thai / Thailand')
		else if (navigator.browserLanguage.substr(0,2) == "tn")
		  setCountry('Tswana')
		else if (navigator.browserLanguage.substr(0,2) == "tr")
		  setCountry('Turkish / Turkey')
		else if (navigator.browserLanguage.substr(0,2) == "ts")
		  setCountry('Tsonga')
		else if (navigator.browserLanguage.substr(0,2) == "uk")
		  setCountry('Ukrainian')
		else if (navigator.browserLanguage.substr(0,2) == "th")
		  setCountry('Thai / Thailand')
		else if (navigator.browserLanguage.substr(0,2) == "ur")
		  setCountry('Urdu')
		else if (navigator.browserLanguage.substr(0,2) == "ve")
		  setCountry('Venda')
		else if (navigator.browserLanguage.substr(0,2) == "vi")
		  setCountry('Vietnamese / Vietnam')
		else if (navigator.browserLanguage.substr(0,2) == "xh")
		  setCountry('Xhosa')
		else if (navigator.browserLanguage.substr(0,2) == "zh")
		{
		 if (navigator.browserLanguage.substr(3,2) == "cn")
		  setCountry('Chinese / China')
		 else if (navigator.browserLanguage.substr(3,2) == "hk")
		  setCountry('Chinese / Hong Kong')
		 else if (navigator.browserLanguage.substr(3,2) == "sg")
		  setCountry('Chinese / Singapore')
		 else if (navigator.browserLanguage.substr(3,2) == "tw")
		  setCountry('Chinese / Taiwan')
		 else setCountry('Chinese / China')
		}
		else if (navigator.browserLanguage.substr(0,2) == "zu")
		  setCountry('Zulu')
		else
		  setCountry('Unknown')
}

function setCountry(sCountry)
{
parent.m_Country = sCountry;
}