本文整理汇总了PHP中Toolbar::attachControl方法的典型用法代码示例。如果您正苦于以下问题:PHP Toolbar::attachControl方法的具体用法?PHP Toolbar::attachControl怎么用?PHP Toolbar::attachControl使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Toolbar
的用法示例。
在下文中一共展示了Toolbar::attachControl方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: build
/**
* Build page list.
* The root node is returned.
*
* @return DOMNode
*/
public function build()
{
$pager = new Toolbar('pager');
if (!empty($_GET)) {
$this->setProperty('get_string', http_build_query($_GET));
}
if (!empty($this->properties)) {
foreach ($this->properties as $propName => $propValue) {
$pager->setProperty($propName, $propValue);
}
}
$pager->setProperty('from', translate('TXT_FROM'));
$pager->setProperty('to', translate('TXT_TO'));
//$pager->setProperty('total', translate('TXT_TOTAL'));
$pager->setProperty('records', $this->recordsCount);
$total = $this->numPages;
$current = $this->currentPage;
$visible = self::VISIBLE_PAGES_COUNT;
$startSeparator = $endSeparator = false;
for ($i = 1; $i <= $total; $i++) {
if ($i > $visible && $i < $current - $visible) {
if (!$startSeparator) {
$pager->attachControl(new Separator('sep_start'));
}
$startSeparator = true;
continue;
} elseif ($i > $current + $visible && $i <= $total - $visible) {
if (!$endSeparator) {
$pager->attachControl(new Separator('sep_end'));
}
$endSeparator = true;
continue;
} else {
$control = new Link("page" . $i, $i, $i);
if ($i == $current) {
$control->disable();
}
$pager->attachControl($control);
}
}
return $pager->build();
}