diff options
author | Brion Vibber <brion@users.mediawiki.org> | 2004-10-24 22:20:52 +0000 |
---|---|---|
committer | Brion Vibber <brion@users.mediawiki.org> | 2004-10-24 22:20:52 +0000 |
commit | 7c08615a60ad907309d9e58635c203d239e5a970 (patch) | |
tree | 1ad82af3a38b0285c1ab6b9b17b1d6ab1c8defa8 | |
parent | a263b7c9f05cbee2e8e53df017eafe04a073314b (diff) | |
download | mediawikicore-7c08615a60ad907309d9e58635c203d239e5a970.tar.gz mediawikicore-7c08615a60ad907309d9e58635c203d239e5a970.zip |
Install fixes for group table
Notes
Notes:
http://mediawiki.org/wiki/Special:Code/MediaWiki/6072
-rw-r--r-- | config/index.php | 1 | ||||
-rw-r--r-- | maintenance/archives/patch-userlevels.sql | 1 | ||||
-rw-r--r-- | maintenance/tables.sql | 1 | ||||
-rw-r--r-- | maintenance/updaters.inc | 20 |
4 files changed, 23 insertions, 0 deletions
diff --git a/config/index.php b/config/index.php index c1b217c67108..63ba307ede0b 100644 --- a/config/index.php +++ b/config/index.php @@ -492,6 +492,7 @@ if( $conf->posted && ( 0 == count( $errs ) ) ) { print "<li>Creating tables..."; dbsource( "../maintenance/tables.sql", $wgDatabase ); dbsource( "../maintenance/interwiki.sql", $wgDatabase ); + dbsource( "../maintenance/archives/patch-userlevels-defaultgroups.sql", $wgDatabase ); print " done.</li>\n"; print "<li>Initializing data..."; diff --git a/maintenance/archives/patch-userlevels.sql b/maintenance/archives/patch-userlevels.sql index af83fabb2f6b..ccaa2665e105 100644 --- a/maintenance/archives/patch-userlevels.sql +++ b/maintenance/archives/patch-userlevels.sql @@ -8,6 +8,7 @@ CREATE TABLE `group` ( group_id int(5) unsigned NOT NULL auto_increment, group_name varchar(50) NOT NULL default '', group_description varchar(255) NOT NULL default '', + group_rights tinyblob, PRIMARY KEY (group_id) ); diff --git a/maintenance/tables.sql b/maintenance/tables.sql index 521f1700729a..db2c0704ce9f 100644 --- a/maintenance/tables.sql +++ b/maintenance/tables.sql @@ -347,6 +347,7 @@ CREATE TABLE `group` ( group_id int(5) unsigned NOT NULL auto_increment, group_name varchar(50) NOT NULL default '', group_description varchar(255) NOT NULL default '', + group_rights tinyblob, PRIMARY KEY (group_id) ); diff --git a/maintenance/updaters.inc b/maintenance/updaters.inc index 5a8632ecabad..8fb599b215ea 100644 --- a/maintenance/updaters.inc +++ b/maintenance/updaters.inc @@ -19,6 +19,7 @@ $wgNewTables = array( array( 'categorylinks', 'patch-categorylinks.sql' ), array( 'logging', 'patch-logging.sql' ), array( 'user_rights', 'patch-user_rights.sql' ), + array( 'user_groups', 'patch-userlevels.sql' ), ); $wgNewFields = array( @@ -142,6 +143,22 @@ function do_image_name_unique_update() { } } +# Assumes that the group table has been added. +function do_group_update() { + global $wgDatabase; + $res = $wgDatabase->safeQuery( 'SELECT COUNT(*) AS c FROM !', + $wgDatabase->tableName( 'group' ) ); + $row = $wgDatabase->fetchObject( $res ); + $wgDatabase->freeResult( $res ); + if( $row->c == 0 ) { + echo "Adding default group definitions... "; + dbsource( "maintenance/archives/patch-userlevels-defaultgroups.sql", $wgDatabase ); + echo "ok\n"; + } else { + echo "...group definitions already in place.\n"; + } +} + function do_all_updates() { global $wgNewTables, $wgNewFields; @@ -156,6 +173,9 @@ function do_all_updates() { add_table( $fieldRecord[0], $fieldRecord[1], $fieldRecord[2] ); flush(); } + + # Add default group data + do_group_update(); flush(); # Do schema updates which require special handling do_interwiki_update(); flush(); |