function loginForm() {
	this.loginForm = null;
	
	this.draw = function(container) {
		return this.getForm();
	}
	
	this.callBack = function(container) {
		var content = $('.modalContent', container);
		var fields = content.find('input[type=text], input[type=password], textarea');
		
		$('.modalShield', container).click(function(event) {
			fields.each(function() {
				if(this.value) {
					event.stopImmediatePropagation();
				}
			});
		});
		
		this.loginForm.onsubmit = function() {
			
			var errors = document.createElement('ul');
			var errorCount = 0;
			
			function isEmpty(e, t) {
				if(e.value == '') {
					var error = document.createElement('li');
					var text = document.createTextNode(t);
					error.appendChild(text);
					
					errors.appendChild(error);
					errorCount++;
				}
			}
			
			var email = document.getElementById('email');
			var password = document.getElementById('password');
			
			isEmpty(email, 'Your email is required');
			isEmpty(password, 'Please enter a password');
			
			if(errorCount > 0) {
				$('.errors').html(errors);
			} else {
				var result = $.post('/ajax_login.php', {
					email: email.value,
					password: password.value
				}, function(result) {
					if(result == 'LOGIN_ERROR') {
						$('.errors').html('<ul><li>Invalid email or password</li></ul>');
						password.value = '';
					} else {
						window.location = '/members/';
					}
				});
			}
			
			return false;
		}
	}
	
	this.getForm = function() {
		this.loginForm = document.createElement('form');
		this.loginForm.className = 'login-form';
		this.loginForm.method = 'post';
		
		this.loginForm.innerHTML = '<h3>Login:</h3>' +
		'<div class="errors"></div>' +
		'<p class="email"><label for="email">Email: <input type="text" id="email" name="email" /></label></p>' +
		'<p class="password"><label for="password">Password: <input type="password" id="password" name="password" /></label></p>' +
		'<p class="button"><input type="submit" name="login" value="Login" />';
		
		return this.loginForm;
	}
}

