/**
 *
 * @version $Id: utils.form.class.js 1241 2009-07-01 17:24:20Z midget $
 *
 * @license http://www.midworld-networks.com/licenses/outsoursing.html
 * @author Dario Minnucci <dario.minnucci@midworld-networks.com>
 * @copyright Copyright 2008, Dario Minnucci <dario.minnucci@midworld-networks.com>
 *
 * @package midworld.net
 * @subpackage javascript
 * @access public
 *
 */
function _show_options( options )
{
	
	var div_options = "#"+options+"_options";
	//alert( div_options );

	$(document).ready(function()
	{
		// Show options
		$( div_options ).slideDown( 300 );

		// Hide div_options on mouseout
	    $( div_options ).mouseleave(function(){
	    	$( this ).slideUp( 300 );
	    });

	    // Apply font-weight on current element
	    $( "li" ).mouseover(function(){
	    	$(this).css('font-weight', 'bold');
	    	$(this).css('background-color', '#EFF');
	    }).mouseout(function(){
	    	$(this).css('background-color', 'inherit');
	    	$(this).css('font-weight', 'normal');
	    });
		
	});

}

function _select_option( select, key, val )
{
	
	var div_fake = "#fake_"+select;	
	var div_select = "#"+select;	
	var div_options = "#"+select+"_options";	

	//alert( div_fake );
	//alert( div_select );
	//alert( div_options );
	
	$(document).ready(function()
	{
		// Fillup the faked input with the choosen value		
		$( div_fake ).attr( 'value', val );
		$( div_select ).attr( 'name', select );
		$( div_select ).attr( 'value', key );
		//$( "li" ).click( function() { alert('li clicked!'); } );
		
		$( div_options ).slideUp( 300 );
	});	
}

function post( f ){
	
	var form = "#"+f;
	
	$(document).ready(function(){
		show_overlay('sssssssss');
		$( form ).submit();
		hide_overlay();
	});
	
}

function doThePost( form ) {

	//show_overlay('Processing...');
	
	//set_attr( '#debug', 'html', 'processing...' );
	//set_attr( '#button_value', 'html', 'processing...' );
	
	
	
	// prepare the form when the DOM is ready
	$(document).ready( function() {

		// Reset #debug content if any
		$("#debug").html('processing...');
		
		//
		// Reset previous errors if any
		//
		$('input').removeClass("data_error");
				
		$('div[id*="_error"]').hide();
		$('div[id*="_error"]').html("");


		var options = {
			target : "#debug", // target element(s) to be updated with server response 
			type : "post",
			dataType : 'script'
			// beforeSubmit : showRequest, // pre-submit callback
			// success : showResponse
			// post-submit callback

			// other available options:
			// url: url // override for form's 'action' attribute
			// type: type // 'get' or 'post', override for form's
			// 'method' attribute
			// dataType: null // 'xml', 'script', or 'json'
			// (expected server response type)
			// clearForm: true // clear all form fields after
			// successful submit
			// resetForm: true // reset the form after successful
			// submit
			
			//beforeSubmit : set_attr( '#button_value', 'html', 'processing...' ),
			//success : set_attr( '#button_value', 'html', 'done' )

		// $.ajax options can be used here too, for example:
		// timeout: 3000
		};

		// bind form using 'ajaxForm'
			$('#' + form).ajaxForm(options);
			$('#' + form).submit();

		});

	//hide_overlay();
	
}
function debug( str )
{
	alert( str );
}

function set_attr( element, attr, val )
{
	$(document).ready(function(){
		
		if( attr == 'html' )
			{
			$( element ).html( val );
			} else {
				$( element ).attr( attr, val );				
			}
		
	});
}