$(function () { // Known used AddThis icons and SocialMedia icons var objSocialMediaClasses = { '.addthis_button_facebook':'share', '.addthis_button_digg':'share', '.addthis_button_rss':'share', '.addthis_button_compact':'share', '.addthis_button_email':'share', '.addthis_button_print':'share', '.addthis_button_stumbleupon':'share', '.addthis_button_reddit':'share', '.addthis_button_twitter':'share', '.addthis_button_myspace':'share', '.addthis_button_favorites':'share', '.addthis_button_linkedin':'share', '.addthis_button_googlebuzz':'share', }; // Loop over object for (var category in objSocialMediaClasses) { prepareBinding(category, objSocialMediaClasses[category]); } // Decouple from loop above function prepareBinding(classExpr, subDirectory) { var funcs = function () { programSend(classExpr, subDirectory, funcs) }; // Namespace for handler $(classExpr).bind('click', funcs); } // Separate 'Facebook Like button' scenario $('fb\\:like').attr('href', window.location.href); $.getScript('http://connect.facebook.net/en_US/all.js', function() { FB.init({ appId: '146565152071280', status: true, cookie: true, xfbml: true }); FB.Event.subscribe('edge.create', function(response) { $.get('http://www.chargeupforgoodhealth.com/programsend/socialmedia/like/facebook/'); } ); } ); }); function programSend (classExpr, subDirectory, funcs) { // Form the directory name from the css class expression var category = classExpr.replace(/.addthis_button_|_like/g, ''); // Spoof request //$.get('http://www.chargeupforgoodhealth.com/programsend/socialmedia/' + subDirectory + '/' + category + '/'); $.get('http://www.chargeupforgoodhealth.com/programsend/socialmedia/' + subDirectory + '/' + category + '/'); // Unbind tracking event $(classExpr).unbind('click', funcs); // Unbind only the handler we created }