Updated install and fixed bugs
Added session messages display Fixed field and validator loading. Updated form validation Updated root config management Muted error reporting in file evaluation Added menu updates Fixed galaxy data access error Fixed config bug Added HTTP request method checks Added Form manager Fixed core bugs Signed-off-by: Gregory PLANCHAT <g.planchat@gmail.com>
This commit is contained in:
parent
c38e53706e
commit
9636b4bb00
69 changed files with 2434 additions and 789 deletions
|
|
@ -32,44 +32,158 @@ define('INSIDE' , true);
|
|||
define('INSTALL', false);
|
||||
define('IN_INSTALL', true);
|
||||
|
||||
define('ROOT_PATH', dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR);
|
||||
define('PHPEXT', include ROOT_PATH . 'extension.inc');
|
||||
define('STEP_SYSTEM', 1);
|
||||
define('STEP_DATABASE', 2);
|
||||
define('STEP_PROFILE', 3);
|
||||
define('STEP_UNIVERSE', 4);
|
||||
define('STEP_CONFIG', 5);
|
||||
|
||||
define('DEFAULT_SKINPATH', '../skins/xnova/');
|
||||
define('TEMPLATE_DIR', realpath(ROOT_PATH . '/templates/'));
|
||||
define('TEMPLATE_NAME', 'OpenGame');
|
||||
define('DEFAULT_LANG', 'fr');
|
||||
$dpath = DEFAULT_SKINPATH;
|
||||
require_once dirname(dirname(__FILE__)) .'/application/bootstrap.php';
|
||||
|
||||
include(ROOT_PATH . 'includes/debug.class.'.PHPEXT);
|
||||
$debug = new debug();
|
||||
|
||||
include(ROOT_PATH . 'includes/constants.' . PHPEXT);
|
||||
include(ROOT_PATH . 'includes/functions.' . PHPEXT);
|
||||
include(ROOT_PATH . 'includes/unlocalised.' . PHPEXT);
|
||||
include(ROOT_PATH . 'includes/todofleetcontrol.' . PHPEXT);
|
||||
include(ROOT_PATH . 'language/' . DEFAULT_LANG . '/lang_info.cfg');
|
||||
include(ROOT_PATH . 'includes/vars.' . PHPEXT);
|
||||
include(ROOT_PATH . 'includes/db.' . PHPEXT);
|
||||
include(ROOT_PATH . 'includes/strings.' . PHPEXT);
|
||||
|
||||
include(ROOT_PATH . 'includes/databaseinfos.php');
|
||||
include(ROOT_PATH . 'includes/migrateinfo.php');
|
||||
//include(ROOT_PATH . 'includes/databaseinfos.php');
|
||||
//include(ROOT_PATH . 'includes/migrateinfo.php');
|
||||
|
||||
$mode = isset($_GET['mode']) ? strval($_GET['mode']) : 'intro';
|
||||
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
|
||||
$nextPage = $page + 1;
|
||||
$step = isset($_GET['step']) ? intval($_GET['step']) : 1;
|
||||
$prevStep = $step - 1;
|
||||
$nextStep = $step + 1;
|
||||
|
||||
$mainTpl = gettemplate('install/ins_body');
|
||||
includeLang('install/install');
|
||||
|
||||
$baseUrl = (isset($_SERVER["HTTPS"]) && strtolower($_SERVER["HTTPS"]) == "on" ? 'https://' : 'http://')
|
||||
. $_SERVER["SERVER_NAME"] . ($_SERVER["SERVER_PORT"] != "80" ? ":{$_SERVER["SERVER_PORT"]}" : '');
|
||||
if (isset($_SERVER['REQUEST_URI'])) {
|
||||
if (strrpos($_SERVER['REQUEST_URI'], '/') == (strlen($_SERVER['REQUEST_URI']) - 1)) {
|
||||
$baseUrl .= dirname($_SERVER['REQUEST_URI']) . '/';
|
||||
} else {
|
||||
$baseUrl .= dirname(dirname($_SERVER['REQUEST_URI'])) . '/';
|
||||
}
|
||||
}
|
||||
Wootook::setConfig('global/web/base_url', $baseUrl);
|
||||
|
||||
Wootook::setConfig('global/package', 'install');
|
||||
Wootook::setConfig('global/theme', 'default');
|
||||
Wootook::setconfig('global/layout', array(
|
||||
'page' => 'page.php',
|
||||
'install' => 'install.php'
|
||||
));
|
||||
|
||||
$session = Wootook::getSession('install');
|
||||
$layout = new Wootook_Core_Layout();
|
||||
$request = new Wootook_Core_Controller_Request_Http();
|
||||
$response = new Wootook_Core_Controller_Response_Http();
|
||||
|
||||
switch ($mode) {
|
||||
case 'intro':
|
||||
$subTpl = gettemplate('install/ins_intro');
|
||||
$bloc = $lang;
|
||||
$bloc['dpath'] = $dpath;
|
||||
$frame = parsetemplate($subTpl, $bloc);
|
||||
break;
|
||||
case 'intro':
|
||||
$layout->load('install.intro');
|
||||
$session->setData('step', 1);
|
||||
break;
|
||||
|
||||
case 'install':
|
||||
$session->addError('Test %s', 'Hello world!');
|
||||
if ($step != $session->getData('step')) {
|
||||
$session->setData('step', 0);
|
||||
$response->setRedirect("?mode=intro", Wootook_Core_Controller_Response_Http::REDIRECT_TEMPORARY);
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
switch ($step) {
|
||||
case STEP_SYSTEM:
|
||||
if ($request->isPost()) {
|
||||
$form = new Wootook_Core_Form($session, array(
|
||||
'url_path' => 'text'
|
||||
));
|
||||
$form->addField('url_path');
|
||||
$form->setRequest($request);
|
||||
$form->populate();
|
||||
|
||||
if (!$form->validate()) {
|
||||
$session->setData('step', $step);
|
||||
$session->setFormData($form->getData());
|
||||
var_dump($session);
|
||||
$response->setRedirect("?mode=install&step={$step}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->getMessagesblock()->prepareMessages('install');
|
||||
$session->setBaseUrl($request->getPost('url_path'));
|
||||
|
||||
$session->setStep(STEP_DATABASE);
|
||||
$response->setRedirect("?mode=install&step={$nextStep}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->load('install.step.system');
|
||||
break;
|
||||
|
||||
case STEP_DATABASE:
|
||||
if ($request->isPost()) {
|
||||
$form = new Wootook_Core_Form($session, array(
|
||||
'host' => 'text',
|
||||
'port' => 'text',
|
||||
'user' => 'text',
|
||||
'password' => 'text',
|
||||
'dbname' => 'text',
|
||||
'prefix' => 'text',
|
||||
));
|
||||
$form->setRequest($request);
|
||||
$form->populate();
|
||||
|
||||
if (!$form->validate()) {
|
||||
$session->setData('step', $step);
|
||||
$session->setFormData($request->getPost());
|
||||
$response->setRedirect("?mode=install&step={$step}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->getMessagesblock()->prepareMessages('install');
|
||||
$session->setStep(STEP_PROFILE);
|
||||
$response->setRedirect("?mode=install&step={$nextStep}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->load('install.database');
|
||||
break;
|
||||
|
||||
case STEP_PROFILE:
|
||||
if (empty($_POST)) {
|
||||
$session->setData('step', $step);
|
||||
$response->setRedirect("?mode=install&step={$nextStep}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->load('install.profile');
|
||||
break;
|
||||
|
||||
case STEP_UNIVERSE:
|
||||
if (empty($_POST)) {
|
||||
$session->setData('step', $step);
|
||||
$response->setRedirect("?mode=install&step={$nextStep}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->load('install.universe');
|
||||
break;
|
||||
|
||||
case STEP_CONFIG:
|
||||
if (empty($_POST)) {
|
||||
$session->setData('step', $step);
|
||||
$response->setRedirect("?mode=install&step={$nextStep}");
|
||||
$response->sendHeaders();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$layout->load('install.config');
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'ins':
|
||||
if ($page == 1) {
|
||||
|
|
@ -345,12 +459,4 @@ EOF;
|
|||
die();
|
||||
}
|
||||
|
||||
|
||||
$parse = $lang;
|
||||
$parse['ins_state'] = $page;
|
||||
$parse['ins_page'] = $frame;
|
||||
$parse['dis_ins_btn'] = "?mode=$mode&page=$nextPage";
|
||||
$parse['dpath'] = $dpath;
|
||||
$data = parsetemplate($mainTpl, $parse);
|
||||
|
||||
display($data, "Installeur", false, '', true);
|
||||
echo $layout->render();
|
||||
|
|
|
|||
98
install/upgrade-galaxy.php
Normal file
98
install/upgrade-galaxy.php
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
<?php
|
||||
|
||||
$galaxyCount = 3;
|
||||
$systemCount = 100;
|
||||
|
||||
$sql = <<<SQL_EOF
|
||||
INSERT INTO `game_galaxy` (`galaxy`, `system`, `planet`, `id_planet`, `metal`, `crystal`, `id_luna`, `luna`)
|
||||
SELECT _increment.galaxy, _increment.system, 0, 0, 0, 0, 0, 0
|
||||
FROM (
|
||||
SELECT _galaxy.galaxy, (1 + _10e0.system + _10e1.system + _10e2.system) system
|
||||
FROM (
|
||||
SELECT 0 AS system
|
||||
UNION ALL
|
||||
SELECT 1 AS system
|
||||
UNION ALL
|
||||
SELECT 2 AS system
|
||||
UNION ALL
|
||||
SELECT 3 AS system
|
||||
UNION ALL
|
||||
SELECT 4 AS system
|
||||
UNION ALL
|
||||
SELECT 5 AS system
|
||||
UNION ALL
|
||||
SELECT 6 AS system
|
||||
UNION ALL
|
||||
SELECT 7 AS system
|
||||
UNION ALL
|
||||
SELECT 8 AS system
|
||||
UNION ALL
|
||||
SELECT 9 AS system
|
||||
) _10e0
|
||||
CROSS JOIN (
|
||||
SELECT 0 AS system
|
||||
UNION ALL
|
||||
SELECT 10 AS system
|
||||
UNION ALL
|
||||
SELECT 20 AS system
|
||||
UNION ALL
|
||||
SELECT 30 AS system
|
||||
UNION ALL
|
||||
SELECT 40 AS system
|
||||
UNION ALL
|
||||
SELECT 50 AS system
|
||||
UNION ALL
|
||||
SELECT 60 AS system
|
||||
UNION ALL
|
||||
SELECT 70 AS system
|
||||
UNION ALL
|
||||
SELECT 80 AS system
|
||||
UNION ALL
|
||||
SELECT 90 AS system
|
||||
) _10e1
|
||||
CROSS JOIN (
|
||||
SELECT 0 AS system
|
||||
UNION ALL
|
||||
SELECT 100 AS system
|
||||
UNION ALL
|
||||
SELECT 200 AS system
|
||||
UNION ALL
|
||||
SELECT 300 AS system
|
||||
UNION ALL
|
||||
SELECT 400 AS system
|
||||
UNION ALL
|
||||
SELECT 500 AS system
|
||||
UNION ALL
|
||||
SELECT 600 AS system
|
||||
UNION ALL
|
||||
SELECT 700 AS system
|
||||
UNION ALL
|
||||
SELECT 800 AS system
|
||||
UNION ALL
|
||||
SELECT 900 AS system
|
||||
) _10e2
|
||||
CROSS JOIN (
|
||||
SELECT 1 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 2 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 3 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 4 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 5 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 6 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 7 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 8 AS galaxy
|
||||
UNION ALL
|
||||
SELECT 9 AS galaxy
|
||||
) _galaxy
|
||||
) _increment
|
||||
|
||||
WHERE _increment.galaxy<={$galaxyCount}
|
||||
AND _increment.system<={$systemCount}
|
||||
SQL_EOF;
|
||||
|
||||
Loading…
Reference in a new issue