﻿/* Modded to use JQuery
* Lancetek - 2009

<script type="text/javascript">
    $(document).ready(function() {
    
        $('.checkout-title, .optima, .details-hdr, .checkout-breadcrumbs'  ).each(function() {
            FontReplacer.replaceElement($(this), 'LTe50019.ttf');
        });
        
    });

</script>

*/
var FontReplacer = {

    _url: '/DotNetIR/fontwriter.ashx?font=[font]&text=[text]&height=[height]&color=[color]&bcolor=[bcolor]&size=[size]',
    _enableTransparency: true,
    _forceHeight: false,
    _forceWidth: false,


    replaceElement: function(el, font) {

        // get attributes of elements
        var text = jQuery.trim(el.text());
        text = escape(text);
        
        if (!text) //if the text element is empty, don't worry about it.
            return;



        var color = el.css("color");
        var bcolor = el.css("background-color");
        var height = el.css("height");
        var width = el.css("width");
        var size = el.css("font-size");

        if (color.indexOf('rgb') != -1)
            color = this.cssRgb2Hex(color);

        if (bcolor == 'transparent' && !this._enableTransparency)
            bcolor = '';

        if (bcolor.indexOf('rgb') != -1)
            bcolor = this.cssRgb2Hex(bcolor);

        color = color.replace('#', '');
        bcolor = bcolor.replace('#', '');


        // create image for replacement
        var url = this._url.replace('[text]', text).replace('[font]', font).replace('[bcolor]', bcolor).replace('[color]', color).replace('[size]', size);
        if (this._forceWidth)
            url = url.replace('[width]', width);
        if (this._forceHeight)
            url = url.replace('[height]', height);
        //alert(url);
        //replace the text with the image
        el.html('<img src="' + url + '" alt="' + text + '" />');
    },


    cssRgb2Hex: function(color) {
        var c = color.replace('rgb(', '').replace(')', '').split(',');
        return this.rbg2hex(parseInt(c[0]), parseInt(c[1]), parseInt(c[2]));
    },

    rbg2hex: function(red, green, blue) {
        var r = red.toString(16);
        var g = green.toString(16);
        var b = blue.toString(16);

        var c =
		((r.toString().length == 1) ? '0' : '') + r +
		((g.toString().length == 1) ? '0' : '') + g +
		((b.toString().length == 1) ? '0' : '') + b;

        return c;
    }
};