
var Cookie = {
  data: {},
  options: {expires: 1, domain: "", path: "/", secure: false},

init: function(options, data) {
  Cookie.options = Object.extend(Cookie.options, options || {});

  var payload = Cookie.retrieve();
        if(payload) {
            Cookie.data = payload.evalJSON();
        }
        else {
            Cookie.data = data || {};
        }
        Cookie.store();
    },
    getData: function(key) {
        return Cookie.data[key];
    },
    setData: function(key, value) {
        Cookie.data[key] = value;
        Cookie.store();
    },
    removeData: function(key) {
        delete Cookie.data[key];
        Cookie.store();
    },
    retrieve: function() {
        var start = document.cookie.indexOf(Cookie.options.name + "=");

        if(start == -1) {
            return null;
        }
        if(Cookie.options.name != document.cookie.substr(start, Cookie.options.name.length)) {
            return null;
        }

        var len = start + Cookie.options.name.length + 1;   
        var end = document.cookie.indexOf(';', len);

        if(end == -1) {
            end = document.cookie.length;
        } 
        return unescape(document.cookie.substring(len, end));
    },
    store: function() {
        var expires = '';

        if (Cookie.options.expires) {
            var today = new Date();
            expires = Cookie.options.expires * 86400000;
            expires = ';expires=' + new Date(today.getTime() + expires);
        }

        document.cookie = Cookie.options.name + '=' + escape(Object.toJSON(Cookie.data)) + Cookie.getOptions() + expires;
    },
    erase: function() {
        document.cookie = Cookie.options.name + '=' + Cookie.getOptions() + ';expires=Thu, 01-Jan-1970 00:00:01 GMT';
    },
    getOptions: function() {
        return (Cookie.options.path ? ';path=' + Cookie.options.path : '') + (Cookie.options.domain ? ';domain=' + Cookie.options.domain : '') + (Cookie.options.secure ? ';secure' : '');      
    }
};

/*

    Cookie.init({name: 'yourdata', expires: 90});
    Cookie.setData('favorites', false);

    Cookie.init({name: 'mydata'}, {foo: 'bar', x: 0});
    alert(Cookie.getData('foo'));

*/


function set_menu_001()
{
  var unsel = ['c002','c003','c004'];

  if($('001').style.display=='none')
  {
    Effect.BlindUp('002');

    Effect.BlindDown('001');
    Cookie.init({name: 'menu', expires: 1});
    Cookie.setData('act_menu', '001');
    Cookie.setData('act_menu_item', null);
    $('c001').addClassName('sel_menu');
  }
  else
  {
    Effect.BlindUp('001');
    Cookie.init({name: 'menu', expires: 1});
    Cookie.setData('act_menu', '001');
    Cookie.setData('act_menu_item', null);
    $('c001').removeClassName('sel_menu');
  }

  for(var i = 0; i < unsel.length; i++)
  {
    $(unsel[i]).removeClassName('sel_menu');
  }
}

function set_menu_002()
{
  var unsel = ['c001','c003','c004'];

  if($('002').style.display=='none')
  {
    Effect.BlindUp('001');

    Effect.BlindDown('002');
    Cookie.init({name: 'menu', expires: 1});
    Cookie.setData('act_menu', '002');
    Cookie.setData('act_menu_item', null);
    $('c002').addClassName('sel_menu');
  }
  else
  {
    Effect.BlindUp('002');
    Cookie.init({name: 'menu', expires: 1});
    Cookie.setData('act_menu', '002');
    Cookie.setData('act_menu_item', null);
    $('c002').removeClassName('sel_menu');
  }

  for(var i = 0; i < unsel.length; i++)
  {
    $(unsel[i]).removeClassName('sel_menu');
  }
}

function set_menu_item(id)
{
  var menu = id.split('-')[0];

  Cookie.init({name: 'menu', expires: 1});
  Cookie.setData('act_menu_item', id);
  Cookie.setData('act_menu', menu);
}

function set_menu_no_sub(id, el, unsel)
{
  Cookie.init({name: 'menu', expires: 1});
  Cookie.setData('act_menu', id);
  Cookie.setData('act_menu_item', null);
  $(el).addClassName('sel_menu');
  for(var i = 0; i < unsel.length; i++)
  {
    $(unsel[i]).removeClassName('sel_menu');
  }
}



