import logging from pylons import tmpl_context as c, app_globals as g, session, request, config, url from pylons.controllers.util import abort, redirect from pylons_app.lib.base import BaseController, render from pylons_app.lib.utils import get_repo_slug from pylons_app.model.hg_model import HgModel from webhelpers.paginate import Page log = logging.getLogger(__name__) class ShortlogController(BaseController): def __before__(self): c.repos_prefix = config['repos_name'] c.staticurl = g.statics c.repo_name = get_repo_slug(request) def index(self): hg_model = HgModel() lim = 20 p = int(request.params.get('page', 1)) repo = hg_model.get_repo(c.repo_name) cnt = repo.revisions[-1] gen = repo.get_changesets(None) repo_changesets = list(gen) c.repo_changesets = Page(repo_changesets, page=p, item_count=cnt, items_per_page=lim) c.shortlog_data = render('shortlog_data.html') if request.params.get('partial'): return c.shortlog_data r = render('/shortlog.html') return r