/** * Returns the table itself. * @return \string HTML */ function getTable() { $table = $this->table; $this->addWorkflowStatesColumn(); $out = ''; if ( $this->purge ) { MessageGroupStats::clearLanguage( $this->target ); } MessageGroupStats::setTimeLimit( $this->timelimit ); $cache = MessageGroupStats::forLanguage( $this->target ); $structure = MessageGroups::getGroupStructure(); foreach ( $structure as $item ) { $out .= $this->makeGroupGroup( $item, $cache ); } if ( $out ) { $table->setMainColumnHeader( wfMessage( 'translate-ls-column-group' ) ); $out = $table->createHeader() . "\n" . $out; $out .= Html::closeElement( 'tbody' ); $out .= Html::openElement( 'tfoot' ); $out .= $table->makeTotalRow( wfMessage( 'translate-languagestats-overall' ), $this->totals ); $out .= Html::closeElement( 'tfoot' ); $out .= Html::closeElement( 'table' ); return $out; } else { $this->nothing = true; return ''; } /// @todo: Allow extra message here, once total translated volume goes /// over a certain percentage? (former live hack at translatewiki) /// if ( $this->totals['2'] && ( $this->totals['1'] / $this->totals['2'] ) > 0.95 ) { /// $out .= wfMessage( 'translate-somekey' ); /// } }
protected function getData() { $params = $this->extractRequestParams(); return MessageGroupStats::forLanguage($params['language']); }