var blog_url;

$(document).ready(function()
{
	blog_url = $("#networkpub_plugin_url").val();
	
	$(".counter_links").each(function()	{							
							$(this).bind("click", function(e) {		
										var w = 716, h = 480;
										var left = (screen.width/2)-(w/2);
										var top  = (screen.height/2)-(h/2);
	
										link = $(this).attr('href');
										newwindow=window.open(link,'socialdiscuss','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
	
										if (window.focus) {
											newwindow.focus();
										}								
										
										return false;
							});
	});


	$(".counter_links").each(function(){
		$(this).tipsy({gravity: 's'});
	});

	$(".ontip").each(function(){
		$(this).tipsy({gravity: 's'});
	});
	
	
	
	$("#idNWPubContent").hide();
	$('#idNWPub').live("click", function() {
		$("#idNWPubContent").toggle( "fast", function() {
										myElementText = $("#idNWPub").text();
										if(myElementText == 'Edit') {
											$("#idNWPub").text("Hide");
											$.post(blog_url+"social-discussions-networkpub_ajax.php", {type:'load'}, function(data) {
												if(data == '500') {
													$("#idAPIBox").html('<div class="msg_error">Error occured while removing the API Key. As a workaround, you can remove this publishing at the following link: <a href="http://www.linksalpha.com/user/publish">LinksAlpha Publisher</a> </div>');
												} else {
													$("#idAPIBox").html(data);	
												}
											});										
										}
										else if (myElementText == 'Hide') {
											$("#idNWPub").text("Edit");
										}
									}				
		);		
		
	});
	
	$("#idProfileContent").hide();
	$('#idProfile').click( function() {
		$("#idProfileContent").toggle( "fast", function() {
										myElementText = $("#idProfile").text();
										if(myElementText == 'Edit') {
											$("#idProfile").text('Hide');
										}
										else if (myElementText == 'Hide') {
											$("#idProfile").text('Edit');
										}
									}				
							);			
	});

	$("#idPosColorsContent").hide();
	$('#idPosColors').click( function() {
		$("#idPosColorsContent").toggle( "fast", function() {
										myElementText = $("#idPosColors").text();
										if(myElementText == 'Edit') {
											$("#idPosColors").text("Hide");
										}
										else if (myElementText == 'Hide') {
											$("#idPosColors").text("Edit");
										}
									}				
							);			
	});

	$("#idIconsContent").hide();
	$('#idIcons').click( function() {
		$("#idIconsContent").toggle( "fast", function() {
										myElementText = $("#idIcons").text();
										if(myElementText == 'Edit') {
											$("#idIcons").text("Hide");
										}
										else if (myElementText == 'Hide') {
											$("#idIcons").text("Edit");
										}
									}				
							);		
	});

	
	$("#idSSContent").hide();
	$('#idSS').click( function() {
		$("#idSSContent").toggle( "fast", function() {
										myElementText = $("#idSS").text();
										if(myElementText == 'Edit') {
											$("#idSS").text("Hide");
										}
										else if (myElementText == 'Hide') {
											$("#idSS").text("Edit");
										}
									}				
							);		
	});
	
		
	$(".networkpubre").live("click", function(e) {
		var key = $(this).attr("id");
		if(key) {
			$.post(blog_url+"social-discussions-networkpub_ajax.php", {key:key, type:'remove'}, function(data) {
				if(data == '500') {
					$("#networkpub_msg").html('<div class="msg_error">Error occured while removing the API Key. As a workaround, you can remove this publishing at the following link: <a href="http://www.linksalpha.com/user/publish">LinksAlpha Publisher</a> </div>');
				} else {
					$("#r_"+key).remove();
					$("#networkpub_msg").html('<div class="msg_success">API Key has been removed successfully</div>');	
				}
		    });
		} 
		return false;
	});	
	
		
	$(function() {
		$("#tabs").tabs();
	});
		
	
});


(function($) {
	$.fn.tipsy = function(options) {

        options = $.extend({}, $.fn.tipsy.defaults, options);
        
        return this.each(function() {
            
            var opts = $.fn.tipsy.elementOptions(this, options);
            
            $(this).hover(function() {

                $.data(this, 'cancel.tipsy', true);

                var tip = $.data(this, 'active.tipsy');
                if (!tip) {
                    tip = $('<div class="tipsy"><div class="tipsy-inner"/></div>');
                    tip.css({position: 'absolute', zIndex: 100000});
                    $.data(this, 'active.tipsy', tip);
                }

                if ($(this).attr('title') || typeof($(this).attr('original-title')) != 'string') {
                    $(this).attr('original-title', $(this).attr('title') || '').removeAttr('title');
                }

                var title;
                if (typeof opts.title == 'string') {
                    title = $(this).attr(opts.title == 'title' ? 'original-title' : opts.title);
                } else if (typeof opts.title == 'function') {
                    title = opts.title.call(this);
                }

                tip.find('.tipsy-inner')[opts.html ? 'html' : 'text'](title || opts.fallback);

                var pos = $.extend({}, $(this).offset(), {width: this.offsetWidth, height: this.offsetHeight});
                tip.get(0).className = 'tipsy'; // reset classname in case of dynamic gravity
                tip.remove().css({top: 0, left: 0, visibility: 'hidden', display: 'block'}).appendTo(document.body);
                var actualWidth = tip[0].offsetWidth, actualHeight = tip[0].offsetHeight;
                var gravity = (typeof opts.gravity == 'function') ? opts.gravity.call(this) : opts.gravity;

                switch (gravity.charAt(0)) {
                    case 'n':
                        tip.css({top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}).addClass('tipsy-north');
                        break;
                    case 's':
                        tip.css({top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}).addClass('tipsy-south');
                        break;
                    case 'e':
                        tip.css({top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}).addClass('tipsy-east');
                        break;
                    case 'w':
                        tip.css({top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}).addClass('tipsy-west');
                        break;
                }

                if (opts.fade) {
                    tip.css({opacity: 0, display: 'block', visibility: 'visible'}).animate({opacity: 0.8});
                } else {
                    tip.css({visibility: 'visible'});
                }

            }, function() {
                $.data(this, 'cancel.tipsy', false);
                var self = this;
                setTimeout(function() {
                    if ($.data(this, 'cancel.tipsy')) return;
                    var tip = $.data(self, 'active.tipsy');
                    if (opts.fade) {
                        tip.stop().fadeOut(function() { $(this).remove(); });
                    } else {
                        tip.remove();
                    }
                }, 100);

            });
            
        });
        
    };
    
    // Overwrite this method to provide options on a per-element basis.
    // For example, you could store the gravity in a 'tipsy-gravity' attribute:
    // return $.extend({}, options, {gravity: $(ele).attr('tipsy-gravity') || 'n' });
    // (remember - do not modify 'options' in place!)
    $.fn.tipsy.elementOptions = function(ele, options) {
        return $.metadata ? $.extend({}, options, $(ele).metadata()) : options;
    };
    
    $.fn.tipsy.defaults = {
        fade: false,
        fallback: '',
        gravity: 'n',
        html: false,
        title: 'title'
    };
    
    $.fn.tipsy.autoNS = function() {
        return $(this).offset().top > ($(document).scrollTop() + $(window).height() / 2) ? 's' : 'n';
    };
    
    $.fn.tipsy.autoWE = function() {
        return $(this).offset().left > ($(document).scrollLeft() + $(window).width() / 2) ? 'e' : 'w';
    };
    
})(jQuery);

