function changeView(view, largeView)
{
	largeView = typeof(largeView) != "undefined" ? largeView : false;
	$('.music-view-tab').removeClass('active-tab');
	$('#music-view-tab-'+view).addClass('active-tab');
        switch (view)
        {
        case 'front':
                var page = 'search.php';
                var get = {
                        frontpage: 1,
			large_search_box: largeView,
                        ajax: 1
                };

                $('#songsView').fadeOut(100);
                $.get(page, get, function(data) {
                        $('#songsView').html(data);
                        $('#songsView').fadeIn(50);
                });
                break;
        case 'recent':
                var page = 'search.php';
                var get = {
                        recent: 1,
			large_search_box: largeView,
                        ajax: 1
                };

                $('#songsView').fadeOut(100);
                $.get(page, get, function(data) {
                        $('#songsView').html(data);
                        $('#songsView').fadeIn(50);
                });
                break;
        case 'all':
                var page = 'search.php';
                var get = {
                        all: 1,
			large_search_box: largeView,
                        ajax: 1
                };

                $('#songsView').fadeOut(100);
                $.get(page, get, function(data) {
                        $('#songsView').html(data);
                        $('#songsView').fadeIn(50);
                });
                break;
	case 'artist-by-sid':
		var page = 'search.php';
                var get = {
                        artist: 1,
			sid: sid,
			large_search_box: largeView,
                        ajax: 1
                };

                $('#songsView').fadeOut(100);
                $.get(page, get, function(data) {
                        $('#songsView').html(data);
                        $('#songsView').fadeIn(50);
                });
                break;
        case 'search':
                $('#songsView').css('display','none');
                $('#songsView').html('<div id="searchBox"><input id="ajaxSearch" type="text" value="" /></div>');
                $('#songsView').fadeIn(2000);
                $("#ajaxSearch").keyup(function(event){
                        if(event.keyCode == 13){
                                executeSearch($("#ajaxSearch").val());
                        }
                });
                break;
        }
}
function changeActivitiesView(view)
{
	var loadingHTML = '<div><img src="html/images/spinner.gif" /></div>';
	$('.activities-view-tab').removeClass('active-tab');
	$('#activities-view-tab-'+view).addClass('active-tab');
	switch (view)
	{
	case 'facebook':
		$('#site-activities-panel').hide('fast');
		$('#facebook-activities-panel').show('fast');
		break;
	case 'self-only':
		$('#facebook-activities-panel').hide('fast');
		$('#site-activities-panel').show('fast');
		$('#site-activities-panel').html(loadingHTML);
		getActivities(view);
		break;
	case 'friends-only':
		$('#facebook-activities-panel').hide('fast');
		$('#site-activities-panel').show('fast');
		$('#site-activities-panel').html(loadingHTML);
		getActivities(view);
		break;
	case 'all':
		$('#facebook-activities-panel').hide('fast');
		$('#site-activities-panel').show('fast');
		$('#site-activities-panel').html(loadingHTML);
		getActivities(view);
		break;
	}
}
function executeSearch(query)
{
                var page = 'search.php';
                var get = {
                        query: query,
                        ajax: 1
                };

		$('.music-view-tab').removeClass('active-tab');
		$('#music-view-tab-search').addClass('active-tab');
                $('#songsView').fadeOut(100);
                $.get(page, get, function(data) {
                        $('#songsView').html(data);
                        $('#songsView').fadeIn(50);
                });
                $("#ajaxSearch").keyup(function(event){
                        if(event.keyCode == 13){
                                executeSearch($("#ajaxSearch").val());
                        }
                });
}
function getActivities(view) {
        var errorText = '<p>Log in and/or link your account to Facebook to see you and your friends\' latest activities!</p>';
        FB.getLoginStatus(function(response)
        {
                if (response.authResponse)
                {
                        $.get('query.php?command=4', { response: response, uid: user_uid, key: user_key, view: view, limit_num: 5 },
                        function(data) {
                                var message = eval('('+data+')');
                                var stat = message["status"];
                                var word = message["message"];
                                switch(stat)
                                {
                                        case -1:
                                                $('#site-activities-panel').html(word);
                                                break;
                                        case 0:
                                                $('#site-activities-panel').html('<p>No Activities</p>');
                                                break;
                                        case 1:
                                                var activities = eval('('+word+')');
                                                var output = '';
						output += '<div class="activities-inner-view">';
                                                for (var i in activities)
                                                {
							output += '<div class="activity-node">';
                                                        var activity = activities[i];
                                                        output += '<div class="activity-node-song-img"><a href="' + activity.mix_url + '"><img src="' + activity.song_thumb + '" width="50" height="50" /></a></div>';
                                                        output += '<div class="activity-node-fb-img"><a href="http://www.facebook.com/profile.php?id='+activity.user_fb_uid+'"><img src="' + activity.user_photo + '" /></a></div>';
                                                        if (activity.type == 'purchase')
                                                        {
								output += '<div class="activity-node-purchase-string">';
								output += '<span class="activity-node-user-name"><a href="'+activity.user_fb_profile+'">' + activity.user_name + '</a></span>';
                                                                output +=  ' purchased a mix of <span class="activity-node-song-title"><a href="'+activity.song_url+'">' + activity.song_title + '</a></span> by <span class="activity-node-song-artist"><a href="javascript:executeSearch(\''+activity.song_artist+'\')">' + activity.song_artist + '</a></span></div>';
                                                        }
                                                        output += '<div class="activity-node-mix-string">named <span class="activity-node-mix-name"><a class="activity-anchor" href="'+activity.mix_url+'">' + activity.mix_name + '</a></span> '+activity.date+'</div>';
							output += '</div>';
							output += '<div class="clear"></div>';
                                                }
                                                $('#site-activities-panel').html(output);
                                                break;
                                }
                        });
                }
                else
                {
                        $('#site-activities-panel').html(errorText);
                }
        });
}
function getMyPurchases() {
	$.get('query.php?command=6', { uid: user_uid, key: user_key },
	function(data) {
		var message = eval('('+data+')');
		var stat = message["status"];
		var word = message["message"];
		switch(stat)
		{
			case -1:
				if (word == "Invalid User ID")
				{
					$('#my-purchased-mixes-view').html('<p>You must log in or register to purchase mixes!</p>');
				}
				else
				{
					$('#my-purchased-mixes-view').html('<p>'+word+'</p>');
				}
				break;
			case 0:
				$('#my-purchased-mixes-view').html('<p>No Saved Mixes</p>');
				break;
			case 1:
				var purchases = eval('('+word+')');
				var output = '';
				output+='<div class="clear"></div>';	
				output+='<ul>';
				for (var i in purchases)
				{
					var purchase = purchases[i];
					output += '<li>';

					output += '<div><img src="html/images/play.jpg" />';
					output += '<a href="'+purchase.mix_url+'">'+purchase.song_title+' - '+purchase.mix_title+'</a></div>';
					output += '<div style="float: left">'+purchase.date+'</div>';
					output += '<div style="float: right"><a href="'+purchase.download_url+'"><img src="html/images/download-button.png" style="margin-left: 7px;" /></a></div>';
					output += '<div class="clear"></div>';
					output += '</li>';

				}
				output+='</ul>';
				$('#my-purchased-mixes-view').fadeOut('fast', function() {
					$('#my-purchased-mixes-view').html(output);
					$('#my-purchased-mixes-view').fadeIn('slow');
				});
				break;
		}
	});
}
function getMyMixes() {

	$.get('query.php?command=5', { uid: user_uid, key: user_key },
	function(data) {
		var message = eval('('+data+')');
		var stat = message["status"];
		var word = message["message"];
		switch(stat)
		{
			case -1:
				if (word == "Invalid User ID")
				{
					$('#my-saved-mixes-view').html('<p>You must log in or register to save mixes!</p>');
				}
				else
				{
					$('#my-saved-mixes-view').html('<p>'+word+'</p>');
				}
				break;
			case 0:
				$('#my-saved-mixes-view').html('<p>No Saved Mixes</p>');
				break;
			case 1:
				var mixes = eval('('+word+')');
				var output = '';
				output+='<div class="clear"></div>';	
				output+='<ul>';
				for (var i in mixes)
				{
					var mix = mixes[i];
					output += '<li>';

					output += '<div><img src="html/images/play.jpg" />';
					output += '<a href="'+mix.mix_url+'">'+mix.song_title+' - '+mix.mix_title+'</a></div>';
					output += '<div style="float: left">'+mix.date+'</div>';
					output += '<div class="clear"></div>';
					output += '</li>';

				}
				output+='</ul>';
				$('#my-saved-mixes-view').fadeOut('fast', function() {
					$('#my-saved-mixes-view').html(output);
					$('#my-saved-mixes-view').fadeIn('slow');
				});
				break;
		}
	});
}
function displayErrorMessage( text, title, width, height )
{

	if (typeof(width) === "undefined") { width = 550; }
	if (typeof(height) === "undefined") { height = 300; }
	if (typeof(title) === "undefined") { title = "Error"; }
        $verificationDialog = $('<div></div>')
                .html('This dialog will show every time!')
                .dialog({
                        autoOpen: false,
                        title: title,
                        modal: true,
                        resizable: false,
                        show: 'drop',
                        hide: 'drop',
                        width: width,
                        height: height,
                        buttons: {
                        },
                        close: function(event, ui) {
                                }

                });
       $verificationDialog.dialog('open');
       $verificationDialog.html('<div style="text-align: center"><p>'+text+'</p></div>');
}

function ShowMixMeInHelp()
{
	$.get("html/helptext.html", function(data) {
		var dialog = $('<div></div>')
			.html(data)
			.dialog({
				autoOpen: false,
				title: 'Mix Me In Help',
				modal: true,
				resizable: false,
				show: 'drop',
				hide: 'drop',
				width: 640,
				height: 480,
				close: function(event, ui) {
					$(this).empty().remove();
				}
				});	
		dialog.dialog('open');
	});
}

