// itelligent septiembre 2010

$.fn.cssp = function (css) {

    $(this).each(function () {
        var cssp = css.match(/[^\{\}]+\{[^}]+\}/g)

        var trim = function (str) {
            return str.replace(/^\s*/, '').replace(/\s*$/, '')
        }

        var jqt = $(this);
        for(var i = 0; i < cssp.length; i++) {
            var csspr = cssp[i].match(/^([^\{\}]+)\{([^}]+)\}$/)
            var cssprls = csspr[2].match(/[^:]+:[^;]+;/g)

            var aux = {};
            for(var j = 0; j < cssprls.length; j++) {
                var aux2 = cssprls[j].match(/^([^:]+):([^;]+);/)
                aux[trim(aux2[1])] = trim(aux2[2]).replace(/'/g, '')
            }

            csspr[1] = trim(csspr[1]);

            if(csspr[1] == 'this')
                jqt.css(aux)
            else
                jqt
                    .find(csspr[1])
                        .css(aux)
                        .end()
        }
    })
    
    return this
}    
