function setJobSearchLayer(root_url, main_cat_id)
{
	
	$("search_job_submit").addEvent('click', function()
	{
		if($("category").value!="" && $("department").value!="")
		{
			if($("category").hasClass("error_value"))	
			{
				$("category").removeClass("error_value")
			}
			if($("category").getParent().hasClass("error_label"))
			{
				$("category").getParent().removeClass("error_label")
			}
			if($("department").hasClass("error_value"))	
			{
				$("department").removeClass("error_value")
			}
			if($("department").getParent().hasClass("error_label"))
			{
				$("department").getParent().removeClass("error_label")
			}
			openJobSearchLayer(root_url,$("category").value,$("department").value,main_cat_id,"right_menu");
		}
		else
		{
			if($("category").value=="")
			{
				$("category").set("class","error_value");
				$("category").getParent().set("class","error_label");
			}
			else
			{
				$("category").set("class","");
				$("category").getParent().set("class","");
			}
			if($("department").value=="")
			{
				$("department").set("class","error_value");
				$("department").getParent().set("class","error_label");
			}
			else
			{
				$("department").set("class","");
				$("department").getParent().set("class","");
			}
		}
	});

	var el_id;
	$("tagClouds").getElements("span").each(function(el)
	{
		el.addEvent("click",function()
		{
			el_id = el.id.split("_");
			var dept = $("department").value;
			if(dept=="")
			{
				dept = "all";
			}
			openJobSearchLayer(root_url,el_id[1],dept,main_cat_id,"right_menu");
		});
	});
}
function openJobSearchLayer(root_url,cat_id,dept_id,main_cat_id,type)
{
    
	var url = root_url+"/layers/jobSearchLayer.php?cat_id="+cat_id+"&dept_id="+dept_id+"&type="+type;
	var inc_url = root_url+"/inc/pro-functions.php"

	new Request.JSON({url: inc_url, onComplete: 
	function(response)
	{
		var cat_name = response[1];
		new Request.JSON({url: inc_url, onComplete: 
		function(response)
		{
			var dept_name = response[1];
			if(dept_name=="all")
			{
				dept_name = "toute de france";
			}
			searchJobLayer(620,460,"Résultat de votre recherche : "+cat_name+" / "+dept_name,url,root_url,main_cat_id,type);
		}
		}).post({"_action":"get-department-name","dept_id":dept_id});
	}
	}).post({"_action":"get-category-name","cat_id":cat_id});
}

function searchJobLayer( width, height, layerTitleText, contentUrl, root_url, main_cat_id)
{

	if (navigator.appVersion.indexOf("MSIE") != -1)
	{
		isie = true;	
		version = parseFloat(navigator.appVersion.split("MSIE")[1]);
	}
	else
	{
		isie = false;
	}

	if( $('notModalLayer_job') )
	{
		// IF exists, removed from the DOM
		$('notModalLayer').dispose();
	}

	if(isie && version < 7 && $('uglyIE6Iframe'))
	{
		$('uglyIE6Iframe').dispose();
	}	
	else 
	{
                var topOffset;
		if(isie && version < 7)
		{
			topOffset = window.getScrollTop() + window.getHeight()/2;
		}
		else
		{
			topOffset = '50%';
		}	
		
		// Common Styles For Layer And IFrame
		var commonStyles = {
			'width': width,
			'height': height,
			'margin-left': -width/2,
			'margin-top': -height/2,
			'top': topOffset,
			'left': '50%'
		};
		
		var commonStyles1 = 
		{
			'width': width,
			'height': height,
			'margin-left': -width/2,
			'margin-top': -height/2,
			'top': topOffset,
			'left': '51.5%'
		};
		
		var layer = new Element('div', 
		{
				'id': 'notModalLayer_job',
				'class': 'dpLayer',
				'styles': commonStyles
		}).setStyle('z-index','999999').inject(document.body);
		
		// Creating the layer itself
		if( isie && version < 7 )
		{
                        layer.setStyle('position','absolute');
			var iframe = new Element('iframe',
			{
				'id': 'uglyIE6Iframe',
				'styles': commonStyles1
			}).setStyle('position','absolute').setStyle('z-index','999998').inject(document.body);
                        layer.inject(iframe);
		}
		
		// Layer header
		var layerHeader = new Element('div', 
		{
			'class': 'notModalLayerHeader_job'
		}).inject(layer);
	
		var layerTitle = new Element('h4', 
		{
			'class': 'notModalLayerTitle_job'
		});
	
		layerTitle.set('text',layerTitleText);
		layerTitle.inject(layerHeader);

		var layerCloseText = new Element('div', 
		{
			'class': 'notModalLayerCloseText_job',
			'events': 
			{
				'click': function()
				{
					// Close and destroy the layer
					layer.destroy();
                                        $("department").value = "";
                                        $("category").value = "";
					if( isie && version < 7 )
					{
						 iframe.dispose(); 
					}
				}
			}
		});

		layerCloseText.set("text",decodeURIComponent("Fermer la Fenêtre"));
		layerCloseText.inject(layerHeader);
		
		var layerContent = new Element('div', 
		{
				'id': 'jobLayerAjaxContent',
				'class': 'layerContent'
		}).setStyle('overflow-y','auto').setStyle('overflow-x','hidden');
		layerContent.inject(layer);
		
		if(layerTitleText.length > 60)
		{
			layerHeader.setStyle("height","42px");
			layerCloseText.setStyle("height","28px").setStyle("padding-top","8px");
                        layerContent.setStyle('height','415px');
		}
                else
                {
                    layerContent.setStyle('height','425px');
                }

		showLimitedJobs(root_url,contentUrl,1,main_cat_id);
	}
}

function showLimitedJobs(root_url,contentUrl,page_no,main_cat_id)
{
	if($("jobSearchLayer"))
	{
		$("jobSearchLayer").dispose();
	}
	var content_url = contentUrl + "&page="+page_no;
	var myRequest1 = new Request({url: content_url, method: 'get', onSuccess: function(responseText1, responseXML1) 
	{
		$("jobLayerAjaxContent").set("html",responseText1);
		$$(".layer_job_splitter a").each(function(item)
		{
			item.addEvent("click",function()
			{
				getJobDetails(root_url,item,main_cat_id);
			});
		});
                if($("paging"))
                {
                    $("paging").getElements("span").each(function(page_item)
                    {
                            page_item.addEvent("click",function()
                            {
                                    showLimitedJobs(root_url,contentUrl,page_item.id,main_cat_id);
                            });
                    });
                }
		$("input_submit_all").addEvent("click",function()
		{
			//fix ie8 
			window.open(root_url+'/devenir-membre.php?MAIN_CAT='+main_cat_id);
			//window.open(root_url+"/devenir-membre.php?MAIN_CAT="+main_cat_id+"","Devispresto-pro, Devenir Membre","");
		});
	}
	});
	myRequest1.send();
}

function getJobDetails(root_url,item,main_cat_id)
{
	if($("jobDetails"))
	{
		$("jobDetails").dispose();
		$$(".show_all_details").each(function(e)
		{
			e.removeClass("show_all_details");
                        e.removeClass("bgColorLayer"+main_cat_id);

			var lastEl = e.id.split("_");

			var myAnchor = new Element('a', 
			{
				'href' : 'javascript:void(0)',
				'id' : lastEl[1],
			        'html' : 'Voir'
			});
			
			myAnchor.inject($("splitter_"+lastEl[1]));
			myAnchor.addEvent("click",function()
			{
				getJobDetails(root_url,this,main_cat_id);
			});

			$("detail_"+lastEl[1]).setStyle("display","block");
			var lastprevEl = $("layerJobBlock_"+lastEl[1]).getPrevious("div");
			var lastprevEl_id = lastprevEl.id.split("_");
			if($("splitter_"+lastprevEl_id[1]))
			{
				$("splitter_"+lastprevEl_id[1]).setStyle("border-bottom","2px solid #F27B21");	
			}
			$("splitter_"+lastEl[1]).setStyle("border-bottom","2px solid #F27B21");
		});
	}

	var myRequest2 = new Request({url: root_url+"/layers/getJobDetails.php?jid="+item.id, method: 'get', onSuccess: function(responseText2, responseXML2) 
	{
		$("layerJobBlock_"+item.id).set("class","show_all_details");
                $("layerJobBlock_"+item.id).addClass("bgColorLayer"+main_cat_id);
		var prevEl = $("layerJobBlock_"+item.id).getPrevious("div");
		var prevEl_id = prevEl.id.split("_");
		if($("splitter_"+prevEl_id[1]))
		{
			$("splitter_"+prevEl_id[1]).setStyle("border-bottom","0px none");
		}
		$("splitter_"+item.id).set("html",responseText2);
		$("splitter_"+item.id).setStyle("border-bottom","0px none");
        //alert(main_cat_id)
		$("input_job_submit").addEvent("click",function()
		{
			window.open(root_url+"/devenir-membre.php?MAIN_CAT="+main_cat_id);
		});
	}
	});
	myRequest2.send();					

	$("detail_"+item.id).setStyle("display","none");
	item.dispose();
}

