function PrevMonth()
{
  var prev_date = $('prev_date').value;
  var req = new Request({
    method: 'get',
    url: 'index.php?page=112233&calDate=' + prev_date,
    evalScripts: true, 
    noCache: true,
    onComplete: function(response) { 
      $('calender').empty();
      $('calender').set('html', response);
    }, 
  }).send('r=' + $time() + $random(0, 100));
  
  return false;
}

function NextMonth()
{
  var next_date = $('next_date').value;
  var req = new Request({
    method: 'get',
    url: 'index.php?page=112233&calDate=' + next_date,
    evalScripts: true, 
    noCache: true,
    onComplete: function(response) { 
      $('calender').empty();
      $('calender').set('html', response);
    }, 
  }).send('r=' + $time() + $random(0, 100));
  
  return false;
}

window.addEvent('domready', function() {

  var url = "index.php?page=100100";
  var shoutarea = $('shoutarea');
  var periodical;

  var start = 1;
  var sb_height = 200;
  var sb_expanded = 0;
  var lr = 0;
  var active = 1;
  
  if($('sbjs_color'))
  {
    var bodyStyles = $('sbjs_color').getStyles('background-color','border-color');
    var bgStyle = bodyStyles['background-color'];
    var borderCol = bodyStyles['border-color'];
  }
  
  var DisplayAllShouts = function(shouts) {  
    if(start == 1)
    {
      shouts.each(function(shout) {
        var el2 = new Element('p', {'class': 'message','html': shout.m});
        el2.inject(shoutarea, 'top');
        var el = new Element('p', {'class': 'posted'});
        var img = new Element('img', {'src': 'uploads/flags/' + shout.f}).inject(el);
        var name = new Element('strong', {'html': shout.n}).inject(img, 'after');
        var time = new Element('span', {'html': shout.t}).inject(name, 'after');
        el.inject(shoutarea, 'top');
      });
      start = 0;
    } else {
      shouts.each(function(shout) {      
        var el2 = new Element('p', {'class': 'message','id': 'newm', 'html': shout.m});
        el2.inject(shoutarea, 'top');
        var el = new Element('p', {'class': 'posted'});
        var img = new Element('img', {'src': 'uploads/flags/' + shout.f}).inject(el);
        var name = new Element('strong', {'html': shout.n}).inject(img, 'after');
        var time = new Element('span', {'html': shout.t}).inject(name, 'after');
        el.inject(shoutarea, 'top');
        var myFx = new Fx.Tween('newm', {duration: 1500});
        myFx.start('background-color', borderCol, bgStyle);
      });
    }
  }
  
  var DisplayTimeoutMsg = function(msg)
  {
    $('sb_timeout').innerHTML = msg;
  }
  
  var toggleSB = function(event) {
    if(sb_expanded == 0)
    {
      $('shoutarea').tween('height', 250, 500);
      sb_expanded = 1;
    } else {
      $('shoutarea').tween('height', 500, 250);
      sb_expanded = 0;
    }
    return false;
  }
  
  var request = new Request.JSON({
  	url: url,
    method: 'get', 
    noCache: true, 
    timeout: "2500",
    onComplete: function(jsonObj) {
      if(jsonObj.Status == 1) {
        DisplayAllShouts(jsonObj.Messages);
      }
      $('time').innerHTML = jsonObj.LastMessage;
      lr = jsonObj.lr;
    }
  })
  
  var RequestShouts = function() {
    var thetime = $time();
    var pageaccess = Cookie.read('last');
    var difference = thetime - pageaccess;
    // 
    if(difference > 1800000)
    {
      active = 0;
      $clear(periodical);
      DisplayTimeoutMsg('Timed out due to <strong>inactivity</strong> of 5 minutes. Please reload your browser to enable automatic updates.');
      $('sb_spam').innerHTML = 'Reload page to post.';
      // $('sb_button').disabled = true;
    } else {
      request.send('r=' + $time() + $random(0, 100000) + '&lr=' + lr); 
    }
  };
  
  if($('shout'))
  {
    $('shout').addEvent('submit', function(e){
      var timeNow = $time();
      var last = Cookie.read('last');
      var diff = timeNow - last;
      
      if(diff > 3000)
      {
        if(active == 1)
        {
          var postString = "m=" + $('shoutbox-msg').value;
          new Event(e).stop();
          var request = new Request({
            url: 'index.php?page=500',
            method: 'post', 
            data: postString, 
            noCache: true, 
            onComplete: function() {
              RequestShouts();
              $('shoutbox-msg').value = '';
              $('shoutbox-msg').focus();
              var myCookie = Cookie.write('last', $time());
            }
          }).send();
          $('sb_spam').innerHTML = '';
        } 
      } else {
        $('sb_spam').innerHTML = 'Spam Protection 3 Seconds';
        return false;
      }
    });

    $('sb_toggle').addEvent('click', toggleSB);
    
    var myCookie = Cookie.write('last', $time() - 3000);
    
    RequestShouts();
    periodical = RequestShouts.periodical(5000);
  }
  
}); 
