Report #42: New Installer
This commit is contained in:
@@ -1,954 +0,0 @@
|
||||
<?php
|
||||
/**
|
||||
*
|
||||
* @package phpbb3f1webtipp
|
||||
* $LastChangedDate$
|
||||
* $LastChangedBy$
|
||||
* $Id$
|
||||
* $Revision$
|
||||
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
|
||||
*
|
||||
* This file creates new schema files for every database.
|
||||
* The filenames will be prefixed with an underscore to not overwrite the current schema files.
|
||||
*
|
||||
* If you overwrite the original schema files please make sure you save the file with UNIX linefeeds.
|
||||
*/
|
||||
|
||||
//die("Please read the first lines of this script for instructions on how to enable it");
|
||||
|
||||
@set_time_limit(0);
|
||||
|
||||
$schema_path = './schemas/';
|
||||
|
||||
if (!is_writable($schema_path))
|
||||
{
|
||||
die('Schema path not writable');
|
||||
}
|
||||
|
||||
$schema_data = get_schema_struct();
|
||||
$dbms_type_map = array(
|
||||
'mysql_41' => array(
|
||||
'INT:' => 'int(%d)',
|
||||
'BINT' => 'bigint(20)',
|
||||
'UINT' => 'mediumint(8) UNSIGNED',
|
||||
'UINT:' => 'int(%d) UNSIGNED',
|
||||
'TINT:' => 'tinyint(%d)',
|
||||
'USINT' => 'smallint(4) UNSIGNED',
|
||||
'BOOL' => 'tinyint(1) UNSIGNED',
|
||||
'VCHAR' => 'varchar(255)',
|
||||
'VCHAR:' => 'varchar(%d)',
|
||||
'CHAR:' => 'char(%d)',
|
||||
'XSTEXT' => 'text',
|
||||
'XSTEXT_UNI'=> 'varchar(100)',
|
||||
'STEXT' => 'text',
|
||||
'STEXT_UNI' => 'varchar(255)',
|
||||
'TEXT' => 'text',
|
||||
'TEXT_UNI' => 'text',
|
||||
'MTEXT' => 'mediumtext',
|
||||
'MTEXT_UNI' => 'mediumtext',
|
||||
'TIMESTAMP' => 'int(11) UNSIGNED',
|
||||
'DECIMAL' => 'decimal(5,2)',
|
||||
'DECIMAL:' => 'decimal(%d,2)',
|
||||
'PDECIMAL' => 'decimal(6,3)',
|
||||
'PDECIMAL:' => 'decimal(%d,3)',
|
||||
'VCHAR_UNI' => 'varchar(255)',
|
||||
'VCHAR_UNI:'=> 'varchar(%d)',
|
||||
'VCHAR_CI' => 'varchar(255)',
|
||||
'VARBINARY' => 'varbinary(255)',
|
||||
),
|
||||
|
||||
'mysql_40' => array(
|
||||
'INT:' => 'int(%d)',
|
||||
'BINT' => 'bigint(20)',
|
||||
'UINT' => 'mediumint(8) UNSIGNED',
|
||||
'UINT:' => 'int(%d) UNSIGNED',
|
||||
'TINT:' => 'tinyint(%d)',
|
||||
'USINT' => 'smallint(4) UNSIGNED',
|
||||
'BOOL' => 'tinyint(1) UNSIGNED',
|
||||
'VCHAR' => 'varbinary(255)',
|
||||
'VCHAR:' => 'varbinary(%d)',
|
||||
'CHAR:' => 'binary(%d)',
|
||||
'XSTEXT' => 'blob',
|
||||
'XSTEXT_UNI'=> 'blob',
|
||||
'STEXT' => 'blob',
|
||||
'STEXT_UNI' => 'blob',
|
||||
'TEXT' => 'blob',
|
||||
'TEXT_UNI' => 'blob',
|
||||
'MTEXT' => 'mediumblob',
|
||||
'MTEXT_UNI' => 'mediumblob',
|
||||
'TIMESTAMP' => 'int(11) UNSIGNED',
|
||||
'DECIMAL' => 'decimal(5,2)',
|
||||
'DECIMAL:' => 'decimal(%d,2)',
|
||||
'PDECIMAL' => 'decimal(6,3)',
|
||||
'PDECIMAL:' => 'decimal(%d,3)',
|
||||
'VCHAR_UNI' => 'blob',
|
||||
'VCHAR_UNI:'=> array('varbinary(%d)', 'limit' => array('mult', 3, 255, 'blob')),
|
||||
'VCHAR_CI' => 'blob',
|
||||
'VARBINARY' => 'varbinary(255)',
|
||||
),
|
||||
|
||||
'firebird' => array(
|
||||
'INT:' => 'INTEGER',
|
||||
'BINT' => 'DOUBLE PRECISION',
|
||||
'UINT' => 'INTEGER',
|
||||
'UINT:' => 'INTEGER',
|
||||
'TINT:' => 'INTEGER',
|
||||
'USINT' => 'INTEGER',
|
||||
'BOOL' => 'INTEGER',
|
||||
'VCHAR' => 'VARCHAR(255) CHARACTER SET NONE',
|
||||
'VCHAR:' => 'VARCHAR(%d) CHARACTER SET NONE',
|
||||
'CHAR:' => 'CHAR(%d) CHARACTER SET NONE',
|
||||
'XSTEXT' => 'BLOB SUB_TYPE TEXT CHARACTER SET NONE',
|
||||
'STEXT' => 'BLOB SUB_TYPE TEXT CHARACTER SET NONE',
|
||||
'TEXT' => 'BLOB SUB_TYPE TEXT CHARACTER SET NONE',
|
||||
'MTEXT' => 'BLOB SUB_TYPE TEXT CHARACTER SET NONE',
|
||||
'XSTEXT_UNI'=> 'VARCHAR(100) CHARACTER SET UTF8',
|
||||
'STEXT_UNI' => 'VARCHAR(255) CHARACTER SET UTF8',
|
||||
'TEXT_UNI' => 'BLOB SUB_TYPE TEXT CHARACTER SET UTF8',
|
||||
'MTEXT_UNI' => 'BLOB SUB_TYPE TEXT CHARACTER SET UTF8',
|
||||
'TIMESTAMP' => 'INTEGER',
|
||||
'DECIMAL' => 'DOUBLE PRECISION',
|
||||
'DECIMAL:' => 'DOUBLE PRECISION',
|
||||
'PDECIMAL' => 'DOUBLE PRECISION',
|
||||
'PDECIMAL:' => 'DOUBLE PRECISION',
|
||||
'VCHAR_UNI' => 'VARCHAR(255) CHARACTER SET UTF8',
|
||||
'VCHAR_UNI:'=> 'VARCHAR(%d) CHARACTER SET UTF8',
|
||||
'VCHAR_CI' => 'VARCHAR(255) CHARACTER SET UTF8',
|
||||
'VARBINARY' => 'CHAR(255) CHARACTER SET NONE',
|
||||
),
|
||||
|
||||
'mssql' => array(
|
||||
'INT:' => '[int]',
|
||||
'BINT' => '[float]',
|
||||
'UINT' => '[int]',
|
||||
'UINT:' => '[int]',
|
||||
'TINT:' => '[int]',
|
||||
'USINT' => '[int]',
|
||||
'BOOL' => '[int]',
|
||||
'VCHAR' => '[varchar] (255)',
|
||||
'VCHAR:' => '[varchar] (%d)',
|
||||
'CHAR:' => '[char] (%d)',
|
||||
'XSTEXT' => '[varchar] (1000)',
|
||||
'STEXT' => '[varchar] (3000)',
|
||||
'TEXT' => '[varchar] (8000)',
|
||||
'MTEXT' => '[text]',
|
||||
'XSTEXT_UNI'=> '[varchar] (100)',
|
||||
'STEXT_UNI' => '[varchar] (255)',
|
||||
'TEXT_UNI' => '[varchar] (4000)',
|
||||
'MTEXT_UNI' => '[text]',
|
||||
'TIMESTAMP' => '[int]',
|
||||
'DECIMAL' => '[float]',
|
||||
'DECIMAL:' => '[float]',
|
||||
'PDECIMAL' => '[float]',
|
||||
'PDECIMAL:' => '[float]',
|
||||
'VCHAR_UNI' => '[varchar] (255)',
|
||||
'VCHAR_UNI:'=> '[varchar] (%d)',
|
||||
'VCHAR_CI' => '[varchar] (255)',
|
||||
'VARBINARY' => '[varchar] (255)',
|
||||
),
|
||||
|
||||
'oracle' => array(
|
||||
'INT:' => 'number(%d)',
|
||||
'BINT' => 'number(20)',
|
||||
'UINT' => 'number(8)',
|
||||
'UINT:' => 'number(%d)',
|
||||
'TINT:' => 'number(%d)',
|
||||
'USINT' => 'number(4)',
|
||||
'BOOL' => 'number(1)',
|
||||
'VCHAR' => 'varchar2(255)',
|
||||
'VCHAR:' => 'varchar2(%d)',
|
||||
'CHAR:' => 'char(%d)',
|
||||
'XSTEXT' => 'varchar2(1000)',
|
||||
'STEXT' => 'varchar2(3000)',
|
||||
'TEXT' => 'clob',
|
||||
'MTEXT' => 'clob',
|
||||
'XSTEXT_UNI'=> 'varchar2(300)',
|
||||
'STEXT_UNI' => 'varchar2(765)',
|
||||
'TEXT_UNI' => 'clob',
|
||||
'MTEXT_UNI' => 'clob',
|
||||
'TIMESTAMP' => 'number(11)',
|
||||
'DECIMAL' => 'number(5, 2)',
|
||||
'DECIMAL:' => 'number(%d, 2)',
|
||||
'PDECIMAL' => 'number(6, 3)',
|
||||
'PDECIMAL:' => 'number(%d, 3)',
|
||||
'VCHAR_UNI' => 'varchar2(765)',
|
||||
'VCHAR_UNI:'=> array('varchar2(%d)', 'limit' => array('mult', 3, 765, 'clob')),
|
||||
'VCHAR_CI' => 'varchar2(255)',
|
||||
'VARBINARY' => 'raw(255)',
|
||||
),
|
||||
|
||||
'sqlite' => array(
|
||||
'INT:' => 'int(%d)',
|
||||
'BINT' => 'bigint(20)',
|
||||
'UINT' => 'INTEGER UNSIGNED', //'mediumint(8) UNSIGNED',
|
||||
'UINT:' => 'INTEGER UNSIGNED', // 'int(%d) UNSIGNED',
|
||||
'TINT:' => 'tinyint(%d)',
|
||||
'USINT' => 'INTEGER UNSIGNED', //'mediumint(4) UNSIGNED',
|
||||
'BOOL' => 'INTEGER UNSIGNED', //'tinyint(1) UNSIGNED',
|
||||
'VCHAR' => 'varchar(255)',
|
||||
'VCHAR:' => 'varchar(%d)',
|
||||
'CHAR:' => 'char(%d)',
|
||||
'XSTEXT' => 'text(65535)',
|
||||
'STEXT' => 'text(65535)',
|
||||
'TEXT' => 'text(65535)',
|
||||
'MTEXT' => 'mediumtext(16777215)',
|
||||
'XSTEXT_UNI'=> 'text(65535)',
|
||||
'STEXT_UNI' => 'text(65535)',
|
||||
'TEXT_UNI' => 'text(65535)',
|
||||
'MTEXT_UNI' => 'mediumtext(16777215)',
|
||||
'TIMESTAMP' => 'INTEGER UNSIGNED', //'int(11) UNSIGNED',
|
||||
'DECIMAL' => 'decimal(5,2)',
|
||||
'DECIMAL:' => 'decimal(%d,2)',
|
||||
'PDECIMAL' => 'decimal(6,3)',
|
||||
'PDECIMAL:' => 'decimal(%d,3)',
|
||||
'VCHAR_UNI' => 'varchar(255)',
|
||||
'VCHAR_UNI:'=> 'varchar(%d)',
|
||||
'VCHAR_CI' => 'varchar(255)',
|
||||
'VARBINARY' => 'blob',
|
||||
),
|
||||
|
||||
'postgres' => array(
|
||||
'INT:' => 'INT4',
|
||||
'BINT' => 'INT8',
|
||||
'UINT' => 'INT4', // unsigned
|
||||
'UINT:' => 'INT4', // unsigned
|
||||
'USINT' => 'INT2', // unsigned
|
||||
'BOOL' => 'INT2', // unsigned
|
||||
'TINT:' => 'INT2',
|
||||
'VCHAR' => 'varchar(255)',
|
||||
'VCHAR:' => 'varchar(%d)',
|
||||
'CHAR:' => 'char(%d)',
|
||||
'XSTEXT' => 'varchar(1000)',
|
||||
'STEXT' => 'varchar(3000)',
|
||||
'TEXT' => 'varchar(8000)',
|
||||
'MTEXT' => 'TEXT',
|
||||
'XSTEXT_UNI'=> 'varchar(100)',
|
||||
'STEXT_UNI' => 'varchar(255)',
|
||||
'TEXT_UNI' => 'varchar(4000)',
|
||||
'MTEXT_UNI' => 'TEXT',
|
||||
'TIMESTAMP' => 'INT4', // unsigned
|
||||
'DECIMAL' => 'decimal(5,2)',
|
||||
'DECIMAL:' => 'decimal(%d,2)',
|
||||
'PDECIMAL' => 'decimal(6,3)',
|
||||
'PDECIMAL:' => 'decimal(%d,3)',
|
||||
'VCHAR_UNI' => 'varchar(255)',
|
||||
'VCHAR_UNI:'=> 'varchar(%d)',
|
||||
'VCHAR_CI' => 'varchar_ci',
|
||||
'VARBINARY' => 'bytea',
|
||||
),
|
||||
);
|
||||
|
||||
// A list of types being unsigned for better reference in some db's
|
||||
$unsigned_types = array('UINT', 'UINT:', 'USINT', 'BOOL', 'TIMESTAMP');
|
||||
$supported_dbms = array('firebird', 'mssql', 'mysql_40', 'mysql_41', 'oracle', 'postgres', 'sqlite');
|
||||
|
||||
foreach ($supported_dbms as $dbms)
|
||||
{
|
||||
$fp = fopen($schema_path . '_' . $dbms . '_schema.sql', 'wt');
|
||||
|
||||
$line = '';
|
||||
|
||||
// Write Header
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
case 'mysql_41':
|
||||
$line = "#\n# \$I" . "d: $\n#\n\n";
|
||||
break;
|
||||
|
||||
case 'firebird':
|
||||
$line = "#\n# \$I" . "d: $\n#\n\n";
|
||||
$line .= custom_data('firebird') . "\n";
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
$line = "#\n# \$I" . "d: $\n#\n\n";
|
||||
$line .= "BEGIN TRANSACTION;\n\n";
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
$line = "/*\n\n \$I" . "d: $\n\n*/\n\n";
|
||||
$line .= "BEGIN TRANSACTION\nGO\n\n";
|
||||
break;
|
||||
|
||||
case 'oracle':
|
||||
$line = "/*\n\n \$I" . "d: $\n\n*/\n\n";
|
||||
$line .= custom_data('oracle') . "\n";
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$line = "/*\n\n \$I" . "d: $\n\n*/\n\n";
|
||||
$line .= "BEGIN;\n\n";
|
||||
$line .= custom_data('postgres') . "\n";
|
||||
break;
|
||||
}
|
||||
|
||||
fwrite($fp, $line);
|
||||
|
||||
foreach ($schema_data as $table_name => $table_data)
|
||||
{
|
||||
// Write comment about table
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
case 'mysql_41':
|
||||
case 'firebird':
|
||||
case 'sqlite':
|
||||
fwrite($fp, "# Table: '{$table_name}'\n");
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
case 'oracle':
|
||||
case 'postgres':
|
||||
fwrite($fp, "/*\n\tTable: '{$table_name}'\n*/\n");
|
||||
break;
|
||||
}
|
||||
|
||||
// Create Table statement
|
||||
$generator = $textimage = false;
|
||||
$line = '';
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
case 'mysql_41':
|
||||
case 'firebird':
|
||||
case 'oracle':
|
||||
case 'sqlite':
|
||||
case 'postgres':
|
||||
$line = "CREATE TABLE {$table_name} (\n";
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
$line = "CREATE TABLE [{$table_name}] (\n";
|
||||
break;
|
||||
}
|
||||
|
||||
// Table specific so we don't get overlap
|
||||
$modded_array = array();
|
||||
|
||||
// Write columns one by one...
|
||||
foreach ($table_data['COLUMNS'] as $column_name => $column_data)
|
||||
{
|
||||
// Get type
|
||||
if (strpos($column_data[0], ':') !== false)
|
||||
{
|
||||
list($orig_column_type, $column_length) = explode(':', $column_data[0]);
|
||||
if (!is_array($dbms_type_map[$dbms][$orig_column_type . ':']))
|
||||
{
|
||||
$column_type = sprintf($dbms_type_map[$dbms][$orig_column_type . ':'], $column_length);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (isset($dbms_type_map[$dbms][$orig_column_type . ':']['rule']))
|
||||
{
|
||||
switch ($dbms_type_map[$dbms][$orig_column_type . ':']['rule'][0])
|
||||
{
|
||||
case 'div':
|
||||
$column_length /= $dbms_type_map[$dbms][$orig_column_type . ':']['rule'][1];
|
||||
$column_length = ceil($column_length);
|
||||
$column_type = sprintf($dbms_type_map[$dbms][$orig_column_type . ':'][0], $column_length);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($dbms_type_map[$dbms][$orig_column_type . ':']['limit']))
|
||||
{
|
||||
switch ($dbms_type_map[$dbms][$orig_column_type . ':']['limit'][0])
|
||||
{
|
||||
case 'mult':
|
||||
$column_length *= $dbms_type_map[$dbms][$orig_column_type . ':']['limit'][1];
|
||||
if ($column_length > $dbms_type_map[$dbms][$orig_column_type . ':']['limit'][2])
|
||||
{
|
||||
$column_type = $dbms_type_map[$dbms][$orig_column_type . ':']['limit'][3];
|
||||
$modded_array[$column_name] = $column_type;
|
||||
}
|
||||
else
|
||||
{
|
||||
$column_type = sprintf($dbms_type_map[$dbms][$orig_column_type . ':'][0], $column_length);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
$orig_column_type .= ':';
|
||||
}
|
||||
else
|
||||
{
|
||||
$orig_column_type = $column_data[0];
|
||||
$column_type = $dbms_type_map[$dbms][$column_data[0]];
|
||||
if ($column_type == 'text' || $column_type == 'blob')
|
||||
{
|
||||
$modded_array[$column_name] = $column_type;
|
||||
}
|
||||
}
|
||||
|
||||
// Adjust default value if db-dependant specified
|
||||
if (is_array($column_data[1]))
|
||||
{
|
||||
$column_data[1] = (isset($column_data[1][$dbms])) ? $column_data[1][$dbms] : $column_data[1]['default'];
|
||||
}
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
case 'mysql_41':
|
||||
$line .= "\t{$column_name} {$column_type} ";
|
||||
|
||||
// For hexadecimal values do not use single quotes
|
||||
if (!is_null($column_data[1]) && substr($column_type, -4) !== 'text' && substr($column_type, -4) !== 'blob')
|
||||
{
|
||||
$line .= (strpos($column_data[1], '0x') === 0) ? "DEFAULT {$column_data[1]} " : "DEFAULT '{$column_data[1]}' ";
|
||||
}
|
||||
$line .= 'NOT NULL';
|
||||
|
||||
if (isset($column_data[2]))
|
||||
{
|
||||
if ($column_data[2] == 'auto_increment')
|
||||
{
|
||||
$line .= ' auto_increment';
|
||||
}
|
||||
else if ($dbms === 'mysql_41' && $column_data[2] == 'true_sort')
|
||||
{
|
||||
$line .= ' COLLATE utf8_unicode_ci';
|
||||
}
|
||||
}
|
||||
|
||||
$line .= ",\n";
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
if (isset($column_data[2]) && $column_data[2] == 'auto_increment')
|
||||
{
|
||||
$line .= "\t{$column_name} INTEGER PRIMARY KEY ";
|
||||
$generator = $column_name;
|
||||
}
|
||||
else
|
||||
{
|
||||
$line .= "\t{$column_name} {$column_type} ";
|
||||
}
|
||||
|
||||
$line .= 'NOT NULL ';
|
||||
$line .= (!is_null($column_data[1])) ? "DEFAULT '{$column_data[1]}'" : '';
|
||||
$line .= ",\n";
|
||||
break;
|
||||
|
||||
case 'firebird':
|
||||
$line .= "\t{$column_name} {$column_type} ";
|
||||
|
||||
if (!is_null($column_data[1]))
|
||||
{
|
||||
$line .= 'DEFAULT ' . ((is_numeric($column_data[1])) ? $column_data[1] : "'{$column_data[1]}'") . ' ';
|
||||
}
|
||||
|
||||
$line .= 'NOT NULL';
|
||||
|
||||
// This is a UNICODE column and thus should be given it's fair share
|
||||
if (preg_match('/^X?STEXT_UNI|VCHAR_(CI|UNI:?)/', $column_data[0]))
|
||||
{
|
||||
$line .= ' COLLATE UNICODE';
|
||||
}
|
||||
|
||||
$line .= ",\n";
|
||||
|
||||
if (isset($column_data[2]) && $column_data[2] == 'auto_increment')
|
||||
{
|
||||
$generator = $column_name;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
if ($column_type == '[text]')
|
||||
{
|
||||
$textimage = true;
|
||||
}
|
||||
|
||||
$line .= "\t[{$column_name}] {$column_type} ";
|
||||
|
||||
if (!is_null($column_data[1]))
|
||||
{
|
||||
// For hexadecimal values do not use single quotes
|
||||
if (strpos($column_data[1], '0x') === 0)
|
||||
{
|
||||
$line .= 'DEFAULT (' . $column_data[1] . ') ';
|
||||
}
|
||||
else
|
||||
{
|
||||
$line .= 'DEFAULT (' . ((is_numeric($column_data[1])) ? $column_data[1] : "'{$column_data[1]}'") . ') ';
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($column_data[2]) && $column_data[2] == 'auto_increment')
|
||||
{
|
||||
$line .= 'IDENTITY (1, 1) ';
|
||||
}
|
||||
|
||||
$line .= 'NOT NULL';
|
||||
$line .= " ,\n";
|
||||
break;
|
||||
|
||||
case 'oracle':
|
||||
$line .= "\t{$column_name} {$column_type} ";
|
||||
$line .= (!is_null($column_data[1])) ? "DEFAULT '{$column_data[1]}' " : '';
|
||||
|
||||
// In Oracle empty strings ('') are treated as NULL.
|
||||
// Therefore in oracle we allow NULL's for all DEFAULT '' entries
|
||||
$line .= ($column_data[1] === '') ? ",\n" : "NOT NULL,\n";
|
||||
|
||||
if (isset($column_data[2]) && $column_data[2] == 'auto_increment')
|
||||
{
|
||||
$generator = $column_name;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$line .= "\t{$column_name} {$column_type} ";
|
||||
|
||||
if (isset($column_data[2]) && $column_data[2] == 'auto_increment')
|
||||
{
|
||||
$line .= "DEFAULT nextval('{$table_name}_seq'),\n";
|
||||
|
||||
// Make sure the sequence will be created before creating the table
|
||||
$line = "CREATE SEQUENCE {$table_name}_seq;\n\n" . $line;
|
||||
}
|
||||
else
|
||||
{
|
||||
$line .= (!is_null($column_data[1])) ? "DEFAULT '{$column_data[1]}' " : '';
|
||||
$line .= "NOT NULL";
|
||||
|
||||
// Unsigned? Then add a CHECK contraint
|
||||
if (in_array($orig_column_type, $unsigned_types))
|
||||
{
|
||||
$line .= " CHECK ({$column_name} >= 0)";
|
||||
}
|
||||
|
||||
$line .= ",\n";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'firebird':
|
||||
// Remove last line delimiter...
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n);;\n\n";
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n) ON [PRIMARY]" . (($textimage) ? ' TEXTIMAGE_ON [PRIMARY]' : '') . "\n";
|
||||
$line .= "GO\n\n";
|
||||
break;
|
||||
}
|
||||
|
||||
// Write primary key
|
||||
if (isset($table_data['PRIMARY_KEY']))
|
||||
{
|
||||
if (!is_array($table_data['PRIMARY_KEY']))
|
||||
{
|
||||
$table_data['PRIMARY_KEY'] = array($table_data['PRIMARY_KEY']);
|
||||
}
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
case 'mysql_41':
|
||||
case 'postgres':
|
||||
$line .= "\tPRIMARY KEY (" . implode(', ', $table_data['PRIMARY_KEY']) . "),\n";
|
||||
break;
|
||||
|
||||
case 'firebird':
|
||||
$line .= "ALTER TABLE {$table_name} ADD PRIMARY KEY (" . implode(', ', $table_data['PRIMARY_KEY']) . ");;\n\n";
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
if ($generator === false || !in_array($generator, $table_data['PRIMARY_KEY']))
|
||||
{
|
||||
$line .= "\tPRIMARY KEY (" . implode(', ', $table_data['PRIMARY_KEY']) . "),\n";
|
||||
}
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
$line .= "ALTER TABLE [{$table_name}] WITH NOCHECK ADD \n";
|
||||
$line .= "\tCONSTRAINT [PK_{$table_name}] PRIMARY KEY CLUSTERED \n";
|
||||
$line .= "\t(\n";
|
||||
$line .= "\t\t[" . implode("],\n\t\t[", $table_data['PRIMARY_KEY']) . "]\n";
|
||||
$line .= "\t) ON [PRIMARY] \n";
|
||||
$line .= "GO\n\n";
|
||||
break;
|
||||
|
||||
case 'oracle':
|
||||
$line .= "\tCONSTRAINT pk_{$table_name} PRIMARY KEY (" . implode(', ', $table_data['PRIMARY_KEY']) . "),\n";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'oracle':
|
||||
// UNIQUE contrains to be added?
|
||||
if (isset($table_data['KEYS']))
|
||||
{
|
||||
foreach ($table_data['KEYS'] as $key_name => $key_data)
|
||||
{
|
||||
if (!is_array($key_data[1]))
|
||||
{
|
||||
$key_data[1] = array($key_data[1]);
|
||||
}
|
||||
|
||||
if ($key_data[0] == 'UNIQUE')
|
||||
{
|
||||
$line .= "\tCONSTRAINT u_phpbb_{$key_name} UNIQUE (" . implode(', ', $key_data[1]) . "),\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Remove last line delimiter...
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n)\n/\n\n";
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
// Remove last line delimiter...
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n);\n\n";
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
// Remove last line delimiter...
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n);\n\n";
|
||||
break;
|
||||
}
|
||||
|
||||
// Write Keys
|
||||
if (isset($table_data['KEYS']))
|
||||
{
|
||||
foreach ($table_data['KEYS'] as $key_name => $key_data)
|
||||
{
|
||||
if (!is_array($key_data[1]))
|
||||
{
|
||||
$key_data[1] = array($key_data[1]);
|
||||
}
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
case 'mysql_41':
|
||||
$line .= ($key_data[0] == 'INDEX') ? "\tKEY" : '';
|
||||
$line .= ($key_data[0] == 'UNIQUE') ? "\tUNIQUE" : '';
|
||||
foreach ($key_data[1] as $key => $col_name)
|
||||
{
|
||||
if (isset($modded_array[$col_name]))
|
||||
{
|
||||
switch ($modded_array[$col_name])
|
||||
{
|
||||
case 'text':
|
||||
case 'blob':
|
||||
$key_data[1][$key] = $col_name . '(255)';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
$line .= ' ' . $key_name . ' (' . implode(', ', $key_data[1]) . "),\n";
|
||||
break;
|
||||
|
||||
case 'firebird':
|
||||
$line .= ($key_data[0] == 'INDEX') ? 'CREATE INDEX' : '';
|
||||
$line .= ($key_data[0] == 'UNIQUE') ? 'CREATE UNIQUE INDEX' : '';
|
||||
|
||||
$line .= ' ' . $table_name . '_' . $key_name . ' ON ' . $table_name . '(' . implode(', ', $key_data[1]) . ");;\n";
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
$line .= ($key_data[0] == 'INDEX') ? 'CREATE INDEX' : '';
|
||||
$line .= ($key_data[0] == 'UNIQUE') ? 'CREATE UNIQUE INDEX' : '';
|
||||
$line .= " [{$key_name}] ON [{$table_name}]([" . implode('], [', $key_data[1]) . "]) ON [PRIMARY]\n";
|
||||
$line .= "GO\n\n";
|
||||
break;
|
||||
|
||||
case 'oracle':
|
||||
if ($key_data[0] == 'UNIQUE')
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$line .= ($key_data[0] == 'INDEX') ? 'CREATE INDEX' : '';
|
||||
|
||||
$line .= " {$table_name}_{$key_name} ON {$table_name} (" . implode(', ', $key_data[1]) . ")\n";
|
||||
$line .= "/\n";
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
$line .= ($key_data[0] == 'INDEX') ? 'CREATE INDEX' : '';
|
||||
$line .= ($key_data[0] == 'UNIQUE') ? 'CREATE UNIQUE INDEX' : '';
|
||||
|
||||
$line .= " {$table_name}_{$key_name} ON {$table_name} (" . implode(', ', $key_data[1]) . ");\n";
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$line .= ($key_data[0] == 'INDEX') ? 'CREATE INDEX' : '';
|
||||
$line .= ($key_data[0] == 'UNIQUE') ? 'CREATE UNIQUE INDEX' : '';
|
||||
|
||||
$line .= " {$table_name}_{$key_name} ON {$table_name} (" . implode(', ', $key_data[1]) . ");\n";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mysql_40':
|
||||
// Remove last line delimiter...
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n);\n\n";
|
||||
break;
|
||||
|
||||
case 'mysql_41':
|
||||
// Remove last line delimiter...
|
||||
$line = substr($line, 0, -2);
|
||||
$line .= "\n) CHARACTER SET `utf8` COLLATE `utf8_bin`;\n\n";
|
||||
break;
|
||||
|
||||
// Create Generator
|
||||
case 'firebird':
|
||||
if ($generator !== false)
|
||||
{
|
||||
$line .= "\nCREATE GENERATOR {$table_name}_gen;;\n";
|
||||
$line .= 'SET GENERATOR ' . $table_name . "_gen TO 0;;\n\n";
|
||||
|
||||
$line .= 'CREATE TRIGGER t_' . $table_name . ' FOR ' . $table_name . "\n";
|
||||
$line .= "BEFORE INSERT\nAS\nBEGIN\n";
|
||||
$line .= "\tNEW.{$generator} = GEN_ID({$table_name}_gen, 1);\nEND;;\n\n";
|
||||
}
|
||||
break;
|
||||
|
||||
case 'oracle':
|
||||
if ($generator !== false)
|
||||
{
|
||||
$line .= "\nCREATE SEQUENCE {$table_name}_seq\n/\n\n";
|
||||
|
||||
$line .= "CREATE OR REPLACE TRIGGER t_{$table_name}\n";
|
||||
$line .= "BEFORE INSERT ON {$table_name}\n";
|
||||
$line .= "FOR EACH ROW WHEN (\n";
|
||||
$line .= "\tnew.{$generator} IS NULL OR new.{$generator} = 0\n";
|
||||
$line .= ")\nBEGIN\n";
|
||||
$line .= "\tSELECT {$table_name}_seq.nextval\n";
|
||||
$line .= "\tINTO :new.{$generator}\n";
|
||||
$line .= "\tFROM dual;\nEND;\n/\n\n";
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
fwrite($fp, $line . "\n");
|
||||
}
|
||||
|
||||
$line = '';
|
||||
|
||||
// Write custom function at the end for some db's
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'mssql':
|
||||
$line = "\nCOMMIT\nGO\n\n";
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
$line = "\nCOMMIT;";
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$line = "\nCOMMIT;";
|
||||
break;
|
||||
}
|
||||
|
||||
fwrite($fp, $line);
|
||||
fclose($fp);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Define the basic structure
|
||||
* The format:
|
||||
* array('{TABLE_NAME}' => {TABLE_DATA})
|
||||
* {TABLE_DATA}:
|
||||
* COLUMNS = array({column_name} = array({column_type}, {default}, {auto_increment}))
|
||||
* PRIMARY_KEY = {column_name(s)}
|
||||
* KEYS = array({key_name} = array({key_type}, {column_name(s)})),
|
||||
*
|
||||
* Column Types:
|
||||
* INT:x => SIGNED int(x)
|
||||
* BINT => BIGINT
|
||||
* UINT => mediumint(8) UNSIGNED
|
||||
* UINT:x => int(x) UNSIGNED
|
||||
* TINT:x => tinyint(x)
|
||||
* USINT => smallint(4) UNSIGNED (for _order columns)
|
||||
* BOOL => tinyint(1) UNSIGNED
|
||||
* VCHAR => varchar(255)
|
||||
* CHAR:x => char(x)
|
||||
* XSTEXT_UNI => text for storing 100 characters (topic_title for example)
|
||||
* STEXT_UNI => text for storing 255 characters (normal input field with a max of 255 single-byte chars) - same as VCHAR_UNI
|
||||
* TEXT_UNI => text for storing 3000 characters (short text, descriptions, comments, etc.)
|
||||
* MTEXT_UNI => mediumtext (post text, large text)
|
||||
* VCHAR:x => varchar(x)
|
||||
* TIMESTAMP => int(11) UNSIGNED
|
||||
* DECIMAL => decimal number (5,2)
|
||||
* DECIMAL: => decimal number (x,2)
|
||||
* PDECIMAL => precision decimal number (6,3)
|
||||
* PDECIMAL: => precision decimal number (x,3)
|
||||
* VCHAR_UNI => varchar(255) BINARY
|
||||
* VCHAR_CI => varchar_ci for postgresql, others VCHAR
|
||||
*/
|
||||
function get_schema_struct()
|
||||
{
|
||||
$schema_data = array();
|
||||
|
||||
// Create formel_config table
|
||||
$schema_data['phpbb_portal_config'] = array(
|
||||
'COLUMNS' => array(
|
||||
'config_name' => array('VCHAR', ''),
|
||||
'config_value' => array('VCHAR', ''),
|
||||
),
|
||||
'PRIMARY_KEY' => 'config_name',
|
||||
);
|
||||
|
||||
return $schema_data;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Data put into the header for various dbms
|
||||
*/
|
||||
function custom_data($dbms)
|
||||
{
|
||||
switch ($dbms)
|
||||
{
|
||||
case 'oracle':
|
||||
return <<<EOF
|
||||
/*
|
||||
This first section is optional, however its probably the best method
|
||||
of running phpBB on Oracle. If you already have a tablespace and user created
|
||||
for phpBB you can leave this section commented out!
|
||||
|
||||
The first set of statements create a phpBB tablespace and a phpBB user,
|
||||
make sure you change the password of the phpBB user before you run this script!!
|
||||
*/
|
||||
|
||||
/*
|
||||
CREATE TABLESPACE "PHPBB"
|
||||
LOGGING
|
||||
DATAFILE 'E:\ORACLE\ORADATA\LOCAL\PHPBB.ora'
|
||||
SIZE 10M
|
||||
AUTOEXTEND ON NEXT 10M
|
||||
MAXSIZE 100M;
|
||||
|
||||
CREATE USER "PHPBB"
|
||||
PROFILE "DEFAULT"
|
||||
IDENTIFIED BY "phpbb_password"
|
||||
DEFAULT TABLESPACE "PHPBB"
|
||||
QUOTA UNLIMITED ON "PHPBB"
|
||||
ACCOUNT UNLOCK;
|
||||
|
||||
GRANT ANALYZE ANY TO "PHPBB";
|
||||
GRANT CREATE SEQUENCE TO "PHPBB";
|
||||
GRANT CREATE SESSION TO "PHPBB";
|
||||
GRANT CREATE TABLE TO "PHPBB";
|
||||
GRANT CREATE TRIGGER TO "PHPBB";
|
||||
GRANT CREATE VIEW TO "PHPBB";
|
||||
GRANT "CONNECT" TO "PHPBB";
|
||||
|
||||
COMMIT;
|
||||
DISCONNECT;
|
||||
|
||||
CONNECT phpbb/phpbb_password;
|
||||
*/
|
||||
EOF;
|
||||
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
return <<<EOF
|
||||
/*
|
||||
Domain definition
|
||||
*/
|
||||
CREATE DOMAIN varchar_ci AS varchar(255) NOT NULL DEFAULT ''::character varying;
|
||||
|
||||
/*
|
||||
Operation Functions
|
||||
*/
|
||||
CREATE FUNCTION _varchar_ci_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) = LOWER($2)' LANGUAGE SQL STRICT;
|
||||
CREATE FUNCTION _varchar_ci_not_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) != LOWER($2)' LANGUAGE SQL STRICT;
|
||||
CREATE FUNCTION _varchar_ci_less_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) < LOWER($2)' LANGUAGE SQL STRICT;
|
||||
CREATE FUNCTION _varchar_ci_less_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) <= LOWER($2)' LANGUAGE SQL STRICT;
|
||||
CREATE FUNCTION _varchar_ci_greater_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) > LOWER($2)' LANGUAGE SQL STRICT;
|
||||
CREATE FUNCTION _varchar_ci_greater_equals(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) >= LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
/*
|
||||
Operators
|
||||
*/
|
||||
CREATE OPERATOR <(
|
||||
PROCEDURE = _varchar_ci_less_than,
|
||||
LEFTARG = varchar_ci,
|
||||
RIGHTARG = varchar_ci,
|
||||
COMMUTATOR = >,
|
||||
NEGATOR = >=,
|
||||
RESTRICT = scalarltsel,
|
||||
JOIN = scalarltjoinsel);
|
||||
|
||||
CREATE OPERATOR <=(
|
||||
PROCEDURE = _varchar_ci_less_equal,
|
||||
LEFTARG = varchar_ci,
|
||||
RIGHTARG = varchar_ci,
|
||||
COMMUTATOR = >=,
|
||||
NEGATOR = >,
|
||||
RESTRICT = scalarltsel,
|
||||
JOIN = scalarltjoinsel);
|
||||
|
||||
CREATE OPERATOR >(
|
||||
PROCEDURE = _varchar_ci_greater_than,
|
||||
LEFTARG = varchar_ci,
|
||||
RIGHTARG = varchar_ci,
|
||||
COMMUTATOR = <,
|
||||
NEGATOR = <=,
|
||||
RESTRICT = scalargtsel,
|
||||
JOIN = scalargtjoinsel);
|
||||
|
||||
CREATE OPERATOR >=(
|
||||
PROCEDURE = _varchar_ci_greater_equals,
|
||||
LEFTARG = varchar_ci,
|
||||
RIGHTARG = varchar_ci,
|
||||
COMMUTATOR = <=,
|
||||
NEGATOR = <,
|
||||
RESTRICT = scalargtsel,
|
||||
JOIN = scalargtjoinsel);
|
||||
|
||||
CREATE OPERATOR <>(
|
||||
PROCEDURE = _varchar_ci_not_equal,
|
||||
LEFTARG = varchar_ci,
|
||||
RIGHTARG = varchar_ci,
|
||||
COMMUTATOR = <>,
|
||||
NEGATOR = =,
|
||||
RESTRICT = neqsel,
|
||||
JOIN = neqjoinsel);
|
||||
|
||||
CREATE OPERATOR =(
|
||||
PROCEDURE = _varchar_ci_equal,
|
||||
LEFTARG = varchar_ci,
|
||||
RIGHTARG = varchar_ci,
|
||||
COMMUTATOR = =,
|
||||
NEGATOR = <>,
|
||||
RESTRICT = eqsel,
|
||||
JOIN = eqjoinsel,
|
||||
HASHES,
|
||||
MERGES,
|
||||
SORT1= <);
|
||||
|
||||
EOF;
|
||||
break;
|
||||
}
|
||||
|
||||
return '';
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -1,683 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
*
|
||||
* @package - Board3portal
|
||||
* @version $Id$
|
||||
* @copyright (c) kevin / saint ( http://www.board3.de/ ), (c) Ice, (c) nickvergessen ( http://mods.flying-bits.org/ ), (c) redbull254 ( http://www.digitalfotografie-foren.de )
|
||||
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
|
||||
*
|
||||
*/
|
||||
|
||||
define('IN_PHPBB', true);
|
||||
$phpbb_root_path = '../';
|
||||
$phpEx = substr(strrchr(__FILE__, '.'), 1);
|
||||
include($phpbb_root_path . 'common.'.$phpEx);
|
||||
include($phpbb_root_path . 'includes/acp/acp_modules.' . $phpEx);
|
||||
|
||||
// Start session management
|
||||
$user->session_begin();
|
||||
$auth->acl($user->data);
|
||||
$user->setup();
|
||||
$user->add_lang('mods/portal_install');
|
||||
$new_mod_version = '0.1.0';
|
||||
$page_title = 'Board3portal v' . $new_mod_version;
|
||||
|
||||
$mode = request_var('mode', 'else', true);
|
||||
function split_sql_file($sql, $delimiter)
|
||||
{
|
||||
$sql = str_replace("\r" , '', $sql);
|
||||
$data = preg_split('/' . preg_quote($delimiter, '/') . '$/m', $sql);
|
||||
|
||||
$data = array_map('trim', $data);
|
||||
|
||||
// The empty case
|
||||
$end_data = end($data);
|
||||
|
||||
if (empty($end_data))
|
||||
{
|
||||
unset($data[key($data)]);
|
||||
}
|
||||
|
||||
return $data;
|
||||
}
|
||||
// What sql_layer should we use?
|
||||
switch ($db->sql_layer)
|
||||
{
|
||||
case 'mysql':
|
||||
$db_schema = 'mysql_40';
|
||||
$delimiter = ';';
|
||||
break;
|
||||
|
||||
case 'mysql4':
|
||||
if (version_compare($db->mysql_version, '4.1.3', '>='))
|
||||
{
|
||||
$db_schema = 'mysql_41';
|
||||
}
|
||||
else
|
||||
{
|
||||
$db_schema = 'mysql_40';
|
||||
}
|
||||
$delimiter = ';';
|
||||
break;
|
||||
|
||||
case 'mysqli':
|
||||
$db_schema = 'mysql_41';
|
||||
$delimiter = ';';
|
||||
break;
|
||||
|
||||
case 'mssql':
|
||||
$db_schema = 'mssql';
|
||||
$delimiter = 'GO';
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$db_schema = 'postgres';
|
||||
$delimiter = ';';
|
||||
break;
|
||||
|
||||
case 'sqlite':
|
||||
$db_schema = 'sqlite';
|
||||
$delimiter = ';';
|
||||
break;
|
||||
|
||||
case 'firebird':
|
||||
$db_schema = 'firebird';
|
||||
$delimiter = ';;';
|
||||
break;
|
||||
|
||||
case 'oracle':
|
||||
$db_schema = 'oracle';
|
||||
$delimiter = '/';
|
||||
break;
|
||||
|
||||
default:
|
||||
trigger_error('Sorry, unsupportet Databases found.');
|
||||
break;
|
||||
}
|
||||
switch ($mode)
|
||||
{
|
||||
case 'install':
|
||||
$install = request_var('install', 0);
|
||||
$installed = false;
|
||||
if ($install == 1)
|
||||
{
|
||||
// Drop thes tables if existing
|
||||
if ($db->sql_layer != 'mssql')
|
||||
{
|
||||
$sql = 'DROP TABLE IF EXISTS ' . $table_prefix . 'portal_config';
|
||||
$result = $db->sql_query($sql);
|
||||
$db->sql_freeresult($result);
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql = 'if exists (select * from sysobjects where name = ' . $table_prefix . 'portal_config)
|
||||
drop table ' . $table_prefix . 'portal_config';
|
||||
$result = $db->sql_query($sql);
|
||||
$db->sql_freeresult($result);
|
||||
}
|
||||
// locate the schema files
|
||||
$dbms_schema = 'schemas/_' . $db_schema . '_schema.sql';
|
||||
$sql_query = @file_get_contents($dbms_schema);
|
||||
$sql_query = preg_replace('#phpbb_#i', $table_prefix, $sql_query);
|
||||
$sql_query = preg_replace('/\n{2,}/', "\n", preg_replace('/^#.*$/m', "\n", $sql_query));
|
||||
$sql_query = split_sql_file($sql_query, $delimiter);
|
||||
// make the new one's
|
||||
foreach ($sql_query as $sql)
|
||||
{
|
||||
if (!$db->sql_query($sql))
|
||||
{
|
||||
$error = $db->sql_error();
|
||||
$this->p_master->db_error($error['message'], $sql, __LINE__, __FILE__);
|
||||
}
|
||||
}
|
||||
unset($sql_query);
|
||||
|
||||
// Tadaa! Fill all data in ;-)
|
||||
$sql_query = file_get_contents('schemas/_schema_data.sql');
|
||||
switch ($db->sql_layer)
|
||||
{
|
||||
case 'mssql':
|
||||
case 'mssql_odbc':
|
||||
$sql_query = preg_replace('#\# MSSQL IDENTITY (phpbb_[a-z_]+) (ON|OFF) \##s', 'SET IDENTITY_INSERT \1 \2;', $sql_query);
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$sql_query = preg_replace('#\# POSTGRES (BEGIN|COMMIT) \##s', '\1; ', $sql_query);
|
||||
break;
|
||||
}
|
||||
$sql_query = preg_replace('#phpbb_#i', $table_prefix, $sql_query);
|
||||
$sql_query = preg_replace('/\n{2,}/', "\n", preg_replace('/^#.*$/m', "\n", $sql_query));
|
||||
$sql_query = split_sql_file($sql_query, ';');
|
||||
|
||||
foreach ($sql_query as $sql)
|
||||
{
|
||||
if (!$db->sql_query($sql))
|
||||
{
|
||||
$error = $db->sql_error();
|
||||
$this->p_master->db_error($error['message'], $sql, __LINE__, __FILE__);
|
||||
}
|
||||
}
|
||||
unset($sql_query);
|
||||
|
||||
// create the acp modules
|
||||
$modules = new acp_modules();
|
||||
$portal = array(
|
||||
'module_basename' => '',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => 31,
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_INFO',
|
||||
'module_mode' => '',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($portal);
|
||||
$general = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_GENERAL_INFO',
|
||||
'module_mode' => 'general',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($general);
|
||||
$news = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_NEWS_INFO',
|
||||
'module_mode' => 'news',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($news);
|
||||
$announcements = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_ANNOUNCE_INFO',
|
||||
'module_mode' => 'announcements',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($announcements);
|
||||
$welcome = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_WELCOME_INFO',
|
||||
'module_mode' => 'welcome',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($welcome);
|
||||
$recent = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_RECENT_INFO',
|
||||
'module_mode' => 'recent',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($recent);
|
||||
$wordgraph = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_WORDGRAPH_INFO',
|
||||
'module_mode' => 'wordgraph',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($wordgraph);
|
||||
$paypal = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_PAYPAL_INFO',
|
||||
'module_mode' => 'paypal',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($paypal);
|
||||
$attachments = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_ATTACHMENTS_NUMBER_INFO',
|
||||
'module_mode' => 'attachments',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($attachments);
|
||||
$members = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_MEMBERS_INFO',
|
||||
'module_mode' => 'members',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($members);
|
||||
$polls = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_POLLS_INFO',
|
||||
'module_mode' => 'polls',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($polls);
|
||||
$bots = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_BOTS_INFO',
|
||||
'module_mode' => 'bots',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($bots);
|
||||
$poster = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_MOST_POSTER_INFO',
|
||||
'module_mode' => 'poster',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($poster);
|
||||
$minicalendar = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_MINICALENDAR_INFO',
|
||||
'module_mode' => 'minicalendar',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($minicalendar);
|
||||
// clear cache and log what we did
|
||||
$cache->purge();
|
||||
add_log('admin', $page_title . ' installed');
|
||||
$installed = true;
|
||||
}
|
||||
break;
|
||||
case 'update110b':
|
||||
$update = request_var('update', 0);
|
||||
$version = request_var('v', '0', true);
|
||||
$updated = false;
|
||||
if ($update == 1)
|
||||
{
|
||||
// Drop thes tables if existing
|
||||
if ($db->sql_layer != 'mssql')
|
||||
{
|
||||
$sql = 'DROP TABLE IF EXISTS ' . $table_prefix . 'portal_config';
|
||||
$result = $db->sql_query($sql);
|
||||
$db->sql_freeresult($result);
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql = 'if exists (select * from sysobjects where name = ' . $table_prefix . 'portal_config)
|
||||
drop table ' . $table_prefix . 'portal_config';
|
||||
$result = $db->sql_query($sql);
|
||||
$db->sql_freeresult($result);
|
||||
}
|
||||
// locate the schema files
|
||||
$dbms_schema = 'schemas/_' . $db_schema . '_schema.sql';
|
||||
$sql_query = @file_get_contents($dbms_schema);
|
||||
$sql_query = preg_replace('#phpbb_#i', $table_prefix, $sql_query);
|
||||
$sql_query = preg_replace('/\n{2,}/', "\n", preg_replace('/^#.*$/m', "\n", $sql_query));
|
||||
$sql_query = split_sql_file($sql_query, $delimiter);
|
||||
// make the new one's
|
||||
foreach ($sql_query as $sql)
|
||||
{
|
||||
if (!$db->sql_query($sql))
|
||||
{
|
||||
$error = $db->sql_error();
|
||||
$this->p_master->db_error($error['message'], $sql, __LINE__, __FILE__);
|
||||
}
|
||||
}
|
||||
unset($sql_query);
|
||||
|
||||
// Tadaa! Fill all data in ;-)
|
||||
$sql_query = file_get_contents('schemas/_schema_data.sql');
|
||||
switch ($db->sql_layer)
|
||||
{
|
||||
case 'mssql':
|
||||
case 'mssql_odbc':
|
||||
$sql_query = preg_replace('#\# MSSQL IDENTITY (phpbb_[a-z_]+) (ON|OFF) \##s', 'SET IDENTITY_INSERT \1 \2;', $sql_query);
|
||||
break;
|
||||
|
||||
case 'postgres':
|
||||
$sql_query = preg_replace('#\# POSTGRES (BEGIN|COMMIT) \##s', '\1; ', $sql_query);
|
||||
break;
|
||||
}
|
||||
$sql_query = preg_replace('#phpbb_#i', $table_prefix, $sql_query);
|
||||
$sql_query = preg_replace('/\n{2,}/', "\n", preg_replace('/^#.*$/m', "\n", $sql_query));
|
||||
$sql_query = split_sql_file($sql_query, ';');
|
||||
|
||||
foreach ($sql_query as $sql)
|
||||
{
|
||||
if (!$db->sql_query($sql))
|
||||
{
|
||||
$error = $db->sql_error();
|
||||
$this->p_master->db_error($error['message'], $sql, __LINE__, __FILE__);
|
||||
}
|
||||
}
|
||||
unset($sql_query);
|
||||
|
||||
|
||||
//fill the table, but with the old settings
|
||||
$sql = 'SELECT * FROM ' . PORTAL_CONFIG_TABLE;
|
||||
$result = $db->sql_query($sql);
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
if (isset($config[$row['config_name']]))
|
||||
{
|
||||
$sql2 = 'UPDATE ' . PORTAL_CONFIG_TABLE . " SET config_value = '" . $config[$row['config_name']] . "' WHERE config_name = '" . $row['config_name'] . "' LIMIT 1";
|
||||
$db->sql_query($sql2);
|
||||
}
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
$sql = 'UPDATE ' . PORTAL_CONFIG_TABLE . " SET config_value = '" . $new_mod_version . "' WHERE config_name = 'portal_version' LIMIT 1";
|
||||
$db->sql_query($sql);
|
||||
|
||||
|
||||
//set back the config_table Oo
|
||||
$sql = "ALTER TABLE {$table_prefix}config CHANGE config_value config_value varchar(255) NOT NULL";
|
||||
$db->sql_query($sql);
|
||||
$sql = 'DELETE FROM ' . CONFIG_TABLE . " WHERE config_name = 'portal_welcome_intro'
|
||||
OR config_name = 'portal_max_online_friends'
|
||||
OR config_name = 'portal_max_most_poster'
|
||||
OR config_name = 'portal_max_last_member'
|
||||
OR config_name = 'portal_welcome'
|
||||
OR config_name = 'portal_links'
|
||||
OR config_name = 'portal_link_us'
|
||||
OR config_name = 'portal_clock'
|
||||
OR config_name = 'portal_random_member'
|
||||
OR config_name = 'portal_latest_members'
|
||||
OR config_name = 'portal_top_posters'
|
||||
OR config_name = 'portal_leaders'
|
||||
OR config_name = 'portal_advanced_stat'
|
||||
OR config_name = 'portal_version'
|
||||
OR config_name = 'portal_right_collumn_width'
|
||||
OR config_name = 'portal_left_collumn_width'
|
||||
OR config_name = 'portal_poll_topic'
|
||||
OR config_name = 'portal_poll_topic_id'
|
||||
OR config_name = 'portal_last_visited_bots_number'
|
||||
OR config_name = 'portal_load_last_visited_bots'
|
||||
OR config_name = 'portal_pay_acc'
|
||||
OR config_name = 'portal_pay_s_block'
|
||||
OR config_name = 'portal_pay_c_block'
|
||||
OR config_name = 'portal_recent'
|
||||
OR config_name = 'portal_recent_title_limit'
|
||||
OR config_name = 'portal_max_topics'
|
||||
OR config_name = 'portal_exclude_forums'
|
||||
OR config_name = 'portal_news_forum'
|
||||
OR config_name = 'portal_news_length'
|
||||
OR config_name = 'portal_number_of_news'
|
||||
OR config_name = 'portal_show_all_news'
|
||||
OR config_name = 'portal_news'
|
||||
OR config_name = 'portal_news_style'
|
||||
OR config_name = 'portal_announcements'
|
||||
OR config_name = 'portal_announcements_style'
|
||||
OR config_name = 'portal_number_of_announcements'
|
||||
OR config_name = 'portal_announcements_day'
|
||||
OR config_name = 'portal_announcements_length'
|
||||
OR config_name = 'portal_global_announcements_forum'
|
||||
OR config_name = 'portal_wordgraph_word_counts'
|
||||
OR config_name = 'portal_wordgraph_max_words'
|
||||
OR config_name = 'portal_wordgraph'
|
||||
OR config_name = 'portal_wordgraph_ratio'
|
||||
OR config_name = 'portal_minicalendar'
|
||||
OR config_name = 'portal_minicalendar_today_color'
|
||||
OR config_name = 'portal_minicalendar_day_link_color'
|
||||
OR config_name = 'portal_attachments'
|
||||
OR config_name = 'portal_attachments_number'";
|
||||
$db->sql_query($sql);
|
||||
|
||||
$sql = 'SELECT right_id, module_id FROM ' . MODULES_TABLE . "
|
||||
WHERE module_langname = 'ACP_PORTAL_GENERAL_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_NEWS_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_ANNOUNCE_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_WELCOME_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_RECENT_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_WORDGRAPH_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_PAYPAL_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_ATTACHMENTS_NUMBER_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_MEMBERS_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_POLLS_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_BOTS_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_MOST_POSTER_INFO'
|
||||
OR module_langname = 'ACP_PORTAL_MINICALENDAR_INFO'";
|
||||
$result = $db->sql_query($sql);
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
$sql = 'DELETE FROM ' . MODULES_TABLE . " WHERE module_id = '{$row['module_id']}'";
|
||||
$db->sql_query($sql);
|
||||
$sql = 'UPDATE ' . MODULES_TABLE . "
|
||||
SET left_id = left_id - 2
|
||||
WHERE module_class = 'acp'
|
||||
AND left_id > {$row['right_id']}";
|
||||
$db->sql_query($sql);
|
||||
|
||||
$sql = 'UPDATE ' . MODULES_TABLE . "
|
||||
SET right_id = right_id - 2
|
||||
WHERE module_class = 'acp'
|
||||
AND right_id > {$row['right_id']}";
|
||||
$db->sql_query($sql);
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
$sql = 'SELECT right_id, module_id FROM ' . MODULES_TABLE . "
|
||||
WHERE module_langname = 'ACP_PORTAL_INFO'";
|
||||
$result = $db->sql_query($sql);
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
$sql = 'DELETE FROM ' . MODULES_TABLE . " WHERE module_id = '{$row['module_id']}'";
|
||||
$db->sql_query($sql);
|
||||
$sql = 'UPDATE ' . MODULES_TABLE . "
|
||||
SET left_id = left_id - 2
|
||||
WHERE module_class = 'acp'
|
||||
AND left_id > {$row['right_id']}";
|
||||
$db->sql_query($sql);
|
||||
|
||||
$sql = 'UPDATE ' . MODULES_TABLE . "
|
||||
SET right_id = right_id - 2
|
||||
WHERE module_class = 'acp'
|
||||
AND right_id > {$row['right_id']}";
|
||||
$db->sql_query($sql);
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
|
||||
// create the acp modules
|
||||
$modules = new acp_modules();
|
||||
$portal = array(
|
||||
'module_basename' => '',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => 31,
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_INFO',
|
||||
'module_mode' => '',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($portal);
|
||||
$general = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_GENERAL_INFO',
|
||||
'module_mode' => 'general',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($general);
|
||||
$news = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_NEWS_INFO',
|
||||
'module_mode' => 'news',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($news);
|
||||
$announcements = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_ANNOUNCE_INFO',
|
||||
'module_mode' => 'announcements',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($announcements);
|
||||
$welcome = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_WELCOME_INFO',
|
||||
'module_mode' => 'welcome',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($welcome);
|
||||
$recent = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_RECENT_INFO',
|
||||
'module_mode' => 'recent',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($recent);
|
||||
$wordgraph = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_WORDGRAPH_INFO',
|
||||
'module_mode' => 'wordgraph',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($wordgraph);
|
||||
$paypal = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_PAYPAL_INFO',
|
||||
'module_mode' => 'paypal',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($paypal);
|
||||
$attachments = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_ATTACHMENTS_NUMBER_INFO',
|
||||
'module_mode' => 'attachments',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($attachments);
|
||||
$members = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_MEMBERS_INFO',
|
||||
'module_mode' => 'members',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($members);
|
||||
$polls = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_POLLS_INFO',
|
||||
'module_mode' => 'polls',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($polls);
|
||||
$bots = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_BOTS_INFO',
|
||||
'module_mode' => 'bots',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($bots);
|
||||
$poster = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_MOST_POSTER_INFO',
|
||||
'module_mode' => 'poster',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($poster);
|
||||
$minicalendar = array(
|
||||
'module_basename' => 'portal',
|
||||
'module_enabled' => 1,
|
||||
'module_display' => 1,
|
||||
'parent_id' => $portal['module_id'],
|
||||
'module_class' => 'acp',
|
||||
'module_langname' => 'ACP_PORTAL_MINICALENDAR_INFO',
|
||||
'module_mode' => 'minicalendar',
|
||||
'module_auth' => ''
|
||||
);
|
||||
$modules->update_module_data($minicalendar);
|
||||
|
||||
// clear cache and log what we did
|
||||
$cache->purge();
|
||||
add_log('admin', $page_title . ' updated');
|
||||
$updated = true;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
//we had a little cheater
|
||||
break;
|
||||
}
|
||||
|
||||
include($phpbb_root_path . 'install_portal/layout.'.$phpEx);
|
||||
?>
|
||||
@@ -1,155 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
*
|
||||
* @package - Board3portal
|
||||
* @version $Id$
|
||||
* @copyright (c) kevin / saint ( http://www.board3.de/ ), (c) Ice, (c) nickvergessen ( http://mods.flying-bits.org/ ), (c) redbull254 ( http://www.digitalfotografie-foren.de )
|
||||
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
|
||||
*
|
||||
*/
|
||||
|
||||
if (!defined('IN_PHPBB'))
|
||||
{
|
||||
exit;
|
||||
}
|
||||
|
||||
$activemenu = ' id="activemenu"';
|
||||
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">';
|
||||
echo '<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" xml:lang="en-gb" lang="en-gb"><head>';
|
||||
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';
|
||||
echo '<meta http-equiv="Content-Style-Type" content="text/css">';
|
||||
echo '<meta http-equiv="Content-Language" content="en-gb">';
|
||||
echo '<meta http-equiv="imagetoolbar" content="no"><title>' . $page_title . '</title>';
|
||||
echo '<link href="../adm/style/admin.css" rel="stylesheet" type="text/css" media="screen">';
|
||||
echo '</head>';
|
||||
echo '<body class="ltr">';
|
||||
echo '<div id="wrap">';
|
||||
echo ' <div id="page-header">';
|
||||
echo ' <h1>' . $page_title . '</h1>';
|
||||
echo ' <p><a href="' . $phpbb_root_path . '">' . $user->lang['INDEX'] . '</a></p>';
|
||||
echo ' <p id="skip"><a href="#acp">Skip to content</a></p>';
|
||||
echo ' </div>';
|
||||
echo ' <div id="page-body">';
|
||||
echo ' <div id="acp">';
|
||||
echo ' <div class="panel">';
|
||||
echo ' <span class="corners-top"><span></span></span>';
|
||||
echo ' <div id="content">';
|
||||
echo ' <div id="menu">';
|
||||
echo ' <ul>';
|
||||
echo ' <li' . (($mode == 'else') ? $activemenu : '') . '><a href="install.php"><span>' . $user->lang['INSTALLER_INTRO'] . '</span></a></li>';
|
||||
echo ' <li class="header">' . $user->lang['INSTALLER_INSTALL_MENU'] . '</li>';
|
||||
echo ' <li' . (($mode == 'install') ? $activemenu : '') . '><a href="install.php?mode=install"><span>' . sprintf($user->lang['INSTALLER_INSTALL_VERSION'], $new_mod_version) . '</span></a></li>';
|
||||
echo ' <li class="header">' . $user->lang['INSTALLER_UPDATE_MENU'] . '</li>';
|
||||
echo ' <li' . (($mode == 'update110b') ? $activemenu : '') . '><a href="install.php?mode=update110b&v=1.1.0b"><span>' . $user->lang['INSTALLER_UPDATE_VERSION'] . '1.1.0b - phpbb3portal</span></a></li>';
|
||||
echo ' </ul>';
|
||||
echo ' </div>';
|
||||
echo ' <div id="main">';
|
||||
echo '<a name="maincontent"></a>';
|
||||
if ($mode == 'install')
|
||||
{
|
||||
if ($install == 1)
|
||||
{
|
||||
if ($installed)
|
||||
{
|
||||
echo '<div class="successbox">';
|
||||
echo ' <h3>' . $user->lang['INFORMATION'] . '</h3>';
|
||||
echo ' <p>' . sprintf($user->lang['INSTALLER_INSTALL_SUCCESSFUL'], $new_mod_version) . '</p>';
|
||||
echo '</div>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="errorbox">';
|
||||
echo ' <h3>' . $user->lang['WARNING'] . '</h3>';
|
||||
echo ' <p>' . sprintf($user->lang['INSTALLER_INSTALL_UNSUCCESSFUL'], $new_mod_version) . '</p>';
|
||||
echo '</div>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<h1>' . $user->lang['INSTALLER_INSTALL_WELCOME'] . '</h1>';
|
||||
echo '<p>' . $user->lang['INSTALLER_INSTALL_WELCOME_NOTE'] . '</p>';
|
||||
echo '<form id="acp_board" method="post" action="install.php?mode=install">';
|
||||
echo ' <fieldset>';
|
||||
echo ' <legend>' . $user->lang['INSTALLER_INSTALL'] . '</legend>';
|
||||
echo ' <dl>';
|
||||
echo ' <dt><label for="install">v' . $new_mod_version . ':</label></dt>';
|
||||
echo ' <dd><label><input name="install" value="1" class="radio" type="radio" />' . $user->lang['YES'] . '</label><label><input name="install" value="0" checked="checked" class="radio" type="radio" />' . $user->lang['NO'] . '</label></dd>';
|
||||
echo ' </dl>';
|
||||
echo ' <p class="submit-buttons">';
|
||||
echo ' <input class="button1" id="submit" name="submit" value="Submit" type="submit" /> ';
|
||||
echo ' <input class="button2" id="reset" name="reset" value="Reset" type="reset" />';
|
||||
echo ' </p>';
|
||||
echo ' </fieldset>';
|
||||
echo '</form>';
|
||||
}
|
||||
}
|
||||
else if ($mode == 'update110b')
|
||||
{
|
||||
if ($update == 1)
|
||||
{
|
||||
if ($updated)
|
||||
{
|
||||
echo '<div class="successbox">';
|
||||
echo ' <h3>' . $user->lang['INFORMATION'] . '</h3>';
|
||||
echo ' <p>' . sprintf($user->lang['INSTALLER_UPDATE_SUCCESSFUL'], $version, $new_mod_version) . '</p>';
|
||||
echo '</div>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="errorbox">';
|
||||
echo ' <h3>' . $user->lang['WARNING'] . '</h3>';
|
||||
echo ' <p>' . sprintf($user->lang['INSTALLER_UPDATE_UNSUCCESSFUL'], $version, $new_mod_version) . '</p>';
|
||||
echo '</div>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<h1>' . $user->lang['INSTALLER_UPDATE_WELCOME'] . '</h1>';
|
||||
echo '<form id="acp_board" method="post" action="install.php?mode=' . $mode . '&v=' . $version . '">';
|
||||
echo ' <fieldset>';
|
||||
echo ' <legend>' . $user->lang['INSTALLER_UPDATE'] . '</legend>';
|
||||
echo ' <dl>';
|
||||
echo ' <dt><label for="update">' . sprintf($user->lang['INSTALLER_UPDATE_NOTE'], $version, $new_mod_version) . ':</label></dt>';
|
||||
echo ' <dd><label><input name="update" value="1" class="radio" type="radio" />' . $user->lang['YES'] . '</label><label><input name="update" value="0" checked="checked" class="radio" type="radio" />' . $user->lang['NO'] . '</label></dd>';
|
||||
echo ' </dl>';
|
||||
echo ' <p class="submit-buttons">';
|
||||
echo ' <input class="button1" id="submit" name="submit" value="Submit" type="submit" /> ';
|
||||
echo ' <input class="button2" id="reset" name="reset" value="Reset" type="reset" />';
|
||||
echo ' </p>';
|
||||
echo ' </fieldset>';
|
||||
echo '</form>';
|
||||
}
|
||||
}
|
||||
else if ($mode == 'else')
|
||||
{
|
||||
echo '<h1>' . $user->lang['INSTALLER_INTRO_WELCOME'] . '</h1>';
|
||||
echo '<p>' . $user->lang['INSTALLER_INTRO_WELCOME_NOTE'] . '</p>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="errorbox">';
|
||||
echo ' <h3>ERROR</h3>';
|
||||
echo ' <p>' . $user->lang['INSTALLER_NEEDS_FOUNDER'] . '</p>';
|
||||
echo '</div>';
|
||||
}
|
||||
echo ' </div>';
|
||||
echo ' </div>';
|
||||
echo ' <span class="corners-bottom"><span></span></span>';
|
||||
echo ' </div>';
|
||||
echo ' </div>';
|
||||
echo ' </div>';
|
||||
echo ' <!--';
|
||||
echo ' We request you retain the full copyright notice below including the link to www.phpbb.com.';
|
||||
echo ' This not only gives respect to the large amount of time given freely by the developers';
|
||||
echo ' but also helps build interest, traffic and use of phpBB. If you (honestly) cannot retain';
|
||||
echo ' the full copyright we ask you at least leave in place the "Powered by phpBB" line, with';
|
||||
echo ' "phpBB" linked to www.phpbb.com. If you refuse to include even this then support on our';
|
||||
echo ' forums may be affected.';
|
||||
echo ' The phpBB Group : 2006';
|
||||
echo ' // -->';
|
||||
echo '<div id="page-footer">Powered by phpBB © 2000, 2002, 2005, 2007 <a href="http://www.phpbb.com/">phpBB Group</a><br />Installer by <a href="http://mods.flying-bits.org/">nickvergessen</a></div>';
|
||||
echo '</div>';
|
||||
echo '</body>';
|
||||
echo '</html>';
|
||||
?>
|
||||
@@ -1,14 +0,0 @@
|
||||
#
|
||||
# $Id: $
|
||||
#
|
||||
|
||||
|
||||
# Table: 'phpbb_portal_config'
|
||||
CREATE TABLE phpbb_portal_config (
|
||||
config_name VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
|
||||
config_value VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL
|
||||
);;
|
||||
|
||||
ALTER TABLE phpbb_portal_config ADD PRIMARY KEY (config_name);;
|
||||
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
|
||||
$Id: $
|
||||
|
||||
*/
|
||||
|
||||
BEGIN TRANSACTION
|
||||
GO
|
||||
|
||||
/*
|
||||
Table: 'phpbb_portal_config'
|
||||
*/
|
||||
CREATE TABLE [phpbb_portal_config] (
|
||||
[config_name] [varchar] (255) DEFAULT ('') NOT NULL ,
|
||||
[config_value] [varchar] (255) DEFAULT ('') NOT NULL
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
ALTER TABLE [phpbb_portal_config] WITH NOCHECK ADD
|
||||
CONSTRAINT [PK_phpbb_portal_config] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[config_name]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
|
||||
|
||||
COMMIT
|
||||
GO
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id: $
|
||||
#
|
||||
|
||||
# Table: 'phpbb_portal_config'
|
||||
CREATE TABLE phpbb_portal_config (
|
||||
config_name varbinary(255) DEFAULT '' NOT NULL,
|
||||
config_value varbinary(255) DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (config_name)
|
||||
);
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# $Id: $
|
||||
#
|
||||
|
||||
# Table: 'phpbb_portal_config'
|
||||
CREATE TABLE phpbb_portal_config (
|
||||
config_name varchar(255) DEFAULT '' NOT NULL,
|
||||
config_value varchar(255) DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (config_name)
|
||||
) CHARACTER SET `utf8` COLLATE `utf8_bin`;
|
||||
|
||||
|
||||
@@ -1,90 +0,0 @@
|
||||
/*
|
||||
|
||||
$Id: $
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
|
||||
This first section is optional, however its probably the best method
|
||||
|
||||
of running phpBB on Oracle. If you already have a tablespace and user created
|
||||
|
||||
for phpBB you can leave this section commented out!
|
||||
|
||||
|
||||
|
||||
The first set of statements create a phpBB tablespace and a phpBB user,
|
||||
|
||||
make sure you change the password of the phpBB user before you run this script!!
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
CREATE TABLESPACE "PHPBB"
|
||||
|
||||
LOGGING
|
||||
|
||||
DATAFILE 'E:\ORACLE\ORADATA\LOCAL\PHPBB.ora'
|
||||
|
||||
SIZE 10M
|
||||
|
||||
AUTOEXTEND ON NEXT 10M
|
||||
|
||||
MAXSIZE 100M;
|
||||
|
||||
|
||||
|
||||
CREATE USER "PHPBB"
|
||||
|
||||
PROFILE "DEFAULT"
|
||||
|
||||
IDENTIFIED BY "phpbb_password"
|
||||
|
||||
DEFAULT TABLESPACE "PHPBB"
|
||||
|
||||
QUOTA UNLIMITED ON "PHPBB"
|
||||
|
||||
ACCOUNT UNLOCK;
|
||||
|
||||
|
||||
|
||||
GRANT ANALYZE ANY TO "PHPBB";
|
||||
|
||||
GRANT CREATE SEQUENCE TO "PHPBB";
|
||||
|
||||
GRANT CREATE SESSION TO "PHPBB";
|
||||
|
||||
GRANT CREATE TABLE TO "PHPBB";
|
||||
|
||||
GRANT CREATE TRIGGER TO "PHPBB";
|
||||
|
||||
GRANT CREATE VIEW TO "PHPBB";
|
||||
|
||||
GRANT "CONNECT" TO "PHPBB";
|
||||
|
||||
|
||||
|
||||
COMMIT;
|
||||
|
||||
DISCONNECT;
|
||||
|
||||
|
||||
|
||||
CONNECT phpbb/phpbb_password;
|
||||
|
||||
*/
|
||||
/*
|
||||
Table: 'phpbb_portal_config'
|
||||
*/
|
||||
CREATE TABLE phpbb_portal_config (
|
||||
config_name varchar2(255) DEFAULT '' ,
|
||||
config_value varchar2(255) DEFAULT '' ,
|
||||
CONSTRAINT pk_phpbb_portal_config PRIMARY KEY (config_name)
|
||||
)
|
||||
/
|
||||
|
||||
|
||||
@@ -1,169 +0,0 @@
|
||||
/*
|
||||
|
||||
$Id: $
|
||||
|
||||
*/
|
||||
|
||||
BEGIN;
|
||||
|
||||
/*
|
||||
|
||||
Domain definition
|
||||
|
||||
*/
|
||||
|
||||
CREATE DOMAIN varchar_ci AS varchar(255) NOT NULL DEFAULT ''::character varying;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
Operation Functions
|
||||
|
||||
*/
|
||||
|
||||
CREATE FUNCTION _varchar_ci_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) = LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
CREATE FUNCTION _varchar_ci_not_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) != LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
CREATE FUNCTION _varchar_ci_less_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) < LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
CREATE FUNCTION _varchar_ci_less_equal(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) <= LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
CREATE FUNCTION _varchar_ci_greater_than(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) > LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
CREATE FUNCTION _varchar_ci_greater_equals(varchar_ci, varchar_ci) RETURNS boolean AS 'SELECT LOWER($1) >= LOWER($2)' LANGUAGE SQL STRICT;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
Operators
|
||||
|
||||
*/
|
||||
|
||||
CREATE OPERATOR <(
|
||||
|
||||
PROCEDURE = _varchar_ci_less_than,
|
||||
|
||||
LEFTARG = varchar_ci,
|
||||
|
||||
RIGHTARG = varchar_ci,
|
||||
|
||||
COMMUTATOR = >,
|
||||
|
||||
NEGATOR = >=,
|
||||
|
||||
RESTRICT = scalarltsel,
|
||||
|
||||
JOIN = scalarltjoinsel);
|
||||
|
||||
|
||||
|
||||
CREATE OPERATOR <=(
|
||||
|
||||
PROCEDURE = _varchar_ci_less_equal,
|
||||
|
||||
LEFTARG = varchar_ci,
|
||||
|
||||
RIGHTARG = varchar_ci,
|
||||
|
||||
COMMUTATOR = >=,
|
||||
|
||||
NEGATOR = >,
|
||||
|
||||
RESTRICT = scalarltsel,
|
||||
|
||||
JOIN = scalarltjoinsel);
|
||||
|
||||
|
||||
|
||||
CREATE OPERATOR >(
|
||||
|
||||
PROCEDURE = _varchar_ci_greater_than,
|
||||
|
||||
LEFTARG = varchar_ci,
|
||||
|
||||
RIGHTARG = varchar_ci,
|
||||
|
||||
COMMUTATOR = <,
|
||||
|
||||
NEGATOR = <=,
|
||||
|
||||
RESTRICT = scalargtsel,
|
||||
|
||||
JOIN = scalargtjoinsel);
|
||||
|
||||
|
||||
|
||||
CREATE OPERATOR >=(
|
||||
|
||||
PROCEDURE = _varchar_ci_greater_equals,
|
||||
|
||||
LEFTARG = varchar_ci,
|
||||
|
||||
RIGHTARG = varchar_ci,
|
||||
|
||||
COMMUTATOR = <=,
|
||||
|
||||
NEGATOR = <,
|
||||
|
||||
RESTRICT = scalargtsel,
|
||||
|
||||
JOIN = scalargtjoinsel);
|
||||
|
||||
|
||||
|
||||
CREATE OPERATOR <>(
|
||||
|
||||
PROCEDURE = _varchar_ci_not_equal,
|
||||
|
||||
LEFTARG = varchar_ci,
|
||||
|
||||
RIGHTARG = varchar_ci,
|
||||
|
||||
COMMUTATOR = <>,
|
||||
|
||||
NEGATOR = =,
|
||||
|
||||
RESTRICT = neqsel,
|
||||
|
||||
JOIN = neqjoinsel);
|
||||
|
||||
|
||||
|
||||
CREATE OPERATOR =(
|
||||
|
||||
PROCEDURE = _varchar_ci_equal,
|
||||
|
||||
LEFTARG = varchar_ci,
|
||||
|
||||
RIGHTARG = varchar_ci,
|
||||
|
||||
COMMUTATOR = =,
|
||||
|
||||
NEGATOR = <>,
|
||||
|
||||
RESTRICT = eqsel,
|
||||
|
||||
JOIN = eqjoinsel,
|
||||
|
||||
HASHES,
|
||||
|
||||
MERGES,
|
||||
|
||||
SORT1= <);
|
||||
|
||||
|
||||
/*
|
||||
Table: 'phpbb_portal_config'
|
||||
*/
|
||||
CREATE TABLE phpbb_portal_config (
|
||||
config_name varchar(255) DEFAULT '' NOT NULL,
|
||||
config_value varchar(255) DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (config_name)
|
||||
);
|
||||
|
||||
|
||||
|
||||
COMMIT;
|
||||
@@ -1,68 +0,0 @@
|
||||
#
|
||||
# $Id: schema_data.sql,v 1.257 2007/09/20 21:19:00 stoffel04 Exp $
|
||||
#
|
||||
|
||||
# POSTGRES BEGIN #
|
||||
|
||||
# -- Config
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_welcome_intro', 'Welcome to my community!');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_max_online_friends', '8');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_max_most_poster', '8');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_max_last_member', '8');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_welcome', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_links', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_link_us', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_clock', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_random_member', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_latest_members', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_top_posters', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_leaders', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_advanced_stat', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_version', '0.1.0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_welcome_guest', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_birthdays', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_search', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_friends', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_whois_online', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_change_style', '0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_main_menu', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_user_menu', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_right_collumn_width', '180');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_left_collumn_width', '180');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_poll_topic', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_poll_topic_id', '2');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_last_visited_bots_number', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_load_last_visited_bots', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_pay_acc', 'your@paypal.com');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_pay_s_block', '0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_pay_c_block', '0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_recent', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_recent_title_limit', '100');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_max_topics', '10');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_exclude_forums', '');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_news_forum', '2');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_news_length', '250');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_number_of_news', '5');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_show_all_news', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_news', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_news_style', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_announcements', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_announcements_style', '0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_number_of_announcements', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_announcements_day', '0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_announcements_length', '200');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_global_announcements_forum', '2');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_wordgraph_word_counts', '0');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_wordgraph_max_words', '80');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_wordgraph', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_wordgraph_ratio', '18');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_minicalendar', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_minicalendar_today_color', '//FF0000');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_minicalendar_day_link_color', '//006F00');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_attachments', '1');
|
||||
INSERT INTO phpbb_portal_config (config_name, config_value) VALUES ('portal_attachments_number', '8');
|
||||
|
||||
|
||||
|
||||
# POSTGRES COMMIT #
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
#
|
||||
# $Id: $
|
||||
#
|
||||
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
# Table: 'phpbb_portal_config'
|
||||
CREATE TABLE phpbb_portal_config (
|
||||
config_name varchar(255) NOT NULL DEFAULT '',
|
||||
config_value varchar(255) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (config_name)
|
||||
);
|
||||
|
||||
|
||||
|
||||
COMMIT;
|
||||
Reference in New Issue
Block a user