// JavaScript Document

function validate(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   var address = email;
   if(reg.test(address) == false) {
      	return false;
   }
   else {
	   return true;
   }
}

function mailingList() {
	var strEmail = $('#mailingEmail').val();
	if (validate(strEmail)) {
		$('#mailMessage').html('<img src="/images/ajax-loader-squares.gif">');
		doJqueryAjax('mailNothing', '', 'op=mailing&keyvalue=' + strEmail, 'GET', '');
	}
	else {
		$('#mailMessage').html('Please type in a valid email address');
	}
}

function changeImage(strID, strImage) {
	$('#' + strID).attr('src', strImage);
}

function getPage(intPage) {
	$('.navigation').html('');
	$('#topNavigation').html('<img src="/images/ajax-loader-squares.gif" />');
	doJqueryAjax('guestbookHolder', '', 'op=guestbook&key=' + intPage, 'GET', '');
}

function toggleSlide(strID) {
	if ( $("#" + strID).css('display') == 'none') {
		$("#" + strID).slideDown('slow');
	}
	else {
		$("#" + strID).slideUp('slow');
	}
}

function hideID(strID) {
	$('#' + strID).slideUp("slow");	
}

function showMailingForm() {
	$('#mailingForm').slideDown("slow");	
}

function getGalleryMove(intDirection) {
	var intTotal = arrImages.length - 1;
	if (intDirection == 1) {
		if (intImageCurrent == intTotal) {
			intImageCurrent = 0;
		}
		else {
			intImageCurrent++;
		}
	}
	else {
		if (intImageCurrent == 0) {
			intImageCurrent = intTotal;
		}
		else {
			intImageCurrent--;
		}
	}
	// alert(intTotal + ' ' + arrImages[intImageCurrent][0] + ' ' + arrImages[intImageCurrent][1]);
	setImage('mainImage', '/mikescottwaterboys/images/gallery/large/' + arrImages[intImageCurrent][0], arrImages[intImageCurrent][1], intImageCurrent);
}

function setImage(strID, strImage, strDescription, intCurrent) {
	intImageCurrent = intCurrent;
	$('#' + strID).hide();
	$('#' + strID).html('<p><img src="' + strImage + '"></p><p>' + strDescription.replace("\\", "") + '</p>');
	$('#' + strID).fadeIn("slow");
}

function getSong(strID) {
	$('#lyricPanel').css('display','block');
	doJqueryAjax('lyricsItem', '', 'op=lyric&key=' + strID, 'GET', '');	
}

function getVideo(strID) {
	$('#lyricPanel').css('display','block');
	doJqueryAjax('videoItem', '', 'op=video&key=' + strID, 'GET', '');	
}


(function($) {
  $.fn.mask = function(){
  	this.each(function(){
  		var img = {
  			src: $(this).attr('src'),
  			bg: 'url('+this.src+')',
  			style: $(this).attr('style'),
  			width: $(this).width(),
  			height: $(this).height(),
  			alt:   $(this).attr('alt')
  		};
  		var div = $(this).wrap('<div>').parent().addClass('img');
  		div.attr({style: img.style, title: img.alt}).css({backgroundImage:img.bg, width: img.width, height: img.height});
                div.bind('contextmenu',function(){return false;});
  		div.find('img').remove();
  	});
  };
})(jQuery);

// *************************************************
// Copyright Fluidstate 2001

function getNumber(strNum) {
var dblTotal=0;
var bolDecimal = false;
var dblMultiple = 1;

	for (i=0; i<strNum.length; i++) {
		if (strNum.charAt(i)>="0" && strNum.charAt(i)<="9") {
			if (bolDecimal) {
				dblMultiple = dblMultiple * 0.1;
				dblTotal = (dblTotal) + (parseInt(strNum.charAt(i))*dblMultiple);
			}
			else {
				dblTotal = (dblTotal * 10) + parseInt(strNum.charAt(i));
			}
		}
		else {
			if (strNum.charAt(i).indexOf(".")>=0) {
				bolDecimal=true;
			}
		}
	}
	return dblTotal;
} //*** getNumber(strNum)

strAppName = window.navigator.appName;
strUserAgent = window.navigator.userAgent;

var bolIsAOL = false;
var intAOL = 0;
var dblAOLVersion = 0;

if (strUserAgent.indexOf("AOL")>=0) {
	bolIsAOL = true;
	intAOL = strUserAgent.indexOf("AOL");
	if (intAOL >= 0) {
			dblAOLVersion = getNumber(strUserAgent.substring(intAOL+4, intAOL+7));
	}
}

// ********* end of fluidstate code ****************
// *************************************************

function popUpWindow(URL) {

	// eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=600,height=225,left = 236.5,top = 148');");
	newWindow = open(URL,'','toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=735,height=560');
}

function popUp(URL, intHeight) {

	// eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=600,height=225,left = 236.5,top = 148');");
	newWindow = open(URL,'','toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=600,height=' + intHeight);
}

function IN_OpWin(URL) {
   if (window.screen){
  	var w = screen.width;
	var strTarget = "mikescottwaterboys/" + URL;
  	if (w < 740){
		
		wbwin=open(strTarget,'','width=733,height=554');
		
 	}
  	
	if(w >= 740 && w < 835){
		if (bolIsAOL) {
			wbwin=open(strTarget,'','width=733,height=554');
		} else {
			if (navigator.appName=="Netscape") { 
				if (strUserAgent.match(/Safari/)) {
					wbwin=open(strTarget,'','width=733,height=630');
				} else {
					wbwin=open(strTarget,'','width=733,height=550');
				}
			} else {
				wbwin=open(strTarget,'','width=733,height=550');
			}
		}
		//onBlur=(self.moveBy(60,60));
  	}
  	if(w >= 835){
		if (bolIsAOL) {
			wbwin=open(strTarget,'','location=yes,status=yes,menubar=yes,toolbar=yes,width=733,height=554');
		} else {
			if (navigator.appName=="Netscape") { 
				if (strUserAgent.match(/Safari/)) {
					wbwin=open(strTarget,'','location=yes,status=yes,menubar=yes,toolbar=yes,width=733,height=630');
				} else {
					wbwin=open(strTarget,'','location=yes,status=yes,menubar=yes,toolbar=yes,width=733,height=550');
				}
			} else {
				wbwin=open(strTarget,'','location=yes,status=yes,menubar=yes,toolbar=yes,width=733,height=550');
			}
		}
 //onBlur=(self.moveBy(60,60));
  	}
  }
}

//************************************************************

function doJqueryAjax(strShow, strHide, strQueryData, strMethod, intReplace)  {
	
	var intDebug = 0;
	var strDataType = 'json';
	var strData = '';
	var strQuery = '';
	
	if (strMethod == 'POST') {
		strData = $("#" + strForm).serialize(); 
		strQuery = "?" + strQueryData;
	} 
	else {
		strData = strQueryData;
	}
	
	var strURL = "/php/common-ajax.php" + strQuery;
	
	var strDebug =  "<strong>doJqueryAjaxM</strong>" + 
					" <br />strShow = " + strShow + 
					" <br />strHide = " + strHide + 
					"<br /> strQueryData = " + strQueryData + 
					"<br /> strMethod = " + strMethod + 
					"<br />";
	
	
	//$("#debug").html(strDebug);
	
	$.ajax({  
		type: 		strMethod,   
		url: 		strURL,  
		data: 		strData,
		cache: 		false,  
		dataType: 	'json',
		
		beforeSend: function() { 
		
			if (strHide.length > 0) {
				$("#" + strHide).hide(); //hide
			} 
			$("#waiting").show("slow"); //hide
			$("#" + strShow).hide(); //hide
			$("#" + strShow).html("");
			
			if (intDebug > 0) {
				$("#ajaxurl").html("<p>" + strURL + " (" + strQueryData + ")</p>");
			}
			//alert(strURL);
		}, //show loading just when link is clicked
		
		success: function(objReturn, textStatus) {  
			//alert('returned ok');
			switch (strDataType) {
				case 'json': // JSON
					 
					if (objReturn.result == 'success') {
						strDebug += "objReturn.result = success" + " - " + objReturn.op + "<br />";
						
						switch (objReturn.op) {
							
							case 'replace': // replace item
							case 'lyric':
							case 'video':
							
								var strLinks = '' + objReturn.links;
								if (strLinks.length > 0) {
									$("#imageLinks").html(objReturn.links);
								}
							
								$("#" + strShow).html(objReturn.html); //show the html inside
								$("#" + strShow).fadeIn('slow');
								
								strDebug += "<strong>Action:</strong> <br />HTML = " + strShow + "<br />";
											
							break;
							
							case 'guestbook': // replace item
							
								var strLinks = '' + objReturn.links;
								if (strLinks.length > 0) {
									$(".navigation").html(strLinks);
								}
							
								$("#" + strShow).html(objReturn.html); //show the html inside
								$("#" + strShow).fadeIn('slow');
								
								strDebug += "<strong>Action:</strong> <br />HTML = " + strShow + "<br />";
											
							break;
							
							case 'mailing':
								$('#mailForm').html(objReturn.html);
							break;
						}
					}
				break;
			}
			
			$("#waiting").hide("slow"); //hide
			//$("#questionHolder").show("slow"); //animation
			
			if (intDebug > 0) {
				$("#ajax").html(html2entity(objReturn.html)); //animation
				$("#debug").html(strDebug);
				$("#debugSuccess").html(objReturn.debug);
			}
		},
		
		error: function(XMLHttpRequest, textStatus, errorThrown) {
			alert(textStatus + " " + errorThrown);
		}
		
	}); 
}
