diff options
author | Stephen Beaver <sbeaver@netgate.com> | 2016-09-14 20:52:55 -0400 |
---|---|---|
committer | Stephen Beaver <sbeaver@netgate.com> | 2016-09-14 20:58:36 -0400 |
commit | 9493b95753b4c800b38b5b1fba650052770c82c2 (patch) | |
tree | cac874667be9d445da045d57275425815e4cff68 /src | |
parent | 0ae0f1f0302b84b9744d9ac13bab83be8f5fa47a (diff) | |
download | pfsense-9493b95753b4c800b38b5b1fba650052770c82c2.zip pfsense-9493b95753b4c800b38b5b1fba650052770c82c2.tar.gz |
Revised service running/stopped icons
(cherry picked from commit a03162c874c4e52e6cae52c2eefce87118fd90d2)
Diffstat (limited to 'src')
-rw-r--r-- | src/etc/inc/service-utils.inc | 105 |
1 files changed, 48 insertions, 57 deletions
diff --git a/src/etc/inc/service-utils.inc b/src/etc/inc/service-utils.inc index 593e109..94064e9 100644 --- a/src/etc/inc/service-utils.inc +++ b/src/etc/inc/service-utils.inc @@ -3,53 +3,21 @@ * service-utils.inc * * part of pfSense (https://www.pfsense.org) - * Copyright (c) 2005-2016 Electric Sheep Fencing, LLC + * Copyright (c) 2005-2016 Rubicon Communications, LLC (Netgate) * Copyright (c) 2005-2006 Colin Smith (ethethlay@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: + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at * - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. + * http://www.apache.org/licenses/LICENSE-2.0 * - * 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. - * - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgment: - * "This product includes software developed by the pfSense Project - * for use in the pfSense® software distribution. (http://www.pfsense.org/). - * - * 4. The names "pfSense" and "pfSense Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * coreteam@pfsense.org. - * - * 5. Products derived from this software may not be called "pfSense" - * nor may "pfSense" appear in their names without prior written - * permission of the Electric Sheep Fencing, LLC. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * - * "This product includes software developed by the pfSense Project - * for use in the pfSense software distribution (http://www.pfsense.org/). - * - * THIS SOFTWARE IS PROVIDED BY THE pfSense PROJECT ``AS IS'' AND ANY - * EXPRESSED 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 pfSense PROJECT OR - * ITS CONTRIBUTORS 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. + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ require_once("globals.inc"); @@ -486,27 +454,50 @@ function get_service_status($service) { return $running; } -function get_service_status_icon($service, $withtext = true, $smallicon = false) { - global $g; +function get_service_status_icon($service, $withtext = true, $smallicon = false, $withthumbs = false, $title = "service_state") { $output = ""; + if (get_service_status($service)) { $statustext = gettext("Running"); - $output .= "<a title=\"" . sprintf(gettext("%s Service is"), $service["name"]) . " {$statustext}\" ><i class=\""; - $output .= ($smallicon) ? "fa fa-play" : "fa fa-lg fa-play"; - $output .= "\" ></i></a>"; - if ($withtext) { - $output .= " " . $statustext; - } + $text_class = "text-success"; + $fa_class = "fa fa-check-circle"; + $fa_class_thumbs = "fa fa-thumbs-o-up"; + $Thumbs_UpDown = "Thumbs up"; } else { - $service_enabled = is_service_enabled($service['name']); - $statustext = ($service_enabled) ? gettext("Stopped") : gettext("Disabled"); - $output .= "<a title=\"" . sprintf(gettext("%s Service is"), $service["name"]) . " {$statustext}\" ><i class=\""; - $output .= ($smallicon) ? "fa fa-times" : "fa fa-lg fa-times"; - $output .= "\" ></i></a>"; - if ($withtext) { - $output .= " " . $statustext; + if (is_service_enabled($service['name'])) { + $statustext = gettext("Stopped"); + $text_class = "text-danger"; + $fa_class = "fa fa-times-circle"; + } else { + $statustext = gettext("Disabled"); + $text_class = "text-warning"; + $fa_class = "fa fa-ban"; } + $fa_class_thumbs = "fa fa-thumbs-o-down"; + $Thumbs_UpDown = "Thumbs down"; + } + $fa_size = ($smallicon) ? "fa-1x" : "fa-lg"; + + $spacer = ($withthumbs || $withtext) ? " " : ""; + if ($title == "state") { + $output = "<i class=\"{$text_class} {$fa_class} {$fa_size}\" title=\"{$statustext}\"></i>{$spacer}"; + } elseif ($title == "service_state") { + $output = "<i class=\"{$text_class} {$fa_class} {$fa_size}\" title=\"" . sprintf(gettext("%s Service is %s"), $service["name"], $statustext) . "\"></i>{$spacer}"; + } elseif ($title == "description_state") { + $output = "<i class=\"{$text_class} {$fa_class} {$fa_size}\" title=\"" . sprintf(gettext("%s, %s Service is %s"), $service["description"], $statustext) . "\"></i>{$spacer}"; + } elseif ($title == "description_service_state") { + $output = "<i class=\"{$text_class} {$fa_class} {$fa_size}\" title=\"" . sprintf(gettext("%s, %s Service is %s"), $service["description"], $service["name"], $statustext) . "\"></i>{$spacer}"; + } + + $spacer = ($withtext) ? " " : ""; + if ($withthumbs) { + $output .= "<i class=\"{$text_class} {$fa_class_thumbs} {$fa_size}\" title=\"{$Thumbs_UpDown}\"></i>{$spacer}"; + } + + if ($withtext) { + $output .= "<span class=\"" . $text_class . "\">" . $statustext . "</span>"; } + return $output; } |