Ryan Lane has uploaded a new change for review.
https://gerrit.wikimedia.org/r/74211
Change subject: Add support for custom namespace for projects
......................................................................
Add support for custom namespace for projects
We'd like to split project pages and subpages into a custom
namespace, to more easily enable search for project docs. This
change allows us to specify a different namespace for project
pages.
Change-Id: I5238b07da61ecd1fb1ce9b1c9aa3b4df56a84be4
---
M OpenStackManager.php
M nova/OpenStackNovaArticle.php
M nova/OpenStackNovaProject.php
3 files changed, 14 insertions(+), 11 deletions(-)
git pull
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/OpenStackManager
refs/changes/11/74211/1
diff --git a/OpenStackManager.php b/OpenStackManager.php
index 9f13896..aec9f46 100644
--- a/OpenStackManager.php
+++ b/OpenStackManager.php
@@ -130,6 +130,8 @@
* Path to the puttygen utility. Used for converting ssh key formats. False to
disable its use.
*/
$wgPuttygen = 'puttygen';
+// Custom namespace for projects
+$wgOpenStackManagerProjectNamespace = NS_NOVA_RESOURCE;
$dir = dirname( __FILE__ ) . '/';
diff --git a/nova/OpenStackNovaArticle.php b/nova/OpenStackNovaArticle.php
index 97a3df4..2878e56 100644
--- a/nova/OpenStackNovaArticle.php
+++ b/nova/OpenStackNovaArticle.php
@@ -14,23 +14,23 @@
return $wgOpenStackManagerCreateResourcePages;
}
- public static function editArticle( $titletext, $text ) {
- $title = Title::newFromText( $titletext, NS_NOVA_RESOURCE );
+ public static function editArticle( $titletext, $text,
$namespace=NS_NOVA_RESOURCE ) {
+ $title = Title::newFromText( $titletext, $namespace );
$article = WikiPage::factory( $title );
$article->doEdit( $text, '' );
}
- public static function getText( $titletext ) {
- $title = Title::newFromText( $titletext, NS_NOVA_RESOURCE );
+ public static function getText( $titletext, $namespace=NS_NOVA_RESOURCE
) {
+ $title = Title::newFromText( $titletext, $namespace );
$article = WikiPage::factory( $title );
return $article->getText();
}
- public static function deleteArticle( $titletext ) {
+ public static function deleteArticle( $titletext,
$namespace=NS_NOVA_RESOURCE ) {
if ( ! OpenStackNovaArticle::canCreatePages() ) {
return;
}
- $title = Title::newFromText( $titletext, NS_NOVA_RESOURCE );
+ $title = Title::newFromText( $titletext, $namespace );
$article = WikiPage::factory( $title );
$article->doDeleteArticle( '' );
}
diff --git a/nova/OpenStackNovaProject.php b/nova/OpenStackNovaProject.php
index 13e7a25..d4a7a9b 100644
--- a/nova/OpenStackNovaProject.php
+++ b/nova/OpenStackNovaProject.php
@@ -865,7 +865,7 @@
}
function editArticle() {
- global $wgOpenStackManagerCreateProjectSALPages;
+ global $wgOpenStackManagerCreateProjectSALPages,
$wgOpenStackManagerProjectNamespace;
if ( ! OpenStackNovaArticle::canCreatePages() ) {
return;
@@ -897,10 +897,10 @@
implode( ',', $admins ),
implode( ',', $members )
);
- OpenStackNovaArticle::editArticle( $this->getProjectName(),
$text );
+ OpenStackNovaArticle::editArticle( $this->getProjectName(),
$text, $wgOpenStackManagerProjectNamespace );
if ( $wgOpenStackManagerCreateProjectSALPages ) {
$pagename = $this->getProjectName() . "/SAL";
- $id = Title::newFromText( $pagename, NS_NOVA_RESOURCE
)->getArticleId();
+ $id = Title::newFromText( $pagename,
$wgOpenStackManagerProjectNamespace )->getArticleId();
$article = Article::newFromId( $id );
$content = '';
if ( $article ) {
@@ -908,12 +908,13 @@
}
$text = "{{SAL|Project Name=" . $this->getProjectName()
. "}}";
if ( !strstr( $content, $text ) ) {
- OpenStackNovaArticle::editArticle( $pagename,
$text );
+ OpenStackNovaArticle::editArticle( $pagename,
$text, $wgOpenStackManagerProjectNamespace );
}
}
}
function deleteArticle() {
- OpenStackNovaArticle::deleteArticle( $this->getProjectName() );
+ global $wgOpenStackManagerProjectNamespace;
+ OpenStackNovaArticle::deleteArticle( $this->getProjectName(),
$wgOpenStackManagerProjectNamespace );
}
}
--
To view, visit https://gerrit.wikimedia.org/r/74211
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5238b07da61ecd1fb1ce9b1c9aa3b4df56a84be4
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/OpenStackManager
Gerrit-Branch: master
Gerrit-Owner: Ryan Lane <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits