##// END OF EJS Templates
Fixes for raw_id, needed for git...
marcink -
r636:ffd07396 beta
parent child Browse files
Show More
@@ -35,7 +35,7 b' def make_map(config):'
35 #==========================================================================
35 #==========================================================================
36
36
37 #MAIN PAGE
37 #MAIN PAGE
38 map.connect('hg_home', '/', controller='hg', action='index')
38 map.connect('home', '/', controller='home', action='index')
39 map.connect('bugtracker', "http://bitbucket.org/marcinkuzminski/rhodecode/issues", _static=True)
39 map.connect('bugtracker', "http://bitbucket.org/marcinkuzminski/rhodecode/issues", _static=True)
40 map.connect('gpl_license', "http://www.gnu.org/licenses/gpl.html", _static=True)
40 map.connect('gpl_license', "http://www.gnu.org/licenses/gpl.html", _static=True)
41 #ADMIN REPOSITORY REST ROUTES
41 #ADMIN REPOSITORY REST ROUTES
@@ -106,7 +106,7 b' class ReposController(BaseController):'
106 % form_result.get('repo_name')
106 % form_result.get('repo_name')
107 h.flash(msg, category='error')
107 h.flash(msg, category='error')
108 if request.POST.get('user_created'):
108 if request.POST.get('user_created'):
109 return redirect(url('hg_home'))
109 return redirect(url('home'))
110 return redirect(url('repos'))
110 return redirect(url('repos'))
111
111
112 @HasPermissionAllDecorator('hg.admin')
112 @HasPermissionAllDecorator('hg.admin')
@@ -77,7 +77,9 b' class ChangelogController(BaseController'
77 if not repo.revisions:return json.dumps([]), 0
77 if not repo.revisions:return json.dumps([]), 0
78
78
79 max_rev = repo.revisions[-1]
79 max_rev = repo.revisions[-1]
80
80 offset = 1 if p == 1 else ((p - 1) * revcount + 1)
81 offset = 1 if p == 1 else ((p - 1) * revcount + 1)
82
81 rev_start = repo.revisions[(-1 * offset)]
83 rev_start = repo.revisions[(-1 * offset)]
82
84
83 revcount = min(max_rev, revcount)
85 revcount = min(max_rev, revcount)
@@ -61,7 +61,7 b' class ChangesetController(BaseController'
61 c.changeset = hg_model.get_repo(c.repo_name).get_changeset(revision)
61 c.changeset = hg_model.get_repo(c.repo_name).get_changeset(revision)
62 except RepositoryError:
62 except RepositoryError:
63 log.error(traceback.format_exc())
63 log.error(traceback.format_exc())
64 return redirect(url('hg_home'))
64 return redirect(url('home'))
65 else:
65 else:
66 try:
66 try:
67 c.changeset_old = c.changeset.parents[0]
67 c.changeset_old = c.changeset.parents[0]
@@ -89,7 +89,7 b' class ChangesetController(BaseController'
89 ' off, see raw changeset instead'))
89 ' off, see raw changeset instead'))
90
90
91 cs1 = None
91 cs1 = None
92 cs2 = node.last_changeset.short_id
92 cs2 = node.last_changeset.raw_id
93 c.changes.append(('added', node, diff, cs1, cs2))
93 c.changes.append(('added', node, diff, cs1, cs2))
94
94
95 #===================================================================
95 #===================================================================
@@ -116,8 +116,8 b' class ChangesetController(BaseController'
116 ' off, see raw changeset instead'))
116 ' off, see raw changeset instead'))
117
117
118
118
119 cs1 = filenode_old.last_changeset.short_id
119 cs1 = filenode_old.last_changeset.raw_id
120 cs2 = node.last_changeset.short_id
120 cs2 = node.last_changeset.raw_id
121 c.changes.append(('changed', node, diff, cs1, cs2))
121 c.changes.append(('changed', node, diff, cs1, cs2))
122
122
123 #===================================================================
123 #===================================================================
@@ -136,7 +136,7 b' class ChangesetController(BaseController'
136 c.changeset = hg_model.get_repo(c.repo_name).get_changeset(revision)
136 c.changeset = hg_model.get_repo(c.repo_name).get_changeset(revision)
137 except RepositoryError:
137 except RepositoryError:
138 log.error(traceback.format_exc())
138 log.error(traceback.format_exc())
139 return redirect(url('hg_home'))
139 return redirect(url('home'))
140 else:
140 else:
141 try:
141 try:
142 c.changeset_old = c.changeset.parents[0]
142 c.changeset_old = c.changeset.parents[0]
@@ -153,7 +153,7 b' class ChangesetController(BaseController'
153 diff = differ.DiffProcessor(f_udiff).raw_diff()
153 diff = differ.DiffProcessor(f_udiff).raw_diff()
154
154
155 cs1 = None
155 cs1 = None
156 cs2 = node.last_changeset.short_id
156 cs2 = node.last_changeset.raw_id
157 c.changes.append(('added', node, diff, cs1, cs2))
157 c.changes.append(('added', node, diff, cs1, cs2))
158
158
159 for node in c.changeset.changed:
159 for node in c.changeset.changed:
@@ -164,8 +164,8 b' class ChangesetController(BaseController'
164 f_udiff = differ.get_udiff(filenode_old, node)
164 f_udiff = differ.get_udiff(filenode_old, node)
165 diff = differ.DiffProcessor(f_udiff).raw_diff()
165 diff = differ.DiffProcessor(f_udiff).raw_diff()
166
166
167 cs1 = filenode_old.last_changeset.short_id
167 cs1 = filenode_old.last_changeset.raw_id
168 cs2 = node.last_changeset.short_id
168 cs2 = node.last_changeset.raw_id
169 c.changes.append(('changed', node, diff, cs1, cs2))
169 c.changes.append(('changed', node, diff, cs1, cs2))
170
170
171 response.content_type = 'text/plain'
171 response.content_type = 'text/plain'
@@ -54,7 +54,7 b' class FeedController(BaseController):'
54 for cs in changesets[:self.feed_nr]:
54 for cs in changesets[:self.feed_nr]:
55 feed.add_item(title=cs.message,
55 feed.add_item(title=cs.message,
56 link=url('changeset_home', repo_name=repo_name,
56 link=url('changeset_home', repo_name=repo_name,
57 revision=cs.short_id, qualified=True),
57 revision=cs.raw_id, qualified=True),
58 description=str(cs.date))
58 description=str(cs.date))
59
59
60 response.content_type = feed.mime_type
60 response.content_type = feed.mime_type
@@ -73,7 +73,7 b' class FeedController(BaseController):'
73 for cs in changesets[:self.feed_nr]:
73 for cs in changesets[:self.feed_nr]:
74 feed.add_item(title=cs.message,
74 feed.add_item(title=cs.message,
75 link=url('changeset_home', repo_name=repo_name,
75 link=url('changeset_home', repo_name=repo_name,
76 revision=cs.short_id, qualified=True),
76 revision=cs.raw_id, qualified=True),
77 description=str(cs.date))
77 description=str(cs.date))
78
78
79 response.content_type = feed.mime_type
79 response.content_type = feed.mime_type
@@ -69,8 +69,8 b' class FilesController(BaseController):'
69
69
70 try:
70 try:
71 cur_rev = repo.get_changeset(revision).revision
71 cur_rev = repo.get_changeset(revision).revision
72 prev_rev = repo.get_changeset(get_prev_rev(cur_rev)).short_id
72 prev_rev = repo.get_changeset(get_prev_rev(cur_rev)).raw_id
73 next_rev = repo.get_changeset(get_next_rev(cur_rev)).short_id
73 next_rev = repo.get_changeset(get_next_rev(cur_rev)).raw_id
74
74
75 c.url_prev = url('files_home', repo_name=c.repo_name,
75 c.url_prev = url('files_home', repo_name=c.repo_name,
76 revision=prev_rev, f_path=f_path)
76 revision=prev_rev, f_path=f_path)
@@ -79,7 +79,7 b' class FilesController(BaseController):'
79
79
80 c.changeset = repo.get_changeset(revision)
80 c.changeset = repo.get_changeset(revision)
81
81
82 c.cur_rev = c.changeset.short_id
82 c.cur_rev = c.changeset.raw_id
83 c.rev_nr = c.changeset.revision
83 c.rev_nr = c.changeset.revision
84 c.files_list = c.changeset.get_node(f_path)
84 c.files_list = c.changeset.get_node(f_path)
85 c.file_history = self._get_history(repo, c.files_list, f_path)
85 c.file_history = self._get_history(repo, c.files_list, f_path)
@@ -112,7 +112,7 b' class FilesController(BaseController):'
112 cs = c.repo.get_changeset(revision)
112 cs = c.repo.get_changeset(revision)
113 c.file = cs.get_node(f_path)
113 c.file = cs.get_node(f_path)
114 c.file_msg = cs.get_file_message(f_path)
114 c.file_msg = cs.get_file_message(f_path)
115 c.cur_rev = cs.short_id
115 c.cur_rev = cs.raw_id
116 c.rev_nr = cs.revision
116 c.rev_nr = cs.revision
117 c.f_path = f_path
117 c.f_path = f_path
118
118
@@ -173,9 +173,6 b' class FilesController(BaseController):'
173 return redirect(url('files_home',
173 return redirect(url('files_home',
174 repo_name=c.repo_name, f_path=f_path))
174 repo_name=c.repo_name, f_path=f_path))
175
175
176 c.diff1 = 'r%s:%s' % (c.changeset_1.revision, c.changeset_1.short_id)
177 c.diff2 = 'r%s:%s' % (c.changeset_2.revision, c.changeset_2.short_id)
178
179 f_udiff = differ.get_udiff(node1, node2)
176 f_udiff = differ.get_udiff(node1, node2)
180 diff = differ.DiffProcessor(f_udiff)
177 diff = differ.DiffProcessor(f_udiff)
181
178
@@ -211,5 +208,5 b' class FilesController(BaseController):'
211 hist_l = []
208 hist_l = []
212 for chs in changesets:
209 for chs in changesets:
213 n_desc = 'r%s:%s' % (chs.revision, chs.short_id)
210 n_desc = 'r%s:%s' % (chs.revision, chs.short_id)
214 hist_l.append((chs.short_id, n_desc,))
211 hist_l.append((chs.raw_id, n_desc,))
215 return hist_l
212 return hist_l
@@ -30,11 +30,11 b' from rhodecode.model.hg import HgModel'
30 import logging
30 import logging
31 log = logging.getLogger(__name__)
31 log = logging.getLogger(__name__)
32
32
33 class HgController(BaseController):
33 class HomeController(BaseController):
34
34
35 @LoginRequired()
35 @LoginRequired()
36 def __before__(self):
36 def __before__(self):
37 super(HgController, self).__before__()
37 super(HomeController, self).__before__()
38
38
39 def index(self):
39 def index(self):
40 sortables = ['name', 'description', 'last_change', 'tip', 'contact']
40 sortables = ['name', 'description', 'last_change', 'tip', 'contact']
@@ -47,7 +47,7 b' class LoginController(BaseController):'
47 c.came_from = request.GET.get('came_from', None)
47 c.came_from = request.GET.get('came_from', None)
48
48
49 if c.rhodecode_user.is_authenticated:
49 if c.rhodecode_user.is_authenticated:
50 return redirect(url('hg_home'))
50 return redirect(url('home'))
51
51
52 if request.POST:
52 if request.POST:
53 #import Login Form validator class
53 #import Login Form validator class
@@ -72,7 +72,7 b' class LoginController(BaseController):'
72 if c.came_from:
72 if c.came_from:
73 return redirect(c.came_from)
73 return redirect(c.came_from)
74 else:
74 else:
75 return redirect(url('hg_home'))
75 return redirect(url('home'))
76
76
77 except formencode.Invalid, errors:
77 except formencode.Invalid, errors:
78 return htmlfill.render(
78 return htmlfill.render(
@@ -141,4 +141,4 b' class LoginController(BaseController):'
141 session['rhodecode_user'] = AuthUser()
141 session['rhodecode_user'] = AuthUser()
142 session.save()
142 session.save()
143 log.info('Logging out and setting user as Empty')
143 log.info('Logging out and setting user as Empty')
144 redirect(url('hg_home'))
144 redirect(url('home'))
@@ -55,7 +55,7 b' class SettingsController(BaseController)'
55 ' in order to rescan repositories') % repo_name,
55 ' in order to rescan repositories') % repo_name,
56 category='error')
56 category='error')
57
57
58 return redirect(url('hg_home'))
58 return redirect(url('home'))
59 defaults = c.repo_info.__dict__
59 defaults = c.repo_info.__dict__
60 defaults.update({'user':c.repo_info.user.username})
60 defaults.update({'user':c.repo_info.user.username})
61 c.users_array = repo_model.get_users_js()
61 c.users_array = repo_model.get_users_js()
@@ -119,7 +119,7 b' class SettingsController(BaseController)'
119 ' in order to rescan repositories') % repo_name,
119 ' in order to rescan repositories') % repo_name,
120 category='error')
120 category='error')
121
121
122 return redirect(url('hg_home'))
122 return redirect(url('home'))
123 try:
123 try:
124 action_logger(self.rhodecode_user, 'user_deleted_repo',
124 action_logger(self.rhodecode_user, 'user_deleted_repo',
125 repo_name, '', self.sa)
125 repo_name, '', self.sa)
@@ -130,7 +130,7 b' class SettingsController(BaseController)'
130 h.flash(_('An error occurred during deletion of %s') % repo_name,
130 h.flash(_('An error occurred during deletion of %s') % repo_name,
131 category='error')
131 category='error')
132
132
133 return redirect(url('hg_home'))
133 return redirect(url('home'))
134
134
135 def fork(self, repo_name):
135 def fork(self, repo_name):
136 repo_model = RepoModel()
136 repo_model = RepoModel()
@@ -142,7 +142,7 b' class SettingsController(BaseController)'
142 ' in order to rescan repositories') % repo_name,
142 ' in order to rescan repositories') % repo_name,
143 category='error')
143 category='error')
144
144
145 return redirect(url('hg_home'))
145 return redirect(url('home'))
146
146
147 return render('settings/repo_fork.html')
147 return render('settings/repo_fork.html')
148
148
@@ -172,4 +172,4 b' class SettingsController(BaseController)'
172 errors=errors.error_dict or {},
172 errors=errors.error_dict or {},
173 prefix_error=False,
173 prefix_error=False,
174 encoding="UTF-8")
174 encoding="UTF-8")
175 return redirect(url('hg_home'))
175 return redirect(url('home'))
@@ -272,12 +272,12 b' def pygmentize_annotation(filenode, **kw'
272 changeset.date,
272 changeset.date,
273 tooltip(changeset.message))
273 tooltip(changeset.message))
274 lnk_format = 'r%-5s:%s' % (changeset.revision,
274 lnk_format = 'r%-5s:%s' % (changeset.revision,
275 changeset.short_id)
275 changeset.raw_id)
276 uri = link_to(
276 uri = link_to(
277 lnk_format,
277 lnk_format,
278 url('changeset_home', repo_name=changeset.repository.name,
278 url('changeset_home', repo_name=changeset.repository.name,
279 revision=changeset.short_id),
279 revision=changeset.raw_id),
280 style=get_color_string(changeset.short_id),
280 style=get_color_string(changeset.raw_id),
281 class_='tooltip',
281 class_='tooltip',
282 tooltip_title=tooltip_html
282 tooltip_title=tooltip_html
283 )
283 )
@@ -352,6 +352,7 b' capitalize = lambda x: x.capitalize()'
352 email = util.email
352 email = util.email
353 email_or_none = lambda x: util.email(x) if util.email(x) != x else None
353 email_or_none = lambda x: util.email(x) if util.email(x) != x else None
354 person = lambda x: _person(x)
354 person = lambda x: _person(x)
355 short_id = lambda x: x[:12]
355
356
356 #==============================================================================
357 #==============================================================================
357 # PERMS
358 # PERMS
@@ -303,6 +303,7 b' class EmptyChangeset(BaseChangeset):'
303 message = ''
303 message = ''
304 author = ''
304 author = ''
305 date = ''
305 date = ''
306
306 @LazyProperty
307 @LazyProperty
307 def raw_id(self):
308 def raw_id(self):
308 """
309 """
@@ -158,7 +158,7 b' class HgModel(object):'
158 tmp_d['description_sort'] = tmp_d['description']
158 tmp_d['description_sort'] = tmp_d['description']
159 tmp_d['last_change'] = last_change
159 tmp_d['last_change'] = last_change
160 tmp_d['last_change_sort'] = time.mktime(last_change.timetuple())
160 tmp_d['last_change_sort'] = time.mktime(last_change.timetuple())
161 tmp_d['tip'] = tip.short_id
161 tmp_d['tip'] = tip.raw_id
162 tmp_d['tip_sort'] = tip.revision
162 tmp_d['tip_sort'] = tip.revision
163 tmp_d['rev'] = tip.revision
163 tmp_d['rev'] = tip.revision
164 tmp_d['contact'] = repo.contact
164 tmp_d['contact'] = repo.contact
@@ -1701,6 +1701,7 b' font:100% sans-serif;'
1701 width:auto;
1701 width:auto;
1702 opacity:1px;
1702 opacity:1px;
1703 padding:8px;
1703 padding:8px;
1704 white-space: pre;
1704 }
1705 }
1705
1706
1706 .ac {
1707 .ac {
@@ -31,7 +31,7 b''
31 <div id="header-inner" class="title top-left-rounded-corner top-right-rounded-corner">
31 <div id="header-inner" class="title top-left-rounded-corner top-right-rounded-corner">
32 <!-- logo -->
32 <!-- logo -->
33 <div id="logo">
33 <div id="logo">
34 <h1><a href="${h.url('hg_home')}">${c.rhodecode_name}</a></h1>
34 <h1><a href="${h.url('home')}">${c.rhodecode_name}</a></h1>
35 </div>
35 </div>
36 <!-- end logo -->
36 <!-- end logo -->
37 <!-- menu -->
37 <!-- menu -->
@@ -146,7 +146,7 b''
146 <ul>
146 <ul>
147 %if c.repository_branches.values():
147 %if c.repository_branches.values():
148 %for cnt,branch in enumerate(c.repository_branches.items()):
148 %for cnt,branch in enumerate(c.repository_branches.items()):
149 <li>${h.link_to('%s - %s' % (branch[0],branch[1]),h.url('files_home',repo_name=c.repo_name,revision=branch[1]))}</li>
149 <li>${h.link_to('%s - %s' % (branch[0],h.short_id(branch[1])),h.url('files_home',repo_name=c.repo_name,revision=branch[1]))}</li>
150 %endfor
150 %endfor
151 %else:
151 %else:
152 <li>${h.link_to(_('There are no branches yet'),'#')}</li>
152 <li>${h.link_to(_('There are no branches yet'),'#')}</li>
@@ -158,7 +158,7 b''
158 <ul>
158 <ul>
159 %if c.repository_tags.values():
159 %if c.repository_tags.values():
160 %for cnt,tag in enumerate(c.repository_tags.items()):
160 %for cnt,tag in enumerate(c.repository_tags.items()):
161 <li>${h.link_to('%s - %s' % (tag[0],tag[1]),h.url('files_home',repo_name=c.repo_name,revision=tag[1]))}</li>
161 <li>${h.link_to('%s - %s' % (tag[0],h.short_id(tag[1])),h.url('files_home',repo_name=c.repo_name,revision=tag[1]))}</li>
162 %endfor
162 %endfor
163 %else:
163 %else:
164 <li>${h.link_to(_('There are no tags yet'),'#')}</li>
164 <li>${h.link_to(_('There are no tags yet'),'#')}</li>
@@ -219,7 +219,7 b''
219 ##ROOT MENU
219 ##ROOT MENU
220 <ul id="quick">
220 <ul id="quick">
221 <li>
221 <li>
222 <a title="${_('Home')}" href="${h.url('hg_home')}">
222 <a title="${_('Home')}" href="${h.url('home')}">
223 <span class="icon">
223 <span class="icon">
224 <img src="/images/icons/home_16.png" alt="${_('Home')}" />
224 <img src="/images/icons/home_16.png" alt="${_('Home')}" />
225 </span>
225 </span>
@@ -2,24 +2,26 b''
2 <table class="table_disp">
2 <table class="table_disp">
3 <tr>
3 <tr>
4 <th class="left">${_('date')}</th>
4 <th class="left">${_('date')}</th>
5 <th class="left">${_('name')}</th>
6 <th class="left">${_('author')}</th>
5 <th class="left">${_('revision')}</th>
7 <th class="left">${_('revision')}</th>
6 <th class="left">${_('name')}</th>
7 <th class="left">${_('links')}</th>
8 <th class="left">${_('links')}</th>
8 </tr>
9 </tr>
9 %for cnt,branch in enumerate(c.repo_branches.items()):
10 %for cnt,branch in enumerate(c.repo_branches.items()):
10 <tr class="parity${cnt%2}">
11 <tr class="parity${cnt%2}">
11 <td>${h.age(branch[1].date)}</td>
12 <td>${branch[1].date} - ${h.age(branch[1].date)}</td>
12 <td>r${branch[1].revision}:${branch[1].short_id}</td>
13 <td>
13 <td>
14 <span class="logtags">
14 <span class="logtags">
15 <span class="branchtag">${h.link_to(branch[0],
15 <span class="branchtag">${h.link_to(branch[0],
16 h.url('changeset_home',repo_name=c.repo_name,revision=branch[1].short_id))}</span>
16 h.url('changeset_home',repo_name=c.repo_name,revision=branch[1].raw_id))}</span>
17 </span>
17 </span>
18 </td>
18 </td>
19 <td title="${branch[1].author}">${h.person(branch[1].author)}</td>
20 <td>r${branch[1].revision}:${h.short_id(branch[1].raw_id)}</td>
19 <td class="nowrap">
21 <td class="nowrap">
20 ${h.link_to(_('changeset'),h.url('changeset_home',repo_name=c.repo_name,revision=branch[1].short_id))}
22 ${h.link_to(_('changeset'),h.url('changeset_home',repo_name=c.repo_name,revision=branch[1].raw_id))}
21 |
23 |
22 ${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name,revision=branch[1].short_id))}
24 ${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name,revision=branch[1].raw_id))}
23 </td>
25 </td>
24 </tr>
26 </tr>
25 %endfor
27 %endfor
@@ -46,7 +46,7 b''
46 %for cnt,cs in enumerate(c.pagination):
46 %for cnt,cs in enumerate(c.pagination):
47 <div id="chg_${cnt+1}" class="container">
47 <div id="chg_${cnt+1}" class="container">
48 <div class="left">
48 <div class="left">
49 <div class="date">${_('commit')} ${cs.revision}: ${cs.short_id}@${cs.date}</div>
49 <div class="date">${_('commit')} ${cs.revision}: ${cs.raw_id}@${cs.date}</div>
50 <div class="author">
50 <div class="author">
51 <div class="gravatar">
51 <div class="gravatar">
52 <img alt="gravatar" src="${h.gravatar_url(h.email(cs.author),20)}"/>
52 <img alt="gravatar" src="${h.gravatar_url(h.email(cs.author),20)}"/>
@@ -54,7 +54,7 b''
54 <span>${h.person(cs.author)}</span><br/>
54 <span>${h.person(cs.author)}</span><br/>
55 <span><a href="mailto:${h.email_or_none(cs.author)}">${h.email_or_none(cs.author)}</a></span><br/>
55 <span><a href="mailto:${h.email_or_none(cs.author)}">${h.email_or_none(cs.author)}</a></span><br/>
56 </div>
56 </div>
57 <div class="message">${h.link_to(h.wrap_paragraphs(cs.message),h.url('changeset_home',repo_name=c.repo_name,revision=cs.short_id))}</div>
57 <div class="message">${h.link_to(h.wrap_paragraphs(cs.message),h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
58 </div>
58 </div>
59 <div class="right">
59 <div class="right">
60 <div class="changes">
60 <div class="changes">
@@ -69,8 +69,8 b''
69 %endif
69 %endif
70 %if cs.parents:
70 %if cs.parents:
71 %for p_cs in reversed(cs.parents):
71 %for p_cs in reversed(cs.parents):
72 <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(p_cs.short_id,
72 <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(p_cs.raw_id,
73 h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.short_id),title=p_cs.message)}
73 h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}
74 </div>
74 </div>
75 %endfor
75 %endfor
76 %else:
76 %else:
@@ -79,10 +79,10 b''
79
79
80 <span class="logtags">
80 <span class="logtags">
81 <span class="branchtag" title="${'%s %s' % (_('branch'),cs.branch)}">
81 <span class="branchtag" title="${'%s %s' % (_('branch'),cs.branch)}">
82 ${h.link_to(cs.branch,h.url('files_home',repo_name=c.repo_name,revision=cs.short_id))}</span>
82 ${h.link_to(cs.branch,h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}</span>
83 %for tag in cs.tags:
83 %for tag in cs.tags:
84 <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}">
84 <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}">
85 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=cs.short_id))}</span>
85 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}</span>
86 %endfor
86 %endfor
87 </span>
87 </span>
88 </div>
88 </div>
@@ -1,7 +1,7 b''
1 <%inherit file="/base/base.html"/>
1 <%inherit file="/base/base.html"/>
2
2
3 <%def name="title()">
3 <%def name="title()">
4 ${c.repo_name} ${_('Changeset')} - r${c.changeset.revision}:${c.changeset.short_id} - ${c.rhodecode_name}
4 ${c.repo_name} ${_('Changeset')} - r${c.changeset.revision}:${h.short_id(c.changeset.raw_id)} - ${c.rhodecode_name}
5 </%def>
5 </%def>
6
6
7 <%def name="breadcrumbs_links()">
7 <%def name="breadcrumbs_links()">
@@ -9,7 +9,7 b''
9 &raquo;
9 &raquo;
10 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
10 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
11 &raquo;
11 &raquo;
12 ${_('Changeset')} - r${c.changeset.revision}:${c.changeset.short_id}
12 ${_('Changeset')} - r${c.changeset.revision}:${h.short_id(c.changeset.raw_id)}
13 </%def>
13 </%def>
14
14
15 <%def name="page_nav()">
15 <%def name="page_nav()">
@@ -26,18 +26,18 b''
26 <div id="body" class="diffblock">
26 <div id="body" class="diffblock">
27 <div class="code-header">
27 <div class="code-header">
28 <div>
28 <div>
29 ${_('Changeset')} - r${c.changeset.revision}:${c.changeset.short_id}
29 ${_('Changeset')} - r${c.changeset.revision}:${h.short_id(c.changeset.raw_id)}
30 &raquo; <span>${h.link_to(_('raw diff'),
30 &raquo; <span>${h.link_to(_('raw diff'),
31 h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.short_id,diff='show'))}</span>
31 h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='show'))}</span>
32 &raquo; <span>${h.link_to(_('download diff'),
32 &raquo; <span>${h.link_to(_('download diff'),
33 h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.short_id,diff='download'))}</span>
33 h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='download'))}</span>
34 </div>
34 </div>
35 </div>
35 </div>
36 </div>
36 </div>
37 <div id="changeset_content">
37 <div id="changeset_content">
38 <div class="container">
38 <div class="container">
39 <div class="left">
39 <div class="left">
40 <div class="date">${_('commit')} ${c.changeset.revision}: ${c.changeset.short_id}@${c.changeset.date}</div>
40 <div class="date">${_('commit')} ${c.changeset.revision}: ${h.short_id(c.changeset.raw_id)}@${c.changeset.date}</div>
41 <div class="author">
41 <div class="author">
42 <div class="gravatar">
42 <div class="gravatar">
43 <img alt="gravatar" src="${h.gravatar_url(h.email(c.changeset.author),20)}"/>
43 <img alt="gravatar" src="${h.gravatar_url(h.email(c.changeset.author),20)}"/>
@@ -45,7 +45,7 b''
45 <span>${h.person(c.changeset.author)}</span><br/>
45 <span>${h.person(c.changeset.author)}</span><br/>
46 <span><a href="mailto:${h.email_or_none(c.changeset.author)}">${h.email_or_none(c.changeset.author)}</a></span><br/>
46 <span><a href="mailto:${h.email_or_none(c.changeset.author)}">${h.email_or_none(c.changeset.author)}</a></span><br/>
47 </div>
47 </div>
48 <div class="message">${h.link_to(h.wrap_paragraphs(c.changeset.message),h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</div>
48 <div class="message">${h.link_to(h.wrap_paragraphs(c.changeset.message),h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</div>
49 </div>
49 </div>
50 <div class="right">
50 <div class="right">
51 <div class="changes">
51 <div class="changes">
@@ -61,8 +61,8 b''
61
61
62 %if c.changeset.parents:
62 %if c.changeset.parents:
63 %for p_cs in reversed(c.changeset.parents):
63 %for p_cs in reversed(c.changeset.parents):
64 <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(p_cs.short_id,
64 <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(h.short_id(p_cs.raw_id),
65 h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.short_id),title=p_cs.message)}
65 h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}
66 </div>
66 </div>
67 %endfor
67 %endfor
68 %else:
68 %else:
@@ -70,10 +70,10 b''
70 %endif
70 %endif
71 <span class="logtags">
71 <span class="logtags">
72 <span class="branchtag" title="${'%s %s' % (_('branch'),c.changeset.branch)}">
72 <span class="branchtag" title="${'%s %s' % (_('branch'),c.changeset.branch)}">
73 ${h.link_to(c.changeset.branch,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</span>
73 ${h.link_to(c.changeset.branch,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span>
74 %for tag in c.changeset.tags:
74 %for tag in c.changeset.tags:
75 <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}">
75 <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}">
76 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</span>
76 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span>
77 %endfor
77 %endfor
78 </span>
78 </span>
79 </div>
79 </div>
@@ -96,7 +96,7 b''
96 <div>
96 <div>
97 <span>
97 <span>
98 ${h.link_to_if(change!='removed',filenode.path,h.url('files_home',repo_name=c.repo_name,
98 ${h.link_to_if(change!='removed',filenode.path,h.url('files_home',repo_name=c.repo_name,
99 revision=filenode.changeset.short_id,f_path=filenode.path))}
99 revision=filenode.changeset.raw_id,f_path=filenode.path))}
100 </span>
100 </span>
101 %if 1:
101 %if 1:
102 &raquo; <span>${h.link_to(_('diff'),
102 &raquo; <span>${h.link_to(_('diff'),
@@ -6,7 +6,7 b''
6 </%def>
6 </%def>
7
7
8 <%def name="breadcrumbs()">
8 <%def name="breadcrumbs()">
9 ${h.link_to(u'Home',h.url('hg_home'))}
9 ${h.link_to(u'Home',h.url('home'))}
10 /
10 /
11 ${h.link_to(u'Admin',h.url('admin_home'))}
11 ${h.link_to(u'Admin',h.url('admin_home'))}
12 </%def>
12 </%def>
@@ -26,7 +26,7 b''
26 ${_('Create "%s" repository as %s' % (c.repo_name,c.repo_name_cleaned))}</a>
26 ${_('Create "%s" repository as %s' % (c.repo_name,c.repo_name_cleaned))}</a>
27
27
28 </p>
28 </p>
29 <p class="normal">${h.link_to(_('Go back to the main repository list page'),h.url('hg_home'))}</p>
29 <p class="normal">${h.link_to(_('Go back to the main repository list page'),h.url('home'))}</p>
30 <div class="page-footer">
30 <div class="page-footer">
31 </div>
31 </div>
32 </%def> No newline at end of file
32 </%def>
@@ -9,7 +9,7 b''
9 &raquo;
9 &raquo;
10 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
10 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
11 &raquo;
11 &raquo;
12 ${'%s: %s %s %s' % (_('File diff'),c.diff2,'&rarr;',c.diff1)|n}
12 ${_('File diff')} r${c.changeset_1.revision}:${h.short_id(c.changeset_1.raw_id)} &rarr; r${c.changeset_2.revision}:${h.short_id(c.changeset_2.raw_id)}
13 </%def>
13 </%def>
14
14
15 <%def name="page_nav()">
15 <%def name="page_nav()">
@@ -26,13 +26,13 b''
26 <div class="code-header">
26 <div class="code-header">
27 <div>
27 <div>
28 <span>${h.link_to(c.f_path,h.url('files_home',repo_name=c.repo_name,
28 <span>${h.link_to(c.f_path,h.url('files_home',repo_name=c.repo_name,
29 revision=c.diff2.split(':')[1],f_path=c.f_path))}</span>
29 revision=c.changeset_2.raw_id,f_path=c.f_path))}</span>
30 &raquo; <span>${h.link_to(_('diff'),
30 &raquo; <span>${h.link_to(_('diff'),
31 h.url.current(diff2=c.diff2.split(':')[-1],diff1=c.diff1.split(':')[-1],diff='diff'))}</span>
31 h.url.current(diff2=c.changeset_2.raw_id,diff1=c.changeset_1.raw_id,diff='diff'))}</span>
32 &raquo; <span>${h.link_to(_('raw diff'),
32 &raquo; <span>${h.link_to(_('raw diff'),
33 h.url.current(diff2=c.diff2.split(':')[-1],diff1=c.diff1.split(':')[-1],diff='raw'))}</span>
33 h.url.current(diff2=c.changeset_2.raw_id,diff1=c.changeset_1.raw_id,diff='raw'))}</span>
34 &raquo; <span>${h.link_to(_('download diff'),
34 &raquo; <span>${h.link_to(_('download diff'),
35 h.url.current(diff2=c.diff2.split(':')[-1],diff1=c.diff1.split(':')[-1],diff='download'))}</span>
35 h.url.current(diff2=c.changeset_2.raw_id,diff1=c.changeset_1.raw_id,diff='download'))}</span>
36 </div>
36 </div>
37 </div>
37 </div>
38 <div class="code-body">
38 <div class="code-body">
@@ -11,7 +11,7 b''
11 &raquo;
11 &raquo;
12 ${_('files')}
12 ${_('files')}
13 %if c.files_list:
13 %if c.files_list:
14 @ R${c.rev_nr}:${c.cur_rev}
14 @ R${c.rev_nr}:${h.short_id(c.cur_rev)}
15 %endif
15 %endif
16 </%def>
16 </%def>
17
17
@@ -26,8 +26,8 b''
26 <h3 class="files_location">${_('Location')}: ${h.files_breadcrumbs(c.repo_name,c.cur_rev,c.file.path)}</h3>
26 <h3 class="files_location">${_('Location')}: ${h.files_breadcrumbs(c.repo_name,c.cur_rev,c.file.path)}</h3>
27 <dl class="overview">
27 <dl class="overview">
28 <dt>${_('Last revision')}</dt>
28 <dt>${_('Last revision')}</dt>
29 <dd>${h.link_to("r%s:%s" % (c.file.last_changeset.revision,c.file.last_changeset.short_id),
29 <dd>${h.link_to("r%s:%s" % (c.file.last_changeset.revision,c.file.last_changeset.raw_id),
30 h.url('files_annotate_home',repo_name=c.repo_name,revision=c.file.last_changeset.short_id,f_path=c.f_path))} </dd>
30 h.url('files_annotate_home',repo_name=c.repo_name,revision=c.file.last_changeset.raw_id,f_path=c.f_path))} </dd>
31 <dt>${_('Size')}</dt>
31 <dt>${_('Size')}</dt>
32 <dd>${h.format_byte_size(c.file.size,binary=True)}</dd>
32 <dd>${h.format_byte_size(c.file.size,binary=True)}</dd>
33 <dt>${_('Mimetype')}</dt>
33 <dt>${_('Mimetype')}</dt>
@@ -43,7 +43,7 b''
43 </dl>
43 </dl>
44 <div id="body" class="codeblock">
44 <div id="body" class="codeblock">
45 <div class="code-header">
45 <div class="code-header">
46 <div class="revision">${c.file.name}@r${c.file.last_changeset.revision}:${c.file.last_changeset.short_id}</div>
46 <div class="revision">${c.file.name}@r${c.file.last_changeset.revision}:${c.file.last_changeset.raw_id}</div>
47 <div class="commit">"${c.file_msg}"</div>
47 <div class="commit">"${c.file_msg}"</div>
48 </div>
48 </div>
49 <div class="code-body">
49 <div class="code-body">
@@ -1,8 +1,8 b''
1 <dl>
1 <dl>
2 <dt>${_('Last revision')}</dt>
2 <dt>${_('Last revision')}</dt>
3 <dd>
3 <dd>
4 ${h.link_to("r%s:%s" % (c.files_list.last_changeset.revision,c.files_list.last_changeset.short_id),
4 ${h.link_to("r%s:%s" % (c.files_list.last_changeset.revision,h.short_id(c.files_list.last_changeset.raw_id)),
5 h.url('files_home',repo_name=c.repo_name,revision=c.files_list.last_changeset.short_id,f_path=c.f_path))}
5 h.url('files_home',repo_name=c.repo_name,revision=c.files_list.last_changeset.raw_id,f_path=c.f_path))}
6 </dd>
6 </dd>
7 <dt>${_('Size')}</dt>
7 <dt>${_('Size')}</dt>
8 <dd>${h.format_byte_size(c.files_list.size,binary=True)}</dd>
8 <dd>${h.format_byte_size(c.files_list.size,binary=True)}</dd>
@@ -20,8 +20,8 b''
20 <dd>
20 <dd>
21 <div>
21 <div>
22 ${h.form(h.url('files_diff_home',repo_name=c.repo_name,f_path=c.f_path),method='get')}
22 ${h.form(h.url('files_diff_home',repo_name=c.repo_name,f_path=c.f_path),method='get')}
23 ${h.hidden('diff2',c.files_list.last_changeset.short_id)}
23 ${h.hidden('diff2',c.files_list.last_changeset.raw_id)}
24 ${h.select('diff1',c.files_list.last_changeset.short_id,c.file_history)}
24 ${h.select('diff1',c.files_list.last_changeset.raw_id,c.file_history)}
25 ${h.submit('diff','diff to revision',class_="ui-button ui-widget ui-state-default ui-corner-all")}
25 ${h.submit('diff','diff to revision',class_="ui-button ui-widget ui-state-default ui-corner-all")}
26 ${h.submit('show_rev','show at revision',class_="ui-button ui-widget ui-state-default ui-corner-all")}
26 ${h.submit('show_rev','show at revision',class_="ui-button ui-widget ui-state-default ui-corner-all")}
27 ${h.end_form()}
27 ${h.end_form()}
@@ -32,7 +32,7 b''
32
32
33 <div id="body" class="codeblock">
33 <div id="body" class="codeblock">
34 <div class="code-header">
34 <div class="code-header">
35 <div class="revision">${c.files_list.name}@r${c.files_list.last_changeset.revision}:${c.files_list.last_changeset.short_id}</div>
35 <div class="revision">${c.files_list.name}@r${c.files_list.last_changeset.revision}:${h.short_id(c.files_list.last_changeset.raw_id)}</div>
36 <div class="commit">"${c.files_list.last_changeset.message}"</div>
36 <div class="commit">"${c.files_list.last_changeset.message}"</div>
37 </div>
37 </div>
38 <div class="code-body">
38 <div class="code-body">
@@ -56,33 +56,36 b''
56 <tr class="parity${cnt%2}">
56 <tr class="parity${cnt%2}">
57 <td>
57 <td>
58 %if repo['repo'].dbrepo.repo_type =='hg':
58 %if repo['repo'].dbrepo.repo_type =='hg':
59 <img class="icon" alt="${_('Mercurial repository')}" src="/images/icons/hgicon.png"/>
59 <img class="icon" title="${_('Mercurial repository')}" alt="${_('Mercurial repository')}" src="/images/icons/hgicon.png"/>
60 %elif repo['repo'].dbrepo.repo_type =='git':
60 %elif repo['repo'].dbrepo.repo_type =='git':
61 <img class="icon" alt="${_('Git repository')}" src="/images/icons/giticon.png"/>
61 <img class="icon" title="${_('Git repository')}" alt="${_('Git repository')}" src="/images/icons/giticon.png"/>
62 %else:
62 %else:
63
63
64 %endif
64 %endif
65
65
66 %if repo['repo'].dbrepo.private:
66 %if repo['repo'].dbrepo.private:
67 <img class="icon" alt="${_('private')}" src="/images/icons/lock.png"/>
67 <img class="icon" title="${_('private repository')}" alt="${_('private repository')}" src="/images/icons/lock.png"/>
68 %else:
68 %else:
69 <img class="icon" alt="${_('public')}" src="/images/icons/lock_open.png"/>
69 <img class="icon" title="${_('public repository')}" alt="${_('public repository')}" src="/images/icons/lock_open.png"/>
70 %endif
70 %endif
71 ${h.link_to(repo['name'],
71 ${h.link_to(repo['name'],
72 h.url('summary_home',repo_name=repo['name']))}
72 h.url('summary_home',repo_name=repo['name']))}
73 %if repo['repo'].dbrepo.fork:
73 %if repo['repo'].dbrepo.fork:
74 <a href="${h.url('summary_home',repo_name=repo['repo'].dbrepo.fork.repo_name)}">
74 <a href="${h.url('summary_home',repo_name=repo['repo'].dbrepo.fork.repo_name)}">
75 <img class="icon" alt="${_('public')}"
75 <img class="icon" alt="${_('fork')}"
76 title="${_('Fork of')} ${repo['repo'].dbrepo.fork.repo_name}"
76 title="${_('Fork of')} ${repo['repo'].dbrepo.fork.repo_name}"
77 src="/images/icons/arrow_divide.png"/></a>
77 src="/images/icons/arrow_divide.png"/></a>
78 %endif
78 %endif
79 </td>
79 </td>
80 <td title="${repo['description']}">${h.truncate(repo['description'],60)}</td>
80 <td><span class="tooltip" tooltip_title="${repo['description']}">
81 ${h.truncate(repo['description'],60)}</span>
82 </td>
81 <td><span class="tooltip" tooltip_title="${repo['last_change']}">
83 <td><span class="tooltip" tooltip_title="${repo['last_change']}">
82 ${h.age(repo['last_change'])} </span></td>
84 ${h.age(repo['last_change'])} </span>
85 </td>
83 <td>
86 <td>
84 %if repo['rev']>=0:
87 %if repo['rev']>=0:
85 ${h.link_to('r%s:%s' % (repo['rev'],repo['tip']),
88 ${h.link_to('r%s:%s' % (repo['rev'],h.short_id(repo['tip'])),
86 h.url('changeset_home',repo_name=repo['name'],revision=repo['tip']),
89 h.url('changeset_home',repo_name=repo['name'],revision=repo['tip']),
87 class_="tooltip",
90 class_="tooltip",
88 tooltip_title=h.tooltip(repo['last_msg']))}
91 tooltip_title=h.tooltip(repo['last_msg']))}
@@ -3,9 +3,9 b''
3 <table>
3 <table>
4 <tr>
4 <tr>
5 <th class="left">${_('date')}</th>
5 <th class="left">${_('date')}</th>
6 <th class="left">${_('commit message')}</th>
6 <th class="left">${_('author')}</th>
7 <th class="left">${_('author')}</th>
7 <th class="left">${_('revision')}</th>
8 <th class="left">${_('revision')}</th>
8 <th class="left">${_('commit message')}</th>
9 <th class="left">${_('branch')}</th>
9 <th class="left">${_('branch')}</th>
10 <th class="left">${_('tags')}</th>
10 <th class="left">${_('tags')}</th>
11 <th class="left">${_('links')}</th>
11 <th class="left">${_('links')}</th>
@@ -13,14 +13,14 b''
13 </tr>
13 </tr>
14 %for cnt,cs in enumerate(c.repo_changesets):
14 %for cnt,cs in enumerate(c.repo_changesets):
15 <tr class="parity${cnt%2}">
15 <tr class="parity${cnt%2}">
16 <td>${h.age(cs.date)} - ${cs.date} </td>
16 <td>${cs.date} - ${h.age(cs.date)}</td>
17 <td title="${cs.author}">${h.person(cs.author)}</td>
18 <td>r${cs.revision}:${cs.short_id}</td>
19 <td>
17 <td>
20 ${h.link_to(h.truncate(cs.message,60),
18 ${h.link_to(h.truncate(cs.message,60),
21 h.url('changeset_home',repo_name=c.repo_name,revision=cs.short_id),
19 h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id),
22 title=cs.message)}
20 title=cs.message)}
23 </td>
21 </td>
22 <td title="${cs.author}">${h.person(cs.author)}</td>
23 <td>r${cs.revision}:${h.short_id(cs.raw_id)}</td>
24 <td>
24 <td>
25 <span class="logtags">
25 <span class="logtags">
26 <span class="branchtag">${cs.branch}</span>
26 <span class="branchtag">${cs.branch}</span>
@@ -34,9 +34,9 b''
34 </span>
34 </span>
35 </td>
35 </td>
36 <td class="nowrap">
36 <td class="nowrap">
37 ${h.link_to(_('changeset'),h.url('changeset_home',repo_name=c.repo_name,revision=cs.short_id))}
37 ${h.link_to(_('changeset'),h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
38 |
38 |
39 ${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name,revision=cs.short_id))}
39 ${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}
40 </td>
40 </td>
41 </tr>
41 </tr>
42 %endfor
42 %endfor
@@ -42,10 +42,19 b' E.onDOMReady(function(e){'
42 <label>${_('Name')}:</label>
42 <label>${_('Name')}:</label>
43 </div>
43 </div>
44 <div class="input-short">
44 <div class="input-short">
45
46 %if c.repo_info.dbrepo.repo_type =='hg':
47 <img style="margin-bottom:2px" class="icon" title="${_('Mercurial repository')}" alt="${_('Mercurial repository')}" src="/images/icons/hgicon.png"/>
48 %elif c.repo_info.dbrepo.repo_type =='git':
49 <img style="margin-bottom:2px" class="icon" title="${_('Git repository')}" alt="${_('Git repository')}" src="/images/icons/giticon.png"/>
50 %else:
51
52 %endif
53
45 %if c.repo_info.dbrepo.private:
54 %if c.repo_info.dbrepo.private:
46 <img style="margin-bottom:2px" class="icon" title="${_('private repository')}" alt="${_('private')}" src="/images/icons/lock.png"/>
55 <img style="margin-bottom:2px" class="icon" title="${_('private repository')}" alt="${_('private repository')}" src="/images/icons/lock.png"/>
47 %else:
56 %else:
48 <img style="margin-bottom:2px" class="icon" title="${_('public repository')}" alt="${_('public')}" src="/images/icons/lock_open.png"/>
57 <img style="margin-bottom:2px" class="icon" title="${_('public repository')}" alt="${_('public repository')}" src="/images/icons/lock_open.png"/>
49 %endif
58 %endif
50 <span style="font-size: 1.6em;font-weight: bold;vertical-align: baseline;">${c.repo_info.name}</span>
59 <span style="font-size: 1.6em;font-weight: bold;vertical-align: baseline;">${c.repo_info.name}</span>
51 <br/>
60 <br/>
@@ -2,24 +2,26 b''
2 <table>
2 <table>
3 <tr>
3 <tr>
4 <th class="left">${_('date')}</th>
4 <th class="left">${_('date')}</th>
5 <th class="left">${_('name')}</th>
6 <th class="left">${_('author')}</th>
5 <th class="left">${_('revision')}</th>
7 <th class="left">${_('revision')}</th>
6 <th class="left">${_('name')}</th>
7 <th class="left">${_('links')}</th>
8 <th class="left">${_('links')}</th>
8 </tr>
9 </tr>
9 %for cnt,tag in enumerate(c.repo_tags.items()):
10 %for cnt,tag in enumerate(c.repo_tags.items()):
10 <tr class="parity${cnt%2}">
11 <tr class="parity${cnt%2}">
11 <td>${h.age(tag[1].date)}</td>
12 <td>${tag[1].date} - ${h.age(tag[1].date)}</td>
12 <td>r${tag[1].revision}:${tag[1].short_id}</td>
13 <td>
13 <td>
14 <span class="logtags">
14 <span class="logtags">
15 <span class="tagtag">${h.link_to(tag[0],
15 <span class="tagtag">${h.link_to(tag[0],
16 h.url('changeset_home',repo_name=c.repo_name,revision=tag[1].short_id))}</span>
16 h.url('changeset_home',repo_name=c.repo_name,revision=tag[1].raw_id))}</span>
17 </span>
17 </span>
18 </td>
18 </td>
19 <td title="${tag[1].author}">${h.person(tag[1].author)}</td>
20 <td>r${tag[1].revision}:${h.short_id(tag[1].raw_id)}</td>
19 <td class="nowrap">
21 <td class="nowrap">
20 ${h.link_to(_('changeset'),h.url('changeset_home',repo_name=c.repo_name,revision=tag[1].short_id))}
22 ${h.link_to(_('changeset'),h.url('changeset_home',repo_name=c.repo_name,revision=tag[1].raw_id))}
21 |
23 |
22 ${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name,revision=tag[1].short_id))}
24 ${h.link_to(_('files'),h.url('files_home',repo_name=c.repo_name,revision=tag[1].raw_id))}
23 </td>
25 </td>
24 </tr>
26 </tr>
25 %endfor
27 %endfor
General Comments 0
You need to be logged in to leave comments. Login now