X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2FImageGallery.php;h=d391ead60e3edf115f9bb854765074ebb371b8c4;hb=ea8032b078c18bd9fa93899513acfde3e4731116;hp=86bf786d33a1cba20cbca97bd0378ac27b04bf46;hpb=83a6f40953254b035702edcd70625055389010c1;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/ImageGallery.php b/includes/ImageGallery.php index 86bf786d33..d391ead60e 100644 --- a/includes/ImageGallery.php +++ b/includes/ImageGallery.php @@ -1,8 +1,23 @@ mImages = array(); - $this->mShowBytes = true; + $this->mShowBytes = $wgGalleryOptions['showBytes']; $this->mShowFilename = true; - $this->mParsing = false; + $this->mParser = false; + $this->mHideBadImages = false; + $this->mPerRow = $wgGalleryOptions['imagesPerRow']; + $this->mWidths = $wgGalleryOptions['imageWidth']; + $this->mHeights = $wgGalleryOptions['imageHeight']; + $this->mCaptionLength = $wgGalleryOptions['captionLength']; } /** - * Set the "parse" bit so we know to hide "bad" images + * Register a parser object + * + * @param $parser Parser */ - function setParsing( $val = true ) { - $this->mParsing = $val; + function setParser( $parser ) { + $this->mParser = $parser; + } + + /** + * Set bad image flag + */ + function setHideBadImages( $flag = true ) { + $this->mHideBadImages = $flag; } /** * Set the caption (as plain text) * - * @param $caption Caption + * @param $caption string Caption */ function setCaption( $caption ) { $this->mCaption = htmlspecialchars( $caption ); @@ -60,7 +102,7 @@ class ImageGallery /** * Set the caption (as HTML) * - * @param $caption Caption + * @param $caption String: Caption */ public function setCaptionHtml( $caption ) { $this->mCaption = $caption; @@ -69,10 +111,11 @@ class ImageGallery /** * Set how many images will be displayed per row. * - * @param int $num > 0; invalid numbers will be rejected + * @param $num Integer >= 0; If perrow=0 the gallery layout will adapt to screensize + * invalid numbers will be rejected */ public function setPerRow( $num ) { - if ($num > 0) { + if ( $num >= 0 ) { $this->mPerRow = (int)$num; } } @@ -80,10 +123,10 @@ class ImageGallery /** * Set how wide each image will be, in pixels. * - * @param int $num > 0; invalid numbers will be ignored + * @param $num Integer > 0; invalid numbers will be ignored */ public function setWidths( $num ) { - if ($num > 0) { + if ( $num > 0 ) { $this->mWidths = (int)$num; } } @@ -91,10 +134,10 @@ class ImageGallery /** * Set how high each image will be, in pixels. * - * @param int $num > 0; invalid numbers will be ignored + * @param $num Integer > 0; invalid numbers will be ignored */ public function setHeights( $num ) { - if ($num > 0) { + if ( $num > 0 ) { $this->mHeights = (int)$num; } } @@ -103,50 +146,48 @@ class ImageGallery * Instruct the class to use a specific skin for rendering * * @param $skin Skin object + * @deprecated since 1.18 Not used anymore */ function useSkin( $skin ) { - $this->mSkin = $skin; + wfDeprecated( __METHOD__, '1.18' ); + /* no op */ } /** - * Return the skin that should be used + * Add an image to the gallery. * - * @return Skin object + * @param $title Title object of the image that is added to the gallery + * @param $html String: Additional HTML text to be shown. The name and size of the image are always shown. + * @param $alt String: Alt text for the image + * @param $link String: Override image link (optional) */ - function getSkin() { - if( !$this->mSkin ) { - global $wgUser; - $skin = $wgUser->getSkin(); - } else { - $skin = $this->mSkin; + function add( $title, $html = '', $alt = '', $link = '') { + if ( $title instanceof File ) { + // Old calling convention + $title = $title->getTitle(); } - return $skin; + $this->mImages[] = array( $title, $html, $alt, $link ); + wfDebug( 'ImageGallery::add ' . $title->getText() . "\n" ); } /** - * Add an image to the gallery. + * Add an image at the beginning of the gallery. * - * @param $image Image object that is added to the gallery - * @param $html String: additional HTML text to be shown. The name and size of the image are always shown. + * @param $title Title object of the image that is added to the gallery + * @param $html String: Additional HTML text to be shown. The name and size of the image are always shown. + * @param $alt String: Alt text for the image */ - function add( $image, $html='' ) { - $this->mImages[] = array( &$image, $html ); - wfDebug( "ImageGallery::add " . $image->getName() . "\n" ); - } - - /** - * Add an image at the beginning of the gallery. - * - * @param $image Image object that is added to the gallery - * @param $html String: Additional HTML text to be shown. The name and size of the image are always shown. - */ - function insert( $image, $html='' ) { - array_unshift( $this->mImages, array( &$image, $html ) ); + function insert( $title, $html = '', $alt = '' ) { + if ( $title instanceof File ) { + // Old calling convention + $title = $title->getTitle(); + } + array_unshift( $this->mImages, array( &$title, $html, $alt ) ); } - /** * isEmpty() returns true if the gallery contains no images + * @return bool */ function isEmpty() { return empty( $this->mImages ); @@ -159,7 +200,7 @@ class ImageGallery * @param $f Boolean: set to false to disable. */ function setShowBytes( $f ) { - $this->mShowBytes = ( $f == true); + $this->mShowBytes = (bool)$f; } /** @@ -169,7 +210,20 @@ class ImageGallery * @param $f Boolean: set to false to disable. */ function setShowFilename( $f ) { - $this->mShowFilename = ( $f == true); + $this->mShowFilename = (bool)$f; + } + + /** + * Set arbitrary attributes to go on the HTML gallery output element. + * Should be suitable for a "; - return $s; + return $output; } /** - * @return int Number of images in the gallery + * @return Integer: number of images in the gallery */ public function count() { return count( $this->mImages ); } - + /** * Set the contextual title * - * @param Title $title Contextual title + * @param $title Title: contextual title */ public function setContextTitle( $title ) { $this->contextTitle = $title; } - + /** * Get the contextual title, if applicable * @@ -285,9 +399,8 @@ class ImageGallery */ public function getContextTitle() { return is_object( $this->contextTitle ) && $this->contextTitle instanceof Title - ? $this->contextTitle - : false; + ? $this->contextTitle + : false; } } //class -?>