. * 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. * * 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. */ /* BEGIN compatibility goo with HEAD */ if (!function_exists("gettext")) { function gettext($text) { return $text; } } if (!function_exists("pfSenseHeader")) { /****f* pfsense-utils/pfSenseHeader * NAME * pfSenseHeader * INPUTS * none * RESULT * Javascript header change or browser Location: ******/ function pfSenseHeader($text) { global $_SERVER; if (isAjax()) { if ($_SERVER['HTTPS'] == "on") { $protocol = "https"; } else { $protocol = "http"; } $port = ":{$_SERVER['SERVER_PORT']}"; if ($_SERVER['SERVER_PORT'] == "80" && $protocol == "http") { $port = ""; } if ($_SERVER['SERVER_PORT'] == "443" && $protocol == "https") { $port = ""; } $complete_url = "{$protocol}://{$_SERVER['HTTP_HOST']}{$port}/{$text}"; echo "\ndocument.location.href = '{$complete_url}';\n"; } else { header("Location: $text"); } } } /* END compatibility goo with HEAD */ /*fetch menu notices function*/ if (!function_exists("get_menu_messages")) { function get_menu_messages() { global $g, $config; if (are_notices_pending()) { $notices = get_notices(); $requests = array(); ## Get Query Arguments from URL ### foreach ($_REQUEST as $key => $value) { if ($key != "PHPSESSID") { $requests[] = $key . '=' . $value; } } if (is_array($requests)) { $request_string = implode("&", $requests); } if (is_array($notices)) { $notice_msgs = "
{$date} | [ " . htmlspecialchars($noticemsg) . "] |