New upstream version 0.6.27

This commit is contained in:
geos_one
2025-08-06 18:11:51 +02:00
parent a6b4158f1f
commit 56a986c0ba
563 changed files with 45811 additions and 35282 deletions

View File

@@ -1,36 +1,36 @@
<?php defined('SYSPATH') OR die('No direct access allowed.'); ?>
<?php defined('SYSPATH') or die('No direct access allowed.'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo html::specialchars($title) ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo html::specialchars($title) ?></title>
<style type="text/css">
html { background: #83c018 url(<?php echo url::base(FALSE) ?>kohana.png) 50% 0 no-repeat; }
body { width: 52em; margin: 200px auto 2em; font-size: 76%; font-family: Arial, sans-serif; color: #273907; line-height: 1.5; text-align: center; }
h1 { font-size: 3em; font-weight: normal; text-transform: uppercase; color: #fff; }
a { color: inherit; }
code { font-size: 1.3em; }
ul { list-style: none; padding: 2em 0; }
ul li { display: inline; padding-right: 1em; text-transform: uppercase; }
ul li a { padding: 0.5em 1em; background: #69ad0f; border: 1px solid #569f09; color: #fff; text-decoration: none; }
ul li a:hover { background: #569f09; }
.box { padding: 2em; background: #98cc2b; border: 1px solid #569f09; }
.copyright { font-size: 0.9em; text-transform: uppercase; color: #557d10; }
</style>
<style type="text/css">
html { background: #83c018 url(<?php echo url::base(false) ?>kohana.png) 50% 0 no-repeat; }
body { width: 52em; margin: 200px auto 2em; font-size: 76%; font-family: Arial, sans-serif; color: #273907; line-height: 1.5; text-align: center; }
h1 { font-size: 3em; font-weight: normal; text-transform: uppercase; color: #fff; }
a { color: inherit; }
code { font-size: 1.3em; }
ul { list-style: none; padding: 2em 0; }
ul li { display: inline; padding-right: 1em; text-transform: uppercase; }
ul li a { padding: 0.5em 1em; background: #69ad0f; border: 1px solid #569f09; color: #fff; text-decoration: none; }
ul li a:hover { background: #569f09; }
.box { padding: 2em; background: #98cc2b; border: 1px solid #569f09; }
.copyright { font-size: 0.9em; text-transform: uppercase; color: #557d10; }
</style>
</head>
<body>
<h1><?php echo html::specialchars($title) ?></h1>
<?php echo $content ?>
<h1><?php echo html::specialchars($title) ?></h1>
<?php echo $content ?>
<p class="copyright">
Rendered in {execution_time} seconds, using {memory_usage} of memory<br />
Copyright ©20072008 Kohana Team
</p>
<p class="copyright">
Rendered in {execution_time} seconds, using {memory_usage} of memory<br />
Copyright ©20072008 Kohana Team
</p>
</body>
</html>

View File

@@ -1,4 +1,4 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php defined('SYSPATH') or die('No direct access allowed.');
// Get the day names
$days = Calendar::days(2);
@@ -12,8 +12,8 @@ $qs = $_GET;
unset($qs['day']);
// Previous and next month query URIs
$prev = Router::$current_uri.'?'.http_build_query(array_merge($qs, array('month' => date('n', $prev), 'year' => date('Y', $prev))));
$next = Router::$current_uri.'?'.http_build_query(array_merge($qs, array('month' => date('n', $next), 'year' => date('Y', $next))));
$prev = Router::$current_uri . '?' . http_build_query(array_merge($qs, array('month' => date('n', $prev), 'year' => date('Y', $prev))));
$next = Router::$current_uri . '?' . http_build_query(array_merge($qs, array('month' => date('n', $next), 'year' => date('Y', $next))));
?>
<table class="calendar">
@@ -23,30 +23,26 @@ $next = Router::$current_uri.'?'.http_build_query(array_merge($qs, array('month'
<td class="next"><?php echo html::anchor($next, '&raquo;') ?></td>
</tr>
<tr>
<?php foreach ($days as $day): ?>
<?php foreach ($days as $day) : ?>
<th><?php echo $day ?></th>
<?php endforeach ?>
</tr>
<?php foreach ($weeks as $week): ?>
<?php foreach ($weeks as $week) : ?>
<tr>
<?php foreach ($week as $day):
<?php foreach ($week as $day) :
list ($number, $current, $data) = $day;
list ($number, $current, $data) = $day;
if (is_array($data)) {
$classes = $data['classes'];
$output = empty($data['output']) ? '' : '<ul class="output"><li>' . implode('</li><li>', $data['output']) . '</li></ul>';
} else {
$classes = array();
$output = '';
}
if (is_array($data))
{
$classes = $data['classes'];
$output = empty($data['output']) ? '' : '<ul class="output"><li>'.implode('</li><li>', $data['output']).'</li></ul>';
}
else
{
$classes = array();
$output = '';
}
?>
?>
<td class="<?php echo implode(' ', $classes) ?>"><span class="day"><?php echo $day[0] ?></span><?php echo $output ?></td>
<?php endforeach ?>
<?php endforeach ?>
</tr>
<?php endforeach ?>
</table>

View File

@@ -1,9 +1,9 @@
<?php defined('SYSPATH') OR die('No direct access allowed.'); ?>
<?php defined('SYSPATH') or die('No direct access allowed.'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<style type="text/css">
<?php include Kohana::find_file('views', 'kohana_errors', FALSE, 'css') ?>
<?php include Kohana::find_file('views', 'kohana_errors', false, 'css') ?>
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo $error ?></title>

View File

@@ -1,9 +1,9 @@
<?php defined('SYSPATH') OR die('No direct access allowed.'); ?>
<?php defined('SYSPATH') or die('No direct access allowed.'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<style type="text/css">
<?php include Kohana::find_file('views', 'kohana_errors', FALSE, 'css') ?>
<?php include Kohana::find_file('views', 'kohana_errors', false, 'css') ?>
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo $error ?></title>
@@ -13,13 +13,13 @@
<div id="framework_error" style="width:42em;margin:20px auto;">
<h3><?php echo html::specialchars($error) ?></h3>
<p><?php echo html::specialchars($description) ?></p>
<?php if ( ! empty($line) AND ! empty($file)): ?>
<?php if (! empty($line) and ! empty($file)) : ?>
<p><?php echo Kohana::lang('core.error_file_line', $file, $line) ?></p>
<?php endif ?>
<p><code class="block"><?php echo $message ?></code></p>
<?php if ( ! empty($trace)): ?>
<?php if (! empty($trace)) : ?>
<h3><?php echo Kohana::lang('core.stack_trace') ?></h3>
<?php echo $trace ?>
<?php echo $trace ?>
<?php endif ?>
<p class="stats"><?php echo Kohana::lang('core.stats_footer') ?></p>
</div>

View File

@@ -1,36 +1,35 @@
<?php defined('SYSPATH') OR die('No direct access allowed.'); ?>
<?php defined('SYSPATH') or die('No direct access allowed.'); ?>
<style type="text/css">
#kohana-profiler
{
font-family: Monaco, 'Courier New';
background-color: #F8FFF8;
margin-top: 20px;
clear: both;
padding: 10px 10px 0;
border: 1px solid #E5EFF8;
text-align: left;
font-family: Monaco, 'Courier New';
background-color: #F8FFF8;
margin-top: 20px;
clear: both;
padding: 10px 10px 0;
border: 1px solid #E5EFF8;
text-align: left;
}
#kohana-profiler pre
{
margin: 0;
font: inherit;
margin: 0;
font: inherit;
}
#kohana-profiler .kp-meta
{
margin: 0 0 10px;
padding: 4px;
background: #FFF;
border: 1px solid #E5EFF8;
color: #A6B0B8;
text-align: center;
margin: 0 0 10px;
padding: 4px;
background: #FFF;
border: 1px solid #E5EFF8;
color: #A6B0B8;
text-align: center;
}
<?php echo $styles ?>
</style>
<div id="kohana-profiler">
<?php
foreach ($profiles as $profile)
{
echo $profile->render();
foreach ($profiles as $profile) {
echo $profile->render();
}
?>
<p class="kp-meta">Profiler executed in <?php echo number_format($execution_time, 3) ?>s</p>

View File

@@ -1,25 +1,23 @@
<?php defined('SYSPATH') OR die('No direct access allowed.'); ?>
<?php defined('SYSPATH') or die('No direct access allowed.'); ?>
<table class="kp-table">
<?php
foreach ($rows as $row):
$class = empty($row['class']) ? '' : ' class="'.$row['class'].'"';
$style = empty($row['style']) ? '' : ' style="'.$row['style'].'"';
?>
<tr<?php echo $class; echo $style; ?>>
<?php
foreach ($columns as $index => $column)
{
$class = empty($column['class']) ? '' : ' class="'.$column['class'].'"';
$style = empty($column['style']) ? '' : ' style="'.$column['style'].'"';
$value = $row['data'][$index];
$value = (is_array($value) OR is_object($value)) ? '<pre>'.html::specialchars(print_r($value, TRUE)).'</pre>' : html::specialchars($value);
echo '<td', $style, $class, '>', $value, '</td>';
}
?>
</tr>
<?php
foreach ($rows as $row) :
$class = empty($row['class']) ? '' : ' class="' . $row['class'] . '"';
$style = empty($row['style']) ? '' : ' style="' . $row['style'] . '"';
?>
<tr<?php echo $class;
echo $style; ?>>
<?php
foreach ($columns as $index => $column) {
$class = empty($column['class']) ? '' : ' class="' . $column['class'] . '"';
$style = empty($column['style']) ? '' : ' style="' . $column['style'] . '"';
$value = $row['data'][$index];
$value = (is_array($value) or is_object($value)) ? '<pre>' . html::specialchars(print_r($value, true)) . '</pre>' : html::specialchars($value);
echo '<td', $style, $class, '>', $value, '</td>';
}
?>
</tr>
<?php
endforeach;
?>
</table>

View File

@@ -1,39 +1,38 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* Classic pagination style
*
*
* @preview First < 1 2 3 > Last
*/
?>
<p class="pagination">
<?php if ($first_page): ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">&lsaquo;&nbsp;<?php echo Kohana::lang('pagination.first') ?></a>
<?php endif ?>
<?php if ($first_page) : ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">&lsaquo;&nbsp;<?php echo Kohana::lang('pagination.first') ?></a>
<?php endif ?>
<?php if ($previous_page): ?>
<a href="<?php echo str_replace('{page}', $previous_page, $url) ?>">&lt;</a>
<?php endif ?>
<?php if ($previous_page) : ?>
<a href="<?php echo str_replace('{page}', $previous_page, $url) ?>">&lt;</a>
<?php endif ?>
<?php for ($i = 1; $i <= $total_pages; $i++): ?>
<?php for ($i = 1; $i <= $total_pages; $i++) : ?>
<?php if ($i == $current_page) : ?>
<strong><?php echo $i ?></strong>
<?php else : ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php if ($i == $current_page): ?>
<strong><?php echo $i ?></strong>
<?php else: ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php endfor ?>
<?php if ($next_page): ?>
<a href="<?php echo str_replace('{page}', $next_page, $url) ?>">&gt;</a>
<?php endif ?>
<?php if ($next_page) : ?>
<a href="<?php echo str_replace('{page}', $next_page, $url) ?>">&gt;</a>
<?php endif ?>
<?php if ($last_page): ?>
<a href="<?php echo str_replace('{page}', $last_page, $url) ?>"><?php echo Kohana::lang('pagination.last') ?>&nbsp;&rsaquo;</a>
<?php endif ?>
<?php if ($last_page) : ?>
<a href="<?php echo str_replace('{page}', $last_page, $url) ?>"><?php echo Kohana::lang('pagination.last') ?>&nbsp;&rsaquo;</a>
<?php endif ?>
</p>

View File

@@ -1,83 +1,79 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* Digg pagination style
*
*
* @preview « Previous 1 2 … 5 6 7 8 9 10 11 12 13 14 … 25 26 Next »
*/
?>
<p class="pagination">
<?php if ($previous_page): ?>
<a href="<?php echo str_replace('{page}', $previous_page, $url) ?>">&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?></a>
<?php else: ?>
&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?>
<?php endif ?>
<?php if ($previous_page) : ?>
<a href="<?php echo str_replace('{page}', $previous_page, $url) ?>">&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?></a>
<?php else : ?>
&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?>
<?php endif ?>
<?php if ($total_pages < 13): /* « Previous 1 2 3 4 5 6 7 8 9 10 11 12 Next » */ ?>
<?php if ($total_pages < 13) : /* « Previous 1 2 3 4 5 6 7 8 9 10 11 12 Next » */ ?>
<?php for ($i = 1; $i <= $total_pages; $i++) : ?>
<?php if ($i == $current_page) : ?>
<strong><?php echo $i ?></strong>
<?php else : ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php for ($i = 1; $i <= $total_pages; $i++): ?>
<?php if ($i == $current_page): ?>
<strong><?php echo $i ?></strong>
<?php else: ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php elseif ($current_page < 9) : /* « Previous 1 2 3 4 5 6 7 8 9 10 … 25 26 Next » */ ?>
<?php for ($i = 1; $i <= 10; $i++) : ?>
<?php if ($i == $current_page) : ?>
<strong><?php echo $i ?></strong>
<?php else : ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php elseif ($current_page < 9): /* « Previous 1 2 3 4 5 6 7 8 9 10 … 25 26 Next » */ ?>
&hellip;
<a href="<?php echo str_replace('{page}', $total_pages - 1, $url) ?>"><?php echo $total_pages - 1 ?></a>
<a href="<?php echo str_replace('{page}', $total_pages, $url) ?>"><?php echo $total_pages ?></a>
<?php for ($i = 1; $i <= 10; $i++): ?>
<?php if ($i == $current_page): ?>
<strong><?php echo $i ?></strong>
<?php else: ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php elseif ($current_page > $total_pages - 8) : /* « Previous 1 2 … 17 18 19 20 21 22 23 24 25 26 Next » */ ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">1</a>
<a href="<?php echo str_replace('{page}', 2, $url) ?>">2</a>
&hellip;
&hellip;
<a href="<?php echo str_replace('{page}', $total_pages - 1, $url) ?>"><?php echo $total_pages - 1 ?></a>
<a href="<?php echo str_replace('{page}', $total_pages, $url) ?>"><?php echo $total_pages ?></a>
<?php for ($i = $total_pages - 9; $i <= $total_pages; $i++) : ?>
<?php if ($i == $current_page) : ?>
<strong><?php echo $i ?></strong>
<?php else : ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php elseif ($current_page > $total_pages - 8): /* « Previous 1 2 … 17 18 19 20 21 22 23 24 25 26 Next » */ ?>
<?php else : /* « Previous 1 2 … 5 6 7 8 9 10 11 12 13 14 … 25 26 Next » */ ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">1</a>
<a href="<?php echo str_replace('{page}', 2, $url) ?>">2</a>
&hellip;
<a href="<?php echo str_replace('{page}', 1, $url) ?>">1</a>
<a href="<?php echo str_replace('{page}', 2, $url) ?>">2</a>
&hellip;
<?php for ($i = $current_page - 5; $i <= $current_page + 5; $i++) : ?>
<?php if ($i == $current_page) : ?>
<strong><?php echo $i ?></strong>
<?php else : ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php for ($i = $total_pages - 9; $i <= $total_pages; $i++): ?>
<?php if ($i == $current_page): ?>
<strong><?php echo $i ?></strong>
<?php else: ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
&hellip;
<a href="<?php echo str_replace('{page}', $total_pages - 1, $url) ?>"><?php echo $total_pages - 1 ?></a>
<a href="<?php echo str_replace('{page}', $total_pages, $url) ?>"><?php echo $total_pages ?></a>
<?php else: /* « Previous 1 2 … 5 6 7 8 9 10 11 12 13 14 … 25 26 Next » */ ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">1</a>
<a href="<?php echo str_replace('{page}', 2, $url) ?>">2</a>
&hellip;
<?php for ($i = $current_page - 5; $i <= $current_page + 5; $i++): ?>
<?php if ($i == $current_page): ?>
<strong><?php echo $i ?></strong>
<?php else: ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
&hellip;
<a href="<?php echo str_replace('{page}', $total_pages - 1, $url) ?>"><?php echo $total_pages - 1 ?></a>
<a href="<?php echo str_replace('{page}', $total_pages, $url) ?>"><?php echo $total_pages ?></a>
<?php endif ?>
<?php endif ?>
<?php if ($next_page): ?>
<a href="<?php echo str_replace('{page}', $next_page, $url) ?>"><?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;</a>
<?php else: ?>
<?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;
<?php endif ?>
<?php if ($next_page) : ?>
<a href="<?php echo str_replace('{page}', $next_page, $url) ?>"><?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;</a>
<?php else : ?>
<?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;
<?php endif ?>
</p>

View File

@@ -1,27 +1,33 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
defined('SYSPATH') or die('No direct access allowed.');
/**
* Extended pagination style
*
*
* @preview « Previous | Page 2 of 11 | Showing items 6-10 of 52 | Next »
*/
?>
<p class="pagination">
<?php if ($previous_page): ?>
<a href="<?php echo str_replace('{page}', $previous_page, $url) ?>">&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?></a>
<?php else: ?>
&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?>
<?php endif ?>
<?php if ($previous_page) : ?>
<a href="<?php echo str_replace('{page}', $previous_page, $url) ?>">&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?></a>
<?php else : ?>
&laquo;&nbsp;<?php echo Kohana::lang('pagination.previous') ?>
<?php endif ?>
| <?php echo Kohana::lang('pagination.page') ?> <?php echo $current_page ?> <?php echo Kohana::lang('pagination.of') ?> <?php echo $total_pages ?>
| <?php echo Kohana::lang('pagination.page') ?> <?php echo $current_page ?> <?php echo Kohana::lang('pagination.of') ?> <?php echo $total_pages ?>
| <?php echo Kohana::lang('pagination.items') ?> <?php echo $current_first_item ?>&ndash;<?php echo $current_last_item ?> <?php echo Kohana::lang('pagination.of') ?> <?php echo $total_items ?>
| <?php echo Kohana::lang('pagination.items') ?>
<?php echo $current_first_item ?>&ndash;
<?php echo $current_last_item ?>
<?php echo Kohana::lang('pagination.of') ?>
<?php echo $total_items ?>
| <?php if ($next_page): ?>
<a href="<?php echo str_replace('{page}', $next_page, $url) ?>"><?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;</a>
<?php else: ?>
<?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;
<?php endif ?>
| <?php if ($next_page) : ?>
<a href="<?php echo str_replace('{page}', $next_page, $url) ?>"><?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;</a>
<?php else : ?>
<?php echo Kohana::lang('pagination.next') ?>&nbsp;&raquo;
<?php endif ?>
</p>
</p>

View File

@@ -1,37 +1,42 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* PunBB pagination style
*
*
* @preview Pages: 1 … 4 5 6 7 8 … 15
*/
?>
<p class="pagination">
<?php echo Kohana::lang('pagination.pages') ?>:
<?php echo Kohana::lang('pagination.pages') ?>:
<?php if ($current_page > 3): ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">1</a>
<?php if ($current_page != 4) echo '&hellip;' ?>
<?php endif ?>
<?php if ($current_page > 3) : ?>
<a href="<?php echo str_replace('{page}', 1, $url) ?>">1</a>
<?php if ($current_page != 4) {
echo '&hellip;';
} ?>
<?php endif ?>
<?php for ($i = $current_page - 2, $stop = $current_page + 3; $i < $stop; ++$i): ?>
<?php for ($i = $current_page - 2, $stop = $current_page + 3; $i < $stop; ++$i) : ?>
<?php if ($i < 1 or $i > $total_pages) {
continue;
} ?>
<?php if ($i < 1 OR $i > $total_pages) continue ?>
<?php if ($current_page == $i) : ?>
<strong><?php echo $i ?></strong>
<?php else : ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php if ($current_page == $i): ?>
<strong><?php echo $i ?></strong>
<?php else: ?>
<a href="<?php echo str_replace('{page}', $i, $url) ?>"><?php echo $i ?></a>
<?php endif ?>
<?php endfor ?>
<?php endfor ?>
<?php if ($current_page <= $total_pages - 3): ?>
<?php if ($current_page != $total_pages - 3) echo '&hellip;' ?>
<a href="<?php echo str_replace('{page}', $total_pages, $url) ?>"><?php echo $total_pages ?></a>
<?php endif ?>
<?php if ($current_page <= $total_pages - 3) : ?>
<?php if ($current_page != $total_pages - 3) {
echo '&hellip;';
} ?>
<a href="<?php echo str_replace('{page}', $total_pages, $url) ?>"><?php echo $total_pages ?></a>
<?php endif ?>
</p>