aboutsummaryrefslogtreecommitdiffstats
path: root/install.php
diff options
context:
space:
mode:
Diffstat (limited to 'install.php')
-rw-r--r--install.php239
1 files changed, 129 insertions, 110 deletions
diff --git a/install.php b/install.php
index 55f8f3fec..bff9ddce8 100644
--- a/install.php
+++ b/install.php
@@ -32,56 +32,75 @@ define('PHPWG_ROOT_PATH','./');
function guess_lang()
{
return 'en_UK.iso-8859-1';
- global $_SERVER;
- $languages = array();
- $i = 0;
- if ( $opendir = opendir ( PHPWG_ROOT_PATH.'language/' ) )
- {
- while ( $file = readdir ( $opendir ) )
- {
- if ( is_dir ( PHPWG_ROOT_PATH.'language/'.$file )&& !substr_count($file,'.'))
- {
- $languages[$i++] =$file;
- }
- }
- }
- if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
- {
- $accept_lang_ary = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
- for ($i = 0; $i < sizeof($accept_lang_ary); $i++)
- {
- for ($j=0; $j<sizeof($languages); $j++)
- {
- if (preg_match('#' . substr($languages[$j],0,2) . '#i', substr(trim($accept_lang_ary[$i]),0,2)))
- {
- if (file_exists(PHPWG_ROOT_PATH . 'language/' . $languages[$j].'/install.lang.php'))
- {
- return $languages[$j];
- }
- }
- }
- }
- }
- return 'en_EN';
+// $languages = array();
+// $i = 0;
+// if ($opendir = opendir(PHPWG_ROOT_PATH.'language/'))
+// {
+// while ( $file = readdir ( $opendir ) )
+// {
+// if ( is_dir ( PHPWG_ROOT_PATH.'language/'.$file )&& !substr_count($file,'.'))
+// {
+// $languages[$i++] =$file;
+// }
+// }
+// }
+
+// if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
+// {
+// $accept_lang_ary = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
+// for ($i = 0; $i < sizeof($accept_lang_ary); $i++)
+// {
+// for ($j=0; $j<sizeof($languages); $j++)
+// {
+// if (preg_match('#' . substr($languages[$j],0,2) . '#i', substr(trim($accept_lang_ary[$i]),0,2)))
+// {
+// if (file_exists(PHPWG_ROOT_PATH . 'language/' . $languages[$j].'/install.lang.php'))
+// {
+// return $languages[$j];
+// }
+// }
+// }
+// }
+// }
+// return 'en_EN';
}
-function execute_sqlfile( $filepath, $replaced, $replacing )
+/**
+ * loads an sql file and executes all queries
+ *
+ * Before executing a query, $replaced is... replaced by $replacing. This is
+ * useful when the SQL file contains generic words. Drop table queries are
+ * not executed.
+ *
+ * @param string filepath
+ * @param string replaced
+ * @param string replacing
+ * @return void
+ */
+function execute_sqlfile($filepath, $replaced, $replacing)
{
- $sql_lines = file( $filepath );
+ $sql_lines = file($filepath);
$query = '';
- foreach ( $sql_lines as $sql_line ) {
- $sql_line = trim( $sql_line );
- if ( preg_match( '/(^--|^$)/', $sql_line ) ) continue;
+ foreach ($sql_lines as $sql_line)
+ {
+ $sql_line = trim($sql_line);
+ if (preg_match('/(^--|^$)/', $sql_line))
+ {
+ continue;
+ }
$query.= ' '.$sql_line;
// if we reached the end of query, we execute it and reinitialize the
// variable "query"
- if ( preg_match( '/;$/', $sql_line ) )
+ if (preg_match('/;$/', $sql_line))
{
- $query = trim( $query );
- $query = str_replace( $replaced, $replacing, $query );
+ $query = trim($query);
+ $query = str_replace($replaced, $replacing, $query);
// we don't execute "DROP TABLE" queries
- if ( !preg_match( '/^DROP TABLE/i', $query ) ) mysql_query( $query );
+ if (!preg_match('/^DROP TABLE/i', $query))
+ {
+ mysql_query($query);
+ }
$query = '';
}
}
@@ -137,24 +156,6 @@ if( !get_magic_quotes_gpc() )
//----------------------------------------------------- variable initialization
$install_style = 'default';
-$release_version = '1.4';
-if ( isset( $_POST['language'] ))
-{
- $language = strip_tags($_POST['language']);
-}
-else
-{
- $language = guess_lang();
-}
-
-if ( !file_exists(@realpath(PHPWG_ROOT_PATH . 'language/' . $language . '/install.lang.php')) )
-{
- $language = 'en_UK.iso-8859-1';
-}
-
-include( './language/'.$language.'/common.lang.php' );
-include( './language/'.$language.'/admin.lang.php' );
-include( './language/'.$language.'/install.lang.php' );
// Obtain various vars
$dbhost = (!empty($_POST['dbhost'])) ? $_POST['dbhost'] : 'localhost';
@@ -162,7 +163,7 @@ $dbuser = (!empty($_POST['dbuser'])) ? $_POST['dbuser'] : '';
$dbpasswd = (!empty($_POST['dbpasswd'])) ? $_POST['dbpasswd'] : '';
$dbname = (!empty($_POST['dbname'])) ? $_POST['dbname'] : '';
-$table_prefix = (!empty($_POST['prefix'])) ? $_POST['prefix'] : 'phpwg_';
+$table_prefix = (!empty($_POST['prefix'])) ? $_POST['prefix'] : 'phpwebgallery_';
$admin_name = (!empty($_POST['admin_name'])) ? $_POST['admin_name'] : '';
$admin_pass1 = (!empty($_POST['admin_pass1'])) ? $_POST['admin_pass1'] : '';
@@ -176,23 +177,40 @@ $errors = array();
$config_file = PHPWG_ROOT_PATH.'include/mysql.inc.php';
if (@file_exists($config_file))
{
- include($config_file);
-}
-
-// Is phpBB already installed? Yes? Redirect to the index
-if (defined("PHPWG_INSTALLED"))
-{
- die( 'PhpWebGallery is already installed' );
+ include($config_file);
+ // Is PhpWebGallery already installed ?
+ if (defined("PHPWG_INSTALLED"))
+ {
+ die('PhpWebGallery is already installed');
+ }
}
include(PHPWG_ROOT_PATH . 'include/constants.php');
include(PHPWG_ROOT_PATH . 'include/functions.inc.php');
include(PHPWG_ROOT_PATH . 'include/template.php');
+
+if ( isset( $_POST['language'] ))
+{
+ $language = strip_tags($_POST['language']);
+}
+else
+{
+ $language = guess_lang();
+}
+
+if ( !file_exists(@realpath(PHPWG_ROOT_PATH . 'language/' . $language . '/install.lang.php')) )
+{
+ $language = 'en_UK.iso-8859-1';
+}
+
+include( './language/'.$language.'/common.lang.php' );
+include( './language/'.$language.'/admin.lang.php' );
+include( './language/'.$language.'/install.lang.php' );
//----------------------------------------------------- template initialization
$template=setup_style($install_style);
$template->set_filenames( array('install'=>'install.tpl') );
$step = 1;
-//----------------------------------------------------- form analyze
+//---------------------------------------------------------------- form analyze
if ( isset( $_POST['install'] ))
{
if ( @mysql_connect( $_POST['dbhost'],
@@ -297,50 +315,51 @@ if ( isset( $_POST['install'] ))
}
}
-$template->assign_vars(array(
- 'RELEASE'=>$release_version,
-
- 'L_BASE_TITLE'=>$lang['Initial_config'],
- 'L_LANG_TITLE'=>$lang['Default_lang'],
- 'L_DB_TITLE'=>$lang['step1_title'],
- 'L_DB_HOST'=>$lang['step1_host'],
- 'L_DB_HOST_INFO'=>$lang['step1_host_info'],
- 'L_DB_USER'=>$lang['step1_user'],
- 'L_DB_USER_INFO'=>$lang['step1_user_info'],
- 'L_DB_PASS'=>$lang['step1_pass'],
- 'L_DB_PASS_INFO'=>$lang['step1_pass_info'],
- 'L_DB_NAME'=>$lang['step1_database'],
- 'L_DB_NAME_INFO'=>$lang['step1_database_info'],
- 'L_DB_PREFIX'=>$lang['step1_prefix'],
- 'L_DB_PREFIX_INFO'=>$lang['step1_prefix_info'],
- 'L_ADMIN_TITLE'=>$lang['step2_title'],
- 'L_ADMIN'=>$lang['install_webmaster'],
- 'L_ADMIN_INFO'=>$lang['install_webmaster_info'],
- 'L_ADMIN_PASSWORD'=>$lang['step2_pwd'],
- 'L_ADMIN_PASSWORD_INFO'=>$lang['step2_pwd_info'],
- 'L_ADMIN_CONFIRM_PASSWORD'=>$lang['step2_pwd_conf'],
- 'L_ADMIN_CONFIRM_PASSWORD_INFO'=>$lang['step2_pwd_conf_info'],
- 'L_ADMIN_EMAIL'=>$lang['conf_general_mail_webmaster'],
- 'L_ADMIN_EMAIL_INFO'=>$lang['conf_general_mail_webmaster_info'],
- 'L_SUBMIT'=>$lang['Start_Install'],
- 'L_HELP'=>$lang['install_help'],
- 'L_ERR_COPY'=>$lang['step1_err_copy'],
- 'L_END_TITLE'=>$lang['install_end_title'],
- 'L_END_MESSAGE'=>$lang['install_end_message'],
+$template->assign_vars(
+ array(
+ 'RELEASE'=>PHPWG_VERSION,
- 'F_ACTION'=>add_session_id( 'install.php' ),
- 'F_DB_HOST'=>$dbhost,
- 'F_DB_USER'=>$dbuser,
- 'F_DB_NAME'=>$dbname,
- 'F_DB_PREFIX'=>$table_prefix,
- 'F_ADMIN'=>$admin_name,
- 'F_ADMIN_EMAIL'=>$admin_mail,
- 'F_LANG_SELECT'=>language_select($language),
-
- 'T_CONTENT_ENCODING' => $lang_info['charset']
- ));
-
-//-------------------------------------------------------- errors & infos display
+ 'L_BASE_TITLE'=>$lang['Initial_config'],
+ 'L_LANG_TITLE'=>$lang['Default_lang'],
+ 'L_DB_TITLE'=>$lang['step1_title'],
+ 'L_DB_HOST'=>$lang['step1_host'],
+ 'L_DB_HOST_INFO'=>$lang['step1_host_info'],
+ 'L_DB_USER'=>$lang['step1_user'],
+ 'L_DB_USER_INFO'=>$lang['step1_user_info'],
+ 'L_DB_PASS'=>$lang['step1_pass'],
+ 'L_DB_PASS_INFO'=>$lang['step1_pass_info'],
+ 'L_DB_NAME'=>$lang['step1_database'],
+ 'L_DB_NAME_INFO'=>$lang['step1_database_info'],
+ 'L_DB_PREFIX'=>$lang['step1_prefix'],
+ 'L_DB_PREFIX_INFO'=>$lang['step1_prefix_info'],
+ 'L_ADMIN_TITLE'=>$lang['step2_title'],
+ 'L_ADMIN'=>$lang['install_webmaster'],
+ 'L_ADMIN_INFO'=>$lang['install_webmaster_info'],
+ 'L_ADMIN_PASSWORD'=>$lang['step2_pwd'],
+ 'L_ADMIN_PASSWORD_INFO'=>$lang['step2_pwd_info'],
+ 'L_ADMIN_CONFIRM_PASSWORD'=>$lang['step2_pwd_conf'],
+ 'L_ADMIN_CONFIRM_PASSWORD_INFO'=>$lang['step2_pwd_conf_info'],
+ 'L_ADMIN_EMAIL'=>$lang['conf_mail_webmaster'],
+ 'L_ADMIN_EMAIL_INFO'=>$lang['conf_mail_webmaster_info'],
+ 'L_SUBMIT'=>$lang['Start_Install'],
+ 'L_HELP'=>$lang['install_help'],
+ 'L_ERR_COPY'=>$lang['step1_err_copy'],
+ 'L_END_TITLE'=>$lang['install_end_title'],
+ 'L_END_MESSAGE'=>$lang['install_end_message'],
+
+ 'F_ACTION'=>add_session_id( 'install.php' ),
+ 'F_DB_HOST'=>$dbhost,
+ 'F_DB_USER'=>$dbuser,
+ 'F_DB_NAME'=>$dbname,
+ 'F_DB_PREFIX'=>$table_prefix,
+ 'F_ADMIN'=>$admin_name,
+ 'F_ADMIN_EMAIL'=>$admin_mail,
+ 'F_LANG_SELECT'=>language_select($language),
+
+ 'T_CONTENT_ENCODING' => $lang_info['charset']
+ ));
+
+//------------------------------------------------------ errors & infos display
if ( sizeof( $errors ) != 0 )
{
$template->assign_block_vars('errors',array());