Extension talk:BizzWiki/resolved

From mediawiki.org

Moving a Page while a sysop (RESOLVED)[edit]

[user:Bbutler|Brian Butler] Attempting to move a page while logged in a sysop results in the following

Not logged in
You must be a registered user and logged in to move a page.
Return to Main Page.

(and NS_SPECIAL related error message that I can't read)

I also tried this after I Unlocked Move Permissions (in the Protect tab) and Selected each of the available options - no luck, same problem

(same site as below - I've created a mediawiki account to facilitate communication)

Resolution[edit]

Thanks again for your help. I have fixed Special:Movepage. The update is already available in SVN trunk and integrated in 1_10_5. [user:jldupont|Jean-Lou Dupont] 02:37, 5 July 2007 (UTC)Reply


Great idea, but.... (RESOLVED)[edit]

This is a great idea. However, when I install it, it messes up the sidebar, locks all the pages, and doesn't install any of the Special pages... I'm not sure how to describe it in any more detail - other than it doesn't work. (Using MW 1.10.0). Any suggestions on where to start with debugging?

First off, which BizzWiki release are you using?
Bizzwiki 1_10_3
Second, the 'locking all the pages' can be normal: it depends what 'rights' has the user you are trying to access the site with. The whole idea behind BizzWiki is to provide finer grained rights management.
I was testing it with my sysop account and I couldn't edit anything with that account (which from reading the setup doesn't seem right)
Did you put the require('BizzWiki/BizzWikiSettings.php'); line at the very end of LocalSettings.php? [user:jldupont|Jean-Lou Dupont] 17:33, 4 July 2007 (UTC)Reply
Thirdly, what do you mean by 'messes up the sidebar'? Have you tried modifying the 'Mediawiki:Sidebar/groupXYZ' pages and require more info about how to do this?
Finally, I can lend a hand 'debugging' if you can contact me through email using [user:jldupont].

[user:jldupont|Jean-Lou Dupont] 12:40, 4 July 2007 (UTC)Reply

I have fixed the sidebar bug. Upon fresh installs, the extension did not detect correctly sidebar/$group page. Thanks for the info. [user:jldupont|Jean-Lou Dupont] 13:12, 4 July 2007 (UTC)Reply
Just did a fresh install on my machine as per the installation note I have provided and it works OK. Please provide more details about the problems you are experiencing (whilst considering I have corrected the sidebar bug). [user:jldupont|Jean-Lou Dupont] 13:21, 4 July 2007 (UTC)Reply

Resolution[edit]

The problem was related to the fact that the BizzWiki package wasn't uncompressed in the root Mediawiki installation. This is a requirement as the BizzWiki package updates some standard Mediawiki files in the 'root/includes' directory. [user:jldupont|Jean-Lou Dupont] 21:08, 4 July 2007 (UTC)Reply

Recent changes disappear and suggestions on simple namespace and group creation[edit]

I was about to install your Heirarchical Namespace Permissions but since there were some dependencies installed the lot (i.e. Bizzwiki). After adding the require in LocalSettings.php but before making any changes to BizzWikiSettings.php I noticed that the navigation > Recent changes page had been completely wiped. That freaked me a bit but might be a permission thing. For the moment I've uninstalled the extension just so as to get a better handle on the settings needed for BizzWikiSettings.php.

What I want to do is create two namespaces "Admin" and "Admin_talk". I'd also like to create a new group in addition to sysop, beauracrat, etc, "admin". I want to place certain users in the admin group, and give the group permission to create, delete and edit "Admin:" pages. I want and ordinary "user" to be able to edit an Admin_talk page. I've already created the new group "admin" directly:

mysql> INSERT INTO wbm_user_groups (ug_user, ug_group) VALUES ('1', 'admin');

Any suggestions on the rest? Hoogs 04:51, 5 July 2007 (UTC)Reply

Reply[edit]

1) RecentChanges: as with any other namespace dependant function in BizzWiki it is subjected to policing (i.e. rights enforcement). Make sure your are using a 'sysop' member user when using your wiki upon installation of BizzWiki. 2) To define new namespaces, edit BizzWikiSettings.php with:

	// define new namespaces constants
	define('NS_BIZZWIKI',   100);
	define('NS_FILESYSTEM', 102);
	define('NS_INTERWIKI',  104);
	define('NS_ADMIN',      106);  // LOOK HERE
	define('NS_ADMIN_TALK', 107);  // LOOK HERE (talk spaces are odd)
	
	// Add the new namespaces to the global variables
	$wgExtraNamespaces[NS_BIZZWIKI]   = 'Bizzwiki';
	$wgExtraNamespaces[NS_FILESYSTEM] = 'Filesystem';
	$wgExtraNamespaces[NS_INTERWIKI]  = 'Interwiki';
	$wgExtraNamespaces[NS_ADMIN]      = 'Admin';           // LOOK HERE
	$wgExtraNamespaces[NS_ADMIN_TALK] = 'Admin_talk';      // LOOK HERE

Note that I have highlighted the section to edit in the said file under SVN/trunk.

3) In terms of permissions,

	// Namespace accessible by 'User'
	// ##############################
$bwUserNamespaces = array (	NS_TEMPLATE, NS_TEMPLATE_TALK,
				NS_IMAGE, NS_IMAGE_TALK,
				NS_USER, NS_USER_TALK,
                                NS_ADMIN                          # LOOK HERE
			);	

	// Additional rights available to 'User'
	// #####################################
foreach( $bwUserNamespaces as $index => $bwx )
	{
		$wgGroupPermissions['user' ][hnpClass::buildPermissionKey($bwx,"~","read")] = true;
		$wgGroupPermissions['user' ][hnpClass::buildPermissionKey($bwx,"~","browse")] = true;
		$wgGroupPermissions['user' ][hnpClass::buildPermissionKey($bwx,"~","search")] = true;
	}

        # ADMIN_TALK
	$wgGroupPermissions['*' ][hnpClass::buildPermissionKey(NS_ADMIN_TALK,"~","edit")] = true;

Hope this helps, [user:jldupont|Jean-Lou Dupont] 10:44, 5 July 2007 (UTC)Reply

Thanks. Do you know anything about the addition of a group? Or is there a better way to assign individuals the additional right to create/edit such an NS_ADMIN page? I created the new group in the user_groups table for the main sysop (user_id=1) but the group name didn't show up in the list on Special:Userrights. I saw it mentioned somewhere that the new group needs to be explicitely used in the php code (i.e. in defining some permissions for it) before it becomes visible but I haven't had a chance to try that yet. Hoogs 04:12, 6 July 2007 (UTC)Reply
No probs. MW looks in the global variable $wgGroupPermissions for groups (see User::getAllGroups). At least one right must be assigned in the said variable to make up a valid group. Thus, to define an 'admin group', you should add a statement in the BizzWikiSettings.php file to this effect (e.g. $wgGroupPermissions['admin' ][hnpClass::buildPermissionKey( NS_ADMIN,"~","read")] = true;). Since you are a BizzWiki user, you can use just edit the page Filesystem:/BizzWiki/BizzWikiSettings.php and get going. [user:jldupont|Jean-Lou Dupont] 10:51, 6 July 2007 (UTC)Reply

eAccelerator & RawRight (RESOLVED)[edit]

Hello,

if i'm using eAccelerator and BizzWiki, then this error ocours

Class 'RawRight' not found in /var/www/bcnwiki110/BizzWiki/extensions/RawRight/RawRight.php on line 37

commenting out the line loading the extension just forwards the error to the next usw.

Single MediaWiki is running fine?!?

Any Ideas?

I believe the issue as more to do with the PHP version you are running. Line 37 refers to a statement requiring PHP to have processed a class definition before coming valid. I will correct this definitely in the next BizzWiki release but for now, just take the SVN version of RawRight. [user:jldupont|Jean-Lou Dupont] 14:34, 11 July 2007 (UTC)Reply

Thanks,

New RawRight fixed the error. So looking at RawRight I was able to fix the next extensions

--- ViewsourceRight.php.old     2007-07-12 09:27:23.000000000 +0200
+++ ViewsourceRight.php 2007-07-12 09:27:58.000000000 +0200
@@ -32,13 +32,12 @@
  * 
  */
 
-ViewsourceRight::singleton();
 
 class ViewsourceRight extends ExtensionClass
 {
        const thisName = 'ViewsourceRight';
        const thisType = 'other';  // must use this type in order to display useful info in Special:Version
-       const id       = '$Id: ViewsourceRight.php 301 2007-07-05 16:45:33Z jeanlou.dupont $';
+       const id       = '$Id$';
 
        public static function &singleton( )
        { return parent::singleton( ); }
@@ -136,4 +135,6 @@
                return true;
        }
 } // end class definition.
-?>
\ Kein Zeilenumbruch am Dateiende.
+
+ViewsourceRight::singleton();
+?>

and

--- FileSystemSyntaxColoring.php.old    2007-07-12 09:29:44.000000000 +0200
+++ FileSystemSyntaxColoring.php        2007-07-12 09:30:18.000000000 +0200
@@ -36,13 +36,12 @@
 == Code ==
 </wikitext>*/

-FileSystemSyntaxColoring::singleton();
 
 class FileSystemSyntaxColoring extends ExtensionClass
 {
        const thisName = 'FileSystem Syntax Coloring';
        const thisType = 'other';  // must use this type in order to display useful info in Special:Version
-       const id       = '$Id: FileSystemSyntaxColoring.php 301 2007-07-05 16:45:33Z jeanlou.dupont $';
+       const id       = '$Id$';
 
        var $found;
        var $text;
@@ -192,4 +191,6 @@
        private function getLanguage( $ext ) { return self::$map[ $ext ]; }
 
 } // end class definition.
-?>
\ Kein Zeilenumbruch am Dateiende.
+
+FileSystemSyntaxColoring::singleton();
+?>

and

--- ShowRedirectPageText.php.old        2007-07-12 09:32:34.000000000 +0200
+++ ShowRedirectPageText.php    2007-07-12 09:31:48.000000000 +0200
@@ -30,7 +30,6 @@
  *
  */
 
-ShowRedirectPageText::singleton();
 
 class ShowRedirectPageText extends ExtensionClass
 {
@@ -38,7 +37,7 @@
 
        const thisName = 'ShowRedirectPageText';
        const thisType = 'other';  // must use this type in order to display useful info in Special:Version
-       const id       = '$Id: ShowRedirectPageText.php 301 2007-07-05 16:45:33Z jeanlou.dupont $';
+       const id       = '$Id$';
 
        var $found;
        var $actionState;
@@ -91,4 +90,6 @@
        }
 
 } // end class definition.
-?>
\ Kein Zeilenumbruch am Dateiende.
+
+ShowRedirectPageText::singleton();
+?>

and

--- SidebarEx.php.old   2007-07-12 09:34:22.000000000 +0200
+++ SidebarEx.php       2007-07-12 09:35:21.000000000 +0200
@@ -60,18 +60,13 @@
 * Corrected bug with article validity checking (e.g. affects BizzWiki fresh installs)
 
  */
-// Verify if 'ExtensionClass' is present.
-if ( !class_exists('ExtensionClass') )
-       echo 'SidebarEx extension: ExtensionClass missing.';
-else
-       SidebarExClass::singleton();
 
 class SidebarExClass extends ExtensionClass
 {
        // constants.
        const thisName = 'SidebarEx';
        const thisType = 'other';  // must use this type in order to display useful info in Special:Version
-       const id       = '$Id: SidebarEx.php 301 2007-07-05 16:45:33Z jeanlou.dupont $';
+       const id       = '$Id$';
 
        // default values
        static $baseNs   = NS_MEDIAWIKI;        // default namespace
@@ -218,4 +213,10 @@
        }
 
 } // END CLASS DEFINITION
-?>
\ Kein Zeilenumbruch am Dateiende.
+
+// Verify if 'ExtensionClass' is present.
+if ( !class_exists('ExtensionClass') )
+       echo 'SidebarEx extension: ExtensionClass missing.';
+else
+       SidebarExClass::singleton();
+?>

and

--- AddScriptCss.php.old        2007-07-12 09:36:22.000000000 +0200
+++ AddScriptCss.php    2007-07-12 09:36:48.000000000 +0200
@@ -60,18 +60,13 @@
  *
  */
 
-// Verify if 'ExtensionClass' is present.
-if ( !class_exists('ExtensionClass') )
-       echo 'ExtensionClass missing: AddScriptCss extension will not work!';
-else
-       AddScriptCssClass::singleton();
 
 class AddScriptCssClass extends ExtensionClass
 {
        // constants.
        const thisName = 'AddScriptCss';
        const thisType = 'other'; 
-       const id       = '$Id: AddScriptCss.php 307 2007-07-06 14:51:51Z jeanlou.dupont $';
+       const id       = '$Id$';
 
        // error codes.
        const error_none     = 0;
@@ -221,4 +216,10 @@
        }
 
 } // END CLASS DEFINITION
-?>
\ Kein Zeilenumbruch am Dateiende.
+
+// Verify if 'ExtensionClass' is present.
+if ( !class_exists('ExtensionClass') )
+       echo 'ExtensionClass missing: AddScriptCss extension will not work!';
+else
+       AddScriptCssClass::singleton();
+?>
--- PageFunctions.php.old       2007-07-12 09:38:45.000000000 +0200
+++ PageFunctions.php   2007-07-12 09:38:16.000000000 +0200
@@ -34,14 +34,12 @@
 
  */
 
-// Let's create a single instance of this class
-PageFunctionsClass::singleton();
 
 class PageFunctionsClass extends ExtensionClass
 {
        const thisName = 'PageFunctions';
        const thisType = 'other';
-       const id       = '$Id: PageFunctions.php 330 2007-07-09 14:48:12Z jeanlou.dupont $';
+       const id       = '$Id$';
 
        var $pageVars;
 
@@ -118,4 +116,7 @@
        }
 
 } // end class
-?>
\ Kein Zeilenumbruch am Dateiende.
+
+// Let's create a single instance of this class
+PageFunctionsClass::singleton();
+?>

Maybe it helps someone else.. thanks a lot!

Thanks a lot!! I have applied all the patches; they are available in SVN trunk and will be packaged in 1_10_8. [user:jldupont|Jean-Lou Dupont] 12:42, 12 July 2007 (UTC)Reply

Issue with Special:ImageList and Special:Categories (RESOLVED)[edit]

I revreted to original BizzWikiSettings.php without any modification. I came accross few more problems:
When I go to 'Special:Imagelist' or 'Special:Categories' , I get the following error message on top of the screen
 Pager::getBody : no recognized namespace= hnpClass: action browse namespace dependant but called from NS_SPECIAL.
-Gautam
Fixed: I have updated the SVN trunk; please grab 'Pager.php' from '/includes' and update your install. Version 1_10_11 will get the fix. Many thanks for your help. Jean-Lou Dupont 12:29, 12 August 2007 (UTC)Reply

Headers[edit]

It outputs twice this message (in the top of each page):

Warning: Cannot modify header information - headers already sent by (output started at /home/mirko/public_html/wiki/LocalSettings.php:1) in /home/mirko/public_html/wiki/includes/WebResponse.php on line 10

It seems that Notepad.exe corrupts the archives adding to him 0xEF, 0xBB, 0xBF at the beginning (I look this bytes in others UTF files). I had to use Hiew to cut it. P.D.: If I have some orthographic error, don't doubt in correcting to me (I don't speak English). --Eloy

Installation problems[edit]

Hi, i'm confused about the installation. when i unzip the file i downloaded it has Bizzwiki and includes folder. as per the installation documents i have to copy the Bizzwiki folder to the root of mediawiki. then where to copy the includes folder? i didn't use that folder and went to special pages. clicked on the link "Bizzwiki Special pages update". After clicking the confirm button, got this error:

Fatal error: Call to a member function read() on a non-object in C:\xampp\htdocs\mediawiki\BizzWiki\extensions\SpecialPagesManager\SpecialPagesManagerUpdater.php on line 192

As per installation instructions, you need to unzip the BizzWiki archive *in* the root directory of your MediaWiki installation. The archive contains a folder 'includes' which houses files that will overwrite standard MediaWiki files. To recap, the archive contains two main folders: BizzWiki and includes. Both these folders should be written to the *root* of the MW installation. Hope this helps.

Jean-Lou Dupont 00:07, 24 August 2007 (UTC)Reply


Hi,

I've the same pb :

Fatal error: Call to a member function read() on a non-object in C:\Program Files\EasyPHP 2.0b1\www\mediawiki-1.10.1\BizzWiki\extensions\SpecialPagesManager\SpecialPagesManagerUpdater.php on line 192

Though I do what you say about the 2 directories in "root" directory.

Perhaps it is because we are Win XP ?

Or perhaps we must undeclare an extension in the BizzWikiSettings.php ?

Thank you for your response.

Gabrielle.


Interesting; I don't have this problem with my two installations, one on my development system based on Windows XP Home and one on http:BizzWiki.org running on a Linux VPS (Fedora Core 4) account on 1&1.
1) Could you comment out the extension in question (and try again)?
2) Could you provide me with the PHP version you are running please?
Thanks. Jean-Lou Dupont 21:46, 25 August 2007 (UTC)Reply

Hi

I use Win XP pro 2002 SP2, EasyPHP 2.0 with PHP 5.2, Bizzwiki REL1_10_11

To be sure (?!!) I don't make a mistake during the installation : now I reinstall the 1.10.1 mediawiki default, with no special extensions.

In "C:\Program Files\EasyPHP 2.0b1\www\mediawiki-1.10.1", I've "BizzWiki" and "includes" directory.

And so When I try there is the same error.


In SpecialPagesManagerUpdater.php :

The echo $bwPath; in getPath() line 132 give "C:\Program Files\EasyPHP 2.0b1\www\mediawiki-1.10.1/BizzWiki"

The echo ( self::getPath() ); in getFileList() line 191; give "C:\Program Files\EasyPHP 2.0b1\www\mediawiki-1.10.1/BizzWiki/SpecialPages". But I don't understand because I haven't "/BizzWiki/SpecialPages".

And the echo $d ,line 191, give nothing. Should it write something?

Do you want I test an another line?

Thanks,

Gabrielle.


Hi Gabrielle, I have two possibilities for you: 1) Comment out the following in BizzWikiSettings.php:

// Enhanced Special Pages
require( $bwExtPath.'/SpecialPagesManager/SpecialPagesManager.php');

i.e.

// Enhanced Special Pages
#require( $bwExtPath.'/SpecialPagesManager/SpecialPagesManager.php');

2) Update 'SpecialPagesManager.php' with the following: [1].

Let me know how it goes. Jean-Lou Dupont 11:26, 26 August 2007 (UTC)Reply


Hi JLou,

1)The first proposition ... it's mean i can't update? because if I comment like :

// Enhanced Special Pages
#require( $bwExtPath.'/SpecialPagesManager/SpecialPagesManager.php');

the link diseappear.

2) The second proposition .. don't work. When I compare the twice SpecialPagesManager.php, I've juste the line :

| <b>Revision</b> || $Id

which is différent

So .. 3) I think you're allright, It's perhaps because PHP Version. I'm sure this is the read() fonction is not accepted by my system, I don't know why. So I test this code :

	private function getFileList()
	{
		// scan through the directory and fetch all filenames
		$d = @dir( self::getPath() );

		if (is_dir($d)) {
			$dh == opendir($d);

			while (false !== ($entry = readdir($dh) ) )
			{
				if (($entry=='.') || ($entry=='..')) continue;

				// eliminate directories
				if (is_dir( self::getPath().'/'.$entry)) continue;

				$fl[] = $entry;
			}
			$d->close();
		}
		return $fl;
	}

And .. I don't have any error in this function. But a new, line 181, so I comment like this :

//$base = SpecialPagesManagerClass::singleton()->spPage;

And I have a successfull page, but what must I see ? I understand the SpecialPagesManager add all the extension, isn't it?

The recent page are like this :

# (Watch Log); 18:26 . . Admin (Talk | contribs | block) (watchok: /WatchLog)
# (diff) (hist) . . N /WatchRight‎; 18:24 . . (0) . . Admin (Talk | contribs | block)
# (diff) (hist) . . N! /WatchLog‎; 18:24 . . (0) . . Admin (Talk | contribs | block)
# (diff) (hist) . . N! /VirtualPage‎; 18:24 . . (0) . . Admin (Talk | contribs | block)
# (diff) (hist) . . N! /ViewsourceRight‎; 18:24 . . (0) . . Admin (Talk | contribs | block)

All, all the new page are like this :

VirtualPage <

What do think ?

Thanks,

Gabrielle.


1) There is no relationship between 'updating' and the extension 'SpecialPageManager; the extension does not do much at the moment. 2) What is the URI of the website you are trying to setup with BizzWiki? Is it publically available? 3) I do not understand what you are trying to express with regards to the 'Recent Changes' page. Please try to comment out 'SpecialPageManager' extension and report please. Jean-Lou Dupont 18:09, 26 August 2007 (UTC)Reply


Hi,

1)ok.


2) It is a private URI for my job. And I search how to manage right, namespace, page and etc, and I discover Bizzwiki so I would like see if I can use for my wiki.


3) The link "Bizzwiki Special pages update" write sucess after my modification, and under, there is the recent modify page. So I click I belive I could see the modification, perhaps it is a mistake for me. Excuse too my bad english.


And to finish, when I comment in the BizzWikiSettings.php:

// Enhanced Special Pages
#require( $bwExtPath.'/SpecialPagesManager/SpecialPagesManager.php');


The link diseappear "Bizzwiki Special pages update"

Yes of course the link disappears but as I said, the BizzWiki Special Pages Update isn't doing much at the moment; the core BizzWiki functionality is not affected by this extension.
From what I can tell, there seems to be an issue with the 'dir' function of the version of PHP you are using. Maybe you could try using the latest XAMPP or WAMP packages to see if the problem is solved?

Jean-Lou Dupont 18:34, 26 August 2007 (UTC)Reply



installation problems (RESOLVED)[edit]

when i'm clicking on the Specialpgesupdate link, i'm getting the message

"The files from the directory C:\xampp\htdocs\mediawiki/BizzWiki/SpecialPages will be used.

Are you sure you want to update?"


But there is no SpecialPages folder in Bizzwiki. when i click on the "Confirm Update" button, getting the following error message "Fatal error: Call to a member function read() on a non-object in C:\xampp\htdocs\mediawiki\BizzWiki\extensions\SpecialPagesManager\SpecialPagesManagerUpdater.php on line 192"

how to rectify this?

Jack

Hi - this feature is not fully developed yet. You aren't missing anything. I suggest to leave it out for now. Jean-Lou Dupont 15:31, 11 September 2007 (UTC)Reply


Not able to set user rights for single pages (RESOLVED)[edit]

Hi, I installed BizzWiki and it works well. But I have a problem to define the user rights for single pages. I wanted to make some single pages not accessable for anonymous viewers. So I defined for the page "Laender":

$bwAnonymousNamespaces = array( NS_MAIN, NS_TALK,
				NS_PROJECT, NS_PROJECT_TALK,
				NS_CATEGORY, NS_CATEGORY_TALK,
				NS_IMAGE, NS_IMAGE_TALK,
				NS_HELP, NS_HELP_TALK,
				NS_DIRECTORY,
				NS_SPECIAL,
				NS_INTERWIKI
				);

$wgGroupPermissions['*' ][hnpClass::buildPermissionKey(NS_MAIN,"Laender","read")] = false;

Do you have any idea what is wrong? Maybe the syntax I included "Laender"? I tried different ways but nothing worked...

THANKS FOR YOUR HELP!!!

You have to deny access using the !operator.
:$wgGroupPermissions[ '*' ][hnpClass::buildPermissionKey(NS_MAIN,"Laender","!read")] = true;
:
Jean-Lou Dupont 14:19, 15 September 2007 (UTC)Reply


Thanks a lot for the fast answer - it works! And thanks also for the great BizzWiki-Extension! Filburt

My pleasure. Jean-Lou Dupont 19:41, 15 September 2007 (UTC)Reply

Custom Groups/Namespaces (RESOLVED)[edit]

Hi,

I can't seem to get custom namespaces to work with specific custom groups.

Here is the code I am using in BizzWikiSettings.php:

$bwBeccaNamespaces = array ( NS_ELECIA,
                            );
$bwBeccaNamespaces = array_merge( $bwAnonymousNamespaces, $bwUserNamespaces, $bwBeccaNamespaces);

foreach( $bwBeccaNamespaces as $index => $bwx )
{
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","read")] = true;
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","browse")] = true;
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","search")] = true;
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","watch")] = true;
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","unwatch")] = true;
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","edit")] = true;
         $wgGroupPermissions['becca' ][hnpClass::buildPermissionKey($bwx,"~","create")] = true;
}

Where 'Becca' is the usergoup, and 'Elecia' is the namespace. (as an example, I will be creating 6 groups and 7 namespaces in total)

It works if I add NS_ELECIA to the 'user' namespaces list, but it doesn't with a custom group.

Any suggestions?

-AerosAtar

Did you add the namespace to $wgExtraNamespaces and $wgCanonicalNamespaceNames?
Jean-Lou Dupont 23:45, 17 September 2007 (UTC)Reply
Yes, sorry, forgot to post that part...
define('NS_ELECIA', 110);
$wgExtraNamespaces[NS_ELECIA] = 'Elecia';
$wgCanonicalNamespaceNames = $wgCanonicalNamespaceNames + $wgExtraNamespaces;

(in their respective sections)

-AerosAtar

Could you be more specific as to what 'works' and what doesn't, please? Jean-Lou Dupont 17:50, 18 September 2007 (UTC)Reply

Everything. When I use the 'becca' group, the user is not able to do anything, even view. When I use 'user', they are able to view, create, edit, etc.

-AerosAtar

You need to add the group to the 'group hierarchy' definition using for example:
hnpClass::setGroupHierarchy( array( 'sysop', 'becca', 'user', '*' ) );
This informs the permission management sub-system to treat the 'sysop' group as having higher priority than 'becca' so when the system tests if user X has the right R, the group membership hierarchy is respected.
Jean-Lou Dupont 13:58, 19 September 2007 (UTC)Reply

Ok, that worked. Thanks. :) Does it matter what order the groups are in between sysop and user? -AerosAtar

Yes it does matter. See comment above. Jean-Lou Dupont 16:58, 19 September 2007 (UTC)Reply

Ok, sorry for the stupid questions. I have 7 users, 5 of whom will have the same permissions (just on different namespaces), one of whom will have access to all of the namespaces the other 5 do, and myself, the sysop. Does it matter what order I put the 5 same-level user groups in?

No probs. Well, you probably want to put your new groups 'above' the 'user' and '*' groups and 'below' the 'sysop' one. Jean-Lou Dupont 17:46, 19 September 2007 (UTC)Reply

Ok, but does it matter which order I put group1, group2, group3, group4 and group5? I was planning on putting group6 (the one wiht access to all) above those, but do the others matter in any way?

i.e. 'sysop', 'group6', <other groups>, 'user', '*'... does the order of <other groups> matter?

nm, I experimented and no, it doesn't matter.

Also, something else I have noticed. Whenever I go to create a page on my custom namespaces, I have an interwiki list in the edit box (if I click save without adding/deleting anything, it lists a whole bunch of wikis) Any idea what might cause this?

Have you a namespace clash? i.e. same namespace id as with NS_INTERWIKI? Jean-Lou Dupont 17:46, 19 September 2007 (UTC)Reply

Yeah, that fixed it. Thanks. Thanks for all your help!

-AerosAtar