Index: trunk/admin/install.php
===================================================================
diff -u -r78 -r89
--- trunk/admin/install.php (.../install.php) (revision 78)
+++ trunk/admin/install.php (.../install.php) (revision 89)
@@ -96,11 +96,12 @@
}
include("install/install_lib.php");
+
$ini_file = $pathtoroot."config.php";
if(file_exists($ini_file))
{
$write_access = is_writable($ini_file);
- $ini_vars = parse_ini_file($ini_file,TRUE);
+ $ini_vars = inst_parse_portal_ini($ini_file,TRUE);
foreach($ini_vars as $secname => $section)
{
@@ -123,7 +124,7 @@
set_ini_value("Database", "DBUser", "");
set_ini_value("Database", "DBUserPassword", "");
set_ini_value("Database", "DBName", "");
- set_ini_value("Module Versions", "In-Portal", "");
+ set_ini_value("Modules", "In-Portal", "");
save_values();
}
}
@@ -140,7 +141,6 @@
$configs[3] = "in-portal:configure_categories";
$mods[3] = "In-Portal";
-
// simulate rootURL variable: begin
$rootURL = 'http://'.dirname($_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME']);
$tmp = explode('/', $rootURL);
@@ -546,7 +546,7 @@
if(file_exists($filename))
{
RunSQLFile($ado, $filename);
- set_ini_value("Module Versions", $p, $try_version);
+ set_ini_value("Modules", $p, $try_version);
save_values();
}
}
@@ -568,7 +568,7 @@
if($state=="db_reconfig_save")
{
- $ini_vars = parse_ini_file($ini_file,TRUE);
+ $ini_vars = inst_parse_portal_ini($ini_file,TRUE);
foreach($ini_vars as $secname => $section)
{
@@ -615,7 +615,7 @@
$tmp_vers = $file_tmp_cont[0];
$vers_arr = explode(";", $tmp_vers);
- $ini_values = parse_ini_file($ini_file);
+ $ini_values = inst_parse_portal_ini($ini_file);
foreach ($ini_values as $key => $value) {
foreach ($vers_arr as $k) {
@@ -679,7 +679,7 @@
set_ini_value("Database","TablePrefix",$_POST["TablePrefix"]);
save_values();
- $ini_vars = parse_ini_file($ini_file,TRUE);
+ $ini_vars = inst_parse_portal_ini($ini_file,TRUE);
foreach($ini_vars as $secname => $section)
{
@@ -806,7 +806,7 @@
if($state=="license_process")
{
- $ValidLicense = FALSE;
+ $ValidLicense = FALSE;
switch($_POST["lic_opt"])
{
case 1: /* download from intechnic */
@@ -1039,7 +1039,7 @@
$sql = "SELECT Version FROM ".$g_TablePrefix."Modules WHERE Name = 'In-Portal'";
$rs = $ado->Execute($sql);
- set_ini_value("Module Versions", "In-Portal", $rs->fields['Version']);
+ set_ini_value("Modules", "In-Portal", $rs->fields['Version']);
save_values();
require_once $pathtoroot.'kernel/include/tag-class.php';
@@ -1433,7 +1433,7 @@
if(file_exists($filename))
{
RunSQLFile($ado, $filename);
- set_ini_value("Module Versions", $p, $try_version);
+ set_ini_value("Modules", $p, $try_version);
save_values();
}
}
Index: trunk/admin/install/install_lib.php
===================================================================
diff -u -r78 -r89
--- trunk/admin/install/install_lib.php (.../install_lib.php) (revision 78)
+++ trunk/admin/install/install_lib.php (.../install_lib.php) (revision 89)
@@ -415,6 +415,44 @@
return FALSE;
}
+function inst_parse_portal_ini($file, $parse_section = false) {
+ if(!file_exists($file) && !is_readable($file))
+ die('Could Not Open Ini File');
+
+ $contents = file($file);
+
+ $retval = array();
+
+ $section = '';
+ foreach($contents as $line) {
+ $line = trim($line);
+ $line = eregi_replace(';[.]*','',$line);
+ if(strlen($line) > 0) {
+ //echo $line . " - ";
+ if(eregi('^[[a-z]+]$',$line)) {
+ //echo 'section';
+ $section = substr($line,1,(strlen($line)-2));
+ if ($parse_section) {
+ $retval[$section] = array();
+ }
+ continue;
+ } elseif(eregi('=',$line)) {
+ //echo 'main element';
+ list($key,$val) = explode(' = ',$line);
+ if (!$parse_section) {
+ $retval[trim($key)] = str_replace('"', '', $val);
+ }
+ else {
+ $retval[$section][trim($key)] = str_replace('"', '', $val);
+ }
+ } //end if
+ //echo '
';
+ } //end if
+ } //end foreach
+
+ return $retval;
+}
+
function inst_GetModuleList()
{
global $rootpath,$pathchar,$admin, $pathtoroot;
Index: trunk/globals.php
===================================================================
diff -u -r78 -r89
--- trunk/globals.php (.../globals.php) (revision 78)
+++ trunk/globals.php (.../globals.php) (revision 89)
@@ -1,6 +1,6 @@
0) {
+ //echo $line . " - ";
+ if(eregi('^[[a-z]+]$',$line)) {
+ //echo 'section';
+ $section = substr($line,1,(strlen($line)-2));
+ if ($parse_section) {
+ $retval[$section] = array();
+ }
+ continue;
+ } elseif(eregi('=',$line)) {
+ //echo 'main element';
+ list($key,$val) = explode(' = ',$line);
+ if (!$parse_section) {
+ $retval[trim($key)] = str_replace('"', '', $val);
+ }
+ else {
+ $retval[$section][trim($key)] = str_replace('"', '', $val);
+ }
+ } //end if
+ //echo '
';
+ } //end if
+ } //end foreach
+
+ return $retval;
+}
+
function &GetADODBConnection()
{
global $g_adodbConnection, $g_DBType, $g_DBHost,$g_DBUser,$g_DBUserPassword,$g_DBName,$g_DebugMode;
Index: trunk/kernel/include/modules.php
===================================================================
diff -u -r41 -r89
--- trunk/kernel/include/modules.php (.../modules.php) (revision 41)
+++ trunk/kernel/include/modules.php (.../modules.php) (revision 89)
@@ -516,7 +516,7 @@
{
global $i_Keys, $objConfig, $pathtoroot;
- $vars = parse_ini_file($pathtoroot."config.php");
+ $vars = parse_portal_ini($pathtoroot."config.php");
while($key = key($vars))
{