var currentUrl = window.location.toString();

// IMMEDIATELY LOAD & EXECUTE FACEBOOK SCRIPTS IF ON PRODUCT PAGE
// (LAZY LOADING BUGS OUT IN IE)
if (currentUrl.match(/-p-/i) != null) {
    $("html").attr("xmlns:fb", "http://www.facebook.com/2008/fbml");
    if (currentUrl.match(/https/i) != null) {
        document.write('<script id="fbFeatureScript" type="text/javascript" src="https://ssl.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" ></script>');
    }
    else {
        document.write('<script id="fbFeatureScript" type="text/javascript" src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" ></script>');
    }
}

// FUNCTION FOR MAKING A VALID XID FROM INPUT ---
function makeValidXid(xidInput) {

    // CLEAN HTTP
    var xidUrl = xidInput.replace(/https:\/\/|http:\/\//i, "");

    //DELETE HASHTAGS
    var hashPosition = xidUrl.indexOf("#");
    if (hashPosition != -1) {
        xidUrl = xidUrl.substr(0, hashPosition);
    }

    //DELETE QUERYSTRINGS
    var queryPosition = xidUrl.indexOf("?");
    if (queryPosition != -1) {
        xidUrl = xidUrl.substr(0, queryPosition);
    }

    // ESCAPE AND REPLACE FORBIDDEN CHARACTERS
    xidUrl = escape(xidUrl).replace(/\+/g, '%2B').replace(/\*/g, '%2A').replace(/\//g, '%2F').replace(/@/g, '%40');

    // REPLACE NORDIC CHARACTERS
    xidUrl = xidUrl.replace(/å/gi, "aa").replace(/ä/gi, "ae").replace(/ö|ø/gi, "oo");

    // MAKE ALL LOWER CASE
    xidUrl = xidUrl.toLowerCase();

    return (xidUrl);
}


// RENDER FB:COMMENTS BOX -------------------
function displayCommentsBox() {

    // IF-STATEMENT FOR TEST
    //if (currentUrl.match("pink-lady-p-2699") != null) {

    // IF-STATEMENT FOR PRODUCTION    
    if ($(".ProductTabsWrapper").length) {

        // IE FIX FOR FACEBOOK ERROR
        $("body").prepend('<div id="FB_HiddenContainer" style="position:absolute; top:-10000px; width:0px; height:0px;" ></div>');

        // FORM A ROBUST XID
        var xid = makeValidXid(currentUrl);
        //alert(xid);

        //INSERT WIDGET CONTAINER
        $(".ProductTabsWrapper").after("<div id='FacebookWidgetWrapper'></div>");

        // WIDGET CONTAINER STYLING 
        $("#FacebookWidgetWrapper").css("border", "1px solid #ccc");
        $("#FacebookWidgetWrapper").css("padding", "10px");
        $("#FacebookWidgetWrapper").css("margin", "10px 0");
        var widgetCode = "";

        // FB:COMMENTS CODE (REMEMBER TO CHANGE TITLE FOR CUSTOMER)
        widgetCode += '<fb:comments numposts="4" simple="1" title="Protecty.se: ';
        widgetCode += document.title + '" xid="' + xid + '" ></fb:comments>';
        $("#FacebookWidgetWrapper").append(widgetCode);

        // CUSTOMER API KEY & FB FOLDER (AND SSL) BELOW
        var xdReceiverUrl = "/App_Themes/FrameworkBasic/facebook-apps/xd_receiver.htm";
        if (currentUrl.match(/https/i) != null) { xdReceiverUrl = "/App_Themes/FrameworkBasic/facebook-apps/xd_receiver_ssl.htm"; }

        FB.init("d1651efa2dcf3d7833823129fd23a53c", xdReceiverUrl);

    }
}


// SCRIPTS TO BE RUN AT STARTUP BELOW -----
$(document).ready(function () {

    $(window).load(function () {
        displayCommentsBox();
    });
});
// END DOCUMENT.READY -----

