
	$(document).ready( function() {
		build_live();
	});
	
	function build_live( p , cm )
	{
		if ( !p ) p = page;
			else page = p;
		
		if ( cm && cm == 1 )
			_click_made = true;
		
		before_server_call();
		
		// call the server.
		server_post( { m : 'build_live' , page : p , category_id : category_id, filter : filter } , server_callback );
	}
	
	function before_server_call(){
		// show loader
		$('#forScript').empty().show().append(loader());
	}
	
	function server_callback( data )
	{
		
		if ( data['err'] ) {
			// display_error can be found in the utils.js ; for start it alerts the error text
			display_error( data['err'] );
		}else if ( data['server'] &&  data['server']['data'] ){
			// we got the html from the server. now let us build the page.
			// clearer() retunr a div with style clear:both with height as parameter. found in utils.js
			$('#forScript').empty().append( data['server']['data'] );
			$('#forScript').append( clearer(1) ).append( data['server']['pagination'] );
			$('#simple_pagination').clone().prependTo('#forScript').after( clearer(5) );
			$('#forScript').prepend( data['server']['filter'] );
		}
		after_live_load();
	}
	
	function after_live_load()
	{
		// any click on pagination is not considered a click on back button
		
		$('#filter').change(function() {
			// any chenge on filter is not considered a click on back button
			_click_made = true;
			t = document.location.href.split('#');
			document.location.href = t[0] + $(this).val() + '/page/' + page;
			parse_location();
			build_live( page );
		});
	}