var imgArray = new Array(6);
var minHeight = 0;
var imgAIndex = 0;
var portraitImageCount = 0;
var landscapeImageCount = 0;
var smallImageCount = 0;
var imgContainer = new Array(7);
var imgSrc = new Array(7);
var imgTopLabel = new Array(7);
var imgTopButtons = new Array(7);

function cropMoveImage(i, m)
{
	var cVal = document.getElementById('AdImageTop' + i).value;
	cVal = parseInt(cVal) + m;

	document.getElementById('AdImageTop' + i).value = cVal;
	document.getElementById('AdImagePosition' + i).style.top = cVal + 'px';

	if(cVal == 0)
	{
		document.getElementById('AdImageTopLabelText' + i).innerHTML = 'No adjustment';
	}
	else if(cVal < 0)
	{
		cVal = cVal * -1;
		document.getElementById('AdImageTopLabelText' + i).innerHTML = 'Moved ' + cVal + ' pixels up';
	}
	else if(cVal > 0)
	{
		document.getElementById('AdImageTopLabelText' + i).innerHTML = 'Moved ' + cVal + ' pixels down';
	} 
	
}

function arrangeImageGallery()
{
	try
	{
		//alert(1);	
		
		for(i = 1; i < 7; i++)
		{
			var cI = i+1;
			imgContainer[i] = document.getElementById('AdImageContainer' + cI)

			if(document.getElementById('AdImageSrc' + cI))
			{
				imgSrc[i] = document.getElementById('AdImageSrc' + cI)
			}
			else
			{
				imgSrc[i] = null;
			}

			if(document.getElementById('AdImageTopLabel' + cI))
			{
				imgTopLabel[i] = document.getElementById('AdImageTopLabel' + cI)
			}
			else
			{
				imgTopLabel[i] = null;
			}

			/* if(document.getElementById('AdImageTopButtons' + cI))
			{
				imgTopButtons[i] = document.getElementById('AdImageTopButtons' + cI)
			}
			else
			{
				imgTopButtons[i] = null;
			} */
		}
		
		//alert(2);

		for(i = 0; i < imgArray.length; i++)
		{
			imgArray[i] = new Array(10);
		}
		
		//alert(3);

		for(i = 2; i < 8; i++)
		{
			var selImg = document.getElementById('AdImage' + i)
			if(selImg)
			{
				imgArray[imgAIndex][0] = selImg;
				imgArray[imgAIndex][1] = selImg.width;
				imgArray[imgAIndex][2] = selImg.height;

				if(imgArray[imgAIndex][2] > imgArray[imgAIndex][1] && imgArray[imgAIndex][2] >= 350)
				{
					imgArray[imgAIndex][3] = 1;
					portraitImageCount++;
				}
				else if(imgArray[imgAIndex][1] >= 350)
				{
					imgArray[imgAIndex][3] = 0;
					landscapeImageCount++;
				}
				else
				{
					imgArray[imgAIndex][3] = 2;
					smallImageCount++;
				}
			
				imgArray[imgAIndex][4] = document.getElementById('AdImageContainer' + i).innerHTML;

				if(document.getElementById('AdImageTopLabel' + i))
					imgArray[imgAIndex][8] = document.getElementById('AdImageTopLabel' + i).innerHTML;

				if(document.getElementById('AdImageTopButtons' + i))
					imgArray[imgAIndex][9] = document.getElementById('AdImageTopButtons' + i).innerHTML;

				imgArray[imgAIndex][5] = selImg.src;

				if(document.getElementById('AdImageTop' + i))
				{
					imgArray[imgAIndex][6] = document.getElementById('AdImageTop' + i).value;
				}
				else
				{
					imgArray[imgAIndex][6] = 0;
				}

				imgArray[imgAIndex][7] = document.getElementById('AdImagePosition' + i);

				if((minHeight == 0 || minHeight > imgArray[imgAIndex][2]) && imgArray[imgAIndex][2] > 183 && imgArray[imgAIndex][3] == 0)
				{
					minHeight = imgArray[imgAIndex][2];
				}

				imgAIndex++;
			}
		}
		
		//alert(4);

		var contLargeIndex = 1;
		var contPortraitIndex = 1 + landscapeImageCount;
		var contSmallIndex = 1 + landscapeImageCount + portraitImageCount;
		var contIndex = 1;

		// Large landscape images first
		// Large portrait images second
		// Small images last
		
		//alert(5);

		for(i = 0; i < imgArray.length; i++)
		{	
			//alert(80);
			if(imgArray[i][0])
			{
				//alert(800);
			
				if(imgArray[i][3] == 0) // Large Landscape
				{
					//alert(81);
					
					contIndex = contLargeIndex;
					imgContainer[contIndex].style.width = '350px';
					imgArray[i][0].style.width = '350px';

					if(imgArray[i][2] > minHeight && minHeight > 0)
					{
						imgContainer[contIndex].style.height = minHeight + 'px';
					}

					if(imgArray[i][1] / imgArray[i][2] > 1.5 && imgTopLabel[contIndex])
						imgTopLabel[contIndex].style.backgroundColor = '#ff822f';

					contLargeIndex++;
				}
				else if(imgArray[i][3] == 1) // Large Portrait
				{
					//alert(82);

					contIndex = contPortraitIndex;

					imgContainer[contIndex].style.height = '350px';
					imgContainer[contIndex].style.width = ((350 / imgArray[i][2]) * imgArray[i][1]) + 'px';
					imgArray[i][0].style.height = '350px';

					contPortraitIndex++;
				}
				else if(imgArray[i][3] == 2) // Small
				{
					//alert(83);

					contIndex = contSmallIndex;

					imgContainer[contIndex].style.width = imgArray[i][1] + 'px';
					imgArray[i][0].style.width = imgArray[i][1] + 'px';

					contSmallIndex++;

					if(imgTopLabel[contIndex])
						imgTopLabel[contIndex].style.backgroundColor = '#ff822f';
				}

				// alert(6);

				/* imgContainer[contIndex].innerHTML = imgArray[i][4]; */

				/* if(imgTopLabel[contIndex])
					imgTopLabel[contIndex].innerHTML = imgArray[i][8]; */

				/* if(imgTopButtons[contIndex])
					imgTopButtons[contIndex].innerHTML = imgArray[i][9]; */

				if(imgSrc[contIndex])
					imgSrc[contIndex].src = imgArray[i][5].replace('.web.','.thumb.').replace('/id','/thumb/id').replace('proppics','smallproppics');
			}
		}
		
		//alert(7);

	}
	catch(err) 
	{}
}

function slideShowPopup() {
	ShowPopUpWindow('slideShowPopup', 'slides.cfm', 492, 520, 'yes', 'no', 'yes');
}
function ClientPort(clientid, w, h){
	
		ShowPopUpWindow("ClientPortfolio","portfolio.cfm?client_id="+clientid,w,h,"no","no","yes");
}
function PopupPDF(fileID) {
	document.location.href = "default.cfm/loadfile.DownloadPDF.cfm/id." + fileID;
}

function showInfoBox(id)
{
	$('#'+id).css('top', $('#'+id+'_container').offset().top);
	$('#'+id).css('left', $('#'+id+'_container').offset().left);
	$('#'+id).show();
}

function recalculate() {
	
	var workname;
	
	var numels = document.frmBasket.elements.length;
	
	numels=numels-1;
	var errorflag = 0;

	for (var i = 0; i <= numels; i++) {
	workname='';
		if (document.frmBasket.elements[i].name.length > 2) {
		workname= document.frmBasket.elements[i].name.substring(0,3);
		}
		
		if (workname=='qty') {
		
			if (!isInteger(document.frmBasket.elements[i].value)) {
				errorflag=1;
			}
			
		}
	}
	
	if (errorflag==0) {
		document.frmBasket.submit();
	} else {
		alert('All quantities must be numeric!');		
	}
}

function myorder(ca){
	
	var f;
	var f = document.frmBasket;
	f.action = securebasehref + 'default.cfm/loadfile.BuyBasket.cfm';
	if (ca == '1') {
		f.NextStep.value = '';
	}
	f.submit();
}
function ShowSecurePopUp(Name, File, w, h, Status, Resize, Scroll){
	var t=0, l = 0, winstring = "";
	var infowindow;

	if(infowindow){
		if(!infowindow.closed) infowindow.close();
	}

	l = ((screen.width / 2) - (w / 2));
	t = ((screen.height / 2) - (h / 2));

	winstring = "width=" + w + ", height=" + h + ",left=" + l + ",top=" + t +  ",status=" + Status + ",resizable=" + Resize + ",scrollbars=" + Scroll;
	infowindow = window.open(File,Name,winstring);
	return;
}

function slides(base){



	var strUrl = base + "slides.cfm";
	alert(strUrl);
	ShowSecurePopUp("Russia Experience", strUrl, 500, 400, "no", "no", "yes");


}
function isEmail(email) {
	var invalidCharString = " ,<>!\"?%^&*()+=*/\\\';:#~[]{}";
	var i = 0;
	
	for (i = 0; i < invalidCharString.length; i++) {
		if (-1 < email.indexOf(invalidCharString.charAt(i))) {
			return false;
		}
	}
	
	var firstAt = email.indexOf('@');
	var lastAt = email.lastIndexOf('@');
	var lastDot = email.lastIndexOf('.');
	if (!((0 < firstAt) && (1 < lastDot) && (firstAt == lastAt) && ((firstAt + 1) < lastDot) && (lastDot < (email.length - 2)))) 
	{
		return false;
	}
	else {
		return true;
	}
}

function ShowPopUpLogin(){
	var Name='winLogin';
	var File="Login.cfm";
	var w=300;
	var h=200;
	var Status="no";
	var Resize="no";
	var Scroll="no";
	var t=0, l = 0, winstring = "";
	var infowindow;

	if(infowindow){
		if(!infowindow.closed) infowindow.close()
	}

	l = ((screen.width / 2) - (w / 2))
	t = ((screen.height / 2) - (h / 2))

	winstring = "width=" + w + ", height=" + h + ",left=" + l + ",top=" + t +  ",status=" + Status + ",resizable=" + Resize + ",scrollbars=" + Scroll;

	infowindow = window.open(File,Name,winstring);
}
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++){
		var c = s.charAt(i);
		if (bag.indexOf(c) == -1) returnString += c;
	}
	return returnString;
}
function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
	// EXCEPT for centurial years which are not also divisible by 400.
	return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   }
   return this
}

function isCurrency(s) {
	s = s.replace(",","");
	s = s.replace("?","");
	var rg="/\d*?\.?/";
	
	if(s.indexOf(".")!=-1) {
		if(s.length - s.indexOf(".")>3) {
			return false;
		}
	}
	if(rg.test(s) && !isNaN(s)) {
		return true;
	}
	return false;
}

function isInteger(s){
	if (s.length == 0) {
		return false;
	}
	var i;
	for (i = 0; i < s.length; i++){
		// Check that current character is number.
		var c = s.charAt(i);
		if (((c < "0") || (c > "9"))) return false;
	}
	// All characters are numbers.
	return true;
}

function trim(str)
{
   return str.replace(/^\s*|\s*$/g,"");
}

function isNumWithSpace(s){
 var i;
  if(s.length==0){
  	return false;
  }
 for (i = 0; i < s.length; i++){
  // Check that current character is number or space.
  var c = s.charAt(i);
  if(c== " "){
  	c="0"
  }
  if (((c < "0") || (c > "9"))) return false;
 }
 // All characters are numbers.
 return true;
}

function SetValue(id, newValue) {
	identity=document.getElementById(id);
	identity.value=newValue;
}

function SetInnerHtml(id, newValue) {
	identity=document.getElementById(id);
	identity.innerHTML=newValue;
}

function SetStyle(id, newClass) {
	identity=document.getElementById(id);
	identity.className=newClass;
}

function SetVisibility(id, visible) {
	if (visible) {
		SetStyle(id, "visibleElement");
	}
	else {
		SetStyle(id, "hiddenElement");
	}
}

function getRadioButtonValue(radioButtonArray) {
	var value = '';
	
	if (!radioButtonArray.length) {
		// Only one radio button, so form.radiobuttonname returns a radiobutton element, not an array
		if (radioButtonArray.checked) {
			value = radioButtonArray.value;
		}
	}
	else {
		for (var i=0; i<radioButtonArray.length; i++) {
			if (radioButtonArray[i].checked) {
				value = radioButtonArray[i].value;
				break;
			}
		}
	}
	
	return value;
}

function addToFavorites(urlAddress, pageName) { 
	if (window.external) { 
		window.external.AddFavorite(urlAddress,pageName) 
	} else { 
		alert("Sorry! Your browser doesn't support this function."); 
	}
}

function openCertDetails() {

	var referer = "";
	var siteSealImage;

	if (self.sampleReferer)
		referer = self.sampleReferer;
	else
		referer = window.location;
/*
	if (document.images) {
		siteSealImage = document.images["thawteSiteSeal"]
		siteSealImage.src="https://www.thawte.com/cgi/server/seal_generator.exe?referer=" + referer
	}
*/
	certDetailsUrlWithReferer = "https://www.thawte.com/cgi/server/certdetails.exe?referer=" + referer;
	thewindow = window.open(certDetailsUrlWithReferer,
		"newWindow", config="height=500,width=516,toolbar=no,menubar=no," +
		"scrollbars=yes,resizable=no,location=no,directories=no,status=yes");

}

function setTextAreaMaxLengths()
{
	var textareaArray = document.getElementsByTagName('textarea');
	if (textareaArray) {
		if (!textareaArray.length) {
			if (textareaArray[i].getAttribute('maxlength'))
			{
				textareaArray[i].onkeyup = textareaArray[i].onchange = checkMaxLength;
				textareaArray[i].onkeyup();
			}
		}
		else
		{
			for (var i=0; i<textareaArray.length; i++)
			{
				if (textareaArray[i].getAttribute('maxlength'))
				{
					textareaArray[i].onkeyup = textareaArray[i].onchange = checkMaxLength;
					textareaArray[i].onkeyup();
				}
			}
		}
	}
}

function checkMaxLength()
{
	var maxLength = this.getAttribute('maxlength');
	var currentLength = this.value.length;
	if (currentLength > maxLength)
	{
		this.value = this.value.substring(0,maxLength);
	}
}
