//<?php (for vim filetype stuff)
Ext.onReady(function() {

  if (lf = Ext.get('loginform')) {
    lf.on('submit', function(ev) {
      ev.preventDefault();

      Ext.Ajax.request({
        //'url': '/user/login',
        'form': 'loginform',
        'success': function(r, params) {
          var response = Ext.decode(r.responseText);
          if (!response.error) {
            window.location.reload();
            //window.location.assign('/');
          } else {
            var msg = Ext.get('login_msg');
            msg.dom.innerHTML = response.msg;
            msg.addClass('error');
          }
        },
        'failure': genericFail
      });

      return false;
    });
  }

  if (rf = Ext.get('registerform')) {
    rf.on('submit', function(ev) {
      ev.preventDefault();

      Ext.Ajax.request({
        'form': 'registerform',
        'success': function(r, params) {
          var response = Ext.decode(r.responseText);
          var msg = Ext.get('register_msg');
          msg.dom.innerHTML = response.msg;

          if (response.error) {
            msg.addClass('error');
          } else {
            msg.removeClass('error');
          }
        },
        'failure': genericFail
      });

      return false;
    });
  }

  if (cf = Ext.get('commentform')) {
    cf.on('submit', function(ev) {
      ev.preventDefault();

      Ext.Ajax.request({
        'form': 'commentform',
        'success': function(r, params) {
          var response = Ext.decode(r.responseText);
          var msg = Ext.get('comment_msg');
          if (!response.error) {
            window.location.reload();
            /*window.location.assign('#last');
            msg.dom.innerHTML = response.msg;
            msg.removeClass('error');*/
          } else {
            msg.dom.innerHTML = response.msg;
            msg.addClass('error');
          }
        },
        'failure': genericFail
      });

      return false;
    });
  }

});

function genericFail(r, params) {
  alert('Could not send request to server: Error ' + r.status + 
    "\nPlease try again or contact us if this problem persists.");
}

//?>
