Elgg  Version 1.10
list.php
Go to the documentation of this file.
1 <?php
20 $items = $vars['items'];
21 $offset = elgg_extract('offset', $vars);
24 $base_url = elgg_extract('base_url', $vars, '');
25 $pagination = elgg_extract('pagination', $vars, true);
26 $offset_key = elgg_extract('offset_key', $vars, 'offset');
27 $position = elgg_extract('position', $vars, 'after');
28 $no_results = elgg_extract('no_results', $vars, '');
29 
30 if (!$items && $no_results) {
31  if ($no_results instanceof Closure) {
32  echo $no_results();
33  return;
34  }
35  echo "<p>$no_results</p>";
36  return;
37 }
38 
39 if (!is_array($items) || count($items) == 0) {
40  return;
41 }
42 
43 $list_class = 'elgg-list';
44 if (isset($vars['list_class'])) {
45  $list_class = "$list_class {$vars['list_class']}";
46 }
47 
48 $item_class = 'elgg-item';
49 if (isset($vars['item_class'])) {
50  $item_class = "$item_class {$vars['item_class']}";
51 }
52 
53 $html = "";
54 $nav = "";
55 
56 if ($pagination && $count) {
57  $nav .= elgg_view('navigation/pagination', array(
58  'base_url' => $base_url,
59  'offset' => $offset,
60  'count' => $count,
61  'limit' => $limit,
62  'offset_key' => $offset_key,
63  ));
64 }
65 
66 $html .= "<ul class=\"$list_class\">";
67 foreach ($items as $item) {
68  $li = elgg_view_list_item($item, $vars);
69  if ($li) {
70  $item_classes = array($item_class);
71 
72  if (elgg_instanceof($item)) {
73  $id = "elgg-{$item->getType()}-{$item->getGUID()}";
74 
75  $item_classes[] = "elgg-item-" . $item->getType();
76  $subtype = $item->getSubType();
77  if ($subtype) {
78  $item_classes[] = "elgg-item-" . $item->getType() . "-" . $subtype;
79  }
80  } else {
81  $id = "item-{$item->getType()}-{$item->id}";
82  }
83 
84  $item_classes = implode(" ", $item_classes);
85 
86  $html .= "<li id=\"$id\" class=\"$item_classes\">$li</li>";
87  }
88 }
89 $html .= '</ul>';
90 
91 if ($position == 'before' || $position == 'both') {
92  $html = $nav . $html;
93 }
94 
95 if ($position == 'after' || $position == 'both') {
96  $html .= $nav;
97 }
98 
99 echo $html;
$no_results
Definition: list.php:28
$position
Definition: list.php:27
if(!$items &&$no_results) if(!is_array($items)||count($items)==0) $list_class
Definition: list.php:43
$count
Definition: list.php:23
elgg_extract($key, array $array, $default=null, $strict=true)
Checks for $array[$key] and returns its value if it exists, else returns $default.
Definition: elgglib.php:1349
elgg_view_list_item($item, array $vars=array())
View an item in a list.
Definition: views.php:1347
elgg_instanceof($entity, $type=null, $subtype=null, $class=null)
Checks if $entity is an and optionally for type and subtype.
Definition: entities.php:921
$nav
Definition: list.php:54
$item
Definition: item.php:12
elgg echo
Translates a string.
Definition: languages.js:43
$limit
Definition: list.php:22
elgg_view($view, $vars=array(), $bypass=false, $ignored=false, $viewtype= '')
Return a parsed view.
Definition: views.php:354
$items
Definition: list.php:11
$pagination
Definition: list.php:25
$offset_key
Definition: list.php:26
if(isset($vars['item_class'])) $html
Definition: list.php:53
if(isset($vars['list_class'])) $item_class
Definition: list.php:48
$subtype
Definition: river.php:12
if(!$collection_name) $id
Definition: add.php:17
$base_url
Definition: list.php:24
$offset
Definition: list.php:21
if(file_exists($welcome)) $vars
Definition: upgrade.php:93