jQuery(document).ready(function($) {
	console.log('media startup');
	
	if ($('#media-tabs a[rel="comments"]').parent().hasClass('selected')) {
		$('#comments').show();
        $('#media-sub-menu').hide();
        $('#media-item-list').hide();
	} else {
		$('#comments').hide();
        $('#media-sub-menu').show();
        $('#media-item-list').show();	
	
	}
	
    //$('#comments').hide();

    // tab events
    $('#media-tabs a').bind('click', function (e) {

        var action = $(this).attr('rel');
        getItems(action, '');

        // reset classes
        $(this).parent().siblings().removeClass('selected');
        $(this).parent().addClass('selected');

        e.preventDefault();
        return false;
    });

    // search
    $('#media-search').bind('keydown', function (e) {
        if (e.keyCode == 13) {
            getItems('search', $(this).val());
            return false;
        }
    });

    // sub menu (jQuery delegate saves the day)
    $('#media-sub-menu').delegate('a', 'click', function (e) {

        e.preventDefault();

        var rel = $(this).attr('rel').split(',');
        var action = rel[0];
        var sub = rel[1];

        getItems(action, sub);

        // reset classes
        $(this).parent().siblings().removeClass('selected');
        $(this).parent().addClass('selected');


        return false;
    });

    $('#media-item-list').delegate('a.media-person', 'click', function (e) {

        e.preventDefault();

        var action = 'person';
        var sub = $(this).attr('rel');

        getItems(action, sub);

        return false;
    });

    $('#media-item-list').delegate('a.media-tag', 'click', function (e) {

        e.preventDefault();

        var action = 'tag';
        var sub = $(this).attr('rel');

        getItems(action, sub);

        return false;
    });


    var lastAction = '';
    var lastSubAction = '';

    function getItems(action, sub) {

      console.log(action, sub);

      if (action == 'comments') {
        $('#comments').show();
        $('#media-sub-menu').hide();
        $('#media-item-list').hide();
      } else { 

        $.ajax({
            url: "/api/media/mediaquery.ashx",
            type: "GET",
            data: ({ action: action, subaction: sub }),
            dataType: "json",
            success: function (data) {
              
              
                // always hide
                $('#comments').hide();
                $('#media-item-list').show();
                $('#media-sub-menu').show();

                // insert items
                if (data.items.length > 0) {
                    var html = '';
                    for (var i in data.items) {
                        var item = data.items[i];
                        html += '<div class="grid_2">' +
                                    '<a class="media-item" href="' + item.url.replace('http://www.dts.edu', '') + '">' +
                                        '<img src="/api/media/mediaimage.ashx?MediaItemID=' + item.id + '" />' +
                                        '<span class="title">' + item.title + '</span>' +
                                        '<span class="date">' + item.date + '</span>' +
                                    '</a>' +
                                '</div>';
                    }
                    $('#media-item-list').html(html);
                }

                // or people or tags?!
                if (data.persons.length > 0) {
                    var html = '';
                    for (var i in data.persons) {
                        var item = data.persons[i];
                        html += '<div class="grid_2">' +
                                    '<a class="media-person" href="/media/persons/?personid=' + item.id + '" rel="' + item.id + '">' +
                                        item.fullname +
                                    '</a>' +
                                '</div>';
                    }
                    $('#media-item-list').html(html);
                }
                // or people or tags?!
                if (data.tags.length > 0) {
                    var html = '';
                    for (var i in data.tags) {
                        var item = data.tags[i];
                        html += '<div class="grid_2">' +
                                    '<a class="media-tag" href="/media/persons/?Tag=' + item.name + '" rel="' + item.name + '">' +
                                        item.name + ' (' + item.count + ')' +
                                    '</a>' +
                                '</div>';
                    }
                    $('#media-item-list').html(html);
                }


                // resize areas
                switch (action) {
                    case 'chapel':
                    case 'conference':
                    case 'lecture':
                    case 'browse':
                       
                        //$('#media-sub-menu').show();
                        $('#media-item-list').removeClass('full');

                        break;
                    case 'profile':
                    case 'search':

                        $('#media-sub-menu').html('');
                        $('#media-item-list').addClass('full');


                        break;
                }

                if (lastAction != action) {
                    switch (action) {
                        case 'comments': 
                          
                        
                        case 'chapel':
                        case 'conference':
                        case 'lecture':

                            // build sub menu
                            var menuHtml = '<ul>';
                            for (var i in data.series) {
                                var item = data.series[i];
                                menuHtml += '<li>' +
                                                '<a href="/media/series/?SeriesID=' + item.id + '" rel="' + action + ',' + item.id + '">' + item.name + '</a>' +
                                            '</li>';
                            }
                            menuHtml += '</ul>';

                            $('#media-sub-menu').html(menuHtml);
                            break;

                        case 'profile':
                            //
                            break;

                        case 'search':
                            // 
                            break;

                        case 'browse':
                            // custom!

                            $('#media-sub-menu').html(
                                '<ul>' +
                                    '<li><a href="/media/recent/" rel="browse,recent">Recent</a></li>' +
                                    '<li><a href="/media/featured/" rel="browse,featured">Featured</a></li>' +
                                    '<li><a href="/media/popular/" rel="browse,popular">Popular</a></li>' +
                                    '<li><a href="/media/persons/" rel="browse,persons">Speakers</a></li>' +
                                    '<li><a href="/media/tags/" rel="browse,tags">Tags</a></li>' +
                                '</ul>'
                            );


                            break;
                    }
                }

                $('#media-sub-menu a').removeClass('selected');
                console.log(sub, $('#media-sub-menu li:first-child'));

                if (sub != '') {
                    $('#media-sub-menu a[rel=' + action + ',' + sub + ']').parent().addClass('selected');
                } else {
                    //$('#media-sub-menu li:first-child').addClass('selected');
                }




                lastAction = action;
                lastSubAction = sub;

            }
        });
      }

    }



	/*
	// MODAL
	function showModal(id) {

		var scrolledX = document.body.scrollLeft || document.documentElement.scrollLeft || self.pageXOffset;
		var scrolledY = document.body.scrollTop || document.documentElement.scrollTop || self.pageYOffset;

		var screenWidth = document.body.clientWidth || document.documentElement.clientWidth || self.innerWidth;
		var screenHeight = document.body.clientHeight || document.documentElement.clientHeight || self.innerHeight;

		var left = scrolledX + (screenWidth/2 - $(id).width()/2);
		var top = 100; //scrolledY + (screenHeight/2 - $(id).height()/2);
		
		console.log(top, left);

		//centering
		$(id).show().css({
			"position": "absolute",
			"top": top,
			"left": left
		});
		
		//only need force for IE6
		$('#modal-mask').show().css({
			"height": screenHeight
		});
	}

	$('#downloadfile').click(function(e) {
		console.log('show modal');
		
		// show the download window
		showModal('#download-window');
		
		// stop the normal download
		e.preventDefault();
		return false;
	});
	
	$('#modal-mask').click(function() {
		$('#download-window').hide();
	});	
	$('#download-window-close').click(function() {
		$('#download-window').hide();
	});	
	*/	

});
