(function($) {	var defaults = { 		pageUrl: encodeURIComponent(window.location.toString()),		buttons: ['facebook','vkontakte', 'twitter', 'mail', 'odnoklassniki', 'google', 'feedback'],		title:   encodeURIComponent($('title').text()),		desc : '',		img  : encodeURIComponent('http://' + document.domain + '/img/logo.gif')	};		$.fn.social = function(options) {			var options = $.extend({}, defaults, options);				var links = {				'google': '',				'facebook': 'http://www.facebook.com/sharer/sharer.php?u=' + options.pageUrl,				'vkontakte': 'http://vkontakte.ru/share.php?url=' + options.pageUrl + '&title=' + options.tilte + '&description=' + options.desc + '&image=' + options.img,				'twitter': 'http://twitter.com/intent/tweet?status=' + options.tilte + ' ' + options.pageUrl,				'mail': 'http://connect.mail.ru/share?share_url=' + options.pageUrl + '&connect=1',				'odnoklassniki': 'http://www.odnoklassniki.ru/dk?st.cmd=addShare&st._surl=' + options.pageUrl,				'feedback' : 'http://www.relsearch.ru/'			};				var scroll_top = 0;		var top_margin = 20;		var scroll_timer;		var timer_enabled = false; 		var lmenu_top = 0;		var feedback_opened = false;		init(this);				function init(e) {			return e.each(function(){				setButtons($(this));			});		}					function setButtons(element) {			for (i = 0; i < options.buttons.length; i++)			{				setOneButton(options.buttons[i], element);			}			getShareCount(element);						lmenu_top = parseInt (element.css('margin-top'));			var offset_lmenu = 100;						moveBox(element)			$(window).scroll(function () {				if (!timer_enabled)				{					timer_enabled = true;					scroll_timer = setTimeout(function (){						moveBox(element);						clearTimeout(scroll_timer);						timer_enabled = false;					}, 800);				}			});		}				function moveBox(element)		{			scroll_top = $(document).scrollTop();			if (scroll_top > lmenu_top || lmenu_top > 0) {				offset_lmenu = scroll_top - lmenu_top;				var top = (lmenu_top + offset_lmenu) + top_margin;				if(top < lmenu_top) { top = lmenu_top;}				element.animate( {marginTop: top },600, function(){});			}		}				function setOneButton(social, element)		{			link = $('<a>');			if (social == 'google')			{				$('body').append('<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>');				link.html('<span style="margin-top: 5px;"><g:plusone size="small"></g:plusone></span>');						}else if (social == 'feedback') {								var href = links[social];				var trigger = $('<i>');				trigger.append('<b></b>');				var span = $('<span>');				var textarea = $('<textarea>');				var button = $('<button>');				button.text('Отправить');								span.append('<b>Оцените наш сайт и напишите<br>свои пожелания по улучшению.<br>Не забудьте оставить свои<br>контакты, если у вас вопрос!</b>');				span.append(textarea);				span.append(button);								link = $('<div>');				link.addClass("social_" + social);				link.append(trigger);				link.append(span);				link.attr('rel', social);								trigger.click(function(){					return openFeedback(span, link);				});				element.append(link);								button.click(function(){					var text = textarea.val();										if (text) {						var success = $('<div>');						success.addClass('ajax_success').html('Спасибо! <br> Ваше сообщение отправлено');						$.post('/feedback/', { text: text}, function(data){							span.hide();							link.append(success);							setTimeout(function(){								success.remove();								if( feedback_opened) 									openFeedback(span, link);																textarea.val('');							}, 3000);						});					}				});								return;			}else {				var href = links[social];							link.addClass("social_" + social);				link.html("<span><i></i><strong>0</strong></span>");				link.attr('href', href);				link.attr('rel', social);				link.click(function(){					return addPost(this, social);				});			}						link.hover(function(){				$(this).animate({'width': '60px'}, 100);			}, function(){				$(this).animate({'width': '32px'}, 100);			});			element.append(link);		}				function getShareCount(element)		{			$.post('/counters/',{'url': options.pageUrl},function(data){				data = jQuery.parseJSON(data);				if (data){					for (i = 0; i < options.buttons.length; i++)					{						if (data[options.buttons[i]]){							element.find('.social_' + options.buttons[i]).find('span').find('strong').text(data[options.buttons[i]]);						}					}				}			});		}				function addPost(el, service)		{			window.open ($(el).attr('href'), "mywindow","menubar=1,resizable=1,width=550,height=350");			return false;		}				function openFeedback(span, link)		{			if (!feedback_opened)			{				$(link).find('i').find('b').css('display','block').show();				link.animate({width: 270},500, function(){					$(span).show('slow');					$(span).find('textarea').focus();				});				feedback_opened = true;			} else {				$(span).hide();				$(link).find('i').find('b').hide();				link.animate({width: 32},500);				feedback_opened = false;			}			return false;		}	}	})(jQuery);
