var current_step = '';

function ERROR(str) {
	return '<span class="error_msg">' + str + '</span>';
}

function addslashes(str) {
	str = str.replace(/\'/g,'\\\'');
	str = str.replace(/\"/g,'\\"');
	str = str.replace(/\\/g,'\\\\');
	str = str.replace(/\0/g,'\\0');
	return str;
}

function stripslashes(str) {
	str = str.replace(/\\'/g,'\'');
	str = str.replace(/\\"/g,'"');
	str = str.replace(/\\\\/g,'\\');
	str = str.replace(/\\0/g,'\0');
	return str;
}

function utf8_decode ( str_data ) {
	var tmp_arr = [], i = ac = c1 = c2 = c3 = 0;

	str_data += '';

	while ( i < str_data.length ) {
		c1 = str_data.charCodeAt(i);
		if (c1 < 128) {
			tmp_arr[ac++] = String.fromCharCode(c1);
			i++;
		} else if ((c1 > 191) && (c1 < 224)) {
			c2 = str_data.charCodeAt(i+1);
			tmp_arr[ac++] = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
			i += 2;
		} else {
			c2 = str_data.charCodeAt(i+1);
			c3 = str_data.charCodeAt(i+2);
			tmp_arr[ac++] = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
			i += 3;
		}
	}

	return tmp_arr.join('');
}

function base64_decode( data ) {
	var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
	var o1, o2, o3, h1, h2, h3, h4, bits, i = ac = 0, dec = "", tmp_arr = [];
	
	data += '';

	do {  // unpack four hexets into three octets using index points in b64
		h1 = b64.indexOf(data.charAt(i++));
		h2 = b64.indexOf(data.charAt(i++));
		h3 = b64.indexOf(data.charAt(i++));
		h4 = b64.indexOf(data.charAt(i++));

		bits = h1<<18 | h2<<12 | h3<<6 | h4;

		o1 = bits>>16 & 0xff;
		o2 = bits>>8 & 0xff;
		o3 = bits & 0xff;

		if (h3 == 64) {
			tmp_arr[ac++] = String.fromCharCode(o1);
		} else if (h4 == 64) {
			tmp_arr[ac++] = String.fromCharCode(o1, o2);
		} else {
			tmp_arr[ac++] = String.fromCharCode(o1, o2, o3);
		}
	} while (i < data.length);

	dec = tmp_arr.join('');
	dec = utf8_decode(dec);

	return dec;
}

function Ajax() {
	doAjax('test.php', 'myForm', 'test');
}

function doAjax(file, form_id, inject_id) {
	jQuery.post(file, jQuery("#" + form_id).serialize(),
		function(data) {	
			jQuery('#' + inject_id).html(data);
		}
	);
}


function changeRegText(obj) {
	var match = jQuery(obj).val().replace(/([^A-Za-z0-9 ])/g, '');
	if (match) {
        //fontSize(plateType, match);
		jQuery(obj).val(match);
	}
	setTimeout("load_image('register', true)", 2000);
	
}

function changeRegSlogan(obj) {
  var match = jQuery(obj).val().replace(/([^A-Za-z0-9 ])/g, '');
	if (match) {
		jQuery(obj).val(match);
                jQuery('#reg_empty_slogan').val('false');
		jQuery('div.plate_slogan').html(match);
                var width = 12 * match.length;
                /*if(width > sloganWidth){
                    jQuery('div.plate_slogan').css({'width': sloganWidth + 'px'});
                    jQuery('div.plate_slogan').css({'overflow': 'hidden'});
                } else {*/
                  //  jQuery('div.plate_slogan').css({'width': width + 'px'});
                //}
	}
        if(match.length == 0) {
            jQuery(obj).val('');
            jQuery('#reg_empty_slogan').val('true');
            jQuery('div.plate_slogan').html('');
            //jQuery('div.plate_slogan').css({'width': '0px'});
        }
	load_image('slogan', true);
}

function setPlatesType(type) {
	if (type == 'both') {
                if(plateType != 'moto'){
                    jQuery('#plateF').show();
                }
                checkFrontBadgeVisibility();
		        jQuery('#plateB').show();
                checkBackBadgeVisibility();
	} else if (type == 'front') {
                if(plateType != 'moto'){
                    jQuery('#plateB').show();
                }
                checkFrontBadgeVisibility();
		        jQuery('#plateB').hide();
	} else if (type == 'back') {
		jQuery('#plateF').hide();
		jQuery('#plateB').show();
        checkBackBadgeVisibility();
	}
}



function load_image(step, isLoading, index) {
	

	if (current_step != '') {
		jQuery('#' + current_step).parent().removeClass('active');
	}
        var form_name = (current_step == '' ? step : current_step);
        if (form_name == 'registernewitem' || form_name == 'edititem' || form_name == 'deleteitem') {
            form_name = 'register';
        }
       /* if(step == 'registernewitem'){
            var oldValue = jQuery('#next_current_key').val();
            jQuery('#next_current_key').val(oldValue + 1);
        }*/
	if (isLoading==true) {
		jQuery('#imgcontmask').block({ 
                message: '<img src="images/loader.gif" />', 
                css: { border: 'none', width : 'auto', padding : '10px', background:'#242424' } 
            });
			
	setTimeout(function(){		
	jQuery.ajax({
	   type: 	'POST',
	   url : 	root_address + 'showSteps.php',
	   data: 	'step=' + step +
	   '&' + 'regType='+jQuery('#regType').val() +
	   '&' + 'index=' + index + '&only_image=1' + '&' + jQuery('#' + form_name + '_form').serialize(),
	   success: function(msg){
			 //setContainerHeight();
             //hideElement(index-1);
			 setPlatesType(jQuery('#regType').val());
			 jQuery("#temp_data").html(msg);
			 //jQuery("#images").html(msg);
	   }
	   
	});
      current_step = step;
	}, 3000); 
	  return;		 
	}
	else {
	jQuery.ajax({
	   type: 	'POST',
	   url : 	root_address + 'showSteps.php',
	   data: 	'step=' + step +
	   '&' + 'regType='+jQuery('#regType').val() +
	   '&' + 'index=' + index + '&' + jQuery('#' + form_name + '_form').serialize(),
	   success: function(msg){
	     jQuery('#temp_data').html(msg);
		 
             //setContainerHeight();
             //hideElement(index-1);
			 setPlatesType(jQuery('#regType').val());		 
	   }
	});
      current_step = step;
	}
	
}

function load_data(loadflag, img1, img2)
{

	if( loadflag == 2)
	{
		//var data = jQuery("#temp_data").html();
		//jQuery("#temp_data").html("");
		//jQuery('#green_step_container').hide();
		//jQuery("#green_step_container").html(data);
		//jQuery('#green_step_container').fadeIn("slow");
		
		//alert(loadflag);
		var myImages = Asset.images([img1, img2], {
    properties: {
        'class': 'myImage',
        title: 'myImage'
    },
    onComplete: function(){
        jQuery("#front").fadeOut();
		jQuery("#back").fadeOut();
		document.getElementById('front').src = img1;	
		document.getElementById('back').src = img2;	
		jQuery("#front").fadeIn("slow");
		jQuery("#back").fadeIn("slow");
    }
});

	
	
		jQuery('#centerContainer').unblock();	
	}
	else if (loadflag == 1){
		//var data = jQuery("#temp_data").html();
		//jQuery("#temp_data").html("");
		//jQuery('#green_step_container').hide();
		
		var myImages = Asset.images([img1, img2], {
			properties: {
				'class': 'myImage',
				title: 'myImage'
			},
			onComplete: function(){
				jQuery("#front").fadeOut();
				jQuery("#back").fadeOut();
				document.getElementById('front').src = img1;	
				document.getElementById('back').src = img2;	
				jQuery("#front").fadeIn("slow");
				jQuery("#back").fadeIn("slow");
			}
		});
		
		//jQuery('#green_step_container').fadeIn("slow");
	
	
		jQuery('#imgcontmask').unblock();	
			
	}
}

function loadStep(step, isLoading, index) {			
	if (current_step != '') {
		jQuery('#' + current_step).parent().removeClass('active');
	}
        var form_name = (current_step == '' ? step : current_step);
        if (form_name == 'registernewitem' || form_name == 'edititem' || form_name == 'deleteitem') {
            form_name = 'register';
        }
       /* if(step == 'registernewitem'){
            var oldValue = jQuery('#next_current_key').val();
            jQuery('#next_current_key').val(oldValue + 1);
        }*/
	if (isLoading==true) {
		jQuery('#centerContainer').block({ 
                message: '<img src="images/loader.gif" />', 
                css: { border: 'none', width : 'auto', padding : '10px', background:'#242424' } 
            });
	
	jQuery.ajax({
	   type: 	'POST',
	   url : 	root_address + 'showSteps.php',
	   data: 	'step=' + step +
	   '&' + 'regType='+jQuery('#regType').val() +
	   '&' + 'index=' + index + '&' + jQuery('#' + form_name + '_form').serialize(),
	   success: function(msg){
			 //setContainerHeight();
             //hideElement(index-1);
			  setPlatesType(jQuery('#regType').val());
			  jQuery("#green_step_container").html(msg);
			 //jQuery("#green_step_container").html(msg);
	   }
	   
	});
      current_step = step;
	
	setPlatesType(jQuery('#regType').val());
	current_step = step;
	  return;		 
	}
	else {
	jQuery.ajax({
	   type: 	'POST',
	   url : 	root_address + 'showSteps.php',
	   data: 	'step=' + step +
	   '&' + 'regType='+jQuery('#regType').val() +
	   '&' + 'index=' + index + '&' + jQuery('#' + form_name + '_form').serialize(),
	   success: function(msg){
	     jQuery('#green_step_container').html(msg);
             //setContainerHeight();
             //hideElement(index-1);
			 setPlatesType(jQuery('#regType').val());		 
	   }
	});
      current_step = step;
	}
}




function loadSpecificationDiv (id) {
    jQuery('#view_plate_specification_' + id).clone().attr('id', id + 1).appendTo(jQuery('#specification_container'));
}

function hideElement (index) {
    var id = '#view_plate_specification_' + index;
    jQuery(id).hide();
}

var lastClickedPlate = '';
function showPlateType(type) {
  if (lastClickedPlate != '') {
    jQuery('#' + lastClickedPlate).hide();
  }

  jQuery('#' + type).slideDown();

  lastClickedPlate = type;
}

function isValidEmailAddress(emailAddress) {
var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)jQuery)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?jQuery)/i);
return pattern.test(emailAddress);
}

function checkFields (step) {
    var email = jQuery('#pi_email').val();
    if(isValidEmailAddress(email)) {
        loadStep(step, false);
        //var link = 'content/steps/paypal.php?priceTotal=' + priceTotal;
        /*jQuery('#continue_disable').attr('href',link);
        jQuery('#continue_disable').attr('target','_blank');*/
        jQuery('#error_tr').html('');
        //jQuery('#error_tr').css('color','#000000');
        return true;
    } else {
        jQuery('#error_tr').html('Please fill a valid email address!');
        jQuery('#error_tr').css('color','#FF0000');
        return false;
    }
    return false;
}

function checkEbayFields () {
    var ebayUsername = jQuery('#ebay_username').val();
    var ebayAuctNumber = jQuery('#ebay_auct_number').val();
    if(ebayUsername !='' && ebayAuctNumber != '') {
        loadStep('thankyoufinal', false);
        jQuery('#error_ebay_tr').html('');
        return true;
    } else {
        jQuery('#error_ebay_tr').html('Please fill your ebay information!');
        jQuery('#error_ebay_tr').css('color','#FF0000');
        return false;
    }
    return false;
}

function openPage(price,regText)
{
    opener.document.location = 'paypal.php?priceTotal='+price+'&regText='+regText;
}

function setContainerHeight() {
    var centerContainerHeight = jQuery('#centerContainer').height();
    jQuery('#container').height(centerContainerHeight);
    //jQuery('#centerContainer').height(centerContainerHeight);
    jQuery('#leftContainer').height(centerContainerHeight);
    jQuery('#rightContainer').height(centerContainerHeight);
    jQuery('#leftContainerMiddle').height(centerContainerHeight-9);
    jQuery('#rightContainerMiddle').height(centerContainerHeight-9);
}
