) {
$this->title = $title;
$this->setContext( $context );
+ $this->getOutput()->addModuleStyles( array(
+ 'mediawiki.action.view.categoryPage.styles'
+ ) );
$this->from = $from;
$this->until = $until;
$this->limit = $context->getConfig()->get( 'CategoryPagingLimit' );
* TODO: Take the headers into account when creating columns, so they're
* more visually equal.
*
- * More distant TODO: Scrap this and use CSS columns, whenever IE finally
- * supports those.
- *
* @param array $articles
* @param string[] $articles_start_char
* @return string
# Split into three columns
$columns = array_chunk( $columns, ceil( count( $columns ) / 3 ), true /* preserve keys */ );
- $ret = '<table style="width: 100%;"><tr style="vertical-align: top;">';
+ $ret = Html::openElement( 'div', array( 'class' => 'mw-category' ) );
$prevchar = null;
foreach ( $columns as $column ) {
- $ret .= '<td style="width: 33.3%;">';
$colContents = array();
# Kind of like array_flip() here, but we keep duplicates in an
# Change space to non-breaking space to keep headers aligned
$h3char = $char === ' ' ? ' ' : htmlspecialchars( $char );
- $ret .= '<h3>' . $h3char;
+ $ret .= Html::openElement( 'h3' ) . $h3char;
if ( $first && $char === $prevchar ) {
# We're continuing a previous chunk at the top of a new
# column, so add " cont." after the letter.
$ret .= ' ' . wfMessage( 'listingcontinuesabbrev' )->escaped();
}
- $ret .= "</h3>\n";
+ $ret .= Html::closeElement( 'h3' )."\n";
- $ret .= '<ul><li>';
- $ret .= implode( "</li>\n<li>", $articles );
- $ret .= '</li></ul>';
+ $ret .= Html::openElement('ul').Html::openElement('li');
+ $ret .= implode( Html::element( 'li' ), $articles );
+ $ret .= Html::closeElement('ul').Html::closeElement('li');
$first = false;
$prevchar = $char;
}
- $ret .= "</td>\n";
+ $ret .= "\n";
}
- $ret .= '</tr></table>';
+ $ret .= Html::closeElement( 'div' );
return $ret;
}
'metadata-collapse',
),
),
+ 'mediawiki.action.view.categoryPage.styles' => array(
+ 'styles' => 'resources/src/mediawiki.action/mediawiki.action.view.categoryPage.less',
+ 'targets' => array( 'desktop', 'mobile' )
+ ),
'mediawiki.action.view.postEdit' => array(
'templates' => array(
'postEdit.html' => 'resources/src/mediawiki.action/templates/postEdit.html',
-webkit-box-shadow: @value; // Safari 3.1-5.0, iOS 3.2-4.3, Android 2.1-3.0
box-shadow: @value; // Chrome 10+, Firefox 4+, IE 9+, Safari 5.1+, Opera 11+, iOS 5+, Android 4+
}
+
+.column-count(@value) {
+ -webkit-column-count: @value;
+ -moz-column-count: @value;
+ -o-column-count: @value;
+ column-count: @value;
+}
\ No newline at end of file