function hssOpenLightbox(url)
{
    if (url !== null)
    {
        if (url.indexOf('/project') === 0)
        {
            // open in lightbox
            $.fn.colorbox({
                height: '500px',
                width: '916px',
                iframe: true,
                href: url + "?lightbox",
                open: true
            });
        }
        else
        {
            // redirect
            window.location = url;
        }
    }
}
$(document).ready(function() {
    if ($('#map').length !== 0) {
        initializeMap();
    }
    
    initProjectWindow();
    
    if ($('#ticker').length !== 0) {
		slideshow ();
	};
	if($('#signUp').length > 0)
	$('#signUp').colorbox({
            height: '375px',
            width: '487px',
            iframe: true
        });
});

$().bind('cbox_complete', function() {
     $('#cboxIframe').bind('load', function() {
         $($('#cboxIframe').get(0).contentWindow.document).ready( function() {
             $($('#cboxIframe').get(0).contentWindow.document).find('#relatedProjects a').click(function() {
                 var projectUrl = this.href;
                 projectUrl = projectUrl.substr(0, projectUrl.length - 9);
                 ShowProject(projectUrl);
                 return false;
             })
         });
     });
});

function initializeMap() {	
	var map = new GMap2(document.getElementById("map"));	
	map.setCenter(new GLatLng(34.101766,-118.340693), 15);
	map.setUIToDefault();	
	var point = new GLatLng(34.101466,-118.340699);
	map.addOverlay(new GMarker(point));
}

function initProjectWindow() {
    var projectLinks = $("a[href][rel='project']").get();
    for (var i = 0; i < projectLinks.length; i++)
    {
        projectLinks[i].href = "#project:" + encodeURI(projectLinks[i].href);
        $(projectLinks[i]).click(function () {
            ShowProject(decodeURI(this.href.substring(this.href.indexOf('#project:') + 9)));
            return false;
        });
    }
    
    $().bind('cbox_closed', function(){
        //window.location = '#';
    });

    ShowProject();
}

function GetProjectProperties(projectUrl) {
    if (projectUrl.toLowerCase().indexOf('http://') == 0 || projectUrl.toLowerCase().indexOf('https://') == 0)
        projectUrl = projectUrl.substr(projectUrl.indexOf('/', projectUrl.indexOf('://') + 3));
    for (var cp = 0; cp < projectUrls.length; cp++)
        for (var p = 0; p < projectUrls[cp].length; p++)
            if (projectUrls[cp][p][0] == projectUrl)
                return [cp, projectUrls[cp][p]];
                
    return [-1, null];
}

function ShowProject(projectURL) {
    var location = window.location.toString();
    var projectFragmentIndex = location.indexOf('#project:');
    if(projectURL == null & projectFragmentIndex > -1)
        projectURL = decodeURI(location.substring(projectFragmentIndex + 9));
        
    if (projectURL != null) {
        var colorBoxWidth = '916px';
        var colorBoxHeight = '500px';
        
        if(GetProjectProperties(projectURL)[1][1])
            colorBoxHeight = '610px';
           
        $.fn.colorbox({
            height: colorBoxHeight,
            width: colorBoxWidth,
            iframe: true,
            href: projectURL + "?lightbox",
            open: true
        });
    }
}

function slideshow () {
    //recursive call
	$(window).load(function () {
	    var targ = '#ticker .active';
	    fadeOut(targ);
	});
	
	//each function
	function fadeOut (targ) {
	    $(targ).fadeOut(900, function () {
	        var x = $(this).next('li');
	        if(!x.length == 0) 
			    targ = x;
			else 
			    targ = '#ticker .active';
			
			fadeIn (targ);
		});
	}
	
	function fadeIn (targ) {
	    $(targ).animate({"opacity": "show"}, 300, function () {
		    //create delay before pic change in ms eg 3000 = 3 secs
		    $(targ).animate({opacity: 1.0}, 3500);
		    //fade out image and replace
		    fadeOut(targ);
	    });
	}
}