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