This commit is contained in:
mgehring
2012-10-24 13:39:50 -04:00
5 changed files with 29 additions and 28 deletions
@@ -120,20 +120,6 @@ class RepositoryGrid( grids.Grid ):
elif len( select_field.options ) == 1:
return select_field.options[ 0 ][ 0 ]
return ''
class WithoutReviewsRevisionColumn( grids.GridColumn ):
def __init__( self, col_name ):
grids.GridColumn.__init__( self, col_name )
def get_value( self, trans, grid, repository ):
# Restrict the options to revisions that have not yet been reviewed.
repository_metadata_revisions = get_repository_metadata_revisions_for_review( repository, reviewed=False )
if repository_metadata_revisions:
rval = ''
for repository_metadata in repository_metadata_revisions:
rev, label, changeset_revision = get_rev_label_changeset_revision_from_repository_metadata( repository_metadata, repository=repository )
rval += '<a href="manage_repository_reviews_of_revision'
rval += '?id=%s&changeset_revision=%s">%s</a><br/>' % ( trans.security.encode_id( repository.id ), changeset_revision, label )
return rval
return ''
class TipRevisionColumn( grids.GridColumn ):
def __init__( self, col_name ):
grids.GridColumn.__init__( self, col_name )
@@ -51,8 +51,6 @@ class ComponentGrid( grids.Grid ):
class RepositoriesWithReviewsGrid( RepositoryGrid ):
# This grid filters out repositories that have been marked as deprecated.
class WithReviewsRevisionColumn( grids.GridColumn ):
def __init__( self, col_name ):
grids.GridColumn.__init__( self, col_name )
def get_value( self, trans, grid, repository ):
# Restrict to revisions that have been reviewed.
if repository.reviews:
@@ -65,6 +63,18 @@ class RepositoriesWithReviewsGrid( RepositoryGrid ):
rval += '?id=%s&changeset_revision=%s">%s</a><br/>' % ( trans.security.encode_id( repository.id ), changeset_revision, label )
return rval
return ''
class WithoutReviewsRevisionColumn( grids.GridColumn ):
def get_value( self, trans, grid, repository ):
# Restrict the options to revisions that have not yet been reviewed.
repository_metadata_revisions = get_repository_metadata_revisions_for_review( repository, reviewed=False )
if repository_metadata_revisions:
rval = ''
for repository_metadata in repository_metadata_revisions:
rev, label, changeset_revision = get_rev_label_changeset_revision_from_repository_metadata( repository_metadata, repository=repository )
rval += '<a href="manage_repository_reviews_of_revision'
rval += '?id=%s&changeset_revision=%s">%s</a><br/>' % ( trans.security.encode_id( repository.id ), changeset_revision, label )
return rval
return ''
class ReviewersColumn( grids.TextColumn ):
def get_value( self, trans, grid, repository ):
rval = ''
@@ -84,7 +94,7 @@ class RepositoriesWithReviewsGrid( RepositoryGrid ):
link=( lambda item: dict( operation="view_or_manage_repository", id=item.id ) ),
attach_popup=True ),
WithReviewsRevisionColumn( "Reviewed revisions" ),
RepositoryGrid.WithoutReviewsRevisionColumn( "Revisions for review" ),
WithoutReviewsRevisionColumn( "Revisions for review" ),
RepositoryGrid.UserColumn( "Owner", attach_popup=False ),
ReviewersColumn( "Reviewers", attach_popup=False )
]
@@ -644,7 +654,7 @@ class RepositoryReviewController( BaseUIController, ItemRatings ):
repo_dir = repository.repo_path
repo = hg.repository( get_configured_ui(), repo_dir )
metadata_revision_hashes = [ metadata_revision.changeset_revision for metadata_revision in repository.metadata_revisions ]
reviewed_revision_hashes = [ reviewed_revisions.changeset_revision for reviewed_revisions in repository.reviewed_revisions ]
reviewed_revision_hashes = [ review.changeset_revision for review in repository.reviews ]
reviews_dict = odict()
for changeset in get_reversed_changelog_changesets( repo ):
ctx = repo.changectx( changeset )
@@ -657,7 +667,10 @@ class RepositoryReviewController( BaseUIController, ItemRatings ):
# Determine if the current user can add a review to this revision.
can_add_review = trans.user not in [ repository_review.user for repository_review in repository_reviews ]
repository_metadata = get_repository_metadata_by_changeset_revision( trans, repository_id, changeset_revision )
repository_metadata_reviews = util.listify( repository_metadata.reviews )
if repository_metadata:
repository_metadata_reviews = util.listify( repository_metadata.reviews )
else:
repository_metadata_reviews = []
else:
repository_reviews = []
repository_metadata_reviews = []
@@ -48,13 +48,12 @@ class UploadController( BaseUIController ):
message = 'No files were entered on the upload form.'
status = 'error'
uploaded_file = None
elif url and url.startswith("hg"):
# Use mercurial clone to fetch repository, contents will then
# be copied over.
elif url and url.startswith( 'hg' ):
# Use mercurial clone to fetch repository, contents will then be copied over.
uploaded_directory = tempfile.mkdtemp()
repo_url = "http%s" % url[len("hg"):]
repo_url = repo_url.encode('ascii', 'replace')
commands.clone(get_configured_ui(), repo_url, uploaded_directory)
repo_url = 'http%s' % url[ len( 'hg' ): ]
repo_url = repo_url.encode( 'ascii', 'replace' )
commands.clone( get_configured_ui(), repo_url, uploaded_directory )
elif url:
valid_url = True
try:
@@ -85,7 +85,10 @@
<input name="url" type="textfield" value="${url | h}" size="40"/>
</div>
<div class="toolParamHelp" style="clear: both;">
Enter a URL to upload your files via http.
Enter a URL to upload your files via http. URLs that point to mercurial repositories (URLs that start with hg:// or hgs://)
are allowed. This mechanism results in the tip revision of an external mercurial repository being added to the tool shed
repository as a single new changeset. The revision history of the originating external mercurial repository is not uploaded
to the tool shed repository.
</div>
<div style="clear: both"></div>
</div>
@@ -114,14 +114,14 @@
has_metadata_str = '<table border="0"><tr><td bgcolor="#D8D8D8">Repository metadata is associated with this change set.</td></tr></table>'
else:
has_metadata_str = ''
display_date = changeset[ 'display_date' ]
%>
<% display_date = changeset[ 'display_date' ] %>
%if test_date != display_date:
<tr colspan="2"><td bgcolor="#D8D8D8">${display_date}</td></tr>
%endif
<tr>
<td>
%if is_admin and has_metadata_str:
%if has_metadata_str:
<div class="form-row">
${has_metadata_str}
</div>