jQuery.noConflict();

jQuery(document).ready(function($){
    Cufon.replace('h1');
    Cufon.replace('h2');
    Cufon.replace('h4');
    Cufon.replace('#main-nav a');
    if(!jQuery.browser.opera) Cufon.replace('#feedback');
    
    $('#login').window_black({ w:300, l:'#show-login' });
    $('#registration').window_black({ w:800, l:'#show-registration' });
    $('#registration').window_black({ w:800, l:'#more' });
    $('#feedback').window_black({ w:300, l:'#show-feedback' });
});


function init_form(form_namespace, ajax_url, defaults){

	form_id = form_namespace+'_form';

    jQuery('#'+form_id).find('.inp, .textarea').each(function(){
    	
    	jQuery(this).focus(function(){

    		var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');

			if (jQuery(this).val() == defaults[name]){
				jQuery(this).val('');
			}
	    });
		
		jQuery(this).blur(function(){
			
			var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');
			
			if (jQuery(this).val() == ''){
				jQuery(this).val(defaults[name]);
			}
	    });
		
		if (jQuery(this).val() == ''){
			var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');
			jQuery(this).val(defaults[name]);
		}
		
	});
    
    jQuery('#'+form_id).find('.submit').bind('click', {form_id: form_id}, function(event) {
    	
    	jQuery('#'+event.data.form_id).find('.inp, .textarea').each(function(){
    	
    		var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');
    		
    		if (jQuery(this).val() == defaults[name])
    		{
    			jQuery(this).val('');
    		}
    	});
    	
    	jQuery.ajax({
	        type    : 'POST',
	        cache   : false,
	        url     : ajax_url,
	        data    : jQuery('#'+event.data.form_id).serializeArray(),
	        success: function(data) {
	            jQuery('#'+form_namespace+'_container').html(data);
	        }
	    });
	
	    return false;
    	
    });
}

function init_signin(form_namespace, ajax_url, defaults){

	form_id = form_namespace+'_form';
	
	jQuery('#'+form_id).find('.inp').each(function(){
		
    	jQuery(this).focus(function(){

    		var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');

			if (jQuery(this).val() == defaults[name]){
				jQuery(this).val('');
			}
	    });
		
		jQuery(this).blur(function(){
			
			var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');
			
			if (jQuery(this).val() == ''){
				jQuery(this).val(defaults[name]);
			}
	    });
		
		if (jQuery(this).val() == ''){
			var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');
			jQuery(this).val(defaults[name]);
		}
		
	});
	
	jQuery('#'+form_id).find('.submit').bind('click', {form_id: form_id}, function(event) {
	
		jQuery('#'+event.data.form_id).find('.inp').each(function(){
	    	
    		var id = jQuery(this).attr('id');
    		var name = id.replace(form_namespace+'_', '');
    		
    		if (jQuery(this).val() == defaults[name])
    		{
    			jQuery(this).val('');
    		}
    	});

	    jQuery.ajax({
	        type    : 'POST',
	        cache   : false,
	        url     : ajax_url,
	        data    : jQuery('#'+event.data.form_id).serializeArray(),
	        dataType: 'json',
	        success: function(response) {
	            if (response.status == 'error'){
	                alert(response.message);
	            }
	            
	            if (response.status == 'success'){
	                location.href=response.redirect_url;
	            }
	        }
	    });
	
	    return false;
	});

}

function init_ajax_redirect_form(form_namespace, defaults){
	
}


function imposeMaxLength(Object, MaxLen)
{
  return (Object.value.length <= MaxLen);
}

