summaryrefslogtreecommitdiffstats
path: root/usr/local/www/shortcuts.inc
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2012-08-15 22:18:53 -0400
committerjim-p <jimp@pfsense.org>2012-08-15 22:18:53 -0400
commit391abfcfe42a1156d252e30d049fbafc47dcf790 (patch)
tree8cba703b3084e44eefe3a079fc85490919168e21 /usr/local/www/shortcuts.inc
parent7468a29fa001983f0e4cc5656c4d6af294894edc (diff)
downloadpfsense-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.inc67
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) ? "&nbsp;" : "" ;
+ 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) ? "&nbsp;" : "" ;
+ 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) ? "&nbsp;" : "" ;
+ 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)
OpenPOWER on IntegriCloud