(function(){

var $ = window.jQuery;

var projects = {
	1: {name: 'А1News', url: 'http://news.a1tv.ru',
		settings: {
			button: {background: '#000', color: '#fff', logo: 'http://files.a1tv.ru/lib/img/aone_logo_17x17_000000.png'},
			list: {background: '#000', color: '#fff', logo: 'http://files.a1tv.ru/lib/img/aone_logo_17x17_000000.png'}
		}
	},
	2: {name: 'Блоги "Острова"', url: 'http://ostrova.a1tv.ru'},
	3: {name: 'Форум', url: 'http://forum.a1tv.ru'},
	4: {name: 'DIY', url: 'http://diy.a1tv.ru'},
	5: {name: 'A-ONE Records', url: 'http://records.a1tv.ru'},	
	8: {name: 'Тариф "Альтернатива', url: 'http://tarif-alternativa.ru'},
	10: {name: 'RAMP', url: 'http://ramp.a1tv.ru'},
	12: {name: 'Магазин mp3', url: 'http://mp3.a1tv.ru'}	
};

var aoneProjects = window.aoneProjects = function(projectId, nodeId) {
	return (this instanceof aoneProjects)
		? this.__construct(projectId, nodeId)
		: new aoneProjects(projectId, nodeId);	
};

aoneProjects.prototype = {
	__construct: function(projectId, nodeId) {
		var _this = this;
		this._settings = projects[projectId].settings;
		var html = [];
		html.push('<div style="font-size:12px;font-family:Arial;position:relative;">');
		if ($.browser.msie) {
			html.push('<div style="cursor:pointer;zoom:1;float:right;">');
		} else {
			html.push('<div style="cursor:pointer;">');
		}		
		html.push('<div style="padding:1px 16px 2px 9px;color:'+this._settings.button.color+';background-color:'+this._settings.button.background+';">'
					+ '<div style="padding:0 0 1px 24px;font-weight:bold;background: url('+this._settings.button.logo+') no-repeat;">Проекты A-ONE</div/>'
				+ '</div>'
				+ '<div style="font-size:1px;line-height:1px;overflow:hidden;margin:0 1px;border-top:solid 1px '+this._settings.button.background+';"/>'
			+ '</div>'
			+ '<div style="margin:10px;display:none;">'
				+ '<div style="font-size:1px;line-height:1px;overflow:hidden;margin:0 1px;border-top:solid 1px '+this._settings.list.background+';"/>'
				+ '<div style="padding:5px 35px 20px 10px;color:'+this._settings.button.color+';background-color:'+this._settings.list.background+';">'
					+ '<div style="padding:0 0 16px 0;">'
						+ '<div style="padding:0 0 1px 24px;font-weight:bold;background: url('+this._settings.list.logo+') no-repeat;">Проекты A-ONE</div/>'
					+ '</div>'				
					+ '<div style="padding:0 0 0 24px;line-height:21px;">');
		for (var i in projects) {
			html.push('<a href="'+projects[i].url+'" style="color:'+this._settings.button.color+';">'+projects[i].name+'</a><br/>');
		}		
		html.push('</div>'
				+ '</div>'
				+ '<div style="font-size:1px;line-height:1px;overflow:hidden;margin:0 1px;border-top:solid 1px '+this._settings.list.background+';"/>'
			+ '</div>'
			+ '</div>');
		
		this._container = $(html.join(''));
		html = null;
		
		var innerClick = true;
		
		var outsideClick = function(){			
			if (!innerClick) close();						
		};
		var open = function() {			
			innerClick = false;
			_this._container._button.hide();
			_this._container._list.show();			
			$(window).click(outsideClick);			
			return false;
		};
		var close = function() {			
			_this._container._button.show();
			_this._container._list.hide();
			$(window).unbind('click', outsideClick);
		};
		
		var timeout;
		
		this._container._button = this._container.children().eq(0)
			.click(open);
		this._container._list = this._container.children().eq(1)
			.click(function(){
				innerClick = true;
			})
			.hover(function(){
				window.clearTimeout(timeout);
			}, function(){
				timeout = window.setTimeout(close, 500);
			});		
		
		this._container.appendTo('#'+nodeId);
	}
};

})()