Fixed merge conflics

Merge branch 'beta' into devel

Conflicts:

	src/include/functions_common.php
This commit is contained in:
Andre Lorbach 2008-10-22 16:23:20 +02:00
commit a43c189a88
35 changed files with 511 additions and 164 deletions

View File

@ -1,4 +1,14 @@
---------------------------------------------------------------------------
Version 2.5.15 (beta), 2008-10-22
- Corrected the check for magic_quotes_gpc which is important when saving
configuration values are saved into the UserDB. This also fixes a
problem of duplicating backslahes when using \ or ' in string fields.
- Fixed a minor bug of handling and saving the ViewEntriesPerPage option.
- Added Option to inject custom html code into the header and footer.
- Added Help Links into the message parser admin panel.
- Cleaned up and enhanced the default and dark theme.
- Improved documentation
---------------------------------------------------------------------------
Version 2.5.14 (beta), 2008-10-10
- Added support for fully customizeable fields. This includes a fields
admin with possibility to customize width and alignment of fields,

View File

@ -38,7 +38,10 @@ do anything special.
<p>With phpLogCon, you can search any datasource for a variety of properties.
By default, text is searched within the msg part of the message. However, quite
complex searches can be performed. It is suggested to use the "advanced search"
button to build these. Note that searches are done via http get requests. That
button to build these. Alternatively, you can also review the
<a href="searching">&quot;phpLogCon search syntax&quot;</a> documentation to see how
to craft complex searches manually.
<p>Note that searches are done via http get requests. That
means you can copy and paste an url (or bookmark and email it) and that URL
will contain a complete source. This is actually a great way to send searches
to a co-worker or have some automatted process (eg via cron &quot; wget) pull specific

View File

@ -21,12 +21,15 @@ example those that are written by the syslgod.
<li><a href="basics.html">phpLogCon basics <b>Important - read this!</b></a></li>
<li><a href="searching.html">phpLogCon Search syntax</a></li>
<li><xa href="">phpLogCon configuration parameters</a></li>
<li><a href="textfiles.html">working with text log files</a></li>
<li><a href="windowsevent.html">using Windows Event Logs with phpLogCon</a></li>
<li><a href="troubleshoot.html">troubleshooting phpLogCon problems</a></li>
<li><a href="professional_services.html">phpLogCon professional services</a></li>
</ul>
<p><b>We have some in-depth papers on</b></p>
<ul>
<li><a href="build_from_repo.html">obtaining phpLogCon from the source repository</a></li>
<li><a href="http://www.mwagent.com/Common/en/Articles/setup_mwagent_webserverlogging_phplogcon_mysql.php">consolidating web server logs and viewing them with phpLogCon [Windows/Apache]</a></li>
<!--
<li><a href="install.html">installing phpLogCon</a></li>
<li><a href="debug.html">debug support in rsyslog</a></li>

64
doc/textfiles.html Normal file
View File

@ -0,0 +1,64 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>Using text log files with phpLogCon</title>
</head>
<body>
<h1>Using text log files with phpLogCon</h1>
<p><b>PhpLogcon natively supports operting on text log files.</b> So there
is no need to put log data into databases. Each approach has advantages
and disadvantages, which we will not discuss in this paper. Here, we focus
on how text log files are supported.
<p>We assume that the reader is familiar with <a href="basics.html">basic
phpLogCon concepts</a>. If you are not, get aquainted to them, first.
<h2>Requirements for text log files </h2>
<p>PhpLogCon can operate on any standard text log file, that means a file that
purely consists of printable characters and uses LF (linefeed, newline) characters
as log line terminators. Most importantly, this includes standard syslog files
as well as web server and other application logs.
<p>A data source is defined to pull data from a text log file. Note that only a single
text log file can be contained in any data source.
<h2>Working with text log files</h2>
<p><b>Text log files are just regular data sources. You can work with them like
with any other data sources, for example, you can browse them, search them,
generate graphics from the or base reports on their content.</b> Depending on the
size of the text log and on the operation being performed, performance may be
worse or even better than with using database-based data sources. For typical
operations and typical text file sizes, performance should be quite well.
<p>Note that some options make limited sense when working with text log files.
For example, you may set a filter with a broad date range, but the text log
file will, for obvious reasons, only provide what is currently contained in it.
For typical syslog files, that will probably mean they contain maximum one
day's data.
<h2>Use Cases for Text Log Files</h2>
<p>A typical use case is in a hosting environment. There, phpLogCon may
be used to do an online review of log data, via the web and without the need
to log into an SSH session. This can be very handy to learn what is currently
going on or, for example, to verify if an important mail left your system.
<p>Another use case is that you would like to keep an eye on some local text files,
for example while debugging an installation. Instead of reconfiguring your whole
logging system, you can set up a phpLogCon instance and point it to the log files
in question. Keep in mind that you are not restricted to syslog files. For example,
you may want to add additional application text log files as data sources as well.
With the cross-datasource search capability, you can quickly follow events across
the boundaries of log servers.
<p>For secuity sensitive-environments, the access to phpLogCon can be protected
by several levels, e.g. user authentication or IP ranges at the firewall or
http server level. Also, one may consider to activate a phpLogCon instance only
when actually needed to do troubleshooting and keep it "turned off" at other times.
The beauty of text log files is that you do not need to reconfigure the whole
logging system to do so. All that is needed is to disable the web site inside
the http server.
<p>[<a href="manual.html">manual index</a>] [<a href="http://www.phplogcon.com/">phpLogCon site</a>]</p>
<p><font size="2">This documentation is part of the
<a href="http://www.phplogcon.com/">phpLogCon</a>
project.<br>
Copyright &copy; 2008 by
<a href="http://www.adiscon.com/">Adiscon</a>.
Released under the GNU GPL version 3 or higher.</font></p>
</body></html>

34
doc/windowsevent.html Normal file
View File

@ -0,0 +1,34 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>Using Windows Event Logs with phpLogCon</title>
</head>
<body>
<h1>Using Windows Event Logs with phpLogCon</h1>
<p>phpLogCon provides a message parser that understand Windows Event Log entries
in Adiscon common format. With that parser, all Windows event log properties can be
easily accessed, displayed and searched for.
<h2>How to get hold of the Windows Event Log Data</h2>
<p>phpLogCon does not (yet) provide a data source driver to natively pull the log entries
from the Windows event logs. So it needs to be delivered to it. This can be done with
Adiscon's <a href="http://www.eventreporter.com">EventReporter</a> or
<a href="http://www.mwagent.com">MonitorWare Agent</a> software. These Agents are
excuted either on each Windows machine (or a single machine doing remote monitoring)
and the events extracted are written to phpLogCon's datasource (either a file or
database). Depending on your network setup, you may have some intermediate systems,
in which case the actual write to the data source is done by something like
<a href="http://www.winsyslog.com">WinSyslog</a> or <a href="http://www.rsyslog.com">rsyslog</a>.
<p>Once the data is inside the data source, the event log subparser does the rest. Together
with proper view defininitions, it provides a native-like view and search capability of
that data. Please note that Windows Event Log Fields can also be used as sources for
drawing graphics.
<p>[<a href="manual.html">manual index</a>] [<a href="http://www.phplogcon.com/">phpLogCon site</a>]</p>
<p><font size="2">This documentation is part of the
<a href="http://www.phplogcon.com/">phpLogCon</a>
project.<br>
Copyright &copy; 2008 by
<a href="http://www.adiscon.com/">Adiscon</a>.
Released under the GNU GPL version 3 or higher.</font></p>
</body></html>

View File

@ -150,6 +150,10 @@ if ( isset($_POST['op']) )
if ( isset ($_POST['SearchCustomButtonCaption']) ) { $content['SearchCustomButtonCaption'] = $_POST['SearchCustomButtonCaption']; }
if ( isset ($_POST['SearchCustomButtonSearch']) ) { $content['SearchCustomButtonSearch'] = $_POST['SearchCustomButtonSearch']; }
if ( isset ($_POST['InjectHtmlHeader']) ) { $content['InjectHtmlHeader'] = $_POST['InjectHtmlHeader']; }
if ( isset ($_POST['InjectBodyHeader']) ) { $content['InjectBodyHeader'] = $_POST['InjectBodyHeader']; }
if ( isset ($_POST['InjectBodyFooter']) ) { $content['InjectBodyFooter'] = $_POST['InjectBodyFooter']; }
// Save configuration variables now
SaveGeneralSettingsIntoDB();
}

View File

@ -107,6 +107,11 @@ $content['ORACLE_HELP_TEXT'] = GetAndReplaceLangStr( $content['LN_ORACLE_HELP_TE
$content['ORACLE_WHOIS'] = GetAndReplaceLangStr( $content['LN_ORACLE_WHOIS'], $content['oracle_type_readable'], $content['oracle_query'] ) ;
$content['WhoisUrl'] = "http://kb.monitorware.com/kbsearch.php?sa=whois&oid=" . $content['oracle_kb_type'] . "&origin=phplogcon&q=" . urlencode($content['oracle_query']);
// Set Field Captions!
$content['LN_FIELDS_MESSAGE'] = $fields[SYSLOG_MESSAGE]['FieldCaption'];
$content['LN_FIELDS_HOST'] = $fields[SYSLOG_HOST]['FieldCaption'];
// Enable help links!
$content['helplinksenabled'] = true;

View File

@ -36,20 +36,20 @@ class MsgParser_wireless extends MsgParser {
public $_ClassDescription = 'Custom logfile parser for wireless access points.';
public $_ClassHelpArticle = "";
public $_ClassRequiredFields = array (
"net_bytesrecieved" => array ( "FieldID" => "net_bytesrecieved", "FieldDefine" => "SYSLOG_NET_BYTESRECIEVED", "FieldCaption" => "Bytes recieved", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_bytesrecieved", "DefaultWidth" => 50, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_bytessend" => array (", ", "FieldID" => "net_bytessend", "FieldDefine" => "SYSLOG_NET_BYTESSEND", "FieldCaption" => "Bytes send", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_bytessend", "DefaultWidth" => 50, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0 ),
"net_interface" => array (", ", "FieldID" => "net_interface", "FieldDefine" => "SYSLOG_NET_INTERFACE", "FieldCaption" => "Interface", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_interface", "DefaultWidth" => 100, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_bytesrecieved" => array ( "FieldID" => "net_bytesrecieved", "FieldDefine" => "SYSLOG_NET_BYTESRECIEVED", "FieldCaption" => "Bytes recieved", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_bytesrecieved", "DefaultWidth" => 80, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_bytessend" => array (", ", "FieldID" => "net_bytessend", "FieldDefine" => "SYSLOG_NET_BYTESSEND", "FieldCaption" => "Bytes send", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_bytessend", "DefaultWidth" => 80, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0 ),
"net_interface" => array (", ", "FieldID" => "net_interface", "FieldDefine" => "SYSLOG_NET_INTERFACE", "FieldCaption" => "Interface", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_interface", "DefaultWidth" => 75, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_lastactivity" => array (", ", "FieldID" => "net_lastactivity", "FieldDefine" => "SYSLOG_NET_LASTACTIVITY", "FieldCaption" => "Last Activity", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_lastactivity", "DefaultWidth" => 80, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_lastip" => array (", ", "FieldID" => "net_lastip", "FieldDefine" => "SYSLOG_NET_LASTIP", "FieldCaption" => "Last IP Address", "FieldType" => 0, "FieldAlign" => "left", "SearchField" => "net_lastip", "DefaultWidth" => 100, "SearchOnline" => 1, "Trunscate" => 0, "Sortable" => 0),
"net_mac_address" => array (", ", "FieldID" => "net_mac_address", "FieldDefine" => "SYSLOG_NET_MAC_ADDRESS", "FieldCaption" => "Mac Address", "FieldType" => 0, "FieldAlign" => "left", "SearchField" => "net_mac_address", "DefaultWidth" => 125, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_packetsrecieved" => array (", ", "FieldID" => "net_packetsrecieved", "FieldDefine" => "SYSLOG_NET_PACKETSRECIEVED", "FieldCaption" => "Packets recieved", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_packetsrecieved", "DefaultWidth" => 50, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_packetssend" => array (", ", "FieldID" => "net_packetssend", "FieldDefine" => "SYSLOG_NET_PACKETSSEND", "FieldCaption" => "Packets send", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_packetssend", "DefaultWidth" => 50, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_rxrate" => array (", ", "FieldID" => "net_rxrate", "FieldDefine" => "SYSLOG_NET_RXRATE", "FieldCaption" => "RX Rate", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_rxrate", "DefaultWidth" => 65, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_signalstrength" => array (", ", "FieldID" => "net_signalstrength", "FieldDefine" => "SYSLOG_NET_SIGNALSTRENGTH", "FieldCaption" => "Signal strength", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_signalstrength", "DefaultWidth" => 100, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_signaltonoise" => array (", ", "FieldID" => "net_signaltonoise", "FieldDefine" => "SYSLOG_NET_SIGNALTONOISE", "FieldCaption" => "Signal to noise", "FieldType" => 1, "FieldAlign" => "center", "SearchField" => "net_signaltonoise", "DefaultWidth" => 50, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_uptime" => array (", ", "FieldID" => "net_uptime", "FieldDefine" => "SYSLOG_NET_UPTIME", "FieldCaption" => "System Uptime", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_uptime", "DefaultWidth" => 85, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_mac_address" => array (", ", "FieldID" => "net_mac_address", "FieldDefine" => "SYSLOG_NET_MAC_ADDRESS", "FieldCaption" => "Mac Address", "FieldType" => 0, "FieldAlign" => "left", "SearchField" => "net_mac_address", "DefaultWidth" => 120, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_packetsrecieved" => array (", ", "FieldID" => "net_packetsrecieved", "FieldDefine" => "SYSLOG_NET_PACKETSRECIEVED", "FieldCaption" => "Packets recieved", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_packetsrecieved", "DefaultWidth" => 100, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_packetssend" => array (", ", "FieldID" => "net_packetssend", "FieldDefine" => "SYSLOG_NET_PACKETSSEND", "FieldCaption" => "Packets send", "FieldType" => 1, "FieldAlign" => "left", "SearchField" => "net_packetssend", "DefaultWidth" => 100, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_rxrate" => array (", ", "FieldID" => "net_rxrate", "FieldDefine" => "SYSLOG_NET_RXRATE", "FieldCaption" => "RX Rate", "FieldType" => 0, "FieldAlign" => "left", "SearchField" => "net_rxrate", "DefaultWidth" => 65, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_signalstrength" => array (", ", "FieldID" => "net_signalstrength", "FieldDefine" => "SYSLOG_NET_SIGNALSTRENGTH", "FieldCaption" => "Signal strength", "FieldType" => 0, "FieldAlign" => "left", "SearchField" => "net_signalstrength", "DefaultWidth" => 110, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_signaltonoise" => array (", ", "FieldID" => "net_signaltonoise", "FieldDefine" => "SYSLOG_NET_SIGNALTONOISE", "FieldCaption" => "Signal to noise", "FieldType" => 1, "FieldAlign" => "center", "SearchField" => "net_signaltonoise", "DefaultWidth" => 85, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_uptime" => array (", ", "FieldID" => "net_uptime", "FieldDefine" => "SYSLOG_NET_UPTIME", "FieldCaption" => "System Uptime", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_uptime", "DefaultWidth" => 100, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_txccq" => array (", ", "FieldID" => "net_txccq", "FieldDefine" => "SYSLOG_NET_TXCCQ", "FieldCaption" => "TX CCQ", "FieldType" => 1, "FieldAlign" => "center", "SearchField" => "net_txccq", "DefaultWidth" => 50, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0),
"net_txrate" => array (", ", "FieldID" => "net_txrate", "FieldDefine" => "SYSLOG_NET_TXRATE", "FieldCaption" => "TX Rate", "FieldType" => 0, "FieldAlign" => "center", "SearchField" => "net_txrate", "DefaultWidth" => 65, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0)
"net_txrate" => array (", ", "FieldID" => "net_txrate", "FieldDefine" => "SYSLOG_NET_TXRATE", "FieldCaption" => "TX Rate", "FieldType" => 0, "FieldAlign" => "left", "SearchField" => "net_txrate", "DefaultWidth" => 75, "SearchOnline" => 0, "Trunscate" => 0, "Sortable" => 0)
);
// Constructor
@ -74,37 +74,50 @@ class MsgParser_wireless extends MsgParser {
$szMsg = trim($szMsg);
//return ERROR_MSG_NOMATCH;
// Sample: script,info INICIO; Madrid-penalver ;wlan1 ;00:15:AF:9E:02:94 ;192.168.10.30 ;36Mbps ;24Mbps ;01:21:39 ;00:00:00.030 ;82dBm@1Mbps ;15 ;66 ;16852066,2147105 ;17288,12903
if ( preg_match('/(.*?),(.*?) (.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.*?);(.[0-9]{1,12}.);(.[0-9]{1,12}.);(.[0-9]{1,12}.),(.[0-9]{1,12}.);(.[0-9]{1,12}.),(.[0-9]{1,12}.)$/', $szMsg, $out ) )
// Sample: Oct 14 21:05:52 script,info INICIO; Madrid-arturosoria ;wlan1 ;00:1F:3A:66:70:09 ;192.168.10.117 ;24Mbps ;36Mbps ;15:50:56 ;00:00:00.080 ;-80dBm@1Mbps ;21 ;78 ;43351,126437 ;2959,377
if ( preg_match('/(...)(?:.|..)([0-9]{1,2} [0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}) (.*?),(.*?) (.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?);(.|.*?)$/', $szMsg, $out) )
{
//print_r ( $out );
//exit;
// Set generic properties
$arrArguments[SYSLOG_HOST] = $out[4];
$arrArguments[SYSLOG_DATE] = GetEventTime($out[1] . " " . $out[2]);
$arrArguments[SYSLOG_HOST] = $out[6];
// $arrArguments[SYSLOG_DATE] = GetEventTime($out[4]);
// Set wlan log specific properties!
$arrArguments[SYSLOG_NET_INTERFACE] = trim($out[5]);
$arrArguments[SYSLOG_NET_MAC_ADDRESS] = trim($out[6]);
$arrArguments[SYSLOG_NET_LASTIP] = trim($out[7]);
$arrArguments[SYSLOG_NET_RXRATE] = trim($out[8]);
$arrArguments[SYSLOG_NET_TXRATE] = trim($out[9]);
$arrArguments[SYSLOG_NET_UPTIME] = trim($out[10]);
$arrArguments[SYSLOG_NET_LASTACTIVITY] = trim($out[11]);
$arrArguments[SYSLOG_NET_SIGNALSTRENGTH] = trim($out[12]);
$arrArguments[SYSLOG_NET_INTERFACE] = trim($out[7]);
$arrArguments[SYSLOG_NET_MAC_ADDRESS] = trim($out[8]);
$arrArguments[SYSLOG_NET_LASTIP] = trim($out[9]);
$arrArguments[SYSLOG_NET_RXRATE] = trim($out[10]);
$arrArguments[SYSLOG_NET_TXRATE] = trim($out[11]);
$arrArguments[SYSLOG_NET_UPTIME] = trim($out[12]);
$arrArguments[SYSLOG_NET_LASTACTIVITY] = trim($out[13]);
$arrArguments[SYSLOG_NET_SIGNALSTRENGTH] = trim($out[14]);
// Number based fields
$arrArguments[SYSLOG_NET_SIGNALTONOISE] = $out[13];
$arrArguments[SYSLOG_NET_TXCCQ] = $out[14];
$arrArguments[SYSLOG_NET_BYTESRECIEVED] = $out[15];
$arrArguments[SYSLOG_NET_BYTESSEND] = $out[16];
$arrArguments[SYSLOG_NET_PACKETSRECIEVED] = $out[17];
$arrArguments[SYSLOG_NET_PACKETSSEND] = $out[18];
$arrArguments[SYSLOG_NET_SIGNALTONOISE] = $out[15];
$arrArguments[SYSLOG_NET_TXCCQ] = $out[16];
// Set msg to whole logline
$arrArguments[SYSLOG_MESSAGE] = $out[0];
// Get additional parameters!
if ( preg_match('/(.|.*?[0-9]{1,12}.*?),(.|.*?[0-9]{1,12}.*?);(.|.*?[0-9]{1,12}.*?),(.|.*?[0-9]{1,12}.*?)$/', $out[17], $out2) )
{
$arrArguments[SYSLOG_NET_BYTESRECIEVED] = $out2[1];
$arrArguments[SYSLOG_NET_BYTESSEND] = $out2[2];
$arrArguments[SYSLOG_NET_PACKETSRECIEVED] = $out2[3];
$arrArguments[SYSLOG_NET_PACKETSSEND] = $out2[4];
}
else
{
$arrArguments[SYSLOG_NET_BYTESRECIEVED] = "";
$arrArguments[SYSLOG_NET_BYTESSEND] = "";
$arrArguments[SYSLOG_NET_PACKETSRECIEVED] = "";
$arrArguments[SYSLOG_NET_PACKETSSEND] = "";
}
if ( $this->_MsgNormalize == 1 )
{

View File

@ -85,6 +85,12 @@ $CFG['TreatNotFoundFiltersAsTrue'] = 0; // If you filter / search for messages,
$CFG['PopupMenuTimeout'] = 3000; // This variable defines the default timeout value for popup menus in milliseconds. (those menus which popup when you click on the value of a field.
// ---
// --- Custom HTML Code
$CFG['InjectHtmlHeader'] = ""; // Use this variable to inject custom html into the html <head> area!
$CFG['InjectBodyHeader'] = ""; // Use this variable to inject custom html into the begin of the <body> area!
$CFG['InjectBodyFooter'] = ""; // Use this variable to inject custom html into the end of the <body> area!
// ---
// --- Define which fields you want to see
//$CFG['ShowMessage'] = true; // If enabled, the Message column will be appended to the columns list.
//Eventlog based fields: $CFG['Columns'] = array ( SYSLOG_DATE, SYSLOG_HOST, SYSLOG_EVENT_LOGTYPE, SYSLOG_EVENT_SOURCE, /*SYSLOG_EVENT_CATEGORY, */SYSLOG_EVENT_ID, SYSLOG_MESSAGE );

View File

@ -0,0 +1,6 @@
-- New Database Structure Updates
ALTER TABLE `logcon_config` ADD `propvalue_text` TEXT NOT NULL AFTER `propvalue` ;
-- Insert data
-- Updated Data

View File

@ -75,6 +75,9 @@ $content['SHOW_DONATEBUTTON'] = true; // Default = true!
$content['EXTRA_METATAGS'] = "";
$content['EXTRA_JAVASCRIPT'] = "";
$content['EXTRA_STYLESHEET'] = "";
$content['EXTRA_HTMLHEAD'] = "";
$content['EXTRA_HEADER'] = "";
$content['EXTRA_FOOTER'] = "";
$content['CURRENTURL'] = "";
// ---
@ -393,7 +396,7 @@ function CreatePagesizesList()
$content['pagesizes'][ $_SESSION['PAGESIZE_ID'] ]["Selected"] = "selected";
// The content variable will now contain the user selected oaging size
$content["ViewEntriesPerPage"] = $content['pagesizes'][ $_SESSION['PAGESIZE_ID'] ]["Value"];
$content["CurrentViewEntriesPerPage"] = $content['pagesizes'][ $_SESSION['PAGESIZE_ID'] ]["Value"];
}
function CreateReloadTimesList()
@ -685,8 +688,14 @@ function InitConfigurationValues()
{
for($i = 0; $i < count($rows); $i++)
{
$CFG[ $rows[$i]['propname'] ] = $rows[$i]['propvalue'];
$content[ $rows[$i]['propname'] ] = $rows[$i]['propvalue'];
// Obtain the right value
if ( isset($rows[$i]['propvalue_text']) && strlen($rows[$i]['propvalue_text']) > 0 )
$myValue = $rows[$i]['propvalue_text'];
else
$myValue = $rows[$i]['propvalue'];
$CFG[ $rows[$i]['propname'] ] = $myValue;
$content[ $rows[$i]['propname'] ] = $myValue;
}
}
}
@ -777,7 +786,7 @@ function InitConfigurationValues()
$_SESSION['AUTORELOAD_ID'] = 0;
}
// Theme Handling
// --- Theme Handling
if ( !isset($content['web_theme']) ) { $content['web_theme'] = GetConfigSetting("ViewDefaultTheme", "default", CFGLEVEL_USER); }
if ( isset($_SESSION['CUSTOM_THEME']) && VerifyTheme($_SESSION['CUSTOM_THEME']) )
$content['user_theme'] = $_SESSION['CUSTOM_THEME'];
@ -786,6 +795,16 @@ function InitConfigurationValues()
// Init Theme About Info ^^
InitThemeAbout($content['user_theme']);
// ---
// --- Handle HTML Injection stuff
if ( strlen(GetConfigSetting("InjectHtmlHeader", false)) > 0 )
$content['EXTRA_HTMLHEAD'] .= $CFG['InjectHtmlHeader'];
if ( strlen(GetConfigSetting("InjectBodyHeader", false)) > 0 )
$content['EXTRA_HEADER'] .= $CFG['InjectBodyHeader'];
if ( strlen(GetConfigSetting("InjectBodyFooter", false)) > 0 )
$content['EXTRA_FOOTER'] .= $CFG['InjectBodyFooter'];
// ---
// Init main langauge file now!
IncludeLanguageFile( $gl_root_path . '/lang/' . $LANG . '/main.php' );
@ -1349,6 +1368,11 @@ function SaveGeneralSettingsIntoDB()
WriteConfigValue( "DebugUserLogin", true );
WriteConfigValue( "MiscDebugToSyslog", true );
WriteConfigValue( "MiscMaxExecutionTime", true );
// Custom HTML Code
WriteConfigValue( "InjectHtmlHeader", true );
WriteConfigValue( "InjectBodyHeader", true );
WriteConfigValue( "InjectBodyFooter", true );
}
function SaveUserGeneralSettingsIntoDB()

View File

@ -45,7 +45,7 @@ $errdesc = "";
$errno = 0;
// --- Current Database Version, this is important for automated database Updates!
$content['database_internalversion'] = "5"; // Whenever incremented, a database upgrade is needed
$content['database_internalversion'] = "6"; // Whenever incremented, a database upgrade is needed
$content['database_installedversion'] = "0"; // 0 is default which means Prior Versioning Database
// ---
@ -246,7 +246,7 @@ function DB_RemoveBadChars($myString, $dbEngine = DB_MYSQL)
else
{
// Replace with internal PHP Functions!
if ( !get_magic_quotes_runtime() )
if ( !get_magic_quotes_gpc() )
return addslashes($myString);
// return addcslashes($myString, "'");
else
@ -263,7 +263,7 @@ function DB_RemoveBadChars($myString, $dbEngine = DB_MYSQL)
function DB_StripSlahes($myString)
{
// Replace with internal PHP Functions!
if ( !get_magic_quotes_runtime() )
if ( !get_magic_quotes_gpc() )
return stripslashes($myString);
else
return $myString;
@ -361,13 +361,19 @@ function WriteConfigValue($szPropName, $is_global = true, $userid = false, $grou
if ( !isset($rows) )
{
// New Entry
$result = DB_Query("INSERT INTO " . DB_CONFIG . " (propname, propvalue, is_global) VALUES ( '" . $szPropName . "', '" . $szDbValue . "', " . $is_global . ")");
if ( strlen($szDbValue) < 255 )
$result = DB_Query("INSERT INTO " . DB_CONFIG . " (propname, propvalue, is_global) VALUES ( '" . $szPropName . "', '" . $szDbValue . "', " . $is_global . ")");
else
$result = DB_Query("INSERT INTO " . DB_CONFIG . " (propname, propvalue_text, is_global) VALUES ( '" . $szPropName . "', '" . $szDbValue . "', " . $is_global . ")");
DB_FreeQuery($result);
}
else
{
// Update Entry
$result = DB_Query("UPDATE " . DB_CONFIG . " SET propvalue = '" . $szDbValue . "' WHERE propname = '" . $szPropName . "' AND is_global = " . $is_global);
if ( strlen($szDbValue) < 255 )
$result = DB_Query("UPDATE " . DB_CONFIG . " SET propvalue = '" . $szDbValue . "', propvalue_text = '' WHERE propname = '" . $szPropName . "' AND is_global = " . $is_global);
else
$result = DB_Query("UPDATE " . DB_CONFIG . " SET propvalue_text = '" . $szDbValue . "', propvalue = '' WHERE propname = '" . $szPropName . "' AND is_global = " . $is_global);
DB_FreeQuery($result);
}
}

View File

@ -625,14 +625,14 @@ if ( isset($content['Sources'][$currentSourceID]) )
// Increment Counter
$counter++;
} while ($counter < $content['ViewEntriesPerPage'] && ($ret = $stream->ReadNext($uID, $logArray)) == SUCCESS);
} while ($counter < $content['CurrentViewEntriesPerPage'] && ($ret = $stream->ReadNext($uID, $logArray)) == SUCCESS);
//print_r ( $content['syslogmessages'] );
// Move below processing - Read First and LAST UID's before start reading the stream!
$content['uid_last'] = $stream->GetLastPageUID();
$content['uid_first'] = $stream->GetFirstPageUID();
if ( $content['main_recordcount'] == -1 || $content['main_recordcount'] > $content['ViewEntriesPerPage'] )
if ( $content['main_recordcount'] == -1 || $content['main_recordcount'] > $content['CurrentViewEntriesPerPage'] )
{
// Enable Pager in any case here!
$content['main_pagerenabled'] = true;

View File

@ -92,6 +92,9 @@ $content['LN_ADMIN_GLOBALONLY'] = "Global Options Only";
$content['LN_GEN_DEBUGTOSYSLOG'] = "Send Debug to local syslog server";
$content['LN_GEN_POPUPMENUTIMEOUT'] = "Popupmenu Timeout in milli seconds";
$content['LN_ADMIN_SCRIPTTIMEOUT'] = "PHP Script Timeout in seconds";
$content['LN_GEN_INJECTHTMLHEADER'] = "Inject this html code into the &lt;head&gt; area.";
$content['LN_GEN_INJECTBODYHEADER'] = "Inject this html code at the beginning of the &lt;body&gt; area.";
$content['LN_GEN_INJECTBODYFOOTER'] = "Inject this html code at the end &lt;body&gt; area.";
// User Center
$content['LN_USER_CENTER'] = "User Options";

View File

@ -49,7 +49,7 @@
</tr>
<!-- IF GROUPMEMBERS="true" -->
<tr>
<td align="center" colspan="2" class="cellmenu2">{LN_GROUP_MEMBERS}</td>
<td align="center" colspan="2" class="cellmenu2_naked">{LN_GROUP_MEMBERS}</td>
<td align="left" colspan="2" class="line0">
<!-- BEGIN USERS -->
<img src="{MENU_ADMINUSERS}" width="16">
@ -77,7 +77,7 @@
<td align="right" class="line0" width="100%"><input type="text" name="groupname" size="40" maxlength="64" value="{groupname}"></td>
</tr>
<tr>
<td align="left" class="cellmenu2" nowrap><b>{LN_GROUP_DESCRIPTION}</b></td>
<td align="left" class="cellmenu2_naked" nowrap><b>{LN_GROUP_DESCRIPTION}</b></td>
<td align="right" class="line1"><input type="text" name="groupdescription" size="40" maxlength="255" value="{groupdescription}"></td>
</tr>
<tr>

View File

@ -11,7 +11,7 @@
<table border="0" cellpadding="1" cellspacing="1" bgcolor="#DDDDDD" width="750" align="center">
<tr>
<td colspan="2" class="line1">&nbsp;</td>
<td align="center" class="cellmenu1" width="50%" nowrap rowspan="2" valign="middle">
<td align="center" class="cellmenu1_naked" width="50%" nowrap rowspan="2" valign="middle">
<!-- IF ENABLEUSEROPTIONS="true" -->
<a href="?op=enableuserops&value=0" class="cellmenu1_link">{LN_GEN_DISABLEUSEROPTIONS}</a>
<br><img src="{MENU_USEROPTIONS}" align="left" width="16" height="16" vspace="0">
@ -108,7 +108,6 @@
<!-- ENDIF ENABLEUSEROPTIONS="true" -->
</tr>
<tr>
<td align="left" class="cellmenu2" nowrap><b>{LN_GEN_PREPENDTITLE}</b></td>
<td align="right" class="line1" ><input type="text" name="PrependTitle" size="35" maxlength="255" value="{PrependTitle}" {DISABLE_GLOBALEDIT_FORMCONTROL}></td>
@ -245,12 +244,25 @@
<tr>
<td align="left" class="cellmenu2" nowrap><b>{LN_GEN_DEBUGUSERLOGIN}</b></td>
<td align="right" class="line1" colspan="2"><input type="checkbox" name="DebugUserLogin" value="yes" {DebugUserLogin_checked} {DISABLE_GLOBALEDIT_FORMCONTROL}></td>
<td align="right" class="line2" colspan="2"><input type="checkbox" name="DebugUserLogin" value="yes" {DebugUserLogin_checked} {DISABLE_GLOBALEDIT_FORMCONTROL}></td>
</tr>
<tr>
<td align="left" class="cellmenu2" nowrap><b>{LN_GEN_DEBUGTOSYSLOG}</b></td>
<td align="right" class="line2" colspan="2"><input type="checkbox" name="MiscDebugToSyslog" value="yes" {MiscDebugToSyslog_checked} {DISABLE_GLOBALEDIT_FORMCONTROL}></td>
<td align="right" class="line1" colspan="2"><input type="checkbox" name="MiscDebugToSyslog" value="yes" {MiscDebugToSyslog_checked} {DISABLE_GLOBALEDIT_FORMCONTROL}></td>
</tr>
<tr>
<td align="left" class="cellmenu2_naked" valign="_top"><b>{LN_GEN_INJECTHTMLHEADER}</b></td>
<td align="right" class="line2" colspan="2"><textarea name="InjectHtmlHeader" cols="85" rows="3" {DISABLE_GLOBALEDIT_FORMCONTROL}>{InjectHtmlHeader}</textarea></td>
</tr>
<tr>
<td align="left" class="cellmenu2_naked" valign="_top"><b>{LN_GEN_INJECTBODYHEADER}</b></td>
<td align="right" class="line2" colspan="2"><textarea name="InjectBodyHeader" cols="85" rows="3" {DISABLE_GLOBALEDIT_FORMCONTROL}>{InjectBodyHeader}</textarea></td>
</tr>
<tr>
<td align="left" class="cellmenu2_naked" valign="_top"><b>{LN_GEN_INJECTBODYFOOTER}</b></td>
<td align="right" class="line2" colspan="2"><textarea name="InjectBodyFooter" cols="85" rows="3" {DISABLE_GLOBALEDIT_FORMCONTROL}>{InjectBodyFooter}</textarea></td>
</tr>
<tr>
<tr>
<td align="center" colspan="3">
<input type="submit" value="{LN_ADMIN_SEND}">

View File

@ -36,7 +36,7 @@
<td align="left" class="{cssclass}" valign="top">{Description}</td>
<td align="center" class="{cssclass}">
<!-- IF ParserHelpEnabled="true" -->
<a href="{ParserHelpArticle}"><img src="{MENU_HELP}" width="16" title="{LN_PARSERS_HELP}"></a>
<a href="{ParserHelpArticle}" target="_blank"><img src="{MENU_HELP}" width="16" title="{LN_PARSERS_HELP}"></a>
<!-- ENDIF ParserHelpEnabled="true" -->
</td>
<td align="center" class="{cssclass}">
@ -69,12 +69,12 @@
<td align="left" class="line2">{DisplayName}</td>
</tr>
<tr>
<td align="left" class="cellmenu2" valign="top"><b>{LN_PARSERS_DESCRIPTION}</b></td>
<td align="left" class="cellmenu2_naked" valign="top"><b>{LN_PARSERS_DESCRIPTION}</b></td>
<td align="left" class="line1">{Description}</td>
</tr>
<!-- IF EnableCustomField="true" -->
<tr>
<td align="left" class="cellmenu2" valign="top"><b>{LN_PARSERS_CUSTOMFIELDS}</b></td>
<td align="left" class="cellmenu2_naked" valign="top"><b>{LN_PARSERS_CUSTOMFIELDS}</b></td>
<td align="left" class="line1">
<!-- BEGIN CustomFieldsList -->
<br><B>{FieldCaption}</B> ({FieldDefine})
@ -86,7 +86,7 @@
<!-- IF EnableHelpArticle="true" -->
<tr>
<td align="left" class="cellmenu2"><b>{LN_PARSERS_HELP}</b></td>
<td align="center" class="line2"><a href="{ParserHelpArticle}">{LN_PARSERS_HELP_CLICK}</a></td>
<td align="center" class="line2"><a href="{ParserHelpArticle}" target="_blank">{LN_PARSERS_HELP_CLICK}</a></td>
</tr>
<!-- ENDIF EnableHelpArticle="true" -->
<tr>

View File

@ -103,7 +103,7 @@
<td align="right" class="line1" width="350"><input type="text" name="Name" size="55" maxlength="255" value="{Name}"></td>
</tr>
<tr>
<td align="left" class="cellmenu2" width="250" valign="top"><b>{LN_SOURCES_DESCRIPTION}</b></td>
<td align="left" class="cellmenu2_naked" width="250" valign="top"><b>{LN_SOURCES_DESCRIPTION}</b></td>
<td align="right" class="line1" width="350"><textarea name="Description" cols="50" rows="5">{Description}</textarea></td>
</tr>

View File

@ -56,8 +56,8 @@
<td colspan="2" nowrap class="cellmenu1" align="center"><B>{LN_DBUPGRADE_ONESTATEMENTFAILED}</B></td>
</tr>
<tr>
<td width="400" class="cellmenu1">{LN_DBUPGRADE_ERRMSG}</td>
<td width="300" class="cellmenu1" align="center"><B>SQL Statement</B></td>
<td width="400" class="cellmenu1_naked">{LN_DBUPGRADE_ERRMSG}</td>
<td width="300" class="cellmenu1_naked" align="center"><B>SQL Statement</B></td>
</tr>
<!-- BEGIN failedstatements -->
<tr>

View File

@ -74,12 +74,12 @@
<td align="right" class="line1" width="350"><input type="text" name="DisplayName" size="55" maxlength="255" value="{DisplayName}"></td>
</tr>
<tr>
<td align="left" class="cellmenu2"><b>{LN_GEN_USERONLY_LONG}</b></td>
<td align="left" class="cellmenu2_naked"><b>{LN_GEN_USERONLY_LONG}</b></td>
<td align="right" class="line1"><input type="checkbox" name="isuseronly" value="{userid}" {CHECKED_ISUSERONLY}></td>
</tr>
<!-- IF ISGROUPSAVAILABLE="true" -->
<tr>
<td align="left" class="cellmenu2"><b>{LN_GEN_GROUPONLY_LONG}</b></td>
<td align="left" class="cellmenu2_naked"><b>{LN_GEN_GROUPONLY_LONG}</b></td>
<td align="right" class="line2">
<select name="groupid" size="1" STYLE="width: 300px">
<!-- BEGIN SUBGROUPS -->

View File

@ -35,5 +35,6 @@
</tr>
</table>
{EXTRA_FOOTER}
</body>
</html>

View File

@ -11,8 +11,10 @@
</script>
<script type='text/javascript' src='{BASEPATH}js/common.js'></script>
{EXTRA_JAVASCRIPT}
{EXTRA_HTMLHEAD}
</head>
<body TOPMARGIN="0" LEFTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0">
{EXTRA_HEADER}
<!-- IF MAXIMIZED!="true" -->
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="mainheader">

View File

@ -118,7 +118,7 @@
<strong>{LN_FILTER_OTHERS}</strong></td>
</tr>
<tr>
<td align="left" class="cellmenu2" width="50%" nowrap><b>{LN_FILTER_FACILITY}</b></td>
<td align="left" class="cellmenu2_naked" width="50%" nowrap><b>{LN_FILTER_FACILITY}</b></td>
<td align="left" class="line1" nowrap>
<select name="filter_facility[]" size="8" multiple>
<!-- BEGIN filter_facility_list -->
@ -126,7 +126,7 @@
<!-- END filter_facility_list -->
</select>
</td>
<td align="left" class="cellmenu2" width="50%" nowrap><b>{LN_FILTER_SEVERITY}</b></td>
<td align="left" class="cellmenu2_naked" width="50%" nowrap><b>{LN_FILTER_SEVERITY}</b></td>
<td align="left" class="line1" nowrap>
<select name="filter_severity[]" size="8" multiple>
<!-- BEGIN filter_severity_list -->
@ -136,7 +136,7 @@
</td>
</tr>
<tr>
<td align="left" class="cellmenu2" width="50%" nowrap colspan="2"><b>{LN_FILTER_MESSAGETYPE}</b></td>
<td align="left" class="cellmenu2_naked" width="50%" nowrap colspan="2"><b>{LN_FILTER_MESSAGETYPE}</b></td>
<td align="left" class="line0" nowrap colspan="2">
<select name="filter_messagetype[]" size="3" multiple>
<!-- BEGIN filter_messagetype_list -->

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 B

View File

@ -1,10 +1,10 @@
/* Generell Tag Classes */
BODY
{
FONT-FAMILY: ARIAL;
FONT-SIZE: 8pt;
BACKGROUND: #000000;
COLOR: #F3F3F1;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
background-color: #000000;
color: #F3F3F1;
scrollbar-face-color: #475059;
scrollbar-highlight-color: #b8c2cc;
@ -15,21 +15,27 @@ BODY
scrollbar-darkshadow-color: #000000;
}
TD { font-family: Arial, Helvetica, sans-serif; font-size: 8pt; color: #F3F3F1 }
TD
{
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: #F3F3F1
}
/* Default Link Classes */
a:link,a:active,a:visited,a.postlink
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
text-decoration:none;
background-color: transparent;
color:#FFD323;
text-decoration:none;
}
a:hover
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
color:#EF9A00;
}
@ -38,11 +44,35 @@ img
border: 0px;
}
/* Context Link Classes */
a.contextlink:link,a.contextlink:active,a.contextlink:visited,a.contextlink
{
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
background-color: transparent;
color:#FF9900;
text-decoration:underline;
}
a.contextlink:hover
{
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
color:#FF9900;
text-decoration:none;
}
/*---*/
/* Title Classes */
.title
{
font: bold 11px Verdana, Arial, Helvetica, sans-serif;
BACKGROUND-COLOR: #1C1014;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
font-size: 11px;
background-color: #1C1014;
background-image: url(images/bg_3.png);
background-repeat: repeat-x;
COLOR: #E5F377;
border: 1px solid;
border-color: #58363E #2C1B1F #2C1B1F #58363E;
@ -52,50 +82,39 @@ img
}
A.title, A.title:active, A.title:visited
{
font: bold 11px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
font-size: 11px;
COLOR: #dd6900;
TEXT-DECORATION: none;
}
A.title:hover
{
font: bold 11px Verdana, Arial, Helvetica, sans-serif;
COLOR: #FF0A0C;
TEXT-DECORATION: none;
}
.titleSecond
{
FONT: bold 10px Verdana, Arial, Helvetica, sans-serif;
BACKGROUND-COLOR: #301B22;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
background-color: #1C1014;
background-image: url(images/bg_4.png);
background-repeat: repeat-x;
COLOR: #E5F377;
height: 18px;
text-align:center;
vertical-align:middle;
}
/* Context Link Classes */
a.contextlink:link,a.contextlink:active,a.contextlink:visited,a.contextlink
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
background-color: transparent;
color:#FF9900;
text-decoration:underline;
}
a.contextlink:hover
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
color:#FF9900;
text-decoration:none;
}
/*---*/
/* Default Font Classes */
font
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 8pt;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
}
/* Table / Border Classes */
@ -157,7 +176,7 @@ font
/* Cells for listening */
.line0
{
font-size: 8pt;
font-size: 10px;
color: #B9B597;
background-color: #0E161F;
}
@ -168,7 +187,7 @@ font
.line1
{
font-size: 8pt;
font-size: 10px;
color: #B9B597;
background-color: #152331;
}
@ -179,7 +198,7 @@ font
.line2
{
font-size: 8pt;
font-size: 10px;
color: #B9B597;
background-color: #1D3043;
}
@ -224,7 +243,9 @@ font
padding: 2px 2px 0px 2px;
vertical-align: middle;
font: 10px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FFFFFF;
background-color: #38110E;
}
@ -247,15 +268,19 @@ font
}
.topmenuend
{
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
height: 16px;
font: 10px Verdana, Arial, Helvetica, sans-serif;
color: #FFFFFF;
background-color: #290604;
}
.topmenuextra
{
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
height: 16px;
font: 10px Verdana, Arial, Helvetica, sans-serif;
color: #FFFFFF;
background-color: #053841;
}
@ -277,7 +302,9 @@ font
padding: 2px 2px 0px 2px;
vertical-align: middle;
font: 10px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FFFFFF;
background-color: #49221F;
}
@ -302,7 +329,10 @@ font
{
height: 20px;
border:0px;
font: 10px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #FFFFFF;
background-color: #49221F;
}
@ -315,11 +345,28 @@ font
border-color: #353A3F #050A0F #050A0F #353A3F;
text-indent:5px;
font: bold 10px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
background-color: #103B65;
background-image: url(images/bg_1.png);
background-repeat: repeat-x;
color: #FFFCE5;
}
.cellmenu1_naked
{
border:1px ridge;
border-color: #353A3F #050A0F #050A0F #353A3F;
text-indent:5px;
font-family: 10px Arial, Verdana, Helvetica, sans-serif;
color: #FFFCE5;
background-color: #103B65;
}
.cellmenu1:hover
.cellmenu1:hover, .cellmenu1_naked:hover
{
color: #FFFF33;
text-decoration: none;
@ -342,11 +389,27 @@ A.cellmenu1_link:hover
border-color: #7777AA #12161A #12161A #7777AA;
text-indent:5px;
font: 10px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
color: #FFFCE5;
background-color: #053841;
background-image: url(images/bg_2.png);
background-repeat: repeat-x;
}
.cellmenu2_naked
{
border:1px ridge;
border-color: #7777AA #12161A #12161A #7777AA;
text-indent:5px;
font: 10px Arial, Verdana, Helvetica, sans-serif;
color: #FFFCE5;
background-color: #053841;
}
.cellmenu2:hover
.cellmenu2:hover, .cellmenu2_naked:hover
{
color: #FFFF33;
text-decoration: none;
@ -355,7 +418,10 @@ A.cellmenu1_link:hover
/* Usefull Text Classes */
.ErrorMsg
{
font: bold 12px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
font-weight: bold;
COLOR: #FF2222;
}
.PriorityEmergency
@ -428,7 +494,11 @@ select, input, button, textarea
{
background-color: #0B253C;
color:#FFFFFF;
font:bold 10px Verdana,Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
border: 1px solid;
border-color: #233B51 #124A7C #124A7C #233B51;
}
@ -439,7 +509,11 @@ select, input, button, textarea
margin: 2px;
background-color: #0B253C;
color:#FFFFFF;
font:bold 10px Verdana,Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
border: 1px solid;
border-color: #233B51 #124A7C #124A7C #233B51;
}
@ -450,13 +524,20 @@ select, input, button, textarea
margin: 2px;
background-color: #0B253C;
color:#FFFFFF;
font:10px Verdana,Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
border: 1px solid;
border-color: #233B51 #124A7C #124A7C #233B51;
}
.highlighted
{
font: bold 8pt Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
color: #CC6600
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 B

View File

@ -1,10 +1,10 @@
/* Generell Tag Classes */
BODY
{
BACKGROUND-COLOR: #f9f9f9;
COLOR: #000000;
FONT-FAMILY: ARIAL;
FONT-SIZE: 8pt;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000
background-color: #f9f9f9;
scrollbar-face-color: #DEE3E7;
scrollbar-highlight-color: #FFFFFF;
@ -12,40 +12,46 @@ BODY
scrollbar-3dlight-color: #D1D7DC;
scrollbar-arrow-color: #006699;
scrollbar-track-color: #EFEFEF;
scrollbar-darkshadow-color: #98AAB1
scrollbar-darkshadow-color: #98AAB1;
}
TD { font-family: Arial, Helvetica, sans-serif; font-size: 8pt; color: #000000 }
TD
{
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: #000000
}
/* Default Link Classes */
a:link,a:active,a:visited,a.postlink
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
text-decoration:none;
background-color: transparent;
color:#38140E;
text-decoration:none;
}
a:hover
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
color:#FF0000;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
color:#CC0000;
}
/*---*/
/* Context Link Classes */
a.contextlink:link,a.contextlink:active,a.contextlink:visited,a.contextlink
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
background-color: transparent;
color:#3814BB;
text-decoration:underline;
}
a.contextlink:hover
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-weight:bold;
color:#3844FF;
text-decoration:none;
@ -60,9 +66,15 @@ img
/* Title Classes */
.title
{
FONT: bold 11px Verdana, Arial, Helvetica, sans-serif;
BACKGROUND-COLOR: #D2C598;
COLOR: #032D5D;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
font-weight:bold;
background-color: #C6B097;
background-image: url(images/bg_3.png);
background-repeat: repeat-x;
color: #032D5D;
border: 1px solid;
border-color: #ACBED6 #3B679B #3B679B #ACBED6;
height: 20px;
@ -71,21 +83,29 @@ img
}
A.title, A.title:active, A.title:visited
{
FONT: bold 11px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
font-weight:bold;
COLOR: #ED9D10;
TEXT-DECORATION: none;
}
A.title:hover
{
FONT: bold 11px Verdana, Arial, Helvetica, sans-serif;
COLOR: #982D00;
TEXT-DECORATION: none;
}
.titleSecond
{
FONT: bold 10px Verdana, Arial, Helvetica, sans-serif;
BACKGROUND-COLOR: #E3D2AE;
COLOR: #1A3745;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight:bold;
background-color: #E3D2AE;
background-image: url(images/bg_4.png);
background-repeat: repeat-x;
color: #1A3745;
height: 18px;
text-align:center;
vertical-align:middle;
@ -95,8 +115,8 @@ A.title:hover
/* Default Font Classes */
font
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 8pt;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
}
/* Table / Border Classes */
@ -158,8 +178,7 @@ font
/* Cells for listening */
.line0
{
/* height: 16px;*/
font-size: 8pt;
font-size: 10px;
color: #000000;
background-color: #DDDDDD;
}
@ -170,8 +189,7 @@ font
.line1
{
/* height: 16px;*/
font-size: 8pt;
font-size: 10px;
color: #000000;
background-color: #EEEEEE;
}
@ -182,8 +200,7 @@ font
.line2
{
/* height: 16px;*/
font-size: 8pt;
font-size: 10px;
color: #000000;
background-color: #F5F5F5;
}
@ -193,19 +210,19 @@ font
}
.tableBackground
{
font-size: 8pt;
font-size: 10px;
color: #000000;
background-color: #F5F5F5;
}
.lineColouredWhite, .lineColouredWhite:hover, a.lineColouredWhite
{
font-size: 8pt;
font-size: 10px;
color: #FFFFFF;
}
.lineColouredBlack, .lineColouredBlack:hover, a.lineColouredBlack
{
font-size: 8pt;
font-size: 10px;
color: #000000;
}
@ -217,7 +234,7 @@ font
padding: 2px 2px 0px 2px;
vertical-align: middle;
background-color: #597196;
background-color: #4E6485;
}
.topmenu1
{
@ -229,7 +246,7 @@ font
font: 10px Verdana, Arial, Helvetica, sans-serif;
color: #FFFFFF;
background-color: #597196;
background-color: #4E6485;
}
.topmenu1:hover
{
@ -253,7 +270,7 @@ font
height: 20px;
font: 10px Verdana, Arial, Helvetica, sans-serif;
color: #FFFFFF;
background-color: #597196;
background-color: #4E6485;
}
.topmenuextra
{
@ -315,16 +332,34 @@ font
/* Cell Columns */
.cellmenu1
{
/* height: 16px; */
border:1px ridge;
border-color: #79AABE #09506C #09506C #79AABE;
text-indent:5px;
font: bold 10px Verdana, Arial, Helvetica, sans-serif;
text-indent:0px;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight:bold;
background-color: #2E79A0;
background-image: url(images/bg_1.png);
background-repeat: repeat-x;
color: #FFFFFF;
background-color: #6C8E9C;
}
.cellmenu1:hover
.cellmenu1_naked
{
border:1px ridge;
border-color: #79AABE #09506C #09506C #79AABE;
background-color: #2E79A0;
text-indent:0px;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight:bold;
color: #FFFFFF;
}
.cellmenu1:hover .cellmenu1_naked:hover
{
color: #FFFF99;
text-decoration: none;
@ -342,16 +377,33 @@ A.cellmenu1_link:hover
.cellmenu2
{
/* height: 15px; */
border:1px inset;
border-color: #79AABE #09506C #09506C #79AABE;
text-indent:5px;
font: 10px Verdana, Arial, Helvetica, sans-serif;
text-indent:0px;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight:bold;
background-color: #9FDAF1;
background-image: url(images/bg_2.png);
background-repeat: repeat-x;
color: #393327;
background-color: #B8D4E0;
}
.cellmenu2:hover
.cellmenu2_naked
{
text-indent:0px;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight:bold;
color: #393327;
border:1px inset;
border-color: #79AABE #09506C #09506C #79AABE;
background-color: #9FDAF1;
}
.cellmenu2:hover, .cellmenu2_naked:hover
{
color: #A31D32;
text-decoration: none;
@ -360,7 +412,10 @@ A.cellmenu1_link:hover
/* Usefull Text Classes */
.ErrorMsg
{
font: bold 12px Verdana, Arial, Helvetica, sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
font-weight: bold;
COLOR: #FF0000;
}
.PriorityEmergency
@ -433,7 +488,11 @@ select, input, button, textarea
{
background-color: #E8E7E2;
color:#000000;
font:bold 10px Verdana,Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
border: 1px solid;
border-color: #233B51 #124A7C #124A7C #233B51;
}
@ -444,7 +503,11 @@ select, input, button, textarea
margin: 2px;
background-color: #E8E7E2;
color:#000000;
font:bold 10px Verdana,Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
border: 1px solid;
border-color: #233B51 #124A7C #124A7C #233B51;
}
@ -455,14 +518,21 @@ select, input, button, textarea
margin: 2px;
background-color: #E8E7E2;
color:#000000;
font:10px Verdana,Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
border: 1px solid;
border-color: #233B51 #124A7C #124A7C #233B51;
}
.highlighted
{
font: bold 8pt Arial,Helvetica,sans-serif;
font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
color: #BB0000
}