﻿// Claudio
(function($) {

jQuery.fn.outerHTML = function(s) {
    return (s)
? this.before(s).remove()
: jQuery("<p>").append(this.eq(0).clone()).html();
}

    // Get a reference to the original data method.
    var originalData = jQuery.data;

    // Override the data method
    jQuery.data = function(elem, name, data, pvt) {

    if (!jQuery.acceptData(elem)) {
        return;
    }

    isNode = elem.nodeType,
	cache = isNode ? jQuery.cache : elem,

    id = isNode ? elem[jQuery.expando] : elem[jQuery.expando] && jQuery.expando;

    if (id !== undefined && cache[id] === undefined)
        cache[id] = [];

        return originalData.apply(this, arguments);
    };

})(jQuery);
