MediaWiki  master
ViewAction.php
Go to the documentation of this file.
1 <?php
28 class ViewAction extends FormlessAction {
29 
30  public function getName() {
31  return 'view';
32  }
33 
34  public function onView() {
35  return null;
36  }
37 
38  public function show() {
39  $config = $this->context->getConfig();
40 
41  if (
42  $config->get( 'DebugToolbar' ) == false && // don't let this get stuck on pages
43  $this->page->checkTouched() // page exists and is not a redirect
44  ) {
45  // Include any redirect in the last-modified calculation
46  $redirFromTitle = $this->page->getRedirectedFrom();
47  if ( !$redirFromTitle ) {
48  $touched = $this->page->getTouched();
49  } elseif ( $config->get( 'MaxRedirects' ) <= 1 ) {
50  $touched = max( $this->page->getTouched(), $redirFromTitle->getTouched() );
51  } else {
52  // Don't bother following the chain and getting the max mtime
53  $touched = null;
54  }
55 
56  // Send HTTP 304 if the IMS matches or otherwise set expiry/last-modified headers
57  if ( $touched && $this->getOutput()->checkLastModified( $touched ) ) {
58  wfDebug( __METHOD__ . ": done 304\n" );
59  return;
60  }
61  }
62 
63  $this->page->view();
64  }
65 }
getOutput()
Get the OutputPage being used for this instance.
Definition: Action.php:208
An action that views article content.
Definition: ViewAction.php:28
wfDebug( $text, $dest='all', array $context=[])
Sends a line to the debug log if enabled or, optionally, to a comment in output.
An action which just does something, without showing a form first.