var americas = []; var a = 0;
var emea = []; var e = 0;
var ap = []; var p = 0;
var dataPath = "xml/TivoliAccreditation.xml";
var container = "#results";
var containerBody = "#results-data";
var header = '<div class="ibm-container ibm-graphic-tabs ibm-combo-tabs">\n\t<div class="ibm-tab-section">\n\t\t<h2 class="ibm-access">Tabs for geography selection</h2>\n\t\t<ul class="ibm-tabs" id="graphics-tabs">\n\t\t\t<li id="americas" class="ibm-first-tab ibm-highlight-tab"><a href="#americas">Americas</a><span class="ibm-access">- selected tab,</span></li>\n\t\t\t<li id="emea"><a href="#emea">Europe</a></li>\n\t\t\t<li id="ap" class="ibm-last-tab"><a href="#ap">Asia</a></li>\n\t\t</ul>\n\t</div>\n\t<div class="ibm-tab-section ibm-text">\n\t\t<h2 class="ibm-access">Tab navigation</h2>\n\t\t<div class="ibm-tabs ibm-three-column">\n\t\t\t<div class="ibm-column ibm-first">\n\t\t\t\t<ul class="ibm-link-list">\n\t\t\t\t\t<li><a class="ibm-anchor-down-em-link" href="#ServiceManagement">Service Management</a></li>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div class="ibm-column ibm-second">\n\t\t\t\t<ul class="ibm-link-list">\n\t\t\t\t\t<li><a class="ibm-anchor-down-em-link" href="#Storage">Storage</a></li>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div class="ibm-column ibm-third">\n\t\t\t\t<ul class="ibm-link-list">\n\t\t\t\t\t<li><a class="ibm-anchor-down-em-link" href="#Automation">Automation</a></li>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div class="ibm-column ibm-fourth">\n\t\t\t\t<ul class="ibm-link-list">\n\t\t\t\t\t<li><a class="ibm-anchor-down-em-link" href="#Security">Security</a></li>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div><div class="ibm-clear">&nbsp;</div>';
var stTable = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"Storage Table\" class=\"ibm-data-table\" id=\"Storage\">\n\t\t<caption><em>Storage</caption>\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Product</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Deployment Accreditation Level</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Partner name</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Country</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t</tbody>\n\t</table>";
var smTable = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"Service Management Table\" class=\"ibm-data-table\" id=\"ServiceManagement\">\n\t\t<caption><em>Service Management</caption>\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Product</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Deployment Accreditation Level</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Partner name</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Country</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody id=\"ServiceManagementTbody\">\n\t\t</tbody>\n\t</table>";
var auTable = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"Automation Table\" class=\"ibm-data-table\" id=\"Automation\">\n\t\t<caption><em>Automation</caption>\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Product</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Deployment Accreditation Level</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Partner name</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Country</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t</tbody>\n\t</table>";
var seTable = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" summary=\"Security Table\" class=\"ibm-data-table\" id=\"Security\">\n\t\t<caption><em>Security</caption>\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Product</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Deployment Accreditation Level</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Partner name</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t\t<th scope=\"col\"><a href=\"#sort\"><span>Country</span><span class=\"ibm-icon\">&nbsp;</span></a></th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t</tbody>\n\t</table>";
var smData = "";
var stData = "";
var auData = "";
var seData = "";

// set our shortcut
var JQ = jQuery.noConflict();

// create partner
function makePartner(accreditedproductname, accreditedproductcategory, ranking, partnername, partnerurl, countryname) {
	this.accreditedproductname = accreditedproductname;
	this.accreditedproductcategory = accreditedproductcategory;
	this.ranking = ranking;
	this.partnername = partnername;
	this.partnerurl = partnerurl; 
	this.countryname = countryname; 
}

JQ(function() {
	JQ.ajax({
		url: dataPath,
		type: 'GET',
		dataType: 'xml',
		error: function(){
			alert('Error loading tags XML');
		},/* close error */
		success: function(xml){
			JQ(xml).find('partner').each(function() {
				var name_text = JQ(this).find('accreditedproductname').text();
				var category_text = JQ(this).find('accreditedproductcategory').text();
				var ranking_text =  JQ(this).find('ranking').text();
				var partnername_text =  JQ(this).find('partnername').text();
				var partnerurl_text =  JQ(this).find('partnerurl').text();
				var country_text = JQ(this).find('countryname').text();
				var geo_name_text = JQ(this).find('geo_name').text();
				
				if (geo_name_text == "Americas") {
					americas[a] = new makePartner(name_text, category_text, ranking_text, partnername_text, partnerurl_text, country_text);a++;
				} else if (geo_name_text == "EMEA") {
					emea[e] = new makePartner(name_text, category_text, ranking_text, partnername_text, partnerurl_text, country_text);e++;
				} else if (geo_name_text == "Asia Pacific") {
					ap[p] = new makePartner(name_text, category_text, ranking_text, partnername_text, partnerurl_text, country_text);p++;
				}
			 }); /*close each(*/
			JQ(container).children().remove();
			JQ(container)
				.append(header)
				.append("<div id=\"results-data\"></div>");
			JQ(containerBody)
				.append(stTable)
				.append(smTable)
				.append(auTable)
				.append(seTable);
			
			JQ("#graphics-tabs #americas").click(function () { 
				JQ("#graphics-tabs li").removeClass("ibm-highlight-tab");
				JQ(this).addClass("ibm-highlight-tab");
				displayContent("americas");
			});

			JQ("#graphics-tabs #emea").click(function () { 
				JQ("#graphics-tabs li").removeClass("ibm-highlight-tab");	
				JQ(this).addClass("ibm-highlight-tab");
				displayContent("emea");
			});

			JQ("#graphics-tabs #ap").click(function () { 
				JQ("#graphics-tabs li").removeClass("ibm-highlight-tab");	
				JQ(this).addClass("ibm-highlight-tab");	
				displayContent("ap");
			});
			if (window.location.hash != "")
			{
				geo = window.location.hash.substring(1);
				displayContent(geo);
				JQ("#graphics-tabs li").removeClass("ibm-highlight-tab");
				JQ("#graphics-tabs #" + geo).addClass("ibm-highlight-tab");
			} else { // load cookies
				var cookieLocale = "";
				cookieLocale = ibmCommon.cookie.get("TivoliAccreditedBusinessPartners");
				if (cookieLocale) {
					displayContent(cookieLocale);
					JQ("#graphics-tabs li").removeClass("ibm-highlight-tab");	
					JQ("#graphics-tabs #" + cookieLocale).addClass("ibm-highlight-tab");
				} else
					displayContent('americas');
			} // close loader;
		} //close success
	});// close ajax
	JQ(container)
		.append("<p>Loading ...</p>");
});

function displayContent(geo) {
	JQ(containerBody).children().remove();

	smData = stData = auData = seData = "";

	if (geo == "americas"){
		for (x in americas)
		{
			if (americas[x].accreditedproductcategory == "IBM Service Management"){
				smData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +americas[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +americas[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +americas[x].partnerurl + "\">" +americas[x].partnername + "</a></td>\n\t\t\t\t<td>" +americas[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (americas[x].accreditedproductcategory == "Storage"){
				stData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +americas[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +americas[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +americas[x].partnerurl + "\">" +americas[x].partnername + "</a></td>\n\t\t\t\t<td>" +americas[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (americas[x].accreditedproductcategory == "Automation"){
				auData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +americas[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +americas[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +americas[x].partnerurl + "\">" +americas[x].partnername + "</a></td>\n\t\t\t\t<td>" +americas[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (americas[x].accreditedproductcategory == "Security"){
				seData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +americas[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +americas[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +americas[x].partnerurl + "\">" +americas[x].partnername + "</a></td>\n\t\t\t\t<td>" +americas[x].countryname + "</td>\n\t\t\t</tr>\n";
			}
		}
	} else if (geo == "emea"){
		for (x in emea)
		{
			if (emea[x].accreditedproductcategory == "IBM Service Management"){
				smData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +emea[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +emea[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +emea[x].partnerurl + "\">" +emea[x].partnername + "</a></td>\n\t\t\t\t<td>" +emea[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (emea[x].accreditedproductcategory == "Storage"){
				stData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +emea[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +emea[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +emea[x].partnerurl + "\">" +emea[x].partnername + "</a></td>\n\t\t\t\t<td>" +emea[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (emea[x].accreditedproductcategory == "Automation"){
				auData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +emea[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +emea[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +emea[x].partnerurl + "\">" +emea[x].partnername + "</a></td>\n\t\t\t\t<td>" +emea[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (emea[x].accreditedproductcategory == "Security"){
				seData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +emea[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +emea[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +emea[x].partnerurl + "\">" +emea[x].partnername + "</a></td>\n\t\t\t\t<td>" +emea[x].countryname + "</td>\n\t\t\t</tr>\n";
			}
		}
	} else if (geo == "ap"){
		for (x in ap)
		{
			if (ap[x].accreditedproductcategory == "IBM Service Management"){
				smData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +ap[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +ap[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +ap[x].partnerurl + "\">" +ap[x].partnername + "</a></td>\n\t\t\t\t<td>" +ap[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (ap[x].accreditedproductcategory == "Storage"){
				stData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +ap[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +ap[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +ap[x].partnerurl + "\">" +ap[x].partnername + "</a></td>\n\t\t\t\t<td>" +ap[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (ap[x].accreditedproductcategory == "Automation"){
				auData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +ap[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +ap[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +ap[x].partnerurl + "\">" +ap[x].partnername + "</a></td>\n\t\t\t\t<td>" +ap[x].countryname + "</td>\n\t\t\t</tr>\n";
			}else if (ap[x].accreditedproductcategory == "Security"){
				seData += "\t\t\t<tr class=\"ibm-table-row\">\n\t\t\t\t<td>" +ap[x].accreditedproductname + "</td>\n\t\t\t\t<td>" +ap[x].ranking + "</td>\n\t\t\t\t<td><a href=\"" +ap[x].partnerurl + "\">" +ap[x].partnername + "</a></td>\n\t\t\t\t<td>" +ap[x].countryname + " </td>\n\t\t\t</tr>\n";
			}
		}
	}
	ibmCommon.cookie.set("TivoliAccreditedBusinessPartners",geo);
	
	if (smData != ""){
		JQ(containerBody).append(smTable);
		JQ('#ServiceManagement tbody').append(smData);
		JQ(".ibm-column:has(a[href='#ServiceManagement'])").show();
		JQ('#ServiceManagement')
			.tablesorter({cssAsc:"ibm-sort-down", cssDesc:"ibm-sort-up", cssHeader:"ibm-sort", sortList: [[1,1]]})
			.after("<p class=\"ibm-ind-link ibm-back-to-top\"><a href=\"#top\" class=\"ibm-anchor-up-link\">Back to top</a></p><br />");
	} else {
		JQ(".ibm-column:has(a[href='#ServiceManagement'])").hide();
	}

	if (stData != ""){
		JQ(containerBody).append(stTable);
		JQ('#Storage tbody').append(stData);
		JQ(".ibm-column:has(a[href='#Storage'])").show();
		JQ('#Storage')
			.tablesorter({cssAsc:"ibm-sort-down", cssDesc:"ibm-sort-up", cssHeader:"ibm-sort", sortList: [[1,1]]})
			.after("<p class=\"ibm-ind-link ibm-back-to-top\"><a href=\"#top\" class=\"ibm-anchor-up-link\">Back to top</a></p><br />");
	} else {
		JQ(".ibm-column:has(a[href='#Storage'])").hide();
		}

	if (auData != ""){
		JQ(containerBody).append(auTable);
		JQ('#Automation tbody').append(auData);
		JQ(".ibm-column:has(a[href='#Automation'])").show();
		JQ('#Automation')
			.tablesorter({cssAsc:"ibm-sort-down", cssDesc:"ibm-sort-up", cssHeader:"ibm-sort", sortList: [[1,1]]})
			.after("<p class=\"ibm-ind-link ibm-back-to-top\"><a href=\"#top\" class=\"ibm-anchor-up-link\">Back to top</a></p><br />");
	} else {
		JQ(".ibm-column:has(a[href='#Automation'])").hide();
	}

	if (seData != ""){
		JQ(containerBody).append(seTable);
		JQ('#Security tbody').append(seData);
		JQ(".ibm-column:has(a[href='#Security'])").show();
		JQ('#Security')
			.tablesorter({cssAsc:"ibm-sort-down", cssDesc:"ibm-sort-up", cssHeader:"ibm-sort", sortList: [[1,1]]})
			.after("<p class=\"ibm-ind-link ibm-back-to-top\"><a href=\"#top\" class=\"ibm-anchor-up-link\">Back to top</a></p><br />");
	} else {
		JQ(".ibm-column:has(a[href='#Security'])").hide();
	}
}