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;
|
||||
$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)) {
|
||||
echo '<div class="alert alert-danger">'. _('Framadate is not properly installed, please check the "INSTALL" to setup the database before continuing.') .'</div>';
|
||||
bandeau_pied();
|
||||
|
@ -1,4 +1,5 @@
|
||||
<?php
|
||||
use Framadate\Migration\From_0_0_to_0_8_Migration;
|
||||
use Framadate\Migration\From_0_8_to_0_9_Migration;
|
||||
use Framadate\Migration\Migration;
|
||||
use Framadate\Utils;
|
||||
@ -11,6 +12,7 @@ function output($msg) {
|
||||
|
||||
// List a Migration sub classes to execute
|
||||
$migrations = [
|
||||
new From_0_0_to_0_8_Migration(),
|
||||
new From_0_8_to_0_9_Migration()
|
||||
];
|
||||
// ---------------------------------------
|
||||
|
Loading…
Reference in New Issue
Block a user