$(document).ready(function() {

    // Link tracking
    $('a').each(function() {
        var href = $(this).attr('href');
        var filetypes = /\.(zip|exe|pdf|doc|xls|ppt|mp3|eps|docx|rar|csv|gz|dmg|xml)$/i;

        if (href) {
            // Website
            if ((href.match(/^https?\:/i)) && (!href.match(document.domain)) && (!href.match(filetypes))) {
                $(this).click(function() {
                    var webLink = href.replace(/^https?\:\/\//i, '');
                    if (typeof (intLinkDomains) != 'undefined' && webLink.match(intLinkDomains))
                    {
                        if (webLink.match(/shop\./i))
                        {
                            _gaq.push(['_trackEvent', 'Internal Link Click', 'Shop', webLink]);
                        }

                        if (this.target == "_blank")
                        {
                            _gaq.push(function()
                            {
                                var pageTracker = _gat._getTrackerByName(); // Gets the default tracker.
                                var linkerUrl = pageTracker._getLinkerUrl(href);

                                window.open(linkerUrl);
                            });
                            return false;
                        }
                        else
                        {
                            _gaq.push(['_link', href]);
                            return false;
                        }
                    }
                    else
                    {
                        _gaq.push(['_trackEvent', 'External Link Click', 'Web', webLink]);
                    }

                });
            };

            // E-mail
            if (href.match(/^mailto\:/i)) {
                $(this).click(function() {
                    var mailLink = href.replace(/^mailto\:/i, '');
                    _gaq.push(['_trackEvent', 'External Link Click', 'Email', mailLink]);
                });
            }

            // File
            if (href.match(filetypes)) {
                $(this).click(function() {
                    var extension = (/[.]/.exec(href)) ? /[^.]+$/.exec(href) : undefined;
                    _gaq.push(['_trackEvent', 'External Link Click', 'Download - ' + extension, href]);
                });
            }

        }

    });

    // Poll tracking
    $(".pollHolder input:submit").click(function() {
        var pollQuestion = $('.pollHolder .questionHolder .headline').justtext();
        pollQuestion = $.trim(pollQuestion).replace(/ *\\n */i, '');

        $('.pollHolder .questionHolder input[type=radio]').each(function() {
            var pollAnswer = $(this).parent().justtext();
            pollAnswer = $.trim(pollAnswer).replace(/ *\\n */i, ''); ;

            if ($(this).attr('checked')) {
                _gaq.push(['_trackEvent', 'Poll Answer', pollQuestion, pollAnswer]);
            }
        });

    });

    // Competition tracking
    //    $(".quizHolder input:submit").click(function() {
    //        var quizHeadline = location.pathname.toLowerCase();
    //        quizHeadline = $.trim(quizHeadline).replace(/\.aspx/i, '');
    //        quizHeadline = quizHeadline.substr(quizHeadline.lastIndexOf('/') + 1);

    //        _gaq.push(['_trackEvent', 'Competition Answer Count', quizHeadline]);
    //    });

});

// Functions
jQuery.fn.justtext = function() {
    return $(this).clone()
            .children()
            .remove()
            .end()
            .text();
};


