bgneal@12: $(document).ready(function() {
bgneal@272: 
bgneal@272:    var numShouts = $('#shoutbox-shout-container > p').size(); 
bgneal@272:    var sbCycleOpts = null;
bgneal@272:    var sbCycle = $('#shoutbox-shout-container').cycle({
bgneal@272:       fx: 'scrollUp',
bgneal@272:       timeout: 5000,
bgneal@272:       pause: 1,
bgneal@272:       next: '#shoutbox-next',
bgneal@272:       prev: '#shoutbox-prev',
bgneal@272:       before: function(curr, next, opts) {
bgneal@272:          if (!opts.addSlide || sbCycleOpts) return;
bgneal@272:          sbCycleOpts = opts;
bgneal@272:       }
bgneal@272:    });
bgneal@272:    function addShout(shout) {
bgneal@272:       ++numShouts;
bgneal@272:       sbCycleOpts.addSlide(shout);
bgneal@272:       $('#shoutbox-shout-container').cycle(numShouts - 1);
bgneal@272:    }
bgneal@272: 
bgneal@12:    var submit = $('#shoutbox-submit');
bgneal@12:    submit.click(function () {
bgneal@12:       var input = $('#shoutbox-smiley-input');
bgneal@27:       var msg = $.trim(input.val());
bgneal@12:       if (msg.length == 0) {
bgneal@12:          return false;
bgneal@12:       }
bgneal@12:       submit.attr('disabled', 'disabled');
bgneal@150:       $.ajax({
bgneal@150:          url: '/shout/shout/', 
bgneal@150:          type: 'POST',
bgneal@150:          data: { msg: msg },
bgneal@150:          dataType: 'html',
bgneal@150:          success: function (data, textStatus) {
bgneal@12:             input.val('');
bgneal@12:             if (data != '') {
bgneal@272:                addShout(data);
bgneal@12:             }
bgneal@12:             submit.removeAttr('disabled');
bgneal@12:          },
bgneal@150:          error: function (xhr, textStatus, ex) {
bgneal@150:              alert('Oops, an error occurred. ' + xhr.statusText + ' - ' + 
bgneal@150:                 xhr.responseText);
bgneal@150:          }
bgneal@150:       });
bgneal@12:       return false;
bgneal@12:    });
bgneal@12:    var smilies_loaded = false;
bgneal@12:    var smiley_frame = $('#shoutbox-smiley-frame');
bgneal@12:    $('#shoutbox-smilies').click(function () {
bgneal@12:       smiley_frame.toggle();
bgneal@12:       if (!smilies_loaded) {
bgneal@12:          smiley_frame.load('/smiley/farm/', function () {
bgneal@12:             $('#shoutbox-busy-icon').hide();
bgneal@123:             var txt = $("#shoutbox-smiley-input")[0];
bgneal@123:             $('#shoutbox-smiley-frame img').click(function() {
bgneal@123:                txt.value += ' ' + this.alt + ' ';
bgneal@123:                txt.focus();
bgneal@123:             });
bgneal@12:             smilies_loaded = true;
bgneal@12:          });
bgneal@12:       }
bgneal@12:    });
bgneal@12: });