$(document).ready(function(){
  $('#advsrchfmSimple input[type="text"]').each(function(){
		$(this).focus(function(){
			this.select();
		});
  });
  $('#searchText1').focus();
	
	$('.fieldselect').each(function(){
		var fieldId = $(this).attr('id');
		var fieldIdNumber = $(this).attr('id');
		var re = new RegExp('[.]?[0-9]+[.]?[0-9]*');
		var fieldIdNumber = fieldId.match(re);
		fieldChange(fieldId,fieldIdNumber);
	});
	
	if(IsWordList!='0'){
		$('.searchBlock .srchbox').each(function(){
			var currentID = $(this).attr('id');
			if(currentID){
				addWordList(currentID);
			}
		});
	}
	
	$("form#advsrchfmSimple").submit(function(event){

		//delete existing cookies
		DeleteSearchCookies();
		
		var searchTextArray = new Array();
		//create new cookies
		var error ='';
		
		//get media
		var IsMediaSelected = $('#multiMedia input').val();
		if(IsMediaSelected!='All media'){
			MediaVal=new Array();
			MediaText=new Array();
			$('.mediumbox label.checked input').each(function(){
				var CurrentMediaVal = encodeURIComponent($(this).val());
				var CurrentMediaText = $(this).parent().text();
				MediaVal.push(CurrentMediaVal);
				MediaText.push(CurrentMediaText);
			});
		} else {
			MediaVal = encodeURIComponent('#');
			MediaText = encodeURIComponent('All media');
		}
		$.cookie('GuidedMediaVal', MediaVal, {path: cookiepath});
		$.cookie('GuidedMediaText', MediaText, {path: cookiepath});
		
		$('#advsrchfmFull .searchbox').each(function(){
			var	srchBoxID = $(this).attr('id');
			var re = new RegExp('[.]?[0-9]+[.]?[0-9]*');
			var srchBoxNo = srchBoxID.match(re);

			var fieldClassRaw = $(this).find('input').attr('class');
			var fieldClass = fieldClassRaw.replace(/missingWord/, '');
			var fieldClass = fieldClass.trim();

			var srchBoxVal = $('#searchText' + srchBoxNo).val();

			if(rangeSearchA && !rangeSearchB){
				error = 'Please enter an end value for the range';
			} else if (!rangeSearchA && rangeSearchB) {
				error = 'Please enter an start value for the range';
			} else if (rangeSearchA && rangeSearchB){
				if(rangeSearchType=='srchDate'){
					rangeSearchVal = rangeSearchA + '---' + rangeSearchB ;
				} else {
					rangeSearchVal = rangeSearchA + '...' + rangeSearchB ;
				}
				GuidedTerms.push("searchterm="+ encodeURIComponent(rangeSearchVal) +"&Fields="+ encodeURIComponent(rangeSearchCode) +"&Media="+ encodeURIComponent(GuidedMedia) +"&Bool=AND");
			}
			
			if(fieldClass!='srchbox'){
				var rangeSearchA = $('#searchText'+srchBoxNo+'a').val();
				var rangeSearchB = $('#searchText'+srchBoxNo+'b').val();
				if(rangeSearchA && !rangeSearchB){
					error = 'Please enter an end value for the range';
				} else if (!rangeSearchA && rangeSearchB) {
					error = 'Please enter an start value for the range';
				} else if (rangeSearchA && rangeSearchB){
					if(fieldClass=='srchDate'){
						srchBoxVal = rangeSearchA + '---' + rangeSearchB ;
						$('<input id="searchText'+srchBoxNo+'" type="hidden" class="srchbox" name="searchterm" value="'+ srchBoxVal +'"/>').appendTo('#'+srchBoxID);
					} else {
						srchBoxVal = rangeSearchA + '...' + rangeSearchB;
						$('<input id="searchText'+srchBoxNo+'" type="hidden" class="srchbox" name="searchterm" value="'+ srchBoxVal + '"/>').appendTo('#'+srchBoxID);
					}
				}
			}
		});
		
		//prevent default action
		event.preventDefault();
		//get base url
		var BaseUrl = $(this).attr('action');
		//disable buttons and links
		var SearchBlockArray=new Array();

		//gather search terms
		$('.searchBlock').each(function(){
			var BlockId = $(this).attr('id');
			var re = new RegExp('[.]?[0-9]+[.]?[0-9]*');
			var BlockIdNo = BlockId.match(re);
			//get search term
			var SearchValTest = $('#searchText'+BlockIdNo).val();
			var SearchValTestA = $('#searchText'+BlockIdNo+'a').val();
			var SearchValTestB = $('#searchText'+BlockIdNo+'b').val();
			if(SearchValTest){
				var SearchVal = SearchValTest;
			}
			
			if(SearchValTest||SearchValTestA){
				if(SearchValTest){
					var SearchName = $('#searchText'+BlockIdNo).attr('name');
					//get field
					var FieldVal = encodeURIComponent($('#Fields'+BlockIdNo).attr('value'));
					var FieldName = $('#Fields'+BlockIdNo).attr('name');
					//get media
					var MediaName = 'Media';
					//gather terms
					var IsMediaSelected = $('.mediumbox #Media'+BlockIdNo+' input').val();
					//get boolean
					var BoolVal = $('#Bool'+BlockIdNo).attr('value');
					var BoolName = escape($('#Bool'+BlockIdNo).attr('name'));
					
					//Create Adv search cookies
					var FieldsNo = 'GuidedFields'+ BlockIdNo;
					$.cookie(FieldsNo, FieldVal, {path: cookiepath});
		
					//Boolean
					var BoolNo = 'Bool'+ BlockIdNo;
					$.cookie(BoolNo, BoolVal, {path: cookiepath});
		
					//Search term
					$.cookie('GuidedSearchText' + BlockIdNo, SearchVal, {path: cookiepath});
					
					//create array of search terms
					SearchBlockArray.push(SearchName +"="+ SearchVal +"&"+ FieldName +"="+ FieldVal +"&"+ MediaName +"="+ MediaVal +"&"+ BoolName +"="+ BoolVal);
				}
			
				if(SearchValTestA){
					var SearchValAClass = $('#searchText'+BlockIdNo+'a').attr('class');
					if(SearchValAClass=='srchDate'){
						var SearchName = 'searchterm';
						var SearchVal = SearchValTestA + "---" + SearchValTestB;
						//get field
						var FieldVal = $('#Fields'+BlockIdNo).attr('value');
						var FieldName = $('#Fields'+BlockIdNo).attr('name');
						//get media
						var MediaName = 'Media';
						//gather terms
						var IsMediaSelected = $('.mediumbox #Media'+BlockIdNo+' input').val();
						//get boolean
						var BoolVal = $('#Bool'+BlockIdNo).attr('value');
						var BoolName = escape($('#Bool'+BlockIdNo).attr('name'));
						
						//Create Adv search cookies
						var FieldsNo = 'GuidedFields'+ BlockIdNo;
						$.cookie(FieldsNo, FieldVal, {path: cookiepath});
			
						//Boolean
						var BoolNo = 'Bool'+ BlockIdNo;
						$.cookie(BoolNo, BoolVal, {path: cookiepath});
			
						//Search term
						$.cookie('GuidedSearchText' + BlockIdNo, SearchVal, {path: cookiepath});
						
						//create array of search terms
						SearchBlockArray.push(SearchName +"="+ SearchVal +"&"+ FieldName +"="+ FieldVal +"&"+ MediaName +"="+ MediaVal +"&"+ BoolName +"="+ BoolVal);
					} else {
						var SearchName = 'searchterm';
						var SearchVal = SearchValTestA + "..." + SearchValTestB;
						//get field
						var FieldVal = $('#Fields'+BlockIdNo).attr('value');
						var FieldName = $('#Fields'+BlockIdNo).attr('name');
						//get media
						var MediaName = 'Media';
						//gather terms
						var IsMediaSelected = $('.mediumbox #Media'+BlockIdNo+' input').val();
						//get boolean
						var BoolVal = $('#Bool'+BlockIdNo).attr('value');
						var BoolName = escape($('#Bool'+BlockIdNo).attr('name'));
						
						//Create Adv search cookies
						var FieldsNo = 'GuidedFields'+ BlockIdNo;
						$.cookie(FieldsNo, FieldVal, {path: cookiepath});
			
						//Boolean
						var BoolNo = 'Bool'+ BlockIdNo;
						$.cookie(BoolNo, BoolVal, {path: cookiepath});
			
						//Search term
						$.cookie('GuidedSearchText' + BlockIdNo, SearchVal, {path: cookiepath});
						
						//create array of search terms
						SearchBlockArray.push(SearchName +"="+ SearchVal +"&"+ FieldName +"="+ FieldVal +"&"+ MediaName +"="+ MediaVal +"&"+ BoolName +"="+ BoolVal);
					
					}
				}
			} else {
				//clear cookie
				$.cookie('GuidedSearchText' + BlockIdNo, null, {path: cookiepath});
			}
		});
		if(error){
			$('.error').text(error);
		}else {
			document.location = BaseUrl + "?" + SearchBlockArray.join('&');
		}
	});
	
	//set guided search cookies
	
	$('#advsrchfmSimple .srchbox').each(function(){
		var SearchBoxID = $(this).attr('id');
		var re = new RegExp('[.]?[0-9]+[.]?[0-9]*');
		var SearchBoxNo = SearchBoxID.match(re);
		var SearchText = $.cookie('GuidedSearchText'+SearchBoxNo);
		if(SearchText){
			$('#'+SearchBoxID).val(SearchText);
		}
	});
	
	$('#advsrchfmSimple .srchNumber').each(function(){
		var SearchBoxID = $(this).attr('id');
		var re = new RegExp('[.]?[0-9]+[.]?[0-9]*');
		var SearchBoxNo = SearchBoxID.match(re);
		var SearchText = $.cookie('GuidedSearchText'+SearchBoxNo);
		if(SearchText){
			
			var SearchTextArray = SearchText.split('...');
			SearchTextArrayA = SearchTextArray[0];
			SearchTextArrayB = SearchTextArray[1];
			$('#searchText'+SearchBoxNo+'a').val(SearchTextArrayA);
			$('#searchText'+SearchBoxNo+'b').val(SearchTextArrayB);
		}
	});
	
	$('#advsrchfmSimple .srchDate').each(function(){
		var SearchBoxID = $(this).attr('id');
		var re = new RegExp('[.]?[0-9]+[.]?[0-9]*');
		var SearchBoxNo = SearchBoxID.match(re);
		var SearchText = $.cookie('GuidedSearchText'+SearchBoxNo);
		if(SearchText){
			var SearchTextArray = SearchText.split('---');
			$('#'+SearchBoxID+'a').val(SearchTextArray[0]);
			$('#'+SearchBoxID+'b').val(SearchTextArray[1]);
		}
	});
	
	
	
	var sGuidedMediaVal = $('#multiMedia').val();
	var GuidedMediaVal = $.cookie('GuidedMediaVal');
	if(GuidedMediaVal){
		$('#multiMedia').val(GuidedMediaVal);
	}
	
	if(sGuidedMediaVal===null){
		$('#multiMedia').multiSelect({ oneOrMoreSelected: '*' });
	}
	
	//fix for guided search media display - displays correctly in FF/IE8/GC/SA
	$('a.multiSelect').css('width','250');
  var TotalMultiSelectWidth= $('a.multiSelect').width();
  var TextMultiSelectWidth=$('a.multiSelect input').width();
	var StartingWindowSize=$('#advsrchfmSimple').width();
	$('a.multiSelect input').width(TotalMultiSelectWidth-5);
	$('.multiSelectOptions').width(TotalMultiSelectWidth);
});
