var gSelectedCategory = 0;
var gCurrentCategory = 0;
var gCategoryCursor = 0;
var gHotCursor = 0;

var gSelectedChannel = 0;
var gCurrentChannel = 0;
var gChannelCursor = 0; 

var gPrevChannelCursor = 0;
var gPrevGuideCursor = 0;
var gPrevCategoryCursor = 0;

var gSelectedGuide = 0;
var gCurrentGuide = 0;
var gGuideCursor = 0; 
// 
var gTotalCat = 0;
var gTotalCh = 0;
var gTotalGuide = 0;
var goSearchClicks = 0;
var extraPanelIndex = 0;
var changePdCursor = 0;

var selChannelIdCache = new Array();
var selChannelOrderCache = new Array();
var selChannelNameCache = new Array();
var selFavoriteCache = new Array();
var selLockedCache = new Array();
var selUseGraphicCache = new Array();

var selGuidePageSet = new Array();

var favoriteCount = 0;

var updateChannelPanelTimer = null;
var miniGuidePanel = false;
var gTopCategory = 0;
var gBottomCategory = 0;
var gTopChannel = 0;
var gBottomChannel = 0;
var moveCursor = 0;
var selCurCategory = 0;
var hotIconClicks = 0;
var countCatClicks = 0;
var statusKey = false;
var getChannelClicks = 0;
var selectedChannel;
var selChOrder;
var headerSelectedCh;
var headerSelectedCh;
var wlarrowImg;
var wrarrowImg;
var wlSelImg;
var wrSelImg;
var uniqCatNameCache = new Array();
var statusInfo = 2;
var channelCurrentIndex = 0;
var channelCurrentCursor = 0;
var totalCurChannels = 0;
var curChannelClick = 0;
var curTagClick = 0;
var tagCurrentIndex = 0;
var gTotalCat = 0;
var tagCurrentCursor = 0;

var currImage = 0;
var moveCursor = 0;
var unlockMode = false;
var unlockAttempts = 3;
var bItsAllDark = false;
var updateMBTimer = null;
var bExtInfoMode = false;
var updateLayerInfoTimer = null;
var selectedCategory =null;
var oSwitchTimer = null;
var oTriggerSwitchTimer = null;
var selChGraphics = 0;

function launchGuide() {
	guidePage = 3;
	showFgCatPanel();
	showFgWidgetPanel();
	expandChannelPanel();
	//document.getElementById("flashMovie").innerHTML = '<object width="240px" height="320px"><param name="movie" value="http://www.youtube.com/v/lEyrivrjAuU&rel=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/lEyrivrjAuU&rel=1" type="application/x-shockwave-flash" wmode="transparent" autoplay="true" width="240px" height="320px"></embed></object>';
}
//function to switch between  screens


function loadPage(page){
	
}

function getSearchPanel() {
	document.getElementById("searchLayer").innerHTML = document.getElementById('layer4').innerHTML;
	document.getElementById("sContent").innerHTML = "SEARCH";
	document.getElementById('searchLayer').visibility = "visible";
}

function showFgCatPanel() {
	document.getElementById("categoryGuidePanel").innerHTML = '<table class="fullGuideImages" onclick="openPanel(2);" ><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr></table>';
}

function showFgChannelPanel() {
	document.getElementById("channelGuidePanel").innerHTML = '<table class="fullGuideChPanel" height="100%"  width="100%" onclick="openPanel(3);" ><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr></table>';
}

function showFgWidgetPanel() { 
	document.getElementById("extrasPanel").innerHTML = '<table class="fullGuideWidgetPanel" height="100%"  width="100%" onclick="openPanel(1);" ><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr></table>';
}

function separateContent(content) {
	var sepContent = "";
	for(var i = 0; i < content.length; i++) {
		sepContent += '<tr><td>' + content.charAt(i) + '</td></tr>'; 
	}
	return sepContent;
}

function openPanel(index) {
	switch(index){
		case 1:
			selWidgetPanel();
			break;	
		 case 2:
			selTagPanel();
			break;
		 case 3:
			selLiveTv();
		   break; 		
	}
}

function selWidgetPanel() {
	guidePage = 1;
	expandExtrasPanel();
}
function selTagPanel() {
	guidePage = 2;
	loadTagCache();
//	expandCategoryPanel();
}

function selLiveTv() {
	guidePage = 3;
	expandChannelPanel();
}


function expandExtrasPanel() {
	document.getElementById("extrasPanel").innerHTML = '';
	document.getElementById("extrasPanel").style.width = "60%";	
	document.getElementById("extrasPanel").style.background = "url('/view/mobi/images/back.png')"; 
	
	document.getElementById("extrasPanel").style.backgroundRepeat = "no-repeat";// for the expandable background	
	document.getElementById("channelGuidePanel").innerHTML = '';
	document.getElementById("channelGuidePanel").style.width = "20%";
	document.getElementById("categoryGuidePanel").innerHTML = '';	
	document.getElementById("categoryGuidePanel").style.width = "20%";	
	loadWidgetsCache(0);
	showFgCatPanel();
	showFgChannelPanel();
}
var noWidget =0;
function updateWidgetsPanel(result) {
	var data = result.split('-?#-');	
	wrecords = YAHOO.lang.JSON.parse(data[0]);
	countImage = wrecords.wRecords.length-1;	
	var widgetHTML = "";	
	var imageGetter = "";	
	var useGraphic = wrecords.wRecords[currImage].useGraphic;
	useGraphic = useGraphic.substring(0, (useGraphic.length-1));
//	alert((wrecords.wRecords[currImage].id).length);
	if((wrecords.wRecords[currImage].id).length == 0) {
							noWidget =1;
			imageGetter = '<td width="25%" height="50%"><img alt="" id="wlarrow" src=' + wlarrowImg.src + ' /></td>' +
					 	  '<td width="50%" height="50%" id="widgetIcon" style="background:#fcf3b8;text-align:center;">' +
					  	  '<img alt="not available" id="widgetIcon1" style="height:90px;width:90px;" src="/view/mobi/images/widgetLogo.png" /></td>' +
					  	  '<td width="25%" height="50%"><img alt="" id="wrarrow" src=' + wrarrowImg.src + ' /></td>';
	} else { 		
		imageGetter = '<td width="25%" height="50%" onmouseout="restoreView(1);" onmouseover="changeView(1);" onclick=\'scrollWidgets(1);\' width="15%" style="cursor:pointer;">'
				  	    	+'<img alt="" id="wlarrow" src=' + wlarrowImg.src + ' /></td>' 
				      	+'<td width="50%" height="50%" id="widgetIcon" onmouseout="restoreView(2);" onmouseover="changeView(2);" onclick="scrollWidgets(2);" style="background:#fcf3b8;text-align:center;cursor:pointer;width:90px;height:90px;" >' 
				    	  +'<img class="imagePanel" style="width:90px;height:90px;" alt="'+ wrecords.wRecords[currImage].title + '" id="widgetIcon1" src=' + (useGraphic == 1 ? "/ImageHandler?value="+ wrecords.wRecords[currImage].id + "&icon=1&imageType=2" : "/view/mobi/images/widgetNA.png") + ' /></td>' 
						+'<td width="25%" height="50%" onmouseout="restoreView(3);" onmouseover="changeView(3);" onclick=\'scrollWidgets(3);\' style="cursor:pointer;">'
							+ '<img alt="" id="wrarrow"  src=' + wrarrowImg.src + ' />' 
						+ '</td>';			
	}
		
	widgetHTML = '<tr >' + imageGetter + '</tr>';
			
	var description = wrecords.wRecords[currImage].description;
	document.getElementById("extrasPanel").innerHTML = 		'<table  valign="top" align="center" valign="middle" width="100%;" height="90%">'
															+ ' <tr ><td width="100%" height="25%"id="widgetTitle" colspan="3" style="font-size:18px;margin-bottom:5px;"> '+wrecords.wRecords[currImage].title+'</td></tr>'
															+ widgetHTML															
															+ '<tr><td width="100%" height="25%" colspan="3" >&nbsp;</td></tr></table>';
														
															
	showLWPanel ();														
}

wlarrowImg = new Image(54, 55);
wlarrowImg.src = "./view/mobi/images/wlarrow.png";

wrarrowImg = new Image(54, 55);
wrarrowImg.src = "./view/mobi/images/wrarrow.png";

wlSelImg = new Image(54, 55);
wlSelImg.src = "./view/mobi/images/wlarrowSel.png";

wrSelImg = new Image(54, 55);
wrSelImg.src = "./view/mobi/images/wrarrowSel.png";

function changeView(index) {
	guidePage = 1;	
	if(document.getElementById("widgetIcon") != null) {
		document.getElementById("widgetIcon").style.background = "none";
	}
	if(index == 1) {
		moveCursor = 1;
		document.getElementById("wrarrow").src= wrarrowImg.src;
		document.getElementById("wlarrow").src= wlSelImg.src;
	}
	if(index == 2) {
		moveCursor = 2;
		document.getElementById("widgetIcon").style.background = "#fcf3b8";
		document.getElementById("wrarrow").src= wrarrowImg.src;
		document.getElementById("wlarrow").src= wlarrowImg.src;
	}
	if(index == 3) {
		moveCursor = 3;
		document.getElementById("wlarrow").src= wlarrowImg.src;
		document.getElementById("wrarrow").src= wrSelImg.src;
	}
}	

function restoreView(index) {	
	return;
	if(index == 1 ) {
		document.getElementById("wlarrow").src= wlarrowImg.src;
	}if(index == 2) {		
		document.getElementById("widgetIcon").style.background = "#000000";		
	} 
	if(index == 3){
		document.getElementById("wrarrow").src= wrarrowImg.src;
	}
}

function expandCategoryPanel() {	
	document.getElementById("extrasPanel").innerHTML = '';
	document.getElementById("extrasPanel").style.width = "20%";
	document.getElementById("channelGuidePanel").innerHTML = '';
	document.getElementById("channelGuidePanel").style.width = "20%";
	document.getElementById("categoryGuidePanel").innerHTML = '';
	document.getElementById("categoryGuidePanel").style.width = "60%";	
	document.getElementById("categoryGuidePanel").style.background = "url('/view/mobi/images/back.png')";
	document.getElementById("categoryGuidePanel").style.backgroundRepeat = "no-repeat"; // for the expandable background
	showFgWidgetPanel(); 	
	showFgChannelPanel();		
 	updateCategoryPanel();		
}	

function updateCategoryPanel() {
	
	gTotalCat = uniqCatNameCache.length - 1;
	
	var catNameHTML = '';
	var countCategory = 0;	
	var i;	
	for(i=0; (uniqCatNameCache.length > 5 && i < 5) || (uniqCatNameCache.length <= 5 && i < uniqCatNameCache.length); ++i) { 
		catNameHTML += '<tr><td id="selCategoryOrder'+ i + '" onmouseover="highLightTag('+ i +');" onclick="getCatChannels('+ i  +');" style="width:100%;height:20px;text-align:left;white-space:nowrap;vertical-align:middle;cursor:pointer;"  >' 
						+ '&nbsp;&nbsp;&nbsp;&nbsp;' + (uniqCatNameCache[i].length > 16 ? uniqCatNameCache[i] : uniqCatNameCache[i])	
						+ '</td></tr>';
		countCategory++;
	}

	for(var i=0; i < (5 - countCategory) ; ++i) { 
		if(countCategory == 0) {
			break;
		}
		catNameHTML += '<tr>'
					+ '<td style="width:100%;height:10%;text-align:left;white-space:nowrap;text-align:center;vertical-align:middle;">'
						+ '&nbsp;&nbsp;'					
					+ '</td>'												
					+ '</tr>';
	}	
	
	document.getElementById("categoryGuidePanel").innerHTML = '<table valign="top" width="100%" height="100%">' +
															'<tr>' +
															'<td width="95%" height="90%">' +
																'<table valign="top" height="100%" width="100%">' +
																	(countCategory != 0 ? catNameHTML : '<tr><td height="28" width="100%" align="center" valign="top"><span style="width:100%;text-align:center;vertical-align:middle;background-repeat:no-repeat;">no tag available</span></td></tr>')
																+ '</table>' +
															'</td>' +
															'<td width="5%" height="90%">' +
																'<table valign="top" height="100%" width="100%"><tr><td height="20%" style="cursor:pointer;vertical-align:middle;" ><img src="./view/mobi/images/uarrow.png" onclick="moveChannels(1);" /></td></tr><tr><td height="60%">&nbsp;</td></tr><tr><td height="20%" style="cursor:pointer;vertical-align:top;" ><img src="./view/mobi/images/darrow.png"  onclick="moveChannels(2);"/></td></tr></table>'
															+ '</td>'+
															'</tr></table>';
	

	selCurTag(0);				
		
}	

function updateChannelPanel() {
	statusKey = false;
	resetChannelPanel();
//	document.getElementById('test').style.
	var countChannel = 0;
	var chNameHTML = '';
	totalCurChannels = selChannelNameCache.length - 1;
//	alert(selChannelNameCache.length);
	for(var i=0; (selChannelNameCache.length >= 5 && i < 5) || (selChannelNameCache.length < 5 && i < selChannelNameCache.length); ++i) {
//	for(var i=0; i<selChannelNameCache.length ; ++i) { 
			chNameHTML += '<tr>'
					+ '<td valign="top" width="100%" id="selectedChannel'+i+'" onmouseover="highLightChannels('+ i +');"  onclick="openSelChannels('+ i +');" style="width:100%;height:32px;text-align:left;white-space:nowrap;vertical-align:middle;cursor:pointer;'+(statusInfo == 1? 'cursor:pointer;': '') + '">'
					+ '<table valign="top" width="100%" align="center"><tr>'
					+ '<td valign="top" id="selChannelsOrder'+i+ '" style="text-align:left;width:30%;">&nbsp;&nbsp;'
						+ selChannelOrderCache[i] 
					+ '</td>'
					+ '<td valign="top" id="selChannelNames'+i+ '" style="text-align:left;width:70%;">'
						+ (selChannelNameCache[i].length > 28 ? selChannelNameCache[i] : selChannelNameCache[i])
					+ '</td>'
					+ '</tr>'
					+ '</table>'						
					+ '</td>'												
					+ '</tr>';
					countChannel++;
	}
//	alert(countChannel);
	for(var i=0; i < (5 - countChannel) ; ++i) { 
		if(countChannel == 0) {
			break;
		}
		chNameHTML += '<tr>'
					+ '<td valign="top" width="100%"  style="width:100%;text-align:left;white-space:nowrap;vertical-align:middle;">'
					+ '<table valign="top" width="100%" align="center"><tr>'
						+ '<td valign="top" style="text-align:left;width:40%;">&nbsp;&nbsp;'
						+ '</td>'
						+ '<td valign="top" style="text-align:left;width:60%;">'						
						+ '</td>'
						+ '</tr></table>'						
						+ '</td>'												
						+ '</tr>';
					
	}
	document.getElementById("channelGuidePanel").innerHTML = '<table valign="top" width="100%" height="100%">' +
																'<tr>' +
																	'<td width="95%" height="90%">' +
																		'<table valign="top" height="100%" width="100%">' +
																			(selChannelNameCache.length  > 0 ? chNameHTML : '<tr><td height="28%" width="100%" align="center" valign="top"><span style="width:100%;text-align:center;vertical-align:middle;background-repeat:no-repeat;">no channels available</span></td></tr>')
																		+ '</table>' +
																	'</td>' +
																	'<td width="5%" height="90%">' +
																		'<table valign="top" height="100%" width="100%"><tr><td height="20%" style="cursor:pointer;vertical-align:middle;" ><img src="./view/mobi/images/uarrow.png" onclick="moveChannels(1);" /></td></tr><tr><td height="60%">&nbsp;</td></tr><tr><td height="20%" style="cursor:pointer;vertical-align:top;" ><img src="./view/mobi/images/darrow.png"  onclick="moveChannels(2);"/></td></tr></table>'
																  + '</td>'+
																'</tr>' +
															 '</table>';


	if(selChannelNameCache.length > 0) {
	   	 selCurChannel(0);
	}
}

function selCurTag(index) {

	try {	
		tagCurrentCursor = index;		
		var tagId = "selCategoryOrder" + index;
		document.getElementById(tagId).style.backgroundImage = "url('/view/mobi/images/rowProgram1.png')";
		document.getElementById(tagId).style.backgroundRepeat = "no-repeat";
	} catch (x) {
		
	}
}
	
function unSelCurTag(index) {
	try {
		var tagId = "selCategoryOrder" + index;
		document.getElementById(tagId).style.background = "none";
	} catch (x) {
		
	}
}

function highLightChannels(index) {
	unSelCurChannel(channelCurrentCursor);
 	channelCurrentCursor = index;
 	channelCurrentIndex = index + curChannelClick;
 	selCurChannel(channelCurrentCursor);
}

function highLightTag(index) {

	unSelCurTag(tagCurrentCursor);
	tagCurrentCursor = index;
 	tagCurrentIndex = index +curTagClick;	
 	selCurTag(tagCurrentCursor);
}

function showLWPanel () {
	return;
	document.getElementById("widgetLeftPanel").className = "widgetLeftSelPanel";
}
function expandChannelPanel() {
	
	document.getElementById("extrasPanel").innerHTML = '';
	document.getElementById("extrasPanel").style.width = "20%";
	document.getElementById("categoryGuidePanel").innerHTML = '';
	document.getElementById("categoryGuidePanel").style.width = "20%";	
	document.getElementById("channelGuidePanel").innerHTML = '';
	document.getElementById("channelGuidePanel").style.width = "60%";	
	document.getElementById("channelGuidePanel").style.backgroundImage = "url('/view/mobi/images/back.png')";
	document.getElementById("channelGuidePanel").style.backgroundRepeat = "no-repeat";
	document.getElementById("channelGuidePanel").innerHTML = "no channels available";
	showFgCatPanel();
	showFgWidgetPanel();
	buildChannelCache();
}	


function moveChannels(index) {
		if(index == 1) {
			keyActionHandler(rcUP);
		} else {
			keyActionHandler(rcDOWN);
		}
}
var currentCh ;
var currentChOrder;
function selCurChannel(index) {
	try {
			
			
		channelCurrentCursor = index;
		var channelId = "selectedChannel" + index;
		document.getElementById(channelId).style.backgroundImage = "url('/view/mobi/images/rowProgram1.png')";
		document.getElementById(channelId).style.backgroundRepeat = "no-repeat";
	} catch (x) {
		
	}
}
	
function unSelCurChannel(index) {
	try {
		var channelId = "selectedChannel" + index;
		document.getElementById(channelId).style.background = "none";
	} catch (x) {
		
	}
}	


	
function scrollChannels(start, end) {
	////////////////////////////////////////////
	// CHANNNELS 
	////////////////////////////////////////////	
	var scrollCount = 0;
	for(var i = start; i <= end; ++i) { 
		var selChannelsOrder = "selChannelsOrder" + scrollCount;
		var selChannelNames = "selChannelNames" + scrollCount;
	
		try {
			document.getElementById(selChannelsOrder).innerHTML = selChannelOrderCache[i];
		} catch(x) {
			
		} try {
			document.getElementById(selChannelNames).innerHTML =  (selChannelNameCache[i].length > 28 ? selChannelNameCache[i] : selChannelNameCache[i]);
		} catch (x) {
			
		}
		scrollCount ++;
	}
//	selCurChannel(channelCurrentCursor);
}	

	
function scrollTag(start, end) {
	////////////////////////////////////////////
	// CHANNNELS 
	////////////////////////////////////////////	
	var scrollCount = 0;
	for(var i = start; i <= end; ++i) { 		
		var selTagNames = "selCategoryOrder" + scrollCount;
		 try {
			document.getElementById(selTagNames).innerHTML =  '&nbsp;&nbsp;&nbsp;&nbsp;'+ (uniqCatNameCache[i].length > 16 ? uniqCatNameCache[i] : uniqCatNameCache[i]);
		} catch (x) {
			
		}
		scrollCount ++;
	}
//	selCurChannel(channelCurrentCursor);
}
	


function scrollWidgets(index) {
	if(index == 1) { // left arrow
	   
		moveCursor = 1;
		keyActionHandler(rcOK);
	}
	if(index == 2) { // mid pic
		moveCursor = 2;
		keyActionHandler(rcOK);
	}
	if(index == 3) { // right arrow
		moveCursor = 3;
		keyActionHandler(rcOK);
	}
}

function callLinkCh() {
	window.location= "http://192.168.1.176:1935/live/mpegts.stream/playlist.m3u8";
} 
function openSelChannels(index) {
	if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) {
		getChannelInfo(index);
	} else {
		miniGuidePanel =true;
		guidePage = 3;
		menuActive = false;			
		getChannelInfo(index);	
	}
}

function launchViewer() {
	
	updateLayerInfo();
	//redrawLayers();
}

function redrawLayers() {
	if(updateLayerInfoTimer) {
		top.window.clearTimeout(updateLayerInfoTimer);
		updateLayerInfoTimer = null;			
	} 	
	updateLayerInfoTimer = top.window.setTimeout('updateLayerInfo();', 10);
}

function updateLayerInfo() {	
	updateLayer2(); 
	fadeAll() ;
	document.getElementById("layer3").style.visibility = "visible";		
	startStream();	
	doFade();
	//document.getElementById("miniGuideImage").style.visibility = "visible";		
//	unlockMode = false;
//	unlockAttempts = 3;
	// alert(nCurrentChannel + ", " + nSelectedChannel);
//	if(bExtInfoMode) {
//		if(lockedCache[nCurrentChannel] == 0) { // if unlocked, then only show this
//			updateLayer4();			
//			showExtPanel();
//		} else {
//			if(nCurrentChannel != nSelectedChannel) {
//				showMiniPanel();
//				updateLayer3();
//			} else 
//				unlockChannel();		
//		}
//	} else {
//		if(lockedCache[nCurrentChannel] == 0) { // if unlocked, then only show this
//			updateLayer3();			
//			showMiniPanel();
//		} else {
//			if(nCurrentChannel != nSelectedChannel) {
//				showMiniPanel();
//				updateLayer3();
//			} else 
//				unlockChannel();			
//		}
//	}
}
function updateLayer2() {
		
	if(useGraphicCache[channelCurrentCursor] == 1) {	
		document.getElementById("selChImg").innerHTML = '<img  class="chLogoPanel" alt="'+ channelNameCache[channelCurrentCursor]+'" width="30px" height="20px" src="/ImageHandlerMobi?value=' + selChId + '&icon=-1&imageType=0" border="0" align="middle">';
	} else {
		document.getElementById("selChImg").innerHTML = '<img class="chLogoPanel" alt="" width="30px" height="20px" src="/view/tv/images/logo_none.png" border="0" align="middle">';
	}
	try {
		document.getElementById("miniCategoryPanel").innerHTML = selectedCategory;
	} catch(x) {
		alert(x);
	}
	document.getElementById("channelInfoPanel").innerHTML = headerSelectedChId + "&nbsp;&nbsp;&nbsp;" + headerSelectedCh;
	document.getElementById("curChOrderPanel").innerHTML = selChOrder + "&nbsp;&nbsp;&nbsp;" + selectedChannel;
	
	updateMiniBarTime();
	
}

function updateMiniBarTime() {
	var date = new Date();
	var hours = date.getHours();
	var hr = (hours > 12) ? hours - 12 : hours;	
	var mins = date.getMinutes();
	if(updateMBTimer != null ) {
		window.clearTimeout(updateMBTimer);
		updateMBTimer = null;
	}
	document.getElementById("findChOrder").innerHTML = ((hr < 10 ? ('0'+hr) : hr) + ":" + (mins < 10 ? ('0' + mins) : mins ) + (hours < 12 ? " AM" : " PM"));
	updateMBTimer = window.setTimeout("updateMiniBarTime();", 30*1000); 
}

function unlockChannel() {
	//alert(nCurrentChannel + ", " + nSelectedChannel);
	if(nCurrentChannel == nSelectedChannel)
		stopStream();
		
	fadeAll();
	resetAlpha();
	fadeStop();	
	unlockMode = true;
	showOnNowPanel();
	showStatusPanel();
	
	/*
	if(curChName.length > 27)
		curChName = curChName.substring(0, 25) + '...';		
		
	*/
//	document.getElementById("statusMessagePanel").innerHTML = 'password to unlock ' + getChannelName() + '<br/><b><span id=pwdText>&nbsp;</span></b>';
	document.getElementById("waitPanel").style.backgroundImage = 'none';
	document.getElementById("statusMessagePanel").innerHTML = records.key410 + ' ' + getChannelName() + '<br/><b><span id=pwdText>&nbsp;</span></b>';
	if(document.getElementById("keyDigitPanel") != null)
		document.getElementById("keyDigitPanel").style.visibility = "visible";
	 
//	doc
	channelChanged = false;
}

function switchChannel() {
	startStream();	
	window.clearTimeout(oSwitchTimer);
	oSwitchTimer = null;
	window.clearTimeout(oTriggerSwitchTimer);
	oTriggerSwitchTimer = null;
	bKeyChannel = false;	
	top.setCookie('lastChannel', getSelectedChannelId());
}

function startStream() {

	playLiveStream();
	return;
//	var url = ""; 
//    feedType = "igmp";
//    playStream('src=igmp://' + streamAddressCache[channelCurrentCursor]);
}

function scrollMiniGuide(index) {	
	if(index ==1) {
		keyActionHandler(rcUP);
	} else {
		keyActionHandler(rcDOWN);
	}
}

var miniIndex =0;
function updateLayer3(index) {	
	fadeStop();
	for(var i=0; i < channelNameCache.length ;i++){
		if(channelNameCache[i] == selectedChannel ){
			 miniIndex =i;
		}
	}try{
			if(index ==1){
				++miniIndex;
				miniIndex = (miniIndex >= channelNameCache.length ? 0 : miniIndex);				
				selChId = selChannelIdCache[miniIndex];
				selChGraphics = selUseGraphicCache[miniIndex];
				headerSelectedCh = channelNameCache[miniIndex];
				headerSelectedChId = channelOrderCache[miniIndex];
				selectedChannel =channelNameCache[miniIndex];
				selChOrder =channelOrderCache[miniIndex];
				document.getElementById("curChOrderPanel").innerHTML = selChOrder + "&nbsp;&nbsp;&nbsp;" + selectedChannel;
			}
			if(index ==2){
				--miniIndex;
				miniIndex = (miniIndex < 0 ? channelNameCache.length-1 : miniIndex);
				selChId = selChannelIdCache[miniIndex];
				selChGraphics = selUseGraphicCache[miniIndex];
				headerSelectedCh = channelNameCache[miniIndex];
				headerSelectedChId = channelOrderCache[miniIndex];
				selectedChannel =channelNameCache[miniIndex];
				selChOrder =channelOrderCache[miniIndex];
				document.getElementById("curChOrderPanel").innerHTML = selChOrder + "&nbsp;&nbsp;&nbsp;" + selectedChannel;
			}
//			alert(y);
	}catch(x){alert(x);
		
	}
	doFade();
}

function miniChSelector(){
	if(currentCh == headerSelectedCh){
		headerSelectedCh = currentCh;
		headerSelectedChId = currentChOrder;
		
		if(useGraphicCache[miniIndex] == 1) {	
			document.getElementById("selChImg").innerHTML = '<img  class="chLogoPanel" alt="" width="30px" height="20px" src="/ImageHandlerMobi?value=' + selChId + '&icon=-1&imageType=0" border="0" align="middle">';
		} else {
			document.getElementById("selChImg").innerHTML = '<img class="chLogoPanel" alt="" width="30px" height="20px" src="/view/tv/images/logo_none.png" border="0" align="middle">';
		}
		try {
			document.getElementById("miniCategoryPanel").innerHTML = selectedCategory;
		} catch(x) {
			alert(x);
		}
		document.getElementById("channelInfoPanel").innerHTML = headerSelectedChId + "&nbsp;&nbsp;&nbsp;" + headerSelectedCh;		
		
		return;		
	}else{
		if(useGraphicCache[miniIndex] == 1) {	
			document.getElementById("selChImg").innerHTML = '<img  class="chLogoPanel" alt="" width="30px" height="20px" src="/ImageHandlerMobi?value=' + selChId + '&icon=-1&imageType=0" border="0" align="middle">';
		} else {
			document.getElementById("selChImg").innerHTML = '<img class="chLogoPanel" alt="" width="30px" height="20px" src="/view/tv/images/logo_none.png" border="0" align="middle">';
		}
		try {
			document.getElementById("miniCategoryPanel").innerHTML = selectedCategory;
		} catch(x) {
			alert(x);
		}
		document.getElementById("channelInfoPanel").innerHTML = headerSelectedChId + "&nbsp;&nbsp;&nbsp;" + headerSelectedCh;
		document.getElementById("curChOrderPanel").innerHTML = selChOrder + "&nbsp;&nbsp;&nbsp;" + selectedChannel;
	}	
		updateMiniBarTime();	
		//fadeAll() ;
		startStream();	
		doFade();	
	
	
}
		  
function onMiniguide(actionIndex, panelIndex) {
	if(actionIndex == 1) {
		document.getElementById("mgkey" + panelIndex).style.background = "#000000";
	} else {
		document.getElementById("mgkey" + panelIndex).style.background = "none";
	}
}		  
	
function getSelectedChannelId() {
	return channelIdCache[nSelectedChannel]; 
}

function getSelectedChannelName() {
	return channelNameCache[nSelectedChannel]; 
}
function getCategory() {
	
	var name = selectedCategory;
	
	return name;
}
function getCategoryOrder() {
	return categoryOrderCache[nCurrentChannel];
}
function getChannelId() {
	return channelIdCache[nCurrentChannel]; 
}

function getChannelOrder() {
	return channelOrderCache[nCurrentChannel];
}

function getSelectedChannelOrder() {
	return channelOrderCache[nSelectedChannel];
}
function getChannelName() {
	var name = channelNameCache[nCurrentChannel];
	
	return name; 
}

function getChannelNameFor(channelIndex) {
	var name = channelNameCache[channelIndex];

	return name; 
}

function setCookie(cookieName, cookieValue) {
	//alert('setCookie called');
	var today = new Date();
	var expire = new Date();
	expire.setTime(today.getTime() + 10*365*86400); // 10 years
	top.document.cookie = cookieName + "=" + escape(cookieValue) + "; expires=" + expire.toGMTString();
}

function getCookie(cookieName) {
	//alert('getCookie called');
	var search = cookieName + "=";
	
	if (document.cookie.length > 0) { // if there are any cookies
		
		var offset = document.cookie.indexOf(search); 
		
		if (offset != -1) { // if cookie exists 
			offset += search.length;

			// set index of beginning of value
			end = document.cookie.indexOf(";", offset);

			// set index of end of cookie value
			if (end == -1) 
				end = document.cookie.length;

			return unescape(document.cookie.substring(offset, end));
		} 
	}
}
function buildChannelCache() {		
	selChannelIdCache = new Array();
	selChannelOrderCache = new Array();
	selChannelNameCache = new Array();
	selFavoriteCache = new Array();
	selLockedCache = new Array();
	selUseGraphicCache  = new Array();
	gSelectedCategory = 1;

	if(gSelectedCategory == 0) { // favorite channels
		var i;
		var cnt=0;
		for(i=0; i<favoriteCache.length; ++i) {
			if(favoriteCache[i] == 1) {
				selChannelIdCache[cnt] = channelIdCache[i];
				selChannelOrderCache[cnt] = channelOrderCache[i];
				selChannelNameCache[cnt] = channelNameCache[i]; 
				selFavoriteCache[cnt] = favoriteCache[i];
				selLockedCache[cnt] = lockedCache[i];
				selUseGraphicCache[cnt] = useGraphicCache[i];
				cnt++;
			}
		}
		favoriteCount = cnt;
	} else if (gSelectedCategory == 1) { // all channels
		//catSelected.innerHTML = "All Channels";
		selChannelIdCache = channelIdCache;
		selChannelNameCache = channelNameCache;
		selChannelOrderCache = channelOrderCache;
		selUseGraphicCache = useGraphicCache;			
//		selFavoriteCache = favoriteCache;
//		selLockedCache = lockedCache;	
		
	} else {
		var i;
		var cnt = 0;	
		for(i=0; i<categoryNameCache.length; ++i) {
			if(categoryNameCache[i] == uniqCatNameCache[gSelectedCategory]) {
				//catSelected.innerHTML = categoryNameCache[i];
				selChannelIdCache[cnt] = channelIdCache[i];
				selChannelOrderCache[cnt] = channelOrderCache[i];
				selChannelNameCache[cnt] = channelNameCache[i]; 
				selFavoriteCache[cnt] = favoriteCache[i];
				selLockedCache[cnt] = lockedCache[i];
				selUseGraphicCache[cnt] = useGraphicCache[i];				
				cnt++;
			}							
		}
	}
	
	gTotalCh = (selChannelNameCache.length == 0 ? 0 : selChannelNameCache.length - 1);
		
	updateChannelPanel();
//	document.getElementById("waitPanel").style.background = "#556d6e";		
//	document.getElementById("waitPanel").style.backgroundImage = "url('./view/tv/images/banner.png')";
}

function resetChannelPanel() {	
	gSelectedChannel = 0;
	gCurrentChannel = 0;
	gChannelCursor = 0;
	gPrevChannelCursor = 0;
}
