function location_name_text_from_tier(tier)
{switch(tier)
{case 0:return'country';case 1:return'region';case 2:return'city';case 3:return'suburb';}
return'';}
function location_onchange(select_em,tier_current,tier_max,name)
{var regionid=parseInt(select_em.options[select_em.selectedIndex].value);var dt_em,dd_em,new_em_dt,new_dm_dd,typename,typenames_arr,i,show;if(tier_current>0)
{typename=location_name_text_from_tier(tier_current);new_em_dt=getElement('omchat_'+name+'_'+typename+'_name_dt');new_em_dd=document.getElementById('omchat_'+name+'_'+typename+'_name_dd');if(regionid==-1)
{new_em_dt.style.display='';if(new_em_dd!=null)new_em_dd.style.display='';}
else
{new_em_dt.style.display='none';if(new_em_dd!=null)new_em_dd.style.display='none';}}
if(regionid>0&&tier_current+1<=tier_max)
{typename=location_name_text_from_tier(tier_current+1);var select_child_em=getElement('omchat_'+name+'_'+typename);select_child_em.options.length=0;select_child_em.options[0]=new Option('Loading...',0);getElement('omchat_'+name+'_'+typename+'_name').value='';}
var select_next_em;for(var tier_next=tier_current+1;tier_next<=tier_max;tier_next++)
{typename=location_name_text_from_tier(tier_next);typenames_arr=new Array(typename,typename+'_name');for(i=0;i<typenames_arr.length;i++)
{show=(tier_next==tier_current+(i==0?1:0))&&regionid>0;if((dt_em=document.getElementById('omchat_'+name+'_'+typenames_arr[i]+'_dt'))==null)
{getElement('omchat_'+name+'_'+typenames_arr[i]).style.display=show?'block':'none';}
else
{dt_em.style.display=show?'':'none';if((dd_em=document.getElementById('omchat_'+name+'_'+typenames_arr[i]+'_dd'))!=null)
{dd_em.style.display=show?'':'none';}}}
if((select_next_em=document.getElementById('omchat_'+name+'_'+typename))!=null)
select_next_em.selectedIndex=0;}
if(regionid>0)
{xmlhttp_request('/CMS/php/xml_locations_get.php','regionid='+regionid+'&name='+name+'&tier_max='+tier_max,'POST',location_get_processxml,xmlhttp_error,true,true);}}
function location_get_processxml(xml)
{var items=xml.documentElement.getElementsByTagName('item');var tier=parseInt(getNodeValue(items.item(0),'tier'));var tier_max=parseInt(getNodeValue(items.item(0),'tier_max'));var typename=location_name_text_from_tier(tier);var name=getNodeValue(items.item(0),'name');var region_text=getNodeValue(items.item(0),'region_text');var currencyid=getNodeValue(items.item(0),'currencyid');var select_em=getElement('omchat_'+name+'_'+typename);select_em.options.length=0;var locations=xml.documentElement.getElementsByTagName('location');var i,dt_em,dd_em,dt_name_em,dd_name_em;dt_em=getElement('omchat_'+name+'_'+typename+'_dt');dd_em=document.getElementById('omchat_'+name+'_'+typename+'_dd');dt_name_em=getElement('omchat_'+name+'_'+typename+'_name_dt');dd_name_em=document.getElementById('omchat_'+name+'_'+typename+'_name_dd');if(locations.length==0)
{dt_em.style.display='none';if(dd_em!=null)dd_em.style.display='none';dt_name_em.style.display='';getElement('omchat_'+name+'_'+typename+'_name').value='';if(dd_name_em!=null)dd_name_em.style.display='';}
else
{if(tier<=tier_max)
{dt_em.style.display='';if(dd_em!=null)dd_em.style.display='';var id,name_;for(i=0;i<locations.length;i++)
{var id=getNodeValue(locations.item(i),'id');var name_=getNodeValue(locations.item(i),'name');select_em.options[i]=new Option(name_,id);}}
dt_name_em.style.display='none';if(dd_name_em!=null)dd_name_em.style.display='none';}
var region_text_em;if((region_text_em=document.getElementById('omchat_'+name+'_'+typename+'_text'))!=null)
{region_text_em.innerHTML=region_text;getElement('omchat_'+name+'_'+typename+'_name_text').innerHTML=region_text;}
var currency_select_em=document.getElementById('omchat_'+name+'_currencyid');if(currency_select_em!=null)
{for(i=0;i<currency_select_em.options.length;i++)
{if(currency_select_em.options[i].value==currencyid)
{currency_select_em.selectedIndex=i;break;}}}}
function location_query_get(form_id,error_postfix,progress_em,requiresRegionName)
{var query_string,regionid,i,select_em;var regions_arr=new Array(4);var form_id_full='omchat_'+form_id;for(i=0;i<regions_arr.length;i++)
{regions_arr[i]=new Array(location_name_text_from_tier(i),0,'');select_em=document.getElementById(form_id_full+'_location_'+regions_arr[i][0]);if(i==0)
{if(select_em!=null&&(regions_arr[i][1]=select_em.options[select_em.selectedIndex].value)==0)
{if(progress_em!=null)
{progress_em.innerHTML='Please select the '+regions_arr[i][0]+error_postfix;}
return'';}}
else
{regions_arr[i][1]=0;if(select_em!=null&&select_em.selectedIndex>=0)
{if(select_em.options[select_em.selectedIndex].value!='-1')
{regions_arr[i][1]=select_em.options[select_em.selectedIndex].value;}
else if((regions_arr[i][2]=getElement(form_id_full+'_location_'+regions_arr[i][0]+'_name').value).length>0)
{regions_arr[i][1]=-1;}
else if(requiresRegionName)
{if(progress_em!=null)progress_em.innerHTML='Region name not given';return'';}}
else if((regions_arr[i][2]=getElement(form_id_full+'_location_'+regions_arr[i][0]+'_name').value).length==0)
{regions_arr[i][1]=0;}}}
query_string='';var id_set,name_set;id_set=false;name_set=false;for(i=regions_arr.length-1;i>=0;i--)
{if(!id_set&&regions_arr[i][1]>0)
{query_string+='&l='+regions_arr[i][1];id_set=true;}
else if(!name_set&&regions_arr[i][1]==-1)
{if(regions_arr[i][2].length>0)
{query_string+='&ln='+encodeURIComponent(regions_arr[i][2]);name_set=true;}}}
return query_string;}