<%inherit file="/base.mako"/> <%def name="render_tool_shed_repository_actions( repository, metadata=None, changeset_revision=None )"> <% from tool_shed.util.review_util import can_browse_repository_reviews, changeset_revision_reviewed_by_user, get_review_by_repository_id_changeset_revision_user_id from tool_shed.util.metadata_util import is_malicious if repository.metadata_revisions: has_metadata = True else: has_metadata = False is_admin = trans.user_is_admin() if is_admin or trans.app.security_agent.user_can_administer_repository( trans.user, repository ): can_administer = True else: can_administer = False if repository.deprecated: is_deprecated = True else: is_deprecated = False if repository.is_new( trans.app ): is_new = True else: is_new = False if is_malicious( trans.app, trans.security.encode_id( repository.id ), repository.tip( trans.app ) ): changeset_is_malicious = True else: changeset_is_malicious = False can_browse_contents = not is_new if can_browse_repository_reviews( trans.app, trans.user, repository ): can_browse_reviews = True else: can_browse_reviews = False if trans.user and trans.user != repository.user: can_contact_owner = True else: can_contact_owner = False if not is_new and trans.user and ( is_admin or repository.user == trans.user ) and not is_deprecated: can_deprecate = True else: can_deprecate = False if not is_deprecated and trans.app.security_agent.can_push( trans.app, trans.user, repository ): can_push = True else: can_push = False if not is_deprecated and not is_new and not changeset_is_malicious: can_download = True else: can_download = False if ( can_administer or can_push ) and not repository.deleted and not repository.deprecated and not is_new: can_reset_all_metadata = True else: can_reset_all_metadata = False if can_push and not is_deprecated: can_upload = True else: can_upload = False if not is_new and not is_deprecated and trans.user and repository.user != trans.user: can_rate = True else: can_rate = False if metadata is not None and changeset_revision is not None: if has_metadata and not is_deprecated and trans.app.security_agent.user_can_review_repositories( trans.user ): can_review_repository = True else: can_review_repository = False if changeset_revision_reviewed_by_user( trans.user, repository, changeset_revision ): reviewed_by_user = True else: reviewed_by_user = False else: can_review_repository = False reviewed_by_user = False if reviewed_by_user: review = get_review_by_repository_id_changeset_revision_user_id( app=trans.app, repository_id=trans.security.encode_id( repository.id ), changeset_revision=changeset_revision, user_id=trans.security.encode_id( trans.user.id ) ) review_id = trans.security.encode_id( review.id ) else: review_id = None if not is_new and not is_deprecated: can_set_metadata = True else: can_set_metadata = False if changeset_revision is not None: if changeset_revision == repository.tip( trans.app ): changeset_revision_is_repository_tip = True else: changeset_revision_is_repository_tip = False else: changeset_revision_is_repository_tip = False if trans.user and ( is_admin or repository.user == trans.user ) and is_deprecated: can_undeprecate = True else: can_undeprecate = False can_view_change_log = not is_new if can_push: browse_label = 'Browse or delete repository tip files' else: browse_label = 'Browse repository tip files' %>

<%def name="render_galaxy_repository_actions( repository=None )">