function search_get_page(request_type, start) {

	var loading_string_part1 = '<div style="display: table; #position: relative; overflow: hidden; width: 100%; text-align: center;">';
	loading_string_part1 += '<div style=" #position: absolute;  _top: 50%; display: table-cell; vertical-align: middle; width: 100%; height: ';
	var loading_string_part2 = 'px;"><div style="#position: relative; #top: -50%; color: #ddd; font-weight: bold; letter-spacing: -1px;">Loading...</div></div></div>';
	var target_div;
	switch(request_type) {
		case 'casinos':
			target_div = document.getElementById('casinoResults');
			break;
		case 'hotels':
			target_div = document.getElementById('hotelResults');
			break;
		case 'pages':
			target_div = document.getElementById('pageResults');
			break;
		case 'jobs':
			target_div = document.getElementById('jobResults');
			break;
		case 'forums':
			target_div = document.getElementById('forumResults');
			break;
		case 'onlinecasinos':
			target_div = document.getElementById('onlineCasinoResults');
			break;
		case 'onlinecasinogames':
			target_div = document.getElementById('onlineCasinoGameResults');
			break;
		default: 
			break;
	}
	target_height = target_div.offsetHeight;
	target_div.innerHTML = loading_string_part1+target_height+loading_string_part2;


	target_el = Ext.get(target_div);
	//target_el.getUpdateManager().showLoadIndicator = false;
	target_el.getUpdateManager().disableCaching = false;
	target_el.load(
		{
			url: "/search?search="+searchString+"&type="+request_type+"&start="+start+"&output=ajax"
		},
		"",
		function() {
			switch(request_type) {
				case 'casinos':
					setCurrentCasinoPage ( start, (start/resultsPerPage)+1 );
					break;
				case 'hotels':
					setCurrentHotelPage ( start, (start/resultsPerPage)+1 );
					break;
				case 'pages':
					setCurrentPagePage ( start, (start/pageResultsPerPage)+1 );
					break;
				case 'jobs':
					setCurrentJobPage ( start, (start/jobResultsPerPage)+1 );
					break;
				case 'forums':
					setCurrentForumPage ( start, (start/forumResultsPerPage)+1 );
					//hack to let the ajax page insert a Threads/Forums subheader as appropriate
					if(data.substring(0, 100).indexOf('thread') > 0) {
						document.getElementById('search-results-forums-subheading-1').innerHTML='Threads';
					} else {
						document.getElementById('search-results-forums-subheading-1').innerHTML='Forums';
					}
					break;
				case 'onlinecasinos':
					setCurrentOnlineCasinoPage ( start, (start/onlineCasinoResultsPerPage)+1 );
					break;
				case 'onlinecasinogames':
					setCurrentOnlineCasinoGamePage ( start, (start/onlineCasinoGameResultsPerPage)+1 );
					break;
				default: 
					alert('page type unknown');
					break;
			}
		
		});
		
      	  
   /*
   dojo.io.bind ( 
    { 
      url: "/search?search="+searchString+"&type="+request_type+"&start="+start+"&output=ajax", 
      load: function (type, data, evt) {
		switch(request_type) {
			case 'casinos':
				setCurrentCasinoPage ( start, (start/resultsPerPage)+1 );
				document.getElementById('casinoResults').innerHTML =  data;
				break;
			case 'hotels':
				setCurrentHotelPage ( start, (start/resultsPerPage)+1 );
				document.getElementById('hotelResults').innerHTML =  data;
				break;
			case 'pages':
				setCurrentPagePage ( start, (start/pageResultsPerPage)+1 );
				document.getElementById('pageResults').innerHTML =  data;			
				break;
			case 'jobs':
				setCurrentJobPage ( start, (start/jobResultsPerPage)+1 );
				document.getElementById('jobResults').innerHTML =  data;			
				break;
			case 'forums':
				setCurrentForumPage ( start, (start/forumResultsPerPage)+1 );
				//hack to let the ajax page insert a Threads/Forums subheader as appropriate
				if(data.substring(0, 100).indexOf('thread') > 0) {
					document.getElementById('search-results-forums-subheading-1').innerHTML='Threads';
				} else {
					document.getElementById('search-results-forums-subheading-1').innerHTML='Forums';
				}
				document.getElementById('forumResults').innerHTML =  data;			
				break;
			case 'onlinecasinos':
				setCurrentOnlineCasinoPage ( start, (start/onlineCasinoResultsPerPage)+1 );
				document.getElementById('onlineCasinoResults').innerHTML =  data;			
				break;
			case 'onlinecasinogames':
				setCurrentOnlineCasinoGamePage ( start, (start/onlineCasinoGameResultsPerPage)+1 );
				document.getElementById('onlineCasinoGameResults').innerHTML =  data;			
				break;
			default: 
				alert('page type unknown');
				break;
		}

      },
      error: function(type, data, evt){
        alert("An error occurred." + data);
      },
      mimetype: "text/html" 
    } 
   ); 
   
   */
}

function get_casino_page_previous() {
	if(currentCasinoPage == 1) { return false; }
	search_get_page('casinos', (currentCasinoPage - 2) * resultsPerPage);
}

function get_casino_page_next() {
	if(currentCasinoPage == totalCasinoPages) { return false; }
	search_get_page('casinos', (currentCasinoPage) * resultsPerPage);
}

function get_hotel_page_previous() {
	if(currentHotelPage == 1) { return false; }
	search_get_page('hotels', (currentHotelPage - 2) * resultsPerPage);
}

function get_hotel_page_next() {
	if(currentHotelPage == totalHotelPages) { return false; }
	search_get_page('hotels', (currentHotelPage) * resultsPerPage);
}

function get_page_page_previous() {
	if(currentPagePage == 1) { return false; }
	search_get_page('pages', (currentPagePage - 2) * pageResultsPerPage);
}

function get_page_page_next() {
	if(currentPagePage == totalPagePages) { return false; }
	search_get_page('pages', (currentPagePage) * pageResultsPerPage);
}

function get_job_page_previous() {
	if(currentJobPage == 1) { return false; }
	search_get_page('jobs', (currentJobPage - 2) * jobResultsPerPage);
}

function get_job_page_next() {
	if(currentJobPage == totalJobPages) { return false; }
	search_get_page('jobs', (currentJobPage) * jobResultsPerPage);
}

function get_forum_page_previous() {
	if(currentForumPage == 1) { return false; }
	search_get_page('forums', (currentForumPage - 2) * forumResultsPerPage);
}

function get_forum_page_next() {
	if(currentForumPage == totalForumPages) { return false; }
	search_get_page('forums', (currentForumPage) * forumResultsPerPage);
}


function get_onlinecasinos_page_previous() {
	if(currentOnlineCasinoPage == 1) { return false; }
	search_get_page('onlinecasinos', (currentOnlineCasinoPage - 2) * onlineCasinoResultsPerPage);
}

function get_onlinecasinos_page_next() {
	if(currentOnlineCasinoPage == totalOnlineCasinoPages) { return false; }
	search_get_page('onlinecasinos', (currentOnlineCasinoPage) * onlineCasinoResultsPerPage);
}


function get_onlinecasinogames_page_previous() {
	if(currentOnlineCasinoGamePage == 1) { return false; }
	search_get_page('onlinecasinogames', (currentOnlineCasinoGamePage - 2) * onlineCasinoGameResultsPerPage);
}

function get_onlinecasinogames_page_next() {
	if(currentOnlineCasinoGamePage == totalOnlineCasinoGamePages) { return false; }
	search_get_page('onlinecasinogames', (currentOnlineCasinoGamePage) * onlineCasinoGameResultsPerPage);
}

function setCurrentCasinoPage(start, page) {
	document.getElementById("casino-results-start").innerHTML = start+1;
	if(totalCasinoResults < start + resultsPerPage) {
		document.getElementById("casino-results-finish").innerHTML = totalCasinoResults;  
	} else {
		document.getElementById("casino-results-finish").innerHTML = start + resultsPerPage;  
	}
	currentCasinoPage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalCasinoPages;i++) {
		if(i == currentCasinoPage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'casinos\', ('+i+'-1)*resultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("casinopaginatedivnumbers").innerHTML = pagString;
}


function setCurrentHotelPage(start, page) {
	document.getElementById("hotel-results-start").innerHTML = start+1;
	if(totalHotelResults < start + resultsPerPage) {
		document.getElementById("hotel-results-finish").innerHTML = totalHotelResults;  
	} else {
		document.getElementById("hotel-results-finish").innerHTML = start + resultsPerPage;  
	}
	currentHotelPage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalHotelPages;i++) {
		if(i == currentHotelPage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'hotels\', ('+i+'-1)*resultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("hotelpaginatedivnumbers").innerHTML = pagString;
}


function setCurrentPagePage(start, page) {
	document.getElementById("page-results-start").innerHTML = start+1;
	if(totalPageResults < start + pageResultsPerPage) {
		document.getElementById("page-results-finish").innerHTML = totalPageResults;  
	} else {
		document.getElementById("page-results-finish").innerHTML = start + pageResultsPerPage;  
	}
	currentPagePage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalPagePages;i++) {
		if(i == currentPagePage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'pages\', ('+i+'-1)*pageResultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("pagepaginatedivnumbers").innerHTML = pagString;
}

function setCurrentJobPage(start, page) {
	document.getElementById("job-results-start").innerHTML = start+1;
	if(totalJobResults < start + jobResultsPerPage) {
		document.getElementById("job-results-finish").innerHTML = totalJobResults;  
	} else {
		document.getElementById("job-results-finish").innerHTML = start + jobResultsPerPage;  
	}
	currentJobPage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalJobPages;i++) {
		if(i == currentJobPage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'jobs\', ('+i+'-1)*jobResultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("jobpaginatedivnumbers").innerHTML = pagString;
}

function setCurrentForumPage(start, page) {
	document.getElementById("forum-results-start").innerHTML = start+1;
	if(totalForumResults < start + forumResultsPerPage) {
		document.getElementById("forum-results-finish").innerHTML = totalForumResults;  
	} else {
		document.getElementById("forum-results-finish").innerHTML = start + forumResultsPerPage;  
	}
	currentForumPage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalForumPages;i++) {
		if(i == currentForumPage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'forums\', ('+i+'-1)*forumResultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("forumpaginatedivnumbers").innerHTML = pagString;
}



function setCurrentOnlineCasinoPage(start, page) {
	document.getElementById("onlinecasinos-results-start").innerHTML = start+1;
	if(totalOnlineCasinoResults < start + onlineCasinoResultsPerPage) {
		document.getElementById("onlinecasinos-results-finish").innerHTML = totalOnlineCasinoResults;  
	} else {
		document.getElementById("onlinecasinos-results-finish").innerHTML = start + onlineCasinoResultsPerPage;  
	}
	currentOnlineCasinoPage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalOnlineCasinoPages;i++) {
		if(i == currentOnlineCasinoPage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'onlinecasinos\', ('+i+'-1)*onlineCasinoResultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("onlinecasinospaginatedivnumbers").innerHTML = pagString;
}


function setCurrentOnlineCasinoGamePage(start, page) {
	document.getElementById("onlinecasinogames-results-start").innerHTML = start+1;
	if(totalOnlineCasinoGameResults < start + onlineCasinoGameResultsPerPage) {
		document.getElementById("onlinecasinogames-results-finish").innerHTML = totalOnlineCasinoGameResults;  
	} else {
		document.getElementById("onlinecasinogames-results-finish").innerHTML = start + onlineCasinoGameResultsPerPage;  
	}
	currentOnlineCasinoGamePage = page;
	
	//update the bolded number
	var pagString = '';
	for(i=1;i<=totalOnlineCasinoGamePages;i++) {
		if(i == currentOnlineCasinoGamePage) { pagString += " <b>"+i+"</b> "; }
		else {
		      pagString += ' <a class="paginationstyle" href="#" onclick="search_get_page(\'onlinecasinogames\', ('+i+'-1)*onlineCasinoGameResultsPerPage); return false;" rel="nofollow">'+i+'</a> '; 
		}
	}
	document.getElementById("onlinecasinogamespaginatedivnumbers").innerHTML = pagString;
}
