/**
 *  Plugin which renders the YouTube channel videos list to the page
 *  @author:  H. Yankov (hristo.yankov at gmail dot com)
 *  @version: 1.0.0 (Nov/27/2009)
 *    http://yankov.us
 *  
 *  Modified my Dan Hounshell (Jan/2010) to work for favorites or 
 *  uploads feeds and simplified output 
 */

 var __mainDiv;
 var __preLoaderHTML;
 var __opts;

 function __jQueryYouTubeChannelReceiveData(data) {

     var cnt = 0;

     $.each(data.feed.entry, function(i, e) {
         if (cnt < __opts.numberToDisplay) {
             var parts = e.id.$t.split('/');
             var videoId = parts[parts.length-1];
             var out = '<div class="video"><a rel="' + 
                  videoId + '" class="ytLink"><img src="http://i.ytimg.com/vi/' + 
                  videoId + '/0.jpg"/></a><br /><a style="font-size:11px;font-style:normal;line-height:13px;" rel="' +
                  videoId + '" class="ytLink"><span rel="' + 
                  videoId + '" style="font-size:11px;font-style:normal;line-height:13px;">' + e.title.$t + '</span></a><p>';
             if (!__opts.hideAuthor) {
                 out = out + 'Author: ' + e.author[0].name.$t + '';
             }
             out = out + '</p></div>';
             __mainDiv.append(out);
             cnt = cnt + 1;
         }
     });
            
    // Open in new tab?
    if (__opts.linksInNewWindow) {
        $(__mainDiv).find("li > a").attr("target", "_blank");
    }
    
    // Remove the preloader and show the content
    $(__preLoaderHTML).remove();
    __mainDiv.show();

	/* !CREATE VIDEO PLAYER */
	$("a.ytLink").each(function(){
		$(this).css("cursor", "pointer");
		$(this).click(function(){
			ytVid = $(this).attr("rel");
			//alert("yo "+ytVid);
			$("#youtubevideos").prepend("<div id='ytPlayer'><a class='ex1' href='#eva.tv' id='ytplrCls'>[X] SULJE</a><div id='ytPlayerInr'><object width='640' height='385'><param name='movie' value='http://www.youtube.com/v/"+ytVid+"&hl=en_US&fs=1&'></param><param name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='http://www.youtube.com/v/"+ytVid+"&hl=en_US&fs=1&' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='640' height='385'></embed></object></div></div>");
			$("#ytPlayer").draggable({cancel:"#ytPlayerInr", containment: '#innerBody', scroll: false });
			$("#ytplrCls").click(function(){
				$("#ytPlayer").remove();
			});
			
		});
	});
	
}

           
(function($) {
    $.fn.youTubeChannel = function(options) {
        var videoDiv = $(this);

        $.fn.youTubeChannel.defaults = {
           //userName: null,
           // channel: "uploads", //options are favorites or uploads
           loadingText: "Loading..."
           // numberToDisplay: 3,
           // linksInNewWindow: true,
           //hideAuthor: true
        }

        __opts = $.extend({}, $.fn.youTubeChannel.defaults, options);

        return this.each(function() {
            if (__opts.userName != null) {
                videoDiv.append("<div id=\"channel_div\"></div>");
                __mainDiv = $("#channel_div");
                __mainDiv.hide();

                __preLoaderHTML = $("<p class=\"loader\">" + 
                    __opts.loadingText + "</p>");
                videoDiv.append(__preLoaderHTML);

                // TODO: Error handling!
                $.ajax({
                    url: "http://gdata.youtube.com/feeds/base/users/"+__opts.userName + "/"+__opts.channel+"?alt=json",
                    cache: true,
                    dataType: 'jsonp',                    
                    success: __jQueryYouTubeChannelReceiveData
                });
            }
        });
    };
})(jQuery);
