/**
 * @author Infosys
 * @Jquery Plugin for wmg features
 * Last Modidied Date: 22-Dec-2010 - Fixing the twttrbutton method , FBshare and FBlike
 */

jQuery.wmgfeature = function(opts){
    if (!opts) {
        return;
    }
    var opts = jQuery.extend({}, jQuery.wmgfeature.defaults, opts);
    if (opts.tweetmeme.switchOn) {
        jQuery.wmgfeature.tweetmeme(opts.tweetmeme.pageName, opts.tweetmeme.siteURL, opts.tweetmeme.insertBefore);
    }
    if (opts.iggli.switchOn) {
        jQuery.wmgfeature.iggli.addIggli(opts.iggli.selector, opts.iggli.partnerId);
    }
    if (opts.facebookShare.switchOn) {
        jQuery.wmgfeature.facebooklike(opts.facebooklike.insertBefore);
    }
    if (opts.welcomescreen.switchOn) {
        jQuery.wmgfeature.welcomescreen(opts.welcomescreen.selector, opts.welcomescreen.message);
    }
    if (opts.roaster.switchOn) {
        jQuery.wmgfeature.roaster(opts.roaster.startVal, opts.roaster.repeatVal, opts.roaster.message);
    }
};


jQuery.wmgfeature.defaults = {
    tweetmeme: {
        switchOn: 'off',
        blockSelector: '',
		urlSelector: '',
		urlQualifier: '',
		insertionSelector: ''
    },
    facebooklike: {
        switchOn: 'off',
        blockSelector: '',
		urlSelector: '',
		urlQualifier: '',
		insertionSelector: '',
		siteURL:''
    },
    welcomescreen: {
        switchOn: 'off',
        selector: '',
        message: ''
    },
    roaster: {
        switchOn: 'off',
        startVal: '',
        repeatVal: '',
        message: ''
    },
    iggli: {
        switchOn: 'off',
        selector: '',
        partnerId: ''
    },
    feedback: {
        switchOn: 'off',
        linkToURL: ''
    }

};


jQuery.wmgfeature.twitterDefaults={
	detailPageUrl:'window.location.href',
	urlSelector:'h4 a',
	urlQualifier:'href',
	siteUrl:'http://startersite1.wmg.ciscoeos.com',
	viaParam:'&amp;via=wmgd2c_ss1',
	relatedParam:'&amp;related=wmgd2c_ss1,wmgd2c_ss1',
	fanclubviaParam:'&amp;via=wmgd2c_ss1',
	fanclubrelatedParam:'&amp;related=wmgd2c_ss1,wmgd2c_ss1',
	buttonPosition:'horizontal'
}

jQuery.wmgfeature.fbLikeDefaults={
	urlSelector:'h4 a',
	urlQualifier:'href',
	detailPageurl:'window.location.href',
	siteUrl:'http://startersite1.wmg.ciscoeos.com',
	fblikePosition:'horizontal'
}

jQuery.wmgfeature.fbShareDefaults={
	urlSelector:'h4 a',
	urlQualifier:'href',
	detailPageurl:'window.location.href',
	siteUrl:'http://startersite1.wmg.ciscoeos.com'
}

var url;
var retweet_meurl;;
var titletxt;
var sitePageUrl;





/**
 * Feedback Feature
 */
jQuery.wmgfeature.feedback = function(linkToURL){
    if ($('body.m32').length == 0) {
        $("body").append("<div class='widget'><a style='background-color: rgb(34, 34, 34);' class='fdbk_tab_left' id='fdbk_tab' href='" + linkToURL + "'>FEEDBACK</a></div>");
		
		/* That little Wiggle Effect */
		$("#fdbk_tab").hover(function(){
				$(this).animate({'margin-right' : 0},250);
			},function(){
				$(this).animate({'margin-right' : -7},250);
		});
    }
}

/**
 * To implement the fbLike button
 * @param {Object} fbLikeObj
 * @param {Object} moduleName
 */

jQuery.wmgfeature.fbLike = function(fbLikeObj,moduleName){
    var url;
    var fbLike;
    var fbLikeUrl;
	var fbLikeObj=jQuery.extend({}, jQuery.wmgfeature.fbLikeDefaults, fbLikeObj);
	if (fbLikeObj.fblikePosition=="horizontal") {
		var layout = "button_count";
	}
	else if (fbLikeObj.fblikePosition=="vertical"){
		var layout="box_count";
	}
	switch(moduleName){
		case 'moduleListing':
			$(fbLikeObj.blockSelector).each(function(){
				if ($(this).find('.fb_like').length == 0) {
					url = $(this).find(fbLikeObj.urlSelector).attr(fbLikeObj.urlQualifier);
					if(url.indexOf('http://') == -1){
						fbLikeUrl = fbLikeObj.siteUrl + url;
					}else{
						fbLikeUrl = url;
					}
					
					fbLike = '<iframe src="http://www.facebook.com/plugins/like.php?href=' + fbLikeUrl + '&amp;layout=' + layout + '&amp;show_faces=false&amp;width=90&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:90px; height:21px"></iframe>';
					$(this).find(fbLikeObj.insertionSelector).after('<div class="fb_like" style="float:left;">' + fbLike + '</div>');
				}
				});
		break;
		case 'moduleDetail':
		if ($(fbLikeObj.blockSelector).find('.fb_like').length == 0) {
			fbLike = '<iframe src="http://www.facebook.com/plugins/like.php?href=' + fbLikeObj.detailPageUrl + '&amp;layout='+layout+'&amp;show_faces=false&amp;width=90&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true"></iframe>';
			$(fbLikeObj.blockSelector).find(fbLikeObj.insertionSelector).after('<div class="fb_like" style="float:left;">' + fbLike + '</div>');
		}
		break;
	}      
};


/**
 * To implememnt the fbShare button
 * @param {Object} fbShareObj
 * @param {Object} moduleName
 */
jQuery.wmgfeature.fbShare = function(fbShareObj,moduleName){
    var url;
    var fbShare;
    var fbShareUrl;
	var fbShareObj=jQuery.extend({}, jQuery.wmgfeature.fbShareDefaults,fbShareObj);
	switch(moduleName){
		case 'moduleListing':
			
			$(fbShareObj.blockSelector).each(function(){
				if ($(this).find('.fb_share').length == 0) {
					url = $(this).find(fbShareObj.urlSelector).attr(fbShareObj.urlQualifier);
					if(url.indexOf('http://') == -1){
						fbShareUrl = fbShareObj.siteUrl + url;
					}else{
						fbShareUrl = url;
					}
					
					fbShare = '<a name="fb_share" type="button" share_url="' + fbShareUrl + '">Share</a>';
					$(this).find(fbShareObj.insertionSelector).after('<div class="fb_share" style="float:left;">' + fbShare + '</div>');
				}
			});
			
		break;
		case 'moduleDetail':
		if ($(fbShareObj.BlockSelector).find('.fb_share').length == 0) {
			fbShare = '<a name="fb_share" type="button" share_url="' + fbShareObj.detailPageUrl + '">Share</a>';
			$(fbShareObj.blockSelector).find(fbShareObj.insertionSelector).after('<div class="fb_share" style="float:left;">' + fbShare + '</div>');
		}
		break;
	}      
};



/**
 * Tp implement the official twitter button
 * @param {Object} twitterObj
 * @param {Object} moduleName
 */

jQuery.wmgfeature.twttrButton = function(twitterObj,moduleName){
	var twitterObj=jQuery.extend({}, jQuery.wmgfeature.twitterDefaults, twitterObj);
	switch (moduleName) {
		case 'moduleListing':
			$(twitterObj.blockSelector).each(function(){
				if (($(this).find('.retweet_me').length == 0)){
					url = $(this).find(twitterObj.urlSelector).attr(twitterObj.urlQualifier);
					titletxt = $(this).find(twitterObj.urlSelector).text();
					if(url.indexOf('http://') == -1){
						sitePageUrl = twitterObj.siteUrl + url;
					}else{
						sitePageUrl =  url;
					}					
					retweet_meurl=twttrButtonConfig(twitterObj, sitePageUrl, titletxt);
					$(this).find(twitterObj.insertionSelector).after('<a class="tweet_me twitter-share-button" href="' + retweet_meurl + '">Tweet</a>');
				}
			});
			break;
		case 'moduleDetail':
				switch(twitterObj.detailPageName){
					
					case 'blogDetail':
					if ($("body#blog_detail").length != 0) {
					titletxt = $(".blog_entry .body .title h4").text();
					}
					break;
					case 'photoDetail':
					if ($("body#photo_detail").length != 0) {
					titletxt = $(".photo_viewer .body .title h3").text();
					}
					break;
					case 'videoDetail':
					if ($("body#video_detail").length != 0) {
					titletxt = $(".video_player .body .title h3").text();
					}
					break;
					case 'albumDetail':
					if ($("body#album_detail").length != 0) {
					titletxt = $(".album_info .body .title h4").text();
					}
					break;
					case 'customPage':
					titletxt=twitterObj.titletxt;
					break;
				}
				if (($(twitterObj.blockSelector).find('.retweet_me').length == 0)) {
				retweet_meurl = twttrButtonConfig(twitterObj, twitterObj.detailPageUrl, titletxt);
				$(twitterObj.blockSelector).find(twitterObj.insertionSelector).after('<a class="tweet_me twitter-share-button" href="' + retweet_meurl + '">Tweet</a>');
				
			}
		break;
			
	}
};
	
function twttrButtonConfig(twitterObj,detailPageUrl,titletxt){
	
	if($(this).is(".fanClub")){					
					tweetmeparamvia=twitterObj.fanClubParam; 
					tweetmeparamrelated=twitterObj.fanClubRelatedParam;
				}else{
					tweetmeparamvia=twitterObj.viaParam; 
					tweetmeparamrelated=twitterObj.relatedParam;
				}
				tweetmemehref = "http://twitter.com/share/?";
				tweetmeparamurl="url="+encodeURIComponent(detailPageUrl+"?cmpid=twitter-button");
				tweetmeparamcounturl="&amp;counturl="+encodeURIComponent(detailPageUrl);
				tweetmeparamtext="&amp;text="+encodeURIComponent(titletxt);	
				if (twitterObj.buttonPosition == "horizontal") {
					retweet_meurlencode = tweetmeparamurl + tweetmeparamcounturl + tweetmeparamtext + tweetmeparamvia + tweetmeparamrelated;
				}else if(twitterObj.buttonPosition=="vertical"){
					twitterCountPosition = "&amp;count="+encodeURIComponent(twitterObj.buttonPosition);
					retweet_meurlencode = tweetmeparamurl + tweetmeparamcounturl + tweetmeparamtext + twitterCountPosition + tweetmeparamvia + tweetmeparamrelated;
				}
				retweet_meurl=tweetmemehref+retweet_meurlencode;
				return retweet_meurl;
				
}

/** 
 * Toaster Feature - Updated on Nov 11 2010
 */

jQuery.wmgfeature.roaster = function(startVal, repeatVal, message){
    var regFooterVar = document.createElement('div');
	
    $(regFooterVar).attr("id", "regFooter");
    $(regFooterVar).css({
        'display': 'none'
    });
	
	if(userEmail != "" &&  userEmail != null){
     	$(regFooterVar).append('<div id="regFooterWrapper"><div id="regFooterLeft"><label id="regFooterLabel">' + message + '</label><a id="regFooterSign" href="/join" ></a></div><div id="regFooterRight"><a id="regFooterClose"></a></div><div class="clear"></div></div>');
     } else {
     	$(regFooterVar).append('<div id="regFooterWrapper"><div id="regFooterLeft"><label id="regFooterLabel">' + message + '</label><a id="regFooterSign" href="/sign-up" ></a></div><div id="regFooterRight"><a id="regFooterClose"></a></div><div class="clear"></div></div>');
     }
	 
    //$("#footer").append(regFooterVar);
    
    
    
    if ($('li.signup a').length != 0) {
        userVisitCount = $.cookie("userVisits2");
        userVCount = parseInt(userVisitCount);
        userVCountPhase2 = parseInt($.cookie("userVisits2Phase2"));
        
        if (userVisitCount == null) {
            userVCount = 1;
        }
        else {
            userVCount = userVCount + 1;
            if (null != parseInt($.cookie("userVisits2Phase2"))) {
                userVCountPhase2 = userVCountPhase2 + 1;
            }
        }
        writeToConsole(userVCount);
        
        if (userVCount == startVal) {
			$("#footer").append(regFooterVar);
            $("#regFooter").slideToggle();
            $.cookie("showJoinError1", "Yes", {
                path: '/'
            });
            $.cookie("showMusicRstError1", "No", {
                path: '/'
            });
            
            userVCountPhase2 = 0;
            
        }
        else if (userVCount != startVal && null != userVCountPhase2 && userVCountPhase2 % repeatVal == 0) {
                $("#footer").append(regFooterVar);
				$("#regFooter").slideToggle();
   		}
		
		$(function(){
        $("#regFooter a#regFooterClose").bind('click', function(event){
            $("#regFooter").slideToggle();
        });
    	});
        
        var date = new Date();
        date.setTime(date.getTime() + (365 * 24 * 60 * 60 * 1000));
        $.cookie("userVisits2", userVCount, {
            path: '/',
            expires: date
        });
        if (userVCount >= startVal) {
            $.cookie("userVisits2Phase2", userVCountPhase2, {
                path: '/',
                expires: date
            });
        }
    }
    else {
        $.cookie("userVisits2", null);
		$.cookie("userVisits2Phase2", null);
    }
    
}

/** 
 * Welcome Screen Feature
 */
jQuery.wmgfeature.welcomescreen = function(selector, message){
    if($(""+selector+":contains('"+message+"')").length > 0){
    	var url = "/welcome/?KeepThis=true&TB_iframe=true&height=400&width=600&modal=true";
    	if (parent.$("#TB_window").html() == null) {
        	tb_show(null, url, false);
    	}
    }	  
};

/**
 * Iggli Feature
 */
jQuery.wmgfeature.iggli = function(selector, partnerId){
    var invite_location;
    var invite_title;
    var invite_date;
    var monthNames = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
    
    var monthJson = {
        "monthNameToNumMap": {
            "some": [{
                "name": "Jan",
                "num": "01"
            }, {
                "name": "Feb",
                "num": "02"
            }, {
                "name": "Mar",
                "num": "03"
            }, {
                "name": "Apr",
                "num": "04"
            }, {
                "name": "May",
                "num": "05"
            }, {
                "name": "Jun",
                "num": "06"
            }, {
                "name": "Jul",
                "num": "07"
            }, {
                "name": "Aug",
                "num": "08"
            }, {
                "name": "Sep",
                "num": "09"
            }, {
                "name": "Oct",
                "num": "10"
            }, {
                "name": "Nov",
                "num": "11"
            }, {
                "name": "Dec",
                "num": "12"
            }, ]
        }
    };
    
    populateInviteData = function(){
        //all the possible fields in this json object
        json = {
            widget_version: "2.0",
            widget_skin: "button_square_small",
            partner_id: partnerId, //Do not change this id. This is unique
            title: iTitle,
            location: iLocation,
            date: iDate
        }
        
        //replace any current invite data using the json object
        inviteButtons[0].setOptions(json);
        
        //refresh the html to reflect new data
        inviteButtons[0].refresh();
        
        // launch the invite
        loadInviteInModal(0);
        
    }
    
    addIggli = function(selector){
        $(selector).each(function(){
            invite_locationCity = "";
            invite_locationRegion = "";
            invite_title = "";
            invite_date = "";
            inviteDateArr = "";
            inviteMonName = "";
            invite_title = $(this).find('.event_location .venue').text();
            invite_locationCity += $(this).find('.event_location .location .city').text();
            invite_locationRegion += $(this).find('.event_location .location .region').text();
            inviteDateInHtml = $(this).find('.date h4 a').text();
            inviteDateArr = inviteDateInHtml.split(" ");
            if (inviteDateArr.length <= 0) {
                return;
            }
            inviteMonName = inviteDateArr[0];
            if (inviteMonName.length > 3) {
                inviteMonName = inviteMonName.substring(0, 3);
            }
            inviteDate = inviteDateArr[1].substring(0, inviteDateArr[1].length - 1);
            inviteYear = inviteDateArr[2];
            for (icnt = 0; icnt < 12; icnt++) {
                if (monthJson.monthNameToNumMap.some[icnt].name.toLowerCase() == inviteMonName.toLowerCase()) {
                    inviteMon = monthJson.monthNameToNumMap.some[icnt].num;
                    break;
                }
            }
            invite_date = inviteMon + "/" + inviteDate + "/" + inviteYear;
            invite_location = $.trim(invite_locationCity) + $.trim(invite_locationRegion);
            onclickString = "populateInviteData('" + $.trim(invite_title) + "','" + $.trim(invite_location) + "','" + $.trim(invite_date) + "');";
            $(this).append('<div class="iggli-invite-button"><a class="iggli-button" onclick="' + onclickString + '">Invite Friends</a></div>');
            
        });
    };
    
};

/**
 * SP Migration Code
 */
jQuery.wmgfeature.sptoEOS = function(topContainerId, isUpdate, arrElementIDs, siteName, siteId) {
	
	var elementCountryValue ="";

	if ($("#replaceScriptRSUP").length > 0) {
		script = $("#replaceScriptRSUP");
		if ($(script).length > 0) {
			$("#replaceScriptRSUP").empty();
		}
	}

	var script = document.createElement('script');
	script.type = 'text/javascript';
	script.id = 'replaceScriptRSUP';
	var src = 'http://sms.wmg.com/sms/register?js=true';
	if(isUpdate) {
		src += '&updateprofile=yes';
	}
	
	for (var elementId in arrElementIDs) {
		var element = document.getElementById(elementId);
		if (element != null) {
			if ((element.type == 'text' || element.type == 'select-one' || element.type == 'select' || element.type == 'checkbox') || (element.type == 'radio' && element.checked == true)) {
			
				if ((src.indexOf(arrElementIDs[elementId]) == -1) && (element.value != "")) {
					src += "&" + arrElementIDs[elementId] + "=" + jQuery.trim(element.value);
					if (arrElementIDs[elementId] == "country") {
						elementCountryValue = element.value;
					}
				}
			}
		}
	}
	
	if(EmailListIds[elementCountryValue]) {
		newsletterIdValRS = EmailListIds[elementCountryValue];					
	} else {
		newsletterIdValRS = EmailListIds['United States'];
	}
	
	var signuptypeValRS = "any";
	
	src += "&newsletterId=" + newsletterIdValRS;
	src += "&signuptype=" + signuptypeValRS;
	src += '&EosSiteAccountId='+aSiteUserId;
	src += '&EosMasterAccountId='+aUserId;
	src += '&siteName=' + siteName;
	src += '&SiteId=' + siteId;
	if(src.indexOf("email") == -1){
		src += "&email=" + userEmail;
	}
	if((src.indexOf("EosUserDisplayName")== -1) && (auserName != "")){
		src += "&EosUserDisplayName=" + auserName;
	}
	if( false == isUpdate){
		var d = new Date();
		var curr_date = d.getDate();
		var curr_month = d.getMonth()+1;
		var curr_year = d.getFullYear();
		src += '&EosSiteRegistrationDate=' + curr_month + '-' + curr_date + '-' + curr_year;
	}
	 
	script.src = src;
	try {
		chkRS = true;
		document.getElementById(topContainerId).appendChild(script);
	} catch (err) {
	}
	setTimeout("alertTimeoutError()", 10000); // wait for 8 seconds	
};

jQuery.wmgfeature.spFeatureJoin = function(selector, moduleContainerId, isUpdate, arrElementIDs, siteName, siteId){
	
	$(selector).removeAttr("onclick");
	$(selector).click(function(event) {
		event.preventDefault();
		jQuery.wmgfeature.sptoEOS(moduleContainerId, isUpdate, arrElementIDs, siteName, siteId);
	});
	
};

jQuery.wmgfeature.spFeatureEditProfile = function(selector, moduleContainerId, isUpdate, arrElementIDs, siteName, siteId) {
	
	$(selector).removeAttr("onclick");
	$(selector).click(function(event) {
		event.preventDefault();
		jQuery.wmgfeature.sptoEOS(moduleContainerId, isUpdate, arrElementIDs, siteName, siteId);
	});
};

jQuery.wmgfeature.spFeatureEditAccountAccData = function(selector, moduleContainerId, isUpdate, arrElementIDs, siteName, siteId) {
	
	$(selector).removeAttr("onclick");
	$(selector).click(function(event) {
		event.preventDefault();
		jQuery.wmgfeature.sptoEOS(moduleContainerId, isUpdate, arrElementIDs, siteName, siteId);
	});
};

jQuery.wmgfeature.spFeatureEditAccountAccQuestions = function(selector, moduleContainerId, isUpdate, arrElementIDs, siteName, siteId) {
	
	$(selector).removeAttr("onclick");
	$(selector).click(function(event) {
		event.preventDefault();
		isAccountQuestions = true;
		jQuery.wmgfeature.sptoEOS(moduleContainerId, isUpdate, arrElementIDs, siteName, siteId);
	});
};

jQuery.wmgfeature.spCallback = function(selector,scenarioType){
	
	if(scenarioType == "joinScreen"){
		$(selector).modulePerformAction('join');
	}else if(scenarioType == "editProfile"){
		$(selector).modulePerformAction('update-profile', {
				successFunction: eos.ui.bindUploadAvatar
		});
	}else if(scenarioType == "editAccOues"){
		$(selector).modulePerformAction('update-account-questions');
	}else if(scenarioType == "editAccNormal") {
		$(selector).modulePerformAction('update-account');
	}
};


/* 
 * Jquery Plugin to scroll to an ID. 
 * Usage - $("#id").scrollToViewPort("slow");
 * Parameters Taken - Time in Milliseconds, or "slow,"fast";
*/
jQuery.fn.scrollToViewPort = function(animTimeInterval) {
  animTimeInterval = (typeof animTimeInterval == "undefined")?"slow":animTimeInterval;
  return this.each(function(){
    $('html,body').animate({scrollTop: $(this).offset().top},animTimeInterval);
  });
};


/*
 * Jquery Plugin - opens external links in a new window.
 * Checks if the links are relative, and are of the same domain.
 * Sampe Usage - $("#someDiv a").makeLinksExternal();
*/
jQuery.fn.makeLinksExternal=function(){return this.each(function(){var a=$(this).attr("href");if(a.indexOf(location.host)==-1&&a.indexOf("/")!=0){$(this).attr("target","_blank")}})};
 

/* Supplant Function. Remedial JS. Thanks to Douglas Crockford. 
 * Substitues the variables in a string. The variables must be preceded by {}.
 * 
*/
if(!String.prototype.supplant){String.prototype.supplant=function(a){return this.replace(/{([^{}]*)}/g,function(d,c){var e=a[c];return typeof e==="string"||typeof e==="number"?e:d})}};








/*********************** Please remove this block of code after the new implementation is done in all the sites**************/


/**
 * Facebook Like Feature
 * @param blockSelector: each list item selector for different pages
 * @param urlSelector: relative path of the post
 * @param urlQualifier: to get the href attribue of the anchor tag 
 * @param insertionSelector: to insert the button
 * @param siteURL: url of the site
 * @param detailPageUrl: url for the detail pages
 */

jQuery.wmgfeature.facebookLikeVertical = function(blockSelector,urlSelector,urlQualifier,detailPageUrl,insertionSelector,siteURL){
    var url;
    var fbLike;
    var fbLikeUrl;    
    if (detailPageUrl == null){    	
    	$(blockSelector).each(function(){
			if ($(this).find('.fb_like').length == 0) {
				url = $(this).find(urlSelector).attr(urlQualifier);
				fbLikeUrl = siteURL + url;
				fbLike = '<iframe src="http://www.facebook.com/plugins/like.php?href=' + fbLikeUrl + '&amp;layout=box_count&amp;show_faces=false&amp;width=45&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:45px; height:60px; padding-top:15px;"></iframe>';
				$(this).find(insertionSelector).after('<div class="fb_like">' + fbLike + '</div>');
			}
		});
    } else {
		if ($(blockSelector).find('.fb_like').length == 0) {
			fbLike = '<iframe src="http://www.facebook.com/plugins/like.php?href=' + fbLikeUrl + '&amp;layout=box_count&amp;show_faces=false&amp;width=45&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:45px; height:60px; padding-top:15px;"></iframe>';
			$(blockSelector).find(insertionSelector).after('<div class="fb_like">' + fbLike + '</div>');
		}
	}
           
};

/**
 * Facebook Like Feature
 * @param blockSelector: each list item selector for different pages
 * @param urlSelector: relative path of the post
 * @param urlQualifier: to get the href attribue of the anchor tag 
 * @param insertionSelector: to insert the button
 * @param siteURL: url of the site
 * @param detailPageUrl: url for the detail pages
 */
/* Retaining this code for the current lib-new implementation */
jQuery.wmgfeature.facebookLike = function(blockSelector,urlSelector,urlQualifier,detailPageUrl,insertionSelector,siteURL){
    var url;
    var fbLike;
    var fbLikeUrl;    
    if (detailPageUrl == null){    	
    	$(blockSelector).each(function(){
			if ($(this).find('.fb_like').length == 0) {
				url = $(this).find(urlSelector).attr(urlQualifier);
				fbLikeUrl = siteURL + url;
				fbLike = '<iframe src="http://www.facebook.com/plugins/like.php?href=' + fbLikeUrl + '&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:90px; height:21px"></iframe>';
				$(this).find(insertionSelector).after('<div class="fb_like" style="float:left;">' + fbLike + '</div>');
			}
		});
    } else {
		if ($(blockSelector).find('.fb_like').length == 0) {
			fbLike = '<iframe src="http://www.facebook.com/plugins/like.php?href=' + detailPageUrl + '&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:90px; height:21px"></iframe>';
			$(blockSelector).find(insertionSelector).after('<div class="fb_like" style="float:left;">' + fbLike + '</div>');
		}
	}
           
};

/**
 * Facebook Share Feature
 * @param blockSelector: each list item selector for different pages
 * @param urlSelector: relative path of the post
 * @param urlQualifier: to get the href attribue of the anchor tag 
 * @param insertionSelector: to insert the button
 * @param siteURL: url of the site
 * @param detailPageUrl: url for the detail pages
 */
jQuery.wmgfeature.facebookShare = function(blockSelector,urlSelector,urlQualifier,detailPageUrl,insertionSelector,siteURL){
    var url;
    var fbShare;
    var fbShareUrl;    
    if (detailPageUrl == null){    	
    	$(blockSelector).each(function(){
			if ($(this).find('.fb_share').length == 0) {
				url = $(this).find(urlSelector).attr(urlQualifier);
				fbShareUrl = siteURL + url;
				fbShare = '<a name="fb_share" type="button" style="float: left; cursor: pointer; position: absolute;" share_url="' + fbShareUrl + '">Share</a>';
				$(this).find(insertionSelector).after('<div class="fb_share" style="float:left;">' + fbShare + '</div>');
			}
		});
    } else {
		if ($(blockSelector).find('.fb_share').length == 0) {
			fbShare = '<a name="fb_share" type="button" style="float: left; cursor: pointer; position: absolute;" share_url="' + detailPageUrl + '">Share</a>';
			$(blockSelector).find(insertionSelector).after('<div class="fb_share" style="float:left;">' + fbShare + '</div>');
		}
	}
           
};


/***
 * TwitterButton Feature
 * @param {Object} blockSelector: each list item selector for different pages
 * @param {Object} urlSelector: relative path of the post
 * @param {Object} urlQualifier: to get the href attribue of the anchor tag
 * @param {Object} detailPageUrl: url of the detail pages
 * @param {Object} insertionSelector: to insert the button
 * @param {Object} siteURL: url of the site
 * @param {Object} viaParam: via Parameter for the Site
 * @param {Object} relatedParam: related Parameter for the Site
 * @param {Object} fanClubParam: via Parameter for the fanclub if the site has a FanClub
 * @param {Object} fanClubRelatedParam: realted Parameter for the fanclub if the site has a FanClub
 * @param {Object} buttonPosition: to position the button horizonally or vertically
 */

jQuery.wmgfeature.twitterbuttonpos = function(blockSelector,urlSelector,urlQualifier,detailPageUrl,insertionSelector,siteURL,viaParam,relatedParam,fanClubParam,fanClubRelatedParam,buttonPosition){
	var url;
	var retweet_meurl;
	var titletxt;
					
	if (detailPageUrl == null){
		$(blockSelector).each(function(){			
			if ($(this).find('.twitter-share-button').length == 0) {	
				url = $(this).find(urlSelector).attr(urlQualifier);
				titletxt = $(this).find(urlSelector).text();
				detailPageUrl=siteURL+url;
				if($(this).is(".fanClub")){					
					twitterViaParam=fanClubParam; 
					twitterRelatedParam=fanClubRelatedParam;
				}else{
					twitterViaParam=viaParam; 
					twitterRelatedParam=relatedParam;
				}
				twitterhref = "http://twitter.com/share/?";
				twitterParamUrl="url="+encodeURIComponent(detailPageUrl+"?cmpid=twitter-button");
				twitterParamCountUrl="&amp;counturl="+encodeURIComponent(detailPageUrl);
				twitterParamText="&amp;text="+encodeURIComponent(titletxt);					
				twitterCountPosition = "&amp;count="+encodeURIComponent(buttonPosition);
				twitterUrlEncode = twitterParamUrl+twitterParamCountUrl+twitterParamText+twitterCountPosition+twitterViaParam+twitterRelatedParam;
				twitterURL=twitterhref+twitterUrlEncode;
				$(this).find(insertionSelector).after('<a class="tweet_me twitter-share-button"  style="float:left;" href="' + twitterURL + '">Tweet</a>');
			}
		});
	} else {
		if ($(blockSelector).find('.retweet_me').length == 0) {
			if($(blockSelector).is(".fanClub")){
				twitterViaParam=fanClubParam; 
				twitterRelatedParam=fanClubRelatedParam;
			}else{
					twitterViaParam=viaParam; 
					twitterRelatedParam=relatedParam;
			}			
			if($("body#blog_detail").length !=0){
				titletxt = $(".blog_entry .body .title h4").text();
			}else if($("body#photo_detail").length !=0){
				titletxt = $(".photo_viewer .body .title h3").text();
			}else if($("body#video_detail").length !=0){
				titletxt = $(".video_player .body .title h3").text();
			}
			twitterhref = "http://twitter.com/share/?";
			twitterParamUrl="url="+encodeURIComponent(detailPageUrl+"?cmpid=twitter-button");
			twitterParamCountUrl="&amp;counturl="+encodeURIComponent(detailPageUrl);
			twitterParamText="&amp;text="+encodeURIComponent(titletxt);				
			twitterCountPosition = "&amp;count="+encodeURIComponent(buttonPosition);
			twitterUrlEncode = twitterParamUrl+twitterParamCountUrl+twitterParamText+twitterCountPosition+twitterViaParam+twitterRelatedParam;
			twitterURL=twitterhref+twitterUrlEncode;
			$(blockSelector).find(insertionSelector).after('<a class="tweet_me twitter-share-button"  style="float:left;" href="' + twitterURL + '">Tweet</a>');
		}
	}       
};



/***
 * 
 * TwitterButton Feature
 * @param {Object} blockSelector: each list item selector for different pages
 * @param {Object} urlSelector: relative path of the post
 * @param {Object} urlQualifier: to get the href attribue of the anchor tag
 * @param {Object} detailPageUrl: url of the detail pages
 * @param {Object} insertionSelector: to insert the button
 * @param {Object} siteURL: url of the site
 * @param {Object} viaParam: via Parameter for the Site
 * @param {Object} relatedParam: related Parameter for the Site
 * @param {Object} fanClubParam: via Parameter for the fanclub if the site has a FanClub
 * @param {Object} fanClubRelatedParam: realted Parameter for the fanclub if the site has a FanClub
 */

/* Retaining this code for the current lib-new implementation */

jQuery.wmgfeature.twitterbutton = function(blockSelector,urlSelector,urlQualifier,detailPageUrl,insertionSelector,siteURL,viaParam,relatedParam,fanClubParam,fanClubRelatedParam){
	var url;
	var retweet_meurl;
	var tweetmemeURL;
	var titletxt;
	var regexLocation;
				
	if (detailPageUrl == null){
		$(blockSelector).each(function(){			
			if ($(this).find('.retweet_me').length == 0) {	
				url = $(this).find(urlSelector).attr(urlQualifier);
				titletxt = $(this).find(urlSelector).text();
				detailPageUrl=siteURL+url;
				if($(this).is(".fanClub")){					
					tweetmeparamvia=fanClubParam; 
					tweetmeparamrelated=fanClubRelatedParam;
				}else{
					tweetmeparamvia=viaParam; 
					tweetmeparamrelated=relatedParam;
				}
				tweetmemehref = "http://twitter.com/share/?";
				tweetmeparamurl="url="+encodeURIComponent(detailPageUrl+"?cmpid=twitter-button");
				tweetmeparamcounturl="&amp;counturl="+encodeURIComponent(detailPageUrl);
				tweetmeparamtext="&amp;text="+encodeURIComponent(titletxt);					
				retweet_meurlencode = tweetmeparamurl+tweetmeparamcounturl+tweetmeparamtext+tweetmeparamvia+tweetmeparamrelated;
				retweet_meurl=tweetmemehref+retweet_meurlencode;
				$(this).find(insertionSelector).after('<a class="retweet_me twitter-share-button"  style="float:left;" href="' + retweet_meurl + '">Tweet</a>');
			}
		});
	} else {
		if ($(blockSelector).find('.retweet_me').length == 0) {
			if($(blockSelector).is(".fanClub")){
				tweetmeparamvia=fanClubParam; 
				tweetmeparamrelated=fanClubRelatedParam;
			}else{
					tweetmeparamvia=viaParam; 
					tweetmeparamrelated=relatedParam;
			}			
			if($("body#blog_detail").length !=0){
				titletxt = $(".blog_entry .body .title h4").text();
			}else if($("body#photo_detail").length !=0){
				titletxt = $(".photo_viewer .body .title h3").text();
			}else if($("body#video_detail").length !=0){
				titletxt = $(".video_player .body .title h3").text();
			}
			tweetmemehref = "http://twitter.com/share/?";
			tweetmeparamurl="url="+encodeURIComponent(detailPageUrl+"?cmpid=twitter-button");
			tweetmeparamcounturl="&amp;counturl="+encodeURIComponent(detailPageUrl);
			tweetmeparamtext="&amp;text="+encodeURIComponent(titletxt);				
			retweet_meurlencode = tweetmeparamurl+tweetmeparamcounturl+tweetmeparamtext+tweetmeparamvia+tweetmeparamrelated;
			retweet_meurl=tweetmemehref+retweet_meurlencode;
			writeToConsole("retweet_meurl:"+retweet_meurl+"  --:::::::::::--  "+ retweet_meurlencode)
			$(blockSelector).find(insertionSelector).after('<a class="retweet_me twitter-share-button"  style="float:left;" href="' + retweet_meurl + '">Tweet</a>');
		}
	}       
};

/** 
 * Tweetmeme Feature
 * @param blockSelector: each list item selector for different pages
 * @param urlSelector: relative path of the post
 * @param urlQualifier: to get the href attribue of the anchor tag 
 * @param insertionSelector: to insert the button
 * @param siteURL: url of the site
 * @param detailPageUrl: url for the detail pages
 */
jQuery.wmgfeature.tweetmeme = function(blockSelector,urlSelector,urlQualifier,detailPageUrl,insertionSelector,siteURL){
    var url;
    var retweet_me;
	var tweetmemeURL;
	
	if (detailPageUrl == null){
		$(blockSelector).each(function(){
			if ($(this).find('.retweet_me').length == 0) {
				url = $(this).find(urlSelector).attr(urlQualifier);
				tweetmemeURL = siteURL + url;
				retweet_me = '<iframe scrolling="no" allowTransparency="true" height="20" frameborder="0" width="90" src="http://api.tweetmeme.com/button.js?url=' + tweetmemeURL + '&style=compact&service=bit.ly&service_api=R_6287c92ecaf9efc6f39e4f33bdbf80b1"></iframe>';
				$(this).find(insertionSelector).after('<div class="retweet_me" style="float:left;">' + retweet_me + '</div>');
			}
		});
	} else {
		if ($(blockSelector).find('.retweet_me').length == 0) {
			retweet_me = '<iframe scrolling="no" allowTransparency="true" height="20" frameborder="0" width="90" src="http://api.tweetmeme.com/button.js?url=' + detailPageUrl + '&style=compact&service=bit.ly&service_api=R_6287c92ecaf9efc6f39e4f33bdbf80b1"></iframe>';
			$(blockSelector).find(insertionSelector).after('<div class="retweet_me" style="float:left;">' + retweet_me + '</div>');
		}
	}       
};


/*********************** Please remove this block of code after the new implementation is done in all the sites**************/



