function validateEmail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   if(reg.test(email) == false) {
      return false;
   }
	 
	 return true;
}

function pageClass(){
	this.processLogin = function(){
		$('#lost_password_form').css('display', 'none');
		var _display = $("#register_form").is(":hidden");
		if (!_display){
			$('#login_username').removeClass('text-box-error');
			$('#login_password').removeClass('text-box-error');
			$('#login_email').removeClass('text-box-error');
			$('#login_name').removeClass('text-box-error');
			$('#login_location').removeClass('text-box-error');
			$('#login_action').val('login');
			$('#register_form').hide('puff', {direction: 'up'}, 500);	
		}
		else{
			this.validateLogin();	
		}
	}
	this.processSignUp = function(){
		$('#lost_password_form').css('display', 'none');
		var _display = $("#register_form").is(":hidden");
		if (_display){
			$('#login_username').removeClass('text-box-error');
			$('#login_password').removeClass('text-box-error');
			$('#login_email').removeClass('text-box-error');
			$('#login_name').removeClass('text-box-error');
			$('#login_location').removeClass('text-box-error');
			$('#login_action').val('register');
			$('#register_form').show('drop', {direction: 'up'}, 500);	
		}
		else{
			this.validateRegister();
		}
	}
	this.validateLogin = function(){
		_error = false;
		var username = $('#login_username').val();
		var _password = $('#login_password').val();
		$('#login_username').removeClass('text-box-error');
		$('#login_password').removeClass('text-box-error');
		var _errorMsg = '';
		
		if (username == '' || username == 'type username'){
			_error = true;
			_errorMsg = 'Fill the email field!';
			$('#login_username').addClass('text-box-error');
			$('#login_username').focus();
		}
		else if (_password == '' || _password == 'password'){
			_error = true;
			_errorMsg = 'Password must not be empty!';
			$('#login_password').addClass('text-box-error');
			$('#login_password').focus();
		}
		
		if (!_error){
			$('#login_form').submit();	
		}
	}
	this.validateRegister = function(){
		_error = false;
		var _errorMsg = new Array();
		
		var username = $('#login_username').val();
		var _password = $('#login_password').val();
		var _email = $('#login_email').val();
		var name = $('#login_name').val();
		var location = $('#login_location').val();
		$('#login_username').removeClass('text-box-error');
		$('#login_password').removeClass('text-box-error');
		$('#login_email').removeClass('text-box-error');
		$('#login_name').removeClass('text-box-error');
		$('#login_location').removeClass('text-box-error');
		
		
		if (username == '' || username == 'type username'){
			_error = true;
			_errorMsg = 'Fill the email field!';
			$('#login_username').addClass('text-box-error');
			$('#login_username').focus();
		}
		else if (_password == '' || _password == 'password'){
			_error = true;
			_errorMsg = 'Password must not be empty!';
			$('#login_password').addClass('text-box-error');
			$('#login_password').focus();
		}
		else if (_email == '' || _email == 'type email'){
			_error = true;
			_errorMsg['register_email_error_message'] = 'Fill the email field!';
			$('#login_email').addClass('text-box-error');
			$('#login_email').focus();
		}
		else if (!validateEmail(_email)){
			_error = true;
			_errorMsg['register_email_error_message'] = 'Email is not valid!';
			$('#login_email').addClass('text-box-error');
			$('#login_email').focus();
		}
		else if (name == '' || name == 'type name'){
			_error = true;
			_errorMsg['register_email_error_message'] = 'Name the email field!';
			$('#login_name').addClass('text-box-error');
			$('#login_name').focus();
		}
		else if (location == '' || location == 'type location'){
			_error = true;
			_errorMsg['register_email_error_message'] = 'Fill the email field!';
			$('#login_location').addClass('text-box-error');
			$('#login_location').focus();
		}
		
		if (!_error){
			$('#login_form').submit();	
		}
	}
	this.uploadPicture = function(){
		$('#file_name').val($('#file_input').val());	
	}
	this.processLostPassword = function(){	
		$('#register_form').css('display', 'none');
		var _display = $("#lost_password_form").is(":hidden");
		if (_display){
			$('#lost_password_email').removeClass('text-box-error');
			$('#lost_password_form').show('drop', {direction: 'up'}, 500);	
		}
		else{
			this.validateLostPassword();	
		}
	}
	this.validateLostPassword = function(){	
		_error = false;
		var _email = $('#lost_password_email').val();
		if (_email == '' || _email == 'type email' ){
			_error = true;
			_errorMsg = 'Email must not be empty!';
			$('#lost_password_email').addClass('text-box-error');
			$('#lost_password_email').focus();
		}
		else if (!validateEmail(_email)){
			_error = true;
			_errorMsg = 'Email is not valid!';
			$('#lost_password_email').addClass('text-box-error');
			$('#lost_password_email').focus();
		}
		
		if (!_error){
			$('#lost_password_form_submit').submit();	
		}
	}
	this.processChangePicture = function(){
		var _display = $("#change_picture_form").is(":hidden");
		if (_display){
			$('#file_name').removeClass('text-box-error');
			$('#change_picture_form').show('drop', {direction: 'up'}, 500);	
		}
		else{
			this.validatePicture();	
		}
	}
	this.validatePicture = function(){
		_error = false;
		var _picture = $('#file_name').val();
		if (_picture == '' || _picture == 'upload a picture' ){
			_error = true;
			_errorMsg = 'Picture must not be empty!';
			$('#file_name').addClass('text-box-error');
		}
		
		if (!_error){
			$('#change_picture_form_submit').submit();	
		}
		
	}
	
	this.validateSearch = function(){
		_error = false;
		$('#file_name').removeClass('text-box-error');
		var _keyword = $('#search_keyword').val();
		
		if (_keyword == 'what you are looking for in Oman?'){
			_error = true;
			_errorMsg = 'Picture must not be empty!';
			$('#search_keyword').addClass('text-box-error');
		}
	
		return !_error;	
	}
	
	this.processContact = function(){
		_error = false;
		
		var _email = $('#contact_email').val();
		var contact_code = $('#contact_code').val();
		var contact_message = $('#contact_message').val();
		$('#contact_email_error').css('display', 'none');
		$('#contact_code_error').css('display', 'none');
		$('#contact_message_error').css('display', 'none');
		$('#contact_email').removeClass('text-box-error');
		$('#contact_code').removeClass('text-box-error');
		$('#contact_message').removeClass('text-box-error');
		
		
		if (_email == '' || _email == 'type email'){
			_error = true;
			$('#contact_email_error').html('Fill the email field!');
			$('#contact_email_error').addClass('error-message');
			$('#contact_email_error').show('puff', {direction: 'up'}, 500);
			$('#contact_email').addClass('text-box-error');
			$('#contact_email').focus();
		}
		else if (!validateEmail(_email)){
			_error = true;
			$('#contact_email_error').html('Email is not valid!');
			$('#contact_email_error').addClass('error-message');
			$('#contact_email_error').show('puff', {direction: 'up'}, 500);
			$('#contact_email').addClass('text-box-error');
			$('#contact_email').focus();
		}		
		else if (contact_code == '' || contact_code == 'type code'){
			_error = true;
			$('#contact_code_error').html('Fill the code field!');
			$('#contact_code_error').addClass('error-message');
			$('#contact_code_error').show('puff', {direction: 'up'}, 500);
			$('#contact_code').addClass('text-box-error');
			$('#contact_code').focus();
		}
		else if (contact_message == '' || contact_message == 'type message'){
			_error = true;
			$('#contact_message_error').html('Fill the message field!');
			$('#contact_message_error').addClass('error-message');
			$('#contact_message_error').show('puff', {direction: 'up'}, 500);
			$('#contact_message').addClass('text-box-error');
			$('#contact_message').focus();
		}
		
		if (!_error){
			$('#contact_form').submit();	
		}
	}
}

var _action = '';
function createRequest(url){
	this.url = url;
	this.method = 'post';
	
	this.makeRequest = function(data){
		this.data = data;
		$.ajax({
			type: this.method,
			url: this.url,
			data: this.data,
			success: this._success
		});
	}
	
	this._success = function(data){
		switch (_action){
			case 'get-price':
				$('#order_elements option:disabled').attr('disabled', '');
				$('#order_frame_type option:disabled').attr('disabled', '');
				if (data != ''){
					data = data.split('}');
					var index = 1;
					var _temp = '';
					while (index < data.length){
						_temp = data[index].split('{');
						_options = _temp[1].split(',');
						if (_options.length > 0){
							var _index1 = 0;
							while (_index1 < _options.length)	{
								$('#' + _temp[0] + ' option[value=' + _options[_index1] + ']').attr('disabled', 'disabled');
								++_index1;	
							}
						}
						++index;	
					}
					_temp = data[0].split('{');
					$('#advance_price').text(_temp[0]);
					$('#total_price').text(_temp[1]);
					$('#input_advance_price').val(_temp[0]);
					$('#input_total_price').val(_temp[1]);
				}
				else{
					$('#advance_price').text('');
					$('#total_price').text('');
					$('#input_advance_price').val('');
					$('#input_total_price').val('');
				}
			break;
			case 'get-step-2':
				$('#order_indications').html(data);
			break;
			default:
			break;	
		}
	}
}



function ShowHide(id){
	$("#slidingDiv"+id).animate({"height": "toggle"}, { duration: 1000 });
		//$("div:animated").toggleClass("discussions_options_selected");
}

$(document).ready(function() {
	$('a.showhide').each(function() {
		$(this).click(function() {
			var container = '#container_' + $(this).attr('id');
			if ($(this).hasClass('close')) {
				$(container).slideDown(500);
				$(this).removeClass('close');
			} else {
				$(container).slideUp(500);
				$(this).addClass('close');
			}
			return false;
		});
	});
});

