	g.commonnews=new Object({
		draw_comments:function(n,type,minmax,obj) {
			var html	=	$("<div class='c'>\
				<img src='/i.php?u="+n.u+"&i=-1&s=32'>\
				<div class='name'></div>\
				<div class='text'>"+n.m+"</div>\
				<div class='time'>"+g.common.display_time(n.t)+"</div>\
			</div>\
			");
			var html1	=	$("<a href='#'>"+g.data.u[n.u].n.fu+"</a>");
			html1	=	this.news_item_click(html1,n.u,minmax,"u");			
			
			html.find(".name").append(html1);
			
			return html;
		},	
		news_item_click:function(html,uid,type,obj) {
			if (!uid.toString().match(/^fb/)) {
				if (type=="min" || type=="newsfeed") {
					html.data("obj",{uid:uid,obj:obj}).click(function(e) {
						var obj=$(this).data("obj");
						g.common.change_min_profile(obj.uid,obj.obj);
						
						e.preventDefault();
					});
				}
				else
				{
					html.data("obj",{uid:uid,obj:obj}).click(function(e) {
						var obj=$(this).data("obj");
						g.common.profile_tab(obj.uid,"max",obj.obj);
						e.preventDefault();
					});
				}
			}
			else
			{
				html.click(function(e) {
					g.common.alert(g.common.fb_user_message(uid));
					e.preventDefault();
				});
			}
			return html;
		},		
		draw_news_item : function(n,type,group_classes){
			var obj		=	n.obj;
			if (!g.und(g.data.objects[obj])) {
				var html	=	$("<div>\
					<img src='/i.php?u="+n.u+"&i=-1&s=50'>\
					<div class='news_item'>\
						<div class='name'></div>\
						<div class='text'>"+n.m+"</div>\
					</div>\
				</div>\
				");
				if (!g.und(group_classes)) {
					html.addClass(group_classes);
				}
				var html1	=	$("<a href='#'>"+g.data.u[n.u].n.fu+"</a>");
				html1	=	this.news_item_click(html1,n.u,type,"u");			
				html.find(".name").append(html1);
				if (type=="newsfeed" && obj!="u") {
					var html1	=	$("<a href='#'>"+g.data[obj][n.ou].n.fu+"</a>");
					html1	=	this.news_item_click(html1,n.ou,type,obj);	
					html.find(".name").append(" wrote on ").append(html1);					
				}
			
			
			
				html.find(".news_item").append(this.draw_comment_bar("n",n,type,obj));
				html.find(".news_item").append("<div class='cb'></div>");
			}
			else
			{
			
				html="";
			}
			return html;
		},		
		draw_comment_bar:function(type,n,minmax,obj) {
		
			// draw comment bar
			// draw comment link, like link
			
			var html1	=	$("<div id='info_bar'></div>");
			html1.append("<span class='time'>"+g.common.display_time(n.t)+"</span>");
			html1.append($("<a href='#'>· Comment ·</a>"));		

			var num_comments=0;
			if (!g.und(n.c)) {
				num_comments=n.c.length;
			}			
					
			if (num_comments==0) {
				html1.find("a").click(function(e) {
					var inp	=	$(this).parent().parent().find("input");
					inp.parent().show();
					inp.focus();
					inp.focusout(function() {
					var tval=$(this).val();
						if (g.und(tval) || tval!='Write a comment...') {
							$(this).parent().hide();
						}
					});
					g.clp(e);
				});																
			}
			else
			{
				html1.find("a").click(function(e) {
					var inp	=	$(this).parent().parent().find("input");
					inp.focus();				
					g.clp(e);
				});			
			}
			
			// likes
			
			var num_likes=0;
			if (!g.und(n.l)) {
				num_likes=n.l.length;
			}
			var already_liked=false;
			var friends_that_like=[];
			for (var i=0; i<num_likes; i++) {
				if (n.l[i].u==g.id) {
					already_liked=true;
					n.l.splice(i,1);
					num_likes--;
					break;
				}
			}
				
			// draw like link
			var html2;
			html2	=	$("<a href='#' style='margin-left:3px;' id='like_link'>Like</a>");
			html2.data("stuff",{"obj":obj,"type":type,"o":n.i,"u":n.u,"nl":num_likes,"al":already_liked,"l":n.l,"minmax":minmax});
			html2.click(function(e) {
				g.common.save_like($(this));
				g.clp(e);
			});
			if (already_liked) {
				html2.html("Unlike");		
			}
			html1.append(html2);	
					
			
			// draw who likes line
			html3 = $("<div id='likes'></div>");
		
			html1.append(html3);
			this.like_text(html1.find("#like_link"),obj);
			
			// draw comments
			if (!g.und(n.c)) {
				for (var i=0; i<n.c.length;i++) {
					html1=html1.add(this.draw_comments(n.c[i],type,minmax,obj));
				}
			}
			
			// draw comment box
			html1=html1.add(this.draw_add_comment("n",n,num_comments,obj));
			return html1;
		
		},
		like_text:function(elem,obj) {
			var delem		=	elem.data("stuff");
			var num_likes	=	delem.nl;
			var already_liked	=	delem.al;
			var	type			=	delem.type;
			var	minmax			=	delem.minmax;
			var l				=	delem.l;
			var like_text = "";
			var link_to_you	=	"";
			
			
			if (already_liked) {
				like_text =  " like this";
				link_to_you	=$("<a href='#'>You</a>");
				link_to_you=this.news_item_click(link_to_you,g.id,minmax,obj);			
			}
			
			if (num_likes == 1) {
				if (like_text != "") {						
					like_text = " and <a href='#'>"+num_likes+" other person</a> like this.";
				}
				else
				{
					like_text = "<a href='#'>1 person</a> likes this.";
				}
			}
			else if (num_likes > 1) {
				if (like_text != "") {
					like_text = " and <a href='#'>"+num_likes+" other people</a> like this.";
				}
				else
				{
					like_text = "<a href='#'>"+num_likes+" people</a> like this.";
				}
			}
			$like_text=$([]);
			if (like_text) {
			$like_text=$("<p></p>").html(like_text);
//			console.log(already_liked+"-"+$like_text.html());
			var content=$([]);
			if(num_likes>0) {
				for (var i=0; i<l.length;i++) {
					var html1	=	$("<a href='#' class='name'><img style='max-width:16px;margin-right:10px;' src='/i.php?u="+l[i].u+"&i=-1&s=32'>"+g.data.u[l[i].u].n.fu+"</a><br>");
					html1	=	this.news_item_click(html1,l[i].u,minmax,obj);
					html1.click(function(){$(this).parent().trigger("cancel_popup");});
					content=content.add(html1);
				}			
			
				$like_text.find("a").data("popup",content).click(function(e) {
					g.common.popup("People who like this",$(this).data("popup"),true);
					g.clp(e);
				});
			}
			}
//			console.log(elem.parent().find("#likes").length);
			elem.parent().find("#likes").html($like_text.prepend(link_to_you));
		},
		draw_add_comment:function(type,n,num_comments,obj) {
			
			var	html	=	$("<div class='c'>\
				<input type='text' value='Write a comment...' class='empty'>\
			</div>\
			");
			var stuff	=	{"type":type,"o":n.i,"u":n.u,"obj":obj};
			html.data("item_stuff",stuff);		
			
			html.find("input").keyup(
				function(e) {
					if(e.keyCode == 13) {
						g.common.save_added_comment($(this),$(this).parent().data("item_stuff"));
					}
					g.clp(e);
				}
			).focus(function() {
				if ($(this).val()=="Write a comment...") {
					$(this).val("");
					$(this).removeClass("empty");
				}
			}).focusout(function() {
				if (g.und($(this).val())) {
					$(this).val('Write a comment...');
					$(this).addClass("empty");
				}
			});
			
			if (num_comments==0) {
				html.hide();
			}
		

			return html;
		},
		enter_news:function(stuff,textbox_elem){

			if (stuff.obj=="u") {
				var $html	=	$("<div class='center'></div>").html(g.common.draw_group_checkboxes);
				$buttonc		=	$("<input type='button' value='Cancel'>");
				$buttonc.click(function() {
					$(this).parents(".content").trigger("cancel_popup");
				});
				$button		=	$("<input type='button' value='Send news'>");
				$button.data("stuff",stuff);
				$button.click(function() {
					var groups  =	g.common.get_selected_groups($(this).parent());
					if (g.und(groups)) {
						g.common.alert("You need to choose who can see this news.");
					}
					else
					{
						var stuff=$(this).data("stuff");
						stuff.prilev=groups;
						var elem=stuff.elem;
						delete(stuff.elem);

						g.commonnews.send_news_update(stuff,elem);

						$(this).parents(".content").trigger("cancel_popup");
						
					}
				});
			
			
				$html.append($button);
				$html.append($buttonc);
			
				g.common.popup("Who do you want to see this update?",$html,true,1);
			}
			else
			{
				var elem=stuff.elem;
				delete(stuff.elem);			
				g.commonnews.send_news_update(stuff,elem);
			}
			textbox_elem.val("Write something here...").addClass("empty");
		},
		send_news_update:function(stuff,elem) {
				
			$.ajax({
				type: "POST",
				url: "/s/input/news_update.php",
				data:stuff,
				stuff:stuff,
				elem:elem,
				dataType:"json",
				success: function(data){
					var stuff = this.stuff;
					var elem = this.elem;
					if (this.stuff.u==g.id && stuff.obj=="u") {
						g.common.tabs.force_tab_click("News");
						g.common.change_min_profile(g.id,"u");
						g.commonnews.add_newsfeed_item([{"i":data.i,"u":g.id,"m":stuff.news,"t":data.t}],g.id,stuff.obj);
					}
					else
					{	

						elem.prepend_content(g.commonnews.draw_news_item({"i":data.i,"u":g.id,"m":stuff.news,"t":data.t,"obj":stuff.obj},stuff.minmax,stuff),">div");
					}
				}
			});		
		},
		add_newsfeed_item:function(news,uid,obj) {
			for (var i=0;i<news.length;i++) {
				curr_prof=g.common.current_min_profile()
				
				if (curr_prof.uid==uid && curr_prof.obj==obj) {
					news[i].obj=obj;
					g.common.tabs.get_tab_object(["right_News_main_frame","min_uid_N"]).prepend_content(g.commonnews.draw_news_item(news[i],"min"),">div");
				}
			}
		},
		draw_enter_news_box:function(obj,u,elem,minmax) {
			g.und(obj)?obj="u":1;
			g.und(u)?u=g.id:1;
			g.und(minmax)?minmax="min":1;
			
			var $news_box	=	$('<input type="text" id="enter_news" value="Write something here..." class="empty">').data("stuff",{"u":u,"elem":elem,"minmax":minmax,"obj":obj}).keyup(
				function(e) {
					if(e.keyCode == 13) {
						if (!g.und($(this).val())) {
							var stuff=$(this).data("stuff");
							stuff.news=$(this).val();

							g.commonnews.enter_news(stuff,$(this));
						}
					}
					g.clp(e);
				}
			).focus(function() {
				if ($(this).val()=="Write something here...") {
					$(this).val("");
					$(this).removeClass("empty");
				}
			}).focusout(function() {
				if (g.und($(this).val())) {
					$(this).val("Write something here...");
					$(this).addClass("empty");
				}
			});
//			$news_box	=	$("<div id='enter_news_cont'></div>").html($news_box);
			return $news_box;	
		},
		draw_main_object:function(obj) {
			var main_boards=$("<ul></ul>");
			if (!g.und(g.data.u[g.id][g.data.objects[obj]])) {
			for(var i=0; i < g.data.u[g.id][g.data.objects[obj]].length; i++) {
				var u = g.data.u[g.id][g.data.objects[obj]][i];
				main_boards.append(g.commonnews.draw_object(u,true,"",obj));
			}
			}
			g.common.tabs.get_tab_object(["main_frame","Boards"]).append(main_boards);
		},
		draw_object:function(uid,no_extras,name,obj) {	

			if (g.und(name)) {
				name	=	g.data[obj][uid].n.fu;
			}

			var content	=	$('<li data-id="profid-'+uid+'" data-type="util"></li>');
			var content1	=	'<div>\
				<a href="#" class="uid_prof_max" id="uid_'+uid+'">\
					<img src="/i.php?u='+uid+'&t='+obj+'&i=-1&s=50">\
						<span class="name" data-type="name">'+name+'</span><br>';
			if(!no_extras) {
				content1 +='<div class="activity_number">Unread newsfeed items - 4</div>\
					';
			}
		

			if (!no_extras && Math.random()*11>1) {
				content1	+=	'<div class="online">Online</div>';							
			}
			content1+='</a></div>';
			content1=$(content1).find("a").data("obj",{obj:obj,uid:uid}).click(function(e) {
				objuid=$(this).data("obj");
				g.common.profile_tab(objuid.uid,"max",objuid.obj);
				g.clp(e);
			});
			
			content.html(content1);
			

//			content.append(g.friends.draw_add_friend_button(uid));

			return content;
		},
		draw_object_icon:function(i,minmax,obj) {
				var html	=	$('<li data-id="albid-'+i+'" data-type="util"></li>');
				var html1	=	$('<a href="#">\
					<img src="/i.php?u='+i+'&i=-1&s=50&t=b">\
					<span data-type="name">'+g.data[obj][i].n.fu+'</span>\
					</a>');			
				html1	=	g.commonnews.news_item_click(html1,i,minmax,obj);					
				
				html.append(html1);
				return html;
		},	
		draw_profile_box:function(uid,root_obj,this_obj) {
			
			var boards={"min":$("<ul></ul>"),"max":$("<ul></ul>")};
							
			var board	=	g.data[root_obj][uid][g.data.objects[this_obj]];
			if (!g.und(board)) {
			for (var i=0; i< board.length; i++) {
				boards.min.append(g.commonnews.draw_object_icon(board[i],"min",this_obj));
				boards.max.append(g.commonnews.draw_object_icon(board[i],"max",this_obj));
			}	
			}
			return boards;		
		}			
	});

