MediaWiki  1.34.0
CategoryTree Class Reference

Core functions for the CategoryTree extension, an AJAX based gadget to display the category structure of a wiki. More...

Collaboration diagram for CategoryTree:

Public Member Functions

 __construct (array $options)
 PhanTypeInvalidDimOffset. More...
 
 getOption ( $name)
 
 getOptionsAsCacheKey ( $depth=null)
 
 getOptionsAsJsStructure ( $depth=null)
 
 getTag (Parser $parser=null, $category, $hideroot=false, array $attr=[], $depth=1, $allowMissing=false)
 Custom tag implementation. More...
 
 renderChildren (Title $title, $depth=1)
 Returns a string with an HTML representation of the children of the given category. More...
 
 renderNode (Title $title, $children=0)
 Returns a string with a HTML represenation of the given page. More...
 
 renderNodeInfo (Title $title, Category $cat=null, $children=0)
 Returns a string with a HTML represenation of the given page. More...
 
 renderParents (Title $title)
 Returns a string with an HTML representation of the parents of the given category. More...
 

Static Public Member Functions

static capDepth ( $mode, $depth)
 Internal function to cap depth PhanPluginDuplicateConditionalNullCoalescing until PHP7 is required. More...
 
static createCountString (IContextSource $context, Category $cat=null, $countMode)
 Create a string which format the page, subcat and file counts of a category PhanParamReqAfterOpt $cat is not optional but nullable. More...
 
static decodeBoolean ( $value)
 Helper function to convert a string to a boolean value. More...
 
static decodeHidePrefix ( $value)
 
static decodeMode ( $mode)
 
static makeTitle ( $title)
 Creates a Title object from a user provided (and thus unsafe) string. More...
 
static setHeaders (OutputPage $outputPage)
 Add ResourceLoader modules to the OutputPage object. More...
 

Public Attributes

 $mOptions = []
 

Static Protected Member Functions

static encodeOptions (array $options, $enc)
 

Private Member Functions

 isInverse ()
 

Static Private Member Functions

static decodeNamespaces ( $nn)
 

Private Attributes

LinkRenderer $linkRenderer
 

Detailed Description

Core functions for the CategoryTree extension, an AJAX based gadget to display the category structure of a wiki.

Definition at line 31 of file CategoryTree.php.

Constructor & Destructor Documentation

◆ __construct()

CategoryTree::__construct ( array  $options)

Member Function Documentation

◆ capDepth()

static CategoryTree::capDepth (   $mode,
  $depth 
)
static

Internal function to cap depth PhanPluginDuplicateConditionalNullCoalescing until PHP7 is required.

Parameters
string$mode
int$depth
Returns
int|mixed

Definition at line 771 of file CategoryTree.php.

References wfDebug().

Referenced by ApiCategoryTree\execute(), and CategoryTreeHooks\parserHook().

◆ createCountString()

static CategoryTree::createCountString ( IContextSource  $context,
Category  $cat = null,
  $countMode 
)
static

Create a string which format the page, subcat and file counts of a category PhanParamReqAfterOpt $cat is not optional but nullable.

Parameters
IContextSource$context
Category | null$cat
int$countMode
Returns
string

Definition at line 689 of file CategoryTree.php.

References $context, $s, and Xml\tags().

Referenced by CategoryTreeHooks\onSpecialTrackingCategoriesGenerateCatLink(), and renderNodeInfo().

◆ decodeBoolean()

static CategoryTree::decodeBoolean (   $value)
static

Helper function to convert a string to a boolean value.

Perhaps make this a global function in MediaWiki proper

Parameters
mixed$value
Returns
bool|null|string

Definition at line 182 of file CategoryTree.php.

Referenced by __construct(), and CategoryTreeHooks\parserHook().

◆ decodeHidePrefix()

static CategoryTree::decodeHidePrefix (   $value)
static
Parameters
mixed$value
Returns
int|string

Definition at line 217 of file CategoryTree.php.

References CategoryTreeHidePrefix\ALWAYS, CategoryTreeHidePrefix\AUTO, CategoryTreeHidePrefix\CATEGORIES, and CategoryTreeHidePrefix\NEVER.

Referenced by __construct().

◆ decodeMode()

static CategoryTree::decodeMode (   $mode)
static
Parameters
mixed$mode
Returns
int|string

Definition at line 145 of file CategoryTree.php.

References CategoryTreeMode\ALL, CategoryTreeMode\CATEGORIES, CategoryTreeMode\PAGES, and CategoryTreeMode\PARENTS.

Referenced by __construct(), and CategoryTreeHooks\initialize().

◆ decodeNamespaces()

static CategoryTree::decodeNamespaces (   $nn)
staticprivate
Parameters
mixed$nn
Returns
array|bool

Definition at line 100 of file CategoryTree.php.

References NS_MAIN.

Referenced by __construct().

◆ encodeOptions()

static CategoryTree::encodeOptions ( array  $options,
  $enc 
)
staticprotected
Parameters
array$options
string$enc
Returns
mixed
Exceptions
Exception

Definition at line 272 of file CategoryTree.php.

References FormatJson\encode().

Referenced by getOptionsAsJsStructure().

◆ getOption()

CategoryTree::getOption (   $name)
Parameters
string$name
Returns
mixed

Definition at line 85 of file CategoryTree.php.

Referenced by isInverse(), renderChildren(), and renderNodeInfo().

◆ getOptionsAsCacheKey()

CategoryTree::getOptionsAsCacheKey (   $depth = null)
Parameters
string | null$depth
Returns
string

Definition at line 288 of file CategoryTree.php.

Referenced by ApiCategoryTree\getHTML().

◆ getOptionsAsJsStructure()

CategoryTree::getOptionsAsJsStructure (   $depth = null)
Parameters
int | null$depth
Returns
mixed

Definition at line 308 of file CategoryTree.php.

References $mOptions, $s, and encodeOptions().

Referenced by getTag().

◆ getTag()

CategoryTree::getTag ( Parser  $parser = null,
  $category,
  $hideroot = false,
array  $attr = [],
  $depth = 1,
  $allowMissing = false 
)

Custom tag implementation.

This is called by CategoryTreeHooks::parserHook, which is used to load CategoryTreeFunctions.php on demand. PhanParamReqAfterOpt $parser is not optional but nullable

Parameters
Parser | null$parser
string$category
bool$hideroot
array$attr
int$depth
bool$allowMissing
Returns
bool|string

Definition at line 332 of file CategoryTree.php.

References $title, Xml\closeElement(), getOptionsAsJsStructure(), makeTitle(), renderChildren(), renderNode(), and wfMessage().

◆ isInverse()

CategoryTree::isInverse ( )
private
Returns
bool

Definition at line 92 of file CategoryTree.php.

References getOption(), and CategoryTreeMode\PARENTS.

Referenced by renderChildren(), and renderNode().

◆ makeTitle()

static CategoryTree::makeTitle (   $title)
static

Creates a Title object from a user provided (and thus unsafe) string.

Parameters
string$title
Returns
null|Title

Definition at line 745 of file CategoryTree.php.

References $t, $title, Title\newFromText(), and NS_CATEGORY.

Referenced by ApiCategoryTree\execute(), CategoryTreePage\execute(), ApiCategoryTree\getConditionalRequestData(), and getTag().

◆ renderChildren()

CategoryTree::renderChildren ( Title  $title,
  $depth = 1 
)

Returns a string with an HTML representation of the children of the given category.

Parameters
Title$title
int$depth
Returns
string

Definition at line 396 of file CategoryTree.php.

References $dbr, $res, $s, $t, $title, CategoryTreeMode\ALL, DB_REPLICA, getOption(), isInverse(), Title\makeTitle(), Category\newFromRow(), Title\newFromRow(), NS_CATEGORY, CategoryTreeMode\PAGES, renderNodeInfo(), and wfGetDB().

Referenced by ApiCategoryTree\getHTML(), getTag(), and renderNodeInfo().

◆ renderNode()

CategoryTree::renderNode ( Title  $title,
  $children = 0 
)

Returns a string with a HTML represenation of the given page.

Parameters
Title$title
int$children
Returns
string

Definition at line 540 of file CategoryTree.php.

References $title, isInverse(), Category\newFromTitle(), NS_CATEGORY, and renderNodeInfo().

Referenced by getTag().

◆ renderNodeInfo()

CategoryTree::renderNodeInfo ( Title  $title,
Category  $cat = null,
  $children = 0 
)

Returns a string with a HTML represenation of the given page.

$info must be an associative array, containing at least a Title object under the 'title' key.

Parameters
Title$title
Category | null$cat
int$children
Returns
string

Definition at line 562 of file CategoryTree.php.

References $s, $title, CategoryTreeHidePrefix\ALWAYS, CategoryTreeHidePrefix\AUTO, CategoryTreeMode\CATEGORIES, CategoryTreeHidePrefix\CATEGORIES, Xml\closeElement(), createCountString(), RequestContext\getMain(), getOption(), NS_CATEGORY, Xml\openElement(), CategoryTreeMode\PAGES, CategoryTreeMode\PARENTS, renderChildren(), Xml\tags(), and wfMessage().

Referenced by renderChildren(), and renderNode().

◆ renderParents()

CategoryTree::renderParents ( Title  $title)

Returns a string with an HTML representation of the parents of the given category.

Parameters
Title$title
Returns
string

Definition at line 494 of file CategoryTree.php.

References $dbr, $mOptions, $res, $s, $t, $title, Xml\closeElement(), DB_REPLICA, SpecialPage\getTitleFor(), Title\makeTitle(), NS_CATEGORY, Xml\openElement(), wfGetDB(), and wfMessage().

◆ setHeaders()

static CategoryTree::setHeaders ( OutputPage  $outputPage)
static

Member Data Documentation

◆ $linkRenderer

LinkRenderer CategoryTree::$linkRenderer
private

Definition at line 37 of file CategoryTree.php.

◆ $mOptions

CategoryTree::$mOptions = []

Definition at line 32 of file CategoryTree.php.

Referenced by getOptionsAsJsStructure(), and renderParents().


The documentation for this class was generated from the following file: