E('p',_('To use Travelmate, you have to set up an uplink interface once. This wizard creates an IPv4- and an IPv6 alias network interface with all required network- and firewall settings.')),
s.tab('adv_vpn',_('VPN Settings'),_('Please note: VPN connections require the separate setup of the <em>Wireguard</em> or <em>OpenVPN</em> package.<br /><p> </p>'));
s.tab('adv_email',_('E-Mail Settings'),_('Please note: E-Mail notifications require the separate setup of the <em>mstmp</em> package.<br /><p> </p>'));
/*
generalsettingstab
*/
o=s.taboption('general',form.Flag,'trm_enabled',_('Enabled'),_('Enable the travelmate service.'));
o.rmempty=false;
o=s.taboption('general',form.Flag,'trm_debug',_('Verbose Debug Logging'),_('Enable verbose debug logging in case of any processing errors.'));
o.rmempty=false;
o=s.taboption('general',form.Value,'trm_radio',_('Radio Selection'),_('Restrict travelmate to a single radio or change the overall scanning order (e.g. \'radio1 radio0\').'));
o.placeholder='radio0';
o.rmempty=true;
o=s.taboption('general',form.Flag,'trm_captive',_('Captive Portal Detection'),_('Check the internet availability, handle captive portal redirections and keep the uplink connection \'alive\'.'));
o.default=1;
o.rmempty=false;
o=s.taboption('general',form.Flag,'trm_netcheck',_('Net Error Check'),_('Treat missing internet availability as an error.'));
o.depends('trm_captive','1');
o.default=0;
o.rmempty=false;
o=s.taboption('general',form.Flag,'trm_proactive',_('ProActive Uplink Switch'),_('Proactively scan and switch to a higher prioritized uplink, despite of an already existing connection.'));
o.default=1;
o.rmempty=false;
o=s.taboption('general',form.Flag,'trm_autoadd',_('AutoAdd Open Uplinks'),_('Automatically add open uplinks like hotel captive portals to your wireless config.'));
o.default=0;
o.rmempty=false;
o=s.taboption('general',form.Flag,'trm_randomize',_('Randomize MAC Addresses'),_('Generate a random unicast MAC address for each uplink connection.'));
o.default=0;
o.rmempty=false;
/*
additionalsettingstab
*/
o=s.taboption('additional',form.Value,'trm_triggerdelay',_('Trigger Delay'),_('Additional trigger delay in seconds before travelmate processing begins.'));
o.placeholder='2';
o.datatype='range(1,60)';
o.rmempty=true;
o=s.taboption('additional',form.Value,'trm_maxretry',_('Connection Limit'),_('Retry limit to connect to an uplink.'));
o.placeholder='3';
o.datatype='range(1,10)';
o.rmempty=true;
o=s.taboption('additional',form.Value,'trm_minquality',_('Signal Quality Threshold'),_('Minimum signal quality threshold as percent for conditional uplink (dis-) connections.'));
o.placeholder='35';
o.datatype='range(20,80)';
o.rmempty=true;
o=s.taboption('additional',form.Value,'trm_maxwait',_('Interface Timeout'),_('How long should travelmate wait for a successful wlan uplink connection.'));
o.placeholder='30';
o.datatype='range(20,40)';
o.rmempty=true;
o=s.taboption('additional',form.Value,'trm_timeout',_('Overall Timeout'),_('Overall retry timeout in seconds.'));
o.placeholder='60';
o.datatype='range(30,300)';
o.rmempty=true;
o=s.taboption('additional',form.Value,'trm_scanbuffer',_('Scan Buffer Size'),_('Buffer size in bytes to prepare nearby scan results.'));
o.placeholder='1024';
o.datatype='range(256,4096)';
o.rmempty=true;
o=s.taboption('additional',form.ListValue,'trm_captiveurl',_('Captive Portal URL'),_('The selected URL will be used for connectivity- and captive portal checks.'));
o=s.taboption('additional',form.ListValue,'trm_useragent',_('User Agent'),_('The selected user agent will be used for connectivity- and captive portal checks.'));
o.value('Mozilla/5.0 (X11; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0','Firefox (default)');
o.value('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36','Chromium');
o.value('Mozilla/5.0 (iPhone; CPU iPhone OS 13_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/85.0.4183.92 Mobile/15E148 Safari/604.1','Safari');
o.value('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36 Edg/85.0.564.44','Edge');
o.value('Mozilla/5.0 (Linux; Android 10; SM-G970F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.81 Mobile Safari/537.36 OPR/59.1.2926.54067','Opera');
o.optional=true;
o.rmempty=true;
o=s.taboption('additional',form.ListValue,'trm_nice',_('Service Priority'),_('The selected priority will be used for travelmate processes.'));