Make installation from scratch work with migration page
This commit is contained in:
parent
1578703de6
commit
c533645d29
@ -0,0 +1,60 @@
|
|||||||
|
<?php
|
||||||
|
namespace Framadate\Migration;
|
||||||
|
|
||||||
|
class From_0_0_to_0_8_Migration implements Migration {
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This methode is called only one time in the migration page.
|
||||||
|
*
|
||||||
|
* @param \PDO $pdo The connection to database
|
||||||
|
* @return bool true is the execution succeeded
|
||||||
|
*/
|
||||||
|
function execute(\PDO $pdo) {
|
||||||
|
$pdo->exec('
|
||||||
|
CREATE TABLE IF NOT EXISTS `sondage` (
|
||||||
|
`id_sondage` char(16) NOT NULL,
|
||||||
|
`commentaires` text,
|
||||||
|
`mail_admin` varchar(128) DEFAULT NULL,
|
||||||
|
`nom_admin` varchar(64) DEFAULT NULL,
|
||||||
|
`titre` text,
|
||||||
|
`id_sondage_admin` char(24) DEFAULT NULL,
|
||||||
|
`date_creation` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
`date_fin` timestamp NOT NULL DEFAULT \'0000-00-00 00:00:00\',
|
||||||
|
`format` varchar(2) DEFAULT NULL,
|
||||||
|
`mailsonde` tinyint(1) DEFAULT \'0\',
|
||||||
|
`statut` int(11) NOT NULL DEFAULT \'1\' COMMENT \'1 = actif ; 0 = inactif ; \',
|
||||||
|
UNIQUE KEY `id_sondage` (`id_sondage`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;');
|
||||||
|
|
||||||
|
$pdo->exec('
|
||||||
|
CREATE TABLE IF NOT EXISTS `sujet_studs` (
|
||||||
|
`id_sondage` char(16) NOT NULL,
|
||||||
|
`sujet` text,
|
||||||
|
KEY `id_sondage` (`id_sondage`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;');
|
||||||
|
|
||||||
|
$pdo->exec('
|
||||||
|
CREATE TABLE IF NOT EXISTS `comments` (
|
||||||
|
`id_comment` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`id_sondage` char(16) NOT NULL,
|
||||||
|
`comment` text NOT NULL,
|
||||||
|
`usercomment` text,
|
||||||
|
PRIMARY KEY (`id_comment`),
|
||||||
|
KEY `id_sondage` (`id_sondage`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;');
|
||||||
|
|
||||||
|
$pdo->exec('
|
||||||
|
CREATE TABLE IF NOT EXISTS `user_studs` (
|
||||||
|
`id_users` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
`nom` varchar(64) NOT NULL,
|
||||||
|
`id_sondage` char(16) NOT NULL,
|
||||||
|
`reponses` text NOT NULL,
|
||||||
|
PRIMARY KEY (`id_users`),
|
||||||
|
KEY `id_sondage` (`id_sondage`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -46,7 +46,7 @@ function bandeau_titre($titre)
|
|||||||
|
|
||||||
global $connect;
|
global $connect;
|
||||||
$tables = $connect->allTables();
|
$tables = $connect->allTables();
|
||||||
$diff = array_diff($tables, ['comment', 'poll', 'slot', 'vote']);
|
$diff = array_diff([Utils::table('comment'), Utils::table('poll'), Utils::table('slot'), Utils::table('vote')], $tables);
|
||||||
if (0 != count($diff)) {
|
if (0 != count($diff)) {
|
||||||
echo '<div class="alert alert-danger">'. _('Framadate is not properly installed, please check the "INSTALL" to setup the database before continuing.') .'</div>';
|
echo '<div class="alert alert-danger">'. _('Framadate is not properly installed, please check the "INSTALL" to setup the database before continuing.') .'</div>';
|
||||||
bandeau_pied();
|
bandeau_pied();
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
|
use Framadate\Migration\From_0_0_to_0_8_Migration;
|
||||||
use Framadate\Migration\From_0_8_to_0_9_Migration;
|
use Framadate\Migration\From_0_8_to_0_9_Migration;
|
||||||
use Framadate\Migration\Migration;
|
use Framadate\Migration\Migration;
|
||||||
use Framadate\Utils;
|
use Framadate\Utils;
|
||||||
@ -11,6 +12,7 @@ function output($msg) {
|
|||||||
|
|
||||||
// List a Migration sub classes to execute
|
// List a Migration sub classes to execute
|
||||||
$migrations = [
|
$migrations = [
|
||||||
|
new From_0_0_to_0_8_Migration(),
|
||||||
new From_0_8_to_0_9_Migration()
|
new From_0_8_to_0_9_Migration()
|
||||||
];
|
];
|
||||||
// ---------------------------------------
|
// ---------------------------------------
|
||||||
|
Loading…
Reference in New Issue
Block a user