* (bug 32415) Empty page get no size attribute in API output.
* (bug 31759) Undefined property notice in querypages API.
* (bug 32495) API should allow purge by pageids.
-* (bug 33147) API examples should explain what they do.
=== Languages updated in 1.19 ===
$msg .= "Parameters:\n$paramsMsg";
}
- $examples = $this->getExamples();
- if ( $examples !== false ) {
- if ( !is_array( $examples ) ) {
- $examples = array(
- $examples
- );
- }
- $msg .= "Example" . ( count( $examples ) > 1 ? 's' : '' ) . ":\n";
- foreach( $examples as $k => $v ) {
- if ( is_numeric( $k ) ) {
- $msg .= " $v\n";
- } else {
- if ( is_array( $v ) ) {
- $msg .= implode( "\n", array_map( array( $this, 'indentExampleText' ), $v ) );
- } else {
- $msg .= " $v";
- }
- $msg .= "\n $k";
- }
- }
- }
-
- $msg .= "\n";
+ $msg .= $this->makeHelpArrayToString( $lnPrfx, "Example", $this->getExamples() );
$msg .= $this->makeHelpArrayToString( $lnPrfx, "Help page", $this->getHelpUrls() );
if ( $this->getMain()->getShowVersions() ) {
return $msg;
}
- /**
- * @param $item string
- * @return string
- */
- private function indentExampleText( $item ) {
- return " " . $item;
- }
-
/**
* @param $prefix string Text to split output items
* @param $title string What is being output
$result = $this->getResult();
$retval['classname'] = get_class( $obj );
$retval['description'] = implode( "\n", (array)$obj->getFinalDescription() );
-
- $retval['examples'] = '';
-
+ $examples = (array)$obj->getExamples();
+ $retval['examples'] = implode( "\n", $examples );
$retval['version'] = implode( "\n", (array)$obj->getVersion() );
$retval['prefix'] = $obj->getModulePrefix();
}
$result->setIndexedTagName( $retval['helpurls'], 'helpurl' );
- $examples = $obj->getExamples();
- $retval['allexamples'] = array();
- if ( $examples !== false ) {
- foreach( $examples as $k => $v ) {
- if ( strlen( $retval['examples'] ) ) {
- $retval['examples'] .= ' ';
- }
- $item = array();
- if ( is_numeric( $k ) ) {
- $retval['examples'] .= $v;
- $result->setContent( $item, $v );
- } else {
- if ( !is_array( $v ) ) {
- $item['description'] = $v;
- } else {
- $item['description'] = implode( $v, "\n" );
- }
- $retval['examples'] .= $item['description'] . ' ' . $k;
- $result->setContent( $item, $k );
- }
- $retval['allexamples'][] = $item;
- }
+ $retval['allexamples'] = $examples;
+ if ( isset( $retval['allexamples'][0] ) && $retval['allexamples'][0] === false ) {
+ $retval['allexamples'] = array();
}
$result->setIndexedTagName( $retval['allexamples'], 'example' );
public function getExamples() {
return array(
- 'api.php?action=query&list=allimages&aifrom=B' => array(
- 'Simple Use',
- 'Show a list of images starting at the letter "B"',
- ),
- 'api.php?action=query&generator=allimages&gailimit=4&gaifrom=T&prop=imageinfo' => array(
- 'Using as Generator',
- 'Show info about 4 images starting at the letter "T"',
- ),
+ 'Simple Use',
+ ' Show a list of images starting at the letter "B"',
+ ' api.php?action=query&list=allimages&aifrom=B',
+ 'Using as Generator',
+ ' Show info about 4 images starting at the letter "T"',
+ ' api.php?action=query&generator=allimages&gailimit=4&gaifrom=T&prop=imageinfo',
);
}
public function getExamples() {
return array(
- 'api.php?action=query&list=allpages&apfrom=B' => array(
- 'Simple Use',
- 'Show a list of pages starting at the letter "B"',
- ),
- 'api.php?action=query&generator=allpages&gaplimit=4&gapfrom=T&prop=info' => array(
- 'Using as Generator',
- 'Show info about 4 pages starting at the letter "T"',
- ),
- 'api.php?action=query&generator=allpages&gaplimit=2&gapfilterredir=nonredirects&gapfrom=Re&prop=revisions&rvprop=content' => array(
- 'Show content of first 2 non-redirect pages begining at "Re"',
- )
+ 'Simple Use',
+ ' Show a list of pages starting at the letter "B"',
+ ' api.php?action=query&list=allpages&apfrom=B',
+ 'Using as Generator',
+ ' Show info about 4 pages starting at the letter "T"',
+ ' api.php?action=query&generator=allpages&gaplimit=4&gapfrom=T&prop=info',
+ ' Show content of first 2 non-redirect pages begining at "Re"',
+ ' api.php?action=query&generator=allpages&gaplimit=2&gapfilterredir=nonredirects&gapfrom=Re&prop=revisions&rvprop=content'
);
}
public function getExamples() {
return array(
- 'api.php?action=query&prop=categories&titles=Albert%20Einstein' => 'Get a list of categories [[Albert Einstein]] belongs to:',
- 'api.php?action=query&generator=categories&titles=Albert%20Einstein&prop=info' => 'Get information about all categories used in the [[Albert Einstein]]:',
+ 'Get a list of categories [[Albert Einstein]] belongs to:',
+ ' api.php?action=query&prop=categories&titles=Albert%20Einstein',
+ 'Get information about all categories used in the [[Albert Einstein]]:',
+ ' api.php?action=query&generator=categories&titles=Albert%20Einstein&prop=info'
);
}
public function getExamples() {
return array(
- 'api.php?action=query&list=categorymembers&cmtitle=Category:Physics' => 'Get first 10 pages in [[Category:Physics]]:',
- 'api.php?action=query&generator=categorymembers&gcmtitle=Category:Physics&prop=info' => 'Get page info about first 10 pages in [[Category:Physics]]:',
+ 'Get first 10 pages in [[Category:Physics]]:',
+ ' api.php?action=query&list=categorymembers&cmtitle=Category:Physics',
+ 'Get page info about first 10 pages in [[Category:Physics]]:',
+ ' api.php?action=query&generator=categorymembers&gcmtitle=Category:Physics&prop=info',
);
}
public function getExamples() {
return array(
- 'api.php?action=query&list=deletedrevs&titles=Main%20Page|Talk:Main%20Page&drprop=user|comment|content'
- => 'List the last deleted revisions of Main Page and Talk:Main Page, with content (mode 1):',
- 'api.php?action=query&list=deletedrevs&druser=Bob&drlimit=50'
- => 'List the last 50 deleted contributions by Bob (mode 2):',
- 'api.php?action=query&list=deletedrevs&drdir=newer&drlimit=50'
- => 'List the first 50 deleted revisions in the main namespace (mode 3):',
- 'api.php?action=query&list=deletedrevs&drdir=newer&drlimit=50&drnamespace=1&drunique='
- => 'List the first 50 deleted pages in the Talk namespace (mode 3):',
+ 'List the last deleted revisions of Main Page and Talk:Main Page, with content (mode 1):',
+ ' api.php?action=query&list=deletedrevs&titles=Main%20Page|Talk:Main%20Page&drprop=user|comment|content',
+ 'List the last 50 deleted contributions by Bob (mode 2):',
+ ' api.php?action=query&list=deletedrevs&druser=Bob&drlimit=50',
+ 'List the first 50 deleted revisions in the main namespace (mode 3):',
+ ' api.php?action=query&list=deletedrevs&drdir=newer&drlimit=50',
+ 'List the first 50 deleted pages in the Talk namespace (mode 3):',
+ ' api.php?action=query&list=deletedrevs&drdir=newer&drlimit=50&drnamespace=1&drunique=',
);
}
public function getExamples() {
return array(
- 'api.php?action=query&prop=extlinks&titles=Main%20Page' => 'Get a list of external links on the [[Main Page]]:',
+ 'Get a list of external links on the [[Main Page]]:',
+ ' api.php?action=query&prop=extlinks&titles=Main%20Page',
);
}
public function getExamples() {
return array(
- 'api.php?action=query&list=filearchive' => array(
- 'Simple Use',
- 'Show a list of all deleted files',
- ),
+ 'Simple Use',
+ ' Show a list of all deleted files',
+ ' api.php?action=query&list=filearchive',
);
}
public function getExamples() {
return array(
- 'api.php?action=query&prop=iwlinks&titles=Main%20Page' => 'Get interwiki links from the [[Main Page]]:',
+ 'Get interwiki links from the [[Main Page]]:',
+ ' api.php?action=query&prop=iwlinks&titles=Main%20Page',
);
}
public function getExamples() {
return array(
- 'api.php?action=query&prop=images&titles=Main%20Page' => 'Get a list of images used in the [[Main Page]]:',
- 'api.php?action=query&generator=images&titles=Main%20Page&prop=info' => 'Get information about all images used in the [[Main Page]]:',
+ 'Get a list of images used in the [[Main Page]]:',
+ ' api.php?action=query&prop=images&titles=Main%20Page',
+ 'Get information about all images used in the [[Main Page]]:',
+ ' api.php?action=query&generator=images&titles=Main%20Page&prop=info'
);
}
public function getExamples() {
return array(
- 'api.php?action=query&prop=langlinks&titles=Main%20Page&redirects=' => 'Get interlanguage links from the [[Main Page]]:',
+ 'Get interlanguage links from the [[Main Page]]:',
+ ' api.php?action=query&prop=langlinks&titles=Main%20Page&redirects=',
);
}
}
public function getExamples() {
- $desc = $this->description;
- $name = $this->getModuleName();
return array(
- "api.php?action=query&prop={$name}&titles=Main%20Page" => "Get {$desc}s from the [[Main Page]]:",
- "api.php?action=query&generator={$name}&titles=Main%20Page&prop=info" => "Get information about the {$desc} pages in the [[Main Page]]:",
- "api.php?action=query&prop={$name}&titles=Main%20Page&{$this->prefix}namespace=2|10" => "Get {$desc}s from the Main Page in the User and Template namespaces:",
+ "Get {$this->description}s from the [[Main Page]]:",
+ " api.php?action=query&prop={$this->getModuleName()}&titles=Main%20Page",
+ "Get information about the {$this->description} pages in the [[Main Page]]:",
+ " api.php?action=query&generator={$this->getModuleName()}&titles=Main%20Page&prop=info",
+ "Get {$this->description}s from the Main Page in the User and Template namespaces:",
+ " api.php?action=query&prop={$this->getModuleName()}&titles=Main%20Page&{$this->prefix}namespace=2|10"
);
}
public function getExamples() {
return array(
- 'api.php?action=watch&title=Main_Page' => 'Watch the page "Main Page"',
- 'api.php?action=watch&title=Main_Page&unwatch=' => 'Unwatch the page "Main Page"',
+ 'api.php?action=watch&title=Main_Page',
+ 'api.php?action=watch&title=Main_Page&unwatch=',
);
}