API bug 10046: incorrect action produces invalid response format
[lhc/web/wiklou.git] / includes / OutputPage.php
index 397d521..ef1e272 100644 (file)
@@ -796,13 +796,13 @@ class OutputPage {
        }
 
        /**
-        * Outputs a pretty page to explain why the request exploded.
+        * Output a standard error page
         *
-        * @param string $title Message key for page title.
-        * @param string $msg   Message key for page text.
-        * @return nothing
+        * @param string $title Message key for page title
+        * @param string $msg Message key for page text
+        * @param array $params Message parameters
         */
-       public function showErrorPage( $title, $msg ) {
+       public function showErrorPage( $title, $msg, $params = array() ) {
                global $wgTitle;
 
                $this->mDebugtext .= 'Original title: ' .
@@ -813,9 +813,12 @@ class OutputPage {
                $this->setArticleRelated( false );
                $this->enableClientCache( false );
                $this->mRedirect = '';
-
                $this->mBodytext = '';
-               $this->addWikiText( wfMsg( $msg ) );
+               
+               array_unshift( $params, $msg );
+               $message = call_user_func_array( 'wfMsg', $params );
+               $this->addWikiText( $message );
+               
                $this->returnToMain( false );
        }
 
@@ -1243,11 +1246,16 @@ class OutputPage {
         * @param int $lag Slave lag
         */
        public function showLagWarning( $lag ) {
-               $message = $lag >= 30 ? 'lag-warn-high' : 'lag-warn-normal';
+               global $wgSlaveLagWarning, $wgSlaveLagCritical;
+               
+               if ($lag < $wgSlaveLagWarning)
+                       return;
+
+               $message = ($lag >= $wgSlaveLagCritical) ? 'lag-warn-high' : 'lag-warn-normal';
                $warning = wfMsgHtml( $message, htmlspecialchars( $lag ) );
                $this->addHtml( "<div class=\"mw-{$message}\">\n{$warning}\n</div>\n" );
        }
        
 }
 
-?>
\ No newline at end of file
+?>