diff options
author | Renato Botelho <renato@netgate.com> | 2015-08-25 08:08:24 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2015-08-25 14:49:54 -0300 |
commit | 46bc6e545a17e77202aaf01ec0cd8d5a46567525 (patch) | |
tree | 32d18dda436ec739c67c489ceb771e8629cd926f /src/usr/local/www/shortcuts.inc | |
parent | 4d9801c2dbd2b3e54a39578ee62b93af66607227 (diff) | |
download | pfsense-46bc6e545a17e77202aaf01ec0cd8d5a46567525.zip pfsense-46bc6e545a17e77202aaf01ec0cd8d5a46567525.tar.gz |
Move main pfSense content to src/
Diffstat (limited to 'src/usr/local/www/shortcuts.inc')
-rw-r--r-- | src/usr/local/www/shortcuts.inc | 289 |
1 files changed, 289 insertions, 0 deletions
diff --git a/src/usr/local/www/shortcuts.inc b/src/usr/local/www/shortcuts.inc new file mode 100644 index 0000000..c4bf48e --- /dev/null +++ b/src/usr/local/www/shortcuts.inc @@ -0,0 +1,289 @@ +<?php +/* $Id$ */ +/* + Copyright (C) 2012 Jim Pingle + All rights reserved. + + Copyright (C) 2007, 2008 Scott Ullrich <sullrich@gmail.com> + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +*/ + +/* + pfSense_MODULE: system +*/ + +// On the page, add in like so: +// $shortcut_section = "relayd"; + +$shortcuts = array(); + +/* Load and process custom shortcuts. */ +function get_shortcut_files($directory) { + $dir_array = array(); + if (!is_dir($directory)) { + return; + } + if ($dh = opendir($directory)) { + while (($file = readdir($dh)) !== false) { + $canadd = 0; + if ($file == ".") { + $canadd = 1; + } + if ($file == "..") { + $canadd = 1; + } + if ($canadd == 0) { + array_push($dir_array, $file); + } + } + closedir($dh); + } + if (!is_array($dir_array)) { + return; + } + return $dir_array; +} + +function get_shortcut_by_service_name($servicename) { + global $shortcuts; + foreach ($shortcuts as $name => $shortcut) { + if (!empty($shortcut['service']) && ($shortcut['service'] == $servicename)) { + return $name; + } + } + return null; +} + +function get_shortcut_main_link($shortcut_section, $addspace = true, $service = array()) { + global $g, $shortcuts; + if (empty($shortcut_section)) { + return ""; + } + $space = ($addspace) ? " " : "" ; + switch ($shortcut_section) { + case "openvpn": + if (!empty($service['mode']) && is_numeric($service['id'])) { + $link = "vpn_openvpn_{$service['mode']}.php?act=edit&id={$service['id']}"; + } else { + $link = $shortcuts[$shortcut_section]['main']; + } + break; + case "captiveportal": + if (!empty($service['zone'])) { + $link = "services_captiveportal.php?zone={$service['zone']}"; + } else { + $link = $shortcuts[$shortcut_section]['main']; + } + break; + default: + $link = $shortcuts[$shortcut_section]['main']; + break; + } + if (!empty($link) && ($_SERVER['REQUEST_URI'] != "/{$link}")) { + return "{$space}<a href=\"{$link}\" title=\"" . gettext("Main page for this section") . "\"><img style=\"vertical-align:middle\" src=\"/themes/{$g['theme']}/images/icons/icon_plus.gif\" border=\"0\" alt=\"plus\" /></a>"; + } +} + +function get_shortcut_status_link($shortcut_section, $addspace = true, $service = array()) { + global $g, $shortcuts, $cpzone; + if (empty($shortcut_section)) { + return ""; + } + $space = ($addspace) ? " " : "" ; + if (!empty($cpzone)) { + $zone = $cpzone; + } elseif (!empty($service['zone'])) { + $zone = $service['zone']; + } + switch ($shortcut_section) { + case "captiveportal": + if (!empty($zone)) { + $link = "status_captiveportal.php?zone={$zone}"; + } else { + $link = $shortcuts[$shortcut_section]['status']; + } + break; + default: + $link = $shortcuts[$shortcut_section]['status']; + break; + } + if (!empty($link)) { + return "{$space}<a href=\"{$link}\" title=\"" . gettext("Status of items on this page") . "\"><img style=\"vertical-align:middle\" src=\"/themes/{$g['theme']}/images/icons/icon_service_status.gif\" border=\"0\" alt=\"status\" /></a>"; + } +} + +function get_shortcut_log_link($shortcut_section, $addspace = true) { + global $g, $shortcuts; + $space = ($addspace) ? " " : "" ; + if (!empty($shortcut_section) && !empty($shortcuts[$shortcut_section]['log'])) { + return "{$space}<a href=\"{$shortcuts[$shortcut_section]['log']}\" title=\"" . gettext("Log entries for items on this page") . "\"><img style=\"vertical-align:middle\" src=\"/themes/{$g['theme']}/images/icons/icon_logs.gif\" border=\"0\" alt=\"logs\" /></a>"; + } +} + +// Load shortcuts +$dir_array = get_shortcut_files("/usr/local/www/shortcuts"); +foreach ($dir_array as $file) { + if (!is_dir("/usr/local/www/shortcuts/{$file}") && stristr($file, ".inc")) { + include("/usr/local/www/shortcuts/{$file}"); + } +} +if (is_dir("/usr/local/pkg/shortcuts")) { + $dir_array = get_shortcut_files("/usr/local/pkg/shortcuts"); + foreach ($dir_array as $file) { + if (!is_dir("/usr/local/pkg/shortcuts/{$file}") && stristr($file, ".inc")) { + include("/usr/local/pkg/shortcuts/{$file}"); + } + } +} + +$shortcuts['relayd'] = array(); +$shortcuts['relayd']['main'] = "load_balancer_pool.php"; +$shortcuts['relayd']['log'] = "diag_logs_relayd.php"; +$shortcuts['relayd']['status'] = "status_lb_pool.php"; +$shortcuts['relayd']['service'] = "relayd"; + +$shortcuts['relayd-virtualservers'] = array(); +$shortcuts['relayd-virtualservers']['main'] = "load_balancer_virtual_server.php"; +$shortcuts['relayd-virtualservers']['log'] = "diag_logs_relayd.php"; +$shortcuts['relayd-virtualservers']['status'] = "status_lb_vs.php"; +$shortcuts['relayd-virtualservers']['service'] = "relayd"; + +$shortcuts['captiveportal'] = array(); +$shortcuts['captiveportal']['main'] = "services_captiveportal_zones.php"; +$shortcuts['captiveportal']['log'] = "diag_logs_auth.php"; +$shortcuts['captiveportal']['status'] = "status_captiveportal.php"; +$shortcuts['captiveportal']['service'] = "captiveportal"; + +$shortcuts['captiveportal-vouchers'] = array(); +$shortcuts['captiveportal-vouchers']['log'] = "diag_logs_auth.php"; +$shortcuts['captiveportal-vouchers']['status'] = "status_captiveportal_vouchers.php"; +$shortcuts['captiveportal-vouchers']['service'] = "captiveportal"; + +$shortcuts['dhcp'] = array(); +$shortcuts['dhcp']['main'] = "services_dhcp.php"; +$shortcuts['dhcp']['log'] = "diag_logs_dhcp.php"; +$shortcuts['dhcp']['status'] = "status_dhcp_leases.php"; +$shortcuts['dhcp']['service'] = "dhcpd"; + +$shortcuts['dhcp6'] = array(); +$shortcuts['dhcp6']['main'] = "services_dhcpv6.php"; +$shortcuts['dhcp6']['log'] = "diag_logs_dhcp.php"; +$shortcuts['dhcp6']['status'] = "status_dhcpv6_leases.php"; + + +$shortcuts['ipsec'] = array(); +$shortcuts['ipsec']['main'] = "vpn_ipsec.php"; +$shortcuts['ipsec']['log'] = "diag_logs_ipsec.php"; +$shortcuts['ipsec']['status'] = "diag_ipsec.php"; +$shortcuts['ipsec']['service'] = "ipsec"; + +$shortcuts['openvpn'] = array(); +$shortcuts['openvpn']['main'] = "vpn_openvpn_server.php"; +$shortcuts['openvpn']['log'] = "diag_logs_openvpn.php"; +$shortcuts['openvpn']['status'] = "status_openvpn.php"; +$shortcuts['openvpn']['service'] = "openvpn"; + +$shortcuts['firewall'] = array(); +$shortcuts['firewall']['main'] = "firewall_rules.php"; +$shortcuts['firewall']['log'] = "diag_logs_filter.php"; +$shortcuts['firewall']['status'] = "status_filter_reload.php"; + +$shortcuts['routing'] = array(); +$shortcuts['routing']['main'] = "system_routes.php"; +$shortcuts['routing']['log'] = "diag_logs_routing.php"; +$shortcuts['routing']['status'] = "diag_routes.php"; + +$shortcuts['gateways'] = array(); +$shortcuts['gateways']['main'] = "system_gateways.php"; +$shortcuts['gateways']['log'] = "diag_logs_gateways.php"; +$shortcuts['gateways']['status'] = "status_gateways.php"; +$shortcuts['gateways']['service'] = "apinger"; + +$shortcuts['gateway-groups'] = array(); +$shortcuts['gateway-groups']['main'] = "system_gateway_groups.php"; +$shortcuts['gateway-groups']['log'] = "diag_logs_gateways.php"; +$shortcuts['gateway-groups']['status'] = "status_gateway_groups.php"; + +$shortcuts['interfaces'] = array(); +$shortcuts['interfaces']['main'] = "interfaces_assign.php"; +$shortcuts['interfaces']['status'] = "status_interfaces.php"; + +$shortcuts['trafficshaper'] = array(); +$shortcuts['trafficshaper']['main'] = "firewall_shaper.php"; +$shortcuts['trafficshaper']['status'] = "status_queues.php"; + +$shortcuts['trafficshaper-limiters'] = array(); +$shortcuts['trafficshaper-limiters']['main'] = "firewall_shaper_vinterface.php"; +$shortcuts['trafficshaper-limiters']['status'] = "diag_limiter_info.php"; + +$shortcuts['forwarder'] = array(); +$shortcuts['forwarder']['main'] = "services_dnsmasq.php"; +$shortcuts['forwarder']['log'] = "diag_logs_resolver.php"; +$shortcuts['forwarder']['service'] = "dnsmasq"; + +$shortcuts['resolver'] = array(); +$shortcuts['resolver']['main'] = "services_unbound.php"; +$shortcuts['resolver']['log'] = "diag_logs_resolver.php"; +$shortcuts['resolver']['service'] = "unbound"; + +$shortcuts['wireless'] = array(); +$shortcuts['wireless']['main'] = "interfaces_wireless.php"; +$shortcuts['wireless']['log'] = "diag_logs_wireless.php"; +$shortcuts['wireless']['status'] = "status_wireless.php"; + +$shortcuts['ntp'] = array(); +$shortcuts['ntp']['main'] = "services_ntpd.php"; +$shortcuts['ntp']['log'] = "diag_logs_ntpd.php"; +$shortcuts['ntp']['status'] = "status_ntpd.php"; +$shortcuts['ntp']['service'] = "ntpd"; + +$shortcuts['pptps'] = array(); +$shortcuts['pptps']['main'] = "vpn_pptp.php"; +$shortcuts['pptps']['log'] = "diag_logs_vpn.php"; + +$shortcuts['pppoes'] = array(); +$shortcuts['pppoes']['main'] = "vpn_pppoe.php"; +$shortcuts['pppoes']['log'] = "diag_logs_vpn.php?vpntype=poes"; + +$shortcuts['l2tps'] = array(); +$shortcuts['l2tps']['main'] = "vpn_l2tp.php"; +$shortcuts['l2tps']['log'] = "diag_logs_vpn.php?vpntype=l2tp"; + +$shortcuts['carp'] = array(); +$shortcuts['carp']['main'] = "system_hasync.php"; +$shortcuts['carp']['status'] = "carp_status.php"; + +$shortcuts['snmp'] = array(); +$shortcuts['snmp']['main'] = "services_snmp.php"; +$shortcuts['snmp']['service'] = "bsnmpd"; + +$shortcuts['authentication'] = array(); +$shortcuts['authentication']['main'] = "system_authservers.php"; +$shortcuts['authentication']['status'] = "diag_authentication.php"; + +$shortcuts['aliases'] = array(); +$shortcuts['aliases']['main'] = "firewall_aliases.php"; +$shortcuts['aliases']['status'] = "diag_tables.php"; +?> |