﻿// Default values
var defaults = {
    errorMsg: function() { $.AlertError('Något gick fel, var god och försök senare.'); },
    width: '',
    height: '',
    errors: [],
    ie6: false,
    ie7: false,
    ie8: false,
    siteName: 'www2.tidningsretur.se',
    tiptipOption: { defaultPosition: 'top', fadeIn: 200, delay: 0 },
    interVal: {
        col: undefined,
        time: 100
    },
    interValCount: {
        col: 0,
        times: 0
    },
    pageExceptions: [
		{ target: '/information/säljtips.aspx', menuSrc: 'ul.information_menu', pages: ['/information/säljtips.aspx', '/information/leveransinformation.aspx', '/information/kontakt.aspx'] },
		{ target: '/minbutik.aspx', menuSrc: 'ul.shop_menu', pages: ['/e-postfaktura.aspx', '/nödetiketter.aspx', '/butiksinformation.aspx', '/minbutik.aspx', '/öppettider.aspx', '/beställabuntblock.aspx', '/beställatidningsjournal.aspx', '/säsong.aspx', '/helgspärr.aspx'] }
	],
    setCurrentPage: function() {
        var _uri = decodeURI(window.location).replace('http://' + defaults.siteName, '').toLowerCase();
        if (_uri === '/') { _uri = ''; }

        if (!_uri.IsNullOrEmpty()) {
            var found = false;
            for (x = 0; x < defaults.pageExceptions.length; x++) {
                for (i = 0; i < defaults.pageExceptions[x].pages.length; i++) {
                    if (_uri === defaults.pageExceptions[x].pages[i]) {
                        $(defaults.pageExceptions[x].menuSrc).find('a').each(function() {
                            _thisUrl = $(this).attr('href').toLowerCase();
                            if (_thisUrl === _uri) {
                                $(this).css('color', '#ff0000');
                                return false;
                            }
                        });
                        _uri = defaults.pageExceptions[x].target;
                        found = true;
                        break;
                    }
                }
                if (found) { break; }
            }
        }
        else {
            _uri = '/hem.aspx';
        }

        var _thisUrl = '';
        $('div#menuContainer a').each(function() {
            if (typeof $(this).attr('href') === 'undefined') { return; }
            _thisUrl = $(this).attr('href').toLowerCase();
            if (_thisUrl === _uri) {
                $(this).attr('class', $(this).attr('class') + '_current');
                return false;
            }
            else if (_thisUrl === '/hem.aspx' && _uri === '/default.aspx') {
                $(this).attr('class', $(this).attr('class') + '_current');
                return false;
            }
        });
    }
}

$(function() {
    defaults.setCurrentPage();
    defaults.width = $(window).width();
    defaults.height = $(document).width() > $(window).width() ? $(document).width() : $(window).width();
    defaults.interValCount.col = 0;
    if ($.browser.msie) {
        var version = parseInt($.browser.version.substr(0, 1));
        defaults.ie6 = version < 7;
        defaults.ie7 = version === 7;
        defaults.ie8 = version >= 8;
    }

    //Set ticker interval
    defaults.interVal.col = jQuery.interval(colResize, defaults.interVal.time, colResize);

    $("a#cookieInfo").live('mousedown', function(e) { $.Get({ url: '/views/shared/cookie.htm', dataType: 'html', success: $.showDialog }); e.preventDefault(); });
    $("div#siteLogo").live('mousedown', function(e) { window.redirect('/hem.aspx'); e.preventDefault(); });

    if (($("div#l-col div.levContainer").get(0) !== 'undefined' && $("div#r-col div.levContainer").get(0) !== 'undefined') && ($("div#l-col div.levContainer").height() !== $("div#r-col div.levContainer").height())) {
        if ($("div#l-col div.levContainer").height() > $("div#r-col div.levContainer").height()) {
            $("div#r-col div.levContainer").css('height', $("div#l-col div.levContainer").height() + 'px');
        }
        else {
            $("div#l-col div.levContainer").css('height', $("div#r-col div.levContainer").height() + 'px');
        }
    }

    if (!($('div[id$=ab_placard]').get(0) !== 'undefined' || $('div[id$=ex_placard]').get(0) !== 'undefined')) {
        // setup tooltip
        if (defaults.ie6) { defaults.tiptipOption['edgeOffset'] = 16; }
        $('div[id$=ab_placard]').tipTip(defaults.tiptipOption);
        $('div[id$=ex_placard]').tipTip(defaults.tiptipOption);
    }

    if (defaults.ie6) { $('div#menuContainer div.c').remove(); }

    // link fix
    $('div[id$=ab_placard]').removeAttr('onclick');
    $('div[id$=ex_placard]').removeAttr('onclick');

    $('div[id$=ab_placard]').click(function(e) {
        e.preventDefault();
        window.open('http://www.kvallstidningarna.se');
        return false;
    });

    $('div[id$=ex_placard]').click(function(e) {
        e.preventDefault();
        window.open('http://www.kvallstidningarna.se');
        return false;
    });
});

function colResize() {
    if (($("div#l-col").get(0) !== 'undefined' && $("div#r-col").get(0) !== 'undefined') && ($("div#l-col").height() !== $("div#r-col").height())) {
        if ($("div#l-col").height() > $("div#r-col").height()) {
            $("div#r-col").stop(true, true).animate({ 'height': $("div#l-col").height() + 'px' }, 250);
        }
        else {
            $("div#l-col").stop(true, true).animate({ 'height': $("div#r-col").height() + 'px' }, 250);
        }
        defaults.interValCount.col = 0;
    }
    else {
        if (defaults.interValCount.col === 10 && defaults.interValCount.times === 20) {
            defaults.interVal.col.stop();
            defaults.interVal.col = undefined;
        }
        else if (defaults.interValCount.col === 10) {
            defaults.interValCount.times++;
            defaults.interValCount.col = 0;
            defaults.interVal.time += 200;
            if (defaults.interVal.col) {
                defaults.interVal.col.delay = defaults.interVal.time;
                defaults.interVal.col.stop().start();
            }
        }
        else {
            defaults.interValCount.col++;
        }
    }
    return false;
};
