// JavaScript Document



var wordpress_dir = "../";
var wordpress_url = "http://www.backstageradio.ch/";

var getHashValue = function() {

	var arr = window.location.hash.split("#");

	var hasValue = arr[1];

	//sets default
	if (typeof hasValue == "undefined") {
		return false;
	}

	var hashLen = hasValue.indexOf("?");
	if(hashLen>0){
		hasValue = hasValue.substring(0,hashLen);
	}
	return hasValue;

};
/*
$.extend({
  getUrlVars: function(){
    var urlVars = window.location.href.slice(window.location.href.indexOf('#') + 1);
    return urlVars;
  }
});
var lastHash = getHashValue();

var onHashChange = function(event) {
    
    //get hash function
    
    
    //last hash

    //checker
    (function watchHash() {
        var hash = getHashValue();
        if (hash !== lastHash) {
            event();
            lastHash = hash;
			
        }
		alert("last: "+lastHash+" curr: "+hash + " getHash: "+$.getUrlVars());
        var t = setTimeout(watchHash, 2000);

    })();

} 

onHashChange(function() {
    navTo(getHashValue());
});
*/


/*-------------------- MAIN FUNCTIONS ----------------*/


function hideLinear() {
	$(self).height($(self).height());
	$('#linear').animate({ left: "-520px"},200);
}

function showLinear() {
	$('#linear').animate({ left: "0px"},200);
	//$("#content").empty();
	getSpacer();
}
function expand() {
	showLinear();
}

function hideComments() {
	$('#comment_section').hide();
}

function showComments() {
	$('#comment_section').show();
}
function setLocation(param) {
	lastHash = param;
	location.replace('#'+ param +'');
	
}
function getBlogContent(get_parameters) {
	$("#middle").load(''+wordpress_dir+'?'+get_parameters+'&+ignoreMe='+ new Date().getTime());
	setLocation(get_parameters);
	hideLinear();
	hideComments();
}

function getSpacer() {
	$("#middle").load('http://www.backstageradio.ch/?page_id=1016'+'&+ignoreMe='+ new Date().getTime());
}

function getPopularDjs() {
	$("#middle").load('http://www.backstageradio.ch/ajax/get_popular_djs.php');
	setLocation("");
	hideLinear();
}

function getDJsupport(band_name) {
	$("#middle").load('http://www.backstageradio.ch/ajax/get_popular_djs_by_artist.php?band='+band_name+'');
	setLocation("");
	hideLinear();
}

function getDJchoice(dj_name) {
	$("#middle").load('http://www.backstageradio.ch/ajax/get_dj_playlist.php?dj='+dj_name+'');
	setLocation("");
	hideLinear();
}

function getPlaylistHistory(datetime) {
	if(datetime === undefined) {
		datetime = "";
	}
	$("#middle").load('http://www.backstageradio.ch/ajax/get_playlist_history.php?datetime='+datetime+'');
	setLocation("");
	hideLinear();
}

function popoutRadioPlayer() {
	window.open( 'http://www.backstageradio.ch/radioplayer.html', 'Backstageradio_player', 'width=300,height=100,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=0' ) ;
}

function popoutRadioPlayerForLinks() {
	thisMovie("linear").mute();
	window.open( 'http://www.backstageradio.ch/radioplayer.html', 'Backstageradio_player', 'width=300,height=100,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=0' ) ;
}

function thisMovie(movieName) {
         if (navigator.appName.indexOf("Microsoft") != -1) {
             return window[movieName];
         } else {
             return document[movieName];
         }
     }
	 
function mx3IframeMute() {
	thisMovie("linear").mute();
}

function openSongSuggestionPopup() {
	window.open( 'http://www.backstageradio/ajax/ajax/suggest_a_song.php', 'SONG-SUGGESTION', 'width=350,height=360,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=0' );
}

function openMx3Player(mx3_id) {
	thisMovie("linear").mute();
	mx3_id = mx3_id;
	window.open( 'http://www.mx3.ch/playlist/player?xml=/single/listen/'+mx3_id, 'Mx3_player', 'width=350,height=360,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=0' );
}

function openTop10cube() {
	thisMovie("linear").mute();
	target = "cube";
	window.open( 'http://www.backstageradio.ch/cube.html', 'Backstageradio_Top10', 'width=324,height=324,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=0' );
}

function openCreditsFAQ(get_parameters) {	
	window.open( ''+wordpress_dir+'?'+get_parameters+'', 'Backstageradio.ch', 'width=480,height=590,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=1,resizable=0' );
}

/*------------------------- INIT ----------------- */


function navTo(urlVars) {
	if (urlVars === false) {
		
		//get latest news:
		window.setTimeout("getBlogContent('cat=6')", 1000);
		
	}
	else {
		//getBlogContent(urlVars);
		$("#middle").load(''+wordpress_url+'?'+urlVars+'&+ignoreMe='+ new Date().getTime());
		
		hideLinear();
		hideComments();
	}
}
$(document).ready(function(){
	var urlVars = getHashValue();
	navTo(urlVars);
	
	//enable hiding/showing linear onClick
	$('#hide').click(function() {
		hideLinear();
	});
	$('#backstageradio_logo').click(function() {
		showLinear();
	});
	
	
	
	//javascript must be available after ajaxRequests:
	$('#middle').ajaxComplete(function() {
		
		// Block default behaviour of blog links:
		$('a[href^="'+wordpress_url+'?"]').click(function(event){										  
			var url = this.href;
			var url_array = url.split("?");
			var get_parameters = url_array[1];									  
			
			if (get_parameters != "theme_view=mobile&wptouch_redirect=www.backstageradio.ch/") {
				event.preventDefault();
				getBlogContent(get_parameters);
			}
		});
		
		hideComments();
		
		$('.mx3_iframe').click(function(){
			mx3IframeMute();
		});
		
		//ajax submit for comment form:
		$("#submit_comment").click(function(){
											
			$(".error").hide();
			var hasError = false;
			//var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
			var author_value = $("#author").val();
			var comment_value = $("#comment").val();
			var agb_state = $('#agb_checkbox').attr('checked');
			var comment_post_ID = $("#comment_post_ID").val();
			var cat_id = $("#cat_id").val();
			var paging = $("#paging").val();
			
			if(author_value == '') {
				$(".comment_form_error").empty();
				$("#author").after('<div class="comment_form_error">Please enter your name.</div>');
				hasError = true;
			}
			else if(comment_value == '') {
				$(".comment_form_error").empty();
				$("#comment").after('<div class="comment_form_error">Please enter your comment.</div>');
				hasError = true;
			}
			else if(agb_state === false) {
				$(".comment_form_error").empty();
				$("#agb_checkbox").after('<div class="comment_form_error">Please read the Terms and Conditions.</div>');
				hasError = true;
			}
		
			if(hasError === false) {
				$("#submit_comment").hide();
				//$("#sendEmail li.buttons").append('<img src="/images/template/loading.gif" alt="Loading" id="loading" />');
				$.post('http://www.backstageradio.ch/wordpress/wp-comments-post.php', { author: author_value, comment: comment_value, comment_post_ID: comment_post_ID },
				function(){
					getBlogContent('cat='+ cat_id +'&paged='+ paging);
					//getBlogContent('p='+ comment_post_ID);
				});
		
			}
			/* check email:
			else if(!emailReg.test(emailToVal)) {
				$("#emailTo").after('<span class="error">Enter a valid email address to send to.</span>');
				hasError = true;
			}
			*/
			return false;
		});
		
		//ajax submit for song suggestion form:
		$("#submit_suggestion").click(function(){
											
			$(".error").hide();
			var hasError = false;
			//var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
			var permalink_value = $("#permalink").val();
			var song_title_value = $("#song_title").val();
			var comment_value = $("#comment").val();
			var user_name_value = $("#user_name").val();
			
			if(permalink_value == '') {
				$(".comment_form_error").empty();
				$("#permalink").after('<div class="comment_form_error">Please enter a Mx3 permalink.</div>');
				hasError = true;
			}
			else if(permalink_value == 'example: http://mx3.ch/artist/flavian') {
				$(".comment_form_error").empty();
				$("#permalink").after('<div class="comment_form_error">Please enter a Mx3 permalink.</div>');
				hasError = true;
			}
			else if(song_title_value == '') {
				$(".comment_form_error").empty();
				$("#song_title").after('<div class="comment_form_error">Please enter a song title.</div>');
				hasError = true;
			}
			
			else if(comment_value == '') {
				$(".comment_form_error").empty();
				$("#comment").after('<div class="comment_form_error">Please enter your comment.</div>');
				hasError = true;
			}
			else if(user_name_value == '') {
				$(".comment_form_error").empty();
				$("#user_name").after('<div class="comment_form_error">Please enter your name.</div>');
				hasError = true;
			}
		
			if(hasError === false) {
				$("#submit_suggestion").hide();
				$.post(''+ wordpress_dir +'/?page_id=340', { permalink: permalink_value,  song: song_title_value, comment: comment_value, user: user_name_value },
				function(data){
					if(data === 0) {
						getBlogContent('page_id=340&error=1');
						
						//$("#permalink").after('<div class="comment_form_error">Please check the Mx3 permalink once again.</div>');
						//$("#submit_suggestion").show();
					}
					else {
						getBlogContent('cat=3');
					}
				});
		
			}
			return false;
		});
		
		
		
		//ajax submit history
		$("#submit_history").click(function(){
											
			$(".error").hide();
			var hasError = false;
			//var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
			var date = $("#datepicker").val();
			var DateHour = $("#DateHour").val();
			var DateMinute = $("#DateMinute").val();
			if(date == '') {
				//$(".comment_form_error").empty();
				//$("#datepicker").after('<div class="comment_form_error">Select a Date</div>');
				hasError = true;
			}
			
			if(hasError === false) {
				DateMinute = Number(DateMinute)+5;
				if(DateMinute.toString().length < 2) {
					DateMinute = "0"+DateMinute;
				}
				if(DateHour.toString().length < 2) {
					DateHour = "0"+DateHour;
				}
				var d = date.replace(new RegExp("/","g"), "-");
				d += " "+DateHour;
				d += ":"+DateMinute;
				d += ":00";
				d = encodeURI(d);
				$.post('http://www.backstageradio.ch/ajax/get_playlist_history.php', { datetime: d },
				function(){
					getPlaylistHistory(d);
				});
			}
			return false;
		});
		
		//facebook behaviour:
		/*
		var fb_decoded = "http://www.backstageradio.ch/wordpress/#p=755";
		var fb_encoded = "http%3A%2F%2Fwww.backstageradio.ch%2Fwordpress%2F%3Fp%3D749";
		
		$('.fblike').replaceWith('<iframe src="http://www.facebook.com/plugins/like.php?href='+ fb_encoded +'&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" allow="" transparency="true" style="border: medium none; overflow: hidden; width: 450px;" frameborder="0" scrolling="no"></iframe>');
		*/
		/*
		$('.fblike').replaceWith('<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.backstageradio.ch%2Fwordpress%2F%3Fp%3D749&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" allow="" transparency="true" style="border: medium none; overflow: hidden; width: 450px;" frameborder="0" scrolling="no"></iframe>');
		*/
		
		//fancybox functions:
		jQuery.noConflict();

		jQuery(function(){

		jQuery.fn.getTitle = function() {
			var arr = jQuery("a.fancybox");
			jQuery.each(arr, function() {
				var title = jQuery(this).children("img").attr("title");
				jQuery(this).attr('title',title);
			});
		};

		// Supported file extensions
		var thumbnails = 'a:has(img)[href$=".bmp"],a:has(img)[href$=".gif"],a:has(img)[href$=".jpg"],a:has(img)[href$=".jpeg"],a:has(img)[href$=".png"],a:has(img)[href$=".BMP"],a:has(img)[href$=".GIF"],a:has(img)[href$=".JPG"],a:has(img)[href$=".JPEG"],a:has(img)[href$=".PNG"]';

	
		jQuery(thumbnails).addClass("fancybox").attr("rel","fancybox").getTitle();
			
			//fancybox settings for all images:
			jQuery("a.fancybox").fancybox({
				'imageScale': true,
				'padding': 10,
				'zoomOpacity': true,
				'zoomSpeedIn': 500,
				'zoomSpeedOut': 500,
				'zoomSpeedChange': 300,
				'overlayShow': true,
				'overlayColor': "#ffffff",
				'overlayOpacity': 0.4,
				'enableEscapeButton': true,
				'showCloseButton': true,
				'hideOnOverlayClick': true,
				'hideOnContentClick': false,
				'frameWidth':  560,
				'frameHeight':  340,
				'callbackOnStart': null,
				'callbackOnShow': null,
				'callbackOnClose': null,
				'centerOnScroll': true,
				'easingIn': "easeOutBack",
				'easingOut': "easeInBack",
				'easingChange': "easeInOutQuart"
			});
			
			//fancybox settings for mx3-iframe:
			jQuery("a.mx3_iframe").fancybox({
				'imageScale': true,
				'padding': 10,
				'zoomOpacity': true,
				'zoomSpeedIn': 500,
				'zoomSpeedOut': 500,
				'zoomSpeedChange': 300,
				'overlayShow': true,
				'overlayColor': "#ffffff",
				'overlayOpacity': 0.4,
				'enableEscapeButton': true,
				'showCloseButton': true,
				'hideOnOverlayClick': true,
				'hideOnContentClick': false,
				'frameWidth':  1000,
				'frameHeight':  600,
				'callbackOnStart': null,
				'callbackOnShow': null,
				'callbackOnClose': null,
				'centerOnScroll': true,
				'easingIn': "easeOutBack",
				'easingOut': "easeInBack",
				'easingChange': "easeInOutQuart"
			});
			
			//fancybox settings for song suggestion:
			jQuery("a.suggest_iframe").fancybox({
				'imageScale': true,
				'padding': 10,
				'zoomOpacity': true,
				'zoomSpeedIn': 500,
				'zoomSpeedOut': 500,
				'zoomSpeedChange': 300,
				'overlayShow': true,
				'overlayColor': "#ffffff",
				'overlayOpacity': 0.4,
				'enableEscapeButton': true,
				'showCloseButton': true,
				'hideOnOverlayClick': true,
				'hideOnContentClick': false,
				'frameWidth':  500,
				'frameHeight':  400,
				'callbackOnStart': null,
				'callbackOnShow': null,
				'callbackOnClose': null,
				'centerOnScroll': true,
				'easingIn': "easeOutBack",
				'easingOut': "easeInBack",
				'easingChange': "easeInOutQuart"
			});
		});
	});
});