diff options
Diffstat (limited to 'src')
201 files changed, 5396 insertions, 3041 deletions
diff --git a/src/conf.default/config.xml b/src/conf.default/config.xml index acec3ac..85c2e58 100644 --- a/src/conf.default/config.xml +++ b/src/conf.default/config.xml @@ -1,6 +1,6 @@ <?xml version="1.0"?> <pfsense> - <version>13.4</version> + <version>14.0</version> <lastchange/> <system> <optimization>normal</optimization> @@ -49,7 +49,6 @@ <bogons> <interval>monthly</interval> </bogons> - <kill_states/> </system> <interfaces> <wan> @@ -77,6 +76,8 @@ <subnetv6>64</subnetv6> <media/> <mediaopt/> + <track6-interface>wan</track6-interface> + <track6-prefix-id>0</track6-prefix-id> </lan> </interfaces> <staticroutes/> diff --git a/src/etc/inc/config.inc b/src/etc/inc/config.inc index 800312e..2d98eae 100644 --- a/src/etc/inc/config.inc +++ b/src/etc/inc/config.inc @@ -229,18 +229,6 @@ if (isset($config['system']['timezone']) && } date_default_timezone_set("$timezone"); -/* Set the default interface language */ -if ($config['system']['language'] <> "") { - $g['language'] = $config['system']['language']; -} elseif ($g['language'] == "") { - $g['language'] = 'en_US'; -} - -if (!function_exists('set_language')) { - require_once("pfsense-utils.inc"); -} -set_language($g['language']); - if ($config_parsed == true) { /* process packager manager custom rules */ if (is_dir("/usr/local/pkg/parse_config")) { diff --git a/src/etc/inc/filter.inc b/src/etc/inc/filter.inc index 18f52f7..611425e 100644 --- a/src/etc/inc/filter.inc +++ b/src/etc/inc/filter.inc @@ -212,7 +212,7 @@ function filter_configure() { function filter_delete_states_for_down_gateways() { global $config, $GatewaysList; - if (isset($config['system']['kill_states'])) { + if (!isset($config['system']['gw_down_kill_states'])) { return; } @@ -3996,7 +3996,7 @@ function filter_process_carp_rules($log) { /* return if there are no carp configured items */ if (!empty($config['hasync']) or !empty($config['virtualip']['vip'])) { $lines .= "block in {$log['block']} quick proto carp from (self) to any tracker {$increment_tracker($tracker)}\n"; - $lines .= "pass {$log['pass']} quick proto carp tracker {$increment_tracker($tracker)}\n"; + $lines .= "pass {$log['pass']} quick proto carp tracker {$increment_tracker($tracker)} no state\n"; } return $lines; } @@ -4114,30 +4114,39 @@ function filter_generate_ipsec_rules($log = array()) { /* Add rules to allow IKE to pass */ $shorttunneldescr = substr($descr, 0, 35); + // don't add "pass out" rules where $rgip is any as it will over-match and often break VPN clients behind the system in multi-WAN scenarios. redmine #5819 + if ($rgip != " any ") { + $ipfrules .= "pass out {$log['pass']} $route_to proto udp from (self) to {$rgip} port = 500 tracker {$increment_tracker($tracker)} keep state label \"IPsec: {$shorttunneldescr} - outbound isakmp\"\n"; + } $ipfrules .= <<<EOD -pass out {$log['pass']} $route_to proto udp from (self) to {$rgip} port = 500 tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - outbound isakmp" pass in {$log['pass']} on \${$FilterIflist[$parentinterface]['descr']} $reply_to proto udp from {$rgip} to (self) port = 500 tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - inbound isakmp" EOD; /* If NAT-T is enabled, add additional rules */ if ($ph1ent['nat_traversal'] != "off") { + if ($rgip != " any ") { + $ipfrules .= "pass out {$log['pass']} $route_to proto udp from (self) to {$rgip} port = 4500 tracker {$increment_tracker($tracker)} keep state label \"IPsec: {$shorttunneldescr} - outbound nat-t\"\n"; + } $ipfrules .= <<<EOD -pass out {$log['pass']} $route_to proto udp from (self) to {$rgip} port = 4500 tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - outbound nat-t" pass in {$log['pass']} on \${$FilterIflist[$parentinterface]['descr']} $reply_to proto udp from {$rgip} to (self) port = 4500 tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - inbound nat-t" EOD; } /* Add rules to allow the protocols in use */ if ($prot_used_esp) { + if ($rgip != " any ") { + $ipfrules .= "pass out {$log['pass']} $route_to proto esp from (self) to {$rgip} tracker {$increment_tracker($tracker)} keep state label \"IPsec: {$shorttunneldescr} - outbound esp proto\"\n"; + } $ipfrules .= <<<EOD -pass out {$log['pass']} $route_to proto esp from (self) to {$rgip} tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - outbound esp proto" pass in {$log['pass']} on \${$FilterIflist[$parentinterface]['descr']} $reply_to proto esp from {$rgip} to (self) tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - inbound esp proto" EOD; } if ($prot_used_ah) { + if ($rgip != " any ") { + $ipfrules .= "pass out {$log['pass']} $route_to proto ah from (self) to {$rgip} tracker {$increment_tracker($tracker)} keep state label \"IPsec: {$shorttunneldescr} - outbound ah proto\"\n"; + } $ipfrules .= <<<EOD -pass out {$log['pass']} $route_to proto ah from (self) to {$rgip} tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - outbound ah proto" pass in {$log['pass']} on \${$FilterIflist[$parentinterface]['descr']} $reply_to proto ah from {$rgip} to (self) tracker {$increment_tracker($tracker)} keep state label "IPsec: {$shorttunneldescr} - inbound ah proto" EOD; diff --git a/src/etc/inc/functions.inc b/src/etc/inc/functions.inc index c5636fa..026d7fb 100644 --- a/src/etc/inc/functions.inc +++ b/src/etc/inc/functions.inc @@ -86,7 +86,7 @@ if (!function_exists("pfSenseHeader")) { if ($_SERVER['SERVER_PORT'] == "443" && $protocol == "https") { $port = ""; } - $complete_url = "{$protocol}://{$_SERVER['SERVER_NAME']}{$port}/{$text}"; + $complete_url = "{$protocol}://{$_SERVER['HTTP_HOST']}{$port}/{$text}"; echo "\ndocument.location.href = '{$complete_url}';\n"; } else { header("Location: $text"); diff --git a/src/etc/inc/globals.inc b/src/etc/inc/globals.inc index 946cfe6..c0b2203 100644 --- a/src/etc/inc/globals.inc +++ b/src/etc/inc/globals.inc @@ -99,7 +99,7 @@ $g = array( "disablecrashreporter" => false, "crashreporterurl" => "https://crashreporter.pfsense.org/crash_reporter.php", "debug" => false, - "latest_config" => "13.7", + "latest_config" => "14.0", "nopkg_platforms" => array("cdrom"), "minimum_ram_warning" => "101", "minimum_ram_warning_text" => "128 MB", @@ -111,7 +111,8 @@ $g = array( "wireless_regex" => "/^(ndis|wi|ath|an|ral|ural|iwi|wlan|rum|run|bwn|zyd|mwl|bwi|ipw|iwn|malo|uath|upgt|urtw|wpi)/", "help_base_url" => "/help.php", "pkg_prefix" => "pfSense-pkg-", - "default_timezone" => "Etc/UTC" + "default_timezone" => "Etc/UTC", + "language" => "en_US" ); /* IP TOS flags */ diff --git a/src/etc/inc/interfaces.inc b/src/etc/inc/interfaces.inc index 71c98c3..29ae6b3 100644 --- a/src/etc/inc/interfaces.inc +++ b/src/etc/inc/interfaces.inc @@ -1132,7 +1132,10 @@ function interfaces_configure() { log_error(sprintf(gettext("Configuring %s"), $ifname)); } - interface_configure($if, $reload); + // bridge interface needs reconfigure, then re-add VIPs, to ensure find_interface_ip is correct. + // redmine #3997 + interface_reconfigure($if, $reload); + interfaces_vips_configure($if); if (platform_booting()) { echo gettext("done.") . "\n"; diff --git a/src/etc/inc/notices.inc b/src/etc/inc/notices.inc index 1362d02..d70518b 100644 --- a/src/etc/inc/notices.inc +++ b/src/etc/inc/notices.inc @@ -279,7 +279,7 @@ function print_notice_box($category = "all") { if (!$notices) { return; } - print_info_box_np(print_notices($notices, $category)); + print_info_box(print_notices($notices, $category)); return; } diff --git a/src/etc/inc/openvpn.auth-user.php b/src/etc/inc/openvpn.auth-user.php index 6e81d75..9c6c5ac 100644 --- a/src/etc/inc/openvpn.auth-user.php +++ b/src/etc/inc/openvpn.auth-user.php @@ -101,8 +101,9 @@ openlog("openvpn", LOG_ODELAY, LOG_AUTH); if (isset($_GET['username'])) { $authmodes = explode(",", $_GET['authcfg']); - $username = base64_decode(str_replace('%3D', '=', $_GET['username'])); - $password = base64_decode(str_replace('%3D', '=', $_GET['password'])); + /* Any string retrieved through $_GET is automatically urlDecoded */ + $username = base64_decode($_GET['username']); + $password = base64_decode($_GET['password']); $common_name = $_GET['cn']; $modeid = $_GET['modeid']; $strictusercn = $_GET['strictcn'] == "false" ? false : true; diff --git a/src/etc/inc/pfsense-utils.inc b/src/etc/inc/pfsense-utils.inc index ae00bee..3db6452 100644 --- a/src/etc/inc/pfsense-utils.inc +++ b/src/etc/inc/pfsense-utils.inc @@ -2756,11 +2756,21 @@ function pfSense_handle_custom_code($src_dir) { } } -function set_language($lang = 'en_US', $encoding = "UTF-8") { - setlocale(LC_ALL, "{$lang}.{$encoding}"); +function set_language() { + global $config, $g; + + if (!empty($config['system']['language'])) { + $lang = $config['system']['language']; + } elseif (!empty($g['language'])) { + $lang = $g['language']; + } + $lang .= ".UTF-8"; + + putenv("LANG={$lang}"); + setlocale(LC_ALL, $lang); textdomain("pfSense"); bindtextdomain("pfSense", "/usr/local/share/locale"); - bind_textdomain_codeset("pfSense", "{$lang}.{$encoding}"); + bind_textdomain_codeset("pfSense", $lang); } function get_locale_list() { diff --git a/src/etc/inc/pkg-utils.inc b/src/etc/inc/pkg-utils.inc index 55a0395..daceefb 100644 --- a/src/etc/inc/pkg-utils.inc +++ b/src/etc/inc/pkg-utils.inc @@ -104,6 +104,7 @@ function pkg_env() { global $config, $g; $pkg_env_vars = array( + "LANG" => "C", "HTTP_USER_AGENT" => $user_agent, "ASSUME_ALWAYS_YES" => "true" ); diff --git a/src/etc/inc/rrd.inc b/src/etc/inc/rrd.inc index 0d0715b..7019a28 100644 --- a/src/etc/inc/rrd.inc +++ b/src/etc/inc/rrd.inc @@ -984,14 +984,14 @@ for sock in {$g['varrun_path']}/dpinger_*.sock; do continue fi - gw=\$(/usr/bin/nc -U \$sock | awk '{ print \$1 }') - - if [ -z "\$gw" ]; then + t=\$(/usr/bin/nc -U \$sock) + if [ -z "\$t" ]; then continue fi - delay=\$(/usr/bin/nc -U \$sock | awk '{ print \$2 }') - loss=\$(/usr/bin/nc -U \$sock | awk '{ print \$4 }') + gw=\$(echo "\$t" | awk '{ print \$1 }') + delay=\$(echo "\$t" | awk '{ print \$2 }') + loss=\$(echo "\$t" | awk '{ print \$4 }') if echo "\$loss" | grep -Eqv '^[0-9]+\$'; then loss="U" diff --git a/src/etc/inc/service-utils.inc b/src/etc/inc/service-utils.inc index dbf15bb..ca4ff85 100644 --- a/src/etc/inc/service-utils.inc +++ b/src/etc/inc/service-utils.inc @@ -518,7 +518,7 @@ function get_service_control_GET_links($service, $addname = false) { $link = '<a title="%s" href="status_services.php?mode=%s&service=' . $service['name'] . '&zone=' . $service['zone'] . '">'; break; default: - $link = '<a title="%s" href="status_services.php?mode=%s&service=' . $service['name'] . '">'; + $link = '<a title="%s" href="/status_services.php?mode=%s&service=' . $service['name'] . '">'; } if (get_service_status($service)) { @@ -530,7 +530,7 @@ function get_service_control_GET_links($service, $addname = false) { $output .= "<a href=\"status_services.php?mode=restartservice&service={$service['name']}&zone={$service['zone']}\">"; break; default: - $output .= "<a href=\"status_services.php?mode=restartservice&service={$service['name']}\">"; + $output .= "<a href=\"/status_services.php?mode=restartservice&service={$service['name']}\">"; } $output .= "<i class=\"fa fa-repeat\" title=\"" . sprintf(gettext("Restart %sService"), $stitle) . "\"></i></a>\n"; switch ($service['name']) { @@ -541,7 +541,7 @@ function get_service_control_GET_links($service, $addname = false) { $output .= "<a href=\"status_services.php?mode=stopservice&service={$service['name']}&zone={$service['zone']}\">"; break; default: - $output .= "<a href=\"status_services.php?mode=stopservice&service={$service['name']}\">"; + $output .= "<a href=\"/status_services.php?mode=stopservice&service={$service['name']}\">"; } $output .= "<i class=\"fa fa-stop-circle-o\" title=\"" . sprintf(gettext("Stop %sService"), $stitle) . "\"></i></a>"; } else { diff --git a/src/etc/inc/services.inc b/src/etc/inc/services.inc index 2ad38b2..6d9035f 100644 --- a/src/etc/inc/services.inc +++ b/src/etc/inc/services.inc @@ -292,7 +292,9 @@ function services_radvd_configure($blacklist = array()) { /* handle DHCP-PD prefixes and 6RD dynamic interfaces */ foreach ($Iflist as $if => $ifdescr) { - if (!isset($config['interfaces'][$if]['track6-interface'])) { + if (!isset($config['interfaces'][$if]['track6-interface']) || + !isset($config['interfaces'][$if]['ipaddrv6']) || + $config['interfaces'][$if]['ipaddrv6'] != 'track6') { continue; } if (!isset($config['interfaces'][$if]['enable'])) { @@ -817,20 +819,24 @@ EOPP; } $dhcpdconf .= " allow members of \"" . str_replace(':', '', $mac) . "\";\n"; } + $deny_action = "deny"; + if (isset($poolconf['nonak'])) { + $deny_action = "ignore"; + } $mac_deny_list = array_unique(explode(',', $poolconf['mac_deny'])); foreach ($mac_deny_list as $mac) { if (empty($mac)) { continue; } - $dhcpdconf .= " deny members of \"" . str_replace(':', '', $mac) . "\";\n"; + $dhcpdconf .= " $deny_action members of \"" . str_replace(':', '', $mac) . "\";\n"; } if ($poolconf['failover_peerip'] <> "") { - $dhcpdconf .= " deny dynamic bootp clients;\n"; + $dhcpdconf .= " $deny_action dynamic bootp clients;\n"; } if (isset($poolconf['denyunknown'])) { - $dhcpdconf .= " deny unknown-clients;\n"; + $dhcpdconf .= " $deny_action unknown-clients;\n"; } if ($poolconf['gateway'] && $poolconf['gateway'] != "none" && ($poolconf['gateway'] != $dhcpifconf['gateway'])) { diff --git a/src/etc/inc/shaper.inc b/src/etc/inc/shaper.inc index 0294154..bedebed 100644 --- a/src/etc/inc/shaper.inc +++ b/src/etc/inc/shaper.inc @@ -3934,7 +3934,7 @@ EOD; 'mask', 'Mask', $mask['type'], - array('none' => 'None', 'srcaddress' => 'Source addresses', 'dstaddress' => 'Destination addresses') + array('none' => gettext('None'), 'srcaddress' => gettext('Source addresses'), 'dstaddress' => gettext('Destination addresses')) ))->setHelp('If "source" or "destination" slots is chosen a dynamic pipe with the bandwidth, delay, packet loss ' . 'and queue size given above will be created for each source/destination IP address encountered, respectively. ' . 'This makes it possible to easily specify bandwidth limits per host.'); @@ -4238,7 +4238,7 @@ class dnqueue_class extends dummynet_class { 'mask', 'Mask', $mask['type'], - array('none' => 'None', 'srcaddress' => 'Source addresses', 'dstaddress' => 'Destination addresses') + array('none' => gettext('None'), 'srcaddress' => gettext('Source addresses'), 'dstaddress' => gettext('Destination addresses')) ))->setHelp('If "source" or "destination" slots is chosen a dynamic pipe with the bandwidth, delay, packet loss ' . 'and queue size given above will be created for each source/destination IP address encountered, respectively. ' . 'This makes it possible to easily specify bandwidth limits per host.'); diff --git a/src/etc/inc/smtp.inc b/src/etc/inc/smtp.inc index de5522c..48872d8 100644 --- a/src/etc/inc/smtp.inc +++ b/src/etc/inc/smtp.inc @@ -1243,7 +1243,7 @@ class smtp_class if($this->debug) $this->OutputDebug("Connected to SMTP server \"".$domain."\"."); if(!strcmp($localhost=$this->localhost,"") - && !strcmp($localhost=getenv("SERVER_NAME"),"") + && !strcmp($localhost=getenv("HTTP_HOST"),"") && !strcmp($localhost=getenv("HOST"),"")) $localhost="localhost"; $success=0; @@ -1889,4 +1889,4 @@ class smtp_class */ -?>
\ No newline at end of file +?> diff --git a/src/etc/inc/upgrade_config.inc b/src/etc/inc/upgrade_config.inc index d627f11..11baf48 100644 --- a/src/etc/inc/upgrade_config.inc +++ b/src/etc/inc/upgrade_config.inc @@ -3330,9 +3330,8 @@ function upgrade_096_to_097() { } function upgrade_097_to_098() { - global $config, $g; - /* Disable kill_states by default */ - $config['system']['kill_states'] = true; + // no longer used (used to set kill_states) + return; } function upgrade_098_to_099() { @@ -4314,4 +4313,42 @@ function upgrade_136_to_137() { } } +function upgrade_137_to_138() { + global $config; + + // the presence of unityplugin tag used to disable loading of unity plugin + // it's now disabled by default, and config tag is to enable. Unset accordingly. + if (is_array($config['ipsec'])) { + if (isset($config['ipsec']['unityplugin'])) { + unset($config['ipsec']['unityplugin']); + } + } +} + +function upgrade_138_to_139() { + global $config; + + // clean up state killing on gateway failure. having kill_states set used to mean it was disabled + // now set gw_down_kill_states if enabled. + if (!isset($config['system']['kill_states'])) { + $config['system']['gw_down_kill_states'] = true; + } else { + unset($config['system']['kill_states']); + } +} + +function upgrade_139_to_140() { + global $config; + + if (is_array($config['virtualip']['vip'])) { + foreach ($config['virtualip']['vip'] as $idx => $vip) { + if ($vip['mode'] == "carp") { + if (!isset($vip['uniqid'])) { + $config['virtualip']['vip'][$idx]['uniqid'] = uniqid(); + } + } + } + } +} + ?> diff --git a/src/etc/inc/vpn.inc b/src/etc/inc/vpn.inc index d3bcb47..97eea23 100644 --- a/src/etc/inc/vpn.inc +++ b/src/etc/inc/vpn.inc @@ -434,7 +434,7 @@ function vpn_ipsec_configure($restart = false) { $i_dont_care_about_security_and_use_aggressive_mode_psk = "i_dont_care_about_security_and_use_aggressive_mode_psk=yes"; } - $unity_enabled = isset($config['ipsec']['unityplugin']) ? 'no' : 'yes'; + $unity_enabled = isset($config['ipsec']['unityplugin']) ? 'yes' : 'no'; $makebeforebreak = ''; if (isset($config['ipsec']['makebeforebreak'])) { @@ -1502,6 +1502,10 @@ EOD; function vpn_ipsec_force_reload($interface = "") { global $g, $config; + if (!ipsec_enabled()) { + return; + } + $ipseccfg = $config['ipsec']; if (!empty($interface) && is_array($ipseccfg['phase1'])) { @@ -1518,11 +1522,9 @@ function vpn_ipsec_force_reload($interface = "") { } } - /* if ipsec is enabled, start up again */ - if (isset($ipseccfg['enable'])) { - log_error(gettext("Forcefully reloading IPsec")); - vpn_ipsec_configure(); - } + /* If we get this far then we need to take action. */ + log_error(gettext("Forcefully reloading IPsec")); + vpn_ipsec_configure(); } /* master setup for vpn (mpd) */ @@ -1625,13 +1627,18 @@ poes{$pppoecfg['pppoeid']}{$i}: EOD; } + if (is_numeric($pppoecfg['n_pppoe_maxlogin']) && ($pppoecfg['n_pppoe_maxlogin'] > 0)) { + $pppoemaxlogins = $pppoecfg['n_pppoe_maxlogin']; + } else { + $pppoemaxlogins = 1; + } $mpdconf .=<<<EOD pppoe_standard: set bundle no multilink set bundle enable compression - set auth max-logins 1 + set auth max-logins {$pppoemaxlogins} set iface up-script /usr/local/sbin/vpn-linkup set iface down-script /usr/local/sbin/vpn-linkdown set iface idle 0 diff --git a/src/etc/inc/xmlrpc_client.inc b/src/etc/inc/xmlrpc_client.inc index a701419..216be9f 100644 --- a/src/etc/inc/xmlrpc_client.inc +++ b/src/etc/inc/xmlrpc_client.inc @@ -614,7 +614,7 @@ class XML_RPC_Client extends XML_RPC_Base { * The protocol to use in contacting the remote server * @var string */ - var $protocol = 'http://'; + var $protocol = 'tcp://'; /** * The port for connecting to the remote server @@ -650,7 +650,7 @@ class XML_RPC_Client extends XML_RPC_Base { * The protocol to use in contacting the proxy server, if any * @var string */ - var $proxy_protocol = 'http://'; + var $proxy_protocol = 'tcp://'; /** * The port for connecting to the proxy server @@ -739,12 +739,14 @@ class XML_RPC_Client extends XML_RPC_Base { $this->port = 443; } else { $this->server = $match[2]; + $this->protocol = 'tcp://'; if ($port) { $this->port = $port; } } } elseif ($match[1] == 'http://') { $this->server = $match[2]; + $this->protocol = 'tcp://'; if ($port) { $this->port = $port; } @@ -767,12 +769,14 @@ class XML_RPC_Client extends XML_RPC_Base { $this->proxy_port = 443; } else { $this->proxy = $match[2]; + $this->proxy_protocol = 'tcp://'; if ($proxy_port) { $this->proxy_port = $proxy_port; } } } elseif ($match[1] == 'http://') { $this->proxy = $match[2]; + $this->proxy_protocol = 'tcp://'; if ($proxy_port) { $this->proxy_port = $proxy_port; } diff --git a/src/etc/master.passwd b/src/etc/master.passwd index bb46954..c2cc461 100644 --- a/src/etc/master.passwd +++ b/src/etc/master.passwd @@ -1,6 +1,6 @@ # $FreeBSD: src/etc/master.passwd,v 1.39 2004/08/01 21:33:47 markm Exp $ # -root:$1$9ZCIHWSF$/6MpmsZXSQbkARathg3cX1:0:0::0:0:Charlie &:/root:/bin/sh +root:$2b$10$13u6qwCOwODv34GyCMgdWub6oQF3RX0rG7c3d3X4JvzuEmAXLYDd2:0:0::0:0:Charlie &:/root:/bin/sh toor:*:0:0::0:0:Bourne-again Superuser:/root: daemon:*:1:1::0:0:Owner of many system processes:/root:/usr/sbin/nologin operator:*:2:5::0:0:System &:/:/usr/sbin/nologin @@ -20,7 +20,7 @@ _pflogd:*:64:64::0:0:pflogd privsep user:/var/empty:/usr/sbin/nologin www:*:80:80::0:0:World Wide Web Owner:/nonexistent:/usr/sbin/nologin nobody:*:65534:65534::0:0:Unprivileged user:/nonexistent:/usr/sbin/nologin dhcpd:*:1002:1002::0:0:DHCP Daemon:/nonexistent:/sbin/nologin -admin:$1$9ZCIHWSF$/6MpmsZXSQbkARathg3cX1:0:0::0:0:Admin User:/root:/bin/sh +admin:$2b$10$13u6qwCOwODv34GyCMgdWub6oQF3RX0rG7c3d3X4JvzuEmAXLYDd2:0:0::0:0:Admin User:/root:/bin/sh _dhcp:*:65:65::0:0:dhcp programs:/var/empty:/usr/sbin/nologin _isakmpd:*:68:68::0:0:isakmpd privsep:/var/empty:/sbin/nologin uucp:*:66:66::0:0:UUCP pseudo-user:/var/spool/uucppublic:/usr/local/libexec/uucp/uucico diff --git a/src/etc/pfSense.obsoletedfiles b/src/etc/pfSense.obsoletedfiles index a841060..c6ed82f 100644 --- a/src/etc/pfSense.obsoletedfiles +++ b/src/etc/pfSense.obsoletedfiles @@ -848,7 +848,7 @@ /usr/local/www/services_proxyarp.php /usr/local/www/services_proxyarp_edit.php /usr/local/www/services_usermanager.php -/usr/local/www/shortcuts/pkg_upnp.inc +/usr/local/www/shortcuts/pkg_upnp.php /usr/local/www/sortable/sortable.min.js /usr/local/www/status_slbd_pool.php /usr/local/www/status_slbd_vs.php diff --git a/src/etc/rc.kill_states b/src/etc/rc.kill_states index 571cc90..dcf8666 100755 --- a/src/etc/rc.kill_states +++ b/src/etc/rc.kill_states @@ -85,7 +85,7 @@ if (!empty($local_ip)) { } } -if (!isset($config['system']['kill_states'])) { +if (isset($config['system']['gw_down_kill_states'])) { if (!empty($local_ip)) { log_error("rc.kill_states: Removing states for IP {$local_ip}/{$subnet_bits}"); $nat_states = exec_command("/sbin/pfctl -i {$interface} -ss | " . diff --git a/src/etc/rc.newwanip b/src/etc/rc.newwanip index 45cef96..bfbe78b 100755 --- a/src/etc/rc.newwanip +++ b/src/etc/rc.newwanip @@ -150,7 +150,13 @@ if (!empty($grouptmp)) { unset($bridgetmp); $bridgetmp = link_interface_to_bridge($interface); if (!empty($bridgetmp)) { - interface_bridge_add_member($bridgetmp, $interface_real); + if (is_array($config['bridges']['bridged']) && count($config['bridges']['bridged'])) { + foreach ($config['bridges']['bridged'] as $bridge) { + if ($bridge['bridgeif'] == $bridgetmp) { + interface_bridge_configure($bridge); + } + } + } } // Do not process while booting diff --git a/src/etc/sshd b/src/etc/sshd index 2e59824..044cc2b 100755 --- a/src/etc/sshd +++ b/src/etc/sshd @@ -46,9 +46,7 @@ $sshConfigDir = "/etc/ssh"; $keys = array( - array('type' => 'rsa1', 'suffix' => ''), array('type' => 'rsa', 'suffix' => 'rsa_'), - array('type' => 'dsa', 'suffix' => 'dsa_'), array('type' => 'ecdsa', 'suffix' => 'ecdsa_'), array('type' => 'ed25519', 'suffix' => 'ed25519_') ); diff --git a/src/usr/local/bin/filterparser.php b/src/usr/local/bin/filterparser.php index 0fb76bf..d528ab2 100755 --- a/src/usr/local/bin/filterparser.php +++ b/src/usr/local/bin/filterparser.php @@ -44,7 +44,7 @@ $lastline = ""; while (!feof($log)) { $line = fgets($log); $line = rtrim($line); - $flent = parse_filter_line(trim($line)); + $flent = parse_firewall_log_line(trim($line)); if ($flent != "") { $flags = (($flent['proto'] == "TCP") && !empty($flent['tcpflags'])) ? ":" . $flent['tcpflags'] : ""; echo "{$flent['time']} {$flent['act']} {$flent['realint']} {$flent['proto']}{$flags} {$flent['src']} {$flent['dst']}\n"; diff --git a/src/usr/local/sbin/ovpn_auth_verify b/src/usr/local/sbin/ovpn_auth_verify index e7b8c6c..e84aad2 100755 --- a/src/usr/local/sbin/ovpn_auth_verify +++ b/src/usr/local/sbin/ovpn_auth_verify @@ -5,8 +5,8 @@ if [ "$1" = "tls" ]; then else # Single quoting $password breaks getting the value from the variable. # Base64 and urlEncode usernames and passwords - password=$(echo -n "${password}" | openssl enc -base64 | sed -e 's/=/%3D/g') - username=$(echo -n "${username}" | openssl enc -base64 | sed -e 's/=/%3D/g') + password=$(echo -n "${password}" | openssl enc -base64 | sed -e 's_=_%3D_g;s_+_%2B_g;s_/_%2F_g') + username=$(echo -n "${username}" | openssl enc -base64 | sed -e 's_=_%3D_g;s_+_%2B_g;s_/_%2F_g') RESULT=$(/usr/local/sbin/fcgicli -f /etc/inc/openvpn.auth-user.php -d "username=$username&password=$password&cn=$common_name&strictcn=$3&authcfg=$2&modeid=$4") fi diff --git a/src/usr/local/sbin/pfSense-upgrade b/src/usr/local/sbin/pfSense-upgrade index 536bb45..5480504 100755 --- a/src/usr/local/sbin/pfSense-upgrade +++ b/src/usr/local/sbin/pfSense-upgrade @@ -662,6 +662,8 @@ do_reboot() { fi } +export LANG=C + pid_file="/var/run/$(basename $0).pid" logfile="/cf/conf/upgrade_log.txt" stdout='/dev/null' diff --git a/src/usr/local/sbin/pfSsh.php b/src/usr/local/sbin/pfSsh.php index 8bfc909..d42b5a5 100755 --- a/src/usr/local/sbin/pfSsh.php +++ b/src/usr/local/sbin/pfSsh.php @@ -85,8 +85,8 @@ $show_help_text = <<<EOF Example commands: - startrecording <recordingfilename> - stoprecording <recordingfilename> + record <recordingfilename> + stoprecording showrecordings parse_config(true); # reloads the \$config array @@ -162,19 +162,28 @@ function completion($string, $index) { readline_completion_function("completion"); +function get_playback_files() { + $playback_files = array(); + $files = scandir("/etc/phpshellsessions/"); + foreach ($files as $file) { + if ($file <> "." && $file <> "..") { + $playback_files[] = $file; + } + } + return $playback_files; +} + if ($argc < 2) { echo "Welcome to the {$g['product_name']} developer shell\n"; echo "\nType \"help\" to show common usage scenarios.\n"; echo "\nAvailable playback commands:\n "; - $files = scandir("/etc/phpshellsessions/"); $tccommands[] = "playback"; - foreach ($files as $file) { - if ($file <> "." and $file <> "..") { - echo $file . " "; - if (function_exists("readline_add_history")) { - readline_add_history("playback $file"); - $tccommands[] = "$file"; - } + $playback_files = get_playback_files(); + foreach ($playback_files as $pbf) { + echo "{$pbf} "; + if (function_exists("readline_add_history")) { + readline_add_history("playback $pbf"); + $tccommands[] = "$pbf"; } } echo "\n\n"; @@ -185,11 +194,12 @@ $playback_file_split = array(); $playbackbuffer = ""; if ($argv[1]=="playback" or $argv[1]=="run") { - if (!file_exists("/etc/phpshellsessions/{$argv[2]}")) { - echo "Could not locate playback file."; - exit; + if (empty($argv[2]) || !file_exists("/etc/phpshellsessions/" . basename($argv[2]))) { + echo "Error: Invalid playback file specified.\n\n"; + show_recordings(); + exit(-1); } - playback_file($argv[2]); + playback_file(basename($argv[2])); exit; } @@ -198,7 +208,6 @@ $tccommands[] = "exit"; $tccommands[] = "quit"; $tccommands[] = "?"; $tccommands[] = "exec"; -$tccommands[] = "startrecording"; $tccommands[] = "stoprecording"; $tccommands[] = "showrecordings"; $tccommands[] = "record"; @@ -261,18 +270,20 @@ while ($shell_active == true) { if ($first_command == "record") { if (!$command_split[1]) { echo "usage: record playbackname\n"; + echo "\tplaybackname will be created in /etc/phpshellsessions.\n"; $command = ""; } else { /* time to record */ conf_mount_rw(); safe_mkdir("/etc/phpshellsessions"); - $recording_fd = fopen("/etc/phpshellsessions/{$command_split[1]}","w"); + $recording_fn = basename($command_split[1]); + $recording_fd = fopen("/etc/phpshellsessions/{$recording_fn}","w"); if (!$recording_fd) { echo "Could not start recording session.\n"; $command = ""; } else { $recording = true; - echo "Recording of {$command_split[1]} started.\n"; + echo "Recording of {$recording_fn} started.\n"; $command = ""; } } @@ -281,13 +292,12 @@ while ($shell_active == true) { } function show_recordings() { - conf_mount_rw(); - safe_mkdir("/etc/phpshellsessions"); - if ($recording) { - conf_mount_ro(); - } echo "==> Sessions available for playback are:\n"; - system("cd /etc/phpshellsessions && ls /etc/phpshellsessions"); + $playback_files = get_playback_files(); + foreach (get_playback_files() as $pbf) { + echo "{$pbf} "; + } + echo "\n\n"; echo "==> end of list.\n"; } diff --git a/src/usr/local/sbin/prefixes.php b/src/usr/local/sbin/prefixes.php index 118bd9e..048fc11 100644 --- a/src/usr/local/sbin/prefixes.php +++ b/src/usr/local/sbin/prefixes.php @@ -10,9 +10,22 @@ $fd = fopen($leases_file, 'r'); $duid_arr = array(); while (( $line = fgets($fd, 4096)) !== false) { // echo "$line"; - if (preg_match("/^(ia-[np][ad])[ ]+\"(.*?)\"/i", $line, $duidmatch)) { + + /* Originally: preg_match("/^(ia-[np][ad])[ ]+\"(.*?)\"/i", $line, $duidmatch) + That is: \"(.*?)\" + , which is a non-greedy matching. However that does not go well with the legal + substring \" in the IAID+DUID lease string format of ISC DHCPDv6, + because it truncates before we reach the end of the IAID+DUID string! + Instead we use: \"(.*)\" + (Might fail if content of the lease file is not well formed.) + + Maybe someone would argue to e.g. use \"(.*?)\"[ \t]*{[ \t]*$ + instead + (Either we get a valid result or nothing at all.) + , but I'll leave it to others to decide! */ + if (preg_match("/^(ia-[np][ad])[ ]+\"(.*)\"/i", $line, $duidmatch)) { $type = $duidmatch[1]; - $duid = $duidmatch[2]; + $duid = extract_duid($duidmatch[2]); continue; } @@ -34,13 +47,17 @@ while (( $line = fgets($fd, 4096)) !== false) { /* closing bracket */ if (preg_match("/^}/i", $line)) { - switch ($type) { - case "ia-na": - $duid_arr[$duid][$type] = $ia_na; - break; - case "ia-pd": - $duid_arr[$duid][$type] = $ia_pd; - break; + if (isset($duid) && $duid !== false) { + switch ($type) { + case "ia-na": + $duid_arr[$duid][$type] = $ia_na; + break; + case "ia-pd": + $duid_arr[$duid][$type] = $ia_pd; + break; + default: + break; + } } unset($type); unset($duid); @@ -90,4 +107,35 @@ if (count($expires) > 0) { } } +/* handle quotify_buf - https://source.isc.org/cgi-bin/gitweb.cgi?p=dhcp.git;a=blob;f=common/print.c */ +function extract_duid($ia_string) { + for ($i = 0, $iaid_counter = 0, $len = strlen($ia_string); $i < $len && $iaid_counter < 4; $i++, $iaid_counter++) { + if ($ia_string[$i] !== '\\') { + continue; + } + else if ($len - $i >= 2) { + if (($ia_string[$i+1] === '\\') || ($ia_string[$i+1] === '"')) { + $i += 1; + continue; + } + else if ($len - $i >= 4) { + if (preg_match('/[0-7]{3}/', substr($ia_string, $i+1, $i+4))) { + $i += 3; + continue; + } + } + } + + return false; + } + + /* Return anything after the first 4 octets! */ + if ($iaid_counter === 4) { + /* substr returns false when $len == $i */ + return substr($ia_string, $i); + } + + return false; +} + ?> diff --git a/src/usr/local/share/locale/en/LC_MESSAGES/pfSense.pot b/src/usr/local/share/locale/en/LC_MESSAGES/pfSense.pot index 907cc4f..d8df291 100644 --- a/src/usr/local/share/locale/en/LC_MESSAGES/pfSense.pot +++ b/src/usr/local/share/locale/en/LC_MESSAGES/pfSense.pot @@ -5,14 +5,14 @@ # #: src/usr/local/www/diag_traceroute.php:194 #: src/usr/local/www/diag_traceroute.php:201 -#: src/usr/local/www/interfaces.php:3113 src/usr/local/www/interfaces.php:3123 +#: src/usr/local/www/interfaces.php:3114 src/usr/local/www/interfaces.php:3124 #: src/usr/local/www/vpn_ipsec_settings.php:285 #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-01-21 14:30-0200\n" +"POT-Creation-Date: 2016-01-26 16:04-0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -865,17 +865,17 @@ msgstr "" #: src/etc/inc/interfaces.inc:369 src/etc/inc/interfaces.inc:431 #: src/etc/inc/interfaces.inc:714 src/etc/inc/interfaces.inc:1065 #: src/etc/inc/interfaces.inc:1096 src/etc/inc/interfaces.inc:1120 -#: src/etc/inc/interfaces.inc:1138 src/etc/inc/interfaces.inc:2131 -#: src/etc/inc/pkg-utils.inc:513 src/etc/inc/pkg-utils.inc:662 -#: src/etc/inc/pkg-utils.inc:686 src/etc/inc/pkg-utils.inc:722 -#: src/etc/inc/pkg-utils.inc:727 src/etc/inc/pkg-utils.inc:732 -#: src/etc/inc/pkg-utils.inc:750 src/etc/inc/pkg-utils.inc:767 -#: src/etc/inc/pkg-utils.inc:789 src/etc/inc/pkg-utils.inc:832 -#: src/etc/inc/pkg-utils.inc:858 src/etc/inc/pkg-utils.inc:901 -#: src/etc/inc/pkg-utils.inc:920 src/etc/inc/rrd.inc:1052 -#: src/etc/inc/services.inc:1573 src/etc/inc/services.inc:1953 -#: src/etc/inc/services.inc:2169 src/etc/inc/services.inc:2211 -#: src/etc/inc/services.inc:2420 src/etc/inc/system.inc:1076 +#: src/etc/inc/interfaces.inc:1141 src/etc/inc/interfaces.inc:2134 +#: src/etc/inc/pkg-utils.inc:514 src/etc/inc/pkg-utils.inc:663 +#: src/etc/inc/pkg-utils.inc:687 src/etc/inc/pkg-utils.inc:723 +#: src/etc/inc/pkg-utils.inc:728 src/etc/inc/pkg-utils.inc:733 +#: src/etc/inc/pkg-utils.inc:751 src/etc/inc/pkg-utils.inc:768 +#: src/etc/inc/pkg-utils.inc:790 src/etc/inc/pkg-utils.inc:833 +#: src/etc/inc/pkg-utils.inc:859 src/etc/inc/pkg-utils.inc:902 +#: src/etc/inc/pkg-utils.inc:921 src/etc/inc/rrd.inc:1052 +#: src/etc/inc/services.inc:1577 src/etc/inc/services.inc:1957 +#: src/etc/inc/services.inc:2173 src/etc/inc/services.inc:2215 +#: src/etc/inc/services.inc:2424 src/etc/inc/system.inc:1076 #: src/etc/inc/system.inc:1174 src/etc/inc/system.inc:1462 #: src/etc/inc/system.inc:1847 src/etc/inc/system.inc:1998 msgid "done." @@ -1208,103 +1208,103 @@ msgstr "" msgid "Configuring %s" msgstr "" -#: src/etc/inc/interfaces.inc:1238 +#: src/etc/inc/interfaces.inc:1241 msgid "Wrong parameters used during interface_bring_down" msgstr "" -#: src/etc/inc/interfaces.inc:1599 +#: src/etc/inc/interfaces.inc:1602 #, php-format msgid "Can't find PPP config for %s in interface_ppps_configure()." msgstr "" -#: src/etc/inc/interfaces.inc:1661 +#: src/etc/inc/interfaces.inc:1664 #, php-format msgid "" "Could not get a PPTP/L2TP Remote IP address from %1$s for %2$s in " "interfaces_ppps_configure." msgstr "" -#: src/etc/inc/interfaces.inc:1668 +#: src/etc/inc/interfaces.inc:1671 #, php-format msgid "" "Device %s does not exist. PPP link cannot start without the modem device." msgstr "" -#: src/etc/inc/interfaces.inc:1673 +#: src/etc/inc/interfaces.inc:1676 #, php-format msgid "Unknown %s configured as ppp interface." msgstr "" -#: src/etc/inc/interfaces.inc:1985 +#: src/etc/inc/interfaces.inc:1988 #, php-format msgid "Error: cannot open mpd_%s.conf in interface_ppps_configure().%s" msgstr "" -#: src/etc/inc/interfaces.inc:2070 +#: src/etc/inc/interfaces.inc:2073 msgid "Configuring CARP settings..." msgstr "" -#: src/etc/inc/interfaces.inc:2350 +#: src/etc/inc/interfaces.inc:2353 #, php-format msgid "" "Interface specified for the virtual IP address %s does not exist. Skipping " "this VIP." msgstr "" -#: src/etc/inc/interfaces.inc:2410 +#: src/etc/inc/interfaces.inc:2413 #, php-format msgid "Interface %s changed to hostap mode" msgstr "" -#: src/etc/inc/interfaces.inc:2414 +#: src/etc/inc/interfaces.inc:2417 #, php-format msgid "Interface %s changed to adhoc mode" msgstr "" -#: src/etc/inc/interfaces.inc:2418 +#: src/etc/inc/interfaces.inc:2421 #, php-format msgid "Interface %s changed to infrastructure mode" msgstr "" -#: src/etc/inc/interfaces.inc:2431 +#: src/etc/inc/interfaces.inc:2434 #, php-format msgid "Cloning new wireless interface %s" msgstr "" -#: src/etc/inc/interfaces.inc:2436 +#: src/etc/inc/interfaces.inc:2439 #, php-format msgid "Failed to clone interface %1$s with error code %2$s, output %3$s" msgstr "" -#: src/etc/inc/interfaces.inc:3231 +#: src/etc/inc/interfaces.inc:3234 msgid "Generating new MAC address." msgstr "" -#: src/etc/inc/interfaces.inc:3237 +#: src/etc/inc/interfaces.inc:3240 #, php-format msgid "" "The INVALID MAC address (ff:ff:ff:ff:ff:ff) on interface %1$s has been " "automatically replaced with %2$s" msgstr "" -#: src/etc/inc/interfaces.inc:4195 +#: src/etc/inc/interfaces.inc:4198 #, php-format msgid "" "Error: cannot open dhclient_%s.conf in interface_dhcp_configure() for " "writing.%s" msgstr "" -#: src/etc/inc/interfaces.inc:4208 +#: src/etc/inc/interfaces.inc:4211 #, php-format msgid "Invalid interface \"%s\" in interface_dhcp_configure()" msgstr "" -#: src/etc/inc/interfaces.inc:4264 +#: src/etc/inc/interfaces.inc:4267 #, php-format msgid "Could not bring up %s interface in interface_dhcp_configure()" msgstr "" -#: src/etc/inc/interfaces.inc:5416 src/etc/inc/service-utils.inc:390 +#: src/etc/inc/interfaces.inc:5419 src/etc/inc/service-utils.inc:390 #: src/usr/local/www/diag_backup.php:567 #: src/usr/local/www/diag_packet_capture.php:143 #: src/usr/local/www/firewall_nat_1to1_edit.php:441 @@ -1314,12 +1314,14 @@ msgstr "" #: src/usr/local/www/firewall_rules_edit.php:1010 #: src/usr/local/www/head.inc:271 src/usr/local/www/head.inc:289 #: src/usr/local/www/license.php:171 src/usr/local/www/status_graph.php:94 +#: src/usr/local/www/status_logs.php:86 #: src/usr/local/www/status_logs_common.inc:118 #: src/usr/local/www/status_logs_settings.php:241 #: src/usr/local/www/status_openvpn.php:64 #: src/usr/local/www/vpn_openvpn_client.php:68 #: src/usr/local/www/vpn_openvpn_csc.php:70 #: src/usr/local/www/vpn_openvpn_server.php:592 +#: src/usr/local/www/widgets/include/openvpn.inc:2 msgid "OpenVPN" msgstr "" @@ -1328,7 +1330,7 @@ msgid "My IP address" msgstr "" #: src/etc/inc/ipsec.inc:96 src/etc/inc/ipsec.inc:107 -#: src/usr/local/www/diag_arp.php:345 src/usr/local/www/services_dhcp.php:1284 +#: src/usr/local/www/diag_arp.php:345 src/usr/local/www/services_dhcp.php:1294 #: src/usr/local/www/services_dnsmasq_domainoverride_edit.php:100 #: src/usr/local/www/services_dnsmasq_edit.php:110 #: src/usr/local/www/services_unbound_domainoverride_edit.php:96 @@ -1336,7 +1338,9 @@ msgstr "" #: src/usr/local/www/status_captiveportal.php:176 #: src/usr/local/www/status_dhcp_leases.php:370 #: src/usr/local/www/system_advanced_network.php:214 +#: src/usr/local/www/system_certmanager.php:812 #: src/usr/local/www/vpn_l2tp_users.php:130 +#: src/usr/local/www/widgets/widgets/captive_portal_status.widget.php:133 msgid "IP address" msgstr "" @@ -1357,7 +1361,7 @@ msgid "KeyID tag" msgstr "" #: src/etc/inc/ipsec.inc:101 src/usr/local/www/head.inc:251 -#: src/usr/local/www/services_dhcp.php:977 +#: src/usr/local/www/services_dhcp.php:987 #: src/usr/local/www/services_dhcp_edit.php:595 #: src/usr/local/www/services_dhcpv6.php:686 #: src/usr/local/www/services_dyndns.php:95 @@ -1369,11 +1373,16 @@ msgstr "" msgid "Dynamic DNS" msgstr "" -#: src/etc/inc/ipsec.inc:105 src/usr/local/www/firewall_nat_1to1_edit.php:287 +#: src/etc/inc/ipsec.inc:105 src/usr/local/www/diag_traceroute.php:84 +#: src/usr/local/www/firewall_nat_1to1_edit.php:287 #: src/usr/local/www/firewall_nat_1to1_edit.php:329 #: src/usr/local/www/firewall_nat_edit.php:534 #: src/usr/local/www/firewall_nat_edit.php:580 #: src/usr/local/www/firewall_nat_edit.php:755 +#: src/usr/local/www/firewall_nat_out_edit.php:513 +#: src/usr/local/www/firewall_nat_out_edit.php:537 +#: src/usr/local/www/firewall_rules_edit.php:1402 +#: src/usr/local/www/interfaces.php:2937 msgid "Any" msgstr "" @@ -1381,15 +1390,19 @@ msgstr "" msgid "Peer IP address" msgstr "" -#: src/etc/inc/ipsec.inc:426 src/usr/local/www/vpn_ipsec.php:354 +#: src/etc/inc/ipsec.inc:426 src/usr/local/www/vpn_ipsec.php:353 #: src/usr/local/www/vpn_ipsec_phase1.php:638 #: src/usr/local/www/vpn_ipsec_phase2.php:441 msgid "Mobile Client" msgstr "" -#: src/etc/inc/ipsec.inc:429 src/usr/local/www/firewall_nat_edit.php:919 +#: src/etc/inc/ipsec.inc:429 src/etc/inc/shaper.inc:3937 +#: src/etc/inc/shaper.inc:4241 src/usr/local/www/diag_pftop.php:150 +#: src/usr/local/www/firewall_nat_edit.php:919 #: src/usr/local/www/firewall_rules_edit.php:1513 -#: src/usr/local/www/interfaces.php:1646 src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1647 src/usr/local/www/interfaces.php:1648 +#: src/usr/local/www/interfaces.php:1672 src/usr/local/www/interfaces.php:1685 +#: src/usr/local/www/interfaces_bridge_edit.php:318 #: src/usr/local/www/system_advanced_misc.php:454 #: src/usr/local/www/vpn_ipsec_phase2.php:579 msgid "None" @@ -1607,15 +1620,15 @@ msgid "" "utility is missing!" msgstr "" -#: src/etc/inc/pfsense-utils.inc:2768 +#: src/etc/inc/pfsense-utils.inc:2778 msgid "English" msgstr "" -#: src/etc/inc/pfsense-utils.inc:2769 +#: src/etc/inc/pfsense-utils.inc:2779 msgid "Portuguese (Brazil)" msgstr "" -#: src/etc/inc/pfsense-utils.inc:2770 +#: src/etc/inc/pfsense-utils.inc:2780 msgid "Turkish" msgstr "" @@ -1623,172 +1636,172 @@ msgstr "" msgid "Warning, could not open log for writing." msgstr "" -#: src/etc/inc/pkg-utils.inc:211 +#: src/etc/inc/pkg-utils.inc:212 #, php-format msgid "" "ERROR!!! An error occurred on pkg execution (rc = %d) with parameters '%s':" msgstr "" -#: src/etc/inc/pkg-utils.inc:392 src/etc/inc/pkg-utils.inc:395 +#: src/etc/inc/pkg-utils.inc:393 src/etc/inc/pkg-utils.inc:396 msgid "ERROR: Error trying to get packages list. Aborting..." msgstr "" -#: src/etc/inc/pkg-utils.inc:427 src/etc/inc/pkg-utils.inc:430 +#: src/etc/inc/pkg-utils.inc:428 src/etc/inc/pkg-utils.inc:431 msgid "ERROR: Error trying to get package version. Aborting..." msgstr "" -#: src/etc/inc/pkg-utils.inc:461 +#: src/etc/inc/pkg-utils.inc:462 msgid "Resyncing configuration for all packages." msgstr "" -#: src/etc/inc/pkg-utils.inc:484 +#: src/etc/inc/pkg-utils.inc:485 msgid "Syncing packages..." msgstr "" -#: src/etc/inc/pkg-utils.inc:507 +#: src/etc/inc/pkg-utils.inc:508 msgid "Removing package..." msgstr "" -#: src/etc/inc/pkg-utils.inc:540 +#: src/etc/inc/pkg-utils.inc:541 #, php-format msgid "" "The %s package is missing its configuration file and must be reinstalled." msgstr "" -#: src/etc/inc/pkg-utils.inc:653 +#: src/etc/inc/pkg-utils.inc:654 msgid "Beginning package installation." msgstr "" -#: src/etc/inc/pkg-utils.inc:654 +#: src/etc/inc/pkg-utils.inc:655 #, php-format msgid "Beginning package installation for %s ." msgstr "" -#: src/etc/inc/pkg-utils.inc:658 +#: src/etc/inc/pkg-utils.inc:659 msgid "Saving updated package information..." msgstr "" -#: src/etc/inc/pkg-utils.inc:661 +#: src/etc/inc/pkg-utils.inc:662 #, php-format msgid "Installed %s package." msgstr "" -#: src/etc/inc/pkg-utils.inc:665 +#: src/etc/inc/pkg-utils.inc:666 #, php-format msgid "Overwrote previous installation of %s." msgstr "" -#: src/etc/inc/pkg-utils.inc:666 +#: src/etc/inc/pkg-utils.inc:667 msgid "overwrite!" msgstr "" -#: src/etc/inc/pkg-utils.inc:674 +#: src/etc/inc/pkg-utils.inc:675 #, php-format msgid "The %s package is not installed.%sInstallation aborted." msgstr "" -#: src/etc/inc/pkg-utils.inc:678 src/etc/inc/pkg-utils.inc:710 -#: src/etc/inc/pkg-utils.inc:776 +#: src/etc/inc/pkg-utils.inc:679 src/etc/inc/pkg-utils.inc:711 +#: src/etc/inc/pkg-utils.inc:777 #, php-format msgid "Failed to install package: %s." msgstr "" -#: src/etc/inc/pkg-utils.inc:679 src/etc/inc/pkg-utils.inc:711 -#: src/etc/inc/pkg-utils.inc:777 +#: src/etc/inc/pkg-utils.inc:680 src/etc/inc/pkg-utils.inc:712 +#: src/etc/inc/pkg-utils.inc:778 msgid "Failed to install package." msgstr "" -#: src/etc/inc/pkg-utils.inc:684 +#: src/etc/inc/pkg-utils.inc:685 msgid "Loading package configuration... " msgstr "" -#: src/etc/inc/pkg-utils.inc:687 +#: src/etc/inc/pkg-utils.inc:688 msgid "Configuring package components..." msgstr "" -#: src/etc/inc/pkg-utils.inc:699 src/etc/inc/pkg-utils.inc:873 +#: src/etc/inc/pkg-utils.inc:700 src/etc/inc/pkg-utils.inc:874 msgid "Loading package instructions..." msgstr "" -#: src/etc/inc/pkg-utils.inc:717 +#: src/etc/inc/pkg-utils.inc:718 msgid "Custom commands..." msgstr "" -#: src/etc/inc/pkg-utils.inc:720 +#: src/etc/inc/pkg-utils.inc:721 msgid "Executing custom_php_global_functions()..." msgstr "" -#: src/etc/inc/pkg-utils.inc:725 +#: src/etc/inc/pkg-utils.inc:726 msgid "Executing custom_php_install_command()..." msgstr "" -#: src/etc/inc/pkg-utils.inc:730 +#: src/etc/inc/pkg-utils.inc:731 msgid "Executing custom_php_resync_config_command()..." msgstr "" -#: src/etc/inc/pkg-utils.inc:737 src/etc/inc/pkg-utils.inc:821 +#: src/etc/inc/pkg-utils.inc:738 src/etc/inc/pkg-utils.inc:822 msgid "Menu items... " msgstr "" -#: src/etc/inc/pkg-utils.inc:754 src/etc/inc/pkg-utils.inc:836 +#: src/etc/inc/pkg-utils.inc:755 src/etc/inc/pkg-utils.inc:837 msgid "Services... " msgstr "" -#: src/etc/inc/pkg-utils.inc:771 +#: src/etc/inc/pkg-utils.inc:772 msgid "Loading package configuration... failed!" msgstr "" -#: src/etc/inc/pkg-utils.inc:771 +#: src/etc/inc/pkg-utils.inc:772 msgid "Installation aborted." msgstr "" -#: src/etc/inc/pkg-utils.inc:772 +#: src/etc/inc/pkg-utils.inc:773 msgid "Unable to load package configuration. Installation aborted." msgstr "" -#: src/etc/inc/pkg-utils.inc:786 +#: src/etc/inc/pkg-utils.inc:787 msgid "Writing configuration... " msgstr "" -#: src/etc/inc/pkg-utils.inc:788 +#: src/etc/inc/pkg-utils.inc:789 #, php-format msgid "Successfully installed package: %s." msgstr "" -#: src/etc/inc/pkg-utils.inc:804 +#: src/etc/inc/pkg-utils.inc:805 #, php-format msgid "The %s package is not installed.%sDeletion aborted." msgstr "" -#: src/etc/inc/pkg-utils.inc:810 +#: src/etc/inc/pkg-utils.inc:811 #, php-format msgid "Removing %s package... " msgstr "" -#: src/etc/inc/pkg-utils.inc:811 +#: src/etc/inc/pkg-utils.inc:812 #, php-format msgid "Removing %s components..." msgstr "" -#: src/etc/inc/pkg-utils.inc:898 +#: src/etc/inc/pkg-utils.inc:899 msgid "Deinstall commands... " msgstr "" -#: src/etc/inc/pkg-utils.inc:918 +#: src/etc/inc/pkg-utils.inc:919 msgid "Configuration... " msgstr "" -#: src/etc/inc/pkg-utils.inc:949 +#: src/etc/inc/pkg-utils.inc:950 msgid "" "Waiting for internet connection to update pkg metadata and fini package " "reinstallation" msgstr "" -#: src/etc/inc/pkg-utils.inc:978 +#: src/etc/inc/pkg-utils.inc:979 msgid "Package reinstall" msgstr "" -#: src/etc/inc/pkg-utils.inc:979 +#: src/etc/inc/pkg-utils.inc:980 #, php-format msgid "" "Package %s does not exist in current %s version and it has been removed." @@ -3738,10 +3751,11 @@ msgstr "" #: src/etc/inc/service-utils.inc:287 src/usr/local/www/diag_backup.php:560 #: src/usr/local/www/head.inc:242 src/usr/local/www/services_unbound.php:251 -#: src/usr/local/www/services_unbound_acls.php:209 +#: src/usr/local/www/services_unbound_acls.php:208 #: src/usr/local/www/services_unbound_advanced.php:221 #: src/usr/local/www/services_unbound_domainoverride_edit.php:145 #: src/usr/local/www/services_unbound_host_edit.php:233 +#: src/usr/local/www/status_logs.php:94 msgid "DNS Resolver" msgstr "" @@ -3815,7 +3829,7 @@ msgstr "" msgid "Not available." msgstr "" -#: src/etc/inc/service-utils.inc:486 +#: src/etc/inc/service-utils.inc:486 src/usr/local/www/status_services.php:168 msgid "Running" msgstr "" @@ -3824,7 +3838,7 @@ msgstr "" msgid "%s Service is" msgstr "" -#: src/etc/inc/service-utils.inc:495 +#: src/etc/inc/service-utils.inc:495 src/usr/local/www/status_services.php:168 msgid "Stopped" msgstr "" @@ -3833,7 +3847,10 @@ msgstr "" #: src/usr/local/www/firewall_nat_npt_edit.php:225 #: src/usr/local/www/firewall_nat_out_edit.php:451 #: src/usr/local/www/firewall_rules_edit.php:1087 +#: src/usr/local/www/interfaces.php:2591 +#: src/usr/local/www/interfaces_ppps_edit.php:728 #: src/usr/local/www/load_balancer_pool_edit.php:445 +#: src/usr/local/www/services_router_advertisements.php:133 #: src/usr/local/www/system_gateways_edit.php:672 #: src/usr/local/www/system_routes_edit.php:298 #: src/usr/local/www/system_usermanager.php:497 @@ -3896,85 +3913,85 @@ msgid "" "settings in Services, DHCP Server" msgstr "" -#: src/etc/inc/services.inc:1113 +#: src/etc/inc/services.inc:1117 #, php-format msgid "Error: cannot open dhcpd.conf in services_dhcpdv4_configure().%s" msgstr "" -#: src/etc/inc/services.inc:1626 +#: src/etc/inc/services.inc:1630 msgid "Could not write Igmpproxy configuration file!" msgstr "" -#: src/etc/inc/services.inc:1634 +#: src/etc/inc/services.inc:1638 msgid "Started IGMP proxy service." msgstr "" -#: src/etc/inc/services.inc:1658 +#: src/etc/inc/services.inc:1662 msgid "Starting DHCP relay service..." msgstr "" -#: src/etc/inc/services.inc:1792 +#: src/etc/inc/services.inc:1796 msgid "Starting DHCPv6 relay service..." msgstr "" -#: src/etc/inc/services.inc:1939 +#: src/etc/inc/services.inc:1943 msgid "Starting DynDNS clients..." msgstr "" -#: src/etc/inc/services.inc:2012 +#: src/etc/inc/services.inc:2016 msgid "Starting DNS forwarder..." msgstr "" -#: src/etc/inc/services.inc:2198 +#: src/etc/inc/services.inc:2202 msgid "Starting DNS Resolver..." msgstr "" -#: src/etc/inc/services.inc:2243 +#: src/etc/inc/services.inc:2247 msgid "Starting SNMP daemon... " msgstr "" -#: src/etc/inc/services.inc:2249 +#: src/etc/inc/services.inc:2253 #, php-format msgid "Error: cannot open snmpd.conf in services_snmpd_configure().%s" msgstr "" -#: src/etc/inc/services.inc:2598 +#: src/etc/inc/services.inc:2602 msgid "pfSense specific crontab entries" msgstr "" -#: src/etc/inc/services.inc:2599 +#: src/etc/inc/services.inc:2603 msgid "Created:" msgstr "" -#: src/etc/inc/services.inc:2621 +#: src/etc/inc/services.inc:2625 msgid "If possible do not add items to this file manually." msgstr "" -#: src/etc/inc/services.inc:2622 +#: src/etc/inc/services.inc:2626 msgid "" "If you do so, this file must be terminated with a blank line (e.g. new line)" msgstr "" -#: src/etc/inc/services.inc:2673 +#: src/etc/inc/services.inc:2677 msgid "Starting UPnP service... " msgstr "" -#: src/etc/inc/services.inc:2713 +#: src/etc/inc/services.inc:2717 #, php-format msgid "Installed cron job for %s" msgstr "" -#: src/etc/inc/services.inc:2717 +#: src/etc/inc/services.inc:2721 #, php-format msgid "Checked cron job for %s, no change needed" msgstr "" -#: src/etc/inc/services.inc:2720 +#: src/etc/inc/services.inc:2724 #, php-format msgid "Updated cron job for %s" msgstr "" -#: src/etc/inc/services.inc:2726 +#: src/etc/inc/services.inc:2730 #, php-format msgid "Removed cron job for %s" msgstr "" @@ -3994,6 +4011,7 @@ msgstr "" #: src/etc/inc/shaper.inc:2812 src/etc/inc/shaper.inc:2964 #: src/etc/inc/shaper.inc:3113 src/etc/inc/shaper.inc:3340 #: src/etc/inc/shaper.inc:3926 src/usr/local/www/interfaces_ppps_edit.php:889 +#: src/usr/local/www/status_queues.php:195 #: src/usr/local/www/status_queues.php:199 msgid "Bandwidth" msgstr "" @@ -4044,23 +4062,23 @@ msgstr "" #: src/usr/local/www/firewall_nat_npt.php:271 #: src/usr/local/www/firewall_nat_out.php:535 #: src/usr/local/www/firewall_nat_out_edit.php:444 -#: src/usr/local/www/firewall_rules.php:727 -#: src/usr/local/www/firewall_rules.php:811 -#: src/usr/local/www/interfaces.php:1712 +#: src/usr/local/www/firewall_rules.php:758 +#: src/usr/local/www/firewall_rules.php:842 +#: src/usr/local/www/interfaces.php:1713 #: src/usr/local/www/interfaces_assign.php:597 #: src/usr/local/www/interfaces_qinq_edit.php:261 #: src/usr/local/www/load_balancer_monitor_edit.php:295 #: src/usr/local/www/load_balancer_pool_edit.php:340 #: src/usr/local/www/pkg_edit.php:622 #: src/usr/local/www/services_captiveportal_hostname_edit.php:204 -#: src/usr/local/www/services_dhcp.php:752 +#: src/usr/local/www/services_dhcp.php:754 #: src/usr/local/www/services_dhcpv6.php:521 #: src/usr/local/www/services_igmpproxy.php:172 #: src/usr/local/www/services_igmpproxy.php:174 -#: src/usr/local/www/services_router_advertisements.php:274 +#: src/usr/local/www/services_router_advertisements.php:276 #: src/usr/local/www/status_lb_pool.php:279 #: src/usr/local/www/status_lb_pool.php:281 -#: src/usr/local/www/status_logs_common.inc:913 +#: src/usr/local/www/status_logs_common.inc:961 #: src/usr/local/www/status_logs_settings.php:248 #: src/usr/local/www/system_advanced_sysctl.php:139 #: src/usr/local/www/system_camanager.php:380 @@ -4069,6 +4087,10 @@ msgstr "" #: src/usr/local/www/system_crlmanager.php:376 #: src/usr/local/www/system_usermanager_settings_ldapacpicker.php:157 #: src/usr/local/www/vpn_l2tp.php:238 +#: src/usr/local/www/widgets/widgets/log.widget.php:297 +#: src/usr/local/www/widgets/widgets/rss.widget.php:190 +#: src/usr/local/www/widgets/widgets/services_status.widget.php:148 +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:198 msgid "Save" msgstr "" @@ -4244,15 +4266,15 @@ msgstr "" #: src/usr/local/www/firewall_nat_out.php:319 #: src/usr/local/www/firewall_nat_out.php:567 #: src/usr/local/www/firewall_nat_out_edit.php:641 -#: src/usr/local/www/firewall_rules.php:303 +#: src/usr/local/www/firewall_rules.php:321 #: src/usr/local/www/firewall_rules_edit.php:1372 #: src/usr/local/www/firewall_schedule.php:128 #: src/usr/local/www/firewall_schedule_edit.php:409 #: src/usr/local/www/firewall_schedule_edit.php:649 #: src/usr/local/www/firewall_virtual_ip.php:298 #: src/usr/local/www/firewall_virtual_ip_edit.php:466 -#: src/usr/local/www/guiconfig.inc:1114 src/usr/local/www/interfaces.php:1727 -#: src/usr/local/www/interfaces.php:1881 src/usr/local/www/interfaces.php:3181 +#: src/usr/local/www/guiconfig.inc:1080 src/usr/local/www/interfaces.php:1728 +#: src/usr/local/www/interfaces.php:1882 src/usr/local/www/interfaces.php:3182 #: src/usr/local/www/interfaces_bridge.php:138 #: src/usr/local/www/interfaces_bridge_edit.php:384 #: src/usr/local/www/interfaces_gif.php:133 @@ -4283,10 +4305,10 @@ msgstr "" #: src/usr/local/www/services_captiveportal_ip.php:145 #: src/usr/local/www/services_captiveportal_mac.php:210 #: src/usr/local/www/services_captiveportal_zones.php:115 -#: src/usr/local/www/services_dhcp.php:660 -#: src/usr/local/www/services_dhcp.php:1286 +#: src/usr/local/www/services_dhcp.php:662 +#: src/usr/local/www/services_dhcp.php:1296 #: src/usr/local/www/services_dhcp_edit.php:483 -#: src/usr/local/www/services_dhcpv6.php:898 +#: src/usr/local/www/services_dhcpv6.php:899 #: src/usr/local/www/services_dhcpv6_edit.php:257 #: src/usr/local/www/services_dnsmasq.php:370 #: src/usr/local/www/services_dnsmasq.php:451 @@ -4298,14 +4320,14 @@ msgstr "" #: src/usr/local/www/services_igmpproxy.php:124 #: src/usr/local/www/services_igmpproxy_edit.php:195 #: src/usr/local/www/services_pppoe.php:140 -#: src/usr/local/www/services_pppoe_edit.php:371 +#: src/usr/local/www/services_pppoe_edit.php:383 #: src/usr/local/www/services_rfc2136.php:117 #: src/usr/local/www/services_rfc2136_edit.php:303 #: src/usr/local/www/services_unbound.php:428 #: src/usr/local/www/services_unbound.php:504 -#: src/usr/local/www/services_unbound_acls.php:267 -#: src/usr/local/www/services_unbound_acls.php:293 -#: src/usr/local/www/services_unbound_acls.php:325 +#: src/usr/local/www/services_unbound_acls.php:266 +#: src/usr/local/www/services_unbound_acls.php:292 +#: src/usr/local/www/services_unbound_acls.php:324 #: src/usr/local/www/services_unbound_domainoverride_edit.php:169 #: src/usr/local/www/services_unbound_host_edit.php:270 #: src/usr/local/www/services_unbound_host_edit.php:319 @@ -4313,6 +4335,7 @@ msgstr "" #: src/usr/local/www/services_wol_edit.php:173 #: src/usr/local/www/status_gateway_groups.php:104 #: src/usr/local/www/status_gateways.php:105 +#: src/usr/local/www/status_graph.php:196 #: src/usr/local/www/status_ipsec.php:132 #: src/usr/local/www/status_lb_pool.php:171 #: src/usr/local/www/status_lb_vs.php:105 @@ -4321,8 +4344,8 @@ msgstr "" #: src/usr/local/www/system_advanced_sysctl.php:202 #: src/usr/local/www/system_advanced_sysctl.php:259 #: src/usr/local/www/system_gateway_groups.php:153 -#: src/usr/local/www/system_gateway_groups_edit.php:307 -#: src/usr/local/www/system_gateway_groups_edit.php:341 +#: src/usr/local/www/system_gateway_groups_edit.php:308 +#: src/usr/local/www/system_gateway_groups_edit.php:342 #: src/usr/local/www/system_gateways.php:279 #: src/usr/local/www/system_gateways_edit.php:757 #: src/usr/local/www/system_groupmanager.php:238 @@ -4339,6 +4362,9 @@ msgstr "" #: src/usr/local/www/vpn_openvpn_csc.php:667 #: src/usr/local/www/vpn_openvpn_server.php:690 #: src/usr/local/www/vpn_openvpn_server.php:1198 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:235 +#: src/usr/local/www/widgets/widgets/load_balancer_status.widget.php:95 +#: src/usr/local/www/widgets/widgets/services_status.widget.php:91 msgid "Description" msgstr "" @@ -4521,7 +4547,7 @@ msgstr "" #: src/usr/local/www/diag_gmirror.php:297 src/usr/local/www/diag_tables.php:233 #: src/usr/local/www/load_balancer_pool_edit.php:461 #: src/usr/local/www/load_balancer_pool_edit.php:466 -#: src/usr/local/www/pkg_mgr_installed.php:188 +#: src/usr/local/www/pkg_mgr_installed.php:213 #: src/usr/local/www/widgets/widgets/installed_packages.widget.php:154 msgid "Remove" msgstr "" @@ -4536,26 +4562,36 @@ msgstr "" #: src/etc/inc/shaper.inc:3884 src/etc/inc/shaper.inc:4206 #: src/usr/local/www/firewall_nat_1to1_edit.php:524 -#: src/usr/local/www/firewall_rules.php:668 -#: src/usr/local/www/interfaces.php:1719 src/usr/local/www/interfaces.php:2979 +#: src/usr/local/www/firewall_rules.php:699 +#: src/usr/local/www/interfaces.php:1720 src/usr/local/www/interfaces.php:2980 #: src/usr/local/www/services_captiveportal.php:576 #: src/usr/local/www/services_captiveportal_vouchers.php:514 -#: src/usr/local/www/services_dhcp.php:760 -#: src/usr/local/www/services_dhcp.php:1118 +#: src/usr/local/www/services_dhcp.php:762 +#: src/usr/local/www/services_dhcp.php:1212 #: src/usr/local/www/services_dhcp_relay.php:178 #: src/usr/local/www/services_dhcpv6_relay.php:176 #: src/usr/local/www/services_dnsmasq.php:237 -#: src/usr/local/www/services_pppoe_edit.php:327 +#: src/usr/local/www/services_pppoe_edit.php:332 #: src/usr/local/www/services_rfc2136_edit.php:177 #: src/usr/local/www/services_snmp.php:229 #: src/usr/local/www/services_snmp.php:272 #: src/usr/local/www/services_unbound.php:280 #: src/usr/local/www/system_gateways.php:329 -#: src/usr/local/www/system_routes.php:312 src/usr/local/www/vpn_l2tp.php:245 -#: src/usr/local/www/vpn_l2tp.php:331 src/usr/local/www/diag_routes.php:114 +#: src/usr/local/www/system_routes.php:312 +#: src/usr/local/www/vpn_ipsec_phase1.php:868 +#: src/usr/local/www/vpn_l2tp.php:245 src/usr/local/www/vpn_l2tp.php:331 +#: src/usr/local/www/diag_routes.php:114 msgid "Enable" msgstr "" +#: src/etc/inc/shaper.inc:3937 src/etc/inc/shaper.inc:4241 +msgid "Source addresses" +msgstr "" + +#: src/etc/inc/shaper.inc:3937 src/etc/inc/shaper.inc:4241 +msgid "Destination addresses" +msgstr "" + #: src/etc/inc/shaper.inc:3935 src/etc/inc/shaper.inc:4239 msgid "Mask" msgstr "" @@ -4603,7 +4639,7 @@ msgstr "" #: src/usr/local/www/services_unbound_domainoverride_edit.php:172 #: src/usr/local/www/services_unbound_host_edit.php:273 #: src/usr/local/www/services_wol_edit.php:176 -#: src/usr/local/www/system_gateway_groups_edit.php:344 +#: src/usr/local/www/system_gateway_groups_edit.php:345 #: src/usr/local/www/system_gateways_edit.php:760 #: src/usr/local/www/system_routes_edit.php:309 #: src/usr/local/www/vpn_ipsec_phase1.php:706 @@ -5067,53 +5103,53 @@ msgstr "" msgid "Error: Cannot write IPsec CA file for %s" msgstr "" -#: src/etc/inc/vpn.inc:1516 +#: src/etc/inc/vpn.inc:1520 #, php-format msgid "Ignoring IPsec reload since there are no tunnels on interface %s" msgstr "" -#: src/etc/inc/vpn.inc:1523 +#: src/etc/inc/vpn.inc:1526 msgid "Forcefully reloading IPsec" msgstr "" -#: src/etc/inc/vpn.inc:1574 +#: src/etc/inc/vpn.inc:1576 msgid "Configuring PPPoE Server service... " msgstr "" -#: src/etc/inc/vpn.inc:1599 +#: src/etc/inc/vpn.inc:1601 #, php-format msgid "Error: cannot open mpd.conf in vpn_pppoe_configure()." msgstr "" -#: src/etc/inc/vpn.inc:1713 +#: src/etc/inc/vpn.inc:1720 #, php-format msgid "Error: cannot open mpd.links in vpn_pppoe_configure()." msgstr "" -#: src/etc/inc/vpn.inc:1740 +#: src/etc/inc/vpn.inc:1747 #, php-format msgid "Error: cannot open mpd.secret in vpn_pppoe_configure()." msgstr "" -#: src/etc/inc/vpn.inc:1774 +#: src/etc/inc/vpn.inc:1781 msgid "done" msgstr "" -#: src/etc/inc/vpn.inc:1796 +#: src/etc/inc/vpn.inc:1803 msgid "Configuring l2tp VPN service... " msgstr "" -#: src/etc/inc/vpn.inc:1835 +#: src/etc/inc/vpn.inc:1842 #, php-format msgid "Error: cannot open mpd.conf in vpn_l2tp_configure()." msgstr "" -#: src/etc/inc/vpn.inc:1938 +#: src/etc/inc/vpn.inc:1945 #, php-format msgid "Error: cannot open mpd.links in vpn_l2tp_configure()." msgstr "" -#: src/etc/inc/vpn.inc:1965 +#: src/etc/inc/vpn.inc:1972 #, php-format msgid "Error: cannot open mpd.secret in vpn_l2tp_configure()." msgstr "" @@ -5361,7 +5397,7 @@ msgstr "" #: src/usr/local/www/crash_reporter.php:165 #: src/usr/local/www/diag_defaults.php:77 -#: src/usr/local/www/diag_defaults.php:105 src/usr/local/www/pkg.php:498 +#: src/usr/local/www/diag_defaults.php:105 src/usr/local/www/pkg.php:508 msgid "Yes" msgstr "" @@ -5372,8 +5408,8 @@ msgstr "" #: src/usr/local/www/crash_reporter.php:166 #: src/usr/local/www/diag_defaults.php:68 #: src/usr/local/www/diag_defaults.php:106 src/usr/local/www/diag_halt.php:108 -#: src/usr/local/www/diag_pf_info.php:67 src/usr/local/www/diag_reboot.php:143 -#: src/usr/local/www/pkg.php:496 +#: src/usr/local/www/diag_pf_info.php:67 src/usr/local/www/diag_reboot.php:147 +#: src/usr/local/www/pkg.php:506 msgid "No" msgstr "" @@ -5393,7 +5429,7 @@ msgstr "" #: src/usr/local/www/diag_arp.php:344 #: src/usr/local/www/diag_dump_states.php:172 #: src/usr/local/www/diag_ndp.php:143 -#: src/usr/local/www/diag_packet_capture.php:295 +#: src/usr/local/www/diag_packet_capture.php:297 #: src/usr/local/www/firewall_nat.php:212 #: src/usr/local/www/firewall_nat_1to1.php:183 #: src/usr/local/www/firewall_nat_1to1_edit.php:152 @@ -5429,7 +5465,7 @@ msgstr "" #: src/usr/local/www/services_igmpproxy_edit.php:188 #: src/usr/local/www/services_ntpd.php:292 #: src/usr/local/www/services_pppoe.php:137 -#: src/usr/local/www/services_pppoe_edit.php:335 +#: src/usr/local/www/services_pppoe_edit.php:340 #: src/usr/local/www/services_rfc2136.php:113 #: src/usr/local/www/services_rfc2136_edit.php:191 #: src/usr/local/www/services_wol.php:173 @@ -5438,11 +5474,11 @@ msgstr "" #: src/usr/local/www/services_wol_edit.php:159 #: src/usr/local/www/status_dhcp_leases.php:467 #: src/usr/local/www/status_graph.php:166 -#: src/usr/local/www/status_logs_common.inc:444 -#: src/usr/local/www/status_logs_common.inc:476 -#: src/usr/local/www/status_logs_common.inc:479 -#: src/usr/local/www/status_logs_filter.php:194 -#: src/usr/local/www/status_logs_filter_dynamic.php:417 +#: src/usr/local/www/status_logs_common.inc:492 +#: src/usr/local/www/status_logs_common.inc:524 +#: src/usr/local/www/status_logs_common.inc:527 +#: src/usr/local/www/status_logs_filter.php:184 +#: src/usr/local/www/status_logs_filter_dynamic.php:419 #: src/usr/local/www/system_gateways.php:276 #: src/usr/local/www/system_gateways_edit.php:141 #: src/usr/local/www/system_gateways_edit.php:680 @@ -5458,7 +5494,7 @@ msgstr "" #: src/usr/local/www/diag_arp.php:346 src/usr/local/www/diag_ndp.php:141 #: src/usr/local/www/services_captiveportal_mac.php:209 #: src/usr/local/www/services_captiveportal_mac_edit.php:131 -#: src/usr/local/www/services_dhcp.php:1283 +#: src/usr/local/www/services_dhcp.php:1293 #: src/usr/local/www/services_wol.php:180 #: src/usr/local/www/services_wol.php:201 #: src/usr/local/www/services_wol_edit.php:106 @@ -5466,6 +5502,7 @@ msgstr "" #: src/usr/local/www/status_captiveportal.php:179 #: src/usr/local/www/status_dhcp_leases.php:371 #: src/usr/local/www/status_dhcpv6_leases.php:446 +#: src/usr/local/www/widgets/widgets/captive_portal_status.widget.php:134 msgid "MAC address" msgstr "" @@ -5473,12 +5510,12 @@ msgstr "" #: src/usr/local/www/diag_ndp.php:142 src/usr/local/www/diag_ping.php:176 #: src/usr/local/www/diag_testport.php:255 #: src/usr/local/www/diag_traceroute.php:164 -#: src/usr/local/www/interfaces.php:1931 +#: src/usr/local/www/interfaces.php:1932 #: src/usr/local/www/services_captiveportal_hostname.php:150 #: src/usr/local/www/services_captiveportal_hostname_edit.php:219 -#: src/usr/local/www/services_dhcp.php:1285 +#: src/usr/local/www/services_dhcp.php:1295 #: src/usr/local/www/services_dhcp_edit.php:460 -#: src/usr/local/www/services_dhcpv6.php:897 +#: src/usr/local/www/services_dhcpv6.php:898 #: src/usr/local/www/services_dhcpv6_edit.php:250 #: src/usr/local/www/services_dyndns.php:117 #: src/usr/local/www/services_dyndns_edit.php:127 @@ -5493,15 +5530,15 @@ msgstr "" msgid "Hostname" msgstr "" -#: src/usr/local/www/diag_arp.php:388 +#: src/usr/local/www/diag_arp.php:389 msgid "Local IPv6 peers use " msgstr "" -#: src/usr/local/www/diag_arp.php:388 +#: src/usr/local/www/diag_arp.php:389 msgid "NDP" msgstr "" -#: src/usr/local/www/diag_arp.php:388 +#: src/usr/local/www/diag_arp.php:389 msgid " instead of ARP" msgstr "" @@ -5514,11 +5551,12 @@ msgid "A username and password must be specified." msgstr "" #: src/usr/local/www/diag_authentication.php:82 -#: src/usr/local/www/status_logs_vpn.php:182 -#: src/usr/local/www/status_logs_vpn.php:420 +#: src/usr/local/www/status_logs_vpn.php:172 +#: src/usr/local/www/status_logs_vpn.php:416 #: src/usr/local/www/system_usermanager.php:121 #: src/usr/local/www/vpn_l2tp_users_edit.php:63 #: src/usr/local/www/vpn_l2tp_users_edit.php:185 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:250 #: src/usr/local/www/services_rfc2136_edit.php:238 msgid "User" msgstr "" @@ -5535,7 +5573,8 @@ msgstr "" msgid "Authentication failed." msgstr "" -#: src/usr/local/www/diag_authentication.php:103 src/usr/local/www/head.inc:322 +#: src/usr/local/www/diag_authentication.php:103 +#: src/usr/local/www/guiconfig.inc:189 src/usr/local/www/head.inc:322 #: src/usr/local/www/services_captiveportal.php:718 msgid "Authentication" msgstr "" @@ -5555,8 +5594,8 @@ msgid "Select the authentication server to test against" msgstr "" #: src/usr/local/www/diag_authentication.php:134 -#: src/usr/local/www/interfaces.php:2484 src/usr/local/www/interfaces.php:2550 -#: src/usr/local/www/interfaces.php:2681 +#: src/usr/local/www/interfaces.php:2485 src/usr/local/www/interfaces.php:2551 +#: src/usr/local/www/interfaces.php:2682 #: src/usr/local/www/interfaces_ppps_edit.php:238 #: src/usr/local/www/interfaces_ppps_edit.php:241 #: src/usr/local/www/interfaces_ppps_edit.php:249 @@ -5564,7 +5603,7 @@ msgstr "" #: src/usr/local/www/interfaces_ppps_edit.php:603 #: src/usr/local/www/services_dyndns_edit.php:131 #: src/usr/local/www/services_dyndns_edit.php:352 -#: src/usr/local/www/services_pppoe_edit.php:528 +#: src/usr/local/www/services_pppoe_edit.php:540 #: src/usr/local/www/status_captiveportal.php:182 #: src/usr/local/www/system_usermanager.php:182 #: src/usr/local/www/system_usermanager.php:187 @@ -5583,8 +5622,8 @@ msgstr "" #: src/usr/local/www/diag_authentication.php:142 #: src/usr/local/www/diag_backup.php:658 src/usr/local/www/diag_backup.php:702 -#: src/usr/local/www/interfaces.php:2491 src/usr/local/www/interfaces.php:2557 -#: src/usr/local/www/interfaces.php:2688 +#: src/usr/local/www/interfaces.php:2492 src/usr/local/www/interfaces.php:2558 +#: src/usr/local/www/interfaces.php:2689 #: src/usr/local/www/interfaces_ppps_edit.php:238 #: src/usr/local/www/interfaces_ppps_edit.php:241 #: src/usr/local/www/interfaces_ppps_edit.php:249 @@ -5592,7 +5631,7 @@ msgstr "" #: src/usr/local/www/interfaces_ppps_edit.php:610 #: src/usr/local/www/services_dyndns_edit.php:129 #: src/usr/local/www/services_dyndns_edit.php:362 -#: src/usr/local/www/services_pppoe_edit.php:535 +#: src/usr/local/www/services_pppoe_edit.php:547 #: src/usr/local/www/system_advanced_notifications.php:275 #: src/usr/local/www/system_authservers.php:613 #: src/usr/local/www/system_usermanager.php:188 @@ -5608,6 +5647,21 @@ msgstr "" msgid "Password" msgstr "" +#: src/usr/local/www/diag_backup.php:111 src/usr/local/www/diag_backup.php:126 +#, php-format +msgid "Cannot write %s" +msgstr "" + +#: src/usr/local/www/diag_backup.php:135 src/usr/local/www/diag_backup.php:141 +#, php-format +msgid "fwrite %s failed" +msgstr "" + +#: src/usr/local/www/diag_backup.php:146 +#, php-format +msgid "fclose %s failed" +msgstr "" + #: src/usr/local/www/diag_backup.php:180 msgid "Restored base_package menus after configuration restore." msgstr "" @@ -5617,7 +5671,7 @@ msgid "Restore configuration" msgstr "" #: src/usr/local/www/diag_backup.php:210 -#: src/usr/local/www/pkg_mgr_installed.php:192 +#: src/usr/local/www/pkg_mgr_installed.php:215 #: src/usr/local/www/widgets/widgets/installed_packages.widget.php:159 msgid "Reinstall" msgstr "" @@ -5676,6 +5730,10 @@ msgid "" "a %s tag." msgstr "" +#: src/usr/local/www/diag_backup.php:373 +msgid "Restore serial console enabling in configuration." +msgstr "" + #: src/usr/local/www/diag_backup.php:487 msgid "The m0n0wall configuration has been restored and upgraded to pfSense." msgstr "" @@ -5711,7 +5769,7 @@ msgid "Captive Portal Vouchers" msgstr "" #: src/usr/local/www/diag_backup.php:561 src/usr/local/www/head.inc:247 -#: src/usr/local/www/services_dhcp.php:696 +#: src/usr/local/www/services_dhcp.php:698 #: src/usr/local/www/status_rrd_graph.php:468 #: src/usr/local/www/status_rrd_graph_settings.php:177 msgid "DHCP Server" @@ -5721,7 +5779,7 @@ msgstr "" #: src/usr/local/www/services_dhcpv6.php:439 #: src/usr/local/www/services_dhcpv6.php:515 #: src/usr/local/www/services_dhcpv6.php:528 -#: src/usr/local/www/services_router_advertisements.php:268 +#: src/usr/local/www/services_router_advertisements.php:270 msgid "DHCPv6 Server" msgstr "" @@ -5731,7 +5789,7 @@ msgstr "" #: src/usr/local/www/diag_backup.php:564 #: src/usr/local/www/firewall_shaper.php:75 src/usr/local/www/head.inc:285 -#: src/usr/local/www/interfaces.php:1643 +#: src/usr/local/www/interfaces.php:1644 #: src/usr/local/www/interfaces_assign.php:67 #: src/usr/local/www/interfaces_bridge.php:109 #: src/usr/local/www/interfaces_bridge_edit.php:360 @@ -5756,6 +5814,7 @@ msgstr "" #: src/usr/local/www/services_dnsmasq.php:319 #: src/usr/local/www/status_interfaces.php:108 #: src/usr/local/www/status_logs_filter_summary.php:118 +#: src/usr/local/www/widgets/include/interfaces.inc:3 msgid "Interfaces" msgstr "" @@ -5828,11 +5887,13 @@ msgstr "" #: src/usr/local/www/system_hasync.php:131 #: src/usr/local/www/system_routes.php:245 #: src/usr/local/www/system_routes_edit.php:257 -#: src/usr/local/www/system_update_settings.php:106 +#: src/usr/local/www/system_update_settings.php:99 #: src/usr/local/www/system_usermanager.php:72 #: src/usr/local/www/system_usermanager_addprivs.php:70 #: src/usr/local/www/system_usermanager_passwordmg.php:67 #: src/usr/local/www/system_usermanager_settings.php:75 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:183 +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:277 msgid "System" msgstr "" @@ -5870,7 +5931,10 @@ msgstr "" #: src/usr/local/www/diag_backup.php:581 #: src/usr/local/www/firewall_aliases.php:188 -#: src/usr/local/www/diag_smart.php:346 +#: src/usr/local/www/pkg_edit.php:1196 +#: src/usr/local/www/services_ntpd_gps.php:205 +#: src/usr/local/www/services_unbound.php:233 +#: src/usr/local/www/status_graph.php:185 src/usr/local/www/diag_smart.php:346 msgid "All" msgstr "" @@ -5961,6 +6025,15 @@ msgid "" "properly after an upgrade." msgstr "" +#: src/usr/local/www/diag_confbak.php:72 +msgid "(platform default)" +msgstr "" + +#: src/usr/local/www/diag_confbak.php:74 +#, php-format +msgid "Changed backup revision count to %s" +msgstr "" + #: src/usr/local/www/diag_confbak.php:86 #, php-format msgid "Successfully reverted to timestamp %1$s with description \"%2$s\"." @@ -6039,7 +6112,7 @@ msgid "Version" msgstr "" #: src/usr/local/www/diag_confbak.php:241 -#: src/usr/local/www/diag_gmirror.php:332 +#: src/usr/local/www/diag_gmirror.php:332 src/usr/local/www/diag_pftop.php:159 #: src/usr/local/www/services_captiveportal_filemanager.php:219 msgid "Size" msgstr "" @@ -6054,7 +6127,7 @@ msgstr "" #: src/usr/local/www/firewall_nat_1to1.php:188 #: src/usr/local/www/firewall_nat_npt.php:187 #: src/usr/local/www/firewall_nat_out.php:320 -#: src/usr/local/www/firewall_rules.php:304 +#: src/usr/local/www/firewall_rules.php:322 #: src/usr/local/www/firewall_schedule.php:129 #: src/usr/local/www/firewall_virtual_ip.php:299 #: src/usr/local/www/interfaces_bridge.php:139 @@ -6075,7 +6148,7 @@ msgstr "" #: src/usr/local/www/services_igmpproxy.php:125 #: src/usr/local/www/services_pppoe.php:141 #: src/usr/local/www/services_rfc2136.php:118 -#: src/usr/local/www/services_unbound_acls.php:326 +#: src/usr/local/www/services_unbound_acls.php:325 #: src/usr/local/www/services_wol.php:203 #: src/usr/local/www/status_dhcp_leases.php:377 #: src/usr/local/www/status_dhcpv6_leases.php:452 @@ -6083,13 +6156,13 @@ msgstr "" #: src/usr/local/www/status_services.php:133 #: src/usr/local/www/system_authservers.php:408 #: src/usr/local/www/system_camanager.php:394 -#: src/usr/local/www/system_certmanager.php:1008 +#: src/usr/local/www/system_certmanager.php:1009 #: src/usr/local/www/system_gateway_groups.php:154 #: src/usr/local/www/system_gateways.php:280 #: src/usr/local/www/system_groupmanager.php:290 #: src/usr/local/www/system_routes.php:279 #: src/usr/local/www/system_usermanager.php:499 -#: src/usr/local/www/vpn_ipsec.php:291 src/usr/local/www/vpn_ipsec_keys.php:141 +#: src/usr/local/www/vpn_ipsec.php:290 src/usr/local/www/vpn_ipsec_keys.php:141 #: src/usr/local/www/vpn_l2tp_users.php:131 #: src/usr/local/www/vpn_openvpn_client.php:802 #: src/usr/local/www/vpn_openvpn_csc.php:668 @@ -6103,6 +6176,7 @@ msgid "Current configuration" msgstr "" #: src/usr/local/www/diag_confbak.php:266 +#: src/usr/local/www/pkg_mgr_installed.php:149 #: src/usr/local/www/status_ipsec.php:172 #: src/usr/local/www/status_ipsec.php:182 #: src/usr/local/www/status_ipsec.php:213 @@ -6114,6 +6188,8 @@ msgstr "" #: src/usr/local/www/status_ipsec.php:456 #: src/usr/local/www/status_ipsec.php:466 #: src/usr/local/www/widgets/widgets/gateways.widget.php:254 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:132 +#: src/usr/local/www/widgets/widgets/smart_status.widget.php:93 msgid "Unknown" msgstr "" @@ -6197,6 +6273,10 @@ msgstr "" msgid "DNS Lookup" msgstr "" +#: src/usr/local/www/diag_dns.php:114 +msgid "Created from Diagnostics-> DNS Lookup" +msgstr "" + #: src/usr/local/www/diag_dns.php:135 msgid "Host must be a valid hostname or IP address." msgstr "" @@ -6210,7 +6290,7 @@ msgid "No record found" msgstr "" #: src/usr/local/www/diag_dns.php:193 src/usr/local/www/diag_tables.php:218 -#: src/usr/local/www/interfaces.php:3053 src/usr/local/www/interfaces.php:3077 +#: src/usr/local/www/interfaces.php:3054 src/usr/local/www/interfaces.php:3078 #: src/usr/local/www/interfaces_ppps_edit.php:626 #: src/usr/local/www/load_balancer_pool_edit.php:412 #: src/usr/local/www/load_balancer_virtual_server.php:156 @@ -6221,20 +6301,21 @@ msgstr "" #: src/usr/local/www/services_dhcp_edit.php:453 #: src/usr/local/www/services_dnsmasq_domainoverride_edit.php:175 #: src/usr/local/www/services_dnsmasq_edit.php:262 -#: src/usr/local/www/services_pppoe_edit.php:437 -#: src/usr/local/www/services_pppoe_edit.php:470 -#: src/usr/local/www/services_pppoe_edit.php:541 +#: src/usr/local/www/services_pppoe_edit.php:449 +#: src/usr/local/www/services_pppoe_edit.php:482 +#: src/usr/local/www/services_pppoe_edit.php:553 #: src/usr/local/www/services_unbound_domainoverride_edit.php:162 #: src/usr/local/www/services_unbound_host_edit.php:263 -#: src/usr/local/www/status_logs_vpn.php:183 -#: src/usr/local/www/status_logs_vpn.php:427 +#: src/usr/local/www/status_graph.php:194 +#: src/usr/local/www/status_logs_vpn.php:173 +#: src/usr/local/www/status_logs_vpn.php:423 #: src/usr/local/www/system_advanced_notifications.php:267 #: src/usr/local/www/vpn_ipsec_phase2.php:714 #: src/usr/local/www/vpn_l2tp_users_edit.php:209 msgid "IP Address" msgstr "" -#: src/usr/local/www/diag_dns.php:194 +#: src/usr/local/www/diag_dns.php:194 src/usr/local/www/status_graph.php:195 #: src/usr/local/www/system_authservers.php:407 msgid "Host Name" msgstr "" @@ -6248,6 +6329,7 @@ msgstr "" #: src/usr/local/www/vpn_openvpn_csc.php:322 #: src/usr/local/www/vpn_openvpn_server.php:592 #: src/usr/local/www/vpn_openvpn_server.php:610 +#: src/usr/local/www/widgets/widgets/load_balancer_status.widget.php:93 msgid "Server" msgstr "" @@ -6322,7 +6404,7 @@ msgstr "" #: src/usr/local/www/diag_dump_states.php:124 #: src/usr/local/www/diag_dump_states.php:166 #: src/usr/local/www/diag_dump_states_sources.php:91 -#: src/usr/local/www/diag_resetstate.php:116 +#: src/usr/local/www/diag_resetstate.php:113 #: src/usr/local/www/diag_states_summary.php:181 #: src/usr/local/www/diag_states_summary.php:183 src/usr/local/www/head.inc:345 msgid "States" @@ -6330,14 +6412,14 @@ msgstr "" #: src/usr/local/www/diag_dump_states.php:126 #: src/usr/local/www/diag_dump_states_sources.php:92 -#: src/usr/local/www/diag_resetstate.php:119 -#: src/usr/local/www/diag_resetstate.php:146 +#: src/usr/local/www/diag_resetstate.php:116 +#: src/usr/local/www/diag_resetstate.php:143 msgid "Source Tracking" msgstr "" #: src/usr/local/www/diag_dump_states.php:128 #: src/usr/local/www/diag_dump_states_sources.php:93 -#: src/usr/local/www/diag_resetstate.php:122 +#: src/usr/local/www/diag_resetstate.php:119 msgid "Reset States" msgstr "" @@ -6368,7 +6450,7 @@ msgid "Remove all states to and from the filtered address" msgstr "" #: src/usr/local/www/diag_dump_states.php:173 -#: src/usr/local/www/diag_packet_capture.php:321 +#: src/usr/local/www/diag_packet_capture.php:323 #: src/usr/local/www/diag_states_summary.php:182 #: src/usr/local/www/firewall_nat.php:213 #: src/usr/local/www/firewall_nat_edit.php:245 @@ -6376,7 +6458,7 @@ msgstr "" #: src/usr/local/www/firewall_nat_edit.php:713 #: src/usr/local/www/firewall_nat_out_edit.php:181 #: src/usr/local/www/firewall_nat_out_edit.php:502 -#: src/usr/local/www/firewall_rules.php:295 +#: src/usr/local/www/firewall_rules.php:313 #: src/usr/local/www/firewall_rules_edit.php:432 #: src/usr/local/www/firewall_rules_edit.php:1189 #: src/usr/local/www/interfaces_bridge_edit.php:513 @@ -6384,9 +6466,9 @@ msgstr "" #: src/usr/local/www/services_rfc2136_edit.php:261 #: src/usr/local/www/status_ipsec_sad.php:100 #: src/usr/local/www/status_ipsec_spd.php:94 -#: src/usr/local/www/status_logs_common.inc:417 -#: src/usr/local/www/status_logs_filter.php:206 -#: src/usr/local/www/status_logs_filter_dynamic.php:420 +#: src/usr/local/www/status_logs_common.inc:465 +#: src/usr/local/www/status_logs_filter.php:196 +#: src/usr/local/www/status_logs_filter_dynamic.php:422 #: src/usr/local/www/status_upnp.php:104 #: src/usr/local/www/system_advanced_admin.php:340 #: src/usr/local/www/system_advanced_admin.php:344 @@ -6445,6 +6527,7 @@ msgid "# Connections" msgstr "" #: src/usr/local/www/diag_dump_states_sources.php:148 +#: src/usr/local/www/diag_pftop.php:158 #: src/usr/local/www/status_interfaces.php:174 msgid "Rate" msgstr "" @@ -6613,6 +6696,8 @@ msgstr "" #: src/usr/local/www/status_wireless.php:65 #: src/usr/local/www/status_wireless.php:96 #: src/usr/local/www/widgets/widgets/gateways.widget.php:93 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:236 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:252 #: src/usr/local/www/widgets/widgets/wake_on_lan.widget.php:75 msgid "Status" msgstr "" @@ -6681,6 +6766,11 @@ msgstr "" msgid "The system is halting now. This may take one minute or so." msgstr "" +#: src/usr/local/www/diag_halt.php:90 +#, php-format +msgid "Not actually halting (DEBUG is set true)%s" +msgstr "" + #: src/usr/local/www/diag_halt.php:101 msgid "Are you sure you want to halt the system?" msgstr "" @@ -6759,6 +6849,14 @@ msgstr "" msgid "Permanent read/write has been cleared successfully." msgstr "" +#: src/usr/local/www/diag_nanobsd.php:134 +msgid "Changed Permanent Read/Write Setting" +msgstr "" + +#: src/usr/local/www/diag_nanobsd.php:137 +msgid "Saved r/w permanently" +msgstr "" + #: src/usr/local/www/diag_nanobsd.php:142 #: src/usr/local/www/system_advanced_sysctl.php:198 msgid "The options on this page are intended for use by advanced users only." @@ -6863,16 +6961,16 @@ msgstr "" msgid "NDP Table" msgstr "" -#: src/usr/local/www/diag_ndp.php:140 src/usr/local/www/interfaces.php:618 -#: src/usr/local/www/interfaces.php:1832 -#: src/usr/local/www/services_dhcpv6.php:896 +#: src/usr/local/www/diag_ndp.php:140 src/usr/local/www/interfaces.php:619 +#: src/usr/local/www/interfaces.php:1833 +#: src/usr/local/www/services_dhcpv6.php:897 #: src/usr/local/www/services_dhcpv6_edit.php:242 #: src/usr/local/www/status_dhcpv6_leases.php:443 msgid "IPv6 address" msgstr "" #: src/usr/local/www/diag_packet_capture.php:114 -#: src/usr/local/www/diag_packet_capture.php:407 +#: src/usr/local/www/diag_packet_capture.php:409 msgid "Download Capture" msgstr "" @@ -6910,8 +7008,8 @@ msgid "Invalid value specified for packet count." msgstr "" #: src/usr/local/www/diag_packet_capture.php:231 -#: src/usr/local/www/diag_packet_capture.php:390 -#: src/usr/local/www/diag_packet_capture.php:458 +#: src/usr/local/www/diag_packet_capture.php:392 +#: src/usr/local/www/diag_packet_capture.php:460 #: src/usr/local/www/status_dhcp_leases.php:373 #: src/usr/local/www/status_dhcpv6_leases.php:448 #: src/usr/local/www/status_dhcpv6_leases.php:539 @@ -6921,24 +7019,28 @@ msgid "Start" msgstr "" #: src/usr/local/www/diag_packet_capture.php:239 -#: src/usr/local/www/diag_packet_capture.php:387 -#: src/usr/local/www/diag_packet_capture.php:395 +#: src/usr/local/www/diag_packet_capture.php:389 +#: src/usr/local/www/diag_packet_capture.php:397 msgid "Stop" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:291 +#: src/usr/local/www/diag_packet_capture.php:266 +msgid "Exclude" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:293 msgid "Packet Capture Options" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:298 +#: src/usr/local/www/diag_packet_capture.php:300 msgid "Select the interface on which to capture traffic. " msgstr "" -#: src/usr/local/www/diag_packet_capture.php:302 +#: src/usr/local/www/diag_packet_capture.php:304 msgid "Promiscuous" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:305 +#: src/usr/local/www/diag_packet_capture.php:307 msgid "" "Note: Some network adapters do not support or work well in promiscuous mode." "<br />More: <a target=\"_blank\" href=\"http://www.freebsd.org/cgi/man.cgi?" @@ -6946,25 +7048,33 @@ msgid "" "arch=default&format=html\">Packet capture</a>" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:311 +#: src/usr/local/www/diag_packet_capture.php:316 +msgid "IPv4 Only" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:317 +msgid "IPv6 Only" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:313 #: src/usr/local/www/firewall_rules_edit.php:1178 #: src/usr/local/www/system_gateways_edit.php:687 msgid "Address Family" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:317 +#: src/usr/local/www/diag_packet_capture.php:319 msgid "Select the type of traffic to be captured" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:324 +#: src/usr/local/www/diag_packet_capture.php:326 msgid "Select the protocol to capture, or \"Any\". " msgstr "" -#: src/usr/local/www/diag_packet_capture.php:328 +#: src/usr/local/www/diag_packet_capture.php:330 msgid "Host Address" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:331 +#: src/usr/local/www/diag_packet_capture.php:333 msgid "" "This value is either the Source or Destination IP address or subnet in CIDR " "notation. The packet capture will look for this address in either field.<br /" @@ -6975,7 +7085,7 @@ msgid "" "interface will be captured." msgstr "" -#: src/usr/local/www/diag_packet_capture.php:338 +#: src/usr/local/www/diag_packet_capture.php:340 #: src/usr/local/www/diag_testport.php:83 #: src/usr/local/www/diag_testport.php:263 #: src/usr/local/www/firewall_aliases_edit.php:585 @@ -6983,9 +7093,9 @@ msgstr "" #: src/usr/local/www/firewall_nat_out_edit.php:527 #: src/usr/local/www/firewall_nat_out_edit.php:551 #: src/usr/local/www/firewall_nat_out_edit.php:607 -#: src/usr/local/www/firewall_rules.php:297 -#: src/usr/local/www/firewall_rules.php:299 -#: src/usr/local/www/interfaces.php:3059 src/usr/local/www/interfaces.php:3083 +#: src/usr/local/www/firewall_rules.php:315 +#: src/usr/local/www/firewall_rules.php:317 +#: src/usr/local/www/interfaces.php:3060 src/usr/local/www/interfaces.php:3084 #: src/usr/local/www/load_balancer_pool.php:157 #: src/usr/local/www/load_balancer_pool_edit.php:107 #: src/usr/local/www/load_balancer_pool_edit.php:371 @@ -6995,72 +7105,90 @@ msgstr "" msgid "Port" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:341 +#: src/usr/local/www/diag_packet_capture.php:343 msgid "" "The port can be either the source or destination port. The packet capture " "will look for this port in either field. Leave blank if you do not want to " "filter by port." msgstr "" -#: src/usr/local/www/diag_packet_capture.php:346 +#: src/usr/local/www/diag_packet_capture.php:348 msgid "Packet Length" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:349 +#: src/usr/local/www/diag_packet_capture.php:351 msgid "" "The Packet length is the number of bytes of each packet that will be " "captured. Default value is 0, which will capture the entire frame regardless " "of its size." msgstr "" -#: src/usr/local/www/diag_packet_capture.php:354 +#: src/usr/local/www/diag_packet_capture.php:356 #: src/usr/local/www/diag_ping.php:95 #: src/usr/local/www/services_captiveportal_vouchers_edit.php:124 #: src/usr/local/www/services_captiveportal_vouchers_edit.php:235 msgid "Count" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:357 +#: src/usr/local/www/diag_packet_capture.php:359 msgid "" "This is the number of packets the packet capture will grab. Default value is " "100.<br />Enter 0 (zero) for no count limit." msgstr "" -#: src/usr/local/www/diag_packet_capture.php:362 -msgid "Level of detail" +#: src/usr/local/www/diag_packet_capture.php:366 +#: src/usr/local/www/services_router_advertisements.php:141 +msgid "Normal" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:367 +msgid "Medium" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:368 +#: src/usr/local/www/services_router_advertisements.php:142 +msgid "High" msgstr "" #: src/usr/local/www/diag_packet_capture.php:369 +msgid "Full" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:364 +msgid "Level of detail" +msgstr "" + +#: src/usr/local/www/diag_packet_capture.php:371 msgid "" "This is the level of detail that will be displayed after hitting \"Stop\" " "when the packets have been captured.<br />This option does not affect the " "level of detail when downloading the packet capture. " msgstr "" -#: src/usr/local/www/diag_packet_capture.php:374 +#: src/usr/local/www/diag_packet_capture.php:376 msgid "Reverse DNS Lookup" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:377 +#: src/usr/local/www/diag_packet_capture.php:379 msgid "" "This check box will cause the packet capture to perform a reverse DNS lookup " "associated with all IP addresses.<br />This option can cause delays for " "large packet captures." msgstr "" -#: src/usr/local/www/diag_packet_capture.php:402 +#: src/usr/local/www/diag_packet_capture.php:404 msgid "View Capture" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:411 +#: src/usr/local/www/diag_packet_capture.php:413 msgid "Last capture" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:461 +#: src/usr/local/www/diag_packet_capture.php:463 msgid "Packet Capture is running" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:471 +#: src/usr/local/www/diag_packet_capture.php:473 msgid "Packets Captured" msgstr "" @@ -7076,7 +7204,7 @@ msgstr "" msgid "Refresh" msgstr "" -#: src/usr/local/www/diag_pf_info.php:136 src/usr/local/www/diag_pftop.php:195 +#: src/usr/local/www/diag_pf_info.php:136 src/usr/local/www/diag_pftop.php:201 msgid "Output" msgstr "" @@ -7092,23 +7220,115 @@ msgstr "" msgid "pfTop Configuration" msgstr "" -#: src/usr/local/www/diag_pftop.php:134 src/usr/local/www/diag_smart.php:297 +#: src/usr/local/www/diag_pftop.php:128 +#: src/usr/local/www/firewall_rules_edit.php:1555 +#: src/usr/local/www/services_captiveportal.php:988 +msgid "default" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:129 +msgid "label" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:130 +msgid "long" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:131 +msgid "queue" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:132 +msgid "rules" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:133 +msgid "size" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:134 +msgid "speed" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:135 +msgid "state" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:136 +msgid "time" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:140 src/usr/local/www/diag_smart.php:297 #: src/usr/local/www/diag_smart.php:442 msgid "View" msgstr "" -#: src/usr/local/www/diag_pftop.php:141 src/usr/local/www/status_graph.php:176 +#: src/usr/local/www/diag_pftop.php:151 +msgid "Age" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:152 +msgid "Bytes" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:153 +msgid "Destination Address" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:154 +#: src/usr/local/www/firewall_nat_out.php:315 +#: src/usr/local/www/firewall_nat_out.php:563 +#: src/usr/local/www/status_logs_common.inc:499 +msgid "Destination Port" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:155 +msgid "Expiry" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:156 +msgid "Peak" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:157 +msgid "Packet" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:160 src/usr/local/www/diag_testport.php:271 +#: src/usr/local/www/firewall_nat_out.php:313 +#: src/usr/local/www/firewall_nat_out.php:561 +#: src/usr/local/www/status_logs_common.inc:458 +msgid "Source Port" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:161 src/usr/local/www/diag_testport.php:286 +#: src/usr/local/www/diag_traceroute.php:179 +#: src/usr/local/www/firewall_nat.php:214 +#: src/usr/local/www/status_logs_settings.php:355 +msgid "Source Address" +msgstr "" + +#: src/usr/local/www/diag_pftop.php:147 src/usr/local/www/status_graph.php:176 msgid "Sort by" msgstr "" -#: src/usr/local/www/diag_pftop.php:162 +#: src/usr/local/www/diag_pftop.php:168 msgid "Maximum # of States" msgstr "" -#: src/usr/local/www/diag_pftop.php:197 +#: src/usr/local/www/diag_pftop.php:203 msgid "Gathering pfTOP activity, please wait..." msgstr "" +#: src/usr/local/www/diag_ping.php:80 +#: src/usr/local/www/firewall_nat_out_edit.php:590 +#: src/usr/local/www/interfaces.php:1862 src/usr/local/www/interfaces.php:2831 +#: src/usr/local/www/interfaces.php:2840 src/usr/local/www/interfaces.php:2849 +#: src/usr/local/www/interfaces.php:2907 src/usr/local/www/interfaces.php:3162 +#: src/usr/local/www/services_ntpd_gps.php:248 +msgid "Default" +msgstr "" + #: src/usr/local/www/diag_ping.php:95 src/usr/local/www/diag_testport.php:83 #: src/usr/local/www/diag_traceroute.php:100 #: src/usr/local/www/load_balancer_monitor_edit.php:335 @@ -7170,19 +7390,35 @@ msgstr "" msgid "Reboot System" msgstr "" -#: src/usr/local/www/diag_reboot.php:136 -msgid "Are you sure you want to reboot the system?" +#: src/usr/local/www/diag_reboot.php:82 +msgid "Not actually rebooting (DEBUG is set true)" +msgstr "" + +#: src/usr/local/www/diag_reboot.php:112 +#: src/usr/local/www/pkg_mgr_install.php:670 +#, php-format +msgid "Rebooting%sPage will automatically reload in %s seconds" +msgstr "" + +#: src/usr/local/www/diag_reboot.php:120 +#: src/usr/local/www/pkg_mgr_install.php:678 +#, php-format +msgid "Not yet ready%s Retrying in another %s seconds" msgstr "" #: src/usr/local/www/diag_reboot.php:140 +msgid "Are you sure you want to reboot the system?" +msgstr "" + +#: src/usr/local/www/diag_reboot.php:144 msgid "" "Click \"Reboot\" to reboot the system immediately, or \"No\" to go to the " "system dashboard without rebooting. (There will be a brief delay before the " "dashboard appears.)" msgstr "" -#: src/usr/local/www/diag_reboot.php:142 src/usr/local/www/head.inc:341 -#: src/usr/local/www/interfaces.php:1980 +#: src/usr/local/www/diag_reboot.php:146 src/usr/local/www/head.inc:341 +#: src/usr/local/www/interfaces.php:1981 msgid "Reboot" msgstr "" @@ -7198,17 +7434,39 @@ msgstr "" msgid "Reset state" msgstr "" -#: src/usr/local/www/diag_resetstate.php:127 +#: src/usr/local/www/diag_resetstate.php:100 +#, php-format +msgid "" +"Resetting the state tables will remove all entries from the corresponding " +"tables. This means that all open connections will be broken and will have to " +"be re-established. This may be necessary after making substantial changes to " +"the firewall and/or NAT rules, especially if there are IP protocol mappings " +"(e.g. for PPTP or IPv6) with open connections.%sThe firewall will normally " +"leave the state tables intact when changing rules.%s%sNOTE:%s If you reset " +"the firewall state table, the browser session may appear to be hung after " +"clicking "Reset". Simply refresh the page to continue." +msgstr "" + +#: src/usr/local/www/diag_resetstate.php:107 +#, php-format +msgid "" +"Resetting the source tracking table will remove all source/destination " +"associations. This means that the \\\"sticky\\\" source/destination " +"association will be cleared for all clients.%sThis does not clear active " +"connection states, only source tracking." +msgstr "" + +#: src/usr/local/www/diag_resetstate.php:124 #: src/usr/local/www/status_lb_pool.php:284 #: src/usr/local/www/status_lb_pool.php:286 msgid "Reset" msgstr "" -#: src/usr/local/www/diag_resetstate.php:134 +#: src/usr/local/www/diag_resetstate.php:131 msgid "Select states to reset" msgstr "" -#: src/usr/local/www/diag_resetstate.php:138 +#: src/usr/local/www/diag_resetstate.php:135 msgid "State Table" msgstr "" @@ -7266,6 +7524,10 @@ msgstr "" msgid "Warning" msgstr "" +#: src/usr/local/www/diag_smart.php:114 +msgid "Device does not exist, bailing." +msgstr "" + #: src/usr/local/www/diag_smart.php:119 msgid "Information/Tests" msgstr "" @@ -7274,6 +7536,10 @@ msgstr "" msgid "Config" msgstr "" +#: src/usr/local/www/diag_smart.php:129 +msgid "Invalid test type, bailing." +msgstr "" + #: src/usr/local/www/diag_smart.php:136 msgid "Test results" msgstr "" @@ -7293,6 +7559,7 @@ msgid "Invalid info type, bailing." msgstr "" #: src/usr/local/www/diag_smart.php:168 src/usr/local/www/diag_smart.php:300 +#: src/usr/local/www/pkg_mgr_installed.php:214 msgid "Information" msgstr "" @@ -7413,6 +7680,7 @@ msgstr "" #: src/usr/local/www/services_dnsmasq.php:450 #: src/usr/local/www/services_unbound.php:427 #: src/usr/local/www/services_unbound.php:503 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:251 msgid "IP" msgstr "" @@ -7486,12 +7754,12 @@ msgstr "" #: src/usr/local/www/diag_tables.php:151 src/usr/local/www/head.inc:198 #: src/usr/local/www/pkg_mgr_install.php:262 -#: src/usr/local/www/pkg_mgr_installed.php:190 +#: src/usr/local/www/pkg_mgr_installed.php:209 #: src/usr/local/www/system_certmanager.php:502 #: src/usr/local/www/system_certmanager.php:592 #: src/usr/local/www/system_certmanager.php:947 #: src/usr/local/www/system_certmanager.php:950 -#: src/usr/local/www/system_update_settings.php:106 +#: src/usr/local/www/system_update_settings.php:99 #: src/usr/local/www/widgets/widgets/installed_packages.widget.php:157 msgid "Update" msgstr "" @@ -7568,13 +7836,6 @@ msgid "" "determine if a UDP port accepts connections in this manner." msgstr "" -#: src/usr/local/www/diag_testport.php:271 -#: src/usr/local/www/firewall_nat_out.php:313 -#: src/usr/local/www/firewall_nat_out.php:561 -#: src/usr/local/www/status_logs_common.inc:410 -msgid "Source Port" -msgstr "" - #: src/usr/local/www/diag_testport.php:279 msgid "Remote text" msgstr "" @@ -7585,13 +7846,6 @@ msgid "" "it will take 10+ seconds to display in a panel below this form." msgstr "" -#: src/usr/local/www/diag_testport.php:286 -#: src/usr/local/www/diag_traceroute.php:179 -#: src/usr/local/www/firewall_nat.php:214 -#: src/usr/local/www/status_logs_settings.php:355 -msgid "Source Address" -msgstr "" - #: src/usr/local/www/diag_testport.php:289 #: src/usr/local/www/diag_traceroute.php:182 msgid "Select source address for the trace" @@ -7660,10 +7914,10 @@ msgstr "" msgid "Firewall: EasyRule" msgstr "" -#: src/usr/local/www/easyrule.php:103 src/usr/local/www/status_logs.php:181 -#: src/usr/local/www/status_logs.php:225 -#: src/usr/local/www/status_logs_common.inc:250 -#: src/usr/local/www/status_logs_filter.php:334 +#: src/usr/local/www/easyrule.php:103 src/usr/local/www/status_logs.php:171 +#: src/usr/local/www/status_logs.php:221 +#: src/usr/local/www/status_logs_common.inc:298 +#: src/usr/local/www/status_logs_filter.php:330 msgid "Message" msgstr "" @@ -7774,7 +8028,8 @@ msgid "Execute" msgstr "" #: src/usr/local/www/exec.php:254 src/usr/local/www/pkg_mgr.php:197 -#: src/usr/local/www/interfaces.php:2012 +#: src/usr/local/www/widgets/widgets/services_status.widget.php:149 +#: src/usr/local/www/interfaces.php:2013 msgid "Clear" msgstr "" @@ -7788,6 +8043,7 @@ msgstr "" #: src/usr/local/www/exec.php:281 #: src/usr/local/www/services_captiveportal_filemanager.php:184 +#: src/usr/local/www/widgets/widgets/picture.widget.php:83 msgid "Upload" msgstr "" @@ -7855,13 +8111,13 @@ msgstr "" #: src/usr/local/www/load_balancer_setting.php:135 #: src/usr/local/www/load_balancer_virtual_server.php:135 #: src/usr/local/www/services_captiveportal_zones.php:102 -#: src/usr/local/www/services_dhcp.php:716 +#: src/usr/local/www/services_dhcp.php:718 #: src/usr/local/www/services_dhcpv6.php:459 #: src/usr/local/www/services_dnsmasq.php:228 #: src/usr/local/www/services_pppoe.php:125 -#: src/usr/local/www/services_unbound_acls.php:222 +#: src/usr/local/www/services_unbound_acls.php:221 #: src/usr/local/www/system_gateways.php:257 -#: src/usr/local/www/system_routes.php:257 src/usr/local/www/vpn_ipsec.php:272 +#: src/usr/local/www/system_routes.php:257 src/usr/local/www/vpn_ipsec.php:271 #: src/usr/local/www/vpn_ipsec_keys.php:118 #: src/usr/local/www/vpn_ipsec_mobile.php:440 msgid "You must apply the changes in order for them to take effect." @@ -7894,11 +8150,11 @@ msgstr "" #: src/usr/local/www/firewall_nat_npt.php:263 #: src/usr/local/www/firewall_nat_out.php:523 #: src/usr/local/www/firewall_nat_out.php:527 -#: src/usr/local/www/firewall_rules.php:715 -#: src/usr/local/www/firewall_rules.php:719 +#: src/usr/local/www/firewall_rules.php:746 +#: src/usr/local/www/firewall_rules.php:750 #: src/usr/local/www/firewall_schedule.php:278 #: src/usr/local/www/firewall_virtual_ip.php:363 -#: src/usr/local/www/interfaces.php:1887 src/usr/local/www/interfaces.php:3187 +#: src/usr/local/www/interfaces.php:1888 src/usr/local/www/interfaces.php:3188 #: src/usr/local/www/interfaces_assign.php:588 #: src/usr/local/www/interfaces_bridge.php:190 #: src/usr/local/www/interfaces_gif.php:164 @@ -7912,17 +8168,17 @@ msgstr "" #: src/usr/local/www/load_balancer_monitor.php:180 #: src/usr/local/www/load_balancer_pool.php:215 #: src/usr/local/www/load_balancer_virtual_server.php:204 -#: src/usr/local/www/pkg.php:589 src/usr/local/www/pkg_edit.php:1444 +#: src/usr/local/www/pkg.php:599 src/usr/local/www/pkg_edit.php:1445 #: src/usr/local/www/services_captiveportal_filemanager.php:266 #: src/usr/local/www/services_captiveportal_hostname.php:195 #: src/usr/local/www/services_captiveportal_ip.php:191 #: src/usr/local/www/services_captiveportal_mac.php:254 #: src/usr/local/www/services_captiveportal_vouchers.php:502 #: src/usr/local/www/services_captiveportal_zones.php:156 -#: src/usr/local/www/services_dhcp.php:861 -#: src/usr/local/www/services_dhcp.php:1239 -#: src/usr/local/www/services_dhcp.php:1336 -#: src/usr/local/www/services_dhcpv6.php:941 +#: src/usr/local/www/services_dhcp.php:871 +#: src/usr/local/www/services_dhcp.php:1198 +#: src/usr/local/www/services_dhcp.php:1346 +#: src/usr/local/www/services_dhcpv6.php:942 #: src/usr/local/www/services_dnsmasq.php:432 #: src/usr/local/www/services_dnsmasq.php:486 #: src/usr/local/www/services_dyndns.php:235 @@ -7930,14 +8186,15 @@ msgstr "" #: src/usr/local/www/services_ntpd.php:338 #: src/usr/local/www/services_pppoe.php:181 #: src/usr/local/www/services_rfc2136.php:226 -#: src/usr/local/www/services_router_advertisements.php:363 +#: src/usr/local/www/services_router_advertisements.php:365 #: src/usr/local/www/services_unbound.php:492 #: src/usr/local/www/services_unbound.php:541 -#: src/usr/local/www/services_unbound_acls.php:362 +#: src/usr/local/www/services_unbound_acls.php:361 +#: src/usr/local/www/services_wol.php:230 #: src/usr/local/www/system_authservers.php:434 #: src/usr/local/www/system_camanager.php:464 #: src/usr/local/www/system_certmanager.php:839 -#: src/usr/local/www/system_certmanager.php:1109 +#: src/usr/local/www/system_certmanager.php:1137 #: src/usr/local/www/system_crlmanager.php:572 #: src/usr/local/www/system_gateway_groups.php:204 #: src/usr/local/www/system_gateways.php:350 @@ -7975,7 +8232,7 @@ msgstr "" #: src/usr/local/www/firewall_nat_edit.php:646 #: src/usr/local/www/firewall_nat_npt_edit.php:212 #: src/usr/local/www/firewall_nat_out_edit.php:393 -#: src/usr/local/www/firewall_rules.php:664 +#: src/usr/local/www/firewall_rules.php:695 #: src/usr/local/www/firewall_rules_edit.php:1016 #: src/usr/local/www/firewall_schedule_edit.php:85 #: src/usr/local/www/firewall_virtual_ip_edit.php:339 @@ -7991,10 +8248,10 @@ msgstr "" #: src/usr/local/www/load_balancer_monitor_edit.php:230 #: src/usr/local/www/load_balancer_pool_edit.php:219 #: src/usr/local/www/load_balancer_virtual_server_edit.php:193 -#: src/usr/local/www/services_dhcp.php:680 +#: src/usr/local/www/services_dhcp.php:682 #: src/usr/local/www/services_dyndns_edit.php:257 #: src/usr/local/www/services_igmpproxy_edit.php:66 -#: src/usr/local/www/services_pppoe_edit.php:309 +#: src/usr/local/www/services_pppoe_edit.php:314 #: src/usr/local/www/services_rfc2136_edit.php:160 #: src/usr/local/www/services_wol_edit.php:137 #: src/usr/local/www/system_camanager.php:446 @@ -8303,11 +8560,11 @@ msgstr "" #: src/usr/local/www/load_balancer_monitor_edit.php:114 #: src/usr/local/www/load_balancer_monitor_edit.php:316 #: src/usr/local/www/services_captiveportal.php:986 -#: src/usr/local/www/services_dhcp.php:1218 +#: src/usr/local/www/services_dhcp.php:1177 #: src/usr/local/www/services_igmpproxy.php:122 #: src/usr/local/www/services_igmpproxy_edit.php:202 -#: src/usr/local/www/status_logs_vpn.php:220 -#: src/usr/local/www/status_logs_vpn.php:443 +#: src/usr/local/www/status_logs_vpn.php:210 +#: src/usr/local/www/status_logs_vpn.php:439 #: src/usr/local/www/status_ntpd.php:202 #: src/usr/local/www/system_authservers.php:201 #: src/usr/local/www/system_authservers.php:224 @@ -8331,8 +8588,11 @@ msgstr "" #: src/usr/local/www/firewall_nat_npt_edit.php:261 #: src/usr/local/www/firewall_nat_out_edit.php:569 #: src/usr/local/www/status_lb_vs.php:102 src/usr/local/www/system.php:399 +#: src/usr/local/www/vpn_ipsec_phase2.php:559 #: src/usr/local/www/vpn_ipsec_phase2.php:566 +#: src/usr/local/www/vpn_ipsec_phase2.php:579 #: src/usr/local/www/vpn_ipsec_phase2.php:592 +#: src/usr/local/www/vpn_ipsec_phase2.php:605 #: src/usr/local/www/vpn_ipsec_phase2.php:612 msgid "Address" msgstr "" @@ -8342,24 +8602,24 @@ msgstr "" #: src/usr/local/www/firewall_nat_1to1.php:278 #: src/usr/local/www/firewall_nat_npt.php:267 #: src/usr/local/www/firewall_nat_out.php:531 -#: src/usr/local/www/firewall_rules.php:674 -#: src/usr/local/www/firewall_rules.php:723 +#: src/usr/local/www/firewall_rules.php:705 +#: src/usr/local/www/firewall_rules.php:754 #: src/usr/local/www/firewall_schedule_edit.php:653 #: src/usr/local/www/interfaces_assign.php:564 -#: src/usr/local/www/interfaces_vlan.php:159 src/usr/local/www/pkg.php:534 -#: src/usr/local/www/pkg_edit.php:1432 src/usr/local/www/services_dhcp.php:682 -#: src/usr/local/www/services_dhcp.php:1229 +#: src/usr/local/www/interfaces_vlan.php:159 src/usr/local/www/pkg.php:544 +#: src/usr/local/www/pkg_edit.php:1433 src/usr/local/www/services_dhcp.php:684 +#: src/usr/local/www/services_dhcp.php:1188 #: src/usr/local/www/services_dhcpv6.php:850 #: src/usr/local/www/services_dnsmasq_edit.php:322 #: src/usr/local/www/services_igmpproxy_edit.php:264 #: src/usr/local/www/services_ntpd.php:330 -#: src/usr/local/www/services_pppoe_edit.php:545 -#: src/usr/local/www/services_router_advertisements.php:351 -#: src/usr/local/www/services_unbound_acls.php:297 +#: src/usr/local/www/services_pppoe_edit.php:557 +#: src/usr/local/www/services_router_advertisements.php:353 +#: src/usr/local/www/services_unbound_acls.php:296 #: src/usr/local/www/services_unbound_host_edit.php:323 #: src/usr/local/www/system_camanager.php:451 #: src/usr/local/www/system_certmanager.php:827 -#: src/usr/local/www/system_certmanager.php:1095 +#: src/usr/local/www/system_certmanager.php:1121 #: src/usr/local/www/system_gateway_groups.php:188 #: src/usr/local/www/system_gateways.php:335 #: src/usr/local/www/system_routes.php:318 @@ -8396,10 +8656,10 @@ msgstr "" #: src/usr/local/www/firewall_nat.php:313 #: src/usr/local/www/firewall_nat.php:331 #: src/usr/local/www/firewall_nat.php:348 -#: src/usr/local/www/firewall_rules.php:609 -#: src/usr/local/www/firewall_rules.php:615 -#: src/usr/local/www/firewall_rules.php:621 -#: src/usr/local/www/firewall_rules.php:627 +#: src/usr/local/www/firewall_rules.php:628 +#: src/usr/local/www/firewall_rules.php:637 +#: src/usr/local/www/firewall_rules.php:646 +#: src/usr/local/www/firewall_rules.php:655 msgid "Alias details" msgstr "" @@ -8492,7 +8752,7 @@ msgstr "" #: src/usr/local/www/firewall_nat.php:258 #: src/usr/local/www/firewall_nat_1to1.php:211 #: src/usr/local/www/firewall_nat_npt.php:212 -#: src/usr/local/www/vpn_ipsec.php:311 src/usr/local/www/vpn_ipsec.php:461 +#: src/usr/local/www/vpn_ipsec.php:310 src/usr/local/www/vpn_ipsec.php:460 msgid "click to toggle enabled/disabled status" msgstr "" @@ -8518,41 +8778,48 @@ msgid "Delete rule" msgstr "" #: src/usr/local/www/firewall_nat.php:399 -#: src/usr/local/www/firewall_rules.php:713 +#: src/usr/local/www/firewall_rules.php:744 msgid "Add rule to the top of the list" msgstr "" #: src/usr/local/www/firewall_nat.php:403 -#: src/usr/local/www/firewall_rules.php:717 +#: src/usr/local/www/firewall_rules.php:748 msgid "Add rule to the end of the list" msgstr "" #: src/usr/local/www/firewall_nat.php:407 -#: src/usr/local/www/firewall_rules.php:721 +#: src/usr/local/www/firewall_rules.php:752 msgid "Delete selected rules" msgstr "" #: src/usr/local/www/firewall_nat.php:411 -#: src/usr/local/www/firewall_rules.php:725 +#: src/usr/local/www/firewall_rules.php:756 msgid "Save rule order" msgstr "" -#: src/usr/local/www/firewall_nat.php:444 -#: src/usr/local/www/firewall_rules.php:740 +#: src/usr/local/www/firewall_nat.php:446 +msgid "You have moved one or more Port Forward rules but have not yet saved" +msgstr "" + +#: src/usr/local/www/firewall_nat.php:461 +#: src/usr/local/www/firewall_rules.php:771 msgid "Legend" msgstr "" -#: src/usr/local/www/firewall_nat.php:445 +#: src/usr/local/www/firewall_nat.php:462 #: src/usr/local/www/firewall_nat_edit.php:919 #: src/usr/local/www/firewall_nat_edit.php:954 -#: src/usr/local/www/firewall_rules.php:741 +#: src/usr/local/www/firewall_rules.php:772 #: src/usr/local/www/firewall_rules_edit.php:1065 -#: src/usr/local/www/status_logs_common.inc:392 -#: src/usr/local/www/status_logs_common.inc:393 +#: src/usr/local/www/services_captiveportal_mac.php:94 +#: src/usr/local/www/services_captiveportal_mac_edit.php:236 +#: src/usr/local/www/status_logs_common.inc:440 +#: src/usr/local/www/widgets/widgets/log.widget.php:259 +#: src/usr/local/www/status_logs_common.inc:441 msgid "Pass" msgstr "" -#: src/usr/local/www/firewall_nat.php:446 +#: src/usr/local/www/firewall_nat.php:463 msgid "Linked rule" msgstr "" @@ -8637,6 +8904,10 @@ msgid "" "using the WAN IP address will no longer function." msgstr "" +#: src/usr/local/www/firewall_nat_1to1.php:325 +msgid "You have moved one or more NAT 1:1 mappings but have not yet saved" +msgstr "" + #: src/usr/local/www/firewall_nat_1to1_edit.php:145 #: src/usr/local/www/firewall_nat_out_edit.php:175 #, php-format @@ -8700,10 +8971,15 @@ msgstr "" #: src/usr/local/www/firewall_nat_1to1_edit.php:329 #: src/usr/local/www/firewall_nat_edit.php:534 #: src/usr/local/www/firewall_nat_edit.php:580 +#: src/usr/local/www/firewall_nat_out_edit.php:513 +#: src/usr/local/www/firewall_nat_out_edit.php:537 #: src/usr/local/www/firewall_rules_edit.php:1257 #: src/usr/local/www/firewall_virtual_ip_edit.php:414 #: src/usr/local/www/system_routes.php:275 -#: src/usr/local/www/vpn_ipsec_mobile.php:520 +#: src/usr/local/www/vpn_ipsec_mobile.php:521 +#: src/usr/local/www/vpn_ipsec_phase2.php:559 +#: src/usr/local/www/vpn_ipsec_phase2.php:579 +#: src/usr/local/www/vpn_ipsec_phase2.php:605 msgid "Network" msgstr "" @@ -8712,6 +8988,7 @@ msgstr "" #: src/usr/local/www/firewall_nat_edit.php:539 #: src/usr/local/www/firewall_nat_edit.php:583 #: src/usr/local/www/firewall_rules_edit.php:1268 +#: src/usr/local/www/guiconfig.inc:251 msgid "PPPoE clients" msgstr "" @@ -8720,11 +8997,13 @@ msgstr "" #: src/usr/local/www/firewall_nat_edit.php:543 #: src/usr/local/www/firewall_nat_edit.php:587 #: src/usr/local/www/firewall_rules_edit.php:1271 +#: src/usr/local/www/guiconfig.inc:252 msgid "L2TP clients" msgstr "" #: src/usr/local/www/firewall_nat_1to1_edit.php:329 #: src/usr/local/www/firewall_nat_edit.php:580 +#: src/usr/local/www/firewall_nat_out_edit.php:513 #: src/usr/local/www/firewall_rules_edit.php:1265 msgid "This Firewall (self)" msgstr "" @@ -8767,7 +9046,7 @@ msgstr "" #: src/usr/local/www/firewall_rules_edit.php:1000 #: src/usr/local/www/head.inc:255 src/usr/local/www/services_pppoe.php:116 #: src/usr/local/www/services_pppoe.php:130 -#: src/usr/local/www/services_pppoe_edit.php:309 +#: src/usr/local/www/services_pppoe_edit.php:314 msgid "PPPoE Server" msgstr "" @@ -8781,9 +9060,10 @@ msgstr "" #: src/usr/local/www/status_ipsec_leases.php:68 #: src/usr/local/www/status_ipsec_sad.php:69 #: src/usr/local/www/status_ipsec_spd.php:72 +#: src/usr/local/www/status_logs.php:80 #: src/usr/local/www/status_logs_common.inc:114 #: src/usr/local/www/status_logs_settings.php:237 -#: src/usr/local/www/vpn_ipsec.php:253 src/usr/local/www/vpn_ipsec_keys.php:105 +#: src/usr/local/www/vpn_ipsec.php:252 src/usr/local/www/vpn_ipsec_keys.php:105 #: src/usr/local/www/vpn_ipsec_keys_edit.php:155 #: src/usr/local/www/vpn_ipsec_mobile.php:339 #: src/usr/local/www/vpn_ipsec_phase1.php:638 @@ -8791,6 +9071,7 @@ msgstr "" #: src/usr/local/www/vpn_ipsec_phase2.php:441 #: src/usr/local/www/vpn_ipsec_phase2.php:444 #: src/usr/local/www/vpn_ipsec_settings.php:236 +#: src/usr/local/www/widgets/include/ipsec.inc:2 msgid "IPsec" msgstr "" @@ -8837,12 +9118,14 @@ msgstr "" #: src/usr/local/www/firewall_nat_out.php:562 #: src/usr/local/www/firewall_nat_out_edit.php:181 #: src/usr/local/www/firewall_nat_out_edit.php:531 -#: src/usr/local/www/firewall_rules.php:298 +#: src/usr/local/www/firewall_rules.php:316 #: src/usr/local/www/firewall_rules_edit.php:435 #: src/usr/local/www/status_ipsec_sad.php:99 #: src/usr/local/www/status_ipsec_spd.php:92 -#: src/usr/local/www/status_logs_filter.php:205 -#: src/usr/local/www/status_logs_filter_dynamic.php:419 +#: src/usr/local/www/status_logs_filter.php:195 +#: src/usr/local/www/status_logs_filter_dynamic.php:421 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:234 +#: src/usr/local/www/widgets/widgets/log.widget.php:139 msgid "Destination" msgstr "" @@ -8859,10 +9142,11 @@ msgstr "" #: src/usr/local/www/firewall_nat_1to1_edit.php:525 #: src/usr/local/www/firewall_nat_edit.php:912 -#: src/usr/local/www/firewall_rules.php:671 +#: src/usr/local/www/firewall_rules.php:702 #: src/usr/local/www/services_dyndns_edit.php:276 #: src/usr/local/www/system_gateways.php:332 #: src/usr/local/www/system_routes.php:315 +#: src/usr/local/www/vpn_ipsec_phase1.php:868 #: src/usr/local/www/vpn_openvpn_csc.php:354 msgid "Disable" msgstr "" @@ -8975,14 +9259,14 @@ msgid "" msgstr "" #: src/usr/local/www/firewall_nat_edit.php:720 src/usr/local/www/head.inc:197 -#: src/usr/local/www/interfaces.php:2095 +#: src/usr/local/www/interfaces.php:2096 #: src/usr/local/www/interfaces_bridge_edit.php:391 -#: src/usr/local/www/services_dhcp.php:971 -#: src/usr/local/www/services_dhcp.php:1019 -#: src/usr/local/www/services_dhcp.php:1046 -#: src/usr/local/www/services_dhcp.php:1071 -#: src/usr/local/www/services_dhcp.php:1090 -#: src/usr/local/www/services_dhcp.php:1161 +#: src/usr/local/www/services_dhcp.php:981 +#: src/usr/local/www/services_dhcp.php:1029 +#: src/usr/local/www/services_dhcp.php:1056 +#: src/usr/local/www/services_dhcp.php:1081 +#: src/usr/local/www/services_dhcp.php:1100 +#: src/usr/local/www/services_dhcp.php:1122 #: src/usr/local/www/services_dhcp_edit.php:589 #: src/usr/local/www/services_dhcp_edit.php:635 #: src/usr/local/www/services_dhcp_edit.php:669 @@ -9004,6 +9288,7 @@ msgstr "" #: src/usr/local/www/system_advanced_sysctl.php:166 #: src/usr/local/www/system_gateways_edit.php:790 #: src/usr/local/www/vpn_openvpn_csc.php:586 +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:277 msgid "Advanced" msgstr "" @@ -9013,15 +9298,16 @@ msgstr "" #: src/usr/local/www/firewall_nat_out.php:560 #: src/usr/local/www/firewall_nat_out_edit.php:181 #: src/usr/local/www/firewall_nat_out_edit.php:507 -#: src/usr/local/www/firewall_rules.php:296 +#: src/usr/local/www/firewall_rules.php:314 #: src/usr/local/www/firewall_rules_edit.php:434 #: src/usr/local/www/status_ipsec_sad.php:98 #: src/usr/local/www/status_ipsec_spd.php:91 -#: src/usr/local/www/status_logs_filter.php:204 -#: src/usr/local/www/status_logs_filter_dynamic.php:418 -#: src/usr/local/www/vpn_ipsec_mobile.php:487 -#: src/usr/local/www/vpn_ipsec_mobile.php:497 -#: src/usr/local/www/widgets/widgets/log.widget.php:137 +#: src/usr/local/www/status_logs_filter.php:194 +#: src/usr/local/www/status_logs_filter_dynamic.php:420 +#: src/usr/local/www/vpn_ipsec_mobile.php:488 +#: src/usr/local/www/vpn_ipsec_mobile.php:498 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:233 +#: src/usr/local/www/widgets/widgets/log.widget.php:138 msgid "Source" msgstr "" @@ -9051,6 +9337,9 @@ msgstr "" #: src/usr/local/www/firewall_nat_edit.php:884 #: src/usr/local/www/firewall_rules_edit.php:1327 #: src/usr/local/www/firewall_rules_edit.php:1341 +#: src/usr/local/www/interfaces.php:2591 +#: src/usr/local/www/interfaces_ppps_edit.php:729 +#: src/usr/local/www/services_ntpd_gps.php:248 #: src/usr/local/www/status_rrd_graph.php:471 #: src/usr/local/www/status_rrd_graph_settings.php:180 msgid "Custom" @@ -9198,6 +9487,10 @@ msgstr "" msgid "Internal prefix" msgstr "" +#: src/usr/local/www/firewall_nat_npt.php:303 +msgid "You have moved one or more NPt mappings but have not yet saved" +msgstr "" + #: src/usr/local/www/firewall_nat_npt_edit.php:135 msgid "Source prefix" msgstr "" @@ -9260,7 +9553,7 @@ msgstr "" #: src/usr/local/www/firewall_nat_out.php:262 #: src/usr/local/www/firewall_nat_out.php:266 -#: src/usr/local/www/interfaces.php:874 src/usr/local/www/interfaces.php:2919 +#: src/usr/local/www/interfaces.php:875 src/usr/local/www/interfaces.php:2920 #: src/usr/local/www/interfaces_wireless.php:136 #: src/usr/local/www/interfaces_wireless_edit.php:115 #: src/usr/local/www/interfaces_wireless_edit.php:221 @@ -9269,8 +9562,8 @@ msgstr "" #: src/usr/local/www/load_balancer_pool_edit.php:354 #: src/usr/local/www/load_balancer_virtual_server_edit.php:104 #: src/usr/local/www/load_balancer_virtual_server_edit.php:109 -#: src/usr/local/www/status_lb_pool.php:168 src/usr/local/www/vpn_ipsec.php:287 -#: src/usr/local/www/vpn_ipsec.php:429 +#: src/usr/local/www/status_lb_pool.php:168 src/usr/local/www/vpn_ipsec.php:286 +#: src/usr/local/www/vpn_ipsec.php:428 #: src/usr/local/www/vpn_ipsec_phase2.php:542 msgid "Mode" msgstr "" @@ -9298,12 +9591,6 @@ msgstr "" msgid "Mappings" msgstr "" -#: src/usr/local/www/firewall_nat_out.php:315 -#: src/usr/local/www/firewall_nat_out.php:563 -#: src/usr/local/www/status_logs_common.inc:451 -msgid "Destination Port" -msgstr "" - #: src/usr/local/www/firewall_nat_out.php:316 #: src/usr/local/www/firewall_nat_out.php:564 msgid "NAT Address" @@ -9378,9 +9665,9 @@ msgstr "" #: src/usr/local/www/firewall_nat_out.php:673 #: src/usr/local/www/firewall_nat_out_edit.php:582 #: src/usr/local/www/status_carp.php:211 -#: src/usr/local/www/system_gateway_groups_edit.php:297 -#: src/usr/local/www/system_gateway_groups_edit.php:300 -#: src/usr/local/www/system_gateway_groups_edit.php:323 +#: src/usr/local/www/system_gateway_groups_edit.php:298 +#: src/usr/local/www/system_gateway_groups_edit.php:301 +#: src/usr/local/www/system_gateway_groups_edit.php:324 msgid "Virtual IP" msgstr "" @@ -9388,6 +9675,10 @@ msgstr "" msgid " may also be required." msgstr "" +#: src/usr/local/www/firewall_nat_out.php:706 +msgid "You have moved one or more NAT outbound mappings but have not yet saved" +msgstr "" + #: src/usr/local/www/firewall_nat_out_edit.php:181 #: src/usr/local/www/firewall_rules_edit.php:450 msgid "Source bit count" @@ -9443,6 +9734,19 @@ msgstr "" msgid "Only Round Robin pool options may be chosen when selecting an alias." msgstr "" +#: src/usr/local/www/firewall_nat_out_edit.php:400 +#: src/usr/local/www/system_gateway_groups_edit.php:195 +msgid "Interface Address" +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:430 +msgid "Host Alias: " +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:433 +msgid "Other Subnet (Enter Below)" +msgstr "" + #: src/usr/local/www/firewall_nat_out_edit.php:447 msgid "Edit Advanced Outbound NAT entry" msgstr "" @@ -9489,6 +9793,30 @@ msgid "" "define <a href=\"firewall_virtual_ip.php\">" msgstr "" +#: src/usr/local/www/firewall_nat_out_edit.php:591 +msgid "Round Robin" +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:592 +msgid "Round Robin with Sticky Address" +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:593 +msgid "Random" +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:594 +msgid "Random with Sticky Address" +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:595 +msgid "Source hash" +msgstr "" + +#: src/usr/local/www/firewall_nat_out_edit.php:596 +msgid "Bit mask" +msgstr "" + #: src/usr/local/www/firewall_nat_out_edit.php:587 msgid "Pool options" msgstr "" @@ -9538,14 +9866,14 @@ msgstr "" msgid "The firewall rule configuration has been changed." msgstr "" -#: src/usr/local/www/firewall_rules.php:288 +#: src/usr/local/www/firewall_rules.php:306 msgid "Rules (Drag to change order)" msgstr "" -#: src/usr/local/www/firewall_rules.php:300 +#: src/usr/local/www/firewall_rules.php:318 #: src/usr/local/www/firewall_rules_edit.php:1581 -#: src/usr/local/www/interfaces.php:567 src/usr/local/www/interfaces.php:618 -#: src/usr/local/www/services_dhcp.php:903 +#: src/usr/local/www/interfaces.php:568 src/usr/local/www/interfaces.php:619 +#: src/usr/local/www/services_dhcp.php:913 #: src/usr/local/www/services_dhcp_edit.php:554 #: src/usr/local/www/status_gateways.php:99 src/usr/local/www/system.php:421 #: src/usr/local/www/system.php:424 @@ -9558,34 +9886,34 @@ msgstr "" msgid "Gateway" msgstr "" -#: src/usr/local/www/firewall_rules.php:301 +#: src/usr/local/www/firewall_rules.php:319 #: src/usr/local/www/status_queues.php:191 msgid "Queue" msgstr "" -#: src/usr/local/www/firewall_rules.php:302 +#: src/usr/local/www/firewall_rules.php:320 #: src/usr/local/www/firewall_rules_edit.php:1550 msgid "Schedule" msgstr "" -#: src/usr/local/www/firewall_rules.php:317 -#: src/usr/local/www/firewall_rules.php:410 +#: src/usr/local/www/firewall_rules.php:336 +#: src/usr/local/www/firewall_rules.php:429 msgid "traffic is passed" msgstr "" -#: src/usr/local/www/firewall_rules.php:326 +#: src/usr/local/www/firewall_rules.php:345 msgid "Anti-Lockout Rule" msgstr "" -#: src/usr/local/www/firewall_rules.php:328 -#: src/usr/local/www/firewall_rules.php:346 -#: src/usr/local/www/firewall_rules.php:364 +#: src/usr/local/www/firewall_rules.php:347 +#: src/usr/local/www/firewall_rules.php:365 +#: src/usr/local/www/firewall_rules.php:383 #: src/usr/local/www/load_balancer_monitor.php:129 #: src/usr/local/www/load_balancer_pool.php:143 #: src/usr/local/www/load_balancer_setting.php:120 #: src/usr/local/www/load_balancer_setting.php:143 #: src/usr/local/www/load_balancer_virtual_server.php:143 -#: src/usr/local/www/services_router_advertisements.php:387 +#: src/usr/local/www/services_router_advertisements.php:389 #: src/usr/local/www/status_logs_common.inc:120 #: src/usr/local/www/status_logs_settings.php:209 #: src/usr/local/www/status_logs_settings.php:243 @@ -9603,263 +9931,269 @@ msgstr "" msgid "Settings" msgstr "" -#: src/usr/local/www/firewall_rules.php:335 -#: src/usr/local/www/firewall_rules.php:353 -#: src/usr/local/www/firewall_rules.php:401 +#: src/usr/local/www/firewall_rules.php:354 +#: src/usr/local/www/firewall_rules.php:372 +#: src/usr/local/www/firewall_rules.php:420 msgid "traffic is blocked" msgstr "" -#: src/usr/local/www/firewall_rules.php:337 +#: src/usr/local/www/firewall_rules.php:356 msgid "RFC 1918 networks" msgstr "" -#: src/usr/local/www/firewall_rules.php:344 -#: src/usr/local/www/interfaces.php:3112 +#: src/usr/local/www/firewall_rules.php:363 +#: src/usr/local/www/interfaces.php:3113 msgid "Block private networks" msgstr "" -#: src/usr/local/www/firewall_rules.php:355 +#: src/usr/local/www/firewall_rules.php:374 msgid "Reserved/not assigned by IANA" msgstr "" -#: src/usr/local/www/firewall_rules.php:362 -#: src/usr/local/www/interfaces.php:3122 +#: src/usr/local/www/firewall_rules.php:381 +#: src/usr/local/www/interfaces.php:3123 msgid "Block bogon networks" msgstr "" -#: src/usr/local/www/firewall_rules.php:404 +#: src/usr/local/www/firewall_rules.php:423 msgid "traffic is rejected" msgstr "" -#: src/usr/local/www/firewall_rules.php:407 +#: src/usr/local/www/firewall_rules.php:426 msgid "traffic is matched" msgstr "" -#: src/usr/local/www/firewall_rules.php:419 +#: src/usr/local/www/firewall_rules.php:438 msgid "advanced setting" msgstr "" -#: src/usr/local/www/firewall_rules.php:423 +#: src/usr/local/www/firewall_rules.php:442 msgid "traffic is logged" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 #: src/usr/local/www/firewall_schedule_edit.php:293 msgid "Mon" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 msgid "Tues" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 #: src/usr/local/www/firewall_schedule_edit.php:295 msgid "Wed" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 msgid "Thur" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 #: src/usr/local/www/firewall_schedule_edit.php:297 msgid "Fri" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 #: src/usr/local/www/firewall_schedule_edit.php:298 msgid "Sat" msgstr "" -#: src/usr/local/www/firewall_rules.php:442 +#: src/usr/local/www/firewall_rules.php:461 #: src/usr/local/www/firewall_schedule.php:68 #: src/usr/local/www/firewall_schedule_edit.php:89 #: src/usr/local/www/firewall_schedule_edit.php:299 msgid "Sun" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "January" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "February" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "March" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "April" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "May" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "June" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "July" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "August" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "September" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "October" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "November" msgstr "" -#: src/usr/local/www/firewall_rules.php:443 +#: src/usr/local/www/firewall_rules.php:462 #: src/usr/local/www/firewall_schedule.php:69 #: src/usr/local/www/firewall_schedule_edit.php:90 msgid "December" msgstr "" -#: src/usr/local/www/firewall_rules.php:556 +#: src/usr/local/www/firewall_rules.php:575 msgid "Traffic matching this rule is currently being denied" msgstr "" -#: src/usr/local/www/firewall_rules.php:560 +#: src/usr/local/www/firewall_rules.php:579 msgid "Traffic matching this rule is currently being allowed" msgstr "" -#: src/usr/local/www/firewall_rules.php:569 +#: src/usr/local/www/firewall_rules.php:588 msgid "This rule is not currently active because its period has expired" msgstr "" -#: src/usr/local/www/firewall_rules.php:597 +#: src/usr/local/www/firewall_rules.php:616 #: src/usr/local/www/firewall_rules_edit.php:1212 msgid "ICMP type" msgstr "" -#: src/usr/local/www/firewall_rules.php:649 +#: src/usr/local/www/firewall_rules.php:680 #: src/usr/local/www/firewall_rules_edit.php:1552 #: src/usr/local/www/firewall_rules_edit.php:1593 #: src/usr/local/www/firewall_rules_edit.php:1600 #: src/usr/local/www/status_ipsec.php:379 +#: src/usr/local/www/vpn_ipsec_mobile.php:495 +#: src/usr/local/www/vpn_openvpn_client.php:515 msgid "none" msgstr "" -#: src/usr/local/www/firewall_rules.php:665 +#: src/usr/local/www/firewall_rules.php:696 #: src/usr/local/www/system_gateway_groups.php:187 #: src/usr/local/www/system_gateways.php:324 #: src/usr/local/www/system_routes.php:308 msgid "Copy" msgstr "" -#: src/usr/local/www/firewall_rules.php:702 +#: src/usr/local/www/firewall_rules.php:733 msgid "No floating rules are currently defined." msgstr "" -#: src/usr/local/www/firewall_rules.php:704 +#: src/usr/local/www/firewall_rules.php:735 msgid "No rules are currently defined for this interface" msgstr "" -#: src/usr/local/www/firewall_rules.php:705 +#: src/usr/local/www/firewall_rules.php:736 msgid "" "All incoming connections on this interface will be blocked until you add " "pass rules." msgstr "" -#: src/usr/local/www/firewall_rules.php:707 +#: src/usr/local/www/firewall_rules.php:738 msgid "Click the button to add a new rule." msgstr "" -#: src/usr/local/www/firewall_rules.php:729 +#: src/usr/local/www/firewall_rules.php:760 msgid "Add separator" msgstr "" -#: src/usr/local/www/firewall_rules.php:731 +#: src/usr/local/www/firewall_rules.php:762 msgid "Separator" msgstr "" -#: src/usr/local/www/firewall_rules.php:742 +#: src/usr/local/www/firewall_rules.php:773 #: src/usr/local/www/firewall_rules_edit.php:1071 msgid "Match" msgstr "" -#: src/usr/local/www/firewall_rules.php:743 +#: src/usr/local/www/firewall_rules.php:774 #: src/usr/local/www/firewall_rules_edit.php:1066 -#: src/usr/local/www/status_logs_common.inc:433 -#: src/usr/local/www/status_logs_common.inc:434 +#: src/usr/local/www/services_captiveportal_mac.php:95 +#: src/usr/local/www/services_captiveportal_mac_edit.php:236 +#: src/usr/local/www/status_logs_common.inc:481 +#: src/usr/local/www/widgets/widgets/log.widget.php:263 +#: src/usr/local/www/status_logs_common.inc:482 msgid "Block" msgstr "" -#: src/usr/local/www/firewall_rules.php:744 +#: src/usr/local/www/firewall_rules.php:775 #: src/usr/local/www/firewall_rules_edit.php:1067 +#: src/usr/local/www/widgets/widgets/log.widget.php:267 msgid "Reject" msgstr "" -#: src/usr/local/www/firewall_rules.php:745 +#: src/usr/local/www/firewall_rules.php:776 #: src/usr/local/www/firewall_rules_edit.php:1362 -#: src/usr/local/www/status_logs_common.inc:756 +#: src/usr/local/www/status_logs_common.inc:804 msgid "Log" msgstr "" -#: src/usr/local/www/firewall_rules.php:746 +#: src/usr/local/www/firewall_rules.php:777 msgid "Advanced filter" msgstr "" -#: src/usr/local/www/firewall_rules.php:751 +#: src/usr/local/www/firewall_rules.php:782 msgid "" "Rules are evaluated on a first-match basis (i.e. the action of the first " "rule to match a packet will be executed). " msgstr "" -#: src/usr/local/www/firewall_rules.php:753 +#: src/usr/local/www/firewall_rules.php:784 msgid "" "This means that if you use block rules, you'll have to pay attention to the " "rule order. Everything that isn't explicitly passed is blocked by default. " msgstr "" -#: src/usr/local/www/firewall_rules.php:757 +#: src/usr/local/www/firewall_rules.php:788 msgid "" "Floating rules are evaluated on a first-match basis (i.e. the action of the " "first rule to match a packet will be executed) only if the 'quick' option is " @@ -9868,17 +10202,17 @@ msgid "" "matches, the per-interface or default rules are used. " msgstr "" -#: src/usr/local/www/firewall_rules.php:810 +#: src/usr/local/www/firewall_rules.php:841 msgid "Enter a description, Save, then drag to final location." msgstr "" -#: src/usr/local/www/firewall_rules.php:812 -#: src/usr/local/www/interfaces.php:1894 src/usr/local/www/interfaces.php:3194 +#: src/usr/local/www/firewall_rules.php:843 +#: src/usr/local/www/interfaces.php:1895 src/usr/local/www/interfaces.php:3195 msgid "Cancel" msgstr "" -#: src/usr/local/www/firewall_rules.php:922 -msgid "You have moved one or more rules but have now yet saved" +#: src/usr/local/www/firewall_rules.php:953 +msgid "You have moved one or more rules but have not yet saved" msgstr "" #: src/usr/local/www/firewall_rules_edit.php:330 @@ -10155,13 +10489,14 @@ msgstr "" #: src/usr/local/www/services_captiveportal_mac_edit.php:131 #: src/usr/local/www/services_captiveportal_mac_edit.php:234 #: src/usr/local/www/services_captiveportal_vouchers.php:459 -#: src/usr/local/www/services_unbound_acls.php:260 -#: src/usr/local/www/services_unbound_acls.php:324 -#: src/usr/local/www/status_logs_common.inc:909 -#: src/usr/local/www/status_logs_filter.php:192 -#: src/usr/local/www/status_logs_filter_dynamic.php:415 -#: src/usr/local/www/status_logs_vpn.php:181 -#: src/usr/local/www/status_logs_vpn.php:401 +#: src/usr/local/www/services_unbound_acls.php:259 +#: src/usr/local/www/services_unbound_acls.php:323 +#: src/usr/local/www/status_logs_common.inc:957 +#: src/usr/local/www/status_logs_filter.php:182 +#: src/usr/local/www/status_logs_filter_dynamic.php:417 +#: src/usr/local/www/status_logs_vpn.php:171 +#: src/usr/local/www/status_logs_vpn.php:397 +#: src/usr/local/www/widgets/widgets/services_status.widget.php:92 msgid "Action" msgstr "" @@ -10273,7 +10608,7 @@ msgstr "" #: src/usr/local/www/firewall_rules_edit.php:1320 #: src/usr/local/www/services_captiveportal_hostname_edit.php:186 #: src/usr/local/www/services_captiveportal_ip_edit.php:229 -#: src/usr/local/www/services_dhcp.php:839 +#: src/usr/local/www/services_dhcp.php:849 #: src/usr/local/www/services_dhcpv6.php:576 #: src/usr/local/www/services_dhcpv6.php:601 #: src/usr/local/www/system_gateways_edit.php:808 @@ -10288,7 +10623,7 @@ msgstr "" #: src/usr/local/www/firewall_rules_edit.php:1334 #: src/usr/local/www/services_captiveportal_hostname_edit.php:186 #: src/usr/local/www/services_captiveportal_ip_edit.php:229 -#: src/usr/local/www/services_dhcp.php:845 +#: src/usr/local/www/services_dhcp.php:855 #: src/usr/local/www/services_dhcpv6.php:567 #: src/usr/local/www/services_dhcpv6.php:592 #: src/usr/local/www/system_gateways_edit.php:815 @@ -10323,7 +10658,7 @@ msgid "" msgstr "" #: src/usr/local/www/firewall_rules_edit.php:1375 -#: src/usr/local/www/services_unbound_acls.php:270 +#: src/usr/local/www/services_unbound_acls.php:269 msgid "You may enter a description here for your reference." msgstr "" @@ -10425,8 +10760,8 @@ msgid "State Timeout in seconds (TCP only)" msgstr "" #: src/usr/local/www/firewall_rules_edit.php:1494 -#: src/usr/local/www/status_logs_filter.php:361 -#: src/usr/local/www/status_logs_filter_dynamic.php:489 +#: src/usr/local/www/status_logs_filter.php:353 +#: src/usr/local/www/status_logs_filter_dynamic.php:497 msgid "TCP Flags" msgstr "" @@ -10486,10 +10821,6 @@ msgstr "" msgid "Leave as 'none' to leave the rule enabled all the time" msgstr "" -#: src/usr/local/www/firewall_rules_edit.php:1555 -msgid "default" -msgstr "" - #: src/usr/local/www/firewall_rules_edit.php:1584 msgid "" "Leave as 'default' to use the system routing table. Or choose a gateway to " @@ -10649,17 +10980,17 @@ msgid "Month" msgstr "" #: src/usr/local/www/firewall_schedule_edit.php:426 -#: src/usr/local/www/status_logs.php:178 src/usr/local/www/status_logs.php:224 -#: src/usr/local/www/status_logs_common.inc:217 -#: src/usr/local/www/status_logs_common.inc:403 -#: src/usr/local/www/status_logs_filter.php:193 -#: src/usr/local/www/status_logs_filter.php:333 -#: src/usr/local/www/status_logs_filter_dynamic.php:416 -#: src/usr/local/www/status_logs_vpn.php:180 -#: src/usr/local/www/status_logs_vpn.php:219 -#: src/usr/local/www/status_logs_vpn.php:394 -#: src/usr/local/www/status_logs_vpn.php:436 -#: src/usr/local/www/widgets/widgets/log.widget.php:135 +#: src/usr/local/www/status_logs.php:168 src/usr/local/www/status_logs.php:220 +#: src/usr/local/www/status_logs_common.inc:265 +#: src/usr/local/www/status_logs_common.inc:451 +#: src/usr/local/www/status_logs_filter.php:183 +#: src/usr/local/www/status_logs_filter.php:329 +#: src/usr/local/www/status_logs_filter_dynamic.php:418 +#: src/usr/local/www/status_logs_vpn.php:170 +#: src/usr/local/www/status_logs_vpn.php:209 +#: src/usr/local/www/status_logs_vpn.php:390 +#: src/usr/local/www/status_logs_vpn.php:432 +#: src/usr/local/www/widgets/widgets/log.widget.php:136 msgid "Time" msgstr "" @@ -11069,6 +11400,11 @@ msgstr "" msgid "Top of page" msgstr "" +#: src/usr/local/www/graph.php:118 +#, php-format +msgid "Cannot get data about interface %s" +msgstr "" + #: src/usr/local/www/graph.php:138 msgid "In" msgstr "" @@ -11086,11 +11422,8 @@ msgid "AutoScale" msgstr "" #: src/usr/local/www/graph.php:147 -msgid "Graph shows last" -msgstr "" - -#: src/usr/local/www/graph.php:147 -msgid "seconds" +#, php-format +msgid "Graph shows last %s seconds" msgstr "" #: src/usr/local/www/graph.php:150 src/usr/local/www/graph_cpu.php:110 @@ -11145,68 +11478,111 @@ msgstr "" msgid "Cannot get CPU load" msgstr "" -#: src/usr/local/www/guiconfig.inc:268 -#, php-format -msgid "The field %s contains invalid characters." +#: src/usr/local/www/guiconfig.inc:160 +msgid "One Level" msgstr "" -#: src/usr/local/www/guiconfig.inc:274 -#, php-format -msgid "The field %s is required." +#: src/usr/local/www/guiconfig.inc:161 +msgid "Entire Subtree" msgstr "" -#: src/usr/local/www/guiconfig.inc:281 -msgid "The following input errors were detected:" +#: src/usr/local/www/guiconfig.inc:188 +msgid "Authentication and Accounting" msgstr "" -#: src/usr/local/www/guiconfig.inc:309 -msgid "Apply changes" +#: src/usr/local/www/guiconfig.inc:190 +#: src/usr/local/www/services_captiveportal.php:900 +#: src/usr/local/www/vpn_l2tp.php:338 +msgid "Accounting" msgstr "" -#: src/usr/local/www/guiconfig.inc:314 -msgid "apply" +#: src/usr/local/www/guiconfig.inc:250 +msgid "This Firewall" msgstr "" -#: src/usr/local/www/guiconfig.inc:314 -#: src/usr/local/www/services_unbound_acls.php:173 -msgid "save" +#: src/usr/local/www/guiconfig.inc:261 +msgid "autoselect" msgstr "" -#: src/usr/local/www/guiconfig.inc:314 -#: src/usr/local/www/vpn_ipsec_mobile.php:448 -msgid "create" +#: src/usr/local/www/guiconfig.inc:262 +msgid "100BASE-TX full-duplex" msgstr "" -#: src/usr/local/www/guiconfig.inc:334 -msgid "Undo" +#: src/usr/local/www/guiconfig.inc:263 +msgid "100BASE-TX half-duplex" msgstr "" -#: src/usr/local/www/guiconfig.inc:346 -#: src/usr/local/www/system_usermanager_settings_ldapacpicker.php:132 -msgid "Close" +#: src/usr/local/www/guiconfig.inc:264 +msgid "10BASE-T full-duplex" +msgstr "" + +#: src/usr/local/www/guiconfig.inc:265 +msgid "10BASE-T half-duplex" +msgstr "" + +#: src/usr/local/www/guiconfig.inc:268 src/usr/local/www/interfaces.php:2922 +#: src/usr/local/www/interfaces_wireless_edit.php:224 +msgid "Infrastructure (BSS)" +msgstr "" + +#: src/usr/local/www/guiconfig.inc:269 src/usr/local/www/interfaces.php:2922 +#: src/usr/local/www/interfaces_wireless_edit.php:225 +msgid "Ad-hoc (IBSS)" +msgstr "" + +#: src/usr/local/www/guiconfig.inc:270 src/usr/local/www/interfaces.php:2922 +#: src/usr/local/www/interfaces_wireless_edit.php:226 +msgid "Access Point" +msgstr "" + +#: src/usr/local/www/guiconfig.inc:277 +#, php-format +msgid "The field %s contains invalid characters." +msgstr "" + +#: src/usr/local/www/guiconfig.inc:283 +#, php-format +msgid "The field %s is required." +msgstr "" + +#: src/usr/local/www/guiconfig.inc:290 +msgid "The following input errors were detected:" msgstr "" -#: src/usr/local/www/guiconfig.inc:384 -#: src/usr/local/www/status_logs_common.inc:688 +#: src/usr/local/www/guiconfig.inc:344 +msgid "Apply changes" +msgstr "" + +#: src/usr/local/www/guiconfig.inc:350 +#: src/usr/local/www/status_logs_common.inc:736 msgid "The changes have been applied successfully." msgstr "" -#: src/usr/local/www/guiconfig.inc:391 +#: src/usr/local/www/guiconfig.inc:357 msgid "" "You can also <a href=\"status_filter_reload.php\">monitor</a> the filter " "reload progress." msgstr "" -#: src/usr/local/www/guiconfig.inc:1017 +#: src/usr/local/www/guiconfig.inc:543 src/usr/local/www/guiconfig.inc:594 +#, php-format +msgid "File %s is a directory." +msgstr "" + +#: src/usr/local/www/guiconfig.inc:545 src/usr/local/www/guiconfig.inc:596 +msgid "Log file started." +msgstr "" + +#: src/usr/local/www/guiconfig.inc:983 msgid "Currently viewing: " msgstr "" -#: src/usr/local/www/guiconfig.inc:1104 +#: src/usr/local/www/guiconfig.inc:1070 msgid "listing only first 10k items" msgstr "" -#: src/usr/local/www/guiconfig.inc:1114 -#: src/usr/local/www/services_dhcp.php:1225 +#: src/usr/local/www/guiconfig.inc:1080 +#: src/usr/local/www/services_dhcp.php:1184 #: src/usr/local/www/services_dhcpv6.php:846 #: src/usr/local/www/system_advanced_sysctl.php:203 #: src/usr/local/www/system_advanced_sysctl.php:252 @@ -11227,6 +11603,7 @@ msgid "High Avail. Sync" msgstr "" #: src/usr/local/www/head.inc:202 src/usr/local/www/pkg_mgr.php:207 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:183 msgid "Packages" msgstr "" @@ -11234,7 +11611,8 @@ msgstr "" msgid "Setup Wizard" msgstr "" -#: src/usr/local/www/head.inc:205 src/usr/local/www/status_logs_common.inc:127 +#: src/usr/local/www/head.inc:205 src/usr/local/www/status_logs.php:92 +#: src/usr/local/www/status_logs_common.inc:127 #: src/usr/local/www/system_gateway_groups.php:124 #: src/usr/local/www/system_gateway_groups_edit.php:180 #: src/usr/local/www/system_gateways.php:244 @@ -11285,14 +11663,14 @@ msgstr "" #: src/usr/local/www/load_balancer_virtual_server.php:121 #: src/usr/local/www/load_balancer_virtual_server_edit.php:193 #: src/usr/local/www/status_lb_pool.php:97 -#: src/usr/local/www/status_lb_vs.php:84 +#: src/usr/local/www/status_lb_vs.php:84 src/usr/local/www/status_logs.php:84 #: src/usr/local/www/status_logs_common.inc:117 #: src/usr/local/www/status_logs_settings.php:240 msgid "Load Balancer" msgstr "" #: src/usr/local/www/head.inc:254 src/usr/local/www/head.inc:288 -#: src/usr/local/www/services_dhcp.php:1052 +#: src/usr/local/www/services_dhcp.php:1062 #: src/usr/local/www/services_ntpd.php:267 #: src/usr/local/www/services_ntpd.php:279 #: src/usr/local/www/services_ntpd_gps.php:225 @@ -11315,7 +11693,8 @@ msgstr "" msgid "UPnP & NAT-PMP" msgstr "" -#: src/usr/local/www/head.inc:273 src/usr/local/www/interfaces.php:1646 +#: src/usr/local/www/head.inc:273 src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces_ppps_edit.php:455 #: src/usr/local/www/vpn_l2tp.php:219 src/usr/local/www/vpn_l2tp_users.php:63 #: src/usr/local/www/vpn_l2tp_users_edit.php:63 msgid "L2TP" @@ -11335,6 +11714,7 @@ msgstr "" #: src/usr/local/www/status_gateways.php:80 #: src/usr/local/www/status_gateways.php:86 #: src/usr/local/www/status_gateways.php:91 +#: src/usr/local/www/status_logs.php:90 #: src/usr/local/www/status_logs_common.inc:126 #: src/usr/local/www/system_gateway_groups.php:138 #: src/usr/local/www/system_gateway_groups.php:151 @@ -11343,6 +11723,7 @@ msgstr "" #: src/usr/local/www/system_gateways.php:268 #: src/usr/local/www/system_gateways_edit.php:631 #: src/usr/local/www/system_routes.php:261 +#: src/usr/local/www/widgets/include/gateways.inc:3 msgid "Gateways" msgstr "" @@ -11355,6 +11736,7 @@ msgid "DHCPv6 Leases" msgstr "" #: src/usr/local/www/head.inc:284 src/usr/local/www/status_filter_reload.php:67 +#: src/usr/local/www/status_filter_reload.php:94 msgid "Filter Reload" msgstr "" @@ -11389,7 +11771,7 @@ msgstr "" #: src/usr/local/www/services_captiveportal_vouchers_edit.php:71 #: src/usr/local/www/services_captiveportal_zones.php:93 #: src/usr/local/www/services_captiveportal_zones_edit.php:69 -#: src/usr/local/www/services_dhcp.php:696 +#: src/usr/local/www/services_dhcp.php:698 #: src/usr/local/www/services_dhcp_edit.php:410 #: src/usr/local/www/services_dhcp_relay.php:154 #: src/usr/local/www/services_dhcpv6.php:439 @@ -11406,13 +11788,13 @@ msgstr "" #: src/usr/local/www/services_ntpd_gps.php:225 #: src/usr/local/www/services_ntpd_pps.php:136 #: src/usr/local/www/services_pppoe.php:116 -#: src/usr/local/www/services_pppoe_edit.php:309 +#: src/usr/local/www/services_pppoe_edit.php:314 #: src/usr/local/www/services_rfc2136.php:92 #: src/usr/local/www/services_rfc2136_edit.php:160 -#: src/usr/local/www/services_router_advertisements.php:226 +#: src/usr/local/www/services_router_advertisements.php:228 #: src/usr/local/www/services_snmp.php:210 #: src/usr/local/www/services_unbound.php:251 -#: src/usr/local/www/services_unbound_acls.php:209 +#: src/usr/local/www/services_unbound_acls.php:208 #: src/usr/local/www/services_unbound_advanced.php:221 #: src/usr/local/www/services_unbound_domainoverride_edit.php:145 #: src/usr/local/www/services_unbound_host_edit.php:233 @@ -11441,6 +11823,7 @@ msgstr "" #: src/usr/local/www/interfaces_wireless.php:105 #: src/usr/local/www/interfaces_wireless.php:118 #: src/usr/local/www/interfaces_wireless_edit.php:201 +#: src/usr/local/www/status_logs.php:96 #: src/usr/local/www/status_logs_common.inc:129 #: src/usr/local/www/status_rrd_graph.php:448 #: src/usr/local/www/status_rrd_graph_settings.php:157 @@ -11469,6 +11852,7 @@ msgid "Routes" msgstr "" #: src/usr/local/www/head.inc:343 +#: src/usr/local/www/widgets/include/smart_status.inc:3 #: src/usr/local/www/widgets/widgets/smart_status.widget.php:72 msgid "SMART Status" msgstr "" @@ -11521,7 +11905,7 @@ msgstr "" msgid "FreeBSD Handbook" msgstr "" -#: src/usr/local/www/head.inc:434 +#: src/usr/local/www/head.inc:434 src/usr/local/www/head.inc:561 msgid "Notices" msgstr "" @@ -11534,9 +11918,9 @@ msgstr "" msgid "Available Widgets" msgstr "" -#: src/usr/local/www/head.inc:475 src/usr/local/www/status_logs_common.inc:262 -#: src/usr/local/www/status_logs_common.inc:470 -#: src/usr/local/www/status_logs_vpn.php:482 src/usr/local/www/system.php:533 +#: src/usr/local/www/head.inc:475 src/usr/local/www/status_logs_common.inc:310 +#: src/usr/local/www/status_logs_common.inc:518 +#: src/usr/local/www/status_logs_vpn.php:478 src/usr/local/www/system.php:533 msgid "Log Filter" msgstr "" @@ -11568,10 +11952,26 @@ msgid "" "Restore'>Backup/Restore page</a> and reinstall packages manually." msgstr "" +#: src/usr/local/www/head.inc:542 +msgid "This page is currently being managed by a remote machine." +msgstr "" + +#: src/usr/local/www/head.inc:600 +#: src/usr/local/www/system_usermanager_settings_ldapacpicker.php:132 +msgid "Close" +msgstr "" + #: src/usr/local/www/head.inc:601 msgid "Mark all as read" msgstr "" +#: src/usr/local/www/index.php:110 +#, php-format +msgid "" +"%s has detected a crash report or programming bug. Click <a " +"href='crash_reporter.php'>here</a> for more information." +msgstr "" + #: src/usr/local/www/index.php:166 msgid "Widget configuration has been changed." msgstr "" @@ -11596,511 +11996,535 @@ msgstr "" msgid "To bypass the wizard, click on the %s logo on the initial page." msgstr "" -#: src/usr/local/www/interfaces.php:286 -#, php-format -msgid "" -"Sorry, an alias with the name %s already exists. Interfaces cannot have the " -"same name as an alias." +#: src/usr/local/www/index.php:492 +msgid "Save dashboard layout" msgstr "" -#: src/usr/local/www/interfaces.php:451 +#: src/usr/local/www/index.php:503 +msgid "You have moved one or more widgets but have not yet saved" +msgstr "" + +#: src/usr/local/www/interfaces.php:443 msgid "You have already applied your settings!" msgstr "" -#: src/usr/local/www/interfaces.php:539 +#: src/usr/local/www/interfaces.php:487 +#, php-format +msgid "Interface %1$s (%2$s) is now disabled." +msgstr "" + +#: src/usr/local/www/interfaces.php:531 msgid "An interface with the specified description already exists." msgstr "" -#: src/usr/local/www/interfaces.php:548 +#: src/usr/local/www/interfaces.php:540 #, php-format msgid "Sorry, an alias with the name %s already exists." msgstr "" -#: src/usr/local/www/interfaces.php:554 +#: src/usr/local/www/interfaces.php:549 +#, php-format +msgid "Sorry, an interface group with the name %s already exists." +msgstr "" + +#: src/usr/local/www/interfaces.php:555 msgid "The interface description cannot contain only numbers." msgstr "" -#: src/usr/local/www/interfaces.php:558 +#: src/usr/local/www/interfaces.php:559 msgid "" "The DHCP Server is active on this interface and it can be used only with a " "static IP configuration. Please disable the DHCP Server service on this " "interface first, then change the interface configuration." msgstr "" -#: src/usr/local/www/interfaces.php:561 +#: src/usr/local/www/interfaces.php:562 msgid "" "The DHCP6 Server is active on this interface and it can be used only with a " "static IPv6 configuration. Please disable the DHCPv6 Server service on this " "interface first, then change the interface configuration." msgstr "" -#: src/usr/local/www/interfaces.php:567 +#: src/usr/local/www/interfaces.php:568 msgid "IPv4 address" msgstr "" -#: src/usr/local/www/interfaces.php:567 src/usr/local/www/interfaces.php:618 +#: src/usr/local/www/interfaces.php:568 src/usr/local/www/interfaces.php:619 msgid "Subnet bit count" msgstr "" -#: src/usr/local/www/interfaces.php:574 +#: src/usr/local/www/interfaces.php:575 msgid "" "This interface is referenced by IPv4 VIPs. Please delete those before " "setting the interface to 'none' configuration." msgstr "" -#: src/usr/local/www/interfaces.php:581 +#: src/usr/local/www/interfaces.php:582 msgid "Modem Port" msgstr "" -#: src/usr/local/www/interfaces.php:581 +#: src/usr/local/www/interfaces.php:582 #: src/usr/local/www/interfaces_ppps_edit.php:232 msgid "Phone Number" msgstr "" -#: src/usr/local/www/interfaces.php:587 src/usr/local/www/interfaces.php:590 +#: src/usr/local/www/interfaces.php:588 src/usr/local/www/interfaces.php:591 msgid "PPPoE username" msgstr "" -#: src/usr/local/www/interfaces.php:587 src/usr/local/www/interfaces.php:590 +#: src/usr/local/www/interfaces.php:588 src/usr/local/www/interfaces.php:591 msgid "PPPoE password" msgstr "" -#: src/usr/local/www/interfaces.php:587 src/usr/local/www/interfaces.php:597 -#: src/usr/local/www/interfaces.php:607 src/usr/local/www/interfaces.php:2571 -#: src/usr/local/www/interfaces.php:2707 +#: src/usr/local/www/interfaces.php:588 src/usr/local/www/interfaces.php:598 +#: src/usr/local/www/interfaces.php:608 src/usr/local/www/interfaces.php:2572 +#: src/usr/local/www/interfaces.php:2708 #: src/usr/local/www/interfaces_ppps_edit.php:238 #: src/usr/local/www/interfaces_ppps_edit.php:249 msgid "Dial on demand" msgstr "" -#: src/usr/local/www/interfaces.php:587 src/usr/local/www/interfaces.php:597 -#: src/usr/local/www/interfaces.php:607 +#: src/usr/local/www/interfaces.php:588 src/usr/local/www/interfaces.php:598 +#: src/usr/local/www/interfaces.php:608 #: src/usr/local/www/interfaces_ppps_edit.php:238 #: src/usr/local/www/interfaces_ppps_edit.php:249 msgid "Idle timeout value" msgstr "" -#: src/usr/local/www/interfaces.php:597 src/usr/local/www/interfaces.php:600 +#: src/usr/local/www/interfaces.php:598 src/usr/local/www/interfaces.php:601 msgid "PPTP username" msgstr "" -#: src/usr/local/www/interfaces.php:597 src/usr/local/www/interfaces.php:600 +#: src/usr/local/www/interfaces.php:598 src/usr/local/www/interfaces.php:601 msgid "PPTP password" msgstr "" -#: src/usr/local/www/interfaces.php:597 src/usr/local/www/interfaces.php:600 +#: src/usr/local/www/interfaces.php:598 src/usr/local/www/interfaces.php:601 msgid "PPTP local IP address" msgstr "" -#: src/usr/local/www/interfaces.php:597 src/usr/local/www/interfaces.php:600 +#: src/usr/local/www/interfaces.php:598 src/usr/local/www/interfaces.php:601 msgid "PPTP subnet" msgstr "" -#: src/usr/local/www/interfaces.php:597 src/usr/local/www/interfaces.php:600 +#: src/usr/local/www/interfaces.php:598 src/usr/local/www/interfaces.php:601 msgid "PPTP remote IP address" msgstr "" -#: src/usr/local/www/interfaces.php:607 src/usr/local/www/interfaces.php:610 +#: src/usr/local/www/interfaces.php:608 src/usr/local/www/interfaces.php:611 msgid "L2TP username" msgstr "" -#: src/usr/local/www/interfaces.php:607 src/usr/local/www/interfaces.php:610 +#: src/usr/local/www/interfaces.php:608 src/usr/local/www/interfaces.php:611 msgid "L2TP password" msgstr "" -#: src/usr/local/www/interfaces.php:607 src/usr/local/www/interfaces.php:610 +#: src/usr/local/www/interfaces.php:608 src/usr/local/www/interfaces.php:611 msgid "L2TP remote IP address" msgstr "" -#: src/usr/local/www/interfaces.php:625 +#: src/usr/local/www/interfaces.php:626 msgid "" "This interface is referenced by IPv6 VIPs. Please delete those before " "setting the interface to 'none' configuration." msgstr "" -#: src/usr/local/www/interfaces.php:632 src/usr/local/www/interfaces.php:651 -#: src/usr/local/www/interfaces.php:662 src/usr/local/www/interfaces.php:668 +#: src/usr/local/www/interfaces.php:633 src/usr/local/www/interfaces.php:652 +#: src/usr/local/www/interfaces.php:663 src/usr/local/www/interfaces.php:669 #, php-format msgid "You have to reassign the interface to be able to configure as %s." msgstr "" -#: src/usr/local/www/interfaces.php:635 +#: src/usr/local/www/interfaces.php:636 msgid "" "DHCPv6 Prefix Delegation size must be provided when Send IPv6 prefix hint " "flag is checked" msgstr "" -#: src/usr/local/www/interfaces.php:642 +#: src/usr/local/www/interfaces.php:643 msgid "You can only have one interface configured in 6rd with same prefix." msgstr "" -#: src/usr/local/www/interfaces.php:648 +#: src/usr/local/www/interfaces.php:649 msgid "6RD Border Gateway must be an IPv4 address." msgstr "" -#: src/usr/local/www/interfaces.php:657 +#: src/usr/local/www/interfaces.php:658 #, php-format msgid "You can only have one interface configured as 6to4." msgstr "" -#: src/usr/local/www/interfaces.php:672 +#: src/usr/local/www/interfaces.php:673 msgid "You must enter a valid hexadecimal number for the IPv6 prefix ID." msgstr "" -#: src/usr/local/www/interfaces.php:676 +#: src/usr/local/www/interfaces.php:677 msgid "You specified an IPv6 prefix ID that is out of range." msgstr "" -#: src/usr/local/www/interfaces.php:686 +#: src/usr/local/www/interfaces.php:687 #, php-format msgid "This track6 prefix ID is already being used in %s." msgstr "" -#: src/usr/local/www/interfaces.php:699 +#: src/usr/local/www/interfaces.php:700 msgid "A valid IPv4 address must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:703 +#: src/usr/local/www/interfaces.php:704 #, php-format msgid "IPv4 address %s is being used by or overlaps with:" msgstr "" -#: src/usr/local/www/interfaces.php:713 +#: src/usr/local/www/interfaces.php:714 msgid "This IPv4 address is the network address and cannot be used" msgstr "" -#: src/usr/local/www/interfaces.php:715 +#: src/usr/local/www/interfaces.php:716 msgid "This IPv4 address is the broadcast address and cannot be used" msgstr "" -#: src/usr/local/www/interfaces.php:722 +#: src/usr/local/www/interfaces.php:723 msgid "This IPv4 address conflicts with a Static Route." msgstr "" -#: src/usr/local/www/interfaces.php:731 +#: src/usr/local/www/interfaces.php:732 #: src/usr/local/www/services_dhcpv6_edit.php:159 msgid "A valid IPv6 address must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:734 +#: src/usr/local/www/interfaces.php:735 msgid "IPv6 link local addresses cannot be configured as an interface IP." msgstr "" -#: src/usr/local/www/interfaces.php:738 +#: src/usr/local/www/interfaces.php:739 #, php-format msgid "IPv6 address %s is being used by or overlaps with:" msgstr "" -#: src/usr/local/www/interfaces.php:748 +#: src/usr/local/www/interfaces.php:749 msgid "This IPv6 address conflicts with a Static Route." msgstr "" -#: src/usr/local/www/interfaces.php:756 src/usr/local/www/interfaces.php:759 +#: src/usr/local/www/interfaces.php:757 src/usr/local/www/interfaces.php:760 msgid "A valid subnet bit count must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:762 +#: src/usr/local/www/interfaces.php:763 msgid "A valid alias IP address must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:765 +#: src/usr/local/www/interfaces.php:766 msgid "A valid alias subnet bit count must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:768 +#: src/usr/local/www/interfaces.php:769 msgid "A valid alias IP address must be specified to reject DHCP Leases from." msgstr "" -#: src/usr/local/www/interfaces.php:783 +#: src/usr/local/www/interfaces.php:784 #: src/usr/local/www/system_routes_edit.php:127 msgid "A valid gateway must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:787 +#: src/usr/local/www/interfaces.php:788 msgid "The service name contains invalid characters." msgstr "" -#: src/usr/local/www/interfaces.php:790 src/usr/local/www/interfaces.php:813 +#: src/usr/local/www/interfaces.php:791 src/usr/local/www/interfaces.php:814 #: src/usr/local/www/interfaces_ppps_edit.php:273 msgid "The idle timeout value must be an integer." msgstr "" -#: src/usr/local/www/interfaces.php:794 +#: src/usr/local/www/interfaces.php:795 #: src/usr/local/www/interfaces_ppps_edit.php:277 msgid "A valid PPPoE reset hour must be specified (0-23)." msgstr "" -#: src/usr/local/www/interfaces.php:798 +#: src/usr/local/www/interfaces.php:799 #: src/usr/local/www/interfaces_ppps_edit.php:281 msgid "A valid PPPoE reset minute must be specified (0-59)." msgstr "" -#: src/usr/local/www/interfaces.php:801 +#: src/usr/local/www/interfaces.php:802 #: src/usr/local/www/interfaces_ppps_edit.php:284 msgid "A valid PPPoE reset date must be specified (mm/dd/yyyy)." msgstr "" -#: src/usr/local/www/interfaces.php:804 +#: src/usr/local/www/interfaces.php:805 msgid "A valid PPTP local IP address must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:807 +#: src/usr/local/www/interfaces.php:808 msgid "A valid PPTP subnet bit count must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:810 +#: src/usr/local/www/interfaces.php:811 msgid "A valid PPTP remote IP address must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:816 +#: src/usr/local/www/interfaces.php:817 #: src/usr/local/www/services_dhcp_edit.php:214 #: src/usr/local/www/services_wol.php:112 #: src/usr/local/www/services_wol_edit.php:114 msgid "A valid MAC address must be specified." msgstr "" -#: src/usr/local/www/interfaces.php:831 +#: src/usr/local/www/interfaces.php:832 #, php-format msgid "The MTU must be between %d and %d bytes." msgstr "" -#: src/usr/local/www/interfaces.php:843 +#: src/usr/local/www/interfaces.php:844 msgid "The MTU of a VLAN cannot be greater than that of its parent interface." msgstr "" -#: src/usr/local/www/interfaces.php:861 +#: src/usr/local/www/interfaces.php:862 #, php-format msgid "Interface %s (VLAN) has MTU set to a larger value" msgstr "" -#: src/usr/local/www/interfaces.php:868 +#: src/usr/local/www/interfaces.php:869 msgid "The MSS must be an integer between 576 and 65535 bytes." msgstr "" -#: src/usr/local/www/interfaces.php:877 src/usr/local/www/interfaces.php:2926 +#: src/usr/local/www/interfaces.php:878 src/usr/local/www/interfaces.php:2927 #: src/usr/local/www/status_interfaces.php:172 msgid "SSID" msgstr "" -#: src/usr/local/www/interfaces.php:880 +#: src/usr/local/www/interfaces.php:881 msgid "A specific channel, not auto, must be selected for Access Point mode." msgstr "" -#: src/usr/local/www/interfaces.php:885 +#: src/usr/local/www/interfaces.php:886 msgid "802.11n standards require enabling WME." msgstr "" -#: src/usr/local/www/interfaces.php:891 +#: src/usr/local/www/interfaces.php:892 msgid "Key Rotation must be an integer between 1 and 9999." msgstr "" -#: src/usr/local/www/interfaces.php:894 +#: src/usr/local/www/interfaces.php:895 msgid "Master Key Regeneration must be an integer between 1 and 9999." msgstr "" -#: src/usr/local/www/interfaces.php:898 +#: src/usr/local/www/interfaces.php:899 msgid "Master Key Regeneration must be greater than Key Rotation." msgstr "" -#: src/usr/local/www/interfaces.php:903 +#: src/usr/local/www/interfaces.php:904 msgid "802.1X Authentication Server must be an IP or hostname." msgstr "" -#: src/usr/local/www/interfaces.php:908 +#: src/usr/local/www/interfaces.php:909 msgid "Secondary 802.1X Authentication Server must be an IP or hostname." msgstr "" -#: src/usr/local/www/interfaces.php:913 +#: src/usr/local/www/interfaces.php:914 msgid "" "802.1X Authentication Server Port must be a valid port number (1-65535)." msgstr "" -#: src/usr/local/www/interfaces.php:918 +#: src/usr/local/www/interfaces.php:919 msgid "" "Secondary 802.1X Authentication Server Port must be a valid port number " "(1-65535)." msgstr "" -#: src/usr/local/www/interfaces.php:923 +#: src/usr/local/www/interfaces.php:924 msgid "Invalid channel specified." msgstr "" -#: src/usr/local/www/interfaces.php:926 +#: src/usr/local/www/interfaces.php:927 msgid "Channel must be between 0-255." msgstr "" -#: src/usr/local/www/interfaces.php:931 +#: src/usr/local/www/interfaces.php:932 msgid "Distance must be an integer." msgstr "" -#: src/usr/local/www/interfaces.php:935 +#: src/usr/local/www/interfaces.php:936 msgid "Channel selected is not valid for 802.11a or 802.11na." msgstr "" -#: src/usr/local/www/interfaces.php:940 +#: src/usr/local/www/interfaces.php:941 msgid "Channel selected is not valid for 802.11b or 802.11g." msgstr "" -#: src/usr/local/www/interfaces.php:944 +#: src/usr/local/www/interfaces.php:945 msgid "Invalid option chosen for OFDM Protection Mode" msgstr "" -#: src/usr/local/www/interfaces.php:950 +#: src/usr/local/www/interfaces.php:951 msgid "The WPA passphrase must be between 8 and 63 characters long." msgstr "" -#: src/usr/local/www/interfaces.php:956 +#: src/usr/local/www/interfaces.php:957 msgid "A WPA Passphrase must be specified when WPA PSK is enabled." msgstr "" -#: src/usr/local/www/interfaces.php:962 +#: src/usr/local/www/interfaces.php:963 msgid "PPP Password and confirmed password must match!" msgstr "" -#: src/usr/local/www/interfaces.php:966 +#: src/usr/local/www/interfaces.php:967 msgid "PPPoE Password and confirmed password must match!" msgstr "" -#: src/usr/local/www/interfaces.php:970 +#: src/usr/local/www/interfaces.php:971 msgid "PTPP Password and confirmed password must match!" msgstr "" -#: src/usr/local/www/interfaces.php:1620 +#: src/usr/local/www/interfaces.php:1621 #, php-format msgid "" "Unable to change mode to %s.\t You may already have the maximum number of " "wireless clones supported in this mode." msgstr "" -#: src/usr/local/www/interfaces.php:1646 +#: src/usr/local/www/interfaces.php:1647 msgid "Static IPv4" msgstr "" -#: src/usr/local/www/interfaces.php:1646 +#: src/usr/local/www/interfaces.php:1647 #: src/usr/local/www/services_dhcp_edit.php:410 +#: src/usr/local/www/status_logs.php:76 #: src/usr/local/www/status_logs_common.inc:112 #: src/usr/local/www/status_logs_settings.php:235 msgid "DHCP" msgstr "" -#: src/usr/local/www/interfaces.php:1646 +#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces_ppps_edit.php:455 +#: src/usr/local/www/status_logs.php:82 #: src/usr/local/www/status_logs_common.inc:115 #: src/usr/local/www/status_logs_settings.php:238 msgid "PPP" msgstr "" -#: src/usr/local/www/interfaces.php:1646 +#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces_ppps_edit.php:455 msgid "PPPoE" msgstr "" -#: src/usr/local/www/interfaces.php:1646 +#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces_ppps_edit.php:455 msgid "PPTP" msgstr "" -#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1648 msgid "Static IPv6" msgstr "" -#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1648 msgid "DHCP6" msgstr "" -#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1648 msgid "SLAAC" msgstr "" -#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1648 msgid "6rd Tunnel" msgstr "" -#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1648 msgid "6to4 Tunnel" msgstr "" -#: src/usr/local/www/interfaces.php:1647 +#: src/usr/local/www/interfaces.php:1648 msgid "Track Interface" msgstr "" -#: src/usr/local/www/interfaces.php:1701 +#: src/usr/local/www/interfaces.php:1658 +msgid "Default (no preference, typically autoselect)" +msgstr "" + +#: src/usr/local/www/interfaces.php:1659 +msgid "------- Media Supported by this interface -------" +msgstr "" + +#: src/usr/local/www/interfaces.php:1702 #, php-format msgid "The %s configuration has been changed." msgstr "" -#: src/usr/local/www/interfaces.php:1702 +#: src/usr/local/www/interfaces.php:1703 msgid "" "You must apply the changes in order for them to take effect. Don't forget to " "adjust the DHCP Server range if needed after applying." msgstr "" -#: src/usr/local/www/interfaces.php:1715 +#: src/usr/local/www/interfaces.php:1716 msgid "General configuration" msgstr "" -#: src/usr/local/www/interfaces.php:1730 +#: src/usr/local/www/interfaces.php:1731 msgid "Enter a description (name) for the interface here." msgstr "" -#: src/usr/local/www/interfaces.php:1734 +#: src/usr/local/www/interfaces.php:1735 msgid "IPv4 Configuration Type" msgstr "" -#: src/usr/local/www/interfaces.php:1741 +#: src/usr/local/www/interfaces.php:1742 msgid "IPv6 Configuration Type" msgstr "" -#: src/usr/local/www/interfaces.php:1748 +#: src/usr/local/www/interfaces.php:1749 #: src/usr/local/www/services_captiveportal_mac_edit.php:241 #: src/usr/local/www/services_dhcp_edit.php:425 #: src/usr/local/www/status_interfaces.php:144 msgid "MAC Address" msgstr "" -#: src/usr/local/www/interfaces.php:1756 +#: src/usr/local/www/interfaces.php:1757 #: src/usr/local/www/services_captiveportal_mac_edit.php:249 #: src/usr/local/www/services_dhcp_edit.php:433 msgid "Copy My MAC" msgstr "" -#: src/usr/local/www/interfaces.php:1761 +#: src/usr/local/www/interfaces.php:1762 #: src/usr/local/www/services_captiveportal_mac_edit.php:254 #: src/usr/local/www/services_dhcp_edit.php:438 msgid "MAC controls" msgstr "" -#: src/usr/local/www/interfaces.php:1764 +#: src/usr/local/www/interfaces.php:1765 msgid "" "This field can be used to modify (\"spoof\") the MAC address of this " "interface.<br />Enter a MAC address in the following format: xx:xx:xx:xx:xx:" "xx or leave blank" msgstr "" -#: src/usr/local/www/interfaces.php:1770 +#: src/usr/local/www/interfaces.php:1771 #: src/usr/local/www/interfaces_ppps_edit.php:896 #: src/usr/local/www/status_interfaces.php:167 msgid "MTU" msgstr "" -#: src/usr/local/www/interfaces.php:1773 +#: src/usr/local/www/interfaces.php:1774 msgid "" "If you leave this field blank, the adapter's default MTU will be used. This " "is typically 1500 bytes but can vary in some circumstances." msgstr "" -#: src/usr/local/www/interfaces.php:1778 +#: src/usr/local/www/interfaces.php:1779 msgid "MSS" msgstr "" -#: src/usr/local/www/interfaces.php:1781 +#: src/usr/local/www/interfaces.php:1782 msgid "" "If you enter a value in this field, then MSS clamping for TCP connections to " "the value entered above minus 40 (TCP/IP header size) will be in effect." msgstr "" -#: src/usr/local/www/interfaces.php:1787 +#: src/usr/local/www/interfaces.php:1788 msgid "Speed and Duplex" msgstr "" -#: src/usr/local/www/interfaces.php:1790 +#: src/usr/local/www/interfaces.php:1791 msgid "" "Here you can explicitly set speed and duplex mode for this interface.<br /" ">WARNING: You MUST leave this set to autoselect (automatically negotiate " @@ -12108,110 +12532,106 @@ msgid "" "forced." msgstr "" -#: src/usr/local/www/interfaces.php:1796 +#: src/usr/local/www/interfaces.php:1797 msgid "Static IPv4 configuration" msgstr "" -#: src/usr/local/www/interfaces.php:1801 +#: src/usr/local/www/interfaces.php:1802 #: src/usr/local/www/status_interfaces.php:149 msgid "IPv4 Address" msgstr "" -#: src/usr/local/www/interfaces.php:1805 +#: src/usr/local/www/interfaces.php:1806 msgid "IPv4 Upstream gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1809 +#: src/usr/local/www/interfaces.php:1810 msgid "IPv4 Upstream Gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1816 src/usr/local/www/interfaces.php:1847 +#: src/usr/local/www/interfaces.php:1817 src/usr/local/www/interfaces.php:1848 msgid "Add a new gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1821 +#: src/usr/local/www/interfaces.php:1822 msgid "You can manage gateways by " msgstr "" -#: src/usr/local/www/interfaces.php:1821 +#: src/usr/local/www/interfaces.php:1822 msgid " clicking here" msgstr "" -#: src/usr/local/www/interfaces.php:1819 +#: src/usr/local/www/interfaces.php:1820 msgid "" "If this interface is an Internet connection, select an existing Gateway from " "the list or add a new one using the \"Add\" button.<br />On local LANs the " "upstream gateway should be \"none\"." msgstr "" -#: src/usr/local/www/interfaces.php:1827 +#: src/usr/local/www/interfaces.php:1828 msgid "Static IPv6 configuration" msgstr "" -#: src/usr/local/www/interfaces.php:1836 +#: src/usr/local/www/interfaces.php:1837 msgid "IPv6 Upstream gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1840 +#: src/usr/local/www/interfaces.php:1841 msgid "IPv6 Upstream Gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1850 +#: src/usr/local/www/interfaces.php:1851 msgid "" "If this interface is an Internet connection, select an existing Gateway from " "the list or add a new one using the \"Add\" button.<br />On local LANs the " "upstream gateway should be \"none\". " msgstr "" -#: src/usr/local/www/interfaces.php:1857 +#: src/usr/local/www/interfaces.php:1858 msgid "New IPv6 gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1861 src/usr/local/www/interfaces.php:3161 -msgid "Default" -msgstr "" - -#: src/usr/local/www/interfaces.php:1868 src/usr/local/www/interfaces.php:3168 +#: src/usr/local/www/interfaces.php:1869 src/usr/local/www/interfaces.php:3169 #: src/usr/local/www/system_gateways_edit.php:700 msgid "Gateway name" msgstr "" -#: src/usr/local/www/interfaces.php:1875 +#: src/usr/local/www/interfaces.php:1876 #: src/usr/local/www/status_interfaces.php:155 msgid "Gateway IPv6" msgstr "" -#: src/usr/local/www/interfaces.php:1908 +#: src/usr/local/www/interfaces.php:1909 msgid "DHCP client configuration" msgstr "" -#: src/usr/local/www/interfaces.php:1911 +#: src/usr/local/www/interfaces.php:1912 #: src/usr/local/www/status_rrd_graph.php:551 msgid "Options" msgstr "" -#: src/usr/local/www/interfaces.php:1934 +#: src/usr/local/www/interfaces.php:1935 msgid "" "The value in this field is sent as the DHCP client identifier and hostname " "when requesting a DHCP lease. Some ISPs may require this (for client " "identification)." msgstr "" -#: src/usr/local/www/interfaces.php:1938 +#: src/usr/local/www/interfaces.php:1939 msgid "Alias IPv4 address" msgstr "" -#: src/usr/local/www/interfaces.php:1940 +#: src/usr/local/www/interfaces.php:1941 msgid "" "The value in this field is used as a fixed alias IPv4 address by the DHCP " "client." msgstr "" -#: src/usr/local/www/interfaces.php:1944 +#: src/usr/local/www/interfaces.php:1945 msgid "Reject leases from" msgstr "" -#: src/usr/local/www/interfaces.php:1947 +#: src/usr/local/www/interfaces.php:1948 msgid "" "If there is a certain upstream DHCP server that should be ignored, place the " "IP address or subnet of the DHCP server to be ignored here. This is useful " @@ -12219,99 +12639,99 @@ msgid "" "upstream sync." msgstr "" -#: src/usr/local/www/interfaces.php:1950 +#: src/usr/local/www/interfaces.php:1951 msgid "Protocol timing" msgstr "" -#: src/usr/local/www/interfaces.php:1958 +#: src/usr/local/www/interfaces.php:1959 #: src/usr/local/www/load_balancer_setting.php:152 msgid "Timeout" msgstr "" -#: src/usr/local/www/interfaces.php:1965 +#: src/usr/local/www/interfaces.php:1966 #: src/usr/local/www/load_balancer_pool_edit.php:378 msgid "Retry" msgstr "" -#: src/usr/local/www/interfaces.php:1973 +#: src/usr/local/www/interfaces.php:1974 msgid "Select timeout" msgstr "" -#: src/usr/local/www/interfaces.php:1987 +#: src/usr/local/www/interfaces.php:1988 msgid "Backoff cutoff" msgstr "" -#: src/usr/local/www/interfaces.php:1994 +#: src/usr/local/www/interfaces.php:1995 msgid "Initial interval" msgstr "" -#: src/usr/local/www/interfaces.php:1998 +#: src/usr/local/www/interfaces.php:1999 msgid "Presets" msgstr "" -#: src/usr/local/www/interfaces.php:2033 +#: src/usr/local/www/interfaces.php:2034 msgid "" "The values in these fields are DHCP protocol timings used when requesting a " "lease.<br /><a href=\"http://www.freebsd.org/cgi/man.cgi?query=dhclient." "conf&sektion=5#PROTOCOL_TIMING\">See here more information</a>" msgstr "" -#: src/usr/local/www/interfaces.php:2040 src/usr/local/www/interfaces.php:2103 -#: src/usr/local/www/interfaces.php:1923 +#: src/usr/local/www/interfaces.php:2041 src/usr/local/www/interfaces.php:2104 +#: src/usr/local/www/interfaces.php:1924 msgid "Config file override" msgstr "" -#: src/usr/local/www/interfaces.php:2050 +#: src/usr/local/www/interfaces.php:2051 msgid "Lease Requirements and Requests" msgstr "" -#: src/usr/local/www/interfaces.php:2055 src/usr/local/www/interfaces.php:2164 +#: src/usr/local/www/interfaces.php:2056 src/usr/local/www/interfaces.php:2165 msgid "Send options" msgstr "" -#: src/usr/local/www/interfaces.php:2065 +#: src/usr/local/www/interfaces.php:2066 msgid "Request options" msgstr "" -#: src/usr/local/www/interfaces.php:2073 +#: src/usr/local/www/interfaces.php:2074 msgid "Require options" msgstr "" -#: src/usr/local/www/interfaces.php:2080 +#: src/usr/local/www/interfaces.php:2081 msgid "Option modifiers" msgstr "" -#: src/usr/local/www/interfaces.php:2090 +#: src/usr/local/www/interfaces.php:2091 msgid "DHCP6 client configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2111 +#: src/usr/local/www/interfaces.php:2112 msgid "Use IPv4 connectivity as parent interface" msgstr "" -#: src/usr/local/www/interfaces.php:2118 +#: src/usr/local/www/interfaces.php:2119 msgid "Request only an IPv6 prefix" msgstr "" -#: src/usr/local/www/interfaces.php:2125 +#: src/usr/local/www/interfaces.php:2126 msgid "DHCPv6 Prefix Delegation size" msgstr "" -#: src/usr/local/www/interfaces.php:2128 +#: src/usr/local/www/interfaces.php:2129 msgid "" "The value in this field is the delegated prefix length provided by the " "DHCPv6 server. Normally specified by the ISP." msgstr "" -#: src/usr/local/www/interfaces.php:2132 +#: src/usr/local/www/interfaces.php:2133 msgid "Send IPv6 prefix hint" msgstr "" -#: src/usr/local/www/interfaces.php:2139 +#: src/usr/local/www/interfaces.php:2140 msgid "Configuration File Override" msgstr "" -#: src/usr/local/www/interfaces.php:2142 +#: src/usr/local/www/interfaces.php:2143 msgid "" "The value in this field is the full absolute path to a DHCP client " "configuration file.\t [/[dirname/[.../]]filename[.ext]]<br />Value " @@ -12321,215 +12741,220 @@ msgid "" "ISPs may require certain options be or not be sent." msgstr "" -#: src/usr/local/www/interfaces.php:2151 +#: src/usr/local/www/interfaces.php:2152 msgid "Advanced DHCP6 client configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2156 +#: src/usr/local/www/interfaces.php:2157 msgid "Information only" msgstr "" -#: src/usr/local/www/interfaces.php:2174 +#: src/usr/local/www/interfaces.php:2175 msgid "Request Options" msgstr "" -#: src/usr/local/www/interfaces.php:2182 +#: src/usr/local/www/interfaces.php:2183 msgid "Scripts" msgstr "" -#: src/usr/local/www/interfaces.php:2188 +#: src/usr/local/www/interfaces.php:2189 msgid "Identity Association Statement" msgstr "" -#: src/usr/local/www/interfaces.php:2267 +#: src/usr/local/www/interfaces.php:2268 msgid "Prefix interface statement" msgstr "" -#: src/usr/local/www/interfaces.php:2285 +#: src/usr/local/www/interfaces.php:2286 msgid "Authentication statement" msgstr "" -#: src/usr/local/www/interfaces.php:2317 +#: src/usr/local/www/interfaces.php:2318 msgid "Keyinfo statement" msgstr "" -#: src/usr/local/www/interfaces.php:2362 +#: src/usr/local/www/interfaces.php:2363 msgid "6RD Configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2367 +#: src/usr/local/www/interfaces.php:2368 msgid "6RD Prefix" msgstr "" -#: src/usr/local/www/interfaces.php:2374 +#: src/usr/local/www/interfaces.php:2375 msgid "6RD Border relay" msgstr "" -#: src/usr/local/www/interfaces.php:2381 +#: src/usr/local/www/interfaces.php:2382 msgid "6RD IPv4 Prefix length" msgstr "" -#: src/usr/local/www/interfaces.php:2384 +#: src/usr/local/www/interfaces.php:2385 msgid "" "6RD IPv4 prefix length. Normally specified by the ISP. A value of 0 means we " "embed the entire IPv4 address in the 6RD prefix." msgstr "" -#: src/usr/local/www/interfaces.php:2389 +#: src/usr/local/www/interfaces.php:2390 msgid "Track IPv6 Interface" msgstr "" -#: src/usr/local/www/interfaces.php:2431 +#: src/usr/local/www/interfaces.php:2432 msgid "IPv6 Interface" msgstr "" -#: src/usr/local/www/interfaces.php:2434 +#: src/usr/local/www/interfaces.php:2435 msgid "selects the dynamic IPv6 WAN interface to track for configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2442 +#: src/usr/local/www/interfaces.php:2443 msgid "IPv6 Prefix ID" msgstr "" -#: src/usr/local/www/interfaces.php:2445 +#: src/usr/local/www/interfaces.php:2446 msgid "" "<span id=\"track6-prefix-id-range\"></span>The value in this field is the " "(Delegated) IPv6 prefix ID. This determines the configurable network ID " "based on the dynamic IPv6 connection. The default value is 0." msgstr "" -#: src/usr/local/www/interfaces.php:2458 +#: src/usr/local/www/interfaces.php:2459 #: src/usr/local/www/interfaces_ppps_edit.php:554 msgid "PPP Configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2463 src/usr/local/www/interfaces.php:2897 +#: src/usr/local/www/interfaces.php:2464 src/usr/local/www/interfaces.php:2898 #: src/usr/local/www/interfaces_ppps_edit.php:582 msgid "Country" msgstr "" -#: src/usr/local/www/interfaces.php:2470 +#: src/usr/local/www/interfaces.php:2471 #: src/usr/local/www/interfaces_ppps_edit.php:589 msgid "Provider" msgstr "" -#: src/usr/local/www/interfaces.php:2477 +#: src/usr/local/www/interfaces.php:2478 #: src/usr/local/www/interfaces_ppps_edit.php:596 msgid "Plan" msgstr "" -#: src/usr/local/www/interfaces.php:2480 +#: src/usr/local/www/interfaces.php:2481 #: src/usr/local/www/interfaces_ppps_edit.php:599 msgid "Select to fill in data for your service provider." msgstr "" -#: src/usr/local/www/interfaces.php:2498 +#: src/usr/local/www/interfaces.php:2499 #: src/usr/local/www/interfaces_ppps_edit.php:645 msgid "Phone number" msgstr "" -#: src/usr/local/www/interfaces.php:2501 +#: src/usr/local/www/interfaces.php:2502 #: src/usr/local/www/interfaces_ppps_edit.php:648 msgid "Typically *99# for GSM networks and #777 for CDMA networks" msgstr "" -#: src/usr/local/www/interfaces.php:2505 +#: src/usr/local/www/interfaces.php:2506 msgid "Access Point Name" msgstr "" -#: src/usr/local/www/interfaces.php:2531 +#: src/usr/local/www/interfaces.php:2532 msgid "Modem port" msgstr "" -#: src/usr/local/www/interfaces.php:2538 +#: src/usr/local/www/interfaces.php:2539 msgid "Advanced PPP" msgstr "" -#: src/usr/local/www/interfaces.php:2540 +#: src/usr/local/www/interfaces.php:2541 msgid "Create a new PPP configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2545 +#: src/usr/local/www/interfaces.php:2546 msgid "PPPoE Configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2564 +#: src/usr/local/www/interfaces.php:2565 #: src/usr/local/www/interfaces_ppps_edit.php:701 msgid "Service name" msgstr "" -#: src/usr/local/www/interfaces.php:2567 +#: src/usr/local/www/interfaces.php:2568 msgid "This field can usually be left empty" msgstr "" -#: src/usr/local/www/interfaces.php:2579 +#: src/usr/local/www/interfaces.php:2580 msgid "Idle timeout" msgstr "" -#: src/usr/local/www/interfaces.php:2583 src/usr/local/www/interfaces.php:2720 +#: src/usr/local/www/interfaces.php:2584 src/usr/local/www/interfaces.php:2721 msgid "" "If no qualifying outgoing packets are transmitted for the specified number " "of seconds, the connection is brought down. An idle timeout of zero disables " "this feature." msgstr "" -#: src/usr/local/www/interfaces.php:2588 +#: src/usr/local/www/interfaces.php:2591 +#: src/usr/local/www/interfaces_ppps_edit.php:730 +msgid "Pre-set" +msgstr "" + +#: src/usr/local/www/interfaces.php:2589 msgid "Periodic reset" msgstr "" -#: src/usr/local/www/interfaces.php:2591 +#: src/usr/local/www/interfaces.php:2592 #: src/usr/local/www/interfaces_ppps_edit.php:732 msgid "Select a reset timing type" msgstr "" -#: src/usr/local/www/interfaces.php:2593 +#: src/usr/local/www/interfaces.php:2594 msgid "Custom reset" msgstr "" -#: src/usr/local/www/interfaces.php:2602 +#: src/usr/local/www/interfaces.php:2603 msgid "Hour (0-23)" msgstr "" -#: src/usr/local/www/interfaces.php:2610 +#: src/usr/local/www/interfaces.php:2611 msgid "Minutes (0-59)" msgstr "" -#: src/usr/local/www/interfaces.php:2618 +#: src/usr/local/www/interfaces.php:2619 msgid "Specific date (mm/dd/yyyy)" msgstr "" -#: src/usr/local/www/interfaces.php:2620 +#: src/usr/local/www/interfaces.php:2621 msgid "" "If you leave the date field empty, the reset will be executed each day at " "the time you specified using the minutes and hour field" msgstr "" -#: src/usr/local/www/interfaces.php:2624 +#: src/usr/local/www/interfaces.php:2625 msgid "cron based reset" msgstr "" -#: src/usr/local/www/interfaces.php:2663 src/usr/local/www/interfaces.php:2668 -#: src/usr/local/www/interfaces.php:2731 src/usr/local/www/interfaces.php:2736 +#: src/usr/local/www/interfaces.php:2664 src/usr/local/www/interfaces.php:2669 +#: src/usr/local/www/interfaces.php:2732 src/usr/local/www/interfaces.php:2737 msgid "Advanced and MLPPP" msgstr "" -#: src/usr/local/www/interfaces.php:2676 +#: src/usr/local/www/interfaces.php:2677 msgid "PPTP/L2TP Configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2695 +#: src/usr/local/www/interfaces.php:2696 #: src/usr/local/www/interfaces_ppps_edit.php:249 #: src/usr/local/www/interfaces_ppps_edit.php:252 msgid "Local IP address" msgstr "" -#: src/usr/local/www/interfaces.php:2701 +#: src/usr/local/www/interfaces.php:2702 #: src/usr/local/www/interfaces_ppps_edit.php:249 #: src/usr/local/www/interfaces_ppps_edit.php:252 msgid "Remote IP address" msgstr "" -#: src/usr/local/www/interfaces.php:2711 +#: src/usr/local/www/interfaces.php:2712 msgid "" "This option causes the interface to operate in dial-on-demand mode, allowing " "you to have a virtual full time connection. The interface is configured, but " @@ -12537,106 +12962,150 @@ msgid "" "traffic is detected." msgstr "" -#: src/usr/local/www/interfaces.php:2716 +#: src/usr/local/www/interfaces.php:2717 msgid "Idle timeout (seconds)" msgstr "" -#: src/usr/local/www/interfaces.php:2725 +#: src/usr/local/www/interfaces.php:2726 msgid "There are additional Local and Remote IP addresses defined for MLPPP." msgstr "" -#: src/usr/local/www/interfaces.php:2746 +#: src/usr/local/www/interfaces.php:2747 msgid "" "Common wireless configuration - Settings apply to all wireless networks on " msgstr "" -#: src/usr/local/www/interfaces.php:2750 +#: src/usr/local/www/interfaces.php:2751 msgid "Persist common settings" msgstr "" -#: src/usr/local/www/interfaces.php:2770 +#: src/usr/local/www/interfaces.php:2771 msgid "Standard" msgstr "" -#: src/usr/local/www/interfaces.php:2778 -msgid "802.11g OFDM Protection Mode" +#: src/usr/local/www/interfaces.php:2781 src/usr/local/www/interfaces.php:2831 +msgid "Off" msgstr "" #: src/usr/local/www/interfaces.php:2781 +msgid "CTS to self" +msgstr "" + +#: src/usr/local/www/interfaces.php:2781 +msgid "RTS and CTS" +msgstr "" + +#: src/usr/local/www/interfaces.php:2779 +msgid "802.11g OFDM Protection Mode" +msgstr "" + +#: src/usr/local/www/interfaces.php:2782 msgid "" "For IEEE 802.11g, use the specified technique for protecting OFDM frames in " "a mixed 11b/11g network." msgstr "" -#: src/usr/local/www/interfaces.php:2815 +#: src/usr/local/www/interfaces.php:2792 src/usr/local/www/interfaces.php:2840 +#: src/usr/local/www/interfaces.php:2849 +#: src/usr/local/www/vpn_ipsec_phase1.php:675 +#: src/usr/local/www/vpn_ipsec_phase1.php:860 +#: src/usr/local/www/vpn_ipsec_phase2.php:663 +msgid "Auto" +msgstr "" + +#: src/usr/local/www/interfaces.php:2816 #: src/usr/local/www/status_interfaces.php:171 msgid "Channel" msgstr "" -#: src/usr/local/www/interfaces.php:2818 +#: src/usr/local/www/interfaces.php:2819 msgid "" "Legend: wireless standards - channel # (frequency @ max TX power / TX power " "allowed in reg. domain)<br />Not all channels may be supported by your " "card. Auto may override the wireless standard selected above." msgstr "" -#: src/usr/local/www/interfaces.php:2823 +#: src/usr/local/www/interfaces.php:2824 msgid "Antenna Settings" msgstr "" #: src/usr/local/www/interfaces.php:2831 +msgid "On" +msgstr "" + +#: src/usr/local/www/interfaces.php:2832 msgid "Diversity" msgstr "" -#: src/usr/local/www/interfaces.php:2840 +#: src/usr/local/www/interfaces.php:2840 src/usr/local/www/interfaces.php:2849 +msgid "#1" +msgstr "" + +#: src/usr/local/www/interfaces.php:2840 src/usr/local/www/interfaces.php:2849 +msgid "#2" +msgstr "" + +#: src/usr/local/www/interfaces.php:2841 msgid "Transmit antenna" msgstr "" -#: src/usr/local/www/interfaces.php:2849 +#: src/usr/local/www/interfaces.php:2850 msgid "Receive antenna" msgstr "" -#: src/usr/local/www/interfaces.php:2852 +#: src/usr/local/www/interfaces.php:2853 msgid "" "Note: The antenna numbers do not always match up with the labels on the card." msgstr "" -#: src/usr/local/www/interfaces.php:2861 +#: src/usr/local/www/interfaces.php:2862 msgid "Distance setting (meters)" msgstr "" -#: src/usr/local/www/interfaces.php:2864 +#: src/usr/local/www/interfaces.php:2865 msgid "" "This field can be used to tune ACK/CTS timers to fit the distance between AP " "and Client" msgstr "" -#: src/usr/local/www/interfaces.php:2870 +#: src/usr/local/www/interfaces.php:2871 msgid "Regulatory settings" msgstr "" -#: src/usr/local/www/interfaces.php:2882 +#: src/usr/local/www/interfaces.php:2883 msgid "Regulatory domain" msgstr "" -#: src/usr/local/www/interfaces.php:2885 +#: src/usr/local/www/interfaces.php:2886 msgid "" "Some cards have a default that is not recognized and require changing the " "regulatory domain to one in this list for the changes to other regulatory " "settings to work" msgstr "" -#: src/usr/local/www/interfaces.php:2900 +#: src/usr/local/www/interfaces.php:2901 msgid "" "Any country setting other than \"Default\" will override the regulatory " "domain setting" msgstr "" -#: src/usr/local/www/interfaces.php:2904 -msgid "Location" +#: src/usr/local/www/interfaces.php:2907 +msgid "Indoor" +msgstr "" + +#: src/usr/local/www/interfaces.php:2907 +msgid "Outdoor" msgstr "" #: src/usr/local/www/interfaces.php:2907 +msgid "Anywhere" +msgstr "" + +#: src/usr/local/www/interfaces.php:2905 +msgid "Location" +msgstr "" + +#: src/usr/local/www/interfaces.php:2908 msgid "" "These settings may affect which channels are available and the maximum " "transmit power allowed on those channels. Using the correct settings to " @@ -12647,137 +13116,180 @@ msgid "" "additional channels that are not already supported." msgstr "" -#: src/usr/local/www/interfaces.php:2915 +#: src/usr/local/www/interfaces.php:2916 msgid "Network-specific wireless configuration" msgstr "" -#: src/usr/local/www/interfaces.php:2934 -msgid "Minimum wireless standard" +#: src/usr/local/www/interfaces.php:2937 +msgid "802.11g" msgstr "" #: src/usr/local/www/interfaces.php:2937 +msgid "802.11n" +msgstr "" + +#: src/usr/local/www/interfaces.php:2935 +msgid "Minimum wireless standard" +msgstr "" + +#: src/usr/local/www/interfaces.php:2938 msgid "" "When operating as an access point, allow only stations capable of the " "selected wireless standard to associate (stations not capable are not " "permitted to associate)" msgstr "" -#: src/usr/local/www/interfaces.php:2941 +#: src/usr/local/www/interfaces.php:2942 msgid "802.11g only" msgstr "" -#: src/usr/local/www/interfaces.php:2945 +#: src/usr/local/www/interfaces.php:2946 msgid "" "When operating as an access point in 802.11g mode, allow only 11g-capable " "stations to associate (11b-only stations are not permitted to associate)" msgstr "" -#: src/usr/local/www/interfaces.php:2950 +#: src/usr/local/www/interfaces.php:2951 msgid "Allow intra-BSS communication" msgstr "" -#: src/usr/local/www/interfaces.php:2954 +#: src/usr/local/www/interfaces.php:2955 msgid "" "Disabling the internal bridging is useful when traffic is to be processed " "with packet filtering" msgstr "" -#: src/usr/local/www/interfaces.php:2958 +#: src/usr/local/www/interfaces.php:2959 msgid "Enable WME" msgstr "" -#: src/usr/local/www/interfaces.php:2966 +#: src/usr/local/www/interfaces.php:2967 msgid "Hide SSID" msgstr "" -#: src/usr/local/www/interfaces.php:2975 +#: src/usr/local/www/interfaces.php:2976 src/usr/local/www/interfaces.php:2997 msgid "WPA" msgstr "" -#: src/usr/local/www/interfaces.php:2987 src/usr/local/www/interfaces.php:3015 +#: src/usr/local/www/interfaces.php:2988 src/usr/local/www/interfaces.php:3016 msgid "WPA Pre-Shared Key" msgstr "" -#: src/usr/local/www/interfaces.php:2990 +#: src/usr/local/www/interfaces.php:2991 msgid "WPA Passphrase must be between 8 and 63 characters long" msgstr "" -#: src/usr/local/www/interfaces.php:2994 +#: src/usr/local/www/interfaces.php:2997 +msgid "WPA2" +msgstr "" + +#: src/usr/local/www/interfaces.php:2997 src/usr/local/www/interfaces.php:3004 +#: src/usr/local/www/interfaces.php:3011 src/usr/local/www/pkg_mgr.php:192 +#: src/usr/local/www/services_captiveportal_hostname_edit.php:186 +#: src/usr/local/www/services_captiveportal_ip_edit.php:229 +#: src/usr/local/www/widgets/widgets/gateways.widget.php:135 +#: src/usr/local/www/services_rfc2136_edit.php:294 +msgid "Both" +msgstr "" + +#: src/usr/local/www/interfaces.php:2995 msgid "WPA mode" msgstr "" -#: src/usr/local/www/interfaces.php:3001 +#: src/usr/local/www/interfaces.php:3004 +#: src/usr/local/www/vpn_ipsec_keys.php:140 +#: src/usr/local/www/vpn_ipsec_keys_edit.php:101 +#: src/usr/local/www/vpn_ipsec_keys_edit.php:155 +#: src/usr/local/www/vpn_ipsec_keys_edit.php:186 +#: src/usr/local/www/vpn_ipsec_phase1.php:234 +#: src/usr/local/www/vpn_ipsec_phase1.php:769 +msgid "Pre-Shared Key" +msgstr "" + +#: src/usr/local/www/interfaces.php:3004 +msgid "Extensible Authentication Protocol" +msgstr "" + +#: src/usr/local/www/interfaces.php:3002 msgid "WPA Key Management Mode" msgstr "" -#: src/usr/local/www/interfaces.php:3008 +#: src/usr/local/www/interfaces.php:3011 +msgid "AES (recommended)" +msgstr "" + +#: src/usr/local/www/interfaces.php:3011 +msgid "TKIP" +msgstr "" + +#: src/usr/local/www/interfaces.php:3009 msgid "WPA Pairwise" msgstr "" -#: src/usr/local/www/interfaces.php:3019 +#: src/usr/local/www/interfaces.php:3020 msgid "" "Specified in seconds. Allowed values are 1-9999. Must be shorter than Master " "Key Regeneration time" msgstr "" -#: src/usr/local/www/interfaces.php:3023 +#: src/usr/local/www/interfaces.php:3024 msgid "Master Key Regeneration" msgstr "" -#: src/usr/local/www/interfaces.php:3027 +#: src/usr/local/www/interfaces.php:3028 msgid "" "Specified in seconds. Allowed values are 1-9999. Must be longer than Key " "Rotation time" msgstr "" -#: src/usr/local/www/interfaces.php:3031 +#: src/usr/local/www/interfaces.php:3032 msgid "Strict Key Regeneration" msgstr "" -#: src/usr/local/www/interfaces.php:3039 +#: src/usr/local/www/interfaces.php:3040 msgid "802.1x RADIUS options" msgstr "" -#: src/usr/local/www/interfaces.php:3043 +#: src/usr/local/www/interfaces.php:3044 msgid "IEEE802.1X" msgstr "" -#: src/usr/local/www/interfaces.php:3047 +#: src/usr/local/www/interfaces.php:3048 msgid "This option requires that the \"Enable WPA box\" is checked" msgstr "" -#: src/usr/local/www/interfaces.php:3049 +#: src/usr/local/www/interfaces.php:3050 msgid "Primary 802.1X server" msgstr "" -#: src/usr/local/www/interfaces.php:3055 src/usr/local/www/interfaces.php:3079 +#: src/usr/local/www/interfaces.php:3056 src/usr/local/www/interfaces.php:3080 msgid "" "IP address. (Commonly a Radius server (FreeRadius, Internet Authentication " "Services, etc.)" msgstr "" -#: src/usr/local/www/interfaces.php:3062 src/usr/local/www/interfaces.php:3086 +#: src/usr/local/www/interfaces.php:3063 src/usr/local/www/interfaces.php:3087 msgid "Server port. Leave blank for the default port 1812" msgstr "" -#: src/usr/local/www/interfaces.php:3066 src/usr/local/www/interfaces.php:3069 -#: src/usr/local/www/interfaces.php:3090 src/usr/local/www/interfaces.php:3093 +#: src/usr/local/www/interfaces.php:3067 src/usr/local/www/interfaces.php:3070 +#: src/usr/local/www/interfaces.php:3091 src/usr/local/www/interfaces.php:3094 msgid "Shared secret" msgstr "" -#: src/usr/local/www/interfaces.php:3073 +#: src/usr/local/www/interfaces.php:3074 msgid "Secondary 802.1X server" msgstr "" -#: src/usr/local/www/interfaces.php:3099 +#: src/usr/local/www/interfaces.php:3100 msgid "Authentication Roaming Preauth" msgstr "" -#: src/usr/local/www/interfaces.php:3108 +#: src/usr/local/www/interfaces.php:3109 msgid "Private networks" msgstr "" -#: src/usr/local/www/interfaces.php:3116 +#: src/usr/local/www/interfaces.php:3117 msgid "" "Blocks traffic from IP addresses that are reserved for private networks per " "RFC 1918 (10/8, 172.16/12, 192.168/16) as well as loopback addresses " @@ -12785,7 +13297,7 @@ msgid "" "network lies in such a private address space, too." msgstr "" -#: src/usr/local/www/interfaces.php:3126 +#: src/usr/local/www/interfaces.php:3127 msgid "" "Blocks traffic from reserved IP addresses (but not RFC 1918) or not yet " "assigned by IANA. Bogons are prefixes that should never appear in the " @@ -12794,11 +13306,11 @@ msgid "" "under System->Advanced Firewall/NAT settings" msgstr "" -#: src/usr/local/www/interfaces.php:3157 +#: src/usr/local/www/interfaces.php:3158 msgid "New gateway" msgstr "" -#: src/usr/local/www/interfaces.php:3175 +#: src/usr/local/www/interfaces.php:3176 #: src/usr/local/www/status_interfaces.php:151 msgid "Gateway IPv4" msgstr "" @@ -12832,8 +13344,15 @@ msgstr "" #: src/usr/local/www/interfaces_assign.php:339 #, php-format msgid "" -"You cannot set port %s to interface %s because this interface is a member of " -"%s." +"You cannot set port %1$s to interface %2$s because this interface is a " +"member of %3$s." +msgstr "" + +#: src/usr/local/www/interfaces_assign.php:350 +#, php-format +msgid "" +"Vlan parent interface %1$s does not exist anymore so vlan id %2$s cannot be " +"created please fix the issue before continuing." msgstr "" #: src/usr/local/www/interfaces_assign.php:419 @@ -13117,12 +13636,15 @@ msgid "Transmit Hold Count for STP needs to be an integer between 1 and 10." msgstr "" #: src/usr/local/www/interfaces_bridge_edit.php:183 -msgid "interface priority for STP needs to be an integer between 0 and 240." +#, php-format +msgid "%s interface priority for STP needs to be an integer between 0 and 240." msgstr "" #: src/usr/local/www/interfaces_bridge_edit.php:191 +#, php-format msgid "" -"interface path cost for STP needs to be an integer between 1 and 200000000." +"%s interface path cost for STP needs to be an integer between 1 and " +"200000000." msgstr "" #: src/usr/local/www/interfaces_bridge_edit.php:197 @@ -13144,8 +13666,9 @@ msgid "" msgstr "" #: src/usr/local/www/interfaces_bridge_edit.php:219 +#, php-format msgid "" -" is part of another bridge. Remove the interface from bridge members to " +"%s is part of another bridge. Remove the interface from bridge members to " "continue." msgstr "" @@ -13670,7 +14193,7 @@ msgstr "" #: src/usr/local/www/system_gateway_groups.php:150 #: src/usr/local/www/system_gateway_groups_edit.php:228 #: src/usr/local/www/system_gateway_groups_edit.php:265 -#: src/usr/local/www/system_gateway_groups_edit.php:304 +#: src/usr/local/www/system_gateway_groups_edit.php:305 #: src/usr/local/www/system_groupmanager.php:166 msgid "Group Name" msgstr "" @@ -13720,6 +14243,30 @@ msgstr "" msgid "Delete LAGG interface" msgstr "" +#: src/usr/local/www/interfaces_lagg_edit.php:73 +msgid "NONE" +msgstr "" + +#: src/usr/local/www/interfaces_lagg_edit.php:73 +msgid "LACP" +msgstr "" + +#: src/usr/local/www/interfaces_lagg_edit.php:73 +msgid "FAILOVER" +msgstr "" + +#: src/usr/local/www/interfaces_lagg_edit.php:73 +msgid "FEC" +msgstr "" + +#: src/usr/local/www/interfaces_lagg_edit.php:73 +msgid "LOADBALANCE" +msgstr "" + +#: src/usr/local/www/interfaces_lagg_edit.php:73 +msgid "ROUNDROBIN" +msgstr "" + #: src/usr/local/www/interfaces_lagg_edit.php:79 msgid "" "This protocol is intended to do nothing: it disables any traffic without " @@ -13839,7 +14386,7 @@ msgstr "" #: src/usr/local/www/interfaces_ppps_edit.php:249 #: src/usr/local/www/interfaces_ppps_edit.php:252 -#: src/usr/local/www/services_dhcp.php:788 +#: src/usr/local/www/services_dhcp.php:798 #: src/usr/local/www/services_dhcpv6.php:536 msgid "Subnet" msgstr "" @@ -14303,7 +14850,10 @@ msgid "A VLAN with the tag %s is already defined on this interface." msgstr "" #: src/usr/local/www/interfaces_vlan_edit.php:140 -msgid "A QinQ VLAN exists with this tag please remove it to use this tag with." +#, php-format +msgid "" +"A QinQ VLAN exists on %s with this tag. Please remove it to use this tag for " +"a normal VLAN." msgstr "" #: src/usr/local/www/interfaces_vlan_edit.php:211 @@ -14807,6 +15357,7 @@ msgstr "" #: src/usr/local/www/load_balancer_pool_edit.php:219 #: src/usr/local/www/load_balancer_virtual_server.php:158 #: src/usr/local/www/status_ipsec_leases.php:87 +#: src/usr/local/www/widgets/widgets/load_balancer_status.widget.php:94 msgid "Pool" msgstr "" @@ -14818,7 +15369,7 @@ msgid "" msgstr "" #: src/usr/local/www/load_balancer_pool.php:156 -#: src/usr/local/www/services_dhcp.php:875 +#: src/usr/local/www/services_dhcp.php:885 #: src/usr/local/www/status_lb_pool.php:169 #: src/usr/local/www/status_lb_vs.php:103 #: src/usr/local/www/system_authservers.php:392 @@ -14912,6 +15463,14 @@ msgstr "" msgid "Add/edit Load Balancer - Pool entry" msgstr "" +#: src/usr/local/www/load_balancer_pool_edit.php:357 +msgid "Load Balance" +msgstr "" + +#: src/usr/local/www/load_balancer_pool_edit.php:358 +msgid "Manual Failover" +msgstr "" + #: src/usr/local/www/load_balancer_pool_edit.php:374 msgid "" "This is the port your servers are listening on. You may also specify a port " @@ -15118,32 +15677,83 @@ msgstr "" msgid "ERROR: No valid package defined." msgstr "" -#: src/usr/local/www/pkg.php:81 src/usr/local/www/wizard.php:98 -msgid "ERROR: Invalid path specified." +#: src/usr/local/www/pkg.php:82 +#, php-format +msgid "ERROR: Package path %s not found." +msgstr "" + +#: src/usr/local/www/pkg.php:84 +#, php-format +msgid "ERROR: Invalid path %s specified." msgstr "" -#: src/usr/local/www/pkg.php:88 -msgid "File not found " +#: src/usr/local/www/pkg.php:89 +msgid "Try reinstalling the package." msgstr "" -#: src/usr/local/www/pkg.php:191 src/usr/local/www/pkg.php:194 +#: src/usr/local/www/pkg.php:98 +#, php-format +msgid "File not found %s" +msgstr "" + +#: src/usr/local/www/pkg.php:201 src/usr/local/www/pkg.php:204 #: src/usr/local/www/pkg_edit.php:543 src/usr/local/www/pkg_edit.php:546 -#: src/usr/local/www/pkg_mgr_install.php:426 msgid "Package" msgstr "" -#: src/usr/local/www/pkg.php:194 src/usr/local/www/pkg_edit.php:546 +#: src/usr/local/www/pkg.php:204 src/usr/local/www/pkg_edit.php:546 msgid "Editor" msgstr "" -#: src/usr/local/www/pkg.php:283 +#: src/usr/local/www/pkg.php:293 msgid "Saving changes..." msgstr "" -#: src/usr/local/www/pkg.php:284 +#: src/usr/local/www/pkg.php:294 msgid "Do you really want to save changes?" msgstr "" +#: src/usr/local/www/pkg.php:353 +msgid "Filter by: " +msgstr "" + +#: src/usr/local/www/pkg.php:365 +msgid "Filter field: " +msgstr "" + +#: src/usr/local/www/pkg.php:377 +msgid "Filter text: " +msgstr "" + +#: src/usr/local/www/pkg.php:408 +#, php-format +msgid "Displaying page %1$s of %2$s" +msgstr "" + +#: src/usr/local/www/pkg.php:409 +msgid "Rows per page: " +msgstr "" + +#: src/usr/local/www/pkg.php:537 +msgid "Edit this item" +msgstr "" + +#: src/usr/local/www/pkg.php:542 +msgid "Delete this item" +msgstr "" + +#: src/usr/local/www/pkg.php:566 +msgid "Previous page" +msgstr "" + +#: src/usr/local/www/pkg.php:579 +msgid "Next page" +msgstr "" + +#: src/usr/local/www/pkg.php:597 +msgid "Add a new item" +msgstr "" + #: src/usr/local/www/pkg_edit.php:660 msgid "Advanced features" msgstr "" @@ -15152,7 +15762,15 @@ msgstr "" msgid "General options" msgstr "" -#: src/usr/local/www/pkg_edit.php:1483 +#: src/usr/local/www/pkg_edit.php:1196 +msgid "Listen on All interfaces/ip addresses " +msgstr "" + +#: src/usr/local/www/pkg_edit.php:1200 +msgid "loopback" +msgstr "" + +#: src/usr/local/www/pkg_edit.php:1484 #: src/usr/local/www/interfaces_bridge_edit.php:392 msgid "Show advanced options" msgstr "" @@ -15192,6 +15810,7 @@ msgstr "" #: src/usr/local/www/pkg_mgr_installed.php:75 #: src/usr/local/www/pkg_mgr_installed.php:80 #: src/usr/local/www/pkg_mgr_installed.php:98 +#: src/usr/local/www/widgets/include/installed_packages.inc:4 msgid "Installed Packages" msgstr "" @@ -15203,11 +15822,10 @@ msgstr "" msgid "Search term" msgstr "" -#: src/usr/local/www/pkg_mgr.php:192 -#: src/usr/local/www/services_captiveportal_hostname_edit.php:186 -#: src/usr/local/www/services_captiveportal_ip_edit.php:229 -#: src/usr/local/www/services_rfc2136_edit.php:294 -msgid "Both" +#: src/usr/local/www/pkg_mgr.php:200 +msgid "" +"Enter a search string or *nix regular expression to search package names and " +"descriptions." msgstr "" #: src/usr/local/www/pkg_mgr.php:210 @@ -15248,13 +15866,13 @@ msgstr "" #: src/usr/local/www/pkg_mgr_install.php:256 #: src/usr/local/www/pkg_mgr_install.php:263 -#: src/usr/local/www/system_update_settings.php:124 +#: src/usr/local/www/system_update_settings.php:117 msgid "System Update" msgstr "" #: src/usr/local/www/pkg_mgr_install.php:264 -#: src/usr/local/www/system_update_settings.php:106 -#: src/usr/local/www/system_update_settings.php:125 +#: src/usr/local/www/system_update_settings.php:99 +#: src/usr/local/www/system_update_settings.php:118 msgid "Update Settings" msgstr "" @@ -15262,76 +15880,140 @@ msgstr "" msgid "Package Installer" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:312 +#: src/usr/local/www/pkg_mgr_install.php:295 +#, php-format +msgid "Package <b>%s</b> will be reinstalled" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:298 +#, php-format +msgid "Package <b>%s</b> will be removed" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:302 +#, php-format +msgid "Package <b>%s</b> will be installed" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:313 msgid "All packages will be reinstalled." msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:320 +#: src/usr/local/www/pkg_mgr_install.php:317 +#, php-format +msgid "Package: %1$s will be upgraded from %2$s to %3$s." +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:321 msgid " System Update" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:338 +#: src/usr/local/www/pkg_mgr_install.php:339 msgid "Current base system" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:347 +#: src/usr/local/www/pkg_mgr_install.php:348 msgid "Latest base system" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:358 +#: src/usr/local/www/pkg_mgr_install.php:359 msgid "Confirm Update" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:372 +#: src/usr/local/www/pkg_mgr_install.php:373 msgid "System is up to date" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:389 +#: src/usr/local/www/pkg_mgr_install.php:390 msgid "Unable to retrieve system versions" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:393 -msgid "removal" +#: src/usr/local/www/pkg_mgr_install.php:403 +msgid "Package removal" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:395 -msgid "reinstallation" +#: src/usr/local/www/pkg_mgr_install.php:404 +#, php-format +msgid "<b>%1$s</b> removal successfully completed" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:397 -msgid "installation" +#: src/usr/local/www/pkg_mgr_install.php:405 +#, php-format +msgid "<b>%1$s</b> removal failed!" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:423 -msgid "Updating system" +#: src/usr/local/www/pkg_mgr_install.php:406 +#, php-format +msgid "Please wait while the removal of <b>%1$s</b> completes." msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:450 -msgid "Creating restore point before package installation." +#: src/usr/local/www/pkg_mgr_install.php:408 +msgid "Package reinstallation" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:523 -#: src/usr/local/www/pkg_mgr_install.php:525 -msgid " successfully completed" +#: src/usr/local/www/pkg_mgr_install.php:409 +#, php-format +msgid "<b>%1$s</b> reinstallation successfully completed" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:528 -msgid "Reinstallation of all packages successfully completed" +#: src/usr/local/www/pkg_mgr_install.php:410 +#, php-format +msgid "<b>%1$s</b> reinstallation failed!" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:411 +#, php-format +msgid "Please wait while the reinstallation of <b>%1$s</b> completes." +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:413 +msgid "Package installation" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:414 +#, php-format +msgid "<b>%1$s</b> installation successfully completed" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:415 +#, php-format +msgid "<b>%1$s</b> installation failed!" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:416 +#, php-format +msgid "Please wait while the installation of <b>%1$s</b> completes." +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:442 +msgid "Updating system" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:465 +msgid "Creating restore point before package installation." msgstr "" #: src/usr/local/www/pkg_mgr_install.php:539 -msgid " failed!" +msgid "System update successfully completed" +msgstr "" + +#: src/usr/local/www/pkg_mgr_install.php:544 +msgid "Reinstallation of all packages successfully completed" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:541 +#: src/usr/local/www/pkg_mgr_install.php:557 msgid "Reinstallation of all packages failed" msgstr "" -#: src/usr/local/www/pkg_mgr_install.php:551 -#: src/usr/local/www/pkg_mgr_install.php:554 +#: src/usr/local/www/pkg_mgr_install.php:567 +#: src/usr/local/www/pkg_mgr_install.php:570 msgid "(Some packages may take several minutes!)" msgstr "" +#: src/usr/local/www/pkg_mgr_install.php:569 +msgid "Please wait while the reinstallation of all packages completes." +msgstr "" + #: src/usr/local/www/pkg_mgr_installed.php:94 msgid "There are no packages currently installed." msgstr "" @@ -15341,6 +16023,51 @@ msgstr "" msgid "Category" msgstr "" +#: src/usr/local/www/pkg_mgr_installed.php:128 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:106 +msgid "Package is configured, but not installed!" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:134 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:112 +#, php-format +msgid "Newer than available (%s)" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:137 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:116 +#, php-format +msgid "Upgrade available to %s" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:143 +msgid "Up-to-date" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:145 +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:127 +msgid "Error comparing version" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:188 +#, php-format +msgid "Remove package %s" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:190 +#, php-format +msgid "Update package %s" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:192 +#, php-format +msgid "Reinstall package %s" +msgstr "" + +#: src/usr/local/www/pkg_mgr_installed.php:210 +msgid "Current" +msgstr "" + #: src/usr/local/www/pkg_mgr_installed.php:217 msgid "Newer version available" msgstr "" @@ -15369,6 +16096,16 @@ msgstr "" msgid "Restarting mini_httpd" msgstr "" +#: src/usr/local/www/services_captiveportal.php:96 +#: src/usr/local/www/services_captiveportal_filemanager.php:99 +#: src/usr/local/www/services_captiveportal_hostname.php:95 +#: src/usr/local/www/services_captiveportal_ip.php:94 +#: src/usr/local/www/services_captiveportal_mac.php:91 +#: src/usr/local/www/services_captiveportal_vouchers.php:111 +#, php-format +msgid "Zone %s" +msgstr "" + #: src/usr/local/www/services_captiveportal.php:116 #, php-format msgid "Captive Portal: zone %s: Restore default portal page" @@ -15720,13 +16457,8 @@ msgstr "" msgid "Secondary Authentication Source" msgstr "" -#: src/usr/local/www/services_captiveportal.php:900 -#: src/usr/local/www/vpn_l2tp.php:338 -msgid "Accounting" -msgstr "" - #: src/usr/local/www/services_captiveportal.php:905 -#: src/usr/local/www/services_pppoe_edit.php:391 +#: src/usr/local/www/services_pppoe_edit.php:403 #: src/usr/local/www/vpn_l2tp.php:326 msgid "RADIUS" msgstr "" @@ -15821,6 +16553,14 @@ msgid "" "Specify a NAS identifier to override the default value (pfSense.localdomain)" msgstr "" +#: src/usr/local/www/services_captiveportal.php:1012 +msgid "Single dash" +msgstr "" + +#: src/usr/local/www/services_captiveportal.php:1012 +msgid "Unformatted" +msgstr "" + #: src/usr/local/www/services_captiveportal.php:1010 msgid "MAC address format" msgstr "" @@ -15973,7 +16713,8 @@ msgid "A file with the name '%s' already exists." msgstr "" #: src/usr/local/www/services_captiveportal_filemanager.php:135 -msgid "The total size of all files uploaded may not exceed " +#, php-format +msgid "The total size of all files uploaded may not exceed %s." msgstr "" #: src/usr/local/www/services_captiveportal_filemanager.php:189 @@ -15992,6 +16733,16 @@ msgstr "" msgid "Delete file" msgstr "" +#: src/usr/local/www/services_captiveportal_filemanager.php:245 +msgid "Total" +msgstr "" + +#: src/usr/local/www/services_captiveportal_filemanager.php:275 +#: src/usr/local/www/services_ntpd_gps.php:240 +#: src/usr/local/www/services_ntpd_pps.php:159 +msgid "Notes" +msgstr "" + #: src/usr/local/www/services_captiveportal_filemanager.php:277 msgid "" "Any files that you upload here with the filename prefix of captiveportal- " @@ -16076,8 +16827,8 @@ msgid "Download speed needs to be an integer" msgstr "" #: src/usr/local/www/services_captiveportal_hostname_edit.php:148 -#: src/usr/local/www/services_captiveportal_ip_edit.php:161 -msgid "already allowed" +#, php-format +msgid "Hostname [%s] already allowed." msgstr "" #: src/usr/local/www/services_captiveportal_hostname_edit.php:207 @@ -16150,9 +16901,9 @@ msgid "Allowed IP address" msgstr "" #: src/usr/local/www/services_captiveportal_ip_edit.php:127 -#: src/usr/local/www/services_dhcp.php:793 -#: src/usr/local/www/services_dhcp.php:827 -#: src/usr/local/www/services_pppoe_edit.php:343 +#: src/usr/local/www/services_dhcp.php:803 +#: src/usr/local/www/services_dhcp.php:837 +#: src/usr/local/www/services_pppoe_edit.php:376 msgid "Subnet mask" msgstr "" @@ -16170,6 +16921,10 @@ msgstr "" msgid "Download speed must be between 1 and 999999" msgstr "" +#: src/usr/local/www/services_captiveportal_ip_edit.php:161 +msgid "already allowed" +msgstr "" + #: src/usr/local/www/services_captiveportal_ip_edit.php:247 msgid "Edit Captive Portal IP rule" msgstr "" @@ -16245,7 +17000,6 @@ msgid "A valid MAC address must be specified" msgstr "" #: src/usr/local/www/services_captiveportal_mac_edit.php:169 -#: src/usr/local/www/services_captiveportal_zones_edit.php:93 msgid "already exists" msgstr "" @@ -16266,6 +17020,11 @@ msgstr "" msgid "Enter a download limit to be enforced on this MAC in Kbit/s" msgstr "" +#: src/usr/local/www/services_captiveportal_vouchers.php:106 +#, php-format +msgid "Submission on captiveportal page with unknown zone parameter: %s" +msgstr "" + #: src/usr/local/www/services_captiveportal_vouchers.php:161 msgid "Voucher invalid" msgstr "" @@ -16332,7 +17091,7 @@ msgid "Double quotes aren't allowed." msgstr "" #: src/usr/local/www/services_captiveportal_vouchers.php:261 -msgid "aren't allowed." +msgid "',' aren't allowed." msgstr "" #: src/usr/local/www/services_captiveportal_vouchers.php:264 @@ -16359,9 +17118,62 @@ msgstr "" msgid "You cannot sync the voucher database to this host (itself)." msgstr "" +#: src/usr/local/www/services_captiveportal_vouchers.php:353 +#, php-format +msgid "voucher XMLRPC sync data %s:%d" +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:359 +#, php-format +msgid "" +"A communications error occurred while attempting CaptivePortalVoucherSync " +"XMLRPC sync with %s:%d (pfsense.exec_php)." +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:361 +msgid "Communications error occurred" +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:366 +#, php-format +msgid "" +"An error code was received while attempting CaptivePortalVoucherSync XMLRPC " +"sync with %s:%d - Code %d: %s" +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:368 +msgid "Error code received" +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:371 +#, php-format +msgid "" +"The Captive Portal voucher database has been synchronized with %s:%d " +"(pfsense.exec_php)." +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:377 +msgid "Could not synchronize the voucher database: Authentication Failed." +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:411 +#, php-format +msgid "Voucher database has been synchronized from %1$s:%2$s" +msgstr "" + +#: src/usr/local/www/services_captiveportal_vouchers.php:449 +#: src/usr/local/www/status_captiveportal.php:135 +#: src/usr/local/www/status_captiveportal_expire.php:93 +#: src/usr/local/www/status_captiveportal_test.php:94 +#: src/usr/local/www/status_captiveportal_voucher_rolls.php:85 +#: src/usr/local/www/status_captiveportal_voucher_rolls.php:99 +#: src/usr/local/www/status_captiveportal_vouchers.php:135 +msgid "Voucher Rolls" +msgstr "" + #: src/usr/local/www/services_captiveportal_vouchers.php:455 -#: src/usr/local/www/status_captiveportal_vouchers.php:146 -msgid "Roll" +#: src/usr/local/www/services_captiveportal_vouchers_edit.php:221 +msgid "Roll #" msgstr "" #: src/usr/local/www/services_captiveportal_vouchers.php:456 @@ -16370,7 +17182,8 @@ msgid "Minutes/Ticket" msgstr "" #: src/usr/local/www/services_captiveportal_vouchers.php:457 -msgid "of Tickets" +#: src/usr/local/www/status_captiveportal_voucher_rolls.php:111 +msgid "# of Tickets" msgstr "" #: src/usr/local/www/services_captiveportal_vouchers.php:458 @@ -16536,17 +17349,22 @@ msgid "" "retrieved/synced from the master." msgstr "" +#: src/usr/local/www/services_captiveportal_vouchers.php:677 +msgid "Generate new keys" +msgstr "" + #: src/usr/local/www/services_captiveportal_vouchers_edit.php:71 msgid "Edit Voucher Rolls" msgstr "" #: src/usr/local/www/services_captiveportal_vouchers_edit.php:124 -#: src/usr/local/www/services_dhcp.php:1210 +#: src/usr/local/www/services_dhcp.php:1169 #: src/usr/local/www/services_dhcpv6.php:839 msgid "Number" msgstr "" #: src/usr/local/www/services_captiveportal_vouchers_edit.php:124 +#: src/usr/local/www/services_unbound_advanced.php:343 msgid "minutes" msgstr "" @@ -16578,10 +17396,6 @@ msgstr "" msgid "Voucher rolls" msgstr "" -#: src/usr/local/www/services_captiveportal_vouchers_edit.php:221 -msgid "Roll #" -msgstr "" - #: src/usr/local/www/services_captiveportal_vouchers_edit.php:224 #, php-format msgid "Enter the Roll# (0..%d) found on top of the generated/printed vouchers" @@ -16647,6 +17461,11 @@ msgstr "" msgid "The zone name can only contain letters, digits, and underscores ( _ )." msgstr "" +#: src/usr/local/www/services_captiveportal_zones_edit.php:93 +#, php-format +msgid "Zone [%s] already exists." +msgstr "" + #: src/usr/local/www/services_captiveportal_zones_edit.php:122 msgid "Add Captive Portal Zone" msgstr "" @@ -16659,61 +17478,61 @@ msgstr "" msgid "Zone description" msgstr "" -#: src/usr/local/www/services_dhcp.php:244 +#: src/usr/local/www/services_dhcp.php:245 #: src/usr/local/www/services_dhcpv6.php:193 msgid "Range begin" msgstr "" -#: src/usr/local/www/services_dhcp.php:244 +#: src/usr/local/www/services_dhcp.php:245 #: src/usr/local/www/services_dhcpv6.php:193 msgid "Range end" msgstr "" -#: src/usr/local/www/services_dhcp.php:249 -#: src/usr/local/www/services_dhcp.php:252 +#: src/usr/local/www/services_dhcp.php:250 +#: src/usr/local/www/services_dhcp.php:253 #: src/usr/local/www/services_dhcpv6.php:198 #: src/usr/local/www/services_dhcpv6.php:204 #: src/usr/local/www/services_dhcpv6.php:207 msgid "A valid range must be specified." msgstr "" -#: src/usr/local/www/services_dhcp.php:255 +#: src/usr/local/www/services_dhcp.php:256 #: src/usr/local/www/services_dhcp_edit.php:270 msgid "A valid IP address must be specified for the gateway." msgstr "" -#: src/usr/local/www/services_dhcp.php:258 +#: src/usr/local/www/services_dhcp.php:259 #: src/usr/local/www/services_dhcp_edit.php:273 msgid "" "A valid IP address must be specified for the primary/secondary WINS servers." msgstr "" -#: src/usr/local/www/services_dhcp.php:264 +#: src/usr/local/www/services_dhcp.php:265 #: src/usr/local/www/services_dhcp_edit.php:280 #, php-format msgid "" "The gateway address %s does not lie within the chosen interface's subnet." msgstr "" -#: src/usr/local/www/services_dhcp.php:269 +#: src/usr/local/www/services_dhcp.php:270 #: src/usr/local/www/services_dhcp_edit.php:287 msgid "A valid IP address must be specified for each of the DNS servers." msgstr "" -#: src/usr/local/www/services_dhcp.php:273 +#: src/usr/local/www/services_dhcp.php:274 #: src/usr/local/www/services_dhcp_edit.php:291 #: src/usr/local/www/services_dhcpv6.php:220 msgid "The default lease time must be at least 60 seconds." msgstr "" -#: src/usr/local/www/services_dhcp.php:295 +#: src/usr/local/www/services_dhcp.php:296 #, php-format msgid "" "The Captive Portal zone '%s' has Hard Timeout parameter set to a value " "bigger than Default lease time (%s)." msgstr "" -#: src/usr/local/www/services_dhcp.php:301 +#: src/usr/local/www/services_dhcp.php:302 #: src/usr/local/www/services_dhcp_edit.php:294 #: src/usr/local/www/services_dhcpv6.php:223 msgid "" @@ -16721,147 +17540,153 @@ msgid "" "default lease time." msgstr "" -#: src/usr/local/www/services_dhcp.php:304 +#: src/usr/local/www/services_dhcp.php:305 #: src/usr/local/www/services_dhcp_edit.php:297 #: src/usr/local/www/services_dhcpv6.php:226 msgid "A valid domain name must be specified for the dynamic DNS registration." msgstr "" -#: src/usr/local/www/services_dhcp.php:307 +#: src/usr/local/www/services_dhcp.php:308 #: src/usr/local/www/services_dhcp_edit.php:300 msgid "" "A valid primary domain name server IP address must be specified for the " "dynamic domain name." msgstr "" -#: src/usr/local/www/services_dhcp.php:311 +#: src/usr/local/www/services_dhcp.php:312 #: src/usr/local/www/services_dhcp_edit.php:304 #: src/usr/local/www/services_dhcpv6.php:233 msgid "You must specify both a valid domain key and key name." msgstr "" -#: src/usr/local/www/services_dhcp.php:317 +#: src/usr/local/www/services_dhcp.php:318 #: src/usr/local/www/services_dhcp_edit.php:310 #: src/usr/local/www/services_dhcpv6.php:239 -#: src/usr/local/www/services_router_advertisements.php:185 +#: src/usr/local/www/services_router_advertisements.php:187 msgid "A valid domain search list must be specified." msgstr "" -#: src/usr/local/www/services_dhcp.php:325 +#: src/usr/local/www/services_dhcp.php:326 msgid "" "If you specify a mac allow list, it must contain only valid partial MAC " "addresses." msgstr "" -#: src/usr/local/www/services_dhcp.php:328 +#: src/usr/local/www/services_dhcp.php:329 msgid "" "If you specify a mac deny list, it must contain only valid partial MAC " "addresses." msgstr "" -#: src/usr/local/www/services_dhcp.php:332 +#: src/usr/local/www/services_dhcp.php:333 #: src/usr/local/www/services_dhcp_edit.php:317 msgid "" "A valid IP address must be specified for the primary/secondary NTP servers." msgstr "" -#: src/usr/local/www/services_dhcp.php:335 +#: src/usr/local/www/services_dhcp.php:336 #: src/usr/local/www/services_dhcpv6.php:249 msgid "A valid domain name must be specified for the DNS domain." msgstr "" -#: src/usr/local/www/services_dhcp.php:338 +#: src/usr/local/www/services_dhcp.php:339 #: src/usr/local/www/services_dhcp_edit.php:320 msgid "A valid IP address or hostname must be specified for the TFTP server." msgstr "" -#: src/usr/local/www/services_dhcp.php:341 +#: src/usr/local/www/services_dhcp.php:342 #: src/usr/local/www/services_dhcp_edit.php:323 msgid "A valid IP address must be specified for the network boot server." msgstr "" -#: src/usr/local/www/services_dhcp.php:345 +#: src/usr/local/www/services_dhcp.php:346 msgid "You cannot use the network address in the starting subnet range." msgstr "" -#: src/usr/local/www/services_dhcp.php:348 +#: src/usr/local/www/services_dhcp.php:349 msgid "You cannot use the broadcast address in the ending subnet range." msgstr "" -#: src/usr/local/www/services_dhcp.php:356 +#: src/usr/local/www/services_dhcp.php:357 #, php-format msgid "The subnet range cannot overlap with virtual IP address %s." msgstr "" -#: src/usr/local/www/services_dhcp.php:379 +#: src/usr/local/www/services_dhcp.php:373 +msgid "" +"Cannot enable static ARP when you have static map entries without IP " +"addresses. Ensure all static maps have IP addresses and try again." +msgstr "" + +#: src/usr/local/www/services_dhcp.php:380 msgid "Text type cannot include quotation marks." msgstr "" -#: src/usr/local/www/services_dhcp.php:381 +#: src/usr/local/www/services_dhcp.php:382 msgid "" "String type must be enclosed in quotes like \"this\" or must be a series of " "octets specified in hexadecimal, separated by colons, like 01:23:45:67:89:ab:" "cd:ef" msgstr "" -#: src/usr/local/www/services_dhcp.php:383 +#: src/usr/local/www/services_dhcp.php:384 msgid "Boolean type must be true, false, on, or off." msgstr "" -#: src/usr/local/www/services_dhcp.php:385 +#: src/usr/local/www/services_dhcp.php:386 msgid "Unsigned 8-bit integer type must be a number in the range 0 to 255." msgstr "" -#: src/usr/local/www/services_dhcp.php:387 +#: src/usr/local/www/services_dhcp.php:388 msgid "Unsigned 16-bit integer type must be a number in the range 0 to 65535." msgstr "" -#: src/usr/local/www/services_dhcp.php:389 +#: src/usr/local/www/services_dhcp.php:390 msgid "" "Unsigned 32-bit integer type must be a number in the range 0 to 4294967295." msgstr "" -#: src/usr/local/www/services_dhcp.php:391 +#: src/usr/local/www/services_dhcp.php:392 msgid "Signed 8-bit integer type must be a number in the range -128 to 127." msgstr "" -#: src/usr/local/www/services_dhcp.php:393 +#: src/usr/local/www/services_dhcp.php:394 msgid "" "Signed 16-bit integer type must be a number in the range -32768 to 32767." msgstr "" -#: src/usr/local/www/services_dhcp.php:395 +#: src/usr/local/www/services_dhcp.php:396 msgid "" "Signed 32-bit integer type must be a number in the range -2147483648 to " "2147483647." msgstr "" -#: src/usr/local/www/services_dhcp.php:397 +#: src/usr/local/www/services_dhcp.php:398 msgid "IP address or host type must be an IP address or host name." msgstr "" -#: src/usr/local/www/services_dhcp.php:408 +#: src/usr/local/www/services_dhcp.php:409 #: src/usr/local/www/services_dhcpv6.php:290 msgid "The range is invalid (first element higher than second element)." msgstr "" -#: src/usr/local/www/services_dhcp.php:412 +#: src/usr/local/www/services_dhcp.php:413 #: src/usr/local/www/services_dhcpv6.php:285 msgid "The specified range lies outside of the current subnet." msgstr "" -#: src/usr/local/www/services_dhcp.php:418 +#: src/usr/local/www/services_dhcp.php:419 msgid "" "The specified range must not be within the DHCP range for this interface." msgstr "" -#: src/usr/local/www/services_dhcp.php:429 +#: src/usr/local/www/services_dhcp.php:430 msgid "" "The specified range must not be within the range configured on a DHCP pool " "for this interface." msgstr "" -#: src/usr/local/www/services_dhcp.php:436 +#: src/usr/local/www/services_dhcp.php:437 #: src/usr/local/www/services_dhcpv6.php:295 #, php-format msgid "" @@ -16869,126 +17694,134 @@ msgid "" "server." msgstr "" -#: src/usr/local/www/services_dhcp.php:448 +#: src/usr/local/www/services_dhcp.php:449 #: src/usr/local/www/services_dhcpv6.php:312 #, php-format msgid "The DHCP range cannot overlap any static DHCP mappings." msgstr "" -#: src/usr/local/www/services_dhcp.php:658 +#: src/usr/local/www/services_dhcp.php:660 #: src/usr/local/www/status_dhcp_leases.php:468 msgid "Pool Start" msgstr "" -#: src/usr/local/www/services_dhcp.php:659 +#: src/usr/local/www/services_dhcp.php:661 #: src/usr/local/www/status_dhcp_leases.php:469 msgid "Pool End" msgstr "" -#: src/usr/local/www/services_dhcp.php:710 +#: src/usr/local/www/services_dhcp.php:712 #: src/usr/local/www/services_dhcpv6.php:453 msgid "" "DHCP Relay is currently enabled. Cannot enable the DHCP Server service while " "the DHCP Relay is enabled on any interface." msgstr "" -#: src/usr/local/www/services_dhcp.php:716 +#: src/usr/local/www/services_dhcp.php:718 #: src/usr/local/www/services_dhcpv6.php:459 msgid "The static mapping configuration has been changed" msgstr "" -#: src/usr/local/www/services_dhcp.php:742 +#: src/usr/local/www/services_dhcp.php:744 msgid "" "The DHCP Server can only be enabled on interfaces configured with a static " "IPv4 address. This system has none." msgstr "" -#: src/usr/local/www/services_dhcp.php:755 +#: src/usr/local/www/services_dhcp.php:757 msgid "General Options" msgstr "" -#: src/usr/local/www/services_dhcp.php:761 +#: src/usr/local/www/services_dhcp.php:763 #, php-format msgid "Enable DHCP server on %s interface" msgstr "" -#: src/usr/local/www/services_dhcp.php:773 +#: src/usr/local/www/services_dhcp.php:775 msgid "Deny unknown clients" msgstr "" -#: src/usr/local/www/services_dhcp.php:781 +#: src/usr/local/www/services_dhcp.php:782 +msgid "Ignore denied clients" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:791 msgid "Pool Description" msgstr "" -#: src/usr/local/www/services_dhcp.php:820 +#: src/usr/local/www/services_dhcp.php:817 +msgid "In-use DHCP Pool Ranges:" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:830 msgid "Available range" msgstr "" -#: src/usr/local/www/services_dhcp.php:833 +#: src/usr/local/www/services_dhcp.php:843 #: src/usr/local/www/services_dhcpv6.php:578 msgid "Range" msgstr "" -#: src/usr/local/www/services_dhcp.php:852 +#: src/usr/local/www/services_dhcp.php:862 msgid "Additional pools" msgstr "" -#: src/usr/local/www/services_dhcp.php:856 +#: src/usr/local/www/services_dhcp.php:866 msgid "Add pool" msgstr "" -#: src/usr/local/www/services_dhcp.php:863 +#: src/usr/local/www/services_dhcp.php:873 msgid "" "If you need additional pools of addresses inside of this subnet outside the " "above Range, they may be specified here" msgstr "" -#: src/usr/local/www/services_dhcp.php:879 +#: src/usr/local/www/services_dhcp.php:889 #: src/usr/local/www/vpn_openvpn_csc.php:559 msgid "WINS servers" msgstr "" -#: src/usr/local/www/services_dhcp.php:892 +#: src/usr/local/www/services_dhcp.php:902 msgid "DNS servers" msgstr "" -#: src/usr/local/www/services_dhcp.php:894 +#: src/usr/local/www/services_dhcp.php:904 msgid "" "Leave blank to use the system default DNS servers, use this interface's IP " "if DNS Forwarder or Resolver is enabled, otherwise use the servers " "configured on the General page" msgstr "" -#: src/usr/local/www/services_dhcp.php:899 +#: src/usr/local/www/services_dhcp.php:909 msgid "Other options" msgstr "" -#: src/usr/local/www/services_dhcp.php:906 +#: src/usr/local/www/services_dhcp.php:916 msgid "" "The default is to use the IP on this interface of the firewall as the " "gateway. Specify an alternate gateway here if this is not the correct " "gateway for your network. Type \"none\" for no gateway assignment" msgstr "" -#: src/usr/local/www/services_dhcp.php:910 +#: src/usr/local/www/services_dhcp.php:920 #: src/usr/local/www/services_dhcp_edit.php:561 msgid "Domain name" msgstr "" -#: src/usr/local/www/services_dhcp.php:913 +#: src/usr/local/www/services_dhcp.php:923 msgid "" "The default is to use the domain name of this system as the default domain " "name provided by DHCP. You may specify an alternate domain name here" msgstr "" -#: src/usr/local/www/services_dhcp.php:917 +#: src/usr/local/www/services_dhcp.php:927 #: src/usr/local/www/services_dhcp_edit.php:568 #: src/usr/local/www/services_dhcpv6.php:648 -#: src/usr/local/www/services_router_advertisements.php:380 +#: src/usr/local/www/services_router_advertisements.php:382 msgid "Domain search list" msgstr "" -#: src/usr/local/www/services_dhcp.php:920 +#: src/usr/local/www/services_dhcp.php:930 #: src/usr/local/www/services_dhcp_edit.php:571 #: src/usr/local/www/services_dhcpv6.php:651 msgid "" @@ -16996,32 +17829,32 @@ msgid "" "semicolon character as separator" msgstr "" -#: src/usr/local/www/services_dhcp.php:924 +#: src/usr/local/www/services_dhcp.php:934 #: src/usr/local/www/services_dhcpv6.php:655 msgid "Default lease time" msgstr "" -#: src/usr/local/www/services_dhcp.php:927 +#: src/usr/local/www/services_dhcp.php:937 msgid "" "This is used for clients that do not ask for a specific expiration time. The " "default is 7200 seconds" msgstr "" -#: src/usr/local/www/services_dhcp.php:931 +#: src/usr/local/www/services_dhcp.php:941 msgid "Maximum lease time" msgstr "" -#: src/usr/local/www/services_dhcp.php:934 +#: src/usr/local/www/services_dhcp.php:944 msgid "" "This is the maximum lease time for clients that ask for a specific " "expiration time. The default is 86400 seconds" msgstr "" -#: src/usr/local/www/services_dhcp.php:939 +#: src/usr/local/www/services_dhcp.php:949 msgid "Failover peer IP" msgstr "" -#: src/usr/local/www/services_dhcp.php:941 +#: src/usr/local/www/services_dhcp.php:951 msgid "" "Leave blank to disable. Enter the interface IP address of the other machine. " "Machines must be using CARP. Interface's advskew determines whether the " @@ -17029,262 +17862,262 @@ msgid "" "(and the other is > 20)." msgstr "" -#: src/usr/local/www/services_dhcp.php:948 -#: src/usr/local/www/services_dhcp.php:1282 +#: src/usr/local/www/services_dhcp.php:958 +#: src/usr/local/www/services_dhcp.php:1292 #: src/usr/local/www/widgets/widgets/wake_on_lan.widget.php:93 msgid "Static ARP" msgstr "" -#: src/usr/local/www/services_dhcp.php:951 +#: src/usr/local/www/services_dhcp.php:961 msgid "" "This option persists even if DHCP server is disabled. Only the machines " "listed below will be able to communicate with the firewall on this interface." msgstr "" -#: src/usr/local/www/services_dhcp.php:955 +#: src/usr/local/www/services_dhcp.php:965 msgid "Time format change" msgstr "" -#: src/usr/local/www/services_dhcp.php:958 +#: src/usr/local/www/services_dhcp.php:968 msgid "" "By default DHCP leases are displayed in UTC time.\tBy checking this box DHCP " "lease time will be displayed in local time and set to the time zone " "selected. This will be used for all DHCP interfaces lease time" msgstr "" -#: src/usr/local/www/services_dhcp.php:962 +#: src/usr/local/www/services_dhcp.php:972 msgid "Statistics graphs" msgstr "" -#: src/usr/local/www/services_dhcp.php:965 +#: src/usr/local/www/services_dhcp.php:975 msgid "" "Enable this to add DHCP leases statistics to the RRD graphs. Disabled by " "default." msgstr "" -#: src/usr/local/www/services_dhcp.php:990 +#: src/usr/local/www/services_dhcp.php:1000 #: src/usr/local/www/services_dhcp_edit.php:608 #: src/usr/local/www/services_dhcpv6.php:699 msgid "DDNS Domain" msgstr "" -#: src/usr/local/www/services_dhcp.php:993 +#: src/usr/local/www/services_dhcp.php:1003 msgid "" "Leave blank to disable dynamic DNS registration.<br />Enter the dynamic DNS " "domain which will be used to register client names in the DNS server." msgstr "" -#: src/usr/local/www/services_dhcp.php:998 +#: src/usr/local/www/services_dhcp.php:1008 msgid "Primary DDNS address" msgstr "" -#: src/usr/local/www/services_dhcp.php:1000 +#: src/usr/local/www/services_dhcp.php:1010 msgid "Primary domain name server IP address for the dynamic domain name" msgstr "" -#: src/usr/local/www/services_dhcp.php:1004 +#: src/usr/local/www/services_dhcp.php:1014 msgid "DNS Domain key" msgstr "" -#: src/usr/local/www/services_dhcp.php:1007 +#: src/usr/local/www/services_dhcp.php:1017 msgid "" "Dynamic DNS domain key name which will be used to register client names in " "the DNS server" msgstr "" -#: src/usr/local/www/services_dhcp.php:1011 +#: src/usr/local/www/services_dhcp.php:1021 msgid "DNS Domain key secret" msgstr "" -#: src/usr/local/www/services_dhcp.php:1014 +#: src/usr/local/www/services_dhcp.php:1024 msgid "" "Dynamic DNS domain key secret which will be used to register client names in " "the DNS server" msgstr "" -#: src/usr/local/www/services_dhcp.php:1025 +#: src/usr/local/www/services_dhcp.php:1035 msgid "MAC address control" msgstr "" -#: src/usr/local/www/services_dhcp.php:1031 +#: src/usr/local/www/services_dhcp.php:1041 msgid "MAC Allow" msgstr "" -#: src/usr/local/www/services_dhcp.php:1034 +#: src/usr/local/www/services_dhcp.php:1044 msgid "" "List of partial MAC addresses to allow, comma separated, no spaces, e.g.: " "00:00:00,01:E5:FF" msgstr "" -#: src/usr/local/www/services_dhcp.php:1038 +#: src/usr/local/www/services_dhcp.php:1048 msgid "MAC Deny" msgstr "" -#: src/usr/local/www/services_dhcp.php:1041 +#: src/usr/local/www/services_dhcp.php:1051 msgid "" "List of partial MAC addresses to deny access, comma separated, no spaces, e." "g.: 00:00:00,01:E5:FF" msgstr "" -#: src/usr/local/www/services_dhcp.php:1058 +#: src/usr/local/www/services_dhcp.php:1068 #: src/usr/local/www/services_dhcp_edit.php:649 #: src/usr/local/www/services_dhcpv6.php:740 #: src/usr/local/www/vpn_openvpn_server.php:1075 msgid "NTP Server 1" msgstr "" -#: src/usr/local/www/services_dhcp.php:1064 +#: src/usr/local/www/services_dhcp.php:1074 #: src/usr/local/www/services_dhcp_edit.php:657 #: src/usr/local/www/services_dhcpv6.php:748 #: src/usr/local/www/vpn_openvpn_server.php:1082 msgid "NTP Server 2" msgstr "" -#: src/usr/local/www/services_dhcp.php:1077 +#: src/usr/local/www/services_dhcp.php:1087 msgid "TFTP" msgstr "" -#: src/usr/local/www/services_dhcp.php:1083 +#: src/usr/local/www/services_dhcp.php:1093 #: src/usr/local/www/services_dhcp_edit.php:681 msgid "TFTP Server" msgstr "" -#: src/usr/local/www/services_dhcp.php:1085 +#: src/usr/local/www/services_dhcp.php:1095 msgid "" "Leave blank to disable. Enter a full hostname or IP for the TFTP server" msgstr "" -#: src/usr/local/www/services_dhcp.php:1096 +#: src/usr/local/www/services_dhcp.php:1106 #: src/usr/local/www/services_dhcpv6.php:766 msgid "LDAP" msgstr "" -#: src/usr/local/www/services_dhcp.php:1102 +#: src/usr/local/www/services_dhcp.php:1112 msgid "LDAP Server URI" msgstr "" -#: src/usr/local/www/services_dhcp.php:1105 +#: src/usr/local/www/services_dhcp.php:1115 msgid "" "Leave blank to disable. Enter a full URI for the LDAP server in the form " "ldap://ldap.example.com/dc=example,dc=com " msgstr "" -#: src/usr/local/www/services_dhcp.php:1114 -#: src/usr/local/www/services_dhcpv6.php:785 -#: src/usr/local/www/services_dhcpv6.php:791 -msgid "Network booting" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1125 -msgid "Next Server" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1127 -msgid "Enter the IP address of the next server" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1131 -msgid "Default BIOS file name" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1138 -msgid "UEFI 32 bit file name" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1145 -msgid "UEFI 64 bit file name" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1148 -msgid "" -"You need both a filename and a boot server configured for this to work! You " -"will need all three filenames and a boot server configured for UEFI to work! " -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1153 -#: src/usr/local/www/services_dhcpv6_edit.php:272 -msgid "Root path" -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1156 -msgid "string-format: iscsi:(servername):(protocol):(port):(LUN):targetname " -msgstr "" - -#: src/usr/local/www/services_dhcp.php:1167 -#: src/usr/local/www/services_dhcp.php:1173 +#: src/usr/local/www/services_dhcp.php:1128 +#: src/usr/local/www/services_dhcp.php:1132 #: src/usr/local/www/services_dhcpv6.php:811 msgid "Additional BOOTP/DHCP Options" msgstr "" -#: src/usr/local/www/services_dhcp.php:1178 +#: src/usr/local/www/services_dhcp.php:1137 msgid "" "Enter the DHCP option number and the value for each item you would like to " "include in the DHCP lease information. For a list of available options " "please visit this " msgstr "" -#: src/usr/local/www/services_dhcp.php:1179 +#: src/usr/local/www/services_dhcp.php:1138 msgid "URL" msgstr "" -#: src/usr/local/www/services_dhcp.php:1187 +#: src/usr/local/www/services_dhcp.php:1146 msgid "Text" msgstr "" -#: src/usr/local/www/services_dhcp.php:1187 +#: src/usr/local/www/services_dhcp.php:1146 msgid "String" msgstr "" -#: src/usr/local/www/services_dhcp.php:1187 +#: src/usr/local/www/services_dhcp.php:1146 msgid "Boolean" msgstr "" -#: src/usr/local/www/services_dhcp.php:1188 +#: src/usr/local/www/services_dhcp.php:1147 msgid "Unsigned 8-bit integer" msgstr "" -#: src/usr/local/www/services_dhcp.php:1188 +#: src/usr/local/www/services_dhcp.php:1147 msgid "Unsigned 16-bit integer" msgstr "" -#: src/usr/local/www/services_dhcp.php:1188 +#: src/usr/local/www/services_dhcp.php:1147 msgid "Unsigned 32-bit integer" msgstr "" -#: src/usr/local/www/services_dhcp.php:1189 +#: src/usr/local/www/services_dhcp.php:1148 msgid "Signed 8-bit integer" msgstr "" -#: src/usr/local/www/services_dhcp.php:1189 +#: src/usr/local/www/services_dhcp.php:1148 msgid "Signed 16-bit integer" msgstr "" -#: src/usr/local/www/services_dhcp.php:1189 +#: src/usr/local/www/services_dhcp.php:1148 msgid "Signed 32-bit integer" msgstr "" -#: src/usr/local/www/services_dhcp.php:1189 +#: src/usr/local/www/services_dhcp.php:1148 msgid "IP address or host" msgstr "" -#: src/usr/local/www/services_dhcp.php:1202 +#: src/usr/local/www/services_dhcp.php:1161 msgid "Option" msgstr "" -#: src/usr/local/www/services_dhcp.php:1277 +#: src/usr/local/www/services_dhcp.php:1208 +#: src/usr/local/www/services_dhcpv6.php:785 +#: src/usr/local/www/services_dhcpv6.php:791 +msgid "Network booting" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1219 +msgid "Next Server" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1221 +msgid "Enter the IP address of the next server" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1225 +msgid "Default BIOS file name" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1232 +msgid "UEFI 32 bit file name" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1239 +msgid "UEFI 64 bit file name" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1242 +msgid "" +"You need both a filename and a boot server configured for this to work! You " +"will need all three filenames and a boot server configured for UEFI to work! " +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1247 +#: src/usr/local/www/services_dhcpv6_edit.php:272 +msgid "Root path" +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1250 +msgid "string-format: iscsi:(servername):(protocol):(port):(LUN):targetname " +msgstr "" + +#: src/usr/local/www/services_dhcp.php:1287 msgid "DHCP Static Mappings for this interface" msgstr "" -#: src/usr/local/www/services_dhcp.php:1317 +#: src/usr/local/www/services_dhcp.php:1327 #: src/usr/local/www/services_dhcp_edit.php:410 -#: src/usr/local/www/services_dhcpv6.php:923 +#: src/usr/local/www/services_dhcpv6.php:924 #: src/usr/local/www/services_dhcpv6_edit.php:217 #: src/usr/local/www/status_dhcp_leases.php:443 msgid "Edit static mapping" msgstr "" -#: src/usr/local/www/services_dhcp.php:1318 -#: src/usr/local/www/services_dhcpv6.php:924 +#: src/usr/local/www/services_dhcp.php:1328 +#: src/usr/local/www/services_dhcpv6.php:925 msgid "Delete static mapping" msgstr "" @@ -17383,14 +18216,14 @@ msgid "ARP Table Static Entry" msgstr "" #: src/usr/local/www/services_dhcp_edit.php:495 -#: src/usr/local/www/vpn_ipsec_mobile.php:664 +#: src/usr/local/www/vpn_ipsec_mobile.php:665 msgid "WINS Servers" msgstr "" #: src/usr/local/www/services_dhcp_edit.php:514 #: src/usr/local/www/services_dhcpv6.php:624 -#: src/usr/local/www/services_pppoe_edit.php:378 -#: src/usr/local/www/vpn_ipsec_mobile.php:639 +#: src/usr/local/www/services_pppoe_edit.php:390 +#: src/usr/local/www/vpn_ipsec_mobile.php:640 #: src/usr/local/www/vpn_openvpn_csc.php:467 msgid "DNS Servers" msgstr "" @@ -17514,6 +18347,12 @@ msgstr "" msgid "A valid Destination Server IP address must be specified." msgstr "" +#: src/usr/local/www/services_dhcp_relay.php:159 +msgid "" +"DHCP Server is currently enabled. Cannot enable the DHCP Relay service while " +"the DHCP Server is enabled on any interface." +msgstr "" + #: src/usr/local/www/services_dhcp_relay.php:174 msgid "DHCP Relay configuration" msgstr "" @@ -17555,7 +18394,7 @@ msgid "A valid IPv6 address must be specified for the gateway." msgstr "" #: src/usr/local/www/services_dhcpv6.php:216 -#: src/usr/local/www/services_router_advertisements.php:179 +#: src/usr/local/www/services_router_advertisements.php:181 msgid "A valid IPv6 address must be specified for each of the DNS servers." msgstr "" @@ -17590,8 +18429,8 @@ msgid "" msgstr "" #: src/usr/local/www/services_dhcpv6.php:516 -#: src/usr/local/www/services_router_advertisements.php:226 -#: src/usr/local/www/services_router_advertisements.php:269 +#: src/usr/local/www/services_router_advertisements.php:228 +#: src/usr/local/www/services_router_advertisements.php:271 msgid "Router Advertisements" msgstr "" @@ -17708,7 +18547,11 @@ msgstr "" msgid " page." msgstr "" -#: src/usr/local/www/services_dhcpv6.php:895 +#: src/usr/local/www/services_dhcpv6.php:891 +msgid "DHCPv6 Static Mappings for this interface." +msgstr "" + +#: src/usr/local/www/services_dhcpv6.php:896 #: src/usr/local/www/services_dhcpv6_edit.php:141 #: src/usr/local/www/services_dhcpv6_edit.php:232 #: src/usr/local/www/status_dhcpv6_leases.php:445 @@ -17737,8 +18580,8 @@ msgid "Enter a DUID in the following format: " msgstr "" #: src/usr/local/www/services_dhcpv6_edit.php:236 -#: src/usr/local/www/pkg_edit.php:1302 src/usr/local/www/pkg_edit.php:1308 -#: src/usr/local/www/pkg_edit.php:1313 +#: src/usr/local/www/pkg_edit.php:1303 src/usr/local/www/pkg_edit.php:1309 +#: src/usr/local/www/pkg_edit.php:1314 msgid "<br />" msgstr "" @@ -17757,6 +18600,12 @@ msgstr "" msgid "A valid Destination Server IPv6 address must be specified." msgstr "" +#: src/usr/local/www/services_dhcpv6_relay.php:157 +msgid "" +"DHCPv6 Server is currently enabled. Cannot enable the DHCPv6 Relay service " +"while the DHCPv6 Server is enabled on any interface." +msgstr "" + #: src/usr/local/www/services_dhcpv6_relay.php:172 msgid "DHCPv6 Relay configuration" msgstr "" @@ -17777,6 +18626,12 @@ msgid "" "This is the IPv6 address of the server to which DHCPv6 requests are relayed." msgstr "" +#: src/usr/local/www/services_dnsmasq.php:133 +msgid "" +"The DNS Resolver is enabled using this port. Choose a non-conflicting port, " +"or disable DNS Resolver." +msgstr "" + #: src/usr/local/www/services_dnsmasq.php:141 #: src/usr/local/www/system_advanced_admin.php:132 msgid "You must specify a valid port number" @@ -17891,6 +18746,11 @@ msgstr "" msgid "Delete host override" msgstr "" +#: src/usr/local/www/services_dnsmasq.php:409 +#: src/usr/local/www/services_unbound.php:468 +msgid "Alias for " +msgstr "" + #: src/usr/local/www/services_dnsmasq.php:438 msgid "" "Entries in this section override individual results from the forwarders." @@ -18070,6 +18930,7 @@ msgstr "" #: src/usr/local/www/status_openvpn.php:316 #: src/usr/local/www/status_services.php:130 #: src/usr/local/www/widgets/widgets/dyn_dns_status.widget.php:105 +#: src/usr/local/www/widgets/widgets/services_status.widget.php:90 msgid "Service" msgstr "" @@ -18288,7 +19149,7 @@ msgid "" msgstr "" #: src/usr/local/www/services_igmpproxy_edit.php:273 -#: src/usr/local/www/services_unbound_acls.php:308 +#: src/usr/local/www/services_unbound_acls.php:307 msgid "Add network" msgstr "" @@ -18303,6 +19164,7 @@ msgstr "" #: src/usr/local/www/services_ntpd_gps.php:232 #: src/usr/local/www/services_ntpd_pps.php:136 #: src/usr/local/www/services_ntpd_pps.php:151 +#: src/usr/local/www/status_queues.php:194 #: src/usr/local/www/status_queues.php:198 msgid "PPS" msgstr "" @@ -18390,13 +19252,32 @@ msgstr "" msgid "Enter Leap second configuration as text OR select a file to upload" msgstr "" -#: src/usr/local/www/services_ntpd_gps.php:237 -msgid "NTP Serial GPS Configuration" +#: src/usr/local/www/services_ntpd_gps.php:86 +msgid "Setting default NTPd settings" msgstr "" -#: src/usr/local/www/services_ntpd_gps.php:240 -#: src/usr/local/www/services_ntpd_pps.php:159 -msgid "Notes" +#: src/usr/local/www/services_ntpd_gps.php:189 +msgid "Updated NTP GPS Settings" +msgstr "" + +#: src/usr/local/www/services_ntpd_gps.php:206 +msgid "RMC" +msgstr "" + +#: src/usr/local/www/services_ntpd_gps.php:207 +msgid "GGA" +msgstr "" + +#: src/usr/local/www/services_ntpd_gps.php:208 +msgid "GLL" +msgstr "" + +#: src/usr/local/www/services_ntpd_gps.php:209 +msgid "ZDA or ZDG" +msgstr "" + +#: src/usr/local/www/services_ntpd_gps.php:237 +msgid "NTP Serial GPS Configuration" msgstr "" #: src/usr/local/www/services_ntpd_gps.php:252 @@ -18563,94 +19444,102 @@ msgstr "" msgid "Delete PPPoE instance" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:141 +#: src/usr/local/www/services_pppoe_edit.php:142 #: src/usr/local/www/vpn_l2tp.php:95 src/usr/local/www/vpn_l2tp.php:271 msgid "Server address" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:141 +#: src/usr/local/www/services_pppoe_edit.php:142 #: src/usr/local/www/vpn_l2tp.php:95 msgid "Remote start address" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:146 +#: src/usr/local/www/services_pppoe_edit.php:147 #: src/usr/local/www/vpn_l2tp.php:100 msgid "RADIUS server address" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:146 +#: src/usr/local/www/services_pppoe_edit.php:147 #: src/usr/local/www/vpn_l2tp.php:100 msgid "RADIUS shared secret" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:152 +#: src/usr/local/www/services_pppoe_edit.php:153 #: src/usr/local/www/vpn_l2tp.php:106 msgid "A valid server address must be specified." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:155 +#: src/usr/local/www/services_pppoe_edit.php:156 #: src/usr/local/www/vpn_l2tp.php:112 msgid "A valid remote start address must be specified." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:158 +#: src/usr/local/www/services_pppoe_edit.php:159 #: src/usr/local/www/vpn_l2tp.php:115 msgid "A valid RADIUS server address must be specified." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:161 +#: src/usr/local/www/services_pppoe_edit.php:162 msgid "Number of PPPoE users must be between 1 and 255" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:164 +#: src/usr/local/www/services_pppoe_edit.php:165 +msgid "User Max Logins must be between 1 and 255" +msgstr "" + +#: src/usr/local/www/services_pppoe_edit.php:168 msgid "Subnet mask must be an interger between 0 and 32" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:169 +#: src/usr/local/www/services_pppoe_edit.php:173 #: src/usr/local/www/vpn_l2tp.php:139 msgid "The specified server address lies in the remote subnet." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:172 +#: src/usr/local/www/services_pppoe_edit.php:176 msgid "The specified server address is equal to an interface ip address." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:178 +#: src/usr/local/www/services_pppoe_edit.php:182 #, php-format msgid "No password specified for username %s" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:181 +#: src/usr/local/www/services_pppoe_edit.php:185 #, php-format msgid "Incorrect ip address specified for username %s" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:188 +#: src/usr/local/www/services_pppoe_edit.php:192 msgid "Wrong data submitted" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:323 +#: src/usr/local/www/services_pppoe_edit.php:328 msgid "PPPoE Server Configuration" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:346 -msgid "Hint: 24 is 255.255.255.0" -msgstr "" - -#: src/usr/local/www/services_pppoe_edit.php:350 -msgid "PPPoE User Count" +#: src/usr/local/www/services_pppoe_edit.php:348 +msgid "Total User Count" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:353 +#: src/usr/local/www/services_pppoe_edit.php:351 msgid "" "The number of PPPoE users allowed to connect to this server simultaneously." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:357 +#: src/usr/local/www/services_pppoe_edit.php:355 +msgid "User Max Logins" +msgstr "" + +#: src/usr/local/www/services_pppoe_edit.php:358 +msgid "The number of times a single user may be logged in at the same time." +msgstr "" + +#: src/usr/local/www/services_pppoe_edit.php:362 msgid "Server Address" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:359 +#: src/usr/local/www/services_pppoe_edit.php:364 msgid "" "Enter the IP address the PPPoE server should give to clients for use as " "their \"gateway\"<br />Typically this is set to an unused IP just outside of " @@ -18658,109 +19547,113 @@ msgid "" "currently in use on this firewall" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:365 +#: src/usr/local/www/services_pppoe_edit.php:370 msgid "Remote Address Range" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:367 +#: src/usr/local/www/services_pppoe_edit.php:372 msgid "Specify the starting address for the client IP address subnet" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:387 +#: src/usr/local/www/services_pppoe_edit.php:379 +msgid "Hint: 24 is 255.255.255.0" +msgstr "" + +#: src/usr/local/www/services_pppoe_edit.php:399 msgid "" "If entered these servers will be given to all PPPoE clients, otherwise LAN " "DNS and one WAN DNS will go to all clients" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:394 +#: src/usr/local/www/services_pppoe_edit.php:406 msgid "" "Users will be authenticated using the RADIUS server specified below. The " "local user database will not be used" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:402 +#: src/usr/local/www/services_pppoe_edit.php:414 msgid "Sends accounting packets to the RADIUS server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:409 +#: src/usr/local/www/services_pppoe_edit.php:421 msgid "If primary server fails all requests will be sent via backup server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:413 +#: src/usr/local/www/services_pppoe_edit.php:425 msgid "NAS IP Address" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:415 +#: src/usr/local/www/services_pppoe_edit.php:427 msgid "NAS IP Address sent to the RADIUS Server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:419 +#: src/usr/local/www/services_pppoe_edit.php:431 msgid "RADIUS Accounting Update" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:422 +#: src/usr/local/www/services_pppoe_edit.php:434 msgid "RADIUS accounting update period in seconds" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:426 +#: src/usr/local/www/services_pppoe_edit.php:438 msgid "Radius Issued IP Addresses" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:431 +#: src/usr/local/www/services_pppoe_edit.php:443 msgid "Primary RADIUS Server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:444 -#: src/usr/local/www/services_pppoe_edit.php:477 +#: src/usr/local/www/services_pppoe_edit.php:456 +#: src/usr/local/www/services_pppoe_edit.php:489 #: src/usr/local/www/system_authservers.php:231 #: src/usr/local/www/system_authservers.php:717 msgid "Authentication port" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:451 -#: src/usr/local/www/services_pppoe_edit.php:484 +#: src/usr/local/www/services_pppoe_edit.php:463 +#: src/usr/local/www/services_pppoe_edit.php:496 msgid "Accounting port (optional)" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:453 -#: src/usr/local/www/services_pppoe_edit.php:486 +#: src/usr/local/www/services_pppoe_edit.php:465 +#: src/usr/local/www/services_pppoe_edit.php:498 msgid "Standard ports are 1812 (authentication) and 1813 (accounting)" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:459 +#: src/usr/local/www/services_pppoe_edit.php:471 msgid "Primary RADIUS Server Shared Secret" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:462 +#: src/usr/local/www/services_pppoe_edit.php:474 #: src/usr/local/www/vpn_l2tp.php:354 msgid "" "Enter the shared secret that will be used to authenticate to the RADIUS " "server." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:464 +#: src/usr/local/www/services_pppoe_edit.php:476 msgid "Secondary RADIUS Server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:492 +#: src/usr/local/www/services_pppoe_edit.php:504 msgid "Secondary RADIUS Server Shared Secret" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:495 +#: src/usr/local/www/services_pppoe_edit.php:507 msgid "" "Enter the shared secret that will be used to authenticate to the backup " "RADIUS server." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:520 +#: src/usr/local/www/services_pppoe_edit.php:532 msgid "User table" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:556 +#: src/usr/local/www/services_pppoe_edit.php:568 msgid "Add user" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:589 +#: src/usr/local/www/services_pppoe_edit.php:601 msgid "" "Don't forget to add a firewall rule to permit traffic from PPPoE clients" msgstr "" @@ -18871,7 +19764,31 @@ msgstr "" msgid "Only interfaces configured with a static IP will be shown" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:143 +#: src/usr/local/www/services_router_advertisements.php:134 +msgid "Router Only" +msgstr "" + +#: src/usr/local/www/services_router_advertisements.php:135 +msgid "Unmanaged" +msgstr "" + +#: src/usr/local/www/services_router_advertisements.php:136 +msgid "Managed" +msgstr "" + +#: src/usr/local/www/services_router_advertisements.php:137 +msgid "Assisted" +msgstr "" + +#: src/usr/local/www/services_router_advertisements.php:138 +msgid "Stateless DHCP" +msgstr "" + +#: src/usr/local/www/services_router_advertisements.php:140 +msgid "Low" +msgstr "" + +#: src/usr/local/www/services_router_advertisements.php:145 msgid "" "Subnets are specified in CIDR format. Select the CIDR mask that pertains to " "each entry.\t/128 specifies a single IPv6 host; /64 specifies a normal IPv6 " @@ -18880,20 +19797,20 @@ msgid "" "assigned.</span>" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:173 +#: src/usr/local/www/services_router_advertisements.php:175 #, php-format msgid "An invalid subnet or alias was specified. [%s/%s]" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:277 +#: src/usr/local/www/services_router_advertisements.php:279 msgid "Advertisements" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:281 +#: src/usr/local/www/services_router_advertisements.php:283 msgid "Router mode" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:284 +#: src/usr/local/www/services_router_advertisements.php:286 msgid "" "Select the Operating Mode for the Router Advertisement (RA) Daemon. Use:<br /" "> <strong>Router Only</strong> to only advertise this router<br /> " @@ -18905,39 +19822,39 @@ msgid "" "network" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:293 +#: src/usr/local/www/services_router_advertisements.php:295 msgid "Router priority" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:296 +#: src/usr/local/www/services_router_advertisements.php:298 msgid "Select the Priority for the Router Advertisement (RA) Daemon." msgstr "" -#: src/usr/local/www/services_router_advertisements.php:317 +#: src/usr/local/www/services_router_advertisements.php:319 msgid "RA Interface" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:320 +#: src/usr/local/www/services_router_advertisements.php:322 msgid "Select the Interface for the Router Advertisement (RA) Daemon." msgstr "" -#: src/usr/local/www/services_router_advertisements.php:324 +#: src/usr/local/www/services_router_advertisements.php:326 msgid "RA Subnets" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:341 +#: src/usr/local/www/services_router_advertisements.php:343 msgid "Subnets" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:368 +#: src/usr/local/www/services_router_advertisements.php:370 msgid "DNS Configuration" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:373 +#: src/usr/local/www/services_router_advertisements.php:375 msgid "Server " msgstr "" -#: src/usr/local/www/services_router_advertisements.php:383 +#: src/usr/local/www/services_router_advertisements.php:385 msgid "" "The RA server can optionally provide a domain search list. Use the semicolon " "character as separator " @@ -19052,6 +19969,30 @@ msgstr "" msgid "Bind Interface" msgstr "" +#: src/usr/local/www/services_unbound.php:140 +msgid "" +"The DNS Forwarder is enabled using this port. Choose a non-conflicting port, " +"or disable the DNS Forwarder." +msgstr "" + +#: src/usr/local/www/services_unbound.php:145 +msgid "One or more Network Interfaces must be selected for binding." +msgstr "" + +#: src/usr/local/www/services_unbound.php:147 +msgid "" +"This system is configured to use the DNS Resolver as its DNS server, so " +"Localhost or All must be selected in Network Interfaces." +msgstr "" + +#: src/usr/local/www/services_unbound.php:151 +msgid "One or more Outgoing Network Interfaces must be selected." +msgstr "" + +#: src/usr/local/www/services_unbound.php:155 +msgid "A System Domain Local-Zone Type must be selected." +msgstr "" + #: src/usr/local/www/services_unbound.php:159 msgid "You must specify a valid port number." msgstr "" @@ -19062,7 +20003,13 @@ msgid "" "following errors:" msgstr "" +#: src/usr/local/www/services_unbound.php:198 +#: src/usr/local/www/services_unbound_advanced.php:214 +msgid "DNS Resolver configured." +msgstr "" + #: src/usr/local/www/services_unbound.php:251 +#: src/usr/local/www/status_logs.php:74 #: src/usr/local/www/status_logs_common.inc:125 msgid "General" msgstr "" @@ -19075,20 +20022,20 @@ msgid "" msgstr "" #: src/usr/local/www/services_unbound.php:269 -#: src/usr/local/www/services_unbound_acls.php:226 +#: src/usr/local/www/services_unbound_acls.php:225 #: src/usr/local/www/services_unbound_advanced.php:238 msgid "General settings" msgstr "" #: src/usr/local/www/services_unbound.php:270 -#: src/usr/local/www/services_unbound_acls.php:227 +#: src/usr/local/www/services_unbound_acls.php:226 #: src/usr/local/www/services_unbound_advanced.php:239 msgid "Advanced settings" msgstr "" #: src/usr/local/www/services_unbound.php:271 -#: src/usr/local/www/services_unbound_acls.php:209 -#: src/usr/local/www/services_unbound_acls.php:228 +#: src/usr/local/www/services_unbound_acls.php:208 +#: src/usr/local/www/services_unbound_acls.php:227 #: src/usr/local/www/services_unbound_advanced.php:240 msgid "Access Lists" msgstr "" @@ -19122,10 +20069,12 @@ msgid "" msgstr "" #: src/usr/local/www/services_unbound.php:314 +#: src/usr/local/www/services_unbound_acls.php:261 msgid "Deny" msgstr "" #: src/usr/local/www/services_unbound.php:314 +#: src/usr/local/www/services_unbound_acls.php:261 msgid "Refuse" msgstr "" @@ -19198,46 +20147,137 @@ msgstr "" msgid "You must enter a valid IPv6 netmask for each IPv6 row under Networks." msgstr "" -#: src/usr/local/www/services_unbound_acls.php:222 +#: src/usr/local/www/services_unbound_acls.php:173 +msgid "save" +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:203 +#, php-format +msgid "%sDeny:%s Stops queries from hosts within the netblock defined below.%s" +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:204 +#, php-format +msgid "" +"%sRefuse:%s Stops queries from hosts within the netblock defined below, but " +"sends a DNS rcode REFUSED error message back to the client.%s" +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:205 +#, php-format +msgid "" +"%sAllow:%s Allow queries from hosts within the netblock defined below.%s" +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:206 +#, php-format +msgid "" +"%sAllow Snoop:%s Allow recursive and nonrecursive access from hosts within " +"the netblock defined below. Used for cache snooping and ideally should only " +"be configured for your administrative host." +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:221 msgid "The configuration of the DNS Resolver, has been changed" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:235 +#: src/usr/local/www/services_unbound_acls.php:234 msgid "New Access List" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:253 +#: src/usr/local/www/services_unbound_acls.php:252 msgid "Access List name" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:256 +#: src/usr/local/www/services_unbound_acls.php:255 msgid "Provide an Access List name." msgstr "" -#: src/usr/local/www/services_unbound_acls.php:280 +#: src/usr/local/www/services_unbound_acls.php:261 +msgid "Allow" +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:261 +msgid "Allow Snoop" +msgstr "" + +#: src/usr/local/www/services_unbound_acls.php:279 msgid "Networks" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:286 +#: src/usr/local/www/services_unbound_acls.php:285 msgid "Network/mask" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:317 +#: src/usr/local/www/services_unbound_acls.php:316 msgid "Access Lists to control access to the DNS Resolver" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:323 +#: src/usr/local/www/services_unbound_acls.php:322 msgid "Access List Name" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:345 +#: src/usr/local/www/services_unbound_acls.php:344 msgid "Edit ACL" msgstr "" -#: src/usr/local/www/services_unbound_acls.php:346 +#: src/usr/local/www/services_unbound_acls.php:345 msgid "Delete ACL" msgstr "" +#: src/usr/local/www/services_unbound_advanced.php:124 +msgid "A valid value for Message Cache Size must be specified." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:127 +msgid "A valid value must be specified for Outgoing TCP Buffers." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:130 +msgid "A valid value must be specified for Incoming TCP Buffers." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:133 +msgid "A valid value must be specified for EDNS Buffer Size." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:136 +msgid "A valid value must be specified for Number of Queries per Thread." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:139 +msgid "A valid value must be specified for Jostle Timeout." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:142 +msgid "'Maximum TTL for RRsets and Messages' must be a positive integer." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:145 +msgid "'Minimum TTL for RRsets and Messages' must be a positive integer." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:148 +msgid "A valid value must be specified for TTL for Host Cache Entries." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:151 +msgid "A valid value must be specified for Number of Hosts to Cache." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:154 +msgid "A valid value must be specified for Unwanted Reply Threshold." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:157 +msgid "A valid value must be specified for Log Level." +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:160 +msgid "" +"Harden DNSSEC Data option can only be enabled if DNSSEC support is enabled." +msgstr "" + #: src/usr/local/www/services_unbound_advanced.php:245 msgid "Advanced Resolver Options" msgstr "" @@ -19377,32 +20417,36 @@ msgid "" "match up with the actual data anymore." msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:345 +#: src/usr/local/www/services_unbound_advanced.php:346 msgid "TTL for Host Cache Entries" msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:348 +#: src/usr/local/www/services_unbound_advanced.php:349 msgid "" "Time to Live, in seconds, for entries in the infrastructure host cache. The " "infrastructure host cache contains round trip timing, lameness, and EDNS " "support information for DNS servers. The default value is 15 minutes." msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:352 +#: src/usr/local/www/services_unbound_advanced.php:353 msgid "Number of Hosts to Cache" msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:355 +#: src/usr/local/www/services_unbound_advanced.php:356 msgid "" "Number of infrastructure hosts for which information is cached. The default " "is 10,000." msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:359 +#: src/usr/local/www/services_unbound_advanced.php:358 +msgid "million" +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:361 msgid "Unwanted Reply Threshold" msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:363 +#: src/usr/local/www/services_unbound_advanced.php:365 msgid "" "If enabled, a total number of unwanted replies is kept track of in every " "thread. When it reaches the threshold, a defensive action is taken and a " @@ -19412,29 +20456,33 @@ msgid "" msgstr "" #: src/usr/local/www/services_unbound_advanced.php:369 -msgid "Log Level" +msgid "level" msgstr "" #: src/usr/local/www/services_unbound_advanced.php:372 +msgid "Log Level" +msgstr "" + +#: src/usr/local/www/services_unbound_advanced.php:375 msgid "Select the log verbosity." msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:376 +#: src/usr/local/www/services_unbound_advanced.php:379 msgid "Disable Auto-added Access Control" msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:379 +#: src/usr/local/www/services_unbound_advanced.php:382 msgid "" "By default, IPv4 and IPv6 networks residing on internal interfaces of this " "system are permitted. Allowed networks must be manually configured on the " "Access Lists tab if the auto-added entries are disabled." msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:384 +#: src/usr/local/www/services_unbound_advanced.php:387 msgid "Experimental Bit 0x20 Support" msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:387 +#: src/usr/local/www/services_unbound_advanced.php:390 msgid "" "See the implementation <a href=\"https://tools.ietf.org/html/draft-vixie-" "dnsext-dns0x20-00\">draft dns-0x20</a> for more information: " @@ -19529,6 +20577,10 @@ msgstr "" msgid "Enter a MAC address in the following format: xx:xx:xx:xx:xx:xx" msgstr "" +#: src/usr/local/www/services_wol.php:191 +msgid "Wake on LAN devices" +msgstr "" + #: src/usr/local/www/services_wol.php:195 msgid "Click the MAC address to wake up an individual device." msgstr "" @@ -19619,15 +20671,6 @@ msgstr "" msgid "Active Vouchers" msgstr "" -#: src/usr/local/www/status_captiveportal.php:135 -#: src/usr/local/www/status_captiveportal_expire.php:93 -#: src/usr/local/www/status_captiveportal_test.php:94 -#: src/usr/local/www/status_captiveportal_voucher_rolls.php:85 -#: src/usr/local/www/status_captiveportal_voucher_rolls.php:99 -#: src/usr/local/www/status_captiveportal_vouchers.php:135 -msgid "Voucher Rolls" -msgstr "" - #: src/usr/local/www/status_captiveportal.php:136 #: src/usr/local/www/status_captiveportal_expire.php:94 #: src/usr/local/www/status_captiveportal_test.php:86 @@ -19681,6 +20724,7 @@ msgid "Disconnect" msgstr "" #: src/usr/local/www/status_captiveportal.php:259 +#: src/usr/local/www/widgets/include/captiveportal.inc:2 msgid "Captive Portal Status" msgstr "" @@ -19689,6 +20733,10 @@ msgid "" "No captive portal zones have been configured. You may add new zones here: " msgstr "" +#: src/usr/local/www/status_captiveportal.php:262 +msgid "Services->Captive portal" +msgstr "" + #: src/usr/local/www/status_captiveportal.php:278 msgid "Don't show last activity" msgstr "" @@ -19721,10 +20769,6 @@ msgstr "" msgid "Roll#" msgstr "" -#: src/usr/local/www/status_captiveportal_voucher_rolls.php:111 -msgid "# of Tickets" -msgstr "" - #: src/usr/local/www/status_captiveportal_voucher_rolls.php:113 msgid "used" msgstr "" @@ -19741,6 +20785,10 @@ msgstr "" msgid "Voucher" msgstr "" +#: src/usr/local/www/status_captiveportal_vouchers.php:146 +msgid "Roll" +msgstr "" + #: src/usr/local/www/status_captiveportal_vouchers.php:147 msgid "Activated at" msgstr "" @@ -19881,9 +20929,10 @@ msgstr "" #: src/usr/local/www/status_dhcp_leases.php:375 #: src/usr/local/www/status_dhcpv6_leases.php:450 #: src/usr/local/www/status_gateway_groups.php:167 -#: src/usr/local/www/status_gateways.php:170 -#: src/usr/local/www/status_gateways.php:174 +#: src/usr/local/www/status_gateways.php:176 +#: src/usr/local/www/status_gateways.php:180 #: src/usr/local/www/status_ipsec_leases.php:89 +#: src/usr/local/www/widgets/widgets/gateways.widget.php:247 #: src/usr/local/www/widgets/widgets/wake_on_lan.widget.php:90 msgid "Online" msgstr "" @@ -19961,6 +21010,22 @@ msgid "" "done reloading" msgstr "" +#: src/usr/local/www/status_filter_reload.php:138 +msgid "Obtaining filter status..." +msgstr "" + +#: src/usr/local/www/status_filter_reload.php:141 +msgid "Initializing..." +msgstr "" + +#: src/usr/local/www/status_filter_reload.php:144 +msgid "Done. The filter rules have been reloaded." +msgstr "" + +#: src/usr/local/www/status_filter_reload.php:147 +msgid "Queue Status" +msgstr "" + #: src/usr/local/www/status_gateway_groups.php:82 #: src/usr/local/www/status_gateway_groups.php:86 #: src/usr/local/www/status_gateway_groups.php:92 @@ -19982,19 +21047,20 @@ msgid "Tier %s" msgstr "" #: src/usr/local/www/status_gateway_groups.php:158 -#: src/usr/local/www/status_gateways.php:161 +#: src/usr/local/www/status_gateways.php:167 +#: src/usr/local/www/widgets/widgets/gateways.widget.php:238 #: src/usr/local/www/widgets/widgets/wake_on_lan.widget.php:96 #: src/usr/local/www/diag_smart.php:390 msgid "Offline" msgstr "" #: src/usr/local/www/status_gateway_groups.php:161 -#: src/usr/local/www/status_gateways.php:164 +#: src/usr/local/www/status_gateways.php:170 msgid "Warning, Packetloss" msgstr "" #: src/usr/local/www/status_gateway_groups.php:164 -#: src/usr/local/www/status_gateways.php:167 +#: src/usr/local/www/status_gateways.php:173 msgid "Warning, Latency" msgstr "" @@ -20015,17 +21081,19 @@ msgstr "" msgid "Loss" msgstr "" -#: src/usr/local/www/status_gateways.php:132 -#: src/usr/local/www/status_gateways.php:141 -#: src/usr/local/www/status_gateways.php:150 -#: src/usr/local/www/status_gateways.php:177 +#: src/usr/local/www/status_gateways.php:134 +#: src/usr/local/www/status_gateways.php:145 +#: src/usr/local/www/status_gateways.php:156 +#: src/usr/local/www/status_gateways.php:183 +#: src/usr/local/www/widgets/widgets/gateways.widget.php:250 #: src/usr/local/www/widgets/widgets/gateways.widget.php:258 #: src/usr/local/www/widgets/widgets/gateways.widget.php:259 #: src/usr/local/www/widgets/widgets/gateways.widget.php:260 msgid "Pending" msgstr "" -#: src/usr/local/www/status_gateways.php:158 +#: src/usr/local/www/status_gateways.php:164 +#: src/usr/local/www/widgets/widgets/gateways.widget.php:235 msgid "Offline (forced)" msgstr "" @@ -20035,24 +21103,47 @@ msgstr "" msgid "Graph settings" msgstr "" +#: src/usr/local/www/status_graph.php:173 +#: src/usr/local/www/status_graph.php:275 +msgid "Bandwidth In" +msgstr "" + +#: src/usr/local/www/status_graph.php:174 +#: src/usr/local/www/status_graph.php:276 +msgid "Bandwidth Out" +msgstr "" + +#: src/usr/local/www/status_graph.php:183 +msgid "Local" +msgstr "" + +#: src/usr/local/www/status_graph.php:184 +msgid "Remote" +msgstr "" + +#: src/usr/local/www/status_graph.php:197 +msgid "FQDN" +msgstr "" + #: src/usr/local/www/status_graph.php:199 msgid "Display" msgstr "" -#: src/usr/local/www/status_graph.php:274 -msgid "Host IP" +#: src/usr/local/www/status_graph.php:228 +#: src/usr/local/www/status_graph.php:229 +msgid "Bits/sec" msgstr "" -#: src/usr/local/www/status_graph.php:274 -msgid "Host Name or IP" +#: src/usr/local/www/status_graph.php:258 +msgid "Traffic graph" msgstr "" -#: src/usr/local/www/status_graph.php:275 -msgid "Bandwidth In" +#: src/usr/local/www/status_graph.php:274 +msgid "Host IP" msgstr "" -#: src/usr/local/www/status_graph.php:276 -msgid "Bandwidth Out" +#: src/usr/local/www/status_graph.php:274 +msgid "Host Name or IP" msgstr "" #: src/usr/local/www/status_graph_cpu.php:66 @@ -20063,6 +21154,10 @@ msgstr "" msgid "Status: CPU Graph" msgstr "" +#: src/usr/local/www/status_graph_cpu.php:74 +msgid "CPU Load graph" +msgstr "" + #: src/usr/local/www/status_graph_cpu.php:80 #: src/usr/local/www/vpn_ipsec_keys.php:211 #: src/usr/local/www/vpn_ipsec_keys_edit.php:207 @@ -20187,6 +21282,7 @@ msgid "In/out errors" msgstr "" #: src/usr/local/www/status_interfaces.php:180 +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:79 msgid "Collisions" msgstr "" @@ -20211,6 +21307,7 @@ msgstr "" #: src/usr/local/www/status_ipsec_leases.php:75 #: src/usr/local/www/status_ipsec_sad.php:86 #: src/usr/local/www/status_ipsec_spd.php:79 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:205 msgid "Overview" msgstr "" @@ -20230,6 +21327,10 @@ msgstr "" msgid "SPD" msgstr "" +#: src/usr/local/www/status_ipsec.php:127 +msgid "IPsec status" +msgstr "" + #: src/usr/local/www/status_ipsec.php:133 msgid "Local ID" msgstr "" @@ -20256,6 +21357,7 @@ msgid "Algo" msgstr "" #: src/usr/local/www/status_ipsec.php:167 +#: src/usr/local/www/status_ipsec.php:200 msgid "Any identifier" msgstr "" @@ -20267,11 +21369,16 @@ msgstr "" msgid " seconds (" msgstr "" +#: src/usr/local/www/status_ipsec.php:277 #: src/usr/local/www/status_ipsec.php:278 #: src/usr/local/www/status_ipsec.php:494 msgid "Connect VPN" msgstr "" +#: src/usr/local/www/status_ipsec.php:283 +msgid "Disconnect VPN" +msgstr "" + #: src/usr/local/www/status_ipsec.php:298 msgid "Show child SA entries" msgstr "" @@ -20400,71 +21507,116 @@ msgstr "" msgid "Tunnel endpoints" msgstr "" +#: src/usr/local/www/status_ipsec_spd.php:103 +msgid " Inbound" +msgstr "" + +#: src/usr/local/www/status_ipsec_spd.php:105 +msgid " Outbound" +msgstr "" + #: src/usr/local/www/status_ipsec_spd.php:133 msgid "No IPsec security policies configured." msgstr "" -#: src/usr/local/www/status_logs.php:128 -#: src/usr/local/www/status_logs_filter.php:135 -#: src/usr/local/www/status_logs_filter_dynamic.php:115 -#: src/usr/local/www/status_logs_filter_summary.php:101 -#: src/usr/local/www/status_logs_settings.php:209 -#: src/usr/local/www/status_logs_vpn.php:117 -msgid "System logs" +#: src/usr/local/www/status_lb_pool.php:143 +msgid "Updated load balancer pools via status screen." +msgstr "" + +#: src/usr/local/www/status_lb_pool.php:148 +msgid "" +"The load balancer configuration has been changed. You must apply the changes " +"in order for them to take effect." +msgstr "" + +#: src/usr/local/www/status_lb_pool.php:162 +msgid "Load Balancer Pools" +msgstr "" + +#: src/usr/local/www/status_lb_pool.php:187 +msgid "Load balancing" +msgstr "" + +#: src/usr/local/www/status_lb_pool.php:190 +msgid "Manual failover" +msgstr "" + +#: src/usr/local/www/status_lb_pool.php:193 +msgid "(default)" +msgstr "" + +#: src/usr/local/www/status_lb_vs.php:94 +msgid "No load balancers have been configured!" +msgstr "" + +#: src/usr/local/www/status_lb_vs.php:136 +#: src/usr/local/www/widgets/widgets/load_balancer_status.widget.php:105 +#: src/usr/local/www/system.php:552 +msgid "Active" +msgstr "" + +#: src/usr/local/www/status_lb_vs.php:140 +#: src/usr/local/www/widgets/widgets/load_balancer_status.widget.php:109 +msgid "Down" +msgstr "" + +#: src/usr/local/www/status_lb_vs.php:144 +#: src/usr/local/www/widgets/widgets/load_balancer_status.widget.php:113 +msgid "Unknown - relayd not running?" msgstr "" -#: src/usr/local/www/status_logs.php:164 -#: src/usr/local/www/status_logs_filter.php:178 -#: src/usr/local/www/status_logs_vpn.php:163 +#: src/usr/local/www/status_lb_vs.php:156 #, php-format -msgid "Last %d %s log entries." +msgid "Total Sessions: %s" msgstr "" -#: src/usr/local/www/status_logs.php:166 -#: src/usr/local/www/status_logs_filter.php:180 -#: src/usr/local/www/status_logs_vpn.php:165 +#: src/usr/local/www/status_lb_vs.php:159 #, php-format -msgid "%d matched %s log entries." +msgid "Last: %s" msgstr "" -#: src/usr/local/www/status_logs.php:169 -#: src/usr/local/www/status_logs_filter.php:183 -#: src/usr/local/www/status_logs_vpn.php:168 +#: src/usr/local/www/status_lb_vs.php:162 #, php-format -msgid "Maximum %d" +msgid "Average: %s" msgstr "" -#: src/usr/local/www/status_logs.php:179 -#: src/usr/local/www/status_logs_common.inc:224 -msgid "Process" +#: src/usr/local/www/status_logs.php:78 +msgid "Captive Portal Authentication" msgstr "" -#: src/usr/local/www/status_logs.php:180 -#: src/usr/local/www/status_logs_common.inc:231 -#: src/usr/local/www/status_logs_vpn.php:221 -#: src/usr/local/www/status_logs_vpn.php:450 -msgid "PID" +#: src/usr/local/www/status_logs.php:88 +msgid "NTPd" msgstr "" -#: src/usr/local/www/status_logs.php:209 src/usr/local/www/status_logs.php:246 -#: src/usr/local/www/status_logs_filter.php:317 -#: src/usr/local/www/status_logs_filter.php:349 -#: src/usr/local/www/status_logs_vpn.php:253 -#: src/usr/local/www/status_logs_vpn.php:270 -msgid "No logs to display" +#: src/usr/local/www/status_logs.php:128 +#: src/usr/local/www/status_logs_filter.php:135 +#: src/usr/local/www/status_logs_filter_dynamic.php:115 +#: src/usr/local/www/status_logs_filter_summary.php:101 +#: src/usr/local/www/status_logs_settings.php:209 +#: src/usr/local/www/status_logs_vpn.php:117 +msgid "System logs" msgstr "" -#: src/usr/local/www/status_logs.php:219 -#: src/usr/local/www/status_logs_filter.php:328 -#: src/usr/local/www/status_logs_filter_dynamic.php:407 -#: src/usr/local/www/status_logs_vpn.php:263 -msgid "Last " +#: src/usr/local/www/status_logs.php:169 +#: src/usr/local/www/status_logs_common.inc:272 +msgid "Process" msgstr "" -#: src/usr/local/www/status_logs.php:219 -#: src/usr/local/www/status_logs_filter.php:328 -#: src/usr/local/www/status_logs_vpn.php:263 -msgid " log entries" +#: src/usr/local/www/status_logs.php:170 +#: src/usr/local/www/status_logs_common.inc:279 +#: src/usr/local/www/status_logs_vpn.php:211 +#: src/usr/local/www/status_logs_vpn.php:446 +msgid "PID" +msgstr "" + +#: src/usr/local/www/status_logs.php:199 src/usr/local/www/status_logs.php:238 +#: src/usr/local/www/status_logs_filter.php:307 +#: src/usr/local/www/status_logs_filter.php:341 +#: src/usr/local/www/status_logs_filter_dynamic.php:481 +#: src/usr/local/www/status_logs_vpn.php:243 +#: src/usr/local/www/status_logs_vpn.php:266 +#: src/usr/local/www/widgets/widgets/log.widget.php:195 +msgid "No logs to display" msgstr "" #: src/usr/local/www/status_logs_common.inc:113 @@ -20477,7 +21629,7 @@ msgstr "" #: src/usr/local/www/status_logs_vpn.php:117 #: src/usr/local/www/status_rrd_graph.php:456 #: src/usr/local/www/status_rrd_graph_settings.php:165 -#: src/usr/local/www/vpn_ipsec.php:253 src/usr/local/www/vpn_ipsec_keys.php:105 +#: src/usr/local/www/vpn_ipsec.php:252 src/usr/local/www/vpn_ipsec_keys.php:105 #: src/usr/local/www/vpn_ipsec_keys_edit.php:155 #: src/usr/local/www/vpn_ipsec_mobile.php:339 #: src/usr/local/www/vpn_ipsec_phase1.php:638 @@ -20519,156 +21671,193 @@ msgid "Summary View" msgstr "" #: src/usr/local/www/status_logs_common.inc:137 +#: src/usr/local/www/status_logs_vpn.php:97 msgid "PPPoE Logins" msgstr "" #: src/usr/local/www/status_logs_common.inc:140 +#: src/usr/local/www/status_logs_vpn.php:77 msgid "PPPoE Service" msgstr "" #: src/usr/local/www/status_logs_common.inc:143 +#: src/usr/local/www/status_logs_vpn.php:98 msgid "L2TP Logins" msgstr "" #: src/usr/local/www/status_logs_common.inc:146 +#: src/usr/local/www/status_logs_vpn.php:79 msgid "L2TP Service" msgstr "" -#: src/usr/local/www/status_logs_common.inc:208 -#: src/usr/local/www/status_logs_common.inc:369 -#: src/usr/local/www/status_logs_vpn.php:384 +#: src/usr/local/www/status_logs_common.inc:165 +#, php-format +msgid "%s matched %s log entries." +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:167 +#, php-format +msgid "Last %s %s log entries." +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:171 +#, php-format +msgid "%d matched %s log entries." +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:173 +#, php-format +msgid "Last %d %s log entries." +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:177 +#, php-format +msgid "Maximum %d" +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:256 +#: src/usr/local/www/status_logs_common.inc:417 +#: src/usr/local/www/status_logs_vpn.php:380 msgid "Advanced Log Filter" msgstr "" -#: src/usr/local/www/status_logs_common.inc:239 -#: src/usr/local/www/status_logs_common.inc:279 -#: src/usr/local/www/status_logs_common.inc:425 -#: src/usr/local/www/status_logs_common.inc:487 -#: src/usr/local/www/status_logs_vpn.php:409 -#: src/usr/local/www/status_logs_vpn.php:458 -#: src/usr/local/www/status_logs_vpn.php:499 +#: src/usr/local/www/status_logs_common.inc:287 +#: src/usr/local/www/status_logs_common.inc:327 +#: src/usr/local/www/status_logs_common.inc:473 +#: src/usr/local/www/status_logs_common.inc:535 +#: src/usr/local/www/status_logs_vpn.php:405 +#: src/usr/local/www/status_logs_vpn.php:454 +#: src/usr/local/www/status_logs_vpn.php:495 msgid "Quantity" msgstr "" -#: src/usr/local/www/status_logs_common.inc:254 -#: src/usr/local/www/status_logs_common.inc:283 -#: src/usr/local/www/status_logs_common.inc:462 -#: src/usr/local/www/status_logs_common.inc:502 -#: src/usr/local/www/status_logs_vpn.php:474 -#: src/usr/local/www/status_logs_vpn.php:503 +#: src/usr/local/www/status_logs_common.inc:302 +#: src/usr/local/www/status_logs_common.inc:331 +#: src/usr/local/www/status_logs_common.inc:510 +#: src/usr/local/www/status_logs_common.inc:550 +#: src/usr/local/www/status_logs_vpn.php:470 +#: src/usr/local/www/status_logs_vpn.php:499 msgid "Apply Filter" msgstr "" -#: src/usr/local/www/status_logs_common.inc:254 -#: src/usr/local/www/status_logs_common.inc:283 -#: src/usr/local/www/status_logs_common.inc:462 -#: src/usr/local/www/status_logs_common.inc:502 -#: src/usr/local/www/status_logs_common.inc:756 -#: src/usr/local/www/status_logs_common.inc:927 -#: src/usr/local/www/status_logs_vpn.php:474 -#: src/usr/local/www/status_logs_vpn.php:503 +#: src/usr/local/www/status_logs_common.inc:302 +#: src/usr/local/www/status_logs_common.inc:331 +#: src/usr/local/www/status_logs_common.inc:510 +#: src/usr/local/www/status_logs_common.inc:550 +#: src/usr/local/www/status_logs_common.inc:804 +#: src/usr/local/www/status_logs_common.inc:975 +#: src/usr/local/www/status_logs_vpn.php:470 +#: src/usr/local/www/status_logs_vpn.php:499 #: src/usr/local/www/diag_nanobsd.php:162 msgid " " msgstr "" -#: src/usr/local/www/status_logs_common.inc:271 -#: src/usr/local/www/status_logs_common.inc:498 -#: src/usr/local/www/status_logs_vpn.php:491 +#: src/usr/local/www/status_logs_common.inc:319 +#: src/usr/local/www/status_logs_common.inc:546 +#: src/usr/local/www/status_logs_vpn.php:487 msgid "Filter Expression" msgstr "" -#: src/usr/local/www/status_logs_common.inc:296 -#: src/usr/local/www/status_logs_common.inc:515 -#: src/usr/local/www/status_logs_vpn.php:516 +#: src/usr/local/www/status_logs_common.inc:344 +#: src/usr/local/www/status_logs_common.inc:563 +#: src/usr/local/www/status_logs_vpn.php:512 msgid "Regular expression reference" msgstr "" -#: src/usr/local/www/status_logs_common.inc:296 -#: src/usr/local/www/status_logs_common.inc:515 -#: src/usr/local/www/status_logs_vpn.php:516 +#: src/usr/local/www/status_logs_common.inc:344 +#: src/usr/local/www/status_logs_common.inc:563 +#: src/usr/local/www/status_logs_vpn.php:512 msgid "Precede with exclamation (!) to exclude match." msgstr "" -#: src/usr/local/www/status_logs_common.inc:296 -#: src/usr/local/www/status_logs_common.inc:515 -#: src/usr/local/www/status_logs_vpn.php:516 +#: src/usr/local/www/status_logs_common.inc:344 +#: src/usr/local/www/status_logs_common.inc:563 +#: src/usr/local/www/status_logs_vpn.php:512 msgid "" "<a target=\"_blank\" href=\"http://www.php.net/manual/en/book.pcre.php\">" msgstr "" -#: src/usr/local/www/status_logs_common.inc:378 +#: src/usr/local/www/status_logs_common.inc:426 msgid "Source IP Address" msgstr "" -#: src/usr/local/www/status_logs_common.inc:385 +#: src/usr/local/www/status_logs_common.inc:433 msgid "Destination IP Address" msgstr "" -#: src/usr/local/www/status_logs_common.inc:458 +#: src/usr/local/www/status_logs_common.inc:506 msgid "Protocol Flags" msgstr "" -#: src/usr/local/www/status_logs_common.inc:611 +#: src/usr/local/www/status_logs_common.inc:659 #: src/usr/local/www/status_logs_settings.php:128 msgid "Number of log entries to show must be between 5 and 2000." msgstr "" -#: src/usr/local/www/status_logs_common.inc:617 +#: src/usr/local/www/status_logs_common.inc:665 #: src/usr/local/www/status_logs_settings.php:133 msgid "Log file size must be numeric and greater than or equal to 100000." msgstr "" -#: src/usr/local/www/status_logs_common.inc:699 +#: src/usr/local/www/status_logs_common.inc:733 +msgid "Log Display Settings Saved: " +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:738 +msgid "Log Display Settings Saved (no backup, no sync): " +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:747 #: src/usr/local/www/status_logs_settings.php:200 -#: src/usr/local/www/system_advanced_admin.php:597 +#: src/usr/local/www/system_advanced_admin.php:599 msgid "webConfigurator configuration has changed. Restarting webConfigurator." msgstr "" -#: src/usr/local/www/status_logs_common.inc:701 +#: src/usr/local/www/status_logs_common.inc:749 #: src/usr/local/www/status_logs_settings.php:202 msgid "WebGUI process is restarting." msgstr "" -#: src/usr/local/www/status_logs_common.inc:756 +#: src/usr/local/www/status_logs_common.inc:804 msgid "Manage" msgstr "" -#: src/usr/local/www/status_logs_common.inc:765 +#: src/usr/local/www/status_logs_common.inc:813 #: src/usr/local/www/status_logs_settings.php:255 msgid "Forward/Reverse Display" msgstr "" -#: src/usr/local/www/status_logs_common.inc:773 +#: src/usr/local/www/status_logs_common.inc:821 msgid "(newest at bottom)" msgstr "" -#: src/usr/local/www/status_logs_common.inc:781 +#: src/usr/local/www/status_logs_common.inc:829 msgid "(newest at top)" msgstr "" -#: src/usr/local/www/status_logs_common.inc:791 +#: src/usr/local/www/status_logs_common.inc:839 msgid "Show log entries in forward or reverse order." msgstr "" -#: src/usr/local/www/status_logs_common.inc:794 -#: src/usr/local/www/status_logs_common.inc:799 +#: src/usr/local/www/status_logs_common.inc:842 +#: src/usr/local/www/status_logs_common.inc:847 #: src/usr/local/www/status_logs_settings.php:262 msgid "GUI Log Entries" msgstr "" -#: src/usr/local/www/status_logs_common.inc:805 +#: src/usr/local/www/status_logs_common.inc:853 msgid "" "This is the number of log entries displayed in the GUI. It does not affect " "how many entries are contained in the log." msgstr "" -#: src/usr/local/www/status_logs_common.inc:808 -#: src/usr/local/www/status_logs_common.inc:813 +#: src/usr/local/www/status_logs_common.inc:856 +#: src/usr/local/www/status_logs_common.inc:861 #: src/usr/local/www/status_logs_settings.php:270 msgid "Log file size (Bytes)" msgstr "" -#: src/usr/local/www/status_logs_common.inc:818 +#: src/usr/local/www/status_logs_common.inc:866 msgid "" "The log is held in a constant-size circular log file. This field controls " "how large the log file is, and thus how many entries may exist inside the " @@ -20678,52 +21867,67 @@ msgid "" "Log\" action below. " msgstr "" -#: src/usr/local/www/status_logs_common.inc:823 +#: src/usr/local/www/status_logs_common.inc:871 msgid "Formatted/Raw Display" msgstr "" -#: src/usr/local/www/status_logs_common.inc:849 +#: src/usr/local/www/status_logs_common.inc:897 msgid "" "Show the log entries as formatted or raw output as generated by the service. " "The raw output will reveal more detailed information, but it is more " "difficult to read." msgstr "" -#: src/usr/local/www/status_logs_common.inc:857 +#: src/usr/local/www/status_logs_common.inc:905 #: src/usr/local/www/status_logs_settings.php:306 msgid "Web Server Log" msgstr "" -#: src/usr/local/www/status_logs_common.inc:860 +#: src/usr/local/www/status_logs_common.inc:908 msgid "" "If this is checked, errors from the nginx web server process for the GUI or " "Captive Portal will appear in the system log." msgstr "" -#: src/usr/local/www/status_logs_common.inc:868 +#: src/usr/local/www/status_logs_common.inc:916 #: src/usr/local/www/status_logs_settings.php:278 msgid "Log firewall default blocks" msgstr "" -#: src/usr/local/www/status_logs_common.inc:871 +#: src/usr/local/www/status_logs_common.inc:919 msgid "" "Packets that are blocked by the implicit default block rule will not be " "logged if this option is unchecked. Per-rule logging options are still " "respected." msgstr "" -#: src/usr/local/www/status_logs_common.inc:878 +#: src/usr/local/www/status_logs_common.inc:926 msgid "" "Packets that are allowed by the implicit default pass rule will be logged if " "this option is checked. Per-rule logging options are still respected. " msgstr "" -#: src/usr/local/www/status_logs_common.inc:896 +#: src/usr/local/www/status_logs_common.inc:947 +#: src/usr/local/www/status_logs_settings.php:323 +msgid "Dont load descriptions" +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:948 +#: src/usr/local/www/status_logs_settings.php:324 +msgid "Display as column" +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:949 +#: src/usr/local/www/status_logs_settings.php:325 +msgid "Display as second row" +msgstr "" + +#: src/usr/local/www/status_logs_common.inc:944 #: src/usr/local/www/status_logs_settings.php:320 msgid "Where to show rule descriptions" msgstr "" -#: src/usr/local/www/status_logs_common.inc:903 +#: src/usr/local/www/status_logs_common.inc:951 #: src/usr/local/www/status_logs_settings.php:327 msgid "" "Show the applied rule description below or in the firewall log rows<br /" @@ -20731,15 +21935,15 @@ msgid "" "performance with large rule sets" msgstr "" -#: src/usr/local/www/status_logs_common.inc:922 +#: src/usr/local/www/status_logs_common.inc:970 msgid "Saves changed settings." msgstr "" -#: src/usr/local/www/status_logs_common.inc:927 +#: src/usr/local/www/status_logs_common.inc:975 msgid "Clear log" msgstr "" -#: src/usr/local/www/status_logs_common.inc:937 +#: src/usr/local/www/status_logs_common.inc:985 msgid "" "Clears local log file and reinitializes it as an empty log. Save any " "settings changes first." @@ -20753,37 +21957,33 @@ msgstr "" msgid "The rule that triggered this action is" msgstr "" -#: src/usr/local/www/status_logs_filter.php:199 +#: src/usr/local/www/status_logs_filter.php:189 msgid "Rule" msgstr "" -#: src/usr/local/www/status_logs_filter.php:276 -#: src/usr/local/www/status_logs_filter.php:285 +#: src/usr/local/www/status_logs_filter.php:266 +#: src/usr/local/www/status_logs_filter.php:275 msgid "Click to resolve" msgstr "" -#: src/usr/local/www/status_logs_filter.php:279 +#: src/usr/local/www/status_logs_filter.php:269 msgid "Easy Rule: Add to Block List" msgstr "" -#: src/usr/local/www/status_logs_filter.php:279 +#: src/usr/local/www/status_logs_filter.php:269 msgid "Do you really want to add this BLOCK rule?" msgstr "" -#: src/usr/local/www/status_logs_filter.php:288 +#: src/usr/local/www/status_logs_filter.php:278 msgid "Easy Rule: Pass this traffic" msgstr "" -#: src/usr/local/www/status_logs_filter.php:288 +#: src/usr/local/www/status_logs_filter.php:278 msgid "Do you really want to add this PASS rule?" msgstr "" -#: src/usr/local/www/status_logs_filter_dynamic.php:407 -msgid " records. " -msgstr "" - -#: src/usr/local/www/status_logs_filter_dynamic.php:407 -msgid "Pause " +#: src/usr/local/www/status_logs_filter_dynamic.php:409 +msgid "Pause" msgstr "" #: src/usr/local/www/status_logs_filter_summary.php:119 @@ -20813,11 +22013,15 @@ msgid "Data points" msgstr "" #: src/usr/local/www/status_logs_filter_summary.php:212 -#: src/usr/local/www/widgets/widgets/log.widget.php:178 -#: src/usr/local/www/widgets/widgets/log.widget.php:181 +#: src/usr/local/www/widgets/widgets/log.widget.php:179 +#: src/usr/local/www/widgets/widgets/log.widget.php:182 msgid "Reverse Resolve with DNS" msgstr "" +#: src/usr/local/www/status_logs_filter_summary.php:212 +msgid "Lookup" +msgstr "" + #: src/usr/local/www/status_logs_settings.php:109 #: src/usr/local/www/status_logs_settings.php:339 msgid "Reset Log Files" @@ -20994,11 +22198,51 @@ msgid "" "remote server to accept syslog messages from pfSense." msgstr "" -#: src/usr/local/www/status_logs_vpn.php:222 -#: src/usr/local/www/status_logs_vpn.php:469 +#: src/usr/local/www/status_logs_vpn.php:75 +msgid "VPN Logins" +msgstr "" + +#: src/usr/local/www/status_logs_vpn.php:212 +#: src/usr/local/www/status_logs_vpn.php:465 msgid "Log Message" msgstr "" +#: src/usr/local/www/status_ntpd.php:84 +msgid "Unreach/Pending" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:87 +msgid "Active Peer" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:90 +msgid "Candidate" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:93 +msgid "PPS Peer" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:96 +msgid "Selected" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:99 +msgid "Excess Peer" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:102 +msgid "False Ticker" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:105 +msgid "Outlier" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:193 +msgid "Network Time Protocol Status" +msgstr "" + #: src/usr/local/www/status_ntpd.php:200 msgid "Ref ID" msgstr "" @@ -21028,6 +22272,22 @@ msgstr "" msgid "Jitter" msgstr "" +#: src/usr/local/www/status_ntpd.php:215 +#, php-format +msgid "" +"Statistics unavailable because ntpq and ntpdc queries are disabled in the " +"%sNTP service settings%s" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:221 +#, php-format +msgid "No peers found, %sis the ntp service running?%s" +msgstr "" + +#: src/usr/local/www/status_ntpd.php:258 +msgid "GPS information" +msgstr "" + #: src/usr/local/www/status_ntpd.php:264 msgid "Clock Latitude" msgstr "" @@ -21041,9 +22301,22 @@ msgid "Clock Altitude" msgstr "" #: src/usr/local/www/status_ntpd.php:278 +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:209 msgid "Satellites" msgstr "" +#: src/usr/local/www/status_ntpd.php:303 +msgid "in view " +msgstr "" + +#: src/usr/local/www/status_ntpd.php:310 +msgid "in use " +msgstr "" + +#: src/usr/local/www/status_ntpd.php:317 +msgid "Google Maps Link" +msgstr "" + #: src/usr/local/www/status_openvpn.php:116 #: src/usr/local/www/widgets/widgets/openvpn.widget.php:96 msgid "An error occurred." @@ -21144,6 +22417,7 @@ msgid "" msgstr "" #: src/usr/local/www/status_openvpn.php:360 +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:263 msgid "No OpenVPN instances defined" msgstr "" @@ -21166,6 +22440,14 @@ msgstr "" msgid "Last %1$s %2$s log entries" msgstr "" +#: src/usr/local/www/status_queues.php:87 +msgid "Something wrong happened during communication with stat gathering" +msgstr "" + +#: src/usr/local/www/status_queues.php:97 +msgid "No queue statistics could be read." +msgstr "" + #: src/usr/local/www/status_queues.php:145 msgid "Traffic shaper" msgstr "" @@ -21214,6 +22496,12 @@ msgstr "" msgid "Invalid end date/time:" msgstr "" +#: src/usr/local/www/status_rrd_graph.php:233 +#: src/usr/local/www/status_rrd_graph_img.php:104 +#, php-format +msgid "start %d is smaller than end %d" +msgstr "" + #: src/usr/local/www/status_rrd_graph.php:239 #: src/usr/local/www/status_rrd_graph_settings.php:86 msgid "Inverse" @@ -21239,6 +22527,10 @@ msgstr "" msgid "Previous Period" msgstr "" +#: src/usr/local/www/status_rrd_graph.php:302 +msgid "VPN Users" +msgstr "" + #: src/usr/local/www/status_rrd_graph.php:309 msgid " Graphs" msgstr "" @@ -21276,6 +22568,7 @@ msgid "Graphs" msgstr "" #: src/usr/local/www/status_rrd_graph.php:558 +#: src/usr/local/www/status_rrd_graph.php:625 msgid "Graph" msgstr "" @@ -21329,6 +22622,10 @@ msgid "" "logs." msgstr "" +#: src/usr/local/www/status_rrd_graph_settings.php:95 +msgid "RRD data has been cleared. New RRD files have been generated." +msgstr "" + #: src/usr/local/www/status_rrd_graph_settings.php:173 msgid "NTPD" msgstr "" @@ -21500,6 +22797,14 @@ msgid "" "the Web configurator. css files are located in /usr/local/www/bootstrap/css" msgstr "" +#: src/usr/local/www/system.php:510 +msgid "Scrolls with page" +msgstr "" + +#: src/usr/local/www/system.php:510 +msgid "Fixed (Remains visible at top of page)" +msgstr "" + #: src/usr/local/www/system.php:508 msgid "Top Navigation" msgstr "" @@ -21604,6 +22909,7 @@ msgstr "" #: src/usr/local/www/system_advanced_network.php:187 #: src/usr/local/www/system_advanced_notifications.php:231 #: src/usr/local/www/system_advanced_sysctl.php:185 +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:277 msgid "Miscellaneous" msgstr "" @@ -21785,7 +23091,7 @@ msgstr "" msgid "Note: Leave this blank for the default of 22." msgstr "" -#: src/usr/local/www/system_advanced_admin.php:513 +#: src/usr/local/www/system_advanced_admin.php:512 msgid "Serial Communications" msgstr "" @@ -21801,38 +23107,46 @@ msgid "" "serial console." msgstr "" -#: src/usr/local/www/system_advanced_admin.php:527 +#: src/usr/local/www/system_advanced_admin.php:528 msgid "Serial Speed" msgstr "" -#: src/usr/local/www/system_advanced_admin.php:530 +#: src/usr/local/www/system_advanced_admin.php:531 msgid "Allows selection of different speeds for the serial console port." msgstr "" -#: src/usr/local/www/system_advanced_admin.php:534 -msgid "Primary Console" +#: src/usr/local/www/system_advanced_admin.php:539 +msgid "Serial Console" msgstr "" #: src/usr/local/www/system_advanced_admin.php:540 +msgid "VGA Console" +msgstr "" + +#: src/usr/local/www/system_advanced_admin.php:536 +msgid "Primary Console" +msgstr "" + +#: src/usr/local/www/system_advanced_admin.php:542 msgid "" "Select the preferred console if multiple consoles are present. The preferred " "console will show pfSense boot script output. All consoles display OS boot " "messages, console messages, and the console menu." msgstr "" -#: src/usr/local/www/system_advanced_admin.php:546 +#: src/usr/local/www/system_advanced_admin.php:548 msgid "Console Options" msgstr "" -#: src/usr/local/www/system_advanced_admin.php:550 +#: src/usr/local/www/system_advanced_admin.php:552 msgid "Console menu" msgstr "" -#: src/usr/local/www/system_advanced_admin.php:586 +#: src/usr/local/www/system_advanced_admin.php:588 msgid "secure shell configuration has changed. Stopping sshd." msgstr "" -#: src/usr/local/www/system_advanced_admin.php:589 +#: src/usr/local/www/system_advanced_admin.php:591 msgid "secure shell configuration has changed. Restarting sshd." msgstr "" @@ -21960,6 +23274,19 @@ msgid "" "reassembly." msgstr "" +#: src/usr/local/www/system_advanced_firewall.php:454 +msgid "High-latency" +msgstr "" + +#: src/usr/local/www/system_advanced_firewall.php:455 +#: src/usr/local/www/vpn_ipsec_phase1.php:723 +msgid "Aggressive" +msgstr "" + +#: src/usr/local/www/system_advanced_firewall.php:456 +msgid "Conservative" +msgstr "" + #: src/usr/local/www/system_advanced_firewall.php:450 msgid "Firewall Optimization Options" msgstr "" @@ -22116,6 +23443,18 @@ msgstr "" msgid "Bogon Networks" msgstr "" +#: src/usr/local/www/system_advanced_firewall.php:597 +msgid "Monthly" +msgstr "" + +#: src/usr/local/www/system_advanced_firewall.php:598 +msgid "Weekly" +msgstr "" + +#: src/usr/local/www/system_advanced_firewall.php:599 +msgid "Daily" +msgstr "" + #: src/usr/local/www/system_advanced_firewall.php:594 msgid "Update Frequency" msgstr "" @@ -22130,6 +23469,18 @@ msgstr "" msgid "Network Address Translation" msgstr "" +#: src/usr/local/www/system_advanced_firewall.php:622 +msgid "disabled" +msgstr "" + +#: src/usr/local/www/system_advanced_firewall.php:623 +msgid "NAT + proxy" +msgstr "" + +#: src/usr/local/www/system_advanced_firewall.php:624 +msgid "Pure NAT" +msgstr "" + #: src/usr/local/www/system_advanced_firewall.php:619 msgid "NAT Reflection mode for port forwards" msgstr "" @@ -22372,6 +23723,22 @@ msgid "" "and keeps twice lower CPU load." msgstr "" +#: src/usr/local/www/system_advanced_misc.php:420 +msgid "Hiadaptive" +msgstr "" + +#: src/usr/local/www/system_advanced_misc.php:421 +msgid "Adaptive" +msgstr "" + +#: src/usr/local/www/system_advanced_misc.php:422 +msgid "Minimum" +msgstr "" + +#: src/usr/local/www/system_advanced_misc.php:423 +msgid "Maximum" +msgstr "" + #: src/usr/local/www/system_advanced_misc.php:428 msgid "AC Power" msgstr "" @@ -22406,6 +23773,8 @@ msgid "" msgstr "" #: src/usr/local/www/system_advanced_misc.php:467 +#: src/usr/local/www/widgets/include/thermal_sensors.inc:14 +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:277 msgid "Thermal Sensors" msgstr "" @@ -22442,7 +23811,7 @@ msgstr "" #: src/usr/local/www/system_advanced_misc.php:498 msgid "" "The monitoring process will flush all states when a gateway goes down if " -"this box is not checked. Check this box to disable this behavior." +"this box is checked." msgstr "" #: src/usr/local/www/system_advanced_misc.php:503 @@ -23358,22 +24727,22 @@ msgid "Distinguished Name" msgstr "" #: src/usr/local/www/system_camanager.php:405 -#: src/usr/local/www/system_certmanager.php:1023 +#: src/usr/local/www/system_certmanager.php:1030 msgid "self-signed" msgstr "" #: src/usr/local/www/system_camanager.php:407 -#: src/usr/local/www/system_certmanager.php:1025 +#: src/usr/local/www/system_certmanager.php:1032 msgid "external" msgstr "" #: src/usr/local/www/system_camanager.php:442 -#: src/usr/local/www/system_certmanager.php:1057 +#: src/usr/local/www/system_certmanager.php:1064 msgid "Valid From" msgstr "" #: src/usr/local/www/system_camanager.php:442 -#: src/usr/local/www/system_certmanager.php:1057 +#: src/usr/local/www/system_certmanager.php:1064 msgid "Valid Until" msgstr "" @@ -23593,6 +24962,18 @@ msgstr "" msgid "Alternative Names" msgstr "" +#: src/usr/local/www/system_certmanager.php:811 +msgid "FQDN or Hostname" +msgstr "" + +#: src/usr/local/www/system_certmanager.php:813 +msgid "URI" +msgstr "" + +#: src/usr/local/www/system_certmanager.php:814 +msgid "email address" +msgstr "" + #: src/usr/local/www/system_certmanager.php:843 msgid "External Signing Request" msgstr "" @@ -23619,28 +25000,28 @@ msgstr "" msgid "In Use" msgstr "" -#: src/usr/local/www/system_certmanager.php:1033 +#: src/usr/local/www/system_certmanager.php:1040 msgid "external - signature pending" msgstr "" -#: src/usr/local/www/system_certmanager.php:1086 +#: src/usr/local/www/system_certmanager.php:1112 msgid "Export Certificate" msgstr "" -#: src/usr/local/www/system_certmanager.php:1087 -#: src/usr/local/www/system_certmanager.php:1092 +#: src/usr/local/www/system_certmanager.php:1113 +#: src/usr/local/www/system_certmanager.php:1118 msgid "Export Key" msgstr "" -#: src/usr/local/www/system_certmanager.php:1088 +#: src/usr/local/www/system_certmanager.php:1114 msgid "Export P12" msgstr "" -#: src/usr/local/www/system_certmanager.php:1090 +#: src/usr/local/www/system_certmanager.php:1116 msgid "Update CSR" msgstr "" -#: src/usr/local/www/system_certmanager.php:1091 +#: src/usr/local/www/system_certmanager.php:1117 msgid "Export Request" msgstr "" @@ -23842,10 +25223,12 @@ msgid "Member Down" msgstr "" #: src/usr/local/www/system_gateway_groups_edit.php:77 +#: src/usr/local/www/system_gateway_groups_edit.php:334 msgid "Packet Loss" msgstr "" #: src/usr/local/www/system_gateway_groups_edit.php:78 +#: src/usr/local/www/system_gateway_groups_edit.php:335 msgid "High Latency" msgstr "" @@ -23882,10 +25265,6 @@ msgstr "" msgid "No gateway(s) have been selected to be used in this group" msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:195 -msgid "Interface Address" -msgstr "" - #: src/usr/local/www/system_gateway_groups_edit.php:224 msgid "Edit gateway group entry" msgstr "" @@ -23894,20 +25273,29 @@ msgstr "" msgid "Gateway Priority" msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:273 -#: src/usr/local/www/system_gateway_groups_edit.php:283 +#: src/usr/local/www/system_gateway_groups_edit.php:271 +#: src/usr/local/www/system_gateway_groups_edit.php:274 +#: src/usr/local/www/system_gateway_groups_edit.php:284 msgid "Tier" msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:316 +#: src/usr/local/www/system_gateway_groups_edit.php:317 msgid "Link Priority" msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:329 +#: src/usr/local/www/system_gateway_groups_edit.php:333 +msgid "Member down" +msgstr "" + +#: src/usr/local/www/system_gateway_groups_edit.php:336 +msgid "Packet Loss or High latency" +msgstr "" + +#: src/usr/local/www/system_gateway_groups_edit.php:330 msgid "Trigger Level" msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:337 +#: src/usr/local/www/system_gateway_groups_edit.php:338 msgid "When to trigger exclusion of a member" msgstr "" @@ -23943,6 +25331,7 @@ msgstr "" #: src/usr/local/www/system_gateways.php:278 #: src/usr/local/www/system_gateways_edit.php:731 +#: src/usr/local/www/widgets/widgets/gateways.widget.php:134 msgid "Monitor IP" msgstr "" @@ -24270,8 +25659,8 @@ msgid "" msgstr "" #: src/usr/local/www/system_groupmanager.php:102 -#: src/usr/local/www/vpn_ipsec_mobile.php:695 -#: src/usr/local/www/vpn_ipsec_mobile.php:704 +#: src/usr/local/www/vpn_ipsec_mobile.php:696 +#: src/usr/local/www/vpn_ipsec_mobile.php:705 msgid "Group" msgstr "" @@ -24623,63 +26012,57 @@ msgid "" "list." msgstr "" -#: src/usr/local/www/system_update_settings.php:72 -msgid "" -"A Firmware Auto Update Base URL must be specified when \"Use an unofficial " -"server for firmware upgrades\" is enabled." -msgstr "" - -#: src/usr/local/www/system_update_settings.php:130 +#: src/usr/local/www/system_update_settings.php:123 msgid "Firmware Branch" msgstr "" -#: src/usr/local/www/system_update_settings.php:134 +#: src/usr/local/www/system_update_settings.php:127 msgid "Branch" msgstr "" -#: src/usr/local/www/system_update_settings.php:137 +#: src/usr/local/www/system_update_settings.php:130 msgid "" "Please select the stable, or the development branch from which to update the " "system firmware. <br />Use of the development version is at your own risk!" msgstr "" -#: src/usr/local/www/system_update_settings.php:142 +#: src/usr/local/www/system_update_settings.php:135 msgid "Updates" msgstr "" -#: src/usr/local/www/system_update_settings.php:153 +#: src/usr/local/www/system_update_settings.php:146 msgid "Dashboard check" msgstr "" -#: src/usr/local/www/system_update_settings.php:161 +#: src/usr/local/www/system_update_settings.php:154 msgid "GitSync" msgstr "" -#: src/usr/local/www/system_update_settings.php:165 +#: src/usr/local/www/system_update_settings.php:158 msgid "Auto sync on update" msgstr "" -#: src/usr/local/www/system_update_settings.php:168 -#: src/usr/local/www/system_update_settings.php:166 +#: src/usr/local/www/system_update_settings.php:161 +#: src/usr/local/www/system_update_settings.php:159 msgid "After updating, sync with the following repository/branch before reboot" msgstr "" -#: src/usr/local/www/system_update_settings.php:180 +#: src/usr/local/www/system_update_settings.php:173 msgid "Repository URL" msgstr "" -#: src/usr/local/www/system_update_settings.php:183 +#: src/usr/local/www/system_update_settings.php:176 #, php-format msgid "" "The most recently used repository was %s. This repository will be used if " "the field is left blank." msgstr "" -#: src/usr/local/www/system_update_settings.php:201 +#: src/usr/local/www/system_update_settings.php:194 msgid "Branch name" msgstr "" -#: src/usr/local/www/system_update_settings.php:204 +#: src/usr/local/www/system_update_settings.php:197 #, php-format msgid "" "The most recently used branch was \"%s\". (Usually the branch name is " @@ -24974,36 +26357,37 @@ msgstr "" msgid "ERR Invalid configuration received." msgstr "" -#: src/usr/local/www/vpn_ipsec.php:253 src/usr/local/www/vpn_ipsec.php:259 +#: src/usr/local/www/vpn_ipsec.php:252 src/usr/local/www/vpn_ipsec.php:258 #: src/usr/local/www/vpn_ipsec_keys.php:124 -#: src/usr/local/www/vpn_ipsec_mobile.php:455 +#: src/usr/local/www/vpn_ipsec_mobile.php:456 #: src/usr/local/www/vpn_ipsec_phase1.php:654 #: src/usr/local/www/vpn_ipsec_phase2.php:523 #: src/usr/local/www/vpn_ipsec_settings.php:266 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:206 msgid "Tunnels" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:260 src/usr/local/www/vpn_ipsec_keys.php:125 +#: src/usr/local/www/vpn_ipsec.php:259 src/usr/local/www/vpn_ipsec_keys.php:125 #: src/usr/local/www/vpn_ipsec_mobile.php:339 -#: src/usr/local/www/vpn_ipsec_mobile.php:456 +#: src/usr/local/www/vpn_ipsec_mobile.php:457 #: src/usr/local/www/vpn_ipsec_phase1.php:655 #: src/usr/local/www/vpn_ipsec_phase2.php:524 #: src/usr/local/www/vpn_ipsec_settings.php:267 msgid "Mobile Clients" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:261 src/usr/local/www/vpn_ipsec_keys.php:105 +#: src/usr/local/www/vpn_ipsec.php:260 src/usr/local/www/vpn_ipsec_keys.php:105 #: src/usr/local/www/vpn_ipsec_keys.php:126 #: src/usr/local/www/vpn_ipsec_keys.php:132 -#: src/usr/local/www/vpn_ipsec_mobile.php:457 +#: src/usr/local/www/vpn_ipsec_mobile.php:458 #: src/usr/local/www/vpn_ipsec_phase1.php:656 #: src/usr/local/www/vpn_ipsec_phase2.php:525 #: src/usr/local/www/vpn_ipsec_settings.php:268 msgid "Pre-Shared Keys" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:262 src/usr/local/www/vpn_ipsec_keys.php:127 -#: src/usr/local/www/vpn_ipsec_mobile.php:458 +#: src/usr/local/www/vpn_ipsec.php:261 src/usr/local/www/vpn_ipsec_keys.php:127 +#: src/usr/local/www/vpn_ipsec_mobile.php:459 #: src/usr/local/www/vpn_ipsec_phase1.php:657 #: src/usr/local/www/vpn_ipsec_phase2.php:526 #: src/usr/local/www/vpn_ipsec_settings.php:236 @@ -25011,155 +26395,155 @@ msgstr "" msgid "Advanced Settings" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:272 src/usr/local/www/vpn_ipsec_keys.php:118 +#: src/usr/local/www/vpn_ipsec.php:271 src/usr/local/www/vpn_ipsec_keys.php:118 #: src/usr/local/www/vpn_ipsec_mobile.php:440 msgid "The IPsec tunnel configuration has been changed" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:278 +#: src/usr/local/www/vpn_ipsec.php:277 msgid "IPsec tunnels" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:285 +#: src/usr/local/www/vpn_ipsec.php:284 msgid "IKE" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:286 +#: src/usr/local/www/vpn_ipsec.php:285 #: src/usr/local/www/vpn_ipsec_phase1.php:695 msgid "Remote Gateway" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:288 +#: src/usr/local/www/vpn_ipsec.php:287 msgid "P1 Protocol" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:289 +#: src/usr/local/www/vpn_ipsec.php:288 msgid "P1 Transforms" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:290 +#: src/usr/local/www/vpn_ipsec.php:289 msgid "P1 Description" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:308 src/usr/local/www/vpn_ipsec.php:386 -#: src/usr/local/www/vpn_ipsec.php:387 +#: src/usr/local/www/vpn_ipsec.php:307 src/usr/local/www/vpn_ipsec.php:385 +#: src/usr/local/www/vpn_ipsec.php:386 msgid "Move checked entries to here" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:372 src/usr/local/www/vpn_ipsec.php:488 +#: src/usr/local/www/vpn_ipsec.php:371 src/usr/local/www/vpn_ipsec.php:487 msgid "auto" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:374 src/usr/local/www/vpn_ipsec.php:490 +#: src/usr/local/www/vpn_ipsec.php:373 src/usr/local/www/vpn_ipsec.php:489 msgid "bits" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:388 +#: src/usr/local/www/vpn_ipsec.php:387 msgid "Edit phase1 entry" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:390 +#: src/usr/local/www/vpn_ipsec.php:389 msgid "Copy phase1 entry" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:392 src/usr/local/www/vpn_ipsec.php:393 +#: src/usr/local/www/vpn_ipsec.php:391 src/usr/local/www/vpn_ipsec.php:392 msgid "Delete phase1 entry" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:421 +#: src/usr/local/www/vpn_ipsec.php:420 #, php-format msgid "Show %s Phase-2 entries" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:430 +#: src/usr/local/www/vpn_ipsec.php:429 msgid "Local Subnet" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:431 +#: src/usr/local/www/vpn_ipsec.php:430 msgid "Remote Subnet" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:432 +#: src/usr/local/www/vpn_ipsec.php:431 msgid "P2 Protocol" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:433 +#: src/usr/local/www/vpn_ipsec.php:432 msgid "P2 Transforms" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:434 +#: src/usr/local/www/vpn_ipsec.php:433 msgid "P2 Auth Methods" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:435 +#: src/usr/local/www/vpn_ipsec.php:434 msgid "P2 actions" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:458 src/usr/local/www/vpn_ipsec.php:509 +#: src/usr/local/www/vpn_ipsec.php:457 src/usr/local/www/vpn_ipsec.php:508 msgid "Move checked P2s here" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:510 +#: src/usr/local/www/vpn_ipsec.php:509 msgid "Edit phase2 entry" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:511 +#: src/usr/local/www/vpn_ipsec.php:510 msgid "Add a new Phase 2 based on this one" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:512 +#: src/usr/local/www/vpn_ipsec.php:511 msgid "Delete phase2 entry" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:513 +#: src/usr/local/www/vpn_ipsec.php:512 msgid "delete phase2 entry" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:522 +#: src/usr/local/www/vpn_ipsec.php:521 msgid "Add P2" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:551 +#: src/usr/local/www/vpn_ipsec.php:550 msgid "Add P1" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:554 +#: src/usr/local/www/vpn_ipsec.php:553 msgid "Delete selected P1s" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:556 +#: src/usr/local/www/vpn_ipsec.php:555 msgid "Delete P1s" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:563 +#: src/usr/local/www/vpn_ipsec.php:562 msgid "Note:" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:564 +#: src/usr/local/www/vpn_ipsec.php:563 msgid "You can check your IPsec status at " msgstr "" -#: src/usr/local/www/vpn_ipsec.php:564 +#: src/usr/local/www/vpn_ipsec.php:563 msgid "Status:IPsec" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:565 +#: src/usr/local/www/vpn_ipsec.php:564 msgid "IPsec Debug Mode can be enabled at " msgstr "" -#: src/usr/local/www/vpn_ipsec.php:565 src/usr/local/www/vpn_ipsec.php:566 +#: src/usr/local/www/vpn_ipsec.php:564 src/usr/local/www/vpn_ipsec.php:565 msgid "VPN:IPsec:Advanced Settings" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:566 +#: src/usr/local/www/vpn_ipsec.php:565 msgid "IPsec can be set to prefer older SAs at " msgstr "" -#: src/usr/local/www/vpn_ipsec.php:584 +#: src/usr/local/www/vpn_ipsec.php:583 msgid "Are you sure you wish to delete this P1 entry?" msgstr "" -#: src/usr/local/www/vpn_ipsec.php:590 +#: src/usr/local/www/vpn_ipsec.php:589 msgid "Are you sure you wish to delete this P2 entry?" msgstr "" @@ -25173,15 +26557,6 @@ msgstr "" msgid "Identifier" msgstr "" -#: src/usr/local/www/vpn_ipsec_keys.php:140 -#: src/usr/local/www/vpn_ipsec_keys_edit.php:101 -#: src/usr/local/www/vpn_ipsec_keys_edit.php:155 -#: src/usr/local/www/vpn_ipsec_keys_edit.php:186 -#: src/usr/local/www/vpn_ipsec_phase1.php:234 -#: src/usr/local/www/vpn_ipsec_phase1.php:769 -msgid "Pre-Shared Key" -msgstr "" - #: src/usr/local/www/vpn_ipsec_keys.php:150 msgid "ANY USER" msgstr "" @@ -25223,6 +26598,10 @@ msgstr "" msgid "Added" msgstr "" +#: src/usr/local/www/vpn_ipsec_keys_edit.php:147 +msgid "IPsec Pre-Shared Keys" +msgstr "" + #: src/usr/local/www/vpn_ipsec_keys_edit.php:168 msgid "Edit pre-shared-secret" msgstr "" @@ -25326,98 +26705,102 @@ msgstr "" msgid "Create Phase1" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:463 -#: src/usr/local/www/vpn_ipsec_mobile.php:467 +#: src/usr/local/www/vpn_ipsec_mobile.php:464 +#: src/usr/local/www/vpn_ipsec_mobile.php:468 msgid "Enable IPsec Mobile Client Support" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:466 +#: src/usr/local/www/vpn_ipsec_mobile.php:467 msgid "IKE Extensions" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:473 +#: src/usr/local/www/vpn_ipsec_mobile.php:474 msgid "Extended Authentication (Xauth)" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:483 +#: src/usr/local/www/vpn_ipsec_mobile.php:484 msgid "User Authentication" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:491 +#: src/usr/local/www/vpn_ipsec_mobile.php:496 +msgid "system" +msgstr "" + +#: src/usr/local/www/vpn_ipsec_mobile.php:492 msgid "Group Authentication" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:501 +#: src/usr/local/www/vpn_ipsec_mobile.php:502 msgid "Client Configuration (mode-cfg)" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:505 +#: src/usr/local/www/vpn_ipsec_mobile.php:506 msgid "Virtual Address Pool" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:523 +#: src/usr/local/www/vpn_ipsec_mobile.php:524 msgid "Network configuration for Virtual Address Pool" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:542 +#: src/usr/local/www/vpn_ipsec_mobile.php:543 msgid "Virtual IPv6 Address Pool" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:557 +#: src/usr/local/www/vpn_ipsec_mobile.php:558 msgid "IPv6 Network" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:560 +#: src/usr/local/www/vpn_ipsec_mobile.php:561 msgid "Network configuration for Virtual IPv6 Address Pool" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:579 +#: src/usr/local/www/vpn_ipsec_mobile.php:580 msgid "Network List" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:586 +#: src/usr/local/www/vpn_ipsec_mobile.php:587 msgid "Save Xauth Password" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:589 +#: src/usr/local/www/vpn_ipsec_mobile.php:590 msgid "" "NOTE: With iPhone clients, this does not work when deployed via the iPhone " "configuration utility, only by manual entry." msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:593 +#: src/usr/local/www/vpn_ipsec_mobile.php:594 #: src/usr/local/www/vpn_openvpn_csc.php:447 #: src/usr/local/www/vpn_openvpn_server.php:1012 #: src/usr/local/www/vpn_openvpn_server.php:1019 msgid "DNS Default Domain" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:610 +#: src/usr/local/www/vpn_ipsec_mobile.php:611 msgid "Specify domain as DNS Default Domain" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:616 +#: src/usr/local/www/vpn_ipsec_mobile.php:617 msgid "Split DNS" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:633 +#: src/usr/local/www/vpn_ipsec_mobile.php:634 msgid "" "NOTE: If left blank, and a default domain is set, it will be used for this " "value." msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:645 -#: src/usr/local/www/vpn_ipsec_mobile.php:654 -#: src/usr/local/www/vpn_ipsec_mobile.php:670 -#: src/usr/local/www/vpn_ipsec_mobile.php:679 +#: src/usr/local/www/vpn_ipsec_mobile.php:646 +#: src/usr/local/www/vpn_ipsec_mobile.php:655 +#: src/usr/local/www/vpn_ipsec_mobile.php:671 +#: src/usr/local/www/vpn_ipsec_mobile.php:680 msgid "Server #" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:690 +#: src/usr/local/www/vpn_ipsec_mobile.php:691 msgid "Phase2 PFS Group" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:713 +#: src/usr/local/www/vpn_ipsec_mobile.php:714 msgid "Login Banner" msgstr "" @@ -25571,6 +26954,11 @@ msgid "" "Clients tab in order to set EAP-RADIUS as the authentication method." msgstr "" +#: src/usr/local/www/vpn_ipsec_phase1.php:548 +#, php-format +msgid "GW Group %s" +msgstr "" + #: src/usr/local/www/vpn_ipsec_phase1.php:638 #: src/usr/local/www/vpn_ipsec_phase1.php:641 msgid "Edit Phase 1" @@ -25624,6 +27012,10 @@ msgstr "" msgid "Must match the setting chosen on the remote side." msgstr "" +#: src/usr/local/www/vpn_ipsec_phase1.php:723 +msgid "Main" +msgstr "" + #: src/usr/local/www/vpn_ipsec_phase1.php:721 msgid "Negotiation mode" msgstr "" @@ -25701,6 +27093,10 @@ msgstr "" msgid "Responder Only" msgstr "" +#: src/usr/local/www/vpn_ipsec_phase1.php:860 +msgid "Force" +msgstr "" + #: src/usr/local/www/vpn_ipsec_phase1.php:858 msgid "NAT Traversal" msgstr "" @@ -25906,6 +27302,7 @@ msgid "PFS key group" msgstr "" #: src/usr/local/www/vpn_ipsec_phase2.php:704 +#: src/usr/local/www/widgets/widgets/log.widget.php:292 msgid "Seconds" msgstr "" @@ -25913,6 +27310,19 @@ msgstr "" msgid "Automatically ping host" msgstr "" +#: src/usr/local/www/vpn_ipsec_settings.php:97 +#, php-format +msgid "A valid value must be specified for %s debug." +msgstr "" + +#: src/usr/local/www/vpn_ipsec_settings.php:103 +msgid "An integer must be specified for Maximum MSS." +msgstr "" + +#: src/usr/local/www/vpn_ipsec_settings.php:106 +msgid "An integer between 576 and 65535 must be specified for Maximum MSS" +msgstr "" + #: src/usr/local/www/vpn_ipsec_settings.php:274 msgid "Start IPsec in debug mode based on sections selected" msgstr "" @@ -25995,13 +27405,13 @@ msgid "" msgstr "" #: src/usr/local/www/vpn_ipsec_settings.php:362 -msgid "Disable Cisco Extensions" +msgid "Enable Cisco Extensions" msgstr "" #: src/usr/local/www/vpn_ipsec_settings.php:365 msgid "" -"Disable Unity Plugin which provides Cisco Extension support as Split-" -"Include, Split-Exclude, Split-Dns, ..." +"Enable Unity Plugin which provides Cisco Extension support such as Split-" +"Include, Split-Exclude and Split-Dns." msgstr "" #: src/usr/local/www/vpn_ipsec_settings.php:369 @@ -26121,7 +27531,7 @@ msgstr "" msgid "RADIUS issued IPs" msgstr "" -#: src/usr/local/www/vpn_l2tp.php:367 +#: src/usr/local/www/vpn_l2tp.php:369 msgid "" "Don't forget to add a firewall rule to permit traffic from L2TP clients!" msgstr "" @@ -26282,6 +27692,14 @@ msgstr "" msgid "Proxy host or address" msgstr "" +#: src/usr/local/www/vpn_openvpn_client.php:515 +msgid "basic" +msgstr "" + +#: src/usr/local/www/vpn_openvpn_client.php:515 +msgid "ntlm" +msgstr "" + #: src/usr/local/www/vpn_openvpn_client.php:513 msgid "Proxy Auth. - Extra options" msgstr "" @@ -26558,6 +27976,11 @@ msgid "" "address" msgstr "" +#: src/usr/local/www/vpn_openvpn_csc.php:338 +#, php-format +msgid "OpenVPN Server %d: %s" +msgstr "" + #: src/usr/local/www/vpn_openvpn_csc.php:349 msgid "" "Select the servers for which the override will apply. Selecting no servers " @@ -26790,6 +28213,10 @@ msgstr "" msgid "No Certificates defined. You may create one here: " msgstr "" +#: src/usr/local/www/vpn_openvpn_server.php:765 +msgid "System > Cert Manager" +msgstr "" + #: src/usr/local/www/vpn_openvpn_server.php:775 msgid "Server certificate" msgstr "" @@ -26798,6 +28225,10 @@ msgstr "" msgid "DH Parameter length (bits)" msgstr "" +#: src/usr/local/www/vpn_openvpn_server.php:827 +msgid "Do Not Check" +msgstr "" + #: src/usr/local/www/vpn_openvpn_server.php:825 msgid "Certificate Depth" msgstr "" @@ -27043,6 +28474,59 @@ msgstr "" msgid "Protocol / Port" msgstr "" +#: src/usr/local/www/widgets/include/carp_status.inc:4 +msgid "CARP Status" +msgstr "" + +#: src/usr/local/www/widgets/include/dyn_dns_status.inc:4 +msgid "Dynamic DNS Status" +msgstr "" + +#: src/usr/local/www/widgets/include/gmirror_status.inc:2 +msgid "GEOM Mirror Status" +msgstr "" + +#: src/usr/local/www/widgets/include/interface_statistics.inc:3 +msgid "Interface Statistics" +msgstr "" + +#: src/usr/local/www/widgets/include/load_balancer.inc:2 +msgid "Load Balancer Status" +msgstr "" + +#: src/usr/local/www/widgets/include/log.inc:3 +msgid "Firewall Logs" +msgstr "" + +#: src/usr/local/www/widgets/include/ntp_status.inc:3 +msgid "NTP Status" +msgstr "" + +#: src/usr/local/www/widgets/include/services_status.inc:4 +msgid "Services Status" +msgstr "" + +#: src/usr/local/www/widgets/include/traffic_graph.inc:2 +msgid "Traffic Graphs" +msgstr "" + +#: src/usr/local/www/widgets/include/wake_on_lan.inc:4 +msgid "Wake On Lan" +msgstr "" + +#: src/usr/local/www/widgets/widgets/captive_portal_status.widget.php:154 +msgid "delete" +msgstr "" + +#: src/usr/local/www/widgets/widgets/carp_status.widget.php:117 +msgid "No CARP Interfaces Defined." +msgstr "" + +#: src/usr/local/www/widgets/widgets/carp_status.widget.php:117 +#, php-format +msgid "Click %1$shere%2$s to configure CARP." +msgstr "" + #: src/usr/local/www/widgets/widgets/dyn_dns_status.widget.php:104 msgid "Int." msgstr "" @@ -27051,6 +28535,40 @@ msgstr "" msgid "Checking ..." msgstr "" +#: src/usr/local/www/widgets/widgets/gateways.widget.php:80 +msgid "Updated gateways widget settings via dashboard." +msgstr "" + +#: src/usr/local/www/widgets/widgets/gateways.widget.php:133 +msgid "Gateway IP" +msgstr "" + +#: src/usr/local/www/widgets/widgets/gateways.widget.php:137 +msgid "Save Settings" +msgstr "" + +#: src/usr/local/www/widgets/widgets/gateways.widget.php:241 +msgid "Packetloss" +msgstr "" + +#: src/usr/local/www/widgets/widgets/gateways.widget.php:244 +msgid "Latency" +msgstr "" + +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:77 +msgid "No packages installed." +msgstr "" + +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:78 +msgid "" +"You can install packages <a href=\"pkg_mgr.php\" class=\"alert-link\">here</" +"a>." +msgstr "" + +#: src/usr/local/www/widgets/widgets/installed_packages.widget.php:124 +msgid "ok" +msgstr "" + #: src/usr/local/www/widgets/widgets/installed_packages.widget.php:178 msgid "Retrieving package data" msgstr "" @@ -27059,10 +28577,50 @@ msgstr "" msgid "Packages may be added/managed here: " msgstr "" +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:73 +msgid "Packets In" +msgstr "" + +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:74 +msgid "Packets Out" +msgstr "" + +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:75 +msgid "Bytes In" +msgstr "" + +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:76 +msgid "Bytes Out" +msgstr "" + +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:77 +msgid "Errors In" +msgstr "" + +#: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:78 +msgid "Errors Out" +msgstr "" + #: src/usr/local/www/widgets/widgets/interface_statistics.widget.php:122 msgid "Retrieving interface data" msgstr "" +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:207 +msgid "Mobile" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:219 +msgid "Active Tunnels" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:220 +msgid "Inactive Tunnels" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:221 +msgid "Mobile Users" +msgstr "" + #: src/usr/local/www/widgets/widgets/ipsec.widget.php:225 msgid "Retrieving overview data " msgstr "" @@ -27075,16 +28633,138 @@ msgstr "" msgid "Retrieving mobile data " msgstr "" -#: src/usr/local/www/widgets/widgets/log.widget.php:134 +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:263 +msgid "There are no configured IPsec Tunnels" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ipsec.widget.php:264 +msgid "You can configure your IPsec <a href=\"vpn_ipsec.php\">here</a>." +msgstr "" + +#: src/usr/local/www/widgets/widgets/log.widget.php:103 +msgid "Saved Filter Log Entries via Dashboard" +msgstr "" + +#: src/usr/local/www/widgets/widgets/log.widget.php:135 msgid "Act" msgstr "" -#: src/usr/local/www/widgets/widgets/log.widget.php:136 -msgid "If" +#: src/usr/local/www/widgets/widgets/log.widget.php:137 +msgid "IF" msgstr "" -#: src/usr/local/www/widgets/widgets/log.widget.php:138 -msgid "Dest" +#: src/usr/local/www/widgets/widgets/log.widget.php:172 +msgid "Rule that triggered this action" +msgstr "" + +#: src/usr/local/www/widgets/widgets/log.widget.php:246 +msgid "Number of entries" +msgstr "" + +#: src/usr/local/www/widgets/widgets/log.widget.php:254 +msgid "Filter actions" +msgstr "" + +#: src/usr/local/www/widgets/widgets/log.widget.php:274 +msgid "Filter interface" +msgstr "" + +#: src/usr/local/www/widgets/widgets/log.widget.php:287 +msgid "Update interval" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:86 +msgid "stratum" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:175 +msgid "Server Time" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:187 +msgid "Sync Source" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:190 +msgid "No active peers available" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:198 +msgid "Clock location" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:212 +msgid "in view" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:214 +msgid "in use" +msgstr "" + +#: src/usr/local/www/widgets/widgets/ntp_status.widget.php:492 +msgid "Updating..." +msgstr "" + +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:115 +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:163 +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:213 +msgid "Name/Time" +msgstr "" + +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:116 +msgid "Real/Virtual IP" +msgstr "" + +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:136 +#, php-format +msgid "Kill client connection from %s" +msgstr "" + +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:164 +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:214 +msgid "Remote/Virtual IP" +msgstr "" + +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:259 +msgid "NOTE" +msgstr "" + +#: src/usr/local/www/widgets/widgets/openvpn.widget.php:259 +msgid "" +"You need to bind each OpenVPN client to enable its management daemon: use " +"'Local port' setting in the OpenVPN client screen" +msgstr "" + +#: src/usr/local/www/widgets/widgets/picture.widget.php:81 +msgid "New picture:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/rss.widget.php:67 +msgid "Saved RSS Widget feed via Dashboard" +msgstr "" + +#: src/usr/local/www/widgets/widgets/rss.widget.php:161 +msgid "Feeds" +msgstr "" + +#: src/usr/local/www/widgets/widgets/rss.widget.php:168 +msgid "# Stories" +msgstr "" + +#: src/usr/local/www/widgets/widgets/rss.widget.php:175 +msgid "Widget height" +msgstr "" + +#: src/usr/local/www/widgets/widgets/rss.widget.php:182 +msgid "Content limit" +msgstr "" + +#: src/usr/local/www/widgets/widgets/services_status.widget.php:81 +msgid "Saved Service Status Filter via Dashboard" +msgstr "" + +#: src/usr/local/www/widgets/widgets/services_status.widget.php:130 +msgid "Hidden services" msgstr "" #: src/usr/local/www/widgets/widgets/smart_status.widget.php:70 @@ -27123,6 +28803,10 @@ msgstr "" msgid "<i>Error comparing installed version<br />with latest available</i>" msgstr "" +#: src/usr/local/www/widgets/widgets/system_information.widget.php:122 +msgid "built on" +msgstr "" + #: src/usr/local/www/widgets/widgets/system_information.widget.php:129 msgid "Obtaining update status " msgstr "" @@ -27135,10 +28819,18 @@ msgstr "" msgid "NanoBSD Boot Slice" msgstr "" +#: src/usr/local/www/widgets/widgets/system_information.widget.php:157 +msgid "Next Boot" +msgstr "" + #: src/usr/local/www/widgets/widgets/system_information.widget.php:164 msgid "CPU Type" msgstr "" +#: src/usr/local/www/widgets/widgets/system_information.widget.php:171 +msgid "CPUs" +msgstr "" + #: src/usr/local/www/widgets/widgets/system_information.widget.php:178 msgid "Hardware crypto" msgstr "" @@ -27179,10 +28871,18 @@ msgstr "" msgid "Load average" msgstr "" +#: src/usr/local/www/widgets/widgets/system_information.widget.php:250 +msgid "Last 1, 5 and 15 minutes" +msgstr "" + #: src/usr/local/www/widgets/widgets/system_information.widget.php:254 msgid "CPU usage" msgstr "" +#: src/usr/local/www/widgets/widgets/system_information.widget.php:260 +msgid "(Updating in 10 seconds)" +msgstr "" + #: src/usr/local/www/widgets/widgets/system_information.widget.php:264 msgid "Memory usage" msgstr "" @@ -27195,6 +28895,86 @@ msgstr "" msgid "Disk usage" msgstr "" +#: src/usr/local/www/widgets/widgets/system_information.widget.php:295 +msgid "in RAM" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:92 +msgid "Saved thermal_sensors_widget settings via Dashboard." +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:188 +msgid "(Updating...)" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:199 +msgid "Thresholds in" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:199 +msgid "(1 to 100):" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:202 +msgid "Display settings:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:207 +msgid "Zone Warning:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:216 +msgid "Show raw output (no graph):" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:225 +msgid "Zone Critical:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:234 +msgid "Show full sensor name:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:243 +msgid "Core Warning:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:257 +msgid "Core Critical:" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:276 +msgid "* You can configure a proper Thermal Sensor / Module under" +msgstr "" + +#: src/usr/local/www/widgets/widgets/thermal_sensors.widget.php:277 +msgid "section" +msgstr "" + +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:105 +msgid "Updated traffic graph settings via dashboard." +msgstr "" + +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:165 +msgid "Show graphs" +msgstr "" + +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:176 +msgid "Default Autoscale" +msgstr "" + +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:180 +msgid "Up" +msgstr "" + +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:184 +msgid "Follow" +msgstr "" + +#: src/usr/local/www/widgets/widgets/traffic_graphs.widget.php:190 +msgid "Refresh Interval" +msgstr "" + #: src/usr/local/www/widgets/widgets/wake_on_lan.widget.php:73 msgid "Device" msgstr "" @@ -27211,11 +28991,19 @@ msgstr "" msgid "No saved WoL addresses" msgstr "" +#: src/usr/local/www/widgets/widgets/wake_on_lan.widget.php:110 +msgid "DHCP Leases Status" +msgstr "" + #: src/usr/local/www/wizard.php:92 src/usr/local/www/wizard.php:104 #, php-format msgid "ERROR: Could not open %s." msgstr "" +#: src/usr/local/www/wizard.php:98 +msgid "ERROR: Invalid path specified." +msgstr "" + #: src/usr/local/www/wizard.php:110 #, php-format msgid "ERROR: Could not parse %s/wizards/%s file." @@ -27247,8 +29035,8 @@ msgid "The number of connections should be greater than 1." msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:113 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:127 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:134 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:132 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:139 msgid "You have less interfaces than number of connections!" msgstr "" @@ -27257,14 +29045,14 @@ msgid "You cannot specify bandwidth smaller than 1!" msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:336 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:359 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:369 msgid "You cannot select the same interface for local and outside." msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:515 #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:619 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:558 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:675 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:568 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:685 msgid "" "Address must be a valid IP address or Firewall Alias. Please correct this " "value to continue." @@ -27272,27 +29060,27 @@ msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:607 #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:636 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:663 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:690 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:673 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:700 msgid "Only percentage bandwidth specification is allowed." msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:790 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:845 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:855 msgid "" "Custom Bandwidths are greater than 30%. Please lower them for the wizard to " "continue." msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1174 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1243 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1253 msgid "" "Custom Bandwidths are greater than 40%. Please lower them for the wizard to " "continue." msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1476 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1551 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1561 msgid "Penalty Box" msgstr "" @@ -27303,24 +29091,24 @@ msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1553 #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1577 #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1656 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1558 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1579 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1593 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1610 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1629 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1653 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1680 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1733 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1568 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1589 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1603 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1620 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1639 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1663 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1690 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1743 msgid "Traffic Shaper Wizard" msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1495 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1571 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1581 msgid "Connections From Upstream SIP Server" msgstr "" #: src/usr/local/www/wizards/traffic_shaper_wizard_dedicated.inc:1509 -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1585 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:1595 msgid "Connections To Upstream SIP Server" msgstr "" @@ -27332,11 +29120,11 @@ msgstr "" msgid "The number of LAN type interfaces should be greater than 1." msgstr "" -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:346 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:356 msgid "You cannot specify 0 bandwidth!" msgstr "" -#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:368 +#: src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc:378 msgid "You cannot select the same interface twice on local interfaces." msgstr "" @@ -27472,11 +29260,11 @@ msgid "" "\">System > Advanced, Miscellaneous</a> tab." msgstr "" -#: src/usr/local/www/diag_packet_capture.php:303 +#: src/usr/local/www/diag_packet_capture.php:305 msgid "Packet capture will be performed using promiscuous mode" msgstr "" -#: src/usr/local/www/diag_packet_capture.php:375 +#: src/usr/local/www/diag_packet_capture.php:377 msgid "Do reverse DNS lookup" msgstr "" @@ -27484,11 +29272,11 @@ msgstr "" msgid "Automatically refresh the output below" msgstr "" -#: src/usr/local/www/diag_resetstate.php:139 +#: src/usr/local/www/diag_resetstate.php:136 msgid "Reset the firewall state table" msgstr "" -#: src/usr/local/www/diag_resetstate.php:147 +#: src/usr/local/www/diag_resetstate.php:144 msgid "Reset firewall source tracking" msgstr "" @@ -27625,126 +29413,126 @@ msgid "" "expands to 256 entries.) " msgstr "" -#: src/usr/local/www/interfaces.php:1720 +#: src/usr/local/www/interfaces.php:1721 msgid "Enable interface" msgstr "" -#: src/usr/local/www/interfaces.php:1862 src/usr/local/www/interfaces.php:3162 +#: src/usr/local/www/interfaces.php:1863 src/usr/local/www/interfaces.php:3163 msgid "Default gateway" msgstr "" -#: src/usr/local/www/interfaces.php:1916 +#: src/usr/local/www/interfaces.php:1917 msgid "Show DHCP advanced options" msgstr "" -#: src/usr/local/www/interfaces.php:2004 +#: src/usr/local/www/interfaces.php:2005 msgid "FreeBSD default" msgstr "" -#: src/usr/local/www/interfaces.php:2020 +#: src/usr/local/www/interfaces.php:2021 msgid "pfSense Default" msgstr "" -#: src/usr/local/www/interfaces.php:2028 +#: src/usr/local/www/interfaces.php:2029 msgid "Saved Cfg" msgstr "" -#: src/usr/local/www/interfaces.php:2096 +#: src/usr/local/www/interfaces.php:2097 msgid "Show DHCPv6 advanced options" msgstr "" -#: src/usr/local/www/interfaces.php:2104 +#: src/usr/local/www/interfaces.php:2105 msgid "Override the configuration from this file" msgstr "" -#: src/usr/local/www/interfaces.php:2112 +#: src/usr/local/www/interfaces.php:2113 msgid "Request a IPv6 prefix/information through the IPv4 connectivity link" msgstr "" -#: src/usr/local/www/interfaces.php:2119 +#: src/usr/local/www/interfaces.php:2120 msgid "Only request an IPv6 prefix, do not request an IPv6 address" msgstr "" -#: src/usr/local/www/interfaces.php:2133 +#: src/usr/local/www/interfaces.php:2134 msgid "" "Send an IPv6 prefix hint to indicate the desired prefix size for delegation" msgstr "" -#: src/usr/local/www/interfaces.php:2193 +#: src/usr/local/www/interfaces.php:2194 msgid "Non-Temporary Address Allocation" msgstr "" -#: src/usr/local/www/interfaces.php:2233 +#: src/usr/local/www/interfaces.php:2234 msgid "Prefix Delegation " msgstr "" -#: src/usr/local/www/interfaces.php:2572 src/usr/local/www/interfaces.php:2708 +#: src/usr/local/www/interfaces.php:2573 src/usr/local/www/interfaces.php:2709 msgid "Enable Dial-On-Demand mode " msgstr "" -#: src/usr/local/www/interfaces.php:2630 +#: src/usr/local/www/interfaces.php:2631 msgid "Reset at each month (\"0 0 1 * *\")" msgstr "" -#: src/usr/local/www/interfaces.php:2638 +#: src/usr/local/www/interfaces.php:2639 msgid "Reset at each week (\"0 0 * * 0\")" msgstr "" -#: src/usr/local/www/interfaces.php:2646 +#: src/usr/local/www/interfaces.php:2647 msgid "Reset at each day (\"0 0 * * *\")" msgstr "" -#: src/usr/local/www/interfaces.php:2654 +#: src/usr/local/www/interfaces.php:2655 msgid "Reset at each hour (\"0 * * * *\")" msgstr "" -#: src/usr/local/www/interfaces.php:2664 src/usr/local/www/interfaces.php:2732 +#: src/usr/local/www/interfaces.php:2665 src/usr/local/www/interfaces.php:2733 msgid "<a href=\"/interfaces_ppps_edit.php?id=" msgstr "" -#: src/usr/local/www/interfaces.php:2669 +#: src/usr/local/www/interfaces.php:2670 msgid "" "<a href=\"/interfaces_ppps_edit.php\" class=\"navlnk\">Click here for " "additional PPPoE configuration options and for MLPPP configuration.</a>" msgstr "" -#: src/usr/local/www/interfaces.php:2737 +#: src/usr/local/www/interfaces.php:2738 msgid "" "<a href=\"/interfaces_ppps_edit.php\" class=\"navlnk\">Click here for " "additional PPTP and L2TP configuration options.</a>" msgstr "" -#: src/usr/local/www/interfaces.php:2751 +#: src/usr/local/www/interfaces.php:2752 msgid "" "Preserve common wireless configuration through interface deletions and " "reassignments." msgstr "" -#: src/usr/local/www/interfaces.php:2951 +#: src/usr/local/www/interfaces.php:2952 msgid "" "Allow packets to pass between wireless clients directly when operating as an " "access point" msgstr "" -#: src/usr/local/www/interfaces.php:2959 +#: src/usr/local/www/interfaces.php:2960 msgid "Force the card to use WME (wireless QoS)" msgstr "" -#: src/usr/local/www/interfaces.php:2967 +#: src/usr/local/www/interfaces.php:2968 msgid "" "Force the card to NOT broadcast its SSID (This may cause problems for some " "clients)" msgstr "" -#: src/usr/local/www/interfaces.php:2980 +#: src/usr/local/www/interfaces.php:2981 msgid "Enable WPA" msgstr "" -#: src/usr/local/www/interfaces.php:3032 +#: src/usr/local/www/interfaces.php:3033 msgid "Force the AP to rekey whenever a client disassociates" msgstr "" -#: src/usr/local/www/interfaces.php:3044 +#: src/usr/local/www/interfaces.php:3045 msgid "Enable 802.1X authentication" msgstr "" @@ -27950,38 +29738,42 @@ msgstr "" msgid "Enable the creation, generation and activation of rolls with vouchers" msgstr "" -#: src/usr/local/www/services_dhcp.php:767 +#: src/usr/local/www/services_dhcp.php:769 msgid "" "<div class=\"alert alert-info\"> Editing Pool-Specific Options. To return to " "the Interface, click its tab above. </div>" msgstr "" -#: src/usr/local/www/services_dhcp.php:774 +#: src/usr/local/www/services_dhcp.php:776 msgid "Only the clients defined below will get DHCP leases from this server." msgstr "" -#: src/usr/local/www/services_dhcp.php:949 +#: src/usr/local/www/services_dhcp.php:783 +msgid "Denied clients will be ignored rather than rejected." +msgstr "" + +#: src/usr/local/www/services_dhcp.php:959 msgid "Enable Static ARP entries" msgstr "" -#: src/usr/local/www/services_dhcp.php:956 +#: src/usr/local/www/services_dhcp.php:966 msgid "Change DHCP display lease time from UTC to local time" msgstr "" -#: src/usr/local/www/services_dhcp.php:963 +#: src/usr/local/www/services_dhcp.php:973 msgid "Enable RRD statistics graphs" msgstr "" -#: src/usr/local/www/services_dhcp.php:984 +#: src/usr/local/www/services_dhcp.php:994 msgid "Enable registration of DHCP client names in DNS" msgstr "" -#: src/usr/local/www/services_dhcp.php:1119 -msgid "Enables network booting" +#: src/usr/local/www/services_dhcp.php:1137 +msgid "<div class=\"alert alert-info\"> " msgstr "" -#: src/usr/local/www/services_dhcp.php:1178 -msgid "<div class=\"alert alert-info\"> " +#: src/usr/local/www/services_dhcp.php:1213 +msgid "Enables network booting" msgstr "" #: src/usr/local/www/services_dhcp_edit.php:491 @@ -27997,7 +29789,7 @@ msgstr "" #: src/usr/local/www/services_dhcpv6.php:786 #: src/usr/local/www/services_dhcpv6.php:812 #: src/usr/local/www/services_ntpd_gps.php:383 -#: src/usr/local/www/services_pppoe_edit.php:563 +#: src/usr/local/www/services_pppoe_edit.php:575 #: src/usr/local/www/services_unbound.php:364 msgid " " msgstr "" @@ -28206,23 +29998,23 @@ msgid "" "deviation plots (default: unchecked)." msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:328 +#: src/usr/local/www/services_pppoe_edit.php:333 msgid "Enable PPPoE Server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:392 +#: src/usr/local/www/services_pppoe_edit.php:404 msgid "Use RADIUS Authentication" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:400 +#: src/usr/local/www/services_pppoe_edit.php:412 msgid "Use RADIUS Accounting" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:407 +#: src/usr/local/www/services_pppoe_edit.php:419 msgid "Use a Backup RADIUS Authentication Server" msgstr "" -#: src/usr/local/www/services_pppoe_edit.php:427 +#: src/usr/local/www/services_pppoe_edit.php:439 msgid "Assign IP Addresses to users via RADIUS server reply attributes" msgstr "" @@ -28244,7 +30036,7 @@ msgstr "" msgid "AAAA (IPv6)" msgstr "" -#: src/usr/local/www/services_router_advertisements.php:388 +#: src/usr/local/www/services_router_advertisements.php:390 msgid "Use same settings as DHCPv6 server" msgstr "" @@ -28320,61 +30112,61 @@ msgstr "" msgid "DNSSEC data is required for trust-anchored zones." msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:377 +#: src/usr/local/www/services_unbound_advanced.php:380 msgid "disable the automatically-added access control entries" msgstr "" -#: src/usr/local/www/services_unbound_advanced.php:385 +#: src/usr/local/www/services_unbound_advanced.php:388 msgid "" "Use 0x-20 encoded random bits in the DNS query to foil spoofing attempts." msgstr "" -#: src/usr/local/www/status_logs_common.inc:760 +#: src/usr/local/www/status_logs_common.inc:808 msgid "These settings override the \"General Logging Options\" settings." msgstr "" -#: src/usr/local/www/status_logs_common.inc:770 +#: src/usr/local/www/status_logs_common.inc:818 msgid "Forward" msgstr "" -#: src/usr/local/www/status_logs_common.inc:778 +#: src/usr/local/www/status_logs_common.inc:826 msgid "Reverse" msgstr "" -#: src/usr/local/www/status_logs_common.inc:786 -#: src/usr/local/www/status_logs_common.inc:844 +#: src/usr/local/www/status_logs_common.inc:834 +#: src/usr/local/www/status_logs_common.inc:892 msgid "General Logging Options Setting" msgstr "" -#: src/usr/local/www/status_logs_common.inc:828 +#: src/usr/local/www/status_logs_common.inc:876 msgid "Formatted" msgstr "" -#: src/usr/local/www/status_logs_common.inc:836 +#: src/usr/local/www/status_logs_common.inc:884 msgid "Raw" msgstr "" -#: src/usr/local/www/status_logs_common.inc:858 +#: src/usr/local/www/status_logs_common.inc:906 #: src/usr/local/www/status_logs_settings.php:307 msgid "Log errors from the web server process" msgstr "" -#: src/usr/local/www/status_logs_common.inc:869 +#: src/usr/local/www/status_logs_common.inc:917 #: src/usr/local/www/status_logs_settings.php:279 msgid "Log packets matched from the default block rules in the ruleset" msgstr "" -#: src/usr/local/www/status_logs_common.inc:876 +#: src/usr/local/www/status_logs_common.inc:924 #: src/usr/local/www/status_logs_settings.php:286 msgid "Log packets matched from the default pass rules put in the ruleset" msgstr "" -#: src/usr/local/www/status_logs_common.inc:883 +#: src/usr/local/www/status_logs_common.inc:931 #: src/usr/local/www/status_logs_settings.php:293 msgid "Log packets blocked by 'Block Bogon Networks' rules" msgstr "" -#: src/usr/local/www/status_logs_common.inc:890 +#: src/usr/local/www/status_logs_common.inc:938 #: src/usr/local/www/status_logs_settings.php:300 msgid "Log packets blocked by 'Block Private Networks' rules" msgstr "" @@ -28443,10 +30235,6 @@ msgstr "" msgid "Do not use the DNS Forwarder as a DNS server for the firewall" msgstr "" -#: src/usr/local/www/system.php:552 -msgid "Active" -msgstr "" - #: src/usr/local/www/system_advanced_admin.php:398 msgid "Disable webConfigurator redirect rule" msgstr "" @@ -28489,7 +30277,7 @@ msgid "" "selectable below." msgstr "" -#: src/usr/local/www/system_advanced_admin.php:551 +#: src/usr/local/www/system_advanced_admin.php:553 msgid "Password protect the console menu" msgstr "" @@ -28659,7 +30447,7 @@ msgstr "" msgid "<a href=\"system_camanager.php?act=new&method=internal\"> " msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:317 +#: src/usr/local/www/system_gateway_groups_edit.php:318 msgid "" "The priority selected here defines in what order failover and balancing of " "links will be done. Multiple links of the same priority will balance " @@ -28668,7 +30456,7 @@ msgid "" "the next priority level." msgstr "" -#: src/usr/local/www/system_gateway_groups_edit.php:324 +#: src/usr/local/www/system_gateway_groups_edit.php:325 msgid "" "The virtual IP field selects which (virtual) IP should be used when this " "group applies to a local Dynamic DNS, IPsec or OpenVPN endpoint." @@ -28780,7 +30568,7 @@ msgstr "" msgid "Disable this static route" msgstr "" -#: src/usr/local/www/system_update_settings.php:154 +#: src/usr/local/www/system_update_settings.php:147 msgid "Disable the automatic dashboard auto-update check" msgstr "" @@ -28796,53 +30584,53 @@ msgstr "" msgid "Click to paste an authorized key" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:506 +#: src/usr/local/www/vpn_ipsec_mobile.php:507 msgid "Provide a virtual IP address to clients" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:543 +#: src/usr/local/www/vpn_ipsec_mobile.php:544 msgid "Provide a virtual IPv6 address to clients" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:580 +#: src/usr/local/www/vpn_ipsec_mobile.php:581 msgid "Provide a list of accessible networks to clients" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:587 +#: src/usr/local/www/vpn_ipsec_mobile.php:588 msgid "Allow clients to save Xauth passwords (Cisco VPN client only)." msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:594 +#: src/usr/local/www/vpn_ipsec_mobile.php:595 #: src/usr/local/www/vpn_openvpn_csc.php:448 #: src/usr/local/www/vpn_openvpn_server.php:1013 msgid "Provide a default domain name to clients" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:617 +#: src/usr/local/www/vpn_ipsec_mobile.php:618 msgid "" "Provide a list of split DNS domain names to clients. Enter a space separated " "list." msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:640 +#: src/usr/local/www/vpn_ipsec_mobile.php:641 #: src/usr/local/www/vpn_openvpn_csc.php:468 #: src/usr/local/www/vpn_openvpn_server.php:1027 msgid "Provide a DNS server list to clients" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:665 +#: src/usr/local/www/vpn_ipsec_mobile.php:666 #: src/usr/local/www/vpn_openvpn_csc.php:560 #: src/usr/local/www/vpn_openvpn_server.php:1114 msgid "Provide a WINS server list to clients" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:691 +#: src/usr/local/www/vpn_ipsec_mobile.php:692 msgid "" "Provide the Phase2 PFS group to clients ( overrides all mobile phase2 " "settings )" msgstr "" -#: src/usr/local/www/vpn_ipsec_mobile.php:714 +#: src/usr/local/www/vpn_ipsec_mobile.php:715 msgid "Provide a login banner to clients" msgstr "" @@ -28892,7 +30680,7 @@ msgid "Enable MSS clamping on VPN traffic" msgstr "" #: src/usr/local/www/vpn_ipsec_settings.php:363 -msgid "Disable Unity Plugin" +msgid "Enable Unity Plugin" msgstr "" #: src/usr/local/www/vpn_ipsec_settings.php:370 diff --git a/src/usr/local/www/bootstrap/css/pfSense-BETA.css b/src/usr/local/www/bootstrap/css/pfSense-BETA.css index 41d115d..7047033 100644 --- a/src/usr/local/www/bootstrap/css/pfSense-BETA.css +++ b/src/usr/local/www/bootstrap/css/pfSense-BETA.css @@ -1,6 +1,15 @@ @import url("/bootstrap/css/pfSense.css"); /*** Experimental Changes Go Here ***/ -.panel-title { - font-size: 16px; + +.panel-heading a:link, .panel-heading a:visited { + color: #404040; + text-decoration: underline; +} + +.panel-default>.panel-heading { + color: #404040; + background-color: #cccccc; + letter-spacing: 1px; } + diff --git a/src/usr/local/www/bootstrap/css/pfSense-dark.css b/src/usr/local/www/bootstrap/css/pfSense-dark.css index 57ce484..b550ad5 100644 --- a/src/usr/local/www/bootstrap/css/pfSense-dark.css +++ b/src/usr/local/www/bootstrap/css/pfSense-dark.css @@ -347,4 +347,8 @@ input, select, textarea { /* tree css */ ul.tree li A:link, ul.tree li A:hover, ul.tree li A:visited { color : #ffffff; +} + +textarea { + background-color: #bfbfbf; }
\ No newline at end of file diff --git a/src/usr/local/www/bootstrap/css/pfSense.css b/src/usr/local/www/bootstrap/css/pfSense.css index fde1e66..00865ee 100644 --- a/src/usr/local/www/bootstrap/css/pfSense.css +++ b/src/usr/local/www/bootstrap/css/pfSense.css @@ -1,5 +1,4 @@ @import url("/bootstrap/css/bootstrap.min.css"); -@import url("/bootstrap/glyphicons/glyphicons-halflings.css"); @import url("/bootstrap/fonts/roboto.css"); html { @@ -194,7 +193,7 @@ ul.context-links li a { } .panel-title { - font-size: 20px; + font-size: 16px; } .panel-body { @@ -550,8 +549,9 @@ footer a { color: white; padding-right: 15px; padding-bottom: 17px; - margin-top: -0.125em - + margin-top: -0.125em; + width: 14px; + height: 14px } /* Used when you need an icon to act as a submit button **/ @@ -781,3 +781,18 @@ ul.tree li .over{ max-height: none !important; } } + +/** Override text-warning with something less red. */ +.text-warning { + color: #ffcc00; +} + +/**Suppress href links when printing */ +a[href]:after { + content:normal +} + +/** Text color for diff display when comapring configs */ +.diff-text { + color: #000000; +} diff --git a/src/usr/local/www/classes/Form/Group.class.php b/src/usr/local/www/classes/Form/Group.class.php index e1ddaac..ce11969 100644 --- a/src/usr/local/www/classes/Form/Group.class.php +++ b/src/usr/local/www/classes/Form/Group.class.php @@ -148,7 +148,9 @@ EOT; $label = new Form_Element('label', false, ['for' => $target]); $label->addClass('col-sm-'.Form::LABEL_WIDTH, 'control-label'); - $title = htmlspecialchars(gettext($this->_title)); + if (!empty(trim($this->_title)) || is_numeric($this->_title)) { + $title = htmlspecialchars(gettext($this->_title)); + } return <<<EOT {$element} diff --git a/src/usr/local/www/crash_reporter.php b/src/usr/local/www/crash_reporter.php index de3cb58..6cd5adc 100644 --- a/src/usr/local/www/crash_reporter.php +++ b/src/usr/local/www/crash_reporter.php @@ -99,7 +99,7 @@ $crash_report_header .= "\nCrash report details:\n"; exec("/usr/bin/grep -vi warning /tmp/PHP_errors.log", $php_errors); ?> <?php - if (gettext($_POST['Submit']) == "Yes") { + if ($_POST['Submit'] == "Yes") { echo gettext("Processing..."); if (!is_dir("/var/crash")) { mkdir("/var/crash", 0750, true); @@ -126,7 +126,7 @@ exec("/usr/bin/grep -vi warning /tmp/PHP_errors.log", $php_errors); } else { echo gettext("Could not find any crash files."); } - } else if (gettext($_POST['Submit']) == "No") { + } else if ($_POST['Submit'] == "No") { array_map('unlink', glob("/var/crash/*")); // Erase the contents of the PHP error log fclose(fopen("/tmp/PHP_errors.log", 'w')); diff --git a/src/usr/local/www/diag_arp.php b/src/usr/local/www/diag_arp.php index 8ec4623..ec93c7f 100644 --- a/src/usr/local/www/diag_arp.php +++ b/src/usr/local/www/diag_arp.php @@ -384,7 +384,12 @@ events.push(function() { //]]> </script> +<div class="infoblock blockopen"> <?php -print_info_box(gettext("Local IPv6 peers use ") . '<a href="diag_ndp.php">' . gettext("NDP") . '</a>' . gettext(" instead of ARP"), 'info'); +print_info_box(gettext("Local IPv6 peers use ") . '<a href="diag_ndp.php">' . gettext("NDP") . '</a>' . gettext(" instead of ARP"), 'info', false); +?> +</div> -include("foot.inc")?> +<?php +include("foot.inc"); +?> diff --git a/src/usr/local/www/diag_confbak.php b/src/usr/local/www/diag_confbak.php index 554c6ca..7d412df 100644 --- a/src/usr/local/www/diag_confbak.php +++ b/src/usr/local/www/diag_confbak.php @@ -173,7 +173,7 @@ if ($diff) { } ?> <tr> - <td valign="middle" bgcolor="<?=$color; ?>" style="white-space: pre-wrap;"><?=htmlentities($line)?></td> + <td class="diff-text" valign="middle" bgcolor="<?=$color; ?>" style="white-space: pre-wrap;"><?=htmlentities($line)?></td> </tr> <?php } @@ -189,7 +189,7 @@ $form = new Form(new Form_Button( gettext("Save") )); -$section = new Form_Section('Saved Configurations'); +$section = new Form_Section('Saved Configurations', 'savedconfig', COLLAPSIBLE|SEC_CLOSED); $section->addInput(new Form_Input( 'backupcount', diff --git a/src/usr/local/www/diag_packet_capture.php b/src/usr/local/www/diag_packet_capture.php index be6f5d5..f488f75 100644 --- a/src/usr/local/www/diag_packet_capture.php +++ b/src/usr/local/www/diag_packet_capture.php @@ -277,8 +277,8 @@ $protocollist = array( '!udp' => $excl . ' UDP', 'arp' => 'ARP', '!arp' => $excl . ' ARP', - 'carp' => 'CARP (VRRP)', - '!carp' => $excl . ' CARP (VRRP)', + 'carp' => 'CARP', + '!carp' => $excl . ' CARP', 'esp' => 'ESP' ); @@ -474,6 +474,11 @@ if ($do_tcpdump) : <div class="panel-body"> <div class="form-group"> <?php + if ($proto == "carp") { + $iscarp = "-T carp"; + } else { + $iscarp = ""; + } $detail_args = ""; switch ($detail) { case "full": @@ -492,7 +497,7 @@ if ($do_tcpdump) : } print('<textarea class="form-control" rows="20" style="font-size: 13px; font-family: consolas,monaco,roboto mono,liberation mono,courier;">'); - system("/usr/sbin/tcpdump {$disabledns} {$detail_args} -r {$fp}{$fn}"); + system("/usr/sbin/tcpdump {$disabledns} {$detail_args} {$iscarp} -r {$fp}{$fn}"); print('</textarea>'); conf_mount_ro(); diff --git a/src/usr/local/www/diag_reboot.php b/src/usr/local/www/diag_reboot.php index b347d30..d00ee82 100755 --- a/src/usr/local/www/diag_reboot.php +++ b/src/usr/local/www/diag_reboot.php @@ -94,7 +94,6 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') { //<![CDATA[ events.push(function() { - var timeoutmsg = '<h4><?=gettext("Rebooting");?><br /><?=gettext("Page will automatically reload in ");?>'; var time = 0; function checkonline() { @@ -109,12 +108,17 @@ events.push(function() { function startCountdown() { setInterval(function() { + if (time == "<?=$guitimeout?>") { + $('#countdown').html('<h4><?=sprintf(gettext("Rebooting%sPage will automatically reload in %s seconds"), "<br />", "<span id=\"secs\"></span>");?></h4>'); + } + if (time > 0) { - $('#countdown').html(timeoutmsg + time + ' <?=gettext("seconds");?>.</h4>'); + $('#secs').html(time); time--; } else { time = "<?=$guiretry?>"; - timeoutmsg = '<h4><?=gettext("Not yet ready");?><br /><?=gettext("Retrying in another ");?>'; + $('#countdown').html('<h4><?=sprintf(gettext("Not yet ready%s Retrying in another %s seconds"), "<br />", "<span id=\"secs\"></span>");?></h4>'); + $('#secs').html(time); checkonline(); } }, 1000); diff --git a/src/usr/local/www/edit.php b/src/usr/local/www/edit.php index a11f472..1b6a43d 100644 --- a/src/usr/local/www/edit.php +++ b/src/usr/local/www/edit.php @@ -207,19 +207,19 @@ require("head.inc"); }); function loadFile() { - jQuery("#fileStatus").html(""); - jQuery("#fileStatusBox").show(500); - jQuery.ajax( + $("#fileStatus").html(""); + $("#fileStatusBox").show(500); + $.ajax( "<?=$_SERVER['SCRIPT_NAME']?>", { type: "post", - data: "action=load&file=" + jQuery("#fbTarget").val(), + data: "action=load&file=" + $("#fbTarget").val(), complete: loadComplete } ); } function loadComplete(req) { - jQuery("#fileContent").show(1000); + $("#fileContent").show(1000); var values = req.responseText.split("|"); values.shift(); values.pop(); @@ -227,30 +227,30 @@ require("head.inc"); var file = values.shift(); var fileContent = window.atob(values.join("|")); - jQuery("#fileContent").val(fileContent); + $("#fileContent").val(fileContent); } else { - jQuery("#fileStatus").html(values[0]); - jQuery("#fileContent").val(""); + $("#fileStatus").html(values[0]); + $("#fileContent").val(""); } - jQuery("#fileContent").show(1000); + $("#fileContent").show(1000); } function saveFile(file) { - jQuery("#fileStatus").html(""); - jQuery("#fileStatusBox").show(500); + $("#fileStatus").html(""); + $("#fileStatusBox").show(500); - var fileContent = Base64.encode(jQuery("#fileContent").val()); + var fileContent = Base64.encode($("#fileContent").val()); fileContent = fileContent.replace(/\+/g, "%2B"); - jQuery.ajax( + $.ajax( "<?=$_SERVER['SCRIPT_NAME']?>", { type: "post", - data: "action=save&file=" + jQuery("#fbTarget").val() + + data: "action=save&file=" + $("#fbTarget").val() + "&data=" + fileContent, complete: function(req) { var values = req.responseText.split("|"); - jQuery("#fileStatus").html(values[1]); + $("#fileStatus").html(values[1]); } } ); @@ -397,7 +397,7 @@ var Base64 = { <?php if ($_GET['action'] == "load"): ?> events.push(function() { - jQuery("#fbTarget").val("<?=htmlspecialchars($_GET['path'])?>"); + $("#fbTarget").val("<?=htmlspecialchars($_GET['path'])?>"); loadFile(); }); <?php endif; ?> diff --git a/src/usr/local/www/filebrowser/browser.js b/src/usr/local/www/filebrowser/browser.js index 54e07ee..6e75272 100644 --- a/src/usr/local/www/filebrowser/browser.js +++ b/src/usr/local/www/filebrowser/browser.js @@ -1,22 +1,22 @@ -jQuery(document).ready( +$(document).ready( function() { - jQuery("#fbOpen").click( + $("#fbOpen").click( function() { - jQuery("#fbBrowser").fadeIn(750); - fbBrowse(jQuery("#fbTarget").val()); + $("#fbBrowser").fadeIn(750); + fbBrowse($("#fbTarget").val()); } ); } ); function fbBrowse(path) { - jQuery("#fileContent").fadeOut(); + $("#fileContent").fadeOut(); - if (jQuery("#fbCurrentDir")) { - jQuery("#fbCurrentDir").html("Loading ..."); + if ($("#fbCurrentDir")) { + $("#fbCurrentDir").html("Loading ..."); } - jQuery.ajax( + $.ajax( "/filebrowser/browser.php?path=" + encodeURI(path ? path : "/"), { type: "get", complete: fbComplete } ); @@ -24,20 +24,20 @@ function fbBrowse(path) { } function fbComplete(req) { - jQuery("#fbBrowser").html(req.responseText); + $("#fbBrowser").html(req.responseText); var actions = { fbHome: function() { fbBrowse("/"); }, - fbClose: function() { jQuery("#fbBrowser").fadeOut(750); }, + fbClose: function() { $("#fbBrowser").fadeOut(750); }, fbDir: function() { fbBrowse(this.id); }, - fbFile: function() { jQuery("#fbTarget").val(this.id); } + fbFile: function() { $("#fbTarget").val(this.id); } } for (var type in actions) { - jQuery("#fbBrowser ." + type).each( + $("#fbBrowser ." + type).each( function() { - jQuery(this).click(actions[type]); - jQuery(this).css("cursor","pointer"); + $(this).click(actions[type]); + $(this).css("cursor","pointer"); } ); } diff --git a/src/usr/local/www/filebrowser/browser.php b/src/usr/local/www/filebrowser/browser.php index 30876aa..c048187 100644 --- a/src/usr/local/www/filebrowser/browser.php +++ b/src/usr/local/www/filebrowser/browser.php @@ -46,11 +46,11 @@ if (is_file($path)) { <table width="100%"> <tr> <td class="fbHome text-left" width="25px"> - <img onClick="jQuery('#fbTarget').val('<?=$realDir?>'); fbBrowse('/');" src="/filebrowser/images/icon_home.gif" alt="Home" title="Home" /> + <img onClick="$('#fbTarget').val('<?=$realDir?>'); fbBrowse('/');" src="/filebrowser/images/icon_home.gif" alt="Home" title="Home" /> </td> <td><b><?=$path;?></b></td> <td class="fbClose text-right"> - <img onClick="jQuery('#fbBrowser').fadeOut();" border="0" src="/filebrowser/images/icon_cancel.gif" alt="Close" title="Close" /> + <img onClick="$('#fbBrowser').fadeOut();" border="0" src="/filebrowser/images/icon_cancel.gif" alt="Close" title="Close" /> </td> </tr> <tr> @@ -82,7 +82,7 @@ foreach ($dirs as $dir): <tr> <td></td> <td class="fbDir vexpl text-left" id="<?=$realDir;?>"> - <div onClick="jQuery('#fbTarget').val('<?=$realDir?>'); fbBrowse('<?=$realDir?>');"> + <div onClick="$('#fbTarget').val('<?=$realDir?>'); fbBrowse('<?=$realDir?>');"> <img src="/filebrowser/images/folder_generic.gif" /> <?=$dir;?> </div> @@ -149,7 +149,7 @@ foreach ($files as $file): <td></td> <td class="fbFile vexpl text-left" id="<?=$fqpn;?>"> <?php $filename = str_replace("//","/", "{$path}/{$file}"); ?> - <div onClick="jQuery('#fbTarget').val('<?=$filename?>'); loadFile(); jQuery('#fbBrowser').fadeOut();"> + <div onClick="$('#fbTarget').val('<?=$filename?>'); loadFile(); $('#fbBrowser').fadeOut();"> <img src="/filebrowser/images/file_<?=$type;?>.gif" alt="" title=""> <?=$file;?> </div> diff --git a/src/usr/local/www/firewall_aliases.php b/src/usr/local/www/firewall_aliases.php index ffecc25..1911548 100644 --- a/src/usr/local/www/firewall_aliases.php +++ b/src/usr/local/www/firewall_aliases.php @@ -204,7 +204,7 @@ if ($savemsg) { } if (is_subsystem_dirty('aliases')) { - print_info_box_np(gettext("The alias list has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The alias list has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } display_top_tabs($tab_array); diff --git a/src/usr/local/www/firewall_nat.php b/src/usr/local/www/firewall_nat.php index 287133b..869fbff 100644 --- a/src/usr/local/www/firewall_nat.php +++ b/src/usr/local/www/firewall_nat.php @@ -187,8 +187,8 @@ if ($savemsg) { } if (is_subsystem_dirty('natconf')) { - print_info_box_np(gettext('The NAT configuration has been changed.') . '<br />' . - gettext('You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The NAT configuration has been changed.') . '<br />' . + gettext('You must apply the changes in order for them to take effect.')); } $tab_array = array(); @@ -424,12 +424,29 @@ events.push(function() { cursor: 'grabbing', update: function(event, ui) { $('#order-store').removeAttr('disabled'); + dirty = true; } }); // Check all of the rule checkboxes so that their values are posted $('#order-store').click(function () { $('[id^=frc]').prop('checked', true); + + // Suppress the "Do you really want to leave the page" message + saving = true; + }); + + // Globals + saving = false; + dirty = false; + + // provide a warning message if the user tries to change page before saving + $(window).bind('beforeunload', function(){ + if (!saving && dirty) { + return ("<?=gettext('You have moved one or more Port Forward rules but have not yet saved')?>"); + } else { + return undefined; + } }); }); //]]> diff --git a/src/usr/local/www/firewall_nat_1to1.php b/src/usr/local/www/firewall_nat_1to1.php index 3042a70..4661e70 100644 --- a/src/usr/local/www/firewall_nat_1to1.php +++ b/src/usr/local/www/firewall_nat_1to1.php @@ -160,8 +160,8 @@ if ($savemsg) { } if (is_subsystem_dirty('natconf')) { - print_info_box_np(gettext('The NAT configuration has been changed.') . '<br />' . - gettext('You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The NAT configuration has been changed.') . '<br />' . + gettext('You must apply the changes in order for them to take effect.')); } $tab_array = array(); @@ -303,12 +303,29 @@ events.push(function() { cursor: 'grabbing', update: function(event, ui) { $('#order-store').removeAttr('disabled'); + dirty = true; } }); // Check all of the rule checkboxes so that their values are posted $('#order-store').click(function () { $('[id^=frc]').prop('checked', true); + + // Suppress the "Do you really want to leave the page" message + saving = true; + }); + + // Globals + saving = false; + dirty = false; + + // provide a warning message if the user tries to change page before saving + $(window).bind('beforeunload', function(){ + if (!saving && dirty) { + return ("<?=gettext('You have moved one or more NAT 1:1 mappings but have not yet saved')?>"); + } else { + return undefined; + } }); }); //]]> diff --git a/src/usr/local/www/firewall_nat_npt.php b/src/usr/local/www/firewall_nat_npt.php index 89179ce..2317dbd 100644 --- a/src/usr/local/www/firewall_nat_npt.php +++ b/src/usr/local/www/firewall_nat_npt.php @@ -160,8 +160,8 @@ if ($savemsg) { } if (is_subsystem_dirty('natconf')) { - print_info_box_np(gettext('The NAT configuration has been changed.') . '<br />' . - gettext('You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The NAT configuration has been changed.') . '<br />' . + gettext('You must apply the changes in order for them to take effect.')); } $tab_array = array(); @@ -281,12 +281,29 @@ events.push(function() { cursor: 'grabbing', update: function(event, ui) { $('#order-store').removeAttr('disabled'); + dirty = true; } }); // Check all of the rule checkboxes so that their values are posted $('#order-store').click(function () { $('[id^=frc]').prop('checked', true); + + // Suppress the "Do you really want to leave the page" message + saving = true; + }); + + // Globals + saving = false; + dirty = false; + + // provide a warning message if the user tries to change page before saving + $(window).bind('beforeunload', function(){ + if (!saving && dirty) { + return ("<?=gettext('You have moved one or more NPt mappings but have not yet saved')?>"); + } else { + return undefined; + } }); }); //]]> diff --git a/src/usr/local/www/firewall_nat_out.php b/src/usr/local/www/firewall_nat_out.php index cb31869..c0d696e 100644 --- a/src/usr/local/www/firewall_nat_out.php +++ b/src/usr/local/www/firewall_nat_out.php @@ -244,8 +244,8 @@ if ($savemsg) { } if (is_subsystem_dirty('natconf')) { - print_info_box_np(gettext('The NAT configuration has been changed.') . '<br />' . - gettext('You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The NAT configuration has been changed.') . '<br />' . + gettext('You must apply the changes in order for them to take effect.')); } $tab_array = array(); @@ -684,12 +684,29 @@ events.push(function() { cursor: 'grabbing', update: function(event, ui) { $('#order-store').removeAttr('disabled'); + dirty = true; } }); // Check all of the rule checkboxes so that their values are posted $('#order-store').click(function () { $('[id^=frc]').prop('checked', true); + + // Suppress the "Do you really want to leave the page" message + saving = true; + }); + + // Globals + saving = false; + dirty = false; + + // provide a warning message if the user tries to change page before saving + $(window).bind('beforeunload', function(){ + if (!saving && dirty) { + return ("<?=gettext('You have moved one or more NAT outbound mappings but have not yet saved')?>"); + } else { + return undefined; + } }); }); //]]> diff --git a/src/usr/local/www/firewall_nat_out_edit.php b/src/usr/local/www/firewall_nat_out_edit.php index 926c579..4983331 100644 --- a/src/usr/local/www/firewall_nat_out_edit.php +++ b/src/usr/local/www/firewall_nat_out_edit.php @@ -510,7 +510,7 @@ $group->add(new Form_Select( 'source_type', null, (($pconfig['source'] == "any") || ($pconfig['source'] == "(self)")) ? $pconfig['source'] : "network", - array('any' => gettext('Any'), '(self)' => gettext('This Firewall (self))', 'network' => gettext('Network')) + array('any' => gettext('Any'), '(self)' => gettext('This Firewall (self)'), 'network' => gettext('Network')) ))->setHelp('Type')->setWidth('3'); $group->add(new Form_IpAddress( diff --git a/src/usr/local/www/firewall_rules.php b/src/usr/local/www/firewall_rules.php index 24483da..9847280 100644 --- a/src/usr/local/www/firewall_rules.php +++ b/src/usr/local/www/firewall_rules.php @@ -277,12 +277,31 @@ if ($savemsg) { } if (is_subsystem_dirty('filter')) { - print_info_box_np(gettext("The firewall rule configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect."), "apply", "", true); + print_apply_box(gettext("The firewall rule configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } display_top_tabs($tab_array); +$showantilockout = false; +$showprivate = false; +$showblockbogons = false; + +if (!isset($config['system']['webgui']['noantilockout']) && + (((count($config['interfaces']) > 1) && ($if == 'lan')) || + ((count($config['interfaces']) == 1) && ($if == 'wan')))) { + $showantilockout = true; +} + +if (isset($config['interfaces'][$if]['blockpriv'])) { + $showprivate = true; +} + +if (isset($config['interfaces'][$if]['blockbogons'])) { + $showblockbogons = true; +} + ?> + <form method="post"> <div class="panel panel-default"> <div class="panel-heading"><h2 class="panel-title"><?=gettext("Rules (Drag to change order)")?></h2></div> @@ -304,13 +323,14 @@ display_top_tabs($tab_array); <th><?=gettext("Actions")?></th> </tr> </thead> + +<?php if ($showblockbogons || $showantilockout || $showprivate) : +?> <tbody> <?php // Show the anti-lockout rule if it's enabled, and we are on LAN with an if count > 1, or WAN with an if count of 1. - if (!isset($config['system']['webgui']['noantilockout']) && - (((count($config['interfaces']) > 1) && ($if == 'lan')) || - ((count($config['interfaces']) == 1) && ($if == 'wan')))): - $alports = implode('<br />', filter_get_antilockout_ports(true)); + if ($showantilockout): + $alports = implode('<br />', filter_get_antilockout_ports(true)); ?> <tr id="antilockout"> <td></td> @@ -328,8 +348,8 @@ display_top_tabs($tab_array); <a href="system_advanced_admin.php" title="<?=gettext("Settings");?>"><i class="fa fa-cog"></i></a> </td> </tr> -<?php endif;?> -<?php if (isset($config['interfaces'][$if]['blockpriv'])): ?> +<?php endif;?> +<?php if ($showprivate): ?> <tr id="frrfc1918"> <td></td> <td title="<?=gettext("traffic is blocked")?>"><i class="fa fa-times text-danger"></i></td> @@ -346,8 +366,8 @@ display_top_tabs($tab_array); <a href="interfaces.php?if=<?=htmlspecialchars($if)?>" title="<?=gettext("Settings");?>"><i class="fa fa-cog"></i></a> </td> </tr> -<?php endif;?> -<?php if (isset($config['interfaces'][$if]['blockbogons'])): ?> +<?php endif;?> +<?php if ($showblockbogons): ?> <tr id="frrfc1918"> <td></td> <td title="<?=gettext("traffic is blocked")?>"><i class="fa fa-times text-danger"></i></td> @@ -364,9 +384,9 @@ display_top_tabs($tab_array); <a href="interfaces.php?if=<?=htmlspecialchars($if)?>" title="<?=gettext("Settings");?>"><i class="fa fa-cog"></i></a> </td> </tr> -<?php endif;?> +<?php endif;?> </tbody> - +<?php endif;?> <tbody class="user-entries"> <?php $nrules = 0; @@ -391,7 +411,7 @@ for ($i = 0; isset($a_filter[$i]); $i++): ?> <tr id="fr<?=$nrules;?>" <?=$display?> onClick="fr_toggle(<?=$nrules;?>)" ondblclick="document.location='firewall_rules_edit.php?id=<?=$i;?>';" <?=(isset($filterent['disabled']) ? ' class="disabled"' : '')?>> - <td > + <td> <input type="checkbox" id="frc<?=$nrules;?>" onClick="fr_toggle(<?=$nrules;?>)" name="rule[]" value="<?=$i;?>"/> </td> @@ -540,7 +560,7 @@ for ($i = 0; isset($a_filter[$i]); $i++): $sched_caption_escaped = str_replace("'", "\'", $schedule['descr']); $schedule_span_begin = '<a href="/firewall_schedule_edit.php?id=' . $idx . '" data-toggle="popover" data-trigger="hover focus" title="' . $schedule['name'] . '" data-content="' . $sched_caption_escaped . '" data-html="true">'; - $schedule_span_end = ""; + $schedule_span_end = "</a>"; } } $idx++; @@ -607,26 +627,38 @@ for ($i = 0; isset($a_filter[$i]); $i++): <td> <?php if (isset($alias['src'])): ?> <a href="/firewall_aliases_edit.php?id=<?=$alias['src']?>" data-toggle="popover" data-trigger="hover focus" title="<?=gettext('Alias details')?>" data-content="<?=alias_info_popup($alias['src'])?>" data-html="true"> + <?=htmlspecialchars(pprint_address($filterent['source']))?> + </a> + <?php else: ?> + <?=htmlspecialchars(pprint_address($filterent['source']))?> <?php endif; ?> - <?=htmlspecialchars(pprint_address($filterent['source']))?> </td> <td> <?php if (isset($alias['srcport'])): ?> <a href="/firewall_aliases_edit.php?id=<?=$alias['srcport']?>" data-toggle="popover" data-trigger="hover focus" title="<?=gettext('Alias details')?>" data-content="<?=alias_info_popup($alias['srcport'])?>" data-html="true"> + <?=htmlspecialchars(pprint_port($filterent['source']['port']))?> + </a> + <?php else: ?> + <?=htmlspecialchars(pprint_port($filterent['source']['port']))?> <?php endif; ?> - <?=htmlspecialchars(pprint_port($filterent['source']['port']))?> </td> <td> <?php if (isset($alias['dst'])): ?> <a href="/firewall_aliases_edit.php?id=<?=$alias['dst']?>" data-toggle="popover" data-trigger="hover focus" title="<?=gettext('Alias details')?>" data-content="<?=alias_info_popup($alias['dst'])?>" data-html="true"> + <?=htmlspecialchars(pprint_address($filterent['destination']))?> + </a> + <?php else :?> + <?=htmlspecialchars(pprint_address($filterent['destination']))?> <?php endif; ?> - <?=htmlspecialchars(pprint_address($filterent['destination']))?> </td> <td> <?php if (isset($alias['dstport'])): ?> <a href="/firewall_aliases_edit.php?id=<?=$alias['dstport']?>" data-toggle="popover" data-trigger="hover focus" title="<?=gettext('Alias details')?>" data-content="<?=alias_info_popup($alias['dstport'])?>" data-html="true"> + <?=htmlspecialchars(pprint_port($filterent['destination']['port']))?> + </a> + <?php else: ?> + <?=htmlspecialchars(pprint_port($filterent['destination']['port']))?> <?php endif; ?> - <?=htmlspecialchars(pprint_port($filterent['destination']['port']))?> </td> <td> <?php if (isset($config['interfaces'][$filterent['gateway']]['descr'])):?> @@ -652,7 +684,7 @@ for ($i = 0; isset($a_filter[$i]); $i++): </td> <td> <?php if ($printicon) { ?> - <i class="fa fa-<?=$image?> <?=$dispcolor?>" title="<?=$alttext;?>" alt="icon"></i> + <i class="fa fa-<?=$image?> <?=$dispcolor?>" title="<?=$alttext;?>"></i> <?php } ?> <?=$schedule_span_begin;?><?=htmlspecialchars($filterent['sched']);?> <?=$schedule_span_end;?> </td> @@ -680,7 +712,7 @@ for ($i = 0; isset($a_filter[$i]); $i++): if ($rulesep['row']['0'] == "fr" . $nrules) { $cellcolor = $rulesep['color']; print('<tr class="ui-sortable-handle separator">' . - '<td class="' . $cellcolor . '" colspan="11">' . '<font class="' . $cellcolor . '">' . $rulesep['text'] . '</font></td>' . + '<td class="' . $cellcolor . '" colspan="11">' . '<span class="' . $cellcolor . '">' . $rulesep['text'] . '</span></td>' . '<td class="' . $cellcolor . '"><a href="#"><i class="fa fa-trash no-confirm sepdel" title="delete this separator"></i></a></td>' . '</tr>' . "\n"); } @@ -807,7 +839,7 @@ events.push(function() { gColor = 'bg-info'; // Inset a temporary bar in which the user can enter some optional text $('#ruletable > tbody:last').append('<tr>' + - '<td class="' + gColor + '" colspan="10"><input id="newsep" placeholder="<?=gettext("Enter a description, Save, then drag to final location.")?>" class="col-md-12" type="text"></input></td>' + + '<td class="' + gColor + '" colspan="10"><input id="newsep" placeholder="<?=gettext("Enter a description, Save, then drag to final location.")?>" class="col-md-12" type="text" /></td>' + '<td class="' + gColor + '" colspan="2"><button class="btn btn-default btn-sm" id="btnnewsep"><?=gettext("Save")?></button>' + '<button class="btn btn-default btn-sm" id="btncncsep"><?=gettext("Cancel")?></button>' + ' ' + @@ -843,9 +875,9 @@ events.push(function() { var septext = escapeHtml($('#newsep').val()); $('#ruletable > tbody:last >tr:last').remove(); $('#ruletable > tbody:last').append('<tr class="ui-sortable-handle separator">' + - '<td class="' + gColor + '" colspan="11">' + '<font class="' + gColor + '">' + septext + '</font></td>' + + '<td class="' + gColor + '" colspan="11">' + '<span class="' + gColor + '">' + septext + '</span></td>' + '<td class="' + gColor + '"><a href="#"><i class="fa fa-trash sepdel"></i></a>' + - '</tr>'); + '</td></tr>'); $('#order-store').removeAttr('disabled'); newSeperator = false; @@ -919,7 +951,7 @@ events.push(function() { // provide a warning message if the user tries to change page before saving $(window).bind('beforeunload', function(){ if ((!saving && dirty) || newSeperator) { - return ("<?=gettext('You have moved one or more rules but have now yet saved')?>"); + return ("<?=gettext('You have moved one or more rules but have not yet saved')?>"); } else { return undefined; } @@ -943,3 +975,4 @@ events.push(function() { </script> <?php include("foot.inc");?> + diff --git a/src/usr/local/www/firewall_rules_edit.php b/src/usr/local/www/firewall_rules_edit.php index 46f4856..dc638f3 100644 --- a/src/usr/local/www/firewall_rules_edit.php +++ b/src/usr/local/www/firewall_rules_edit.php @@ -1678,6 +1678,7 @@ events.push(function() { var srcportsvisible = 0; function ext_change() { + if (($('#srcbeginport').find(":selected").index() == 0) && portsenabled && editenabled) { disableInput('srcbeginport_cust', false); } else { @@ -1874,6 +1875,10 @@ events.push(function() { ext_change(); }); + $('#save').on('click', function() { + disableInput('save'); + }); + $('#dstbeginport').on('change', function() { dst_rep_change(); ext_change(); @@ -1937,6 +1942,18 @@ events.push(function() { setHelpText(target, dispstr); } + // When editing "associated" rules, everything except the enable, action, address family and desscription + // fields are disabled + function disable_most(disable) { + var elementsToDisable = [ + 'interface', 'proto', 'icmptype', 'icmp6type', 'srcnot', 'srctype', 'src', 'srcmask', 'srcbebinport', 'srcbeginport_cust', 'srcendport', + 'srcendport_cust', 'dstnot', 'dsttype', 'dst', 'dstmask', 'dstbeginport', 'dstbeginport_cust', 'dstendport', 'dstendport_cust']; + + for (var idx=0, len = elementsToDisable.length; idx<len; idx++) { + disableInput(elementsToDisable[idx], disable); + } + } + // ---------- Click checkbox handlers --------------------------------------------------------- $('#statetype').on('change', function() { @@ -1946,6 +1963,12 @@ events.push(function() { // ---------- On initial page load ------------------------------------------------------------ setOptText('statetype', $('#statetype').val()) +<?php if ($edit_disabled) { +?> + disable_most(true); +<?php +} +?> // ---------- Autocomplete -------------------------------------------------------------------- diff --git a/src/usr/local/www/firewall_shaper.php b/src/usr/local/www/firewall_shaper.php index b10bdd2..837d200 100644 --- a/src/usr/local/www/firewall_shaper.php +++ b/src/usr/local/www/firewall_shaper.php @@ -430,7 +430,7 @@ if ($savemsg) { } if (is_subsystem_dirty('shaper')) { - print_info_box_np(gettext("The traffic shaper configuration has been changed. You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The traffic shaper configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/firewall_shaper_queues.php b/src/usr/local/www/firewall_shaper_queues.php index dfe7584..9e751c9 100644 --- a/src/usr/local/www/firewall_shaper_queues.php +++ b/src/usr/local/www/firewall_shaper_queues.php @@ -236,7 +236,7 @@ if ($savemsg) { } if (is_subsystem_dirty('shaper')) { - print_info_box_np(gettext("The traffic shaper configuration has been changed. You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The traffic shaper configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/firewall_shaper_vinterface.php b/src/usr/local/www/firewall_shaper_vinterface.php index 7ebe0ab..ccea421 100644 --- a/src/usr/local/www/firewall_shaper_vinterface.php +++ b/src/usr/local/www/firewall_shaper_vinterface.php @@ -408,7 +408,7 @@ if ($savemsg) { } if (is_subsystem_dirty('shaper')) { - print_info_box_np(gettext("The traffic shaper configuration has been changed. You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The traffic shaper configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/firewall_shaper_wizards.php b/src/usr/local/www/firewall_shaper_wizards.php index 7bbc941..b1e8eb2 100644 --- a/src/usr/local/www/firewall_shaper_wizards.php +++ b/src/usr/local/www/firewall_shaper_wizards.php @@ -119,7 +119,7 @@ if ($savemsg) { } if (is_subsystem_dirty('shaper')) { - print_info_box_np(gettext("The traffic shaper configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The traffic shaper configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } ?> diff --git a/src/usr/local/www/firewall_virtual_ip.php b/src/usr/local/www/firewall_virtual_ip.php index 8db4818..964ba69 100644 --- a/src/usr/local/www/firewall_virtual_ip.php +++ b/src/usr/local/www/firewall_virtual_ip.php @@ -276,7 +276,7 @@ if ($input_errors) { } else if ($savemsg) { print_info_box($savemsg, 'success'); } else if (is_subsystem_dirty('vip')) { - print_info_box_np(gettext("The VIP configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The VIP configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } /* active tabs diff --git a/src/usr/local/www/guiconfig.inc b/src/usr/local/www/guiconfig.inc index b94018b..175f540 100644 --- a/src/usr/local/www/guiconfig.inc +++ b/src/usr/local/www/guiconfig.inc @@ -91,6 +91,12 @@ $navlevelsep = ": "; /* navigation level separator string */ $mandfldhtml = ""; /* display this before mandatory input fields */ $mandfldhtmlspc = ""; /* same as above, but with spacing */ +if (!function_exists('set_language')) { + require_once("pfsense-utils.inc"); +} + +set_language(); + /* Some ajax scripts still need access to GUI */ if (!$ignorefirmwarelock) { if (is_subsystem_dirty('firmwarelock')) { @@ -301,84 +307,41 @@ function verify_gzip_file($fname) { } } -function print_info_box_np($msg, $name="apply", $value="", $showapply=false, $class="alert-warning",$showbtn = true) { - global $g; +// print_info_box() has been updated so that any required button is explicitly created, rather than relying on the detection of certain +// strings in the message (such as "apply"). print_info_box_np() has been exterminated. +// $class = the bootstrap style class (default, info, warning, success, danger) +// $btnname and btntext describe the optional button and its display text, the default is an 'x' Close button. +// Note that there is also a shortcut function print_apply_box here that creates a standard "apply" box for you. +// In many cases just substitute that for print_info_box_np() to easily get a warning style "Apply changes" box. +function print_info_box($msg, $class="alert-warning", $btnname = "close", $btntext = "") { if (strpos($class, "alert-") !== 0) { $class = 'alert-' . $class; } - if (empty($value)) { - $value = gettext("Apply changes"); - } - $msg = '<div class="pull-left">' . $msg . '</div>'; - if (stristr($msg, gettext("apply")) != false || stristr($msg, gettext("save")) != false || stristr($msg, gettext("create")) != false || $showapply) { - $msg .= '<form method="post" class="pull-right"><button type="submit" class="btn btn-default" name="'. $name .'" value="' . $value . '">' . $name . '</button>'; + if ($btnname === "close") { + $msg = '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>' . $msg; + } else if ($btnname != "") { + if (empty($btntext)) { + $btntext = $btnname; + } + + $msg .= '<form method="post" class="pull-right"><button type="submit" class="btn btn-default" name="'. $btnname . '" value="' . $btntext . '">' . $btntext . '</button>'; if ($_POST['if']) { $msg .= "<input type=\"hidden\" name=\"if\" value=\"" . htmlspecialchars($_POST['if']) . "\" />"; } $msg .= '</form>'; - } else if ($showbtn) { - $msg = '<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>' . $msg; } echo '<div class="alert ' . $class . ' clearfix" role="alert">' . $msg . '</div>'; } -function print_info_box_np_undo($msg, $name = "apply", $value = "Apply changes", $undo) { - global $g; - - if (stristr($msg, "apply") != false || stristr($msg, "save") != false || stristr($msg, "create") != false) { - $savebutton = "<td class=\"infoboxsave text-nowrap\">"; - $savebutton .= "<input type=\"button\" value=\"". gettext("Undo") . "\" onclick=\"document.location='{$undo}'\" />"; - $savebutton .= "<input name=\"{$name}\" type=\"submit\" class=\"formbtn\" id=\"${name}\" value=\"{$value}\" />"; - $savebutton .= "</td>"; - if ($_POST['if']) { - $savebutton .= "<input type=\"hidden\" name=\"if\" value=\"" . htmlspecialchars($_POST['if']) . "\" />"; - } - } - - $nifty_redbox = "#990000"; - $nifty_blackbox = "#000000"; - - if (!$savebutton) { - $savebutton = "<td class=\"infoboxsave\"><input value=\"" . gettext("Close") . "\" type=\"button\" onclick=\"jQuery(this).parents('table[id=redboxtable]').hide();\" /></td>"; - } - - echo <<<EOFnp - <table class="infobox" id="redboxtable" summary="red box table"> - <tr> - <td> - <div class="infoboxnp" id="redbox"> - <table class="infoboxnptable2" summary="message"> - <tr> - <td class="infoboxnptd"> - <i class="fa fa-exclamation-circle"></i> - </td> - <td class="infoboxnptd2"> - <b>{$msg}</b> - </td> - {$savebutton} - {$undobutton} - </tr> - </table> - </div> - <div> - <p> </p> - </div> - </td> - </tr> - </table> -EOFnp; - -} - -function print_info_box($msg, $class="alert-warning", $showbtn = true) { - print_info_box_np($msg, null, null, false, $class, $showbtn); +function print_apply_box($msg) { + print_info_box($msg, "warning", "apply", gettext("Apply changes")); } function get_std_save_message($ok) { @@ -1188,7 +1151,7 @@ function get_flash_message() { @session_start(); if (isset($_SESSION['flash_messages']) && !empty($_SESSION['flash_messages'])) { foreach ($_SESSION['flash_messages'] as $class => $flash_message) { - print_info_box_np(implode("<br />", $flash_message), null, null, false, $class); + print_info_box(implode("<br />", $flash_message), $class); } unset($_SESSION['flash_messages']); } diff --git a/src/usr/local/www/head.inc b/src/usr/local/www/head.inc index c18461f..015b3f9 100755 --- a/src/usr/local/www/head.inc +++ b/src/usr/local/www/head.inc @@ -125,6 +125,14 @@ if (($pagename == "pkg.php") || ($pagename == "pkg_edit.php") || ($pagename == " $pagename = $xmlfile[1]; } } +} else if ($pagename == "status_logs.php") { + $param_split = explode('&', $uri_split[2]); + foreach ($param_split as $param) { + if (substr($param, 0, 8) == "logfile=") { + $logtype = explode('=', $param); + $pagename .= '-' . $logtype[1]; + } + } } // Build the full help URL. @@ -539,7 +547,7 @@ $pgtitle_output = true; if ($config['remote_managed_pages']['item']) { foreach ($config['remote_managed_pages']['item'] as $rmp) { if ($rmp == $_SERVER['SCRIPT_NAME']) { - print_info_box_np(gettext("This page is currently being managed by a remote machine.")); + print_info_box(gettext("This page is currently being managed by a remote machine.")); include("foot.inc"); exit; } diff --git a/src/usr/local/www/help.php b/src/usr/local/www/help.php index 485e33f..723f060 100644 --- a/src/usr/local/www/help.php +++ b/src/usr/local/www/help.php @@ -99,18 +99,22 @@ $helppages = array( 'diag_dump_states.php' => 'https://doc.pfsense.org/index.php/Show_States', 'diag_resetstate.php' => 'https://doc.pfsense.org/index.php/Reset_States', 'status_logs.php' => 'https://doc.pfsense.org/index.php/System_Logs', - 'diag_logs_auth.php' => 'https://doc.pfsense.org/index.php/Captive_Portal_Authentication_Logs', - 'diag_logs_dhcp.php' => 'https://doc.pfsense.org/index.php/DHCP_Logs', + 'status_logs.php-dhcpd' => 'https://doc.pfsense.org/index.php/DHCP_Logs', + 'status_logs.php-gateways' => 'https://doc.pfsense.org/index.php/Gateway_Logs', + 'status_logs.php-ipsec' => 'https://doc.pfsense.org/index.php/IPsec_Logs', + 'status_logs.php-ntpd' => 'https://doc.pfsense.org/index.php/NTP_Logs', + 'status_logs.php-openvpn' => 'https://doc.pfsense.org/index.php/OpenVPN_Logs', + 'status_logs.php-portalauth' => 'https://doc.pfsense.org/index.php/Captive_Portal_Authentication_Logs', + 'status_logs.php-ppp' => 'https://doc.pfsense.org/index.php/PPP_Logs', + 'status_logs.php-relayd' => 'https://doc.pfsense.org/index.php/Load_Balancer_Logs', + 'status_logs.php-resolver' => 'https://doc.pfsense.org/index.php/Resolver_Logs', + 'status_logs.php-routing' => 'https://doc.pfsense.org/index.php/Routing_Logs', + 'status_logs.php-wireless' => 'https://doc.pfsense.org/index.php/Wireless_Logs', 'status_logs_filter.php' => 'https://doc.pfsense.org/index.php/Firewall_Logs', 'status_logs_filter_dynamic.php' => 'https://doc.pfsense.org/index.php/Firewall_Logs', 'status_logs_filter_summary.php' => 'https://doc.pfsense.org/index.php/Firewall_Logs', - 'diag_logs_ntpd.php' => 'https://doc.pfsense.org/index.php/NTP_Logs', - 'diag_logs_ppp.php' => 'https://doc.pfsense.org/index.php/PPP_Logs', - 'diag_logs_relayd.php' => 'https://doc.pfsense.org/index.php/Load_Balancer_Logs', 'status_logs_settings.php' => 'https://doc.pfsense.org/index.php/Log_Settings', 'status_logs_vpn.php' => 'https://doc.pfsense.org/index.php/PPTP_VPN_Logs', - 'diag_logs_ipsec.php' => 'https://doc.pfsense.org/index.php/IPsec_Logs', - 'diag_logs_openvpn.php' => 'https://doc.pfsense.org/index.php/OpenVPN_Logs', 'diag_nanobsd.php' => 'https://doc.pfsense.org/index.php/NanoBSD_Diagnostics', 'diag_ping.php' => 'https://doc.pfsense.org/index.php/Ping_Host', 'status_pkglogs.php' => 'https://doc.pfsense.org/index.php/Package_Logs', @@ -240,10 +244,6 @@ $helppages = array( 'system_crlmanager.php' => 'https://doc.pfsense.org/index.php/Certificate_Management', 'crash_reporter.php' => 'https://doc.pfsense.org/index.php/Unexpected_Reboot_Troubleshooting', 'diag_dump_states_sources.php' => 'https://doc.pfsense.org/index.php/Show_Source_Tracking', - 'diag_logs_gateways.php' => 'https://doc.pfsense.org/index.php/Gateway_Logs', - 'diag_logs_resolver.php' => 'https://doc.pfsense.org/index.php/Resolver_Logs', - 'diag_logs_routing.php' => 'https://doc.pfsense.org/index.php/Routing_Logs', - 'diag_logs_wireless.php' => 'https://doc.pfsense.org/index.php/Wireless_Logs', 'diag_ndp.php' => 'https://doc.pfsense.org/index.php/NDP_Table', 'diag_sockets.php' => 'https://doc.pfsense.org/index.php/Diag_Sockets', 'diag_testport.php' => 'https://doc.pfsense.org/index.php/Test_Port', diff --git a/src/usr/local/www/index.php b/src/usr/local/www/index.php index b7a0185..0dbf149 100644 --- a/src/usr/local/www/index.php +++ b/src/usr/local/www/index.php @@ -356,8 +356,6 @@ foreach ($available as $widgetname => $widgetconfig): <div class="hidden" id="widgetSequence"> <form action="/" method="post" id="widgetSequence_form" name="widgetForm"> <input type="hidden" name="sequence" value="" /> - - <button type="submit" id="btnstore" class="btn btn-primary"><?=gettext("Store widget configuration")?></button> </form> </div> @@ -436,6 +434,8 @@ foreach ($widgets as $widgetname => $widgetconfig) { <script type="text/javascript"> //<![CDATA[ + +dirty = false; function updateWidgets(newWidget) { var sequence = ''; @@ -456,7 +456,6 @@ function updateWidgets(newWidget) { } } - $('#widgetSequence').removeClass('hidden'); $('input[name=sequence]', $('#widgetSequence_form')).val(sequence); } @@ -467,6 +466,8 @@ events.push(function() { $(el).on('click', function(e) { $(el).parents('.panel').remove(); updateWidgets(); + // Submit the form save/display all selected widgets + $('[name=widgetForm]').submit(); }) }); @@ -475,7 +476,7 @@ events.push(function() { handle: '.panel-heading', cursor: 'grabbing', connectWith: '.container .col-md-<?=$columnWidth?>', - update: updateWidgets + update: function(){dirty = true;} }); // On clicking a widget to install . . @@ -483,13 +484,27 @@ events.push(function() { // Add the widget name to the list of displayed widgets updateWidgets(this.id.replace('btnadd-', '')); - // We don't want to see the "Store" button because we are doing that automatically - $('#btnstore').hide(); - // Submit the form save/display all selected widgets $('[name=widgetForm]').submit(); }); + + $('.context-links li:last').prev('li').html('<a href="#" class=help-icon" title="<?=gettext("Save dashboard layout")?>" id="btnstore"><i class="fa fa-save"></i></a>'); + + $('#btnstore').click(function() { + updateWidgets(); + dirty = false; + $('[name=widgetForm]').submit(); + }); + + // provide a warning message if the user tries to change page before saving + $(window).bind('beforeunload', function(){ + if (dirty) { + return ("<?=gettext('You have moved one or more widgets but have not yet saved')?>"); + } else { + return undefined; + } + }); }); //]]> </script> diff --git a/src/usr/local/www/interfaces.php b/src/usr/local/www/interfaces.php index 7fed324..01f6f95 100644 --- a/src/usr/local/www/interfaces.php +++ b/src/usr/local/www/interfaces.php @@ -280,14 +280,6 @@ $pconfig['dhcp_plus'] = isset($wancfg['dhcp_plus']); $pconfig['descr'] = remove_bad_chars($wancfg['descr']); $pconfig['enable'] = isset($wancfg['enable']); -if (is_array($config['aliases']['alias'])) { - foreach ($config['aliases']['alias'] as $alias) { - if ($alias['name'] == $wancfg['descr']) { - $input_errors[] = sprintf(gettext("Sorry, an alias with the name %s already exists. Interfaces cannot have the same name as an alias."), $wancfg['descr']); - } - } -} - switch ($wancfg['ipaddr']) { case "dhcp": $pconfig['type'] = "dhcp"; @@ -492,7 +484,7 @@ if ($_POST['apply']) { if (isset($wancfg['wireless'])) { interface_sync_wireless_clones($wancfg, false); } - write_config("Interface {$_POST['descr']}({$if}) is now disabled."); + write_config(sprintf(gettext('Interface %1$s (%2$s) is now disabled.'), $_POST['descr'], $if)); mark_subsystem_dirty('interfaces'); if (file_exists("{$g['tmp_path']}/.interfaces.apply")) { $toapplylist = unserialize(file_get_contents("{$g['tmp_path']}/.interfaces.apply")); @@ -550,6 +542,15 @@ if ($_POST['apply']) { } } + /* Is the description already used as an interface group name? */ + if (is_array($config['ifgroups']['ifgroupentry'])) { + foreach ($config['ifgroups']['ifgroupentry'] as $ifgroupentry) { + if ($ifgroupentry['ifname'] == $_POST['descr']) { + $input_errors[] = sprintf(gettext("Sorry, an interface group with the name %s already exists."), $wancfg['descr']); + } + } + } + if (is_numeric($_POST['descr'])) { $input_errors[] = gettext("The interface description cannot contain only numbers."); } @@ -668,6 +669,10 @@ if ($_POST['apply']) { $input_errors[] = sprintf(gettext("You have to reassign the interface to be able to configure as %s."), $_POST['type6']); } + if (empty($_POST['track6-interface'])) { + $input_errors[] = gettext("You have to select a valid interface to track."); + } + if ($_POST['track6-prefix-id--hex'] != "" && !is_numeric("0x" . $_POST['track6-prefix-id--hex'])) { $input_errors[] = gettext("You must enter a valid hexadecimal number for the IPv6 prefix ID."); } else { @@ -1654,8 +1659,8 @@ $mymac = str_replace("\n", "", $mymac); function build_mediaopts_list() { global $mediaopts_list; - $list = ["" => "Default (no preference, typically autoselect)", - " " => "------- Media Supported by this interface -------" + $list = ["" => gettext("Default (no preference, typically autoselect)"), + " " => gettext("------- Media Supported by this interface -------") ]; foreach ($mediaopts_list as $mediaopt) { @@ -1668,7 +1673,7 @@ function build_mediaopts_list() { function build_gateway_list() { global $a_gateways, $if; - $list = array("none" => "None"); + $list = array("none" => gettext("None")); foreach ($a_gateways as $gateway) { if (($gateway['interface'] == $if) && (is_ipaddrv4($gateway['gateway']))) { $list[$gateway['name']] = $gateway['name'] . " - " . $gateway['gateway']; @@ -1681,7 +1686,7 @@ function build_gateway_list() { function build_gatewayv6_list() { global $a_gateways, $if; - $list = array("none" => "None"); + $list = array("none" => gettext("None")); foreach ($a_gateways as $gateway) { if (($gateway['interface'] == $if) && (is_ipaddrv6($gateway['gateway']))) { $list[$gateway['name']] = $gateway['name'] . " - " . $gateway['gateway']; @@ -1698,8 +1703,8 @@ if ($input_errors) { } if (is_subsystem_dirty('interfaces')) { - print_info_box_np(sprintf(gettext("The %s configuration has been changed."), $wancfg['descr']) . "<br />" . - gettext("You must apply the changes in order for them to take effect. Don't forget to adjust the DHCP Server range if needed after applying.")); + print_apply_box(sprintf(gettext("The %s configuration has been changed."), $wancfg['descr']) . "<br />" . + gettext("You must apply the changes in order for them to take effect. Don't forget to adjust the DHCP Server range if needed after applying.")); } if ($savemsg) { @@ -2777,7 +2782,7 @@ if (isset($wancfg['wireless'])) { 'protmode', '802.11g OFDM Protection Mode', $pconfig['protmode'], - ['off' => 'Off', 'cts' => 'CTS to self', 'rtscts' => 'RTS and CTS'] + ['off' => gettext('Off'), 'cts' => gettext('CTS to self'), 'rtscts' => gettext('RTS and CTS')] ))->setHelp('For IEEE 802.11g, use the specified technique for protecting OFDM frames in a mixed 11b/11g network.'); } else { $section->addInput(new Form_Input( @@ -2788,7 +2793,7 @@ if (isset($wancfg['wireless'])) { )); } - $mode_list = ['0' => 'Auto']; + $mode_list = ['0' => gettext('Auto')]; if (is_array($wl_modes)) { foreach ($wl_modes as $wl_standard => $wl_channels) { @@ -2827,7 +2832,7 @@ if (isset($wancfg['wireless'])) { 'diversity', null, (isset($pconfig['diversity'])) ? $pconfig['diversity']:'', - ['' => 'Default', '0' => 'Off', '1' => 'On'] + ['' => gettext('Default'), '0' => gettext('Off'), '1' => gettext('On')] ))->setHelp('Diversity'); } @@ -2836,7 +2841,7 @@ if (isset($wancfg['wireless'])) { 'txantenna', null, (isset($pconfig['txantenna'])) ? $pconfig['txantenna']:'', - ['' => 'Default', '0' => 'Auto', '1' => '#1', '2' => '#2'] + ['' => gettext('Default'), '0' => gettext('Auto'), '1' => gettext('#1'), '2' => gettext('#2')] ))->setHelp('Transmit antenna'); } @@ -2845,7 +2850,7 @@ if (isset($wancfg['wireless'])) { 'rxantenna', null, (isset($pconfig['rxantenna'])) ? $pconfig['rxantenna']:'', - ['' => 'Default', '0' => 'Auto', '1' => '#1', '2' => '#2'] + ['' => gettext('Default'), '0' => gettext('Auto'), '1' => gettext('#1'), '2' => gettext('#2')] ))->setHelp('Receive antenna'); } @@ -2903,7 +2908,7 @@ if (isset($wancfg['wireless'])) { 'reglocation', 'Location', $pconfig['reglocation'], - ['' => 'Default', 'indoor' => 'Indoor', 'outdoor' => 'Outdoor', 'anywhere' => 'Anywhere'] + ['' => gettext('Default'), 'indoor' => gettext('Indoor'), 'outdoor' => gettext('Outdoor'), 'anywhere' => gettext('Anywhere')] ))->setHelp('These settings may affect which channels are available and the maximum transmit power allowed on those channels. ' . 'Using the correct settings to comply with local regulatory requirements is recommended.' . '<br />' . 'All wireless networks on this interface will be temporarily brought down when changing regulatory settings. ' . @@ -2918,7 +2923,7 @@ if (isset($wancfg['wireless'])) { 'mode', 'Mode', $pconfig['mode'], - ['bss' => 'Infrastructure (BSS)', 'adhoc' => 'Ad-hoc (IBSS)', 'hostap' => 'Access Point'] + ['bss' => gettext('Infrastructure (BSS)'), 'adhoc' => gettext('Ad-hoc (IBSS)'), 'hostap' => gettext('Access Point')] )); $section->addInput(new Form_Input( @@ -2933,7 +2938,7 @@ if (isset($wancfg['wireless'])) { 'puremode', 'Minimum wireless standard', $pconfig['puremode'], - ['any' => 'Any', '11g' => '802.11g', '11n' => '802.11n'] + ['any' => gettext('Any'), '11g' => gettext('802.11g'), '11n' => gettext('802.11n')] ))->setHelp('When operating as an access point, allow only stations capable of the selected wireless standard to associate (stations not capable are not permitted to associate)'); } elseif (isset($wl_modes['11g'])) { $section->addInput(new Form_Checkbox( @@ -2993,21 +2998,21 @@ if (isset($wancfg['wireless'])) { 'wpa_mode', 'WPA mode', (isset($pconfig['wpa_mode'])) ? $pconfig['wpa_mode']: '2', - ['1' => 'WPA', '2' => 'WPA2', '3' => 'Both'] + ['1' => gettext('WPA'), '2' => gettext('WPA2'), '3' => gettext('Both')] )); $section->addInput(new Form_Select( 'wpa_key_mgmt', 'WPA Key Management Mode', $pconfig['wpa_key_mgmt'], - ['WPA-PSK' => 'Pre-Shared Key', 'WPA-EAP' => 'Extensible Authentication Protocol', 'WPA-PSK WPA-EAP' => 'Both'] + ['WPA-PSK' => gettext('Pre-Shared Key'), 'WPA-EAP' => gettext('Extensible Authentication Protocol'), 'WPA-PSK WPA-EAP' => gettext('Both')] )); $section->addInput(new Form_Select( 'wpa_pairwise', 'WPA Pairwise', (isset($pconfig['wpa_pairwise'])) ? $pconfig['wpa_pairwise']:'CCMP', - ['CCMP TKIP' => 'Both', 'CCMP' => 'AES (recommended)', 'TKIP' => 'TKIP'] + ['CCMP TKIP' => gettext('Both'), 'CCMP' => gettext('AES (recommended)'), 'TKIP' => gettext('TKIP')] )); $section->addInput(new Form_Input( diff --git a/src/usr/local/www/interfaces_assign.php b/src/usr/local/www/interfaces_assign.php index 0570d39..3c17dbe 100644 --- a/src/usr/local/www/interfaces_assign.php +++ b/src/usr/local/www/interfaces_assign.php @@ -336,7 +336,7 @@ if (isset($_POST['add']) && isset($_POST['if_add'])) { $members = explode(",", strtoupper($bridge['members'])); foreach ($members as $member) { if ($member == $ifnames[0]) { - $input_errors[] = sprintf(gettext("You cannot set port %s to interface %s because this interface is a member of %s."), $portname, $member, $portname); + $input_errors[] = sprintf(gettext('You cannot set port %1$s to interface %2$s because this interface is a member of %3$s.'), $portname, $member, $portname); break; } } @@ -347,7 +347,7 @@ if (isset($_POST['add']) && isset($_POST['if_add'])) { if (is_array($config['vlans']['vlan'])) { foreach ($config['vlans']['vlan'] as $vlan) { if (does_interface_exist($vlan['if']) == false) { - $input_errors[] = "Vlan parent interface {$vlan['if']} does not exist anymore so vlan id {$vlan['tag']} cannot be created please fix the issue before continuing."; + $input_errors[] = sprintf(gettext('Vlan parent interface %1$s does not exist anymore so vlan id %2$s cannot be created please fix the issue before continuing.'), $vlan['if'], $vlan['tag']); } } } @@ -502,7 +502,7 @@ if (file_exists("/var/run/interface_mismatch_reboot_needed")) { if (file_exists("/tmp/reload_interfaces")) { echo "<p>\n"; - print_info_box_np(gettext("The interface configuration has been changed.<br />You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The interface configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); echo "<br /></p>\n"; } elseif ($savemsg) { print_info_box($savemsg, $class); diff --git a/src/usr/local/www/interfaces_bridge_edit.php b/src/usr/local/www/interfaces_bridge_edit.php index fd889ab..7425d42 100644 --- a/src/usr/local/www/interfaces_bridge_edit.php +++ b/src/usr/local/www/interfaces_bridge_edit.php @@ -180,7 +180,7 @@ if ($_POST) { } foreach ($ifacelist as $ifn => $ifdescr) { if ($_POST[$ifn] <> "" && !is_numericint($_POST[$ifn])) { - $input_errors[] = "{$ifdescr} " . gettext("interface priority for STP needs to be an integer between 0 and 240."); + $input_errors[] = sprintf(gettext("%s interface priority for STP needs to be an integer between 0 and 240."), $ifdescr); } } @@ -188,7 +188,7 @@ if ($_POST) { foreach ($ifacelist as $ifn => $ifdescr) { if ($_POST["{$ifn}{$i}"] <> "" && !is_numeric($_POST["{$ifn}{$i}"])) { - $input_errors[] = "{$ifdescr} " . gettext("interface path cost for STP needs to be an integer between 1 and 200000000."); + $input_errors[] = sprintf(gettext("%s interface path cost for STP needs to be an integer between 1 and 200000000."), $ifdescr); } $i++; } @@ -216,7 +216,7 @@ if ($_POST) { $a_members = explode(',', $a_bridge['members']); foreach ($a_members as $a_member) { if ($ifmembers === $a_member) { - $input_errors[] = $ifmembers . gettext(" is part of another bridge. Remove the interface from bridge members to continue."); + $input_errors[] = sprintf(gettext("%s is part of another bridge. Remove the interface from bridge members to continue."), $ifmembers); } } } diff --git a/src/usr/local/www/interfaces_lagg_edit.php b/src/usr/local/www/interfaces_lagg_edit.php index 6c38740..8417834 100644 --- a/src/usr/local/www/interfaces_lagg_edit.php +++ b/src/usr/local/www/interfaces_lagg_edit.php @@ -70,56 +70,56 @@ $a_laggs = &$config['laggs']['lagg']; $portlist = get_interface_list(); $laggprotos = array("none", "lacp", "failover", "fec", "loadbalance", "roundrobin"); -$laggprotosuc = array("NONE", "LACP", "FAILOVER", "FEC", "LOADBALANCE", "ROUNDROBIN"); +$laggprotosuc = array(gettext("NONE"), gettext("LACP"), gettext("FAILOVER"), gettext("FEC"), gettext("LOADBALANCE"), gettext("ROUNDROBIN")); $protohelp = '<ul>' . '<li>' . - '<strong>' . gettext($laggprotos[0]) . '</strong><br />' . - gettext('This protocol is intended to do nothing: it disables any ' . - 'traffic without disabling the lagg interface itself') . + '<strong>' . $laggprotosuc[0] . '</strong><br />' . + gettext('This protocol is intended to do nothing: it disables any ' . + 'traffic without disabling the lagg interface itself') . '</li>' . '<li>' . - '<strong>' . gettext($laggprotos[1]) . '</strong><br />' . - gettext('Supports the IEEE 802.3ad Link Aggregation Control Protocol ' . - '(LACP) and the Marker Protocol. LACP will negotiate a set ' . - 'of aggregable links with the peer in to one or more Link ' . - 'Aggregated Groups. Each LAG is composed of ports of the ' . - 'same speed, set to full-duplex operation. The traffic will ' . - 'be balanced across the ports in the LAG with the greatest ' . - 'total speed, in most cases there will only be one LAG which ' . - 'contains all ports. In the event of changes in physical ' . - 'connectivity, Link Aggregation will quickly converge to a ' . - 'new configuration.') . + '<strong>' . $laggprotosuc[1] . '</strong><br />' . + gettext('Supports the IEEE 802.3ad Link Aggregation Control Protocol ' . + '(LACP) and the Marker Protocol. LACP will negotiate a set ' . + 'of aggregable links with the peer in to one or more Link ' . + 'Aggregated Groups. Each LAG is composed of ports of the ' . + 'same speed, set to full-duplex operation. The traffic will ' . + 'be balanced across the ports in the LAG with the greatest ' . + 'total speed, in most cases there will only be one LAG which ' . + 'contains all ports. In the event of changes in physical ' . + 'connectivity, Link Aggregation will quickly converge to a ' . + 'new configuration.') . '</li>' . '<li>' . - '<strong>' . gettext($laggprotos[2]) . '</strong><br />' . + '<strong>' . $laggprotosuc[2] . '</strong><br />' . gettext('Sends and receives traffic only through the master port. If ' . 'the master port becomes unavailable, the next active port is ' . 'used. The first interface added is the master port; any ' . 'interfaces added after that are used as failover devices.') . '</li>' . '<li>' . - '<strong>' . gettext($laggprotos[3]) . '</strong><br />' . + '<strong>' . $laggprotosuc[3] . '</strong><br />' . gettext('Supports Cisco EtherChannel. This is a static setup and ' . - 'does not negotiate aggregation with the peer or exchange ' . - 'frames to monitor the link.') . + 'does not negotiate aggregation with the peer or exchange ' . + 'frames to monitor the link.') . '</li>' . '<li>' . - '<strong>' . gettext($laggprotos[4]) . '</strong><br />' . - gettext('Balances outgoing traffic across the active ports based on ' . - 'hashed protocol header information and accepts incoming ' . - 'traffic from any active port. This is a static setup and ' . - 'does not negotiate aggregation with the peer or exchange ' . - 'frames to monitor the link. The hash includes the Ethernet ' . - 'source and destination address, and, if available, the VLAN ' . - 'tag, and the IP source and destination address') . + '<strong>' . $laggprotosuc[4] . '</strong><br />' . + gettext('Balances outgoing traffic across the active ports based on ' . + 'hashed protocol header information and accepts incoming ' . + 'traffic from any active port. This is a static setup and ' . + 'does not negotiate aggregation with the peer or exchange ' . + 'frames to monitor the link. The hash includes the Ethernet ' . + 'source and destination address, and, if available, the VLAN ' . + 'tag, and the IP source and destination address') . '</li>' . '<li>' . - '<strong>' . gettext($laggprotos[5]) . '</strong><br />' . - gettext('Distributes outgoing traffic using a round-robin scheduler ' . - 'through all active ports and accepts incoming traffic from ' . - 'any active port') . + '<strong>' . $laggprotosuc[5] . '</strong><br />' . + gettext('Distributes outgoing traffic using a round-robin scheduler ' . + 'through all active ports and accepts incoming traffic from ' . + 'any active port') . '</li>' . '</ul>'; diff --git a/src/usr/local/www/interfaces_ppps_edit.php b/src/usr/local/www/interfaces_ppps_edit.php index 26280ea..8f06a58 100644 --- a/src/usr/local/www/interfaces_ppps_edit.php +++ b/src/usr/local/www/interfaces_ppps_edit.php @@ -452,7 +452,7 @@ $pgtitle = array(gettext("Interfaces"), gettext("PPPs"), gettext("Edit")); $shortcut_section = "interfaces"; include("head.inc"); -$types = array("select" => gettext("Select"), "ppp" => "PPP", "pppoe" => "PPPoE", "pptp" => "PPTP", "l2tp" => "L2TP"/*, "tcp" => "TCP", "udp" => "UDP"*/); +$types = array("select" => gettext("Select"), "ppp" => gettext("PPP"), "pppoe" => gettext("PPPoE"), "pptp" => gettext("PPTP"), "l2tp" => gettext("L2TP")/*, "tcp" => "TCP", "udp" => "UDP"*/); $serviceproviders_xml = "/usr/local/share/mobile-broadband-provider-info/serviceproviders.xml"; $serviceproviders_contents = file_get_contents($serviceproviders_xml); @@ -725,9 +725,9 @@ $section->addInput(new Form_Select( 'Periodic Reset', $pconfig['pppoe-reset-type'], array( - '' => 'Disabled', - 'custom' => 'Custom', - 'preset' => 'Pre-set' + '' => gettext('Disabled'), + 'custom' => gettext('Custom'), + 'preset' => gettext('Pre-set') ) ))->addClass('pppoe')->setHelp('Select a reset timing type'); @@ -965,18 +965,19 @@ events.push(function() { // The options that follow are only shown if type == 'ppp' var ppptype = ($('#type').val() == 'ppp'); - hideInput('apnum', showadvanced && ppptype); - hideInput('simpin', showadvanced && ppptype); - hideInput('pin-wait', showadvanced && ppptype); - hideInput('initstr', showadvanced && ppptype); - hideInput('connect-timeout', showadvanced && ppptype); - hideCheckbox('uptime', showadvanced && ppptype); + hideInput('apn', showadvanced || !ppptype); + hideInput('apnum', showadvanced || !ppptype); + hideInput('simpin', showadvanced || !ppptype); + hideInput('pin-wait', showadvanced || !ppptype); + hideInput('initstr', showadvanced || !ppptype); + hideInput('connect-timeout', showadvanced || !ppptype); + hideCheckbox('uptime', showadvanced || !ppptype); // The options that follow are only shown if type == 'pppoe' var pppoetype = ($('#type').val() != 'pppoe'); - hideClass('pppoe', showadvanced || pppoetype); - hideInput('pppoe-reset-type', showadvanced || pppoetype); + hideClass('pppoe', pppoetype); + hideInput('pppoe-reset-type', pppoetype || showadvanced); hideResetDisplay(true); diff --git a/src/usr/local/www/interfaces_vlan_edit.php b/src/usr/local/www/interfaces_vlan_edit.php index b5f6794..3ed25d9 100644 --- a/src/usr/local/www/interfaces_vlan_edit.php +++ b/src/usr/local/www/interfaces_vlan_edit.php @@ -137,7 +137,7 @@ if ($_POST) { if (is_array($config['qinqs']['qinqentry'])) { foreach ($config['qinqs']['qinqentry'] as $qinq) { if ($qinq['tag'] == $_POST['tag'] && $qinq['if'] == $_POST['if']) { - $input_errors[] = gettext("A QinQ VLAN exists with this tag please remove it to use this tag with."); + $input_errors[] = sprintf(gettext('A QinQ VLAN exists on %s with this tag. Please remove it to use this tag for a normal VLAN.'), $_POST['if']); } } } diff --git a/src/usr/local/www/interfaces_wireless_edit.php b/src/usr/local/www/interfaces_wireless_edit.php index 10a43ef..99899c2 100644 --- a/src/usr/local/www/interfaces_wireless_edit.php +++ b/src/usr/local/www/interfaces_wireless_edit.php @@ -210,7 +210,7 @@ $form = new Form(); $section = new Form_Section('Wireless Interface Configuration'); $section->addInput(new Form_Select( - 'parent', + 'if', 'Parent Interface', $pconfig['if'], build_parent_list() @@ -221,9 +221,9 @@ $section->addInput(new Form_Select( 'Mode', $pconfig['mode'], array( - 'bss' => 'Infrastructure (BSS)', - 'adhoc' => 'Ad-hoc (IBSS)', - 'hostap' => gettext('Access Point)' + 'bss' => gettext('Infrastructure (BSS)'), + 'adhoc' => gettext('Ad-hoc (IBSS)'), + 'hostap' => gettext('Access Point') ) )); diff --git a/src/usr/local/www/load_balancer_monitor.php b/src/usr/local/www/load_balancer_monitor.php index 8248cf0..bdcfac8 100644 --- a/src/usr/local/www/load_balancer_monitor.php +++ b/src/usr/local/www/load_balancer_monitor.php @@ -118,7 +118,7 @@ if ($savemsg) { } if (is_subsystem_dirty('loadbalancer')) { - print_info_box_np(gettext("The load balancer configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The load balancer configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } /* active tabs */ diff --git a/src/usr/local/www/load_balancer_pool.php b/src/usr/local/www/load_balancer_pool.php index eac075d..183775a 100644 --- a/src/usr/local/www/load_balancer_pool.php +++ b/src/usr/local/www/load_balancer_pool.php @@ -132,7 +132,7 @@ if ($savemsg) { } if (is_subsystem_dirty('loadbalancer')) { - print_info_box_np(sprintf(gettext("The load balancer configuration has been changed%sYou must apply the changes in order for them to take effect."), "<br />")); + print_apply_box(gettext("The load balancer configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } /* active tabs */ diff --git a/src/usr/local/www/load_balancer_setting.php b/src/usr/local/www/load_balancer_setting.php index 57f96af..fe63c7d 100644 --- a/src/usr/local/www/load_balancer_setting.php +++ b/src/usr/local/www/load_balancer_setting.php @@ -131,8 +131,8 @@ if ($savemsg) { } if (is_subsystem_dirty('loadbalancer')) { - print_info_box_np(gettext("The load balancer configuration has been changed") . ' ' . - gettext("You must apply the changes in order for them to take effect."), 'Apply', null, false, 'danger'); + print_apply_box(gettext("The load balancer configuration has been changed.") . ' ' . + gettext("You must apply the changes in order for them to take effect.")); } /* active tabs */ diff --git a/src/usr/local/www/load_balancer_virtual_server.php b/src/usr/local/www/load_balancer_virtual_server.php index 628f040..b361106 100644 --- a/src/usr/local/www/load_balancer_virtual_server.php +++ b/src/usr/local/www/load_balancer_virtual_server.php @@ -132,7 +132,7 @@ if ($savemsg) { } if (is_subsystem_dirty('loadbalancer')) { - print_info_box_np(gettext("The virtual server configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The virtual server configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } /* active tabs */ diff --git a/src/usr/local/www/pkg.php b/src/usr/local/www/pkg.php index 1ef9589..6492ac0 100755 --- a/src/usr/local/www/pkg.php +++ b/src/usr/local/www/pkg.php @@ -71,21 +71,31 @@ $xml = $_REQUEST['xml']; if ($xml == "") { include("head.inc"); - print_info_box_np(gettext("ERROR: No valid package defined.")); + print_info_box(gettext("ERROR: No valid package defined.")); include("foot.inc"); exit; } else { $pkg_xml_prefix = "/usr/local/pkg/"; $pkg_full_path = "{$pkg_xml_prefix}/{$xml}"; - if (substr_compare(realpath($pkg_full_path), $pkg_xml_prefix, 0, strlen($pkg_xml_prefix))) { - print_info_box_np(gettext("ERROR: Invalid path specified.")); + $pkg_realpath = realpath($pkg_full_path); + if (empty($pkg_realpath)) { + $path_error = sprintf(gettext("ERROR: Package path %s not found."), htmlspecialchars($pkg_full_path)); + } else if (substr_compare($pkg_realpath, $pkg_xml_prefix, 0, strlen($pkg_xml_prefix))) { + $path_error = sprintf(gettext("ERROR: Invalid path %s specified."), htmlspecialchars($pkg_full_path)); + } + + if (!empty($path_error)) { + include("head.inc"); + print_info_box($path_error . "<br />" . gettext("Try reinstalling the package.")); + include("foot.inc"); die; } + if (file_exists($pkg_full_path)) { $pkg = parse_xml_config_pkg($pkg_full_path, "packagegui"); } else { include("head.inc"); - print_info_box_np(gettext("File not found ") . htmlspecialchars($xml)); + print_info_box(sprintf(gettext("File not found %s"), htmlspecialchars($xml))); include("foot.inc"); exit; } @@ -254,7 +264,7 @@ if (isset($tab_array)) { events.push(function() { function setFilter(filtertext) { - jQuery('#pkg_filter').val(filtertext); + $('#pkg_filter').val(filtertext); document.pkgform.submit(); } @@ -268,7 +278,7 @@ events.push(function() { opacity: 0.8, helper: function(e, ui) { ui.children().each(function() { - jQuery(this).width(jQuery(this).width()); + $(this).width($(this).width()); }); return ui; }, @@ -340,7 +350,7 @@ if ($savemsg) { } } echo "<tr><td colspan='$colspan' class='text-center'>"; - echo "Filter by: "; + echo gettext("Filter by: "); $isfirst = true; for ($char = 65; $char < 91; $char++) { if (!$isfirst) { @@ -352,7 +362,7 @@ if ($savemsg) { echo "</td></tr>"; echo "<tr><td colspan='$colspan' class='text-center'>"; if ($field['sortablefields']) { - echo "Filter field: <select name='pkg_filter_type'>"; + echo gettext("Filter field: ") . "<select name='pkg_filter_type'>"; foreach ($field['sortablefields']['item'] as $si) { if ($si['name'] == $_REQUEST['pkg_filter_type']) { $SELECTED = "selected"; @@ -364,7 +374,7 @@ if ($savemsg) { echo "</select>"; } if ($include_filtering_inputbox) { - echo " Filter text: <input id='pkg_filter' name='pkg_filter' value='" . $_REQUEST['pkg_filter'] . "' /><input type='submit' value='Filter' />"; + echo " " . gettext("Filter text: ") . "<input id='pkg_filter' name='pkg_filter' value='" . $_REQUEST['pkg_filter'] . "' /><input type='submit' value='Filter' />"; } echo "</td></tr><tr><td><font size='-3'> </font></td></tr>"; } @@ -395,8 +405,8 @@ if ($savemsg) { echo "<tr><th colspan='" . count($pkg['adddeleteeditpagefields']['columnitem']) . "'>"; echo "<table width='100%' summary=''>"; echo "<tr>"; - echo "<td class='text-left'>Displaying page $page of $totalpages</b></td>"; - echo "<td class='text-right'>Rows per page: <select onchange='document.pkgform.submit();' name='display_maximum_rows'>"; + echo "<td class='text-left'>" . sprintf(gettext('Displaying page %1$s of %2$s'), $page, $totalpages) . "</b></td>"; + echo "<td class='text-right'>" . gettext("Rows per page: ") . "<select onchange='document.pkgform.submit();' name='display_maximum_rows'>"; for ($x = 0; $x < 250; $x++) { if ($x == $display_maximum_rows) { $SELECTED = "selected"; @@ -524,14 +534,14 @@ if ($savemsg) { <tr> <?php #Show custom description to edit button if defined - $edit_msg=($pkg['adddeleteeditpagefields']['edittext']?$pkg['adddeleteeditpagefields']['edittext']:"Edit this item"); + $edit_msg=($pkg['adddeleteeditpagefields']['edittext']?$pkg['adddeleteeditpagefields']['edittext']:gettext("Edit this item")); ?> <td><a class="fa fa-pencil" href="pkg_edit.php?xml=<?=$xml?>&act=edit&id=<?=$i?>" title="<?=$edit_msg?>"></a></td> <?php #Show custom description to delete button if defined - $delete_msg=($pkg['adddeleteeditpagefields']['deletetext']?$pkg['adddeleteeditpagefields']['deletetext']:"Delete this item"); + $delete_msg=($pkg['adddeleteeditpagefields']['deletetext']?$pkg['adddeleteeditpagefields']['deletetext']:gettext("Delete this item")); ?> - <td> <a class="fa fa-trash" href="pkg.php?xml=<?=$xml?>&act=del&id=<?=$i?>" title="<?=gettext("Delete")?>"></a></td> + <td> <a class="fa fa-trash" href="pkg.php?xml=<?=$xml?>&act=del&id=<?=$i?>" title="<?=$delete_msg?>"><?=gettext('Delete')?></a></td> </tr> </tbody> </table> @@ -553,7 +563,7 @@ if ($savemsg) { } else if ($startdisplayingat > 1) { $final_footer .= "<a href='pkg.php?xml=" . $_REQUEST['xml'] . "&startdisplayingat=0&display_maximum_rows={$display_maximum_rows}'>"; } - $final_footer .= "<font size='2'><< Previous page</font></a>"; + $final_footer .= "<font size='2'><< " . gettext("Previous page") . "</font></a>"; if ($tmppp + $display_maximum_rows > count($evaledvar)) { $endingrecord = count($evaledvar); } else { @@ -566,7 +576,7 @@ if ($savemsg) { if (($i+1) < count($evaledvar)) { $final_footer .= "<a href='pkg.php?xml=" . $_REQUEST['xml'] . "&startdisplayingat=" . ($startdisplayingat + $display_maximum_rows) . "&display_maximum_rows={$display_maximum_rows}'>"; } - $final_footer .= "<font size='2'>Next page >></font></a>"; + $final_footer .= "<font size='2'>" . gettext("Next page") . " >></font></a>"; $final_footer .= "</td></tr></table></td></tr>"; $i = count($evaledvar); break; @@ -584,7 +594,7 @@ if ($savemsg) { <tr> <?php #Show custom description to add button if defined - $add_msg=($pkg['adddeleteeditpagefields']['addtext']?$pkg['adddeleteeditpagefields']['addtext']:"Add a new item"); + $add_msg=($pkg['adddeleteeditpagefields']['addtext']?$pkg['adddeleteeditpagefields']['addtext']:gettext("Add a new item")); ?> <td><a href="pkg_edit.php?xml=<?=$xml?>&id=<?=$i?>" class="btn btn-sm btn-success" title="<?=$add_msg?>"><?=gettext('Add')?></a></td> <?php diff --git a/src/usr/local/www/pkg_edit.php b/src/usr/local/www/pkg_edit.php index e43cb43..2db6b6e 100644 --- a/src/usr/local/www/pkg_edit.php +++ b/src/usr/local/www/pkg_edit.php @@ -82,7 +82,7 @@ $xml_fullpath = realpath('/usr/local/pkg/' . $xml); if ($xml == "" || $xml_fullpath === false || substr($xml_fullpath, 0, strlen('/usr/local/pkg/')) != '/usr/local/pkg/') { include("head.inc"); - print_info_box_np(gettext("ERROR: No valid package defined.")); + print_info_box(gettext("ERROR: No valid package defined.")); include("foot.inc"); die; } else { @@ -1193,11 +1193,12 @@ foreach ($pkg['fields']['field'] as $pkga) { sort($ips); if (isset($pkga['showlistenall'])) { - array_unshift($ips, array('ip' => 'All', 'description' => 'Listen on All interfaces/ip addresses ')); + array_unshift($ips, array('ip' => gettext('All'), 'description' => gettext('Listen on All interfaces/ip addresses '))); } if (!preg_match("/$interface_regex/", "loopback")) { - $iface_description=(isset($pkga['showips']) ? "127.0.0.1 (loopback)" : "loopback"); + $loopback_text = gettext("loopback"); + $iface_description=(isset($pkga['showips']) ? "127.0.0.1 (" . $loopback_text . ")" : $loopback_text); array_push($ips, array('ip' => 'lo0', 'description' => $iface_description)); } @@ -1533,20 +1534,20 @@ if ($pkg['fields']['field'] != "") { ?> <?php foreach ($pkg['fields']['field'] as $field) { if (isset($field['enablefields']) or isset($field['checkenablefields'])) { - echo "\tif (jQuery('input[name=\"{$field['fieldname']}\"]').prop('checked') == false) {\n"; + echo "\tif ($('input[name=\"{$field['fieldname']}\"]').prop('checked') == false) {\n"; if (isset($field['enablefields'])) { foreach (explode(',', $field['enablefields']) as $enablefield) { - echo "\t\tif (jQuery('input[name=\"{$enablefield}\"]').length > 0) {\n"; - echo "\t\t\tjQuery('input[name=\"{$enablefield}\"]').prop('disabled',true);\n"; + echo "\t\tif ($('input[name=\"{$enablefield}\"]').length > 0) {\n"; + echo "\t\t\t$('input[name=\"{$enablefield}\"]').prop('disabled',true);\n"; echo "\t\t}\n"; } } if (isset($field['checkenablefields'])) { foreach (explode(',', $field['checkenablefields']) as $checkenablefield) { - echo "\t\tif (jQuery('input[name=\"{$checkenablefield}\"]').length > 0) {\n"; - echo "\t\t\tjQuery('input[name=\"{$checkenablefield}\"]').prop('checked',true);\n"; + echo "\t\tif ($('input[name=\"{$checkenablefield}\"]').length > 0) {\n"; + echo "\t\t\t$('input[name=\"{$checkenablefield}\"]').prop('checked',true);\n"; echo "\t\t}\n"; } } @@ -1555,16 +1556,16 @@ if ($pkg['fields']['field'] != "") { ?> if (isset($field['enablefields'])) { foreach (explode(',', $field['enablefields']) as $enablefield) { - echo "\t\tif (jQuery('input[name=\"{$enablefield}\"]').length > 0) {\n"; - echo "\t\t\tjQuery('input[name=\"{$enablefield}\"]').prop('disabled',false);\n"; + echo "\t\tif ($('input[name=\"{$enablefield}\"]').length > 0) {\n"; + echo "\t\t\t$('input[name=\"{$enablefield}\"]').prop('disabled',false);\n"; echo "\t\t}\n"; } } if (isset($field['checkenablefields'])) { foreach (explode(',', $field['checkenablefields']) as $checkenablefield) { - echo "\t\tif (jQuery('input[name=\"{$checkenablefield}\"]').length > 0) {\n"; - echo "\t\t\tjQuery('input[name=\"{$checkenablefield}\"]').prop('checked',false);\n"; + echo "\t\tif ($('input[name=\"{$checkenablefield}\"]').length > 0) {\n"; + echo "\t\t\t$('input[name=\"{$checkenablefield}\"]').prop('checked',false);\n"; echo "\t\t}\n"; } } diff --git a/src/usr/local/www/pkg_mgr.php b/src/usr/local/www/pkg_mgr.php index 439af71..ecc4cad 100644 --- a/src/usr/local/www/pkg_mgr.php +++ b/src/usr/local/www/pkg_mgr.php @@ -71,7 +71,7 @@ require_once("pkg-utils.inc"); if (is_subsystem_dirty('packagelock')) { $pgtitle = array(gettext("System"), gettext("Package Manager")); include("head.inc"); - print_info_box_np("Please wait while packages are reinstalled in the background."); + print_info_box("Please wait while packages are reinstalled in the background."); include("foot.inc"); exit; } @@ -197,7 +197,7 @@ display_top_tabs($tab_array); <a id="btnclear" title="<?=gettext("Clear")?>" class="btn btn-default btn-sm"><?=gettext("Clear")?></a> </div> <div class="col-sm-10 col-sm-offset-2"> - <span class="help-block">Enter a search string or *nix regular expression to search package names and descriptions.</span> + <span class="help-block"><?=gettext('Enter a search string or *nix regular expression to search package names and descriptions.')?></span> </div> </div> </div> diff --git a/src/usr/local/www/pkg_mgr_install.php b/src/usr/local/www/pkg_mgr_install.php index 6b0876f..1518ec0 100644 --- a/src/usr/local/www/pkg_mgr_install.php +++ b/src/usr/local/www/pkg_mgr_install.php @@ -292,13 +292,14 @@ if ($input_errors) { switch ($pkgmode) { case 'reinstallpkg': - $pkgtxt = 'reinstalled'; + $pkgtxt = sprintf(gettext('Package <b>%s</b> will be reinstalled'), $pkgname); break; case 'delete': - $pkgtxt = 'removed'; + $pkgtxt = sprintf(gettext('Package <b>%s</b> will be removed'), $pkgname); break; + case 'installed': default: - $pkgtxt = $pkgmode; + $pkgtxt = sprintf(gettext('Package <b>%s</b> will be installed'), $pkgname); break; } ?> @@ -313,7 +314,7 @@ if ($input_errors) { <?php } else if ($_GET['from'] && $_GET['to']) { ?> - Package: <b><?=$pkgname;?></b> will be upgraded from <b><?=$_GET['from']?></b> to <b><?=$_GET['to']?></b>. + <?=sprintf(gettext('Package: %1$s will be upgraded from %2$s to %3$s.'), '<b>' . $pkgname . '</b>', '<b>' . $_GET['from'] . '</b>', '<b>' . $_GET['to'] . '</b>')?> <?php } else if ($firmwareupdate) { ?> @@ -321,7 +322,7 @@ if ($input_errors) { <?php } else { ?> - Package: <b><?=$pkgname;?></b> will be <?=$pkgtxt;?>. + <?=$pkgtxt;?>. <?php } ?> @@ -389,12 +390,30 @@ if ($firmwareupdate && !$firmwareversion) { print_info_box(gettext("Unable to retrieve system versions"), 'danger'); } +if ($_POST) { + $pkgid = str_replace(array("<", ">", ";", "&", "'", '"', '.', '/'), "", htmlspecialchars_decode($_POST['id'], ENT_QUOTES | ENT_HTML401)); + if ($pkgid == "firmware") { + $logfilename = $g['cf_conf_path'] . '/upgrade_log'; + } else { + $logfilename = $g['cf_conf_path'] . '/pkg_log_' . $pkgid; + } +} + if ($_POST['mode'] == 'delete') { - $modetxt = gettext("removal"); + $panel_heading_txt = gettext("Package removal"); + $pkg_success_txt = sprintf(gettext('<b>%1$s</b> removal successfully completed'), $pkgid); + $pkg_fail_txt = sprintf(gettext('<b>%1$s</b> removal failed!'), $pkgid); + $pkg_wait_txt = sprintf(gettext('Please wait while the removal of <b>%1$s</b> completes.'), $pkgid); } else if (($_POST['mode'] == 'reinstallpkg') || ($_POST['mode'] == 'reinstallall')) { - $modetxt = gettext("reinstallation"); + $panel_heading_txt = gettext("Package reinstallation"); + $pkg_success_txt = sprintf(gettext('<b>%1$s</b> reinstallation successfully completed'), $pkgid); + $pkg_fail_txt = sprintf(gettext('<b>%1$s</b> reinstallation failed!'), $pkgid); + $pkg_wait_txt = sprintf(gettext('Please wait while the reinstallation of <b>%1$s</b> completes.'), $pkgid); } else { - $modetxt = gettext("installation"); + $panel_heading_txt = gettext("Package installation"); + $pkg_success_txt = sprintf(gettext('<b>%1$s</b> installation successfully completed'), $pkgid); + $pkg_fail_txt = sprintf(gettext('<b>%1$s</b> installation failed!'), $pkgid); + $pkg_wait_txt = sprintf(gettext('Please wait while the installation of <b>%1$s</b> completes.'), $pkgid); } if (!empty($_POST['id']) || $_POST['mode'] == "reinstallall"): @@ -423,7 +442,7 @@ if (!empty($_POST['id']) || $_POST['mode'] == "reinstallall"): <h2 class="panel-title" id="status"><?=gettext("Updating system")?></h2> <?php } else { ?> - <h2 class="panel-title" id="status"><?=gettext("Package") . " " . $modetxt?></h2> + <h2 class="panel-title" id="status"><?=$panel_heading_txt?></h2> <?php } ?> </div> @@ -441,16 +460,12 @@ if (!empty($_POST['id']) || $_POST['mode'] == "reinstallall"): ob_flush(); -if ($_POST) { - $pkgid = str_replace(array("<", ">", ";", "&", "'", '"', '.', '/'), "", htmlspecialchars_decode($_POST['id'], ENT_QUOTES | ENT_HTML401)); -} - if ($_POST && ($_POST['completed'] != "true")) { /* Write out configuration to create a backup prior to pkg install. */ write_config(gettext("Creating restore point before package installation.")); $progbar = true; - $upgrade_script = "/usr/local/sbin/{$g['product_name']}-upgrade -y -l {$g['tmp_path']}/webgui-log.txt -p {$g['tmp_path']}/webgui-log.sock"; + $upgrade_script = "/usr/local/sbin/{$g['product_name']}-upgrade -y -l {$logfilename}.txt -p {$g['tmp_path']}/{$g['product_name']}-upgrade.sock"; switch ($_POST['mode']) { case 'delete': @@ -486,6 +501,7 @@ if ($_POST && ($_POST['completed'] != "true")) { // $_POST['completed'] just means that we are refreshing the page to update any new menu items // that were installed if ($_POST && $_POST['completed'] == "true"): + unlink_if_exists($logfilename . ".json"); if (($pkgid == 'firmware') && ($_POST['reboot_needed'] == "yes")): ?> <script> @@ -520,9 +536,9 @@ function show_success() { $('#final').removeClass("alert-info").addClass("alert-success"); if ("<?=$_POST['mode']?>" != "reinstallall") { if ("<?=$pkgid?>" == "firmware") { - $('#final').html("<b>" + "System update" + " " + "<?=gettext(' successfully completed')?>"); + $('#final').html("<b>" + "<?=gettext('System update successfully completed')?>" + "</b>"); } else { - $('#final').html("<b>" + "<?=$pkgid?>" + " </b>" + "<?=$modetxt?>" + " " + "<?=gettext(' successfully completed')?>"); + $('#final').html("<?=$pkg_success_txt?>"); } } else { $('#final').html("<?=gettext('Reinstallation of all packages successfully completed')?>"); @@ -536,7 +552,7 @@ function show_failure() { $('#final').removeClass("alert-info"); $('#final').addClass("alert-danger"); if ("<?=$_POST['mode']?>" != "reinstallall") { - $('#final').html("<?=$pkgid?>" + " " + "<?=$modetxt?>" + " " + "<?=gettext(' failed!')?>"); + $('#final').html("<?=$pkg_fail_txt?>"); } else { $('#final').html("<?=gettext('Reinstallation of all packages failed')?>"); } @@ -547,10 +563,10 @@ function show_failure() { function show_info() { $('#final').addClass("alert-info"); if ("<?=$_POST['mode']?>" != "reinstallall") { - $('#final').html("Please wait while the " + "<?=$modetxt?>" + " of " + "<?=$pkgid?>" + " " + "completes." + "<br />" + + $('#final').html("<?=$pkg_wait_txt?>" + "<br />" + "<?=gettext("(Some packages may take several minutes!)")?>"); } else { - $('#final').html("Please wait while the reinstallation of all packages completes." + "<br />" + + $('#final').html("<?=gettext('Please wait while the reinstallation of all packages completes.')?>" + "<br />" + "<?=gettext("(Some packages may take several minutes!)")?>"); } $('#final').show(); @@ -567,7 +583,7 @@ function getLogsStatus() { url: "pkg_mgr_install.php", type: "post", data: { ajax: "ajax", - logfilename: "<?=$g['tmp_path'];?>/webgui-log", + logfilename: "<?=$logfilename?>", next_log_line: "0" } }); @@ -636,7 +652,6 @@ function scrollToBottom() { $('#output').scrollTop($('#output')[0].scrollHeight); } -var timeoutmsg = '<h4>Rebooting<br />Page will automatically reload in '; var time = 0; function checkonline() { @@ -651,17 +666,23 @@ function checkonline() { function startCountdown() { setInterval(function() { + if (time == "<?=$guitimeout?>") { + $('#countdown').html('<h4><?=sprintf(gettext("Rebooting%sPage will automatically reload in %s seconds"), "<br />", "<span id=\"secs\"></span>");?></h4>'); + } + if (time > 0) { - $('#countdown').html(timeoutmsg + time + ' seconds.</h4>'); + $('#secs').html(time); time--; } else { time = "<?=$guiretry?>"; - timeoutmsg = '<h4>Not yet ready<br />Retrying in another '; + $('#countdown').html('<h4><?=sprintf(gettext("Not yet ready%s Retrying in another %s seconds"), "<br />", "<span id=\"secs\"></span>");?></h4>'); + $('#secs').html(time); checkonline(); } }, 1000); } + events.push(function() { if ("<?=$start_polling?>") { setTimeout(getLogsStatus, 1000); diff --git a/src/usr/local/www/pkg_mgr_installed.php b/src/usr/local/www/pkg_mgr_installed.php index 483a55e..93fd475 100644 --- a/src/usr/local/www/pkg_mgr_installed.php +++ b/src/usr/local/www/pkg_mgr_installed.php @@ -67,7 +67,7 @@ require_once("pkg-utils.inc"); if (is_subsystem_dirty('packagelock')) { $pgtitle = array(gettext("System"), gettext("Package Manager")); include("head.inc"); - print_info_box_np("Please wait while packages are reinstalled in the background."); + print_info_box("Please wait while packages are reinstalled in the background."); include("foot.inc"); exit; } @@ -125,28 +125,28 @@ if (empty($installed_packages)):?> // package is configured, but does not exist in the system $txtcolor = "text-danger"; $missing = true; - $status = 'Package is configured, but not installed!'; + $status = gettext('Package is configured, but not installed!'); } else if (isset($pkg['installed_version']) && isset($pkg['version'])) { $version_compare = pkg_version_compare($pkg['installed_version'], $pkg['version']); if ($version_compare == '>') { // we're running a newer version of the package - $status = 'Newer than available ('. $pkg['version'] .')'; + $status = sprintf(gettext('Newer than available (%s)'), $pkg['version']); } else if ($version_compare == '<') { // we're running an older version of the package - $status = 'Upgrade available to '.$pkg['version']; + $status = sprintf(gettext('Upgrade available to %s'), $pkg['version']); $txtcolor = "text-warning"; $upgradeavail = true; $vergetstr = '&from=' . $pkg['installed_version'] . '&to=' . $pkg['version']; } else if ($version_compare == '=') { // we're running the current version - $status = 'Up-to-date'; + $status = gettext('Up-to-date'); } else { - $status = 'Error comparing version'; + $status = gettext('Error comparing version'); } } else { // unknown available package version - $status = 'Unknown'; + $status = gettext('Unknown'); $statusicon = 'question'; } ?> @@ -185,11 +185,11 @@ if (empty($installed_packages)):?> </td> <td> <div class="row"> - <a title="<?=gettext("Remove")?>" href="pkg_mgr_install.php?mode=delete&pkg=<?=$pkg['name']?>" class="fa fa-trash"></a> + <a title="<?=sprintf(gettext("Remove package %s"), $pkg['name'])?>" href="pkg_mgr_install.php?mode=delete&pkg=<?=$pkg['name']?>" class="fa fa-trash"></a> <?php if ($upgradeavail):?> - <a title="<?=gettext("Update")?>" href="pkg_mgr_install.php?mode=reinstallpkg&pkg=<?=$pkg['name']?><?=$vergetstr?>" class="fa fa-refresh"></a> + <a title="<?=sprintf(gettext("Update package %s"), $pkg['name'])?>" href="pkg_mgr_install.php?mode=reinstallpkg&pkg=<?=$pkg['name']?><?=$vergetstr?>" class="fa fa-refresh"></a> <?php else:?> - <a title="<?=gettext("Reinstall")?>" href="pkg_mgr_install.php?mode=reinstallpkg&pkg=<?=$pkg['name']?>" class="fa fa-retweet"></a> + <a title="<?=sprintf(gettext("Reinstall package %s"), $pkg['name'])?>" href="pkg_mgr_install.php?mode=reinstallpkg&pkg=<?=$pkg['name']?>" class="fa fa-retweet"></a> <?php endif;?> <?php if (!isset($g['disablepackageinfo']) && $pkg['www'] != 'UNKNOWN'):?> @@ -206,13 +206,13 @@ if (empty($installed_packages)):?> <br /> <div class="text-center"> <p> - <i class="fa fa-refresh"></i> = Update - <i class="fa fa-check"></i> = Current + <i class="fa fa-refresh"></i> = <?=gettext('Update')?> + <i class="fa fa-check"></i> = <?=gettext('Current')?> </p> <p> - <i class="fa fa-trash"></i> = Remove - <i class="fa fa-info"></i> = Information - <i class="fa fa-retweet"></i> = Reinstall + <i class="fa fa-trash"></i> = <?=gettext('Remove')?> + <i class="fa fa-info"></i> = <?=gettext('Information')?> + <i class="fa fa-retweet"></i> = <?=gettext('Reinstall')?> </p> <p><span class="text-warning"><?=gettext("Newer version available")?></span></p> <p><span class="text-danger"><?=gettext("Package is configured but not (fully) installed")?></span></p> diff --git a/src/usr/local/www/services_captiveportal.php b/src/usr/local/www/services_captiveportal.php index 70b1d63..c3076da 100644 --- a/src/usr/local/www/services_captiveportal.php +++ b/src/usr/local/www/services_captiveportal.php @@ -93,7 +93,7 @@ if (!is_array($config['captiveportal'])) { } $a_cp =& $config['captiveportal']; -$pgtitle = array(gettext("Services"), gettext("Captive Portal"), "Zone " . $a_cp[$cpzone]['zone'], gettext("Configuration")); +$pgtitle = array(gettext("Services"), gettext("Captive Portal"), sprintf(gettext("Zone %s"), $a_cp[$cpzone]['zone']), gettext("Configuration")); $shortcut_section = "captiveportal"; if ($_GET['act'] == "viewhtml") { @@ -920,21 +920,24 @@ $group->add(new Form_Checkbox( 'reauthenticateacct', null, 'No Accounting updates', - !$pconfig['reauthenticateacct'] + $pconfig['reauthenticateacct'] == "", + "" ))->displayasRadio(); $group->add(new Form_Checkbox( 'reauthenticateacct', null, 'Stop/start Accounting', - $pconfig['reauthenticateacct'] == 'stopstart' + $pconfig['reauthenticateacct'] == 'stopstart', + "stopstart" ))->displayasRadio(); $group->add(new Form_Checkbox( 'reauthenticateacct', null, 'Interim update', - $pconfig['reauthenticateacct'] == 'interimupdate' + $pconfig['reauthenticateacct'] == 'interimupdate', + "interimupdate" ))->displayasRadio(); $section->add($group); @@ -985,7 +988,7 @@ $section->addInput(new Form_Select( 'radiusvendor', 'Type', $pconfig['radiusvendor'], - ['default' => 'default', 'cisco' => 'cisco'] + ['default' => gettext('default'), 'cisco' => 'cisco'] ))->setHelp('If RADIUS type is set to Cisco, in Access-Requests the value of Calling-Station-ID will be set to the client\'s IP address and the ' . 'Called-Station-Id to the client\'s MAC address. Default behavior is Calling-Station-Id = client\'s MAC address and ' . 'Called-Station-ID = pfSense\'s WAN IP address.'); @@ -1009,7 +1012,7 @@ $section->addInput(new Form_Select( 'radmac_format', 'MAC address format', $pconfig['radmac_format'], - ['default' => 'Default', 'singledash' => 'Single dash', 'ietf' => 'IETF', 'cisco' => 'Cisco', 'unformatted' => 'Unformatted'] + ['default' => 'Default', 'singledash' => gettext('Single dash'), 'ietf' => 'IETF', 'cisco' => 'Cisco', 'unformatted' => gettext('Unformatted')] ))->setHelp('This option changes the MAC address format used in the whole RADIUS system. Change this if you also need to change the username format for ' . 'RADIUS MAC authentication.' . '<br />' . 'Default: 00:11:22:33:44:55' . '<br />' . diff --git a/src/usr/local/www/services_captiveportal_filemanager.php b/src/usr/local/www/services_captiveportal_filemanager.php index fcbfbbe..cbe5896 100644 --- a/src/usr/local/www/services_captiveportal_filemanager.php +++ b/src/usr/local/www/services_captiveportal_filemanager.php @@ -96,7 +96,7 @@ if (!is_array($config['captiveportal'])) { } $a_cp =& $config['captiveportal']; -$pgtitle = array(gettext("Services"), gettext("Captive Portal"), "Zone " . $a_cp[$cpzone]['zone'], gettext("File Manager")); +$pgtitle = array(gettext("Services"), gettext("Captive Portal"), sprintf(gettext("Zone %s"), $a_cp[$cpzone]['zone']), gettext("File Manager")); $shortcut_section = "captiveportal"; if (!is_array($a_cp[$cpzone]['element'])) { @@ -132,8 +132,8 @@ if ($_POST) { // check total file size if (($total_size + $size) > $g['captiveportal_element_sizelimit']) { - $input_errors[] = gettext("The total size of all files uploaded may not exceed ") . - format_bytes($g['captiveportal_element_sizelimit']) . "."; + $input_errors[] = sprintf(gettext("The total size of all files uploaded may not exceed %s."), + format_bytes($g['captiveportal_element_sizelimit'])); } if (!$input_errors) { @@ -242,7 +242,7 @@ if (is_array($a_cp[$cpzone]['element'])): ?> <tr> <th> - Total + <?=gettext("Total");?> </th> <th> <?=format_bytes($total_size);?> @@ -272,7 +272,7 @@ endif; // is provided so that you only see the notes if you ask for them ?> <div class="infoblock panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">Notes</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("Notes");?></h2></div> <div class="panel-body"> <?=gettext("Any files that you upload here with the filename prefix of captiveportal- will " . "be made available in the root directory of the captive portal HTTP(S) server. " . diff --git a/src/usr/local/www/services_captiveportal_hostname.php b/src/usr/local/www/services_captiveportal_hostname.php index 6ccf0d9..70dc3b7 100644 --- a/src/usr/local/www/services_captiveportal_hostname.php +++ b/src/usr/local/www/services_captiveportal_hostname.php @@ -92,7 +92,7 @@ if (isset($cpzone) && !empty($cpzone) && isset($a_cp[$cpzone]['zoneid'])) { $cpzoneid = $a_cp[$cpzone]['zoneid']; } -$pgtitle = array(gettext("Services"), gettext("Captive Portal"), "Zone " . $a_cp[$cpzone]['zone'], gettext("Allowed Hostnames")); +$pgtitle = array(gettext("Services"), gettext("Captive Portal"), sprintf(gettext("Zone %s"), $a_cp[$cpzone]['zone']), gettext("Allowed Hostnames")); $shortcut_section = "captiveportal"; if ($_GET['act'] == "del" && !empty($cpzone) && isset($cpzoneid)) { diff --git a/src/usr/local/www/services_captiveportal_hostname_edit.php b/src/usr/local/www/services_captiveportal_hostname_edit.php index 5d828d1..d36fc80 100644 --- a/src/usr/local/www/services_captiveportal_hostname_edit.php +++ b/src/usr/local/www/services_captiveportal_hostname_edit.php @@ -145,7 +145,7 @@ if ($_POST) { } if ($ipent['hostname'] == $_POST['hostname']) { - $input_errors[] = sprintf("[%s] %s.", $_POST['hostname'], gettext("already allowed")) ; + $input_errors[] = sprintf(gettext("Hostname [%s] already allowed."), $_POST['hostname']) ; break ; } } diff --git a/src/usr/local/www/services_captiveportal_ip.php b/src/usr/local/www/services_captiveportal_ip.php index bdba3f7..9f90c9a 100644 --- a/src/usr/local/www/services_captiveportal_ip.php +++ b/src/usr/local/www/services_captiveportal_ip.php @@ -91,7 +91,7 @@ if (isset($cpzone) && !empty($cpzone) && isset($a_cp[$cpzone]['zoneid'])) { $cpzoneid = $a_cp[$cpzone]['zoneid']; } -$pgtitle = array(gettext("Services"), gettext("Captive Portal"), "Zone " . $a_cp[$cpzone]['zone'], gettext("Allowed IP Addresses")); +$pgtitle = array(gettext("Services"), gettext("Captive Portal"), sprintf(gettext("Zone %s"), $a_cp[$cpzone]['zone']), gettext("Allowed IP Addresses")); $shortcut_section = "captiveportal"; if ($_GET['act'] == "del" && !empty($cpzone) && isset($cpzoneid)) { diff --git a/src/usr/local/www/services_captiveportal_mac.php b/src/usr/local/www/services_captiveportal_mac.php index fca42ef..b143190 100644 --- a/src/usr/local/www/services_captiveportal_mac.php +++ b/src/usr/local/www/services_captiveportal_mac.php @@ -88,11 +88,11 @@ if (!is_array($config['captiveportal'])) { } $a_cp =& $config['captiveportal']; -$pgtitle = array(gettext("Services"), gettext("Captive Portal"), "Zone " . $a_cp[$cpzone]['zone'], gettext("MAC")); +$pgtitle = array(gettext("Services"), gettext("Captive Portal"), sprintf(gettext("Zone %s"), $a_cp[$cpzone]['zone']), gettext("MAC")); $shortcut_section = "captiveportal"; -$actsmbl = array('pass' => '<font color="green" size="4">✔</font> Pass', - 'block' => '<font color="red" size="4">✘</font> Block'); +$actsmbl = array('pass' => '<font color="green" size="4">✔</font> ' . gettext("Pass"), + 'block' => '<font color="red" size="4">✘</font> ' . gettext("Block")); if ($_POST) { $pconfig = $_POST; @@ -189,7 +189,7 @@ if ($savemsg) { } if (is_subsystem_dirty('passthrumac')) { - print_info_box_np(gettext("The captive portal MAC address configuration has been changed.<br />You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The captive portal MAC address configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/services_captiveportal_mac_edit.php b/src/usr/local/www/services_captiveportal_mac_edit.php index 762c608..e71e6a4 100644 --- a/src/usr/local/www/services_captiveportal_mac_edit.php +++ b/src/usr/local/www/services_captiveportal_mac_edit.php @@ -233,7 +233,7 @@ $section->addInput(new Form_Select( 'action', 'Action', strtolower($pconfig['action']), - array('pass' => 'Pass', 'block' => 'Block') + array('pass' => gettext('Pass'), 'block' => gettext('Block')) ))->setHelp('Choose what to do with packets coming from this MAC address.'); $macaddress = new Form_Input( diff --git a/src/usr/local/www/services_captiveportal_vouchers.php b/src/usr/local/www/services_captiveportal_vouchers.php index cfc6ae9..46588a6 100644 --- a/src/usr/local/www/services_captiveportal_vouchers.php +++ b/src/usr/local/www/services_captiveportal_vouchers.php @@ -103,12 +103,12 @@ if (!is_array($config['voucher'])) { } if (empty($a_cp[$cpzone])) { - log_error("Submission on captiveportal page with unknown zone parameter: " . htmlspecialchars($cpzone)); + log_error(sprintf(gettext("Submission on captiveportal page with unknown zone parameter: %s"), htmlspecialchars($cpzone))); header("Location: services_captiveportal_zones.php"); exit; } -$pgtitle = array(gettext("Services"), gettext("Captive Portal"), "Zone " . $a_cp[$cpzone]['zone'], gettext("Vouchers")); +$pgtitle = array(gettext("Services"), gettext("Captive Portal"), sprintf(gettext("Zone %s"), $a_cp[$cpzone]['zone']), gettext("Vouchers")); $shortcut_section = "captiveportal-vouchers"; if (!is_array($config['voucher'][$cpzone]['roll'])) { @@ -258,7 +258,7 @@ if ($_POST) { $input_errors[] = gettext("Double quotes aren't allowed."); } if ($_POST['charset'] && (strpos($_POST['charset'], ",") > 0)) { - $input_errors[] = "',' " . gettext("aren't allowed."); + $input_errors[] = gettext("',' aren't allowed."); } if ($_POST['rollbits'] && (!is_numeric($_POST['rollbits']) || ($_POST['rollbits'] < 1) || ($_POST['rollbits'] > 31))) { $input_errors[] = gettext("# of Bits to store Roll Id needs to be between 1..31."); @@ -350,31 +350,31 @@ EOF; XML_RPC_encode($execcmd) ); $port = $newvoucher['vouchersyncport']; - log_error("voucher XMLRPC sync data {$url}:{$port}."); + log_error(sprintf(gettext("voucher XMLRPC sync data %s:%d"), $url, $port)); $msg = new XML_RPC_Message('pfsense.exec_php', $params); $cli = new XML_RPC_Client('/xmlrpc.php', $url, $port); $cli->setCredentials($newvoucher['vouchersyncusername'], $newvoucher['vouchersyncpass']); $resp = $cli->send($msg, "250"); if (!is_object($resp)) { - $error = "A communications error occurred while attempting CaptivePortalVoucherSync XMLRPC sync with {$url}:{$port} (pfsense.exec_php)."; + $error = sprintf(gettext("A communications error occurred while attempting CaptivePortalVoucherSync XMLRPC sync with %s:%d (pfsense.exec_php)."), $url, $port); log_error($error); - file_notice("CaptivePortalVoucherSync", $error, "Communications error occurred", ""); + file_notice("CaptivePortalVoucherSync", $error, gettext("Communications error occurred"), ""); $input_errors[] = $error; } elseif ($resp->faultCode()) { $cli->setDebug(1); $resp = $cli->send($msg, "250"); - $error = "An error code was received while attempting CaptivePortalVoucherSync XMLRPC sync with {$url}:{$port} - Code " . $resp->faultCode() . ": " . $resp->faultString(); + $error = sprintf(gettext("An error code was received while attempting CaptivePortalVoucherSync XMLRPC sync with %s:%d - Code %d: %s"), $url, $port, $resp->faultCode(), $resp->faultString()); log_error($error); - file_notice("CaptivePortalVoucherSync", $error, "Error code received", ""); + file_notice("CaptivePortalVoucherSync", $error, gettext("Error code received"), ""); $input_errors[] = $error; } else { - log_error("The Captive Portal voucher database has been synchronized with {$url}:{$port} (pfsense.exec_php)."); + log_error(sprintf(gettext("The Captive Portal voucher database has been synchronized with %s:%d (pfsense.exec_php)."), $url, $port)); } if (!$input_errors) { $toreturn = XML_RPC_Decode($resp->value()); if (!is_array($toreturn)) { if ($toreturn == "Authentication failed") { - $input_errors[] = "Could not synchronize the voucher database: Authentication Failed."; + $input_errors[] = gettext("Could not synchronize the voucher database: Authentication Failed."); } } else { // If we received back the voucher roll and other information then store it. @@ -408,7 +408,7 @@ EOF; if ($toreturn['voucher']['descrmsgexpired']) { $newvoucher['descrmsgexpired'] = $toreturn['voucher']['descrmsgexpired']; } - $savemsg = gettext("Voucher database has been synchronized from {$url}:{$port}"); + $savemsg = sprintf(gettext('Voucher database has been synchronized from %1$s:%2$s'), $url, $port); $config['voucher'][$cpzone] = $newvoucher; write_config(); @@ -446,15 +446,15 @@ display_top_tabs($tab_array, true); // We draw a simple table first, then present the controls to work with it ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">Voucher Rolls</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("Voucher Rolls");?></h2></div> <div class="panel-body"> <div class="table-responsive"> <table class="table table-striped table-hover table-condensed"> <thead> <tr> - <th><?=gettext("Roll")?> #</th> + <th><?=gettext("Roll #")?></th> <th><?=gettext("Minutes/Ticket")?></th> - <th># <?=gettext("of Tickets")?></th> + <th><?=gettext("# of Tickets")?></th> <th><?=gettext("Comment")?></th> <th><?=gettext("Action")?></th> </tr> @@ -674,7 +674,7 @@ events.push(function() { // Set initial state setShowHide($('#enable').is(":checked")); - var generateButton = $('<a class="btn btn-xs btn-default">Generate new keys</a>'); + var generateButton = $('<a class="btn btn-xs btn-default"><?=gettext("Generate new keys");?></a>'); generateButton.on('click', function() { $.ajax({ type: 'get', diff --git a/src/usr/local/www/services_captiveportal_zones.php b/src/usr/local/www/services_captiveportal_zones.php index 125bea4..53e7b4d 100644 --- a/src/usr/local/www/services_captiveportal_zones.php +++ b/src/usr/local/www/services_captiveportal_zones.php @@ -99,7 +99,7 @@ if ($savemsg) { } if (is_subsystem_dirty('captiveportal')) { - print_info_box_np(gettext("The Captive Portal entry list has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The Captive Portal entry list has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } ?> <form action="services_captiveportal_zones.php" method="post"> diff --git a/src/usr/local/www/services_captiveportal_zones_edit.php b/src/usr/local/www/services_captiveportal_zones_edit.php index fb278bb..2b57d16 100644 --- a/src/usr/local/www/services_captiveportal_zones_edit.php +++ b/src/usr/local/www/services_captiveportal_zones_edit.php @@ -90,7 +90,7 @@ if ($_POST) { foreach ($a_cp as $cpkey => $cpent) { if ($cpent['zone'] == $_POST['zone']) { - $input_errors[] = sprintf("[%s] %s.", $_POST['zone'], gettext("already exists")); + $input_errors[] = sprintf(gettext("Zone [%s] already exists."), $_POST['zone']); break; } } diff --git a/src/usr/local/www/services_dhcp.php b/src/usr/local/www/services_dhcp.php index b7075ae..682467d 100644 --- a/src/usr/local/www/services_dhcp.php +++ b/src/usr/local/www/services_dhcp.php @@ -181,6 +181,7 @@ if (is_array($dhcpdconf)) { list($pconfig['wins1'], $pconfig['wins2']) = $dhcpdconf['winsserver']; list($pconfig['dns1'], $pconfig['dns2'], $pconfig['dns3'], $pconfig['dns4']) = $dhcpdconf['dnsserver']; $pconfig['denyunknown'] = isset($dhcpdconf['denyunknown']); + $pconfig['nonak'] = isset($dhcpdconf['nonak']); $pconfig['ddnsdomain'] = $dhcpdconf['ddnsdomain']; $pconfig['ddnsdomainprimary'] = $dhcpdconf['ddnsdomainprimary']; $pconfig['ddnsdomainkeyname'] = $dhcpdconf['ddnsdomainkeyname']; @@ -292,7 +293,7 @@ if (isset($_POST['submit'])) { } if ($cpdata['timeout'] > $deftime) { $input_errors[] = sprintf(gettext( - "The Captive Portal zone '%s' has Hard Timeout parameter set to a value bigger than Default lease time (%s)."), $cpZone, $deftime); + 'The Captive Portal zone (%1$s) has Hard Timeout parameter set to a value bigger than Default lease time (%2$s).'), $cpZone, $deftime); } } } @@ -369,7 +370,7 @@ if (isset($_POST['submit'])) { } if ($_POST['staticarp'] && $noip) { - $input_errors[] = "Cannot enable static ARP when you have static map entries without IP addresses. Ensure all static maps have IP addresses and try again."; + $input_errors[] = gettext("Cannot enable static ARP when you have static map entries without IP addresses. Ensure all static maps have IP addresses and try again."); } if (is_array($pconfig['numberoptions']['item'])) { @@ -537,6 +538,7 @@ if (isset($_POST['submit'])) { $dhcpdconf['domain'] = $_POST['domain']; $dhcpdconf['domainsearchlist'] = $_POST['domainsearchlist']; $dhcpdconf['denyunknown'] = ($_POST['denyunknown']) ? true : false; + $dhcpdconf['nonak'] = ($_POST['nonak']) ? true : false; $dhcpdconf['ddnsdomain'] = $_POST['ddnsdomain']; $dhcpdconf['ddnsdomainprimary'] = $_POST['ddnsdomainprimary']; $dhcpdconf['ddnsdomainkeyname'] = $_POST['ddnsdomainkeyname']; @@ -713,7 +715,7 @@ if (isset($config['dhcrelay']['enable'])) { } if (is_subsystem_dirty('staticmaps')) { - print_info_box_np(gettext("The static mapping configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The static mapping configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } /* active tabs */ @@ -775,6 +777,14 @@ $section->addInput(new Form_Checkbox( $pconfig['denyunknown'] )); +$section->addInput(new Form_Checkbox( + 'nonak', + 'Ignore denied clients', + 'Denied clients will be ignored rather than rejected.', + $pconfig['nonak'] +)); + + if (is_numeric($pool) || ($act == "newpool")) { $section->addInput(new Form_Input( 'descr', @@ -804,7 +814,7 @@ $range_to--; $rangestr = long2ip32($range_from) . ' - ' . long2ip32($range_to); if (is_numeric($pool) || ($act == "newpool")) { - $rangestr .= '<br />' . 'In-use DHCP Pool Ranges:'; + $rangestr .= '<br />' . gettext('In-use DHCP Pool Ranges:'); if (is_array($config['dhcpd'][$if]['range'])) { $rangestr .= '<br />' . $config['dhcpd'][$if]['range']['from'] . ' - ' . $config['dhcpd'][$if]['range']['to']; } @@ -1106,55 +1116,6 @@ $section->addInput(new Form_Input( $form->add($section); -if ($pconfig['netboot']) { - $sectate = COLLAPSIBLE|SEC_OPEN; -} else { - $sectate = COLLAPSIBLE|SEC_CLOSED; -} -$section = new Form_Section("Network booting", nwkbootsec, $sectate); - -$section->addInput(new Form_Checkbox( - 'netboot', - 'Enable', - 'Enables network booting', - $pconfig['netboot'] -)); - -$section->addInput(new Form_IpAddress( - 'nextserver', - 'Next Server', - $pconfig['nextserver'] -))->setHelp('Enter the IP address of the next server'); - -$section->addInput(new Form_Input( - 'filename', - 'Default BIOS file name', - 'text', - $pconfig['filename'] -)); - -$section->addInput(new Form_Input( - 'filename32', - 'UEFI 32 bit file name', - 'text', - $pconfig['filename32'] -)); - -$section->addInput(new Form_Input( - 'filename64', - 'UEFI 64 bit file name', - 'text', - $pconfig['filename64'] -))->setHelp('You need both a filename and a boot server configured for this to work! ' . - 'You will need all three filenames and a boot server configured for UEFI to work! '); - -$section->addInput(new Form_Input( - 'rootpath', - 'Root path', - 'text', - $pconfig['rootpath'] -))->setHelp('string-format: iscsi:(servername):(protocol):(port):(LUN):targetname '); - // Advanced Additional options $btnadv = new Form_Button( 'btnadvopts', @@ -1168,15 +1129,13 @@ $section->addInput(new Form_StaticText( $btnadv )); -$form->add($section); - $section = new Form_Section('Additional BOOTP/DHCP Options'); $section->addClass('adnlopts'); $section->addInput(new Form_StaticText( null, - '<div class="alert alert-info"> ' . gettext('Enter the DHCP option number and the value for each item you would like to include in the DHCP lease information. ' . - 'For a list of available options please visit this ') . '<a href="http://www.iana.org/assignments/bootp-dhcp-parameters/" target="_blank">' . gettext("URL") . '</a></div>' + '<div class="alert alert-info"> ' . gettext('Enter the DHCP option number and the value for each item you would like to include in the DHCP lease information.') . ' ' . + sprintf(gettext('For a list of available options please visit this %1$s URL%2$s'), '<a href="http://www.iana.org/assignments/bootp-dhcp-parameters/" target="_blank">', '</a></div>') )); if (!$pconfig['numberoptions']) { @@ -1241,6 +1200,57 @@ $section->addInput(new Form_Button( $form->add($section); +if ($pconfig['netboot']) { + $sectate = COLLAPSIBLE|SEC_OPEN; +} else { + $sectate = COLLAPSIBLE|SEC_CLOSED; +} +$section = new Form_Section("Network booting", nwkbootsec, $sectate); + +$section->addInput(new Form_Checkbox( + 'netboot', + 'Enable', + 'Enables network booting', + $pconfig['netboot'] +)); + +$section->addInput(new Form_IpAddress( + 'nextserver', + 'Next Server', + $pconfig['nextserver'] +))->setHelp('Enter the IP address of the next server'); + +$section->addInput(new Form_Input( + 'filename', + 'Default BIOS file name', + 'text', + $pconfig['filename'] +)); + +$section->addInput(new Form_Input( + 'filename32', + 'UEFI 32 bit file name', + 'text', + $pconfig['filename32'] +)); + +$section->addInput(new Form_Input( + 'filename64', + 'UEFI 64 bit file name', + 'text', + $pconfig['filename64'] +))->setHelp('You need both a filename and a boot server configured for this to work! ' . + 'You will need all three filenames and a boot server configured for UEFI to work! '); + +$section->addInput(new Form_Input( + 'rootpath', + 'Root path', + 'text', + $pconfig['rootpath'] +))->setHelp('string-format: iscsi:(servername):(protocol):(port):(LUN):targetname '); + +$form->add($section); + if ($act == "newpool") { $form->addGlobal(new Form_Input( 'act', diff --git a/src/usr/local/www/services_dhcp_relay.php b/src/usr/local/www/services_dhcp_relay.php index 2ddbd6e..2f71de0 100644 --- a/src/usr/local/www/services_dhcp_relay.php +++ b/src/usr/local/www/services_dhcp_relay.php @@ -156,7 +156,7 @@ $shortcut_section = "dhcp"; include("head.inc"); if ($dhcpd_enabled) { - echo '<div class="alert alert-danger">DHCP Server is currently enabled. Cannot enable the DHCP Relay service while the DHCP Server is enabled on any interface.</div>'; + echo '<div class="alert alert-danger">' . gettext("DHCP Server is currently enabled. Cannot enable the DHCP Relay service while the DHCP Server is enabled on any interface.") . '</div>'; include("foot.inc"); exit; } diff --git a/src/usr/local/www/services_dhcpv6.php b/src/usr/local/www/services_dhcpv6.php index 676927e..6d2a2c88 100644 --- a/src/usr/local/www/services_dhcpv6.php +++ b/src/usr/local/www/services_dhcpv6.php @@ -195,7 +195,7 @@ if ($_POST) { do_input_validation($_POST, $reqdfields, $reqdfieldsn, $input_errors); if (($_POST['prefixrange_from'] && !is_ipaddrv6($_POST['prefixrange_from']))) { - $input_errors[] = gettext("A valid range must be specified."); + $input_errors[] = gettext("A valid prefix range must be specified."); } if (($_POST['prefixrange_to'] && !is_ipaddrv6($_POST['prefixrange_to']))) { $input_errors[] = gettext("A valid prefix range must be specified."); @@ -456,7 +456,7 @@ if ($dhcrelay_enabled) { } if (is_subsystem_dirty('staticmaps')) { - print_info_box_np(gettext('The static mapping configuration has been changed') . '.<br />' . gettext('You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The static mapping configuration has been changed.') . '<br />' . gettext('You must apply the changes in order for them to take effect.')); } /* active tabs */ @@ -878,16 +878,23 @@ print($form); ?> <div class="infoblock blockopen"> <?php -print_info_box(gettext('The DNS servers entered in ') . '<a href="system.php">' . gettext(' System: General setup') . '</a>' . - gettext(' (or the ') . '<a href="services_dnsmasq.php"/>' . gettext('DNS forwarder') . '</a>, ' . gettext('if enabled) ') . - gettext('will be assigned to clients by the DHCP server.') . '<br />' . - gettext('The DHCP lease table can be viewed on the ') . '<a href="status_dhcpv6_leases.php">' . - gettext('Status: DHCPv6 leases') . '</a>' . gettext(' page.'), - 'info'); +print_info_box( + sprintf( + gettext('The DNS servers entered in %1$sSystem: General setup%3$s (or the %2$sDNS forwarder%3$s if enabled) will be assigned to clients by the DHCP server.'), + '<a href="system.php">', + '<a href="services_dnsmasq.php"/>', + '</a>') . + '<br />' . + sprintf( + gettext('The DHCP lease table can be viewed on the %1$sStatus: DHCPv6 leases%2$s page.'), + '<a href="status_dhcpv6_leases.php">', + '</a>'), + 'info', + false); ?> </div> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">DHCPv6 Static Mappings for this interface.</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("DHCPv6 Static Mappings for this interface.");?></h2></div> <div class="panel-body table-responsive"> <table class="table table-striped table-hover table-condensed"> <thead> diff --git a/src/usr/local/www/services_dhcpv6_relay.php b/src/usr/local/www/services_dhcpv6_relay.php index 93ca9e9..c95b0df 100644 --- a/src/usr/local/www/services_dhcpv6_relay.php +++ b/src/usr/local/www/services_dhcpv6_relay.php @@ -118,7 +118,7 @@ if ($_POST) { if ($_POST['server']) { foreach ($_POST['server'] as $checksrv => $srv) { if (!is_ipaddrv6($srv[0])) { - $input_errors[] = gettext("A valid Destination Server IPv6 address must be specified."); + $input_errors[] = gettext("A valid Destination Server IPv6 address must be specified."); } @@ -154,7 +154,7 @@ $shortcut_section = "dhcp6"; include("head.inc"); if ($dhcpd_enabled) { - echo '<div class="alert alert-danger">DHCPv6 Server is currently enabled. Cannot enable the DHCPv6 Relay service while the DHCPv6 Server is enabled on any interface.</div>'; + echo '<div class="alert alert-danger">' . gettext("DHCPv6 Server is currently enabled. Cannot enable the DHCPv6 Relay service while the DHCPv6 Server is enabled on any interface.") . '</div>'; include("foot.inc"); exit; } diff --git a/src/usr/local/www/services_dnsmasq.php b/src/usr/local/www/services_dnsmasq.php index 72fbc50..9cdae22 100644 --- a/src/usr/local/www/services_dnsmasq.php +++ b/src/usr/local/www/services_dnsmasq.php @@ -130,7 +130,7 @@ if ($_POST) { if (isset($_POST['enable']) && isset($config['unbound']['enable'])) { if ($_POST['port'] == $config['unbound']['port']) { - $input_errors[] = "The DNS Resolver is enabled using this port. Choose a non-conflicting port, or disable DNS Resolver."; + $input_errors[] = gettext("The DNS Resolver is enabled using this port. Choose a non-conflicting port, or disable DNS Resolver."); } } @@ -225,7 +225,7 @@ if ($savemsg) { } if (is_subsystem_dirty('hosts')) { - print_info_box_np(gettext("The DNS forwarder configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The DNS forwarder configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $form = new Form(); @@ -344,17 +344,18 @@ print($form); ?> <div class="infoblock blockopen"> <?php -print_info_box(sprintf("If the DNS forwarder is enabled, the DHCP". - " service (if enabled) will automatically serve the LAN IP". - " address as a DNS server to DHCP clients so they will use". - " the forwarder. The DNS forwarder will use the DNS servers". - " entered in %sSystem: General setup%s". - " or those obtained via DHCP or PPP on WAN if the "Allow". - " DNS server list to be overridden by DHCP/PPP on WAN"". - " is checked. If you don't use that option (or if you use". - " a static IP address on WAN), you must manually specify at". - " least one DNS server on the %sSystem:". - "General setup%s page.",'<a href="system.php">','</a>','<a href="system.php">','</a>'), 'info', false); +print_info_box( + sprintf( + gettext('If the DNS forwarder is enabled, the DHCP service (if enabled) will automatically' . + ' serve the LAN IP address as a DNS server to DHCP clients so they will use the forwarder.' . + ' The DNS forwarder will use the DNS servers entered in %1$sSystem: General setup%3$s or' . + ' those obtained via DHCP or PPP on WAN if "Allow DNS server list to be overridden by DHCP/PPP on WAN" is checked.' . + ' If you don\'t use that option (or if you use a static IP address on WAN),' . + ' you must manually specify at least one DNS server on the %2$sSystem:General setup%3$s page.'), + '<a href="system.php">', + '<a href="system.php">', + '</a>'), + 'info', false); ?> </div> @@ -406,7 +407,7 @@ foreach ($a_hosts as $i => $hostent): <?=$alias['domain']?> </td> <td> - Alias for <?=$hostent['host'] ? $hostent['host'] . '.' . $hostent['domain'] : $hostent['domain']?> + <?=gettext("Alias for ");?><?=$hostent['host'] ? $hostent['host'] . '.' . $hostent['domain'] : $hostent['domain']?> </td> <td> <i class="fa fa-angle-double-right text-info"></i> @@ -435,7 +436,7 @@ endforeach; <div class="infoblock blockopen"> <?php -print_info_box(gettext("Entries in this section override individual results from the forwarders.") . +print_info_box(gettext("Entries in this section override individual results from the forwarders.") . " " . gettext("Use these for changing DNS results or for adding custom DNS records."), 'info', false); ?> </div> diff --git a/src/usr/local/www/services_dnsmasq_domainoverride_edit.php b/src/usr/local/www/services_dnsmasq_domainoverride_edit.php index b230a4b..f0ffd9c 100644 --- a/src/usr/local/www/services_dnsmasq_domainoverride_edit.php +++ b/src/usr/local/www/services_dnsmasq_domainoverride_edit.php @@ -198,7 +198,7 @@ if (isset($id) && $a_domainOverrides[$id]) { null, 'hidden', $pconfig['id'] - ))->setHelp('You may enter a description here for your reference (not parsed).'); + )); } $form->add($section); diff --git a/src/usr/local/www/services_igmpproxy.php b/src/usr/local/www/services_igmpproxy.php index 4c22271..aae82f7 100644 --- a/src/usr/local/www/services_igmpproxy.php +++ b/src/usr/local/www/services_igmpproxy.php @@ -106,7 +106,7 @@ if ($savemsg) { } if (is_subsystem_dirty('igmpproxy')) { - print_info_box_np(gettext('The IGMP entry list has been changed.' . '<br />' . 'You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The IGMP entry list has been changed.') . '<br />' . gettext('You must apply the changes in order for them to take effect.')); } ?> diff --git a/src/usr/local/www/services_ntpd.php b/src/usr/local/www/services_ntpd.php index ba54368..7892456 100644 --- a/src/usr/local/www/services_ntpd.php +++ b/src/usr/local/www/services_ntpd.php @@ -75,7 +75,7 @@ if (empty($config['ntpd']['interface'])) { is_array($config['installedpackages']['openntpd']['config'][0]) && !empty($config['installedpackages']['openntpd']['config'][0]['interface'])) { $pconfig['interface'] = explode(",", $config['installedpackages']['openntpd']['config'][0]['interface']); unset($config['installedpackages']['openntpd']); - write_config("Upgraded settings from openttpd"); + write_config(gettext("Upgraded settings from openttpd")); } else { $pconfig['interface'] = array(); } @@ -374,7 +374,7 @@ $section->addInput(new Form_Checkbox( 'Log system messages (default: disabled).', $pconfig['logsys'] ))->setHelp('These options enable additional messages from NTP to be written to the System Log ' . - '<a href="diag_logs_ntpd.php">' . 'Status > System Logs > NTP' . '</a>'); + '<a href="status_logs.php?logfile=ntpd">' . 'Status > System Logs > NTP' . '</a>'); // Statistics logging section $btnadvstats = new Form_Button( diff --git a/src/usr/local/www/services_ntpd_gps.php b/src/usr/local/www/services_ntpd_gps.php index f319d45..2781178 100644 --- a/src/usr/local/www/services_ntpd_gps.php +++ b/src/usr/local/www/services_ntpd_gps.php @@ -83,7 +83,7 @@ function set_default_gps() { $config['ntpd']['gps']['nmea'] = 0; } - write_config("Setting default NTPd settings"); + write_config(gettext("Setting default NTPd settings")); } if ($_POST) { @@ -138,8 +138,8 @@ if ($_POST) { unset($config['ntpd']['gps']['prefer']); } - if (!empty($_POST['gpsselect'])) { - $config['ntpd']['gps']['noselect'] = $_POST['gpsselect']; + if (!empty($_POST['gpsnoselect'])) { + $config['ntpd']['gps']['noselect'] = $_POST['gpsnoselect']; } elseif (isset($config['ntpd']['gps']['noselect'])) { unset($config['ntpd']['gps']['noselect']); } @@ -186,7 +186,7 @@ if ($_POST) { unset($config['ntpd']['gps']['initcmd']); } - write_config("Updated NTP GPS Settings"); + write_config(gettext("Updated NTP GPS Settings")); $retval = system_ntp_configure(); $savemsg = get_std_save_message($retval); @@ -202,11 +202,11 @@ function build_nmea_list() { $nmealist = array('options' => array(), 'selected' => array()); - $nmealist['options'][0] = 'All'; - $nmealist['options'][1] = 'RMC'; - $nmealist['options'][2] = 'GGA'; - $nmealist['options'][4] = 'GLL'; - $nmealist['options'][8] = 'ZDA or ZDG'; + $nmealist['options'][0] = gettext('All'); + $nmealist['options'][1] = gettext('RMC'); + $nmealist['options'][2] = gettext('GGA'); + $nmealist['options'][4] = gettext('GLL'); + $nmealist['options'][8] = gettext('ZDA or ZDG'); if (!$pconfig['nmea']) { array_push($nmealist['selected'], 0); @@ -245,7 +245,7 @@ $section->addInput(new Form_StaticText( ' to minimize clock drift if the GPS data is not valid over time. Otherwise ntpd may only use values from the unsynchronized local clock when providing time to clients.' )); -$gpstypes = array('Custom', 'Default', 'Generic', 'Garmin', 'MediaTek', 'SiRF', 'U-Blox', 'SureGPS'); +$gpstypes = array(gettext('Custom'), gettext('Default'), 'Generic', 'Garmin', 'MediaTek', 'SiRF', 'U-Blox', 'SureGPS'); $section->addInput(new Form_Select( 'gpstype', @@ -321,7 +321,7 @@ $section->addInput(new Form_Checkbox( )); $section->addInput(new Form_Checkbox( - 'gpsselect', + 'gpsnoselect', null, 'Do not use this clock, display for reference only (default: unchecked).', $pconfig['noselect'] @@ -530,14 +530,14 @@ events.push(function() { set_gps_default('<?=$pconfig['type']?>'); - // Checkboxes gpsprefer and gpsselect are mutually exclusive + // Checkboxes gpsprefer and gpsnoselect are mutually exclusive $('#gpsprefer').click(function() { if ($(this).is(':checked')) { - $('#gpsselect').prop('checked', false); + $('#gpsnoselect').prop('checked', false); } }); - $('#gpsselect').click(function() { + $('#gpsnoselect').click(function() { if ($(this).is(':checked')) { $('#gpsprefer').prop('checked', false); } diff --git a/src/usr/local/www/services_pppoe.php b/src/usr/local/www/services_pppoe.php index a0cf2f4..bdd4be7 100644 --- a/src/usr/local/www/services_pppoe.php +++ b/src/usr/local/www/services_pppoe.php @@ -122,7 +122,7 @@ if ($savemsg) { } if (is_subsystem_dirty('vpnpppoe')) { - print_info_box_np(gettext('The PPPoE entry list has been changed') . '.<br />' . gettext('You must apply the changes in order for them to take effect.')); + print_apply_box(gettext('The PPPoE entry list has been changed.') . '<br />' . gettext('You must apply the changes in order for them to take effect.')); } ?> diff --git a/src/usr/local/www/services_pppoe_edit.php b/src/usr/local/www/services_pppoe_edit.php index 9f37039..63d87e6 100644 --- a/src/usr/local/www/services_pppoe_edit.php +++ b/src/usr/local/www/services_pppoe_edit.php @@ -101,6 +101,7 @@ if (isset($id) && $a_pppoes[$id]) { $pconfig['mode'] = $pppoecfg['mode']; $pconfig['interface'] = $pppoecfg['interface']; $pconfig['n_pppoe_units'] = $pppoecfg['n_pppoe_units']; + $pconfig['n_pppoe_maxlogin'] = $pppoecfg['n_pppoe_maxlogin']; $pconfig['pppoe_subnet'] = $pppoecfg['pppoe_subnet']; $pconfig['pppoe_dns1'] = $pppoecfg['dns1']; $pconfig['pppoe_dns2'] = $pppoecfg['dns2']; @@ -160,6 +161,9 @@ if ($_POST) { if (!is_numericint($_POST['n_pppoe_units']) || $_POST['n_pppoe_units'] > 255) { $input_errors[] = gettext("Number of PPPoE users must be between 1 and 255"); } + if (!is_numericint($_POST['n_pppoe_maxlogin']) || $_POST['n_pppoe_maxlogin'] > 255) { + $input_errors[] = gettext("User Max Logins must be between 1 and 255"); + } if (!is_numericint($_POST['pppoe_subnet']) || $_POST['pppoe_subnet'] > 32) { $input_errors[] = gettext("Subnet mask must be an interger between 0 and 32"); } @@ -196,6 +200,7 @@ if ($_POST) { $pppoecfg['mode'] = $_POST['mode']; $pppoecfg['interface'] = $_POST['interface']; $pppoecfg['n_pppoe_units'] = $_POST['n_pppoe_units']; + $pppoecfg['n_pppoe_maxlogin'] = $_POST['n_pppoe_maxlogin']; $pppoecfg['pppoe_subnet'] = $_POST['pppoe_subnet']; $pppoecfg['descr'] = $_POST['descr']; if ($_POST['radiusserver'] || $_POST['radiusserver2']) { @@ -339,19 +344,19 @@ $section->addInput(new Form_Select( )); $section->addInput(new Form_Select( - 'pppoe_subnet', - 'Subnet mask', - $pconfig['pppoe_subnet'], - array_combine(range(0, 32, 1), range(0, 32, 1)) -))->setHelp('Hint: 24 is 255.255.255.0'); - -$section->addInput(new Form_Select( 'n_pppoe_units', - 'PPPoE User Count', + 'Total User Count', $pconfig['n_pppoe_units'], array_combine(range(1, 255, 1), range(1, 255, 1)) ))->setHelp('The number of PPPoE users allowed to connect to this server simultaneously.'); +$section->addInput(new Form_Select( + 'n_pppoe_maxlogin', + 'User Max Logins', + $pconfig['n_pppoe_maxlogin'], + array_combine(range(1, 255, 1), range(1, 255, 1)) +))->setHelp('The number of times a single user may be logged in at the same time.'); + $section->addInput(new Form_IpAddress( 'localip', 'Server Address', @@ -366,6 +371,13 @@ $section->addInput(new Form_IpAddress( $pconfig['remoteip'] ))->setHelp('Specify the starting address for the client IP address subnet'); +$section->addInput(new Form_Select( + 'pppoe_subnet', + 'Subnet mask', + $pconfig['pppoe_subnet'], + array_combine(range(0, 32, 1), range(0, 32, 1)) +))->setHelp('Hint: 24 is 255.255.255.0'); + $section->addInput(new Form_Input( 'descr', 'Description', diff --git a/src/usr/local/www/services_rfc2136_edit.php b/src/usr/local/www/services_rfc2136_edit.php index 6456072..5b74e36 100644 --- a/src/usr/local/www/services_rfc2136_edit.php +++ b/src/usr/local/www/services_rfc2136_edit.php @@ -317,8 +317,8 @@ if (isset($id) && $a_rfc2136[$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.','<a href="system.php">', '</a>')); +print_info_box(sprintf(gettext('You must configure a DNS server in %1$sSystem: ' . + 'General setup %2$sor allow the DNS server list to be overridden ' . + 'by DHCP/PPP on WAN for dynamic DNS updates to work.'), '<a href="system.php">', '</a>')); include("foot.inc"); diff --git a/src/usr/local/www/services_router_advertisements.php b/src/usr/local/www/services_router_advertisements.php index 2222ca5..c43ddcd 100644 --- a/src/usr/local/www/services_router_advertisements.php +++ b/src/usr/local/www/services_router_advertisements.php @@ -92,8 +92,8 @@ if ($config['installedpackages']['olsrd']) { } if (!$_GET['if']) { - $savemsg = "<p><b>" . gettext("The DHCPv6 Server can only be enabled on interfaces configured with static, non unique local IP addresses") . ".</b></p>" . - "<p><b>" . gettext("Only interfaces configured with a static IP will be shown") . ".</b></p>"; + $savemsg = "<p><b>" . gettext("The DHCPv6 Server can only be enabled on interfaces configured with static, non unique local IP addresses.") . "</b></p>" . + "<p><b>" . gettext("Only interfaces configured with a static IP will be shown.") . "</b></p>"; } $iflist = get_configured_interface_with_descr(); @@ -129,22 +129,25 @@ if (!is_array($pconfig['subnets'])) { $pconfig['subnets'] = array(); } -$advertise_modes = array("disabled" => "Disabled", - "router" => "Router Only", - "unmanaged" => "Unmanaged", - "managed" => "Managed", - "assist" => "Assisted", - "stateless_dhcp" => "Stateless DHCP"); -$priority_modes = array("low" => "Low", - "medium" => "Normal", - "high" => "High"); +$advertise_modes = array( + "disabled" => gettext("Disabled"), + "router" => gettext("Router Only"), + "unmanaged" => gettext("Unmanaged"), + "managed" => gettext("Managed"), + "assist" => gettext("Assisted"), + "stateless_dhcp" => gettext("Stateless DHCP")); +$priority_modes = array( + "low" => gettext("Low"), + "medium" => gettext("Normal"), + "high" => gettext("High")); $carplist = get_configured_carp_interface_list(); -$subnets_help = '<span class="help-block">' . gettext("Subnets are specified in CIDR format. " . - "Select the CIDR mask that pertains to each entry. " . - "/128 specifies a single IPv6 host; /64 specifies a normal IPv6 network; etc. " . - "If no subnets are specified here, the Router Advertisement (RA) Daemon will advertise to the subnet to which the router's interface is assigned." . - '</span>'); +$subnets_help = '<span class="help-block">' . + gettext("Subnets are specified in CIDR format. " . + "Select the CIDR mask that pertains to each entry. " . + "/128 specifies a single IPv6 host; /64 specifies a normal IPv6 network; etc. " . + "If no subnets are specified here, the Router Advertisement (RA) Daemon will advertise to the subnet to which the router's interface is assigned.") . + '</span>'; if ($_POST) { unset($input_errors); diff --git a/src/usr/local/www/services_unbound.php b/src/usr/local/www/services_unbound.php index 92b0c2f..1f882fc 100644 --- a/src/usr/local/www/services_unbound.php +++ b/src/usr/local/www/services_unbound.php @@ -137,22 +137,22 @@ if ($_POST) { if (isset($pconfig['enable']) && isset($config['dnsmasq']['enable'])) { if ($pconfig['port'] == $config['dnsmasq']['port']) { - $input_errors[] = "The DNS Forwarder is enabled using this port. Choose a non-conflicting port, or disable the DNS Forwarder."; + $input_errors[] = gettext("The DNS Forwarder is enabled using this port. Choose a non-conflicting port, or disable the DNS Forwarder."); } } if (empty($pconfig['active_interface'])) { - $input_errors[] = "One or more Network Interfaces must be selected for binding."; + $input_errors[] = gettext("One or more Network Interfaces must be selected for binding."); } else if (!isset($config['system']['dnslocalhost']) && (!in_array("lo0", $pconfig['active_interface']) && !in_array("all", $pconfig['active_interface']))) { - $input_errors[] = "This system is configured to use the DNS Resolver as its DNS server, so Localhost or All must be selected in Network Interfaces."; + $input_errors[] = gettext("This system is configured to use the DNS Resolver as its DNS server, so Localhost or All must be selected in Network Interfaces."); } if (empty($pconfig['outgoing_interface'])) { - $input_errors[] = "One or more Outgoing Network Interfaces must be selected."; + $input_errors[] = gettext("One or more Outgoing Network Interfaces must be selected."); } if (empty($pconfig['system_domain_local_zone_type'])) { - $input_errors[] = "A System Domain Local-Zone Type must be selected."; + $input_errors[] = gettext("A System Domain Local-Zone Type must be selected."); } if ($pconfig['port'] && !is_port($pconfig['port'])) { @@ -195,7 +195,7 @@ if ($_POST) { $a_unboundcfg['system_domain_local_zone_type'] = $pconfig['system_domain_local_zone_type']; $a_unboundcfg['custom_options'] = $pconfig['custom_options']; - write_config("DNS Resolver configured."); + write_config(gettext("DNS Resolver configured.")); mark_subsystem_dirty('unbound'); } @@ -230,7 +230,7 @@ function build_if_list($selectedifs) { $interface_addresses = get_possible_listen_ips(true); $iflist = array('options' => array(), 'selected' => array()); - $iflist['options']['all'] = "All"; + $iflist['options']['all'] = gettext("All"); if (empty($selectedifs) || empty($selectedifs[0]) || in_array("all", $selectedifs)) { array_push($iflist['selected'], "all"); } @@ -262,7 +262,7 @@ if ($savemsg) { } if (is_subsystem_dirty('unbound')) { - print_info_box_np(gettext("The configuration of the DNS Resolver has been changed. You must apply changes for them to take effect.")); + print_apply_box(gettext("The DNS Resolver configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); @@ -465,7 +465,7 @@ foreach ($a_hosts as $hostent): <?=$alias['domain']?> </td> <td> - Alias for <?=$hostent['host'] ? $hostent['host'] . '.' . $hostent['domain'] : $hostent['domain']?> + <?=gettext("Alias for ");?><?=$hostent['host'] ? $hostent['host'] . '.' . $hostent['domain'] : $hostent['domain']?> </td> <td> <i class="fa fa-angle-double-right text-info"></i> diff --git a/src/usr/local/www/services_unbound_acls.php b/src/usr/local/www/services_unbound_acls.php index bc8a7ab..1c94824 100644 --- a/src/usr/local/www/services_unbound_acls.php +++ b/src/usr/local/www/services_unbound_acls.php @@ -200,11 +200,10 @@ if ($_POST) { } $actionHelp = - '<span class="text-success"><strong>Deny:</strong></span> Stops queries from hosts within the netblock defined below.' . '<br />' . - '<span class="text-success"><strong>Refuse:</strong></span> Stops queries from hosts within the netblock defined below, but sends a DNS rcode REFUSED error message back to the client.' . '<br />' . - '<span class="text-success"><strong>Allow:</strong></span> Allow queries from hosts within the netblock defined below.' . '<br />' . - '<span class="text-success"><strong>Allow Snoop:</strong></span> Allow recursive and nonrecursive access from hosts within the netblock defined below. Used for cache snooping and ideally should only be configured for your administrative host.'; - + sprintf(gettext('%sDeny:%s Stops queries from hosts within the netblock defined below.%s'), '<span class="text-success"><strong>', '</strong></span>', '<br />') . + sprintf(gettext('%sRefuse:%s Stops queries from hosts within the netblock defined below, but sends a DNS rcode REFUSED error message back to the client.%s'), '<span class="text-success"><strong>', '</strong></span>', '<br />') . + sprintf(gettext('%sAllow:%s Allow queries from hosts within the netblock defined below.%s'), '<span class="text-success"><strong>', '</strong></span>', '<br />') . + sprintf(gettext('%sAllow Snoop:%s Allow recursive and nonrecursive access from hosts within the netblock defined below. Used for cache snooping and ideally should only be configured for your administrative host.'), '<span class="text-success"><strong>', '</strong></span>'); $pgtitle = array(gettext("Services"), gettext("DNS Resolver"), gettext("Access Lists")); $shortcut_section = "resolver"; @@ -219,7 +218,7 @@ if ($savemsg) { } if (is_subsystem_dirty('unbound')) { - print_info_box_np(gettext("The configuration of the DNS Resolver, has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The DNS Resolver configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); @@ -259,7 +258,7 @@ if ($act == "new" || $act == "edit") { 'aclaction', 'Action', strtolower($pconfig['aclaction']), - array('allow' => 'Allow', 'deny' => 'Deny', 'refuse' => 'Refuse', 'allow snoop' => 'Allow Snoop') + array('allow' => gettext('Allow'), 'deny' => gettext('Deny'), 'refuse' => gettext('Refuse'), 'allow snoop' => gettext('Allow Snoop')) ))->setHelp($actionHelp); $section->addInput(new Form_Input( diff --git a/src/usr/local/www/services_unbound_advanced.php b/src/usr/local/www/services_unbound_advanced.php index cfef93d..60c117f 100644 --- a/src/usr/local/www/services_unbound_advanced.php +++ b/src/usr/local/www/services_unbound_advanced.php @@ -121,43 +121,43 @@ if ($_POST) { $pconfig = $_POST; if (isset($_POST['msgcachesize']) && !in_array($_POST['msgcachesize'], array('4', '10', '20', '50', '100', '250', '512'), true)) { - $input_errors[] = "A valid value for Message Cache Size must be specified."; + $input_errors[] = gettext("A valid value for Message Cache Size must be specified."); } if (isset($_POST['outgoing_num_tcp']) && !in_array($_POST['outgoing_num_tcp'], array('0', '10', '20', '30', '40', '50'), true)) { - $input_errors[] = "A valid value must be specified for Outgoing TCP Buffers."; + $input_errors[] = gettext("A valid value must be specified for Outgoing TCP Buffers."); } if (isset($_POST['incoming_num_tcp']) && !in_array($_POST['incoming_num_tcp'], array('0', '10', '20', '30', '40', '50'), true)) { - $input_errors[] = "A valid value must be specified for Incoming TCP Buffers."; + $input_errors[] = gettext("A valid value must be specified for Incoming TCP Buffers."); } if (isset($_POST['edns_buffer_size']) && !in_array($_POST['edns_buffer_size'], array('512', '1480', '4096'), true)) { - $input_errors[] = "A valid value must be specified for EDNS Buffer Size."; + $input_errors[] = gettext("A valid value must be specified for EDNS Buffer Size."); } if (isset($_POST['num_queries_per_thread']) && !in_array($_POST['num_queries_per_thread'], array('512', '1024', '2048'), true)) { - $input_errors[] = "A valid value must be specified for Number of Queries per Thread."; + $input_errors[] = gettext("A valid value must be specified for Number of Queries per Thread."); } if (isset($_POST['jostle_timeout']) && !in_array($_POST['jostle_timeout'], array('100', '200', '500', '1000'), true)) { - $input_errors[] = "A valid value must be specified for Jostle Timeout."; + $input_errors[] = gettext("A valid value must be specified for Jostle Timeout."); } if (isset($_POST['cache_max_ttl']) && (!is_numericint($_POST['cache_max_ttl']) || ($_POST['cache_max_ttl'] < 0))) { - $input_errors[] = "'Maximum TTL for RRsets and Messages' must be a positive integer."; + $input_errors[] = gettext("'Maximum TTL for RRsets and Messages' must be a positive integer."); } if (isset($_POST['cache_min_ttl']) && (!is_numericint($_POST['cache_min_ttl']) || ($_POST['cache_min_ttl'] < 0))) { - $input_errors[] = "'Minimum TTL for RRsets and Messages' must be a positive integer."; + $input_errors[] = gettext("'Minimum TTL for RRsets and Messages' must be a positive integer."); } if (isset($_POST['infra_host_ttl']) && !in_array($_POST['infra_host_ttl'], array('60', '120', '300', '600', '900'), true)) { - $input_errors[] = "A valid value must be specified for TTL for Host Cache Entries."; + $input_errors[] = gettext("A valid value must be specified for TTL for Host Cache Entries."); } if (isset($_POST['infra_cache_numhosts']) && !in_array($_POST['infra_cache_numhosts'], array('1000', '5000', '10000', '20000', '50000'), true)) { - $input_errors[] = "A valid value must be specified for Number of Hosts to Cache."; + $input_errors[] = gettext("A valid value must be specified for Number of Hosts to Cache."); } if (isset($_POST['unwanted_reply_threshold']) && !in_array($_POST['unwanted_reply_threshold'], array('disabled', '5000000', '10000000', '20000000', '40000000', '50000000'), true)) { - $input_errors[] = "A valid value must be specified for Unwanted Reply Threshold."; + $input_errors[] = gettext("A valid value must be specified for Unwanted Reply Threshold."); } if (isset($_POST['log_verbosity']) && !in_array($_POST['log_verbosity'], array('0', '1', '2', '3', '4', '5'), true)) { - $input_errors[] = "A valid value must be specified for Log Level."; + $input_errors[] = gettext("A valid value must be specified for Log Level."); } if (isset($_POST['dnssecstripped']) && !isset($config['unbound']['dnssec'])) { - $input_errors[] = "Harden DNSSEC Data option can only be enabled if DNSSEC support is enabled."; + $input_errors[] = gettext("Harden DNSSEC Data option can only be enabled if DNSSEC support is enabled."); } if (!$input_errors) { @@ -211,7 +211,7 @@ if ($_POST) { unset($config['unbound']['use_caps']); } - write_config("DNS Resolver configured."); + write_config(gettext("DNS Resolver configured.")); mark_subsystem_dirty('unbound'); } @@ -227,11 +227,11 @@ if ($input_errors) { } if ($savemsg) { - print_info_box($savemsg, 'success'); + print_info_box($savemsg, 'success'); } if (is_subsystem_dirty('unbound')) { - print_info_box_np(gettext("The configuration of the DNS Resolver has been changed. You must apply changes for them to take effect.")); + print_apply_box(gettext("The DNS Resolver configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); @@ -340,11 +340,12 @@ $section->addInput(new Form_Input( 'The default is 0 seconds. If the minimum value kicks in, the data is cached for longer than the domain owner intended, and thus less queries are made to look up the data. ' . 'The 0 value ensures the data in the cache is as the domain owner intended. High values can lead to trouble as the data in the cache might not match up with the actual data anymore.'); +$mnt = gettext("minutes"); $section->addInput(new Form_Select( 'infra_host_ttl', 'TTL for Host Cache Entries', $pconfig['infra_host_ttl'], - array_combine(array("60", "120", "300", "600", "900"), array("1 minute", "2 minutes", "5 minutes", "10 minutes", "15 minutes")) + array_combine(array("60", "120", "300", "600", "900"), array("1 " . $mnt, "2 " . $mnt, "5 " . $mnt, "10 " . $mnt, "15 " . $mnt)) ))->setHelp('Time to Live, in seconds, for entries in the infrastructure host cache. The infrastructure host cache contains round trip timing, lameness, and EDNS support information for DNS servers. The default value is 15 minutes.'); $section->addInput(new Form_Select( @@ -354,21 +355,23 @@ $section->addInput(new Form_Select( array_combine(array("1000", "5000", "10000", "20000", "50000"), array("1000", "5000", "10000", "20000", "50000")) ))->setHelp('Number of infrastructure hosts for which information is cached. The default is 10,000.'); +$mln = gettext("million"); $section->addInput(new Form_Select( 'unwanted_reply_threshold', 'Unwanted Reply Threshold', $pconfig['unwanted_reply_threshold'], array_combine(array("disabled", "5000000", "10000000", "20000000", "40000000", "50000000"), - array("Disabled", "5 million", "10 million", "20 million", "40 million", "50 million")) + array("Disabled", "5 " . $mln, "10 " . $mln, "20 " . $mln, "40 " . $mln, "50 " . $mln)) ))->setHelp('If enabled, a total number of unwanted replies is kept track of in every thread. When it reaches the threshold, a defensive action is taken ' . 'and a warning is printed to the log file. This defensive action is to clear the RRSet and message caches, hopefully flushing away any poison. ' . 'The default is disabled, but if enabled a value of 10 million is suggested.'); +$lvl = gettext("level"); $section->addInput(new Form_Select( 'log_verbosity', 'Log Level', $pconfig['log_verbosity'], - array_combine(array("0", "1", "2", "3", "4", "5"), array("Level 0", "Level 1", "Level 2", "Level 3", "Level 4", "Level 5")) + array_combine(array("0", "1", "2", "3", "4", "5"), array($lvl + " 0", $lvl + " 1", $lvl + " 2", $lvl + " 3", $lvl + " 4", $lvl + " 5")) ))->setHelp('Select the log verbosity.'); $section->addInput(new Form_Checkbox( diff --git a/src/usr/local/www/services_wol.php b/src/usr/local/www/services_wol.php index f7a90e7..b23b81b 100644 --- a/src/usr/local/www/services_wol.php +++ b/src/usr/local/www/services_wol.php @@ -83,10 +83,10 @@ if ($_GET['wakeall'] != "") { $bcip = gen_subnet_max($ipaddr, get_interface_subnet($if)); /* Execute wol command and check return code. */ if (!mwexec("/usr/local/bin/wol -i {$bcip} {$mac}")) { - $savemsg .= sprintf(gettext('Sent magic packet to %1$s (%2$s)%3$s'), $mac, $description, ".<br />"); + $savemsg .= sprintf(gettext('Sent magic packet to %1$s (%2$s).'), $mac, $description) . "<br />"; $class = 'success'; } else { - $savemsg .= sprintf(gettext('Please check the %1$ssystem log%2$s, the wol command for %3$s (%4$s) did not complete successfully%5$s'), '<a href="/status_logs.php">', '</a>', $description, $mac, ".<br />"); + $savemsg .= sprintf(gettext('Please check the %1$ssystem log%2$s, the wol command for %3$s (%4$s) did not complete successfully.'), '<a href="/status_logs.php">', '</a>', $description, $mac) . "<br />"; $class = 'warning'; } } @@ -127,7 +127,7 @@ if ($_POST || $_GET['mac']) { $savemsg .= sprintf(gettext("Sent magic packet to %s."), $mac); $class = 'success'; } else { - $savemsg .= sprintf(gettext('Please check the %1$ssystem log%2$s, the wol command for %3$s did not complete successfully%4$s'), '<a href="/status_logs.php">', '</a>', $mac, ".<br />"); + $savemsg .= sprintf(gettext('Please check the %1$ssystem log%2$s, the wol command for %3$s did not complete successfully.'), '<a href="/status_logs.php">', '</a>', $mac) . "<br />"; $class = 'warning'; } } @@ -148,9 +148,9 @@ include("head.inc"); ?> <div class="infoblock blockopen"> <?php -print_info_box(gettext('This service can be used to wake up (power on) computers by sending special') . ' "' . gettext('Magic Packets') . '"<br />' . +print_info_box(gettext('This service can be used to wake up (power on) computers by sending special "Magic Packets".') . '<br />' . gettext('The NIC in the computer that is to be woken up must support Wake on LAN and must be properly configured (WOL cable, BIOS settings).'), - 'info'); + 'info', false); ?> </div> @@ -188,7 +188,7 @@ print $form; <div class="panel panel-default"> <div class="panel-heading"> - <h2 class="panel-title">Wake on LAN devices</h2> + <h2 class="panel-title"><?=gettext("Wake on LAN devices");?></h2> </div> <div class="panel-body"> @@ -227,7 +227,7 @@ print $form; </div> <div class="panel-footer"> <a class="btn btn-success" href="services_wol_edit.php"> - Add + <?=gettext("Add");?> </a> <a href="services_wol.php?wakeall=true" role="button" class="btn btn-primary"> diff --git a/src/usr/local/www/shortcuts/pkg_upnp.php b/src/usr/local/www/shortcuts/pkg_upnp.inc index 3ee7f81..6554e10 100644 --- a/src/usr/local/www/shortcuts/pkg_upnp.php +++ b/src/usr/local/www/shortcuts/pkg_upnp.inc @@ -4,7 +4,7 @@ global $shortcuts; $shortcuts['upnp'] = array(); $shortcuts['upnp']['main'] = "pkg_edit.php?xml=miniupnpd.xml"; -$shortcuts['upnp']['log'] = "diag_logs_routing.php"; +$shortcuts['upnp']['log'] = "status_logs.php?logfile=routing"; $shortcuts['upnp']['status'] = "status_upnp.php"; $shortcuts['upnp']['service'] = "miniupnpd"; diff --git a/src/usr/local/www/status_captiveportal.php b/src/usr/local/www/status_captiveportal.php index c497ab8..1e4c091 100644 --- a/src/usr/local/www/status_captiveportal.php +++ b/src/usr/local/www/status_captiveportal.php @@ -259,7 +259,7 @@ else: <div class="panel-heading"><h2 class="panel-title"><?=gettext("Captive Portal Status")?></h2></div> <div class="panel-body"><br /> <?php - print_info_box(gettext("No captive portal zones have been configured. You may add new zones here: ") . '<a href="services_captiveportal_zones.php">' . 'Services->Captive portal' . '</a>'); + print_info_box(sprintf(gettext('No captive portal zones have been configured. You may add new zones here: %1$sServices->Captive portal%2$s'), '<a href="services_captiveportal_zones.php">', '</a>')); ?> </div> </div> diff --git a/src/usr/local/www/status_carp.php b/src/usr/local/www/status_carp.php index 07dde06..39d2a64 100644 --- a/src/usr/local/www/status_carp.php +++ b/src/usr/local/www/status_carp.php @@ -182,16 +182,16 @@ if ($carpcount == 0) { // Sadly this needs to be here so that it is inside the form if ($carp_detected_problems > 0) { print_info_box( - gettext("CARP has detected a problem and this unit has been demoted to BACKUP status.") . "<br/>" . - gettext("Check the link status on all interfaces with configured CARP VIPs.") . "<br/>" . - gettext("Search the") . - " <a href=\"/status_logs.php?filtertext=carp%3A+demoted+by\">" . - gettext("system log") . - "</a> " . - gettext("for CARP demotion-related events.") . "<br/><br/>" . + gettext("CARP has detected a problem and this unit has been demoted to BACKUP status.") . + "<br/>" . + gettext("Check the link status on all interfaces with configured CARP VIPs.") . + "<br/>" . + sprintf(gettext('Search the %1$sSystem Log%2$s for CARP demotion-related events.'), "<a href=\"/status_logs.php?filtertext=carp%3A+demoted+by\">", "</a>") . + "<br/><br/>" . '<input type="submit" class="btn btn-warning" name="resetdemotion" id="resetdemotion" value="' . gettext("Reset CARP Demotion Status") . - '" />', 'danger' + '" />', + 'danger' ); } diff --git a/src/usr/local/www/status_dhcp_leases.php b/src/usr/local/www/status_dhcp_leases.php index 089c759..8f8be60 100644 --- a/src/usr/local/www/status_dhcp_leases.php +++ b/src/usr/local/www/status_dhcp_leases.php @@ -170,6 +170,15 @@ $i = 0; $l = 0; $p = 0; +// Translate these once so we don't do it over and over in the loops below. +$online_string = gettext("online"); +$offline_string = gettext("offline"); +$active_string = gettext("active"); +$expired_string = gettext("expired"); +$reserved_string = gettext("reserved"); +$dynamic_string = gettext("dynamic"); +$static_string = gettext("static"); + // Put everything together again foreach ($leases_content as $lease) { /* split the line by space */ @@ -198,7 +207,7 @@ foreach ($leases_content as $lease) { continue 3; case "lease": $leases[$l]['ip'] = $data[$f+1]; - $leases[$l]['type'] = "dynamic"; + $leases[$l]['type'] = $dynamic_string; $f = $f+2; break; case "starts": @@ -233,15 +242,15 @@ foreach ($leases_content as $lease) { case "binding": switch ($data[$f+2]) { case "active": - $leases[$l]['act'] = "active"; + $leases[$l]['act'] = $active_string; break; case "free": - $leases[$l]['act'] = "expired"; - $leases[$l]['online'] = "offline"; + $leases[$l]['act'] = $expired_string; + $leases[$l]['online'] = $offline_string; break; case "backup": - $leases[$l]['act'] = "reserved"; - $leases[$l]['online'] = "offline"; + $leases[$l]['act'] = $reserved_string; + $leases[$l]['online'] = $offline_string; break; } $f = $f+1; @@ -258,9 +267,9 @@ foreach ($leases_content as $lease) { $leases[$l]['mac'] = $data[$f+2]; /* check if it's online and the lease is active */ if (in_array($leases[$l]['ip'], $arpdata_ip)) { - $leases[$l]['online'] = 'online'; + $leases[$l]['online'] = $online_string; } else { - $leases[$l]['online'] = 'offline'; + $leases[$l]['online'] = $offline_string; } $f = $f+2; break; @@ -306,15 +315,15 @@ foreach ($config['interfaces'] as $ifname => $ifarr) { foreach ($config['dhcpd'][$ifname]['staticmap'] as $static) { $slease = array(); $slease['ip'] = $static['ipaddr']; - $slease['type'] = "static"; + $slease['type'] = $static_string; $slease['mac'] = $static['mac']; $slease['if'] = $ifname; $slease['start'] = ""; $slease['end'] = ""; $slease['hostname'] = htmlentities($static['hostname']); $slease['descr'] = htmlentities($static['descr']); - $slease['act'] = "static"; - $slease['online'] = in_array(strtolower($slease['mac']), $arpdata_mac) ? 'online' : 'offline'; + $slease['act'] = $static_string; + $slease['online'] = in_array(strtolower($slease['mac']), $arpdata_mac) ? $online_string : $offline_string; $slease['staticmap_array_index'] = $staticmap_array_index; $leases[] = $slease; $staticmap_array_index++; @@ -383,19 +392,19 @@ $dhcp_leases_subnet_counter = array(); //array to sum up # of leases / subnet $iflist = get_configured_interface_with_descr(); //get interface descr for # of leases foreach ($leases as $data): - if ($data['act'] != "active" && $data['act'] != "static" && $_GET['all'] != 1) { + if ($data['act'] != $active_string && $data['act'] != $static_string && $_GET['all'] != 1) { continue; } - if ($data['act'] == 'active') { + if ($data['act'] == $active_string) { $icon = 'fa-check-circle-o'; - } elseif ($data['act'] == 'expired') { + } elseif ($data['act'] == $expired_string) { $icon = 'fa-ban'; } else { $icon = 'fa-times-circle-o'; } - if ($data['act'] != "static") { + if ($data['act'] != $static_string) { $dlsc=0; foreach ($config['dhcpd'] as $dhcpif => $dhcpifconf) { if (!is_array($dhcpifconf['range'])) { @@ -428,7 +437,7 @@ foreach ($leases as $data): <?php endif; ?> </td> <td><?=htmlentities($data['hostname'])?></td> -<?php if ($data['type'] != "static"):?> +<?php if ($data['type'] != $static_string):?> <td><?=adjust_gmt($data['start'])?></td> <td><?=adjust_gmt($data['end'])?></td> <?php else: ?> @@ -437,17 +446,17 @@ foreach ($leases as $data): <td><?=$data['online']?></td> <td><?=$data['act']?></td> <td> -<?php if ($data['type'] == "dynamic"): ?> +<?php if ($data['type'] == $dynamic_string): ?> <a class="fa fa-plus-square-o" title="<?=gettext("Add static mapping")?>" href="services_dhcp_edit.php?if=<?=$data['if']?>&mac=<?=$data['mac']?>&hostname=<?=htmlspecialchars($data['hostname'])?>"></a> <?php else: ?> <a class="fa fa-pencil" title="<?=gettext('Edit static mapping')?>" href="services_dhcp_edit.php?if=<?=$data['if']?>&id=<?=$data['staticmap_array_index']?>"></a> <?php endif; ?> <a class="fa fa-plus-square" title="<?=gettext("Add WOL mapping")?>" href="services_wol_edit.php?if=<?=$data['if']?>&mac=<?=$data['mac']?>&descr=<?=htmlentities($data['hostname'])?>"></a> -<?php if ($data['online'] != "online"):?> +<?php if ($data['online'] != $online_string):?> <a class="fa fa-power-off" title="<?=gettext("Send WOL packet")?>" href="services_wol.php?if=<?=$data['if']?>&mac=<?=$data['mac']?>"></a> <?php endif; ?> -<?php if ($data['type'] == "dynamic" && $data['online'] != "online"):?> +<?php if ($data['type'] == $dynamic_string && $data['online'] != $online_string):?> <a class="fa fa-trash" title="<?=gettext('Delete lease')?>" href="status_dhcp_leases.php?deleteip=<?=$data['ip']?>&all=<?=intval($_GET['all'])?>"></a> <?php endif; ?> </td> diff --git a/src/usr/local/www/status_dhcpv6_leases.php b/src/usr/local/www/status_dhcpv6_leases.php index cd6dcb3..cbac6ef 100644 --- a/src/usr/local/www/status_dhcpv6_leases.php +++ b/src/usr/local/www/status_dhcpv6_leases.php @@ -206,6 +206,16 @@ $i = 0; $l = 0; $p = 0; +// Translate these once so we don't do it over and over in the loops below. +$online_string = gettext("online"); +$offline_string = gettext("offline"); +$active_string = gettext("active"); +$expired_string = gettext("expired"); +$reserved_string = gettext("reserved"); +$released_string = gettext("released"); +$dynamic_string = gettext("dynamic"); +$static_string = gettext("static"); + // Put everything together again while ($i < $leases_count) { $entry = array(); @@ -257,23 +267,23 @@ while ($i < $leases_count) { } else { $entry['duid'] = $data[$f+1]; } - $entry['type'] = "dynamic"; + $entry['type'] = $dynamic_string; $f = $f+2; break; case "iaaddr": $entry['ip'] = $data[$f+1]; - $entry['type'] = "dynamic"; + $entry['type'] = $dynamic_string; if (in_array($entry['ip'], array_keys($ndpdata))) { - $entry['online'] = 'online'; + $entry['online'] = $online_string; } else { - $entry['online'] = 'offline'; + $entry['online'] = $offline_string; } $f = $f+2; break; case "iaprefix": $is_prefix = true; $entry['prefix'] = $data[$f+1]; - $entry['type'] = "dynamic"; + $entry['type'] = $dynamic_string; $f = $f+2; break; case "starts": @@ -303,19 +313,19 @@ while ($i < $leases_count) { case "binding": switch ($data[$f+2]) { case "active": - $entry['act'] = "active"; + $entry['act'] = $active_string; break; case "free": - $entry['act'] = "expired"; - $entry['online'] = "offline"; + $entry['act'] = $expired_string; + $entry['online'] = $offline_string; break; case "backup": - $entry['act'] = "reserved"; - $entry['online'] = "offline"; + $entry['act'] = $reserved_string; + $entry['online'] = $offline_string; break; case "released": - $entry['act'] = "released"; - $entry['online'] = "offline"; + $entry['act'] = $released_string; + $entry['online'] = $offline_string; } $f = $f+1; break; @@ -378,11 +388,11 @@ foreach ($config['interfaces'] as $ifname => $ifarr) { $slease['start'] = ""; $slease['end'] = ""; $slease['hostname'] = htmlentities($static['hostname']); - $slease['act'] = "static"; + $slease['act'] = $static_string; if (in_array($slease['ip'], array_keys($ndpdata))) { - $slease['online'] = 'online'; + $slease['online'] = $online_string; } else { - $slease['online'] = 'offline'; + $slease['online'] = $offline_string; } $leases[] = $slease; @@ -429,7 +439,7 @@ if (count($pools) > 0) { } if (empty($leases)) { - print '<div class="alert alert-warning" role="alert">'. gettext("No leases file found. Is the DHCP server active?") .'</div>'; + print '<div class="alert alert-warning" role="alert">' . gettext("No leases file found. Is the DHCP server active?") . '</div>'; } ?> @@ -455,19 +465,19 @@ if (empty($leases)) { <tbody> <?php foreach ($leases as $data): - if ($data['act'] != "active" && $data['act'] != "static" && $_GET['all'] != 1) { + if ($data['act'] != $active_string && $data['act'] != $static_string && $_GET['all'] != 1) { continue; } - if ($data['act'] == 'active') { + if ($data['act'] == $active_string) { $icon = 'fa-check-circle-o'; - } elseif ($data['act'] == 'expired') { + } elseif ($data['act'] == $expired_string) { $icon = 'fa-ban'; } else { $icon = 'fa-times-circle-o'; } - if ($data['act'] == "static") { + if ($data['act'] == $static_string) { foreach ($config['dhcpdv6'] as $dhcpif => $dhcpifconf) { if (is_array($dhcpifconf['staticmap'])) { foreach ($dhcpifconf['staticmap'] as $staticent) { @@ -502,7 +512,7 @@ foreach ($leases as $data): <?php endif; ?> </td> <td><?=htmlentities($data['hostname'])?></td> -<?php if ($data['type'] != "static"):?> +<?php if ($data['type'] != $static_string):?> <td><?=adjust_gmt($data['start'])?></td> <td><?=adjust_gmt($data['end'])?></td> <?php else: ?> @@ -512,11 +522,11 @@ foreach ($leases as $data): <td><?=$data['online']?></td> <td><?=$data['act']?></td> <td> -<?php if ($data['type'] == "dynamic"): ?> +<?php if ($data['type'] == $dynamic_string): ?> <a <a class="fa fa-plus-square-o" title="<?=gettext("Add static mapping")?>" href="services_dhcpv6_edit.php?if=<?=$data['if']?>&duid=<?=$data['duid']?>&hostname=<?=htmlspecialchars($data['hostname'])?>"></a> <?php endif; ?> <a class="fa fa-plus-square" title="<?=gettext("Add WOL mapping")?>" href="services_wol_edit.php?if=<?=$data['if']?>&mac=<?=$data['mac']?>&descr=<?=htmlentities($data['hostname'])?>"></a> -<?php if ($data['type'] == "dynamic" && $data['online'] != "online"):?> +<?php if ($data['type'] == $dynamic_string && $data['online'] != $online_string):?> <a class="fa fa-trash" title="<?=gettext('Delete lease')?>" href="status_dhcpv6_leases.php?deleteip=<?=$data['ip']?>&all=<?=intval($_GET['all'])?>"></a> <?php endif; ?> </td> @@ -544,19 +554,19 @@ foreach ($leases as $data): <tbody> <?php foreach ($prefixes as $data): - if ($data['act'] != "active" && $data['act'] != "static" && $_GET['all'] != 1) { + if ($data['act'] != $active_string && $data['act'] != $static_string && $_GET['all'] != 1) { continue; } - if ($data['act'] == 'active') { + if ($data['act'] == $active_string) { $icon = 'fa-check-circle-o'; - } elseif ($data['act'] == 'expired') { + } elseif ($data['act'] == $expired_string) { $icon = 'fa-ban'; } else { $icon = 'fa-times-circle-o'; } - if ($data['act'] == "static") { + if ($data['act'] == $static_string) { foreach ($config['dhcpdv6'] as $dhcpif => $dhcpifconf) { if (is_array($dhcpifconf['staticmap'])) { foreach ($dhcpifconf['staticmap'] as $staticent) { @@ -590,7 +600,7 @@ foreach ($prefixes as $data): </td> <td><?=$data['iaid']?></td> <td><?=$data['duid']?></td> -<?php if ($data['type'] != "static"):?> +<?php if ($data['type'] != $static_string):?> <td><?=adjust_gmt($data['start'])?></td> <td><?=adjust_gmt($data['end'])?></td> <?php else: ?> diff --git a/src/usr/local/www/status_filter_reload.php b/src/usr/local/www/status_filter_reload.php index 9a9596b..f46e1b0 100644 --- a/src/usr/local/www/status_filter_reload.php +++ b/src/usr/local/www/status_filter_reload.php @@ -91,13 +91,13 @@ include("head.inc"); <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">Filter Reload</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("Filter Reload");?></h2></div> <div class="panel-body"> <form action="status_filter_reload.php" method="post" name="filter"> - <input type="submit" class="btn btn-success" value="Reload Filter" name="reloadfilter" id="reloadfilter" /> + <input type="submit" class="btn btn-success" value="<?=gettext("Reload Filter")?>" name="reloadfilter" id="reloadfilter" /> <?php if ($config['hasync'] && $config['hasync']["synchronizetoip"] != ""): ?> - <input type="submit" class="btn btn-default" value="Force Config Sync" name="syncfilter" id="syncfilter" /> + <input type="submit" class="btn btn-default" value="<?=gettext("Force Config Sync")?>" name="syncfilter" id="syncfilter" /> <?php endif; ?> @@ -114,7 +114,7 @@ endif; <br/> - <div id="reloadinfo"><?=gettext("This page will automatically refresh every 3 seconds until the filter is done reloading"); ?>.</div> + <div id="reloadinfo"><?=gettext("This page will automatically refresh every 3 seconds until the filter is done reloading."); ?></div> </div> </div> @@ -133,18 +133,18 @@ function update_data(obj) { result_text = result_text.replace("\n", ""); result_text = result_text.replace("\r", ""); if (result_text) { - jQuery('#status').html(result_text + '...'); + $('#status').html(result_text + '...'); } else { - jQuery('#status').html('Obtaining filter status...'); + $('#status').html('<?=gettext("Obtaining filter status...");?>'); } if (result_text == "Initializing") { - jQuery('#status').html('Initializing...'); + $('#status').html('<?=gettext("Initializing...");?>'); } else if (result_text == "Done") { - jQuery('#status').effect('highlight'); - jQuery('#status').html('Done. The filter rules have been reloaded.'); - jQuery('#reloadinfo').css("visibility", "hidden"); - jQuery('#doneurl').css("visibility", "visible"); - jQuery('#doneurl').html("<p><a href='status_queues.php'>Queue Status<\/a><\/p>"); + $('#status').effect('highlight'); + $('#status').html('<?=gettext("Done. The filter rules have been reloaded.");?>'); + $('#reloadinfo').css("visibility", "hidden"); + $('#doneurl').css("visibility", "visible"); + $('#doneurl').html("<p><a href='status_queues.php'><?=gettext("Queue Status");?><\/a><\/p>"); } window.setTimeout('update_status_thread()', 2500); } diff --git a/src/usr/local/www/status_gateways.php b/src/usr/local/www/status_gateways.php index 6c42513..cf7c652 100644 --- a/src/usr/local/www/status_gateways.php +++ b/src/usr/local/www/status_gateways.php @@ -127,7 +127,9 @@ display_top_tabs($tab_array); <td> <?php if ($gateways_status[$gname]) { - echo $gateways_status[$gname]['delay']; + if (!isset($gateway['monitor_disable'])) { + echo $gateways_status[$gname]['delay']; + } } else { echo gettext("Pending"); } @@ -136,7 +138,9 @@ display_top_tabs($tab_array); <td> <?php if ($gateways_status[$gname]) { - echo $gateways_status[$gname]['stddev']; + if (!isset($gateway['monitor_disable'])) { + echo $gateways_status[$gname]['stddev']; + } } else { echo gettext("Pending"); } @@ -145,7 +149,9 @@ display_top_tabs($tab_array); <td> <?php if ($gateways_status[$gname]) { - echo $gateways_status[$gname]['loss']; + if (!isset($gateway['monitor_disable'])) { + echo $gateways_status[$gname]['loss']; + } } else { echo gettext("Pending"); } @@ -161,10 +167,10 @@ display_top_tabs($tab_array); $online = gettext("Offline"); $bgcolor = LIGHTCORAL; } elseif (stristr($status['status'], "loss")) { - $online = gettext("Warning, Packetloss").': '.$status['loss']; + $online = gettext("Warning, Packetloss") . ': ' . $status['loss']; $bgcolor = KHAKI; } elseif (stristr($status['status'], "delay")) { - $online = gettext("Warning, Latency").': '.$status['delay']; + $online = gettext("Warning, Latency") . ': ' . $status['delay']; $bgcolor = KHAKI; } elseif ($status['status'] == "none") { $online = gettext("Online"); @@ -188,7 +194,7 @@ display_top_tabs($tab_array); <td bgcolor="<?=$bgcolor?>"> <strong><?=$online?></strong> <?php if (!empty($lastchange)) { ?> - <br /><i>Last checked <?=$lastchange?></i> + <br /><i><?=gettext("Last checked")?> <?=$lastchange?></i> <?php } ?> </td> diff --git a/src/usr/local/www/status_graph.php b/src/usr/local/www/status_graph.php index db1c5ec..8a366f3 100644 --- a/src/usr/local/www/status_graph.php +++ b/src/usr/local/www/status_graph.php @@ -84,14 +84,14 @@ if ($_POST['height']) { // Get configured interface list $ifdescrs = get_configured_interface_with_descr(); if (ipsec_enabled()) { - $ifdescrs['enc0'] = "IPsec"; + $ifdescrs['enc0'] = gettext("IPsec"); } foreach (array('server', 'client') as $mode) { if (is_array($config['openvpn']["openvpn-{$mode}"])) { foreach ($config['openvpn']["openvpn-{$mode}"] as $id => $setting) { if (!isset($setting['disable'])) { - $ifdescrs['ovpn' . substr($mode, 0, 1) . $setting['vpnid']] = gettext("OpenVPN") . " ".$mode.": ".htmlspecialchars($setting['description']); + $ifdescrs['ovpn' . substr($mode, 0, 1) . $setting['vpnid']] = gettext("OpenVPN") . " " . $mode . ": ".htmlspecialchars($setting['description']); } } } @@ -170,8 +170,8 @@ $group->add(new Form_Select( null, $cursort, array ( - 'in' => 'Bandwidth In', - 'out' => 'Bandwidth Out' + 'in' => gettext('Bandwidth In'), + 'out' => gettext('Bandwidth Out') ) ))->setHelp('Sort by'); @@ -180,9 +180,9 @@ $group->add(new Form_Select( null, $curfilter, array ( - 'local' => 'Local', - 'remote'=> 'Remote', - 'all' => 'All' + 'local' => gettext('Local'), + 'remote'=> gettext('Remote'), + 'all' => gettext('All') ) ))->setHelp('Filter'); @@ -191,10 +191,10 @@ $group->add(new Form_Select( null, $curhostipformat, array ( - '' => 'IP Address', - 'hostname' => 'Host Name', - 'descr' => 'Description', - 'fqdn' => 'FQDN' + '' => gettext('IP Address'), + 'hostname' => gettext('Host Name'), + 'descr' => gettext('Description'), + 'fqdn' => gettext('FQDN') ) ))->setHelp('Display'); @@ -225,8 +225,8 @@ function updateBandwidth() { $('#top10-hosts').append('<tr>'+ '<td>'+ hostinfo[0] +'</td>'+ - '<td>'+ hostinfo[1] +' Bits/sec</td>'+ - '<td>'+ hostinfo[2] +' Bits/sec</td>'+ + '<td>'+ hostinfo[1] +' <?=gettext("Bits/sec");?></td>'+ + '<td>'+ hostinfo[2] +' <?=gettext("Bits/sec");?></td>'+ '</tr>'); } } @@ -249,13 +249,13 @@ events.push(function() { /* link the ipsec interface magically */ if (ipsec_enabled()) { - $ifdescrs['enc0'] = "IPsec"; + $ifdescrs['enc0'] = gettext("IPsec"); } ?> <div class="panel panel-default"> <div class="panel-heading"> - <h2 class="panel-title">Traffic graph</h2> + <h2 class="panel-title"><?=gettext("Traffic graph");?></h2> </div> <div class="panel-body"> <div class="col-sm-6"> diff --git a/src/usr/local/www/status_graph_cpu.php b/src/usr/local/www/status_graph_cpu.php index 8533160..1b9d8e8 100644 --- a/src/usr/local/www/status_graph_cpu.php +++ b/src/usr/local/www/status_graph_cpu.php @@ -63,22 +63,21 @@ ##|*MATCH=status_graph_cpu.php* ##|-PRIV -$pgtitle = array(gettext("Status"), gettext("CPU load")); +$pgtitle = array(gettext("Status"), gettext("CPU Load Graph")); require("guiconfig.inc"); include("head.inc"); -$pgtitle = gettext("Status: CPU Graph"); - ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">CPU Load graph</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("CPU Load Graph");?></h2></div> <div class="panel-body text-center"> <embed src="graph_cpu.php" type="image/svg+xml" width="550" height="275" pluginspage="http://www.adobe.com/svg/viewer/install/auto" /> </div> - <p class="text-center"><strong><?=gettext("Note"); ?>:</strong><?=gettext("if you can't see the graph, you may have to install the")?> - <a href="http://www.adobe.com/svg/viewer/install/" target="_blank"><?=gettext("Adobe SVG viewer"); ?></a> + <p class="text-center"> + <strong><?=gettext("Note"); ?>:</strong> + <?=sprintf(gettext('If you cannot see the graph, you may have to install the %1$sAdobe SVG viewer%2$s'), '<a href="http://www.adobe.com/svg/viewer/install/" target="_blank">', '</a>')?> </p> </div> diff --git a/src/usr/local/www/status_ipsec.php b/src/usr/local/www/status_ipsec.php index 9b253e5..09caa2a 100644 --- a/src/usr/local/www/status_ipsec.php +++ b/src/usr/local/www/status_ipsec.php @@ -124,7 +124,7 @@ display_top_tabs($tab_array); ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">IPsec status</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("IPsec status");?></h2></div> <div class="panel-body table responsive"> <table class="table table-striped table-condensed table-hover sortable-theme-bootstrap" data-sortable> <thead> @@ -197,7 +197,7 @@ if (is_array($status)) { $identity = ""; if (!empty($ikesa['remote-id'])) { if ($ikesa['remote-id'] == '%any') { - $identity = 'Any identifier'; + $identity = htmlspecialchars(gettext('Any identifier')); } else { $identity = htmlspecialchars($ikesa['remote']['identification']); } @@ -274,13 +274,13 @@ if (is_array($status)) { <?php if ($ikesa['state'] != 'ESTABLISHED') { ?> - <a href="status_ipsec.php?act=connect&ikeid=<?=$con_id; ?>" class="btn btn-xs btn-success" data-toggle="tooltip" title="Connect VPN" > + <a href="status_ipsec.php?act=connect&ikeid=<?=$con_id; ?>" class="btn btn-xs btn-success" data-toggle="tooltip" title="<?=gettext("Connect VPN");?>" > <?=gettext("Connect VPN")?> </a> <?php } else { ?> - <a href="status_ipsec.php?act=ikedisconnect&ikeid=<?=$con_id; ?>" class="btn btn-xs btn-danger" data-toggle="tooltip" title="Disconnect VPN"> + <a href="status_ipsec.php?act=ikedisconnect&ikeid=<?=$con_id; ?>" class="btn btn-xs btn-danger" data-toggle="tooltip" title="<?=gettext("Disconnect VPN");?>"> <?=gettext("Disconnect")?> </a><br /> <?php @@ -519,5 +519,17 @@ function show_childsa(id, buttonid) { <?php unset($status); -print_info_box(gettext("You can configure IPsec ") . '<a href="vpn_ipsec.php">Here</a>'); +if (ipsec_enabled()) { +?> +<div class="infoblock"> +<?php +} else { +?> +<div class="infoblock blockopen"> +<?php +} +print_info_box(sprintf(gettext('You can configure IPsec %1$shere%2$s'), '<a href="vpn_ipsec.php">', '</a>'), 'info', false); +?> +</div> +<?php include("foot.inc"); ?> diff --git a/src/usr/local/www/status_ipsec_leases.php b/src/usr/local/www/status_ipsec_leases.php index 155f274..0778e90 100644 --- a/src/usr/local/www/status_ipsec_leases.php +++ b/src/usr/local/www/status_ipsec_leases.php @@ -152,6 +152,17 @@ if (isset($mobile['pool']) && is_array($mobile['pool'])) { print_info_box(gettext('No IPsec pools.')); } -print_info_box(gettext('You can configure your IPsec subsystem by clicking ') . '<a href="vpn_ipsec.php">' . gettext("here.") . '</a>'); - +if (ipsec_enabled()) { +?> +<div class="infoblock"> +<?php +} else { +?> +<div class="infoblock blockopen"> +<?php +} +print_info_box(sprintf(gettext('You can configure IPsec %1$shere%2$s'), '<a href="vpn_ipsec.php">', '</a>'), 'info', false); +?> +</div> +<?php include("foot.inc"); diff --git a/src/usr/local/www/status_ipsec_sad.php b/src/usr/local/www/status_ipsec_sad.php index bbc9698..e213e50 100644 --- a/src/usr/local/www/status_ipsec_sad.php +++ b/src/usr/local/www/status_ipsec_sad.php @@ -135,7 +135,7 @@ if (count($sad)) { $args .= "&proto=" . rawurlencode($sa['proto']); $args .= "&spi=" . rawurlencode("0x" . $sa['spi']); ?> - <a class="btn btn-xs btn-danger" href="status_ipsec_sad.php?act=del&<?=$args?>">Delete</a> + <a class="btn btn-xs btn-danger" href="status_ipsec_sad.php?act=del&<?=$args?>"><?=gettext('Delete')?></a> </td> </tr> @@ -149,6 +149,17 @@ if (count($sad)) { print_info_box(gettext('No IPsec security associations.')); } -print_info_box(gettext('You can configure your IPsec subsystem by clicking ') . '<a href="vpn_ipsec.php">' . gettext("here.") . '</a>'); - +if (ipsec_enabled()) { +?> +<div class="infoblock"> +<?php +} else { +?> +<div class="infoblock blockopen"> +<?php +} +print_info_box(sprintf(gettext('You can configure IPsec %1$shere%2$s'), '<a href="vpn_ipsec.php">', '</a>'), 'info', false); +?> +</div> +<?php include("foot.inc"); diff --git a/src/usr/local/www/status_ipsec_spd.php b/src/usr/local/www/status_ipsec_spd.php index 56a9acf..f051d39 100644 --- a/src/usr/local/www/status_ipsec_spd.php +++ b/src/usr/local/www/status_ipsec_spd.php @@ -100,9 +100,9 @@ if (count($spd)) { <?php foreach ($spd as $sp) { if ($sp['dir'] == 'in') { - $dirstr = LEFTARROW . ' Inbound'; + $dirstr = LEFTARROW . gettext(' Inbound'); } else { - $dirstr = RIGHTARROW . ' Outbound'; + $dirstr = RIGHTARROW . gettext(' Outbound'); } ?> <tr> @@ -133,6 +133,17 @@ if (count($spd)) { print_info_box(gettext('No IPsec security policies configured.')); } -print_info_box(gettext('You can configure your IPsec subsystem by clicking ') . '<a href="vpn_ipsec.php">' . gettext("here.") . '</a>'); - +if (ipsec_enabled()) { +?> +<div class="infoblock"> +<?php +} else { +?> +<div class="infoblock blockopen"> +<?php +} +print_info_box(sprintf(gettext('You can configure IPsec %1$shere%2$s'), '<a href="vpn_ipsec.php">', '</a>'), 'info', false); +?> +</div> +<?php include("foot.inc"); diff --git a/src/usr/local/www/status_lb_pool.php b/src/usr/local/www/status_lb_pool.php index d9917f8..57d320c 100644 --- a/src/usr/local/www/status_lb_pool.php +++ b/src/usr/local/www/status_lb_pool.php @@ -140,12 +140,12 @@ if ($_POST) { } mark_subsystem_dirty('loadbalancer'); - write_config("Updated load balancer pools via status screen."); + write_config(gettext("Updated load balancer pools via status screen.")); } } if (is_subsystem_dirty('loadbalancer')) { - print_info_box_np('The load balancer configuration has been changed You must apply the changes in order for them to take effect.'); + print_apply_box(gettext("The load balancer configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } /* active tabs */ @@ -159,7 +159,7 @@ $rowsprinted = 0; <form action="status_lb_pool.php" method="post"> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">Load Balancer Pools</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("Load Balancer Pools");?></h2></div> <div class="panel-body table-responsive"> <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> @@ -184,13 +184,13 @@ foreach ($a_pool as $pool): <?php switch ($pool['mode']) { case "loadbalance": - echo "Load balancing"; + echo gettext("Load balancing"); break; case "failover": - echo "Manual failover"; + echo gettext("Manual failover"); break; default: - echo "(default)"; + echo gettext("(default)"); } ?> </td> diff --git a/src/usr/local/www/status_lb_vs.php b/src/usr/local/www/status_lb_vs.php index 4bfe8c3..fb7849f 100644 --- a/src/usr/local/www/status_lb_vs.php +++ b/src/usr/local/www/status_lb_vs.php @@ -91,7 +91,7 @@ $tab_array[] = array(gettext("Virtual Servers"), true, "status_lb_vs.php"); display_top_tabs($tab_array); if (empty($a_vs)) { - print('<div class="alert alert-danger">No load balancers have been configured!</div>'); + print('<div class="alert alert-danger">' . gettext("No load balancers have been configured!") . '</div>'); } else { ?> <div class="table-responsive"></div> @@ -133,15 +133,15 @@ if (empty($a_vs)) { switch (trim($rdr_a[$vsent['name']]['status'])) { case 'active': $bgcolor = LIGHTGREEN; - $rdr_a[$vsent['name']]['status'] = "Active"; + $rdr_a[$vsent['name']]['status'] = gettext("Active"); break; case 'down': $bgcolor = LIGHTCORAL; - $rdr_a[$vsent['name']]['status'] = "Down"; + $rdr_a[$vsent['name']]['status'] = gettext("Down"); break; default: $bgcolor = LIGHTGRAY; - $rdr_a[$vsent['name']]['status'] = 'Unknown - relayd not running?'; + $rdr_a[$vsent['name']]['status'] = gettext('Unknown - relayd not running?'); } if (!COLOR) { @@ -153,19 +153,13 @@ if (empty($a_vs)) { <?php if (!empty($rdr_a[$vsent['name']]['total'])) { -?> - Total Sessions: <?=$rdr_a[$vsent['name']]['total']?><br>/> -<?php + echo sprintf(gettext("Total Sessions: %s"), $rdr_a[$vsent['name']]['total'] . "<br />"); } if (!empty($rdr_a[$vsent['name']]['last'])) { -?> - Last: <?=$rdr_a[$vsent['name']]['last']?><br>/> -<?php + echo sprintf(gettext("Last: %s"), $rdr_a[$vsent['name']]['last'] . "<br />"); } if (!empty($rdr_a[$vsent['name']]['average'])) { -?> - Average: <?=$rdr_a[$vsent['name']]['average']?> -<?php + echo sprintf(gettext("Average: %s"), $rdr_a[$vsent['name']]['average']); } ?> </td> diff --git a/src/usr/local/www/status_logs.php b/src/usr/local/www/status_logs.php index 35e969e..fe9cd29 100755 --- a/src/usr/local/www/status_logs.php +++ b/src/usr/local/www/status_logs.php @@ -71,29 +71,29 @@ Build a list of allowed log files so we can reject others to prevent the page from acting on unauthorized files. */ $allowed_logs = array( - "system" => array("name" => "General", + "system" => array("name" => gettext("General"), "shortcut" => ""), - "dhcpd" => array("name" => "DHCP", + "dhcpd" => array("name" => gettext("DHCP"), "shortcut" => "dhcp"), - "portalauth" => array("name" => "Captive Portal Authentication", + "portalauth" => array("name" => gettext("Captive Portal Authentication"), "shortcut" => "captiveportal"), - "ipsec" => array("name" => "IPsec", + "ipsec" => array("name" => gettext("IPsec"), "shortcut" => "ipsec"), - "ppp" => array("name" => "PPP", + "ppp" => array("name" => gettext("PPP"), "shortcut" => ""), - "relayd" => array("name" => "Load Balancer", + "relayd" => array("name" => gettext("Load Balancer"), "shortcut" => "relayd"), - "openvpn" => array("name" => "OpenVPN", + "openvpn" => array("name" => gettext("OpenVPN"), "shortcut" => "openvpn"), - "ntpd" => array("name" => "NTPd", + "ntpd" => array("name" => gettext("NTPd"), "shortcut" => "ntp"), - "gateways" => array("name" => "Gateways", + "gateways" => array("name" => gettext("Gateways"), "shortcut" => "gateways"), - "routing" => array("name" => "Routing", + "routing" => array("name" => gettext("Routing"), "shortcut" => "routing"), - "resolver" => array("name" => "DNS Resolver", + "resolver" => array("name" => gettext("DNS Resolver"), "shortcut" => "resolver"), - "wireless" => array("name" => "Wireless", + "wireless" => array("name" => gettext("Wireless"), "shortcut" => "wireless"), ); @@ -149,24 +149,14 @@ filter_form_system(); // Now the forms are complete we can draw the log table and its controls if (!$rawfilter) { - if ($filterlogentries_submit) { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filterfieldsarray); - } else { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filtertext); - } + system_log_filter(); ?> <div class="panel panel-default"> <div class="panel-heading"> <h2 class="panel-title"> <?php - if ((!$filtertext) && (!$filterfieldsarray)) { - printf(gettext("Last %d %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); - } else { - printf(gettext("%d matched %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); - } - - printf(" (" . gettext("Maximum %d") . ")", $nentries); + print(system_log_table_panel_title()); ?> </h2> </div> @@ -216,7 +206,13 @@ if (!$rawfilter) { } else { ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title"><?=gettext("Last ")?><?=$nentries?> <?=gettext($allowed_logs[$logfile]["name"])?><?=gettext(" log entries")?></h2></div> + <div class="panel-heading"> + <h2 class="panel-title"> +<?php + print(system_log_table_panel_title()); +?> + </h2> + </div> <div class="table table-responsive"> <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> @@ -233,14 +229,19 @@ if (!$rawfilter) { $inverse = null; } - if ($filtertext) { - $rows = dump_clog($logfile_path, $nentries, true, array("$filtertext"), $inverse); - } else { - $rows = dump_clog($logfile_path, $nentries, true, array(), $inverse); - } + system_log_filter(); ?> </tbody> </table> + +<script type="text/javascript"> +//<![CDATA[ +events.push(function() { + $("#count").html(<?=$rows?>); +}); +//]]> +</script> + <?php if ($rows == 0) { print_info_box(gettext('No logs to display')); diff --git a/src/usr/local/www/status_logs_common.inc b/src/usr/local/www/status_logs_common.inc index 1e4a930..0636064 100644 --- a/src/usr/local/www/status_logs_common.inc +++ b/src/usr/local/www/status_logs_common.inc @@ -153,6 +153,54 @@ function tab_array_logs_common() { } +// Log Table header +function system_log_table_panel_title() { + global $rawfilter, $filtersubmit, $filterlogentries_submit, $filterlog, $nentries; + global $allowed_logs, $logfile; + + $rtnstr = ''; + + if ($rawfilter) { + if (($filtersubmit) || ($filterlogentries_submit)) { + $rtnstr .= sprintf(gettext("%s matched %s log entries."), "<span id='count'>_ _</span>", gettext($allowed_logs[$logfile]["name"])); + } else { + $rtnstr .= sprintf(gettext("Last %s %s log entries."), "<span id='count'>_ _</span>", gettext($allowed_logs[$logfile]["name"])); + } + } else { + if (($filtersubmit) || ($filterlogentries_submit)) { + $rtnstr .= sprintf(gettext("%d matched %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); + } else { + $rtnstr .= sprintf(gettext("Last %d %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); + } + } + + $rtnstr .= sprintf(" (" . gettext("Maximum %d") . ")", $nentries); + + return $rtnstr; +} + + +// Log Filter +function system_log_filter() { + global $rawfilter, $filtersubmit, $filterlogentries_submit, $filterlog, $nentries; + global $logfile_path, $filtertext, $filterfieldsarray, $interfacefilter, $inverse, $rows; + + if ($rawfilter) { + if (($filtersubmit) || ($filterlogentries_submit)) { + $rows = dump_clog($logfile_path, $nentries, true, array("$filtertext"), $inverse); + } else { + $rows = dump_clog($logfile_path, $nentries, true, array(), $inverse); + } + } else { + if (($filtersubmit) || ($filterlogentries_submit)) { + $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filterfieldsarray); + } else { + $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filtertext, $interfacefilter); + } + } +} + + // Log Filter Submit - System function log_filter_form_system_submit() { @@ -682,12 +730,12 @@ function manage_log_code() { // If any of the logging settings were changed then backup and sync (standard write_config). Otherwise only write config (don't backup, don't sync). if ($logging_changed) { - write_config($desc = "Log Display Settings Saved: " . gettext($allowed_logs[$logfile]["name"]), $backup = true, $write_config_only = false); + write_config($desc = gettext("Log Display Settings Saved: ") . gettext($allowed_logs[$logfile]["name"]), $backup = true, $write_config_only = false); $retval = 0; $retval = system_syslogd_start(); $savemsg = gettext("The changes have been applied successfully."); } else { - write_config($desc = "Log Display Settings Saved (no backup, no sync): " . gettext($allowed_logs[$logfile]["name"]), $backup = false, $write_config_only = true); + write_config($desc = gettext("Log Display Settings Saved (no backup, no sync): ") . gettext($allowed_logs[$logfile]["name"]), $backup = false, $write_config_only = true); $savemsg = ''; } @@ -896,9 +944,9 @@ function manage_log_section() { 'Where to show rule descriptions', !isset($pconfig['filterdescriptions']) ? '0':$pconfig['filterdescriptions'], array( - '0' => 'Dont load descriptions', - '1' => 'Display as column', - '2' => 'Display as second row' + '0' => gettext('Dont load descriptions'), + '1' => gettext('Display as column'), + '2' => gettext('Display as second row') ) ))->setHelp('Show the applied rule description below or in the firewall log rows' . '<br />' . 'Displaying rule descriptions for all lines in the log might affect performance with large rule sets'); diff --git a/src/usr/local/www/status_logs_filter.php b/src/usr/local/www/status_logs_filter.php index e964442..e1883d3 100644 --- a/src/usr/local/www/status_logs_filter.php +++ b/src/usr/local/www/status_logs_filter.php @@ -163,24 +163,14 @@ if (!$rawfilter) { $interfacefilter = $iflist[$interfacefilter]; } - if ($filterlogentries_submit) { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filterfieldsarray); - } else { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filtertext, $interfacefilter); - } + system_log_filter(); ?> <div class="panel panel-default"> <div class="panel-heading"> <h2 class="panel-title"> <?php - if ((!$filtertext) && (!$filterfieldsarray)) { - printf(gettext("Last %d %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); - } else { - printf(gettext("%d matched %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); - } - - printf(" (" . gettext("Maximum %d") . ")", $nentries); + print(system_log_table_panel_title()); ?> </h2> </div> @@ -325,7 +315,13 @@ if (!$rawfilter) { } else { ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title"><?=gettext("Last ")?><?=$nentries?> <?=gettext($allowed_logs[$logfile]["name"])?><?=gettext(" log entries")?></h2></div> + <div class="panel-heading"> + <h2 class="panel-title"> +<?php + print(system_log_table_panel_title()); +?> + </h2> + </div> <div class="table table-responsive"> <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> @@ -336,14 +332,19 @@ if (!$rawfilter) { </thead> <tbody> <?php - if ($filtertext) { - $rows = dump_clog($logfile_path, $nentries, true, array("$filtertext")); - } else { - $rows = dump_clog($logfile_path, $nentries, true, array()); - } + system_log_filter(); ?> </tbody> </table> + +<script type="text/javascript"> +//<![CDATA[ +events.push(function() { + $("#count").html(<?=$rows?>); +}); +//]]> +</script> + <?php if ($rows == 0) { print_info_box(gettext('No logs to display')); @@ -398,7 +399,7 @@ function resolve_ip_callback(transport) { var resolve_class = htmlspecialchars(response.resolve_ip.replace(/[.:]/g, '-')); var resolve_text = '<small><br />' + htmlspecialchars(response.resolve_text) + '<\/small>'; - jQuery('span.RESOLVE-' + resolve_class).html(resolve_text); + $('span.RESOLVE-' + resolve_class).html(resolve_text); } // From http://stackoverflow.com/questions/5499078/fastest-method-to-escape-html-tags-as-html-entities diff --git a/src/usr/local/www/status_logs_filter_dynamic.php b/src/usr/local/www/status_logs_filter_dynamic.php index b4be38a..08b86ec 100755 --- a/src/usr/local/www/status_logs_filter_dynamic.php +++ b/src/usr/local/www/status_logs_filter_dynamic.php @@ -131,16 +131,16 @@ if ($system_logs_manage_log_form_hidden) { } +// Force the formatted mode filter and form. Raw mode is not applicable in the dynamic view. +$rawfilter = false; + + // Log Filter Submit - Firewall filter_form_firewall(); // Now the forms are complete we can draw the log table and its controls -if ($filterlogentries_submit) { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filterfieldsarray); -} else { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filtertext, $interfacefilter); -} +system_log_filter(); ?> <script type="text/javascript"> @@ -168,15 +168,11 @@ if ($filterlogentries_submit) { $specific_log = basename($logfile, '.log') . '_settings'; if ($config['syslog'][$specific_log]['cronorder'] == 'forward') $reverse = false; if ($config['syslog'][$specific_log]['cronorder'] == 'reverse') $reverse = true; - - if ($reverse) { - echo "var isReverse = true;\n"; - } else { - echo "var isReverse = false;\n"; - } ?> var filter_query_string = "<?=$filter_query_string . '&logfile=' . $logfile_path . '&nentries=' . $nentries?>"; + var isReverse = "<?=$reverse?>"; + /* Called by the AJAX updater */ function format_log_line(row) { if (row[8] == '6') { @@ -301,7 +297,7 @@ function in_arrayi(needle, haystack) { } function update_table_rows(data) { - if (isPaused) { + if ((isPaused) || (data.length < 1)) { return; } @@ -322,7 +318,7 @@ function update_table_rows(data) { data = data.slice(startat, data.length); - var rows = jQuery('#filter-log-entries>tr'); + var rows = $('#filter-log-entries>tr'); // Number of rows to move by var move = rows.length + data.length - nentries; @@ -331,43 +327,48 @@ function update_table_rows(data) { move = 0; } + if (($("#count").text() == 0) && (data.length < nentries)){ + move += rows.length; + } + + var tr_classes = 'text-nowrap'; + if (isReverse == false) { for (var i = move; i < rows.length; i++) { - jQuery(rows[i - move]).html(jQuery(rows[i]).html()); + $(rows[i - move]).html($(rows[i]).html()); } - var tbody = jQuery('#filter-log-entries'); + var tbody = $('#filter-log-entries'); for (var i = 0; i < data.length; i++) { var rowIndex = rows.length - move + i; if (rowIndex < rows.length) { - jQuery(rows[rowIndex]).html(data[i]); + $(rows[rowIndex]).html(data[i]); + $(rows[rowIndex]).className = tr_classes; } else { - jQuery(tbody).append('<tr>' + data[i] + '</tr>'); + $(tbody).append('<tr class="' + tr_classes + '">' + data[i] + '</tr>'); } } } else { for (var i = rows.length - 1; i >= move; i--) { - jQuery(rows[i]).html(jQuery(rows[i - move]).html()); + $(rows[i]).html($(rows[i - move]).html()); } - var tbody = jQuery('#filter-log-entries'); + var tbody = $('#filter-log-entries'); for (var i = 0; i < data.length; i++) { var rowIndex = move - 1 - i; if (rowIndex >= 0) { - jQuery(rows[rowIndex]).html(data[i]); + $(rows[rowIndex]).html(data[i]); + $(rows[rowIndex]).className = tr_classes; } else { - jQuery(tbody).prepend('<tr>' + data[i] + '</tr>'); + $(tbody).prepend('<tr class="' + tr_classes + '">' + data[i] + '</tr>'); } } } - // Much easier to go through each of the rows once they've all be added. - rows = jQuery('#filter-log-entries>tr'); - for (var i = 0; i < rows.length; i++) { - rows[i].className = i % 2 == 0 ? 'listMRodd' : 'listMReven'; - } + var rowCount = $('#filter-log-entries>tr').length; + $("#count").html(rowCount); $('.fa').tooltip(); } @@ -404,7 +405,13 @@ function toggleListDescriptions() { <div class="panel panel-default"> <div class="panel-heading"> <h2 class="panel-title"> - <?=gettext('Last ') . $nentries . gettext(' records. ') . gettext('Pause ')?><input type="checkbox" onclick="javascript:toggle_pause();" /> +<?php + // Force the raw mode table panel title so that JQuery can update it dynamically. + $rawfilter = true; + + print(system_log_table_panel_title()); +?> +<?=" " . gettext('Pause') . " "?><input type="checkbox" onclick="javascript:toggle_pause();" /> </h2> </div> <div class="panel-body"> @@ -426,7 +433,6 @@ function toggleListDescriptions() { $tcpcnt = 0; foreach ($filterlog as $filterent) { - $evenRowClass = $rowIndex % 2 ? " listMReven" : " listMRodd"; $rowIndex++; if ($filterent['version'] == '6') { $srcIP = "[" . htmlspecialchars($filterent['srcip']) . "]"; @@ -474,8 +480,24 @@ function toggleListDescriptions() { <?php } // e-o-foreach() ?> +<?php + if (count($filterlog) == 0) { + print '<tr class="text-nowrap"><td colspan=6>'; + print_info_box(gettext('No logs to display')); + print '</td></tr>'; + } +?> </tbody> </table> + +<script type="text/javascript"> +//<![CDATA[ +events.push(function() { + $("#count").html(<?=count($filterlog);?>); +}); +//]]> +</script> + </div> </div> </div> diff --git a/src/usr/local/www/status_logs_filter_summary.php b/src/usr/local/www/status_logs_filter_summary.php index 416bcd8..efa7d15 100644 --- a/src/usr/local/www/status_logs_filter_summary.php +++ b/src/usr/local/www/status_logs_filter_summary.php @@ -209,7 +209,7 @@ function stat_block($summary, $stat, $num) { $numentries++; $outstr = $k[$i]; if (is_ipaddr($outstr)) { - print('<tr><td>' . $outstr . '</td>' . '<td>' . $summary[$stat][$k[$i]] . '</td><td><a href="diag_dns.php?host=' . $outstr . '" class="btn btn-xs btn-success" title="' . gettext("Reverse Resolve with DNS") . '">Lookup</a></td></tr>'); + print('<tr><td>' . $outstr . '</td>' . '<td>' . $summary[$stat][$k[$i]] . '</td><td><a href="diag_dns.php?host=' . $outstr . '" class="btn btn-xs btn-success" title="' . gettext("Reverse Resolve with DNS") . '">' . gettext("Lookup") . '</a></td></tr>'); } elseif (substr_count($outstr, '/') == 1) { list($proto, $port) = explode('/', $outstr); diff --git a/src/usr/local/www/status_logs_settings.php b/src/usr/local/www/status_logs_settings.php index c11fcad..587b281 100644 --- a/src/usr/local/www/status_logs_settings.php +++ b/src/usr/local/www/status_logs_settings.php @@ -320,9 +320,9 @@ $section->addInput(new Form_Select( 'Where to show rule descriptions', !isset($pconfig['filterdescriptions']) ? '0':$pconfig['filterdescriptions'], array( - '0' => 'Dont load descriptions', - '1' => 'Display as column', - '2' => 'Display as second row' + '0' => gettext('Dont load descriptions'), + '1' => gettext('Display as column'), + '2' => gettext('Display as second row') ) ))->setHelp('Show the applied rule description below or in the firewall log rows' . '<br />' . 'Displaying rule descriptions for all lines in the log might affect performance with large rule sets'); diff --git a/src/usr/local/www/status_logs_vpn.php b/src/usr/local/www/status_logs_vpn.php index cce15dd..30d4e7b 100644 --- a/src/usr/local/www/status_logs_vpn.php +++ b/src/usr/local/www/status_logs_vpn.php @@ -72,11 +72,11 @@ Build a list of allowed log files so we can reject others to prevent the page from acting on unauthorized files. */ $allowed_logs = array( - "vpn" => array("name" => "VPN Logins", + "vpn" => array("name" => gettext("VPN Logins"), "shortcut" => "poes"), - "poes" => array("name" => "PPPoE Service", + "poes" => array("name" => gettext("PPPoE Service"), "shortcut" => "pppoes"), - "l2tps" => array("name" => "L2TP Service", + "l2tps" => array("name" => gettext("L2TP Service"), "shortcut" => "l2tps"), ); @@ -94,8 +94,8 @@ if (!$_GET['logfile']) { } } -if ($vpntype == 'poes') { $allowed_logs['vpn']['name'] = "PPPoE Logins"; } -if ($vpntype == 'l2tp') { $allowed_logs['vpn']['name'] = "L2TP Logins"; } +if ($vpntype == 'poes') { $allowed_logs['vpn']['name'] = gettext("PPPoE Logins"); } +if ($vpntype == 'l2tp') { $allowed_logs['vpn']['name'] = gettext("L2TP Logins"); } // Log Filter Submit - VPN @@ -139,11 +139,7 @@ filter_form_vpn(); // Now the forms are complete we can draw the log table and its controls if (!$rawfilter) { - if ($filterlogentries_submit) { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filterfieldsarray); - } else { - $filterlog = conv_log_filter($logfile_path, $nentries, $nentries + 100, $filtertext); - } + system_log_filter(); // Remove those not of the selected vpn type (poes / l2tp). if ($logfile == "vpn") { @@ -159,13 +155,7 @@ if (!$rawfilter) { <div class="panel-heading"> <h2 class="panel-title"> <?php - if ((!$filtertext) && (!$filterfieldsarray)) { - printf(gettext("Last %d %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); - } else { - printf(gettext("%d matched %s log entries."), count($filterlog), gettext($allowed_logs[$logfile]["name"])); - } - - printf(" (" . gettext("Maximum %d") . ")", $nentries); + print(system_log_table_panel_title()); ?> </h2> </div> @@ -260,11 +250,26 @@ if (!$rawfilter) { } else { ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title"><?=gettext("Last ")?><?=$nentries?> <?=gettext($allowed_logs[$logfile]["name"])?><?=gettext(" log entries")?></h2></div> + <div class="panel-heading"> + <h2 class="panel-title"> +<?php + print(system_log_table_panel_title()); +?> + </h2> + </div> <div class="panel-body"> <pre><?php $rows = dump_clog_no_table($logfile_path, $nentries, true, array($filtertext)); ?></pre> + +<script type="text/javascript"> +//<![CDATA[ +events.push(function() { + $("#count").html(<?=$rows?>); +}); +//]]> +</script> + <?php if ($rows == 0) { print_info_box(gettext('No logs to display')); diff --git a/src/usr/local/www/status_ntpd.php b/src/usr/local/www/status_ntpd.php index c231908..e1fe2b9 100644 --- a/src/usr/local/www/status_ntpd.php +++ b/src/usr/local/www/status_ntpd.php @@ -81,28 +81,28 @@ if (!isset($config['ntpd']['noquery'])) { switch (substr($line, 0, 1)) { case " ": - $server['status'] = "Unreach/Pending"; + $server['status'] = gettext("Unreach/Pending"); break; case "*": - $server['status'] = "Active Peer"; + $server['status'] = gettext("Active Peer"); break; case "+": - $server['status'] = "Candidate"; + $server['status'] = gettext("Candidate"); break; case "o": - $server['status'] = "PPS Peer"; + $server['status'] = gettext("PPS Peer"); break; case "#": - $server['status'] = "Selected"; + $server['status'] = gettext("Selected"); break; case ".": - $server['status'] = "Excess Peer"; + $server['status'] = gettext("Excess Peer"); break; case "x": - $server['status'] = "False Ticker"; + $server['status'] = gettext("False Ticker"); break; case "-": - $server['status'] = "Outlier"; + $server['status'] = gettext("Outlier"); break; } @@ -190,7 +190,7 @@ include("head.inc"); ?> <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">Network Time Protocol Status</h2></div> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("Network Time Protocol Status");?></h2></div> <div class="panel-body"> <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> @@ -209,38 +209,45 @@ include("head.inc"); </tr> </thead> <tbody> - <?php if (isset($config['ntpd']['noquery'])): ?> +<?php + if (isset($config['ntpd']['noquery'])): +?> <tr> <td class="warning" colspan="11"> - Statistics unavailable because ntpq and ntpdc queries are disabled in the <a href="services_ntpd.php">NTP service settings</a>. + <?=sprintf(gettext("Statistics unavailable because ntpq and ntpdc queries are disabled in the %sNTP service settings%s"), '<a href="services_ntpd.php">', '</a>');?> </td> </tr> - <?php elseif (count($ntpq_servers) == 0): ?> +<?php + elseif (count($ntpq_servers) == 0): +?> <tr> <td class="warning" colspan="11"> - No peers found, <a href="status_services.php">is the ntp service running?</a> + <?=sprintf(gettext("No peers found, %sis the ntp service running?%s"), '<a href="status_services.php">', '</a>');?> </td> </tr> - <?php else: +<?php + else: - $i = 0; - foreach ($ntpq_servers as $server): ?> - <tr> - <td><?=$server['status']?></td> - <td><?=$server['server']?></td> - <td><?=$server['refid']?></td> - <td><?=$server['stratum']?></td> - <td><?=$server['type']?></td> - <td><?=$server['when']?></td> - <td><?=$server['poll']?></td> - <td><?=$server['reach']?></td> - <td><?=$server['delay']?></td> - <td><?=$server['offset']?></td> - <td><?=$server['jitter']?></td> - </tr> <?php - $i++; - endforeach; - endif; + $i = 0; + foreach ($ntpq_servers as $server): +?> + <tr> + <td><?=$server['status']?></td> + <td><?=$server['server']?></td> + <td><?=$server['refid']?></td> + <td><?=$server['stratum']?></td> + <td><?=$server['type']?></td> + <td><?=$server['when']?></td> + <td><?=$server['poll']?></td> + <td><?=$server['reach']?></td> + <td><?=$server['delay']?></td> + <td><?=$server['offset']?></td> + <td><?=$server['jitter']?></td> + </tr> +<?php + $i++; + endforeach; + endif; ?> </tbody> </table> @@ -252,13 +259,14 @@ include("head.inc"); // GPS satellite information (if available) if (($gps_ok) && ($gps_lat) && ($gps_lon)): - $gps_goo_lnk = 2; ?> + $gps_goo_lnk = 2; +?> - <div class="panel panel-default"> - <div class="panel-heading"><h2 class="panel-title">GPS information</h2></div> - <div class="panel-body"> - <table class="table table-striped table-hover table-condensed"> - <thead> +<div class="panel panel-default"> + <div class="panel-heading"><h2 class="panel-title"><?=gettext("GPS information");?></h2></div> + <div class="panel-body"> + <table class="table table-striped table-hover table-condensed"> + <thead> <tr> <th> <?=gettext("Clock Latitude"); ?> @@ -266,61 +274,76 @@ if (($gps_ok) && ($gps_lat) && ($gps_lon)): <th> <?=gettext("Clock Longitude"); ?> </th> - <?php if (isset($gps_alt)) { ?> - <th> - <?=gettext("Clock Altitude")?> - </th> - <?php $gps_goo_lnk++; - } +<?php + if (isset($gps_alt)) { +?> + <th> + <?=gettext("Clock Altitude")?> + </th> +<?php + $gps_goo_lnk++; + } - if (isset($gps_sat) || isset($gps_satview)) { ?> - <th> - <?=gettext("Satellites")?> - </th> <?php - $gps_goo_lnk++; - }?> - </tr> - </thead> + if (isset($gps_sat) || isset($gps_satview)) { +?> + <th> + <?=gettext("Satellites")?> + </th> +<?php + $gps_goo_lnk++; + } +?> + </tr> + </thead> - <tbody> - <tr> - <td> - <?=printf("%.5f", $gps_lat); ?> (<?=printf("%d", $gps_lat_deg); ?>° <?=printf("%.5f", $gps_lat_min*60); ?><?=$gps_vars[4]; ?>) - </td> - <td> - <?=printf("%.5f", $gps_lon); ?> (<?=printf("%d", $gps_lon_deg); ?>° <?=printf("%.5f", $gps_lon_min*60); ?><?=$gps_vars[6]; ?>) - </td> + <tbody> + <tr> + <td> + <?=printf("%.5f", $gps_lat); ?> (<?=printf("%d", $gps_lat_deg); ?>° <?=printf("%.5f", $gps_lat_min*60); ?><?=$gps_vars[4]; ?>) + </td> + <td> + <?=printf("%.5f", $gps_lon); ?> (<?=printf("%d", $gps_lon_deg); ?>° <?=printf("%.5f", $gps_lon_min*60); ?><?=$gps_vars[6]; ?>) + </td> - <?php if (isset($gps_alt)) { ?> - <td> - <?=$gps_alt . ' ' . $gps_alt_unit?> - </td> - } +<?php + if (isset($gps_alt)) { +?> + <td> + <?=$gps_alt . ' ' . $gps_alt_unit?> + </td> +<?php + } - if (isset($gps_sat) || isset($gps_satview)) { ?> - <td class="text-center"> <?php - if (isset($gps_satview)) { - print('in view ' . intval($gps_satview)); - } + if (isset($gps_sat) || isset($gps_satview)) { +?> + <td class="text-center"> +<?php + if (isset($gps_satview)) { + print(gettext('in view ') . intval($gps_satview)); + } - if (isset($gps_sat) && isset($gps_satview)) { - print(', '); - } - if (isset($gps_sat)) { - print('in use ' . $gps_sat); - } ?> - </td> <?php - } - ?> - </tr> - <tr> - <td colspan="<?=$gps_goo_lnk; ?>"><a target="_gmaps" href="http://maps.google.com/?q=<?=$gps_lat; ?>,<?=$gps_lon; ?>">Google Maps Link</a></td> - </tr> - </tbody> - </table> - </div> + if (isset($gps_sat) && isset($gps_satview)) { + print(', '); + } + if (isset($gps_sat)) { + print(gettext('in use ') . $gps_sat); + } +?> + </td> +<?php + } +?> + </tr> + <tr> + <td colspan="<?=$gps_goo_lnk; ?>"><a target="_gmaps" href="http://maps.google.com/?q=<?=$gps_lat; ?>,<?=$gps_lon; ?>"><?=gettext("Google Maps Link");?></a></td> + </tr> + </tbody> + </table> </div> +</div> -<?php endif; +<?php +endif; -include("foot.inc"); ?> +include("foot.inc"); +?> diff --git a/src/usr/local/www/status_openvpn.php b/src/usr/local/www/status_openvpn.php index fe70a47..ca516b6 100644 --- a/src/usr/local/www/status_openvpn.php +++ b/src/usr/local/www/status_openvpn.php @@ -96,14 +96,14 @@ include("head.inc"); ?> //<![CDATA[ function killClient(mport, remipp) { var busy = function(index,icon) { - jQuery(icon).bind("onclick",""); - jQuery(icon).attr('src',jQuery(icon).attr('src').replace("\.gif", "_d.gif")); - jQuery(icon).css("cursor","wait"); + $(icon).bind("onclick",""); + $(icon).attr('src',$(icon).attr('src').replace("\.gif", "_d.gif")); + $(icon).css("cursor","wait"); } - jQuery('img[name="i:' + mport + ":" + remipp + '"]').each(busy); + $('img[name="i:' + mport + ":" + remipp + '"]').each(busy); - jQuery.ajax( + $.ajax( "<?=$_SERVER['SCRIPT_NAME'];?>" + "?action=kill&port=" + mport + "&remipp=" + remipp, { type: "get", complete: killComplete } @@ -117,8 +117,8 @@ include("head.inc"); ?> return; } - jQuery('tr[name="r:' + values[1] + ":" + values[2] + '"]').each( - function(index,row) { jQuery(row).fadeOut(1000); } + $('tr[name="r:' + values[1] + ":" + values[2] + '"]').each( + function(index,row) { $(row).fadeOut(1000); } ); } //]]> @@ -160,7 +160,7 @@ include("head.inc"); ?> <a onclick="killClient('<?=$server['mgmt'];?>', '<?=$conn['remote_host'];?>');" style="cursor:pointer;" id="<?php echo "i:{$server['mgmt']}:{$conn['remote_host']}"; ?>" - title="<?php echo gettext("Kill client connection from") . " " . $conn['remote_host']; ?>"> + title="<?php echo sprintf(gettext("Kill client connection from %s"), $conn['remote_host']); ?>"> <i class="fa fa-times"></i> </a> </td> diff --git a/src/usr/local/www/status_pkglogs.php b/src/usr/local/www/status_pkglogs.php index 991a56a..b387fd3 100755 --- a/src/usr/local/www/status_pkglogs.php +++ b/src/usr/local/www/status_pkglogs.php @@ -127,7 +127,7 @@ if ($pkgwithlogging == false) { <div class="panel panel-default"> <div class="panel-heading"><h2 class="panel-title"><?=printf(gettext('Last %1$s %2$s log entries'), $nentries, $curtab)?></h2></div> - <div>class="panel-body"> + <div class="panel-body"> <pre> <?php $package = $config['installedpackages']['package'][$apkgid]; diff --git a/src/usr/local/www/status_queues.php b/src/usr/local/www/status_queues.php index b1c0815..34f3ba3 100644 --- a/src/usr/local/www/status_queues.php +++ b/src/usr/local/www/status_queues.php @@ -84,7 +84,7 @@ if (!file_exists("{$g['varrun_path']}/qstats.pid") || !isvalidpid("{$g['varrun_p } $fd = @fsockopen("unix://{$g['varrun_path']}/qstats"); if (!$fd) { - $error = "Something wrong happened during communication with stat gathering"; + $error = gettext("Something wrong happened during communication with stat gathering"); } else { $stats = ""; while (!feof($fd)) { @@ -94,7 +94,7 @@ if (!$fd) { @file_put_contents("{$g['tmp_path']}/qstats", $stats); $altqstats = @parse_xml_config("{$g['tmp_path']}/qstats", array("altqstats")); if ($altqstats == -1) { - $error = "No queue statistics could be read."; + $error = gettext("No queue statistics could be read."); } } if ($_REQUEST['getactivity']) { @@ -129,13 +129,13 @@ if ($_REQUEST['getactivity']) { if ($packet_s < 0) { $packet_s = 0; } - $finscript .= "jQuery('#queue{$q->queuename}width').css('width','{$packet_s}%');"; - $finscript .= "jQuery('#queue{$q->queuename}pps').val('" . number_format($q->pps, 1) . "');"; - $finscript .= "jQuery('#queue{$q->queuename}bps').val('" . format_bits($q->bandwidth) . "');"; - $finscript .= "jQuery('#queue{$q->queuename}borrows').val('{$q->borrows}');"; - $finscript .= "jQuery('#queue{$q->queuename}suspends').val('{$q->suspends}');"; - $finscript .= "jQuery('#queue{$q->queuename}drops').val('{$q->drops}');"; - $finscript .= "jQuery('#queue{$q->queuename}length').val('{$q->queuelength}');"; + $finscript .= "$('#queue{$q->queuename}width').css('width','{$packet_s}%');"; + $finscript .= "$('#queue{$q->queuename}pps').val('" . number_format($q->pps, 1) . "');"; + $finscript .= "$('#queue{$q->queuename}bps').val('" . format_bits($q->bandwidth) . "');"; + $finscript .= "$('#queue{$q->queuename}borrows').val('{$q->borrows}');"; + $finscript .= "$('#queue{$q->queuename}suspends').val('{$q->suspends}');"; + $finscript .= "$('#queue{$q->queuename}drops').val('{$q->drops}');"; + $finscript .= "$('#queue{$q->queuename}length').val('{$q->queuelength}');"; } unset($statistics, $altqstats); header("Content-type: text/javascript"); @@ -160,8 +160,8 @@ if (!is_array($config['shaper']['queue']) || count($config['shaper']['queue']) < //<![CDATA[ function getqueueactivity() { var url = "/status_queues.php"; - var pars = "getactivity=yes&stats=" + jQuery("#selStatistic").val(); - jQuery.ajax( + var pars = "getactivity=yes&stats=" + $("#selStatistic").val(); + $.ajax( url, { type: 'post', @@ -172,7 +172,7 @@ if (!is_array($config['shaper']['queue']) || count($config['shaper']['queue']) < function activitycallback(transport) { setTimeout('getqueueactivity()', 5100); } - jQuery(document).ready(function() { + $(document).ready(function() { setTimeout('getqueueactivity()', 150); }); //]]> @@ -191,8 +191,8 @@ else: ?> <th><?=gettext("Queue"); ?></th> <th><?=gettext("Statistics"); ?> <select id="selStatistic" class="form-control"> - <option value="0">PPS</option> - <option value="1">Bandwidth</option> + <option value="0"><?=gettext("PPS");?></option> + <option value="1"><?=gettext("Bandwidth");?></option> </select> </th> <th><?=gettext("PPS"); ?></th> @@ -214,7 +214,7 @@ else: ?> <br /> <div class="infoblock blockopen"> <?php - print_info_box(gettext("Queue graphs take 5 seconds to sample data"), 'info'); + print_info_box(gettext("Queue graphs take 5 seconds to sample data"), 'info', false); ?> </div> </div> @@ -224,11 +224,11 @@ else: ?> <script type="text/javascript"> //<![CDATA[ function StatsShowHide(classname) { - var firstrow = jQuery("." + classname).first(); + var firstrow = $("." + classname).first(); if (firstrow.is(':visible')) { - jQuery("." + classname).hide(); + $("." + classname).hide(); } else { - jQuery("." + classname).show(); + $("." + classname).show(); } } //]]> diff --git a/src/usr/local/www/status_rrd_graph.php b/src/usr/local/www/status_rrd_graph.php index 2bea2c7..4a3134d 100644 --- a/src/usr/local/www/status_rrd_graph.php +++ b/src/usr/local/www/status_rrd_graph.php @@ -230,7 +230,7 @@ if (is_numeric($_GET['end'])) { /* this should never happen */ if ($end < $start) { - log_error("start $start is smaller than end $end"); + log_error(sprintf(gettext("start %d is smaller than end %d"), $start, $end)); $end = $now; } @@ -299,7 +299,7 @@ $graph_length = array( switch ($curcat) { case "vpnusers": - $curcattext = "VPN Users"; + $curcattext = gettext("VPN Users"); break; default: $curcattext = ucfirst($curcat); @@ -572,7 +572,7 @@ $group->add(new Form_Select( ))->setHelp('Period'); if ($curcat == 'custom') { - $group->setHelp('Any changes to these option may not take affect until the next auto-refresh.'); + $group->setHelp('Any changes to these options may not take affect until the next auto-refresh.'); } $section->add($group); @@ -607,7 +607,7 @@ if ($curcat == 'custom') { ))->setHelp('End'); if ($curcat != 'custom') { - $group->setHelp('Any changes to these option may not take affect until the next auto-refresh'); + $group->setHelp('Any changes to these options may not take affect until the next auto-refresh'); } $section->add($group); @@ -622,7 +622,7 @@ if ($curcat == 'custom') { $id = preg_replace('/\./', '_', $id); ?> <div class="panel panel-default"> - <img class="img-responsive center-block" id="<?=$id?>" alt="<?=$prettydb?> Graph" src="status_rrd_graph_img.php?start=<?=$start?>&end=<?=$end?>&database=<?=$curdatabase?>&style=<?=$curstyle?>&graph=<?=$graph?>" /> + <img class="img-responsive center-block" id="<?=$id?>" alt="<?=$prettydb?> <?=gettext("Graph");?>" src="status_rrd_graph_img.php?start=<?=$start?>&end=<?=$end?>&database=<?=$curdatabase?>&style=<?=$curstyle?>&graph=<?=$graph?>" /> </div> <?php diff --git a/src/usr/local/www/status_rrd_graph_img.php b/src/usr/local/www/status_rrd_graph_img.php index 9d203c3..32d3d4d 100644 --- a/src/usr/local/www/status_rrd_graph_img.php +++ b/src/usr/local/www/status_rrd_graph_img.php @@ -101,7 +101,7 @@ if (is_numeric($_GET['end'])) { /* this should never happen */ if ($end < $start) { - log_error("start $start is smaller than end $end"); + log_error(sprintf(gettext("start %d is smaller than end %d"), $start, $end)); $end = $now; } @@ -441,7 +441,7 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "HRULE:\"$curif-in_bits_95#{$colortraffic95[1]}:$curif-in (95%)\" "; $graphcmd .= "HRULE:\"$curif-out_bits_95#{$colortraffic95[0]}:$curif-out (95%)\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t\t\t maximum\t average\t\t current\t period\t 95th percentile\\n\" "; + $graphcmd .= "COMMENT:\"\t\t\t\t maximum\t average\t\t current\t period\t 95th percentile\\n\" "; $graphcmd .= "COMMENT:\"IPv4 in-pass\t\" "; $graphcmd .= "GPRINT:\"$curif-in_bits_pass:MAX:%7.2lf %sb/s\" "; $graphcmd .= "GPRINT:\"$curif-in_bits_pass:AVERAGE:%7.2lf %Sb/s\" "; @@ -596,7 +596,7 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "{$AREA}:\"tput-out_bits_pass_neg#{$colortrafficup[0]}:out-pass \" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t maximum average current period\\n\" "; + $graphcmd .= "COMMENT:\"\t\t maximum average current period\\n\" "; $graphcmd .= "COMMENT:\"in-pass\t\" "; $graphcmd .= "GPRINT:\"tput-in_bits_pass:MAX:%7.2lf %sb/s\" "; $graphcmd .= "GPRINT:\"tput-in_bits_pass:AVERAGE:%7.2lf %Sb/s\" "; @@ -695,7 +695,7 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "$AREA:\"$curif-out6_pps_pass_neg#{$colorpacketsup[2]}:$curif-out6-pass:STACK\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t maximum\t\t average\t current\t period\\n\" "; + $graphcmd .= "COMMENT:\"\t\t maximum average current period\\n\" "; $graphcmd .= "COMMENT:\"in-pass\t\" "; $graphcmd .= "GPRINT:\"$curif-in_pps_pass:MAX:%7.2lf %s pps\" "; $graphcmd .= "GPRINT:\"$curif-in_pps_pass:AVERAGE:%7.2lf %S pps\" "; @@ -762,7 +762,7 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "LINE2:\"$curif-rate#{$colorwireless[1]}:$curif-rate\" "; $graphcmd .= "LINE2:\"$curif-channel#{$colorwireless[2]}:$curif-channel\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t maximum\t\t average\t current\\n\" "; + $graphcmd .= "COMMENT:\"\t\t maximum\t\t average\t current\\n\" "; $graphcmd .= "COMMENT:\"SNR\t\t\" "; $graphcmd .= "GPRINT:\"$curif-snr:MAX:%7.2lf dBi \" "; $graphcmd .= "GPRINT:\"$curif-snr:AVERAGE:%7.2lf dBi \" "; @@ -774,8 +774,8 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "GPRINT:\"$curif-rate:LAST:%7.2lf Mb\" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"Channel\t\" "; - $graphcmd .= "GPRINT:\"$curif-channel:MAX:%7.2lf \" "; - $graphcmd .= "GPRINT:\"$curif-channel:AVERAGE:%7.2lf \" "; + $graphcmd .= "GPRINT:\"$curif-channel:MAX:%7.2lf \" "; + $graphcmd .= "GPRINT:\"$curif-channel:AVERAGE:%7.2lf \" "; $graphcmd .= "GPRINT:\"$curif-channel:LAST:%7.2lf\" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; @@ -790,10 +790,10 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "DEF:\"$curif-users=$rrddbpath$curdatabase:users:AVERAGE:step=$step\" "; $graphcmd .= "LINE2:\"$curif-users#{$colorvpnusers[0]}:$curif-users\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t\t maximum\t\t average\t current\\n\" "; + $graphcmd .= "COMMENT:\"\t\t\t maximum\t\t average\t current\\n\" "; $graphcmd .= "COMMENT:\"Users Online\t\" "; - $graphcmd .= "GPRINT:\"$curif-users:MAX:%7.2lf \" "; - $graphcmd .= "GPRINT:\"$curif-users:AVERAGE:%7.2lf \" "; + $graphcmd .= "GPRINT:\"$curif-users:MAX:%7.2lf \" "; + $graphcmd .= "GPRINT:\"$curif-users:AVERAGE:%7.2lf \" "; $graphcmd .= "GPRINT:\"$curif-users:LAST:%7.2lf \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; @@ -817,7 +817,7 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "LINE1:\"$curif-srcip#{$colorstates[3]}:$curif-srcip\" "; $graphcmd .= "LINE1:\"$curif-dstip#{$colorstates[4]}:$curif-dstip\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t minimum average maximum current period\\n\" "; + $graphcmd .= "COMMENT:\"\t\t minimum average maximum current period\\n\" "; $graphcmd .= "COMMENT:\"state changes\" "; $graphcmd .= "GPRINT:\"$curif-pfrate:MIN:%7.2lf %s cps\" "; $graphcmd .= "GPRINT:\"$curif-pfrate:AVERAGE:%7.2lf %s cps\" "; @@ -826,28 +826,28 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "GPRINT:\"$curif-pfrate_t:AVERAGE:%7.2lf %s chg\" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"filter states\" "; - $graphcmd .= "GPRINT:\"$curif-pfstates:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-pfstates:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-pfstates:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-pfstates:LAST:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfstates:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfstates:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfstates:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfstates:LAST:%7.2lf %s \" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"nat states \" "; - $graphcmd .= "GPRINT:\"$curif-pfnat:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-pfnat:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-pfnat:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-pfnat:LAST:%7.2lf %s \" "; + $graphcmd .= "COMMENT:\"nat states \" "; + $graphcmd .= "GPRINT:\"$curif-pfnat:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfnat:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfnat:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-pfnat:LAST:%7.2lf %s \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"Source addr. \" "; - $graphcmd .= "GPRINT:\"$curif-srcip:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-srcip:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-srcip:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-srcip:LAST:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-srcip:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-srcip:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-srcip:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-srcip:LAST:%7.2lf %s \" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Dest. addr. \" "; - $graphcmd .= "GPRINT:\"$curif-dstip:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-dstip:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-dstip:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"$curif-dstip:LAST:%7.2lf %s \" "; + $graphcmd .= "COMMENT:\"Dest. addr. \" "; + $graphcmd .= "GPRINT:\"$curif-dstip:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-dstip:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-dstip:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"$curif-dstip:LAST:%7.2lf %s \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; } elseif ((strstr($curdatabase, "-processor.rrd")) && (file_exists("$rrddbpath$curdatabase"))) { @@ -869,36 +869,36 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "AREA:\"interrupt#{$colorprocessor[3]}:interrupt:STACK\" "; $graphcmd .= "LINE2:\"processes#{$colorprocessor[4]}:processes\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; - $graphcmd .= "COMMENT:\"User util. \" "; - $graphcmd .= "GPRINT:\"user:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"user:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"user:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"user:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; + $graphcmd .= "COMMENT:\"User util. \" "; + $graphcmd .= "GPRINT:\"user:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"user:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"user:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"user:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Nice util. \" "; - $graphcmd .= "GPRINT:\"nice:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"nice:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"nice:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"nice:LAST:%7.2lf %s \" "; + $graphcmd .= "COMMENT:\"Nice util. \" "; + $graphcmd .= "GPRINT:\"nice:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"nice:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"nice:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"nice:LAST:%7.2lf %s \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"System util. \" "; - $graphcmd .= "GPRINT:\"system:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"system:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"system:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"system:LAST:%7.2lf %s \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Interrupt \" "; - $graphcmd .= "GPRINT:\"interrupt:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"interrupt:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"interrupt:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"interrupt:LAST:%7.2lf %s \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Processes \" "; - $graphcmd .= "GPRINT:\"processes:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"processes:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"processes:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"processes:LAST:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"system:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"system:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"system:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"system:LAST:%7.2lf %s \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Interrupt \" "; + $graphcmd .= "GPRINT:\"interrupt:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"interrupt:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"interrupt:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"interrupt:LAST:%7.2lf %s \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Processes \" "; + $graphcmd .= "GPRINT:\"processes:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"processes:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"processes:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"processes:LAST:%7.2lf %s \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; } elseif ((strstr($curdatabase, "-memory.rrd")) && (file_exists("$rrddbpath$curdatabase"))) { @@ -920,36 +920,36 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "LINE2:\"cache#{$colormemory[3]}:cache\" "; $graphcmd .= "LINE2:\"wire#{$colormemory[4]}:wire\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; - $graphcmd .= "COMMENT:\"Active. \" "; - $graphcmd .= "GPRINT:\"active:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"active:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"active:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"active:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Inactive. \" "; - $graphcmd .= "GPRINT:\"inactive:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"inactive:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"inactive:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"inactive:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Free. \" "; - $graphcmd .= "GPRINT:\"free:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"free:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"free:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"free:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Cached. \" "; - $graphcmd .= "GPRINT:\"cache:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cache:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cache:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cache:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Wired. \" "; - $graphcmd .= "GPRINT:\"wire:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"wire:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"wire:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"wire:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; + $graphcmd .= "COMMENT:\"Active. \" "; + $graphcmd .= "GPRINT:\"active:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"active:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"active:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"active:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Inactive. \" "; + $graphcmd .= "GPRINT:\"inactive:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"inactive:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"inactive:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"inactive:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Free. \" "; + $graphcmd .= "GPRINT:\"free:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"free:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"free:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"free:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Cached. \" "; + $graphcmd .= "GPRINT:\"cache:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cache:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cache:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cache:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Wired. \" "; + $graphcmd .= "GPRINT:\"wire:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"wire:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"wire:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"wire:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; } elseif ((strstr($curdatabase, "-mbuf.rrd")) && (file_exists("$rrddbpath$curdatabase"))) { @@ -969,30 +969,30 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "LINE2:\"total#{$colormbuf[2]}:total\" "; $graphcmd .= "LINE2:\"max#{$colormbuf[3]}:max\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; - $graphcmd .= "COMMENT:\"Current. \" "; - $graphcmd .= "GPRINT:\"current:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"current:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"current:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"current:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Cache. \" "; - $graphcmd .= "GPRINT:\"cache:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cache:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cache:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cache:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Total. \" "; - $graphcmd .= "GPRINT:\"total:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"total:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"total:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"total:LAST:%7.2lf %S \" "; - $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"Max. \" "; - $graphcmd .= "GPRINT:\"max:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"max:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"max:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"max:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; + $graphcmd .= "COMMENT:\"Current. \" "; + $graphcmd .= "GPRINT:\"current:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"current:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"current:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"current:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Cache. \" "; + $graphcmd .= "GPRINT:\"cache:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cache:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cache:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cache:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Total. \" "; + $graphcmd .= "GPRINT:\"total:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"total:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"total:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"total:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\\n\" "; + $graphcmd .= "COMMENT:\"Max. \" "; + $graphcmd .= "GPRINT:\"max:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"max:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"max:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"max:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; } elseif ((strstr($curdatabase, "-queues.rrd")) && (file_exists("$rrddbpath$curdatabase"))) { @@ -1078,18 +1078,18 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba \"CDEF:r1=delay,60,MIN\" \\ \"CDEF:r2=delay,180,MIN\" \\ \"CDEF:r3=delay,420,MIN\" \\ - COMMENT:\"\t\t\t\t\tDelay\t\t\tPacket loss\\n\" \\ - AREA:delay#$colorqualityrtt[0]:\"> 420 ms\" \\ - GPRINT:delay:MIN:\"\t\tMin\\: %7.2lf ms\" \\ + COMMENT:\"\t\t\t\t\tDelay\t\t\t\tPacket loss\\n\" \\ + AREA:delay#$colorqualityrtt[0]:\"> 420 ms\" \\ + GPRINT:delay:MIN:\"\t\tMin\\: %7.2lf ms\" \\ GPRINT:loss:MIN:\"\tMin\\: %3.1lf %%\\n\" \\ - AREA:r3#$colorqualityrtt[1]:\"180-420 ms\" \\ - GPRINT:delay:AVERAGE:\"\t\tAvg\\: %7.2lf ms\" \\ + AREA:r3#$colorqualityrtt[1]:\"180-420 ms\" \\ + GPRINT:delay:AVERAGE:\"\t\tAvg\\: %7.2lf ms\" \\ GPRINT:loss:AVERAGE:\"\tAvg\\: %3.1lf %%\\n\" \\ - AREA:r2#$colorqualityrtt[2]:\"60-180 ms\" \\ - GPRINT:delay:MAX:\"\t\tMax\\: %7.2lf ms\" \\ + AREA:r2#$colorqualityrtt[2]:\"60-180 ms\" \\ + GPRINT:delay:MAX:\"\t\tMax\\: %7.2lf ms\" \\ GPRINT:loss:MAX:\"\tMax\\: %3.1lf %%\\n\" \\ - AREA:r1#$colorqualityrtt[3]:\"20-60 ms\\n\" \\ - AREA:r0#$colorqualityrtt[4]:\"< 20 ms\" \\ + AREA:r1#$colorqualityrtt[3]:\"20-60 ms\\n\" \\ + AREA:r0#$colorqualityrtt[4]:\"< 20 ms\" \\ GPRINT:delay:LAST:\"\t\tLast\\: %7.2lf ms\" \\ GPRINT:loss:LAST:\"\tLast\: %3.1lf %%\\n\" \\ AREA:loss10#$colorqualityloss:\"Packet loss\\n\" \\ @@ -1143,10 +1143,10 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "DEF:\"$curif-rssi=$rrddbpath$curdatabase:rssi:AVERAGE:step=$step\" "; $graphcmd .= "LINE2:\"$curif-rssi#{$colorwireless[0]}:$curif-rssi\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t maximum\t\t average\t current\\n\" "; + $graphcmd .= "COMMENT:\"\t\t maximum\t\t average\t current\\n\" "; $graphcmd .= "COMMENT:\"RSSI\t\t\" "; - $graphcmd .= "GPRINT:\"$curif-rssi:MAX:%7.2lf \" "; - $graphcmd .= "GPRINT:\"$curif-rssi:AVERAGE:%7.2lf \" "; + $graphcmd .= "GPRINT:\"$curif-rssi:MAX:%7.2lf \" "; + $graphcmd .= "GPRINT:\"$curif-rssi:AVERAGE:%7.2lf \" "; $graphcmd .= "GPRINT:\"$curif-rssi:LAST:%7.2lf \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; @@ -1182,10 +1182,10 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "DEF:\"$curif-concurrentusers=$rrddbpath$curdatabase:concurrentusers:AVERAGE:step=$step\" "; $graphcmd .= "AREA:\"$curif-concurrentusers#{$colorcaptiveportalusers[0]}:Concurrent Users\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t\t current\t\t average\t maximum\\n\" "; + $graphcmd .= "COMMENT:\"\t\t\t current\t\t average\t maximum\\n\" "; $graphcmd .= "COMMENT:\"Users Online\t\" "; - $graphcmd .= "GPRINT:\"$curif-concurrentusers:LAST:%8.0lf \" "; - $graphcmd .= "GPRINT:\"$curif-concurrentusers:AVERAGE:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-concurrentusers:LAST:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-concurrentusers:AVERAGE:%8.0lf \" "; $graphcmd .= "GPRINT:\"$curif-concurrentusers:MAX:%8.0lf \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; @@ -1206,30 +1206,30 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "LINE2:\"cjit#{$colorntpd[2]}:cjit\" "; $graphcmd .= "LINE2:\"wander#{$colorntpd[3]}:wander\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; - $graphcmd .= "COMMENT:\"Offset \" "; - $graphcmd .= "GPRINT:\"offset:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"offset:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"offset:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"offset:LAST:%7.2lf %S \" "; + $graphcmd .= "COMMENT:\"\t\t minimum average maximum current\\n\" "; + $graphcmd .= "COMMENT:\"Offset \" "; + $graphcmd .= "GPRINT:\"offset:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"offset:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"offset:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"offset:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"System jitter \" "; - $graphcmd .= "GPRINT:\"sjit:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"sjit:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"sjit:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"sjit:LAST:%7.2lf %S \" "; + $graphcmd .= "GPRINT:\"sjit:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"sjit:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"sjit:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"sjit:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"Clock jitter \" "; - $graphcmd .= "GPRINT:\"cjit:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cjit:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cjit:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"cjit:LAST:%7.2lf %S \" "; + $graphcmd .= "GPRINT:\"cjit:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cjit:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cjit:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"cjit:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"Clk freq wander\" "; - $graphcmd .= "GPRINT:\"wander:MIN:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"wander:AVERAGE:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"wander:MAX:%7.2lf %s \" "; - $graphcmd .= "GPRINT:\"wander:LAST:%7.2lf %S \" "; + $graphcmd .= "GPRINT:\"wander:MIN:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"wander:AVERAGE:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"wander:MAX:%7.2lf %s \" "; + $graphcmd .= "GPRINT:\"wander:LAST:%7.2lf %S \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; } elseif ((strstr($curdatabase, "-dhcpd.rrd")) && (file_exists("$rrddbpath$curdatabase"))) { @@ -1247,20 +1247,20 @@ if ((strstr($curdatabase, "-traffic.rrd")) && (file_exists("$rrddbpath$curdataba $graphcmd .= "LINE2:\"$curif-staticleases#{$colordhcpd[1]}:Static Leases\" "; $graphcmd .= "LINE1:\"$curif-dhcprange#{$colordhcpd[2]}:DHCP Range\" "; $graphcmd .= "COMMENT:\"\\n\" "; - $graphcmd .= "COMMENT:\"\t\t\t current\t\t average\t\tmaximum\\n\" "; + $graphcmd .= "COMMENT:\"\t\t\t current\t\t average\t\tmaximum\\n\" "; $graphcmd .= "COMMENT:\"Active Leases\t\" "; - $graphcmd .= "GPRINT:\"$curif-leases:LAST:%8.0lf \" "; - $graphcmd .= "GPRINT:\"$curif-leases:AVERAGE:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-leases:LAST:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-leases:AVERAGE:%8.0lf \" "; $graphcmd .= "GPRINT:\"$curif-leases:MAX:%8.0lf \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"Static Leases\t\" "; - $graphcmd .= "GPRINT:\"$curif-staticleases:LAST:%8.0lf \" "; - $graphcmd .= "GPRINT:\"$curif-staticleases:AVERAGE:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-staticleases:LAST:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-staticleases:AVERAGE:%8.0lf \" "; $graphcmd .= "GPRINT:\"$curif-staticleases:MAX:%8.0lf \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"DHCP Range\t\t\" "; - $graphcmd .= "GPRINT:\"$curif-dhcprange:LAST:%8.0lf \" "; - $graphcmd .= "GPRINT:\"$curif-dhcprange:AVERAGE:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-dhcprange:LAST:%8.0lf \" "; + $graphcmd .= "GPRINT:\"$curif-dhcprange:AVERAGE:%8.0lf \" "; $graphcmd .= "GPRINT:\"$curif-dhcprange:MAX:%8.0lf \" "; $graphcmd .= "COMMENT:\"\\n\" "; $graphcmd .= "COMMENT:\"\t\t\t\t\t\t\t\t\t\t\t\t\t" . strftime('%b %d %H\:%M\:%S %Y') . "\" "; diff --git a/src/usr/local/www/status_rrd_graph_settings.php b/src/usr/local/www/status_rrd_graph_settings.php index 7262c98..ecb0490 100644 --- a/src/usr/local/www/status_rrd_graph_settings.php +++ b/src/usr/local/www/status_rrd_graph_settings.php @@ -92,7 +92,7 @@ $periods = array("absolute" => gettext("Absolute Timespans"), if ($_POST['ResetRRD']) { mwexec('/bin/rm /var/db/rrd/*'); enable_rrd_graphing(); - $savemsg = "RRD data has been cleared. New RRD files have been generated."; + $savemsg = gettext("RRD data has been cleared. New RRD files have been generated."); } elseif ($_POST) { unset($input_errors); $pconfig = $_POST; diff --git a/src/usr/local/www/status_services.php b/src/usr/local/www/status_services.php index 905057a..6f7cbb0 100755 --- a/src/usr/local/www/status_services.php +++ b/src/usr/local/www/status_services.php @@ -165,7 +165,7 @@ if (count($services) > 0) { } ?> <td> - <?=$running ? '<span class="text-success">Running</span>':'<span class="text-danger">Stopped</span>'?> + <?=$running ? '<span class="text-success">' . gettext("Running") . '</span>':'<span class="text-danger">' . gettext("Stopped") . '</span>'?> </td> <td> <?=get_service_control_links($service)?> diff --git a/src/usr/local/www/status_wireless.php b/src/usr/local/www/status_wireless.php index bdd805d..4211a4e 100644 --- a/src/usr/local/www/status_wireless.php +++ b/src/usr/local/www/status_wireless.php @@ -244,9 +244,9 @@ display_top_tabs($tab_array); </form> <div class="infoblock"> <?php -print_info_box('<b>Flags:</b> A = authorized, E = Extended Rate (802.11g), P = Power saving mode<br />' . +print_info_box(gettext('<b>Flags:</b> A = authorized, E = Extended Rate (802.11g), P = Power saving mode<br />' . '<b>Capabilities:</b> E = ESS (infrastructure mode), I = IBSS (ad-hoc mode), P = privacy (WEP/TKIP/AES), ' . - 'S = Short preamble, s = Short slot time', 'info'); + 'S = Short preamble, s = Short slot time'), 'info', false); ?> </div> <?php diff --git a/src/usr/local/www/system.php b/src/usr/local/www/system.php index a8d16bf..c791489 100644 --- a/src/usr/local/www/system.php +++ b/src/usr/local/www/system.php @@ -232,7 +232,7 @@ if ($_POST) { if ($_POST['language'] && $_POST['language'] != $config['system']['language']) { $config['system']['language'] = $_POST['language']; - set_language($config['system']['language']); + set_language(); } unset($config['system']['webgui']['webguileftcolumnhyper']); @@ -507,7 +507,7 @@ $section->addInput(new Form_Select( 'webguifixedmenu', 'Top Navigation', $pconfig['webguifixedmenu'], - ["" => "Scrolls with page", "fixed" => "Fixed (Remains visible at top of page)"] + ["" => gettext("Scrolls with page"), "fixed" => gettext("Fixed (Remains visible at top of page)")] ))->setHelp("The fixed option is intended for large screens only."); $section->addInput(new Form_Input( diff --git a/src/usr/local/www/system_advanced_admin.php b/src/usr/local/www/system_advanced_admin.php index 56367a1..8087224 100644 --- a/src/usr/local/www/system_advanced_admin.php +++ b/src/usr/local/www/system_advanced_admin.php @@ -508,10 +508,10 @@ $section->addInput(new Form_Input( ))->setHelp('Note: Leave this blank for the default of 22.'); -if (!$g['enableserial_force'] && ($g['platform'] == $g['product_name'] || $g['platform'] == "cdrom")) { - $form->add($section); - $section = new Form_Section('Serial Communications'); +$form->add($section); +$section = new Form_Section('Serial Communications'); +if (!$g['enableserial_force'] && ($g['platform'] == $g['product_name'] || $g['platform'] == "cdrom")) { $section->addInput(new Form_Checkbox( 'enableserial', 'Serial Terminal', @@ -521,21 +521,23 @@ if (!$g['enableserial_force'] && ($g['platform'] == $g['product_name'] || $g['pl 'the serial port. You can still access the console menu from the internal video '. 'card/keyboard. A <b>null modem</b> serial cable or adapter is required to use the '. 'serial console.'); +} - $section->addInput(new Form_Select( - 'serialspeed', - 'Serial Speed', - $pconfig['serialspeed'], - array_combine(array(115200, 57600, 38400, 19200, 14400, 9600), array(115200, 57600, 38400, 19200, 14400, 9600)) - ))->setHelp('Allows selection of different speeds for the serial console port.'); +$section->addInput(new Form_Select( + 'serialspeed', + 'Serial Speed', + $pconfig['serialspeed'], + array_combine(array(115200, 57600, 38400, 19200, 14400, 9600), array(115200, 57600, 38400, 19200, 14400, 9600)) +))->setHelp('Allows selection of different speeds for the serial console port.'); +if (!$g['enableserial_force'] && ($g['platform'] == $g['product_name'] || $g['platform'] == "cdrom")) { $section->addInput(new Form_Select( 'primaryconsole', 'Primary Console', $pconfig['primaryconsole'], array( - 'serial' => 'Serial Console', - 'video' => 'VGA Console', + 'serial' => gettext('Serial Console'), + 'video' => gettext('VGA Console'), ) ))->setHelp('Select the preferred console if multiple consoles are present. '. 'The preferred console will show pfSense boot script output. All consoles '. diff --git a/src/usr/local/www/system_advanced_firewall.php b/src/usr/local/www/system_advanced_firewall.php index 43af9bc..29b92af 100644 --- a/src/usr/local/www/system_advanced_firewall.php +++ b/src/usr/local/www/system_advanced_firewall.php @@ -451,9 +451,9 @@ $section->addInput($input = new Form_Select( $config['system']['optimization'], array( 'normal' => 'Normal', - 'high-latency' => 'High-latency', - 'aggressive' => 'Aggressive', - 'conservative' => 'Conservative', + 'high-latency' => gettext('High-latency'), + 'aggressive' => gettext('Aggressive'), + 'conservative' => gettext('Conservative'), ) ))->setHelp('Select the type of state table optimization to use'); @@ -594,9 +594,9 @@ $section->addInput(new Form_Select( 'Update Frequency', empty($pconfig['bogonsinterval']) ? 'monthly' : $pconfig['bogonsinterval'], array( - 'monthly' => 'Monthly', - 'weekly' => 'Weekly', - 'daily' => 'Daily', + 'monthly' => gettext('Monthly'), + 'weekly' => gettext('Weekly'), + 'daily' => gettext('Daily'), ) ))->setHelp('The frequency of updating the lists of IP addresses that are '. 'reserved (but not RFC 1918) or not yet assigned by IANA.'); @@ -619,9 +619,9 @@ if (count($config['interfaces']) > 1) { 'NAT Reflection mode for port forwards', $value, array( - 'disable' => 'disabled', - 'proxy' => 'NAT + proxy', - 'purenat' => 'Pure NAT', + 'disable' => gettext('disabled'), + 'proxy' => gettext('NAT + proxy'), + 'purenat' => gettext('Pure NAT'), ) ))->setHelp('</span><ul class="help-block"><li>The pure NAT mode uses a set of NAT rules to direct '. 'packets to the target of the port forward. It has better scalability, '. diff --git a/src/usr/local/www/system_advanced_misc.php b/src/usr/local/www/system_advanced_misc.php index b3d78a4..5c937f7 100644 --- a/src/usr/local/www/system_advanced_misc.php +++ b/src/usr/local/www/system_advanced_misc.php @@ -83,7 +83,7 @@ $pconfig['powerd_enable'] = isset($config['system']['powerd_enable']); $pconfig['crypto_hardware'] = $config['system']['crypto_hardware']; $pconfig['thermal_hardware'] = $config['system']['thermal_hardware']; $pconfig['schedule_states'] = isset($config['system']['schedule_states']); -$pconfig['kill_states'] = isset($config['system']['kill_states']); +$pconfig['gw_down_kill_states'] = isset($config['system']['gw_down_kill_states']); $pconfig['skip_rules_gw_down'] = isset($config['system']['skip_rules_gw_down']); $pconfig['use_mfs_tmpvar'] = isset($config['system']['use_mfs_tmpvar']); $pconfig['use_mfs_tmp_size'] = $config['system']['use_mfs_tmp_size']; @@ -229,9 +229,9 @@ if ($_POST) { unset($config['system']['powerd_enable']); } - $config['system']['powerd_ac_mode'] = $_POST['ac-power']; - $config['system']['powerd_battery_mode'] = $_POST['battery-power']; - $config['system']['powerd_normal_mode'] = $_POST['unknown-power']; + $config['system']['powerd_ac_mode'] = $_POST['powerd_ac_mode']; + $config['system']['powerd_battery_mode'] = $_POST['powerd_battery_mode']; + $config['system']['powerd_normal_mode'] = $_POST['powerd_normal_mode']; if ($_POST['crypto_hardware']) { $config['system']['crypto_hardware'] = $_POST['crypto_hardware']; @@ -251,10 +251,10 @@ if ($_POST) { unset($config['system']['schedule_states']); } - if ($_POST['kill_states'] == "yes") { - $config['system']['kill_states'] = true; + if ($_POST['gw_down_kill_states'] == "yes") { + $config['system']['gw_down_kill_states'] = true; } else { - unset($config['system']['kill_states']); + unset($config['system']['gw_down_kill_states']); } if ($_POST['skip_rules_gw_down'] == "yes") { @@ -417,10 +417,10 @@ $section->addInput(new Form_Checkbox( 'lower CPU load.'); $modes = array( - 'hadp' => 'Hiadaptive', - 'adp' => 'Adaptive', - 'min' => 'Minimum', - 'max' => 'Maximum', + 'hadp' => gettext('Hiadaptive'), + 'adp' => gettext('Adaptive'), + 'min' => gettext('Minimum'), + 'max' => gettext('Maximum'), ); $section->addInput(new Form_Select( @@ -491,12 +491,12 @@ $form->add($section); $section = new Form_Section('Gateway Monitoring'); $section->addInput(new Form_Checkbox( - 'kill_states', + 'gw_down_kill_states', 'State Killing on Gateway Failure', 'Flush all states when a gateway goes down', - $pconfig['kill_states'] + $pconfig['gw_down_kill_states'] ))->setHelp('The monitoring process will flush all states when a gateway goes down '. - 'if this box is not checked. Check this box to disable this behavior.'); + 'if this box is checked.'); $section->addInput(new Form_Checkbox( 'skip_rules_gw_down', diff --git a/src/usr/local/www/system_advanced_sysctl.php b/src/usr/local/www/system_advanced_sysctl.php index bc49a63..d1c38e0 100644 --- a/src/usr/local/www/system_advanced_sysctl.php +++ b/src/usr/local/www/system_advanced_sysctl.php @@ -175,7 +175,7 @@ if ($savemsg) { } if (is_subsystem_dirty('sysctl') && ($act != "edit" )) { - print_info_box_np(gettext("The firewall tunables have changed. You must apply the configuration for them to take affect.")); + print_apply_box(gettext("The firewall tunables have changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/system_certmanager.php b/src/usr/local/www/system_certmanager.php index f8f8841..7cd98ee 100644 --- a/src/usr/local/www/system_certmanager.php +++ b/src/usr/local/www/system_certmanager.php @@ -808,10 +808,10 @@ foreach ($pconfig['altnames']['item'] as $item) { 'Type', $item['type'], array( - 'DNS' => 'FQDN or Hostname', - 'IP' => 'IP address', - 'URI' => 'URI', - 'email' => 'email address', + 'DNS' => gettext('FQDN or Hostname'), + 'IP' => gettext('IP address'), + 'URI' => gettext('URI'), + 'email' => gettext('email address'), ) ))->setHelp(($counter == $numrows) ? 'Type':null); @@ -1005,11 +1005,18 @@ print $form; <th><?=gettext("Issuer")?></th> <th><?=gettext("Distinguished Name")?></th> <th><?=gettext("In Use")?></th> + <th class="col-sm-2"><?=gettext("Actions")?></th> </tr> </thead> <tbody> <?php + +$pluginparams = array(); +$pluginparams['type'] = 'certificates'; +$pluginparams['event'] = 'used_certificates'; +$certificates_used_by_packages = pkg_call_plugins('plugin_certificates', $pluginparams); +$i = 0; foreach ($a_cert as $i => $cert): $name = htmlspecialchars($cert['descr']); @@ -1080,6 +1087,25 @@ foreach ($a_cert as $i => $cert): <?php if (is_captiveportal_cert($cert['refid'])): ?> Captive Portal <?php endif?> +<?php + $refid = $cert['refid']; + if (is_array($certificates_used_by_packages)) { + foreach ($certificates_used_by_packages as $name => $package) { + if (isset($package['certificatelist'][$refid])) { + $hint = "" ; + if (is_array($package['certificatelist'][$refid])) { + foreach ($package['certificatelist'][$refid] as $cert_used) { + $hint = $hint . $cert_used['usedby']."\n"; + } + } + $count = count($package['certificatelist'][$refid]); + echo "<div title='".htmlspecialchars($hint)."'>"; + echo htmlspecialchars($package['pkgname'])." ($count)<br />"; + echo "</div>"; + } + } + } +?> </td> <td> <?php if (!$cert['csr']): ?> @@ -1096,7 +1122,9 @@ foreach ($a_cert as $i => $cert): <?php endif?> </td> </tr> -<?php endforeach; ?> +<?php + $i++; + endforeach; ?> </tbody> </table> </div> diff --git a/src/usr/local/www/system_gateway_groups.php b/src/usr/local/www/system_gateway_groups.php index 950020c..aa69a84 100644 --- a/src/usr/local/www/system_gateway_groups.php +++ b/src/usr/local/www/system_gateway_groups.php @@ -131,7 +131,7 @@ if ($savemsg) { } if (is_subsystem_dirty('staticroutes')) { - print_info_box_np(sprintf(gettext("The gateway configuration has been changed.%sYou must apply the changes in order for them to take effect."), "<br />")); + print_apply_box(gettext("The gateway configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/system_gateway_groups_edit.php b/src/usr/local/www/system_gateway_groups_edit.php index 4b0e1e6..c026615 100644 --- a/src/usr/local/www/system_gateway_groups_edit.php +++ b/src/usr/local/www/system_gateway_groups_edit.php @@ -268,17 +268,18 @@ foreach ($a_gateways as $gwname => $gateway) { ))->setHelp($row == $numrows ? 'Gateway':null) ->setReadonly(); + $tr = gettext("Tier"); $group->add(new Form_Select( $gwname, 'Tier', $selected, array( '0' => 'Never', - '1' => 'Tier 1', - '2' => 'Tier 2', - '3' => 'Tier 3', - '4' => 'Tier 4', - '5' => 'Tier 5' + '1' => $tr . ' 1', + '2' => $tr . ' 2', + '3' => $tr . ' 3', + '4' => $tr . ' 4', + '5' => $tr . ' 5' ) ))->setHelp($row == $numrows ? 'Tier':null)->addClass('row')->addClass($gateway['ipprotocol']); @@ -329,10 +330,10 @@ $section->addInput(new Form_Select( 'Trigger Level', $pconfig['trigger'], array( - '0' => 'Member down', - '1' => 'Packet Loss', - '2' => 'High Latency', - '3' => 'Packet Loss or High latency' + '0' => gettext('Member down'), + '1' => gettext('Packet Loss'), + '2' => gettext('High Latency'), + '3' => gettext('Packet Loss or High latency') ) ))->setHelp('When to trigger exclusion of a member'); diff --git a/src/usr/local/www/system_gateways.php b/src/usr/local/www/system_gateways.php index bb4c3d6..f94081b 100644 --- a/src/usr/local/www/system_gateways.php +++ b/src/usr/local/www/system_gateways.php @@ -254,7 +254,7 @@ if ($savemsg) { } if (is_subsystem_dirty('staticroutes')) { - print_info_box_np(gettext("The gateway configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The gateway configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/system_groupmanager_addprivs.php b/src/usr/local/www/system_groupmanager_addprivs.php index c705a93..6819e39 100644 --- a/src/usr/local/www/system_groupmanager_addprivs.php +++ b/src/usr/local/www/system_groupmanager_addprivs.php @@ -150,7 +150,7 @@ if ($_POST) { /* if ajax is calling, give them an update message */ if (isAjax()) { - print_info_box_np($savemsg, '', '', false, 'success'); + print_info_box($savemsg, 'success'); } function build_priv_list() { diff --git a/src/usr/local/www/system_routes.php b/src/usr/local/www/system_routes.php index 0babde8..a09a3c8 100644 --- a/src/usr/local/www/system_routes.php +++ b/src/usr/local/www/system_routes.php @@ -254,7 +254,7 @@ if ($savemsg) { print_info_box($savemsg, 'success'); } if (is_subsystem_dirty('staticroutes')) { - print_info_box_np(gettext("The static route configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The static route configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } $tab_array = array(); diff --git a/src/usr/local/www/system_update_settings.php b/src/usr/local/www/system_update_settings.php index 58495e6..4133234 100644 --- a/src/usr/local/www/system_update_settings.php +++ b/src/usr/local/www/system_update_settings.php @@ -65,39 +65,32 @@ require("guiconfig.inc"); require("pkg-utils.inc"); if ($_POST) { - unset($input_errors); - - /* input validation */ - if (($_POST['alturlenable'] == "yes") && (empty($_POST['firmwareurl']))) { - $input_errors[] = gettext("A Firmware Auto Update Base URL must be specified when \"Use an unofficial server for firmware upgrades\" is enabled."); - } - - if (!$input_errors) { - // Set the firmware branch, but only if we are not using it already - if ($_POST['fwbranch']) { - if (($_POST['fwbranch'] == "development") && is_pkg_installed($g['product_name'] . "-repo")) { - pkg_switch_repo(true); - } else if (($_POST['fwbranch'] == "stable") && is_pkg_installed($g['product_name'] . "-repo-devel")) { - pkg_switch_repo(false); - } - } - - if ($_POST['disablecheck'] == "yes") { - $config['system']['firmware']['disablecheck'] = true; - } else { - unset($config['system']['firmware']['disablecheck']); + // Set the firmware branch, but only if we are not using it already + if ($_POST['fwbranch']) { + if (($_POST['fwbranch'] == "development") && !is_pkg_installed($g['product_name'] . "-repo-devel")) { + pkg_switch_repo(true); + pkg_update(true); + } else if (($_POST['fwbranch'] == "stable") && !is_pkg_installed($g['product_name'] . "-repo")) { + pkg_switch_repo(false); + pkg_update(true); } + } - if ($_POST['synconupgrade'] == "yes") { - $config['system']['gitsync']['synconupgrade'] = true; - } else { - unset($config['system']['gitsync']['synconupgrade']); - } - $config['system']['gitsync']['repositoryurl'] = $_POST['repositoryurl']; - $config['system']['gitsync']['branch'] = $_POST['branch']; + if ($_POST['disablecheck'] == "yes") { + $config['system']['firmware']['disablecheck'] = true; + } else { + unset($config['system']['firmware']['disablecheck']); + } - write_config(); + if ($_POST['synconupgrade'] == "yes") { + $config['system']['gitsync']['synconupgrade'] = true; + } else { + unset($config['system']['gitsync']['synconupgrade']); } + $config['system']['gitsync']['repositoryurl'] = $_POST['repositoryurl']; + $config['system']['gitsync']['branch'] = $_POST['branch']; + + write_config(); } $curcfg = $config['system']['firmware']; @@ -208,34 +201,5 @@ if (file_exists("/usr/local/bin/git") && $g['platform'] == $g['product_name']) { } // e-o-if(file_exista() print($form); -?> - -<script type="text/javascript"> -//<![CDATA[ -events.push(function() { - // Update firmwareurl from preseturls or from the saved alternate if "Unofficial" is checked - function update_firmwareurl() { - if (!$('#alturlenable').prop('checked')) { - $('#firmwareurl').prop('readonly', true) - $('#firmwareurl').val($('#preseturls').val()); - } else { - $('#firmwareurl').prop('readonly', false) - $('#firmwareurl').val("<?=$config['system']['firmware']['alturl']['firmwareurl']?>"); - } - } - - // Call it when preseturls changes - - $('#preseturls, #alturlenable').on('change', function() { - update_firmwareurl(); - }) - - // And call it on page load - update_firmwareurl(); -}); - -//]]> -</script> -<?php include("foot.inc"); diff --git a/src/usr/local/www/system_usermanager_addprivs.php b/src/usr/local/www/system_usermanager_addprivs.php index d683da6..69860ba 100644 --- a/src/usr/local/www/system_usermanager_addprivs.php +++ b/src/usr/local/www/system_usermanager_addprivs.php @@ -154,7 +154,7 @@ function build_priv_list() { /* if ajax is calling, give them an update message */ if (isAjax()) { - print_info_box_np($savemsg, '', '', false, 'success'); + print_info_box($savemsg, 'success'); } include("head.inc"); diff --git a/src/usr/local/www/vpn_ipsec.php b/src/usr/local/www/vpn_ipsec.php index 56f2cf6..d991896 100644 --- a/src/usr/local/www/vpn_ipsec.php +++ b/src/usr/local/www/vpn_ipsec.php @@ -82,7 +82,6 @@ $a_phase1 = &$config['ipsec']['phase1']; $a_phase2 = &$config['ipsec']['phase2']; if ($_POST) { - if ($_POST['apply']) { $retval = vpn_ipsec_configure(); /* reload the filter in the background */ @@ -269,7 +268,7 @@ display_top_tabs($tab_array); } if (is_subsystem_dirty('ipsec')) { - print_info_box_np(gettext("The IPsec tunnel configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The IPsec tunnel configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } ?> @@ -509,7 +508,7 @@ display_top_tabs($tab_array); <!-- <button class="fa fa-anchor button-icon" type="submit" name="movep2_<?=$j?>" value="movep2_<?=$j?>" title="<?=gettext("Move checked P2s here")?>"></button> --> <a class="fa fa-pencil" href="vpn_ipsec_phase2.php?p2index=<?=$ph2ent['uniqid']?>" title="<?=gettext("Edit phase2 entry"); ?>"></a> <a class="fa fa-clone" href="vpn_ipsec_phase2.php?dup=<?=$ph2ent['uniqid']?>" title="<?=gettext("Add a new Phase 2 based on this one"); ?>"></a> - <a class="fa fa-trash no-confirm" id="Xdelp2_<?=$i?>" title="<?=gettext('Delete phase2 entry'); ?>"></a> + <a class="fa fa-trash no-confirm" id="Xdelp2_<?=$ph2index?>" title="<?=gettext('Delete phase2 entry'); ?>"></a> <button style="display: none;" class="btn btn-xs btn-warning" type="submit" id="delp2_<?=$ph2index?>" name="delp2_<?=$ph2index?>" value="delp2_<?=$ph2index?>" title="<?=gettext('delete phase2 entry'); ?>">delete</button> </td> </tr> diff --git a/src/usr/local/www/vpn_ipsec_keys.php b/src/usr/local/www/vpn_ipsec_keys.php index 053b408..78dd1d0 100644 --- a/src/usr/local/www/vpn_ipsec_keys.php +++ b/src/usr/local/www/vpn_ipsec_keys.php @@ -115,7 +115,7 @@ if ($savemsg) { } if (is_subsystem_dirty('ipsec')) { - print_info_box_np(gettext("The IPsec tunnel configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The IPsec tunnel configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } ?> diff --git a/src/usr/local/www/vpn_ipsec_keys_edit.php b/src/usr/local/www/vpn_ipsec_keys_edit.php index 69478da..dbdc033 100644 --- a/src/usr/local/www/vpn_ipsec_keys_edit.php +++ b/src/usr/local/www/vpn_ipsec_keys_edit.php @@ -144,7 +144,7 @@ if ($_POST) { $text = gettext("Added"); } - write_config("{$text} IPsec Pre-Shared Keys"); + write_config("{$text} " . gettext("IPsec Pre-Shared Keys")); mark_subsystem_dirty('ipsec'); header("Location: vpn_ipsec_keys.php"); diff --git a/src/usr/local/www/vpn_ipsec_mobile.php b/src/usr/local/www/vpn_ipsec_mobile.php index 03c8aa8..21e365a 100644 --- a/src/usr/local/www/vpn_ipsec_mobile.php +++ b/src/usr/local/www/vpn_ipsec_mobile.php @@ -437,7 +437,7 @@ if ($savemsg) { print_info_box($savemsg, 'success'); } if (is_subsystem_dirty('ipsec')) { - print_info_box_np(gettext("The IPsec tunnel configuration has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect.")); + print_apply_box(gettext("The IPsec tunnel configuration has been changed.") . "<br />" . gettext("You must apply the changes in order for them to take effect.")); } foreach ($a_phase1 as $ph1ent) { if (isset($ph1ent['mobile'])) { @@ -445,8 +445,9 @@ foreach ($a_phase1 as $ph1ent) { } } if ($pconfig['enable'] && !$ph1found) { - print_info_box_np(gettext("Support for IPsec Mobile clients is enabled but a Phase1 definition was not found") . ".<br />" . gettext("Please click Create to define one."), gettext("create"), gettext("Create Phase1")); + print_info_box(gettext("Support for IPsec Mobile clients is enabled but a Phase1 definition was not found") . ".<br />" . gettext("Please click Create to define one."), "warning", "create", gettext("Create Phase1")); } + if ($input_errors) { print_input_errors($input_errors); } @@ -491,8 +492,8 @@ $section->addInput(new Form_Select( 'Group Authentication', $pconfig['group_source'], array( - 'none' => 'none', - 'system' => 'system', + 'none' => gettext('none'), + 'system' => gettext('system'), ) ))->setHelp('Source'); diff --git a/src/usr/local/www/vpn_ipsec_phase1.php b/src/usr/local/www/vpn_ipsec_phase1.php index c96f1fb..5cd751e 100644 --- a/src/usr/local/www/vpn_ipsec_phase1.php +++ b/src/usr/local/www/vpn_ipsec_phase1.php @@ -545,7 +545,7 @@ function build_interface_list() { $vipif = $group[0]['int']; } - $interfaces[$name] = "GW Group {$name}"; + $interfaces[$name] = sprintf(gettext("GW Group %s"), $name); } return($interfaces); @@ -672,7 +672,7 @@ $section->addInput(new Form_Select( 'iketype', 'Key Exchange version', $pconfig['iketype'], - array("ikev1" => "V1", "ikev2" => "V2", "auto" => "Auto") + array("ikev1" => "V1", "ikev2" => "V2", "auto" => gettext("Auto")) ))->setHelp('Select the Internet Key Exchange protocol version to be used, IKEv1 or IKEv2.'); $section->addInput(new Form_Select( @@ -720,7 +720,7 @@ $section->addInput(new Form_Select( 'mode', 'Negotiation mode', $pconfig['mode'], - array("main" => "Main", "aggressive" => "Aggressive") + array("main" => gettext("Main"), "aggressive" => gettext("Aggressive")) ))->setHelp('Aggressive is more flexible, but less secure.'); $group = new Form_Group('My identifier'); @@ -857,7 +857,7 @@ $section->addInput(new Form_Select( 'nat_traversal', 'NAT Traversal', $pconfig['nat_traversal'], - array('on' => 'Auto', 'force' => 'Force') + array('on' => gettext('Auto'), 'force' => gettext('Force')) ))->setHelp('Set this option to enable the use of NAT-T (i.e. the encapsulation of ESP in UDP packets) if needed, ' . 'which can help with clients that are behind restrictive firewalls.'); @@ -865,7 +865,7 @@ $section->addInput(new Form_Select( 'mobike', 'MOBIKE', $pconfig['mobike'], - array('on' => 'Enable', 'off' => 'Disable') + array('on' => gettext('Enable'), 'off' => gettext('Disable')) ))->setHelp('Set this option to control the use of MOBIKE'); $section->addInput(new Form_Checkbox( diff --git a/src/usr/local/www/vpn_ipsec_phase2.php b/src/usr/local/www/vpn_ipsec_phase2.php index e00be54..d861384 100644 --- a/src/usr/local/www/vpn_ipsec_phase2.php +++ b/src/usr/local/www/vpn_ipsec_phase2.php @@ -556,7 +556,7 @@ $group->add(new Form_Select( 'localid_type', null, $pconfig['localid_type'], - ['address' => 'Address', 'network' => 'Network'] + $subnetarray + ['address' => gettext('Address'), 'network' => gettext('Network')] + $subnetarray ))->setHelp('Type'); $group->add(new Form_IpAddress( @@ -576,7 +576,7 @@ foreach ($subnetarray as $ifname => $ifdescr) { } // Tack none, address & network on the beginning -$subnetarray = array('none' => gettext('None'), 'address' => 'Address', 'network' => 'Network') + $subnetarray; +$subnetarray = array('none' => gettext('None'), 'address' => gettext('Address'), 'network' => gettext('Network')) + $subnetarray; $group->add(new Form_Select( 'natlocalid_type', @@ -602,7 +602,7 @@ if (!isset($pconfig['mobile'])) { 'remoteid_type', null, $pconfig['remoteid_type'], - array('address' => 'Address', 'network' => 'Network') + array('address' => gettext('Address'), 'network' => gettext('Network')) ))->setHelp('Type'); $group->add(new Form_IpAddress( @@ -660,7 +660,7 @@ foreach ($p2_ealgos as $algo => $algodata) { 'keylen_' . $algo, null, $pconfig["keylen_".$algo], - ['auto' => 'Auto'] + $list + ['auto' => gettext('Auto')] + $list )); } diff --git a/src/usr/local/www/vpn_ipsec_settings.php b/src/usr/local/www/vpn_ipsec_settings.php index a6e858a..03c44d5 100644 --- a/src/usr/local/www/vpn_ipsec_settings.php +++ b/src/usr/local/www/vpn_ipsec_settings.php @@ -94,16 +94,16 @@ if ($_POST) { foreach ($ipsec_log_cats as $cat => $desc) { if (!in_array(intval($pconfig[$cat]), array_keys($ipsec_log_sevs), true)) { - $input_errors[] = "A valid value must be specified for {$desc} debug."; + $input_errors[] = sprintf(gettext("A valid value must be specified for %s debug."), $desc); } } if (isset($pconfig['maxmss'])) { if (!is_numericint($pconfig['maxmss']) && $pconfig['maxmss'] != '') { - $input_errors[] = "An integer must be specified for Maximum MSS."; + $input_errors[] = gettext("An integer must be specified for Maximum MSS."); } if ($pconfig['maxmss'] <> '' && $pconfig['maxmss'] < 576 || $pconfig['maxmss'] > 65535) { - $input_errors[] = "An integer between 576 and 65535 must be specified for Maximum MSS"; + $input_errors[] = gettext("An integer between 576 and 65535 must be specified for Maximum MSS"); } } @@ -244,9 +244,9 @@ include("head.inc"); function maxmss_checked(obj) { if (obj.checked) { - jQuery('#maxmss').attr('disabled', false); + $('#maxmss').attr('disabled', false); } else { - jQuery('#maxmss').attr('disabled', 'true'); + $('#maxmss').attr('disabled', 'true'); } } @@ -359,10 +359,10 @@ $section->add($group); $section->addInput(new Form_Checkbox( 'unityplugin', - 'Disable Cisco Extensions', - 'Disable Unity Plugin', + 'Enable Cisco Extensions', + 'Enable Unity Plugin', $pconfig['unityplugin'] -))->setHelp('Disable Unity Plugin which provides Cisco Extension support as Split-Include, Split-Exclude, Split-Dns, ...'); +))->setHelp('Enable Unity Plugin which provides Cisco Extension support such as Split-Include, Split-Exclude and Split-Dns.'); $section->addInput(new Form_Checkbox( 'strictcrlpolicy', diff --git a/src/usr/local/www/vpn_l2tp.php b/src/usr/local/www/vpn_l2tp.php index 12102ef..073de46 100644 --- a/src/usr/local/www/vpn_l2tp.php +++ b/src/usr/local/www/vpn_l2tp.php @@ -211,7 +211,7 @@ if ($_POST) { /* if ajax is calling, give them an update message */ if (isAjax()) { - print_info_box_np($savemsg, '', '', false, 'success'); + print_info_box($savemsg, 'success'); } } } @@ -363,9 +363,12 @@ $section->addInput(new Form_Checkbox( $form->add($section); print($form); - -print_info_box(gettext("Don't forget to add a firewall rule to permit traffic from L2TP clients!"), 'info'); ?> +<div class="infoblock blockopen"> +<?php + print_info_box(gettext("Don't forget to add a firewall rule to permit traffic from L2TP clients!"), 'info', false); +?> +</div> <script type="text/javascript"> //<![CDATA[ diff --git a/src/usr/local/www/vpn_l2tp_users.php b/src/usr/local/www/vpn_l2tp_users.php index cb9cc7d..a5c5a0e 100644 --- a/src/usr/local/www/vpn_l2tp_users.php +++ b/src/usr/local/www/vpn_l2tp_users.php @@ -110,7 +110,7 @@ if (isset($config['l2tp']['radius']['enable'])) { } if (is_subsystem_dirty('l2tpusers')) { - print_info_box_np(gettext("The l2tp user list has been modified") . ".<br />" . gettext("You must apply the changes in order for them to take effect") . ".<br /><b>" . gettext("Warning: this will terminate all current l2tp sessions!") . "</b>"); + print_apply_box(gettext("The l2tp user list has been modified.") . "<br />" . gettext("You must apply the changes in order for them to take effect") . ".<br /><b>" . gettext("Warning: this will terminate all current l2tp sessions!") . "</b>"); } diff --git a/src/usr/local/www/vpn_openvpn_client.php b/src/usr/local/www/vpn_openvpn_client.php index 8d41ddb..4f7cb9e 100644 --- a/src/usr/local/www/vpn_openvpn_client.php +++ b/src/usr/local/www/vpn_openvpn_client.php @@ -512,7 +512,7 @@ if ($act=="new" || $act=="edit"): 'proxy_authtype', 'Proxy Auth. - Extra options', $pconfig['proxy_authtype'], - array('none' => 'none', 'basic' => 'basic', 'ntlm' => 'ntlm') + array('none' => gettext('none'), 'basic' => gettext('basic'), 'ntlm' => gettext('ntlm')) )); $section->addInput(new Form_Input( diff --git a/src/usr/local/www/vpn_openvpn_csc.php b/src/usr/local/www/vpn_openvpn_csc.php index 870c5a5..71c1862 100644 --- a/src/usr/local/www/vpn_openvpn_csc.php +++ b/src/usr/local/www/vpn_openvpn_csc.php @@ -335,7 +335,7 @@ if ($act == "new" || $act == "edit"): if (is_array($config['openvpn']['openvpn-server'])) { foreach ($config['openvpn']['openvpn-server'] as $serversettings) { if (in_array($serversettings['mode'], $openvpn_tls_server_modes)) { - $serveroptionlist[$serversettings['vpnid']] = "OpenVPN Server {$serversettings['vpnid']}: {$serversettings['description']}"; + $serveroptionlist[$serversettings['vpnid']] = sprintf(gettext("OpenVPN Server %d: %s"), $serversettings['vpnid'], $serversettings['description']); } } } diff --git a/src/usr/local/www/vpn_openvpn_server.php b/src/usr/local/www/vpn_openvpn_server.php index db033ff..26d6d14 100644 --- a/src/usr/local/www/vpn_openvpn_server.php +++ b/src/usr/local/www/vpn_openvpn_server.php @@ -126,7 +126,7 @@ if ($_GET['act'] == "del") { } unset($a_server[$id]); write_config(); - $savemsg = gettext("Server successfully deleted")."<br />"; + $savemsg = gettext("Server successfully deleted"); } if ($_GET['act'] == "new") { @@ -603,7 +603,7 @@ if ($input_errors) { } if ($savemsg) { - print_info_box_np($savemsg, 'success'); + print_info_box($savemsg, 'success'); } $tab_array = array(); @@ -762,7 +762,7 @@ if ($act=="new" || $act=="edit"): } } } else { - $certhelp = sprintf('%s%s%s$s', '<span id="certtype">', gettext('No Certificates defined. You may create one here: '), '<a href="system_camanager.php">System > Cert Manager</a>', '</span>'); + $certhelp = sprintf('%s%s%s$s', '<span id="certtype">', gettext('No Certificates defined. You may create one here: '), '<a href="system_camanager.php">' . gettext("System > Cert Manager") . '</a>', '</span>'); } $cl = openvpn_build_cert_list(false, true); @@ -824,7 +824,7 @@ if ($act=="new" || $act=="edit"): 'cert_depth', 'Certificate Depth', $pconfig['cert_depth'], - ["" => "Do Not Check"] + $openvpn_cert_depths + ["" => gettext("Do Not Check")] + $openvpn_cert_depths ))->setHelp('When a certificate-based client logs in, do not accept certificates below this depth. ' . 'Useful for denying certificates made with intermediate CAs generated from the same CA as the server.'); @@ -1266,7 +1266,7 @@ events.push(function() { hideInput('certref', false); hideInput('dh_length', false); hideInput('cert_depth', false); - hideInput('strictusercn', true); + hideCheckbox('strictusercn', true); hideCheckbox('autokey_enable', true); hideInput('shared_key', false); hideInput('topology', false); @@ -1276,7 +1276,7 @@ events.push(function() { hideInput('certref', false); hideInput('dh_length', false); hideInput('cert_depth', false); - hideInput('strictusercn', false); + hideCheckbox('strictusercn', false); hideCheckbox('autokey_enable', true); hideInput('shared_key', true); hideInput('topology', false); @@ -1291,7 +1291,7 @@ events.push(function() { hideCheckbox('tlsauth_enable', true); hideInput('dh_length', true); hideInput('cert_depth', true); - hideInput('strictusercn', true); + hideCheckbox('strictusercn', true); hideCheckbox('autokey_enable', true); hideInput('shared_key', false); hideInput('topology', true); diff --git a/src/usr/local/www/widgets/include/captiveportal.inc b/src/usr/local/www/widgets/include/captiveportal.inc index 3714209..8a2ea3e 100644 --- a/src/usr/local/www/widgets/include/captiveportal.inc +++ b/src/usr/local/www/widgets/include/captiveportal.inc @@ -1,4 +1,4 @@ <?php -$captive_portal_status_title = "Captive Portal Status"; +$captive_portal_status_title = gettext("Captive Portal Status"); $captive_portal_status_title_link = "status_captiveportal.php"; ?> diff --git a/src/usr/local/www/widgets/include/carp_status.inc b/src/usr/local/www/widgets/include/carp_status.inc index 63a49fe..29a05ac 100644 --- a/src/usr/local/www/widgets/include/carp_status.inc +++ b/src/usr/local/www/widgets/include/carp_status.inc @@ -1,7 +1,7 @@ <?php //set variable for custom title -$carp_status_title = "CARP Status"; +$carp_status_title = gettext("CARP Status"); $carp_status_title_link = "status_carp.php"; ?> diff --git a/src/usr/local/www/widgets/include/dyn_dns_status.inc b/src/usr/local/www/widgets/include/dyn_dns_status.inc index b2588db..314bb13 100644 --- a/src/usr/local/www/widgets/include/dyn_dns_status.inc +++ b/src/usr/local/www/widgets/include/dyn_dns_status.inc @@ -1,7 +1,7 @@ <?php //set variable for custom title -$dyn_dns_status_title = "Dynamic DNS Status"; +$dyn_dns_status_title = gettext("Dynamic DNS Status"); $dyn_dns_status_title_link = "services_dyndns.php"; ?> diff --git a/src/usr/local/www/widgets/include/gateways.inc b/src/usr/local/www/widgets/include/gateways.inc index 4666689..971c842 100644 --- a/src/usr/local/www/widgets/include/gateways.inc +++ b/src/usr/local/www/widgets/include/gateways.inc @@ -1,5 +1,5 @@ <?php //set variable for custom title -$gateways_title = "Gateways"; +$gateways_title = gettext("Gateways"); $gateways_title_link = "status_gateways.php"; ?> diff --git a/src/usr/local/www/widgets/include/gmirror_status.inc b/src/usr/local/www/widgets/include/gmirror_status.inc index 6547d4d..c9b2224 100644 --- a/src/usr/local/www/widgets/include/gmirror_status.inc +++ b/src/usr/local/www/widgets/include/gmirror_status.inc @@ -1,4 +1,4 @@ <?php -$gmirror_status_title = "GEOM Mirror Status"; +$gmirror_status_title = gettext("GEOM Mirror Status"); $gmirror_status_title_link = "diag_gmirror.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/installed_packages.inc b/src/usr/local/www/widgets/include/installed_packages.inc index a978191..aa75e85 100644 --- a/src/usr/local/www/widgets/include/installed_packages.inc +++ b/src/usr/local/www/widgets/include/installed_packages.inc @@ -1,7 +1,7 @@ <?php //set variable for custom title -$installed_packages_title = "Installed Packages"; +$installed_packages_title = gettext("Installed Packages"); $installed_packages_title_link = "pkg_mgr_installed.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/interface_statistics.inc b/src/usr/local/www/widgets/include/interface_statistics.inc index c789418..bda7aba 100644 --- a/src/usr/local/www/widgets/include/interface_statistics.inc +++ b/src/usr/local/www/widgets/include/interface_statistics.inc @@ -1,5 +1,5 @@ <?php //set variable for custom title -$interface_statistics_title = "Interface Statistics"; +$interface_statistics_title = gettext("Interface Statistics"); $interface_statistics_title_link = "status_interfaces.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/interfaces.inc b/src/usr/local/www/widgets/include/interfaces.inc index 6c19a6b..d619d23 100644 --- a/src/usr/local/www/widgets/include/interfaces.inc +++ b/src/usr/local/www/widgets/include/interfaces.inc @@ -1,6 +1,6 @@ <?php //set variable for custom title -$interfaces_title = "Interfaces"; +$interfaces_title = gettext("Interfaces"); $interfaces_title_link = "status_interfaces.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/ipsec.inc b/src/usr/local/www/widgets/include/ipsec.inc index 59fe454..0c8ba80 100644 --- a/src/usr/local/www/widgets/include/ipsec.inc +++ b/src/usr/local/www/widgets/include/ipsec.inc @@ -1,4 +1,4 @@ <?php -$ipsec_title = "IPsec"; +$ipsec_title = gettext("IPsec"); $ipsec_title_link = "status_ipsec.php"; ?> diff --git a/src/usr/local/www/widgets/include/load_balancer.inc b/src/usr/local/www/widgets/include/load_balancer.inc index 367ea46..5f89933 100644 --- a/src/usr/local/www/widgets/include/load_balancer.inc +++ b/src/usr/local/www/widgets/include/load_balancer.inc @@ -1,4 +1,4 @@ <?php -$load_balancer_status_title = "Load Balancer Status"; +$load_balancer_status_title = gettext("Load Balancer Status"); $load_balancer_status_title_link = "status_lb_pool.php"; ?> diff --git a/src/usr/local/www/widgets/include/log.inc b/src/usr/local/www/widgets/include/log.inc index d2bafb0..fa48047 100644 --- a/src/usr/local/www/widgets/include/log.inc +++ b/src/usr/local/www/widgets/include/log.inc @@ -1,6 +1,6 @@ <?php //set variable for custom title -$log_title = "Firewall Logs"; +$log_title = gettext("Firewall Logs"); $log_title_link = "status_logs_filter.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/ntp_status.inc b/src/usr/local/www/widgets/include/ntp_status.inc index 1115095..cb5be1a 100644 --- a/src/usr/local/www/widgets/include/ntp_status.inc +++ b/src/usr/local/www/widgets/include/ntp_status.inc @@ -1,5 +1,5 @@ <?php //set variable for custom title -$ntp_status_title = "NTP Status"; +$ntp_status_title = gettext("NTP Status"); $ntp_status_title_link = "status_ntpd.php"; ?> diff --git a/src/usr/local/www/widgets/include/openvpn.inc b/src/usr/local/www/widgets/include/openvpn.inc index 075d0e5..8eb11c1 100644 --- a/src/usr/local/www/widgets/include/openvpn.inc +++ b/src/usr/local/www/widgets/include/openvpn.inc @@ -1,4 +1,4 @@ <?php -$openvpn_title = "OpenVPN"; +$openvpn_title = gettext("OpenVPN"); $openvpn_title_link = "status_openvpn.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/services_status.inc b/src/usr/local/www/widgets/include/services_status.inc index 685aee4..6691d42 100644 --- a/src/usr/local/www/widgets/include/services_status.inc +++ b/src/usr/local/www/widgets/include/services_status.inc @@ -1,7 +1,7 @@ <?php //set variable for custom title -$services_status_title = "Services Status"; +$services_status_title = gettext("Services Status"); $services_status_title_link = "status_services.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/include/smart_status.inc b/src/usr/local/www/widgets/include/smart_status.inc index bbfa274..cfcb9a9 100644 --- a/src/usr/local/www/widgets/include/smart_status.inc +++ b/src/usr/local/www/widgets/include/smart_status.inc @@ -1,5 +1,5 @@ <?php //set variable for custom title -$smart_status_title = "SMART Status"; +$smart_status_title = gettext("SMART Status"); $smart_status_title_link = "diag_smart.php"; ?> diff --git a/src/usr/local/www/widgets/include/thermal_sensors.inc b/src/usr/local/www/widgets/include/thermal_sensors.inc index e6ddb58..6ec2141 100644 --- a/src/usr/local/www/widgets/include/thermal_sensors.inc +++ b/src/usr/local/www/widgets/include/thermal_sensors.inc @@ -11,7 +11,7 @@ */ //set variable for custom title -$thermal_sensors_widget_title = "Thermal Sensors"; +$thermal_sensors_widget_title = gettext("Thermal Sensors"); //$thermal_sensors_widget_link = "thermal_sensors.php"; diff --git a/src/usr/local/www/widgets/include/traffic_graph.inc b/src/usr/local/www/widgets/include/traffic_graph.inc index 3901db6..76da208 100644 --- a/src/usr/local/www/widgets/include/traffic_graph.inc +++ b/src/usr/local/www/widgets/include/traffic_graph.inc @@ -1,4 +1,4 @@ <?php -$traffic_graphs_title = "Traffic Graphs"; +$traffic_graphs_title = gettext("Traffic Graphs"); $traffic_graphs_title_link = "status_graph.php"; ?> diff --git a/src/usr/local/www/widgets/include/wake_on_lan.inc b/src/usr/local/www/widgets/include/wake_on_lan.inc index af3229c..accab90 100644 --- a/src/usr/local/www/widgets/include/wake_on_lan.inc +++ b/src/usr/local/www/widgets/include/wake_on_lan.inc @@ -1,7 +1,7 @@ <?php //set variable for custom title -$wake_on_lan_title = "Wake On Lan"; +$wake_on_lan_title = gettext("Wake On Lan"); $wake_on_lan_title_link = "services_wol.php"; ?>
\ No newline at end of file diff --git a/src/usr/local/www/widgets/javascript/cpu_graphs.js b/src/usr/local/www/widgets/javascript/cpu_graphs.js index 1fc690a..2e00e67 100644 --- a/src/usr/local/www/widgets/javascript/cpu_graphs.js +++ b/src/usr/local/www/widgets/javascript/cpu_graphs.js @@ -36,7 +36,7 @@ var GL_DYNAMIC = 1; function GraphInitialize(element_id, width, height, bar_width) { // Find the page element which will contain the graph var owner; - if((owner = jQuery('#' + element_id)) == null) { + if((owner = $('#' + element_id)) == null) { alert("GraphLink Error: Element ID '" + element_id + "' not found."); return false; } @@ -72,10 +72,10 @@ function GraphInitialize(element_id, width, height, bar_width) { graph_html += '</div>'; owner.html(graph_html); - graph['element_id'] = jQuery('#GraphLinkData' + graph['id']); + graph['element_id'] = $('#GraphLinkData' + graph['id']); for(i = 0; i < bar_count; i++) { - graph['spans'][i] = jQuery('#GraphLinkBar' + graph['id'] + '_' + i); + graph['spans'][i] = $('#GraphLinkBar' + graph['id'] + '_' + i); graph['spans'][i].css('width',bar_width + 'px'); graph['spans'][i].css('margin-top',height + 'px'); } @@ -241,5 +241,5 @@ function GraphDraw(graph) { for(var i = 0; i < count; i++) graph['spans'][i].css("marginTop", getMargin(i)); -// jQuery('#' + graph['spans'][count - 1]).fadeIn(500); +// $('#' + graph['spans'][count - 1]).fadeIn(500); } diff --git a/src/usr/local/www/widgets/javascript/thermal_sensors.js b/src/usr/local/www/widgets/javascript/thermal_sensors.js index 4733f67..cc575e7 100644 --- a/src/usr/local/www/widgets/javascript/thermal_sensors.js +++ b/src/usr/local/www/widgets/javascript/thermal_sensors.js @@ -65,7 +65,7 @@ function showThermalSensorsData() { //IE fix to disable cache when using http:// , just append timespan + new Date().getTime(); - jQuery.ajax(url, { + $.ajax(url, { type: 'get', success: function(data) { var thermalSensorsData = data || ""; @@ -112,9 +112,9 @@ function loadThermalSensorsContainer (thermalSensorsContent) { if (thermalSensorsContent && thermalSensorsContent != "") { //load generated graph (or raw data) into thermalSensorsContainer (thermalSensorsContainer DIV defined in "thermal_sensors.widget.php") - jQuery('#thermalSensorsContainer').html(thermalSensorsContent); + $('#thermalSensorsContainer').html(thermalSensorsContent); } else { - jQuery('#thermalSensorsContainer').html("No Thermal Sensors data available."); + $('#thermalSensorsContainer').html("No Thermal Sensors data available."); } } diff --git a/src/usr/local/www/widgets/javascript/traffic_graph.js b/src/usr/local/www/widgets/javascript/traffic_graph.js index 383a549..51f55ed 100644 --- a/src/usr/local/www/widgets/javascript/traffic_graph.js +++ b/src/usr/local/www/widgets/javascript/traffic_graph.js @@ -1,13 +1,13 @@ function trafficshowDiv(incDiv,ifDescription,refreshIntervalSec,swapButtons) { // put the graph object HTML in the element and make it appear selectedDiv = incDiv + "graphdiv"; - jQuery('#' + selectedDiv).html( + $('#' + selectedDiv).html( '<object data="graph.php?ifnum=' + incDiv + '&ifname=' + ifDescription + '&timeint=' + refreshIntervalSec + '&initdelay=0" height="100%" width="100%">' + '<param name="id" value="graph" />' + '<param name="type" value="image/svg+xml" />' + '<param name="pluginspage" value="http://www.adobe.com/svg/viewer/install/auto" />' + '</object>'); - jQuery('#' + selectedDiv).effect('blind',{mode:'show'},1000); + $('#' + selectedDiv).effect('blind',{mode:'show'},1000); d = document; if (swapButtons) { selectIntLink = selectedDiv + "-min"; @@ -24,8 +24,8 @@ function trafficshowDiv(incDiv,ifDescription,refreshIntervalSec,swapButtons) { function trafficminimizeDiv(incDiv,swapButtons) { // remove the graph object HTML from the element (so it does not keep using CPU) and fade selectedDiv = incDiv + "graphdiv"; - jQuery('#' + selectedDiv).html(''); - jQuery('#' + selectedDiv).effect('blind',{mode:'hide'},1000); + $('#' + selectedDiv).html(''); + $('#' + selectedDiv).effect('blind',{mode:'hide'},1000); d = document; if (swapButtons) { selectIntLink = selectedDiv + "-open"; diff --git a/src/usr/local/www/widgets/widgets/captive_portal_status.widget.php b/src/usr/local/www/widgets/widgets/captive_portal_status.widget.php index c325b54..c91d1c0 100644 --- a/src/usr/local/www/widgets/widgets/captive_portal_status.widget.php +++ b/src/usr/local/www/widgets/widgets/captive_portal_status.widget.php @@ -130,8 +130,8 @@ if ($_GET['order']) { <table class="table table-condensed sortable-theme-bootstrap" data-sortable> <thead> <tr> - <th><a href="?order=ip&showact=<?=$showact;?>">IP address</a></th> - <th><a href="?order=mac&showact=<?=$showact;?>">MAC address</a></th> + <th><a href="?order=ip&showact=<?=$showact;?>"><?=gettext("IP address");?></a></th> + <th><a href="?order=mac&showact=<?=$showact;?>"><?=gettext("MAC address");?></a></th> <th><a href="?order=user&showact=<?=$showact;?>"><?=gettext("Username");?></a></th> <?php if ($showact == 1): ?> <th><a href="?order=start&showact=<?=$showact;?>"><?=gettext("Session start");?></a></th> @@ -151,7 +151,7 @@ if ($_GET['order']) { <?php endif; ?> <td> <a href="?order=<?=htmlspecialchars($_GET['order']);?>&showact=<?=$showact;?>&act=del&zone=<?=$cpent[10];?>&id=<?=$cpent[5];?>" class="btn btn-xs btn-danger"> - delete + <?=gettext("delete");?> </a> </td> </tr> diff --git a/src/usr/local/www/widgets/widgets/carp_status.widget.php b/src/usr/local/www/widgets/widgets/carp_status.widget.php index 8884e2b..2349ede 100644 --- a/src/usr/local/www/widgets/widgets/carp_status.widget.php +++ b/src/usr/local/www/widgets/widgets/carp_status.widget.php @@ -114,7 +114,7 @@ $carp_enabled = get_carp_status(); } } else { ?> - <tr><td>No CARP Interfaces Defined. Click <a href="status_carp.php">here</a> to configure CARP.</td></tr> + <tr><td><?=gettext('No CARP Interfaces Defined.')?> <?=sprintf(gettext('Click %1$shere%2$s to configure CARP.'), '<a href="status_carp.php">', '</a>')?></td></tr> <?php } ?> diff --git a/src/usr/local/www/widgets/widgets/dyn_dns_status.widget.php b/src/usr/local/www/widgets/widgets/dyn_dns_status.widget.php index e6454cb..a875526 100644 --- a/src/usr/local/www/widgets/widgets/dyn_dns_status.widget.php +++ b/src/usr/local/www/widgets/widgets/dyn_dns_status.widget.php @@ -158,7 +158,7 @@ if ($_REQUEST['getdyndnsstatus']) { scroll(0,0); var url = "/widgets/widgets/dyn_dns_status.widget.php"; var pars = 'getdyndnsstatus=yes'; - jQuery.ajax( + $.ajax( url, { type: 'get', @@ -173,7 +173,7 @@ if ($_REQUEST['getdyndnsstatus']) { var responseStrings = transport.responseText.split("|"); for (var count=0; count<responseStrings.length; count++) { var divlabel = '#dyndnsstatus' + count; - jQuery(divlabel).prop('innerHTML',responseStrings[count]); + $(divlabel).prop('innerHTML',responseStrings[count]); } } // Do the first status check 2 seconds after the dashboard opens diff --git a/src/usr/local/www/widgets/widgets/gateways.widget.php b/src/usr/local/www/widgets/widgets/gateways.widget.php index 16cd219..ccb47ea 100644 --- a/src/usr/local/www/widgets/widgets/gateways.widget.php +++ b/src/usr/local/www/widgets/widgets/gateways.widget.php @@ -77,7 +77,7 @@ if ($_POST) { if (isset($_POST["display_type"])) { $config["widgets"]["gateways_widget"]["display_type"] = $_POST["display_type"]; } - write_config("Updated gateways widget settings via dashboard."); + write_config(gettext("Updated gateways widget settings via dashboard.")); header("Location: /"); exit(0); } @@ -130,11 +130,11 @@ if ($_POST) { } } ?> - <input name="display_type" class="radio" type="radio" id="display_type_gw_ip" value="gw_ip" <?=$display_type_gw_ip;?> onchange="updateGatewayDisplays();" /> <span>Gateway IP</span> - <input name="display_type" class="radio" type="radio" id="display_type_monitor_ip" value="monitor_ip" <?=$display_type_monitor_ip;?> onchange="updateGatewayDisplays();" /> <span>Monitor IP</span> - <input name="display_type" class="radio" type="radio" id="display_type_both_ip" value="both_ip" <?=$display_type_both_ip;?> onchange="updateGatewayDisplays();" /> <span>Both</span> + <input name="display_type" class="radio" type="radio" id="display_type_gw_ip" value="gw_ip" <?=$display_type_gw_ip;?> onchange="updateGatewayDisplays();" /> <span><?=gettext('Gateway IP')?></span> + <input name="display_type" class="radio" type="radio" id="display_type_monitor_ip" value="monitor_ip" <?=$display_type_monitor_ip;?> onchange="updateGatewayDisplays();" /> <span><?=gettext('Monitor IP')?></span> + <input name="display_type" class="radio" type="radio" id="display_type_both_ip" value="both_ip" <?=$display_type_both_ip;?> onchange="updateGatewayDisplays();" /> <span><?=gettext('Both')?></span> <br /><br /> - <input id="submit_settings" name="submit_settings" type="submit" onclick="return updatePref();" class="formbtn" value="Save Settings" /> + <input id="submit_settings" name="submit_settings" type="submit" onclick="return updatePref();" class="formbtn" value="<?=gettext('Save Settings')?>" /> </form> </div> @@ -232,22 +232,22 @@ function compose_table_body_contents() { if ($gateways_status[$gname]) { if (stristr($gateways_status[$gname]['status'], "force_down")) { - $online = "Offline (forced)"; + $online = gettext("Offline (forced)"); $bgcolor = "danger"; // lightcoral } elseif (stristr($gateways_status[$gname]['status'], "down")) { - $online = "Offline"; + $online = gettext("Offline"); $bgcolor = "danger"; // lightcoral } elseif (stristr($gateways_status[$gname]['status'], "loss")) { - $online = "Packetloss"; + $online = gettext("Packetloss"); $bgcolor = "warning"; // khaki } elseif (stristr($gateways_status[$gname]['status'], "delay")) { - $online = "Latency"; + $online = gettext("Latency"); $bgcolor = "warning"; // khaki } elseif ($gateways_status[$gname]['status'] == "none") { - $online = "Online"; + $online = gettext("Online"); $bgcolor = "success"; // lightgreen } elseif ($gateways_status[$gname]['status'] == "") { - $online = "Pending"; + $online = gettext("Pending"); $bgcolor = "info"; // lightgray } } else { diff --git a/src/usr/local/www/widgets/widgets/installed_packages.widget.php b/src/usr/local/www/widgets/widgets/installed_packages.widget.php index 255212a..dca7c0d 100644 --- a/src/usr/local/www/widgets/widgets/installed_packages.widget.php +++ b/src/usr/local/www/widgets/widgets/installed_packages.widget.php @@ -74,8 +74,8 @@ if ($_REQUEST && $_REQUEST['ajax']) { if (empty($installed_packages)) { print("<div class=\"alert alert-warning\" role=\"alert\">\n"); - print(" <strong>No packages installed.</strong>\n"); - print(" You can install packages <a href=\"pkg_mgr.php\" class=\"alert-link\">here</a>.\n"); + print(" <strong>". gettext("No packages installed.") . "</strong>\n"); + print(" " . gettext('You can install packages <a href="pkg_mgr.php" class="alert-link">here</a>.') . "\n"); print("</div>\n"); exit; } @@ -103,17 +103,17 @@ if ($_REQUEST && $_REQUEST['ajax']) { if (isset($pkg['broken'])) { $txtcolor = "text-danger"; $missing = true; - $status = 'Package is configured, but not installed!'; + $status = gettext('Package is configured, but not installed!'); } else if (isset($pkg['installed_version']) && isset($pkg['version'])) { $version_compare = pkg_version_compare( $pkg['installed_version'], $pkg['version']); if ($version_compare == '>') { // we're running a newer version of the package - $status = 'Newer than available ('. $pkg['version'] .')'; + $status = sprintf(gettext('Newer than available (%s)'), $pkg['version']); $statusicon = 'exclamation'; } else if ($version_compare == '<') { // we're running an older version of the package - $status = 'Upgrade available to '.$pkg['version']; + $status = sprintf(gettext('Upgrade available to %s'), $pkg['version']); $statusicon = 'plus-circle'; $txtcolor = "text-warning"; $upgradeavail = true; @@ -121,15 +121,15 @@ if ($_REQUEST && $_REQUEST['ajax']) { '&to=' . $pkg['version']; } else if ($version_compare == '=') { // we're running the current version - $status = 'ok'; + $status = gettext('ok'); $statusicon = 'check'; } else { - $status = 'Error comparing version'; + $status = gettext('Error comparing version'); $statusicon = 'exclamation'; } } else { // unknown available package version - $status = 'Unknown'; + $status = gettext('Unknown'); $statusicon = 'question'; } @@ -180,7 +180,7 @@ if ($_REQUEST && $_REQUEST['ajax']) { </div> <p class="text-center"> - <?=gettext("Packages may be added/managed here: ")?> <a href="pkg_mgr_installed.php">System -> Packages</a> + <?=gettext("Packages may be added/managed here: ")?> <a href="pkg_mgr_installed.php"><?=gettext("System")?> -> <?=gettext("Packages")?></a> </p> <script type="text/javascript"> diff --git a/src/usr/local/www/widgets/widgets/interface_statistics.widget.php b/src/usr/local/www/widgets/widgets/interface_statistics.widget.php index 5b0fe02..8de8595 100644 --- a/src/usr/local/www/widgets/widgets/interface_statistics.widget.php +++ b/src/usr/local/www/widgets/widgets/interface_statistics.widget.php @@ -70,13 +70,13 @@ require_once("/usr/local/www/widgets/include/interface_statistics.inc"); if ($_REQUEST && $_REQUEST['ajax']) { $rows = array( - 'inpkts' => 'Packets In', - 'outpkts' => 'Packets Out', - 'inbytes' => 'Bytes In', - 'outbytes' => 'Bytes Out', - 'inerrs' => 'Errors In', - 'outerrs' => 'Errors Out', - 'collisions' => 'Collisions', + 'inpkts' => gettext('Packets In'), + 'outpkts' => gettext('Packets Out'), + 'inbytes' => gettext('Bytes In'), + 'outbytes' => gettext('Bytes Out'), + 'inerrs' => gettext('Errors In'), + 'outerrs' => gettext('Errors Out'), + 'collisions' => gettext('Collisions'), ); $ifdescrs = get_configured_interface_with_descr(); diff --git a/src/usr/local/www/widgets/widgets/ipsec.widget.php b/src/usr/local/www/widgets/widgets/ipsec.widget.php index a3c418f..aa64ff4 100644 --- a/src/usr/local/www/widgets/widgets/ipsec.widget.php +++ b/src/usr/local/www/widgets/widgets/ipsec.widget.php @@ -202,9 +202,9 @@ if ($_REQUEST && $_REQUEST['ajax']) { if (isset($config['ipsec']['phase1'])) { $tab_array = array(); - $tab_array[] = array("Overview", true, "ipsec-Overview"); - $tab_array[] = array("Tunnels", false, "ipsec-tunnel"); - $tab_array[] = array("Mobile", false, "ipsec-mobile"); + $tab_array[] = array(gettext("Overview"), true, "ipsec-Overview"); + $tab_array[] = array(gettext("Tunnels"), false, "ipsec-tunnel"); + $tab_array[] = array(gettext("Mobile"), false, "ipsec-mobile"); display_widget_tabs($tab_array); } @@ -216,9 +216,9 @@ if (isset($config['ipsec']['phase2'])): ?> <table class="table table-striped table-hover"> <thead> <tr> - <th>Active Tunnels</th> - <th>Inactive Tunnels</th> - <th>Mobile Users</th> + <th><?=gettext("Active Tunnels")?></th> + <th><?=gettext("Inactive Tunnels")?></th> + <th><?=gettext("Mobile Users")?></th> </tr> </thead> <tbody> @@ -230,10 +230,10 @@ if (isset($config['ipsec']['phase2'])): ?> <table class="table table-striped table-hover"> <thead> <tr> - <th>Source</th> - <th>Destination</th> - <th>Description</th> - <th>Status</th> + <th><?=gettext("Source")?></th> + <th><?=gettext("Destination")?></th> + <th><?=gettext("Description")?></th> + <th><?=gettext("Status")?></th> </tr> </thead> <tbody> @@ -247,9 +247,9 @@ if (isset($config['ipsec']['phase2'])): ?> <table class="table table-striped table-hover"> <thead> <tr> - <th>User</th> - <th>IP</th> - <th>Status</th> + <th><?=gettext("User")?></th> + <th><?=gettext("IP")?></th> + <th><?=gettext("Status")?></th> </tr> </thead> <tbody> @@ -260,8 +260,8 @@ if (isset($config['ipsec']['phase2'])): ?> <?php endif;?> <?php else: ?> <div> - <h5 style="padding-left:10px;">There are no configured IPsec Tunnels</h5> - <p style="padding-left:10px;">You can configure your IPsec <a href="vpn_ipsec.php">here</a>.</p> + <h5 style="padding-left:10px;"><?=gettext("There are no configured IPsec Tunnels")?></h5> + <p style="padding-left:10px;"><?=gettext('You can configure your IPsec <a href="vpn_ipsec.php">here</a>.')?></p> </div> <?php endif; diff --git a/src/usr/local/www/widgets/widgets/load_balancer_status.widget.php b/src/usr/local/www/widgets/widgets/load_balancer_status.widget.php index 91983b9..adb0603 100644 --- a/src/usr/local/www/widgets/widgets/load_balancer_status.widget.php +++ b/src/usr/local/www/widgets/widgets/load_balancer_status.widget.php @@ -90,9 +90,9 @@ if (!$nentries) { <table class="table"> <thead> <tr> - <th>Server</th> - <th>Pool</th> - <th>Description</th> + <th><?=gettext('Server')?></th> + <th><?=gettext('Pool')?></th> + <th><?=gettext('Description')?></th> </tr> </thead> <tbody> @@ -102,15 +102,15 @@ if (!$nentries) { switch (trim($rdr_a[$vsent['name']]['status'])) { case 'active': $bgcolor = "success"; - $rdr_a[$vsent['name']]['status'] = "Active"; + $rdr_a[$vsent['name']]['status'] = gettext("Active"); break; case 'down': $bgcolor = "danger"; - $rdr_a[$vsent['name']]['status'] = "Down"; + $rdr_a[$vsent['name']]['status'] = gettext("Down"); break; default: $bgcolor = "info"; - $rdr_a[$vsent['name']]['status'] = 'Unknown - relayd not running?'; + $rdr_a[$vsent['name']]['status'] = gettext('Unknown - relayd not running?'); } ?> <td> diff --git a/src/usr/local/www/widgets/widgets/log.widget.php b/src/usr/local/www/widgets/widgets/log.widget.php index 57bc8ab..3940431 100644 --- a/src/usr/local/www/widgets/widgets/log.widget.php +++ b/src/usr/local/www/widgets/widgets/log.widget.php @@ -63,8 +63,12 @@ require_once("functions.inc"); /* In an effort to reduce duplicate code, many shared functions have been moved here. */ require_once("filter_log.inc"); -if (is_numeric($_POST['filterlogentries'])) { - $config['widgets']['filterlogentries'] = $_POST['filterlogentries']; +if ($_POST) { + if (is_numeric($_POST['filterlogentries'])) { + $config['widgets']['filterlogentries'] = $_POST['filterlogentries']; + } else { + unset($config['widgets']['filterlogentries']); + } $acts = array(); if ($_POST['actpass']) { @@ -90,7 +94,13 @@ if (is_numeric($_POST['filterlogentries'])) { unset($config['widgets']['filterlogentriesinterfaces']); } - write_config("Saved Filter Log Entries via Dashboard"); + if (is_numeric($_POST['filterlogentriesinterval'])) { + $config['widgets']['filterlogentriesinterval'] = $_POST['filterlogentriesinterval']; + } else { + unset($config['widgets']['filterlogentriesinterval']); + } + + write_config(gettext("Saved Filter Log Entries via Dashboard")); Header("Location: /"); exit(0); } @@ -106,20 +116,11 @@ $filterfieldsarray = array( "interface" => $nentriesinterfaces ); -$filter_logfile = "{$g['varlog_path']}/filter.log"; +$nentriesinterval = isset($config['widgets']['filterlogentriesinterval']) ? $config['widgets']['filterlogentriesinterval'] : 60; -/* AJAX related routines */ -if (isset($_POST['lastsawtime'])) { - $filterlog = conv_log_filter($filter_logfile, $nentries, $nentries + 20); +$filter_logfile = "{$g['varlog_path']}/filter.log"; - foreach ($filterlog as $idx => $row) { - if (strtotime($log_row['time']) <= $_POST['lastsawtime']) { - unset($filterlog[$idx]); - } - } -} else { - $filterlog = conv_log_filter($filter_logfile, $nentries, 50, $filterfieldsarray); -} +$filterlog = conv_log_filter($filter_logfile, $nentries, 50, $filterfieldsarray); ?> <script type="text/javascript"> //<![CDATA[ @@ -133,9 +134,9 @@ if (isset($_POST['lastsawtime'])) { <tr> <th><?=gettext("Act");?></th> <th><?=gettext("Time");?></th> - <th><?=gettext("If");?></th> + <th><?=gettext("IF");?></th> <th><?=gettext("Source");?></th> - <th><?=gettext("Dest");?></th> + <th><?=gettext("Destination");?></th> </tr> </thead> <tbody> @@ -168,7 +169,7 @@ if (isset($_POST['lastsawtime'])) { <tr> <td><a href="#" onclick="javascript:getURL('status_logs_filter.php?getrulenum=<?php echo "{$filterent['rulenum']},{$filterent['tracker']},{$filterent['act']}"; ?>', outputrule);" role="button" data-toggle="popover" data-trigger="hover" - data-title="Rule that triggered this action" + data-title="<?=gettext("Rule that triggered this action")?>" data-content="<?=htmlspecialchars($rule)?>"> <i class="fa fa-<?=$iconfn?>"></i> </a></td> @@ -178,12 +179,24 @@ if (isset($_POST['lastsawtime'])) { title="<?=gettext("Reverse Resolve with DNS");?>"><?=$srcIP?></a> </td> <td><a href="diag_dns.php?host=<?=$filterent['dstip']?>" - title="<?=gettext("Reverse Resolve with DNS");?>"><?=$dstIP?></a>:<?=htmlspecialchars($filterent['dstport'])?> + title="<?=gettext("Reverse Resolve with DNS");?>"><?=$dstIP?></a><?php + if ($filterent['dstport']) { + print ':' . htmlspecialchars($filterent['dstport']); + } + ?> </td> </tr> <?php endforeach; ?> +<?php + if (count($filterlog) == 0) { + print '<tr class="text-nowrap"><td colspan=5 class="text-center">'; + print gettext('No logs to display'); + print '</td></tr>'; + } +?> + </tbody> </table> @@ -214,7 +227,7 @@ function logWidgetUpdateFromServer(){ } events.push(function(){ - setInterval('logWidgetUpdateFromServer()', 60*1000); + setInterval('logWidgetUpdateFromServer()', <?=$nentriesinterval?>*1000); }); //]]> </script> @@ -223,46 +236,65 @@ events.push(function(){ </div> <div id="widget-<?=$widgetname?>_panel-footer" class="panel-footer collapse"> +<?php +$pconfig['nentries'] = isset($config['widgets']['filterlogentries']) ? $config['widgets']['filterlogentries'] : ''; +$pconfig['nentriesinterval'] = isset($config['widgets']['filterlogentriesinterval']) ? $config['widgets']['filterlogentriesinterval'] : ''; +?> <form action="/widgets/widgets/log.widget.php" method="post" class="form-horizontal"> <div class="form-group"> - <label for="filterlogentries" class="col-sm-4 control-label">Number - of entries</label> + <label for="filterlogentries" class="col-sm-4 control-label"><?=gettext('Number of entries')?></label> <div class="col-sm-6"> - <input type="number" name="filterlogentries" id="filterlogentries" value="<?=$nentries?>" + <input type="number" name="filterlogentries" id="filterlogentries" value="<?=$pconfig['nentries']?>" placeholder="5" min="1" max="20" class="form-control" /> </div> </div> <div class="form-group"> - <label class="col-sm-4 control-label">Filter actions</label> + <label class="col-sm-4 control-label"><?=gettext('Filter actions')?></label> <div class="col-sm-6 checkbox"> <?php $include_acts = explode(" ", strtolower($nentriesacts)); ?> <label><input name="actpass" type="checkbox" value="Pass" - <?=(in_array('pass', $include_acts) ? 'checked':'')?> />Pass</label> - <label><input name="actblock" type="checkbox" value="Block" - <?=(in_array('block', $include_acts) ? 'checked':'')?> />Block</label> - <label><input name="actreject" type="checkbox" value="Reject" - <?=(in_array('reject', $include_acts) ? 'checked':'')?> />Reject</label> + <?=(in_array('pass', $include_acts) ? 'checked':'')?> /> + <?=gettext('Pass')?> + </label> + <label><input name="actblock" type="checkbox" value="Block" + <?=(in_array('block', $include_acts) ? 'checked':'')?> /> + <?=gettext('Block')?> + </label> + <label><input name="actreject" type="checkbox" value="Reject" + <?=(in_array('reject', $include_acts) ? 'checked':'')?> /> + <?=gettext('Reject')?> + </label> </div> </div> <div class="form-group"> - <label for="filterlogentriesinterfaces" - class="col-sm-4 control-label">Filter interface</label> + <label for="filterlogentriesinterfaces" class="col-sm-4 control-label"> + <?=gettext('Filter interface')?> + </label> <div class="col-sm-6 checkbox"> <select name="filterlogentriesinterfaces" id="filterlogentriesinterfaces" class="form-control"> <?php foreach (array("All" => "ALL") + get_configured_interface_with_descr() as $iface => $ifacename):?> <option value="<?=$iface?>" <?=($nentriesinterfaces==$iface?'selected':'')?>><?=htmlspecialchars($ifacename)?></option> <?php endforeach;?> - </select> + </select> + </div> + </div> + + <div class="form-group"> + <label for="filterlogentriesinterval" class="col-sm-4 control-label"><?=gettext('Update interval')?></label> + <div class="col-sm-4"> + <input type="number" name="filterlogentriesinterval" id="filterlogentriesinterval" value="<?=$pconfig['nentriesinterval']?>" placeholder="60" + min="1" class="form-control" /> </div> + <?=gettext('Seconds');?> </div> <div class="form-group"> <div class="col-sm-offset-4 col-sm-6"> - <button type="submit" class="btn btn-default">Save</button> + <button type="submit" class="btn btn-default"><?=gettext('Save')?></button> </div> </div> </form> diff --git a/src/usr/local/www/widgets/widgets/ntp_status.widget.php b/src/usr/local/www/widgets/widgets/ntp_status.widget.php index e0420ef..98af1a1 100644 --- a/src/usr/local/www/widgets/widgets/ntp_status.widget.php +++ b/src/usr/local/www/widgets/widgets/ntp_status.widget.php @@ -83,22 +83,23 @@ if ($_REQUEST['updateme']) { exec("/usr/local/sbin/ntpq -pn $inet_version | /usr/bin/tail +3", $ntpq_output); $ntpq_counter = 0; + $stratum_text = gettext("stratum"); foreach ($ntpq_output as $line) { if (substr($line, 0, 1) == "*") { //Active NTP Peer $line = substr($line, 1); $peerinfo = preg_split("/[\s\t]+/", $line); if ($peerinfo[2] == "1") { - $syncsource = $peerinfo[0] . " (stratum " . $peerinfo[2] . ", " . $peerinfo[1] . ")"; + $syncsource = $peerinfo[0] . " (" . $stratum_text . " " . $peerinfo[2] . ", " . $peerinfo[1] . ")"; } else { - $syncsource = $peerinfo[0] . " (stratum " . $peerinfo[2] . ")"; + $syncsource = $peerinfo[0] . " (" . $stratum_text . " " . $peerinfo[2] . ")"; } $ntpq_counter++; } elseif (substr($line, 0, 1) == "o") { //Local PPS Peer $line = substr($line, 1); $peerinfo = preg_split("/[\s\t]+/", $line); - $syncsource = $peerinfo[1] . " (stratum " . $peerinfo[2] . ", PPS)"; + $syncsource = $peerinfo[1] . " (" . $stratum_text . " " . $peerinfo[2] . ", PPS)"; $ntpq_counter++; } } @@ -171,7 +172,7 @@ if ($_REQUEST['updateme']) { <table id="ntp_status_widget" class="table table-striped table-hover"> <tr> - <th>Server Time</th> + <th><?=gettext('Server Time')?></th> <td id="ClockTime"> <!-- ntpStatusClock --> <script type="text/javascript"> //<![CDATA[ @@ -183,10 +184,10 @@ if ($_REQUEST['updateme']) { </td> </tr> <tr> - <th>Sync Source</th> + <th><?=gettext('Sync Source')?></th> <td> <?php if ($ntpq_counter == 0): ?> - <i>No active peers available</i> + <i><?=gettext('No active peers available')?></i> <?php else: ?> <?=$syncsource;?> <?php endif; ?> @@ -194,7 +195,7 @@ if ($_REQUEST['updateme']) { </tr> <?php if (($gps_ok) && ($gps_lat) && ($gps_lon)): ?> <tr> - <th>Clock location</th> + <th><?=gettext('Clock location')?></th> <td> <a target="_gmaps" href="http://maps.google.com/?q=<?=$gps_lat;?>,<?=$gps_lon;?>"> <?php @@ -205,12 +206,12 @@ if ($_REQUEST['updateme']) { </tr> <?php if (isset($gps_sat) || isset($gps_satview)): ?> <tr> - <th>Satellites</th> + <th><?=gettext('Satellites')?></th> <td> <?php - if (isset($gps_satview)) {echo 'in view ' . intval($gps_satview);} + if (isset($gps_satview)) {echo gettext('in view') . ' ' . intval($gps_satview);} if (isset($gps_sat) && isset($gps_satview)) {echo ', ';} - if (isset($gps_sat)) {echo 'in use ' . $gps_sat;} + if (isset($gps_sat)) {echo gettext('in use') . ' ' . $gps_sat;} ?> </td> </tr> @@ -488,7 +489,7 @@ clockUpdate(); <tbody> <tr> <td> - Updating... + <?=gettext('Updating...')?> </td> </tr> </tbody> @@ -500,7 +501,7 @@ clockUpdate(); scroll(0,0); var url = "/widgets/widgets/ntp_status.widget.php"; var pars = 'updateme=yes'; - jQuery.ajax( + $.ajax( url, { type: 'get', @@ -514,7 +515,7 @@ clockUpdate(); function ntpstatuscallback(transport) { // The server returns formatted html code var responseStringNtp = transport.responseText - jQuery('#ntpstatus').prop('innerHTML',responseStringNtp); + $('#ntpstatus').prop('innerHTML',responseStringNtp); } // Do the first status check 1 second after the dashboard opens setTimeout('ntp_getstatus()', 1000); diff --git a/src/usr/local/www/widgets/widgets/openvpn.widget.php b/src/usr/local/www/widgets/widgets/openvpn.widget.php index 88cb7c9..f23e95c 100644 --- a/src/usr/local/www/widgets/widgets/openvpn.widget.php +++ b/src/usr/local/www/widgets/widgets/openvpn.widget.php @@ -83,7 +83,7 @@ $clients = openvpn_get_active_clients(); //<![CDATA[ function killClient(mport, remipp) { - jQuery.ajax( + $.ajax( "widgets/widgets/openvpn.widget.php" + "?action=kill&port=" + mport + "&remipp=" + remipp, { type: "get", complete: killComplete } @@ -97,8 +97,8 @@ $clients = openvpn_get_active_clients(); return; } - jQuery('tr[name="r:' + values[1] + ":" + values[2] + '"]').each( - function(index,row) { jQuery(row).fadeOut(1000); } + $('tr[name="r:' + values[1] + ":" + values[2] + '"]').each( + function(index,row) { $(row).fadeOut(1000); } ); } //]]> @@ -112,8 +112,8 @@ $clients = openvpn_get_active_clients(); <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> <tr> - <th>Name/Time</th> - <th>Real/Virtual IP</th> + <th><?=gettext('Name/Time')?></th> + <th><?=gettext('Real/Virtual IP')?></th> <th></th> </tr> </thead> @@ -133,7 +133,7 @@ $clients = openvpn_get_active_clients(); <td> <i class="fa fa-times-circle" onclick="killClient('<?=$server['mgmt']; ?>', '<?=$conn['remote_host']; ?>');" style="cursor:pointer;" name="<?php echo "i:{$server['mgmt']}:{$conn['remote_host']}"; ?>" - title='Kill client connection from <?=$conn['remote_host'];?>'> + title=<?=sprintf(gettext('Kill client connection from %s'), $conn['remote_host']);?>'> </i> </td> </tr> @@ -160,8 +160,8 @@ $clients = openvpn_get_active_clients(); <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> <tr> - <th>Name/Time</th> - <th>Remote/Virtual IP</th> + <th><?=gettext('Name/Time')?></th> + <th><?=gettext('Remote/Virtual IP')?></th> <th></th> </tr> </thead> @@ -210,8 +210,8 @@ $clients = openvpn_get_active_clients(); <table class="table table-striped table-hover table-condensed sortable-theme-bootstrap" data-sortable> <thead> <tr> - <th>Name/Time</th> - <th>Remote/Virtual IP</th> + <th><?=gettext('Name/Time')?></th> + <th><?=gettext('Remote/Virtual IP')?></th> <th></th> </tr> </thead> @@ -256,11 +256,11 @@ $clients = openvpn_get_active_clients(); } if ($DisplayNote) { - echo "<br /><b>NOTE:</b> You need to bind each OpenVPN client to enable its management daemon: use 'Local port' setting in the OpenVPN client screen"; + echo "<br /><b>". gettext("NOTE") . ":</b> ". gettext("You need to bind each OpenVPN client to enable its management daemon: use 'Local port' setting in the OpenVPN client screen"); } if ((empty($clients)) && (empty($servers)) && (empty($sk_servers))) { - echo "No OpenVPN instances defined"; + echo gettext("No OpenVPN instances defined"); } ?> </div> diff --git a/src/usr/local/www/widgets/widgets/picture.widget.php b/src/usr/local/www/widgets/widgets/picture.widget.php index 7d31199..f40e3df 100644 --- a/src/usr/local/www/widgets/widgets/picture.widget.php +++ b/src/usr/local/www/widgets/widgets/picture.widget.php @@ -78,7 +78,7 @@ if ($_POST) { </div><div id="widget-<?=$widgetname?>_panel-footer" class="panel-footer collapse"> <form action="/widgets/widgets/picture.widget.php" method="post" enctype="multipart/form-data" class="form-inline"> - <label for="pictfile">New picture: </label> + <label for="pictfile"><?=gettext('New picture:')?> </label> <input id="pictfile" name="pictfile" type="file" class="form-control" /> - <button type="submit" class="btn btn-default">Upload</button> + <button type="submit" class="btn btn-default"><?=gettext('Upload')?></button> </form> diff --git a/src/usr/local/www/widgets/widgets/rss.widget.php b/src/usr/local/www/widgets/widgets/rss.widget.php index 358717e..411d0e2 100644 --- a/src/usr/local/www/widgets/widgets/rss.widget.php +++ b/src/usr/local/www/widgets/widgets/rss.widget.php @@ -64,7 +64,7 @@ if ($_POST['rssfeed']) { $config['widgets']['rssmaxitems'] = str_replace("\n", ",", htmlspecialchars($_POST['rssmaxitems'], ENT_QUOTES | ENT_HTML401)); $config['widgets']['rsswidgetheight'] = htmlspecialchars($_POST['rsswidgetheight'], ENT_QUOTES | ENT_HTML401); $config['widgets']['rsswidgettextlength'] = htmlspecialchars($_POST['rsswidgettextlength'], ENT_QUOTES | ENT_HTML401); - write_config("Saved RSS Widget feed via Dashboard"); + write_config(gettext("Saved RSS Widget feed via Dashboard")); header("Location: /"); } @@ -158,28 +158,28 @@ if ($config['widgets']['rssfeed']) { <form action="/widgets/widgets/rss.widget.php" method="post" class="form-horizontal"> <div class="form-group"> - <label for="rssfeed" class="col-sm-3 control-label">Feeds</label> + <label for="rssfeed" class="col-sm-3 control-label"><?=gettext('Feeds')?></label> <div class="col-sm-6"> <textarea id="rssfeed" name="rssfeed" class="form-control"><?=$textarea_txt;?></textarea> </div> </div> <div class="form-group"> - <label for="rssmaxitems" class="col-sm-3 control-label"># Stories</label> + <label for="rssmaxitems" class="col-sm-3 control-label"><?=gettext('# Stories')?></label> <div class="col-sm-6"> <input type="number" id="rssmaxitems" name="rssmaxitems" value="<?=$max_items?>" min="1" max="100" class="form-control" /> </div> </div> <div class="form-group"> - <label for="rsswidgetheight" class="col-sm-3 control-label">Widget height</label> + <label for="rsswidgetheight" class="col-sm-3 control-label"><?=gettext('Widget height')?></label> <div class="col-sm-6"> <input type="number" id="rsswidgetheight" name="rsswidgetheight" value="<?=$rsswidgetheight?>" min="100" max="2500" step="100" class="form-control" /> </div> </div> <div class="form-group"> - <label for="rsswidgettextlength" class="col-sm-3 control-label">Content limit</label> + <label for="rsswidgettextlength" class="col-sm-3 control-label"><?=gettext('Content limit')?></label> <div class="col-sm-6"> <input type="number" id="rsswidgettextlength" name="rsswidgettextlength" value="<?=$rsswidgettextlength?>" min="100" max="5000" step="10" class="form-control" /> </div> @@ -187,7 +187,7 @@ if ($config['widgets']['rssfeed']) { <div class="form-group"> <div class="col-sm-offset-3 col-sm-6"> - <button type="submit" class="btn btn-default">Save</button> + <button type="submit" class="btn btn-default"><?=gettext('Save')?></button> </div> </div> </form> diff --git a/src/usr/local/www/widgets/widgets/services_status.widget.php b/src/usr/local/www/widgets/widgets/services_status.widget.php index 5973fb1..a050a3e 100644 --- a/src/usr/local/www/widgets/widgets/services_status.widget.php +++ b/src/usr/local/www/widgets/widgets/services_status.widget.php @@ -78,7 +78,7 @@ if ($_POST) { $config['widgets']['servicestatusfilter'] = ""; } - write_config("Saved Service Status Filter via Dashboard"); + write_config(gettext("Saved Service Status Filter via Dashboard")); header("Location: /index.php"); } @@ -87,9 +87,9 @@ if ($_POST) { <thead> <tr> <th></th> - <th>Service</th> - <th>Description</th> - <th>Action</th> + <th><?=gettext('Service')?></th> + <th><?=gettext('Description')?></th> + <th><?=gettext('Action')?></th> </tr> </thead> <tbody> @@ -116,7 +116,7 @@ if (count($services) > 0) { <?php } } else { - echo "<tr><td colspan=\"3\" class=\"text-center\">" . gettext("No services found") . " . </td></tr>\n"; + echo "<tr><td colspan=\"3\" class=\"text-center\">" . gettext("No services found") . ". </td></tr>\n"; } ?> </tbody> @@ -127,7 +127,7 @@ if (count($services) > 0) { <form action="/widgets/widgets/services_status.widget.php" method="post" class="form-horizontal"> <div class="form-group"> - <label for="inputPassword3" class="col-sm-3 control-label">Hidden services</label> + <label for="inputPassword3" class="col-sm-3 control-label"><?=gettext('Hidden services')?></label> <div class="col-sm-6"> <select multiple id="servicestatusfilter" name="servicestatusfilter[]" class="form-control"> <?php @@ -145,8 +145,8 @@ if (count($services) > 0) { <div class="form-group"> <div class="col-sm-offset-3 col-sm-6"> - <button type="submit" class="btn btn-primary">Save</button> - <button id="clearall" type="button" class="btn btn-default">Clear</button> + <button type="submit" class="btn btn-primary"><?=gettext('Save')?></button> + <button id="clearall" type="button" class="btn btn-default"><?=gettext('Clear')?></button> </div> </div> </form> diff --git a/src/usr/local/www/widgets/widgets/smart_status.widget.php b/src/usr/local/www/widgets/widgets/smart_status.widget.php index 56e3d2d..dce74a1 100644 --- a/src/usr/local/www/widgets/widgets/smart_status.widget.php +++ b/src/usr/local/www/widgets/widgets/smart_status.widget.php @@ -90,7 +90,7 @@ if (count($devs) > 0) { $icon = "fa-check"; break; case "": - $dev_state = "Unknown"; + $dev_state = gettext("Unknown"); $color = "text-info"; $icon = "fa-times-circle"; break; diff --git a/src/usr/local/www/widgets/widgets/system_information.widget.php b/src/usr/local/www/widgets/widgets/system_information.widget.php index 8c70b5e..d624e42 100644 --- a/src/usr/local/www/widgets/widgets/system_information.widget.php +++ b/src/usr/local/www/widgets/widgets/system_information.widget.php @@ -119,7 +119,7 @@ $filesystems = get_mounted_filesystems(); <strong><?=$g['product_version']?></strong> (<?php echo php_uname("m"); ?>) <br /> - built on <?php readfile("/etc/version.buildtime"); ?> + <?=gettext('built on')?> <?php readfile("/etc/version.buildtime"); ?> <?php if (!$g['hideuname']): ?> <br /> <span title="<?php echo php_uname("a"); ?>"><?php echo php_uname("s") . " " . php_uname("r"); ?></span> @@ -154,7 +154,7 @@ $filesystems = get_mounted_filesystems(); <td> <?=htmlspecialchars(nanobsd_friendly_slice_name($BOOT_DEVICE));?> / <?=htmlspecialchars($BOOTFLASH);?><?=$rw;?> <?php if ($BOOTFLASH != $ACTIVE_SLICE): ?> - <br /><br />Next Boot:<br /> + <br /><br /><?=gettext('Next Boot')?>:<br /> <?=htmlspecialchars(nanobsd_friendly_slice_name($GLABEL_SLICE));?> / <?=htmlspecialchars($ACTIVE_SLICE);?> <?php endif; ?> </td> @@ -168,7 +168,7 @@ $filesystems = get_mounted_filesystems(); $cpucount = get_cpu_count(); if ($cpucount > 1): ?> <div id="cpucount"> - <?= htmlspecialchars($cpucount) ?> CPUs: <?= htmlspecialchars(get_cpu_count(true)); ?> + <?= htmlspecialchars($cpucount) ?> <?=gettext('CPUs')?>: <?= htmlspecialchars(get_cpu_count(true)); ?> </div> <?php endif; ?> </td> @@ -247,7 +247,7 @@ $filesystems = get_mounted_filesystems(); <tr> <th><?=gettext("Load average");?></th> <td> - <div id="load_average" title="Last 1, 5 and 15 minutes"><?= get_load_average(); ?></div> + <div id="load_average" title="<?=gettext('Last 1, 5 and 15 minutes')?>"><?= get_load_average(); ?></div> </td> </tr> <tr> @@ -257,7 +257,7 @@ $filesystems = get_mounted_filesystems(); <div id="cpuPB" class="progress-bar progress-bar-striped" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width: 0%"> </div> </div> - <span id="cpumeter">(Updating in 10 seconds)</span> + <span id="cpumeter"><?=gettext('(Updating in 10 seconds)')?></span> </td> </tr> <tr> @@ -292,7 +292,7 @@ $filesystems = get_mounted_filesystems(); <?php foreach ($filesystems as $fs): ?> <tr> <th><?=$fs['mountpoint']?></th> - <td><?=$fs['type'] . ("md" == substr(basename($fs['device']), 0, 2) ? " in RAM" : "")?></td> + <td><?=$fs['type'] . ("md" == substr(basename($fs['device']), 0, 2) ? " " . gettext("in RAM") : "")?></td> <td><?=$fs['total_size']?></td> <td> <span><?=$fs['percent_used']?>%</span> @@ -326,7 +326,7 @@ function systemStatusGetUpdateStatus() { function updateMeters() { url = '/getstats.php'; - jQuery.ajax(url, { + $.ajax(url, { type: 'get', success: function(data) { response = data || ""; @@ -352,7 +352,7 @@ var Seconds = 11; var update_interval = (Math.abs(Math.ceil(Seconds))-1)*1000 + 990; function setProgress(barName, percent) { - jQuery('#' + barName).css('width', percent + '%').attr('aria-valuenow', percent); + $('#' + barName).css('width', percent + '%').attr('aria-valuenow', percent); } function setTimer() { @@ -361,7 +361,7 @@ function setTimer() { function stats(x) { var values = x.split("|"); - if (jQuery.each(values,function(key,value){ + if ($.each(values,function(key,value){ if (value == 'undefined' || value == null) return true; else @@ -385,35 +385,35 @@ function stats(x) { } function updateMemory(x) { - if (jQuery('#memusagemeter')) { - jQuery("#memusagemeter").html(x); + if ($('#memusagemeter')) { + $("#memusagemeter").html(x); } - if (jQuery('#memUsagePB')) { + if ($('#memUsagePB')) { setProgress('memUsagePB', parseInt(x)); } } function updateMbuf(x) { - if (jQuery('#mbuf')) { - jQuery("#mbuf").html(x); + if ($('#mbuf')) { + $("#mbuf").html(x); } } function updateMbufMeter(x) { - if (jQuery('#mbufusagemeter')) { - jQuery("#mbufusagemeter").html(x + '%'); + if ($('#mbufusagemeter')) { + $("#mbufusagemeter").html(x + '%'); } - if (jQuery('#mbufPB')) { + if ($('#mbufPB')) { setProgress('mbufPB', parseInt(x)); } } function updateCPU(x) { - if (jQuery('#cpumeter')) { - jQuery("#cpumeter").html(x + '%'); + if ($('#cpumeter')) { + $("#cpumeter").html(x + '%'); } - if (jQuery('#cpuPB')) { + if ($('#cpuPB')) { setProgress('cpuPB', parseInt(x)); } @@ -424,37 +424,37 @@ function updateCPU(x) { } function updateTemp(x) { - if (jQuery("#tempmeter")) { - jQuery("#tempmeter").html(x + '\u00B0' + 'C'); + if ($("#tempmeter")) { + $("#tempmeter").html(x + '\u00B0' + 'C'); } - if (jQuery('#tempPB')) { - jQuery("#tempPB").progressbar( { value: parseInt(x) } ); + if ($('#tempPB')) { + $("#tempPB").progressbar( { value: parseInt(x) } ); } } function updateDateTime(x) { - if (jQuery('#datetime')) { - jQuery("#datetime").html(x); + if ($('#datetime')) { + $("#datetime").html(x); } } function updateUptime(x) { - if (jQuery('#uptime')) { - jQuery("#uptime").html(x); + if ($('#uptime')) { + $("#uptime").html(x); } } function updateState(x) { - if (jQuery('#pfstate')) { - jQuery("#pfstate").html('(' + x + ')'); + if ($('#pfstate')) { + $("#pfstate").html('(' + x + ')'); } } function updateStateMeter(x) { - if (jQuery('#pfstateusagemeter')) { - jQuery("#pfstateusagemeter").html(x + '%'); + if ($('#pfstateusagemeter')) { + $("#pfstateusagemeter").html(x + '%'); } - if (jQuery('#statePB')) { + if ($('#statePB')) { setProgress('statePB', parseInt(x)); } } @@ -464,10 +464,10 @@ function updateGatewayStats(x) { gateways_split = x.split(","); for (var y=0; y<gateways_split.length; y++) { gateways_field_split = gateways_split[y].split("^"); - if (jQuery('#gateway' + (y + 1))) { - jQuery('#gateway' + (y + 1)).html(gateways_field_split[0]); + if ($('#gateway' + (y + 1))) { + $('#gateway' + (y + 1)).html(gateways_field_split[0]); if (gateways_field_split[1]) { - jQuery('#gateway' + (y + 1)).css('background-color',gateways_field_split[1]); + $('#gateway' + (y + 1)).css('background-color',gateways_field_split[1]); } } } @@ -475,14 +475,14 @@ function updateGatewayStats(x) { } function updateCpuFreq(x) { - if (jQuery('#cpufreq')) { - jQuery("#cpufreq").html(x); + if ($('#cpufreq')) { + $("#cpufreq").html(x); } } function updateLoadAverage(x) { - if (jQuery('#load_average')) { - jQuery("#load_average").html(x); + if ($('#load_average')) { + $("#load_average").html(x); } } @@ -491,8 +491,8 @@ function updateInterfaceStats(x) { statistics_split = x.split(","); var counter = 1; for (var y=0; y<statistics_split.length-1; y++) { - if (jQuery('#stat' + counter)) { - jQuery('#stat' + counter).html(statistics_split[y]); + if ($('#stat' + counter)) { + $('#stat' + counter).html(statistics_split[y]); counter++; } } @@ -511,25 +511,25 @@ function updateInterfaces(x) { } switch(details[1]) { case "up": - jQuery('#' + details[0] + '-up').css("display","inline"); - jQuery('#' + details[0] + '-down').css("display","none"); - jQuery('#' + details[0] + '-block').css("display","none"); - jQuery('#' + details[0] + '-ip').html(ipv4_details); - jQuery('#' + details[0] + '-ipv6').html(details[3]); - jQuery('#' + details[0] + '-media').html(details[4]); + $('#' + details[0] + '-up').css("display","inline"); + $('#' + details[0] + '-down').css("display","none"); + $('#' + details[0] + '-block').css("display","none"); + $('#' + details[0] + '-ip').html(ipv4_details); + $('#' + details[0] + '-ipv6').html(details[3]); + $('#' + details[0] + '-media').html(details[4]); break; case "down": - jQuery('#' + details[0] + '-down').css("display","inline"); - jQuery('#' + details[0] + '-up').css("display","none"); - jQuery('#' + details[0] + '-block').css("display","none"); - jQuery('#' + details[0] + '-ip').html(ipv4_details); - jQuery('#' + details[0] + '-ipv6').html(details[3]); - jQuery('#' + details[0] + '-media').html(details[4]); + $('#' + details[0] + '-down').css("display","inline"); + $('#' + details[0] + '-up').css("display","none"); + $('#' + details[0] + '-block').css("display","none"); + $('#' + details[0] + '-ip').html(ipv4_details); + $('#' + details[0] + '-ipv6').html(details[3]); + $('#' + details[0] + '-media').html(details[4]); break; case "block": - jQuery('#' + details[0] + '-block').css("display","inline"); - jQuery('#' + details[0] + '-down').css("display","none"); - jQuery('#' + details[0] + '-up').css("display","none"); + $('#' + details[0] + '-block').css("display","inline"); + $('#' + details[0] + '-down').css("display","none"); + $('#' + details[0] + '-up').css("display","none"); break; } }); @@ -537,7 +537,7 @@ function updateInterfaces(x) { } function widgetActive(x) { - var widget = jQuery('#' + x + '-container'); + var widget = $('#' + x + '-container'); if ((widget != null) && (widget.css('display') != null) && (widget.css('display') != "none")) { return true; } else { diff --git a/src/usr/local/www/widgets/widgets/thermal_sensors.widget.php b/src/usr/local/www/widgets/widgets/thermal_sensors.widget.php index dabf983..f99e605 100644 --- a/src/usr/local/www/widgets/widgets/thermal_sensors.widget.php +++ b/src/usr/local/www/widgets/widgets/thermal_sensors.widget.php @@ -89,7 +89,7 @@ if ($_POST) { saveGraphDisplaySettings($config, $_POST, "thermal_sensors_widget_pulsate_critical"); //write settings to config file - write_config("Saved thermal_sensors_widget settings via Dashboard."); + write_config(gettext("Saved thermal_sensors_widget settings via Dashboard.")); header("Location: ../../index.php"); } @@ -185,7 +185,7 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { </script> <div style="padding: 5px"> <div id="thermalSensorsContainer" class="listr"> - (Updating...)<br /><br /> + <?=gettext('(Updating...)')?><br /><br /> </div> </div> </div> @@ -196,15 +196,15 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { <table> <tr> <td class="text-left" colspan="2"> - <strong>Thresholds in °C (1 to 100):</strong> + <strong><?=gettext('Thresholds in')?> °C <?=gettext('(1 to 100):')?></strong> </td> <td class="text-right" colspan="1"> - <strong>Display settings:</strong> + <strong><?=gettext('Display settings:')?></strong> </td> </tr> <tr> <td class="text-right"> - Zone Warning: + <?=gettext('Zone Warning:')?> </td> <td> <input type="text" maxlength="3" size="3" class="formfld unknown" @@ -213,7 +213,7 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { value="<?= $thermal_sensors_widget_zoneWarningTempThreshold; ?>" /> </td> <td class="text-right"> - <label for="thermal_sensors_widget_show_raw_output">Show raw output (no graph): </label> + <label for="thermal_sensors_widget_show_raw_output"><?=gettext('Show raw output (no graph):')?> </label> <input type="checkbox" id="thermal_sensors_widget_show_raw_output" name="thermal_sensors_widget_show_raw_output" @@ -222,7 +222,7 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { </tr> <tr> <td class="text-right"> - Zone Critical: + <?=gettext('Zone Critical:')?> </td> <td> <input type="text" maxlength="3" size="3" class="formfld unknown" @@ -231,7 +231,7 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { value="<?= $thermal_sensors_widget_zoneCriticalTempThreshold; ?>" /> </td> <td class="text-right"> - <label for="thermal_sensors_widget_show_full_sensor_name">Show full sensor name: </label> + <label for="thermal_sensors_widget_show_full_sensor_name"><?=gettext('Show full sensor name:')?> </label> <input type="checkbox" id="thermal_sensors_widget_show_full_sensor_name" name="thermal_sensors_widget_show_full_sensor_name" @@ -240,7 +240,7 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { </tr> <tr> <td class="text-right"> - Core Warning: + <?=gettext('Core Warning:')?> </td> <td> <input type="text" maxlength="3" size="3" class="formfld unknown" @@ -254,7 +254,7 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { </tr> <tr> <td class="text-right"> - Core Critical: + <?=gettext('Core Critical:')?> </td> <td> <input type="text" maxlength="3" size="3" class="formfld unknown" @@ -273,8 +273,8 @@ function getBoolValueFromConfig(&$configArray, $valueKey, $defaultValue) { </tr> <tr> <td class="text-left" colspan="3"> - <span>* You can configure a proper Thermal Sensor / Module under <br /> - <a href="system_advanced_misc.php">System > Advanced > Miscellaneous : Thermal Sensors section</a>.</span> + <span><?=gettext('* You can configure a proper Thermal Sensor / Module under')?> <br /> + <a href="system_advanced_misc.php"><?=gettext('System')?> > <?=gettext('Advanced')?> > <?=gettext('Miscellaneous')?> : <?=gettext('Thermal Sensors')?> <?=gettext('section')?></a>.</span> </td> </tr> </table> diff --git a/src/usr/local/www/widgets/widgets/traffic_graphs.widget.php b/src/usr/local/www/widgets/widgets/traffic_graphs.widget.php index ffed30f..39cb3f3 100644 --- a/src/usr/local/www/widgets/widgets/traffic_graphs.widget.php +++ b/src/usr/local/www/widgets/widgets/traffic_graphs.widget.php @@ -102,7 +102,7 @@ if ($_POST) { } } - write_config("Updated traffic graph settings via dashboard."); + write_config(gettext("Updated traffic graph settings via dashboard.")); header("Location: /"); exit(0); } @@ -162,7 +162,7 @@ foreach ($ifdescrs as $ifname => $ifdescr): <form action="/widgets/widgets/traffic_graphs.widget.php" method="post" class="form-horizontal"> <div class="form-group"> - <label for="scale_type_up" class="col-sm-3 control-label">Show graphs</label> + <label for="scale_type_up" class="col-sm-3 control-label"><?=gettext('Show graphs')?></label> <div class="col-sm-6 checkbox"> <?php foreach ($ifdescrs as $ifname => $ifdescr): ?> <label> @@ -173,21 +173,21 @@ foreach ($ifdescrs as $ifname => $ifdescr): </div> </div> <div class="form-group"> - <label for="scale_type_up" class="col-sm-3 control-label">Default Autoscale</label> + <label for="scale_type_up" class="col-sm-3 control-label"><?=gettext('Default Autoscale')?></label> <div class="col-sm-6 checkbox"> <label> <input name="scale_type" type="radio" id="scale_type_up" value="up" <?=($config["widgets"]["trafficgraphs"]["scale_type"]=="up" ? '' : 'checked')?> /> - up + <?=gettext('Up')?> </label> <label> <input name="scale_type" type="radio" id="scale_type_follow" value="follow" <?=($config["widgets"]["trafficgraphs"]["scale_type"]=="follow" ? 'checked' : '')?> /> - follow + <?=gettext('Follow')?> </label> </div> </div> <div class="form-group"> - <label for="refreshinterval" class="col-sm-3 control-label">Refresh Interval</label> + <label for="refreshinterval" class="col-sm-3 control-label"><?=gettext('Refresh Interval')?></label> <div class="col-sm-6"> <input type="number" id="refreshinterval" name="refreshinterval" value="<?=$refreshinterval?>" min="1" max="30" class="form-control" /> </div> @@ -195,7 +195,7 @@ foreach ($ifdescrs as $ifname => $ifdescr): <div class="form-group"> <div class="col-sm-offset-3 col-sm-6"> - <button type="submit" class="btn btn-default">Save</button> + <button type="submit" class="btn btn-default"><?=gettext('Save')?></button> </div> </div> </form> diff --git a/src/usr/local/www/widgets/widgets/wake_on_lan.widget.php b/src/usr/local/www/widgets/widgets/wake_on_lan.widget.php index 90f2895..56d1250 100644 --- a/src/usr/local/www/widgets/widgets/wake_on_lan.widget.php +++ b/src/usr/local/www/widgets/widgets/wake_on_lan.widget.php @@ -107,5 +107,5 @@ if (count($wolcomputers) > 0) { ?> </tbody> </table> -<p class="text-center"><a href="status_dhcp_leases.php" class="navlink">DHCP Leases Status</a></p> +<p class="text-center"><a href="status_dhcp_leases.php" class="navlink"><?=gettext('DHCP Leases Status')?></a></p> </div> diff --git a/src/usr/local/www/wizard.php b/src/usr/local/www/wizard.php index 4fc0066..b3eb88a 100644 --- a/src/usr/local/www/wizard.php +++ b/src/usr/local/www/wizard.php @@ -89,25 +89,25 @@ if ($_POST['xml']) { if (empty($xml)) { $xml = "not_defined"; - print_info_box_np(sprintf(gettext("ERROR: Could not open %s."), $xml)); + print_info_box(sprintf(gettext("ERROR: Could not open %s."), $xml)); die; } else { $wizard_xml_prefix = "{$g['www_path']}/wizards"; $wizard_full_path = "{$wizard_xml_prefix}/{$xml}"; if (substr_compare(realpath($wizard_full_path), $wizard_xml_prefix, 0, strlen($wizard_xml_prefix))) { - print_info_box_np(gettext("ERROR: Invalid path specified.")); + print_info_box(gettext("ERROR: Invalid path specified.")); die; } if (file_exists($wizard_full_path)) { $pkg = parse_xml_config_pkg($wizard_full_path, "pfsensewizard"); } else { - print_info_box_np(sprintf(gettext("ERROR: Could not open %s."), $xml)); + print_info_box(sprintf(gettext("ERROR: Could not open %s."), $xml)); die; } } if (!is_array($pkg)) { - print_info_box_np(sprintf(gettext("ERROR: Could not parse %s/wizards/%s file."), $g['www_path'], $xml)); + print_info_box(sprintf(gettext("ERROR: Could not parse %s/wizards/%s file."), $g['www_path'], $xml)); die; } @@ -332,7 +332,7 @@ if ($pkg['step'][$stepid]['fields']['field'] != "") { ?> foreach ($showfields as $showfield) { $showfield = strtolower($showfield); //print "\t\t" . 'document.iform.' . $showfield . ".display =\"none\";\n"; - print "\t\t jQuery('#". $showfield . "').hide();"; + print "\t\t $('#". $showfield . "').hide();"; } } print "\t" . '} else {' . "\n"; @@ -341,7 +341,7 @@ if ($pkg['step'][$stepid]['fields']['field'] != "") { ?> foreach ($showfields as $showfield) { $showfield = strtolower($showfield); #print "\t\t" . 'document.iform.' . $showfield . ".display =\"\";\n"; - print "\t\t jQuery('#". $showfield . "').show();"; + print "\t\t $('#". $showfield . "').show();"; } } print "\t" . '}' . "\n"; @@ -380,7 +380,7 @@ function fixup_string($string) { } } - $http_host = $_SERVER['SERVER_NAME']; + $http_host = $_SERVER['HTTP_HOST']; $urlhost = $http_host; // If finishing the setup wizard, check if accessing on a LAN or WAN address that changed if ($title == "Reload in progress") { diff --git a/src/usr/local/www/wizards/setup_wizard.xml b/src/usr/local/www/wizards/setup_wizard.xml index 20281f7..4914c89 100644 --- a/src/usr/local/www/wizards/setup_wizard.xml +++ b/src/usr/local/www/wizards/setup_wizard.xml @@ -621,7 +621,7 @@ <stepsubmitphpaction> <![CDATA[ if(empty($_POST['lanipaddress']) || !is_ipaddr($_POST['lanipaddress'])) { - print_info_box_np("Invalid LAN IP Address. Please press back in your browser window and correct."); + print_info_box("Invalid LAN IP Address. Please press back in your browser window and correct."); die; } @@ -709,7 +709,7 @@ local_user_set($admin_user); write_config(); } else { - print_info_box_np("Passwords do not match! Please press back in your browser window and correct."); + print_info_box("Passwords do not match! Please press back in your browser window and correct."); die; } } diff --git a/src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc b/src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc index 91b9b19..3d155fc 100644 --- a/src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc +++ b/src/usr/local/www/wizards/traffic_shaper_wizard_multi_all.inc @@ -109,6 +109,7 @@ function step2_stepbeforeformdisplay() { global $config, $pkg; global $stepid, $savemsg; + $list_all_ifs = false; $wans = 0; $lans = 0; $iflist = array(); @@ -122,6 +123,10 @@ function step2_stepbeforeformdisplay() { $lans++; $iflist[$if] = $ifdesc; } + if ($wans == 0) { + $list_all_ifs = true; + $wans = $lans; + } $numberofconnections = intval($config['ezshaper']['step1']['numberofconnections']); if ($numberofconnections > $wans) { $savemsg=gettext("You have less interfaces than number of connections!"); @@ -160,8 +165,10 @@ function step2_stepbeforeformdisplay() { $field['options']['option'] = array(); foreach ($iflist as $ifname => $ifdescr) { // Skip wan interfaces here - if (interface_has_gateway($ifname) || interface_has_gatewayv6($ifname)) + if (interface_has_gateway($ifname) || + interface_has_gatewayv6($ifname)) { continue; + } $opts = array(); $opts['displayname'] = $ifdescr; $opts['name'] = $ifname; @@ -211,8 +218,11 @@ function step2_stepbeforeformdisplay() { $field['options']['option'] = array(); foreach ($iflist as $ifname => $ifdescr) { // Skip lan interfaces here - if (!interface_has_gateway($ifname) && !interface_has_gatewayv6($ifname)) + if (!$list_all_ifs && + !interface_has_gateway($ifname) && + !interface_has_gatewayv6($ifname)) { continue; + } $opts = array(); $opts['displayname'] = $ifdescr; $opts['name'] = $ifname; diff --git a/src/usr/local/www/xmlrpc.php b/src/usr/local/www/xmlrpc.php index b70f592..559a168 100755 --- a/src/usr/local/www/xmlrpc.php +++ b/src/usr/local/www/xmlrpc.php @@ -344,8 +344,8 @@ function restore_config_section_xmlrpc($raw_params) { } /*****************************/ -$merge_config_section_doc = gettext("XMLRPC wrapper for merging package sections. This method must be called with two parameters: a string containing the local system\'s password and an array to merge into the system\'s config. This function returns true upon completion."); -$merge_config_section_sig = array( +$merge_installedpackages_section_doc = gettext("XMLRPC wrapper for merging package sections. This method must be called with two parameters: a string containing the local system\'s password and an array to merge into the system\'s config. This function returns true upon completion."); +$merge_installedpackages_section_sig = array( array( $XML_RPC_Boolean, $XML_RPC_String, @@ -552,7 +552,8 @@ $server = new XML_RPC_Server( 'signature' => $filter_configure_sig, 'docstring' => $filter_configure_doc), 'pfsense.interfaces_carp_configure' => array('function' => 'interfaces_carp_configure_xmlrpc', - 'docstring' => $carp_configure_sig), + 'signature' => $carp_configure_sig, + 'docstring' => $carp_configure_doc), 'pfsense.backup_config_section' => array('function' => 'backup_config_section_xmlrpc', 'signature' => $backup_config_section_sig, 'docstring' => $backup_config_section_doc), @@ -563,11 +564,11 @@ $server = new XML_RPC_Server( 'signature' => $merge_config_section_sig, 'docstring' => $merge_config_section_doc), 'pfsense.merge_installedpackages_section_xmlrpc' => array('function' => 'merge_installedpackages_section_xmlrpc', - 'signature' => $merge_config_section_sig, - 'docstring' => $merge_config_section_doc), + 'signature' => $merge_installedpackages_section_sig, + 'docstring' => $merge_installedpackages_section_doc), 'pfsense.host_firmware_version' => array('function' => 'pfsense_firmware_version_xmlrpc', 'signature' => $pfsense_firmware_version_sig, - 'docstring' => $host_firmware_version_doc), + 'docstring' => $pfsense_firmware_version_doc), 'pfsense.reboot' => array('function' => 'reboot_xmlrpc', 'signature' => $reboot_sig, 'docstring' => $reboot_doc), |