(function($){

window.Entries={}
E=window.Entries;
E.extend=$.extend;
E.extend({
	execPlugins: function(selector){
		$(selector).find('.entry-item-delete').dropDown({
			animationDuration: 100,
			dropClass: 'entry-item-delete-active',
			hoverClass: 'entry-item-delete-hover',
			hideAll: false,
			mode: 'click'
		});
		$(selector).find('.username').hoverCard({
			leftOffset: -40,
			topOffset: -20
		});
		$(selector).find(".entry-like-btn").hoverCard({
			leftOffset: -40,
			topOffset: -20
		});
	},
	likeDisabled:[],
	like: function(eid,ltype){
		var $linkswrapper=$('.entry-likelinks-'+eid);
		if(typeof(E.likeDisabled[eid])=='undefined' || E.likeDisabled[eid]==0)
		{
			$linkswrapper.html('');
			$('.hovercard-likes').remove();
			E.likeDisabled[eid]=1;
			$.ajax({
				url: '/entries.php',
				dataType: 'json',
				contentType: 'application/json',
				data: 'act=like&eid='+eid+'&ltype='+ltype,
				complete: function(req){
					req=$.parseJSON(req.responseText);
					$linkswrapper.html(req['links']);
					$linkswrapper.find(".entry-like-btn").hoverCard({
						leftOffset: -40,
						topOffset: -20
					});
					$('.entry-item-likedata-container-'+eid).html(req['likes']);
					$('.entry-item-likedata-container-'+eid).find('.username').hoverCard({
						leftOffset: -35,
						topOffset: -20
					});
					E.likeDisabled[eid]=0;
				}
			});
	}},
	blockEntry: function(eid){
		$('.entry-item-'+eid+' .entry-item-delete ul').hide();
		if(confirm('Biztosan törölni akarod a bejegyzést?'))
		{
			$.ajax({
				url: '/entries.php',
				contentType: 'application/json',
				data: 'act=blockentry&eid='+eid,
				success: function(){
					$('.entry-item-'+eid).fadeOut('fast',function(){$(this).remove()});
				},
				error: function(){
					window.alerts.error('Hiba történt a törlés közben')
				}
			});
		}
	},
	blockUser: function(eid){

		$('.entry-item-'+eid+' .entry-item-delete ul').hide();
		if(confirm('Biztosan tiltani szeretnéd a felhasználót?'))
		{
			$.ajax({
				url: '/entries.php',
				contentType: 'application/json',
				data: 'act=blockuser&eid='+eid,
				success: function(){
					$('.entry-item-'+eid).fadeOut('fast',function(){$(this).remove()});
				},
				error: function(){
					window.alerts.error('Hiba történt a törlés közben')
				}
			});
		}
	},
	nextPageDisabled:false,
	lastNextPageOffsetId:-1,
	pageParams: {
		act:'affuserlist',
		affgroup: 'main'
	},
	loadNextPage: function(){
		if(!E.nextPageDisabled){
			
			window.ajaxLoader.addSlotLoader('.entry-more');
			var eid=0;
			var lastentry=$('.entry-list .entry-item').last();
			if(lastentry.get().length>0){
				eid=lastentry.attr('data-entryid')||0;
			}
			E.nextPageDisabled=true;
			if(E.lastNextPageOffsetId!=eid){
				var params=$.extend(E.pageParams,{
					'isajax': 1,
					'offsetid': eid
				});
				$.ajax({
					url: '/entries.php',
					data: params,
					success: function(req){
						E.lastNextPageOffsetId=eid;
						if(req==""){
							$('.entry-more').hide();
							E.nextPageDisabled=true;
							$(window).unbind('scroll',window.EntryLoadNextPage);
						} else {
							E.nextPageDisabled=false;
						}
						$('.entry-list').append(req);
					},
					error: function(){
						E.nextPageDisabled=false;
						window.alerts.error('Hiba történt a betöltés közben');
					},
					complete: function(){
						E.execPlugins('.entry-list');

						if(lastentry.get().length>0){
							E.execPlugins($('.entry-item:gt('+$('.entry-item').index(lastentry)+')'));
						}
						window.ajaxLoader.removeSlotLoader('.entry-more');
					}
				});
			}
		}
	}
});

E.share={};
E.share.extend=$.extend;
E.share.extend({
	init: function(form,textarea,btn){
		E.share.form=$(form);
		E.share.textarea=$(textarea);
		E.share.btn=$(btn);
		E.share.btnselector=btn;

		E.share.getURLDisabled=false;

//		console.log(E.share.form,E.share.textarea,E.share.btn);
		E.share.textarea.bind('keyup',
			function(event)
			{
				if (
					(event.which == 86 && event.ctrlKey)
					|| (event.which == 45 && event.shiftKey)
					|| event.which == 13
				)
				{
					E.share.getURLdata();
				}
			}
		);
	},
	insertURL: function(text){
		var urls=text.match(/(https?|ftp|gopher|telnet|file|notes|ms-help):((\/\/)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]*/gi);
		if(urls && typeof(urls[0])!='undefined'){
			var origtext=E.share.textarea.val();
			$('.entry-share-form-textarearow .textarea-default-text').hide();
			E.share.textarea.val(urls[0]+"\n"+origtext);
			E.share.getURLdata();
		} else {
			window.alerts.error('Az általad megadott URL helytelen.');
		}
	},
	urlsParam:[],
	getURLdata:function()
	{
		if(!E.share.getURLDisabled){
			var text=E.share.textarea.val();
			var urls=text.match(/(https?|ftp|gopher|telnet|file|notes|ms-help):((\/\/)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]*/gi);

			if(urls && typeof(urls[0])!='undefined' && $.inArray(urls[0],E.share.urlsParam)==-1) {
				E.share.urlsParam.push(urls[0]);
				if(E.share.urlsParam.length>0)
				{
					E.share.getURLDisabled=true;
					window.ajaxLoader.addSlotLoader(".entry-share-form-buttonrow .btn");
					$.ajax({
						type: 'post',
						url: '/entries.php',
						dataType: 'json',
						data: {
							'act':'parseText',
							'urls':E.share.urlsParam
						},
						success: function(data) {
							if(data[0]!=undefined){
								data=data[0];
								if(data.thumbnailURL){
									data['images']=[data.thumbnailURL];
								}
								if(data.author){
									if(data.authorURL){
										data.author="<a target='_blank' href='"+data.authorURL+"'>"+data.author+"</a>";
									}
									data['description']+="<br><span>"+data.author+"</span>";
								}
								$('.entry-share-shared-data-title').text(data.title);
								$('.entry-share-shared-data-url').text(data.URL);
								$('.entry-share-shared-data-description').text(data.description);
								$('.entry-share-shared-data-container').show();

								if(typeof (data['images']) != 'undefined')
								{
									if(data['images'].length)
									{
										$.each(data['images'], function(imagei,imageSrc)
										{
											var img=new Image();
											$(img).load(
												function()
												{
													var w=$(this).attr('width');
													var h=$(this).attr('height');
													if((w>=100 || h>=100) && w/h<=3.5 && w/h>=1/3.5 ){
														var cssAttr;
														if(w>=h) cssAttr={width: w<100?w:100}
														else cssAttr={height: h<100?h:100}
														cssAttr.display='block';
														cssAttr.margin='0 auto';
														$(this).css(cssAttr);
														$(".entry-share-shared-data-images").append(this)
														if($(".entry-share-shared-data-images").find("img:visible").get().length>1) {
															$(this).hide();
														}
													}
												}
											)
											.attr('src',imageSrc)
										});
									}
								}
							}
						},
						complete: function(){
							window.ajaxLoader.removeSlotLoader(".entry-share-form-buttonrow .btn");
						}
					});
				}
			}
		}
	},
	resetSharedData: function(){
		$('.entry-share-shared-data-images').html('');
		$('.entry-share-shared-data-title').html('');
		$('.entry-share-shared-data-url').html('');
		$('.entry-share-shared-data-description').html('');
		$('.entry-share-shared-data-container').hide();
		E.share.getURLDisabled=false;
	},
	nextSharedImage: function(){
		if($('.entry-share-shared-data-images').find('img').get().length>1){
			var img=$('.entry-share-shared-data-images img:visible').hide();
			var newimg=img.next('img');
			if(newimg.get().length==0){
				newimg=$('.entry-share-shared-data-images img').first();
			}
			newimg.show();
		}
	},
	prevSharedImage: function(){
		if($('.entry-share-shared-data-images').find('img').get().length>1){
			var img=$('.entry-share-shared-data-images img:visible').hide();
			var newimg=img.prev('img');
			if(newimg.get().length==0){
				newimg=$('.entry-share-shared-data-images img').last();
			}
			newimg.show();
		}
	},
	shareParams:{

	},
	checkFacebookLoggedIn: function(){
		if(parseInt($("#facebook_id").val())!=0 || !$('#sharefacebook_0').is(':checked')){
			E.share.save();
		} else {
			window.open('/facebook.php?gotofacebook=3&callback=share', 'auth', 'width=660,height=460');
			$("#facebook_id").val('-1');
		}
	},
	save: function(){
		var urlData=[];

		//van megosztott url
		if($('.entry-share-shared-data-url').text().length>0)
		{
			urlData[0]={
				url: $('.entry-share-shared-data-url').text()
			}
			if($('.entry-share-shared-data-images img:visible').get().length>0){
				urlData[0].image= $('.entry-share-shared-data-images img:visible').attr('src');
			}
		}

		window.ajaxLoader.addSlotLoader('#entry_share_form');
		var params=$.extend({
				'act': 'share',
				'uid': 0,
				'text': $('#entry_share_form textarea').val(),
				'urlData': urlData,
				'sharefacebook':$('#sharefacebook_0').is(':checked')?1:0
			},
			E.share.shareParams
		);
		$.ajax({
			type: 'post',
			url: '/entries.php',
			data: params,
			success: function(req){
				$('.entry-list').prepend(req);
			},
			error:function(req){
				window.alerts.error(req.responseText);
			},
			complete: function(){
				E.share.urlsParam=[];
				E.share.resetSharedData();
				$('#entry_share_form textarea').val('');
				window.ajaxLoader.removeSlotLoader('#entry_share_form');
				E.execPlugins('.entry-item:first');
			}
		});

	}
});


})(jQuery)



