mirror of
https://github.com/klaussilveira/gitlist.git
synced 2025-11-18 03:30:55 +01:00
Commit pagination now with proper last page. Thanks @kulbirsaini!
This commit is contained in:
@@ -2,9 +2,10 @@
|
||||
|
||||
$app->get('{repo}/commits/{branch}', function($repo, $branch) use($app) {
|
||||
$repository = $app['git']->getRepository($app['git.repos'] . $repo);
|
||||
$pagenumber = $app['request']->get('page');
|
||||
$pagenumber = (empty($pagenumber)) ? 0 : $pagenumber;
|
||||
$commits = $repository->getCommits(null, $pagenumber);
|
||||
$pageNumber = $app['request']->get('page');
|
||||
$pageNumber = (empty($pageNumber)) ? 0 : $pageNumber;
|
||||
$lastPage = round($repository->getTotalCommits() / 15, 0, PHP_ROUND_HALF_UP);
|
||||
$commits = $repository->getCommits(null, $pageNumber);
|
||||
|
||||
foreach ($commits as $commit) {
|
||||
$date = $commit->getDate();
|
||||
@@ -15,7 +16,8 @@ $app->get('{repo}/commits/{branch}', function($repo, $branch) use($app) {
|
||||
return $app['twig']->render('commits.twig', array(
|
||||
'baseurl' => $app['baseurl'],
|
||||
'page' => 'commits',
|
||||
'pagenumber' => $pagenumber,
|
||||
'pagenumber' => $pageNumber,
|
||||
'lastpage' => $lastPage,
|
||||
'repo' => $repo,
|
||||
'branch' => $branch,
|
||||
'branches' => $repository->getBranches(),
|
||||
@@ -28,8 +30,9 @@ $app->get('{repo}/commits/{branch}', function($repo, $branch) use($app) {
|
||||
|
||||
$app->get('{repo}/commits/{branch}/{file}/', function($repo, $branch, $file) use($app) {
|
||||
$repository = $app['git']->getRepository($app['git.repos'] . $repo);
|
||||
$pagenumber = $app['request']->get('page');
|
||||
$pagenumber = (empty($pagenumber)) ? 0 : $pagenumber;
|
||||
$pageNumber = $app['request']->get('page');
|
||||
$pageNumber = (empty($pageNumber)) ? 0 : $pageNumber;
|
||||
$lastPage = round($repository->getTotalCommits() / 15, 0, PHP_ROUND_HALF_UP);
|
||||
$commits = $repository->getCommits($file, $pagenumber);
|
||||
|
||||
foreach ($commits as $commit) {
|
||||
@@ -41,7 +44,8 @@ $app->get('{repo}/commits/{branch}/{file}/', function($repo, $branch, $file) use
|
||||
return $app['twig']->render('commits.twig', array(
|
||||
'baseurl' => $app['baseurl'],
|
||||
'page' => 'commits',
|
||||
'pagenumber' => $pagenumber,
|
||||
'pagenumber' => $pageNumber,
|
||||
'lastpage' => $lastPage,
|
||||
'repo' => $repo,
|
||||
'branch' => $branch,
|
||||
'branches' => $repository->getBranches(),
|
||||
|
||||
@@ -216,6 +216,18 @@ class Repository
|
||||
return $tags;
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the amount of commits on the repository
|
||||
*
|
||||
* @access public
|
||||
* @return integer Total number of commits
|
||||
*/
|
||||
public function getTotalCommits()
|
||||
{
|
||||
$commits = $this->getClient()->run($this, "rev-list --all --count");
|
||||
return $commits;
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the repository commit log
|
||||
*
|
||||
|
||||
@@ -45,9 +45,11 @@
|
||||
<a href="?page={{ pagenumber - 1 }}">← Older</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if pagenumber != lastpage %}
|
||||
<li class="next">
|
||||
<a href="?page={{ pagenumber + 1 }}">Newer →</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
|
||||
<hr>
|
||||
|
||||
Reference in New Issue
Block a user