﻿var Videos = {
	init: function(data){
		/*var feed = data.feed;
		var entries = feed.entry || [];
		var list = $("videos");
		if(list){
			Videos.list = new YouTube(list, entries);
		}
		var listdated = $("videos-dated");
		if(listdated){
			Videos.list = new YouTubeDated(listdated, entries);
		}
		swfobject.embedSWF("http://www.youtube.com/v/" + Videos.list.items[0].get("ytid") + "&enablejsapi=1&playerapiid=ytplayer", "videoplayer", "539", "451", "8", null, null, { allowScriptAccess: "always" }, { id: "ytplayer" });
		*/
	},
	setPlayer: function(player){
		Videos.list.items.each(function(el){
			el.addEvent("click", function(e){
				e.stop();
				player.loadVideoById($(this).get("ytid"));
				window.location.hash = "ytplayer";
			});
		});
	}
};
var YouTube = new Class({
	initialize: function(el, entries){
		el.set("html", "");
		entries.each(function(entry){
			el.adopt(
				new Element("li").adopt(
					new Element("a", { "title": entry.title.$t, "href": entry.link[0].href, "ytid": entry.id.$t.replace("http://gdata.youtube.com/feeds/videos/", "") }).adopt(
						new Element("img", { "src": entry.media$group.media$thumbnail[0].url }),
						new Element("span", { "class": "overlay" }),
						new Element("span", { "class": "title", "html": entry.title.$t })
					)
				)
			);
		});
		this.items = el.getElements("a");
	}
});
var YouTubeDated = new Class({
	initialize: function(el, entries){
		this.items = [];
		var dated = new Hash();
		entries.each(function(entry, i){
			var date = /\d{4}[-]\d{1,2}[-]\d{1,2}/.exec(entry.published.$t)[0];
			if(!dated.has(date)){
				dated.include(date, new Array());
			}
			dated.get(date).push(entry);
		});
		dated.each(function(arr, i){
			var list = new Element("ul", { "class": "videos clearfix" });
			el.adopt(
				new Element("h4", { "text": i }),
				list
			);
			var ytl = new YouTube(list, arr);
			this.items.combine(ytl.items);
		}.bind(this));
	}
});
function onYouTubePlayerReady(playerId) {
	Videos.setPlayer($("ytplayer"));
}