diff options
author | jim-p <jimp@pfsense.org> | 2012-08-15 22:18:53 -0400 |
---|---|---|
committer | jim-p <jimp@pfsense.org> | 2012-08-15 22:18:53 -0400 |
commit | 391abfcfe42a1156d252e30d049fbafc47dcf790 (patch) | |
tree | 8cba703b3084e44eefe3a079fc85490919168e21 /usr/local/www/shortcuts.inc | |
parent | 7468a29fa001983f0e4cc5656c4d6af294894edc (diff) | |
download | pfsense-391abfcfe42a1156d252e30d049fbafc47dcf790.zip pfsense-391abfcfe42a1156d252e30d049fbafc47dcf790.tar.gz |
Extend the shortcuts code and link back from Status > Services also.
Diffstat (limited to 'usr/local/www/shortcuts.inc')
-rw-r--r-- | usr/local/www/shortcuts.inc | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/usr/local/www/shortcuts.inc b/usr/local/www/shortcuts.inc index 112ac44..ca42593 100644 --- a/usr/local/www/shortcuts.inc +++ b/usr/local/www/shortcuts.inc @@ -61,6 +61,73 @@ function get_shortcut_files($directory) { 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['SCRIPT_NAME'] != "/{$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\"></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\"></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\"></a>"; + } +} + // Load shortcuts $dir_array = get_shortcut_files("/usr/local/www/shortcuts"); foreach ($dir_array as $file) |