addInput(new Form_Checkbox( 'enable', 'Enable', null, $pconfig['enable'] )); $optionlist = array(); $iflist = get_configured_interface_with_descr(); foreach ($iflist as $ifnam => $ifdescr) $optionlist[$ifnam] = $ifdescr; $section->addInput(new Form_Select( 'ifname', 'Interface', $pconfig['ifname'], $optionlist )); $section->addInput(new Form_Input( 'host', 'Hostname', 'text', $pconfig['host'] ))->setHelp('Fully qualified hostname of the host to be updated'); $section->addInput(new Form_Input( 'ttl', 'TTL (seconds)', 'number', $pconfig['ttl'] )); $section->addInput(new Form_Input( 'keyname', 'Key name', 'text', $pconfig['keyname'] ))->setHelp('This must match the setting on the DNS server.'); $group = new Form_Group('Key Type'); $group->add(new Form_Checkbox( 'keytype', 'Key Type', 'Zone', ($pconfig['keytype']=='zone'), 'zone' ))->displayAsRadio(); $group->add($input = new Form_Checkbox( 'keytype', 'Key Type', 'Host', ($pconfig['keytype']=='host'), 'host' ))->displayAsRadio(); $group->add($input = new Form_Checkbox( 'keytype', 'Key Type', 'User', ($pconfig['keytype']=='user'), 'user' ))->displayAsRadio(); $section->add($group); $section->addInput(new Form_Input( 'keydata', 'Key', 'text', $pconfig['keydata'] ))->setHelp('Paste an HMAC-MD5 key here.'); $section->addInput(new Form_Input( 'server', 'Server', 'text', $pconfig['server'] )); $section->addInput(new Form_Checkbox( 'usetcp', 'Protocol', 'Use TCP instead of UDP', $pconfig['usetcp'] )); $section->addInput(new Form_Checkbox( 'usepublicip', 'Use public IP', 'If the interface IP is private, attempt to fetch and use the public IP instead.', $pconfig['usepublicip'] )); $group = new Form_Group('Record Type'); $group->add(new Form_Checkbox( 'recordtype', 'Record Type', 'A (IPv4)', ($pconfig['keytype']=='A'), 'A' ))->displayAsRadio(); $group->add($input = new Form_Checkbox( 'recordtype', 'Record Type', 'AAAA (IPv6)', ($pconfig['keytype']=='AAAA'), 'AAAA' ))->displayAsRadio(); $group->add($input = new Form_Checkbox( 'recordtype', 'Record Type', 'Both', ($pconfig['keytype']=='both'), 'both' ))->displayAsRadio(); $section->add($group); $section->addInput(new Form_Input( 'descr', 'Description', 'text', $pconfig['descr'] ))->setHelp('You may enter a description here for your reference (not parsed).'); if (isset($id) && $a_rfc2136[$id]){ $section->addInput(new Form_Input( 'id', null, 'hidden', $id )); } $form->add($section); print($form); print_info_box(sprintf('You must configure a DNS server in %sSystem: ' . 'General setup %sor allow the DNS server list to be overridden ' . 'by DHCP/PPP on WAN for dynamic DNS updates to work.','', '')); include("foot.inc");