/***************************
 * SITE-SPECIFIC FUNCTIONS *
 ***************************/
 function doSearch() {
 	var defaultText = 'Search News Articles';
	$('#s').val(defaultText);
	$('#s').focus(function() {
		if ($(this).val() == defaultText) $(this).val('');
	});
 }
 
 function embedSlideshow(id) {
	 	document.write('<div id="slideshow"></div>');
		var so = new SWFObject("/flash/slideshow.swf", "ssp" + id, "640", "360", "8", "#FFFFFF");
		so.addVariable('baseURL', 'http://win.dreamhosters.com/ssp_director/images.php?album=');
		so.addVariable('albumid', id);
		so.addParam("wmode", "transparent");
		so.write('slideshow');
 }
 
function embedSidebarSlideshow(id) {
	 	document.write('<div id="sidebar-slideshow"></div>');
		var so = new SWFObject("/flash/sidebar_slideshow.swf", "ssp" + id, "250", "250", "8", "#FFFFFF");
		so.addVariable('baseURL', 'http://win.dreamhosters.com/ssp_director/images.php?album=');
		so.addVariable('id', id);
		so.addParam("wmode", "transparent");
		so.write('sidebar-slideshow');
 } 
 
 function collapseExpand() {
	$('a.reveal').append(' <span class="show-hide">[+]</span>');
	$('.overflow').hide();
	$('a.reveal').toggle(function(evt) {
		evt.preventDefault();
		$(this).parent().next('div.overflow').slideDown();
		$(this).find('span.show-hide').remove();
		$(this).append(' <span class="show-hide">[-]</span>');
	}, function(evt) {
		evt.preventDefault();
		$(this).parent().next('div.overflow').slideUp();
		$(this).find('span.show-hide').remove();
		$(this).append(' <span class="show-hide">[+]</span>');
	});
 }

if (jQuery.validator) {
jQuery.validator.addMethod("phone", function(phone_number, element) {
    phone_number = phone_number.replace(/\s+/g, ""); 
	return this.optional(element) || phone_number.length > 9 &&
		phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
}, "Please specify a valid phone number with area code.");
}
 
function makeBigLinks() {
	$('.biglink').hoverIntent(function() {
		$(this).addClass('biglink-over');
		var hyperlink = $(this).find('a:first').attr('href');
		window.status = hyperlink;
	}, function() {
		$(this).removeClass('biglink-over');
		window.status = '';
	}).click(function(){
		var hyperlink = $(this).find('a:first').attr('href');
		document.location.href = hyperlink;
	});
	
}
 
/*********************
 * UTILITY FUNCTIONS *
 *********************/
 
function sendMail(user,domain,tld,subject,message) {
	if (!user) user = "info";
	if (!domain) domain = "worldinneedtx";
	if (!tld) tld = "org";
	locationstring = "mailto:" + user + "@" + domain + "." + tld;
	if (subject) locationstring += "?subject=" + encodeURIComponent(subject);
	if (message) locationstring += "&body=" + encodeURIComponent(message);
	window.location = locationstring;
}

function openWindow(url,features) {
	var newWin = window.open(url,'popup',features);
	newWin.focus();
}

function closeWindow() {
	if (window.opener) {
		self.close();	
	}
}

function printPage() {
	if (window.print != null) {
		window.print();
	}
	else {
		alert("To print this page, please select Print from your browser's File menu.");
	}
}

function preload() {
	var path = '/images/';
	var images = new Array('');
	var preload = new Array('');
	var j = images.length;
	for (var i=0; i<images.length; i++) {
		preload[j] = new Image;
		preload[j++].src = path + images[i];
	}
}

function externalLinks() {
	$('a[rel*=external]').attr('target','_blank');	
}

function makeExternalLinks(){
    $('a, area').filter(function(){
        return this.hostname && this.hostname != location.hostname;
    })
	 .attr({
		target: "_blank", 
		title: "Opens in a new window"
	})
	.not('a:has(img)')
	.addClass('external');
}

function handleLinkedFiles() {
	// Open linked files in a new window
	$('a').filter(function() {
        return (/(pdf$)|(doc$)|(ppt$)|(pps$)/i).test( $(this).attr('href'));
	}).attr('target','_blank');
	// Append content to link
	$('a[href$=.pdf]').not('a:has(img)').append(' <img src="/images/pdf.png" />');
}

function makeRollovers() {
	$('a.rollover').each(function() {
		var img = new Image();
		var upimage = $(this).find('img:first').attr('src');
		img.src = upimage.replace('_up','_ov');
	});
	$('a.rollover').hover(
		function() {
			var overimage = $(this).find('img').attr('src').replace('_up','_ov');
			$(this).find('img').attr('src',overimage);
		},
		function() {
			var upimage = $(this).find('img').attr('src').replace('_ov','_up');
			$(this).find('img').attr('src',upimage);
		}
	);
	$('input[type=image]').each(function() {
		var img = new Image();
		var upimage = $(this).attr('src');
		img.src = upimage.replace('_up','_ov');
	});
	$('input[type=image]').hover(
		function() {
			var overimage = $(this).attr('src').replace('_up','_ov');
			$(this).attr('src',overimage);
		},
		function() {
			var upimage = $(this).attr('src').replace('_ov','_up');
			$(this).attr('src',upimage);
		}
	);
}

function styleBlockquotes() {
	$('blockquote .cite').prev().append('<img src="/images/close-quote.gif" style="position:absolute; vertical-align:top; margin-left: 2px;" />');
}

function actionLinks() {
	$('a.action').append(' &#187;');
}

function init() {
	makeExternalLinks();
	actionLinks();
	handleLinkedFiles();
	makeRollovers();
	styleBlockquotes();
	$('.sf-menu').superfish();
	$('.cmxform ol li:last').css('border','none');
	$('blockquote').dropShadow();
	collapseExpand();
	makeBigLinks();
}
