* Add @addtogroup tags to various classes, to try and group conceptually-related classes together.
* Add brief descriptions to various Special pages, thanks to Phil Boswell.
* Moving some docs to be right above the classes they represent, so that they are picked up.
/**
* @todo Document - e.g. Provide top-level description of this class.
+ * @addtogroup Ajax
*/
class AjaxDispatcher {
var $mode;
<?php
+/**
+ * @package MediaWiki
+ * @addtogroup Ajax
+ */
+
if( !defined( 'MEDIAWIKI' ) )
die( 1 );
/**
* @todo document
+ * @addtogroup Ajax
*/
class AjaxResponse {
var $mCacheDuration;
* This class stores an arbitrary value along with its dependencies.
* Users should typically only use DependencyWrapper::getFromCache(), rather
* than instantiating one of these objects directly.
+ * @addtogroup Cache
*/
class DependencyWrapper {
var $value;
}
}
+/**
+ * @addtogroup Cache
+ */
abstract class CacheDependency {
/**
* Returns true if the dependency is expired, false otherwise
function loadDependencyValues() {}
}
+/**
+ * @addtogroup Cache
+ */
class FileDependency extends CacheDependency {
var $filename, $timestamp;
}
}
+/**
+ * @addtogroup Cache
+ */
class TitleDependency extends CacheDependency {
var $titleObj;
var $ns, $dbk;
}
}
+/**
+ * @addtogroup Cache
+ */
class TitleListDependency extends CacheDependency {
var $linkBatch;
var $timestamps;
}
}
+/**
+ * @addtogroup Cache
+ */
class GlobalDependency extends CacheDependency {
var $name, $value;
}
}
+/**
+ * @addtogroup Cache
+ */
class ConstantDependency extends CacheDependency {
var $name, $value;
/**
* Various core parser functions, registered in Parser::firstCallInit()
+ * @addtogroup Parser
*/
-
class CoreParserFunctions {
static function intFunction( $parser, $part1 = '' /*, ... */ ) {
if ( strval( $part1 ) !== '' ) {
/**
* Utility class.
+ * @addtogroup Database
*/
class DBObject {
public $mData;
/**
* Utility class.
+ * @addtogroup Database
*/
class MySQLField {
private $name, $tablename, $default, $max_length, $nullable,
/**
* Database error base class
+ * @addtogroup Database
*/
class DBError extends MWException {
public $db;
}
}
+/**
+ * @addtogroup Database
+ */
class DBConnectionError extends DBError {
public $error;
}
}
+/**
+ * @addtogroup Database
+ */
class DBQueryError extends DBError {
public $error, $errno, $sql, $fname;
}
}
+/**
+ * @addtogroup Database
+ */
class DBUnexpectedError extends DBError {}
/******************************************************************************/
/**
* Database abstraction object
+ * @addtogroup Database
*/
class Database {
* Database abstraction object for mySQL
* Inherit all methods and properties of Database::Database()
*
+ * @addtogroup Database
* @see Database
*/
class DatabaseMysql extends Database {
/**
* Result wrapper for grabbing data queried by someone else
- *
+ * @addtogroup Database
*/
class ResultWrapper {
var $db, $result;
/**
* This is the Oracle database abstraction layer.
+ * @addtogroup Database
*/
class ORABlob {
var $mData;
* The oci8 extension is fairly weak and doesn't support oci_num_rows, among
* other things. We use a wrapper class to handle that and other
* Oracle-specific bits, like converting column names back to lowercase.
+ * @addtogroup Database
*/
class ORAResult {
private $rows;
}
return $ret;
}
-};
+}
+/**
+ * @addtogroup Database
+ */
class DatabaseOracle extends Database {
var $mInsertId = NULL;
var $mLastResult = NULL;
}
/**
- * ORacle does not have a "USE INDEX" clause, so return an empty string
+ * Oracle does not have a "USE INDEX" clause, so return an empty string
*/
function useIndexClause($index) {
return '';
* than MySQL ones, some of them should be moved to parent
* Database class.
*
+ * @addtogroup Database
*/
-
class PostgresField {
private $name, $tablename, $type, $nullable, $max_length;
}
}
+/**
+ * @addtogroup Database
+ */
class DatabasePostgres extends Database {
var $mInsertId = NULL;
var $mLastResult = NULL;
<?php
+/**
+ * @addtogroup Exception
+ */
class MWException extends Exception
{
function useOutputPage() {
/**
* Exception class which takes an HTML error message, and does not
* produce a backtrace. Replacement for OutputPage::fatalError().
+ * @addtogroup Exception
*/
class FatalError extends MWException {
function getHTML() {
}
}
+/**
+ * @addtogroup Exception
+ */
class ErrorPageError extends MWException {
public $title, $msg;
}
}
+/**
+ * @addtogroup Dump
+ */
class XmlDumpWriter {
/**
/**
* Base class for output stream; prints to stdout or buffer or whereever.
+ * @addtogroup Dump
*/
class DumpOutput {
function writeOpenStream( $string ) {
/**
* Stream outputter to send data to a file.
+ * @addtogroup Dump
*/
class DumpFileOutput extends DumpOutput {
var $handle;
* Stream outputter to send data to a file via some filter program.
* Even if compression is available in a library, using a separate
* program can allow us to make use of a multi-processor system.
+ * @addtogroup Dump
*/
class DumpPipeOutput extends DumpFileOutput {
function DumpPipeOutput( $command, $file = null ) {
/**
* Sends dump output via the gzip compressor.
+ * @addtogroup Dump
*/
class DumpGZipOutput extends DumpPipeOutput {
function DumpGZipOutput( $file ) {
/**
* Sends dump output via the bgzip2 compressor.
+ * @addtogroup Dump
*/
class DumpBZip2Output extends DumpPipeOutput {
function DumpBZip2Output( $file ) {
/**
* Sends dump output via the p7zip compressor.
+ * @addtogroup Dump
*/
class Dump7ZipOutput extends DumpPipeOutput {
function Dump7ZipOutput( $file ) {
* Dump output filter class.
* This just does output filtering and streaming; XML formatting is done
* higher up, so be careful in what you do.
+ * @addtogroup Dump
*/
class DumpFilter {
function DumpFilter( &$sink ) {
/**
* Simple dump output filter to exclude all talk pages.
+ * @addtogroup Dump
*/
class DumpNotalkFilter extends DumpFilter {
function pass( $page ) {
/**
* Dump output filter to include or exclude pages in a given set of namespaces.
+ * @addtogroup Dump
*/
class DumpNamespaceFilter extends DumpFilter {
var $invert = false;
/**
* Dump output filter to include only the last revision in each page sequence.
+ * @addtogroup Dump
*/
class DumpLatestFilter extends DumpFilter {
var $page, $pageString, $rev, $revString;
/**
* Base class for output stream; prints to stdout or buffer or whereever.
+ * @addtogroup Dump
*/
class DumpMultiWriter {
function DumpMultiWriter( $sinks ) {
}
}
+/**
+ * @addtogroup Exception
+ */
class FSException extends MWException { }
?>
* suited for reports generating images
*
* @package MediaWiki
+ * @addtogroup SpecialPage
* @author Rob Church <robchur@gmail.com>
*/
class ImageQueryPage extends QueryPage {
}
-?>
\ No newline at end of file
+?>
* history.
*
*/
-
class PageHistory {
const DIR_PREV = 0;
const DIR_NEXT = 1;
}
+/**
+ * @addtogroup Pager
+ */
class PageHistoryPager extends ReverseChronologicalPager {
public $mLastRow = false, $mPageHistory;
* Variant of QueryPage which formats the result as a simple link to the page
*
* @package MediaWiki
+ * @addtogroup SpecialPage
*/
class PageQueryPage extends QueryPage {
}
}
-?>
\ No newline at end of file
+?>
/**
* Basic pager interface.
+ * @addtogroup Pager
*/
interface Pager {
function getNavigationBar();
* please see the examples in PageHistory.php and SpecialIpblocklist.php. You just need
* to override formatRow(), getQueryInfo() and getIndexField(). Don't forget to call the
* parent constructor if you override it.
+ *
+ * @addtogroup Pager
*/
abstract class IndexPager implements Pager {
public $mRequest;
/**
* IndexPager with an alphabetic list and a formatted navigation bar
-*/
+ * @addtogroup Pager
+ */
abstract class AlphabeticPager extends IndexPager {
public $mDefaultDirection = false;
/**
* IndexPager with a formatted navigation bar
+ * @addtogroup Pager
*/
abstract class ReverseChronologicalPager extends IndexPager {
public $mDefaultDirection = true;
/**
* Table-based display with a user-selectable sort order
+ * @addtogroup Pager
*/
abstract class TablePager extends IndexPager {
var $mSort;
* * only within ParserOptions
* </pre>
*
+ * @addtogroup Parser
*/
class Parser
{
/**
* @todo document, briefly.
+ * @addtogroup Parser
*/
class OnlyIncludeReplacer {
var $output = '';
/**
* @todo document, briefly.
+ * @addtogroup Parser
*/
class StripState {
var $general, $nowiki;
/**
*
* @addtogroup Cache
- */
-
-/**
* @todo document
*/
class ParserCache {
/**
* Set options of the Parser
* @todo document
+ * @addtogroup Parser
*/
class ParserOptions
{
<?php
/**
* @todo document
+ * @addtogroup Parser
*/
class ParserOutput
{
/**
* @todo document
+ * @addtogroup Profiler
*/
class Profiler {
var $mStack = array (), $mWorkStack = array (), $mCollated = array ();
/**
* Simple profiler base class.
* @todo document methods (?)
+ * @addtogroup Profiler
*/
class ProfilerSimple extends Profiler {
var $mMinimumTime = 0;
/**
* ProfilerSimpleUDP class, that sends out messages for 'udpprofile' daemon
* (the one from mediawiki/trunk/udpprofile SVN )
+ * @addtogroup Profiler
*/
class ProfilerSimpleUDP extends ProfilerSimple {
function getFunctionReport() {
* This is a class for doing query pages; since they're almost all the same,
* we factor out some of the functionality into a superclass, and let
* subclasses derive from it.
- *
+ * @addtogroup SpecialPage
*/
class QueryPage {
/**
}
}
-?>
\ No newline at end of file
+?>
'zwj' => 8205,
'zwnj' => 8204 );
+/**
+ * XHTML sanitizer for MediaWiki
+ * @addtogroup Parser
+ */
class Sanitizer {
/**
* Cleans up HTML, removes dangerous tags and attributes, and
* Contain a class for special pages
* @addtogroup Search
*/
-
-/**
- */
class SearchEngine {
var $limit = 10;
var $offset = 0;
}
}
+
+/**
+ * @addtogroup Search
+ */
class SearchResultSet {
/**
* Fetch an array of regular expression fragments for matching
}
}
+
+/**
+ * @addtogroup Search
+ */
class SearchResult {
function SearchResult( $row ) {
$this->mTitle = Title::makeTitle( $row->page_namespace, $row->page_title );
}
/**
+ * @addtogroup Search
*/
class SearchEngineDummy {
function search( $term ) {
* Specific bits for MySQL 3 and 4 variants are in child classes.
* @addtogroup Search
*/
-
class SearchMySQL extends SearchEngine {
/**
* Perform a full text search query and return a result set.
}
}
+/**
+ * @addtogroup Search
+ */
class MySQLSearchResultSet extends SearchResultSet {
function MySQLSearchResultSet( $resultSet, $terms ) {
$this->mResultSet = $resultSet;
* Search engine hook for MySQL 4+
* @addtogroup Search
*/
-
-/**
- * @addtogroup Search
- */
class SearchMySQL4 extends SearchMySQL {
var $strictMatching = true;
* Search engine hook base class for Oracle (ConText).
* @addtogroup Search
*/
-
class SearchOracle extends SearchEngine {
function __construct($db) {
$this->db = $db;
}
}
+/**
+ * @addtogroup Search
+ */
class OracleSearchResultSet extends SearchResultSet {
function __construct($resultSet, $terms) {
$this->mResultSet = $resultSet;
* Search engine hook base class for Postgres
* @addtogroup Search
*/
-
class SearchPostgres extends SearchEngine {
function SearchPostgres( $db ) {
} ## end of the SearchPostgres class
-
+/**
+ * @addtogroup Search
+ */
class PostgresSearchResult extends SearchResult {
function PostgresSearchResult( $row ) {
$this->mTitle = Title::makeTitle( $row->page_namespace, $row->page_title );
}
}
+/**
+ * @addtogroup Search
+ */
class PostgresSearchResultSet extends SearchResultSet {
function PostgresSearchResultSet( $resultSet, $terms ) {
$this->mResultSet = $resultSet;
<?php
/**
* See deferred.txt
- */
-
-/**
- *
+ * @addtogroup Search
*/
class SearchUpdate {
/**
* Placeholder class
+ * @addtogroup Search
*/
class SearchUpdateMyISAM extends SearchUpdate {
# Inherits everything
}
}
+/**
+ * Implements Special:Allpages
+ * @addtogroup SpecialPage
+ */
class SpecialAllpages {
var $maxPerPage=960;
var $topLevelMax=50;
*/
/**
- * @todo document, briefly.
+ * Implements Special:Ancientpages
* @addtogroup SpecialPage
*/
class AncientPagesPage extends QueryPage {
);
}
+/**
+ * @addtogroup SpecialPage
+ * @addtogroup Pager
+ */
class CategoryPager extends AlphabeticPager {
function getQueryInfo() {
return array(
<?php
-/**
- * Special page allows users to request email confirmation message, and handles
- * processing of the confirmation code when the link in the email is followed
- *
- * @addtogroup SpecialPage
- * @author Rob Church <robchur@gmail.com>
- */
-
/**
* Main execution point
*
$form->execute( $par );
}
+/**
+ * Special page allows users to request email confirmation message, and handles
+ * processing of the confirmation code when the link in the email is followed
+ *
+ * @addtogroup SpecialPage
+ * @author Rob Church <robchur@gmail.com>
+ */
class EmailConfirmation extends SpecialPage {
/**
<?php
/**
- *
* Special page for listing the articles with the fewest revisions.
*
* @package MediaWiki
- * @subpackage Special pages
+ * @addtogroup SpecialPage
* @author Martin Drashkov
*/
-
class FewestrevisionsPage extends QueryPage {
function getName() {
$frp->doQuery( $offset, $limit );
}
-?>
\ No newline at end of file
+?>
. $nav );
}
+/**
+ * @addtogroup SpecialPage
+ * @addtogroup Pager
+ */
class ImageListPager extends TablePager {
var $mFieldNames = null;
var $mMessages = array();
/**
* Reporting callback
+ * @addtogroup SpecialPage
*/
class ImportReporter {
function __construct( $importer, $upload, $interwiki ) {
}
/**
- *
+ * implements Special:Import
* @addtogroup SpecialPage
*/
class WikiImporter {
/**
* @todo document (e.g. one-sentence class description).
+ * @addtogroup SpecialPage
*/
class ImportStringSource {
function ImportStringSource( $string ) {
/**
* @todo document (e.g. one-sentence class description).
+ * @addtogroup SpecialPage
*/
class ImportStreamSource {
function ImportStreamSource( $handle ) {
}
/**
- * @todo document
+ * implements Special:ipblocklist GUI
* @addtogroup SpecialPage
*/
class IPUnblockForm {
/**
* @todo document
+ * @addtogroup Pager
*/
class IPBlocklistPager extends ReverseChronologicalPager {
public $mForm, $mConds;
*/
/**
+ * implements Special:Mostcategories
* @addtogroup SpecialPage
*/
class MostcategoriesPage extends QueryPage {
*/
/**
+ * implements Special:Mostimages
* @addtogroup SpecialPage
*/
class MostimagesPage extends ImageQueryPage {
<?php
/**
- * A special page to show pages ordered by the number of pages linking to them
+ * A special page to show pages ordered by the number of pages linking to them.
+ * Implements Special:Mostlinked
*
* @addtogroup SpecialPage
*
* @copyright © 2006 Rob Church
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
*/
-
-/**
- * @addtogroup SpecialPage
- */
class MostlinkedPage extends QueryPage {
function getName() { return 'Mostlinked'; }
* @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
*/
-
-/**
- * @addtogroup SpecialPage
- */
class MostlinkedCategoriesPage extends QueryPage {
function getName() { return 'Mostlinkedcategories'; }
*/
/**
- *
+ * implements Special:Newpages
* @addtogroup SpecialPage
*/
class NewPagesPage extends QueryPage {
/**
* Parent special page class, also static functions for handling the special
- * page list
+ * page list.
+ * @addtogroup SpecialPage
*/
class SpecialPage
{
/**
* Shortcut to construct a special page which is unlisted by default
+ * @addtogroup SpecialPage
*/
class UnlistedSpecialPage extends SpecialPage
{
/**
* Shortcut to construct an includable special page
+ * @addtogroup SpecialPage
*/
class IncludableSpecialPage extends SpecialPage
{
}
}
+/**
+ * @addtogroup SpecialPage
+ */
class SpecialRedirectToSpecial extends UnlistedSpecialPage {
var $redirName, $redirSubpage;
}
}
+/**
+ * @addtogroup SpecialPage
+ */
class SpecialMypage extends UnlistedSpecialPage {
function __construct() {
parent::__construct( 'Mypage' );
}
}
+/**
+ * @addtogroup SpecialPage
+ */
class SpecialMytalk extends UnlistedSpecialPage {
function __construct() {
parent::__construct( 'Mytalk' );
}
}
+/**
+ * @addtogroup SpecialPage
+ */
class SpecialMycontributions extends UnlistedSpecialPage {
function __construct() {
parent::__construct( 'Mycontributions' );
*/
/**
- *
+ * implements Special:Popularpages
* @addtogroup SpecialPage
*/
class PopularPagesPage extends QueryPage {
}
}
+/**
+ * implements Special:Prefixindex
+ * @addtogroup SpecialPage
+ */
class SpecialPrefixindex extends SpecialAllpages {
var $maxPerPage=960;
var $topLevelMax=50;
/**
* @todo document
+ * @addtogroup Pager
*/
class ProtectedPagesPager extends ReverseChronologicalPager {
public $mForm, $mConds;
}
+/**
+ * Special page to direct the user to a random page
+ *
+ * @addtogroup SpecialPage
+ */
class RandomPage {
private $namespace = NS_MAIN; // namespace to select pages from
private $redirect = false; // select redirects instead of normal pages?
$form->execute( $par );
}
+/**
+ * @addtogroup SpecialPage
+ */
class PasswordResetForm extends SpecialPage {
function __construct( $name=null, $reset=null ) {
if( $name !== null ) {
}
}
+/**
+ * Implements the GUI for Revision Deletion.
+ * @addtogroup SpecialPage
+ */
class RevisionDeleteForm {
/**
* @param Title $page
}
}
-
+/**
+ * Implements the actions for Revision Deletion.
+ * @addtogroup SpecialPage
+ */
class RevisionDeleter {
function __construct( $db ) {
$this->db = $db;
}
/**
- * @todo document
+ * implements Special:Search - Run text & title search and display the output
* @addtogroup SpecialPage
*/
class SpecialSearch {
require_once( "SpecialUncategorizedpages.php" );
/**
- *
+ * implements Special:Uncategorizedcategories
* @addtogroup SpecialPage
*/
class UncategorizedCategoriesPage extends UncategorizedPagesPage {
*/
/**
+ * implements Special:Unusedimages
* @addtogroup SpecialPage
*/
class UnusedimagesPage extends ImageQueryPage {
<?php
/**
+ * implements Special:Unusedtemplates
* @author Rob Church <robchur@gmail.com>
* @copyright © 2006 Rob Church
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
<?php
/**
- * A special page that displays a list of pages that are not on anyones watchlist
+ * A special page that displays a list of pages that are not on anyones watchlist.
+ * Implements Special:Unwatchedpages
*
* @addtogroup SpecialPage
- *
* @author Ævar Arnfjörð Bjarmason <avarab@gmail.com>
* @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
*/
-
-/**
- * @addtogroup SpecialPage
- */
class UnwatchedpagesPage extends QueryPage {
function getName() { return 'Unwatchedpages'; }
}
/**
- *
+ * implements Special:Upload
* @addtogroup SpecialPage
*/
class UploadForm {
$form->execute();
}
+/**
+ * @addtogroup SpecialPage
+ */
class UploadFormMogile extends UploadForm {
/**
* Move the uploaded file from its temporary location to the final
}
/**
- * @todo document, briefly.
+ * implements Special:Login
* @addtogroup SpecialPage
*/
-
class LoginForm {
const SUCCESS = 0;
<?php
/**
- * A querypage to list the most wanted categories
+ * A querypage to list the most wanted categories - implements Special:Wantedcategories
*
* @addtogroup SpecialPage
*
* @copyright Copyright © 2005, Ævar Arnfjörð Bjarmason
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
*/
-
-/**
- * @addtogroup SpecialPage
- */
class WantedCategoriesPage extends QueryPage {
function getName() { return 'Wantedcategories'; }
*/
/**
- *
+ * implements Special:Wantedpages
* @addtogroup SpecialPage
*/
class WantedPagesPage extends QueryPage {
$page->execute();
}
+/**
+ * implements Special:Whatlinkshere
+ * @addtogroup SpecialPage
+ */
class WhatLinksHerePage {
var $request, $par;
var $limit, $from, $back, $target, $namespace;
* Special page lists pages without language links
*
* @package MediaWiki
+ * @addtogroup SpecialPage
* @author Rob Church <robchur@gmail.com>
*/
class WithoutInterwikiPage extends PageQueryPage {
$wip->doQuery( $offset, $limit );
}
-?>
\ No newline at end of file
+?>
/**
* Thrown by User::setPassword() on error
+ * @addtogroup Exception
*/
class PasswordError extends MWException {
// NOP
/**
* Since PHP4 doesn't have exceptions, here's some error objects
* loosely modeled on the standard PEAR_Error model...
+ * @addtogroup Exception
*/
class WikiError {
/**
/**
* Localized error message object
+ * @addtogroup Exception
*/
class WikiErrorMsg extends WikiError {
/**
/**
* @todo document
+ * @addtogroup Exception
*/
class WikiXmlError extends WikiError {
/**
<?php
-
/*
* Created on Sep 5, 2006
*
/**
* @todo Document - e.g. Provide top-level description of this class.
+ * @addtogroup API
*/
abstract class ApiBase {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Oct 13, 2006
*
require_once ("ApiBase.php");
}
+/**
+ * @addtogroup API
+ */
class ApiFeedWatchlist extends ApiBase {
public function __construct($main, $action) {
<?php
-
/*
* Created on Sep 19, 2006
*
require_once ('ApiBase.php');
}
+/**
+ * @addtogroup API
+ */
abstract class ApiFormatBase extends ApiBase {
private $mIsHtml, $mFormat;
/**
* This printer is used to wrap an instance of the Feed class
+ * @addtogroup API
*/
class ApiFormatFeedWrapper extends ApiFormatBase {
<?php
-
/*
* Created on Sep 19, 2006
*
require_once ('ApiFormatBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiFormatJson extends ApiFormatBase {
private $mIsRaw;
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
-* @addtogroup Services_JSON
+* @addtogroup API
* @author Michal Migurski <mike-json@teczno.com>
* @author Matt Knapp <mdknapp[at]gmail[dot]com>
* @author Brett Stimmerman <brettstimmerman[at]gmail[dot]com>
define('SERVICES_JSON_SUPPRESS_ERRORS', 32);
/**
-* Converts to and from JSON format.
-*
-* Brief example of use:
-*
-* <code>
-* // create a new instance of Services_JSON
-* $json = new Services_JSON();
-*
-* // convert a complexe value to JSON notation, and send it to the browser
-* $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4)));
-* $output = $json->encode($value);
-*
-* print($output);
-* // prints: ["foo","bar",[1,2,"baz"],[3,[4]]]
-*
-* // accept incoming POST data, assumed to be in JSON notation
-* $input = file_get_contents('php://input', 1000000);
-* $value = $json->decode($input);
-* </code>
-*/
+ * Converts to and from JSON format.
+ *
+ * Brief example of use:
+ *
+ * <code>
+ * // create a new instance of Services_JSON
+ * $json = new Services_JSON();
+ *
+ * // convert a complexe value to JSON notation, and send it to the browser
+ * $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4)));
+ * $output = $json->encode($value);
+ *
+ * print($output);
+ * // prints: ["foo","bar",[1,2,"baz"],[3,[4]]]
+ *
+ * // accept incoming POST data, assumed to be in JSON notation
+ * $input = file_get_contents('php://input', 1000000);
+ * $value = $json->decode($input);
+ * </code>
+ *
+ * @addtogroup API
+ */
class Services_JSON
{
/**
if (class_exists('PEAR_Error')) {
+ /**
+ * @addtogroup API
+ */
class Services_JSON_Error extends PEAR_Error
{
function Services_JSON_Error($message = 'unknown error', $code = null,
/**
* @todo Ultimately, this class shall be descended from PEAR_Error
+ * @addtogroup API
*/
class Services_JSON_Error
{
<?php
-
/*
* Created on Oct 22, 2006
*
require_once ('ApiFormatBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiFormatPhp extends ApiFormatBase {
public function __construct($main, $format) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Oct 22, 2006
*
require_once ('ApiFormatBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiFormatWddx extends ApiFormatBase {
public function __construct($main, $format) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Sep 19, 2006
*
require_once ('ApiFormatBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiFormatXml extends ApiFormatBase {
private $mRootElemName = 'api';
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Sep 19, 2006
*
require_once ('ApiFormatBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiFormatYaml extends ApiFormatBase {
public function __construct($main, $format) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
* @see http://spyc.sourceforge.net/
* @copyright Copyright 2005-2006 Chris Wanstrath
* @license http://www.opensource.org/licenses/mit-license.php MIT License
- * @addtogroup Spyc
*/
/**
* A node, used by Spyc for parsing YAML.
- * @addtogroup Spyc
+ * @addtogroup API
*/
class YAMLNode {
/**#@+
* $parser = new Spyc;
* $array = $parser->load($file);
* </code>
- * @addtogroup Spyc
+ * @addtogroup API
*/
class Spyc {
<?php
-
/*
* Created on Sep 6, 2006
*
require_once ('ApiBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiHelp extends ApiBase {
public function __construct($main, $action) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Sep 19, 2006
*
require_once ('ApiBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiLogin extends ApiBase {
public function __construct($main, $action) {
<?php
-
/*
* Created on Sep 4, 2006
*
/**
* This is the main API class, used for both external and internal processing.
+ * @addtogroup API
*/
class ApiMain extends ApiBase {
/**
* This exception will be thrown when dieUsage is called to stop module execution.
+ * @addtogroup API
*/
class UsageException extends Exception {
<?php
-
/*
* Created on Oct 13, 2006
*
require_once ("ApiBase.php");
}
+/**
+ * @addtogroup API
+ */
class ApiOpenSearch extends ApiBase {
public function __construct($main, $action) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Sep 24, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiPageSet extends ApiQueryBase {
private $mAllPages; // [ns][dbkey] => page_id or 0 when missing
<?php
-
/*
* Created on Sep 7, 2006
*
require_once ('ApiBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQuery extends ApiBase {
private $mPropModuleNames, $mListModuleNames, $mMetaModuleNames;
<?php
-
/*
* Created on Sep 25, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryAllpages extends ApiQueryGeneratorBase {
public function __construct($query, $moduleName) {
<?php
-
/*
* Created on Oct 16, 2006
*
require_once ("ApiQueryBase.php");
}
+/**
+ * @addtogroup API
+ */
class ApiQueryBacklinks extends ApiQueryGeneratorBase {
private $rootTitle, $contRedirs, $contLevel, $contTitle, $contID;
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Sep 7, 2006
*
require_once ('ApiBase.php');
}
+/**
+ * @addtogroup API
+ */
abstract class ApiQueryBase extends ApiBase {
private $mQueryModule, $tables, $where, $fields, $options;
}
}
+/**
+ * @addtogroup API
+ */
abstract class ApiQueryGeneratorBase extends ApiQueryBase {
private $mIsGenerator;
<?php
-
/*
* Created on Sep 25, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryInfo extends ApiQueryBase {
public function __construct($query, $moduleName) {
<?php
-
/*
* Created on Oct 16, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryLogEvents extends ApiQueryBase {
public function __construct($query, $moduleName) {
<?php
-
/*
* Created on Oct 19, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryRecentChanges extends ApiQueryBase {
public function __construct($query, $moduleName) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Sep 7, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryRevisions extends ApiQueryBase {
public function __construct($query, $moduleName) {
<?php
-
/*
* Created on Sep 25, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQuerySiteinfo extends ApiQueryBase {
public function __construct($query, $moduleName) {
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
<?php
-
/*
* Created on Oct 16, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryContributions extends ApiQueryBase {
public function __construct($query, $moduleName) {
<?php
-
/*
* Created on Sep 25, 2006
*
require_once ('ApiQueryBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiQueryWatchlist extends ApiQueryGeneratorBase {
public function __construct($query, $moduleName) {
<?php
-
/*
* Created on Sep 4, 2006
*
require_once ('ApiBase.php');
}
+/**
+ * @addtogroup API
+ */
class ApiResult extends ApiBase {
private $mData, $mIsRawMode;
return __CLASS__ . ': $Id$';
}
}
-?>
\ No newline at end of file
+?>
* memcached client class implemented using (p)fsockopen()
*
* @author Ryan T. Dean <rtdean@cytherianage.net>
- * @package memcached-client
+ * @addtogroup cache
*/
class memcached
{
}
}
+/**
+ * @addtogroup Templates
+ */
class UsercreateTemplate extends QuickTemplate {
function execute() {
if( $this->data['message'] ) {