$.cookie2 = function(name, value, options){
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            }
            else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', value, expires, path, domain, secure].join('');
    }
    else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = cookie.substring(name.length + 1);
                    break;
                }
            }
        }
        return cookieValue;
    }
};

$(document).ready(function(){
    $("#rightcontainer").remove();
    $("#due-rightcolumn").remove();
    
    $(".col0 > .gSplitColumn:eq(1)").addClass('botten');
});
var cookieName = 'val2010';
var expireTime = 115;
var json = {
    "data": {
        "Blekinge län": ["Karlshamn", "Karlskrona", "Olofström", "Ronneby", "Sölvesborg"],
        "Dalarnas län": ["Avesta", "Borlänge", "Falun", "Gagnef", "Hedemora", "Leksand", "Ludvika", "Malung-Sälen", "Mora", "Orsa", "Rättvik", "Smedjebacken", "Säter", "Vansbro", "Älvdalen"],
        "Jämtlands län": ["Berg", "Bräcke", "Härjedalen", "Krokom", "Ragunda", "Strömsund", "Åre", "Östersund"],
        "Gotlands län": ["Gotland"],
        "Gävleborgs län": ["Bollnäs", "Gävle", "Hofors", "Hudiksvall", "Ljusdal", "Nordanstig", "Ockelbo", "Ovanåker", "Sandviken", "Söderhamn"],
        "Hallands län": ["Falkenberg", "Halmstad", "Hylte", "Kungsbacka", "Laholm", "Varberg"],
        "Jönköpings län": ["Aneby", "Eksjö", "Gislaved", "Gnosjö", "Habo", "Jönköping", "Mullsjö", "Nässjö", "Sävsjö", "Tranås", "Vaggeryd", "Vetlanda", "Värnamo"],
        "Kalmar län": ["Borgholm", "Emmaboda", "Hultsfred", "Högsby", "Kalmar", "Mönsterås", "Mörbylånga", "Nybro", "Oskarshamn", "Torsås", "Vimmerby", "Västervik"],
        "Kronobergs län": ["Alvesta", "Lessebo", "Ljungby", "Markaryd", "Tingsryd", "Uppvidinge", "Växjö", "Älmhult"],
        "Norrbottens län": ["Arjeplog", "Arvidsjaur", "Boden", "Gällivare", "Haparanda", "Jokkmokk", "Kalix", "Kiruna", "Luleå", "Pajala", "Piteå", "Älvsbyn", "Överkalix", "Övertorneå"],
        "Skåne län": ["Bjuv", "Bromölla", "Burlöv", "Båstad", "Eslöv", "Helsingborg", "Hässleholm", "Höganäs", "Hörby", "Höör", "Klippan", "Kristianstad", "Kävlinge", "Landskrona", "Lomma", "Lund", "Malmö", "Osby", "Perstorp", "Simrishamn", "Sjöbo", "Skurup", "Staffanstorp", "Svalöv", "Svedala", "Tomelilla", "Trelleborg", "Vellinge", "Ystad", "Åstorp", "Ängelholm", "Örkelljunga", "Östra Göinge"],
        "Stockholms län": ["Botkyrka", "Danderyd", "Ekerö", "Haninge", "Huddinge", "Järfälla", "Lidingö", "Nacka", "Norrtälje", "Nykvarn", "Nynäshamn", "Salem", "Sigtuna", "Sollentuna", "Solna", "Stockholm", "Sundbyberg", "Södertälje", "Tyresö", "Täby", "Upplands Väsby", "Upplands-Bro", "Vallentuna", "Vaxholm", "Värmdö", "Österåker"],
        "Södermanlands län": ["Eskilstuna", "Flen", "Gnesta", "Katrineholm", "Nyköping", "Oxelösund", "Strängnäs", "Trosa", "Vingåker"],
        "Uppsala län": ["Enköping", "Heby", "Håbo", "Knivsta", "Tierp", "Uppsala", "Älvkarleby", "Östhammar"],
        "Värmlands län": ["Arvika", "Eda", "Filipstad", "Forshaga", "Grums", "Hagfors", "Hammarö", "Karlstad", "Kil", "Kristinehamn", "Munkfors", "Storfors", "Sunne", "Säffle", "Torsby", "Årjäng"],
        "Västerbottens län": ["Bjurholm", "Dorotea", "Lycksele", "Malå", "Nordmaling", "Norsjö", "Robertsfors", "Skellefteå", "Sorsele", "Storuman", "Umeå", "Vilhelmina", "Vindeln", "Vännäs", "Åsele"],
        "Västernorrlands län": ["Härnösand", "Kramfors", "Sollefteå", "Sundsvall", "Timrå", "Ånge", "Örnsköldsvik"],
        "Västmanlands län": ["Arboga", "Fagersta", "Hallstahammar", "Kungsör", "Köping", "Norberg", "Sala", "Skinnskatteberg", "Surahammar", "Västerås"],
        "Västra Götalands län": ["Ale", "Alingsås", "Bengtsfors", "Bollebygd", "Borås", "Dals-Ed", "Essunga", "Falköping", "Färgelanda", "Grästorp", "Gullspång", "Göteborg", "Götene", "Herrljunga", "Hjo", "Härryda", "Karlsborg", "Kungälv", "Lerum", "Lidköping", "Lilla Edet", "Lysekil", "Mariestad", "Mark", "Mellerud", "Munkedal", "Mölndal", "Orust", "Partille", "Skara", "Skövde", "Sotenäs", "Stenungsund", "Strömstad", "Svenljunga", "Tanum", "Tibro", "Tidaholm", "Tjörn", "Tranemo", "Trollhättan", "Töreboda", "Uddevalla", "Ulricehamn", "Vara", "Vårgårda", "Vänersborg", "Åmål", "Öckerö"],
        "Örebro län": ["Askersund", "Degerfors", "Hallsberg", "Hällefors", "Karlskoga", "Kumla", "Laxå", "Lekeberg", "Lindesberg", "Ljusnarsberg", "Nora", "Örebro"],
        "Östergötlands län": ["Boxholm", "Finspång", "Kinda", "Linköping", "Mjölby", "Motala", "Norrköping", "Söderköping", "Vadstena", "Valdemarsvik", "Ydre", "Åtvidaberg", "Ödeshög"]
    }
};

var jsonRegion = {
    "data": {
        "ABC": {
            "lan": ["Stockholms län", "Uppsala län"],
            "id": "134607"
        },
        "Gävledala": {
            "lan": ["Dalarnas län", "Gävleborgs län"],
            "id": "134608"
        },
        "Mittnytt": {
            "lan": ["Jämtlands län", "Västernorrlands län"],
            "id": "134609"
        },
        "Nordnytt": {
            "lan": ["Norrbottens län"],
            "id": "134610"
        },
        "Smålandsnytt": {
            "lan": ["Jönköpings län", "Kalmar län", "Kronobergs län"],
            "id": "134611"
        },
        "Sydnytt": {
            "lan": ["Blekinge län", "Skåne län"],
            "id": "134612"
        },
        "Tvärsnytt": {
            "lan": ["Örebro län", "Västmanlands län"],
            "id": "134613"
        },
        "Värmlandsnytt": {
            "lan": ["Värmlands län"],
            "id": "134615"
        },
        "Västerbottensnytt": {
            "lan": ["Västerbottens län"],
            "id": "134620"
        },
        "Västnytt": {
            "lan": ["Hallands län", "Västra Götalands län"],
            "id": "134617"
        },
        "Östnytt": {
            "lan": ["Gotlands län", "Södermanlands län", "Östergötlands län"],
            "id": "134618"
        }
    }
};

function handleData(){
    $.each(json.data, function(key){
        $("#goto1953232").append("<option value='" + key + "'>" + key + "</option>");
    });
};

function handleKommun(C){
    $("#kommun,#kommun2").empty();
    
    $("#valsparknapp,#valsparknapp2").attr("disabled", "disabled").removeClass('knappenabled').addClass('knappdisabled');
    
    if (C == 'region2') {
        var V = $("#region2").val();
        $("#goto1953232 option[value='" + V + "']").attr("selected", "selected");
    }
    else {
        var V = $("#goto1953232").val();
        $("#region2 option[value='" + V + "']").attr("selected", "selected");
    }
    
    $.each(json.data[V], function(n, kommun){
        $("#kommun,#kommun2").append("<option value='" + kommun + "'>" + kommun + "</option>");
        // $("#kommun2").append("<option value='" + kommun + "'>" + kommun + "</option>");
    });
    $("#kommun,#kommun2").removeAttr("disabled");
    // $("#kommun2").removeAttr("disabled");
}

function handleCookie(){
    var cv = getCookie();
    
    $.each(json.data, function(key, kommuns){
        var sel = $.inArray(cv, kommuns);
        
        if (sel != -1) {
        
            $("#goto1953232 option[value='" + key + "']").attr("selected", "selected");
            
            handleKommun();
            
            $("#kommun option:eq(" + sel + ")").attr("selected", "selected");
            return false;
        }
    });
    
    $("#kommun").removeAttr("disabled");
    $("#valsparknapp,#valsparknapp2").removeAttr("disabled").removeClass('knappdisabled').addClass('knappenabled');
    $("#valsparknapp").after('<button class="knappenabled" type="button" id="valrensaknapp" title="Rensa"><span>Rensa</span></button>');
}

function setCookie(cookieValue, C){

    $.cookie2(cookieName, escape(cookieValue), {
        expires: expireTime,
        domain: ".svt.se",
        path: '/'
    });
    
    /*
     $.ajax({
     type: "GET",
     url: '/content/2/c6/12/99/56/cookie2.jsp?cookie=' + escape(cookieValue),
     cache: false
     });
     */
    if (C == 'kommun2') {
        var V = $("#kommun2").val();
        $("#kommun option[value='" + V + "']").attr("selected", "selected");
    }
    else {
        var V = $("#kommun").val();
        $("#kommun2 option[value='" + V + "']").attr("selected", "selected");
    }
}

function getCookie(){
    return unescape($.cookie2(cookieName));
}

function removeCookie(){
    $.cookie2(cookieName, null, {
        domain: ".svt.se",
        path: '/'
    });
}

function getRegion(cookieValue){
    
    $.each(json.data, function(key, kommuns){
		$('#regionalaFeature').addClass('KommunLop');
		
        var sel = $.inArray(cookieValue, kommuns);
        
        if (sel != -1) {
            $.each(jsonRegion.data, function(keyR, lans){

                var selR = $.inArray(key, lans.lan);
                
                if (selR != -1) {
					
					var regUrl = "/svt/jsp/Crosslink.jsp?d=" + lans.id + "&included=true";
					
					$.get(regUrl, function(data){
						$('#regionalaFeature').empty();
						$('#regionalaFeature').append(data);
						$('#regionalaFeature').prepend("<div class='regionFeatureHeader'><div class='regionFeatureHeaderName'>" + keyR + "</div></div>");
						$('#regionalaFeature').show("fast");
					});					
					
                    return false;
                }
                
            });
            return false;
        }
		
    });
}

function moveChooser(){
    var valHtml = '<img width="370" height="29" border="0" alt="Regionala valnyheter" src="/content/1/c8/01/95/32/31/balk_kommun_370.jpg">';
    valHtml += '<div class="vallopvaljare">';
    /*
     valHtml += '<h2 class="regionrubrik">Läs nyheter från din kommun</h2>';
     valHtml += '<select id="region2" size="5" name="region2" class="region2"></select>';
     valHtml += '<select disabled="disabled" id="kommun2" size="5" class="kommun2"></select>';
     valHtml += '<button title="Spara ditt val" id="valsparknapp2" type="button" disabled="disabled" class="knappdisabled"><span>Spara ditt val</span></button>';
     */
    valHtml += '<p>Välj kommun i menyn högst upp till höger för att se dina lokala valnyheter här.</p>';
    valHtml += '</div>';
    
    $("#KommunPgrp").html(valHtml);
    $("#KommunPgrp").addClass('KommunPgrp');
    
    $("#region2").html($("#goto1953232").html());
}

$(document).ready(function(){
    $("#regionrubrik").text("Läs nyheter från din kommun");
    $("#goto1953232").empty();
    $("#regionsubmit").remove();
    
    $("#sgnavigate1953232").append("<select id='kommun' disabled='disabled'></select>");
    $("#sgnavigate1953232").append("<button title='Spara ditt val' id='valsparknapp' type='button' disabled='disabled' class='knappdisabled'><span>Spara ditt val</span></button>");
    
    $("#goto1953232").attr("size", "5");
    $("#kommun").attr("size", "5");
    
    handleData();
    
    if ($.cookie2(cookieName)) {
        var cv = getCookie();
        setCookie(cv);
        handleCookie();
		getRegion(cv);
    }
    else {
        moveChooser();
    }
    
    $('#sgnavigate1953232').submit(function(){
        return false;
    });
    
    $('#goto1953232').change(function(){
        handleKommun('region1');
    });
    
    $('#region2').change(function(){
        handleKommun('region2');
    });
    
    $('#kommun').change(function(){
        setCookie($("#kommun").val());
        $("#valsparknapp,#valsparknapp2").removeAttr("disabled").removeClass('knappdisabled').addClass('knappenabled');
    });
    
    $('#kommun2').change(function(){
        setCookie($("#kommun2").val(), 'kommun2');
        $("#valsparknapp,#valsparknapp2").removeAttr("disabled").removeClass('knappdisabled').addClass('knappenabled');
    });
    
    $('#valsparknapp:enabled').live('click', function(){
        window.location.href = "http://svt.se/val";
    });
    
    $('#valrensaknapp').live('click', function(){
        removeCookie()
        window.location.href = "http://svt.se/val";
    });
});

