https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114757
Revision: 114757
Author: laner
Date: 2012-04-06 01:17:05 +0000 (Fri, 06 Apr 2012)
Log Message:
-----------
Add a boolean to check whether a group is global or not. Fixes bug 34052.
Modified Paths:
--------------
trunk/extensions/OpenStackManager/OpenStackManager.php
trunk/extensions/OpenStackManager/OpenStackNovaPuppetGroup.php
trunk/extensions/OpenStackManager/openstack.sql
Added Paths:
-----------
trunk/extensions/OpenStackManager/schema-changes/openstack_group_is_global_field.sql
Modified: trunk/extensions/OpenStackManager/OpenStackManager.php
===================================================================
--- trunk/extensions/OpenStackManager/OpenStackManager.php 2012-04-06
01:02:35 UTC (rev 114756)
+++ trunk/extensions/OpenStackManager/OpenStackManager.php 2012-04-06
01:17:05 UTC (rev 114757)
@@ -177,6 +177,7 @@
$updater->addExtensionTable( 'openstack_puppet_vars',
"$base/openstack.sql" );
$updater->addExtensionTable( 'openstack_puppet_classes',
"$base/openstack.sql" );
$updater->addExtensionUpdate( array( 'addField',
'openstack_puppet_groups', 'group_project',
"$base/schema-changes/openstack_project_field.sql", true ) );
+ $updater->addExtensionUpdate( array( 'addField',
'openstack_puppet_groups', 'group_is_global',
"$base/schema-changes/openstack_group_is_global_field.sql", true ) );
break;
}
return true;
Modified: trunk/extensions/OpenStackManager/OpenStackNovaPuppetGroup.php
===================================================================
--- trunk/extensions/OpenStackManager/OpenStackNovaPuppetGroup.php
2012-04-06 01:02:35 UTC (rev 114756)
+++ trunk/extensions/OpenStackManager/OpenStackNovaPuppetGroup.php
2012-04-06 01:17:05 UTC (rev 114757)
@@ -74,7 +74,8 @@
array( 'group_id',
'group_name',
'group_position',
- 'group_project' ),
+ 'group_project',
+ 'group_is_global' ),
array( 'group_name' => $name,
'group_project' => $project ),
__METHOD__ );
@@ -98,7 +99,8 @@
'group_id',
'group_name',
'group_position',
- 'group_project' ),
+ 'group_project',
+ 'group_is_global' ),
array( 'group_id' => intval( $id ) ),
__METHOD__ );
@@ -167,14 +169,15 @@
if ( $project ) {
$condition = 'group_project = ' . $dbr->addQuotes(
$project );
} else {
- $condition = 'group_project is NULL';
+ $condition = 'group_is_global = true';
}
$rows = $dbr->select(
'openstack_puppet_groups',
array( 'group_id',
'group_name',
'group_position',
- 'group_project', ),
+ 'group_project',
+ 'group_is_global' ),
$condition,
__METHOD__,
array( 'ORDER BY' => 'group_position ASC' ) // FIXME:
Unindexed
@@ -245,13 +248,19 @@
* @param $position int
* @return bool
*/
- public static function addGroup( $name, $position, $project=null ) {
+ public static function addGroup( $name, $position, $project='' ) {
+ if ( $project ) {
+ $group_is_global = true;
+ } else {
+ $group_is_global = false;
+ }
$dbw = wfGetDB( DB_MASTER );
return $dbw->insert(
'openstack_puppet_groups',
array( 'group_name' => $name,
'group_position' => $position,
'group_project' => $project,
+ 'group_is_global' => $group_is_global,
),
__METHOD__
);
Modified: trunk/extensions/OpenStackManager/openstack.sql
===================================================================
--- trunk/extensions/OpenStackManager/openstack.sql 2012-04-06 01:02:35 UTC
(rev 114756)
+++ trunk/extensions/OpenStackManager/openstack.sql 2012-04-06 01:17:05 UTC
(rev 114757)
@@ -7,11 +7,14 @@
group_name varchar(255) binary not null,
-- Position of group when displayed
- group_position int not null
+ group_position int not null,
-- OpenStack project to which this group belongs, if any
group_project varchar(255) binary,
+ -- OpenStack project to which this group belongs, if any
+ group_is_global boolean not null,
+
) /*$wgDBTableOptions*/;
CREATE INDEX /*i*/group_name on /*_*/openstack_puppet_groups (group_name);
Added:
trunk/extensions/OpenStackManager/schema-changes/openstack_group_is_global_field.sql
===================================================================
---
trunk/extensions/OpenStackManager/schema-changes/openstack_group_is_global_field.sql
(rev 0)
+++
trunk/extensions/OpenStackManager/schema-changes/openstack_group_is_global_field.sql
2012-04-06 01:17:05 UTC (rev 114757)
@@ -0,0 +1,2 @@
+ALTER TABLE /*_*/openstack_puppet_groups
+ ADD COLUMN group_is_global boolean not null default false;
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs