Merge "Update migrateUserGroup to deal with primary key issue"
[lhc/web/wiklou.git] / includes / api / ApiFormatBase.php
index 9df2c6e..a8d69f5 100644 (file)
@@ -4,7 +4,7 @@
  *
  * Created on Sep 19, 2006
  *
- * Copyright © 2006 Yuri Astrakhan <Firstname><Lastname>@gmail.com
+ * Copyright © 2006 Yuri Astrakhan "<Firstname><Lastname>@gmail.com"
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * @file
  */
 
-if ( !defined( 'MEDIAWIKI' ) ) {
-       // Eclipse helper - will be ignored in production
-       require_once( 'ApiBase.php' );
-}
-
 /**
  * This is the abstract base class for API formatters.
  *
@@ -168,8 +163,10 @@ abstract class ApiFormatBase extends ApiBase {
 <br />
 <small>
 You are looking at the HTML representation of the <?php echo( $this->mFormat ); ?> format.<br />
-HTML is good for debugging, but probably is not suitable for your application.<br />
-See <a href='http://www.mediawiki.org/wiki/API'>complete documentation</a>, or
+HTML is good for debugging, but is unsuitable for application use.<br />
+Specify the format parameter to change the output format.<br />
+To see the non HTML representation of the <?php echo( $this->mFormat ); ?> format, set format=<?php echo( strtolower( $this->mFormat ) ); ?>.<br />
+See the <a href='https://www.mediawiki.org/wiki/API'>complete documentation</a>, or
 <a href='<?php echo( $script ); ?>'>API help</a> for more information.
 </small>
 <?php
@@ -235,8 +232,10 @@ See <a href='http://www.mediawiki.org/wiki/API'>complete documentation</a>, or
        public function getBuffer() {
                return $this->mBuffer;
        }
+
        /**
         * Set the flag to buffer the result instead of printing it.
+        * @param $value bool
         */
        public function setBufferResult( $value ) {
                $this->mBufferResult = $value;
@@ -261,13 +260,14 @@ See <a href='http://www.mediawiki.org/wiki/API'>complete documentation</a>, or
                $text = htmlspecialchars( $text );
 
                // encode all comments or tags as safe blue strings
-               $text = preg_replace( '/\&lt;(!--.*?--|.*?)\&gt;/', '<span style="color:blue;">&lt;\1&gt;</span>', $text );
+               $text = str_replace( '&lt;', '<span style="color:blue;">&lt;', $text );
+               $text = str_replace( '&gt;', '&gt;</span>', $text );
                // identify URLs
                $protos = wfUrlProtocolsWithoutProtRel();
                // This regex hacks around bug 13218 (&quot; included in the URL)
                $text = preg_replace( "#(($protos).*?)(&quot;)?([ \\'\"<>\n]|&lt;|&gt;|&quot;)#", '<a href="\\1">\\1</a>\\3\\4', $text );
                // identify requests to api.php
-               $text = preg_replace( "#api\\.php\\?[^ \\()<\n\t]+#", '<a href="\\0">\\0</a>', $text );
+               $text = preg_replace( "#api\\.php\\?[^ <\n\t]+#", '<a href="\\0">\\0</a>', $text );
                if ( $this->mHelp ) {
                        // make strings inside * bold
                        $text = preg_replace( "#\\*[^<>\n]+\\*#", '<b>\\0</b>', $text );
@@ -288,12 +288,15 @@ See <a href='http://www.mediawiki.org/wiki/API'>complete documentation</a>, or
                return $text;
        }
 
-       protected function getExamples() {
-               return 'api.php?action=query&meta=siteinfo&siprop=namespaces&format=' . $this->getModuleName();
+       public function getExamples() {
+               return array(
+                       'api.php?action=query&meta=siteinfo&siprop=namespaces&format=' . $this->getModuleName()
+                               => "Format the query result in the {$this->getModuleName()} format",
+               );
        }
 
        public function getHelpUrls() {
-               return 'http://www.mediawiki.org/wiki/API:Data_formats';
+               return 'https://www.mediawiki.org/wiki/API:Data_formats';
        }
 
        public function getDescription() {
@@ -323,7 +326,7 @@ class ApiFormatFeedWrapper extends ApiFormatBase {
         */
        public static function setResult( $result, $feed, $feedItems ) {
                // Store output in the Result data.
-               // This way we can check during execution if any error has occured
+               // This way we can check during execution if any error has occurred
                // Disable size checking for this because we can't continue
                // cleanly; size checking would cause more problems than it'd
                // solve
@@ -335,6 +338,8 @@ class ApiFormatFeedWrapper extends ApiFormatBase {
 
        /**
         * Feed does its own headers
+        *
+        * @return null
         */
        public function getMimeType() {
                return null;
@@ -342,6 +347,8 @@ class ApiFormatFeedWrapper extends ApiFormatBase {
 
        /**
         * Optimization - no need to sanitize data that will not be needed
+        *
+        * @return bool
         */
        public function getNeedsRawData() {
                return true;
@@ -364,7 +371,7 @@ class ApiFormatFeedWrapper extends ApiFormatBase {
                        }
                        $feed->outFooter();
                } else {
-                       // Error has occured, print something useful
+                       // Error has occurred, print something useful
                        ApiBase::dieDebug( __METHOD__, 'Invalid feed class/item' );
                }
        }