/**
 * Script för företagssökningen för Siljan e.d.
 */
	var current=null;
	function fillSelect(e){
		$('search_result').update('');
		/*Radera alla sub-selectar*/
		if(e==null){
			current=1;
			var parentid=22;
			if($('search_numrows')){
				Event.observe($('search_numrows'),'change',searchResellers);
			}
		}else{
			var spl=Event.findElement(e,'select').id.split('_');
			current=parseInt(spl[(spl.length-1)]);
			var parentid=$F(Event.findElement(e,'select'));		
		}
		/*Plocka bort alla select-boxar efter denna*/
		$A(Form.getElements('searchuser')).each(
			function(elm,idx){
				var spls=elm.id.split('_');
				var boxnos=parseInt(spls[(spls.length-1)]);
				if(current < boxnos && boxnos>1){	
					Element.remove(elm);
				}
			});
		if(parentid !== '' || parentid===0){
			var vars='doAJAX=getParserCall&module=core_TreeParm&method=getSelectOptions&parent='+parentid+'&parmid='+parmid;
			new Ajax.Request('/admin/ajax/ajax_page.php', {postBody:vars, onSuccess:fillSelectValues});
		}
		if(parentid!==0){
			searchResellers(e);
		}		
	}
	function fillSelectValues(t, ajax){
		var boxid='search_ort_'+(current+1);
		if($(boxid)==null){
			Element.insert($('form_holder'), '<select name="'+boxid+'" id="'+boxid+'" style="display:none;"></select>');
		}
		$(boxid).update(t.responseText);
		$(boxid).show();
		if(ajax.children){
			Event.observe($(boxid),'change',fillSelect);
		}else{
			Event.observe($(boxid),'change',searchResellers);
		}
		
	}
	function searchResellers(e){
		if($('search_counter')!=null){
			$('search_counter').update('');
		}		
		user_result={};
		$('search_result').update('<tr><td colspan="5" class="loadingimage"><img src="/admin/objects/loading.gif" alt="{wcm WAIT}"/></td></tr>');
		var parentid='';
		var elmid='';
		if(e!=null){
			var elm=Event.findElement(e, 'select');
			elmid=elm.id;
		}
		
		if(e==null || elmid=='search_numrows'){
			/*Leta upp senaste valet man gjort*/
			var box='1';
			var val='';
			while($('search_ort_'+box) != null && $F('search_ort_'+(box))!=''){
				parentid=$F('search_ort_'+(box));
				current=box;
				box++;
			}
			/*
			if(current > 0){
				parentid=$F('search_ort_'+(current+1));
			}else{
				$('search_result').update('<tr><td colspan="5"></td></tr>');
				return '';
			}
			*/
			if(current==0){
				$('search_result').update('<tr><td colspan="5"></td></tr>');
				return '';				
			}
		}else{
			page=1;
			var elm=Event.findElement(e, 'select');
			if(elm.id=='search_numrows'){
				parentid='';
			}else{
				parentid=$F(elm);
			}
		}
		if(parentid==''){
			var boxid='search_ort_'+(current-1);
			if($(boxid)){
				parentid=$F(boxid);
			}else{
				$('search_result').update('<tr><td colspan="5"></td></tr>');
				return true;
			}
		}
		if($('search_numrows')){
			maxrows=$F('search_numrows');
		}
		var vars='doAJAX=getParserCallJson&module=search_Index&method=searchUsers&value='+parentid+'&parmid='+searchparm+'&maxrows='+maxrows+'&page='+page;
		new Ajax.Request('/admin/ajax/ajax_page.php', {postBody:vars, onSuccess:showSearchResults});	
	}
	var user_result={};
	function showSearchResults(t){
		user_result=t.responseJSON;
		$('search_result').update('');
		var start=0;
		var users=user_result.users
		$H(users).each(
			function(elm,idx){
				drawResultRow(elm,idx);
			}
		);
		/*Om mer än 1 sida rita paging-string*/
		var html='';
		if(page > 1){
			html+='<a href="javascript:void(0);" onclick="prevPage()" class="aprev">'+lang('PREV')+'</a> ';
		}
		if(user_result.tot > (maxrows*page)){
			html+='<a href="javascript:void(0);" onclick="nextPage()" class="anext">'+lang('NEXT')+'</a> ';
		}
		$('search_result').insert('<tr><td colspan="5">'+html+'</td></tr>');
		if($('search_counter')!=null){
			$('search_counter').update(lang('NUMHITS')+': '+user_result.tot);
		}
	}
	function prevPage(){
		page--;
		searchResellers(null);
	}
	function nextPage(){
		page++;
		searchResellers(null);
	}
	function gotoPage(pageno){
		page=pageno;
		searchResellers(null);		
	}
	function drawResultRow(elm, idx){
		var address='';
		var ort='',tel='',pnr='',email='',chain='',region='',city='',country='';
		var addressid='work';
		var link='';
		if($('search_ort_3') && $F('search_ort_3')!=''){
			var searchcity=$('search_ort_3').options[$('search_ort_3').selectedIndex].innerHTML;
			$H(elm[1].addresses).each(
				function(ad){
					if(ad[1].city==searchcity){
						addressid=ad[0];
					}
				}
			);		
		}
		if(elm[1].addresses[addressid]){
			address=elm[1].addresses[addressid].address1;
			ort=elm[1].addresses[addressid].city;
			tel=elm[1].addresses[addressid].phone1;
			pnr=elm[1].addresses[addressid].zip;
			email=elm[1].addresses[addressid].email;
			city=elm[1].addresses[addressid].city;
		}		
		var classnm='odd';
		if((idx % 2) ==0){
			classnm='even';
		}		
		var html='<tr id="tr_'+idx+'" class="'+classnm+'"><td>'+elm[1].displayname+'</td><td>'+address+'</td><td>'+ort+'</td><td>'+tel+'</td><td><a id="info_'+idx+'" href="javascript:void(0);">'+lang('MOREINFO')+'</a></td>';
		html +='<tr id="tr2_'+idx+'" style="display:none;" class="'+classnm+' info">';
		if(elm[1].imageid !=0){
			html += '<td colspan="3"><div>';
		}
		else {
			html += '<td colspan="5"><div>';			
		}
		$H(elm[1].addresses).each(
			function(ad){
				if(ad[1].address1) {
					html+='<div class="useraddress" style="float:left;">'
					if(ad[1].address1!=''){html +='<b>'+lang('ADDRESS')+':</b> '+ad[1].address1+'<br />';}
					if(ad[1].zip!=''){html+='<b>'+lang('ZIP')+':</b> '+ad[1].zip+'<br />';}
					if(ad[1].city!=''){html+='<b>'+lang('CITY')+':</b> <span class="city">'+ad[1].city+'</span><br />';}
					if(ad[1].phone1!=''){html+='<b>'+lang('PHONE')+':</b> '+ad[1].phone1+'<br />';}
					if(ad[1].email!=''){html+='<b>'+lang('EMAIL')+':</b> '+ad[1].email+'<br />';}
					html+='</div>';
					
				}
			}
		)
		if(elm[1].userinfo){
			if(elm[1].userinfo.fields){
				html+='<div class="clearing"></div><div class="userinfo" style="float:left;">';
				$H(elm[1].userinfo.fields).each(
					function(elm2,idx2){
						if(elm2[1].auth>=1 && elm2[1].fieldtype=='text' && elm2[1].value[0]){
							html+='<b>'+elm2[1].name[web_iso_language]+': </b>';
							if(elm2[0]=='web'){
								link=elm2[1].value[0];
								if(elm2[1].value[0].indexOf('http')==-1){
									link='http://'+elm2[1].value[0];
								}
								html+='<a href="'+link+'">';
							}
							html+=elm2[1].value[0];
							if(elm2[0]=='web'){
								html+='</a>';
							}
							html+='<br />';
						}else if(elm2[1].auth>=1 && elm2[1].fieldtype=='radio'){
							html+='<b>'+elm2[1].name[web_iso_language]+': </b>';
							var def=lang('UNDEFINED');
							var val='';
							$A(elm2[1].listvalues).each(function(lv){if(lv.key==elm2[1].value[0]){val=lv.lang[web_iso_language];}if(lv.defaultval){def=lv.lang[web_iso_language];}});
							if(val.length==0){val=def;}
							html+=val+'<br />';
						}else if(elm2[1].auth>=1 && elm2[1].fieldtype=='check'){
							html+='<b>'+elm2[1].name[web_iso_language]+': </b>';
							var def=lang('NO');
							var val='';
							if(elm2[1].value=='1'){
								val=lang('YES');
							}else{
								val=def;
							}
							
							html+=val+'<br />';
							
						}else if(elm2[1].auth>=1 && elm2[1].fieldtype=='tree'){
							html+='<b>'+elm2[1].name[web_iso_language]+': </b>';
							if(elm2[1].treevalues){
								$H(elm2[1].treevalues).each(
									function(val){
										var v=val[1];
										var ln=v[web_iso_language];
										if(ln){
											html+=ln['name']+'<br />';
										}
									}
								);
							}
						}
					}
				);
				html+='</div>';
			}
		}
		html+='</div></td>';
		if(elm[1].imageid !=0){
			html+='<td colspan="2" valign="top" style="text-align: center;"><div>';
			if(link.length >0){
				html+='<a href="'+link+'" alt="web">';
			}
			html+='<img src="/loaders/image.php?image='+elm[1].imageid+'&height=100&width=100&scaletype=resample" alt="logotype"/>';
			if(link.length >0){
				html+='</a>';
			}
			html+='</div></td>';
		}
		html+='</tr>';
		$('search_result').insert(html);	
		Event.observe($('tr_'+idx),'click', function(e){$('tr2_'+idx).toggle('slide',{duration:2});});
	}

	Event.observe(window,'load', function(){fillSelect(null);});