diff --git a/src/include/constants_logstream.php b/src/include/constants_logstream.php
index f4056bd..79eb224 100644
--- a/src/include/constants_logstream.php
+++ b/src/include/constants_logstream.php
@@ -75,6 +75,8 @@ define('DB_OCI', 4);
define('DB_DB2', 5);
define('DB_FIREBIRD', 6);
define('DB_INFORMIX', 7);
+define('DB_SQLITE', 8);
+
// --- Predefine fields array!
$fields[SYSLOG_UID]['FieldID'] = SYSLOG_UID;
diff --git a/src/include/functions_common.php b/src/include/functions_common.php
index 3e5ee92..6bf22e1 100644
--- a/src/include/functions_common.php
+++ b/src/include/functions_common.php
@@ -236,10 +236,15 @@ function CreateSourceTypesList( $selectedSource )
$content['SOURCETYPES'][SOURCE_DISK]['DisplayName'] = $content['LN_GEN_SOURCE_DISK'];
if ( $selectedSource == $content['SOURCETYPES'][SOURCE_DISK]['type'] ) { $content['SOURCETYPES'][SOURCE_DISK]['selected'] = "selected"; } else { $content['SOURCETYPES'][SOURCE_DISK]['selected'] = ""; }
- // SOURCE_DB
+ // SOURCE_DB ( MYSQL NATIVE )
$content['SOURCETYPES'][SOURCE_DB]['type'] = SOURCE_DB;
$content['SOURCETYPES'][SOURCE_DB]['DisplayName'] = $content['LN_GEN_SOURCE_DB'];
- if ( $selectedSource == $content['SOURCETYPES'][SOURCE_DB]['type'] ) { $content['SOURCETYPES'][SOURCE_DB]['selected'] = "selected"; } else { $content['SOURCETYPES'][SOURCE_DISK]['selected'] = ""; }
+ if ( $selectedSource == $content['SOURCETYPES'][SOURCE_DB]['type'] ) { $content['SOURCETYPES'][SOURCE_DB]['selected'] = "selected"; } else { $content['SOURCETYPES'][SOURCE_DB]['selected'] = ""; }
+
+ // SOURCE_PDO ( PDO DB Wrapper)
+ $content['SOURCETYPES'][SOURCE_PDO]['type'] = SOURCE_PDO;
+ $content['SOURCETYPES'][SOURCE_PDO]['DisplayName'] = $content['LN_GEN_SOURCE_PDO'];
+ if ( $selectedSource == $content['SOURCETYPES'][SOURCE_PDO]['type'] ) { $content['SOURCETYPES'][SOURCE_PDO]['selected'] = "selected"; } else { $content['SOURCETYPES'][SOURCE_PDO]['selected'] = ""; }
}
function CreateDBTypesList( $selectedDBType )
@@ -248,21 +253,57 @@ function CreateDBTypesList( $selectedDBType )
// DB_MYSQL
$content['DBTYPES'][DB_MYSQL]['type'] = DB_MYSQL;
- $content['DBTYPES'][DB_MYSQL]['DisplayName'] = "Mysql";
+ $content['DBTYPES'][DB_MYSQL]['typeastext'] = "DB_MYSQL";
+ $content['DBTYPES'][DB_MYSQL]['DisplayName'] = $content['LN_GEN_DB_MYSQL'];
if ( $selectedDBType == $content['DBTYPES'][DB_MYSQL]['type'] ) { $content['DBTYPES'][DB_MYSQL]['selected'] = "selected"; } else { $content['DBTYPES'][DB_MYSQL]['selected'] = ""; }
-/* LATER ...
// DB_MSSQL
$content['DBTYPES'][DB_MSSQL]['type'] = DB_MSSQL;
- $content['DBTYPES'][DB_MSSQL]['DisplayName'] = "Microsoft SQL Server";
+ $content['DBTYPES'][DB_MSSQL]['typeastext'] = "DB_MSSQL";
+ $content['DBTYPES'][DB_MSSQL]['DisplayName'] = $content['LN_GEN_DB_MSSQL'];
if ( $selectedDBType == $content['DBTYPES'][DB_MSSQL]['type'] ) { $content['DBTYPES'][DB_MSSQL]['selected'] = "selected"; } else { $content['DBTYPES'][DB_MSSQL]['selected'] = ""; }
// DB_ODBC
- $content['DBTYPES'][DB_ODBC]['type'] = DB_MSSQL;
- $content['DBTYPES'][DB_ODBC]['DisplayName'] = "ODBC Database Source";
- if ( $selectedDBType == $content['DBTYPES'][DB_ODBC]['type'] ) { $content['DBTYPES'][DB_ODBC]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_MSSQL]['selected'] = ""; }
-*/
+ $content['DBTYPES'][DB_ODBC]['type'] = DB_ODBC;
+ $content['DBTYPES'][DB_ODBC]['typeastext'] = "DB_ODBC";
+ $content['DBTYPES'][DB_ODBC]['DisplayName'] = $content['LN_GEN_DB_ODBC'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_ODBC]['type'] ) { $content['DBTYPES'][DB_ODBC]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_ODBC]['selected'] = ""; }
+ // DB_PGSQL
+ $content['DBTYPES'][DB_PGSQL]['type'] = DB_PGSQL;
+ $content['DBTYPES'][DB_PGSQL]['typeastext'] = "DB_PGSQL";
+ $content['DBTYPES'][DB_PGSQL]['DisplayName'] = $content['LN_GEN_DB_PGSQL'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_PGSQL]['type'] ) { $content['DBTYPES'][DB_PGSQL]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_PGSQL]['selected'] = ""; }
+
+ // DB_OCI
+ $content['DBTYPES'][DB_OCI]['type'] = DB_OCI;
+ $content['DBTYPES'][DB_OCI]['typeastext'] = "DB_OCI";
+ $content['DBTYPES'][DB_OCI]['DisplayName'] = $content['LN_GEN_DB_OCI'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_OCI]['type'] ) { $content['DBTYPES'][DB_OCI]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_OCI]['selected'] = ""; }
+
+ // DB_DB2
+ $content['DBTYPES'][DB_DB2]['type'] = DB_DB2;
+ $content['DBTYPES'][DB_DB2]['typeastext'] = "DB_DB2";
+ $content['DBTYPES'][DB_DB2]['DisplayName'] = $content['LN_GEN_DB_DB2'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_DB2]['type'] ) { $content['DBTYPES'][DB_DB2]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_DB2]['selected'] = ""; }
+
+ // DB_FIREBIRD
+ $content['DBTYPES'][DB_FIREBIRD]['type'] = DB_FIREBIRD;
+ $content['DBTYPES'][DB_FIREBIRD]['typeastext'] = "DB_FIREBIRD";
+ $content['DBTYPES'][DB_FIREBIRD]['DisplayName'] = $content['LN_GEN_DB_FIREBIRD'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_FIREBIRD]['type'] ) { $content['DBTYPES'][DB_FIREBIRD]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_FIREBIRD]['selected'] = ""; }
+
+ // DB_INFORMIX
+ $content['DBTYPES'][DB_INFORMIX]['type'] = DB_INFORMIX;
+ $content['DBTYPES'][DB_INFORMIX]['typeastext'] = "DB_INFORMIX";
+ $content['DBTYPES'][DB_INFORMIX]['DisplayName'] = $content['LN_GEN_DB_INFORMIX'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_INFORMIX]['type'] ) { $content['DBTYPES'][DB_INFORMIX]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_INFORMIX]['selected'] = ""; }
+
+ // DB_SQLITE
+ $content['DBTYPES'][DB_SQLITE]['type'] = DB_SQLITE;
+ $content['DBTYPES'][DB_SQLITE]['typeastext'] = "DB_SQLITE";
+ $content['DBTYPES'][DB_SQLITE]['DisplayName'] = $content['LN_GEN_DB_SQLITE'];
+ if ( $selectedDBType == $content['DBTYPES'][DB_SQLITE]['type'] ) { $content['DBTYPES'][DB_SQLITE]['selected'] = "selected"; } else { $content['DB_ODBC'][DB_SQLITE]['selected'] = ""; }
}
function CreatePagesizesList()
diff --git a/src/install.php b/src/install.php
index 10f79df..d6b00e5 100644
--- a/src/install.php
+++ b/src/install.php
@@ -347,7 +347,7 @@ else if ( $content['INSTALL_STEP'] == 5 )
$totaldbdefs = str_replace( "`logcon_", "`" . $_SESSION["UserDBPref"], $totaldbdefs );
// Now split by sql command
- $mycommands = split( ";\r\n", $totaldbdefs );
+ $mycommands = split( ";\n", $totaldbdefs );
// check for different linefeed
if ( count($mycommands) <= 1 )
@@ -527,7 +527,7 @@ else if ( $content['INSTALL_STEP'] == 8 )
if ( !is_file($_SESSION['SourceDiskFile']) )
RevertOneStep( $content['INSTALL_STEP']-1, "Failed to open the syslog file " .$_SESSION['SourceDiskFile'] . "! Check if the file exists and phplogcon has sufficient rights to it
" );
}
- else if ( $_SESSION['SourceType'] == SOURCE_DB)
+ else if ( $_SESSION['SourceType'] == SOURCE_DB || $_SESSION['SourceType'] == SOURCE_PDO )
{
if ( isset($_POST['SourceDBType']) )
$_SESSION['SourceDBType'] = DB_RemoveBadChars($_POST['SourceDBType']);
@@ -594,26 +594,42 @@ else if ( $content['INSTALL_STEP'] == 8 )
}
//Add the first source!
- $firstsource = "\$CFG['DefaultSourceID'] = 'Source1';\r\n\r\n" .
- "\$CFG['Sources']['Source1']['ID'] = 'Source1';\r\n" .
- "\$CFG['Sources']['Source1']['Name'] = '" . $_SESSION['SourceName'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['SourceType'] = " . $_SESSION['SourceType'] . ";\r\n";
+ $firstsource = "\$CFG['DefaultSourceID'] = 'Source1';\n\n" .
+ "\$CFG['Sources']['Source1']['ID'] = 'Source1';\n" .
+ "\$CFG['Sources']['Source1']['Name'] = '" . $_SESSION['SourceName'] . "';\n";
if ( $_SESSION['SourceType'] == SOURCE_DISK )
{
- $firstsource .= "\$CFG['Sources']['Source1']['LogLineType'] = '" . $_SESSION['SourceLogLineType'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DiskFile'] = '" . $_SESSION['SourceDiskFile'] . "';\r\n" .
+ $firstsource .= "\$CFG['Sources']['Source1']['SourceType'] = SOURCE_DISK;\n" .
+ "\$CFG['Sources']['Source1']['LogLineType'] = '" . $_SESSION['SourceLogLineType'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DiskFile'] = '" . $_SESSION['SourceDiskFile'] . "';\n" .
"";
}
- else if ( $_SESSION['SourceType'] == SOURCE_DB )
+ else if ( $_SESSION['SourceType'] == SOURCE_DB )
{
- $firstsource .= "\$CFG['Sources']['Source1']['DBTableType'] = '" . $_SESSION['SourceDBTableType'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBType'] = '" . $_SESSION['SourceDBType'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBServer'] = '" . $_SESSION['SourceDBServer'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBName'] = '" . $_SESSION['SourceDBName'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBUser'] = '" . $_SESSION['SourceDBUser'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBPassword'] = '" . $_SESSION['SourceDBPassword'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBTableName'] = '" . $_SESSION['SourceDBTableName'] . "';\r\n" .
- "\$CFG['Sources']['Source1']['DBEnableRowCounting'] = " . $_SESSION['SourceDBEnableRowCounting'] . ";\r\n" .
+ $firstsource .= "\$CFG['Sources']['Source1']['SourceType'] = SOURCE_DB;\n" .
+ "\$CFG['Sources']['Source1']['DBTableType'] = '" . $_SESSION['SourceDBTableType'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBServer'] = '" . $_SESSION['SourceDBServer'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBName'] = '" . $_SESSION['SourceDBName'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBUser'] = '" . $_SESSION['SourceDBUser'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBPassword'] = '" . $_SESSION['SourceDBPassword'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBTableName'] = '" . $_SESSION['SourceDBTableName'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBEnableRowCounting'] = " . $_SESSION['SourceDBEnableRowCounting'] . ";\n" .
+ "";
+ }
+ else if ( $_SESSION['SourceType'] == SOURCE_PDO )
+ {
+ // Need to create the LIST first!
+ CreateDBTypesList($_SESSION['SourceDBType']);
+
+ $firstsource .= "\$CFG['Sources']['Source1']['SourceType'] = SOURCE_PDO;\n" .
+ "\$CFG['Sources']['Source1']['DBTableType'] = '" . $_SESSION['SourceDBTableType'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBType'] = " . $content['DBTYPES'][$_SESSION['SourceDBType']]['typeastext'] . ";\n" .
+ "\$CFG['Sources']['Source1']['DBServer'] = '" . $_SESSION['SourceDBServer'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBName'] = '" . $_SESSION['SourceDBName'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBUser'] = '" . $_SESSION['SourceDBUser'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBPassword'] = '" . $_SESSION['SourceDBPassword'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBTableName'] = '" . $_SESSION['SourceDBTableName'] . "';\n" .
+ "\$CFG['Sources']['Source1']['DBEnableRowCounting'] = " . $_SESSION['SourceDBEnableRowCounting'] . ";\n" .
"";
}
$patterns[] = "/\/\/ --- \%Insert Source Here\%/";
diff --git a/src/js/common.js b/src/js/common.js
index 46137bf..fef542a 100644
--- a/src/js/common.js
+++ b/src/js/common.js
@@ -67,6 +67,30 @@ function togglevisibility(ElementNameToggle, ElementNameButton)
}
}
+/*
+* Helper function to hide a div area
+*/
+function showvisibility(ElementNameToggle, ElementNameButton)
+{
+ var toggle = document.getElementById(ElementNameToggle);
+
+ // Button is optional
+ if (ElementNameButton != null)
+ {
+ var button = document.getElementById(ElementNameButton);
+ }
+ else
+ var button = null;
+
+ if (button != null)
+ {
+ button.className = "topmenu2 ExpansionMinus";
+ }
+
+ toggle.style.visibility = "visible";
+ toggle.style.display = "inline";
+}
+
/*
* Helper function to hide a div area
*/
diff --git a/src/lang/de/main.php b/src/lang/de/main.php
index 6ac4cbc..d169e0c 100644
--- a/src/lang/de/main.php
+++ b/src/lang/de/main.php
@@ -46,6 +46,15 @@ $content['LN_GEN_SOURCE_DB'] = "Datenbank";
$content['LN_GEN_RECORDSPERPAGE'] = "records per page";
$content['LN_GEN_PRECONFIGURED'] = "Preconfigured";
$content['LN_GEN_AVAILABLESEARCHES'] = "Available searches";
+ $content['LN_GEN_DB_MYSQL'] = "Mysql Server";
+ $content['LN_GEN_DB_MSSQL'] = "Microsoft SQL Server";
+ $content['LN_GEN_DB_ODBC'] = "ODBC Database Source";
+ $content['LN_GEN_DB_PGSQL'] = "PostgreSQL";
+ $content['LN_GEN_DB_OCI'] = "Oracle Call Interface";
+ $content['LN_GEN_DB_DB2'] = " IBM DB2";
+ $content['LN_GEN_DB_FIREBIRD'] = "Firebird/Interbase 6";
+ $content['LN_GEN_DB_INFORMIX'] = "IBM Informix Dynamic Server";
+ $content['LN_GEN_DB_SQLITE'] = "SQLite 2";
// Index Site
$content['LN_ERROR_INSTALLFILEREMINDER'] = "Warnung! Du hast das Installationsscript 'install.php' noch nicht aus dem phpLogCon Hauptordner entfernt!";
diff --git a/src/lang/en/main.php b/src/lang/en/main.php
index 52ba085..b84919d 100644
--- a/src/lang/en/main.php
+++ b/src/lang/en/main.php
@@ -42,11 +42,20 @@ $content['LN_GEN_PAGERSIZE'] = "Records per page";
$content['LN_GEN_PAGE'] = "Page";
$content['LN_GEN_PREDEFINEDSEARCHES'] = "Predefined Searches";
$content['LN_GEN_SOURCE_DISK'] = "Diskfile";
-$content['LN_GEN_SOURCE_DB'] = "Database";
+$content['LN_GEN_SOURCE_DB'] = "MYSQL Native";
+$content['LN_GEN_SOURCE_PDO'] = "Database (PDO)";
$content['LN_GEN_RECORDSPERPAGE'] = "records per page";
$content['LN_GEN_PRECONFIGURED'] = "Preconfigured";
$content['LN_GEN_AVAILABLESEARCHES'] = "Available searches";
-
+$content['LN_GEN_DB_MYSQL'] = "Mysql Server";
+$content['LN_GEN_DB_MSSQL'] = "Microsoft SQL Server";
+$content['LN_GEN_DB_ODBC'] = "ODBC Database Source";
+$content['LN_GEN_DB_PGSQL'] = "PostgreSQL";
+$content['LN_GEN_DB_OCI'] = "Oracle Call Interface";
+$content['LN_GEN_DB_DB2'] = " IBM DB2";
+$content['LN_GEN_DB_FIREBIRD'] = "Firebird/Interbase 6";
+$content['LN_GEN_DB_INFORMIX'] = "IBM Informix Dynamic Server";
+$content['LN_GEN_DB_SQLITE'] = "SQLite 2";
// Main Index Site
$content['LN_ERROR_INSTALLFILEREMINDER'] = "Warning! You still have NOT removed the 'install.php' from your phpLogCon main directory!";
diff --git a/src/templates/install.html b/src/templates/install.html
index ccea573..75e40d5 100644
--- a/src/templates/install.html
+++ b/src/templates/install.html
@@ -8,6 +8,35 @@
![]() |
@@ -265,7 +294,7 @@
|
{LN_CFG_SOURCETYPE} | - |