﻿String.prototype.trim = function () {
    return this.replace(/^\s+|\s+$/g, "");
}
String.prototype.trimStart = function () {
    return this.replace(/^\s+/, "");
}
String.prototype.trimEnd = function () {
    return this.replace(/\s+$/, "");
}

function getChartLink(marketId, runnerId) {
    return "http://uk.site.sports.betfair.com//betting/LoadRunnerInfoAction.do?marketId=" + marketId + "&selectionId=" + runnerId + "&currency=EUR";
}

function getMarketLink(marketId) {
    //return "www.google.de";
    _0x1e28 = ["\x68\x74\x74\x70\x3A\x2F\x2F\x73\x69\x74\x65\x2E\x73\x70\x6F\x72\x74\x73\x2E\x62\x65\x74\x66\x61\x69\x72\x2E\x63\x6F\x6D\x2F\x77\x69\x64\x67\x65\x74\x73\x2F\x6C\x61\x79\x6F\x75\x74\x73\x2F\x6D\x61\x72\x6B\x65\x74\x56\x69\x65\x77\x2E\x6A\x73\x70\x3F\x5F\x6C\x6F\x63\x61\x6C\x65\x49\x64\x3D\x65\x6E\x5F\x47\x42\x26\x5F\x62\x72\x61\x6E\x64\x49\x64\x3D\x62\x65\x74\x66\x61\x69\x72\x26\x5F\x72\x65\x67\x69\x6F\x6E\x49\x64\x3D\x47\x42\x52\x26\x64\x6F\x6D\x3D\x62\x65\x74\x66\x61\x69\x72\x2E\x63\x6F\x6D\x26\x6F\x72\x69\x67\x69\x6E\x3D\x4D\x52\x4C\x26\x63\x6F\x6E\x74\x65\x6E\x74\x44\x6F\x6D\x61\x69\x6E\x3D\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x62\x65\x74\x66\x61\x69\x72\x2E\x63\x6F\x6D\x26\x64\x73\x31\x3D\x68\x74\x74\x70\x3A\x2F\x2F\x75\x6B\x2E\x73\x69\x74\x65\x2E\x73\x70\x6F\x72\x74\x73\x2E\x62\x65\x74\x66\x61\x69\x72\x2E\x63\x6F\x6D\x2F\x26\x64\x73\x32\x3D\x68\x74\x74\x70\x3A\x2F\x2F\x61\x75\x2E\x73\x69\x74\x65\x2E\x73\x70\x6F\x72\x74\x73\x2E\x62\x65\x74\x66\x61\x69\x72\x2E\x63\x6F\x6D\x2F\x26\x63\x64\x6E\x45\x6E\x61\x62\x6C\x65\x64\x3D\x74\x72\x75\x65\x26\x63\x64\x6E\x41\x64\x64\x72\x65\x73\x73\x3D\x63\x61\x63\x68\x65\x2E\x73\x69\x74\x65\x2E\x73\x70\x6F\x72\x74\x73\x2E\x62\x65\x74\x66\x61\x69\x72\x2E\x63\x6F\x6D\x26\x7A\x6F\x6E\x65\x56\x69\x64\x65\x6F\x45\x6E\x61\x62\x6C\x65\x64\x3D\x74\x72\x75\x65\x23\x6D\x69\x3D", "\x26\x65\x78\x3D\x31"];
    return _0x1e28[0] + marketId + _0x1e28[1];
    //return "http://site.sports.betfair.com/widgets/layouts/marketView.jsp?_localeId=en_GB&_brandId=betfair&_regionId=GBR&dom=betfair.com&origin=MRL&contentDomain=content.betfair.com&ds1=http://uk.site.sports.betfair.com/&ds2=http://au.site.sports.betfair.com/&cdnEnabled=true&cdnAddress=cache.site.sports.betfair.com&zoneVideoEnabled=true#mi=" + marketId + "&ex=1";
}

function initializeColorbox() {
    var timeTracker = new TimeTracker([1000, 5000, 10000, 30000, 60000, 180000])
    var completed = false;

    $(".icon_stats").colorbox({ width: "700px", height: "540px", iframe: true, scrolling: false, current: "Chart {current} of {total}",
        onOpen: function () {
            // track click event
            _gaq.push(['_trackEvent', $pageName, 'click', 'chart']);
        },
        onComplete: function () {
            // if charts were switched from within the colorbox
            if (!completed) {
                timeTracker._recordEndTime();
                var pageTracker = _gaq._getAsyncTracker('');
                timeTracker._track(pageTracker, undefined, 'chart');
            }

            timeTracker._recordStartTime();
            completed = false;
        },
        onCleanup: function () {
            timeTracker._recordEndTime();

            var pageTracker = _gaq._getAsyncTracker('');
            timeTracker._track(pageTracker, undefined, 'chart');
            completed = true;
        }
    });

    $(".icon_game").colorbox({ width: "900px", height: "640px", iframe: true, scrolling: false, current: "Market {current} of {total}",
        onOpen: function () {
            // track click event
            _gaq.push(['_trackEvent', $pageName, 'click', 'market']);
        },
        onComplete: function () {
            // if markets were switched from within the colorbox
            if (!completed) {
                timeTracker._recordEndTime();
                var pageTracker = _gaq._getAsyncTracker('');
                timeTracker._track(pageTracker, undefined, 'market');
            }

            timeTracker._recordStartTime();
            completed = false;
        },
        onCleanup: function () {
            timeTracker._recordEndTime();
            var pageTracker = _gaq._getAsyncTracker('');
            timeTracker._track(pageTracker, undefined, 'market');
            completed = true;
        }
    });

    // Set Navigation Key Bindings
    $(document).live("keydown.cbox_arrows", function (e) {
        if ($related.length > 1) {
            if (e.keyCode === 37) {
                e.preventDefault();
                $prev.click();
            } else if (e.keyCode === 39) {
                e.preventDefault();
                $next.click();
            }
        }
    });
}

function getMetaSort(value, isString) {
    if (isString) {
        value = "'" + value + "'";
        //value = '"' + value + '"';
    }
    return '{sortValue: ' + value + '}';
}

function getOddsSort(odds) {
    if (odds == null || odds == '' || odds == 0) return getMetaSort(1001);
    return getMetaSort(odds);
}

function getLocale(value) {
    switch (value) {
        case 'el':
            return '1032';
            break;
        default:
            return '1033';
            break;
    }
}

function getArrowClass(show, up) {
    if (show) {
        if (up) {
            return 'icon_up';
        } else {
            return 'icon_down';
        }
    }
    return '';
}

function getColorClass(value, color) {
    if (value == null || value <= 0 || value == '')
        return '';

    var baseColorClass = '';
    switch (color) {
        case "red":
            baseColorClass = 'cellbg_red';
            break;
        case "green":
            baseColorClass = 'cellbg_green';
            break;
        case "blue":
            baseColorClass = 'cellbg_blue';
            break;
        case "pink":
            baseColorClass = 'cellbg_pink';
            break;
    }

    if (baseColorClass == '')
        return '';

    return baseColorClass + value;
}

function getSpecificColorClass(value, color, colorValue) {
    if (value == null || value == 0) return '';
    return getColorClass(colorValue, color);
}

function getPickColorClass(pick) {
    if (pick == null || pick == '')
        return '';
    return getColorClass(3, "blue");
}

function getSpecificPickColorClass(pick, color, colorValue) {
    if (pick == null || pick == '')
        return '';
    return getColorClass(colorValue, color);
}

function formatPercent(value) {
    return Math.round(value * 100) + '%';
}

function formatVolume(value) {
    // if the value is <= 0
    if (value == null || value == NaN || value <= 0) return '';
    // otherwise
    return '€ ' + addCommas(value);
}

function formatVolumeIndex(value) {
    if (value == 0) return '';

    return formatPercent(value);
}

function formatDropPercentage(value) {
    if (value == 1) return '-';
    return formatPercent(value - 1);
}

function addCommas(nStr) {
    nStr += '';
    x = nStr.split('.');
    x1 = x[0];
    x2 = x.length > 1 ? '.' + x[1] : '';
    var rgx = /(\d+)(\d{3})/;
    while (rgx.test(x1)) {
        x1 = x1.replace(rgx, '$1' + '.' + '$2');
    }
    return x1 + x2;
}

function formatTip(value) {
    if (value == null) return '';
    return value;
}