var partners = [];

partners.push([26, 'business_impact', 46.4984, -82.7051, 'B Lab', '/programs/business_impact#!corporate_responsibility/b_lab', 'B Lab is building a community of Certified B Corporations to help identify companies that meet independent standards of social and environmental performance, accountability, and transparency.', 'United States', '2008 - 2010']);

partners.push([37, 'community', 17.0752, -96.7202, 'Hub Oaxaca', '/programs/community#!social_innovation/hub_oaxaca', 'Inspiring social change ', 'Mexico', '2009 - 2010']);

partners.push([50, 'community', 15.75, 75.7397, 'Selco Labs', '/programs/community#!clean_energy_water/selco_labs', 'Connecting rural communities with clean technologies', 'India', '2010']);

partners.push([61, 'wellbeing', 52.5199, -4.13458, 'New Economics Foundation - NEF', '/programs/wellbeing#!well_being/new_economics_foundation_nef', 'Economics as if people and the planet mattered ', 'Global ', '2010']);

partners.push([22, 'business_impact', 37.8212, -122.422, 'Social Capital Markets Conference', '/programs/business_impact#!enterprise_innovation/social_capital_markets_conference', 'At the intersection of money and meaning', 'United States', '2008 - 2010']);

partners.push([27, 'business_impact', 45.0321, -97.6392, 'Veritas Institute', '/programs/business_impact#!corporate_responsibility/veritas_institute', 'Fostering ethically and socially responsible organizational conduct', 'Minneapolis, US', '2007']);

partners.push([23, 'business_impact', 25.7875, -80.238, 'Social Venture Capital Conference Miami', '/programs/business_impact#!enterprise_innovation/social_venture_capital_conference_miami', 'Sustainable solutions for Latin America, the Caribbean, and the state of Florida.', 'Miami, US', '2009']);

partners.push([28, 'business_impact', 44.9259, -93.2574, 'Corporate Responsibility History Project', '/programs/business_impact#!corporate_responsibility/corporate_responsibility_history_project', 'Understanding and rethinking Corporate Responsibility', 'Minneapolis, US', '2007 - 2010']);

partners.push([25, 'business_impact', -22.9065, -43.212, 'Sitawi', '/programs/business_impact#!enterprise_innovation/sitawi', 'Building the Social Financing Environment in Brazil', 'Brazil', '2010 - 2012']);

partners.push([36, 'community', 26.8665, 80.7859, 'Drishtee', '/programs/community#!social_innovation/drishtee', 'Connecting communities village by village', 'India', '2009 - 2011']);

partners.push([32, 'community', 25.1652, -107.314, 'Pro Mujer', '/programs/community#!social_innovation/pro_mujer', 'Empowering women in Latin America to become agents of change', 'Latin America', '2007 - 2010']);

partners.push([35, 'community', -8.03815, -34.8816, 'Agencia ANDE', '/programs/community#!social_innovation/agencia_ande', 'Creating opportunities, transforming lives', 'Brazil', '2007']);

partners.push([33, 'community', 37.7875, -122.423, 'Kiva', '/programs/community#!social_innovation/kiva_microfunds', 'Loans that change lives', 'Global', '2007']);

partners.push([34, 'community', 42.2804, 118.89, 'Grameen Foundation', '/programs/community#!social_innovation/grameen_foundation', 'Combining the power of microfinance and technology to defeat poverty', 'Global - China', '2007']);

partners.push([38, 'community', 40.7269, -72.4617, 'The Enterprise Center', '/programs/community#!social_innovation/the_enterprise_center', 'Inspiring youth to build the future of business', 'Philadelphia, PA', '2007']);

partners.push([39, 'community', 40.1173, -78.7876, 'Project HOME', '/programs/community#!social_innovation/project_home', 'Ending homelessness in Philadelphia', 'Philadelphia, PA', '2007']);

partners.push([47, 'community', 44.4338, -77.5195, 'E+CO', '/programs/community#!clean_energy_water/eco', 'Energy through enterprise', 'Global', '2008']);

partners.push([52, 'community', 21.1255, 84.0234, 'Ashden Awards for Sustainable Energy', '/programs/community#!clean_energy_water/ashden_awards_for_sustainable_energy', 'Celebrating sustainable solutions to poverty and climate change', 'India', '2010']);

partners.push([53, 'wellbeing', 39.9845, -75.2563, 'Journal of Ecumenical Studies and Dialogue Institute', '/programs/wellbeing#!well_being/journal_of_ecumenical_studies_and_dialogue_institute', 'Advancing interreligious engagement around the globe', 'Philadelphia, PA', '2007 - 2010']);

partners.push([57, 'business_impact', 24.7999, -100.426, 'Latin America Impact Investing Forum', '/programs/business_impact#!enterprise_innovation/latin_america_impact_investing_forum', 'Accelerating the growth of sustainable businesses ', 'Mexico', '2010']);

partners.push([56, 'community', 18.8231, -72.1143, 'Finca', '/programs/community#!social_innovation/finca', 'Creating pathways out of poverty', 'Haiti, Guatemala & Mexico', '2007']);

partners.push([58, 'business_impact', 45.5525, -69.3896, 'Echoing Green', '/programs/business_impact#!enterprise_innovation/echoing_green', 'Big, bold change', 'Global', '2010']);

partners.push([60, 'business_impact', 3.99578, -73.4326, 'Bamyan Media', '/programs/business_impact#!enterprise_innovation/bamyan_media', 'Reality TV as a tool for social change', 'Global - Colombia', '2010']);

partners.push([59, 'business_impact', -21.7799, -51.6797, 'ANDE Polo Brasil', '/programs/business_impact#!enterprise_innovation/ande_polo_brasil', 'Catalyzing collaboration among sustainable enterprises', 'Brazil', '2010']);

partners.push([79, 'business_impact', 53.805, 0.227052, 'Impact Investing Forum 2010', '/programs/business_impact#!enterprise_innovation/impact_investing_forum_2010', 'Strong returns, real social impact', 'London/Global', '2010']);

partners.push([74, 'wellbeing', -4.08345, 15.3589, 'Bumuntu Peace Institute', '/programs/wellbeing#!well_being/bumuntu_peace_institute', 'Building peace in Congo through dialogue ', 'Congo', '2010']);

partners.push([73, 'community', 27.7613, 85.2759, 'Technion Institute', '/programs/community#!clean_energy_water/technion_institute', 'Engineers Without Borders Program', 'Nepal', '2010']);

partners.push([99, 'business_impact', 34.3978, -78.772, 'The Enterprise Innovation Fund', '/programs/business_impact#!enterprise_innovation/the_enterprise_innovation_fund', 'Innovating enterprise development', 'United States', '2010']);

partners.push([62, 'community', 44.5905, -63.5889, 'Buckminster Fuller Institute', '/programs/community#!social_innovation/buckminster_fuller_challenge', 'Making the world work for 100% of humanity', 'Global', '2010']);

partners.push([31, 'community', 31.0153, 36.3208, 'Women&#8217;s World Banking', '/programs/community#!social_innovation/womens_world_banking', 'Access to health microinsurance ', 'Global - Jordan', '2007']);

partners.push([117, 'business_impact', 47.8638, 1.34146, 'The Social Stock Exchange - London', '/programs/business_impact#!enterprise_innovation/the_social_stock_exchange_london', '', 'London/Global', '2010']);

partners.push([118, 'business_impact', 38.7541, -83.2764, 'The Villanova Social Entrepreneurship Competition', '/programs/business_impact#!enterprise_innovation/the_villanova_social_entrepreneurship_competition', '', 'Villanova, PA', '2010']);


/* ------------------------------------------------------------------------------------------ */

var equator = 240;
var prime = 405;

/* ------------------------------------------------------------------------------------------ */

function removePopups()
{
	$('.map-item').each(function(){	
		$(this).fadeOut(100, function() {$(this).remove();});
		
	});
}

function pinHtml(partner)
{
	var pid = partner[0];
	var pslug = partner[1].replace(' ', '-').toLowerCase();
	var plat = partner[2] / 90;
	var plong = partner[3] / 180;
	var myy = equator - (plat * equator) - 15;
	var myx = prime + (plong * prime) - 10;
	return '<div id="partner-'+i+'" class="pin '+pslug+'" style="top:'+myy+'px;left:'+myx+'px;"></div>';
}

function popupHtml(partner)
{
	var pid = partner[0];
	var popupClass = partner[1].replace(' ', '-').toLowerCase();
	var popupTitle = partner[4];
	var popupUrl = partner[5];
	var popupDesc = partner[6];
	var popupLoc = partner[7];
	var popupDate = partner[8];
	var myy = 0;
	var myx = 32;
	return '<div id="map-item-'+pid+'" class="map-item '+popupClass+'" style="top:'+myy+'px;left:'+myx+'px;"><h1>'+popupTitle+'</h1><span class="location">'+popupLoc+'</span><span class="description">'+popupDesc+'<br/>'+popupDate+'</span><a href="'+popupUrl+'">learn more &#187;</a></div>';
}

/* ------------------------------------------------------------------------------------------ */

$('#programs > article > h1').live('click', function() {$(this).next().slideToggle();});

$('.pin').live('mouseenter mouseleave', function(e) {
	if(e.type == 'mouseenter')
    {
    	var hy = parseInt($(this).css('top').replace('px', '')) - 8;
    	var hx = parseInt($(this).css('left').replace('px' ,'')) - 3;
    	$(this).append(popupHtml(partners[$(this).attr('id').substr(8)]));
    	$('.map-item').fadeIn(100);
    }
    else
    {
    	removePopups();
    	var hy = parseInt($(this).css('top').replace('px', '')) + 8;
    	var hx = parseInt($(this).css('left').replace('px' ,'')) + 3;
    }
    
    $(this).css({'top':hy+'px', 'left':hx+'px'});
    
});

// GO!
$(function() {
	var map = $('#map');
	for(i in partners)
	{
		var partner = partners[i];
		var plat = partner[2] / 90;
		var plong = partner[3] / 180;
		if(plat != 0 || plong != 0)
		{map.append(pinHtml(partner));}
	}
	
	setTimeout(function() { $('#programs > article:first-child > h1').trigger('click'); }, 500);
	setTimeout(function() { $('#programs > article:nth-child(2) > h1').trigger('click'); }, 1000);
	setTimeout(function() { $('#programs > article:last-child > h1').trigger('click'); }, 1500);

});

