##// END OF EJS Templates
implemented #84 downloads can be enabled/disabled per each repository from now.
marcink -
r962:72f008ed beta
parent child Browse files
Show More
@@ -164,6 +164,10 b' class FilesController(BaseController):'
164
164
165 try:
165 try:
166 repo = ScmModel().get_repo(repo_name)
166 repo = ScmModel().get_repo(repo_name)
167
168 if repo.dbrepo.enable_downloads is False:
169 return _('downloads disabled')
170
167 cs = repo.get_changeset(revision)
171 cs = repo.get_changeset(revision)
168 content_type = ARCHIVE_SPECS[fileformat][0]
172 content_type = ARCHIVE_SPECS[fileformat][0]
169 except ChangesetDoesNotExistError:
173 except ChangesetDoesNotExistError:
@@ -142,7 +142,9 b' class SummaryController(BaseController):'
142 c.trending_languages = json.dumps({})
142 c.trending_languages = json.dumps({})
143 c.no_data = True
143 c.no_data = True
144
144
145 c.download_options = self._get_download_links(c.repo_info)
145 c.enable_downloads = c.repo_info.dbrepo.enable_downloads
146 if c.enable_downloads:
147 c.download_options = self._get_download_links(c.repo_info)
146
148
147 return render('summary/summary.html')
149 return render('summary/summary.html')
148
150
@@ -184,6 +184,7 b' class Repository(Base, BaseModel):'
184 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=False, default=None)
184 user_id = Column("user_id", Integer(), ForeignKey('users.user_id'), nullable=False, unique=False, default=None)
185 private = Column("private", Boolean(), nullable=True, unique=None, default=None)
185 private = Column("private", Boolean(), nullable=True, unique=None, default=None)
186 enable_statistics = Column("statistics", Boolean(), nullable=True, unique=None, default=True)
186 enable_statistics = Column("statistics", Boolean(), nullable=True, unique=None, default=True)
187 enable_downloads = Column("downloads", Boolean(), nullable=True, unique=None, default=True)
187 description = Column("description", String(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
188 description = Column("description", String(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
188 fork_id = Column("fork_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True, unique=False, default=None)
189 fork_id = Column("fork_id", Integer(), ForeignKey('repositories.repo_id'), nullable=True, unique=False, default=None)
189 group_id = Column("group_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=False, default=None)
190 group_id = Column("group_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=False, default=None)
@@ -447,6 +447,7 b' def RepoForm(edit=False, old_data={}, su'
447 description = UnicodeString(strip=True, min=1, not_empty=True)
447 description = UnicodeString(strip=True, min=1, not_empty=True)
448 private = StringBoolean(if_missing=False)
448 private = StringBoolean(if_missing=False)
449 enable_statistics = StringBoolean(if_missing=False)
449 enable_statistics = StringBoolean(if_missing=False)
450 enable_downloads = StringBoolean(if_missing=False)
450 repo_type = OneOf(supported_backends)
451 repo_type = OneOf(supported_backends)
451 if edit:
452 if edit:
452 user = All(Int(not_empty=True), ValidRepoUser)
453 user = All(Int(not_empty=True), ValidRepoUser)
@@ -67,7 +67,15 b''
67 <div class="checkboxes">
67 <div class="checkboxes">
68 ${h.checkbox('enable_statistics',value="True")}
68 ${h.checkbox('enable_statistics',value="True")}
69 </div>
69 </div>
70 </div>
70 </div>
71 <div class="field">
72 <div class="label label-checkbox">
73 <label for="enable_downloads">${_('Enable downloads')}:</label>
74 </div>
75 <div class="checkboxes">
76 ${h.checkbox('enable_downloads',value="True")}
77 </div>
78 </div>
71 <div class="field">
79 <div class="field">
72 <div class="label">
80 <div class="label">
73 <label for="user">${_('Owner')}:</label>
81 <label for="user">${_('Owner')}:</label>
@@ -130,6 +130,11 b''
130 <div class="input-short">
130 <div class="input-short">
131 %if len(c.repo_info.revisions) == 0:
131 %if len(c.repo_info.revisions) == 0:
132 ${_('There are no downloads yet')}
132 ${_('There are no downloads yet')}
133 %elif c.enable_downloads is False:
134 ${_('Downloads are disabled for this repository')}
135 %if h.HasPermissionAll('hg.admin')('enable stats on from summary'):
136 [${h.link_to(_('enable'),h.url('edit_repo',repo_name=c.repo_name))}]
137 %endif
133 %else:
138 %else:
134 ${h.select('download_options',c.repo_info.get_changeset().raw_id,c.download_options)}
139 ${h.select('download_options',c.repo_info.get_changeset().raw_id,c.download_options)}
135 %for cnt,archive in enumerate(c.repo_info._get_archives()):
140 %for cnt,archive in enumerate(c.repo_info._get_archives()):
General Comments 0
You need to be logged in to leave comments. Login now