﻿// converts a page title into an address
function convertTitleToPath(source, targetID)
{
	var target = document.getElementById(targetID);
	
	if (target)
	{
		var title = source.value != null ? source.value : "";
		
		if (target.value == null || target.value == "")
		{
			title = title.replace(/[^A-Z0-9]/gi, "_");
			title = title.replace(/^_+|_+$/gi, "");
			title = title.replace(/_+/gi, "_");
			
			target.value = title.toLowerCase();
		}
	}
}

// fixes transparent PNG background in Internet Explorer
function fixBackgroundTransparency(e)
{
	if (arguments.length == 0)
	{
		e = document.body;
	}
	
	var pngTest = /.png/gi;
	var src = e.currentStyle != null ? e.currentStyle.backgroundImage : "";
	
	if (pngTest.test(src)) // background image is a PNG
	{
		var bg = e.backgroundElement;
		
		if (bg == null)
		{
			bg = e.backgroundElement = e.appendChild(document.createElement("div"));
			bg.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\"" + src.replace(/url\("(.*?)"\)/i, "$1") + "\",sizingMethod=\"scale\")";
			bg.style.left = "0px";
			bg.style.position = "absolute";
			bg.style.top = "0px";
			bg.style.zIndex = "-1";

			e.style.backgroundImage = "none";
			e.style.position = "relative";
		}
		
		bg.style.height = e.offsetHeight + "px";
		bg.style.width = e.offsetWidth + "px";
	}
	
	for (var i = 0; i < e.childNodes.length; i++)
	{
		fixBackgroundTransparency(e.childNodes[i]);
	}
}

// executes site load functions
function loadSite()
{
	var slideshow = document.getElementById("Slideshow");

	if (document.all)
	{
		fixBackgroundTransparency();
	}
	
	if (slideshow)
	{
		var loader = slideshow.appendChild(document.createElement("li"));
		var slides = new Array();
		
		loader.style.background = "url(\"" + Tactica.basePath + "images/loading.gif\") center center no-repeat";
		loader.style.height = "100%";
		loader.style.width = "100%";
		loader.style.zIndex = "500";

		slides.push({ src: "banner_header_oneocean.jpg", service: "Service1", url: "/projects/33/tactica_produces_cross_platform_digital_media_project_one_ocean_with_merit_motion_pictures_cbc.aspx" });
		slides.push({ src: "banner_header_tiga_talk.jpg", service: "Service1", url: "/projects/36/tiga_talk_a_cross_platform_digital_media_project.aspx" });
		slides.push({ src: "cbc_school_01_banner.jpg", service: "Service1" });
		slides.push({ src: "cbc_school_02_banner.jpg", service: "Service1" });
		slides.push({ src: "cbc_school_03_banner.jpg", service: "Service1" });
		slides.push({ src: "cbc_cos_01_banner.jpg", service: "Service3" });
		slides.push({ src: "cbc_cos_02_banner.jpg", service: "Service3" });
		slides.push({ src: "cbc_cos_03_banner.jpg", service: "Service3" });
		slides.push({ src: "cbc_cos_04_banner.jpg", service: "Service3" });
		slides.push({ src: "banner_canola_01.jpg", service: "Service5" });
		slides.push({ src: "banner_canola_02.jpg", service: "Service5" });
		slides.push({ src: "banner_canola_03.jpg", service: "Service5" });
		slides.push({ src: "banner_canola_04.jpg", service: "Service5" });
		slides.push({ src: "lucid_01_banner.jpg", service: "Service2" });
		slides.push({ src: "lucid_02_banner.jpg", service: "Service2" });
		slides.push({ src: "lucid_03_banner.jpg", service: "Service2" });
		slides.push({ src: "planners_plus_banner_01.jpg", service: "Service4" });
		slides.push({ src: "planners_plus_banner_02.jpg", service: "Service4" });
		slides.push({ src: "banner_7wonder_01.jpg", service: "Service6" });
		slides.push({ src: "banner_7wonders_02.jpg", service: "Service6" });		

		for (var i = 0; i < slides.length; i++)
		{
			var elm = slideshow.appendChild(document.createElement("LI"));
			var img = document.createElement("IMG");

			if (slides[i].url != null)
			{
			    var link = elm.appendChild(document.createElement("A"));

			    link.appendChild(img);
			    link.href = slides[i].url;
			    // link.onclick = function() { window.open(this.href); };
			}
			else
			{
			    elm.appendChild(img);
			}
			
			img.src = Tactica.basePath + "images/" + slides[i].src;
			
			elm.service = document.getElementById(slides[i].service);
			elm.style.filter = "alpha(opacity=" + (i == 0 ? 100 : 0) + ")";
			elm.style.left = "0px";
			elm.style.opacity = (i == 0) ? 1 : 0;
			elm.style.position = "absolute";
			elm.style.top = "0px";
			elm.style.zIndex = (i == 0) ? 1 : 0;
			
			if (i == 0 && elm.service != null)
			{
				elm.service.className = "lit";
			}
			
			Slideshow.items.push(elm);
		}
		
		loader.parentNode.removeChild(loader);

		Slideshow.start();
	}
	
	// apply shadows
	var headings = new Array();
	var h1s = document.getElementById("Content").getElementsByTagName("h1");
	var h2s = document.getElementById("Content").getElementsByTagName("h2");
	
	for (var i = 0; i < h1s.length; i++) headings.push(h1s[i]);
	for (var i = 0; i < headings.length; i++)
	{
		var heading = headings[i];
		
		TextFX.addDropShadow(heading, -1, 1, "#FFF");
		TextFX.addDropShadow(heading, -2, 2, "#DDD");
	}
}

Tactica.loadScript("scripts/tactica.animation.js");
Tactica.loadScript("scripts/tactica.animation.fade.js");
Tactica.loadScript("scripts/tactica.animation.slideshow.js");
Tactica.loadScript("scripts/tactica.forms.js");
Tactica.loadScript("scripts/tactica.menus.js");
Tactica.loadScript("scripts/tactica.stats.js");
Tactica.loadScript("scripts/tactica.text.js");

Tactica.addLoadFunction(loadSite);