
function SetSearchEngineRegions()
{
	
	//Conteiner for Regions
	var divSearchEngineRegionsConteiner;
	var checkbox;
	var Table;
	var TBody;
	var tr;
	var td;
	var span;
	
	divSearchEngineRegionsConteiner = document.createElement('div'); 
	divSearchEngineRegionsConteiner.setAttribute('id','divSearchEngineRegionsConteiner');
	Table = document.createElement('table');
	Table.setAttribute('id','tblSearchEngineRegions');
	Table.cellPadding = "0px";
	Table.cellSpacing = "0px";
	Table.setAttribute('width','100%');
	Table.setAttribute('border','0');
	TBody = document.createElement('tbody');
	document.getElementById(RegionID).innerHTML = '';
	
	//Checkbox select all regions
	tr = document.createElement('tr');
	td = document.createElement('td');
	checkbox = document.createElement('input'); 
	checkbox.type = "checkbox";
	checkbox.setAttribute('id','chkRegions_-1'); 
	checkbox.onclick = function(){SetRegionMarkedRow(this.id);};
	checkbox.setAttribute('value','-1');
	td.appendChild(checkbox);
	$(checkbox).attr('checked',true);
	tr.setAttribute("id","trJobRegions_-1");
	tr.onclick = function(){SetRegionMarkedRow(this.id);};
	tr.appendChild(td);
	td = document.createElement('td'); 
	td.setAttribute("class","tdRegionsName");
	td.appendChild(document.createTextNode('הכל'));
	td.colSpan = 2;
	tr.appendChild(td);
	$(tr).attr('class','RowRegionsMarked')
	TBody.appendChild(tr);
	
	for(i=0;i<arrRegions.length;i+=2)
	{
		tr = document.createElement('tr'); 
		tr.setAttribute("id","trJobRegions_" + arrRegions[i]);
			
		//Set checkbox
		td = document.createElement('td'); 
		td.onclick = function(){SetRegionMarkedRow(this.id);};
		td.setAttribute("id", "tdJobRegionsChk_" + arrRegions[i]);
		checkbox = document.createElement('input'); 
		checkbox.type = "checkbox";
		checkbox.setAttribute('id','chkRegions_' + arrRegions[i]);
		checkbox.onclick = function(){SetRegionMarkedRow(this.id);};
		checkbox.setAttribute('value',arrRegions[i]);
		td.setAttribute('width','10px');
		td.appendChild(checkbox);
		tr.appendChild(td);
		
		//Set RegionName
		td = document.createElement('td'); 
		td.onclick = function(){SetRegionMarkedRow(this.id);};
		td.setAttribute("id", "tdRegionsName_" + arrRegions[i]);
		td.setAttribute("class","tdRegionsName");
		td.appendChild(document.createTextNode(arrRegions[i+1]));
		tr.appendChild(td);
		
		//Link show cities
		td = document.createElement('td'); 
		td.setAttribute("id", "tdShowCities_" + arrRegions[i]);
		$(td).attr('class','tdShowCities');
		span = document.createElement('span'); 
		span.setAttribute("id", "spnShowCities_" + arrRegions[i]);
		span.appendChild(document.createTextNode(''));
		$(span).attr('class','spnShowCities');
		span.onclick = function(){GetCities(this.id);};
		td.appendChild(span);
		tr.appendChild(td);
		TBody.appendChild(tr);
		
		//Row conteiner for Cities
		tr = document.createElement('tr'); 
		tr.setAttribute("id","trRegionCities_" + arrRegions[i]);
		td = document.createElement('td'); 
		$(td).attr("class","tdCitiesName");
		$(td).attr('colSpan','3');
		td.setAttribute("id", "tdRegionCities_" + arrRegions[i]);
		tr.appendChild(td);
		TBody.appendChild(tr);
		
	}
	Table.appendChild(TBody);
	divSearchEngineRegionsConteiner.appendChild(Table);
	document.getElementById(RegionID).appendChild(divSearchEngineRegionsConteiner);
	document.getElementById(RegionID).className = 'ComboViewRegions';
}
function GetCities(RegionID)
{
	RegionID = RegionID.split('_')[1];
	//Hide cities
	if($('#spnShowCities_'+RegionID).html() == 'בטל')
	{
		$('#spnShowCities_'+RegionID).html('');
		$('#chkRegions_'+RegionID).attr('checked',false)
		$('#trJobRegions_'+RegionID).attr('class', 'RowRegionsUnMarked');
		UncheckedCitiesByRegionID(RegionID);
	}
	//Show cities
	else
	{
		$('#spnShowCities_'+RegionID).html('בטל')
		//Unchecked 'הכל'
		if($('#chkRegions_-1').attr('checked'))
		{
			$('#chkRegions_-1').attr('checked',false);
			$('#trJobRegions_-1').attr('class', 'RowRegionsUnMarked');
			
		}
		$('#chkRegions_'+RegionID).attr('checked',true)
		$('#trJobRegions_'+RegionID).attr('class', 'RowRegionsMarked');
		CreateCitiesTable(RegionID);
	}	
}

//Marked or Unmarked Row
function SetRegionMarkedRow(CatID)
{
	CatID = CatID.split('_')[1];

	//Check if checkbox checked
	if($('#chkRegions_'+CatID).attr('checked'))
	{
		$('#chkRegions_'+CatID).attr('checked',false);
		//Hide cities
		if(CatID != '-1')
		{
			$('#spnShowCities_'+CatID).html('');
			UncheckedCitiesByRegionID(CatID);
		}
	}
	else
	{
		$('#spnShowCities_'+CatID).html('הצג ערים');
		$('#chkRegions_'+CatID).attr('checked',true);
	}
	
	//Unchecked others checkboxs exept CatID == '-1' and hide cities
	if(CatID == '-1' && $('#chkRegions_'+CatID).attr('checked'))
		$('#tblSearchEngineRegions tr input[@type="checkbox"][@checked]').each(
			function()
			{
				if(this.id.split('_')[1] != '-1')
				{
					$(this).attr('checked',false);
					$('#tblSearchEngineCitiesRegion_'+this.id.split('_')[1]).hide();
					
				}
			}
		);
	//Uncheked checkbox with CatID == '-1'
	if(CatID != '-1' && $('#chkRegions_'+CatID).attr('checked'))
		$('#chkRegions_-1').attr('checked',false);
		
	//Unmarked all rows	
	$('#tblSearchEngineRegions tr input[@type="checkbox"]').parent().parent().attr('class', 'RowRegionsUnMarked');
	
	//Marked rows where checkbox is checked
	$('#tblSearchEngineRegions tr input[@type="checkbox"][@checked]').parent().parent().attr('class', 'RowRegionsMarked');
}

//Return values to Main JS file
function GetSearchResultsRegions()
{
	
	var regionIDs = '';
	citiesIDs = '';
	//Regions
	$('#tblSearchEngineRegions tr input[@type="checkbox"][@checked]').each(
			function()
			{
				//Create regions string IDs
				if(this.value != '-1')
				{
					//If this checkbox is Region
					if(this.id.indexOf('chkRegions_') != -1)
						regionIDs += this.value + ',';
					//If this checkbox is City
					else
						citiesIDs += this.value + ',';
				}
			}
	);

	//Remove last ','
	if(regionIDs != '')
		regionIDs = regionIDs.substring(0, regionIDs.length - 1);
		
	//Remove last ',' and create cities params if they exists (citiesIDs global param)
	if(citiesIDs != '')
	{
		regionIDs = '';
		citiesIDs = citiesIDs.substring(0, citiesIDs.length - 1);
		citiesIDs = '&city=' + citiesIDs;
	}

	return regionIDs;
}
//Get Regions values
function GetSearchEngineRegionName()
{
	var regionNames = "";
	
	//Regions
	$('#' + RegionID +' input[@type="checkbox"][@checked]').each(
			function()
			{
				//Create regions string Names
				if(this.value != '-1')
					regionNames += $('#tdRegionsName_' + this.value).html() + '<br/>';
			}
	);
	
	if(regionNames == '')
		return 'הכל';
		
	return regionNames;
}
//Set Regions values
function SetSearchEngineRegionValues(regionIDs)
{
	var i; 
	var arrRegionIDs = new Array();
		 	
	if(regionIDs != '')
	{	
		if(regionIDs.indexOf(',') == -1)
			arrRegionIDs[0] = regionIDs;
		else
			arrRegionIDs = regionIDs.split(',');
			
		for(i=0;i<arrRegionIDs.length;i++)
		{
			//Regions
			$('#' + RegionID +' input[@type="checkbox"]').each(
					function()
					{
						if(this.value == arrRegionIDs[i])
							$(this).attr('checked',true);
						
					}
			);
		}	
		$('#tblSearchEngineRegions tr input[@type="checkbox"][@checked]').parent().parent().attr('class', 'RowRegionsMarked');
		$('#chkRegions_-1').parent().parent().attr('class', 'RowRegionsUnMarked');
		$('#chkRegions_-1').attr('checked',false);
	}
	else
		SetSearchEngineRegions();
}
//Create Cities for this RegionID
function CreateCitiesTable(RegionID)
{
	//Conteiner row in Region table
	var CitiesID = "tdRegionCities_" + RegionID;
	
	//Conteiner for Cities
	var divSearchEngineCitiesConteiner;
	var checkbox;
	var Table;
	var TBody;
	var tr;
	var td;
	
	//DivID = RegionID
	divSearchEngineCitiesConteiner = document.createElement('div'); 
	divSearchEngineCitiesConteiner.setAttribute('id','divSearchEngineCitiesConteiner_' + RegionID);
	Table = document.createElement('table');
	//TableID = RegionID
	Table.setAttribute('id','tblSearchEngineCitiesRegion_' + RegionID);
	Table.cellPadding = "0px";
	Table.cellSpacing = "0px";
	Table.setAttribute('width','100%');
	Table.setAttribute('border','0');
	TBody = document.createElement('tbody');
	document.getElementById(CitiesID).innerHTML = '';
	
	//Checkbox select all cities
	tr = document.createElement('tr');
	td = document.createElement('td');
	checkbox = document.createElement('input'); 
	checkbox.type = "checkbox";
	checkbox.setAttribute('id','chkCities_' + RegionID + '_-1'); 
	checkbox.onclick = function(){SetCitiesMarkedRow(this.id);};
	checkbox.setAttribute('value','-1');
	td.appendChild(checkbox);
	$(checkbox).attr('checked',true);
	tr.setAttribute('id','trJobCities_' + RegionID + '_-1');
	tr.onclick = function(){SetCitiesMarkedRow(this.id);};
	tr.appendChild(td);
	td = document.createElement('td'); 
	td.appendChild(document.createTextNode('הכל'));
	tr.appendChild(td);
	$(tr).attr('class','RowCitiesMarked')
	TBody.appendChild(tr);

    
	var CitiesRow;
	//Get position of cities in arr Cities
	for(i=0;i<regionsID.length;i++)
		//Get number of row in Cities arr for this region
		if(regionsID[i] == RegionID)
			CitiesRow = i;
			
	
	for(i=0;i<citiesID[CitiesRow].length;i++)
	{

		tr = document.createElement('tr'); 
		tr.setAttribute("id","trJobCities_" + RegionID + "_" + citiesID[CitiesRow][i]);
		tr.onclick = function(){SetCitiesMarkedRow(this.id);};
		
		//Set checkbox
		td = document.createElement('td'); 
		td.setAttribute("id", "tdJobCitiesChk_" + RegionID + "_" + citiesID[CitiesRow][i]);
		checkbox = document.createElement('input'); 
		checkbox.type = "checkbox";
		checkbox.setAttribute('id','chkCities_' + RegionID + '_' + citiesID[CitiesRow][i]);
		checkbox.onclick = function(){SetCitiesMarkedRow(this.id);};
		checkbox.setAttribute('value',citiesID[CitiesRow][i]);
		td.setAttribute('width','10px');
		td.appendChild(checkbox);
		tr.appendChild(td);
		
		//Set RegionName
		td = document.createElement('td'); 
		td.setAttribute("id", "tdCitiesName_" + RegionID + "_" + citiesID[CitiesRow][i]);
		td.appendChild(document.createTextNode(cities[CitiesRow][i]));
		tr.appendChild(td);
		TBody.appendChild(tr);
		
	}
	
	Table.appendChild(TBody);
	divSearchEngineCitiesConteiner.appendChild(Table);
	document.getElementById(CitiesID).appendChild(divSearchEngineCitiesConteiner);
}

//Unchecked cities by RegionID
function UncheckedCitiesByRegionID(RegionID)
{
	//Conteiner row in Region table
	var CitiesID = "tdRegionCities_" + RegionID;
	document.getElementById(CitiesID).innerHTML = '';
	
}

//Marked or Unmarked Row
function SetCitiesMarkedRow(CityObj)
{
	var RegionID = CityObj.split('_')[1];
	var CityID = CityObj.split('_')[2];

	//Check if checkbox checked
	if($('#chkCities_'+RegionID+'_'+CityID).attr('checked'))
		$('#chkCities_'+RegionID+'_'+CityID).attr('checked',false);
	else
		$('#chkCities_'+RegionID+'_'+CityID).attr('checked',true);

	
	//Unchecked others checkboxs exept CityID == '-1'
	if(CityID == '-1' && $('#chkCities_'+RegionID+'_'+CityID).attr('checked'))
	{
		$('#tblSearchEngineCitiesRegion_'+ RegionID + ' tr input[@type="checkbox"][@checked]').each(
			function()
			{
				if(this.value != '-1')
					$(this).attr('checked',false);
			}
		);
	}
	//Uncheked checkbox with CityID == '-1'
	if(CityID != '-1' && $('#chkCities_'+RegionID+'_'+CityID).attr('checked'))
	{
		$('#chkCities_'+RegionID+'_-1').attr('checked',false);
		$('#chkRegions_-1').attr('checked',false);
	}	
	//Unmarked all rows	
	$('#tblSearchEngineCitiesRegion_'+ RegionID + ' tr input[@type="checkbox"]').parent().parent().attr('class', 'RowCitiesUnMarked');
	
	//Marked rows where checkbox is cheked
	$('#tblSearchEngineCitiesRegion_'+ RegionID + ' tr input[@type="checkbox"][@checked]').parent().parent().attr('class', 'RowCitiesMarked');
}


