Wilkins has uploaded a new change for review.
https://gerrit.wikimedia.org/r/245912
Change subject: Correcting notice and refactoring the SpecialPage form
......................................................................
Correcting notice and refactoring the SpecialPage form
Change-Id: I29880189fe1c69a7cbdd4a4723da20011bc09341
---
M FamilyTreeTag.php
M SpecialFamilyTree.php
2 files changed, 42 insertions(+), 27 deletions(-)
git pull
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/SemanticGenealogy
refs/changes/12/245912/1
diff --git a/FamilyTreeTag.php b/FamilyTreeTag.php
index d4e34ab..264b6ef 100644
--- a/FamilyTreeTag.php
+++ b/FamilyTreeTag.php
@@ -54,9 +54,11 @@
$familytree->setPerson($args[self::ATTR_PERSON]);
$familytree->setNumberOfGenerations($args[self::ATTR_DEPTH]);
- $personName2 = $args[self::ATTR_PERSON2];
- if ($personName2) {
- $familytree->setPerson2($personName2);
+ if (isset($args[self::ATTR_PERSON2])) {
+ $personName2 = $args[self::ATTR_PERSON2];
+ if ($personName2) {
+ $familytree->setPerson2($personName2);
+ }
}
$familytree->render();
diff --git a/SpecialFamilyTree.php b/SpecialFamilyTree.php
index 8b0a380..cee36c8 100644
--- a/SpecialFamilyTree.php
+++ b/SpecialFamilyTree.php
@@ -34,10 +34,9 @@
*/
public function execute($par)
{
- global $wgRequest, $wgScript;
+ global $wgRequest;
$this->setHeaders();
- $output = $this->getOutput();
if ($par != '') {
$parts = explode('/', urldecode($par));
@@ -63,9 +62,41 @@
$pageName2 = '';
}
+ $this->showForm(array('type' => $type, 'pageName' => $pageName,
'numOfGenerations' => $numOfGenerations, 'pageName2' => $pageName2));
+
+ if ($pageName == '') {
+ return;
+ }
+
+ $familytree = FamilyTreeFactory::create($type);
+ $familytree->setPerson($pageName);
+
+ if ($pageName2) {
+ $familytree->setPerson2($pageName2);
+ }
+
+ $familytree->setOutput($this->getOutput());
+ $familytree->setNumberOfGenerations($numOfGenerations);
+
+ $familytree->render();
+ return Status::newGood();
+ }
+
+ /**
+ * Display the search form for a genealogy tree
+ *
+ * @param array $params the array of search parameters
+ *
+ * @return void
+ */
+ protected function showForm($params)
+ {
+ global $wgScript;
+
+ $output = $this->getOutput();
if (!$this->mIncluding) {
$output->addModules('ext.smg.specialfamilytree');
- $typeSelect = new XmlSelect('type', 'type', $type);
+ $typeSelect = new XmlSelect('type', 'type', $params['type']);
$typeSelect->addOption(wfMsg('semanticgenealogy-specialfamilytree-type-ancestors'),
'ancestors');
$typeSelect->addOption(wfMsg('semanticgenealogy-specialfamilytree-type-descendant'),
'descendant');
$typeSelect->addOption(wfMsg('semanticgenealogy-specialfamilytree-type-link'),
'link');
@@ -79,7 +110,7 @@
Xml::label(wfMsg('semanticgenealogy-specialfamilytree-label-page'), 'page') .
Xml::closeElement('th') .
Xml::openElement('td', array('class' => 'mw-input')) .
- Xml::input('page', 30, $pageName, array( 'class' =>
'smg-input-page' )) .
+ Xml::input('page', 30, $params['pageName'], array( 'class' =>
'smg-input-page' )) .
Xml::closeElement('td') .
Xml::closeElement('tr') .
Xml::openElement('tr', array('id' => 'smg-form-entry-type' )) .
@@ -95,7 +126,7 @@
Xml::label(wfMsg('semanticgenealogy-specialfamilytree-label-gen'), 'gen') .
Xml::closeElement('th') .
Xml::openElement('td', array('class' => 'mw-input')) .
- Xml::input('gen', 2, $numOfGenerations) .
+ Xml::input('gen', 2, $params['numOfGenerations']) .
Xml::closeElement('td') .
Xml::closeElement('tr') .
Xml::openElement('tr', array('id' => 'smg-form-entry-page2' ))
.
@@ -103,7 +134,7 @@
Xml::label(wfMsg('semanticgenealogy-specialfamilytree-label-page2'), 'page2') .
Xml::closeElement('th') .
Xml::openElement('td', array('class' => 'mw-input')) .
- Xml::input('page2', 30, $pageName2, array( 'class' =>
'smg-input-page' )) .
+ Xml::input('page2', 30, $params['pageName2'], array( 'class'
=> 'smg-input-page' )) .
Xml::closeElement('td') .
Xml::closeElement('tr') .
Xml::closeElement('table') .
@@ -112,24 +143,6 @@
Xml::closeElement('form')
);
}
-
- if ($pageName == '') {
- return;
- }
-
-
- $familytree = FamilyTreeFactory::create($type);
- $familytree->setPerson($pageName);
-
- if ($pageName2) {
- $familytree->setPerson2($pageName2);
- }
-
- $familytree->setOutput($this->getOutput());
- $familytree->setNumberOfGenerations($numOfGenerations);
-
- $familytree->render();
- return Status::newGood();
}
/**
--
To view, visit https://gerrit.wikimedia.org/r/245912
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I29880189fe1c69a7cbdd4a4723da20011bc09341
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/SemanticGenealogy
Gerrit-Branch: master
Gerrit-Owner: Wilkins <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits