var buffer = null;

var wu = {

  Ajax: function (url, log, loading, complete) {
    var log = $(log).addClass('ajax-loading');
    var req = new Ajax(url, {
                    method: 'get',
                    update: log,
                    onComplete: function () {
                      if (loading) log.removeClass('ajax-loading');
                      if (complete != '') complete();
                      buffer = null;
                    }
                  }).request();
  },
  
  AjaxTimed: function (interval, url, log, loading, complete) {
    var log = $(log).addClass('ajax-loading');
    var action = function () {
      wu.Ajax(url, log, loading, complete);
    }
    buffer = (buffer == null) ? setTimeout(action, interval) : buffer;
  }

};

var Cookie = {
  
  Get: function (name) {
    var cookie = " " + document.cookie;
    var search = " " + name + "=";
    var setStr = null;
    var offset = 0;
    var end = 0;
    if (cookie.length > 0) {
      offset = cookie.indexOf(search);
      if (offset != -1) {
        offset += search.length;
        end = cookie.indexOf(";", offset)
        if (end == -1) {
          end = cookie.length;
        }
        setStr = unescape(cookie.substring(offset, end));
      }
    }
    return(setStr);
  },
  
  Set: function (name, value, expires, path, domain, secure) {
    document.cookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : "");
  }
  
}