diff --git a/src/admin/fields.php b/src/admin/fields.php index f388e50..a362538 100644 --- a/src/admin/fields.php +++ b/src/admin/fields.php @@ -67,7 +67,7 @@ if ( isset($_GET['op']) ) $content['FieldDefine'] = "SYSLOG_"; $content['FieldCaption'] = ""; // Field Caption $content['SearchField'] = ""; // Should be set to FieldID for now! - $content['SearchOnline'] = 0; // If we want to be able to search online + $content['SearchOnline'] = false; // If we want to be able to search online $content['CHECKED_SEARCHONLINE'] = ""; $content['FieldType'] = FILTER_TYPE_STRING; @@ -109,6 +109,12 @@ if ( isset($_GET['op']) ) $content['Trunscate'] = $fields[$content['FieldID']]['Trunscate']; $content['Sortable'] = $fields[$content['FieldID']]['Sortable']; if ( $content['Sortable'] ) { $content['CHECKED_SORTABLE'] = "checked"; } else { $content['CHECKED_SORTABLE'] = ""; } + + // Some fields cannot be edited, if this is an internal field! + if ( $fields[$content['FieldID']]['IsInternalField'] ) + $content['DisableInternalFields'] = "disabled"; + else + $content['DisableInternalFields'] = ""; } else { @@ -129,122 +135,150 @@ if ( isset($_GET['op']) ) if ( isset($_GET['id']) ) { //PreInit these values - $content['SEARCHID'] = DB_RemoveBadChars($_GET['id']); + $content['FieldID'] = DB_RemoveBadChars($_GET['id']); // Get UserInfo - $result = DB_Query("SELECT DisplayName FROM " . DB_SEARCHES . " WHERE ID = " . $content['SEARCHID'] ); + $result = DB_Query("SELECT FieldCaption FROM " . DB_FIELDS . " WHERE FieldID = '" . $content['FieldID'] . "'"); $myrow = DB_GetSingleRow($result, true); - if ( !isset($myrow['DisplayName']) ) + if ( !isset($myrow['FieldCaption']) ) { $content['ISERROR'] = true; - $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_IDNOTFOUND'], $content['SEARCHID'] ); + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_FIELDS_ERROR_IDNOTFOUND'], $content['FieldID'] ); } // --- Ask for deletion first! if ( (!isset($_GET['verify']) || $_GET['verify'] != "yes") ) { // This will print an additional secure check which the user needs to confirm and exit the script execution. - PrintSecureUserCheck( GetAndReplaceLangStr( $content['LN_SEARCH_WARNDELETESEARCH'], $myrow['DisplayName'] ), $content['LN_DELETEYES'], $content['LN_DELETENO'] ); + PrintSecureUserCheck( GetAndReplaceLangStr( $content['LN_FIELDS_WARNDELETESEARCH'], $myrow['FieldCaption'] ), $content['LN_DELETEYES'], $content['LN_DELETENO'] ); } // --- // do the delete! - $result = DB_Query( "DELETE FROM " . DB_SEARCHES . " WHERE ID = " . $content['SEARCHID'] ); + $result = DB_Query( "DELETE FROM " . DB_FIELDS . " WHERE FieldID = '" . $content['FieldID'] . "'" ); if ($result == FALSE) { $content['ISERROR'] = true; - $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_DELSEARCH'], $content['SEARCHID'] ); + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_FIELDS_ERROR_DELSEARCH'], $content['FieldID'] ); } else DB_FreeQuery($result); // Do the final redirect - RedirectResult( GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_HASBEENDEL'], $myrow['DisplayName'] ) , "searches.php" ); + RedirectResult( GetAndReplaceLangStr( $content['LN_FIELDS_ERROR_HASBEENDEL'], $myrow['FieldCaption'] ) , "fields.php" ); } else { $content['ISERROR'] = true; - $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_INVALIDID']; + $content['ERROR_MSG'] = $content['LN_FIELDS_ERROR_INVALIDID']; } } } if ( isset($_POST['op']) ) { - if ( isset ($_POST['id']) ) { $content['SEARCHID'] = intval(DB_RemoveBadChars($_POST['id'])); } else {$content['SEARCHID'] = -1; } - if ( isset ($_POST['DisplayName']) ) { $content['DisplayName'] = DB_RemoveBadChars($_POST['DisplayName']); } else {$content['DisplayName'] = ""; } - if ( isset ($_POST['SearchQuery']) ) { $content['SearchQuery'] = DB_RemoveBadChars($_POST['SearchQuery']); } else {$content['SearchQuery'] = ""; } +//print_r ( $_POST ); + // Get FieldID + if ( isset($_POST['Newid']) ) { $content['FieldID'] = DB_RemoveBadChars($_POST['Newid']); } else if ( isset($_POST['id']) ) { $content['FieldID'] = DB_RemoveBadChars($_POST['id']); } else { $content['FieldID'] = ""; } - // User & Group handeled specially - if ( isset ($_POST['isuseronly']) ) - { - $content['userid'] = $content['SESSION_USERID']; - $content['groupid'] = "null"; // Either user or group not both! - } - else - { - $content['userid'] = "null"; - if ( isset ($_POST['groupid']) && $_POST['groupid'] != -1 ) - $content['groupid'] = intval($_POST['groupid']); - else - $content['groupid'] = "null"; - } + // textfields + if ( isset($_POST['FieldCaption']) ) { $content['FieldCaption'] = DB_RemoveBadChars($_POST['FieldCaption']); } else {$content['FieldCaption'] = ""; } + if ( isset($_POST['SearchField']) ) { $content['SearchField'] = DB_RemoveBadChars($_POST['SearchField']); } else {$content['SearchField'] = ""; } + if ( isset($_POST['NewFieldDefine']) ) { $content['FieldDefine'] = DB_RemoveBadChars($_POST['NewFieldDefine']); } else if ( isset($_POST['FieldDefine']) ) { $content['FieldDefine'] = DB_RemoveBadChars($_POST['FieldDefine']); } else { $content['FieldDefine'] = ""; } + CreateFieldAlignmentList(0); + if ( isset($_POST['FieldAlign']) && isset($content['ALIGMENTS'][$_POST['FieldAlign']]) ) { $content['FieldAlign'] = $_POST['FieldAlign']; } else {$content['FieldAlign'] = ALIGN_CENTER; } + + // number fields + if ( isset($_POST['DefaultWidth']) ) { $content['DefaultWidth'] = intval(DB_RemoveBadChars($_POST['DefaultWidth'])); } else {$content['DefaultWidth'] = 50; } +// NOT USED YET if ( isset ($_POST['Trunscate']) ) { $content['Trunscate'] = intval(DB_RemoveBadChars($_POST['Trunscate'])); } else {$content['Trunscate'] = 30; } + CreateFieldTypesList(0); + if ( isset($_POST['NewFieldType']) && isset($content['FILTERTYPES'][$_POST['NewFieldType']]) ) { $content['FieldType'] = intval($_POST['NewFieldType']); } else if ( isset($_POST['FieldType']) && isset($content['FILTERTYPES'][$_POST['FieldType']]) ) { $content['FieldType'] = intval($_POST['FieldType']); } else { $content['FieldType'] = FILTER_TYPE_STRING; } + + // Checkbox fields + if ( isset($_POST['SearchOnline']) ) { $content['SearchOnline'] = true; } else {$content['SearchOnline'] = false; } +// NOT USED YET if ( isset ($_POST['Sortable']) ) { $content['Sortable'] = true; } else {$content['Sortable'] = false; } // --- Check mandotary values - if ( $content['DisplayName'] == "" ) + if ( $content['FieldID'] == "" ) { $content['ISERROR'] = true; - $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_DISPLAYNAMEEMPTY']; + $content['ERROR_MSG'] = $content['LN_FIELDS_ERROR_FIELDIDEMPTY']; } - else if ( $content['SearchQuery'] == "" ) + else if ( $content['FieldCaption'] == "" ) { $content['ISERROR'] = true; - $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_SEARCHQUERYEMPTY']; + $content['ERROR_MSG'] = $content['LN_FIELDS_ERROR_FIELDCAPTIONEMPTY']; + } + else if ( $content['SearchField'] == "" ) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = $content['LN_FIELDS_ERROR_SEARCHFIELDEMPTY']; + } + else if ( $content['FieldDefine'] == "" ) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = $content['LN_FIELDS_ERROR_FIELDDEFINEEMPTY']; } // --- if ( !isset($content['ISERROR']) ) { - // Everything was alright, so we go to the next step! - if ( $_POST['op'] == "addnewsearch" ) + // Everything was alright, go and check if the entry exists! + $result = DB_Query("SELECT FieldID FROM " . DB_FIELDS . " WHERE FieldID = '" . $content['FieldID'] . "'"); + $myrow = DB_GetSingleRow($result, true); + if ( !isset($myrow['FieldID']) ) { - // Add custom search now! - $sqlquery = "INSERT INTO " . DB_SEARCHES . " (DisplayName, SearchQuery, userid, groupid) - VALUES ('" . $content['DisplayName'] . "', - '" . $content['SearchQuery'] . "', - " . $content['userid'] . ", - " . $content['groupid'] . " - )"; - $result = DB_Query($sqlquery); - DB_FreeQuery($result); - - // Do the final redirect - RedirectResult( GetAndReplaceLangStr( $content['LN_SEARCH_HASBEENADDED'], $content['DisplayName'] ) , "searches.php" ); - } - else if ( $_POST['op'] == "editsearch" ) - { - $result = DB_Query("SELECT ID FROM " . DB_SEARCHES . " WHERE ID = " . $content['SEARCHID']); - $myrow = DB_GetSingleRow($result, true); - if ( !isset($myrow['ID']) ) - { +/* + if ( $_POST['op'] == "editfield" ) + { + // Show error in this case $content['ISERROR'] = true; - $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_IDNOTFOUND'], $content['SEARCHID'] ); + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_FIELDS_ERROR_IDNOTFOUND'], $content['FieldID'] ); } else +*/ { - // Edit the Search Entry now! - $result = DB_Query("UPDATE " . DB_SEARCHES . " SET - DisplayName = '" . $content['DisplayName'] . "', - SearchQuery = '" . $content['SearchQuery'] . "', - userid = " . $content['userid'] . ", - groupid = " . $content['groupid'] . " - WHERE ID = " . $content['SEARCHID']); + // Add custom Field now! + $sqlquery = "INSERT INTO " . DB_FIELDS . " (FieldID, FieldCaption, FieldDefine, SearchField, FieldAlign, DefaultWidth, FieldType, SearchOnline) + VALUES ( + '" . $content['FieldID'] . "', + '" . $content['FieldCaption'] . "', + '" . $content['FieldDefine'] . "', + '" . $content['SearchField'] . "', + '" . $content['FieldAlign'] . "', + " . $content['DefaultWidth'] . ", + " . $content['FieldType'] . ", + " . $content['SearchOnline'] . " + )"; + $result = DB_Query($sqlquery); DB_FreeQuery($result); - - // Done redirect! - RedirectResult( GetAndReplaceLangStr( $content['LN_SEARCH_HASBEENEDIT'], $content['DisplayName']) , "searches.php" ); + + // Do the final redirect + RedirectResult( GetAndReplaceLangStr( $content['LN_FIELDS_HASBEENADDED'], $content['FieldCaption'] ) , "fields.php" ); } } +/* if ( $_POST['op'] == "addnewfield" ) + { + } + else if ( $_POST['op'] == "editfield" ) +*/ + { + + // Edit the Search Entry now! + $result = DB_Query("UPDATE " . DB_FIELDS . " SET + FieldCaption = '" . $content['FieldCaption'] . "', + FieldDefine = '" . $content['FieldDefine'] . "', + SearchField = '" . $content['SearchField'] . "', + FieldAlign = '" . $content['FieldAlign'] . "', + DefaultWidth = " . $content['DefaultWidth'] . ", + FieldType = " . $content['FieldType'] . ", + SearchOnline = " . $content['SearchOnline'] . " + WHERE FieldID = '" . $content['FieldID'] . "'"); + DB_FreeQuery($result); + + // Done redirect! + RedirectResult( GetAndReplaceLangStr( $content['LN_FIELDS_HASBEENEDIT'], $content['FieldCaption']) , "fields.php" ); + } } } @@ -260,17 +294,16 @@ if ( !isset($_POST['op']) && !isset($_GET['op']) ) foreach ($content['FIELDS'] as &$myField ) { // Allow Delete Operation - if ( $myField['FieldFromDB'] ) - { - $myField['AllowDelete'] = true; - $myField['DELETEIMG'] = $content['MENU_DELETE']; - } - - if ( !$myField['IsInternalField'] && $myField['FieldFromDB'] ) + if ( $myField['IsInternalField'] && $myField['FieldFromDB'] ) { $myField['AllowDelete'] = true; $myField['DELETEIMG'] = $content['MENU_DELETE_FROMDB']; } + else if ( $myField['FieldFromDB'] ) + { + $myField['AllowDelete'] = true; + $myField['DELETEIMG'] = $content['MENU_DELETE']; + } // --- Set CSS Class if ( $i % 2 == 0 ) diff --git a/src/include/constants_logstream.php b/src/include/constants_logstream.php index 9585354..9b811b7 100644 --- a/src/include/constants_logstream.php +++ b/src/include/constants_logstream.php @@ -90,6 +90,7 @@ $fields[SYSLOG_UID]['FieldType'] = FILTER_TYPE_NUMBER; $fields[SYSLOG_UID]['Sortable'] = false; $fields[SYSLOG_UID]['DefaultWidth'] = "50"; $fields[SYSLOG_UID]['FieldAlign'] = "center"; +$fields[SYSLOG_UID]['SearchOnline'] = false; $fields[SYSLOG_DATE]['FieldID'] = SYSLOG_DATE; $fields[SYSLOG_DATE]['FieldDefine'] = 'SYSLOG_DATE'; $fields[SYSLOG_DATE]['FieldCaption'] = 'Date'; @@ -97,6 +98,7 @@ $fields[SYSLOG_DATE]['FieldType'] = FILTER_TYPE_DATE; $fields[SYSLOG_DATE]['Sortable'] = true; $fields[SYSLOG_DATE]['DefaultWidth'] = "115"; $fields[SYSLOG_DATE]['FieldAlign'] = "center"; +$fields[SYSLOG_DATE]['SearchOnline'] = false; $fields[SYSLOG_HOST]['FieldID'] = SYSLOG_HOST; $fields[SYSLOG_HOST]['FieldDefine'] = 'SYSLOG_HOST'; $fields[SYSLOG_HOST]['FieldCaption'] = 'Host'; @@ -105,6 +107,7 @@ $fields[SYSLOG_HOST]['Sortable'] = true; $fields[SYSLOG_HOST]['DefaultWidth'] = "80"; $fields[SYSLOG_HOST]['FieldAlign'] = "left"; $fields[SYSLOG_HOST]['SearchField'] = "source"; +$fields[SYSLOG_HOST]['SearchOnline'] = false; $fields[SYSLOG_MESSAGETYPE]['FieldID'] = SYSLOG_MESSAGETYPE; $fields[SYSLOG_MESSAGETYPE]['FieldDefine'] = 'SYSLOG_MESSAGETYPE'; $fields[SYSLOG_MESSAGETYPE]['FieldCaption'] = 'Messagetype'; @@ -113,6 +116,7 @@ $fields[SYSLOG_MESSAGETYPE]['Sortable'] = true; $fields[SYSLOG_MESSAGETYPE]['DefaultWidth'] = "90"; $fields[SYSLOG_MESSAGETYPE]['FieldAlign'] = "center"; $fields[SYSLOG_MESSAGETYPE]['SearchField'] = "messagetype"; +$fields[SYSLOG_MESSAGETYPE]['SearchOnline'] = false; // Syslog specific $fields[SYSLOG_FACILITY]['FieldID'] = SYSLOG_FACILITY; @@ -123,6 +127,7 @@ $fields[SYSLOG_FACILITY]['Sortable'] = true; $fields[SYSLOG_FACILITY]['DefaultWidth'] = "50"; $fields[SYSLOG_FACILITY]['FieldAlign'] = "center"; $fields[SYSLOG_FACILITY]['SearchField'] = "facility"; +$fields[SYSLOG_FACILITY]['SearchOnline'] = true; $fields[SYSLOG_SEVERITY]['FieldID'] = SYSLOG_SEVERITY; $fields[SYSLOG_SEVERITY]['FieldDefine'] = 'SYSLOG_SEVERITY'; $fields[SYSLOG_SEVERITY]['FieldCaption'] = 'Severity'; @@ -131,6 +136,7 @@ $fields[SYSLOG_SEVERITY]['Sortable'] = true; $fields[SYSLOG_SEVERITY]['DefaultWidth'] = "50"; $fields[SYSLOG_SEVERITY]['FieldAlign'] = "center"; $fields[SYSLOG_SEVERITY]['SearchField'] = "severity"; +$fields[SYSLOG_SEVERITY]['SearchOnline'] = true; $fields[SYSLOG_SYSLOGTAG]['FieldID'] = SYSLOG_SYSLOGTAG; $fields[SYSLOG_SYSLOGTAG]['FieldDefine'] = 'SYSLOG_SYSLOGTAG'; $fields[SYSLOG_SYSLOGTAG]['FieldCaption'] = 'Syslogtag'; @@ -139,6 +145,7 @@ $fields[SYSLOG_SYSLOGTAG]['Sortable'] = true; $fields[SYSLOG_SYSLOGTAG]['DefaultWidth'] = "85"; $fields[SYSLOG_SYSLOGTAG]['FieldAlign'] = "left"; $fields[SYSLOG_SYSLOGTAG]['SearchField'] = "syslogtag"; +$fields[SYSLOG_SYSLOGTAG]['SearchOnline'] = true; $fields[SYSLOG_PROCESSID]['FieldID'] = SYSLOG_PROCESSID; $fields[SYSLOG_PROCESSID]['FieldDefine'] = 'SYSLOG_PROCESSID'; $fields[SYSLOG_PROCESSID]['FieldCaption'] = 'ProcessID'; @@ -147,6 +154,7 @@ $fields[SYSLOG_PROCESSID]['Sortable'] = true; $fields[SYSLOG_PROCESSID]['DefaultWidth'] = "65"; $fields[SYSLOG_PROCESSID]['FieldAlign'] = "center"; $fields[SYSLOG_PROCESSID]['SearchField'] = "processid"; +$fields[SYSLOG_PROCESSID]['SearchOnline'] = false; // EventLog specific $fields[SYSLOG_EVENT_ID]['FieldID'] = SYSLOG_EVENT_ID; @@ -157,6 +165,7 @@ $fields[SYSLOG_EVENT_ID]['Sortable'] = true; $fields[SYSLOG_EVENT_ID]['DefaultWidth'] = "65"; $fields[SYSLOG_EVENT_ID]['FieldAlign'] = "center"; $fields[SYSLOG_EVENT_ID]['SearchField'] = "eventid"; +$fields[SYSLOG_EVENT_ID]['SearchOnline'] = true; $fields[SYSLOG_EVENT_LOGTYPE]['FieldID'] = SYSLOG_EVENT_LOGTYPE; $fields[SYSLOG_EVENT_LOGTYPE]['FieldDefine'] = 'SYSLOG_EVENT_LOGTYPE'; $fields[SYSLOG_EVENT_LOGTYPE]['FieldCaption'] = 'Eventlog Type'; @@ -165,6 +174,7 @@ $fields[SYSLOG_EVENT_LOGTYPE]['Sortable'] = true; $fields[SYSLOG_EVENT_LOGTYPE]['DefaultWidth'] = "100"; $fields[SYSLOG_EVENT_LOGTYPE]['FieldAlign'] = "left"; $fields[SYSLOG_EVENT_LOGTYPE]['SearchField'] = "eventlogtype"; +$fields[SYSLOG_EVENT_LOGTYPE]['SearchOnline'] = true; $fields[SYSLOG_EVENT_SOURCE]['FieldID'] = SYSLOG_EVENT_SOURCE; $fields[SYSLOG_EVENT_SOURCE]['FieldDefine'] = 'SYSLOG_EVENT_SOURCE'; $fields[SYSLOG_EVENT_SOURCE]['FieldCaption'] = 'Event Source'; @@ -173,6 +183,7 @@ $fields[SYSLOG_EVENT_SOURCE]['Sortable'] = true; $fields[SYSLOG_EVENT_SOURCE]['DefaultWidth'] = "100"; $fields[SYSLOG_EVENT_SOURCE]['FieldAlign'] = "left"; $fields[SYSLOG_EVENT_SOURCE]['SearchField'] = "eventlogsource"; +$fields[SYSLOG_EVENT_SOURCE]['SearchOnline'] = true; $fields[SYSLOG_EVENT_CATEGORY]['FieldID'] = SYSLOG_EVENT_CATEGORY; $fields[SYSLOG_EVENT_CATEGORY]['FieldDefine'] = 'SYSLOG_EVENT_CATEGORY'; $fields[SYSLOG_EVENT_CATEGORY]['FieldCaption'] = 'Event Category'; @@ -181,6 +192,7 @@ $fields[SYSLOG_EVENT_CATEGORY]['Sortable'] = true; $fields[SYSLOG_EVENT_CATEGORY]['DefaultWidth'] = "50"; $fields[SYSLOG_EVENT_CATEGORY]['FieldAlign'] = "center"; $fields[SYSLOG_EVENT_CATEGORY]['SearchField'] = "eventcategory"; +$fields[SYSLOG_EVENT_CATEGORY]['SearchOnline'] = false; $fields[SYSLOG_EVENT_USER]['FieldID'] = SYSLOG_EVENT_USER; $fields[SYSLOG_EVENT_USER]['FieldDefine'] = 'SYSLOG_EVENT_USER'; $fields[SYSLOG_EVENT_USER]['FieldCaption'] = 'Event User'; @@ -189,6 +201,7 @@ $fields[SYSLOG_EVENT_USER]['Sortable'] = true; $fields[SYSLOG_EVENT_USER]['DefaultWidth'] = "85"; $fields[SYSLOG_EVENT_USER]['FieldAlign'] = "left"; $fields[SYSLOG_EVENT_USER]['SearchField'] = "eventuser"; +$fields[SYSLOG_EVENT_USER]['SearchOnline'] = false; // Weblogfile specific $fields[SYSLOG_WEBLOG_USER]['FieldID'] = SYSLOG_WEBLOG_USER; @@ -199,6 +212,7 @@ $fields[SYSLOG_WEBLOG_USER]['Sortable'] = false; $fields[SYSLOG_WEBLOG_USER]['DefaultWidth'] = "75"; $fields[SYSLOG_WEBLOG_USER]['FieldAlign'] = "left"; $fields[SYSLOG_WEBLOG_USER]['SearchField'] = SYSLOG_WEBLOG_USER; +$fields[SYSLOG_WEBLOG_USER]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_METHOD]['FieldID'] = SYSLOG_WEBLOG_METHOD; $fields[SYSLOG_WEBLOG_METHOD]['FieldDefine'] = 'SYSLOG_WEBLOG_METHOD'; $fields[SYSLOG_WEBLOG_METHOD]['FieldCaption'] = 'Method'; @@ -207,6 +221,7 @@ $fields[SYSLOG_WEBLOG_METHOD]['Sortable'] = false; $fields[SYSLOG_WEBLOG_METHOD]['DefaultWidth'] = "50"; $fields[SYSLOG_WEBLOG_METHOD]['FieldAlign'] = "center"; $fields[SYSLOG_WEBLOG_METHOD]['SearchField'] = SYSLOG_WEBLOG_METHOD; +$fields[SYSLOG_WEBLOG_METHOD]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_URL]['FieldID'] = SYSLOG_WEBLOG_URL; $fields[SYSLOG_WEBLOG_URL]['FieldDefine'] = 'SYSLOG_WEBLOG_URL'; $fields[SYSLOG_WEBLOG_URL]['FieldCaption'] = 'URL'; @@ -215,6 +230,7 @@ $fields[SYSLOG_WEBLOG_URL]['Sortable'] = false; $fields[SYSLOG_WEBLOG_URL]['DefaultWidth'] = "200"; $fields[SYSLOG_WEBLOG_URL]['FieldAlign'] = "left"; $fields[SYSLOG_WEBLOG_URL]['SearchField'] = SYSLOG_WEBLOG_URL; +$fields[SYSLOG_WEBLOG_URL]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_QUERYSTRING]['FieldID'] = SYSLOG_WEBLOG_QUERYSTRING; $fields[SYSLOG_WEBLOG_QUERYSTRING]['FieldDefine'] = 'SYSLOG_WEBLOG_QUERYSTRING'; $fields[SYSLOG_WEBLOG_QUERYSTRING]['FieldCaption'] = 'Querystring'; @@ -223,6 +239,7 @@ $fields[SYSLOG_WEBLOG_QUERYSTRING]['Sortable'] = false; $fields[SYSLOG_WEBLOG_QUERYSTRING]['DefaultWidth'] = "200"; $fields[SYSLOG_WEBLOG_QUERYSTRING]['FieldAlign'] = "left"; $fields[SYSLOG_WEBLOG_QUERYSTRING]['SearchField'] = SYSLOG_WEBLOG_QUERYSTRING; +$fields[SYSLOG_WEBLOG_QUERYSTRING]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_PVER]['FieldID'] = SYSLOG_WEBLOG_PVER; $fields[SYSLOG_WEBLOG_PVER]['FieldDefine'] = 'SYSLOG_WEBLOG_PVER'; $fields[SYSLOG_WEBLOG_PVER]['FieldCaption'] = 'Version'; @@ -231,6 +248,7 @@ $fields[SYSLOG_WEBLOG_PVER]['Sortable'] = false; $fields[SYSLOG_WEBLOG_PVER]['DefaultWidth'] = "50"; $fields[SYSLOG_WEBLOG_PVER]['FieldAlign'] = "center"; $fields[SYSLOG_WEBLOG_PVER]['SearchField'] = SYSLOG_WEBLOG_PVER; +$fields[SYSLOG_WEBLOG_PVER]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_STATUS]['FieldID'] = SYSLOG_WEBLOG_STATUS; $fields[SYSLOG_WEBLOG_STATUS]['FieldDefine'] = 'SYSLOG_WEBLOG_STATUS'; $fields[SYSLOG_WEBLOG_STATUS]['FieldCaption'] = 'Status'; @@ -239,6 +257,7 @@ $fields[SYSLOG_WEBLOG_STATUS]['Sortable'] = false; $fields[SYSLOG_WEBLOG_STATUS]['DefaultWidth'] = "50"; $fields[SYSLOG_WEBLOG_STATUS]['FieldAlign'] = "center"; $fields[SYSLOG_WEBLOG_STATUS]['SearchField'] = SYSLOG_WEBLOG_STATUS; +$fields[SYSLOG_WEBLOG_STATUS]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_BYTESSEND]['FieldID'] = SYSLOG_WEBLOG_BYTESSEND; $fields[SYSLOG_WEBLOG_BYTESSEND]['FieldDefine'] = 'SYSLOG_WEBLOG_BYTESSEND'; $fields[SYSLOG_WEBLOG_BYTESSEND]['FieldCaption'] = 'Bytes Send'; @@ -247,6 +266,7 @@ $fields[SYSLOG_WEBLOG_BYTESSEND]['Sortable'] = false; $fields[SYSLOG_WEBLOG_BYTESSEND]['DefaultWidth'] = "75"; $fields[SYSLOG_WEBLOG_BYTESSEND]['FieldAlign'] = "left"; $fields[SYSLOG_WEBLOG_BYTESSEND]['SearchField'] = SYSLOG_WEBLOG_BYTESSEND; +$fields[SYSLOG_WEBLOG_BYTESSEND]['SearchOnline'] = false; $fields[SYSLOG_WEBLOG_REFERER]['FieldID'] = SYSLOG_WEBLOG_REFERER; $fields[SYSLOG_WEBLOG_REFERER]['FieldDefine'] = 'SYSLOG_WEBLOG_REFERER'; $fields[SYSLOG_WEBLOG_REFERER]['FieldCaption'] = 'Referer'; @@ -255,6 +275,7 @@ $fields[SYSLOG_WEBLOG_REFERER]['Sortable'] = false; $fields[SYSLOG_WEBLOG_REFERER]['DefaultWidth'] = "200"; $fields[SYSLOG_WEBLOG_REFERER]['FieldAlign'] = "left"; $fields[SYSLOG_WEBLOG_REFERER]['SearchField'] = SYSLOG_WEBLOG_REFERER; +$fields[SYSLOG_WEBLOG_REFERER]['SearchOnline'] = true; $fields[SYSLOG_WEBLOG_USERAGENT]['FieldID'] = SYSLOG_WEBLOG_USERAGENT; $fields[SYSLOG_WEBLOG_USERAGENT]['FieldDefine'] = 'SYSLOG_WEBLOG_USERAGENT'; $fields[SYSLOG_WEBLOG_USERAGENT]['FieldCaption'] = 'User Agent'; @@ -263,6 +284,7 @@ $fields[SYSLOG_WEBLOG_USERAGENT]['Sortable'] = false; $fields[SYSLOG_WEBLOG_USERAGENT]['DefaultWidth'] = "100"; $fields[SYSLOG_WEBLOG_USERAGENT]['FieldAlign'] = "left"; $fields[SYSLOG_WEBLOG_USERAGENT]['SearchField'] = SYSLOG_WEBLOG_USERAGENT; +$fields[SYSLOG_WEBLOG_USERAGENT]['SearchOnline'] = true; // Message is the last element, this order is important for the Detail page for now! $fields[SYSLOG_MESSAGE]['FieldID'] = SYSLOG_MESSAGE; @@ -272,6 +294,8 @@ $fields[SYSLOG_MESSAGE]['FieldType'] = FILTER_TYPE_STRING; $fields[SYSLOG_MESSAGE]['Sortable'] = false; $fields[SYSLOG_MESSAGE]['DefaultWidth'] = "100%"; $fields[SYSLOG_MESSAGE]['FieldAlign'] = "left"; +$fields[SYSLOG_MESSAGE]['SearchField'] = ""; +$fields[SYSLOG_MESSAGE]['SearchOnline'] = false; // --- // --- Define default Database field mappings! diff --git a/src/include/functions_config.php b/src/include/functions_config.php index 0a4048c..0bdc1ef 100644 --- a/src/include/functions_config.php +++ b/src/include/functions_config.php @@ -406,11 +406,13 @@ function LoadFieldsFromDatabase() // --- Create SQL Query $sqlquery = " SELECT " . DB_FIELDS . ".FieldID, " . + DB_FIELDS . ".FieldDefine, " . DB_FIELDS . ".FieldCaption, " . DB_FIELDS . ".FieldType, " . DB_FIELDS . ".FieldAlign, " . DB_FIELDS . ".SearchField, " . DB_FIELDS . ".DefaultWidth, " . + DB_FIELDS . ".SearchOnline, " . DB_FIELDS . ".Trunscate, " . DB_FIELDS . ".Sortable " . " FROM " . DB_FIELDS . @@ -435,7 +437,7 @@ function LoadFieldsFromDatabase() // Set define needed in certain code places! if ( !defined($fieldDefine) ) { - defined($fieldDefine, $fieldId); + define($fieldDefine, $fieldId); $fields[$fieldId]['IsInternalField'] = false; } @@ -447,6 +449,7 @@ function LoadFieldsFromDatabase() $fields[$fieldId]['FieldAlign'] = $myField['FieldAlign']; $fields[$fieldId]['SearchField'] = $myField['SearchField']; $fields[$fieldId]['DefaultWidth'] = $myField['DefaultWidth']; + $fields[$fieldId]['SearchOnline'] = $myField['SearchOnline']; $fields[$fieldId]['Trunscate'] = $myField['Trunscate']; $fields[$fieldId]['Sortable'] = $myField['Sortable']; @@ -454,7 +457,7 @@ function LoadFieldsFromDatabase() $fields[$fieldId]['FieldFromDB'] = true; } - print_r ( $fields ); +// print_r ( $fields ); } } diff --git a/src/index.php b/src/index.php index c9d6f71..362ed33 100644 --- a/src/index.php +++ b/src/index.php @@ -384,7 +384,7 @@ if ( isset($content['Sources'][$currentSourceID]) ) } // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_FACILITY, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_FACILITY); } else if ( $mycolkey == SYSLOG_SEVERITY ) { @@ -403,7 +403,7 @@ if ( isset($content['Sources'][$currentSourceID]) ) } // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_SEVERITY, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_SEVERITY); } else if ( $mycolkey == SYSLOG_MESSAGETYPE ) { @@ -422,29 +422,34 @@ if ( isset($content['Sources'][$currentSourceID]) ) } // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_MESSAGETYPE, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_MESSAGETYPE); } else if ( $mycolkey == SYSLOG_PROCESSID ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_PROCESSID, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_PROCESSID); } /* Eventlog based fields */ else if ( $mycolkey == SYSLOG_EVENT_ID ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_EVENT_ID, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_EVENT_ID); } else if ( $mycolkey == SYSLOG_EVENT_CATEGORY ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_EVENT_CATEGORY, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_EVENT_CATEGORY); } // WebServer Type fields else if ( $mycolkey == SYSLOG_WEBLOG_STATUS ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_WEBLOG_STATUS, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, SYSLOG_WEBLOG_STATUS); + } + else + { + // Add context menu + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_NUMBER, $mycolkey); } } else if ( $content['fields'][$mycolkey]['FieldType'] == FILTER_TYPE_STRING ) @@ -549,66 +554,70 @@ if ( isset($content['Sources'][$currentSourceID]) ) else if ( $mycolkey == SYSLOG_SYSLOGTAG ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_SYSLOGTAG, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_SYSLOGTAG); } else if ( $mycolkey == SYSLOG_HOST ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_HOST, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_HOST); } /* Eventlog based fields */ else if ( $mycolkey == SYSLOG_EVENT_LOGTYPE ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_EVENT_LOGTYPE, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_EVENT_LOGTYPE); } else if ( $mycolkey == SYSLOG_EVENT_SOURCE ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_EVENT_SOURCE, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_EVENT_SOURCE); } else if ( $mycolkey == SYSLOG_EVENT_USER ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_EVENT_USER, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_EVENT_USER); } // WebServer Type fields else if ( $mycolkey == SYSLOG_WEBLOG_USER ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_USER, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_USER); } else if ( $mycolkey == SYSLOG_WEBLOG_METHOD ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_METHOD, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_METHOD); } else if ( $mycolkey == SYSLOG_WEBLOG_URL ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_URL, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_URL); } else if ( $mycolkey == SYSLOG_WEBLOG_QUERYSTRING ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_QUERYSTRING, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_QUERYSTRING); } else if ( $mycolkey == SYSLOG_WEBLOG_PVER ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_PVER, false); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_PVER); } else if ( $mycolkey == SYSLOG_WEBLOG_REFERER ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_REFERER, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_REFERER); } else if ( $mycolkey == SYSLOG_WEBLOG_USERAGENT ) { // Add context menu - AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_USERAGENT, true); + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, SYSLOG_WEBLOG_USERAGENT); + } + else + { + // Add context menu + AddOnClickMenu( $content['syslogmessages'][$counter]['values'][$mycolkey], FILTER_TYPE_STRING, $mycolkey); } - } } } @@ -777,7 +786,7 @@ function PrepareStringForSearch($myString) return str_replace($searchArray, $replaceArray, $myString); } -function AddOnClickMenu(&$fieldGridItem, $fieldType, $FieldID, $searchOnline = false) +function AddOnClickMenu(&$fieldGridItem, $fieldType, $FieldID) { global $content, $fields, $myStrCharLimit; @@ -838,7 +847,7 @@ function AddOnClickMenu(&$fieldGridItem, $fieldType, $FieldID, $searchOnline = f ); // Add Online Search Button - if ( $searchOnline ) + if ( isset($fields[$FieldID]['SearchOnline']) && $fields[$FieldID]['SearchOnline'] ) { $fieldGridItem['buttons'][] = array( 'ButtonUrl' => 'http://kb.monitorware.com/kbsearch.php?sa=Search&origin=phplogcon&oid=' . $FieldID . '&q=' . $szEncodedFieldValue, diff --git a/src/lang/en/admin.php b/src/lang/en/admin.php index 462712a..c0dbfae 100644 --- a/src/lang/en/admin.php +++ b/src/lang/en/admin.php @@ -274,11 +274,19 @@ $content['LN_FIELDS_ADDEDIT'] = "Add / Edit a Field"; $content['LN_FIELDS_TYPE'] = "Field Type"; $content['LN_FIELDS_ALIGN'] = "Listview Alignment"; $content['LN_FIELDS_SEARCHONLINE'] = "Enable online search"; -$content['LN_FIELDS_DEFAULTWIDTH'] = "Rowwidth in Listview"; +$content['LN_FIELDS_DEFAULTWIDTH'] = "Row width in Listview"; $content['LN_FIELDS_ERROR_IDNOTFOUND'] = "The Field-ID could not be found in the database, or in the default constants."; $content['LN_FIELDS_ERROR_INVALIDID'] = "The Field with ID '%1' is not a valid Field."; -$content['LN_FIELDS_SEARCHFIELD'] = "Used filtername"; -$content['LN_FIELDS_'] = ""; +$content['LN_FIELDS_SEARCHFIELD'] = "Name of Searchfilter"; +$content['LN_FIELDS_WARNDELETESEARCH'] = "Are you sure that you want to delete the Field '%1'? This cannot be undone!"; +$content['LN_FIELDS_ERROR_DELSEARCH'] = "The Field-ID could not be found in the database."; +$content['LN_FIELDS_ERROR_HASBEENDEL'] = "The Field '%1' has been successfully deleted!"; +$content['LN_FIELDS_ERROR_FIELDCAPTIONEMPTY'] = "The field caption was empty. "; +$content['LN_FIELDS_ERROR_FIELDIDEMPTY'] = "The field id was empty. "; +$content['LN_FIELDS_ERROR_SEARCHFIELDEMPTY'] = "The searchfilter was empty. "; +$content['LN_FIELDS_ERROR_FIELDDEFINEEMPTY'] = "The internal FieldID was empty. "; +$content['LN_FIELDS_HASBEENEDIT'] = "The configuration for the field '%1' has been successfully edited."; +$content['LN_FIELDS_HASBEENADDED'] = "The configuration for the field '%1' has been successfully added."; $content['LN_FIELDS_'] = ""; $content['LN_FIELDS_'] = ""; $content['LN_FIELDS_'] = ""; diff --git a/src/templates/admin/admin_fields.html b/src/templates/admin/admin_fields.html new file mode 100644 index 0000000..1c7db79 --- /dev/null +++ b/src/templates/admin/admin_fields.html @@ -0,0 +1,127 @@ + + + +

+
+
+
{LN_GEN_ERRORDETAILS}
+

{ERROR_MSG}

+
+

+ {LN_GEN_ERRORRETURNPREV} +
+

+ + + + + + + + + +
{LN_FIELDS_CENTER}
+

+ + + + + + + + + + + + + + + + + + + + +
{LN_FIELDS_NAME}{LN_FIELDS_ID}{LN_FIELDS_DEFINE}{LN_GEN_ACTIONS}
{FieldCaption}{FieldID}{FieldDefine} +   + + +   + + +   + +
 {LN_FIELDS_ADD}
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
{LN_FIELDS_ADDEDIT}
{LN_FIELDS_ID}
{LN_FIELDS_DEFINE}
{LN_FIELDS_NAME}
{LN_FIELDS_SEARCHFIELD}
{LN_FIELDS_SEARCHONLINE}
{LN_FIELDS_TYPE} + +
{LN_FIELDS_ALIGN} + +
{LN_FIELDS_DEFAULTWIDTH}
+ + + + + + +
+
+ + +

+ +
+ + \ No newline at end of file