
function notLoggedInPage_showLogInForm() {
  $('logInForm').style.display='block';
  $('signUpForm').style.display='none';
  $('logInAliasEmail').focus()
  $('chooseFormLogInA').addClassName('active');
  $('chooseFormSignUpA').removeClassName('active');
}
function notLoggedInPage_showSignUpForm() {
  $('logInForm').style.display='none';
  $('signUpForm').style.display='block';
  $('signUpAlias').focus()
  $('chooseFormSignUpA').addClassName('active');
  $('chooseFormLogInA').removeClassName('active');
}

function notLoggedInPage_logIn(event) {
  event.stop();
  $('logInFormLoader').style.display = 'block';

  var parameters = new Hash();
  parameters.set('gem',            'jsonMedlemmarLoggaIn'        );
  parameters.set('aliasEmail',     $('logInAliasEmail').value    );
  parameters.set('losenord',       $('logInLosenord').value      );
  parameters.set('autoinloggning', $('logInAutoinloggning').checked ? 1 : 0);

  new Ajax.Request('/orkideer/resurser/GEM/ws/ws.cgi', {
    parameters: parameters,
    onSuccess: function(transport) {
      notLoggedInPage_handleJSONData(transport, 'logInForm');
    }
  });
}

function notLoggedInPage_signUp(event) {
  event.stop();
  $('signUpFormLoader').style.display = 'block';

  var parameters = new Hash();
  parameters.set('gem',            'jsonMedlemmarBliMedlem'      );
  parameters.set('alias',          $('signUpAlias').value   );
  parameters.set('losenord',       $('signUpLosenord').value     );
  parameters.set('email',          $('signUpEmail').value        );

  new Ajax.Request('/orkideer/resurser/GEM/ws/ws.cgi', {
    parameters: parameters,
    onSuccess: function(transport) {
      notLoggedInPage_handleJSONData(transport, 'signUpForm');
    }
  });
}

function notLoggedInPage_handleJSONData(transport, formId) {
  if (transport.responseJSON) {
    json = transport.responseJSON;
    if (json.error) {
      if (json.aliasError) {
        $(formId + 'LabelAliasError').update(json.aliasError);
        $(formId + 'LabelAlias').addClassName('error');
      } else {
        $(formId + 'LabelAliasError').update();
        $(formId + 'LabelAlias').removeClassName('error');
      }

      if (json.passwordError) {
        $(formId + 'LabelPasswordError').update(json.passwordError);
        $(formId + 'LabelPassword').addClassName('error');
      } else {
        $(formId + 'LabelPasswordError').update();
        $(formId + 'LabelPassword').removeClassName('error');
      }

      if (json.emailError) {
        $(formId + 'LabelEmailError').update(json.emailError);
        $(formId + 'LabelEmail').addClassName('error');
      } else {
        $(formId + 'LabelEmailError') ? $(formId + 'LabelEmailError').update() : '';
        $(formId + 'LabelEmail') ? $(formId + 'LabelEmail').removeClassName('error') : '';
      }
	  $(formId + 'Loader').style.display = 'none';

    } else {
      $(formId + 'LabelAlias')    ? $(formId + 'LabelAlias').removeClassName('error') : '';
      $(formId + 'LabelPassword') ? $(formId + 'LabelPassword').removeClassName('error') : '';
      $(formId + 'LabelEmail')    ? $(formId + 'LabelEmail').removeClassName('error') : '';

      window.location.href = $('redirect_to').value;
    }
  }
  else {
    alert('no json in response');
  }
}

function notLoggedInPage_hideLogInPopUp() {
  $('logInPopUpOuter').style.display = 'none';
}

function notLoggedInPage_showLogInPopUp() {
  var bodyXY     = $$('body')[0].getDimensions();
  var viewportXY = document.viewport.getDimensions();
  var scrollY    = document.viewport.getScrollOffsets().top;

  $('logInPopUp').style.top = ((viewportXY.height-300) / 2) + scrollY + 'px';
  $('logInPopUp').style.left = ((viewportXY.width-290) / 2) + 'px';

  $('logInPopUpOuter').style.height = bodyXY.height + 'px';
  $('logInPopUpOuter').style.width = bodyXY.width + 'px';

  $('logInPopUpOuter').style.display = 'block';
}

function notLoggedInPage_linkClick(event) {
  notLoggedInPage_showLogInPopUp();
}

function notLoggedInPage_pageLoaded() {

  /* DISABLE LINKS */
  var tabelLinks = $$('#PostTabell a');
  var leftLinks  = $$('#media1 a');

  for (var index = 0, len = tabelLinks.length; index < len; ++index) {
	tabelLinks[index].href = 'javascript:void(0);';
	tabelLinks[index].observe('click', notLoggedInPage_linkClick);
  }
  for (var index = 0, len = leftLinks.length; index < len; ++index) {
	leftLinks[index].href = 'javascript:void(0);';
	leftLinks[index].observe('click', notLoggedInPage_linkClick);
  }

  /* SET UP LOG IN POPUP */
  $('logInPopUpOuter').observe('click', notLoggedInPage_hideLogInPopUp);
  $('logInButton').observe('click', notLoggedInPage_logIn);
  $('signUpButton').observe('click', notLoggedInPage_signUp);

}

Event.observe(window, 'load', notLoggedInPage_pageLoaded);
