|
2 | 2 |
|
3 | 3 | require_once 'includes/common.inc.php';
|
4 | 4 |
|
5 |
| -$count_elements_page = isset($config['count_elements_page']) ? $config['count_elements_page'] : false; |
6 |
| -$page_num_request = isset($_GET['page']) ? (int)$_GET['page'] : 1; |
7 |
| -$page_num_request = $page_num_request === 0 ? 1 : $page_num_request; |
8 |
| - |
9 | 5 | $page['css'][] = 'frame';
|
10 | 6 | $page['js'][] = 'frame';
|
11 | 7 |
|
|
27 | 23 | $type = $redis->type($_GET['key']);
|
28 | 24 | $exists = $redis->exists($_GET['key']);
|
29 | 25 |
|
| 26 | +$count_elements_page = isset($config['count_elements_page']) ? $config['count_elements_page'] : false; |
| 27 | +$page_num_request = isset($_GET['page']) ? (int)$_GET['page'] : 1; |
| 28 | +$page_num_request = $page_num_request === 0 ? 1 : $page_num_request; |
| 29 | + |
| 30 | + |
30 | 31 |
|
31 | 32 | ?>
|
32 | 33 | <h2><?php echo format_html($_GET['key'])?>
|
|
68 | 69 | case 'hash':
|
69 | 70 | $values = $redis->hGetAll($_GET['key']);
|
70 | 71 | $size = count($values);
|
71 |
| - if($count_elements_page !== false) { |
72 |
| - $values = array_slice($values, $count_elements_page*($page_num_request-1), $count_elements_page); |
73 |
| - } |
74 | 72 | break;
|
75 | 73 |
|
76 | 74 | case 'list':
|
|
80 | 78 | case 'set':
|
81 | 79 | $values = $redis->sMembers($_GET['key']);
|
82 | 80 | $size = count($values);
|
83 |
| - if($count_elements_page !== false) { |
84 |
| - $values = array_slice($values, $count_elements_page*($page_num_request-1), $count_elements_page); |
85 |
| - } |
86 | 81 | break;
|
87 | 82 |
|
88 | 83 | case 'zset':
|
89 | 84 | $values = $redis->zRange($_GET['key'], 0, -1);
|
90 | 85 | $size = count($values);
|
91 |
| - if($count_elements_page !== false) { |
92 |
| - $values = array_slice($values, $count_elements_page*($page_num_request-1), $count_elements_page); |
93 |
| - } |
94 | 86 | break;
|
95 | 87 | }
|
96 |
| - |
| 88 | + |
| 89 | +if (isset($values) && ($count_elements_page !== false)) { |
| 90 | + $values = array_slice($values, $count_elements_page * ($page_num_request - 1), $count_elements_page); |
| 91 | +} |
97 | 92 |
|
98 | 93 | ?>
|
99 | 94 | <table>
|
|
113 | 108 | <p>
|
114 | 109 | <?php
|
115 | 110 |
|
116 |
| -$pagging = ''; |
117 |
| -// make pagging div |
118 |
| -if($count_elements_page !== false && in_array($type, array('hash', 'set', 'zset')) && $size > $count_elements_page) { |
119 |
| - $pagging .= '<div style="width: inherit; word-wrap: break-word;">'; |
120 |
| - $url = preg_replace('/&page=(\d+)/i', '', $_SERVER['REQUEST_URI']); |
121 |
| - for ($i = 0; $i < ceil($size/$count_elements_page); ++$i) { |
122 |
| - $page_num = $i+1; |
123 |
| - if($page_num === $page_num_request) { |
124 |
| - $pagging .= $page_num.' '; |
125 |
| - } |
126 |
| - else { |
127 |
| - $pagging .= '<a href="'.$url.'&page='.$page_num.'">'.$page_num."</a> "; |
| 111 | + |
| 112 | +// Build pagination div. |
| 113 | +if (($count_elements_page !== false) && in_array($type, array('hash', 'list', 'set', 'zset')) && ($size > $count_elements_page)) { |
| 114 | + $pagination = '<div style="width: inherit; word-wrap: break-word;">'; |
| 115 | + $url = preg_replace('/&page=(\d+)/i', '', $_SERVER['REQUEST_URI']); |
| 116 | + |
| 117 | + for ($i = 0; $i < ceil($size / $count_elements_page); ++$i) { |
| 118 | + $page_num = $i + 1; |
| 119 | + |
| 120 | + if ($page_num === $page_num_request) { |
| 121 | + $pagination .= $page_num . ' '; |
| 122 | + } else { |
| 123 | + $pagination .= '<a href="' . $url . '&page=' . $page_num . '">' . $page_num . "</a> "; |
128 | 124 | }
|
129 | 125 | }
|
130 |
| - $pagging .= '</div>'; |
| 126 | + |
| 127 | + $pagination .= '</div>'; |
131 | 128 | }
|
132 | 129 |
|
133 |
| -if(!empty($pagging)) { |
134 |
| - echo $pagging; |
| 130 | + |
| 131 | +if (isset($pagination)) { |
| 132 | + echo $pagination; |
135 | 133 | }
|
136 | 134 |
|
| 135 | + |
137 | 136 | // String
|
138 | 137 | if ($type == 'string') { ?>
|
139 | 138 |
|
|
172 | 171 | <table>
|
173 | 172 | <tr><th><div>Index</div></th><th><div>Value</div></th><th><div> </div></th><th><div> </div></th></tr>
|
174 | 173 |
|
175 |
| -<?php for ($i = 0; $i < $size; ++$i) { |
176 |
| - $value = $redis->lIndex($_GET['key'], $i); |
| 174 | +<?php |
| 175 | + if (($count_elements_page === false) && ($size > $count_elements_page)) { |
| 176 | + $start = 0; |
| 177 | + $end = $size; |
| 178 | + } else { |
| 179 | + $start = $count_elements_page * ($page_num_request - 1); |
| 180 | + $end = min($start + $count_elements_page, $size); |
| 181 | + } |
| 182 | + |
| 183 | + for ($i = $start; $i < $end; ++$i) { |
| 184 | + $value = $redis->lIndex($_GET['key'], $i); |
177 | 185 | ?>
|
178 | 186 | <tr <?php echo $alt ? 'class="alt"' : ''?>><td><div><?php echo $i?></div></td><td><div><?php echo nl2br(format_html($value))?></div></td><td><div>
|
179 | 187 | <a href="edit.php?s=<?php echo $server['id']?>&type=list&key=<?php echo urlencode($_GET['key'])?>&index=<?php echo $i?>"><img src="images/edit.png" width="16" height="16" title="Edit" alt="[E]"></a>
|
|
233 | 241 | </p>
|
234 | 242 | <?php }
|
235 | 243 |
|
236 |
| -if(!empty($pagging)) { |
237 |
| - echo $pagging; |
| 244 | +if (isset($pagination)) { |
| 245 | + echo $pagination; |
238 | 246 | }
|
239 | 247 |
|
240 | 248 | require 'includes/footer.inc.php';
|
|
0 commit comments