﻿var XM = {};
jQuery(function(){
var ChlDsc_8 = (document.documentElement.lang.indexOf('en')>=0) ? "All your listening essentials.<br />Unlimited access to 15 channels in 9 genres." : "Un bon éventail de programmation.<br />Accès illimité à 15 stations de 9 styles différents.";
var ChlDsc_15 = (document.documentElement.lang.indexOf('en')>=0) ? "Extraordinary range of music and entertainment choices.<br />Unlimited access to 50 channels in 12 genres." : "Une gamme complète de programmation musicale et de divertissement.<br />Accès illimité à 50 stations de 12 styles différents.";
XM.tabON = "Radio 15";
var genreON = 0;
var strTab = 0;
var AnchorON = 0;
// if (location.search){
//   strTab = location.search.substring(1,location.search.length);
//   strTab = strTab.split('=')[1];
//   arrayOfstrTab = strTab.split(',')  
//   if(arrayOfstrTab[0] == '1')
//     XM.tabON = "Radio 8";
//   else
//     XM.tabON = "Radio 15";    
//   if(arrayOfstrTab[1] == '0')
//     genreON = 0;
//   else{    
//     genreON = parseInt(arrayOfstrTab[1]);
//     if(isNaN(genreON))
//       self.location = "/";
//   }
//   if(location.toString().indexOf('#') != -1){
//     strAnchor = location.toString().split('#')[1];
//     AnchorON = 1;
//   }
// }
var myUrl = (document.documentElement.lang.indexOf('en')>=0) ? '/en/common/xml/XMRadio.xml' : '/en/common/xml/XMRadio_fr.xml';
var json;
jQuery.ajax({
  type: "GET",
  url: myUrl,
  dataType: "xml",
  complete: function(data){
    json = jQuery.xmlToJSON(data.responseXML);
    XM.makeGenreList();
    XM.seeAll_Chnl();
  }
});
XM.makeGenreList = function(){
	var tmpGenreList = (document.documentElement.lang.indexOf('en')>=0) ? '<li><a id="GL0" href="javascript:XM.seeAll();">see all</a></li>' : '<li><a id="GL0" href="javascript:XM.seeAll();">Tout afficher</a></li>';
	for(var i=0; i<json.genre.length; i++){
		tmpGenreList += '<li><a id="GL'+json.genre[i].id+'" href="javascript:XM.seeChnl('+json.genre[i].id+');">'+json.genre[i].name+'</a></li>';
	}
	jQuery('#GenreList').html(tmpGenreList);
	XM.callChannelDescription();
}
XM.callChannelDescription = function(){
	if(XM.tabON == "Radio 8"){
		jQuery('#ChannelDescription').html(ChlDsc_8);
		XM.changeTabs('8');
	}
	else
		jQuery('#ChannelDescription').html(ChlDsc_15);
}
XM.seeAll_Chnl = function(){
	if(genreON == 0)
		XM.seeAll();
	else{
		var flagGenre = 0;
		for(var i=0; i<json.genre.length; i++){
			if(json.genre[i].id == genreON){
				flagGenre = 1;
			}
		}
		if(flagGenre != 1)
			self.location = "/";
		else
			XM.seeChnl(genreON);
	}
}
XM.seeAll = function(){
	if(genreON != 0){ jQuery('#GL'+genreON).removeClass("libold"); }
	genreON = 0;
	jQuery('#GL'+genreON).addClass("libold");
	var tmpChannelList = '<table width="426" border="0" cellpadding="0" cellspacing="0" id="innertable1"><tr>';
	var k = 0;
	for(var i=0; i<json.genre.length; i++){
		var flagGenre = 0;
		for(var y=0; y<json.genre[i].channel.length; y++){
			if(json.genre[i].channel[y].apply.indexOf(XM.tabON)>-1){
				flagGenre = 1;
			}
		}
		if(flagGenre == 1){
			if(k % 2 == 0){ tmpChannelList += '<td width="218">'; }
			else{ tmpChannelList += '<td width="208">'; }
			tmpChannelList += json.genre[i].name+'<br />';
			for(var y=0; y<json.genre[i].channel.length; y++){
				if(json.genre[i].channel[y].apply.indexOf(XM.tabON)>-1){
					tmpChannelList += '<a href="javascript:XM.seeChnl('+json.genre[i].id+');"><img border="0" src="/en/common/images/services/radio_channels/'+json.genre[i].channel[y].src+'" alt="'+json.genre[i].channel[y].name+'" /></a>';
				}
			}
			tmpChannelList += '</td>';
			if(i<json.genre.length-1 && k % 2 != 0){ tmpChannelList += '</tr><tr>'; }
			k++;
		}		
	}
	tmpChannelList += '</tr></table>';
	jQuery('#ChannelList').html(tmpChannelList);
}
XM.seeChnl = function(genreID){
	if(genreON != genreID){ jQuery('#GL'+genreON).removeClass("libold"); }
	genreON = genreID;
	jQuery('#GL'+genreON).addClass("libold");
	var i = json.genre.indexOf("id", genreID); 
	var tmpChannelList = '<table width="426" border="0" cellpadding="0" cellspacing="0" id="innertable2">';
	var youllHear = (document.documentElement.lang.indexOf('en')>=0) ? 'You\'ll hear...<br />' : 'Ce que vous y entendrez<br />';
	var l = 0;
	for(var y=0; y<json.genre[i].channel.length; y++){
		if(json.genre[i].channel[y].apply.indexOf(XM.tabON)>-1){
			tmpChannelList += '<tr><td width="104"><a name="'+json.genre[i].channel[y].name+'"></a><img src="/en/common/images/services/radio_channels/'+json.genre[i].channel[y].src+'" alt="'+json.genre[i].channel[y].name+'" /></td>'+
			'<td>'+json.genre[i].channel[y].subtitle[0].Text+'<br />'+json.genre[i].channel[y].description[0].Text+'</td>'+
			'<td>'+youllHear+json.genre[i].channel[y].hear[0].Text+'</td></tr>';
		}
		else
			l++;					
	}
	if(l == y)
		tmpChannelList += '<tr><td style="font-size:12px;color:#666666;">Available only with Radio 15</td></tr>';
	tmpChannelList += '</table>';
	jQuery('#ChannelList').html(tmpChannelList);
	if(AnchorON == 1){
		re = /%20/gi;
		strAnchor = strAnchor.replace(re, ' ');
		self.location = '#' + strAnchor;
		AnchorON = 0;
	}
}
XM.switchTabs = function(tabID,tabRight){
	XM.changeTabs(tabRight);
	XM.tabON = tabID;
	XM.callChannelDescription();
	if(genreON != 0)
		XM.seeChnl(genreON);
	else
		XM.seeAll();
}
XM.changeTabs = function(elTab){
	var allIMGs = document.getElementsByTagName('IMG');
	for (var i=0; i<allIMGs.length; i++) {
		if (allIMGs[i].id.indexOf('Radio') > -1){
			if(allIMGs[i].id == 'Radio' + elTab){
				allIMGs[i].src = allIMGs[i].src.replace('_01.','_02.');
			}
			else
				allIMGs[i].src = allIMGs[i].src.replace('_02.','_01.');
		}
	}
}
});