##// END OF EJS Templates
#402 removed group prefix from repository name when listing repositories inside a group
marcink -
r2133:e1a54d60 beta
parent child Browse files
Show More
@@ -1,595 +1,597 b''
1 .. _changelog:
1 .. _changelog:
2
2
3 =========
3 =========
4 Changelog
4 Changelog
5 =========
5 =========
6
6
7
7
8 1.3.4 (**2012-XX-XX**)
8 1.3.4 (**2012-XX-XX**)
9 ----------------------
9 ----------------------
10
10
11 :status: in-progress
11 :status: in-progress
12 :branch: beta
12 :branch: beta
13
13
14 news
14 news
15 ++++
15 ++++
16
16
17 - Whoosh logging is now controlled by the .ini files logging setup
17 - Whoosh logging is now controlled by the .ini files logging setup
18 - added clone-url into edit form on /settings page
18 - added clone-url into edit form on /settings page
19 - added help text into repo add/edit forms
19 - added help text into repo add/edit forms
20 - created rcextensions module with additional mappings (ref #322) and
20 - created rcextensions module with additional mappings (ref #322) and
21 post push/pull/create repo hooks callbacks
21 post push/pull/create repo hooks callbacks
22 - implemented #377 Users view for his own permissions on account page
22 - implemented #377 Users view for his own permissions on account page
23 - #399 added inheritance of permissions for users group on repos groups
23 - #399 added inheritance of permissions for users group on repos groups
24 - #401 repository group is automatically pre-selected when adding repos
24 - #401 repository group is automatically pre-selected when adding repos
25 inside a repository group
25 inside a repository group
26 - added alternative HTTP 403 response when client failed to authenticate. Helps
26 - added alternative HTTP 403 response when client failed to authenticate. Helps
27 solving issues with Mercurial and LDAP
27 solving issues with Mercurial and LDAP
28 - #402 removed group prefix from repository name when listing repositories
29 inside a group
28
30
29 fixes
31 fixes
30 +++++
32 +++++
31
33
32 - fixed #390 cache invalidation problems on repos inside group
34 - fixed #390 cache invalidation problems on repos inside group
33 - fixed #385 clone by ID url was loosing proxy prefix in URL
35 - fixed #385 clone by ID url was loosing proxy prefix in URL
34 - fixed some unicode problems with waitress
36 - fixed some unicode problems with waitress
35 - fixed issue with escaping < and > in changeset commits
37 - fixed issue with escaping < and > in changeset commits
36 - fixed error occurring during recursive group creation in API
38 - fixed error occurring during recursive group creation in API
37 create_repo function
39 create_repo function
38 - fixed #393 py2.5 fixes for routes url generator
40 - fixed #393 py2.5 fixes for routes url generator
39 - fixed #397 Private repository groups shows up before login
41 - fixed #397 Private repository groups shows up before login
40 - fixed #396 fixed problems with revoking users in nested groups
42 - fixed #396 fixed problems with revoking users in nested groups
41
43
42 1.3.3 (**2012-03-02**)
44 1.3.3 (**2012-03-02**)
43 ----------------------
45 ----------------------
44
46
45 news
47 news
46 ++++
48 ++++
47
49
48
50
49 fixes
51 fixes
50 +++++
52 +++++
51
53
52 - fixed some python2.5 compatibility issues
54 - fixed some python2.5 compatibility issues
53 - fixed issues with removed repos was accidentally added as groups, after
55 - fixed issues with removed repos was accidentally added as groups, after
54 full rescan of paths
56 full rescan of paths
55 - fixes #376 Cannot edit user (using container auth)
57 - fixes #376 Cannot edit user (using container auth)
56 - fixes #378 Invalid image urls on changeset screen with proxy-prefix
58 - fixes #378 Invalid image urls on changeset screen with proxy-prefix
57 configuration
59 configuration
58 - fixed initial sorting of repos inside repo group
60 - fixed initial sorting of repos inside repo group
59 - fixes issue when user tried to resubmit same permission into user/user_groups
61 - fixes issue when user tried to resubmit same permission into user/user_groups
60 - bumped beaker version that fixes #375 leap error bug
62 - bumped beaker version that fixes #375 leap error bug
61 - fixed raw_changeset for git. It was generated with hg patch headers
63 - fixed raw_changeset for git. It was generated with hg patch headers
62 - fixed vcs issue with last_changeset for filenodes
64 - fixed vcs issue with last_changeset for filenodes
63 - fixed missing commit after hook delete
65 - fixed missing commit after hook delete
64 - fixed #372 issues with git operation detection that caused a security issue
66 - fixed #372 issues with git operation detection that caused a security issue
65 for git repos
67 for git repos
66
68
67 1.3.2 (**2012-02-28**)
69 1.3.2 (**2012-02-28**)
68 ----------------------
70 ----------------------
69
71
70 news
72 news
71 ++++
73 ++++
72
74
73
75
74 fixes
76 fixes
75 +++++
77 +++++
76
78
77 - fixed git protocol issues with repos-groups
79 - fixed git protocol issues with repos-groups
78 - fixed git remote repos validator that prevented from cloning remote git repos
80 - fixed git remote repos validator that prevented from cloning remote git repos
79 - fixes #370 ending slashes fixes for repo and groups
81 - fixes #370 ending slashes fixes for repo and groups
80 - fixes #368 improved git-protocol detection to handle other clients
82 - fixes #368 improved git-protocol detection to handle other clients
81 - fixes #366 When Setting Repository Group To Blank Repo Group Wont Be
83 - fixes #366 When Setting Repository Group To Blank Repo Group Wont Be
82 Moved To Root
84 Moved To Root
83 - fixes #371 fixed issues with beaker/sqlalchemy and non-ascii cache keys
85 - fixes #371 fixed issues with beaker/sqlalchemy and non-ascii cache keys
84 - fixed #373 missing cascade drop on user_group_to_perm table
86 - fixed #373 missing cascade drop on user_group_to_perm table
85
87
86 1.3.1 (**2012-02-27**)
88 1.3.1 (**2012-02-27**)
87 ----------------------
89 ----------------------
88
90
89 news
91 news
90 ++++
92 ++++
91
93
92
94
93 fixes
95 fixes
94 +++++
96 +++++
95
97
96 - redirection loop occurs when remember-me wasn't checked during login
98 - redirection loop occurs when remember-me wasn't checked during login
97 - fixes issues with git blob history generation
99 - fixes issues with git blob history generation
98 - don't fetch branch for git in file history dropdown. Causes unneeded slowness
100 - don't fetch branch for git in file history dropdown. Causes unneeded slowness
99
101
100 1.3.0 (**2012-02-26**)
102 1.3.0 (**2012-02-26**)
101 ----------------------
103 ----------------------
102
104
103 news
105 news
104 ++++
106 ++++
105
107
106 - code review, inspired by github code-comments
108 - code review, inspired by github code-comments
107 - #215 rst and markdown README files support
109 - #215 rst and markdown README files support
108 - #252 Container-based and proxy pass-through authentication support
110 - #252 Container-based and proxy pass-through authentication support
109 - #44 branch browser. Filtering of changelog by branches
111 - #44 branch browser. Filtering of changelog by branches
110 - mercurial bookmarks support
112 - mercurial bookmarks support
111 - new hover top menu, optimized to add maximum size for important views
113 - new hover top menu, optimized to add maximum size for important views
112 - configurable clone url template with possibility to specify protocol like
114 - configurable clone url template with possibility to specify protocol like
113 ssh:// or http:// and also manually alter other parts of clone_url.
115 ssh:// or http:// and also manually alter other parts of clone_url.
114 - enabled largefiles extension by default
116 - enabled largefiles extension by default
115 - optimized summary file pages and saved a lot of unused space in them
117 - optimized summary file pages and saved a lot of unused space in them
116 - #239 option to manually mark repository as fork
118 - #239 option to manually mark repository as fork
117 - #320 mapping of commit authors to RhodeCode users
119 - #320 mapping of commit authors to RhodeCode users
118 - #304 hashes are displayed using monospace font
120 - #304 hashes are displayed using monospace font
119 - diff configuration, toggle white lines and context lines
121 - diff configuration, toggle white lines and context lines
120 - #307 configurable diffs, whitespace toggle, increasing context lines
122 - #307 configurable diffs, whitespace toggle, increasing context lines
121 - sorting on branches, tags and bookmarks using YUI datatable
123 - sorting on branches, tags and bookmarks using YUI datatable
122 - improved file filter on files page
124 - improved file filter on files page
123 - implements #330 api method for listing nodes ar particular revision
125 - implements #330 api method for listing nodes ar particular revision
124 - #73 added linking issues in commit messages to chosen issue tracker url
126 - #73 added linking issues in commit messages to chosen issue tracker url
125 based on user defined regular expression
127 based on user defined regular expression
126 - added linking of changesets in commit messages
128 - added linking of changesets in commit messages
127 - new compact changelog with expandable commit messages
129 - new compact changelog with expandable commit messages
128 - firstname and lastname are optional in user creation
130 - firstname and lastname are optional in user creation
129 - #348 added post-create repository hook
131 - #348 added post-create repository hook
130 - #212 global encoding settings is now configurable from .ini files
132 - #212 global encoding settings is now configurable from .ini files
131 - #227 added repository groups permissions
133 - #227 added repository groups permissions
132 - markdown gets codehilite extensions
134 - markdown gets codehilite extensions
133 - new API methods, delete_repositories, grante/revoke permissions for groups
135 - new API methods, delete_repositories, grante/revoke permissions for groups
134 and repos
136 and repos
135
137
136
138
137 fixes
139 fixes
138 +++++
140 +++++
139
141
140 - rewrote dbsession management for atomic operations, and better error handling
142 - rewrote dbsession management for atomic operations, and better error handling
141 - fixed sorting of repo tables
143 - fixed sorting of repo tables
142 - #326 escape of special html entities in diffs
144 - #326 escape of special html entities in diffs
143 - normalized user_name => username in api attributes
145 - normalized user_name => username in api attributes
144 - fixes #298 ldap created users with mixed case emails created conflicts
146 - fixes #298 ldap created users with mixed case emails created conflicts
145 on saving a form
147 on saving a form
146 - fixes issue when owner of a repo couldn't revoke permissions for users
148 - fixes issue when owner of a repo couldn't revoke permissions for users
147 and groups
149 and groups
148 - fixes #271 rare JSON serialization problem with statistics
150 - fixes #271 rare JSON serialization problem with statistics
149 - fixes #337 missing validation check for conflicting names of a group with a
151 - fixes #337 missing validation check for conflicting names of a group with a
150 repositories group
152 repositories group
151 - #340 fixed session problem for mysql and celery tasks
153 - #340 fixed session problem for mysql and celery tasks
152 - fixed #331 RhodeCode mangles repository names if the a repository group
154 - fixed #331 RhodeCode mangles repository names if the a repository group
153 contains the "full path" to the repositories
155 contains the "full path" to the repositories
154 - #355 RhodeCode doesn't store encrypted LDAP passwords
156 - #355 RhodeCode doesn't store encrypted LDAP passwords
155
157
156 1.2.5 (**2012-01-28**)
158 1.2.5 (**2012-01-28**)
157 ----------------------
159 ----------------------
158
160
159 news
161 news
160 ++++
162 ++++
161
163
162 fixes
164 fixes
163 +++++
165 +++++
164
166
165 - #340 Celery complains about MySQL server gone away, added session cleanup
167 - #340 Celery complains about MySQL server gone away, added session cleanup
166 for celery tasks
168 for celery tasks
167 - #341 "scanning for repositories in None" log message during Rescan was missing
169 - #341 "scanning for repositories in None" log message during Rescan was missing
168 a parameter
170 a parameter
169 - fixed creating archives with subrepos. Some hooks were triggered during that
171 - fixed creating archives with subrepos. Some hooks were triggered during that
170 operation leading to crash.
172 operation leading to crash.
171 - fixed missing email in account page.
173 - fixed missing email in account page.
172 - Reverted Mercurial to 2.0.1 for windows due to bug in Mercurial that makes
174 - Reverted Mercurial to 2.0.1 for windows due to bug in Mercurial that makes
173 forking on windows impossible
175 forking on windows impossible
174
176
175 1.2.4 (**2012-01-19**)
177 1.2.4 (**2012-01-19**)
176 ----------------------
178 ----------------------
177
179
178 news
180 news
179 ++++
181 ++++
180
182
181 - RhodeCode is bundled with mercurial series 2.0.X by default, with
183 - RhodeCode is bundled with mercurial series 2.0.X by default, with
182 full support to largefiles extension. Enabled by default in new installations
184 full support to largefiles extension. Enabled by default in new installations
183 - #329 Ability to Add/Remove Groups to/from a Repository via AP
185 - #329 Ability to Add/Remove Groups to/from a Repository via AP
184 - added requires.txt file with requirements
186 - added requires.txt file with requirements
185
187
186 fixes
188 fixes
187 +++++
189 +++++
188
190
189 - fixes db session issues with celery when emailing admins
191 - fixes db session issues with celery when emailing admins
190 - #331 RhodeCode mangles repository names if the a repository group
192 - #331 RhodeCode mangles repository names if the a repository group
191 contains the "full path" to the repositories
193 contains the "full path" to the repositories
192 - #298 Conflicting e-mail addresses for LDAP and RhodeCode users
194 - #298 Conflicting e-mail addresses for LDAP and RhodeCode users
193 - DB session cleanup after hg protocol operations, fixes issues with
195 - DB session cleanup after hg protocol operations, fixes issues with
194 `mysql has gone away` errors
196 `mysql has gone away` errors
195 - #333 doc fixes for get_repo api function
197 - #333 doc fixes for get_repo api function
196 - #271 rare JSON serialization problem with statistics enabled
198 - #271 rare JSON serialization problem with statistics enabled
197 - #337 Fixes issues with validation of repository name conflicting with
199 - #337 Fixes issues with validation of repository name conflicting with
198 a group name. A proper message is now displayed.
200 a group name. A proper message is now displayed.
199 - #292 made ldap_dn in user edit readonly, to get rid of confusion that field
201 - #292 made ldap_dn in user edit readonly, to get rid of confusion that field
200 doesn't work
202 doesn't work
201 - #316 fixes issues with web description in hgrc files
203 - #316 fixes issues with web description in hgrc files
202
204
203 1.2.3 (**2011-11-02**)
205 1.2.3 (**2011-11-02**)
204 ----------------------
206 ----------------------
205
207
206 news
208 news
207 ++++
209 ++++
208
210
209 - added option to manage repos group for non admin users
211 - added option to manage repos group for non admin users
210 - added following API methods for get_users, create_user, get_users_groups,
212 - added following API methods for get_users, create_user, get_users_groups,
211 get_users_group, create_users_group, add_user_to_users_groups, get_repos,
213 get_users_group, create_users_group, add_user_to_users_groups, get_repos,
212 get_repo, create_repo, add_user_to_repo
214 get_repo, create_repo, add_user_to_repo
213 - implements #237 added password confirmation for my account
215 - implements #237 added password confirmation for my account
214 and admin edit user.
216 and admin edit user.
215 - implements #291 email notification for global events are now sent to all
217 - implements #291 email notification for global events are now sent to all
216 administrator users, and global config email.
218 administrator users, and global config email.
217
219
218 fixes
220 fixes
219 +++++
221 +++++
220
222
221 - added option for passing auth method for smtp mailer
223 - added option for passing auth method for smtp mailer
222 - #276 issue with adding a single user with id>10 to usergroups
224 - #276 issue with adding a single user with id>10 to usergroups
223 - #277 fixes windows LDAP settings in which missing values breaks the ldap auth
225 - #277 fixes windows LDAP settings in which missing values breaks the ldap auth
224 - #288 fixes managing of repos in a group for non admin user
226 - #288 fixes managing of repos in a group for non admin user
225
227
226 1.2.2 (**2011-10-17**)
228 1.2.2 (**2011-10-17**)
227 ----------------------
229 ----------------------
228
230
229 news
231 news
230 ++++
232 ++++
231
233
232 - #226 repo groups are available by path instead of numerical id
234 - #226 repo groups are available by path instead of numerical id
233
235
234 fixes
236 fixes
235 +++++
237 +++++
236
238
237 - #259 Groups with the same name but with different parent group
239 - #259 Groups with the same name but with different parent group
238 - #260 Put repo in group, then move group to another group -> repo becomes unavailable
240 - #260 Put repo in group, then move group to another group -> repo becomes unavailable
239 - #258 RhodeCode 1.2 assumes egg folder is writable (lockfiles problems)
241 - #258 RhodeCode 1.2 assumes egg folder is writable (lockfiles problems)
240 - #265 ldap save fails sometimes on converting attributes to booleans,
242 - #265 ldap save fails sometimes on converting attributes to booleans,
241 added getter and setter into model that will prevent from this on db model level
243 added getter and setter into model that will prevent from this on db model level
242 - fixed problems with timestamps issues #251 and #213
244 - fixed problems with timestamps issues #251 and #213
243 - fixes #266 RhodeCode allows to create repo with the same name and in
245 - fixes #266 RhodeCode allows to create repo with the same name and in
244 the same parent as group
246 the same parent as group
245 - fixes #245 Rescan of the repositories on Windows
247 - fixes #245 Rescan of the repositories on Windows
246 - fixes #248 cannot edit repos inside a group on windows
248 - fixes #248 cannot edit repos inside a group on windows
247 - fixes #219 forking problems on windows
249 - fixes #219 forking problems on windows
248
250
249 1.2.1 (**2011-10-08**)
251 1.2.1 (**2011-10-08**)
250 ----------------------
252 ----------------------
251
253
252 news
254 news
253 ++++
255 ++++
254
256
255
257
256 fixes
258 fixes
257 +++++
259 +++++
258
260
259 - fixed problems with basic auth and push problems
261 - fixed problems with basic auth and push problems
260 - gui fixes
262 - gui fixes
261 - fixed logger
263 - fixed logger
262
264
263 1.2.0 (**2011-10-07**)
265 1.2.0 (**2011-10-07**)
264 ----------------------
266 ----------------------
265
267
266 news
268 news
267 ++++
269 ++++
268
270
269 - implemented #47 repository groups
271 - implemented #47 repository groups
270 - implemented #89 Can setup google analytics code from settings menu
272 - implemented #89 Can setup google analytics code from settings menu
271 - implemented #91 added nicer looking archive urls with more download options
273 - implemented #91 added nicer looking archive urls with more download options
272 like tags, branches
274 like tags, branches
273 - implemented #44 into file browsing, and added follow branch option
275 - implemented #44 into file browsing, and added follow branch option
274 - implemented #84 downloads can be enabled/disabled for each repository
276 - implemented #84 downloads can be enabled/disabled for each repository
275 - anonymous repository can be cloned without having to pass default:default
277 - anonymous repository can be cloned without having to pass default:default
276 into clone url
278 into clone url
277 - fixed #90 whoosh indexer can index chooses repositories passed in command
279 - fixed #90 whoosh indexer can index chooses repositories passed in command
278 line
280 line
279 - extended journal with day aggregates and paging
281 - extended journal with day aggregates and paging
280 - implemented #107 source code lines highlight ranges
282 - implemented #107 source code lines highlight ranges
281 - implemented #93 customizable changelog on combined revision ranges -
283 - implemented #93 customizable changelog on combined revision ranges -
282 equivalent of githubs compare view
284 equivalent of githubs compare view
283 - implemented #108 extended and more powerful LDAP configuration
285 - implemented #108 extended and more powerful LDAP configuration
284 - implemented #56 users groups
286 - implemented #56 users groups
285 - major code rewrites optimized codes for speed and memory usage
287 - major code rewrites optimized codes for speed and memory usage
286 - raw and diff downloads are now in git format
288 - raw and diff downloads are now in git format
287 - setup command checks for write access to given path
289 - setup command checks for write access to given path
288 - fixed many issues with international characters and unicode. It uses utf8
290 - fixed many issues with international characters and unicode. It uses utf8
289 decode with replace to provide less errors even with non utf8 encoded strings
291 decode with replace to provide less errors even with non utf8 encoded strings
290 - #125 added API KEY access to feeds
292 - #125 added API KEY access to feeds
291 - #109 Repository can be created from external Mercurial link (aka. remote
293 - #109 Repository can be created from external Mercurial link (aka. remote
292 repository, and manually updated (via pull) from admin panel
294 repository, and manually updated (via pull) from admin panel
293 - beta git support - push/pull server + basic view for git repos
295 - beta git support - push/pull server + basic view for git repos
294 - added followers page and forks page
296 - added followers page and forks page
295 - server side file creation (with binary file upload interface)
297 - server side file creation (with binary file upload interface)
296 and edition with commits powered by codemirror
298 and edition with commits powered by codemirror
297 - #111 file browser file finder, quick lookup files on whole file tree
299 - #111 file browser file finder, quick lookup files on whole file tree
298 - added quick login sliding menu into main page
300 - added quick login sliding menu into main page
299 - changelog uses lazy loading of affected files details, in some scenarios
301 - changelog uses lazy loading of affected files details, in some scenarios
300 this can improve speed of changelog page dramatically especially for
302 this can improve speed of changelog page dramatically especially for
301 larger repositories.
303 larger repositories.
302 - implements #214 added support for downloading subrepos in download menu.
304 - implements #214 added support for downloading subrepos in download menu.
303 - Added basic API for direct operations on rhodecode via JSON
305 - Added basic API for direct operations on rhodecode via JSON
304 - Implemented advanced hook management
306 - Implemented advanced hook management
305
307
306 fixes
308 fixes
307 +++++
309 +++++
308
310
309 - fixed file browser bug, when switching into given form revision the url was
311 - fixed file browser bug, when switching into given form revision the url was
310 not changing
312 not changing
311 - fixed propagation to error controller on simplehg and simplegit middlewares
313 - fixed propagation to error controller on simplehg and simplegit middlewares
312 - fixed error when trying to make a download on empty repository
314 - fixed error when trying to make a download on empty repository
313 - fixed problem with '[' chars in commit messages in journal
315 - fixed problem with '[' chars in commit messages in journal
314 - fixed #99 Unicode errors, on file node paths with non utf-8 characters
316 - fixed #99 Unicode errors, on file node paths with non utf-8 characters
315 - journal fork fixes
317 - journal fork fixes
316 - removed issue with space inside renamed repository after deletion
318 - removed issue with space inside renamed repository after deletion
317 - fixed strange issue on formencode imports
319 - fixed strange issue on formencode imports
318 - fixed #126 Deleting repository on Windows, rename used incompatible chars.
320 - fixed #126 Deleting repository on Windows, rename used incompatible chars.
319 - #150 fixes for errors on repositories mapped in db but corrupted in
321 - #150 fixes for errors on repositories mapped in db but corrupted in
320 filesystem
322 filesystem
321 - fixed problem with ascendant characters in realm #181
323 - fixed problem with ascendant characters in realm #181
322 - fixed problem with sqlite file based database connection pool
324 - fixed problem with sqlite file based database connection pool
323 - whoosh indexer and code stats share the same dynamic extensions map
325 - whoosh indexer and code stats share the same dynamic extensions map
324 - fixes #188 - relationship delete of repo_to_perm entry on user removal
326 - fixes #188 - relationship delete of repo_to_perm entry on user removal
325 - fixes issue #189 Trending source files shows "show more" when no more exist
327 - fixes issue #189 Trending source files shows "show more" when no more exist
326 - fixes issue #197 Relative paths for pidlocks
328 - fixes issue #197 Relative paths for pidlocks
327 - fixes issue #198 password will require only 3 chars now for login form
329 - fixes issue #198 password will require only 3 chars now for login form
328 - fixes issue #199 wrong redirection for non admin users after creating a repository
330 - fixes issue #199 wrong redirection for non admin users after creating a repository
329 - fixes issues #202, bad db constraint made impossible to attach same group
331 - fixes issues #202, bad db constraint made impossible to attach same group
330 more than one time. Affects only mysql/postgres
332 more than one time. Affects only mysql/postgres
331 - fixes #218 os.kill patch for windows was missing sig param
333 - fixes #218 os.kill patch for windows was missing sig param
332 - improved rendering of dag (they are not trimmed anymore when number of
334 - improved rendering of dag (they are not trimmed anymore when number of
333 heads exceeds 5)
335 heads exceeds 5)
334
336
335 1.1.8 (**2011-04-12**)
337 1.1.8 (**2011-04-12**)
336 ----------------------
338 ----------------------
337
339
338 news
340 news
339 ++++
341 ++++
340
342
341 - improved windows support
343 - improved windows support
342
344
343 fixes
345 fixes
344 +++++
346 +++++
345
347
346 - fixed #140 freeze of python dateutil library, since new version is python2.x
348 - fixed #140 freeze of python dateutil library, since new version is python2.x
347 incompatible
349 incompatible
348 - setup-app will check for write permission in given path
350 - setup-app will check for write permission in given path
349 - cleaned up license info issue #149
351 - cleaned up license info issue #149
350 - fixes for issues #137,#116 and problems with unicode and accented characters.
352 - fixes for issues #137,#116 and problems with unicode and accented characters.
351 - fixes crashes on gravatar, when passed in email as unicode
353 - fixes crashes on gravatar, when passed in email as unicode
352 - fixed tooltip flickering problems
354 - fixed tooltip flickering problems
353 - fixed came_from redirection on windows
355 - fixed came_from redirection on windows
354 - fixed logging modules, and sql formatters
356 - fixed logging modules, and sql formatters
355 - windows fixes for os.kill issue #133
357 - windows fixes for os.kill issue #133
356 - fixes path splitting for windows issues #148
358 - fixes path splitting for windows issues #148
357 - fixed issue #143 wrong import on migration to 1.1.X
359 - fixed issue #143 wrong import on migration to 1.1.X
358 - fixed problems with displaying binary files, thanks to Thomas Waldmann
360 - fixed problems with displaying binary files, thanks to Thomas Waldmann
359 - removed name from archive files since it's breaking ui for long repo names
361 - removed name from archive files since it's breaking ui for long repo names
360 - fixed issue with archive headers sent to browser, thanks to Thomas Waldmann
362 - fixed issue with archive headers sent to browser, thanks to Thomas Waldmann
361 - fixed compatibility for 1024px displays, and larger dpi settings, thanks to
363 - fixed compatibility for 1024px displays, and larger dpi settings, thanks to
362 Thomas Waldmann
364 Thomas Waldmann
363 - fixed issue #166 summary pager was skipping 10 revisions on second page
365 - fixed issue #166 summary pager was skipping 10 revisions on second page
364
366
365
367
366 1.1.7 (**2011-03-23**)
368 1.1.7 (**2011-03-23**)
367 ----------------------
369 ----------------------
368
370
369 news
371 news
370 ++++
372 ++++
371
373
372 fixes
374 fixes
373 +++++
375 +++++
374
376
375 - fixed (again) #136 installation support for FreeBSD
377 - fixed (again) #136 installation support for FreeBSD
376
378
377
379
378 1.1.6 (**2011-03-21**)
380 1.1.6 (**2011-03-21**)
379 ----------------------
381 ----------------------
380
382
381 news
383 news
382 ++++
384 ++++
383
385
384 fixes
386 fixes
385 +++++
387 +++++
386
388
387 - fixed #136 installation support for FreeBSD
389 - fixed #136 installation support for FreeBSD
388 - RhodeCode will check for python version during installation
390 - RhodeCode will check for python version during installation
389
391
390 1.1.5 (**2011-03-17**)
392 1.1.5 (**2011-03-17**)
391 ----------------------
393 ----------------------
392
394
393 news
395 news
394 ++++
396 ++++
395
397
396 - basic windows support, by exchanging pybcrypt into sha256 for windows only
398 - basic windows support, by exchanging pybcrypt into sha256 for windows only
397 highly inspired by idea of mantis406
399 highly inspired by idea of mantis406
398
400
399 fixes
401 fixes
400 +++++
402 +++++
401
403
402 - fixed sorting by author in main page
404 - fixed sorting by author in main page
403 - fixed crashes with diffs on binary files
405 - fixed crashes with diffs on binary files
404 - fixed #131 problem with boolean values for LDAP
406 - fixed #131 problem with boolean values for LDAP
405 - fixed #122 mysql problems thanks to striker69
407 - fixed #122 mysql problems thanks to striker69
406 - fixed problem with errors on calling raw/raw_files/annotate functions
408 - fixed problem with errors on calling raw/raw_files/annotate functions
407 with unknown revisions
409 with unknown revisions
408 - fixed returned rawfiles attachment names with international character
410 - fixed returned rawfiles attachment names with international character
409 - cleaned out docs, big thanks to Jason Harris
411 - cleaned out docs, big thanks to Jason Harris
410
412
411 1.1.4 (**2011-02-19**)
413 1.1.4 (**2011-02-19**)
412 ----------------------
414 ----------------------
413
415
414 news
416 news
415 ++++
417 ++++
416
418
417 fixes
419 fixes
418 +++++
420 +++++
419
421
420 - fixed formencode import problem on settings page, that caused server crash
422 - fixed formencode import problem on settings page, that caused server crash
421 when that page was accessed as first after server start
423 when that page was accessed as first after server start
422 - journal fixes
424 - journal fixes
423 - fixed option to access repository just by entering http://server/<repo_name>
425 - fixed option to access repository just by entering http://server/<repo_name>
424
426
425 1.1.3 (**2011-02-16**)
427 1.1.3 (**2011-02-16**)
426 ----------------------
428 ----------------------
427
429
428 news
430 news
429 ++++
431 ++++
430
432
431 - implemented #102 allowing the '.' character in username
433 - implemented #102 allowing the '.' character in username
432 - added option to access repository just by entering http://server/<repo_name>
434 - added option to access repository just by entering http://server/<repo_name>
433 - celery task ignores result for better performance
435 - celery task ignores result for better performance
434
436
435 fixes
437 fixes
436 +++++
438 +++++
437
439
438 - fixed ehlo command and non auth mail servers on smtp_lib. Thanks to
440 - fixed ehlo command and non auth mail servers on smtp_lib. Thanks to
439 apollo13 and Johan Walles
441 apollo13 and Johan Walles
440 - small fixes in journal
442 - small fixes in journal
441 - fixed problems with getting setting for celery from .ini files
443 - fixed problems with getting setting for celery from .ini files
442 - registration, password reset and login boxes share the same title as main
444 - registration, password reset and login boxes share the same title as main
443 application now
445 application now
444 - fixed #113: to high permissions to fork repository
446 - fixed #113: to high permissions to fork repository
445 - fixed problem with '[' chars in commit messages in journal
447 - fixed problem with '[' chars in commit messages in journal
446 - removed issue with space inside renamed repository after deletion
448 - removed issue with space inside renamed repository after deletion
447 - db transaction fixes when filesystem repository creation failed
449 - db transaction fixes when filesystem repository creation failed
448 - fixed #106 relation issues on databases different than sqlite
450 - fixed #106 relation issues on databases different than sqlite
449 - fixed static files paths links to use of url() method
451 - fixed static files paths links to use of url() method
450
452
451 1.1.2 (**2011-01-12**)
453 1.1.2 (**2011-01-12**)
452 ----------------------
454 ----------------------
453
455
454 news
456 news
455 ++++
457 ++++
456
458
457
459
458 fixes
460 fixes
459 +++++
461 +++++
460
462
461 - fixes #98 protection against float division of percentage stats
463 - fixes #98 protection against float division of percentage stats
462 - fixed graph bug
464 - fixed graph bug
463 - forced webhelpers version since it was making troubles during installation
465 - forced webhelpers version since it was making troubles during installation
464
466
465 1.1.1 (**2011-01-06**)
467 1.1.1 (**2011-01-06**)
466 ----------------------
468 ----------------------
467
469
468 news
470 news
469 ++++
471 ++++
470
472
471 - added force https option into ini files for easier https usage (no need to
473 - added force https option into ini files for easier https usage (no need to
472 set server headers with this options)
474 set server headers with this options)
473 - small css updates
475 - small css updates
474
476
475 fixes
477 fixes
476 +++++
478 +++++
477
479
478 - fixed #96 redirect loop on files view on repositories without changesets
480 - fixed #96 redirect loop on files view on repositories without changesets
479 - fixed #97 unicode string passed into server header in special cases (mod_wsgi)
481 - fixed #97 unicode string passed into server header in special cases (mod_wsgi)
480 and server crashed with errors
482 and server crashed with errors
481 - fixed large tooltips problems on main page
483 - fixed large tooltips problems on main page
482 - fixed #92 whoosh indexer is more error proof
484 - fixed #92 whoosh indexer is more error proof
483
485
484 1.1.0 (**2010-12-18**)
486 1.1.0 (**2010-12-18**)
485 ----------------------
487 ----------------------
486
488
487 news
489 news
488 ++++
490 ++++
489
491
490 - rewrite of internals for vcs >=0.1.10
492 - rewrite of internals for vcs >=0.1.10
491 - uses mercurial 1.7 with dotencode disabled for maintaining compatibility
493 - uses mercurial 1.7 with dotencode disabled for maintaining compatibility
492 with older clients
494 with older clients
493 - anonymous access, authentication via ldap
495 - anonymous access, authentication via ldap
494 - performance upgrade for cached repos list - each repository has its own
496 - performance upgrade for cached repos list - each repository has its own
495 cache that's invalidated when needed.
497 cache that's invalidated when needed.
496 - performance upgrades on repositories with large amount of commits (20K+)
498 - performance upgrades on repositories with large amount of commits (20K+)
497 - main page quick filter for filtering repositories
499 - main page quick filter for filtering repositories
498 - user dashboards with ability to follow chosen repositories actions
500 - user dashboards with ability to follow chosen repositories actions
499 - sends email to admin on new user registration
501 - sends email to admin on new user registration
500 - added cache/statistics reset options into repository settings
502 - added cache/statistics reset options into repository settings
501 - more detailed action logger (based on hooks) with pushed changesets lists
503 - more detailed action logger (based on hooks) with pushed changesets lists
502 and options to disable those hooks from admin panel
504 and options to disable those hooks from admin panel
503 - introduced new enhanced changelog for merges that shows more accurate results
505 - introduced new enhanced changelog for merges that shows more accurate results
504 - new improved and faster code stats (based on pygments lexers mapping tables,
506 - new improved and faster code stats (based on pygments lexers mapping tables,
505 showing up to 10 trending sources for each repository. Additionally stats
507 showing up to 10 trending sources for each repository. Additionally stats
506 can be disabled in repository settings.
508 can be disabled in repository settings.
507 - gui optimizations, fixed application width to 1024px
509 - gui optimizations, fixed application width to 1024px
508 - added cut off (for large files/changesets) limit into config files
510 - added cut off (for large files/changesets) limit into config files
509 - whoosh, celeryd, upgrade moved to paster command
511 - whoosh, celeryd, upgrade moved to paster command
510 - other than sqlite database backends can be used
512 - other than sqlite database backends can be used
511
513
512 fixes
514 fixes
513 +++++
515 +++++
514
516
515 - fixes #61 forked repo was showing only after cache expired
517 - fixes #61 forked repo was showing only after cache expired
516 - fixes #76 no confirmation on user deletes
518 - fixes #76 no confirmation on user deletes
517 - fixes #66 Name field misspelled
519 - fixes #66 Name field misspelled
518 - fixes #72 block user removal when he owns repositories
520 - fixes #72 block user removal when he owns repositories
519 - fixes #69 added password confirmation fields
521 - fixes #69 added password confirmation fields
520 - fixes #87 RhodeCode crashes occasionally on updating repository owner
522 - fixes #87 RhodeCode crashes occasionally on updating repository owner
521 - fixes #82 broken annotations on files with more than 1 blank line at the end
523 - fixes #82 broken annotations on files with more than 1 blank line at the end
522 - a lot of fixes and tweaks for file browser
524 - a lot of fixes and tweaks for file browser
523 - fixed detached session issues
525 - fixed detached session issues
524 - fixed when user had no repos he would see all repos listed in my account
526 - fixed when user had no repos he would see all repos listed in my account
525 - fixed ui() instance bug when global hgrc settings was loaded for server
527 - fixed ui() instance bug when global hgrc settings was loaded for server
526 instance and all hgrc options were merged with our db ui() object
528 instance and all hgrc options were merged with our db ui() object
527 - numerous small bugfixes
529 - numerous small bugfixes
528
530
529 (special thanks for TkSoh for detailed feedback)
531 (special thanks for TkSoh for detailed feedback)
530
532
531
533
532 1.0.2 (**2010-11-12**)
534 1.0.2 (**2010-11-12**)
533 ----------------------
535 ----------------------
534
536
535 news
537 news
536 ++++
538 ++++
537
539
538 - tested under python2.7
540 - tested under python2.7
539 - bumped sqlalchemy and celery versions
541 - bumped sqlalchemy and celery versions
540
542
541 fixes
543 fixes
542 +++++
544 +++++
543
545
544 - fixed #59 missing graph.js
546 - fixed #59 missing graph.js
545 - fixed repo_size crash when repository had broken symlinks
547 - fixed repo_size crash when repository had broken symlinks
546 - fixed python2.5 crashes.
548 - fixed python2.5 crashes.
547
549
548
550
549 1.0.1 (**2010-11-10**)
551 1.0.1 (**2010-11-10**)
550 ----------------------
552 ----------------------
551
553
552 news
554 news
553 ++++
555 ++++
554
556
555 - small css updated
557 - small css updated
556
558
557 fixes
559 fixes
558 +++++
560 +++++
559
561
560 - fixed #53 python2.5 incompatible enumerate calls
562 - fixed #53 python2.5 incompatible enumerate calls
561 - fixed #52 disable mercurial extension for web
563 - fixed #52 disable mercurial extension for web
562 - fixed #51 deleting repositories don't delete it's dependent objects
564 - fixed #51 deleting repositories don't delete it's dependent objects
563
565
564
566
565 1.0.0 (**2010-11-02**)
567 1.0.0 (**2010-11-02**)
566 ----------------------
568 ----------------------
567
569
568 - security bugfix simplehg wasn't checking for permissions on commands
570 - security bugfix simplehg wasn't checking for permissions on commands
569 other than pull or push.
571 other than pull or push.
570 - fixed doubled messages after push or pull in admin journal
572 - fixed doubled messages after push or pull in admin journal
571 - templating and css corrections, fixed repo switcher on chrome, updated titles
573 - templating and css corrections, fixed repo switcher on chrome, updated titles
572 - admin menu accessible from options menu on repository view
574 - admin menu accessible from options menu on repository view
573 - permissions cached queries
575 - permissions cached queries
574
576
575 1.0.0rc4 (**2010-10-12**)
577 1.0.0rc4 (**2010-10-12**)
576 --------------------------
578 --------------------------
577
579
578 - fixed python2.5 missing simplejson imports (thanks to Jens BΓ€ckman)
580 - fixed python2.5 missing simplejson imports (thanks to Jens BΓ€ckman)
579 - removed cache_manager settings from sqlalchemy meta
581 - removed cache_manager settings from sqlalchemy meta
580 - added sqlalchemy cache settings to ini files
582 - added sqlalchemy cache settings to ini files
581 - validated password length and added second try of failure on paster setup-app
583 - validated password length and added second try of failure on paster setup-app
582 - fixed setup database destroy prompt even when there was no db
584 - fixed setup database destroy prompt even when there was no db
583
585
584
586
585 1.0.0rc3 (**2010-10-11**)
587 1.0.0rc3 (**2010-10-11**)
586 -------------------------
588 -------------------------
587
589
588 - fixed i18n during installation.
590 - fixed i18n during installation.
589
591
590 1.0.0rc2 (**2010-10-11**)
592 1.0.0rc2 (**2010-10-11**)
591 -------------------------
593 -------------------------
592
594
593 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
595 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
594 occure. After vcs is fixed it'll be put back again.
596 occure. After vcs is fixed it'll be put back again.
595 - templating/css rewrites, optimized css. No newline at end of file
597 - templating/css rewrites, optimized css.
@@ -1,78 +1,85 b''
1 ## DATA TABLE RE USABLE ELEMENTS
1 ## DATA TABLE RE USABLE ELEMENTS
2 ## usage:
2 ## usage:
3 ## <%namespace name="dt" file="/_data_table/_dt_elements.html"/>
3 ## <%namespace name="dt" file="/_data_table/_dt_elements.html"/>
4
4
5 <%def name="quick_menu(repo_name)">
5 <%def name="quick_menu(repo_name)">
6 <ul class="menu_items hidden">
6 <ul class="menu_items hidden">
7 <li style="border-top:1px solid #003367;margin-left:18px;padding-left:-99px"></li>
7 <li style="border-top:1px solid #003367;margin-left:18px;padding-left:-99px"></li>
8 <li>
8 <li>
9 <a title="${_('Summary')}" href="${h.url('summary_home',repo_name=repo_name)}">
9 <a title="${_('Summary')}" href="${h.url('summary_home',repo_name=repo_name)}">
10 <span class="icon">
10 <span class="icon">
11 <img src="${h.url('/images/icons/clipboard_16.png')}" alt="${_('Summary')}" />
11 <img src="${h.url('/images/icons/clipboard_16.png')}" alt="${_('Summary')}" />
12 </span>
12 </span>
13 <span>${_('Summary')}</span>
13 <span>${_('Summary')}</span>
14 </a>
14 </a>
15 </li>
15 </li>
16 <li>
16 <li>
17 <a title="${_('Changelog')}" href="${h.url('changelog_home',repo_name=repo_name)}">
17 <a title="${_('Changelog')}" href="${h.url('changelog_home',repo_name=repo_name)}">
18 <span class="icon">
18 <span class="icon">
19 <img src="${h.url('/images/icons/time.png')}" alt="${_('Changelog')}" />
19 <img src="${h.url('/images/icons/time.png')}" alt="${_('Changelog')}" />
20 </span>
20 </span>
21 <span>${_('Changelog')}</span>
21 <span>${_('Changelog')}</span>
22 </a>
22 </a>
23 </li>
23 </li>
24 <li>
24 <li>
25 <a title="${_('Files')}" href="${h.url('files_home',repo_name=repo_name)}">
25 <a title="${_('Files')}" href="${h.url('files_home',repo_name=repo_name)}">
26 <span class="icon">
26 <span class="icon">
27 <img src="${h.url('/images/icons/file.png')}" alt="${_('Files')}" />
27 <img src="${h.url('/images/icons/file.png')}" alt="${_('Files')}" />
28 </span>
28 </span>
29 <span>${_('Files')}</span>
29 <span>${_('Files')}</span>
30 </a>
30 </a>
31 </li>
31 </li>
32 <li>
32 <li>
33 <a title="${_('Fork')}" href="${h.url('repo_fork_home',repo_name=repo_name)}">
33 <a title="${_('Fork')}" href="${h.url('repo_fork_home',repo_name=repo_name)}">
34 <span class="icon">
34 <span class="icon">
35 <img src="${h.url('/images/icons/arrow_divide.png')}" alt="${_('Fork')}" />
35 <img src="${h.url('/images/icons/arrow_divide.png')}" alt="${_('Fork')}" />
36 </span>
36 </span>
37 <span>${_('Fork')}</span>
37 <span>${_('Fork')}</span>
38 </a>
38 </a>
39 </li>
39 </li>
40 </ul>
40 </ul>
41 </%def>
41 </%def>
42
42
43 <%def name="repo_name(name,rtype,private,fork_of)">
43 <%def name="repo_name(name,rtype,private,fork_of,short_name=False)">
44 <%
45 def get_name(name,short_name=short_name):
46 if short_name:
47 return name.split('/')[-1]
48 else:
49 return name
50 %>
44 <div style="white-space: nowrap">
51 <div style="white-space: nowrap">
45 ##TYPE OF REPO
52 ##TYPE OF REPO
46 %if h.is_hg(rtype):
53 %if h.is_hg(rtype):
47 <img class="icon" title="${_('Mercurial repository')}" alt="${_('Mercurial repository')}" src="${h.url('/images/icons/hgicon.png')}"/>
54 <img class="icon" title="${_('Mercurial repository')}" alt="${_('Mercurial repository')}" src="${h.url('/images/icons/hgicon.png')}"/>
48 %elif h.is_git(rtype):
55 %elif h.is_git(rtype):
49 <img class="icon" title="${_('Git repository')}" alt="${_('Git repository')}" src="${h.url('/images/icons/giticon.png')}"/>
56 <img class="icon" title="${_('Git repository')}" alt="${_('Git repository')}" src="${h.url('/images/icons/giticon.png')}"/>
50 %endif
57 %endif
51
58
52 ##PRIVATE/PUBLIC
59 ##PRIVATE/PUBLIC
53 %if private:
60 %if private:
54 <img class="icon" title="${_('private repository')}" alt="${_('private repository')}" src="${h.url('/images/icons/lock.png')}"/>
61 <img class="icon" title="${_('private repository')}" alt="${_('private repository')}" src="${h.url('/images/icons/lock.png')}"/>
55 %else:
62 %else:
56 <img class="icon" title="${_('public repository')}" alt="${_('public repository')}" src="${h.url('/images/icons/lock_open.png')}"/>
63 <img class="icon" title="${_('public repository')}" alt="${_('public repository')}" src="${h.url('/images/icons/lock_open.png')}"/>
57 %endif
64 %endif
58
65
59 ##NAME
66 ##NAME
60 ${h.link_to(name,h.url('summary_home',repo_name=name),class_="repo_name")}
67 ${h.link_to(get_name(name),h.url('summary_home',repo_name=name),class_="repo_name")}
61 %if fork_of:
68 %if fork_of:
62 <a href="${h.url('summary_home',repo_name=fork_of)}">
69 <a href="${h.url('summary_home',repo_name=fork_of)}">
63 <img class="icon" alt="${_('fork')}" title="${_('Fork of')} ${fork_of}" src="${h.url('/images/icons/arrow_divide.png')}"/></a>
70 <img class="icon" alt="${_('fork')}" title="${_('Fork of')} ${fork_of}" src="${h.url('/images/icons/arrow_divide.png')}"/></a>
64 %endif
71 %endif
65 </div>
72 </div>
66 </%def>
73 </%def>
67
74
68
75
69
76
70 <%def name="revision(name,rev,tip,author,last_msg)">
77 <%def name="revision(name,rev,tip,author,last_msg)">
71 <div>
78 <div>
72 %if rev >= 0:
79 %if rev >= 0:
73 <pre><a title="${h.tooltip('%s:\n\n%s' % (author,last_msg))}" class="tooltip" href="${h.url('changeset_home',repo_name=name,revision=tip)}">${'r%s:%s' % (rev,h.short_id(tip))}</a></pre>
80 <pre><a title="${h.tooltip('%s:\n\n%s' % (author,last_msg))}" class="tooltip" href="${h.url('changeset_home',repo_name=name,revision=tip)}">${'r%s:%s' % (rev,h.short_id(tip))}</a></pre>
74 %else:
81 %else:
75 ${_('No changesets yet')}
82 ${_('No changesets yet')}
76 %endif
83 %endif
77 </div>
84 </div>
78 </%def>
85 </%def>
@@ -1,21 +1,21 b''
1 ## -*- coding: utf-8 -*-
1 ## -*- coding: utf-8 -*-
2 <%inherit file="/base/base.html"/>
2 <%inherit file="/base/base.html"/>
3 <%def name="title()">
3 <%def name="title()">
4 ${_('Repository group')} - ${c.rhodecode_name}
4 ${_('Repository group')} - ${c.rhodecode_name}
5 </%def>
5 </%def>
6
6
7 <%def name="breadcrumbs()">
7 <%def name="breadcrumbs()">
8 <span class="groups_breadcrumbs"> ${_('Groups')}
8 <span class="groups_breadcrumbs"> ${_('Groups')}
9 %if c.group.parent_group:
9 %if c.group.parent_group:
10 &raquo; ${h.link_to(c.group.parent_group.name,h.url('repos_group_home',group_name=c.group.parent_group.group_name))}
10 &raquo; ${h.link_to(c.group.parent_group.name,h.url('repos_group_home',group_name=c.group.parent_group.group_name))}
11 %endif
11 %endif
12 &raquo; "${c.group.name}" ${_('with')}
12 &raquo; "${c.group.name}" ${_('with')}
13 </span>
13 </span>
14 </%def>
14 </%def>
15
15
16 <%def name="page_nav()">
16 <%def name="page_nav()">
17 ${self.menu('admin')}
17 ${self.menu('admin')}
18 </%def>
18 </%def>
19 <%def name="main()">
19 <%def name="main()">
20 <%include file="/index_base.html" args="parent=self"/>
20 <%include file="/index_base.html" args="parent=self,short_repo_names=True"/>
21 </%def>
21 </%def>
@@ -1,201 +1,201 b''
1 <%page args="parent" />
1 <%page args="parent" />
2 <div class="box">
2 <div class="box">
3 <!-- box / title -->
3 <!-- box / title -->
4 <div class="title">
4 <div class="title">
5 <h5>
5 <h5>
6 <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" value="${_('quick filter...')}"/> ${parent.breadcrumbs()} <span id="repo_count">0</span> ${_('repositories')}
6 <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" value="${_('quick filter...')}"/> ${parent.breadcrumbs()} <span id="repo_count">0</span> ${_('repositories')}
7 </h5>
7 </h5>
8 %if c.rhodecode_user.username != 'default':
8 %if c.rhodecode_user.username != 'default':
9 %if h.HasPermissionAny('hg.admin','hg.create.repository')():
9 %if h.HasPermissionAny('hg.admin','hg.create.repository')():
10 <ul class="links">
10 <ul class="links">
11 <li>
11 <li>
12 %if c.group:
12 %if c.group:
13 <span>${h.link_to(_('ADD REPOSITORY'),h.url('admin_settings_create_repository',parent_group=c.group.group_id))}</span>
13 <span>${h.link_to(_('ADD REPOSITORY'),h.url('admin_settings_create_repository',parent_group=c.group.group_id))}</span>
14 %else:
14 %else:
15 <span>${h.link_to(_('ADD REPOSITORY'),h.url('admin_settings_create_repository'))}</span>
15 <span>${h.link_to(_('ADD REPOSITORY'),h.url('admin_settings_create_repository'))}</span>
16 %endif
16 %endif
17 </li>
17 </li>
18 </ul>
18 </ul>
19 %endif
19 %endif
20 %endif
20 %endif
21 </div>
21 </div>
22 <!-- end box / title -->
22 <!-- end box / title -->
23 <div class="table">
23 <div class="table">
24 % if c.groups:
24 % if c.groups:
25 <div id='groups_list_wrap' class="yui-skin-sam">
25 <div id='groups_list_wrap' class="yui-skin-sam">
26 <table id="groups_list">
26 <table id="groups_list">
27 <thead>
27 <thead>
28 <tr>
28 <tr>
29 <th class="left"><a href="#">${_('Group name')}</a></th>
29 <th class="left"><a href="#">${_('Group name')}</a></th>
30 <th class="left"><a href="#">${_('Description')}</a></th>
30 <th class="left"><a href="#">${_('Description')}</a></th>
31 ##<th class="left"><a href="#">${_('Number of repositories')}</a></th>
31 ##<th class="left"><a href="#">${_('Number of repositories')}</a></th>
32 </tr>
32 </tr>
33 </thead>
33 </thead>
34
34
35 ## REPO GROUPS
35 ## REPO GROUPS
36 % for gr in c.groups:
36 % for gr in c.groups:
37 <tr>
37 <tr>
38 <td>
38 <td>
39 <div style="white-space: nowrap">
39 <div style="white-space: nowrap">
40 <img class="icon" alt="${_('Repositories group')}" src="${h.url('/images/icons/database_link.png')}"/>
40 <img class="icon" alt="${_('Repositories group')}" src="${h.url('/images/icons/database_link.png')}"/>
41 ${h.link_to(gr.name,url('repos_group_home',group_name=gr.group_name))}
41 ${h.link_to(gr.name,url('repos_group_home',group_name=gr.group_name))}
42 </div>
42 </div>
43 </td>
43 </td>
44 <td>${gr.group_description}</td>
44 <td>${gr.group_description}</td>
45 ## this is commented out since for multi nested repos can be HEAVY!
45 ## this is commented out since for multi nested repos can be HEAVY!
46 ## in number of executed queries during traversing uncomment at will
46 ## in number of executed queries during traversing uncomment at will
47 ##<td><b>${gr.repositories_recursive_count}</b></td>
47 ##<td><b>${gr.repositories_recursive_count}</b></td>
48 </tr>
48 </tr>
49 % endfor
49 % endfor
50
50
51 </table>
51 </table>
52 </div>
52 </div>
53 <div style="height: 20px"></div>
53 <div style="height: 20px"></div>
54 % endif
54 % endif
55 <div id="welcome" style="display:none;text-align:center">
55 <div id="welcome" style="display:none;text-align:center">
56 <h1><a href="${h.url('home')}">${c.rhodecode_name} ${c.rhodecode_version}</a></h1>
56 <h1><a href="${h.url('home')}">${c.rhodecode_name} ${c.rhodecode_version}</a></h1>
57 </div>
57 </div>
58 <div id='repos_list_wrap' class="yui-skin-sam">
58 <div id='repos_list_wrap' class="yui-skin-sam">
59 <%cnt=0%>
59 <%cnt=0%>
60 <%namespace name="dt" file="/_data_table/_dt_elements.html"/>
60 <%namespace name="dt" file="/_data_table/_dt_elements.html"/>
61
61
62 <table id="repos_list">
62 <table id="repos_list">
63 <thead>
63 <thead>
64 <tr>
64 <tr>
65 <th class="left"></th>
65 <th class="left"></th>
66 <th class="left">${_('Name')}</th>
66 <th class="left">${_('Name')}</th>
67 <th class="left">${_('Description')}</th>
67 <th class="left">${_('Description')}</th>
68 <th class="left">${_('Last change')}</th>
68 <th class="left">${_('Last change')}</th>
69 <th class="left">${_('Tip')}</th>
69 <th class="left">${_('Tip')}</th>
70 <th class="left">${_('Owner')}</th>
70 <th class="left">${_('Owner')}</th>
71 <th class="left">${_('RSS')}</th>
71 <th class="left">${_('RSS')}</th>
72 <th class="left">${_('Atom')}</th>
72 <th class="left">${_('Atom')}</th>
73 </tr>
73 </tr>
74 </thead>
74 </thead>
75 <tbody>
75 <tbody>
76 %for cnt,repo in enumerate(c.repos_list):
76 %for cnt,repo in enumerate(c.repos_list):
77 <tr class="parity${(cnt+1)%2}">
77 <tr class="parity${(cnt+1)%2}">
78 ##QUICK MENU
78 ##QUICK MENU
79 <td class="quick_repo_menu">
79 <td class="quick_repo_menu">
80 ${dt.quick_menu(repo['name'])}
80 ${dt.quick_menu(repo['name'])}
81 </td>
81 </td>
82 ##REPO NAME AND ICONS
82 ##REPO NAME AND ICONS
83 <td class="reponame">
83 <td class="reponame">
84 ${dt.repo_name(repo['name'],repo['dbrepo']['repo_type'],repo['dbrepo']['private'],repo['dbrepo_fork'].get('repo_name'))}
84 ${dt.repo_name(repo['name'],repo['dbrepo']['repo_type'],repo['dbrepo']['private'],repo['dbrepo_fork'].get('repo_name'),pageargs.get('short_repo_names'))}
85 </td>
85 </td>
86 ##DESCRIPTION
86 ##DESCRIPTION
87 <td><span class="tooltip" title="${h.tooltip(repo['description'])}">
87 <td><span class="tooltip" title="${h.tooltip(repo['description'])}">
88 ${h.truncate(repo['description'],60)}</span>
88 ${h.truncate(repo['description'],60)}</span>
89 </td>
89 </td>
90 ##LAST CHANGE DATE
90 ##LAST CHANGE DATE
91 <td>
91 <td>
92 <span class="tooltip" title="${repo['last_change']}">${h.age(repo['last_change'])}</span>
92 <span class="tooltip" title="${repo['last_change']}">${h.age(repo['last_change'])}</span>
93 </td>
93 </td>
94 ##LAST REVISION
94 ##LAST REVISION
95 <td>
95 <td>
96 ${dt.revision(repo['name'],repo['rev'],repo['tip'],repo['author'],repo['last_msg'])}
96 ${dt.revision(repo['name'],repo['rev'],repo['tip'],repo['author'],repo['last_msg'])}
97 </td>
97 </td>
98 ##
98 ##
99 <td title="${repo['contact']}">${h.person(repo['contact'])}</td>
99 <td title="${repo['contact']}">${h.person(repo['contact'])}</td>
100 <td>
100 <td>
101 %if c.rhodecode_user.username != 'default':
101 %if c.rhodecode_user.username != 'default':
102 <a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'],api_key=c.rhodecode_user.api_key)}"></a>
102 <a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'],api_key=c.rhodecode_user.api_key)}"></a>
103 %else:
103 %else:
104 <a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'])}"></a>
104 <a title="${_('Subscribe to %s rss feed')%repo['name']}" class="rss_icon" href="${h.url('rss_feed_home',repo_name=repo['name'])}"></a>
105 %endif:
105 %endif:
106 </td>
106 </td>
107 <td>
107 <td>
108 %if c.rhodecode_user.username != 'default':
108 %if c.rhodecode_user.username != 'default':
109 <a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'],api_key=c.rhodecode_user.api_key)}"></a>
109 <a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'],api_key=c.rhodecode_user.api_key)}"></a>
110 %else:
110 %else:
111 <a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'])}"></a>
111 <a title="${_('Subscribe to %s atom feed')%repo['name']}" class="atom_icon" href="${h.url('atom_feed_home',repo_name=repo['name'])}"></a>
112 %endif:
112 %endif:
113 </td>
113 </td>
114 </tr>
114 </tr>
115 %endfor
115 %endfor
116 </tbody>
116 </tbody>
117 </table>
117 </table>
118 </div>
118 </div>
119 </div>
119 </div>
120 </div>
120 </div>
121 <script>
121 <script>
122 YUD.get('repo_count').innerHTML = ${cnt};
122 YUD.get('repo_count').innerHTML = ${cnt};
123 var func = function(node){
123 var func = function(node){
124 return node.parentNode.parentNode.parentNode.parentNode;
124 return node.parentNode.parentNode.parentNode.parentNode;
125 }
125 }
126
126
127
127
128 // groups table sorting
128 // groups table sorting
129 var myColumnDefs = [
129 var myColumnDefs = [
130 {key:"name",label:"${_('Group Name')}",sortable:true,
130 {key:"name",label:"${_('Group Name')}",sortable:true,
131 sortOptions: { sortFunction: groupNameSort }},
131 sortOptions: { sortFunction: groupNameSort }},
132 {key:"desc",label:"${_('Description')}",sortable:true},
132 {key:"desc",label:"${_('Description')}",sortable:true},
133 ];
133 ];
134
134
135 var myDataSource = new YAHOO.util.DataSource(YUD.get("groups_list"));
135 var myDataSource = new YAHOO.util.DataSource(YUD.get("groups_list"));
136
136
137 myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
137 myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
138 myDataSource.responseSchema = {
138 myDataSource.responseSchema = {
139 fields: [
139 fields: [
140 {key:"name"},
140 {key:"name"},
141 {key:"desc"},
141 {key:"desc"},
142 ]
142 ]
143 };
143 };
144
144
145 var myDataTable = new YAHOO.widget.DataTable("groups_list_wrap", myColumnDefs, myDataSource,
145 var myDataTable = new YAHOO.widget.DataTable("groups_list_wrap", myColumnDefs, myDataSource,
146 {
146 {
147 sortedBy:{key:"name",dir:"asc"},
147 sortedBy:{key:"name",dir:"asc"},
148 MSG_SORTASC:"${_('Click to sort ascending')}",
148 MSG_SORTASC:"${_('Click to sort ascending')}",
149 MSG_SORTDESC:"${_('Click to sort descending')}"
149 MSG_SORTDESC:"${_('Click to sort descending')}"
150 }
150 }
151 );
151 );
152
152
153 // main table sorting
153 // main table sorting
154 var myColumnDefs = [
154 var myColumnDefs = [
155 {key:"menu",label:"",sortable:false,className:"quick_repo_menu hidden"},
155 {key:"menu",label:"",sortable:false,className:"quick_repo_menu hidden"},
156 {key:"name",label:"${_('Name')}",sortable:true,
156 {key:"name",label:"${_('Name')}",sortable:true,
157 sortOptions: { sortFunction: nameSort }},
157 sortOptions: { sortFunction: nameSort }},
158 {key:"desc",label:"${_('Description')}",sortable:true},
158 {key:"desc",label:"${_('Description')}",sortable:true},
159 {key:"last_change",label:"${_('Last Change')}",sortable:true,
159 {key:"last_change",label:"${_('Last Change')}",sortable:true,
160 sortOptions: { sortFunction: ageSort }},
160 sortOptions: { sortFunction: ageSort }},
161 {key:"tip",label:"${_('Tip')}",sortable:true,
161 {key:"tip",label:"${_('Tip')}",sortable:true,
162 sortOptions: { sortFunction: revisionSort }},
162 sortOptions: { sortFunction: revisionSort }},
163 {key:"owner",label:"${_('Owner')}",sortable:true},
163 {key:"owner",label:"${_('Owner')}",sortable:true},
164 {key:"rss",label:"",sortable:false},
164 {key:"rss",label:"",sortable:false},
165 {key:"atom",label:"",sortable:false},
165 {key:"atom",label:"",sortable:false},
166 ];
166 ];
167
167
168 var myDataSource = new YAHOO.util.DataSource(YUD.get("repos_list"));
168 var myDataSource = new YAHOO.util.DataSource(YUD.get("repos_list"));
169
169
170 myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
170 myDataSource.responseType = YAHOO.util.DataSource.TYPE_HTMLTABLE;
171
171
172 myDataSource.responseSchema = {
172 myDataSource.responseSchema = {
173 fields: [
173 fields: [
174 {key:"menu"},
174 {key:"menu"},
175 {key:"name"},
175 {key:"name"},
176 {key:"desc"},
176 {key:"desc"},
177 {key:"last_change"},
177 {key:"last_change"},
178 {key:"tip"},
178 {key:"tip"},
179 {key:"owner"},
179 {key:"owner"},
180 {key:"rss"},
180 {key:"rss"},
181 {key:"atom"},
181 {key:"atom"},
182 ]
182 ]
183 };
183 };
184
184
185 var myDataTable = new YAHOO.widget.DataTable("repos_list_wrap", myColumnDefs, myDataSource,
185 var myDataTable = new YAHOO.widget.DataTable("repos_list_wrap", myColumnDefs, myDataSource,
186 {
186 {
187 sortedBy:{key:"name",dir:"asc"},
187 sortedBy:{key:"name",dir:"asc"},
188 MSG_SORTASC:"${_('Click to sort ascending')}",
188 MSG_SORTASC:"${_('Click to sort ascending')}",
189 MSG_SORTDESC:"${_('Click to sort descending')}",
189 MSG_SORTDESC:"${_('Click to sort descending')}",
190 MSG_EMPTY:"${_('No records found.')}",
190 MSG_EMPTY:"${_('No records found.')}",
191 MSG_ERROR:"${_('Data error.')}",
191 MSG_ERROR:"${_('Data error.')}",
192 MSG_LOADING:"${_('Loading...')}",
192 MSG_LOADING:"${_('Loading...')}",
193 }
193 }
194 );
194 );
195 myDataTable.subscribe('postRenderEvent',function(oArgs) {
195 myDataTable.subscribe('postRenderEvent',function(oArgs) {
196 tooltip_activate();
196 tooltip_activate();
197 quick_repo_menu();
197 quick_repo_menu();
198 q_filter('q_filter',YUQ('div.table tr td a.repo_name'),func);
198 q_filter('q_filter',YUQ('div.table tr td a.repo_name'),func);
199 });
199 });
200
200
201 </script>
201 </script>
General Comments 0
You need to be logged in to leave comments. Login now