<?xml version="1.0"?>
<!DOCTYPE CAP-UI SYSTEM "/etc/coova/cap-ui.dtd">

<cap-ui>

  <menu name="System">

    <submenu name="Settings">

      <inputset name="System Settings" object="system.settings" singleton="true">

	<input label="Host Name" key="hostname"></input>

	<input label="boot_wait" key="boot_wait">
	  <option name="Enabled" value="true"/>
	  <option name="Disabled" value="false"/>
	</input>

	<input label="Language" key="language">
	  <option name="English" value="en"/>
	</input>

      </inputset>

      <inputset name="System Administration" object="system.admin-access" singleton="true">

	<input label="WAN SSH Access" key="wan_ssh">
	  <option name="Enabled" value="true"/>
	  <option name="Disabled" value="false"/>
	</input>

	<input label="WAN Web Access" key="wan_web">
	  <option name="Disabled"           value="off"/>
	  <option name="HTTP Only"          value="http"/>
	  <option name="HTTPS Only"         value="https"/>
	  <option name="Both HTTP/HTTPS"    value="both"/>
	</input>

	<input label="HotSpot SSH Access" key="hotspot_ssh">
	  <option name="Enabled"            value="true"/>
	  <option name="Disabled"           value="false"/>
	</input>

	<input label="HotSpot Web Access" key="hotspot_web">
	  <option name="Disabled"           value="off"/>
	  <option name="HTTP Only"          value="http"/>
	  <option name="HTTPS Only"         value="https"/>
	  <option name="Both HTTP/HTTPS"    value="both"/>
	</input>

      </inputset>

    </submenu>

    <submenu name="Admin Access">

      <inputset name="Admin/Root Password">

	<input label="New password"     key="newpass1" form="false"></input>
	<input label="Confirm password" key="newpass2" form="false"></input>
	<input label="Change" type="button"></input>

      </inputset>

      <inputset name="Authorized SSH Keys">
	<input label="" type="textarea"></input>
      </inputset>

    </submenu>
<!--
    <submenu name="Configuration">
    </submenu>
    <submenu name="Software">
    </submenu>
    <submenu name="Firmware">
    </submenu>
    <submenu name="Other Settings">
    </submenu>
-->
  </menu>

  <menu name="Network">

    <submenu name="LAN">

      <inputset name="LAN Interfaces" object="network.interface.lan" singleton="true">
	<input label="IP Address" key="ipaddr"></input>
	<input label="Netmask" key="netmask"></input>
	<input label="Default Gateway" key="gateway"></input>
	<input label="DNS Servers" type="varlist" key="dns" delim=" "></input>
      </inputset>

    </submenu>

    <submenu name="WAN">

      <inputset name="WAN Interfaces" object="network.interface.wan" singleton="true">

<!-- Kamikaze only?
	<input label="Type" key="type">
	  <option name="Bridge" value="bridge"/>
	  <option name="Ethernet" value="ethernet"/>
	  <option name="Wireless" value="wireless"/>
	</input>

	<input label="Interface" key="ifname"></input>
-->

	<input label="Proto" key="proto" value="dhcp">
	  <option name="Disabled" value="none"/>
	  <option name="DHCP" value="dhcp"/>
	  <option name="Static IP" value="static"/>
	  <option name="PPPoE" value="pppoe"/>
	  <dependency value="none" change="ip_settings" visible="false" />
	  <dependency value="none" change="dyndns" visible="false" />
	  <dependency value="none" change="ppp_settings" visible="false" continue="false" />
	  <dependency value="dhcp" change="ip_settings" />
	  <dependency value="dhcp" change="wan_gw" visible="false" />
	  <dependency value="dhcp" change="wan_dns" visible="false" />
	  <dependency value="pppoe" change="ip_settings" visible="false" />
	  <dependency value="pppoe" change="ppp_settings" />
	</input>

      </inputset>

      <inputset name="IP Settings" param="ip_settings" object="network.interface.wan" singleton="true">
	<input label="IP Address" key="ipaddr"></input>
	<input label="Netmask" key="netmask"></input>
	<input label="Default Gateway" key="gateway" param="wan_gw"></input>
	<input label="DNS Servers" type="varlist" key="dns" param="wan_dns" delim=" "></input>
      </inputset>

      <inputset name="PPP Settings" param="ppp_settings" object="network.interface.wan" singleton="true">
	<input label="Redial Policy" key="ppp_redial">
	  <option name="On-demand" value="ondemand"/>
	  <option name="Keep-alive" value="keepalive"/>
	</input>
	<input label="Disconnect Idle Time" key="ppp_idletimeout"></input>
	<input label="Username" key="ppp_username"></input>
	<input label="Password" key="ppp_password"></input>
	<input label="MTU" key="ppp_mtu"></input>
      </inputset>

      <inputset name="Dynamic DNS" param="dyndns" object="network.dyndns" singleton="true">

	<input label="Dynamic DNS" key="enabled">
	  <option name="Disabled" value="false"/>
	  <option name="Enabled" value="true"/>
	  <dependency value="true" change="ddns0" />
	  <dependency value="true" change="ddns1" />
	  <dependency value="true" change="ddns2" />
	  <dependency value="true" change="ddns3" />
	</input>

	<input label="Service Type" key="type" param="ddns0" visible="false">
	  <option name="dyndns" value="dyndns"/>
	</input>

	<input label="Username" key="username" param="ddns1" visible="false"></input>
	<input label="Password" key="password" param="ddns2" visible="false"></input>
	<input label="Hostname" key="hostname" param="ddns3" visible="false"></input>

      </inputset>

<!--
      <inputset name="Ethernet Switch" object="network.switch" popup="true">
	<input label="Interface" key="id"></input>
	<input label="VLAN0" key="vlan0"></input>
	<input label="VLAN1" key="vlan1"></input>
	<input label="VLAN2" key="vlan2"></input>
	<input label="VLAN3" key="vlan3"></input>
	<input label="VLAN4" key="vlan4"></input>
        <input label="VLAN5" key="vlan5"></input>
	<input label="VLAN6" key="vlan6"></input>
	<input label="VLAN7" key="vlan7"></input>
      </inputset>
-->

    </submenu>

    <submenu name="DHCP">

      <inputset name="DHCP Settings" object="network.dhcp" singleton="true">

	<input label="DHCP Services" key="enabled">
	  <option name="Enabled" value="true"/>
	  <option name="Disabled" value="false"/>
	  <dependency value="false" change="dhcp1" visible="false" />
	  <dependency value="false" change="dhcp2" visible="false" />
	  <dependency value="false" change="dhcp3" visible="false" />
	  <dependency value="false" change="dhcp4" visible="false" />
	  <dependency value="false" change="dhcp5" visible="false" />
	</input>

	<input label="Interface" key="interface" ref="network.interface" 
	  skip="loopback" param="dhcp1"></input>
	<input label="Address Start"  key="start" param="dhcp2"></input>
	<input label="Address Limit"  key="limit" param="dhcp3"></input>
	<input label="Lease Lifetime" key="lease" param="dhcp4">
	  <option name="12 hours" value="12h"/>
	</input>
	<input label="dnsmasq Options" key="options" param="dhcp5"></input>

      </inputset>

    </submenu>


<!--
    <submenu name="PPTP">
    </submenu>
    <submenu name="OpenVPN">
    </submenu>
    <submenu name="Firewall">
    </submenu>
    <submenu name="Shaping">
    </submenu>
    <submenu name="Hosts">
    </submenu>
-->
  </menu>

<!--
  <menu name="Wireless">
    <submenu name="Settings">
    </submenu>
    <submenu name="Virtual AP">
    </submenu>
    <submenu name="Advanced">
    </submenu>
  </menu>
-->
  
  <menu name="HotSpot">
    
    <submenu name="Settings">
      
      <inputset name="HotSpot Settings" object="hotspot.nas" singleton="true">

	<input label="Type" key="type" value="none">
	  <option name="Disabled"         value="none"/>
	  <option name="Internal HotSpot" value="internal"/>
	  <option name="ChilliSpot UAM"   value="chillispot"/>
	  <option name="WifiDog UAM"      value="wifidog"/>
	  
          <dependency value="none"       change="hs_network"    visible="false"/>
          <dependency value="internal"   change="hs_internal"  />
	  <dependency value="chillispot" change="hs_chillispot"/>
	  <dependency value="wifidog"    change="hs_wifidog"   />
        </input>

	<input label="Network" key="network" param="hs_network" 
	  ref="network.interface" skip="loopback" visible="false"></input>
	
      </inputset>
	
      <inputset name="Internal HotSpot Settings" object="hotspot.nas"
	singleton="true" param="hs_internal" visible="false">
	
	<input label="Owner E-mail" key="owner_email"></input>
	
	<input label="Registration Mode" key="reg_mode">
	  <option name="Configured Users" value="off"/>
	  <option name="Self Register" value="self"/>
	  <option name="ToS Acceptance" value="tos"/>
	</input>
	
	<input label="Reg. Protocol" key="reg_proto">
	  <option name="HTTPS (secure)" value="https"/>
	  <option name="HTTP (not secure)" value="http"/>
	</input>
	
      </inputset>
      
      <inputset name="ChilliSpot Settings" object="hotspot.nas"
	singleton="true" param="hs_chillispot" visible="false">
	
	<input label="Auto Config" key="autoconfig" value="off">
	  <option name="RADIUS" value="on"/>
	  <option name="Web URL" value="url"/>
	  <option name="Disabled" value="off"/>
	  <dependency value="on"  change="hs_radconf_server" />
	  <dependency value="on"  change="hs_radconf_secret" />
	  <dependency value="on"  change="hs_radconf_authport" />
	  <dependency value="url" change="hs_radconf_url" />
	  <dependency value="off" change="hs_radconf_user" visible="false" />
	  <dependency value="off" change="hs_radconf_pwd" visible="false" />
	  <dependency value="off" change="hs_adminterval" visible="false" />
	  <dependency value="off" change="hs_uamserver" />
	  <dependency value="off" change="hs_uamsecret" />
	  <dependency value="off" change="hs_nasid" />
	  <dependency value="off" change="hs_radius_settings" />
	  <dependency value="off" change="hs_radius_adv_settings" />
	  <dependency value="off" change="hs_radius_auto_config" visible="false" />
	</input>
	
	<input label="UAM Hostname"       key="uamserver"         param="hs_uamserver"></input>
	<input label="UAM Secret"         key="uamsecret"         param="hs_uamsecret"></input>
	<input label="NAS Identifier"     key="nasid"             param="hs_nasid"></input>
	<input label="RADIUS Server"      key="radconf_server"    param="hs_radconf_server"></input>
	<input label="RADIUS Auth Port"   key="radconf_authport"  param="hs_radconf_authport"></input>
	<input label="RADIUS Secret"      key="radconf_secret"    param="hs_radconf_secret"></input>
	<input label="Config URL"         key="radconf_url"       param="hs_radconf_url"></input>
	<input label="Config Username"    key="radconf_user"      param="hs_radconf_user"></input>
	<input label="Config Password"    key="radconf_pwd"       param="hs_radconf_pwd"></input>
	<input label="Re-Config Interval" key="autoconf_interval" param="hs_adminterval"></input>
	
      </inputset>
      
      <inputset name="WifiDog Settings"   object="hotspot.nas"
	singleton="true" param="hs_wifidog" visible="false">
	<input label="Gateway ID"         key="gatewayid"></input>
      </inputset>
      
    </submenu>

    <submenu name="Location">

      <inputset name="Location Information" object="hotspot.location" singleton="true">

	<input label="Location Name"        key="location_name"></input>
	<input label="Address"              key="address"></input>
	<input label="Network Name"         key="network_name"></input>
	<input label="ISO Country Code"     key="isocc"></input>
	<input label="Latitude"             key="latitude"></input>
	<input label="Longitude"            key="longitude"></input>
	<input label="Phone Country Code"   key="country_code"></input>
	<input label="Phone Area Code"      key="area_code"></input>
	<input label="Phone Number"         key="phone"></input>

      </inputset>

      <inputset name="Location E-mail Proxy" object="hotspot.location" singleton="true">

	<input label="SMTP Server" key="smtp-server"></input>
	<input label="SMTP Port" key="smtp-port"></input>

	<input label="Authentication" key="smtp-meth" value="none">
	  <option name="None" value="none"/>
	  <option name="Plain" value="p"/>
	  <option name="Login" value="l"/>

	  <dependency value="none" change="smtp-user" visible="false" />
	  <dependency value="none" change="smtp-pass" visible="false" />
	</input>

	<input label="SASL Username" key="smtp-user" param="smtp-user" visible="false"></input>
	<input label="SASL Password" key="smtp-pass" param="smtp-pass" visible="false"></input>

      </inputset>

    </submenu>

    <submenu name="Access Lists">

      <inputset name="Walled-Garden Allowed List" object="hotspot.nas" singleton="true">

	<input label="Allowed Hosts/Ports" type="varlist" key="uamallow" delim=" "></input>

      </inputset>

      <inputset name="Authorized MAC Addresses" object="hotspot.nas" singleton="true">

	<input label="MAC Auth Mode" key="macauthmode">
	  <option name="RADIUS" value="radius"/>
	  <option name="Local" value="local"/>
	</input>

	<input type="varlist" label="MAC Addresses" key="macallow" delim=" "></input>

      </inputset>

      <inputset name="Local Users" object="hotspot.nas" singleton="true">

	<input label="Use Local Users" key="uselocalusers">
	  <option name="Disabled" value="off"/>
	  <option name="Enabled" value="on"/>
	</input>

      </inputset>

    </submenu>

    <submenu name="DHCP">

      <inputset name="HotSpot DHCP Settings" object="hotspot.dhcp" singleton="true">
	<input label="LAN IP Address" key="uamlisten"></input>
	<input label="LAN Network" key="network"></input>
	<input label="LAN Netmask" key="netmask"></input>
      </inputset>

      <inputset name="Advanced Settings" object="hotspot.dhcp" singleton="true">
	<input label="Dynamic IP Pool Network" key="dynip"></input>
	<input label="Dynamic IP Pool Netmask" key="dynip_netmask"></input>
	<input label="Static IP Pool Network" key="statip"></input>
	<input label="Static IP Pool Netmask" key="statip_netmask"></input>
	<input label="Allow Any IP" key="anyip">
	  <option name="Disabled" value="off"/>
	  <option name="Enabled" value="on"/>
	</input>
      </inputset>

    </submenu>

    <submenu name="RADIUS">

      <inputset name="RADIUS Settings" param="hs_radius_auto_config">
	<input label="Not needed when using Auto Configuration"></input>
      </inputset>

      <inputset name="RADIUS Settings" param="hs_radius_settings" object="hotspot.radius" singleton="true">
	<input label="RADIUS Server" key="server"></input>
	<input label="Auth Port" key="auth_port"></input>
	<input label="Acct Port" key="acct_port"></input>
	<input label="Shared Secrett" key="shared_secret"></input>
	<input label="MAC Authentication" key="mac_auth">
	  <option name="Disabled" value="off"/>
	  <option name="Enabled" value="on"/>
	</input>
      </inputset>

      <inputset name="Advanced Settings" param="hs_radius_adv_settings" object="hotspot.radius" singleton="true">
	<input label="Allow WPA Guests" key="wpaguests">
	  <option name="Disabled" value="off"/>
	  <option name="Enabled" value="on"/>
	</input>
	<input label="Always Allow PAP" key="pap_ok">
	  <option name="Disabled" value="off"/>
	  <option name="Enabled" value="on"/>
	</input>
      </inputset>

    </submenu>

    <submenu name="Proxy">

      <inputset name="Web Proxy Settings" object="hotspot.proxy" singleton="true">
	<input label="Proxy Type" key="type">
	  <option name="Disabled" value="none"/>
	  <option name="Captive-Frame" value="cframe"/>
	  <option name="Post-Auth Proxy" value="paproxy"/>

	  <dependency value="cframe" change="hs_cframe_settings" />
	  <dependency value="paproxy" change="hs_paproxy_settings" />
	</input>
      </inputset>

      <inputset name="Captive-Frame Settings" param="hs_cframe_settings"
	  object="hotspot.proxy" singleton="true">
	<input label="Captive-Frame URL" key="cframe_url"></input>
	<input label="Frame Position" key="proxy_pos">
	  <option name="Top" value="top"/>
	  <option name="Bottom" value="bottom"/>
	  <option name="Right" value="right"/>
	  <option name="Left" value="left"/>
	</input>
	<input label="Frame Size" key="cframe_sz"></input>
      </inputset>

      <inputset name="Post-Auth Proxy Settings" param="hs_paproxy_settings"
	object="hotspot.proxy" singleton="true">
	<input label="HTTP Proxy Server" key="paproxy_server"></input>
	<input label="HTTP Proxy Port" key="paproxy_port"></input>
      </inputset>

    </submenu>

    <submenu name="Portal">

      <inputset name="Embedded Captive Portal" object="hotspot.portal" singleton="true">
	<input label="Page">
	  <option name="Disabled" type="file" value="/file"/>
	</input>
      </inputset>

    </submenu>

  </menu>
</cap-ui>
