$(document).ready(function() {
    /* DRAGBOX SAVE STATE */
    /* we want only class dragbox to be saved */
    $('.dragbox').mousedown(function(cl) {
        var me_z = $(this).css('z-index');
        if(me_z < 800 || me_z > 899) return;
        var i = 0;
        var h = { };
        var change = false;
        $('.dragbox').each(function() {
            i++;
            var zz = $(this).css('z-index');
            if(zz > me_z) { change = true; zz--; }
            $(this).css('z-index', zz);
            h[$(this).attr('id').replace('dragbox_','')] = zz - 800;
        });
        $(this).css('z-index', 800 + i);
        h[$(this).attr('id').replace('dragbox_','')] = i;
        if(change) $.post('/game_shared/save_box_index', h); // save on change
    });

    $('#minimap_viewport_map').click(function(cl){
      if(!dragging) {
        cl.preventDefault();
        var left = readCookie('maximap_left');
        var top = readCookie('maximap_top');

        var src = $("#minimap_fow").attr('src');
        /* prozatimni oprava */
        if(src) {
            var new_src = src.substring(0, src.lastIndexOf('?'));
            $("#minimap_fow").attr('src', new_src + '?' + new Date().getTime());
        }
        /* ... */
        if (MAPF) {
            $("#minimap_char_pos").css({left: (MAPF.click_parameter_x * 4) + 'px', top: (MAPF.click_parameter_y * 4) + 'px'});
        }
        $("#maximap").css({left: left, top: top});
        createCookie('maximap_show', true, 1);
        $("#maximap").show();
      }
    });

    $("#maximap a.close").click(function(cl) {
      cl.preventDefault();
      createCookie('maximap_show', false, 1);
      $("#maximap").hide();
    });

    $("a.expand_detail").click(function(cl) {
        cl.preventDefault();
        $(this).parent().parent().find("table.bld_details").toggle();
    });

    if (readCookie('maximap_show') == 'true') {
        var left = readCookie('maximap_left');
        var top = readCookie('maximap_top');
        $("#maximap").css({left: left, top: top});
        $("#maximap").show();
    }

});

function createCookie(name, value, days) {
  var expires;

  if (days) {
      var date = new Date();
      date.setTime(date.getTime() + (days*24*60*60*1000));
      expires = "; expires=" + date.toGMTString();
  }
  else expires = "";
  document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function save_maximap_position(id) {
    var left = $("#" + id).css('left');
    var top = $("#" + id).css('top');
    createCookie('maximap_left', left, 1);
    createCookie('maximap_top', top, 1);
}