MediaWiki master
ImageGalleryBase Class Reference

Image gallery. More...

Inherits MediaWiki\Context\ContextSource.

Inherited by TraditionalImageGallery.

Collaboration diagram for ImageGalleryBase:

Public Member Functions

 __construct ( $mode='traditional', IContextSource $context=null)
 Create a new image gallery object.
 
 add ( $title, $html='', $alt='', $link='', $handlerOpts=[], $loading=self::LOADING_DEFAULT, ?array $imageOptions=null)
 Add an image to the gallery.
 
 count ()
 
 getContextTitle ()
 Get the contextual title, if applicable.
 
 getImages ()
 Returns the list of images this gallery contains.
 
 insert ( $title, $html='', $alt='', $link='', $handlerOpts=[], $loading=self::LOADING_DEFAULT, ?array $imageOptions=null)
 Add an image at the beginning of the gallery.
 
 isEmpty ()
 isEmpty() returns true if the gallery contains no images
 
 setAdditionalOptions ( $options)
 Allow setting additional options.
 
 setAttributes ( $attribs)
 Set arbitrary attributes to go on the HTML gallery output element.
 
 setCaption ( $caption)
 Set the caption (as plain text)
 
 setCaptionHtml ( $caption)
 Set the caption (as HTML)
 
 setContextTitle ( $title)
 Set the contextual title.
 
 setHeights ( $num)
 Set how high each image will be, in pixels.
 
 setHideBadImages ( $flag=true)
 
 setParser ( $parser)
 Register a parser object.
 
 setPerRow ( $num)
 Set how many images will be displayed per row.
 
 setShowBytes ( $f)
 Enable/Disable showing of the file size of an image in the gallery.
 
 setShowDimensions ( $f)
 Enable/Disable showing of the dimensions of an image in the gallery.
 
 setShowFilename ( $f)
 Enable/Disable showing of the filename of an image in the gallery.
 
 setWidths ( $num)
 Set how wide each image will be, in pixels.
 
 toHTML ()
 Display an html representation of the gallery.
 
- Public Member Functions inherited from MediaWiki\Context\ContextSource
 canUseWikiPage ()
 Check whether a WikiPage object can be get with getWikiPage().
 
 exportSession ()
 Export the resolved user IP, HTTP headers, user ID, and session ID.
 
 getActionName ()
 Get the action name for the current web request.
 
 getAuthority ()
 
 getConfig ()
 
 getContext ()
 Get the base IContextSource object.
 
 getCsrfTokenSet ()
 Get a repository to obtain and match CSRF tokens.
 
 getLanguage ()
 
 getLanguageCode ()
 
 getOutput ()
 
 getRequest ()
 
 getSkin ()
 
 getTiming ()
 
 getTitle ()
 
 getUser ()
 
 getWikiPage ()
 Get the WikiPage object.
 
 msg ( $key,... $params)
 Get a Message object with context set Parameters are the same as wfMessage()
 
 setContext (IContextSource $context)
 

Static Public Member Functions

static factory ( $mode=false, IContextSource $context=null)
 Get a new image gallery.
 

Public Attributes

Parser false $mParser
 Registered parser object for output callbacks.
 
const LOADING_DEFAULT = 1
 
const LOADING_LAZY = 2
 

Protected Member Functions

 getRenderLang ()
 Determines the correct language to be used for this image gallery.
 

Protected Attributes

Title null $contextTitle = null
 Contextual title, used when images are being screened against the bad image list.
 
array $mAttribs = []
 
string false $mCaption = false
 Gallery caption.
 
bool int $mCaptionLength = true
 Length to truncate filename to in caption when using "showfilename".
 
int $mHeights
 
bool $mHideBadImages
 Hide bad images?
 
array[] $mImages
 Gallery images.
 
string $mMode
 Gallery mode.
 
int $mPerRow
 
bool $mShowBytes
 Whether to show the filesize in bytes in categories.
 
bool $mShowDimensions
 Whether to show the dimensions in categories.
 
bool $mShowFilename
 Whether to show the filename.
 
int $mWidths
 

Detailed Description

Image gallery.

Add images to the gallery using add(), then render that list to HTML using toHTML().

Stability: stable
to extend

Definition at line 39 of file ImageGalleryBase.php.

Constructor & Destructor Documentation

◆ __construct()

ImageGalleryBase::__construct (   $mode = 'traditional',
IContextSource  $context = null 
)

Create a new image gallery object.

You should not call this directly, but instead use ImageGalleryBase::factory().

Stability: stable
to call
Note
constructors of subclasses must have a compatible signature for use by the factory() method.
Parameters
string$mode
IContextSource | null$context

Reimplemented in PackedImageGallery, and SlideshowImageGallery.

Definition at line 172 of file ImageGalleryBase.php.

References MediaWiki\Context\ContextSource\getConfig(), and MediaWiki\Context\ContextSource\setContext().

Member Function Documentation

◆ add()

ImageGalleryBase::add (   $title,
  $html = '',
  $alt = '',
  $link = '',
  $handlerOpts = [],
  $loading = self::LOADING_DEFAULT,
?array  $imageOptions = null 
)

Add an image to the gallery.

Parameters
Title$titleTitle object of the image that is added to the gallery
string$htmlAdditional HTML text to be shown. The name and size of the image are always shown.
string | null$altAlt text for the image, or null to omit
string$linkOverride image link (optional)
array$handlerOptsArray of options for image handler (aka page number)
int$loadingSets loading attribute of the underlying (optional)
?array$imageOptions To supercede the $link param

Definition at line 292 of file ImageGalleryBase.php.

References wfDebug().

◆ count()

ImageGalleryBase::count ( )
Returns
int Number of images in the gallery

Definition at line 407 of file ImageGalleryBase.php.

References count().

Referenced by count().

◆ factory()

static ImageGalleryBase::factory (   $mode = false,
IContextSource  $context = null 
)
static

Get a new image gallery.

This is the method other callers should use to get a gallery.

Parameters
string | false$modeMode to use. False to use the default
IContextSource | null$context
Returns
ImageGalleryBase
Exceptions
ImageGalleryClassNotFoundException

Definition at line 123 of file ImageGalleryBase.php.

Referenced by MediaWiki\Category\CategoryViewer\clearCategoryState().

◆ getContextTitle()

ImageGalleryBase::getContextTitle ( )

Get the contextual title, if applicable.

Returns
Title|null

Definition at line 425 of file ImageGalleryBase.php.

◆ getImages()

ImageGalleryBase::getImages ( )

Returns the list of images this gallery contains.

Returns
array[]

Definition at line 342 of file ImageGalleryBase.php.

◆ getRenderLang()

ImageGalleryBase::getRenderLang ( )
protected

Determines the correct language to be used for this image gallery.

Returns
Language

Definition at line 433 of file ImageGalleryBase.php.

References MediaWiki\Context\ContextSource\getLanguage().

Referenced by TraditionalImageGallery\toHTML().

◆ insert()

ImageGalleryBase::insert (   $title,
  $html = '',
  $alt = '',
  $link = '',
  $handlerOpts = [],
  $loading = self::LOADING_DEFAULT,
?array  $imageOptions = null 
)

Add an image at the beginning of the gallery.

Parameters
Title$titleTitle object of the image that is added to the gallery
string$htmlAdditional HTML text to be shown. The name and size of the image are always shown.
string$altAlt text for the image
string$linkOverride image link (optional)
array$handlerOptsArray of options for image handler (aka page number)
int$loadingSets loading attribute of the underlying (optional)
?array$imageOptions To supercede the $link param

Definition at line 321 of file ImageGalleryBase.php.

◆ isEmpty()

ImageGalleryBase::isEmpty ( )

isEmpty() returns true if the gallery contains no images

Returns
bool

Definition at line 350 of file ImageGalleryBase.php.

◆ setAdditionalOptions()

ImageGalleryBase::setAdditionalOptions (   $options)

Allow setting additional options.

This is meant to allow extensions to add additional parameters to <gallery> parser tag.

Stability: stable
to override
Parameters
array$optionsAttributes of gallery tag

Reimplemented in SlideshowImageGallery.

Definition at line 277 of file ImageGalleryBase.php.

◆ setAttributes()

ImageGalleryBase::setAttributes (   $attribs)

Set arbitrary attributes to go on the HTML gallery output element.

Should be suitable for a

.

Note – if taking from user input, you should probably run through Sanitizer::validateAttributes() first.

Parameters
array$attribsArray of HTML attribute pairs

Definition at line 393 of file ImageGalleryBase.php.

◆ setCaption()

ImageGalleryBase::setCaption (   $caption)

Set the caption (as plain text)

Parameters
string$caption

Definition at line 217 of file ImageGalleryBase.php.

◆ setCaptionHtml()

ImageGalleryBase::setCaptionHtml (   $caption)

Set the caption (as HTML)

Parameters
string$caption

Definition at line 226 of file ImageGalleryBase.php.

◆ setContextTitle()

ImageGalleryBase::setContextTitle (   $title)

Set the contextual title.

Parameters
Title | null$titleContextual title

Definition at line 416 of file ImageGalleryBase.php.

◆ setHeights()

ImageGalleryBase::setHeights (   $num)

Set how high each image will be, in pixels.

Parameters
string$numNumber. Unit other than 'px is invalid. Invalid numbers and those below 0 are ignored.

Definition at line 261 of file ImageGalleryBase.php.

◆ setHideBadImages()

ImageGalleryBase::setHideBadImages (   $flag = true)
Parameters
bool$flag

Definition at line 208 of file ImageGalleryBase.php.

◆ setParser()

ImageGalleryBase::setParser (   $parser)

Register a parser object.

If you do not set this and the output of this gallery ends up in parser cache, the javascript will break!

Note
This also triggers using the page's target language instead of the user language.
Parameters
Parser$parser

Definition at line 201 of file ImageGalleryBase.php.

◆ setPerRow()

ImageGalleryBase::setPerRow (   $num)

Set how many images will be displayed per row.

Parameters
int$numInteger >= 0; If perrow=0 the gallery layout will adapt to screensize invalid numbers will be rejected

Reimplemented in PackedImageGallery.

Definition at line 236 of file ImageGalleryBase.php.

◆ setShowBytes()

ImageGalleryBase::setShowBytes (   $f)

Enable/Disable showing of the file size of an image in the gallery.

Enabled by default.

Parameters
bool$fSet to false to disable

Definition at line 370 of file ImageGalleryBase.php.

◆ setShowDimensions()

ImageGalleryBase::setShowDimensions (   $f)

Enable/Disable showing of the dimensions of an image in the gallery.

Enabled by default.

Parameters
bool$fSet to false to disable

Definition at line 360 of file ImageGalleryBase.php.

◆ setShowFilename()

ImageGalleryBase::setShowFilename (   $f)

Enable/Disable showing of the filename of an image in the gallery.

Enabled by default.

Parameters
bool$fSet to false to disable

Definition at line 380 of file ImageGalleryBase.php.

◆ setWidths()

ImageGalleryBase::setWidths (   $num)

Set how wide each image will be, in pixels.

Parameters
string$numNumber. Unit other than 'px is invalid. Invalid numbers and those below 0 are ignored.

Definition at line 248 of file ImageGalleryBase.php.

◆ toHTML()

ImageGalleryBase::toHTML ( )
abstract

Display an html representation of the gallery.

Returns
string The html

Reimplemented in TraditionalImageGallery.

Member Data Documentation

◆ $contextTitle

Title null ImageGalleryBase::$contextTitle = null
protected

Contextual title, used when images are being screened against the bad image list.

Definition at line 97 of file ImageGalleryBase.php.

◆ $mAttribs

array ImageGalleryBase::$mAttribs = []
protected

Definition at line 100 of file ImageGalleryBase.php.

◆ $mCaption

string false ImageGalleryBase::$mCaption = false
protected

Gallery caption.

Default: false

Definition at line 72 of file ImageGalleryBase.php.

◆ $mCaptionLength

bool int ImageGalleryBase::$mCaptionLength = true
protected

Length to truncate filename to in caption when using "showfilename".

A value of 'true' will truncate the filename to one line using CSS and will be the behaviour after deprecation.

Definition at line 81 of file ImageGalleryBase.php.

Referenced by TraditionalImageGallery\getCaptionLength().

◆ $mHeights

int ImageGalleryBase::$mHeights
protected

◆ $mHideBadImages

bool ImageGalleryBase::$mHideBadImages
protected

Hide bad images?

Definition at line 86 of file ImageGalleryBase.php.

◆ $mImages

array [] ImageGalleryBase::$mImages
protected

Gallery images.

Definition at line 47 of file ImageGalleryBase.php.

◆ $mMode

string ImageGalleryBase::$mMode
protected

Gallery mode.

Default: traditional

Definition at line 67 of file ImageGalleryBase.php.

◆ $mParser

Parser false ImageGalleryBase::$mParser

Registered parser object for output callbacks.

Definition at line 91 of file ImageGalleryBase.php.

◆ $mPerRow

int ImageGalleryBase::$mPerRow
protected

Definition at line 103 of file ImageGalleryBase.php.

◆ $mShowBytes

bool ImageGalleryBase::$mShowBytes
protected

Whether to show the filesize in bytes in categories.

Definition at line 52 of file ImageGalleryBase.php.

◆ $mShowDimensions

bool ImageGalleryBase::$mShowDimensions
protected

Whether to show the dimensions in categories.

Definition at line 57 of file ImageGalleryBase.php.

◆ $mShowFilename

bool ImageGalleryBase::$mShowFilename
protected

Whether to show the filename.

Default: true

Definition at line 62 of file ImageGalleryBase.php.

◆ $mWidths

int ImageGalleryBase::$mWidths
protected

◆ LOADING_DEFAULT

const ImageGalleryBase::LOADING_DEFAULT = 1

Definition at line 40 of file ImageGalleryBase.php.

◆ LOADING_LAZY

const ImageGalleryBase::LOADING_LAZY = 2

Definition at line 41 of file ImageGalleryBase.php.

Referenced by TraditionalImageGallery\toHTML().


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