Page MenuHomePhabricator

final class PHUIPagerView
Phabricator Technical Documentation (PHUI)

This class is not documented.

Tasks

Managing Children

  • protected function canAppendChild() — Test if this View accepts children.
  • final public function hasChildren() — Test if an element has no children.
  • private function reduceChildren($children) — Reduce effectively-empty lists of children to be actually empty. This recursively removes `null`, `''`, and `array()` from the list of children so that @{method:hasChildren} can more effectively align with expectations.

Other Methods

config

  • public function setUser($user) — Deprecated, use @{method:setViewer}.
  • protected function getUser() — Deprecated, use @{method:getViewer}.

1

  • final protected function renderChildren() — Produce children for rendering.

Methods

public function setViewer($viewer)
Inherited

AphrontView

Set the user viewing this element.

Parameters
PhabricatorUser$viewerViewing user.
Return
this

public function getViewer()
Inherited

AphrontView

Get the user viewing this element.

Throws an exception if no viewer has been set.

Return
PhabricatorUserViewing user.

public function hasViewer()
Inherited

AphrontView

Test if a viewer has been set on this element.

Return
boolTrue if a viewer is available.

public function setUser($user)
Inherited

AphrontView

Deprecated, use setViewer().

Parameters
PhabricatorUser$user
Return
wild

protected function getUser()
Inherited

AphrontView

Deprecated, use getViewer().

Return
wild

protected function canAppendChild()
Inherited

AphrontView

Test if this View accepts children.

By default, views accept children, but subclases may override this method to prevent children from being appended. Doing so will cause appendChild() to throw exceptions instead of appending children.

Return
boolTrue if the View should accept children.

final public function appendChild($child)
Inherited

AphrontView

Append a child to the list of children.

This method will only work if the view supports children, which is determined by canAppendChild().

Parameters
wild$childSomething renderable.
Return
this

final protected function renderChildren()
Inherited

AphrontView

Produce children for rendering.

Historically, this method reduced children to a string representation, but it no longer does.

Return
wildRenderable children.

final public function hasChildren()
Inherited

AphrontView

Test if an element has no children.

Return
boolTrue if this element has children.

private function reduceChildren($children)
Inherited

AphrontView

Reduce effectively-empty lists of children to be actually empty. This recursively removes null, '', and array() from the list of children so that hasChildren() can more effectively align with expectations.

NOTE: Because View children are not rendered, a View which renders down to nothing will not be reduced by this method.
Parameters
list<wild>$childrenRenderable children.
Return
list<wild>Reduced list of children.

public function getDefaultResourceSource()
Inherited

This method is not documented.
Return
wild

public function requireResource($symbol)
Inherited

This method is not documented.
Parameters
$symbol
Return
wild

public function initBehavior($name, $config)
Inherited

This method is not documented.
Parameters
$name
$config
Return
wild

public function willRender()
Inherited

AphrontView

Inconsistent, unreliable pre-rendering hook.

This hook may fire before views render. It is not fired reliably, and may fire multiple times.

If it does fire, views might use it to register data for later loads, but almost no datasources support this now; this is currently only useful for tokenizers. This mechanism might eventually see wider support or might be removed.

Return
wild

public function render()

This method is not documented.
Return
wild

public function producePhutilSafeHTML()
Inherited

This method is not documented.
Return
wild

public function setPageSize($page_size)

This method is not documented.
Parameters
$page_size
Return
wild

public function setOffset($offset)

This method is not documented.
Parameters
$offset
Return
wild

public function getOffset()

This method is not documented.
Return
wild

public function getPageSize()

This method is not documented.
Return
wild

public function setCount($count)

This method is not documented.
Parameters
$count
Return
wild

public function setHasMorePages($has_more)

This method is not documented.
Parameters
$has_more
Return
wild

public function setURI($uri, $paging_parameter)

This method is not documented.
Parameters
PhutilURI$uri
$paging_parameter
Return
wild

public function readFromRequest($request)

This method is not documented.
Parameters
AphrontRequest$request
Return
wild

public function willShowPagingControls()

This method is not documented.
Return
wild

public function getHasMorePages()

This method is not documented.
Return
wild

public function setSurroundingPages($pages)

This method is not documented.
Parameters
$pages
Return
wild

private function computeCount()

This method is not documented.
Return
wild

private function isExactCountKnown()

This method is not documented.
Return
wild

public function sliceResults($results)

A common paging strategy is to select one extra record and use that to indicate that there's an additional page (this doesn't give you a complete page count but is often faster than counting the total number of items). This method will take a result array, slice it down to the page size if necessary, and call setHasMorePages() if there are more than one page of results.

$results = queryfx_all(
  $conn,
  'SELECT ... LIMIT %d, %d',
  $pager->getOffset(),
  $pager->getPageSize() + 1);
$results = $pager->sliceResults($results);
Parameters
list$resultsResult array.
Return
listOne page of results.

public function setEnableKeyboardShortcuts($enable)

This method is not documented.
Parameters
$enable
Return
wild

private function getDisplayIndex($page_index)

This method is not documented.
Parameters
$page_index
Return
wild