install.php
author Dan
Sat, 10 Nov 2007 20:33:51 -0500
changeset 252 96b72228bda0
parent 251 275c70f80137
child 254 2b48ca9ce4d3
permissions -rw-r--r--
Installer should now be fully localized, yay!
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     1
<?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     2
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     3
/*
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     4
 * Enano - an open-source CMS capable of wiki functions, Drupal-like sidebar blocks, and everything in between
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     5
 * Version 1.1.1
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     6
 * Copyright (C) 2006-2007 Dan Fuhry
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     7
 * install.php - handles everything related to installation and initial configuration
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     8
 *
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
     9
 * This program is Free Software; you can redistribute and/or modify it under the terms of the GNU General Public License
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    10
 * as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    11
 *
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    12
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    13
 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    14
 */
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    15
 
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    16
@include('config.php');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    17
if( ( defined('ENANO_INSTALLED') || defined('MIDGET_INSTALLED') ) && ((isset($_GET['mode']) && ($_GET['mode']!='finish' && $_GET['mode']!='css')) || !isset($_GET['mode'])))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    18
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    19
  $_GET['title'] = 'Enano:Installation_locked';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    20
  require('includes/common.php');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    21
  die_friendly('Installation locked', '<p>The Enano installer has found a Enano installation in this directory. You MUST delete config.php if you want to re-install Enano.</p><p>If you wish to upgrade an older Enano installation to this version, please use the <a href="upgrade.php">upgrade script</a>.</p>');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    22
  exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    23
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    24
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    25
define('IN_ENANO_INSTALL', 'true');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    26
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    27
define('ENANO_VERSION', '1.1.1');
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
    28
define('ENANO_CODE_NAME', 'Germination');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    29
// In beta versions, define ENANO_BETA_VERSION here
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    30
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
    31
// This is required to make installation work right
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
    32
define("ENANO_ALLOW_LOAD_NOLANG", 1);
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
    33
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    34
if(!defined('scriptPath')) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    35
  $sp = dirname($_SERVER['REQUEST_URI']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    36
  if($sp == '/' || $sp == '\\') $sp = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    37
  define('scriptPath', $sp);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    38
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    39
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    40
if(!defined('contentPath')) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    41
  $sp = dirname($_SERVER['REQUEST_URI']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    42
  if($sp == '/' || $sp == '\\') $sp = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    43
  define('contentPath', $sp);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    44
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    45
global $_starttime, $this_page, $sideinfo;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    46
$_starttime = microtime(true);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    47
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    48
// Determine directory (special case for development servers)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    49
if ( strpos(__FILE__, '/repo/') && file_exists('.enanodev') )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    50
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    51
  $filename = str_replace('/repo/', '/', __FILE__);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    52
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    53
else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    54
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    55
  $filename = __FILE__;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    56
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    57
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    58
define('ENANO_ROOT', dirname($filename));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    59
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    60
function is_page($p)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    61
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    62
  return true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    63
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    64
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    65
require('includes/wikiformat.php');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    66
require('includes/constants.php');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    67
require('includes/rijndael.php');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    68
require('includes/functions.php');
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
    69
require('includes/dbal.php');
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
    70
require('includes/lang.php');
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
    71
require('includes/json.php');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    72
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
    73
strip_magic_quotes_gpc();
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    74
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    75
//
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    76
// INSTALLER LIBRARY
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    77
//
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    78
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
    79
$neutral_color = 'C';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
    80
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    81
function run_installer_stage($stage_id, $stage_name, $function, $failure_explanation, $allow_skip = true)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    82
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    83
  static $resumed = false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    84
  static $resume_stack = array();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    85
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    86
  if ( empty($resume_stack) && isset($_POST['resume_stack']) && preg_match('/[a-z_]+((\|[a-z_]+)+)/', $_POST['resume_stack']) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    87
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    88
    $resume_stack = explode('|', $_POST['resume_stack']);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    89
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    90
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    91
  $already_run = false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    92
  if ( in_array($stage_id, $resume_stack) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    93
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    94
    $already_run = true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    95
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    96
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    97
  if ( !$resumed )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    98
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
    99
    if ( !isset($_GET['stage']) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   100
      $resumed = true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   101
    if ( isset($_GET['stage']) && $_GET['stage'] == $stage_id )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   102
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   103
      $resumed = true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   104
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   105
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   106
  if ( !$resumed && $allow_skip )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   107
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   108
    echo_stage_success($stage_id, "[dbg: skipped] $stage_name");
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   109
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   110
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   111
  if ( !function_exists($function) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   112
    die('libenanoinstall: CRITICAL: function "' . $function . '" for ' . $stage_id . ' doesn\'t exist');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   113
  $result = @call_user_func($function, false, $already_run);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   114
  if ( $result )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   115
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   116
    echo_stage_success($stage_id, $stage_name);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   117
    $resume_stack[] = $stage_id;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   118
    return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   119
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   120
  else
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   121
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   122
    echo_stage_failure($stage_id, $stage_name, $failure_explanation, $resume_stack);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   123
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   124
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   125
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   126
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   127
function start_install_table()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   128
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   129
  echo '<table border="0" cellspacing="0" cellpadding="0">' . "\n";
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   130
  ob_start();
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   131
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   132
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   133
function close_install_table()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   134
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   135
  echo '</table>' . "\n\n";
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   136
  ob_end_flush();
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   137
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   138
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   139
function echo_stage_success($stage_id, $stage_name)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   140
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   141
  global $neutral_color;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   142
  $neutral_color = ( $neutral_color == 'A' ) ? 'C' : 'A';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   143
  echo '<tr><td style="width: 500px; background-color: #' . "{$neutral_color}{$neutral_color}FF{$neutral_color}{$neutral_color}" . '; padding: 0 5px;">' . htmlspecialchars($stage_name) . '</td><td style="padding: 0 5px;"><img alt="Done" src="images/good.gif" /></td></tr>' . "\n";
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   144
  ob_flush();
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   145
  flush();
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   146
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   147
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   148
function echo_stage_failure($stage_id, $stage_name, $failure_explanation, $resume_stack)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   149
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   150
  global $neutral_color;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   151
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   152
  $neutral_color = ( $neutral_color == 'A' ) ? 'C' : 'A';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   153
  echo '<tr><td style="width: 500px; background-color: #' . "FF{$neutral_color}{$neutral_color}{$neutral_color}{$neutral_color}" . '; padding: 0 5px;">' . htmlspecialchars($stage_name) . '</td><td style="padding: 0 5px;"><img alt="Failed" src="images/bad.gif" /></td></tr>' . "\n";
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   154
  ob_flush();
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   155
  flush();
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   156
  close_install_table();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   157
  $post_data = '';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   158
  $mysql_error = mysql_error();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   159
  foreach ( $_POST as $key => $value )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   160
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   161
    $value = htmlspecialchars($value);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   162
    $key = htmlspecialchars($key);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   163
    $post_data .= "          <input type=\"hidden\" name=\"$key\" value=\"$value\" />\n";
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   164
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   165
  echo '<form action="install.php?mode=install&amp;stage=' . $stage_id . '" method="post">
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   166
          ' . $post_data . '
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   167
          <input type="hidden" name="resume_stack" value="' . htmlspecialchars(implode('|', $resume_stack)) . '" />
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   168
          <h3>Enano installation failed.</h3>
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   169
           <p>' . $failure_explanation . '</p>
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   170
           ' . ( !empty($mysql_error) ? "<p>The error returned from MySQL was: $mysql_error</p>" : '' ) . '
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   171
           <p>When you have corrected the error, click the button below to attempt to continue the installation.</p>
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   172
           <p style="text-align: center;"><input type="submit" value="Retry installation" /></p>
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   173
        </form>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   174
  global $template, $template_bak;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   175
  if ( is_object($template_bak) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   176
    $template_bak->footer();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   177
  else
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   178
    $template->footer();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   179
  exit;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   180
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   181
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   182
//
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   183
// INSTALLER STAGES
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   184
//
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   185
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   186
function stg_mysql_connect($act_get = false)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   187
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   188
  static $conn = false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   189
  if ( $act_get )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   190
    return $conn;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   191
  
239
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   192
  $db_user =& $_POST['db_user'];
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   193
  $db_pass =& $_POST['db_pass'];
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   194
  $db_name =& $_POST['db_name'];
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   195
  
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   196
  if ( !preg_match('/^[a-z0-9_-]+$/', $db_name) )
239
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   197
  {
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   198
    $db_name = htmlspecialchars($db_name);
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   199
    die("<p>SECURITY: malformed database name \"$db_name\"</p>");
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   200
  }
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   201
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   202
  // First, try to connect using the normal credentials
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   203
  $conn = @mysql_connect($_POST['db_host'], $_POST['db_user'], $_POST['db_pass']);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   204
  if ( !$conn )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   205
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   206
    // Connection failed. Do we have the root username and password?
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   207
    if ( !empty($_POST['db_root_user']) && !empty($_POST['db_root_pass']) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   208
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   209
      $conn_root = @mysql_connect($_POST['db_host'], $_POST['db_root_user'], $_POST['db_root_pass']);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   210
      if ( !$conn_root )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   211
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   212
        // Couldn't connect using either set of credentials. Bail out.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   213
        return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   214
      }
239
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   215
      unset($db_user, $db_pass);
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   216
      $db_user = mysql_real_escape_string($_POST['db_user']);
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   217
      $db_pass = mysql_real_escape_string($_POST['db_pass']);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   218
      // Create the user account
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   219
      $q = @mysql_query("GRANT ALL PRIVILEGES ON test.* TO '{$db_user}'@'localhost' IDENTIFIED BY '$db_pass' WITH GRANT OPTION;", $conn_root);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   220
      if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   221
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   222
        return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   223
      }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   224
      // Revoke privileges from test, we don't need them
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   225
      $q = @mysql_query("REVOKE ALL PRIVILEGES ON test.* FROM '{$db_user}'@'localhost';", $conn_root);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   226
      if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   227
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   228
        return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   229
      }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   230
      if ( $_POST['db_host'] != 'localhost' && $_POST['db_host'] != '127.0.0.1' && $_POST['db_host'] != '::1' )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   231
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   232
        // If not connecting to a server running on localhost, allow from any host
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   233
        // this is safer than trying to detect the hostname of the webserver, but less secure
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   234
        $q = @mysql_query("GRANT ALL PRIVILEGES ON test.* TO '{$db_user}'@'%' IDENTIFIED BY '$db_pass' WITH GRANT OPTION;", $conn_root);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   235
        if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   236
        {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   237
          return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   238
        }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   239
        // Revoke privileges from test, we don't need them
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   240
        $q = @mysql_query("REVOKE ALL PRIVILEGES ON test.* FROM '{$db_user}'@'%';", $conn_root);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   241
        if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   242
        {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   243
          return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   244
        }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   245
      }
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   246
      mysql_close($conn_root);
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   247
      $conn = @mysql_connect($_POST['db_host'], $_POST['db_user'], $_POST['db_pass']);
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   248
      if ( !$conn )
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   249
      {
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   250
        // This should honestly never happen.
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   251
        return false;
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   252
      }
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   253
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   254
  }
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   255
  $q = @mysql_query("USE `$db_name`;", $conn);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   256
  if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   257
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   258
    // access denied to the database; try the whole root schenanegan again
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   259
    if ( !empty($_POST['db_root_user']) && !empty($_POST['db_root_pass']) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   260
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   261
      $conn_root = @mysql_connect($_POST['db_host'], $_POST['db_root_user'], $_POST['db_root_pass']);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   262
      if ( !$conn_root )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   263
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   264
        // Couldn't connect as root; bail out
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   265
        return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   266
      }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   267
      // create the database, if it doesn't exist
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   268
      $q = @mysql_query("CREATE DATABASE IF NOT EXISTS `$db_name`;", $conn_root);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   269
      if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   270
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   271
        // this really should never fail, so don't give any tolerance to it
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   272
        return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   273
      }
239
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   274
      unset($db_user, $db_pass);
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   275
      $db_user = mysql_real_escape_string($_POST['db_user']);
0f1b353570a7 Fix a comparison logic SQL error in lang.php; fix attempt to call mysql_real_escape_string() in install without a working DB connection
Dan
parents: 238
diff changeset
   276
      $db_pass = mysql_real_escape_string($_POST['db_pass']);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   277
      // we're in with root rights; grant access to the database
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   278
      $q = @mysql_query("GRANT ALL PRIVILEGES ON `$db_name`.* TO '{$db_user}'@'localhost';", $conn_root);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   279
      if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   280
      {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   281
        return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   282
      }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   283
      if ( $_POST['db_host'] != 'localhost' && $_POST['db_host'] != '127.0.0.1' && $_POST['db_host'] != '::1' )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   284
      {
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   285
        $q = @mysql_query("GRANT ALL PRIVILEGES ON `$db_name`.* TO '{$db_user}'@'%';", $conn_root);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   286
        if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   287
        {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   288
          return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   289
        }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   290
      }
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   291
      mysql_close($conn_root);
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   292
      // grant tables have hopefully been flushed, kill and reconnect our regular user connection
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   293
      mysql_close($conn);
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   294
      $conn = @mysql_connect($_POST['db_host'], $_POST['db_user'], $_POST['db_pass']);
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   295
      if ( !$conn )
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   296
      {
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   297
        return false;
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   298
      }
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   299
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   300
    else
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   301
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   302
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   303
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   304
    // try again
251
275c70f80137 Merged in the low-level DBAL fix involving dashes in the database name from stable
Dan
parents: 249 250
diff changeset
   305
    $q = @mysql_query("USE `$db_name`;", $conn);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   306
    if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   307
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   308
      // really failed this time; bail out
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   309
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   310
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   311
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   312
  // connected and database exists
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   313
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   314
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   315
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   316
function stg_drop_tables()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   317
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   318
  $conn = stg_mysql_connect(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   319
  if ( !$conn )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   320
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   321
  // Our list of tables included in Enano
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   322
  $tables = Array( 'categories', 'comments', 'config', 'logs', 'page_text', 'session_keys', 'pages', 'users', 'users_extra', 'themes', 'buddies', 'banlist', 'files', 'privmsgs', 'sidebar', 'hits', 'search_index', 'groups', 'group_members', 'acl', 'search_cache', 'tags', 'page_groups', 'page_group_members' );
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   323
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   324
  // Drop each table individually; if it fails, it probably means we're trying to drop a
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   325
  // table that didn't exist in the Enano version we're deleting the database for.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   326
  foreach ( $tables as $table )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   327
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   328
    // Remember that table_prefix is sanitized.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   329
    $table = "{$_POST['table_prefix']}$table";
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   330
    @mysql_query("DROP TABLE $table;", $conn);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   331
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   332
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   333
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   334
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   335
function stg_decrypt_admin_pass($act_get = false)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   336
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   337
  static $decrypted_pass = false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   338
  if ( $act_get )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   339
    return $decrypted_pass;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   340
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   341
  $aes = new AESCrypt(AES_BITS, AES_BLOCKSIZE);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   342
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   343
  if ( !empty($_POST['crypt_data']) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   344
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   345
    require('config.new.php');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   346
    if ( !isset($cryptkey) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   347
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   348
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   349
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   350
    define('_INSTRESUME_AES_KEYBACKUP', $key);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   351
    $key = hexdecode($cryptkey);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   352
    
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   353
    $decrypted_pass = $aes->decrypt($_POST['crypt_data'], $key, ENC_HEX);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   354
    
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   355
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   356
  else
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   357
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   358
    $decrypted_pass = $_POST['admin_pass'];
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   359
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   360
  if ( empty($decrypted_pass) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   361
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   362
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   363
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   364
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   365
function stg_generate_aes_key($act_get = false)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   366
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   367
  static $key = false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   368
  if ( $act_get )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   369
    return $key;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   370
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   371
  $aes = new AESCrypt(AES_BITS, AES_BLOCKSIZE);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   372
  $key = $aes->gen_readymade_key();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   373
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   374
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   375
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   376
function stg_parse_schema($act_get = false)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   377
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   378
  static $schema;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   379
  if ( $act_get )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   380
    return $schema;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   381
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   382
  $admin_pass = stg_decrypt_admin_pass(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   383
  $key = stg_generate_aes_key(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   384
  $aes = new AESCrypt(AES_BITS, AES_BLOCKSIZE);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   385
  $key = $aes->hextostring($key);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   386
  $admin_pass = $aes->encrypt($admin_pass, $key, ENC_HEX);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   387
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   388
  $cacheonoff = is_writable(ENANO_ROOT.'/cache/') ? '1' : '0';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   389
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   390
  $schema = file_get_contents('schema.sql');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   391
  $schema = str_replace('{{SITE_NAME}}',    mysql_real_escape_string($_POST['sitename']   ), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   392
  $schema = str_replace('{{SITE_DESC}}',    mysql_real_escape_string($_POST['sitedesc']   ), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   393
  $schema = str_replace('{{COPYRIGHT}}',    mysql_real_escape_string($_POST['copyright']  ), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   394
  $schema = str_replace('{{ADMIN_USER}}',   mysql_real_escape_string($_POST['admin_user'] ), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   395
  $schema = str_replace('{{ADMIN_PASS}}',   mysql_real_escape_string($admin_pass          ), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   396
  $schema = str_replace('{{ADMIN_EMAIL}}',  mysql_real_escape_string($_POST['admin_email']), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   397
  $schema = str_replace('{{ENABLE_CACHE}}', mysql_real_escape_string($cacheonoff          ), $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   398
  $schema = str_replace('{{REAL_NAME}}',    '',                                              $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   399
  $schema = str_replace('{{TABLE_PREFIX}}', $_POST['table_prefix'],                          $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   400
  $schema = str_replace('{{VERSION}}',      ENANO_VERSION,                                   $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   401
  $schema = str_replace('{{ADMIN_EMBED_PHP}}', $_POST['admin_embed_php'],                    $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   402
  // Not anymore!! :-D
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   403
  // $schema = str_replace('{{BETA_VERSION}}', ENANO_BETA_VERSION,                              $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   404
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   405
  if(isset($_POST['wiki_mode']))
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   406
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   407
    $schema = str_replace('{{WIKI_MODE}}', '1', $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   408
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   409
  else
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   410
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   411
    $schema = str_replace('{{WIKI_MODE}}', '0', $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   412
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   413
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   414
  // Build an array of queries      
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   415
  $schema = explode("\n", $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   416
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   417
  foreach ( $schema as $i => $sql )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   418
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   419
    $query =& $schema[$i];
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   420
    $t = trim($query);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   421
    if ( empty($t) || preg_match('/^(\#|--)/i', $t) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   422
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   423
      unset($schema[$i]);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   424
      unset($query);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   425
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   426
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   427
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   428
  $schema = array_values($schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   429
  $schema = implode("\n", $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   430
  $schema = explode(";\n", $schema);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   431
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   432
  foreach ( $schema as $i => $sql )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   433
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   434
    $query =& $schema[$i];
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   435
    if ( substr($query, ( strlen($query) - 1 ), 1 ) != ';' )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   436
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   437
      $query .= ';';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   438
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   439
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   440
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   441
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   442
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   443
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   444
function stg_install($_unused, $already_run)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   445
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   446
  // This one's pretty easy.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   447
  $conn = stg_mysql_connect(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   448
  if ( !is_resource($conn) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   449
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   450
  $schema = stg_parse_schema(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   451
  if ( !is_array($schema) )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   452
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   453
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   454
  // If we're resuming installation, the encryption key was regenerated.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   455
  // This means we'll have to update the encrypted password in the database.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   456
  if ( $already_run )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   457
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   458
    $admin_pass = stg_decrypt_admin_pass(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   459
    $key = stg_generate_aes_key(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   460
    $aes = new AESCrypt(AES_BITS, AES_BLOCKSIZE);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   461
    $key = $aes->hextostring($key);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   462
    $admin_pass = $aes->encrypt($admin_pass, $key, ENC_HEX);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   463
    $admin_user = mysql_real_escape_string($_POST['admin_user']);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   464
    
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   465
    $q = @mysql_query("UPDATE {$_POST['table_prefix']}users SET password='$admin_pass' WHERE username='$admin_user';");
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   466
    if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   467
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   468
      echo '<p><tt>MySQL return: ' . mysql_error() . '</tt></p>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   469
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   470
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   471
    
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   472
    return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   473
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   474
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   475
  // OK, do the loop, baby!!!
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   476
  foreach($schema as $q)
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   477
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   478
    $r = mysql_query($q, $conn);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   479
    if ( !$r )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   480
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   481
      echo '<p><tt>MySQL return: ' . mysql_error() . '</tt></p>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   482
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   483
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   484
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   485
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   486
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   487
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   488
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   489
function stg_write_config()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   490
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   491
  $privkey = stg_generate_aes_key(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   492
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   493
  switch($_POST['urlscheme'])
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   494
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   495
    case "ugly":
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   496
    default:
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   497
      $cp = scriptPath.'/index.php?title=';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   498
      break;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   499
    case "short":
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   500
      $cp = scriptPath.'/index.php/';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   501
      break;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   502
    case "tiny":
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   503
      $cp = scriptPath.'/';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   504
      break;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   505
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   506
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   507
  if ( $_POST['urlscheme'] == 'tiny' )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   508
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   509
    $contents = '# Begin Enano rules
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   510
RewriteEngine on
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   511
RewriteCond %{REQUEST_FILENAME} !-d
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   512
RewriteCond %{REQUEST_FILENAME} !-f
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   513
RewriteRule ^(.+) '.scriptPath.'/index.php?title=$1 [L,QSA]
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   514
RewriteRule \.(php|html|gif|jpg|png|css|js)$ - [L]
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   515
# End Enano rules
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   516
';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   517
    if ( file_exists('./.htaccess') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   518
      $ht = fopen(ENANO_ROOT.'/.htaccess', 'a+');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   519
    else
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   520
      $ht = fopen(ENANO_ROOT.'/.htaccess.new', 'w');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   521
    if ( !$ht )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   522
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   523
    fwrite($ht, $contents);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   524
    fclose($ht);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   525
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   526
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   527
  $config_file = '<?php
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   528
/* Enano auto-generated configuration file - editing not recommended! */
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   529
$dbhost   = \''.addslashes($_POST['db_host']).'\';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   530
$dbname   = \''.addslashes($_POST['db_name']).'\';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   531
$dbuser   = \''.addslashes($_POST['db_user']).'\';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   532
$dbpasswd = \''.addslashes($_POST['db_pass']).'\';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   533
if ( !defined(\'ENANO_CONSTANTS\') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   534
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   535
define(\'ENANO_CONSTANTS\', \'\');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   536
define(\'table_prefix\', \''.addslashes($_POST['table_prefix']).'\');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   537
define(\'scriptPath\', \''.scriptPath.'\');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   538
define(\'contentPath\', \''.$cp.'\');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   539
define(\'ENANO_INSTALLED\', \'true\');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   540
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   541
$crypto_key = \''.$privkey.'\';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   542
?>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   543
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   544
  $cf_handle = fopen(ENANO_ROOT.'/config.new.php', 'w');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   545
  if ( !$cf_handle )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   546
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   547
  fwrite($cf_handle, $config_file);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   548
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   549
  fclose($cf_handle);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   550
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   551
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   552
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   553
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   554
function _stg_rename_config_revert()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   555
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   556
  if ( file_exists('./config.php') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   557
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   558
    @rename('./config.php', './config.new.php');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   559
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   560
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   561
  $handle = @fopen('./config.php.new', 'w');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   562
  if ( !$handle )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   563
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   564
  $contents = '<?php $cryptkey = \'' . _INSTRESUME_AES_KEYBACKUP . '\'; ?>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   565
  fwrite($handle, $contents);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   566
  fclose($handle);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   567
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   568
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   569
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   570
function stg_rename_config()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   571
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   572
  if ( !@rename('./config.new.php', './config.php') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   573
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   574
    echo '<p>Can\'t rename config.php</p>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   575
    _stg_rename_config_revert();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   576
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   577
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   578
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   579
  if ( $_POST['urlscheme'] == 'tiny' && !file_exists('./.htaccess') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   580
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   581
    if ( !@rename('./.htaccess.new', './.htaccess') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   582
    {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   583
      echo '<p>Can\'t rename .htaccess</p>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   584
      _stg_rename_config_revert();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   585
      return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   586
    }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   587
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   588
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   589
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   590
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   591
function stg_start_api_success()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   592
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   593
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   594
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   595
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   596
function stg_start_api_failure()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   597
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   598
  return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   599
}
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   600
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   601
function stg_import_language()
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   602
{
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   603
  global $db, $session, $paths, $template, $plugins; // Common objects
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   604
  
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   605
  $lang_file = ENANO_ROOT . "/language/english/enano.json";
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   606
  install_language("eng", "English", "English", $lang_file);
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   607
  
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   608
  return true;
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   609
}
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
   610
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   611
function stg_init_logs()
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   612
{
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   613
  global $db, $session, $paths, $template, $plugins; // Common objects
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   614
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   615
  $q = $db->sql_query('INSERT INTO ' . table_prefix . 'logs(log_type,action,time_id,date_string,author,page_text,edit_summary) VALUES(\'security\', \'install_enano\', ' . time() . ', \'' . date('d M Y h:i a') . '\', \'' . mysql_real_escape_string($_POST['admin_user']) . '\', \'' . mysql_real_escape_string(ENANO_VERSION) . '\', \'' . mysql_real_escape_string($_SERVER['REMOTE_ADDR']) . '\');');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   616
  if ( !$q )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   617
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   618
    echo '<p><tt>MySQL return: ' . mysql_error() . '</tt></p>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   619
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   620
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   621
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   622
  if ( !$session->get_permissions('clear_logs') )
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   623
  {
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   624
    echo '<p><tt>$session: denied clear_logs</tt></p>';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   625
    return false;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   626
  }
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   627
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   628
  PageUtils::flushlogs('Main_Page', 'Article');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   629
  
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   630
  return true;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
   631
}
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   632
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   633
//die('Key size: ' . AES_BITS . '<br />Block size: ' . AES_BLOCKSIZE);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   634
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   635
if(!function_exists('wikiFormat'))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   636
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   637
  function wikiFormat($message, $filter_links = true)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   638
  {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   639
    $wiki = & Text_Wiki::singleton('Mediawiki');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   640
    $wiki->setRenderConf('Xhtml', 'code', 'css_filename', 'codefilename');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   641
    $wiki->setRenderConf('Xhtml', 'wikilink', 'view_url', contentPath);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   642
    $result = $wiki->transform($message, 'Xhtml');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   643
    
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   644
    // HTML fixes
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   645
    $result = preg_replace('#<tr>([\s]*?)<\/tr>#is', '', $result);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   646
    $result = preg_replace('#<p>([\s]*?)<\/p>#is', '', $result);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   647
    $result = preg_replace('#<br />([\s]*?)<table#is', '<table', $result);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   648
    
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   649
    return $result;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   650
  }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   651
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   652
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   653
global $failed, $warned;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   654
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   655
$failed = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   656
$warned = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   657
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   658
function not($var)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   659
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   660
  if($var)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   661
  {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   662
    return false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   663
  } 
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   664
  else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   665
  {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   666
    return true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   667
  }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   668
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   669
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   670
function run_test($code, $desc, $extended_desc, $warn = false)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   671
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   672
  global $failed, $warned;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   673
  static $cv = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   674
  $cv = not($cv);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   675
  $val = eval($code);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   676
  if($val)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   677
  {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   678
    if($cv) $color='CCFFCC'; else $color='AAFFAA';
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   679
    echo "<tr><td style='background-color: #$color; width: 500px; padding: 5px;'>$desc</td><td style='padding-left: 10px;'><img alt='Test passed' src='images/good.gif' /></td></tr>";
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   680
  } elseif(!$val && $warn) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   681
    if($cv) $color='FFFFCC'; else $color='FFFFAA';
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   682
    echo "<tr><td style='background-color: #$color; width: 500px; padding: 5px;'>$desc<br /><b>$extended_desc</b></td><td style='padding-left: 10px;'><img alt='Test passed with warning' src='images/unknown.gif' /></td></tr>";
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   683
    $warned = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   684
  } else {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   685
    if($cv) $color='FFCCCC'; else $color='FFAAAA';
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   686
    echo "<tr><td style='background-color: #$color; width: 500px; padding: 5px;'>$desc<br /><b>$extended_desc</b></td><td style='padding-left: 10px;'><img alt='Test failed' src='images/bad.gif' /></td></tr>";
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   687
    $failed = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   688
  }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   689
}
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   690
function is_apache()
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   691
{
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   692
  return strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? true : false;
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   693
}
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   694
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   695
require_once('includes/template.php');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   696
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   697
//
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   698
// Startup localization
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   699
//
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   700
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   701
// We need $db just for the _die function
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   702
$db = new mysql();
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   703
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   704
$lang = new Language('eng');
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   705
$lang->load_file('./language/english/install.json');
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   706
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   707
if ( !isset($_GET['mode']) )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   708
  $_GET['mode'] = 'welcome';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   709
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   710
switch($_GET['mode'])
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   711
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   712
  case 'mysql_test':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   713
    error_reporting(0);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   714
    $dbhost     = rawurldecode($_POST['host']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   715
    $dbname     = rawurldecode($_POST['name']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   716
    $dbuser     = rawurldecode($_POST['user']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   717
    $dbpass     = rawurldecode($_POST['pass']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   718
    $dbrootuser = rawurldecode($_POST['root_user']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   719
    $dbrootpass = rawurldecode($_POST['root_pass']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   720
    if($dbrootuser != '')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   721
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   722
      $conn = mysql_connect($dbhost, $dbrootuser, $dbrootpass);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   723
      if(!$conn)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   724
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   725
        $e = mysql_error();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   726
        if(strstr($e, "Lost connection"))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   727
          die('host'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   728
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   729
          die('root'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   730
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   731
      $rsp = 'good';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   732
      $q = mysql_query('USE '.$dbname, $conn);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   733
      if(!$q)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   734
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   735
        $e = mysql_error();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   736
        if(strstr($e, 'Unknown database'))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   737
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   738
          $rsp .= '_creating_db';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   739
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   740
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   741
      mysql_close($conn);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   742
      $conn = mysql_connect($dbhost, $dbuser, $dbpass);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   743
      if(!$conn)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   744
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   745
        $e = mysql_error();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   746
        if(strstr($e, "Lost connection"))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   747
          die('host'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   748
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   749
          $rsp .= '_creating_user';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   750
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   751
      mysql_close($conn);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   752
      die($rsp);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   753
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   754
    else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   755
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   756
      $conn = mysql_connect($dbhost, $dbuser, $dbpass);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   757
      if(!$conn)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   758
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   759
        $e = mysql_error();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   760
        if(strstr($e, "Lost connection"))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   761
          die('host'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   762
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   763
          die('auth'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   764
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   765
      $q = mysql_query('USE '.$dbname, $conn);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   766
      if(!$q)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   767
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   768
        $e = mysql_error();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   769
        if(strstr($e, 'Unknown database'))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   770
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   771
          die('name'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   772
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   773
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   774
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   775
          die('perm'.$e);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   776
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   777
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   778
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   779
    $v = mysql_get_server_info();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   780
    if(version_compare($v, '4.1.17', '<')) die('vers'.$v);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   781
    mysql_close($conn);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   782
    die('good');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   783
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   784
  case 'pophelp':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   785
    $topic = ( isset($_GET['topic']) ) ? $_GET['topic'] : 'invalid';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   786
    switch($topic)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   787
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   788
      case 'admin_embed_php':
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
   789
        $title = $lang->get('pophelp_admin_embed_php_title');
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
   790
        $content = $lang->get('pophelp_admin_embed_php_body');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   791
        break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   792
      default:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   793
        $title = 'Invalid topic';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   794
        $content = 'Invalid help topic.';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   795
        break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   796
    }
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
   797
    $close_window = $lang->get('pophelp_btn_close_window');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   798
    echo <<<EOF
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   799
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   800
<html>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   801
  <head>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   802
    <title>Enano installation quick help &bull; {$title}</title>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   803
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   804
    <style type="text/css">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   805
      body {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   806
        font-family: trebuchet ms, verdana, arial, helvetica, sans-serif;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   807
        font-size: 9pt;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   808
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   809
      h2          { border-bottom: 1px solid #90B0D0; margin-bottom: 0; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   810
      h3          { font-size: 11pt; font-weight: bold; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   811
      li          { list-style: url(../images/bullet.gif); }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   812
      p           { margin: 1.0em; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   813
      blockquote  { background-color: #F4F4F4; border: 1px dotted #406080; margin: 1em; padding: 10px; max-height: 250px; overflow: auto; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   814
      a           { color: #7090B0; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   815
      a:hover     { color: #90B0D0; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   816
    </style>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   817
  </head>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   818
  <body>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   819
    <h2>{$title}</h2>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   820
    {$content}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   821
    <p style="text-align: right;">
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
   822
      <a href="#" onclick="window.close(); return false;">{$close_window}</a>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   823
    </p>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   824
  </body>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   825
</html>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   826
EOF;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   827
    exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   828
    break;
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   829
  case 'langjs':
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   830
    header('Content-type: text/javascript');
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   831
    $json = new Services_JSON(SERVICES_JSON_LOOSE_TYPE);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   832
    $lang_js = $json->encode($lang->strings);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   833
    // use EEOF here because jEdit misinterprets "typ'eof'"
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   834
    echo <<<EEOF
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   835
if ( typeof(enano_lang) != 'object' )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   836
  var enano_lang = new Object();
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   837
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   838
enano_lang[1] = $lang_js;
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   839
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   840
EEOF;
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   841
    exit;
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   842
    break;
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   843
  default:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   844
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   845
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   846
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   847
$template = new template_nodb();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   848
$template->load_theme('stpatty', 'shamrock', false);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   849
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   850
$modestrings = Array(
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   851
              'welcome' => $lang->get('welcome_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   852
              'license' => $lang->get('license_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   853
              'sysreqs' => $lang->get('sysreqs_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   854
              'database'=> $lang->get('database_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   855
              'website' => $lang->get('website_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   856
              'login'   => $lang->get('login_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   857
              'confirm' => $lang->get('confirm_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   858
              'install' => $lang->get('install_modetitle'),
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   859
              'finish'  => $lang->get('finish_modetitle')
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   860
            );
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   861
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   862
$sideinfo = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   863
$vars = $template->extract_vars('elements.tpl');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   864
$p = $template->makeParserText($vars['sidebar_button']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   865
foreach ( $modestrings as $id => $str )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   866
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   867
  if ( $_GET['mode'] == $id )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   868
  {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   869
    $flags = 'style="font-weight: bold; text-decoration: underline;"';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   870
    $this_page = $str;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   871
  }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   872
  else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   873
  {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   874
    $flags = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   875
  }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   876
  $p->assign_vars(Array(
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   877
      'HREF' => '#',
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   878
      'FLAGS' => $flags . ' onclick="return false;"',
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   879
      'TEXT' => $str
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   880
    ));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   881
  $sideinfo .= $p->run();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   882
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   883
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   884
$template->init_vars();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   885
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   886
if(isset($_GET['mode']) && $_GET['mode'] == 'css')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   887
{
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   888
  header('Content-type: text/css');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   889
  echo $template->get_css();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   890
  exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   891
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   892
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   893
if ( defined('ENANO_IS_STABLE') )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   894
  $branch = 'stable';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   895
else if ( defined('ENANO_IS_UNSTABLE') )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   896
  $branch = 'unstable';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   897
else
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   898
{
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   899
  $version = explode('.', ENANO_VERSION);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   900
  if ( !isset($version[1]) )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   901
    // unknown branch, really
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   902
    $branch = 'unstable';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   903
  else
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   904
  {
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   905
    $version[1] = intval($version[1]);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   906
    if ( $version[1] % 2 == 1 )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   907
      $branch = 'unstable';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   908
    else
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   909
      $branch = 'stable';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   910
  }
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   911
}
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   912
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   913
$template->header();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   914
if(!isset($_GET['mode'])) $_GET['mode'] = 'license';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   915
switch($_GET['mode'])
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   916
{ 
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   917
  default:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   918
  case 'welcome':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   919
    ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   920
    <div style="text-align: center; margin-top: 10px;">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   921
      <img alt="[ Enano CMS Project logo ]" src="images/enano-artwork/installer-greeting-green.png" style="display: block; margin: 0 auto; padding-left: 100px;" />
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   922
      <h2><?php echo $lang->get('welcome_heading'); ?></h2>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   923
      <h3>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   924
        <?php
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   925
        $branch_l = $lang->get("welcome_branch_$branch");
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   926
        
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   927
        $v_string = sprintf('%s %s &ndash; %s', $lang->get('welcome_version'), ENANO_VERSION, $branch_l);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   928
        echo $v_string;
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   929
        ?>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   930
      </h3>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   931
      <?php
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   932
        if ( defined('ENANO_CODE_NAME') )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   933
        {
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   934
          echo '<p>';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   935
          echo $lang->get('welcome_aka', array(
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   936
              'codename' => strtolower(ENANO_CODE_NAME)
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   937
            ));
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   938
          echo '</p>';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   939
        }
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   940
      ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   941
      <form action="install.php?mode=license" method="post">
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   942
        <input type="submit" value="<?php echo $lang->get('welcome_btn_start'); ?>" />
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   943
      </form>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   944
    </div>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   945
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   946
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   947
  case "license":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   948
    ?>
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   949
    <h3><?php echo $lang->get('license_heading'); ?></h3>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   950
     <p><?php echo $lang->get('license_blurb_thankyou'); ?></p>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   951
     <p><?php echo $lang->get('license_blurb_pleaseread'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   952
     <div style="height: 500px; clip: rect(0px,auto,500px,auto); overflow: auto; padding: 10px; border: 1px dashed #456798; margin: 1em;">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   953
       <?php
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   954
       if ( !file_exists('./GPL') || !file_exists('./language/english/install/license-deed.html') )
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   955
       {
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   956
         echo 'Cannot find the license files.';
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   957
       }
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   958
       echo file_get_contents('./language/english/install/license-deed.html');
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   959
       if ( defined('ENANO_BETA_VERSION') || $branch == 'unstable' )
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   960
       {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   961
         ?>
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   962
         <h3><?php echo $lang->get('license_info_unstable_title'); ?></h3>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   963
         <p><?php echo $lang->get('license_info_unstable_body'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   964
         <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   965
       }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   966
       ?>
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   967
       <h3><?php echo $lang->get('license_section_gpl_heading'); ?></h3>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   968
       <?php if ( $lang->lang_code != 'eng' ): ?>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   969
       <p><i><?php echo $lang->get('license_gpl_blurb_inenglish'); ?></i></p>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   970
       <?php endif; ?>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   971
       <?php echo wikiFormat(file_get_contents(ENANO_ROOT . '/GPL')); ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   972
     </div>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   973
     <div class="pagenav">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   974
       <form action="install.php?mode=sysreqs" method="post">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   975
         <table border="0">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   976
         <tr>
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   977
           <td>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   978
             <input type="submit" value="<?php echo $lang->get('license_btn_i_agree'); ?>" />
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   979
           </td>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   980
           <td>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   981
             <p>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   982
               <span style="font-weight: bold;"><?php echo $lang->get('meta_lbl_before_continue'); ?></span><br />
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   983
               &bull; <?php echo $lang->get('license_objective_ensure_agree'); ?><br />
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   984
               &bull; <?php echo $lang->get('license_objective_have_db_info'); ?>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   985
             </p>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   986
           </td>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   987
         </tr>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   988
         </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   989
       </form>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   990
     </div>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   991
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   992
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   993
  case "sysreqs":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   994
    error_reporting(E_ALL);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   995
    ?>
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   996
    <h3><?php echo $lang->get('sysreqs_heading'); ?></h3>
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
   997
     <p><?php echo $lang->get('sysreqs_blurb'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   998
    <table border="0" cellspacing="0" cellpadding="0">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
   999
    <?php
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1000
    run_test('return version_compare(\'4.3.0\', PHP_VERSION, \'<\');', $lang->get('sysreqs_req_php'), $lang->get('sysreqs_req_desc_php') );
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1001
    run_test('return function_exists(\'mysql_connect\');', $lang->get('sysreqs_req_mysql'), $lang->get('sysreqs_req_desc_mysql') );
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1002
    run_test('return @ini_get(\'file_uploads\');', $lang->get('sysreqs_req_uploads'), $lang->get('sysreqs_req_desc_uploads') );
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1003
    run_test('return is_apache();', $lang->get('sysreqs_req_apache'), $lang->get('sysreqs_req_desc_apache'), true);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1004
    run_test('return is_writable(ENANO_ROOT.\'/config.new.php\');', $lang->get('sysreqs_req_config'), $lang->get('sysreqs_req_desc_config') );
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1005
    run_test('return file_exists(\'/usr/bin/convert\');', $lang->get('sysreqs_req_magick'), $lang->get('sysreqs_req_desc_magick'), true);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1006
    run_test('return is_writable(ENANO_ROOT.\'/cache/\');', $lang->get('sysreqs_req_cachewriteable'), $lang->get('sysreqs_req_desc_cachewriteable'), true);
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1007
    run_test('return is_writable(ENANO_ROOT.\'/files/\');', $lang->get('sysreqs_req_fileswriteable'), $lang->get('sysreqs_req_desc_fileswriteable'), true);
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1008
    echo '</table>';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1009
    if(!$failed)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1010
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1011
      ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1012
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1013
      <div class="pagenav">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1014
      <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1015
      if($warned) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1016
        echo '<table border="0" cellspacing="0" cellpadding="0">';
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1017
        run_test('return false;', $lang->get('sysreqs_summary_warn_title'), $lang->get('sysreqs_summary_warn_body'), true);
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1018
        echo '</table>';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1019
      } else {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1020
        echo '<table border="0" cellspacing="0" cellpadding="0">';
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1021
        run_test('return true;', '<b>' . $lang->get('sysreqs_summary_success_title') . '</b><br />' . $lang->get('sysreqs_summary_success_body'), 'You should never see this text. Congratulations for being an Enano hacker!');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1022
        echo '</table>';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1023
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1024
      ?>
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1025
      <form action="install.php?mode=database" method="post">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1026
        <table border="0">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1027
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1028
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1029
            <input type="submit" value="<?php echo $lang->get('meta_btn_continue'); ?>" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1030
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1031
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1032
            <p>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1033
              <span style="font-weight: bold;"><?php echo $lang->get('meta_lbl_before_continue'); ?></span><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1034
              &bull; <?php echo $lang->get('sysreqs_objective_scalebacks'); ?><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1035
              &bull; <?php echo $lang->get('license_objective_have_db_info'); ?>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1036
            </p>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1037
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1038
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1039
        </table>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1040
      </form>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1041
      </div>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1042
    <?php
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1043
    }
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1044
    else
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1045
    {
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1046
      if ( $failed )
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1047
      {
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1048
        echo '<div class="pagenav"><table border="0" cellspacing="0" cellpadding="0">';
243
a7d0f2711df1 Installer localization started. Welcome, License, and SysReqs pages are fully localized.
Dan
parents: 241
diff changeset
  1049
        run_test('return false;', $lang->get('sysreqs_summary_fail_title'), $lang->get('sysreqs_summary_fail_body'));
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1050
        echo '</table></div>';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1051
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1052
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1053
    ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1054
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1055
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1056
  case "database":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1057
    ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1058
    <script type="text/javascript">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1059
      function ajaxGet(uri, f) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1060
        if (window.XMLHttpRequest) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1061
          ajax = new XMLHttpRequest();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1062
        } else {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1063
          if (window.ActiveXObject) {           
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1064
            ajax = new ActiveXObject("Microsoft.XMLHTTP");
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1065
          } else {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1066
            alert('Enano client-side runtime error: No AJAX support, unable to continue');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1067
            return;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1068
          }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1069
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1070
        ajax.onreadystatechange = f;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1071
        ajax.open('GET', uri, true);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1072
        ajax.send(null);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1073
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1074
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1075
      function ajaxPost(uri, parms, f) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1076
        if (window.XMLHttpRequest) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1077
          ajax = new XMLHttpRequest();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1078
        } else {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1079
          if (window.ActiveXObject) {           
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1080
            ajax = new ActiveXObject("Microsoft.XMLHTTP");
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1081
          } else {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1082
            alert('Enano client-side runtime error: No AJAX support, unable to continue');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1083
            return;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1084
          }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1085
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1086
        ajax.onreadystatechange = f;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1087
        ajax.open('POST', uri, true);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1088
        ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1089
        ajax.setRequestHeader("Content-length", parms.length);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1090
        ajax.setRequestHeader("Connection", "close");
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1091
        ajax.send(parms);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1092
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1093
      function ajaxTestConnection()
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1094
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1095
        v = verify();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1096
        if(!v)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1097
        {
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1098
          alert($lang.get('meta_msg_err_verification'));
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1099
          return false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1100
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1101
        var frm = document.forms.dbinfo;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1102
        db_host      = escape(frm.db_host.value.replace('+', '%2B'));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1103
        db_name      = escape(frm.db_name.value.replace('+', '%2B'));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1104
        db_user      = escape(frm.db_user.value.replace('+', '%2B'));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1105
        db_pass      = escape(frm.db_pass.value.replace('+', '%2B'));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1106
        db_root_user = escape(frm.db_root_user.value.replace('+', '%2B'));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1107
        db_root_pass = escape(frm.db_root_pass.value.replace('+', '%2B'));
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1108
        
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1109
        parms = 'host='+db_host+'&name='+db_name+'&user='+db_user+'&pass='+db_pass+'&root_user='+db_root_user+'&root_pass='+db_root_pass;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1110
        ajaxPost('<?php echo scriptPath; ?>/install.php?mode=mysql_test', parms, function() {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1111
            if(ajax.readyState==4)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1112
            {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1113
              s = ajax.responseText.substr(0, 4);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1114
              t = ajax.responseText.substr(4, ajax.responseText.length);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1115
              if(s.substr(0, 4)=='good')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1116
              {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1117
                document.getElementById('s_db_host').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1118
                document.getElementById('s_db_name').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1119
                document.getElementById('s_db_auth').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1120
                document.getElementById('s_db_root').src='images/good.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1121
                if(t.match(/_creating_db/)) document.getElementById('e_db_name').innerHTML = $lang.get('database_msg_warn_creating_db');
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1122
                if(t.match(/_creating_user/)) document.getElementById('e_db_auth').innerHTML = $lang.get('database_msg_warn_creating_user');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1123
                document.getElementById('s_mysql_version').src='images/good.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1124
                document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_info_mysql_good');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1125
              }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1126
              else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1127
              {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1128
                switch(s)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1129
                {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1130
                case 'host':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1131
                  document.getElementById('s_db_host').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1132
                  document.getElementById('s_db_name').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1133
                  document.getElementById('s_db_auth').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1134
                  document.getElementById('s_db_root').src='images/unknown.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1135
                  document.getElementById('e_db_host').innerHTML = $lang.get('database_msg_err_mysql_connect', { db_host: document.forms.dbinfo.db_host.value, mysql_error: t });
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1136
                  document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_warn_mysql_version');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1137
                  break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1138
                case 'auth':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1139
                  document.getElementById('s_db_host').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1140
                  document.getElementById('s_db_name').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1141
                  document.getElementById('s_db_auth').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1142
                  document.getElementById('s_db_root').src='images/unknown.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1143
                  document.getElementById('e_db_auth').innerHTML = $lang.get('database_msg_err_mysql_auth', { mysql_error: t });
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1144
                  document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_warn_mysql_version');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1145
                  break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1146
                case 'perm':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1147
                  document.getElementById('s_db_host').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1148
                  document.getElementById('s_db_name').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1149
                  document.getElementById('s_db_auth').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1150
                  document.getElementById('s_db_root').src='images/unknown.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1151
                  document.getElementById('e_db_name').innerHTML = $lang.get('database_msg_err_mysql_dbperm', { mysql_error: t });
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1152
                  document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_warn_mysql_version');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1153
                  break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1154
                case 'name':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1155
                  document.getElementById('s_db_host').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1156
                  document.getElementById('s_db_name').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1157
                  document.getElementById('s_db_auth').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1158
                  document.getElementById('s_db_root').src='images/unknown.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1159
                  document.getElementById('e_db_name').innerHTML = $lang.get('database_msg_err_mysql_dbexist', { mysql_error: t });
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1160
                  document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_warn_mysql_version');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1161
                  break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1162
                case 'root':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1163
                  document.getElementById('s_db_host').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1164
                  document.getElementById('s_db_name').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1165
                  document.getElementById('s_db_auth').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1166
                  document.getElementById('s_db_root').src='images/bad.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1167
                  document.getElementById('e_db_root').innerHTML = $lang.get('database_msg_err_mysql_auth', { mysql_error: t });
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1168
                  document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_warn_mysql_version');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1169
                  break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1170
                case 'vers':
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1171
                  document.getElementById('s_db_host').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1172
                  document.getElementById('s_db_name').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1173
                  document.getElementById('s_db_auth').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1174
                  document.getElementById('s_db_root').src='images/good.gif';
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1175
                  if(t.match(/_creating_db/)) document.getElementById('e_db_name').innerHTML = $lang.get('database_msg_warn_creating_db');
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1176
                  if(t.match(/_creating_user/)) document.getElementById('e_db_auth').innerHTML = $lang.get('database_msg_warn_creating_user');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1177
                  
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1178
                  document.getElementById('e_mysql_version').innerHTML = $lang.get('database_msg_err_mysql_version', { mysql_version: t });
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1179
                  document.getElementById('s_mysql_version').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1180
                default:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1181
                  alert(t);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1182
                  break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1183
                }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1184
              }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1185
            }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1186
          });
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1187
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1188
      function verify()
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1189
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1190
        document.getElementById('e_db_host').innerHTML = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1191
        document.getElementById('e_db_auth').innerHTML = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1192
        document.getElementById('e_db_name').innerHTML = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1193
        document.getElementById('e_db_root').innerHTML = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1194
        var frm = document.forms.dbinfo;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1195
        ret = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1196
        if(frm.db_host.value != '')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1197
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1198
          document.getElementById('s_db_host').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1199
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1200
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1201
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1202
          document.getElementById('s_db_host').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1203
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1204
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1205
        if(frm.db_name.value.match(/^([a-z0-9_]+)$/g))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1206
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1207
          document.getElementById('s_db_name').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1208
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1209
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1210
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1211
          document.getElementById('s_db_name').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1212
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1213
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1214
        if(frm.db_user.value != '')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1215
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1216
          document.getElementById('s_db_auth').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1217
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1218
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1219
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1220
          document.getElementById('s_db_auth').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1221
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1222
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1223
        if(frm.table_prefix.value.match(/^([a-z0-9_]*)$/g))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1224
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1225
          document.getElementById('s_table_prefix').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1226
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1227
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1228
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1229
          document.getElementById('s_table_prefix').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1230
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1231
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1232
        if(frm.db_root_user.value == '')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1233
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1234
          document.getElementById('s_db_root').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1235
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1236
        else if(frm.db_root_user.value != '' && frm.db_root_pass.value == '')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1237
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1238
          document.getElementById('s_db_root').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1239
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1240
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1241
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1242
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1243
          document.getElementById('s_db_root').src='images/unknown.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1244
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1245
        if(ret) frm._cont.disabled = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1246
        else    frm._cont.disabled = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1247
        return ret;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1248
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1249
      window.onload = verify;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1250
    </script>
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1251
    <p><?php echo $lang->get('database_blurb_needdb'); ?></p>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1252
    <p><?php echo $lang->get('database_blurb_howtomysql'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1253
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1254
    if ( file_exists('/etc/enano-is-virt-appliance') )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1255
    {
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1256
      echo '<p>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1257
              ' . $lang->get('database_vm_login_info', array( 'host' => 'localhost', 'user' => 'enano', 'pass' => 'clurichaun', 'name' => 'enano_www1' )) . '
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1258
            </p>';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1259
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1260
    ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1261
    <form name="dbinfo" action="install.php?mode=website" method="post">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1262
      <table border="0">
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1263
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1264
          <td colspan="3" style="text-align: center">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1265
            <h3><?php echo $lang->get('database_table_title'); ?></h3>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1266
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1267
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1268
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1269
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1270
            <b><?php echo $lang->get('database_field_hostname_title'); ?></b>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1271
            <br /><?php echo $lang->get('database_field_hostname_body'); ?>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1272
            <br /><span style="color: #993300" id="e_db_host"></span>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1273
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1274
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1275
            <input onkeyup="verify();" name="db_host" size="30" type="text" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1276
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1277
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1278
            <img id="s_db_host" alt="Good/bad icon" src="images/bad.gif" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1279
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1280
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1281
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1282
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1283
            <b><?php echo $lang->get('database_field_dbname_title'); ?></b><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1284
            <?php echo $lang->get('database_field_dbname_body'); ?><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1285
            <span style="color: #993300" id="e_db_name"></span>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1286
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1287
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1288
            <input onkeyup="verify();" name="db_name" size="30" type="text" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1289
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1290
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1291
            <img id="s_db_name" alt="Good/bad icon" src="images/bad.gif" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1292
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1293
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1294
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1295
          <td rowspan="2">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1296
            <b><?php echo $lang->get('database_field_dbauth_title'); ?></b><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1297
            <?php echo $lang->get('database_field_dbauth_body'); ?><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1298
            <span style="color: #993300" id="e_db_auth"></span>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1299
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1300
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1301
            <input onkeyup="verify();" name="db_user" size="30" type="text" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1302
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1303
          <td rowspan="2">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1304
            <img id="s_db_auth" alt="Good/bad icon" src="images/bad.gif" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1305
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1306
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1307
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1308
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1309
            <input name="db_pass" size="30" type="password" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1310
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1311
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1312
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1313
          <td colspan="3" style="text-align: center">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1314
            <h3><?php echo $lang->get('database_heading_optionalinfo'); ?></h3>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1315
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1316
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1317
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1318
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1319
            <b><?php echo $lang->get('database_field_tableprefix_title'); ?></b><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1320
            <?php echo $lang->get('database_field_tableprefix_body'); ?>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1321
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1322
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1323
            <input onkeyup="verify();" name="table_prefix" size="30" type="text" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1324
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1325
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1326
            <img id="s_table_prefix" alt="Good/bad icon" src="images/good.gif" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1327
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1328
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1329
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1330
          <td rowspan="2">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1331
            <b><?php echo $lang->get('database_field_rootauth_title'); ?></b><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1332
            <?php echo $lang->get('database_field_rootauth_body'); ?><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1333
            <span style="color: #993300" id="e_db_root"></span>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1334
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1335
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1336
            <input onkeyup="verify();" name="db_root_user" size="30" type="text" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1337
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1338
          <td rowspan="2">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1339
            <img id="s_db_root" alt="Good/bad icon" src="images/good.gif" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1340
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1341
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1342
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1343
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1344
            <input onkeyup="verify();" name="db_root_pass" size="30" type="password" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1345
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1346
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1347
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1348
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1349
            <b><?php echo $lang->get('database_field_mysqlversion_title'); ?></b>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1350
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1351
          <td id="e_mysql_version">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1352
            <?php echo $lang->get('database_field_mysqlversion_blurb_willbechecked'); ?>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1353
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1354
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1355
            <img id="s_mysql_version" alt="Good/bad icon" src="images/unknown.gif" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1356
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1357
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1358
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1359
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1360
            <b><?php echo $lang->get('database_field_droptables_title'); ?></b><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1361
            <?php echo $lang->get('database_field_droptables_body'); ?>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1362
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1363
          <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1364
            <input type="checkbox" name="drop_tables" id="dtcheck" />  <label for="dtcheck"><?php echo $lang->get('database_field_droptables_lbl'); ?></label>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1365
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1366
        </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1367
        <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1368
          <td colspan="3" style="text-align: center">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1369
            <input type="button" value="<?php echo $lang->get('database_btn_testconnection'); ?>" onclick="ajaxTestConnection();" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1370
          </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1371
        </tr>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1372
      </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1373
      <div class="pagenav">
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1374
        <table border="0">
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1375
          <tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1376
            <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1377
              <input type="submit" value="<?php echo $lang->get('meta_btn_continue'); ?>" onclick="return verify();" name="_cont" />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1378
            </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1379
            <td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1380
              <p>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1381
                <span style="font-weight: bold;"><?php echo $lang->get('meta_lbl_before_continue'); ?></span><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1382
                &bull; <?php echo $lang->get('database_objective_test'); ?><br />
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1383
                &bull; <?php echo $lang->get('database_objective_uncrypt'); ?>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1384
              </p>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1385
            </td>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1386
          </tr>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1387
        </table>
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1388
      </div>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1389
    </form>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1390
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1391
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1392
  case "website":
244
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1393
    if ( !isset($_POST['_cont']) )
09f8a9a03ccf Localized installer database info page and finished localizing sysreqs page
Dan
parents: 243
diff changeset
  1394
    {
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1395
      echo 'No POST data signature found. Please <a href="install.php?mode=license">restart the installation</a>.';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1396
      $template->footer();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1397
      exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1398
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1399
    unset($_POST['_cont']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1400
    ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1401
    <script type="text/javascript">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1402
      function verify()
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1403
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1404
        var frm = document.forms.siteinfo;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1405
        ret = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1406
        if(frm.sitename.value.match(/^(.+)$/g) && frm.sitename.value != 'Enano')
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1407
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1408
          document.getElementById('s_name').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1409
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1410
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1411
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1412
          document.getElementById('s_name').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1413
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1414
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1415
        if(frm.sitedesc.value.match(/^(.+)$/g))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1416
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1417
          document.getElementById('s_desc').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1418
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1419
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1420
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1421
          document.getElementById('s_desc').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1422
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1423
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1424
        if(frm.copyright.value.match(/^(.+)$/g))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1425
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1426
          document.getElementById('s_copyright').src='images/good.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1427
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1428
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1429
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1430
          document.getElementById('s_copyright').src='images/bad.gif';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1431
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1432
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1433
        if(ret) frm._cont.disabled = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1434
        else    frm._cont.disabled = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1435
        return ret;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1436
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1437
      window.onload = verify;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1438
    </script>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1439
    <form name="siteinfo" action="install.php?mode=login" method="post">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1440
      <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1441
        $k = array_keys($_POST);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1442
        for($i=0;$i<sizeof($_POST);$i++) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1443
          echo '<input type="hidden" name="'.htmlspecialchars($k[$i]).'" value="'.htmlspecialchars($_POST[$k[$i]]).'" />'."\n";
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1444
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1445
      ?>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1446
      <p><?php echo $lang->get('website_header_blurb'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1447
      <table border="0">
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1448
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1449
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1450
            <b><?php echo $lang->get('website_field_name_title'); ?></b><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1451
            <?php echo $lang->get('website_field_name_body'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1452
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1453
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1454
            <input onkeyup="verify();" name="sitename" type="text" size="30" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1455
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1456
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1457
            <img id="s_name" alt="Good/bad icon" src="images/bad.gif" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1458
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1459
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1460
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1461
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1462
            <b><?php echo $lang->get('website_field_desc_title'); ?></b><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1463
            <?php echo $lang->get('website_field_desc_body'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1464
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1465
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1466
            <input onkeyup="verify();" name="sitedesc" type="text" size="30" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1467
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1468
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1469
            <img id="s_desc" alt="Good/bad icon" src="images/bad.gif" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1470
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1471
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1472
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1473
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1474
            <b><?php echo $lang->get('website_field_copyright_title'); ?></b><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1475
            <?php echo $lang->get('website_field_copyright_body'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1476
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1477
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1478
            <input onkeyup="verify();" name="copyright" type="text" size="30" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1479
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1480
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1481
            <img id="s_copyright" alt="Good/bad icon" src="images/bad.gif" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1482
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1483
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1484
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1485
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1486
            <b><?php echo $lang->get('website_field_wikimode_title'); ?></b><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1487
            <?php echo $lang->get('website_field_wikimode_body'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1488
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1489
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1490
            <input name="wiki_mode" type="checkbox" id="wmcheck" />  <label for="wmcheck"><?php echo $lang->get('website_field_wikimode_checkbox'); ?></label>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1491
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1492
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1493
            &nbsp;
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1494
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1495
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1496
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1497
          <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1498
            <b><?php echo $lang->get('website_field_urlscheme_title'); ?></b><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1499
            <?php echo $lang->get('website_field_urlscheme_body'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1500
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1501
          <td colspan="2">
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1502
            <input type="radio" <?php if(!is_apache()) echo 'checked="checked" '; ?>name="urlscheme" value="ugly" id="ugly"  />  <label for="ugly"><?php echo $lang->get('website_field_urlscheme_ugly'); ?></label><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1503
            <input type="radio" <?php if(is_apache()) echo 'checked="checked" '; ?>name="urlscheme" value="short" id="short" />  <label for="short"><?php echo $lang->get('website_field_urlscheme_short'); ?></label><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1504
            <input type="radio" name="urlscheme" value="tiny" id="petite">  <label for="petite"><?php echo $lang->get('website_field_urlscheme_tiny'); ?></label>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1505
          </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1506
        </tr>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1507
      </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1508
      <div class="pagenav">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1509
       <table border="0">
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1510
         <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1511
           <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1512
             <input type="submit" value="<?php echo $lang->get('meta_btn_continue'); ?>" onclick="return verify();" name="_cont" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1513
           </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1514
           <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1515
             <p>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1516
               <span style="font-weight: bold;"><?php echo $lang->get('meta_lbl_before_continue'); ?></span><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1517
               &bull; <?php echo $lang->get('website_objective_verify'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1518
             </p>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1519
           </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1520
         </tr>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1521
       </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1522
     </div>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1523
    </form>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1524
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1525
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1526
  case "login":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1527
    if(!isset($_POST['_cont'])) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1528
      echo 'No POST data signature found. Please <a href="install.php?mode=license">restart the installation</a>.';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1529
      $template->footer();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1530
      exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1531
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1532
    unset($_POST['_cont']);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1533
    require('config.new.php');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1534
    $aes = new AESCrypt(AES_BITS, AES_BLOCKSIZE);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1535
    if ( isset($crypto_key) )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1536
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1537
      $cryptkey = $crypto_key;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1538
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1539
    if(!isset($cryptkey) || ( isset($cryptkey) && strlen($cryptkey) != AES_BITS / 4) )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1540
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1541
      $cryptkey = $aes->gen_readymade_key();
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1542
      $handle = @fopen(ENANO_ROOT.'/config.new.php', 'w');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1543
      if(!$handle)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1544
      {
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1545
        echo '<p>ERROR: Despite my repeated attempts to verify that the configuration file can be written, I was indeed prevented from opening it for writing. Maybe you\'re still on <del>crack</del> Windows?</p>';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1546
        $template->footer();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1547
        exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1548
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1549
      fwrite($handle, '<?php $cryptkey = \''.$cryptkey.'\'; ?>');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1550
      fclose($handle);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1551
    }
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1552
    // Sorry for the ugly hack, but this f***s up jEdit badly.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1553
    echo '
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1554
    <script type="text/javascript">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1555
      function verify()
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1556
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1557
        var frm = document.forms.login;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1558
        ret = true;
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1559
        if ( frm.admin_user.value.match(/^([A-z0-9 \\-\\.]+)$/) && !frm.admin_user.value.match(/^(?:(?:\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.){3}(?:\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])$/) && frm.admin_user.value.toLowerCase() != \'anonymous\' )
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1560
        {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1561
          document.getElementById(\'s_user\').src = \'images/good.gif\';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1562
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1563
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1564
        {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1565
          document.getElementById(\'s_user\').src = \'images/bad.gif\';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1566
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1567
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1568
        if(frm.admin_pass.value.length >= 6 && frm.admin_pass.value == frm.admin_pass_confirm.value)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1569
        {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1570
          document.getElementById(\'s_password\').src = \'images/good.gif\';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1571
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1572
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1573
        {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1574
          document.getElementById(\'s_password\').src = \'images/bad.gif\';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1575
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1576
        }
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1577
        if(frm.admin_email.value.match(/^(?:[\\w\\d]+\\.?)+@(?:(?:[\\w\\d]\\-?)+\\.)+\\w{2,4}$/))
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1578
        {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1579
          document.getElementById(\'s_email\').src = \'images/good.gif\';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1580
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1581
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1582
        {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1583
          document.getElementById(\'s_email\').src = \'images/bad.gif\';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1584
          ret = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1585
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1586
        if(ret) frm._cont.disabled = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1587
        else    frm._cont.disabled = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1588
        return ret;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1589
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1590
      window.onload = verify;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1591
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1592
      function cryptdata() 
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1593
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1594
        if(!verify()) return false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1595
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1596
    </script>
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1597
    ';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1598
    ?>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1599
    <form name="login" action="install.php?mode=confirm" method="post" onsubmit="runEncryption();">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1600
      <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1601
        $k = array_keys($_POST);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1602
        for($i=0;$i<sizeof($_POST);$i++) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1603
          echo '<input type="hidden" name="'.htmlspecialchars($k[$i]).'" value="'.htmlspecialchars($_POST[$k[$i]]).'" />'."\n";
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1604
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1605
      ?>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1606
      <p><?php echo $lang->get('login_header_blurb'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1607
      <table border="0">
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1608
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1609
          <td><b><?php echo $lang->get('login_field_username_title'); ?></b><br /><small><?php echo $lang->get('login_field_username_body'); ?></small></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1610
          <td><input onkeyup="verify();" name="admin_user" type="text" size="30" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1611
          <td><img id="s_user" alt="Good/bad icon" src="images/bad.gif" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1612
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1613
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1614
          <td><?php echo $lang->get('login_field_password_title'); ?></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1615
          <td><input onkeyup="verify();" name="admin_pass" type="password" size="30" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1616
          <td rowspan="2"><img id="s_password" alt="Good/bad icon" src="images/bad.gif" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1617
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1618
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1619
          <td><?php echo $lang->get('login_field_password_confirm'); ?></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1620
          <td><input onkeyup="verify();" name="admin_pass_confirm" type="password" size="30" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1621
        </tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1622
        <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1623
          <td><?php echo $lang->get('login_field_email_title'); ?></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1624
          <td><input onkeyup="verify();" name="admin_email" type="text" size="30" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1625
          <td><img id="s_email" alt="Good/bad icon" src="images/bad.gif" /></td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1626
        </tr>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1627
        <tr>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1628
          <td>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1629
            <?php echo $lang->get('login_field_allowphp_title'); ?><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1630
            <small>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1631
              <span style="color: #D84308">
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1632
                <?php
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1633
                  echo $lang->get('login_field_allowphp_body',
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1634
                    array(
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1635
                      'important_notes' => '<a href="install.php?mode=pophelp&amp;topic=admin_embed_php" onclick="window.open(this.href, \'pophelpwin\', \'width=550,height=400,status=no,toolbars=no,toolbar=no,address=no,scroll=yes\'); return false;" style="color: #D84308; text-decoration: underline;">' . $lang->get('login_field_allowphp_isi') . '</a>'
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1636
                      )
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1637
                    );
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1638
                ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1639
              </span>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1640
            </small>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1641
          </td>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1642
          <td>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1643
            <label><input type="radio" name="admin_embed_php" value="2" checked="checked" /> <?php echo $lang->get('login_field_allowphp_disabled'); ?></label>&nbsp;&nbsp;
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1644
            <label><input type="radio" name="admin_embed_php" value="4" /> <?php echo $lang->get('login_field_allowphp_enabled'); ?></label>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1645
          </td>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1646
          <td></td>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1647
        </tr>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1648
        <tr><td colspan="3"><?php echo $lang->get('login_aes_blurb'); ?></td></tr>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1649
      </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1650
      <div class="pagenav">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1651
       <table border="0">
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1652
         <tr>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1653
           <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1654
             <input type="submit" value="<?php echo $lang->get('meta_btn_continue'); ?>" onclick="return cryptdata();" name="_cont" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1655
           </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1656
           <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1657
             <p>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1658
               <span style="font-weight: bold;"><?php echo $lang->get('meta_lbl_before_continue'); ?></span><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1659
               &bull; <?php echo $lang->get('login_objective_remember'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1660
             </p>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1661
           </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1662
         </tr>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1663
       </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1664
      </div>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1665
      <div id="cryptdebug"></div>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1666
      <input type="hidden" name="use_crypt" value="no" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1667
      <input type="hidden" name="crypt_key" value="<?php echo $cryptkey; ?>" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1668
      <input type="hidden" name="crypt_data" value="" />
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1669
    </form>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1670
    <script type="text/javascript">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1671
    // <![CDATA[
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1672
      var frm = document.forms.login;
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1673
      frm.admin_user.focus();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1674
      function runEncryption()
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1675
      {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1676
        str = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1677
        for(i=0;i<keySizeInBits/4;i++) str+='0';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1678
        var key = hexToByteArray(str);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1679
        var pt = hexToByteArray(str);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1680
        var ct = rijndaelEncrypt(pt, key, "ECB");
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1681
        var ect = byteArrayToHex(ct);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1682
        switch(keySizeInBits)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1683
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1684
          case 128:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1685
            v = '66e94bd4ef8a2c3b884cfa59ca342b2e';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1686
            break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1687
          case 192:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1688
            v = 'aae06992acbf52a3e8f4a96ec9300bd7aae06992acbf52a3e8f4a96ec9300bd7';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1689
            break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1690
          case 256:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1691
            v = 'dc95c078a2408989ad48a21492842087dc95c078a2408989ad48a21492842087';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1692
            break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1693
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1694
        var testpassed = ( ect == v && md5_vm_test() );
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1695
        var frm = document.forms.login;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1696
        if(testpassed)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1697
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1698
          // alert('encryption self-test passed');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1699
          frm.use_crypt.value = 'yes';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1700
          var cryptkey = frm.crypt_key.value;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1701
          frm.crypt_key.value = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1702
          if(cryptkey != byteArrayToHex(hexToByteArray(cryptkey)))
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1703
          {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1704
            alert('Byte array conversion SUCKS');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1705
            testpassed = false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1706
          }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1707
          cryptkey = hexToByteArray(cryptkey);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1708
          if(!cryptkey || ( ( typeof cryptkey == 'string' || typeof cryptkey == 'object' ) ) && cryptkey.length != keySizeInBits / 8 )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1709
          {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1710
            frm._cont.disabled = true;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1711
            len = ( typeof cryptkey == 'string' || typeof cryptkey == 'object' ) ? '\nLen: '+cryptkey.length : '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1712
            alert('The key is messed up\nType: '+typeof(cryptkey)+len);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1713
          }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1714
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1715
        else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1716
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1717
          // alert('encryption self-test FAILED');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1718
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1719
        if(testpassed)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1720
        {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1721
          pass = frm.admin_pass.value;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1722
          pass = stringToByteArray(pass);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1723
          cryptstring = rijndaelEncrypt(pass, cryptkey, 'ECB');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1724
          //decrypted = rijndaelDecrypt(cryptstring, cryptkey, 'ECB');
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1725
          //decrypted = byteArrayToString(decrypted);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1726
          //return false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1727
          if(!cryptstring)
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1728
          {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1729
            return false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1730
          }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1731
          cryptstring = byteArrayToHex(cryptstring);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1732
          // document.getElementById('cryptdebug').innerHTML = '<pre>Data: '+cryptstring+'<br />Key:  '+byteArrayToHex(cryptkey)+'</pre>';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1733
          frm.crypt_data.value = cryptstring;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1734
          frm.admin_pass.value = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1735
          frm.admin_pass_confirm.value = '';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1736
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1737
        return false;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1738
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1739
      // ]]>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1740
    </script>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1741
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1742
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1743
  case "confirm":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1744
    if(!isset($_POST['_cont'])) {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1745
      echo 'No POST data signature found. Please <a href="install.php?mode=sysreqs">restart the installation</a>.';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1746
      $template->footer();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1747
      exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1748
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1749
    unset($_POST['_cont']);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1750
    ?>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1751
    <form name="confirm" action="install.php?mode=install" method="post">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1752
      <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1753
        $k = array_keys($_POST);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1754
        for($i=0;$i<sizeof($_POST);$i++) {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1755
          echo '<input type="hidden" name="'.htmlspecialchars($k[$i]).'" value="'.htmlspecialchars($_POST[$k[$i]]).'" />'."\n";
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1756
        }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1757
      ?>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1758
      <h3><?php echo $lang->get('confirm_header_blurb_title'); ?></h3>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1759
       <p><?php echo $lang->get('confirm_header_blurb_body'); ?></p>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1760
      <ul>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1761
        <li><?php echo $lang->get('confirm_lbl_db_host'); ?> <?php echo $_POST['db_host']; ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1762
        <li><?php echo $lang->get('confirm_lbl_db_name'); ?> <?php echo $_POST['db_name']; ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1763
        <li><?php echo $lang->get('confirm_lbl_db_user'); ?> <?php echo $_POST['db_user']; ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1764
        <li><?php echo $lang->get('confirm_lbl_db_pass'); ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1765
        <li><?php echo $lang->get('confirm_lbl_sitename'); ?> <?php echo $_POST['sitename']; ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1766
        <li><?php echo $lang->get('confirm_lbl_sitedesc'); ?> <?php echo $_POST['sitedesc']; ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1767
        <li><?php echo $lang->get('confirm_lbl_adminuser'); ?> <?php echo $_POST['admin_user']; ?></li>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1768
        <li><?php echo $lang->get('confirm_lbl_aesbits'); ?> <?php echo $lang->get('confirm_lbl_aes_strength', array( 'aes_bits' => AES_BITS )); ?><br /><small><?php echo $lang->get('confirm_lbl_aes_change'); ?></small></li>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1769
      </ul>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1770
      <div class="pagenav">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1771
        <table border="0">
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1772
          <tr>
249
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1773
            <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1774
              <input type="submit" value="<?php echo $lang->get('confirm_btn_install_enano'); ?>" name="_cont" />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1775
            </td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1776
            <td>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1777
              <p>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1778
                <span style="font-weight: bold;"><?php echo $lang->get('meta_lbl_before_continue'); ?></span><br />
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1779
                <!-- Like this even needs to be localized. :-P -->
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1780
                &bull; <?php echo $lang->get('confirm_objective_pray'); ?>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1781
              </p>
f4323fa79313 Fully localized all of the installer except the install and finish pages
Dan
parents: 248
diff changeset
  1782
            </td>
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1783
          </tr>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1784
        </table>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1785
      </div>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1786
    </form>
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1787
    <?php
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1788
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1789
  case "install":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1790
    if(!isset($_POST['db_host']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1791
       !isset($_POST['db_name']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1792
       !isset($_POST['db_user']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1793
       !isset($_POST['db_pass']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1794
       !isset($_POST['sitename']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1795
       !isset($_POST['sitedesc']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1796
       !isset($_POST['copyright']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1797
       !isset($_POST['admin_user']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1798
       !isset($_POST['admin_pass']) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1799
       !isset($_POST['admin_embed_php']) || ( isset($_POST['admin_embed_php']) && !in_array($_POST['admin_embed_php'], array('2', '4')) ) ||
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1800
       !isset($_POST['urlscheme'])
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1801
       )
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1802
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1803
      echo 'The installer has detected that one or more required form values is not set. Please <a href="install.php?mode=license">restart the installation</a>.';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1804
      $template->footer();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1805
      exit;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1806
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1807
    switch($_POST['urlscheme'])
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1808
    {
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1809
      case "ugly":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1810
      default:
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1811
        $cp = scriptPath.'/index.php?title=';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1812
        break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1813
      case "short":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1814
        $cp = scriptPath.'/index.php/';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1815
        break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1816
      case "tiny":
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1817
        $cp = scriptPath.'/';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1818
        break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1819
    }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1820
    function err($t) { global $template; echo $t; $template->footer(); exit; }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1821
    
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1822
    // $stages = array('connect', 'decrypt', 'genkey', 'parse', 'sql', 'writeconfig', 'renameconfig', 'startapi', 'initlogs');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1823
    
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1824
    if ( !preg_match('/^[a-z0-9_-]*$/', $_POST['table_prefix']) )
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1825
      err('Hacking attempt was detected in table_prefix.');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1826
    
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1827
      start_install_table();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1828
      // The stages connect, decrypt, genkey, and parse are preprocessing and don't do any actual data modification.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1829
      // Thus, they need to be run on each retry, e.g. never skipped.
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1830
      run_installer_stage('connect', $lang->get('install_stg_connect_title'), 'stg_mysql_connect', $lang->get('install_stg_connect_body'), false);
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1831
      if ( isset($_POST['drop_tables']) )
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1832
      {
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1833
        // Are we supposed to drop any existing tables? If so, do it now
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1834
        run_installer_stage('drop', $lang->get('install_stg_drop_title'), 'stg_drop_tables', 'This step never returns failure');
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1835
      }
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1836
      run_installer_stage('decrypt', $lang->get('install_stg_decrypt_title'), 'stg_decrypt_admin_pass', $lang->get('install_stg_decrypt_body'), false);
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1837
      run_installer_stage('genkey', $lang->get('install_stg_genkey_title', array( 'aes_bits' => AES_BITS )), 'stg_generate_aes_key', $lang->get('install_stg_genkey_body'), false);
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1838
      run_installer_stage('parse', $lang->get('install_stg_parse_title'), 'stg_parse_schema', $lang->get('install_stg_parse_body'), false);
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1839
      run_installer_stage('sql', $lang->get('install_stg_sql_title'), 'stg_install', $lang->get('install_stg_sql_body'), false);
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1840
      run_installer_stage('writeconfig', $lang->get('install_stg_writeconfig_title'), 'stg_write_config', $lang->get('install_stg_writeconfig_body'));
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1841
      run_installer_stage('renameconfig', $lang->get('install_stg_rename_title'), 'stg_rename_config', $lang->get('install_stg_rename_body'));
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1842
      
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1843
      // Mainstream installation complete - Enano should be usable now
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1844
      // The stage of starting the API is special because it has to be called out of function context.
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1845
      // To alleviate this, we have two functions, one that returns success and one that returns failure
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1846
      // If the Enano API init is successful, the success function is called to report the action to the user
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1847
      // If unsuccessful, the failure report is sent
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1848
      
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1849
      $template_bak = $template;
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1850
      
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1851
      $_GET['title'] = 'Main_Page';
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1852
      require('includes/common.php');
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1853
      
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1854
      if ( is_object($db) && is_object($session) )
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1855
      {
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1856
        run_installer_stage('startapi', $lang->get('install_stg_startapi_title'), 'stg_start_api_success', '...', false);
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1857
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1858
      else
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1859
      {
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1860
        run_installer_stage('startapi', $lang->get('install_stg_startapi_title'), 'stg_start_api_failure', $lang->get('install_stg_startapi_body'), false);
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1861
      }
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1862
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1863
      // We need to be logged in (with admin rights) before logs can be flushed
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1864
      $admin_password = stg_decrypt_admin_pass(true);
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1865
      $session->login_without_crypto($_POST['admin_user'], $admin_password, false);
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1866
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1867
      // Now that login cookies are set, initialize the session manager and ACLs
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1868
      $session->start();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1869
      $paths->init();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1870
      
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1871
      run_installer_stage('importlang', $lang->get('install_stg_importlang_title'), 'stg_import_language', $lang->get('install_stg_importlang_body'));
240
f0149a27df5f Localized default sidebar; installer should work now including the lang import; l10n in installer to follow
Dan
parents: 239
diff changeset
  1872
      
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1873
      run_installer_stage('initlogs', $lang->get('install_stg_initlogs_title'), 'stg_init_logs', $lang->get('install_stg_initlogs_body'));
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1874
      close_install_table();
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1875
      
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1876
      unset($template);
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1877
      $template =& $template_bak;
238
a78537db2850 Merge in new installer framework from stable
Dan
parents: 231 237
diff changeset
  1878
    
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1879
      echo '<h3>' . $lang->get('install_msg_complete_title') . '</h3>';
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1880
      echo '<p>' . $lang->get('install_msg_complete_body', array('finish_link' => 'install.php?mode=finish')) . '</p>';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1881
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1882
      // echo '<script type="text/javascript">window.location="'.scriptPath.'/install.php?mode=finish";</script>';
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1883
      
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1884
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1885
  case "finish":
252
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1886
    echo '<h3>' . $lang->get('finish_msg_congratulations') . '</h3>
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1887
           ' . $lang->get('finish_body') . '
96b72228bda0 Installer should now be fully localized, yay!
Dan
parents: 251
diff changeset
  1888
           <p>' . $lang->get('finish_link_mainpage', array('mainpage_link' => 'index.php')) . '</p>';
204
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1889
    break;
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1890
}
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1891
$template->footer();
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1892
 
473cc747022a You know what folks, a lot of Mercurial merges failed, and I just now figured out why. So now all changes from stable are permanently synced in.
Dan
parents: 180 198
diff changeset
  1893
?>