| 1234567891011121314151617181920212223242526272829303132333435363738 | function tzn() {    const tz = event.target.selectedOptions[0].dataset.tz;    if (tz) sib(event.target,'input').value = tz;}function tzt() { sib(event.target,'select').value = ''; }fetchconfig('tzlist')    .then(map => {	function cln(z) {	    return ('tz/'+z).replaceAll('/','_ ')		.replaceAll(/[^\w ]+/g,'-');	}	var elem = getelem('tzname');	var grp = elem;	map.set('',''); map.set('UTC','UTC0');	var zones = Array.from(map.keys());	zones = zones.filter(v => v && v != 'UTC').sort();	zones.unshift('','UTC');	for (const z of zones) {	    const zz = z.match(/^(?:(\S+?)\/)?(\S*)$/,z);	    if (!zz) { continue; }	    if (zz[1] && zz[1] != grp.label) {		grp = document.createElement('OPTGROUP');		grp.label = zz[1];		grp.className = cln(zz[1]);		elem.append(grp);	    } else if (!zz[1]) {		grp = elem;	    }	    const pz = zz[2].replaceAll('_',' ').replaceAll('/',': ');	    var opt = new Option(pz, z);	    opt.className = cln(z);	    opt.dataset.tz = map.get(z);	    grp.append(opt);	}	translate(elem);    })    .finally(() => {loadform('setconfig','sys/getconfig');} );
 |