diff options
author | Stephen Beaver <sbeaver@netgate.com> | 2015-10-07 09:05:06 -0400 |
---|---|---|
committer | Stephen Beaver <sbeaver@netgate.com> | 2015-10-07 09:05:06 -0400 |
commit | d8ed9328d7924c91d4cef20584facd119e55a85f (patch) | |
tree | 1fc5545f12a247edd957c3805a1913298a4a1ae8 /src/etc | |
parent | ea1bbc43042235f4d763421702408072499e8d87 (diff) | |
download | pfsense-d8ed9328d7924c91d4cef20584facd119e55a85f.zip pfsense-d8ed9328d7924c91d4cef20584facd119e55a85f.tar.gz |
Fixed #5277
Diffstat (limited to 'src/etc')
-rw-r--r-- | src/etc/inc/service-utils.inc | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/etc/inc/service-utils.inc b/src/etc/inc/service-utils.inc index cfa6a7f..265ad9f 100644 --- a/src/etc/inc/service-utils.inc +++ b/src/etc/inc/service-utils.inc @@ -483,6 +483,59 @@ function get_service_status_icon($service, $withtext = true, $smallicon = false) return $output; } + +// This version proved GET formatted links +function get_service_control_GET_links($service, $addname = false) { + global $g; + $output = ""; + $stitle = ($addname) ? $service['name'] . " " : ""; + + switch ($service['name']) { + case "openvpn": + $link = '<a title="%s" href="status_services.php?mode=%s&service='.$service['name'] . '&vpnmode=' . $service['mode'] . '&id=' . $service['vpnid'] . '">'; + break; + case "captiveportal": + $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'] . '">'; + } + + if (get_service_status($service)) { + switch ($service['name']) { + case "openvpn": + $output .= "<a href='status_services.php?mode=restartservice&service={$service['name']}&vpnmode={$service['mode']}&id={$service['vpnid']}'>"; + break; + case "captiveportal": + $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 .= "<i class=\"icon-large icon-repeat\" title='" . sprintf(gettext("Restart %sService"), $stitle) . "' alt='restart'></i></a>\n"; + switch ($service['name']) { + case "openvpn": + $output .= "<a href='status_services.php?mode=stopservice&service={$service['name']}&vpnmode={$service['mode']}&id={$service['vpnid']}'>"; + break; + case "captiveportal": + $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 .= "<i class=\"icon-large icon-stop\" title='" . sprintf(gettext("Stop %sService"), $stitle) . "' alt='stop'></i></a>"; + } else { + $service_enabled = is_service_enabled($service['name']); + + if ($service['name'] == 'openvpn' || $service['name'] == 'captiveportal' || $service_enabled) { + $output .= sprintf($link, sprintf(gettext("Start %sService"), $stitle), 'startservice'); + $output .= '<i class="icon icon-play-circle"></i></a> '; + } + } + + return $output; +} + function get_service_control_links($service, $addname = false) { global $g; $output = ""; |