##// END OF EJS Templates
removed unneeded parameters from changelog and shortlog
removed unneeded parameters from changelog and shortlog

File last commit:

r160:0f7f93df default
r162:32e7e43a default
Show More
files.py
117 lines | 4.4 KiB | text/x-python | PythonLexer
added empty controllers for branches tags files graph, routing and test for them
r93 import logging
Updated basic files browser with, pygments
r99 from pylons import request, response, session, tmpl_context as c, url, config, app_globals as g
added empty controllers for branches tags files graph, routing and test for them
r93 from pylons.controllers.util import abort, redirect
from pylons_app.lib.base import BaseController, render
Updated basic files browser with, pygments
r99 from pylons_app.lib.utils import get_repo_slug
from pylons_app.model.hg_model import HgModel
moved diff libs to vcs. updated htmls and css for diff and source
r158 from vcs.utils import diffs as differ
fixed error when browsing revisions on path that doesn't exist. Fixed files browsing. Fixed templates in branches and tags
r145 from vcs.exceptions import RepositoryError, ChangesetError
Implemented mercurial style diff-lib
r131
added empty controllers for branches tags files graph, routing and test for them
r93 log = logging.getLogger(__name__)
class FilesController(BaseController):
Updated basic files browser with, pygments
r99 def __before__(self):
c.repos_prefix = config['repos_name']
c.repo_name = get_repo_slug(request)
added empty controllers for branches tags files graph, routing and test for them
r93
Updated basic files browser with, pygments
r99 def index(self, repo_name, revision, f_path):
hg_model = HgModel()
c.repo = repo = hg_model.get_repo(c.repo_name)
Updated template for summary (archives links)...
r149 revision = request.POST.get('at_rev', None) or revision
fixed error when browsing revisions on path that doesn't exist. Fixed files browsing. Fixed templates in branches and tags
r145
Updated template for summary (archives links)...
r149 def get_next_rev(cur):
fixed error when browsing revisions on path that doesn't exist. Fixed files browsing. Fixed templates in branches and tags
r145 max_rev = len(c.repo.revisions) - 1
Updated template for summary (archives links)...
r149 r = cur + 1
if r > max_rev:
r = max_rev
return r
def get_prev_rev(cur):
r = cur - 1
return r
Updated basic files browser with, pygments
r99 c.f_path = f_path
Updated template for summary (archives links)...
r149
Added rawfile support, and few fixes for file
r147
fixed files when repository is empty
r138 try:
Updated template for summary (archives links)...
r149 cur_rev = repo.get_changeset(revision).revision
prev_rev = repo.get_changeset(get_prev_rev(cur_rev)).raw_id
next_rev = repo.get_changeset(get_next_rev(cur_rev)).raw_id
c.url_prev = url('files_home', repo_name=c.repo_name,
revision=prev_rev, f_path=f_path)
c.url_next = url('files_home', repo_name=c.repo_name,
revision=next_rev, f_path=f_path)
c.changeset = repo.get_changeset(revision)
Added rawfile support, and few fixes for file
r147 try:
c.file_msg = c.changeset.get_file_message(f_path)
except:
c.file_msg = None
Changeg graph to changelog, and changelog to shortlog
r142 c.cur_rev = c.changeset.raw_id
c.rev_nr = c.changeset.revision
fixed files when repository is empty
r138 c.files_list = c.changeset.get_node(f_path)
c.file_history = self._get_history(repo, c.files_list, f_path)
Added rawfile support, and few fixes for file
r147
fixed error when browsing revisions on path that doesn't exist. Fixed files browsing. Fixed templates in branches and tags
r145 except (RepositoryError, ChangesetError):
fixed files when repository is empty
r138 c.files_list = None
Updated basic files browser with, pygments
r99
Implemented file history.
r128 return render('files/files.html')
Added rawfile support, and few fixes for file
r147 def rawfile(self, repo_name, revision, f_path):
hg_model = HgModel()
c.repo = hg_model.get_repo(c.repo_name)
file_node = c.repo.get_changeset(revision).get_node(f_path)
implemented rawdiff and diff download into diff view....
r160 response.content_type = file_node.mimetype
response.content_disposition = 'attachment; filename=%s' \
Added rawfile support, and few fixes for file
r147 % f_path.split('/')[-1]
return file_node.content
Updated template for summary (archives links)...
r149 def archivefile(self, repo_name, revision, fileformat):
return '%s %s %s' % (repo_name, revision, fileformat)
implemented simple diffs for history of files.
r129 def diff(self, repo_name, f_path):
hg_model = HgModel()
diff1 = request.GET.get('diff1')
diff2 = request.GET.get('diff2')
implemented rawdiff and diff download into diff view....
r160 c.action = action = request.GET.get('diff')
Implemented mercurial style diff-lib
r131 c.no_changes = diff1 == diff2
implemented simple diffs for history of files.
r129 c.f_path = f_path
c.repo = hg_model.get_repo(c.repo_name)
c.changeset_1 = c.repo.get_changeset(diff1)
c.changeset_2 = c.repo.get_changeset(diff2)
Fixed differ to properly extract filenames, and dates from diff file. and swaped order of columns with lines nr in diff html
r152
implemented simple diffs for history of files.
r129 c.diff1 = 'r%s:%s' % (c.changeset_1.revision, c.changeset_1._short)
c.diff2 = 'r%s:%s' % (c.changeset_2.revision, c.changeset_2._short)
moved diff libs to vcs. updated htmls and css for diff and source
r158 f_udiff = differ.get_udiff(c.changeset_1.get_node(f_path),
c.changeset_2.get_node(f_path))
implemented rawdiff and diff download into diff view....
r160
diff = differ.DiffProcessor(f_udiff)
if action == 'download':
diff_name = '%s_vs_%s.diff' % (diff1, diff2)
response.content_type = 'text/plain'
response.content_disposition = 'attachment; filename=%s' \
% diff_name
return diff.raw_diff()
elif action == 'raw':
c.cur_diff = '<pre class="raw">%s</pre>' % diff.raw_diff()
elif action == 'diff':
c.cur_diff = diff.as_html()
implemented simple diffs for history of files.
r129 return render('files/file_diff.html')
Implemented file history.
r128 def _get_history(self, repo, node, f_path):
from vcs.nodes import NodeKind
if not node.kind is NodeKind.FILE:
return []
implemented simple diffs for history of files.
r129 changesets = node.history
Implemented file history.
r128 hist_l = []
for chs in changesets:
n_desc = 'r%s:%s' % (chs.revision, chs._short)
hist_l.append((chs._short, n_desc,))
return hist_l