sfHover = function() {
    var sfEls = document.getElementById("sitenav")
    if (sfEls != null) {
        sfEls = sfEls.getElementsByTagName("li");
        for (var i = 0; i < sfEls.length; i++) {
            sfEls[i].onmouseover = function() {
                this.className += " sfhover";
            }
            sfEls[i].onmouseout = function() {
                this.className = this.className.replace(new RegExp(" sfhover\\b"), "");
            }
        }
    }
}

if (window.attachEvent) window.attachEvent("onload", sfHover);

if (typeof com == "undefined") var com = new Object();
if (typeof com.deconcept == "undefined") com.deconcept = new Object();
if (typeof com.deconcept.util == "undefined") com.deconcept.util = new Object();
if (typeof com.deconcept.FlashObjectUtil == "undefined") com.deconcept.FlashObjectUtil = new Object();
    com.deconcept.FlashObject = function(swf, id, w, h, ver, c, useExpressInstall, quality, redirectUrl, detectKey) {
    this.DETECT_KEY = detectKey ? detectKey : 'detectflash';
    this.skipDetect = com.deconcept.util.getRequestParameter(this.DETECT_KEY);
    this.params = new Object();
    this.variables = new Object();
    this.attributes = new Array();

    if (swf) this.setAttribute('swf', swf);
    if (id) this.setAttribute('id', id);
    if (w) this.setAttribute('width', w);
    if (h) this.setAttribute('height', h);
    if (ver) this.setAttribute('version', new com.deconcept.PlayerVersion(ver.toString().split(".")));
    if (c) this.addParam('bgcolor', c);
    var q = quality ? quality : 'high';
    this.addParam('quality', q);
    this.setAttribute('redirectUrl', '');
    if (redirectUrl) this.setAttribute('redirectUrl', redirectUrl);
    if (useExpressInstall) {
        var expressInstallReqVer = new com.deconcept.PlayerVersion([6,0,65]);
        var installedVer = com.deconcept.FlashObjectUtil.getPlayerVersion();
        if (installedVer.versionIsValid(expressInstallReqVer) && !installedVer.versionIsValid(this.getAttribute('version'))) {
            this.setAttribute('doExpressInstall', true);
        }
    } else {
        this.setAttribute('doExpressInstall', false);
    }
}
com.deconcept.FlashObject.prototype.setAttribute = function(name, value) {
    this.attributes[name] = value;
}
com.deconcept.FlashObject.prototype.getAttribute = function(name) {
    return this.attributes[name];
}
com.deconcept.FlashObject.prototype.getAttributes = function() {
    return this.attributes;
}
com.deconcept.FlashObject.prototype.addParam = function(name, value) {
    this.params[name] = value;
}
com.deconcept.FlashObject.prototype.getParams = function() {
    return this.params;
}
com.deconcept.FlashObject.prototype.getParam = function(name) {
    return this.params[name];
}
com.deconcept.FlashObject.prototype.addVariable = function(name, value) {
    this.variables[name] = value;
}
com.deconcept.FlashObject.prototype.getVariable = function(name) {
    return this.variables[name];
}
com.deconcept.FlashObject.prototype.getVariables = function() {
    return this.variables;
}
com.deconcept.FlashObject.prototype.getParamTags = function() {
    var paramTags = "";
    var key;
    var params = this.getParams();
    for (key in params) {
        paramTags += '<param name="' + key + '" value="' + params[key] + '" />';
    }
    return paramTags;
}
com.deconcept.FlashObject.prototype.getVariablePairs = function() {
    var variablePairs = new Array();
    var key;
    var variables = this.getVariables();
    for (key in variables) {
        variablePairs.push(key + "=" + variables[key]);
    }
    return variablePairs;
}
com.deconcept.FlashObject.prototype.getHTML = function() {
    var flashHTML = "";
    if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) {
        if (this.getAttribute("doExpressInstall")) {
            this.addVariable("MMplayerType", "PlugIn");
        }
        flashHTML += '<embed type="application/x-shockwave-flash" src="' + this.getAttribute('swf') + '" width="' + this.getAttribute('width') + '" height="' + this.getAttribute('height') + '" id="' + this.getAttribute('id') + '" name="' + this.getAttribute('id') + '"';
        var params = this.getParams();
        for (var key in params) {
            flashHTML += ' ' + key + '="' + params[key] + '"';
        }
        pairs = this.getVariablePairs().join("&");
        if (pairs.length > 0) {
            flashHTML += ' flashvars="' + pairs + '"';
        }
        flashHTML += '></embed>';
    } else { // PC IE
        if (this.getAttribute("doExpressInstall")) {
            this.addVariable("MMplayerType", "ActiveX");
        }
        flashHTML += '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + this.getAttribute('width') + '" height="' + this.getAttribute('height') + '" id="' + this.getAttribute('id') + '">';
        flashHTML += '<param name="movie" value="' + this.getAttribute('swf') + '" />';
        var tags = this.getParamTags();
        if (tags.length > 0) {
            flashHTML += tags;
        }
        var pairs = this.getVariablePairs().join("&");
        if (pairs.length > 0) {
            flashHTML += '<param name="flashvars" value="' + pairs + '" />';
        }
        flashHTML += '</object>';
    }
    return flashHTML;
}
com.deconcept.FlashObject.prototype.write = function(elementId) {
    if (this.skipDetect || this.getAttribute('doExpressInstall') || com.deconcept.FlashObjectUtil.getPlayerVersion().versionIsValid(this.getAttribute('version'))) {
        if (document.getElementById) {
            if (this.getAttribute('doExpressInstall')) {
                this.addVariable("MMredirectURL", escape(window.location));
                document.title = document.title.slice(0, 47) + " - Flash Player Installation";
                this.addVariable("MMdoctitle", document.title);
            }
            document.getElementById(elementId).innerHTML = this.getHTML();
        }
    } else {
        if (this.getAttribute('redirectUrl') != "") {
            document.location.replace(this.getAttribute('redirectUrl'));
        }
    }
}
com.deconcept.FlashObjectUtil.getPlayerVersion = function() {
    var PlayerVersion = new com.deconcept.PlayerVersion(0, 0, 0);
    if (navigator.plugins && navigator.mimeTypes.length) {
        var x = navigator.plugins["Shockwave Flash"];
        if (x && x.description) {
            PlayerVersion = new com.deconcept.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split("."));
        }
    } else if (window.ActiveXObject) {
        try {
            var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
            PlayerVersion = new com.deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
        } catch (e) {
        }
    }
    return PlayerVersion;
}
com.deconcept.PlayerVersion = function(arrVersion) {
    this.major = parseInt(arrVersion[0]) || 0;
    this.minor = parseInt(arrVersion[1]) || 0;
    this.rev = parseInt(arrVersion[2]) || 0;
}
com.deconcept.PlayerVersion.prototype.versionIsValid = function(fv) {
    if (this.major < fv.major) return false;
    if (this.major > fv.major) return true;
    if (this.minor < fv.minor) return false;
    if (this.minor > fv.minor) return true;
    if (this.rev < fv.rev) return false;
    return true;
}
com.deconcept.util.getRequestParameter = function(param) {
    var q = document.location.search || document.location.href.hash;
    if (q) {
        var startIndex = q.indexOf(param + "=");
        var endIndex = (q.indexOf("&", startIndex) > -1) ? q.indexOf("&", startIndex) : q.length;
        if (q.length > 1 && startIndex > -1) {
            return q.substring(q.indexOf("=", startIndex) + 1, endIndex);
        }
    }
    return "";
}

if (Array.prototype.push == null) {
    Array.prototype.push = function(item) {
        this[this.length] = item;
        return this.length;
    }
}
var getQueryParamValue = com.deconcept.util.getRequestParameter;
var FlashObject = com.deconcept.FlashObject;

function addTracking() {

    var trackingDiv = document.getElementById('tracking');
    var num = Math.floor(Math.random() * 9999999);

    trackingDiv.innerHTML = '<img src="http://switch.atdmt.com/action/mdgpad_softwaredownload_9?' + num + '" height="1" width="1" alt="" /><img height="1" width="1" src="http://cust053.pool001.bidcenter-8.inceptor.com/97700/marker/Download+Button?js=no&' + num + '">';
    for (i = 0; i < 5000; i++) setTimeout('', 2000);

}

function popup(url, features) {
    var defaultFeatures = '\,location=0,statusbar=0,menubar=0,resizable=1';
    features += defaultFeatures;
    var target = '_blank';
    var theWindow = window.open(url, target, features);
    theWindow.focus();
    return theWindow;
}

function PopupPic(sPicURL, sPicDESC) {
    window.open("/image.html?" + sPicURL + "&" + sPicDESC, "", "resizable=1,left=10,top=10");
}

function downloadPrompt() {

    var answer = confirm("Click OK to Download the PaddyPowerPoker Client and Continue Browsing");

    if (answer) {
        window.location = '/downloads/download-now.php?dl_yes=true';
    } else {
        window.location = '/index.php?dl_cancel=true';
    }
}

function downloadCookie() {

    set_cookie("poker-client-downloaded", "true", 60);

}

function startDownload(url) {

    setTimeout("window.location='" + url + "'", 1000);
    downloadCookie();

}


function checkClientDownloaded(display, delay, start_time, end_time, days) {

    if (getCookie("user-download-prompt") == null && getCookie("poker-client-downloaded") == null) {

        if (display == 1) {
            var all_days = true;
            if (days.length != 0) {
                all_days = false;
                var days = days.split(',');
            }
            var currentTime = new Date();
            if ((start_time == '' ) || (end_time == '')) {
                if (all_days == true) {
                    doDocReady(delay);
                } else {
                    var day = currentTime.getDay() - 1;
                    if (in_array(day, days)) {
                        doDocReady(delay);
                    }
                }
            } else {

                var h = currentTime.getHours();
                var m = currentTime.getMinutes() + (h * 60);
                var s_t = start_time.split(':');
                var st_m = (parseInt(s_t[0]) * 60) + parseInt(s_t[1]);
                var e_t = end_time.split(':');
                var et_m = (parseInt(e_t[0]) * 60) + parseInt(e_t[1]);

                if (all_days == true && (m >= st_m) && (m <= et_m)) {
                    doDocReady(delay);
                }

                if (all_days == false && (m >= st_m) && (m <= et_m)) {
                    //check if today is one of the days
                    var day = currentTime.getDay() - 1;
                    if (in_array(day, days)) {
                        doDocReady(delay);
                    }

                }
            }
            set_cookie("user-download-prompt", "true");
        }
    }

}

function doDocReady(delay) {
    $(document).ready(function() {
        setTimeout('showDownloadPopup()', delay * 1000);
    });
}

function in_array(what, where) {
    var a = false;
    for (var i = 0; i < where.length; i++) {
        if (what == where[i]) {
            a = true;
            break;
        }
    }
    return a;
}

function showDownloadPopup() {
    jQuery.fn.colorbox({
        open: true,
        width: "400px",
        height: "300px",
        iframe: true,
        href: '/index.php/home/download-now/',
        overlayClose: false
    }, function() {
        $("#cboxClose").hide();
    });
}

function closeDownloadWindow(set_cookie) {

    if (set_cookie) {

        downloadCookie();

    }

    //parent.$.fn.colorbox.close();
    window.location = '/index.php?dl_cancel=true'

}

//
// Function for getting cookies
//

function getCookie(name) {
    var prefix = name + "=";
    var begin = document.cookie.indexOf(prefix);
    if (begin == -1) return null;
    var end = document.cookie.indexOf(";", begin);

    if (end == -1) end = document.cookie.length;
    return (unescape(document.cookie.substring(begin + prefix.length, end)));
}

function set_cookie(name, value, days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else
        var expires = "";

    var host = window.location.host;
    var domain = host.substring(host.lastIndexOf('.', host.lastIndexOf('.')-1));

    document.cookie = name + "=" + value + expires + "; path=/; domain=" + domain;
}

function load_IWF_overlay(url) {

    jQuery.fn.colorbox({
        open: true,
        width: "1120px",
        height: "750px",
        iframe: true,
        href: url,
        overlayClose: false
    }, function() {
        //$("#cboxClose").hide();
    });
    return false;
}

//EVENT HANDLERS HERE
$(document).ready(function() {


    //replaces .expand-btn links with expandable image backgrounds
    //the background image is defined in content.css
    $("a.expand-btn").each(function() {

        var contents = $(this).html();
        var background = $(this).css('background-image');
        var padding_right = $(this).css('padding-right');
        var padding_top = $(this).css('padding-top');
        var padding_bottom = $(this).css('padding-bottom');
        var padding_left = $(this).css('padding-left');

        $(this).css('padding', '0');
        $(this).css('background-image', 'none');
        $(this).html("");

        $("<span>")
            .addClass("expand-left")
            .html(contents)
            .css('background-image', background)
            .css('padding-top', padding_top)
            .css('padding-right', padding_right)
            .css('padding-bottom', padding_bottom)
            .css('padding-left', padding_left)
            .appendTo($(this));

        //400 = image width
        //var background_pos = (400 - padding_left.substr(0,padding_left.indexOf('px'))) * -1 + "px 0";

        //alert(padding_left.substr(0,padding_left.indexOf('px')));

        $("<span>")
            .addClass("expand-right")
            .html('&nbsp;')
            .css('background-image', background)
            .css('padding-top', padding_top)
            .css('padding-right', padding_right)
            .css('padding-bottom', padding_bottom)
            .css('padding-left', padding_left)
            .appendTo($(this));

        $(this).after('<div class="clear">');

    });

    //replaces .expand-btn links with expandable image backgrounds
    //the background image is defined in content.css
    $("a.expand-btn").each(function() {

        var contents = $(this).html();
        var background = $(this).css('background-image');
        var padding_right = $(this).css('padding-right');
        var padding_top = $(this).css('padding-top');
        var padding_bottom = $(this).css('padding-bottom');
        var padding_left = $(this).css('padding-left');

        $(this).css('padding', '0');
        $(this).css('background-image', 'none');
        $(this).html("");

        $("<span>")
            .addClass("expand-left")
            .html(contents)
            .css('background-image', background)
            .css('padding-top', padding_top)
            .css('padding-right', padding_right)
            .css('padding-bottom', padding_bottom)
            .css('padding-left', padding_left)
            .appendTo($(this));

        //400 = image width
        //var background_pos = (400 - padding_left.substr(0,padding_left.indexOf('px'))) * -1 + "px 0";

        //alert(padding_left.substr(0,padding_left.indexOf('px')));

        $("<span>")
            .addClass("expand-right")
            .html('&nbsp;')
            .css('background-image', background)
            .css('padding-top', padding_top)
            .css('padding-right', padding_right)
            .css('padding-bottom', padding_bottom)
            .css('padding-left', padding_left)
            .appendTo($(this));

        $(this).after('<div class="clear">');

    });


    $('#youtube_channel').click(function() {
        jQuery.fn.colorbox({
            open: true,
            width: "1020px",
            height: "700px",
            iframe: true,
            href: $(this).attr('href'),
            overlayClose: false
        }, function() {
            //$("#cboxClose").hide();
        });
        return false;
    });

    $('#general_overlay').click(function() {
        jQuery.fn.colorbox({
            open: true,
            width: "1020px",
            height: "700px",
            iframe: true,
            href: $(this).attr('href'),
            overlayClose: false
        }, function() {
            //$("#cboxClose").hide();
        });
        return false;
    });

    $('#ipo_thumbs_right').click(function() {
        var fade_in = $('#gallery_2');
        var fade_out = $('#gallery_1');
        gallery_fade_in_out(fade_in, fade_out);
        return false;
    });

    $('#ipo_thumbs_left').click(function() {
        var fade_in = $('#gallery_1');
        var fade_out = $('#gallery_2');
        gallery_fade_in_out(fade_in, fade_out);
        return false;
    });

    $('.spawn_image').click(function() {
        $('.ipo-gallery-container iframe').css('display', 'none');

        var img_src = $(this).attr('href');
        $('.ipo-gallery-container img').fadeOut('fast', function() {
            $(this).attr('src', img_src);
            $(this).fadeIn('fast');
        });
        return false;
    });

    $('.spawn_youtube').click(function() {
        var fade_in = $('.ipo-gallery-container iframe');
        var fade_out = $('.ipo-gallery-container img');
        gallery_fade_in_out(fade_in, fade_out);
        return false;
    });

    $('.topnav li a').filter(
        function() {
            return $(this).attr('href').indexOf('irish-poker-open') > 0;
        }).addClass('ipo-nav-button');

    /*	The feeders link - we need them to open in a colorbox modal dialog box	*/
    $('a[title="feeders_modal"]').colorbox({title: 'Irish Poker Open Feeders'});

    $('.live-help').click(function() {
        var popup_href = $(this).attr('href');
        window.open(popup_href, 'blank', 'resizable= yes,width=610,height=500');
        return false;
    });
});

function gallery_fade_in_out(fade_in, fade_out) {
    fade_out.css('display', 'none');
    fade_in.fadeIn('fast');
}

function init_ipo_venue_map() {
    var venue_lat_lng = new google.maps.LatLng(53.32930319352289, -6.24822735786438);
    var map_options = {    zoom: 12,
        center: venue_lat_lng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var venue_map = new google.maps.Map(document.getElementById('map'), map_options);
    var venue_marker = new google.maps.Marker({position: venue_lat_lng, title: 'Irish Poker Open Venue'});
    venue_marker.setMap(venue_map);
}

function countdown(then) {
    this.then = then;

    function digits(n) {
        return 1 + Math.floor(Math.log(n) / Math.log(10));
    }

    function setElement(id, label, value) {
        if (digits(value) < 2) {
            value = '0' + value;
        }

        window.document.getElementById(id).innerHTML = value + label;
    }

    function countdown() {
        now = new Date();
        diff = new Date(this.then - now);

        seconds_left = Math.floor(diff.valueOf() / 1000);
        seconds = Math.floor(seconds_left / 1) % 60;
        minutes = Math.floor(seconds_left / 60) % 60;
        hours = Math.floor(seconds_left / 3600) % 24;
        days = Math.floor(seconds_left / 86400) % 86400;

        setElement('countdown_days', ' days', days);
        setElement('countdown_hours', ':', hours);
        setElement('countdown_minutes', ':', minutes);
        setElement('countdown_seconds', '', seconds);

        countdown.timer = setTimeout(countdown, 1000);
    }

    function start() {
        this.timer = setTimeout(countdown, 1000);
    }

    start(then);
    //$('.starts-in').hide();
}

/* Function to exit page takeover */
/* File need to sit on same domain as the target swf */
function takeover_close() {
    $('#takeover').html('');
    $('#takeover').css('z-index', -1);
}

//Added for PPY search engine referral tracking
function queryString(parameter) {
    var loc = location.search.substring(1, location.search.length);
    var param_value = false;

    var params = loc.split("&");
    for (i = 0; i < params.length; i++) {
        param_name = params[i].substring(0, params[i].indexOf('='));
        if (param_name == parameter) {
            param_value = params[i].substring(params[i].indexOf('=') + 1)
        }
    }
    if (param_value) {
        return param_value;
    }
    else {
        return false; //Here determine return if no parameter is found
    }
}

function isAffId(str) {
    return /^[0-9]+$/.test(str);
}

if (!isAffId(getCookie("AFF_ID")) && !isAffId(queryString("AFF_ID"))) {
    /* Take in the Referrer string and convert to lowercase */
    var seo_ref = document.referrer.toLowerCase();
    var re5digit = /(\?|&)q=(.)*$/;

    if ((seo_ref.indexOf("google") > 0)) {

        re5digit = /(\?|&)q=[^&]*/;
        var qstring = seo_ref.match(re5digit);

        if (qstring !== null) {
            if (qstring[0].length <= 3) {
                set_cookie('AFF_ID', '8534', '');//google has blocked the keywords
            }
            else if ((qstring[0].indexOf("paddy") < 0)) {
                set_cookie('AFF_ID', '60014', '');
            }
            else /* If we do match Paddy...*/
            {
                set_cookie('AFF_ID', '1711', '');
            }
        }
        /* Check if Yahoo */
    } else if ((seo_ref.indexOf("yahoo") > 0)) {
        //search for different query param for yahoo
        re5digit = /(\?|&)p=(.)*$/;
        if (seo_ref.search(re5digit) !== -1) {
            /* Check for a brand term now */
            seo_ref = seo_ref.substring(seo_ref.search(re5digit), seo_ref.length);
            /* Branded or Non branded check */
            if ((seo_ref.indexOf("paddy") < 0)) {
                set_cookie('AFF_ID', '60016', '');
            } else {
                set_cookie('AFF_ID', '1713', '');
            }
        }
        /* Check if Bing */
    } else if (((seo_ref.indexOf("bing") > 0) || (seo_ref.indexOf("msn") > 0)) && (seo_ref.indexOf("bingo.") < 0)) {
        if (seo_ref.search(re5digit) !== -1) {
            /* Check for a brand term now */
            seo_ref = seo_ref.substring(seo_ref.search(re5digit), seo_ref.length);
            if ((seo_ref.indexOf("paddy") < 0)) {
                set_cookie('AFF_ID', '60015', '');
            } else {
                set_cookie('AFF_ID', '1712', '');
            }
        }
    }
    else if ((seo_ref.indexOf("facebook.") > 0)) {
        set_cookie('AFF_ID', '10062945', '');
    }
}

