 /****************Объект интересных событий************************************************/

function eventsFuncs (data){
	this.obj = 0;
	this.nEvents = 0;
	this.jSData = 0;
	if(data){
		this.jSData = data;
	}
}

eventsFuncs.prototype = {

	refresh:		function(){
						var t = this;
						$.post('/events/top/5', function(data){
							t.jSData = data;
							t.show();								
						});
					},
	
	setData:		function(data){
						var t = this;
						t.jSData = data;
						t.no = 1;
					},
	show:			function(obj){
						var t=this;
						if (!t.obj) {
							this.obj = obj;
						}
						if (!t.jSData) {
							t.refresh();
							return;
						}
						var data = t.jSData;
						var h = '';
						h += "<span class='blockTitle event-color' style='position:relative;float:left;'>";
						h += "интересные ";
						h += "<a href='/#streams/33'>СОБЫТИЯ</a>";
						h += "</span>"
						h += "<span class='today'>сегодня " + data.today.split('.')[0] + " " + months[data.today.split('.')[1]-1].substr(0, 3) + ".</span>";
						h += "<br clear='All'/>";
						h += "<div class='eventLayout'>";
						
						h += "<span class='imagePart'>";
						for (i = 0; i < data.events.length; i++) {
							h += "<img src='/media/images/events/id_" + data.events[i].id + "/cover.jpg'";
							if(i==0)
								h += " style='z-index:1;'";
							h += "id='e" + i + "'";
							h += "/>";
						}
						h += "<span class='eventInfo'>";
						var date = data.events[0].time;
						h += "<span class='topPart'></span>";
						h += "<span class='calender'>";
						h += "<span class='month'>";
						h += months[date.split('.')[1]-1].substr(0, 3); 
						h += "</span>";
						h += "<span class='day'>";
						h += date.split('.')[0]; 
						h += "</span>";
						h += "</span>";
						h += "<span class='eventTitle'>";
						h += data.events[0].name;
						h += "</span>";
						h += "<span class='eventPlace'>";
						h += data.events[0].place + ", ";
						h += data.events[0].city;
						h += "</span>";
						h += "<span class='bottomPart'>";
						//h += "<a href='javascript:;' class='go_event'></a>";
					/*	h += "<span class='voices'>";
						h += data.events[0].ncomments;
						h += "</span>";
						h += "<span class='people'>";
						h += data.events[0].people + " идут";
						h += "</span>";*/
						h += "</span>";
						h += "</span>";
						h += "</span>";
						h += "<span class='menuPart'>";
						for(i=0;i<data.events.length;i++){
							var date = data.events[i].time;
							h += "<a href='/#posts/" + data.events[i].uid + "' class='menuItem";
							if(i==0){
								h += " active";
							}
							h += "' id='eb" + i + "' ";
							h += ">";
							h += "<span class='calender'>";
							h += "<span class='month'>";
							h += months[date.split('.')[1]-1].substr(0, 3); 
							h += "</span>";
							h += "<span class='day'>";
							h += date.split('.')[0]; 
							h += "</span>";
							h += "</span>";
							h += "<span class='eventTitle'>";
							h += data.events[i].name;
							h += "</span>";
							h += "<span class='eventPlace'>";
							h += data.events[i].place + ", ";
							h += data.events[i].city;
							h += "</span>";
							h += "</a>";
						}
						h += "</span>";
						
						h += "</div>";
						$(t.obj).html(h);
						$(".event-block .menuItem").bind("mouseover", function(){
							id = this.id.substr(2, this.id.length);
							$(".event-block img").css("display", "none");
							$(".event-block #e" + id).css("display", "block");
							$(".event-block .active").removeClass("active");
							$(this).addClass("active");
							var date = data.events[id].time;
							h = "";
							h += "<span class='topPart'></span>";
							h += "<span class='calender'>";
							h += "<span class='month'>";
							h += months[date.split('.')[1]-1].substr(0, 3); 
							h += "</span>";
							h += "<span class='day'>";
							h += date.split('.')[0]; 
							h += "</span>";
							h += "</span>";
							h += "<span class='eventTitle'>";
							h += data.events[id].name;
							h += "</span>";
							h += "<span class='eventPlace'>";
							h += data.events[id].place + ", ";
							h += data.events[id].city;
							h += "</span>";
							h += "</span>";
							h += "<span class='bottomPart'>";
						/*	h += "<a href='javascript:;' class='go_event'></a>";
							h += "<span class='voices'>";
							h += data.events[id].ncomments;
							h += "</span>";
							h += "<span class='people'>";
							h += data.events[id].people + " идут";
							h += "</span>";*/
							h += "</span>";
							$(".event-block .eventInfo").html(h);
						});
						
					}
}

function events_page_show(data,page){
	var h = '';

	h += '<br clear="all"/>';
	h += "<span class='music-bg stream-h'> События </span>";
						if(data['isLogin'])
							h += '<span class="stream-h" style="float:right;"><a href="/#events/addevent"> Добавить событие </a></span>';
						h += '<br clear="all"/>';
						h += '<br/>';
						if(data.events.length > 10) {
							h += '<div style="color:#000">';
							for(var i=1; i <=Math.ceil(data.events.length/10); i++){
								if(i == (page + 1))
									h += '<span class="commentpage_active">'+i+'</span>';
								else
									h += '<span class="commentpage" id="'+i+'">'+i+'</span>';
							}
							h += '</div>';
						};
						if(data.events.length -10 * page < 10){
							var top = data.events.length;
						}
						else{
							var top = 10 * page+10;
						};
						for(var i= 10 * page; i < top; i++)
						{
							h += '<a class="streamItem" href="/#events/'+data.events[i]['id']+'">';
							h += '<table>';
							h += '<tr>';
							h += '<td class="streamItemTitle">'+data.events[i]['name']+'</td>';
							h += '</tr>';
							h += '<td class="streamItemDescr">'+data.events[i]['place']+'</td>';
							h += '</table>';
							h += '</a>';
						}	
						$('#events').html(h);
						$('.commentpage').bind('click',function(){
							$('#leftContent').html(events_page_show(data,($(this).attr('id')-1)));
						});
}
function events_page(data)
{

	var h = "<div class='trackBlock' style='overflow:hidden;'>";							
    h += "</div>";	
	h += "<div id='performersToLike'>";						
	h += "</div>";	
	$('#dynamicRightContent').html(h);
	h = "<div id='events' class='event-block'>";						
	h += "</div>";
	$('#leftContent').html(h);
	events_page_show(data,0);
//	topTen.show('#dynamicRightContent .trackBlock');
	perfToLike = new performersToLikeFuncs();
	perfToLike.show('#performersToLike');	
}
function eventshow_page(data){
	var h='';
	if((data['isLogin']==data.event[0]['uid'])||(data['isAdmin']==1))
	h += '<span class="stream-h" style="float:right;"><a href="/#events/editevent/'+data['event'][0]['id']+'"> Редактировать </a></span>';
	h += '<br clear="all"/>';
	h += '<div class="articleItem">'
	h += '<img src="'+data.event[0]['image']+'" align="center" style="float:left;"/>';
	h += '<div class="streamItemTitle">'+data.event[0]['name'];
	h += '<div class="vote"> Текущий рейтинг: '+data.event[0]['rate']+'</div>';
	h += '</div>';
	if (data['isLogin']) {
		if(data['isVote']==0)
			h += '<div class="voteButton">Голосовать за пост</div>';
	}
	h += '<br/>';
	h += '<div class="streamItemDescr">'+data.event[0]['descr']+'</div>';
	h += '</div>';
	h += '<div class="comments" style="color:#000"></div>';
	$('#leftContent').html(h);
	comments = new commentsFuncs(4, data.event[0]['id'], '.comments');			
	comments.show(1);
	$('.voteButton').bind('click',function(){
		$.post('/stream/addArticleVote/',{type:4,pid:data.event[0]['id'],uid:data['isLogin']},
			function(inf){
				$('.vote').html('Текущий рейтинг: '+inf);
				$('.voteButton').html('Спасибо. Ваш голос учтён.');
				$('.voteButton').unbind('click');
				$('.voteButton').addClass('voteButtonInn');
				$('.voteButton').removeClass('voteButton');
		});
	});
	topTen.show('#dynamicRightContent .trackBlock');
	perfToLike = new performersToLikeFuncs();
	perfToLike.show('#performersToLike');
	var h = "<div class='trackBlock' style='overflow:hidden;'>";							
    h += "</div>";	
	h += "<div id='performersToLike'>";						
	h += "</div>";	
	$('#dynamicRightContent').html(h);
}

function add_event_page(data){
	var adminsArray=new Array();
	adminsArray['id']=new Array();
	adminsArray['nick']=new Array();
	var h = "<div class='trackBlock' style='overflow:hidden;'>";							
    h += "</div>";	
	h += "<div id='performersToLike'>";						
	h += "</div>";	
	$('#dynamicRightContent').html(h);
	h = '<div class="topMenu">';
    h += '<a href="/#events" class="menuItem general big") no-repeat top left;">События</a>';
    h += '</div>';
	h += '<br clear="all"/>'
	h += "<span class='music-bg stream-h'> Новое событие </span>";
	h += '<div class="addStream">';
	h += '<form id="streamForm" action="">';
	h += 'Название события:<br/>';
	h += '<input class="addInput" name="StreamName" id="StreamName" type="text"/><br/>';
	h += 'Иконка события:<br/>';
	h += '<input  class="addInput" id="StreamFile" name="StreamFile" type="file"/><br/>';
	h += 'Описание события:<br/>';
	h += '<textarea id="StreamDescr" name="StreamDescr" style="width:630px" class="tinymce"></textarea><br/>';
	h += 'Назначить модераторов:<br/>';
	h += 'Введит НикНейм пользователя: <input class="adminInput" type="text"/>';
	h += '<input class="adminButton" type="button" value="+"/><br/>';
	h += '<div class="admins"></div>';
	h += '<input id="addButton" type="button" value="Добавить"/>'
	h += '<span class="divOk"></span>';
	h += '</form>';
	h += '</div>';	
	$('#leftContent').html(h);
	$('.adminButton').bind('click',function(){
		if($('.adminInput').val() != ''){
			$.post(
				'/stream/addAdmin/',
				{
					nick:$('.adminInput').val()
				},
				function(admins){
					var flag=0;
					
					if (admins != 0) {
						for(var i = 0; i < adminsArray['id'].length; i++){
							if(admins['nick'][0]['id']==adminsArray['id'][i]){
								$('.divOk').html('Пользователь повторно добавлен не будет.');
								flag=1;
							}
						}
						if(flag!=1){
							var count=adminsArray.length;
							adminsArray['id'].push(admins['nick'][0]['id']);
							adminsArray['nick'].push(admins['nick'][0]['nick']);
							var h='';
							for (var i = 0; i < adminsArray['id'].length; i++) {
								h += '<div class="adminItem" id="'+adminsArray['id'][i]+'">' + adminsArray['nick'][i] + '<span class="delAdmin"> Удалить</span></div>';
							}
							$('.admins').html(h);
							$('.divOk').html('');	
							$('.delAdmin').bind('click',function(){
								var uid=$(this).parent().attr('id');
								var num=-1;
								for(var i=0; i < adminsArray['id'].length; i++){
									if(adminsArray['id'][i]==uid)	num=i;
								}
								if(num != -1){
									adminsArray['id'].splice(num,1);
									adminsArray['nick'].splice(num,1);
									$(this).parent().remove();
								}
							});						
						}
					}
					else{
						$('.divOk').html('Пользователя с таким именем не существует.');
					}
				}
			);
		}
		else{
			$('.divOk').html('Введите nickName');
		}
	});
	$('#addButton').bind('click',function(){
		if(($('#StreamName').val()!='')&&($('#StreamDescr').val()!=''))
		{
			if (adminsArray['id'].length != 0) {
				var adminStr = '{';
				for (var i = 0; i < adminsArray['id'].length; i++) {
					adminStr += '"' + i + '":' + adminsArray['id'][i];
					if(i != adminsArray['id'].length -1) 
					adminStr += ',';
				}
				adminStr += '}';
			}
			else
			var adminStr=0;
			$.post('/events/addEventSubmit/',
			{
				EventName:$('#StreamName').val(),
				EventDescr:$('#StreamDescr').val(),
				UserId:data['isLogin'],
				admins:adminStr
			},
			function(data){
				document.location.href='/#events/'+data; 
			});
			$('.divOk').html('');	
		}
		else{
			$('.divOk').html('Все поля должны быть заполнены.')
		}
	});
	/*
	 * tinyMcE
	 */
	$().ready(function() {
		$('textarea.tinymce').tinymce({
			// Location of TinyMCE script
			script_url : '/media/js/tiny_mce/tiny_mce.js',

			// General options
			theme : "advanced",
			plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
			// Theme options
			theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull",
			theme_advanced_buttons2 : "cut,copy,paste|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup",
			theme_advanced_buttons3 : "",//"tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
			theme_advanced_buttons4 : "",//"insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak",
			theme_advanced_toolbar_location : "top",
			theme_advanced_toolbar_align : "left",
			theme_advanced_statusbar_location : "bottom",
			theme_advanced_resizing : false

		});
	});

	topTen.show('#dynamicRightContent .trackBlock');
	perfToLike = new performersToLikeFuncs();
	perfToLike.show('#performersToLike');
}

function edit_event_page(data){
	var adminsArray=new Array();
	adminsArray['id']=new Array();
	adminsArray['nick']=new Array();
		
	h = "<div class='trackBlock' style='overflow:hidden;'>";							
    h += "</div>";	
	h += "<div id='performersToLike'>";						
	h += "</div>";	
	$('#dynamicRightContent').html(h);
	h = '<div class="topMenu">';
    h += '<a href="/#events" class="menuItem general big") no-repeat top left;">События</a>';
    h += '</div>';
	h += '<br clear="all"/>'
	h += "<span class='music-bg stream-h'> Редактировать событие </span>";
	h += '<div class="addStream">';
	h += '<form id="streamForm" action="">';
	h += 'Название события:<br/>';
	h += '<input class="addInput" name="StreamName" id="StreamName" type="text"';
	h += 'value="'+data['event'][0]['name']+'"/><br/>';
	h += 'Иконка события:<br/>';
	h += '<input  class="addInput" id="StreamFile" name="StreamFile" type="file"/><br/>';
	h += 'Описание события:<br/>';
	h += '<textarea id="StreamDescr" style="width:630px;" name="StreamDescr" class="tinymce">';
	h += data['event'][0]['descr']
	h += '</textarea><br/>';
	h += 'Назначить модераторов:<br/>';
	h += 'Введит НикНейм пользователя: <input class="adminInput" type="text"/>';
	h += '<input class="adminButton" type="button" value="+"/><br/>';
	h += '<div class="admins"></div>';
	h += '<input id="addButton" type="button" value="Сохранить"/>'
	h += '<span class="divOk"></span>';
	h += '</form>';
	h += '</div>';	
	$('#leftContent').html(h);
	for(var i=0;i<data['admins'].length;i++){
		adminsArray['id'].push(data['admins'][i]['id']);
		adminsArray['nick'].push(data['admins'][i]['nick']);
	}
	var h='';
	for (var i = 0; i < adminsArray['id'].length; i++) {
		h += '<div class="adminItem" id="'+adminsArray['id'][i]+'">' + adminsArray['nick'][i] + '<span class="delAdmin"> Удалить</span></div>';
	}
	$('.admins').html(h);
	$('.divOk').html('');	
	$('.delAdmin').bind('click',function(){
		var uid=$(this).parent().attr('id');
		var num=-1;
		for(var i=0; i < adminsArray['id'].length; i++){
			if(adminsArray['id'][i]==uid)	num=i;
		}
		if(num != -1){
			$.post('/stream/delAdmin/',{
										uid:adminsArray['id'][num],
										pid:data['id']
									},
									function(){});
									adminsArray['id'].splice(num,1);
									adminsArray['nick'].splice(num,1);
									$(this).parent().remove();
			adminsArray['id'].splice(num,1);
			adminsArray['nick'].splice(num,1);
			$(this).parent().remove();
		}
	});
	$('.adminButton').bind('click',function(){
		if($('.adminInput').val() != ''){
			$.post(
				'/stream/addAdmin/',
				{
					nick:$('.adminInput').val()
				},
				function(admins){
					var flag=0;
					
					if (admins != 0) {
						for(var i = 0; i < adminsArray['id'].length; i++){
							if(admins['nick'][0]['id']==adminsArray['id'][i]){
								$('.divOk').html('Пользователь повторно добавлен не будет.');
								flag=1;
							}
						}
						if(flag!=1){
							var count=adminsArray.length;
							adminsArray['id'].push(admins['nick'][0]['id']);
							adminsArray['nick'].push(admins['nick'][0]['nick']);
							var h='';
							for (var i = 0; i < adminsArray['id'].length; i++) {
								h += '<div class="adminItem" id="'+adminsArray['id'][i]+'">' + adminsArray['nick'][i] + '<span class="delAdmin"> Удалить</span></div>';
							}
							$('.admins').html(h);
							$('.divOk').html('');	
							$('.delAdmin').bind('click',function(){
								var uid=$(this).parent().attr('id');
								var num=-1;
								for(var i=0; i < adminsArray['id'].length; i++){
									if(adminsArray['id'][i]==uid)	num=i;
								}
								if(num != -1){
									$.post('/stream/delAdmin/',{
										uid:adminsArray['id'][num],
										pid:data['id']
									},
									function(){alert("2")});
									adminsArray['id'].splice(num,1);
									adminsArray['nick'].splice(num,1);
									$(this).parent().remove();
								}
							});						
						}
					}
					else{
						$('.divOk').html('Пользователя с таким именем не существует.');
					}
				}
			);
		}
		else{
			$('.divOk').html('Введите nickName');
		}
	});
	$('#addButton').bind('click',function(){
		if(($('#StreamName').val()!='')&&($('#StreamDescr').val()!=''))
		{
			if (adminsArray['id'].length != 0) {
				var adminStr = '{';
				for (var i = 0; i < adminsArray['id'].length; i++) {
					adminStr += '"' + i + '":' + adminsArray['id'][i];
					if(i != adminsArray['id'].length -1) 
					adminStr += ',';
				}
				adminStr += '}';
			}
			else
			var adminStr=0;
			$.post('/events/editEventSubmit/',
			{
				StreamName:$('#StreamName').val(),
				StreamDescr:$('#StreamDescr').val(),
				StreamId:data['id'],
				admins:adminStr
			},
			function(){
				document.location.href='/#events/'+data['id']; 
			});
		}
		else{
			$('.divOk').html('Все поля должны быть заполнены.')
		}
	});
	/*
	 * tinyMcE
	 */
	$().ready(function() {
		$('textarea.tinymce').tinymce({
			// Location of TinyMCE script
			script_url : '/media/js/tiny_mce/tiny_mce.js',

			// General options
			theme : "advanced",
			plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
			// Theme options
			theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull",
			theme_advanced_buttons2 : "cut,copy,paste|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup",
			theme_advanced_buttons3 : "",//"tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
			theme_advanced_buttons4 : "",//"insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak",
			theme_advanced_toolbar_location : "top",
			theme_advanced_toolbar_align : "left",
			theme_advanced_statusbar_location : "bottom",
			theme_advanced_resizing : false

		});
	});

	topTen.show('#dynamicRightContent .trackBlock');
	perfToLike = new performersToLikeFuncs();
	perfToLike.show('#performersToLike');
}
