@@ -164,6 +164,10 @@ class FilesController(BaseController):
try:
repo = ScmModel().get_repo(repo_name)
if repo.dbrepo.enable_downloads is False:
return _('downloads disabled')
cs = repo.get_changeset(revision)
content_type = ARCHIVE_SPECS[fileformat][0]
except ChangesetDoesNotExistError:
@@ -142,7 +142,9 @@ class SummaryController(BaseController):
c.trending_languages = json.dumps({})
c.no_data = True
c.download_options = self._get_download_links(c.repo_info)
c.enable_downloads = c.repo_info.dbrepo.enable_downloads
if c.enable_downloads:
return render('summary/summary.html')
@@ -184,6 +184,7 @@ class Repository(Base, BaseModel):
user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=False, default=None)
private = Column("private", Boolean(), nullable=True, unique=None, default=None)
enable_statistics = Column("statistics", Boolean(), nullable=True, unique=None, default=True)
enable_downloads = Column("downloads", Boolean(), nullable=True, unique=None, default=True)
description = Column("description", String(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
fork_id = Column("fork_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True, unique=False, default=None)
group_id = Column("group_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=False, default=None)
@@ -447,6 +447,7 @@ def RepoForm(edit=False, old_data={}, su
description = UnicodeString(strip=True, min=1, not_empty=True)
private = StringBoolean(if_missing=False)
enable_statistics = StringBoolean(if_missing=False)
enable_downloads = StringBoolean(if_missing=False)
repo_type = OneOf(supported_backends)
if edit:
user = All(Int(not_empty=True), ValidRepoUser)
@@ -67,7 +67,15 @@
<div class="checkboxes">
${h.checkbox('enable_statistics',value="True")}
</div>
<div class="field">
<div class="label label-checkbox">
<label for="enable_downloads">${_('Enable downloads')}:</label>
${h.checkbox('enable_downloads',value="True")}
<div class="label">
<label for="user">${_('Owner')}:</label>
@@ -130,6 +130,11 @@
<div class="input-short">
%if len(c.repo_info.revisions) == 0:
${_('There are no downloads yet')}
%elif c.enable_downloads is False:
${_('Downloads are disabled for this repository')}
%if h.HasPermissionAll('hg.admin')('enable stats on from summary'):
[${h.link_to(_('enable'),h.url('edit_repo',repo_name=c.repo_name))}]
%endif
%else:
${h.select('download_options',c.repo_info.get_changeset().raw_id,c.download_options)}
%for cnt,archive in enumerate(c.repo_info._get_archives()):
Status change: