https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114204
Revision: 114204
Author: jeroendedauw
Date: 2012-03-19 22:25:17 +0000 (Mon, 19 Mar 2012)
Log Message:
-----------
caching of special:students, cas, oas
Modified Paths:
--------------
trunk/extensions/EducationProgram/includes/EPCA.php
trunk/extensions/EducationProgram/includes/EPOA.php
trunk/extensions/EducationProgram/includes/EPStudent.php
trunk/extensions/EducationProgram/specials/SpecialCAs.php
trunk/extensions/EducationProgram/specials/SpecialOAs.php
trunk/extensions/EducationProgram/specials/SpecialStudents.php
Modified: trunk/extensions/EducationProgram/includes/EPCA.php
===================================================================
--- trunk/extensions/EducationProgram/includes/EPCA.php 2012-03-19 22:24:16 UTC
(rev 114203)
+++ trunk/extensions/EducationProgram/includes/EPCA.php 2012-03-19 22:25:17 UTC
(rev 114204)
@@ -20,22 +20,23 @@
*
* @param IContextSource $context
* @param array $conditions
+ *
+ * @return string
*/
- public static function displayPager( IContextSource $context, array
$conditions = array() ) {
+ public static function getPager( IContextSource $context, array
$conditions = array() ) {
$pager = new EPCAPager( $context, $conditions );
if ( $pager->getNumRows() ) {
- $context->getOutput()->addHTML(
+ return
$pager->getFilterControl() .
- $pager->getNavigationBar() .
- $pager->getBody() .
- $pager->getNavigationBar() .
- $pager->getMultipleItemControl()
- );
+ $pager->getNavigationBar() .
+ $pager->getBody() .
+ $pager->getNavigationBar() .
+ $pager->getMultipleItemControl();
}
else {
- $context->getOutput()->addHTML(
$pager->getFilterControl( true ) );
- $context->getOutput()->addWikiMsg( 'ep-ca-noresults' );
+ return $pager->getFilterControl( true ) .
+ $context->msg( 'ep-ca-noresults' )->escaped();
}
}
Modified: trunk/extensions/EducationProgram/includes/EPOA.php
===================================================================
--- trunk/extensions/EducationProgram/includes/EPOA.php 2012-03-19 22:24:16 UTC
(rev 114203)
+++ trunk/extensions/EducationProgram/includes/EPOA.php 2012-03-19 22:25:17 UTC
(rev 114204)
@@ -20,22 +20,23 @@
*
* @param IContextSource $context
* @param array $conditions
+ *
+ * @return string
*/
- public static function displayPager( IContextSource $context, array
$conditions = array() ) {
+ public static function getPager( IContextSource $context, array
$conditions = array() ) {
$pager = new EPOAPager( $context, $conditions );
if ( $pager->getNumRows() ) {
- $context->getOutput()->addHTML(
+ return
$pager->getFilterControl() .
- $pager->getNavigationBar() .
- $pager->getBody() .
- $pager->getNavigationBar() .
- $pager->getMultipleItemControl()
- );
+ $pager->getNavigationBar() .
+ $pager->getBody() .
+ $pager->getNavigationBar() .
+ $pager->getMultipleItemControl();
}
else {
- $context->getOutput()->addHTML(
$pager->getFilterControl( true ) );
- $context->getOutput()->addWikiMsg( 'ep-oa-noresults' );
+ return $pager->getFilterControl( true ) .
+ $context->msg( 'ep-oa-noresults' )->escaped();
}
}
Modified: trunk/extensions/EducationProgram/includes/EPStudent.php
===================================================================
--- trunk/extensions/EducationProgram/includes/EPStudent.php 2012-03-19
22:24:16 UTC (rev 114203)
+++ trunk/extensions/EducationProgram/includes/EPStudent.php 2012-03-19
22:25:17 UTC (rev 114204)
@@ -20,22 +20,23 @@
*
* @param IContextSource $context
* @param array $conditions
+ *
+ * @return string
*/
- public static function displayPager( IContextSource $context, array
$conditions = array() ) {
+ public static function getPager( IContextSource $context, array
$conditions = array() ) {
$pager = new EPStudentPager( $context, $conditions );
if ( $pager->getNumRows() ) {
- $context->getOutput()->addHTML(
+ return
$pager->getFilterControl() .
- $pager->getNavigationBar() .
- $pager->getBody() .
- $pager->getNavigationBar() .
- $pager->getMultipleItemControl()
- );
+ $pager->getNavigationBar() .
+ $pager->getBody() .
+ $pager->getNavigationBar() .
+ $pager->getMultipleItemControl();
}
else {
- $context->getOutput()->addHTML(
$pager->getFilterControl( true ) );
- $context->getOutput()->addWikiMsg(
'ep-students-noresults' );
+ return $pager->getFilterControl( true ) .
+ $context->msg( 'ep-students-noresults'
)->escaped();
}
}
Modified: trunk/extensions/EducationProgram/specials/SpecialCAs.php
===================================================================
--- trunk/extensions/EducationProgram/specials/SpecialCAs.php 2012-03-19
22:24:16 UTC (rev 114203)
+++ trunk/extensions/EducationProgram/specials/SpecialCAs.php 2012-03-19
22:25:17 UTC (rev 114204)
@@ -34,7 +34,10 @@
if ( $this->subPage === '' ) {
$this->displayNavigation();
- EPCA::displayPager( $this->getContext() );
+
+ $this->startCache( 3600 );
+ $this->addCachedHTML( 'EPCA::getPager',
$this->getContext() );
+ $this->saveCache();
}
else {
$this->getOutput()->redirect( SpecialPage::getTitleFor(
'CampusAmbassador', $this->subPage )->getLocalURL() );
Modified: trunk/extensions/EducationProgram/specials/SpecialOAs.php
===================================================================
--- trunk/extensions/EducationProgram/specials/SpecialOAs.php 2012-03-19
22:24:16 UTC (rev 114203)
+++ trunk/extensions/EducationProgram/specials/SpecialOAs.php 2012-03-19
22:25:17 UTC (rev 114204)
@@ -34,7 +34,10 @@
if ( $this->subPage === '' ) {
$this->displayNavigation();
- EPOA::displayPager( $this->getContext() );
+
+ $this->startCache( 3600 );
+ $this->addCachedHTML( 'EPOA::getPager',
$this->getContext() );
+ $this->saveCache();
}
else {
$this->getOutput()->redirect( SpecialPage::getTitleFor(
'OnlineAmbassador', $this->subPage )->getLocalURL() );
Modified: trunk/extensions/EducationProgram/specials/SpecialStudents.php
===================================================================
--- trunk/extensions/EducationProgram/specials/SpecialStudents.php
2012-03-19 22:24:16 UTC (rev 114203)
+++ trunk/extensions/EducationProgram/specials/SpecialStudents.php
2012-03-19 22:25:17 UTC (rev 114204)
@@ -34,11 +34,22 @@
if ( $this->subPage === '' ) {
$this->displayNavigation();
- EPStudent::displayPager( $this->getContext() );
+
+ $this->startCache( 3600 );
+ $this->addCachedHTML( 'EPStudent::getPager',
$this->getContext() );
+ $this->saveCache();
}
else {
$this->getOutput()->redirect( SpecialPage::getTitleFor(
'Student', $this->subPage )->getLocalURL() );
}
}
+ /**
+ * @see SpecialCachedPage::getCacheKey
+ * @return array
+ */
+ protected function getCacheKey() {
+ return array_merge( $this->getRequest()->getValues(),
parent::getCacheKey() );
+ }
+
}
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs