
function SchoolSearch() {
	var me = this;
	
	me.jsonObject = new Object;
	me._jsonString;
	me.page=1;
	me.lastPage;
	
// 	alert('create search');
//	pageTracker._trackEvent('index', 'search', JSONstring);
//	var currentUrl = document.location;
//	var isIndex = new Array();
//	isIndex = currentUrl.toString().split("/");
//
//	// pass Json string on to school-finder.php from index.php
//	if(isIndex[isIndex.length-1].match("index"))
//	{
//		var url = "school-finder.php?json=" + JSONstring;
//		url = url + "&lucky=" + feelingLucky;
//		// alert(url);
//		url = url + "&sid=" + Math.random();
//		
//		document.location = url;
//	}
}

SchoolSearch.prototype.loadNameSearchForm = function(form) {
	this.jsonObject = new Object;
	this._jsonString = '';
	
//	var _form = document.forms[form];
//	var _name = _form['search-bar-text'].value;
	var _name = $('#search-bar-text').val();
	this.jsonObject.schoolName = _name;
	
	// alert('here: ' + this.jsonObject.schoolName);
	// alert('here: ' + JSON);
	
	this._jsonString = JSON.stringify(this.jsonObject);
//	alert(this._jsonString);
	this._sendAjax();
};

SchoolSearch.prototype.loadSearchForm = function(form, select) {
	$('.loader').show();
	this.jsonObject = new Object;
	this._jsonString = '';

	var _form = document.forms[form];
	var _sat = _form['schoolSat'].value;
	var _act = _form['schoolAct'].value;

	this.jsonObject.schoolSat = _sat;
	this.jsonObject.schoolAct = _act;

	var _select = _form[select];
	
	var _selected = [];
	for(var i=0; i<_select.length; i++) {
		if(_select.options[i].selected) {
			_selected.push(_select.options[i].value);
		}
	}
	
	/*
	 * data.
	 */
	this.jsonObject.schoolDegrees = [];
	this.jsonObject.schoolPrograms = [];
	this.jsonObject.schoolRegions = [];
	this.jsonObject.schoolSettings = [];
	this.jsonObject.schoolSize = [];
	this.jsonObject.schoolWeather = [];
	this.jsonObject.schoolAgeGroup = [];
	this.jsonObject.schoolGender = [];
	this.jsonObject.schoolSpecial = [];
	this.jsonObject.schoolAthletics = [];
	
	var searchOpt = [];
	var searchPrograms = [];
	
	for(var opt in _selected) {
		searchOpt = _selected[opt].split("|");
		switch(searchOpt[0]) {
			case 'schoolDegrees':
				this.jsonObject.schoolDegrees.push(searchOpt[1]);
				break;
			case 'schoolPrograms':
				searchPrograms = searchOpt[1].split(".");
				for(var i=0; i<searchPrograms.length-1; i++) {
					// alert(searchPrograms[i]);
					this.jsonObject.schoolPrograms.push(searchPrograms[i]);
				}
				break;
			case 'schoolRegions':
				this.jsonObject.schoolRegions.push(searchOpt[1]);
				break;
			case 'schoolSettings':
				this.jsonObject.schoolSettings.push(searchOpt[1]);
				break;
			case 'schoolSize':
				this.jsonObject.schoolSize.push(searchOpt[1]);
				break;
			case 'schoolWeather':
				this.jsonObject.schoolWeather.push(searchOpt[1]);
				break;
			case 'schoolAgeGroup':
				this.jsonObject.schoolAgeGroup.push(searchOpt[1]);
				break;
			case 'schoolGender':
				this.jsonObject.schoolGender.push(searchOpt[1]);
				break;
			case 'schoolSpecial':
				this.jsonObject.schoolSpecial.push(searchOpt[1]);
				break;
			case 'schoolAthletics':
				this.jsonObject.schoolAthletics.push(searchOpt[1]);
				break;
			default:
				break;
		}
	}
	
	this._jsonString = JSON.stringify(this.jsonObject);
	
	this._sendAjax();
};

SchoolSearch.prototype.sortBy = function(column, order) {
	
};

SchoolSearch.prototype.changePage = function(change) {
	this.page += Number(change);
	// alert('page no: ' + this.page);
	this._sendAjax();	
};

SchoolSearch.prototype._sendAjax = function() {
	// alert(this._jsonString);
	var _url = URL + 'php/ajaxDb.php';
	// alert(_url);
//	if(this.page < 1)
//		this.page = 1;
//	if(this.page > this.lastPage)
//		this.page = this.lastPage;
	// alert(this.lastPage);
	$.get(_url, {"json": this._jsonString/*, "page": this.page, "limit": "100"*/}, function(data) {
		// alert(data);
		var jsonData = JSON.parse(data);
		// searchOptions.lastPage = jsonData['lastPage'];

		control.loadSearchResults(jsonData['data']);
		$('.loader').hide();
	}, "text");
	
};
