Project

General

Profile

Download (6 KB) Statistics
| Branch: | Tag: | Revision:
1 5b237745 Scott Ullrich
<?php
2 307cd525 Bill Marquette
/* $Id$ */
3 5b237745 Scott Ullrich
/*
4
    functions.inc
5 0e16b9ca Scott Ullrich
    Copyright (C) 2004-2006 Scott Ullrich
6 cfc707f7 Scott Ullrich
    All rights reserved.
7
8
    originally part of m0n0wall (http://m0n0.ch/wall)
9 5b237745 Scott Ullrich
    Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>.
10
    All rights reserved.
11 cfc707f7 Scott Ullrich
12 5b237745 Scott Ullrich
    Redistribution and use in source and binary forms, with or without
13
    modification, are permitted provided that the following conditions are met:
14 cfc707f7 Scott Ullrich
15 5b237745 Scott Ullrich
    1. Redistributions of source code must retain the above copyright notice,
16
       this list of conditions and the following disclaimer.
17 cfc707f7 Scott Ullrich
18 5b237745 Scott Ullrich
    2. Redistributions in binary form must reproduce the above copyright
19
       notice, this list of conditions and the following disclaimer in the
20
       documentation and/or other materials provided with the distribution.
21 cfc707f7 Scott Ullrich
22 5b237745 Scott Ullrich
    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
23
    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
24
    AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
    AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
26
    OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28
    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29
    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
    POSSIBILITY OF SUCH DAMAGE.
32 523855b0 Scott Ullrich
33
	pfSense_MODULE:	utils
34
35 5b237745 Scott Ullrich
*/
36
37 50797647 Scott Ullrich
/* BEGIN compatibility goo with HEAD */
38
if(!function_exists("gettext")) {
39
	function gettext($text) {
40
		return $text;
41
	}
42
}
43
44
if(!function_exists("pfSenseHeader")) {
45 ab6738c7 Scott Ullrich
	/****f* pfsense-utils/pfSenseHeader
46
	 * NAME
47
	 *   pfSenseHeader
48
	 * INPUTS
49
	 *   none
50
	 * RESULT
51
	 *   Javascript header change or browser Location:
52
	 ******/
53
	function pfSenseHeader($text) {
54
	        global $_SERVER;
55
	        if (isAjax()) {
56
	                if ($_SERVER['HTTPS'] == "on")
57
	                        $protocol = "https";
58
	                else
59
	                        $protocol = "http";
60
	
61
	                $port = ":{$_SERVER['SERVER_PORT']}";
62
	                if ($_SERVER['SERVER_PORT'] == "80" && $protocol == "http")
63
	                        $port = "";
64
	                if ($_SERVER['SERVER_PORT'] == "443" && $protocol == "https")
65
	                        $port = "";
66
	                $complete_url = "{$protocol}://{$_SERVER['SERVER_NAME']}{$port}/{$text}";
67
	                echo "\ndocument.location.href = '{$complete_url}';\n";
68
	        } else {
69
	                Header("Location: $text");
70
	        }
71 50797647 Scott Ullrich
	}
72
}
73
/* END compatibility goo with HEAD */
74
75 005ac3ca Marcello Coutinho
/*fetch menu notices function*/
76 84e94f82 marcelloc
if(!function_exists("get_menu_messages")) {
77
	function get_menu_messages(){
78
		global $g,$config;
79
		if (are_notices_pending()) {
80
			$notices = get_notices();
81
			$requests=array();
82 005ac3ca Marcello Coutinho
83 84e94f82 marcelloc
			## Get Query Arguments from URL ###
84
			foreach ($_REQUEST as $key => $value) {
85
				if ($key != "PHPSESSID")
86
					$requests[] = $key.'='.$value;
87
				}
88
			if(is_array($requests))
89
				$request_string = implode("&", $requests);
90 005ac3ca Marcello Coutinho
91 84e94f82 marcelloc
				if(is_array($notices)) {
92
					$notice_msgs = "<table colspan=6 id=notice_table>";
93
					$alert_style="style=\'color:#ffffff; filter:Glow(color=#ff0000, strength=12);\' ";
94
					$notice = "<a href=# onClick=notice_action(\'acknowledge\',\'all\');domTT_close(this); {$alert_style}>".gettext("Acknowledge All Notices")."</a>";
95
					$alert_link="title=\'".gettext("Click to Acknowledge")."\' {$alert_style}";
96
					$domtt_width=500;
97
					foreach ($notices as $key => $value) {
98
						$date = date("m-d-y H:i:s", $key);
99
						$noticemsg = ($value['notice'] != "" ? $value['notice'] : $value['id']);
100
						$noticemsg = preg_replace("/(\"|\'|\n|<.?\w+>)/i","",$noticemsg);
101
						if ((strlen($noticemsg)* 8) > $domtt_width)
102
							$domtt_width=(strlen($noticemsg) *8);
103
						if ((strlen($noticemsg)* 8) > 900)
104
							$domtt_width= 900;
105
						$alert_action ="onClick=notice_action(\'acknowledge\',\'{$key}\');domTT_close(this);jQuery(this).parent().parent().remove();";
106
						$notice_msgs .= "<tr><td valign=\'top\' width=\'120\'><a href=# {$alert_link} {$alert_action}>{$date}</a></td><td valign=\'top\'><a href=# {$alert_link} {$alert_action}>[ ".htmlspecialchars($noticemsg)."]</a></td><tr>";
107
						}
108
					$notice_msgs .="</table>";
109
						
110 005ac3ca Marcello Coutinho
					$domtt= "onclick=\"domTT_activate(this, event, 'caption', '{$notice}','content', '<br>{$notice_msgs}', 'trail', false, 'delay', 0, 'fade', 'both', 'fadeMax', 93, 'styleClass', 'niceTitle','width','{$domtt_width}','y',5,'type', 'sticky');\"";					
111 43b1760c Marcello Coutinho
                    $menu_messages="<div id='alerts' ; >\n";
112 005ac3ca Marcello Coutinho
                    if(count($notices)==1)
113
                    	$msg= sprintf("%1$02d",count($notices))." ".gettext("unread notice");
114
                    else
115
                    	$msg= sprintf("%1$02d",count($notices))." ".gettext("unread notices");
116 43b1760c Marcello Coutinho
                    $menu_messages.="<div id='marquee-text' style='z-index:1001;'><a href=# {$domtt}><b> .:. {$msg} .:. </b></a></div>\n";
117 005ac3ca Marcello Coutinho
                    $menu_messages.="</div>\n";
118
                    }
119 84e94f82 marcelloc
			}
120
		else {
121
			$menu_messages='<div id="hostname">';
122
			$menu_messages.=$config['system']['hostname'] . "." . $config['system']['domain']; 
123
			$menu_messages.='</div>';
124
			}
125
		return ($menu_messages);
126
		}
127
}
128 005ac3ca Marcello Coutinho
				
129 84e94f82 marcelloc
if(!function_exists("dom_title")) {
130 ae329c30 phildd
	function dom_title($title_msg,$width=NULL){
131 84e94f82 marcelloc
		$width=preg_replace("/\D+/","",$width);
132
		if (!empty($width)){
133
			$width=",'width',$width";
134
			}
135
		if (!empty($title_msg)){
136
			$title_msg=preg_replace("/\s+/"," ",$title_msg);
137
	   	    $title_msg=preg_replace("/'/","\'",$title_msg);
138
			return "onmouseout=\"this.style.color = ''; domTT_mouseout(this, event);\" onmouseover=\"domTT_activate(this, event, 'content', '{$title_msg}', 'trail', true, 'delay', 250, 'fade', 'both', 'fadeMax', 93, 'styleClass', 'niceTitle' $width);\"";
139
			}
140
		}
141 0f89c125 marcelloc
	}
142 5b237745 Scott Ullrich
/* include all configuration functions */
143 175b9149 Scott Ullrich
require_once("interfaces.inc");
144 ae3c9a62 Ermal Lu?i
require_once("gwlb.inc");
145 175b9149 Scott Ullrich
require_once("services.inc");
146
require_once("pfsense-utils.inc");
147 f7e3f9ac Scott Ullrich
require_once("certs.inc");
148 c8950940 Ermal Lu?i
require_once("system.inc");
149 175b9149 Scott Ullrich
require_once("vslb.inc");
150 5b237745 Scott Ullrich
151 ae329c30 phildd
?>