var logoutId = 'xd_logout';
var commonOptions = {receiver: 'xdr/xd_receiver.html', loginRewritePrefix: 'xdr_menu_login_txt', loginRewrite: 'xdr_menu_login', rewriteLogutId: logoutId, rewriteLogutTxt: ' | <a class="menu-login login link-login" href="" id="'+logoutId+'">Logg ut</a>', loginPrefix: 'Innlogget som: '}
var initoptions = {commonOptions: commonOptions, reloadclient:0, checklogin: 1, showlogin:0, delaycookie: 60, popup: 0}
var options = {commonOptions: commonOptions, wrappingdiv: 'db_xdr_login', showlogin:1, reloadclient:0, width:368, height:230, popup:1}

$(document).ready(function() 
{
	DB.Client.checkLogin(initoptions);
	DB.Client.callOnLoaded({fname: 'postLoginUnbind', namespace: '', args: new Array()});
});

$(document).ready(function()
{
	$("#xdr_menu_login").click(function(e){
		e.preventDefault();
		hideAds();
		DB.Client.doLogin('postLoginUnbind', '', '', options);
	});
});

function postLoginUnbind()
{
	if (DB.userId) {
		$("#xdr_menu_login").unbind("click");
	}
	showAds();
}

function hideAds()
{
	$('.ad').css("display","none");
}

function showAds()
{
	$('.ad').css("display","");
}

$(document).ready(function() 
{
	$("#filter-search").click(function(e){
		e.preventDefault();
		$("#search-form-header").submit();
	});
});	


// Global variables
var gridTimelineLength = 0;
var gridChannelsHeight = 0;
var gridTimelineX = 240;
var gridTimeMultiplier = 0.25;
var gridIntervalX = 30;
var gridTimelineStepInterval = 120;

// Time settings
var gridDate = '';	// Current date
var gridStartTime = 0;	// Minutes from midnight
var gridCurrentTime = 0; // Minutes from midnight
var gridLeftOffset = 0; // Where to stop the visible timeline
var gridRightOffset = 0; // Where to stop the visible timeline
var gridTimebarOffset = 0; // Timebar
var gridLeftBorderPosition = 0;

// Channel offsets
var gridChannelsTopOffset = 100; // Where to stop the visible timeline

var channelsBottomBorderOffset = 0;
var timelineRightBorderOffset = 0;

// Navigation intervals
var mousewheelIntervalX = 480;
var timelineInSync = false;

// Navigation highliting
var currentFocusClass = "";

// Focus issues
var programWithFocus = false;
var channelWithFocus = false;
var channelWithProgram = false;
var activeFilter = false;
var activeSubguide = false;

// Ads
var footerAdTimestamp = false;
var footerAdLifetime = 10000;
var footerAdPause = 1000 * 60 * 8;
var footerAdInitPause = 20000;
var footerAdWidescreenLimit = 1200;
var footerAdWidescreenCampaignId = 990;
var footerAdCampaignId = 990;
//var footerAdInitPause = 1000;

// Keys
var keyShiftPressed = false;
var keyCtrlPressed = false;
var keyAltPressed = false;

// Login
var doRefresh = false;

// Program guide
var guideProgramToOpen = false;
var initSearchQuery = false;
var currentMovieId = false;
var persistentOpen = false;

//Categorymarkings
var markedCategoriesArr = false;

//Alarm-states
var alarmOnceTxt 	= 'Påminnelse (episode)';
var alarmAllTxt		= 'Påminnelse (serie)';
var alarmOffTxt		= 'Påminnelse (av)';

// Open on init
var initOpenChannel = '';
var initOpenProgram = '';
var initOpenProgramOffset = '';
var initOpenQuery = '';

//
var dragActive	= false;


var navigationButtonWidth = 0;

var currentMenuElement = false;

function setTimeIntervals(startMinutes, currentMinutes, timebarOffset, timelineLength, channelsHeight) {
	
	gridTimelineLength = timelineLength;
	gridChannelsHeight = channelsHeight;
	gridRightOffset = timebarOffset - gridTimelineLength;
	
	var el = document.getElementById("timeline");
	timelineRightBorderOffset = (el.offsetLeft);
				
	var el = document.getElementById("channels");
	channelsBottomBorderOffset = (el.offsetTop);

	gridTimebarOffset = timebarOffset;
	gridStartTime = startMinutes;
	gridCurrentTime = currentMinutes;
	

	if (currentMinutes == 0) {
		gridLeftOffset = 0;
	}
	else {
		gridLeftOffset = -(Math.floor(((currentMinutes - startMinutes)/gridTimeMultiplier))) + gridTimebarOffset;	
	}
	

	// Center timecode
	//gridTimebarOffset = ( ($(window).width() - 70) / 2) + 70 - 45;
	$('#timecode-left').css("left", gridTimebarOffset - 60);
	$('#timecode-right').css("left", gridTimebarOffset + 60);
	$('#timecode').css("left", gridTimebarOffset + 80);
	
	//alert( (currentMinutes - startMinutes) + " | " + gridTimebarOffset + " | " + gridLeftOffset);
	
	$('#past').css("left", ((Math.floor(((currentMinutes - startMinutes)/gridTimeMultiplier)))-240) + "px");
	$('#now').css("left", ((Math.floor(((currentMinutes - startMinutes)/gridTimeMultiplier)))+0) + "px");
	
	// ingeting
	$('#now-container').css("left", ((Math.floor(((currentMinutes - startMinutes)/gridTimeMultiplier)))-241) + "px");
	$('#now-header').css("left", ((Math.floor(((currentMinutes - startMinutes)/gridTimeMultiplier)))-241) + "px");
	
	// Remove lock
	//gridLeftOffset = 0;
}




function initTVListings(in_date) {


	if ( $('div#splash')) {
		displaySplash();	
	}
	
	
	initNavigation();
	
	
	   
	function resetNavigation() {
		clearTimeout(resizeTimer);
		resizeTimer = null;
		initNavigation();
	};
      
    var resizeTimer = null;
	$(window).bind('resize', function() {
		if (resizeTimer) {
			clearTimeout(resizeTimer);
		}
		else {
			$('div#sidebar-container .nav.vertical').css("display", "none");
			$('div#main-container .nav.horizontal').css("display", "none");	
		}
		resizeTimer = setTimeout(resetNavigation, 100);
	});
	
	
	$('#middle-container').everyTime(60000, "updateTimebar", function() {
	//$('#middle-container').everyTime(10000, "updateTimebar", function() {
		//SHR
		$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms", channelWithFocus: channelWithFocus, programWithFocus: programWithFocus, date: in_date }, updateCurrentTime );
		//$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms", channelWithFocus: channelWithFocus, programWithFocus: programWithFocus }, updateCurrentTime );
	});
	
	
	
	
	$('div#footer-container').oneTime(footerAdInitPause, "showHideFooter", displayFooter);
	
	gridDate = in_date;
	
	// Highlight programs on hover
	/*$('#programs').delegate('mouseover', 'div.program', function () {
		$(this).addClass('highlight');
		$(this).find('a.favorite-container').removeClass('invisible');
		return false;
	});
	
	$('#programs').delegate('mouseout', 'div.program', function () {
		$(this).removeClass('highlight');
		$(this).find('a.favorite-container').addClass('invisible');
		return false;
	});*/

	
				$('a.logo').click(function(){
					if ($('#now-container').css("display") != 'none') {
						$('#now-container').css("display", 'none');
					}
					else {
						$('#now-container').css("display", 'block');	
					}
					return false;
				});
					
					
				$('#rightnow').click(function(){
					$('div.program-with-info').trigger('click');
					moveTo(0,0,false,false);
				});
							
				
				$('a#help-button').click(function(){
					$('div#help-starter').addClass("invisible");
					$('div.help-info').toggleClass("invisible");
					return false;
				});	
							
				$('a#dbmeny').click(function(){
					$('div.dbmeny-hover').toggleClass("invisible");
					return false;
				});
				

				//$('div.meny a.menu').click(function() {return false;});
				$('div.meny a#menu-days').click(function() {return false;});
				$('div.meny a#menu-guides').click(function() {return false;});
				
				$('a#menu-days').hover(
					function(){
						
						var params = $(this).attr("id").split("-");
						$('#main-menu').stopTime("hideHover");
						if (currentMenuElement != params[1]) {
							
							hideHoveringMenu();
						}
						
					
						currentMenuElement = params[1];
						
						$(this).addClass("hovereffect");
						$('div.meny ul#submenu-' + currentMenuElement).addClass("hovereffect");
						return false;
					},
					function(){
						// Sett i kø for å gjemmes
						$('#main-menu').oneTime(500, "hideHover", hideHoveringMenu);
						return false;
					});
					
				$('div.meny ul.menu-list').hover(
					function(){
						
						var params = $(this).attr("id").split("-");
						$('#main-menu').stopTime("hideHover");
						if (currentMenuElement != params[1]) {
							hideHoveringMenu();
						}
						
						currentMenuElement = params[1];
						
						$(this).addClass("hovereffect");
						$('div.meny a#menu-' + currentMenuElement).addClass("hovereffect");
						return false;
					},
					function(){
						// Sett i kø for å gjemmes
						$('#main-menu').oneTime(500, "hideHover", hideHoveringMenu);
						
						return false;
					});
					
					
				
					
				$('a#mainmenu-item-tvguide').hover(
				function(){
					$('#tvguide-alternatives').stopTime("hideHover");
					$('#tvguide-alternatives').css("display","block");
					return false;
				},
				function(){
					$('#tvguide-alternatives').oneTime(500, "hideHover", function() { $('#tvguide-alternatives').css("display","none"); });
					return false;
				});
				
				$('#tvguide-alternatives').hover(
				function(){
					$('#tvguide-alternatives').stopTime("hideHover");
					$('#tvguide-alternatives').css("display","block");
					return false;
				},
				function(){
					$('#tvguide-alternatives').oneTime(500, "hideHover", function() { $('#tvguide-alternatives').css("display","none"); });
					return false;
				});
	
					
					
				/*$('div.meny ul.menu-list').hover(
					function(){
						var params = $(this).attr("id").split("-");
						currentMenuElement = params[1];
						$(this).addClass("hovereffect");
						$('div.meny ul#submenu-' + currentMenuElement).addClass("hovereffect");
						return false;
					},
					function(){
						$('div.meny a.dager').css("background-color", "#000000");
						return false;
					});*/

				
				
				//var position = $("#timeline").position;
				//var timelineRightBorderOffset = position.left;
				//alert(timelineRightBorderOffset);
				
				
				
				//alert(timelineRightBorderOffset + ", " + channelsBottomBorderOffset);
				
				
				//$(window).focus(function() {alert("focus");});
				//setFocusEvents();	
				
				 $("#timeline").draggable({ 
				  		axis: "x", 
				  		grid: [gridTimelineStepInterval,gridTimelineStepInterval], 
				  		containment: [-3000,0,gridLeftOffset+84,0],
				  		drag: function(event, ui) {	  		
				  			
				  			if ( $("#programs").css( "left") != $("#timeline").css( "left" )) {
				  				
				  				
				  				// 60 min = 210 px  
				  				
				  				//0.286*px = min
				  				
				  				// 70 px = 
				  				
				  				//var currentMinutes = 600 + Math.floor( 0.286* $("#timeline").css( "left" ) );
				  				var newTimeString = $("#timeline").css( "left" );
			  					setTimecode(newTimeString);
				  			}
				  			
				  			
				  			$("#programs").css( "left", $("#timeline").css( "left" ));
				  		},
				  		start: function(event, ui) {
				  			
				  			$("#timebar").css( "display", "block");
				  			$("#timecode").css( "display", "block");
				  		},
				  		stop: function(event, ui) {
				  			
				  			$("#timebar").animate({opacity: 1.0}, 200);
				  			$("#timecode").animate({opacity: 0.4}, 200);
				  			$("#timebar").fadeOut();
				  			$("#timecode").fadeOut();
				  				  		
				  			//$("#timebar").css( "opacity", 0);
				  			
				  			
				  		}
	
				  	});
				  	
				  	
				  	
				  $("#channels").draggable({ 
				  	axis: "y", 
				  	grid: [50,25],
				  	containment: [0,-3000,0,gridChannelsTopOffset],
				  	drag: function(event, ui) {	  			
				  		$("#programs").css( "top", $("#channels").css( "top" ));
				  		
				  	} 
				  });
	
				 
				  
				  $("#programs").draggable({ 
				  	grid: [gridTimelineStepInterval,25],
				  	containment: [-3000,-3000,gridLeftOffset+84,gridChannelsTopOffset],
				  	drag: function(event, ui) {	  			
				  		$("#channels").css( "top", $("#programs").css( "top" ));
				  		
				  		if ( $("#programs").css( "left") != $("#timeline").css( "left" )) {
				  				
			  				var newTimeString = $("#programs").css( "left" );
			  				setTimecode(newTimeString);

			  			}
				  		
				  		$("#timeline").css( "left", $("#programs").css( "left" ));
				  	},
				  	start: function(event, ui) {
			  			$(this).css('cursor', '/*url("http://www.google.com/intl/it_ALL/mapfiles/closedhand.cur")*/, pointer');
			  			$("#timebar").css( "display", "block");
			  			$("#timecode").css( "display", "block");
			  		},
			  		stop: function(event, ui) {
			  			$(this).css('cursor', '/*url("http://www.google.com/intl/it_ALL/mapfiles/openhand.cur")*/, pointer');
			  			$("#timebar").animate({opacity: 1.0}, 200);
			  			$("#timecode").animate({opacity: 0.4}, 200);
			  			$("#timebar").fadeOut();
			  			$("#timecode").fadeOut();
			  				  		
			  			//$("#timebar").css( "opacity", 0);
			  			
			  			
			  		} 
				  });
				  

					/* -------------------------------------------------------------- */
					
					$('#timeline-container').mousewheel(function(event, delta) {
						
						if (delta > 0) {
							moveLeft();
						}
						else {
							moveRight();
						}

						return false; // prevent default
					});
					
					/* -------------------------------------------------------------- */
					

					$('#programs-container').mousewheel(function(event, delta) {

						if (!keyShiftPressed) {
							if (delta > 0) {
								moveUp();
							}
							else {
								moveDown();
							}
						}
						else {
							if (delta > 0) {
								moveLeft();
							}
							else {
								moveRight();
							}
						}

						return false; // prevent default
					});
				  
					
					$('#channels-container').mousewheel(function(event, delta) {
						if (delta > 0) {
							moveUp();	
						}
						else {
							moveDown();
						}
						return false; // prevent default
					});
					
					
					//$('a.show-guide').click(function(e){
					/*$('div.categorySelector').click(function(e){
						alert("lkikk");
						e.preventDefault();
						var params = $(this).attr("id").split("_");
						var filterType = params[1];
						
						if (filterType) {
							showSubguide(filterType);	
							
						}
						
						return false;
						
					});*/
					
					
					/*$('a.filter-type').click(function(){
						
						if ($(this).attr("id") == 'filter-news') {
							var filterType = "news";
						}
						else if ($(this).attr("id") == 'filter-sports') {
							var filterType = "sports";
						}
						else if ($(this).attr("id") == 'filter-series') {
							var filterType = "series";
						}
						else if ($(this).attr("id") == 'filter-movies') {
							var filterType = "movies";
						}
						else if ($(this).attr("id") == 'filter-favorites') {
							var filterType = "favorites";
						}
						else if ($(this).attr("id") == 'filter-alerts') {
							var filterType = "alerts";
						}
						else if ($(this).attr("id") == 'filter-search') {
							var filterType = "search";
						}else if($(this).attr("id") == 'filter-userMarked'){
							var filterType = "userMarked";
						}

						filterProgramTypeHandler(filterType);
						
					  	return false; 
					});*/
					
					
					$('.program a.favorite-container').click(function(){
						$(this).toggleClass("favorite-container-active");
						if ($(this).hasClass("favorite-container-active") ) {
							$("#dialog").dialog();
						}
						$(this).find("span").toggleClass("active");
						return false;
					});
					
					$('#timeline-container a#move-left').click(function(){
						
						
						//moveTimeline(-1);
						
						return false;
					});
					
					$('#timeline-container #move-right-container a#move-right').click(function(){
						
						//moveTimeline(1);
						
						return false;
					});
					
					$('div#channels-container div.channel-listing').click(function(){
						
						if ($(this).hasClass("channel-with-program")) {
							var removeOnly = true;
							$(this).removeClass("channel-with-program");
							$('#program-flat-container').attr("innerHTML", "");
							$('#program-flat-container').css("display", "none");
							
							
							channelWithProgram = false;
						}
						else {
							
							resetListings();
							
							var params = $(this).attr("id").split("_");
							$('#channels div#channel_' + params[1]).addClass("channel-with-program");

							$('div#program-flat-container').css("display", "block");
							$(this).addClass("channel-with-program");
							
							$("div#program-flat-container").load("index.php5", {op: "ViewFlatChannelListings", date: gridDate, channelId: params[1]}, bindFlatDayEvents);
							
							channelWithProgram = params[1];
							
							
						}

						
						
						
						return false;
					});
					
					
					
					
					$("div#now-container div.current-program").click(function() {
					
						var params = $(this).attr("id").split("_");
						return $('#prog_' + params['1'] + '_' + params['2'] + '_' + params['3']).trigger("click");
					});
					
					$('#programs div.program').click(function(){
						//setFocusToProgram(this);
						
						$('#middle-container').stopTime("hoverProgramInfo");
						$('#middle-container').stopTime("programNotLoadedYet");
						$("#timecode2").css( "display", "none");
						
						if ($(this).hasClass("program-with-info")) {
							
							//SHR timer on
						    /*$('#middle-container').everyTime(60000, "updateTimebar", function() {
						    	
						    	$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms", date: gridDate}, updateCurrentTime );
							});*/
							
							var removeOnly = true;
							$(this).removeClass("program-with-info");
							$('#programs div.current_channel div.current-program').removeClass("channel-with-info");
							// Sjekk om offset er over grensa
							var el = document.getElementById("channels");
							var yOffset = el.offsetTop - channelsBottomBorderOffset;
							
							var containerHeight = $(window).height() - 85;
							
							var limit = -gridChannelsHeight + containerHeight - navigationButtonWidth;
						
							if (yOffset < limit) {
								if (gridChannelsHeight > containerHeight) {
									$('#channels').css("top", limit);	
									$("#programs").css( "top", $("#channels").css( "top" ));
								}
							}
							
						}
						
					
						resetListings();
						
						if (!removeOnly) {
							
							//SHR timer off
							//$('#middle-container').stopTime("updateTimebar");
						
							var params = $(this).attr("id").split("_");
							
							
							// Check if channel is in viewport
							var el = document.getElementById("channels");
							var offset = el.offsetTop - channelsBottomBorderOffset;
							var index = ($('#channels div#channel_' + params[1]).attr("index"));
							var channelYOffset = (index * 50);
							var elementHeight = $(window).height() - 85 - navigationButtonWidth;
							var infoHeight = 200;
							if (channelYOffset + infoHeight > (elementHeight - offset)) {
								var yOffset = elementHeight - channelYOffset - infoHeight;
								if (yOffset > 0) {
									yOffset = 0;
								}
								var xOffset = undefined;
								moveTo(xOffset, yOffset, false, false);
							}
							
							
							$('#channels div#channel_' + params[1]).addClass("channel-with-info");
							$('#programs div#current_channel_' + params[1]).addClass("channel-with-info");
							$(this).addClass("program-with-info");
							
							var programInfo = '<div id="program-info" class="program-info"><div id="program-info-content"><div class="loader"><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteondarkgray.gif" /></div></div></div>';
							
							var parentElement = $(this).parent();
							parentElement.after(programInfo);
							channelWithFocus = params[1];
							programWithFocus = params[2];
							
							
							var offset  = $("#timeline").css( "left" );
							offset = Math.abs(offset.substring(0, (offset.length - 2)));

							//$("#program-info-content").css("left", (offset + 160) ); 
							$("#program-info-content").css("left", (offset + 20) ); 
							
							$("#program-info-content").load("index.php5", {op: "ViewProgramDetails", date: params[3], channelId: params[1], programId: params[2]}, initProgramDetails );
	
						}
					
						
						return false;
					});
					
					
					$("div#now-container div.current-program").hover(
						function(){ //SHR1 hover on
							if(jQuery.browser.opera){
								
							}else{
								return programHoverOn(this);
							}

						},
						function(){ //hover out
							if(jQuery.browser.opera){
								
							}else{
								return programHoverOff(this);
							}
						}
						
					);
					
					$('#programs div.program').hover(
							function(){ //SHR1 hover on
							
							if(jQuery.browser.opera){
								
							}else{
								return programHoverOn(this);
							}

						},
						function(){ //hover out
							if(jQuery.browser.opera){
								
							}else{
								return programHoverOff(this);
							}
						}
					);
					
					$('div.nav a.up').click(function(){
						moveUp();
						return false;
					});
					$('div.nav a.down').click(function(){
						moveDown();
						return false;
					});
					$('div.nav a.left').click(function(){
						moveLeft();
						return false;
					});
					$('div.nav a.rigt').click(function(){
						moveRight();
						return false;
					});
					
					
					/*$('div.nav a.rigt').mousedown(function(){

						displayNavigationHelp();
					    $(this).everyTime(75, "navigateRight", function() { moveRight(); });
						return false;
					});
					$('div.nav a.rigt').mouseup(function(){
						$(this).stopTime("navigateRight");
					    
						return false;
					});
					
					$('div.nav a.left').mousedown(function(){

						displayNavigationHelp();
					    $(this).everyTime(75, "navigateLeft", function() { moveLeft(); });
						return false;
					});
					$('div.nav a.left').mouseup(function(){
						$(this).stopTime("navigateLeft");
					    
						return false;
					});
					
					$('div.nav a.up').mousedown(function(){

						displayNavigationHelp();
					    $(this).everyTime(50, "navigateUp", function() { moveUp(); });
						return false;
					});
					$('div.nav a.up').mouseup(function(){
						$(this).stopTime("navigateUp");
					    
						return false;
					});
					
					$('div.nav a.down').mousedown(function(){

						displayNavigationHelp();
					    $(this).everyTime(50, "navigateDown", function() { moveDown(); });
						return false;
					});
					$('div.nav a.down').mouseup(function(){
						$(this).stopTime("navigateDown");
					    
						return false;
					});*/
					
					
					$('a#alternatives').click(function(){
						toggleAlternatives();
						return false;
					});
					$('a#alternatives2').click(function(){
						toggleAlternatives();
						return false;
					});
					$('a#alternatives-close').click(function(){
						toggleAlternatives();
						return false;
					});
					
					
					$('a#button_close_splash_screen').click(function(){

						
						
						
						//$('div.navigasjon').toggleClass("invisible");
						var forever = $('#close_splash_forever').is(':checked');
						
						var checkbox = document.getElementById("close_splash_forever");
						
						if (checkbox.checked || forever) {
							$.cookie('tv_hide_splash_screen', 'true');		
						}
						else {
							$.cookie('tv_hide_splash_screen', 'true', { expires: 1 });
						}
						
						$('div#splash').addClass("invisible");
						$('div#splash').attr("innerHTML", "");

						return false;
					});
					
					
					

					
					
					$(document).keydown(function(event){
						
				
						//if (event.target.attr("id") == 'search-input') {
						if (activeFilter == 'search' || event.target.type == 'text' || event.target.type == 'password') {
							
						}
						else {
							//  Navigation
						    if (event.keyCode == 37) {
						    	// Left
						    	moveLeft();
						    }
						    else if (event.keyCode == 38) {
						    	// Up
						    	moveUp();
						    	
						    }
						    else if (event.keyCode == 39) {
						    	moveRight();
						    	
						    }
						    else if (event.keyCode == 40) {
						    	// Down
						    	moveDown();
						    }
							else if (event.keyCode == 78) {
						    	resetListings();
						    	showSubguide("news");
						    }
						    else if (event.keyCode == 83) {
						    	resetListings();
						    	showSubguide("sports");
						    }
						    else if (event.keyCode == 70) {
						    	resetListings();
						    	showSubguide("movie");
						    }
						    else if (event.keyCode == 69) {
						    	resetListings();
						    	showSubguide("series");
						    }else if (event.keyCode == 65) {
						    	resetListings();
						    	showSubguide("userMarked");
						    }
						    else if (event.keyCode == 27) {
						    	resetListings();
						    }
						    else if (event.keyCode == 16) { // Shift
						    	keyShiftPressed = true;
						    }
						    else {
						    	//alert(event.keyCode);	
						    }
						}
						
						
					   
					    	
					    
					});
					
					$(document).keyup(function(event){
						
						//  Navigation
					    if (event.keyCode == 16) { // Shift
					    	keyShiftPressed = false;
					    }
					    else {
					    	//alert(event.keyCode);	
					    }
					   
					    	
					    
					});
					
					$('form#search-input-header').change(function(){
						var defaultString = 'Søk etter program';
						if ($(this).attr("value") == defaultString) {
							$(this).attr("value", '');
						}
						else if ($(this).attr("value") == '') {
							$(this).attr("value", defaultString);
						}
						return false;
					});
					
					$('form#search-form-header').submit(function(){ 
						var query = $('input#search-input-header').attr("value");
						/*if ( $('a#filter-search').hasClass("active")) {
							
							$('input#search-input').attr("value", query);
							$('form#search-form').trigger('submit');
						}
						else {
							initSearchQuery = query;
							$('a#filter-search').trigger('click');
						}
						$('input#search-input-header').attr("value", "");*/
						
						window.location.href = "/hva/?includeAll=1&query=" + query;
						
						return false;
					});	
					$('a#filter-search').click(function(e){ 
						e.preventDefault();
						
						$('form#search-form-header').trigger("submit");
						
						return false;
					});	
					
}

function moveUp() {
	var el = document.getElementById("channels");
	var newOffset = el.offsetTop - channelsBottomBorderOffset + 50;
	if (newOffset <= 0) {
		$('#channels').css("top", newOffset);	
	}
	else {
		$('#channels').css("top", 0);	
	}
	$("#programs").css( "top", $("#channels").css( "top" ));
	resetListings();
	
	var selectorName = ".nav a.up";
	$(selectorName).stopTime("hideDirection");
	$(selectorName).addClass( "active");
	$(selectorName).oneTime(500, "hideDirection", function() {
	    $(selectorName).removeClass( "active");
	  });
	
}

function moveDown() {
	resetListings();
	var el = document.getElementById("channels");
	var newOffset = el.offsetTop - channelsBottomBorderOffset - 50;
	
	var containerHeight = $(window).height() - 85;
	
	var limit = -gridChannelsHeight + containerHeight - navigationButtonWidth;

	if (newOffset < limit) {
		if (gridChannelsHeight > containerHeight) {
			$('#channels').css("top", limit);	
		}
	}
	else {
		$('#channels').css("top", newOffset);	
	}
	$("#programs").css( "top", $("#channels").css( "top" ));
	
	var selectorName = ".nav a.down";
	$(selectorName).stopTime("hideDirection");
	$(selectorName).addClass( "active");
	$(selectorName).oneTime(500, "hideDirection", function() {
	    $(selectorName).removeClass( "active");
	  });
	
}
function moveLeft() {

	resetListings();
	var el = document.getElementById("timeline");
	if (timelineInSync) {
		var newOffset = el.offsetLeft - timelineRightBorderOffset + mousewheelIntervalX;
		
	}
	else {
		var intervalCount = (Math.floor((el.offsetLeft)/mousewheelIntervalX));
		var newOffset = intervalCount*mousewheelIntervalX + mousewheelIntervalX - timelineRightBorderOffset;
	}
	if (newOffset <= gridLeftOffset) {
		$('#timeline').css("left", newOffset);	
		timelineInSync = true;
	}
	else {
		$('#timeline').css("left", gridLeftOffset);	
		timelineInSync = false;
	}
	
	$("#programs").css( "left", $("#timeline").css( "left" ));
	setTimecode( $("#timeline").css( "left" ) , true);
	
	var selectorName = ".nav a.left";
	$(selectorName).stopTime("hideDirection");
	$(selectorName).addClass( "active");
	$(selectorName).oneTime(500, "hideDirection", function() {
	    $(selectorName).removeClass( "active");
	  });
	
}


function moveRight() {
	resetListings();
	var el = document.getElementById("timeline");
	if (timelineInSync) {
		var newOffset = el.offsetLeft - timelineRightBorderOffset - mousewheelIntervalX;
	}
	else {
		
		var intervalCount = (Math.ceil((el.offsetLeft - gridTimebarOffset)/mousewheelIntervalX));
		var newOffset = intervalCount*mousewheelIntervalX - mousewheelIntervalX + gridTimebarOffset;
	}

	var containerWidth = $(window).width() - 71;
	var limit = -gridTimelineLength + containerWidth - navigationButtonWidth;
	if (newOffset < limit) {
		$('#timeline').css("left", limit);	
		timelineInSync = false;
	}
	else {
		$('#timeline').css("left", newOffset);	
		timelineInSync = true;
	}
	
	$("#programs").css( "left", $("#timeline").css( "left" ));
	setTimecode( $("#timeline").css( "left" ) , true);
	var selectorName = ".nav a.rigt";
	$(selectorName).stopTime("hideDirection");
	$(selectorName).addClass( "active");
	$(selectorName).oneTime(500, "hideDirection", function() {
	    $(selectorName).removeClass( "active");
	  });
}

function moveTo(xOffset, yOffset, resetListings, setTimecode) {

	if (resetListings) {
		resetListings();
	}
	
	
	if (xOffset != undefined) {
		// X-axis
		var containerWidth = $(window).width() - 71;
		var limit = -gridTimelineLength + containerWidth;
		
		if (xOffset <= gridLeftOffset) {
			$('#timeline').css("left", xOffset);	
	
		}
		else if (xOffset < limit) {
			$('#timeline').css("left", limit);	
	
		}
		else {
			$('#timeline').css("left", gridLeftOffset);	
	
		}
		$("#programs").css( "left", $("#timeline").css( "left" ));
		timelineInSync = false;
	}
	
	
	// Y-axis
	if (yOffset != undefined) {
		var containerHeight = $(window).height() - 71;
		var limit = -gridChannelsHeight + containerHeight;
	
		/*if (yOffset < limit) {
			if (gridChannelsHeight > containerHeight) {
				$('#channels').css("top", limit);	
			}
		}
		else {*/
			$('#channels').css("top", yOffset);	
		//}
		$("#programs").css( "top", $("#channels").css( "top" ));
	}
	
	
	if (setTimecode) {
		setTimecode( $("#timeline").css( "left" ) , true);
	}

}


function updateCurrentTime(responseText, textStatus, XMLHttpRequest) {
	
	var currentMinutes = $('#current-minutes').attr("innerHTML");
	if (currentMinutes > gridCurrentTime) {
		var oneMinute = 4;
		var changeInOffset = (currentMinutes - gridCurrentTime) * oneMinute;
		
	    // Flytt hele tidslinja et hakk til venstre
	    var el = document.getElementById("timeline");
		var newOffset = el.offsetLeft - timelineRightBorderOffset - changeInOffset;
	    $('#timeline').css("left", newOffset);
	    $("#programs").css( "left", $("#timeline").css( "left" ));
	    var el2 = document.getElementById("now-container");
	    var el3 = document.getElementById("now-header");
		$('#now-container').css("left", el2.offsetLeft + changeInOffset);
		$('#now-header').css("left", el3.offsetLeft + changeInOffset);
		//var el4 = document.getElementById("past");
		//$('#past').css("left", el4.offsetLeft + changeInOffset);
	    gridLeftOffset = gridLeftOffset - changeInOffset;
	    timelineInSync = false;
	    
	    gridCurrentTime = currentMinutes;
	    
	    //$('#now-container .current-program-new').animate({ backgroundColor: "#deefb3" }, 2000);
	    

	    $('#middle-container').stopTime("updateTimebar");
	    $('#middle-container').everyTime(60000, "updateTimebar", function() {
			//SHR
	    	//$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms", date: gridDate}, updateCurrentTime );
	    	$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms", t: "tester", date: gridDate, channelWithFocus: channelWithFocus, programWithFocus: programWithFocus}, updateCurrentTime );
			//$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms"}, updateCurrentTime );
		});
	}
	
	var counter = 0;

	$('div.current-program').each(function(){
		//alert($(this).attr("id"));
		var params = $(this).attr("id").split("_");
		
		//alert("div#prog_" + params[1] + "_" + params[2] + "_" + params[3]);
		
		if ($("div#prog_" + params[1] + "_" + params[2] + "_" + params[3]).hasClass("program-alert")) {
			$(this).addClass("program-alert");	
		}
		
		if ($("div#prog_" + params[1] + "_" + params[2] + "_" + params[3]).hasClass("program-favorite")) {
			$(this).addClass("program-favorite");	
		}

		++counter;
	});
	
	
	$("div#now-container div.current-program").click(function() {
		
		var params = $(this).attr("id").split("_");
		return $('#prog_' + params['1'] + '_' + params['2'] + '_' + params['3']).trigger("click");
	});
	
	$("div#now-container div.current-program").hover(
		function(){ //SHR1 hover on
			
			return programHoverOn(this);

		},
		function(){ //hover out
			return programHoverOff(this);
		}
						
	);
	
    // Hold viewport hvis offset > 0
    
    // Oppdater timestamp
    // Oppdater venstremargen og låsen
    // Oppdater lista over programmer AKKURAT NÅ	
    
}

function bindFlatDayEvents(responseText, textStatus, XMLHttpRequest) {

	$('#program-flat-container a').click(function() {
		var params = $(this).attr("id").split("_");
		loadFlatProgram(params[2], params[1]);
	
		return false;
	});
	$('#button-channel-close').click(function() {
		resetListings();
	
		return false;
	});
	
	
}

function loadFlatProgram(currentChannelId, currentDate) {
	$("div#program-flat-container").load("index.php5", {op: "ViewFlatChannelListings", date: currentDate, channelId: currentChannelId}, bindFlatDayEvents);
}
								
function resetListings() {
	
	//alert(channelWithProgram + " " + programWithFocus);
	
	if (channelWithProgram) {
		$('#program-flat-container').css("display", "none");
		$('#program-flat-container').attr("innerHTML", "");
		$('#channels div#channel_' + channelWithProgram).removeClass("channel-with-program");
		channelWithProgram = false;	
	}
	
	if (programWithFocus) {

		$("#program-info").remove();
		
		
		$('#prog_' + channelWithFocus + '_' + programWithFocus + '_' + gridDate).removeClass("program-with-info");
		$('#channel_' + channelWithFocus).removeClass("channel-with-info");
		$('#programs div#current_channel_' + channelWithFocus).removeClass("channel-with-info");
		
		//SHR
		/*$('#middle-container').oneTime(1, "updateTimebarOnce", function() {
			$("div#now-container").load("index.php5", {op: "ViewCurrentPrograms", channelWithFocus: channelWithFocus, programWithFocus: programWithFocus, date: gridDate }, updateCurrentTime );
		});*/
		
		programWithFocus = false;
		channelWithFocus = false;
		
	}
	
	// Must use parameter check
	//closeGuide();
	
	$('#middle-container').stopTime("hoverProgramInfo");
	$('#middle-container').stopTime("programNotLoadedYet");
	$("#timecode2").css( "display", "none");
}
					
function removeSubstring(myStr, mySubstr) {
	myStr = "," + myStr + ",";
	myStr = myStr.split("," + mySubstr + ",").join(",");
	myStr = myStr.substring(1, myStr.length-1);
	return myStr;
}
			
					
function setTimecode(in_timeString, in_displayTimecode, in_displayDirection) {
	
	resetListings();
	
	var in_timeString = parseInt( in_timeString.replace(/[a-zA-Z]/g, "") ) ;
	var currentMinutes = gridStartTime + Math.floor( gridTimeMultiplier * ( Math.abs(in_timeString) + gridTimebarOffset ) );
	
	// Highlight current programs
	//$(currentFocusClass).removeClass("on-now");
	//$("#programs .grid-" + (currentMinutes-gridStartTime)).addClass("on-now");
	//currentFocusClass = "#programs .grid-" + (currentMinutes-gridStartTime);
	
	var currentHours = Math.floor(currentMinutes/60);
	if (currentHours >= 24) currentHours = "0" + (currentHours-24);
	var currentMinutes = currentMinutes%60;
	if (currentMinutes < 10) currentMinutes = "0" + currentMinutes;
	
	var newTime = currentHours + ":" + currentMinutes;
	$("#timecode").attr("innerHTML", newTime);
	
	if (in_displayTimecode) {
		displayTimecode();
	}
	
	if (in_displayDirection) {
		displayDirection(in_displayDirection);
	}
	
}

function displayTimecode() {
	$("#timecode").stopTime("hideTimecode");
	$("#timebar").stopTime("hideTimebar");
	$("#timebar").css( "display", "block");
	$("#timebar").css( "opacity", "0.8");
		$("#timecode").css( "display", "block");
		$("#timecode").css( "opacity", "0.4");
		
	
	$("#timecode").oneTime(500, "hideTimecode", function() {
	    $("#timecode").fadeOut();
	  });
	  
	$("#timebar").oneTime(500, "hideTimebar", function() {
	    $("#timebar").fadeOut();
	  });
	
}

function displayDirection() {
	/*$("#timecode").stopTime("hideTimecode");
	$("#timebar").stopTime("hideTimebar");
	$("#timebar").css( "display", "block");
	$("#timebar").css( "opacity", "0.8");
		$("#timecode").css( "display", "block");
		$("#timecode").css( "opacity", "0.4");
		
	
	$("#timecode").oneTime(500, "hideTimecode", function() {
	    $("#timebar").fadeOut();
	  });
	  
	$("#timebar").oneTime(500, "hideTimebar", function() {
	    $("#timecode").fadeOut();
	  });*/
	
}

function moveTimeline(in_direction) {
	if (in_direction > 0) {
	
		var el = document.getElementById("timeline");
		var newOffset = el.offsetLeft - timelineRightBorderOffset + gridTimelineStepInterval;
		if (newOffset <= gridLeftOffset) {
			$('#timeline').css("left", newOffset);	
		}
		else {
			$('#timeline').css("left", gridLeftOffset);	
		}
		
	}
	else {
		var el = document.getElementById("timeline");
		var newOffset = el.offsetLeft - timelineRightBorderOffset - gridTimelineStepInterval;
		if (newOffset < timelineRightBorderOffset) {
			$('#timeline').css("left", newOffset);	
		}
		else {
			$('#timeline').css("left", timelineRightBorderOffset);	
		}
	}
	
	$("#programs").css( "left", $("#timeline").css( "left" ));
	
	var newTimeString = $("#timeline").css( "left" );
	setTimecode(newTimeString);
	
	$("#timecode").stopTime("hideTimecode");
	$("#timebar").stopTime("hideTimebar");
	$("#timebar").css( "display", "block");
	$("#timebar").css( "opacity", "0.4");
		$("#timecode").css( "display", "block");
		$("#timecode").css( "opacity", "0.4");
		
	
	$("#timecode").oneTime(500, "hideTimecode", function() {
	    $("#timebar").fadeOut();
	  });
	  
	$("#timebar").oneTime(500, "hideTimebar", function() {
	    $("#timecode").fadeOut();
	  });
	
	return false; // prevent default	
}

function displayNoticebox(in_text) {
	$("#notice").stopTime("hideNotice");
	$("#notice").attr("innerHTML", in_text);
	$("#notice").css( "display", "block");
	$("#notice").css( "opacity", "0.4");
		
	
	$("#notice").oneTime(1500, "hideNotice", function() {
	    $("#notice").fadeOut();
	  });
}

function filterProgramTypeHandler(filter) {
	
	if (!filter || filter == undefined) {
		filter = activeFilter;	
	}
	
	if (filter == 'news') {
		var filterElement = "a#filter-news";
		var programFocusClass = "program-news";
		var programClass = ".news";
		var deactivateChannelClass = ".nonews";
		var separateText = "Kun nyhetskanaler";
		var activeText = "Nyheter, alle kanaler";
		var categoryName = "nyheter";
		var containerClass = "";
		var guideTitle = "Nyhetsguide";
		var removeMarked = true;
	}
	else if (filter == 'series') {
		var filterElement = "a#filter-series";
		var programFocusClass = "program-series";
		var programClass = ".series";
		var deactivateChannelClass = ".noseries";
		var separateText = "Kun seriekanaler";
		var activeText = "Serier, alle kanaler";
		var categoryName = "serier";
		var containerClass = "";
		var guideTitle = "Serieguide";
		var removeMarked = true;
	}
	else if (filter == 'sports') {
		var filterElement = "a#filter-sports";
		var programFocusClass = "program-sports";
		var programClass = ".sports";
		var deactivateChannelClass = ".nosports";
		var separateText = "Kun sportskanaler";
		var activeText = "Sport, alle kanaler";
		var categoryName = "sport";
		var containerClass = "";
		var guideTitle = "Sportsguide";
		var removeMarked = true;
	}
	else if (filter == 'movies') {
		var filterElement = "a#filter-movies";
		var programFocusClass = "program-movie";
		var programClass = ".movie";
		var deactivateChannelClass = ".nomovies";
		var separateText = "Kun filmkanaler";
		var activeText = "Filmer, alle kanaler";
		var categoryName = "film";
		var containerClass = "movieguide-container";
		var guideTitle = "Filmguide";
		var removeMarked = true;
	}
	else if (filter == 'favorites') {
		var filterElement = "a#filter-favorites";
		var programFocusClass = "program-favorite";
		var programClass = ".favorites";
		var deactivateChannelClass = ".nofavorites";
		var separateText = "Kun favorittkanaler";
		var activeText = "Favoritter, alle kanaler";
		var categoryName = "favorites";
		var containerClass = "";
		var guideTitle = "Mine favoritter i dag";
	}
	else if (filter == 'alerts') {
		var filterElement = "a#filter-alerts";
		var programFocusClass = "program-alert";
		var programClass = ".alerts";
		var deactivateChannelClass = ".noalerts";
		var separateText = "Kun påminnelser";
		var activeText = "Påminnelser, alle kanaler";
		var categoryName = "alerts";
		var containerClass = "";
		var guideTitle = "Mine påminnelser i dag";
	}
	else if (filter == 'search') {
		var filterElement = "a#filter-search";
		var programFocusClass = "program-search";
		var programClass = ".search";
		var deactivateChannelClass = ".nosearch";
		var separateText = "Søkeresultat";
		var activeText = "";
		var categoryName = "search";
		var containerClass = "";
		var guideTitle = "Søk etter programmer";
		initSearchQuery = $('input#search-input-header').attr("value");
	}
	else if (filter == 'userMarked') {
				
		var filterElement = "a#filter-userMarked";
//		var programFocusClass = "program-search";
//		var programClass = ".search";
//		var deactivateChannelClass = ".nosearch";
		var separateText = "Merkede sjangere:";
		var activeText = "";
		var categoryName = "setMarked3";
		var containerClass = "";
		var guideTitle = "Merk sjanger";
		var persistent = true;
//		alert('heihei');
//		initSearchQuery = $('input#search-input-header').attr("value");
	}

	
	
	if ( $(filterElement).hasClass("active")) {

		//if ( $(filterElement).hasClass("separate") ) {
			$("a.filter-type").removeClass("active");
			$("a.filter-type").removeClass("separate");
			$(".channel-listing").removeClass("invisible");
			$(".program-movie").removeClass("program-movie");
			$(".program-sports").removeClass("program-sports");
			$(".program-news").removeClass("program-news");
			$("#guide-container").removeClass("guide-" + filter);
			closeGuide();
			resetListings();
			
			if(removeMarked == true){
				if(activeFilter == 'movies'){
					var curCat = 'movie';
				}else{
					curCat = activeFilter;
				}
				if(jQuery.inArray(curCat, markedCategoriesArr) < 0){
					$('.'+curCat).removeClass('marked');
				}
			}
			
//			if(removeMarked == true && filter != 'movies'){
//				$('.'+filter).removeClass('marked');
//			}else if(removeMarked == true){
//				$('.movie').removeClass('marked');
//			}
//			
			//displayNoticebox("Alle programmer, alle kanaler");
			
			if(persistentOpen && activeFilter != 'userMarked'){
				activeFilter = false;
				filterProgramTypeHandler(persistentOpen);
			}else{
				persistentOpen = false;
				activeFilter = false;
			}
			
			
			
		/*}
		else {
			
			$("#guide-container").css("display", "none");
			$("#guide-container #guide").attr("innerHTML", "");
			
			$(filterElement).addClass("separate");
			$(deactivateChannelClass).addClass("invisible");
			displayNoticebox(separateText);
			
			$("#guide-container").css("display", "none");
			
			$("#guide-container").removeClass("movieguide-container");
			$("div#movie-container").css("display", "none");
			$("#guide-container #guide").attr("innerHTML", "");
		}*/
	}
	else {

		resetListings();
		activeFilter = filter;

		closeMovieDetails();
		
		$("#guide-container").attr("class", "");
		$("#guide-container").addClass("guide-" + filter);
		$("#guide-container").removeClass("movieguide-container");
		$("div#movie-container").css("display", "none");
		
		$(".program-news").removeClass("program-news");
		$(".program-movie").removeClass("program-movie");
		$(".program-sports").removeClass("program-sports");
		
		$("a.filter-type").removeClass("active");
		$("a.filter-type").removeClass("separate");
		$(".channel-listing").removeClass("invisible");
		$(filterElement).addClass("active");
		$(programClass).addClass(programFocusClass);
  		$("#guide-container").addClass(containerClass);
		$("#guide-container").css("display", "block");
		
		var height = $(window).height() - 130;
		$("div#guide-container #guide").css("height", height);
		$("div#guide-container #guide").css("overflow", "auto");
		$("div#guide-container #guide-title").attr("innerHTML", guideTitle);
		
		if (categoryName == 'film') {
			$("#guide").attr("innerHTML", '<div class="loader"><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteonblack.gif" /></div>');	
		}
		else {
			$("#guide").attr("innerHTML", '<div class="loader"><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteonblack.gif" /></div>');
		}
		
		$("div#guide-container #guide").load("index.php5", {op: "ViewGuide", date: gridDate, categoryName: categoryName}, initGuide);
		
		if(persistent){
			persistentOpen = filter;
		}
	
		//displayNoticebox(activeText);
		//$(filterElement).addClass("separate");
		//$(deactivateChannelClass).addClass("invisible");
		//displayNoticebox(separateText);
		
	}
	
	initNavigation();
	
	return false;
	
}


function showSubguide(subguide) {

	
	

	if (!subguide || subguide == undefined) {
		subguide = activeSubguide;	
	}
	
	
	if (subguide == 'movie') {
		var guideTitle = 'Filmguide';
	} else if (subguide == 'news') {
		var guideTitle = 'Nyhetssendinger';
	} else if (subguide == 'series') {
		var guideTitle = 'Serieguide';
	} else if (subguide == 'sports') {
		var guideTitle = 'Sportsguide';
	} else if (subguide == 'leisure') {
		var guideTitle = 'Fritid';
	} else if (subguide == 'culture') {
		var guideTitle = 'Kultur';
	} else if (subguide == 'music') {
		var guideTitle = 'Musikkprogrammer';
	} else if (subguide == 'factual') {
		var guideTitle = 'Fakta';
	} else if (subguide == 'economy') {
		var guideTitle = 'Samfunn';
	} else if (subguide == 'show') {
		var guideTitle = 'Reality/show';
	} else if (subguide == 'children') {
		var guideTitle = 'Barneprogrammer';
	}else if (subguide == 'alerts') {
		var guideTitle = 'Mine varslinger';
	} else if (subguide == 'favorites') {
		var guideTitle = 'Mine favoritter';
	}
	/*if (subguide == 'news') {
		var filterElement = "a#filter-news";
		var programFocusClass = "program-news";
		var programClass = ".news";
		var deactivateChannelClass = ".nonews";
		var separateText = "Kun nyhetskanaler";
		var activeText = "Nyheter, alle kanaler";
		var categoryName = "nyheter";
		var containerClass = "";
		var guideTitle = "Nyhetsguide";
		var removeMarked = true;
	}
	else if (subguide == 'series') {
		var filterElement = "a#filter-series";
		var programFocusClass = "program-series";
		var programClass = ".series";
		var deactivateChannelClass = ".noseries";
		var separateText = "Kun seriekanaler";
		var activeText = "Serier, alle kanaler";
		var categoryName = "serier";
		var containerClass = "";
		var guideTitle = "Serieguide";
		var removeMarked = true;
	}
	else if (subguide == 'sports') {
		var filterElement = "a#filter-sports";
		var programFocusClass = "program-sports";
		var programClass = ".sports";
		var deactivateChannelClass = ".nosports";
		var separateText = "Kun sportskanaler";
		var activeText = "Sport, alle kanaler";
		var categoryName = "sport";
		var containerClass = "";
		var guideTitle = "Sportsguide";
		var removeMarked = true;
	}
	else if (subguide == 'movies') {
		var filterElement = "a#filter-movies";
		var programFocusClass = "program-movie";
		var programClass = ".movie";
		var deactivateChannelClass = ".nomovies";
		var separateText = "Kun filmkanaler";
		var activeText = "Filmer, alle kanaler";
		var categoryName = "film";
		var containerClass = "movieguide-container";
		var guideTitle = "Filmguide";
		var removeMarked = true;
	}
	else if (subguide == 'favorites') {
		var filterElement = "a#filter-favorites";
		var programFocusClass = "program-favorite";
		var programClass = ".favorites";
		var deactivateChannelClass = ".nofavorites";
		var separateText = "Kun favorittkanaler";
		var activeText = "Favoritter, alle kanaler";
		var categoryName = "favorites";
		var containerClass = "";
		var guideTitle = "Mine favoritter i dag";
	}
	else if (subguide == 'alerts') {
		var filterElement = "a#filter-alerts";
		var programFocusClass = "program-alert";
		var programClass = ".alerts";
		var deactivateChannelClass = ".noalerts";
		var separateText = "Kun påminnelser";
		var activeText = "Påminnelser, alle kanaler";
		var categoryName = "alerts";
		var containerClass = "";
		var guideTitle = "Mine påminnelser i dag";
	}
	else if (subguide == 'search') {
		var filterElement = "a#filter-search";
		var programFocusClass = "program-search";
		var programClass = ".search";
		var deactivateChannelClass = ".nosearch";
		var separateText = "Søkeresultat";
		var activeText = "";
		var categoryName = "search";
		var containerClass = "";
		var guideTitle = "Søk etter programmer";
		initSearchQuery = $('input#search-input-header').attr("value");
	}
	else if (subguide == 'userMarked') {
		var filterElement = "a#filter-userMarked";
//		var programFocusClass = "program-search";
//		var programClass = ".search";
//		var deactivateChannelClass = ".nosearch";
		var separateText = "Merkede sjangere:";
		var activeText = "";
		var categoryName = "setMarked";
		var containerClass = "";
		var guideTitle = "Merk sjanger";
		var persistent = true;
//		alert('heihei');
//		initSearchQuery = $('input#search-input-header').attr("value");
	}*/

	
	
	if ( $('a#showguide_' + subguide).hasClass("active")) {
		
		// Hide subguide
			//alert("lukk subguide for " + subguide);
			
			$('a.show-guide').removeClass("active");
			
			closeSubguide();
			resetListings();
			
			//if(removeMarked == true){
				/*if(activeSubguide == 'movie'){
					var curCat = 'movie';
				}else{
					curCat = activeSubguide;
				}
				if(jQuery.inArray(curCat, markedCategoriesArr) < 0){
					$('.'+curCat).removeClass('marked');
				}*/
			//}

			/*if(persistentOpen && activeFilter != 'userMarked'){
				activeFilter = false;
				filterProgramTypeHandler(persistentOpen);
			}else{
				persistentOpen = false;
				activeFilter = false;
			}*/
			
			activeSubguide = false;

	}
	else {
		
		$('a.show-guide').removeClass("active");
		
		
		//alert("åpne subguide for " + subguide);
		// Show subguide
		resetListings();
		activeSubguide = subguide;

		closeMovieDetails();
		
		$('a#showguide_' + subguide).addClass("active");
		
		/*$("#guide-container").attr("class", "");
		$("#guide-container").addClass("guide-" + filter);
		$("#guide-container").removeClass("movieguide-container");
		$("div#movie-container").css("display",| "none");
		
		$(".program-news").removeClass("program-news");
		$(".program-movie").removeClass("program-movie");
		$(".program-sports").removeClass("program-sports");
		
		$("a.filter-type").removeClass("active");
		$("a.filter-type").removeClass("separate");
		$(".channel-listing").removeClass("invisible");
		$(filterElement).addClass("active");
		$(programClass).addClass(programFocusClass);*/
  		
		
		if(activeSubguide == 'movie'){
			$("#subguide-container").addClass('movieguide-container');
			//subguide = 'film';
		}
		$("#subguide-container").css("display", "block");
		$("#guide-container").css("right", "300px");
		
		var height = $(window).height() - 130;
		$("div#subguide-container #subguide").css("height", height);
		$("div#subguide-container #subguide").css("overflow", "auto");
		$("div#subguide-container #subguide-title").attr("innerHTML", guideTitle);
		
		/*if (categoryName == 'movie') {
			$("#subguide").attr("innerHTML", '<div class="loader"><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteonblack.gif" /></div>');	
		}
		else {*/
			$("#subguide").attr("innerHTML", '<div class="loader"><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteonblack.gif" /></div>');
		//}
		
		$("div#subguide-container #subguide").load("index.php5", {op: "ViewGuide", date: gridDate, categoryName: subguide}, initSubguide);
		
		/*if(persistent){
			persistentOpen = filter;
		}*/
	
		//displayNoticebox(activeText);
		//$(filterElement).addClass("separate");
		//$(deactivateChannelClass).addClass("invisible");
		//displayNoticebox(separateText);
		
	}
	
	initNavigation();
	
	return false;
	
}

function viewFavorites() {
	activeFilter = filter;
		
	$("#guide-container").removeClass("movieguide-container");
	$("div#movie-container").css("display", "none");
	
	$(".program-series").removeClass("program-series");
	$(".program-news").removeClass("program-news");
	$(".program-movie").removeClass("program-movie");
	$(".program-sports").removeClass("program-sports");
	
	$("a.filter-type").removeClass("active");
	$("a.filter-type").removeClass("separate");
	$(".channel-listing").removeClass("invisible");
	$(filterElement).addClass("active");
	$(programClass).addClass(programFocusClass);
		$("#guide-container").addClass(containerClass);
	$("#guide-container").css("display", "block");
	
	var height = $(window).height() - 130;
	$("div#guide-container #guide").css("height", height);
	$("div#guide-container #guide").css("overflow", "auto");
	$("div#guide-container #guide-title").attr("innerHTML", guideTitle);
	
	$("div#guide-container #guide").load("index.php5", {op: "ViewGuide", date: gridDate, categoryName: categoryName}, initGuide);
	
	displayNoticebox(activeText);	
}


function closeGuide(doCloseSubguide) {
	$("#guide-container").css("display", "none");
	$("#guide-container").removeClass("movieguide-container");
	$("#guide-container #guide").attr("innerHTML", "");
	closeMovieDetails();
	
	if(doCloseSubguide) {
		closeSubguide();	
	}
}

function closeSubguide() {
	
	$('a.show-guide').removeClass("active");
	
	$("#guide-container").css("right", "0px");
	$("#subguide-container").css("display", "none");
	$("#subguide-container").removeClass("movieguide-container");
	$("#subguide-container #guide").attr("innerHTML", "");
	closeMovieDetails();
}

function closeMovieDetails() {
	$("div#movie-container").css("display", "none");
	currentMovieId = false;
	initNavigation();
}

function setTimelineChannelFocus(channelId, startpos) {
	// Check if channel is in viewport
	var el = document.getElementById("channels");
	var offset = el.offsetTop - channelsBottomBorderOffset;
	var index = ($('#channels div#channel_' + channelId).attr("index"));
	var channelYOffset = (index * 50);
	var elementHeight = $(window).height() - 71;
	var infoHeight = 200;

	// Er kanalen nedenfor bildet?
	if (channelYOffset + infoHeight > (elementHeight - offset)) {
		var yOffset = elementHeight - channelYOffset - infoHeight;
		if (yOffset > 0) {
			yOffset = 0;
		}
	}
	// Neivel, er kanalen innenfor toppen? (Altså innenfor det synlige bildet?
	else if (channelYOffset >= -offset) {
		
		yOffset = undefined;
	}
	else {
		var yOffset = -channelYOffset;	
	}
	
	moveTo(-startpos+20, yOffset, false, false);
}

function initGuide(responseText, textStatus, XMLHttpRequest) {

	
	if(activeFilter != 'favorites' && activeFilter != 'alerts' && activeFilter != 'search' && activeFilter != 'movies'){
		var addMarked = activeFilter;
	}else if(activeFilter == 'movies'){
		var addMarked = 'movie';
	}
	if(addMarked){
		if(jQuery.inArray(addMarked, markedCategoriesArr) < 0){
			$('.'+addMarked).addClass('marked');
		}
	}
	
	
	
	if(activeFilter == 'userMarked'){
		getCats();
		
		/*$('div.meny a.menu').hover(
		function(){
			
			var params = $(this).attr("id").split("-");
			$('#main-menu').stopTime("hideHover");
			if (currentMenuElement != params[1]) {
				
				hideHoveringMenu();
			}
			
			currentMenuElement = params[1];
			
			$(this).addClass("hovereffect");
			$('div.meny ul#submenu-' + currentMenuElement).addClass("hovereffect");
			return false;
		},
		function(){
			// Sett i kø for å gjemmes
			$('#main-menu').oneTime(500, "hideHover", hideHoveringMenu);
			return false;
		});*/
		
		
	}
	
	$('div#guide div.program-container').click(function(e) {
	
		//alert("klikket ");
		e.preventDefault();
		var params = $(this).attr("id").split("_");
		var filterType = params[1];
		
		if (filterType == 'allOn' || filterType == 'allOff') {
			toggleCategoryMarking(params[1]);
		}
		else if (filterType) {

			showSubguide(filterType);	
			
		}
		
		return false;
		
	});
	
	$('div#guide div.program-container a.show-guide').click(function(e){
		//alert("kikket DIV");
		var params = $(this).parent().attr("id").split("_");
		
		if(params[0] == 'setMarked'){
			toggleCategoryMarking(params[1]);
		}else{
			setTimelineChannelFocus(params[1], params[3]);
			if (params[4]) {
				loadMovie(params[4]);
			}
			else {
				$('#prog_' + params[1] + '_' + params[2] + '_' + gridDate).trigger('click');
			}
		}

		return false;
	});

	
	$('a#button-guide-close').click(function(){ 
		filterProgramTypeHandler();
		return false;
	});
	
	$('input.alertRadio').click(function(){
		if($(this).attr('id') == 'radioAlert5Min'){
			$.post("index.php5", { op: "ChangeAlertDelay", alertDelay: '5'});
		}else if($(this).attr('id') == 'radioAlert30Min'){
			$.post("index.php5", { op: "ChangeAlertDelay", alertDelay: '30'});
		}else if($(this).attr('id') == 'radioAlert60Min'){
			$.post("index.php5", { op: "ChangeAlertDelay", alertDelay: '60'});
		}
	});
	
	if (activeFilter == 'search') {
		
		$("input#search-input").focus();
		
		$('form#search-form').submit(function(){ 
			var query = $('input#search-input').attr("value");
			$("div#search-results").load("index.php5", {op: "Search", query: query, date: gridDate}, initSearchResults);
			return false;
		});	
		
		var height = $(window).height() - 150;
		$("div#guide-container #search-results").css("height", height);
		$("div#guide-container #search-results").css("overflow", "auto");
		$("div#guide-container #guide").css("overflow", "hidden");
		
		if (initSearchQuery) {
			$("input#search-input").attr("value", initSearchQuery);
			$('form#search-form').trigger("submit");
			initSearchQuery = false;
		}
	}
	
	if (guideProgramToOpen) {
		$(guideProgramToOpen).trigger('click');
		guideProgramToOpen = false;	
	}
	
}
function initSubguide(responseText, textStatus, XMLHttpRequest) {

	
	/*if(activeSubguide != 'favorites' && activeSubguide != 'alerts' && activeSubguide != 'search' && activeSubguide != 'movies'){
		var addMarked = activeSubguide;
	}else if(activeSubguide == 'movies'){
		var addMarked = 'movie';
	}
	if(addMarked){
		if(jQuery.inArray(addMarked, markedCategoriesArr) < 0){
			$('.'+addMarked).addClass('marked');
		}
	}*/

	
	$('div#subguide div.program-container').click(function() {
		var params = $(this).attr("id").split("_");
		
		if(params[0] == 'setMarked'){
			toggleCategoryMarking(params[1]);
		}else{
			setTimelineChannelFocus(params[1], params[3]);
			if (params[4]) {
				loadMovie(params[4]);
			}
			else {
				$('#prog_' + params[1] + '_' + params[2] + '_' + gridDate).trigger('click');
			}
		}

		return false;
	});

	
	$('#subguide a.close').click(function(){ 
		showSubguide();
		return false;
	});
	
	$('input.alertRadio').click(function(){
		if($(this).attr('id') == 'radioAlert5Min'){
			$.post("index.php5", { op: "ChangeAlertDelay", alertDelay: '5'});
		}else if($(this).attr('id') == 'radioAlert30Min'){
			$.post("index.php5", { op: "ChangeAlertDelay", alertDelay: '30'});
		}else if($(this).attr('id') == 'radioAlert60Min'){
			$.post("index.php5", { op: "ChangeAlertDelay", alertDelay: '60'});
		}
	});
	
	if (activeSubguide == 'search') {
		
		$("input#search-input").focus();
		
		$('form#search-form').submit(function(){ 
			var query = $('input#search-input').attr("value");
			$("div#search-results").load("index.php5", {op: "Search", query: query, date: gridDate}, initSearchResults);
			return false;
		});	
		
		var height = $(window).height() - 150;
		$("div#subguide-container #search-results").css("height", height);
		$("div#subguide-container #search-results").css("overflow", "auto");
		$("div#subguide-container #guide").css("overflow", "hidden");
		
		if (initSearchQuery) {
			$("input#search-input").attr("value", initSearchQuery);
			$('form#search-form').trigger("submit");
			initSearchQuery = false;
		}
	}
	
	if (guideProgramToOpen) {
		$(guideProgramToOpen).trigger('click');
		guideProgramToOpen = false;	
	}
	
}

function initSearchResults() {
	
	
	$("input#search-input").select();
	
	$('div#guide div.program-container').click(function() {
		var params = $(this).attr("id").split("_");
		
		// Check if channel is in viewport
		var el = document.getElementById("channels");
		var offset = el.offsetTop - channelsBottomBorderOffset;
		var index = ($('#channels div#channel_' + params[1]).attr("index"));
		var channelYOffset = (index * 50);
		var elementHeight = $(window).height() - 71;
		var infoHeight = 200;

		// Er kanalen nedenfor bildet?
		if (channelYOffset + infoHeight > (elementHeight - offset)) {
			var yOffset = elementHeight - channelYOffset - infoHeight;
			if (yOffset > 0) {
				yOffset = 0;
			}
		}
		// Neivel, er kanalen innenfor toppen? (Altså innenfor det synlige bildet?
		else if (channelYOffset >= -offset) {
			
			yOffset = undefined;
		}
		else {
			var yOffset = -channelYOffset;	
		}
		
		moveTo(-params[3]+20, yOffset, false, false);
		
				
		if (params[4]) {
			loadMovie(params[4]);
		}
		else {
			$('#prog_' + params[1] + '_' + params[2] + '_' + gridDate).trigger('click');
		}

		
		
		return false;
	});
}

function loadMovie(movieId) {
	
	if (currentMovieId != movieId) {
		currentMovieId = movieId;
		$("div#movie-container").css("display", "block");
		initNavigation();
		//var height = $(window).height() - 130;
		//$("div#guide-container #movie").css("height", height);
		//$("div#guide-container #movie").css("overflow", "auto");
		
		$("div#movie-container #movie").attr("innerHTML", '<div class="loader">Finner filmen...<br/><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteonblack.gif" /></div>');
		$("div#movie-container #movie").load("index.php5", {op: "ViewMovieDetails", id: movieId}, initMovie);
	}
	else {
		$("div#movie-container").css("display", "none");
		currentMovieId = false;
		initNavigation();
	}
}

function initMovie(responseText, textStatus, XMLHttpRequest) {
	$('a#button-movie-details-close').click(function(){
		closeMovieDetails();
		return false;
	});	
}


function toggleAlternatives() {
	
	if ( $("#alternatives-container").css( "display") == "block") {
		$("#alternatives-container").css( "display", "none");
		$("#alternatives-content-container").attr( "innerHTML", "");
	}
	else {
		resetListings();
		$("#alternatives-container").css( "display", "block");
		$("#alternatives-content-container").attr( "innerHTML", '<div class="loader">Laster alternativer...<br/><img src="http://gfx.dagbladet.no/tv-program/ikoner/whiteonblack.gif" /></div>');
		$("#alternatives-content-container").load("index.php5", {op: "ViewAlternatives", oafj: 1}, initAlternatives);
	}
		
	
	
	 /*$("#alternatives-container").animate({ height: "550px" }) .animate({  
         height: "450px" }, "fast");*/
             
	
	//$("#alternatives-container").css( "opacity", "0");	
	//$("#alternatives-container").css( "opacity", "0");	
	
}

function initAlternatives() {
	
	var altChannelClick = function() {
		$(this).toggleClass("channel-selected");
		return false;
	};
	
	$('.channelsSortable').sortable({ 
		containment: 'parent',
		update: function(event, ui) { 
            ui.item.unbind("click");
            ui.item.one("click", function (event) { 
                event.stopImmediatePropagation();
                $(this).click(altChannelClick);
            }); 
		}
	});
	$('.channelsSortable').disableSelection();	
	
	
	$('#channels div.alt-channel').click(altChannelClick);
	
	$('button#button-alternatives-save').click(function() {
		var userChannels = new Array();
		var counter = 0;
		$('div.channel-selected').each(function(){
			var params = $(this).attr("id").split("_");
			//$(this).css("display", "none");
			userChannels[counter] = params[2];
			++counter;
		});
		//alert("index.php5?op=SaveUserAlternatives&channels=" + userChannels);
		window.location.href = "index.php5?op=SaveUserAlternatives&channels=" + userChannels;
		return false;
	});	
	
	$('a.channels-preset').click(function() {
		var params = $(this).attr("href").split("_");
		var channels = params[1].split(",");

		resetAlternativesChannels();
		
		
		$.each(channels, function(intIndex, objValue) {

			$("#channels div#alt_channel_" + objValue).addClass("channel-selected");
		});

		return false;
	});
	
	$('a#channels-reset').click(function() {
		resetAlternativesChannels();
		return false;
	});
		
	$('a#channels-setall').click(function() {
		setAlternativesChannels();
		return false;
	});
	
	
}

function resetAlternativesChannels() {
	$('#channels div.alt-channel').removeClass("channel-selected");
}

function setAlternativesChannels() {
	$('#channels div.alt-channel').addClass("channel-selected");
}

function displayAd(adType) {
	
	if (adType == 'movie') {
		var campaign = '988';
	}
	else if (adType == 'sports') {
		var campaign = '986';
	}
	/*else if (adType == 'news') {
		var campaign = '989';
	}*/
	else if (adType == 'series') {
		var campaign = '987';
	}
	else {
		var campaign = '992';
	}
	
	//var campaign = '649';
	
	var adString = "";

	if (eval("EAS_found_camp_" + campaign)) {
		adString = '<iframe src="http://annonser.dagbladet.no/eas?cu=' + campaign + ';camp=' + eval("EAS_found_camp_" + campaign) + ';no=' + eval("EAS_found_cre_" + campaign)+ ';cre=mu;" id="eas_' + campaign + '_' + eas_timestamp + '"  width="' + eval("EAS_found_width_" + campaign) + '"	height="' + eval("EAS_found_height_" + campaign) + '" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"></iframe>';
	}
	else {
		adString = "";
	}
	
	//adString = '<img src="http://gfx.dagbladet.no/tv-program/annonse_240_100.gif" />';
	

	
	$("div#ad-container").attr("innerHTML", adString);
		
}

function displayFooter() {
	//var campaign = '990';
	//var widescreenCampaign = '43';
	var adString = "";

	//footerAdTimestamp = new Date().getTime();
	
	//initNavigation();
	
	
	
	var width = $(window).width();
	
	if (width > footerAdWidescreenLimit && eval("EAS_found_camp_" + footerAdWidescreenCampaignId)) {
		footerAdTimestamp = new Date().getTime();
	
		initNavigation();

		if (width > footerAdWidescreenLimit && eval("EAS_found_camp_" + footerAdWidescreenCampaignId)) {
			
			$('div#footer-container').oneTime(footerAdLifetime, "showHideFooter", hideFooter);
			
			var height = $(window).height();
			var width = $(window).width();
			$('div#footer-container').css("top", (height) + "px");
			$('div#footer-container').css("display", "block");
			$('div#footer-container').css("width", width - 25 + "px");
			$('div#footer-container').css("height", "160px");
			var footerHeight = $('div#footer-container').css("height");
			$("div#footer-container").animate({"top": "-=154px"}, "slow", displayFooterAd);
			
		}
		else if (eval("EAS_found_camp_" + footerAdCampaignId)) {
			
			$('div#footer-container').oneTime(footerAdLifetime, "showHideFooter", hideFooter);
			
			var height = $(window).height();
			var width = $(window).width();
			$('div#footer-container').css("top", height + "px");
			$('div#footer-container').css("display", "block");
			$('div#footer-container').css("width", width - 25 + "px");
			var footerHeight = $('div#footer-container').css("height");
			$("div#footer-container").animate({"top": "-=85px"}, "slow", displayFooterAd);
			
		}
	}
	return false;	
}

function positionFooter() {
	var height = $(window).height();
	var width = $(window).width();
	if (width > footerAdWidescreenLimit) {
		$('div#footer-container').css("top", height - 160 + "px");
	}
	else {
		$('div#footer-container').css("top", height - 95 + "px");
	}
	
	$('div#footer-container').css("display", "block");
	var footerHeight = $('div#footer-container').css("height");
}

function displayFooterAd() {
	
	
	$('div#footer-container #button_close_footer').click(function() {
		hideFooter();
		$('div#footer-container').stopTime("showHideFooter");
		//$('div#footer-container').oneTime(20, "showHideFooter", hideFooter);
	});

	
	//var campaign = '649';
	//var campaign = '990';
	//var widescreenCampaign = '43';
	var adString = "";

	footerAdTimestamp = new Date().getTime();
	
	initNavigation();
	
	var width = $(window).width();
	
	$('div#footer-container').oneTime(footerAdLifetime, "showHideFooter", hideFooter);
	
	if (width > footerAdWidescreenLimit && eval("EAS_found_camp_" + footerAdWidescreenCampaignId)) {

		$('div#footer-ad').css("width", "1000px");
		$('div#footer-ad').css("height", "160px");
		
		adString = '<div class="ad-tag"><a href="http://www.dagbladet.no/annonseinfo/" title="Klikk for å komme til Annonseinfo" style="color:#fff;">a n n o n s e</a></div><iframe src="http://annonser.dagbladet.no/eas?cu=' + footerAdWidescreenCampaignId + ';camp=' + eval("EAS_found_camp_" + footerAdWidescreenCampaignId) + ';no=' + eval("EAS_found_cre_" + footerAdWidescreenCampaignId)+ ';cre=mu;" id="eas_' + footerAdWidescreenCampaignId + '_' + eas_timestamp + '"  width="' + eval("EAS_found_width_" + footerAdWidescreenCampaignId) + '"	height="' + eval("EAS_found_height_" + footerAdWidescreenCampaignId) + '" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"></iframe>';	
	}
	else if (eval("EAS_found_camp_" + footerAdCampaignId)) {
		//adString = '<div class="ad-tag"><a href="http://www.dagbladet.no/annonseinfo/" title="Klikk for å komme til Annonseinfo">a n n o n s e</a><iframe src="http://annonser.dagbladet.no/eas?cu=' + campaign + ';camp=' + eval("EAS_found_camp_" + campaign) + ';no=' + eval("EAS_found_cre_" + campaign)+ ';cre=mu;" id="eas_' + campaign + '_' + eas_timestamp + '"  width="' + eval("EAS_found_width_" + campaign) + '"	height="' + eval("EAS_found_height_" + campaign) + '" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"></iframe>';
		adString = '<div class="ad-tag"><a href="http://www.dagbladet.no/annonseinfo/" title="Klikk for å komme til Annonseinfo" style="color:#fff;">a n n o n s e</a></div><iframe src="http://annonser.dagbladet.no/eas?cu=' + footerAdCampaignId + ';camp=' + eval("EAS_found_camp_" + footerAdCampaignId) + ';no=' + eval("EAS_found_cre_" + footerAdCampaignId)+ ';cre=mu;" id="eas_' + footerAdCampaignId + '_' + eas_timestamp + '"  width="' + eval("EAS_found_width_" + footerAdCampaignId) + '"	height="' + eval("EAS_found_height_" + footerAdCampaignId) + '" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"></iframe>';
	}
	else {
		adString = "-";
	}
	//var adString = '<div class="ad-tag"><a href="http://www.dagbladet.no/annonseinfo/" title="Klikk for å komme til Annonseinfo">a n n o n s e</a></div><img src="http://gfx.dagbladet.no/tv-program/konkurrenten_468x60.gif" />';
	
	
	$("div#footer-ad").attr("innerHTML", adString);
	
	
	
	
}

function displaySplash() {
	if ($.cookie('tv_hide_splash_screen')) {
		// Splash screen skal ikke vises

	}	
	else {
	
		positionSplashScreen();
		
		var campaign = '991';
		var adString = "";
		
		if (eval("EAS_found_camp_" + campaign)) {
			//adString = '<div class="ad-tag"><a href="http://www.dagbladet.no/annonseinfo/" title="Klikk for å komme til Annonseinfo">a n n o n s e</a><iframe src="http://annonser.dagbladet.no/eas?cu=' + campaign + ';camp=' + eval("EAS_found_camp_" + campaign) + ';no=' + eval("EAS_found_cre_" + campaign)+ ';cre=mu;" id="eas_' + campaign + '_' + eas_timestamp + '"  width="' + eval("EAS_found_width_" + campaign) + '"	height="' + eval("EAS_found_height_" + campaign) + '" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"></iframe>';
			adString = '<iframe src="http://annonser.dagbladet.no/eas?cu=' + campaign + ';camp=' + eval("EAS_found_camp_" + campaign) + ';no=' + eval("EAS_found_cre_" + campaign)+ ';cre=mu;" id="eas_' + campaign + '_' + eas_timestamp + '"  width="' + eval("EAS_found_width_" + campaign) + '"	height="' + eval("EAS_found_height_" + campaign) + '" scrolling="no" frameborder="0" marginheight="0" marginwidth="0"></iframe>';
		}
		else {
			adString = "";
		}
		//var adString = '<div class="ad-tag"><a href="http://www.dagbladet.no/annonseinfo/" title="Klikk for å komme til Annonseinfo">a n n o n s e</a></div><img src="http://gfx.dagbladet.no/tv-program/konkurrenten_468x60.gif" />';
		
		$("div#splash #splash-ad-container").attr("innerHTML", adString);
		
		//jQuery.facebox($("div#splash").attr("innerHTML"));
		
		/*var overlay = $("<div id='modal-overlay'></div>");


          //Append the overlay to the document body
          $("body").append(overlay.click(function() { 
              modalHide(); 
          }))

          //Set the css and fade in our overlay
          overlay.css("opacity", 0.5);
          overlay.fadeIn(150);


          //Activate a listener 
          $(document).keydown(handleEscape);		
              

          
*/
		
		
		$('div#splash').removeClass("invisible");
	}
	
	
}

//Our function for hiding the modalbox
function modalHide() {

  $(document).unbind("keydown", handleEscape)
  var remove = function() { 
   
      $(this).remove(); 
  }
  overlay.fadeOut(remove);
}

//Our function that listens for escape key.
function handleEscape(e) {

  if (e.keyCode == 27) {

      modalHide();
  }
}

function positionSplashScreen() {
	var width = $(window).width();
	var splashWidth = 800;
	var left = Math.floor((width - splashWidth) / 2);
	$('div#splash').css("left", left);	
}

function hideFooter() {
	var height = $(window).height();
	$("div#footer-container").animate({"top": height}, "slow", function() {$('div#footer-container').css("display", "none");$("div#footer-ad").attr("innerHTML", "");});
	$('div#footer-container').oneTime(footerAdPause, "showHideFooter", displayFooter);
	footerAdTimestamp = false;
	initNavigation();
	return false;
}

function initProgramDetails() {
	
	var elementID = '#prog_' + channelWithFocus + '_' + programWithFocus + '_' + gridDate;
	
	if ($(elementID).hasClass("sports")) {
		var $adType = "sports";
	}
	else if ($(elementID).hasClass("movie")) {
		var $adType = "movie";
	}
	else if ($(elementID).hasClass("news")) {
		var $adType = "news";
	}
	else if ($(elementID).hasClass("series")) {
		var $adType = "series";
	}
	else {
		var $adType = "other";
	}
	
	displayAd($adType);
	
	
	//if ($('.program-info .tools a.favoritt').hasClass("favoritt-active")) {
	if ($(elementID).hasClass("program-favorite")) {
		$('.program-info .tools a.favoritt').addClass("favoritt-active");
		$('.program-info .tools a.favoritt-active').click(function() {return addRemoveFavorite("remove");});
	}
	else {
		$('.program-info .tools a.favoritt').click(function() {return addRemoveFavorite("add");});
		
	}
	
	/*if ($(elementID).hasClass("movie")) {
		$('.program-info .tools a.movie-details').click(function() {return viewOpenMovieDetails();});
	}*/

	
	if ($(elementID).hasClass("program-alert")) {
		$('.program-info .tools a.alarm').addClass("alarm-active");
		
		if ($(elementID).hasClass("program-alert-once")) {
			$('.program-info .tools a.alarm').attr("innerHTML", alarmOnceTxt);
		}
		else if ($(elementID).hasClass("program-alert-all")) {
			$('.program-info .tools a.alarm').attr("innerHTML", alarmAllTxt);
		}
//		else if ($(elementID).hasClass("program-alert-3600")) {
//			$('.program-info .tools a.alarm').attr("innerHTML", "1 time før");
//		}
		
		
	}
	else {		
	}
	
	
	
	$('#button-proginfo-close').click(function() {resetListings();return false;});
	
	
	$('.program-info .tools a.alarm').click(function() {return addRemoveAlarm();});
	
	
	/*$('.program-info .tools a.alarm').click(function() {
		var currentAlarm = $(this).attr("innerHTML");
		if (currentAlarm == '5 min. før') {
			$(this).attr("innerHTML", "30 min. før");
		}
		else if (currentAlarm == '30 min. før') {
			$(this).attr("innerHTML", "1 time før");
		}
		else if (currentAlarm == '1 time før') {
			$(this).removeClass("alarm-active");
			$(this).attr("innerHTML", "sms-varsel");
		}
		else if (currentAlarm == 'sms-varsel') {
			$(this).attr("innerHTML", "5 min. før");
			$(this).addClass("alarm-active");
		}
		return false;
	
	});*/

}

function viewOpenMovieDetails() {

	var channelId = $('.program-info div#program-details-channel').attr("innerHTML");
	var programId = $('.program-info div#program-details-program').attr("innerHTML");
	var slnr = $('.program-info div#program-details-slnr').attr("innerHTML");
	var startpos = $('.program-info div#program-details-startpos').attr("innerHTML");
	
	if ( $('a#filter-movies').hasClass("active")) {
		
	}
	else {
		$('a#filter-movies').trigger('click');
	}
	setTimelineChannelFocus(channelId, startpos);
	loadMovie(slnr);
	
	
	return false;
}

/*
function loginCallback(responseText, textStatus, XMLHttpRequest) {
	
	var response = eval("(" + responseText + ")");
	
	if (response.userid != null) {
		if (postLoginFunction == 'addFavorite') {
			doRefresh = true;	
			addRemoveFavorite("add", response.userid);
		}
		else if (postLoginFunction == 'addRemoveAlert') {
			doRefresh = true;	
			addRemoveAlarm(response.userid);
		}
		else {
			window.location.href = "index.php5";
		}

		postLoginFunction = false;
		
	}
	else if (response.errors) {
		for ( var i=0, len=response.errors.length; i<len; ++i ){

			if (response.errors[i] == 403 || response.errors[i] == 501) {
				$('p#login-error-text').attr("innerHTML", "<p>Feil e-post/passord</p>");
			} else if (response.errors[i] == 404) {
				$('p#login-error-text').attr("innerHTML", "<p>Brukeren finnes ikke. Har du registert deg?</p>");
			}
		}
	}
}  
*/

function addRemoveAlarm() {

	if (DB.userId) {
		// Check previous mode
		var currentAlarm = $('.program-info .tools a.alarm').attr("innerHTML");
		if (currentAlarm == alarmAllTxt) {
			var nextAlarm = '2';
		}
		else if (currentAlarm == alarmOnceTxt) {
			var nextAlarm = '0';
		}
//		else if (currentAlarm == '1 time før') {
//			var nextAlarm = '0';
//		}
		else if (currentAlarm == alarmOffTxt) {
			var nextAlarm = '1';
		}
		
		// Update mode
		var title = $('.program-info div#program-details-title').attr("innerHTML");
		var channelId = $('.program-info div#program-details-channel').attr("innerHTML");
		var programId = $('.program-info div#program-details-program').attr("innerHTML");
		var date = $('.program-info div#program-details-date').attr("innerHTML");
		var category = $('.program-info div#program-details-category').attr("innerHTML");
		var startTimestamp = $('.program-info div#program-details-start-timestamp').attr("innerHTML");
		var startReal = $('.program-info div#program-details-start-real').attr("innerHTML");
		var channelName = $('.program-info div#program-details-channel-name').attr("innerHTML");
		$.post("index.php5", { op: "AddRemoveAlert", date: date, alertTime: nextAlarm, title: title, channelId: channelId, programId: programId, category: category, startTimestamp: startTimestamp, startReal: startReal, channelName: channelName }, addRemoveAlertCallback );
		
		// Update icons
	}
	else {
		//doRefresh = true;
		DB.Client.doLogin('addRemoveAlarm', '', '', options);
	}
	
	return false;
		
}

function addRemoveAlertCallback(responseText, textStatus, XMLHttpRequest) {
	var response = eval("(" + responseText + ")");

	if (response.status == 'ok') {
		if (doRefresh) {
			window.location.href = "index.php5";
		}
		
		var currentAlarm = $('.program-info .tools a.alarm').attr("innerHTML");
		if (response.alertTime == '1') {
			$('.program-info .tools a.alarm').attr("innerHTML", alarmAllTxt);
			$('.program-info .tools a.alarm').addClass("alarm-active");
			
			$.each( response.elements, function(i, n){
				$(n).addClass("program-alert");
				$(n).addClass("program-alert-all");
				if ($(n).hasClass("program-favorite")) {
					$(n).addClass("program-favorite-alert");
				}
			});
			
		}
		else if (response.alertTime == '2') {
			$('.program-info .tools a.alarm').attr("innerHTML", alarmOnceTxt);
			var currentProg = $('div.program-with-info');
			
			$.each( response.elements, function(i, n){
				$(n).removeClass("program-alert-all");
				$(n).removeClass("program-alert");
				if ($(n).hasClass("program-favorite")) {
					$(n).removeClass("program-favorite-alert");
				}
			});
			currentProg.addClass('program-alert');
			currentProg.addClass('program-alert-once');
			if (currentProg.hasClass("program-favorite")) {
					currentProg.addClass("program-favorite-alert");
				}
		}
		else if (response.alertTime == '0' || response.alertTime == null) {
			$('.program-info .tools a.alarm').removeClass("alarm-active");
			$('.program-info .tools a.alarm').attr("innerHTML", alarmOffTxt);
			var removeFocus = true;
		}
//		else if (response.alertTime == '5') {
//			$('.program-info .tools a.alarm').attr("innerHTML", "5 min. før");
//			$('.program-info .tools a.alarm').addClass("alarm-active");
//		}
		
		var channelId = $('.program-info div#program-details-channel').attr("innerHTML");
		var programId = $('.program-info div#program-details-program').attr("innerHTML");
		var date = $('.program-info div#program-details-date').attr("innerHTML");
		if (removeFocus) {
			$('#programs div#prog_' + channelId + '_' + programId + '_' + date).removeClass("program-alert");	
			$('#programs div#prog_' + channelId + '_' + programId + '_' + date).removeClass("program-alert-once");	
			$('#programs div#prog_' + channelId + '_' + programId + '_' + date).removeClass("program-favorite-alert");	
		}
		else {
			$('#programs div#prog_' + channelId + '_' + programId + '_' + date).addClass("program-alert");	
			if ( $('#programs div#prog_' + channelId + '_' + programId + '_' + date).hasClass("program-favorite") ) {
				$('#programs div#prog_' + channelId + '_' + programId + '_' + date).addClass("program-favorite-alert");		
			}
		}
	}	
	if (DB.userId) {
		postLoginUnbind();
	}
}

function addRemoveFavorite(mode) {
	
	if (DB.userId) {
	
		var title = $('.program-info div#program-details-title').attr("innerHTML");
		var channelId = $('.program-info div#program-details-channel').attr("innerHTML");
		var programId = $('.program-info div#program-details-program').attr("innerHTML");
		var date = $('.program-info div#program-details-date').attr("innerHTML");
		var category = $('.program-info div#program-details-category').attr("innerHTML");
		var favoriteType = $('.program-info div#program-details-type').attr("innerHTML");
		
		if (mode == 'add') {
			var op = "AddFavorite";
			var callback = "addFavoriteCallback";
		}
		else {
			var op = "RemoveFavorite";
			var callback = "removeFavoriteCallback";
		}
		
		$.post("index.php5", { op: op, date: date, title: title, channelId: channelId, programId: programId, category: category, favoriteType: favoriteType }, eval(callback) );
		
	}
	else {
		//doRefresh = true;
		DB.Client.doLogin('addRemoveFavorite', '', new Array(mode), options);
	}
	return false;
}


function addFavoriteCallback(responseText, textStatus, XMLHttpRequest) {
	var response = eval("(" + responseText + ")");

	if (response.status == 'ok') {
		
		if (doRefresh) {
			window.location.href = "index.php5";
		}
		else {
			$('.program-info .tools a.favoritt').unbind('click'); 
			$('.program-info .tools a.favoritt').addClass("favoritt-active");
			$('.program-info .tools a.favoritt-active').click(function() {return addRemoveFavorite("remove");});
			
			$.each( response.elements, function(i, n){
				$(n).addClass("program-favorite");
				if ($(n).hasClass("program-alert")) {
					$(n).addClass("program-favorite-alert");
				}
			  
			});
		}
	}
	
	if (DB.userId) {
		postLoginUnbind();
	}
}

function initNavigation(debug) {
	var height = $(window).height();
	var width = $(window).width();
	var rightPadding = 0;
	var bottomPadding = 0;
	if(activeFilter == 'userMarked'){
		rightPadding = rightPadding + 110;
	}
	else if (activeFilter) {
		rightPadding = rightPadding + 300;	
	}
	
	if(activeSubguide){
		rightPadding = rightPadding + 300;
	}
	
	
	if (currentMovieId) {
		//rightPadding = rightPadding + 550;	
		rightPadding = rightPadding + 440;	
	}
	
	if (footerAdTimestamp) {
		if (width > footerAdWidescreenLimit) {
			bottomPadding = bottomPadding + 160;	
		}
		else {
			bottomPadding = bottomPadding + 94;	
		}
	}
	
	

	if (height <= 768) {
		navigationButtonWidth = 30;	
	}
	else if (height <= 1000) {
		navigationButtonWidth = 40;	
	}
	else if (height <= 1200) {
		navigationButtonWidth = 50;	
	}
	else if (height <= 1600) {
		navigationButtonWidth = 60;	
	}
	
	if (debug) {
		alert("anononse lastet");	
	}
	
	$('div#sidebar-container .nav.vertical').css("height", navigationButtonWidth + "px");
	$('div#sidebar-container .nav.vertical').css("width", width - 10 - rightPadding);
	$('div#sidebar-container .nav.vertical').css("top", height - navigationButtonWidth - bottomPadding + "px");
	$('div#sidebar-container .nav.vertical').css("display", "block");


	$('div#main-container .nav.horizontal').css("width", navigationButtonWidth + "px");
	$('div#main-container .nav.horizontal').css("height", height - 86 - navigationButtonWidth - bottomPadding);
	$('div#main-container .nav.horizontal').css("right", rightPadding + "px");
	$('div#main-container .nav.horizontal').css("display", "block");
	$('div#main-container .nav.horizontal a img').css("margin-top", ( ( height - 86 - navigationButtonWidth - bottomPadding - 20 )/4 ) + "px");
	
		
	positionSplashScreen();
	
	if (footerAdTimestamp) {
		positionFooter();	
	}
}

function removeFavoriteCallback(responseText, textStatus, XMLHttpRequest) {
	
	var response = eval("(" + responseText + ")");

	if (response.status == 'ok') {
		$('.program-info .tools a.favoritt-active').unbind('click'); 
		$('.program-info .tools a.favoritt').removeClass("favoritt-active");
		$('.program-info .tools a.favoritt').click(function() {return addRemoveFavorite("add");});
		
		$.each( response.elements, function(i, n){
			$(n).removeClass("program-favorite");
			$(n).removeClass("program-favorite-alert");
			
		});
	}
}


function throwDice(id, diceNum, prevAvgDice) {
	var postPath = 'http://www.dagbladet.no/inc3/altomfilm/newdice/rolldice.php';
	$('#diceStatusDiv').attr("innerHTML", "Stemme registreres...");
	$.post(postPath, { id: id, dice: diceNum, prevAvg: prevAvgDice }, throwDiceCallback );
}

function throwDiceCallback(responseText, textStatus, XMLHttpRequest) {
	var scoreArr = (responseText).split('|');

	$('#diceAverageText').attr("innerHTML", scoreArr[1]); 
	$('#votesAverage').attr("innerHTML", scoreArr[2]); 
	if(scoreArr[3] != ''){
		$('#avgDieWrapper').attr("innerHTML", '<div id="averageDie" class="dice num' + scoreArr[3] + '"></div>'); 
	}
	$('#diceStatusDiv').attr("innerHTML", scoreArr[0]); 

}

function hideHoveringMenu() {
	currentMenuElement = false;
	$('div.meny a.menu').removeClass("hovereffect");
	$('div.meny ul.menu-list').removeClass("hovereffect");
	//$('#main-menu #menu-' + currentMenuElememt).removeClass("hovereffect");
	//$('div.meny ul#submenu-' + currentMenuElement).removeClass("hovereffect");
	
}

function initFocus() {
	
	alert("hei" + footerAdTimestamp);
	if (footerAdTimestamp) {
		alert(footerAdTimestamp);
	}	
}

function removeGuideAlert(category, title, progId, channelId, startTime, alertType){
	$.post("index.php5", { op: "AddRemoveAlert", alertTime: 3, title: title, channelId: channelId, programId: progId, category: category, startTimestamp: startTime, alertType: alertType}, removeGuideAlertCallback );
}

function removeGuideAlertCallback(responseText, textStatus, XMLHttpRequest){
	var response = eval("(" + responseText + ")");

	if (response.status == 'ok') {
		$.each( response.elements, function(i, n){
			$(n).removeClass("program-alert");
			$(n).removeClass("program-favorite-alert");
		});
		$('a#button-guide-close').trigger('click');
		$('a#filter-alerts').trigger('click');
		
	}
}

function toggleCategoryMarking(category){
//	alert(category);
	if(category == 'allOff'){
		$.cookie('dbtvCategories', null, {  path: '/', expires: 365 });
		$('.marked').removeClass('marked');
//		getCats();
	}else if(category == 'allOn'){
		var catArr = new Array('movie', 'news', 'series', 'sports', 'leisure', 'culture', 'music', 'factual', 'economy', 'show', 'children');
		$.cookie('dbtvCategories', catArr.join(), {  path: '/', expires: 365 });
		getCats();
	/*}else if(category == 'favorites'){
		$('.'+category).toggleClass('program-favorite');
		setCatCookie(category);
	*/}else{
		$('.'+category).toggleClass('marked');
		setCatCookie(category);
	}
}

function setCatCookie(category){
	var today = new Date();
	var expi = new Date();
	timestamp = today.getTime();
	expi.setTime(timestamp + 157680000);
	found = 0;

	if($.cookie('dbtvCategories')){
		catStr = $.cookie('dbtvCategories');
		catArr = catStr.split(',');
		if ($.isArray(catArr)){
			if(jQuery.inArray(category, catArr) > 0){
				var retArr = new Array(); 
				jQuery.each(catArr, function() {
				 	if(this != category){
				 		retArr.push(this);
				 	}
				});
				catArr = retArr;
			}else{
				catArr.push(category);
			}
		}
	}else{
		catArr = new Array();
		catArr.push(category);
	}
	markedCategoriesArr = catArr;
	$.cookie('dbtvCategories', catArr.join(), {  path: '/', expires: 365 });
}


function getCats(){
//	alert('her er jeg');
	if($.cookie('dbtvCategories')){
		catStr = $.cookie('dbtvCategories');
		catArr = catStr.split(',');
		markedCategoriesArr = catArr;
		jQuery.each(catArr, function() {
			/*if (this == 'favorites') {
				$('.'+this).addClass('program-favorite');
			}
			else {*/
				$('.'+this).addClass('marked');	
			//}
			
		});
	}else{
		$.cookie('dbtvCategories', 'series,show,sports', {  path: '/', expires: 365 });
		getCats();
	}
}


function openProgram(in_channelId, in_programId) {
	//alert('#prog_' + in_channelId + '_' + in_programId + '_' + gridDate);
	initOpenChannel = in_channelId;
	initOpenProgram = in_programId;

	$('#programs').oneTime(500, "openProgram", function(in_channelId, in_programId) {
		var el = document.getElementById('prog_' + initOpenChannel + '_' + initOpenProgram + '_' + gridDate);
		//if (el != undefined) {
		if (el && el.offsetLeft > 0) {
			moveTo(-el.offsetLeft+240);
		}
	    $('#prog_' + initOpenChannel + '_' + initOpenProgram + '_' + gridDate).trigger("click");	
	  });
	
	return true;
}

function searchProgram(query) {
	initOpenQuery = query;
	$('a#filter-search').trigger('click');
	
	$('#guide-container').oneTime(500, "doSearch", function() {
		$('input#search-input').attr("value", initOpenQuery);
		$('form#search-form').trigger('submit');
	});
	
	
}

/* ON FOCUS EXPERIMENT */
var isIE = (navigator.appName == "Microsoft Internet Explorer");
var hasFocus = true;
var active_element;

function setFocusEvents()	{
	active_element = document.activeElement;
	if (isIE)	{
		document.onfocusout = function() {	onWindowBlur();	      }
		document.onfocusin = function()	 {	onWindowFocus();     }
	}	else	{
		window.onblur = function()	  {	onWindowBlur();	         }
		window.onfocus = function()	 {	onWindowFocus();       }
	}
}

function onWindowFocus()	{
	hasFocus = true;
	initFocus();
}

function onWindowBlur()	{
	if (active_element != document.activeElement) {
		active_element = document.activeElement;
		return;
	}
	hasFocus = false;
}

function programHoverOn(progOnHover){

	$("#timecode2").attr("innerHTML", "");
							
	$('#middle-container').stopTime("hoverProgramInfo");
	$('#middle-container').stopTime("removeSmallProgramInfo");

	var params = $(progOnHover).attr("id").split("_");

	var offset = $(progOnHover).offset();
	
	var viewPortHeigth = $(window).height();
	var viewPortWidth = $(window).width();
	
	
	if( viewPortHeigth - offset.top < 200 ){
		hoverTop = offset.top - 36;
//		var under = "under";
	}
	else {
//		var under = "over";
		hoverTop = offset.top + 40;
	}							
	if (viewPortWidth - offset.left < 150){
		hoverLeft = offset.left - 250;
	}
	else if ( viewPortWidth - offset.left < 300 ) {
		hoverLeft = offset.left - 230;
	}
	else if ( offset.left < 200 ) {
		hoverLeft = offset.left + 5;
	}
	else {
		hoverLeft = offset.left - 15;
	}
	
	$("#timecode2").css( "left", hoverLeft);
	$("#timecode2").css( "top", hoverTop);
	

//	$('#middle-container').oneTime(200, "hoverProgramInfo", function() {
//		$("div#timecode2").load("index.php5", {op: "ViewProgramDetailsHover", date: params[3], channelId: params[1], programId: params[2]},removeSmallProgramInfo() );
//	});
	
	$("div#timecode2").attr("innerHTML",$(progOnHover).attr("innerHTML")+"<i>Klikk på program for mer info!</i>");
	
	removeSmallProgramInfo();
}

function programHoverOff(){
	$('#middle-container').stopTime("hoverProgramInfo");
//	$("#timecode2").css( "display", "none");
	if(jQuery.browser.opera){
		$("#timecode2").hide();
	}else{
		$("#timecode2").hide();
	}
}

function removeSmallProgramInfo(){	

	// Sjekk om ting faktisk er loadet. IE gjør ikke alltid det..
	if ($("#timecode2").attr("innerHTML") != ""){
//		if(under == "under"){
//			$("#overunderinfo").attr("innerHTML", under);
//		}
		
		$('#middle-container').oneTime(10000, "removeSmallProgramInfo", function() {
			$('#middle-container').stopTime("hoverProgramInfo");
			if(jQuery.browser.opera){
				$("#timecode2").hide();
			}else{
				$("#timecode2").hide();
			}
			
		});
		if(jQuery.browser.opera){
			$("#timecode2").show();
		}else{
			$("#timecode2").show();
		}
		
	
	}
		
	else { // Lar IE tenke seg litt om
		$('#middle-container').oneTime(150, "programNotLoadedYet", function() {
			removeSmallProgramInfo();
		});
	}
}

function displayNavigationHelp(){
	
	$('#middle-container').stopTime("hideNavigationHelp");
	
	var navuppos = $("div.nav a.up").position();
	var navleftpos = $("div.nav a.left").position();
	
	hoverTop = ((navleftpos.top*2)+93)-190;

	hoverLeft = (navuppos.left*2)-460;
	
	$("#nav-tip").css( "left", hoverLeft);
	$("#nav-tip").css( "top", hoverTop);
	
	$("#nav-tip").css( "display" , "block");
	$('#middle-container').oneTime(3000, "hideNavigationHelp", function() {
		hideNavigationHelp();
	});
}

function hideNavigationHelp(){
	$("#nav-tip").css( "display" , "none");
}


/* END OF FOCUS EXPERIMENT */

