/* ONLY edit master */
var g_countryHandle = null; var g_stateHandle = null; var g_stateIdentifier= null; var g_showChooseOne = true; var g_lastCountry = null; var g_callbackFn = function(){return false;}
var g_i18lCulture = 'us-EN'; var g_i19lStrings = new Array(); var g_i18lCountries = new Array(); function i18lCountryInfo(c){ this.code = c; this.states = new Array(); this.isLoaded = false;}
function i18lStateInfo(i,c,n){ this.id = i; this.code = c; this.name = n;}
function i18lDoSetAry(pkeys,pvals,ptarget){ for (var i=0;i<pkeys.length;i++)
if (i<pvals.length)
ptarget[pkeys[i]]=pvals[i]; else
ptarget[pkeys[i]]=pkeys[i]; ptarget.length=pkeys.length;}
function i18lSetStrings(){ var Keys= new Array("Choose","Loading","XMLError","NoneAvailable"); i18lDoSetAry(Keys,arguments,g_i19lStrings);}
function i18lSetString(pKey,pVal){ g_i19lStrings[pKey]=pVal;}
function i19lSetCountries(){ g_i18lCountries= new Array; for (var i=0; i < arguments.length; i++)
g_i18lCountries[i]= new i18lCountryInfo( arguments[i] );}
function __i18lDoXMLReq(source, target, feedurl, pVal) { var index = source.selectedIndex; var value = source[index].value; var url = feedurl + value; if (value != "") { if (window.XMLHttpRequest) { req = new XMLHttpRequest(); req.onreadystatechange = function() { __i18lXMLResponse(target, pVal);}; req.open("GET", url, true); req.send(null);} else if (window.ActiveXObject) { req = new ActiveXObject("Microsoft.XMLHTTP"); if (req) { req.onreadystatechange = function() { __i18lXMLResponse(target, pVal);}; req.open("GET", url, true); req.send();}
}
} else { target.disabled = true;}
}
function i18lLoadStateSel(idx,target,pVal){ var scount=0; if ((idx>=0) && (g_i18lCountries[idx].states.length>0)){ var offset=(g_showChooseOne)?1:0; target.length = g_i18lCountries[idx].states.length+offset; if (g_showChooseOne){ target[0].value = ''; target[0].text = g_i19lStrings["Choose"];}
for (var i=0; i < g_i18lCountries[idx].states.length; i++){ var s=g_i18lCountries[idx].states[i]; target[i+offset].text = s.name; if (g_stateIdentifier == 'id')
target[i+offset].value = s.id; else if (g_stateIdentifier == 'code')
target[i+offset].value = s.code; else if (g_stateIdentifier == 'name')
target[i+offset].value = s.name; else
target[i+offset].value = s.name + "|" + s.id;}
target.disabled = false; i18lSetSelect(target,pVal); scount=g_i18lCountries[idx].states.length;} else { target.length = 1; target[0].value = ""; target[0].text=g_i19lStrings["NoneAvailable"]; target.disabled = true;}
g_callbackFn(scount);}
function i18lgetCounryIdx(){ var x=(arguments.length>0)?arguments[0]:g_lastCountry; for (var c=0; c < g_i18lCountries.length; c++){ if (g_i18lCountries[c].code==x)
break;}
if (c >= g_i18lCountries.length)
return -1; else
return c;}
function __i18lXMLResponse(target, pVal) { if (req.readyState == 4) { var c=-1; if (req.status == 200) { var r = req.responseText; var states = r.split(","); if (states.length > 0) { c=i18lgetCounryIdx(); for (var i=0; i<states.length; i++) { var m=states[i].split("|"); if(m.length > 2)
g_i18lCountries[c].states[g_i18lCountries[c].states.length]= new i18lStateInfo( m[0], m[1], m[2] );}
g_i18lCountries[c].isLoaded=true;}
} else { alert(g_i19lStrings["XMLError"]+"\n" + req.statusText);}
i18lLoadStateSel(c,target,pVal);}
}
function __i18lEventCountryChange(){ return i18lDoCountryChange(this);}
function i18lSetSelect(o,v){for(var i=0;i<o.options.length; i++){if(o.options[i].value==v){o.selectedIndex=i;break;}}}
function i18lDoCountryChange(h){ if (h != g_countryHandle)
return false; if (g_lastCountry==h.value)
return false; g_lastCountry=h.value; var s=(arguments.length>1)?arguments[1]:''; g_stateHandle.disabled = true; g_stateHandle.options.length=1; g_stateHandle.options[0].value=""; i=i18lgetCounryIdx(); if (i < 0){ g_stateHandle.options[0].text=g_i19lStrings["NoneAvailable"]; g_callbackFn(0);} else { if (g_i18lCountries[i].isLoaded){ i18lLoadStateSel(i,g_stateHandle,s);} else { g_stateHandle.options[0].text=g_i19lStrings["Loading"]; __i18lDoXMLReq(h, g_stateHandle, './mediaservices/geoLocation.cfm?Parent=CountryCode&culture='+g_i18lCulture+'&ParentValue=', s );}
}
return false;}
function i18lGlueCountry(pCH,pSH,pIDT){ pCH.onchange = __i18lEventCountryChange; g_countryHandle= pCH; g_stateHandle= pSH; g_stateIdentifier=pIDT; return true;}
function i18lSetCountry(hCountry,CountryCode){ i18lSetSelect( hCountry, CountryCode ); var s=(arguments.length > 2)?arguments[2]:''; i18lDoCountryChange(hCountry,s);}
function i18lInitCountry(pCH,pSH,pIDT,pCC){ i18lGlueCountry(pCH,pSH,pIDT); var s=(arguments.length > 4)?arguments[4]:''; i18lSetCountry(pCH,pCC,s);}
function i18lSetCallback(pFn){ g_callbackFn=pFn;}
function i18lSetAddChoose(pOn){ g_showChooseOne=pOn;}
function i18lSetCulture(pCulture){ g_i18lCulture=pCulture;}
i18lSetStrings("-- Please select --","loading...","There was a problem retrieving the data.",""); 