Show More
@@ -79,7 +79,7 b' class SettingsController(BaseController)' | |||
|
79 | 79 | # url('admin_settings') |
|
80 | 80 | |
|
81 | 81 | defaults = RhodeCodeSetting.get_app_settings() |
|
82 | defaults.update(self.get_hg_ui_settings()) | |
|
82 | defaults.update(self._get_hg_ui_settings()) | |
|
83 | 83 | |
|
84 | 84 | return htmlfill.render( |
|
85 | 85 | render('admin/settings/settings.html'), |
@@ -123,7 +123,7 b' class SettingsController(BaseController)' | |||
|
123 | 123 | category='success') |
|
124 | 124 | |
|
125 | 125 | if setting_id == 'whoosh': |
|
126 | repo_location = self.get_hg_ui_settings()['paths_root_path'] | |
|
126 | repo_location = self._get_hg_ui_settings()['paths_root_path'] | |
|
127 | 127 | full_index = request.POST.get('full_index', False) |
|
128 | 128 | run_task(tasks.whoosh_index, repo_location, full_index) |
|
129 | 129 | h.flash(_('Whoosh reindex task scheduled'), category='success') |
@@ -220,51 +220,55 b' class SettingsController(BaseController)' | |||
|
220 | 220 | ) |
|
221 | 221 | |
|
222 | 222 | try: |
|
223 | # fix namespaces for hooks | |
|
223 | # fix namespaces for hooks and extensions | |
|
224 | 224 | _f = lambda s: s.replace('.', '_') |
|
225 | 225 | |
|
226 |
sett |
|
|
227 | .filter(RhodeCodeUi.ui_key == 'push_ssl').one() | |
|
228 | sett1.ui_value = form_result['web_push_ssl'] | |
|
226 | sett = RhodeCodeUi.get_by_key('push_ssl') | |
|
227 | sett.ui_value = form_result['web_push_ssl'] | |
|
228 | Session().add(sett) | |
|
229 | 229 | |
|
230 |
sett |
|
|
231 | .filter(RhodeCodeUi.ui_key == '/').one() | |
|
232 | sett2.ui_value = form_result['paths_root_path'] | |
|
230 | sett = RhodeCodeUi.get_by_key('/') | |
|
231 | sett.ui_value = form_result['paths_root_path'] | |
|
232 | Session().add(sett) | |
|
233 | 233 | |
|
234 | 234 | #HOOKS |
|
235 |
sett |
|
|
236 | .filter(RhodeCodeUi.ui_key == RhodeCodeUi.HOOK_UPDATE)\ | |
|
237 | .one() | |
|
238 | sett3.ui_active = bool(form_result[_f('hooks_%s' % | |
|
239 | RhodeCodeUi.HOOK_UPDATE)]) | |
|
235 | sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_UPDATE) | |
|
236 | sett.ui_active = form_result[_f('hooks_%s' % | |
|
237 | RhodeCodeUi.HOOK_UPDATE)] | |
|
238 | Session().add(sett) | |
|
240 | 239 | |
|
241 |
sett |
|
|
242 | .filter(RhodeCodeUi.ui_key == RhodeCodeUi.HOOK_REPO_SIZE)\ | |
|
243 | .one() | |
|
244 | sett4.ui_active = bool(form_result[_f('hooks_%s' % | |
|
245 | RhodeCodeUi.HOOK_REPO_SIZE)]) | |
|
240 | sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_REPO_SIZE) | |
|
241 | sett.ui_active = form_result[_f('hooks_%s' % | |
|
242 | RhodeCodeUi.HOOK_REPO_SIZE)] | |
|
243 | Session().add(sett) | |
|
244 | ||
|
245 | sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_PUSH) | |
|
246 | sett.ui_active = form_result[_f('hooks_%s' % | |
|
247 | RhodeCodeUi.HOOK_PUSH)] | |
|
248 | Session().add(sett) | |
|
246 | 249 | |
|
247 |
sett |
|
|
248 | .filter(RhodeCodeUi.ui_key == RhodeCodeUi.HOOK_PUSH)\ | |
|
249 | .one() | |
|
250 | sett5.ui_active = bool(form_result[_f('hooks_%s' % | |
|
251 | RhodeCodeUi.HOOK_PUSH)]) | |
|
250 | sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_PULL) | |
|
251 | sett.ui_active = form_result[_f('hooks_%s' % | |
|
252 | RhodeCodeUi.HOOK_PULL)] | |
|
253 | ||
|
254 | Session().add(sett) | |
|
252 | 255 | |
|
253 | sett6 = RhodeCodeUi.query()\ | |
|
254 | .filter(RhodeCodeUi.ui_key == RhodeCodeUi.HOOK_PULL)\ | |
|
255 | .one() | |
|
256 | sett6.ui_active = bool(form_result[_f('hooks_%s' % | |
|
257 | RhodeCodeUi.HOOK_PULL)]) | |
|
256 | ## EXTENSIONS | |
|
257 | sett = RhodeCodeUi.get_by_key('largefiles') | |
|
258 | sett.ui_active = form_result[_f('extensions_largefiles')] | |
|
259 | Session().add(sett) | |
|
258 | 260 | |
|
259 | Session().add(sett1) | |
|
260 | Session().add(sett2) | |
|
261 |
Session().add(sett |
|
|
262 | Session().add(sett4) | |
|
263 | Session().add(sett5) | |
|
264 | Session().add(sett6) | |
|
261 | sett = RhodeCodeUi.get_by_key('hgsubversion') | |
|
262 | sett.ui_active = form_result[_f('extensions_hgsubversion')] | |
|
263 | Session().add(sett) | |
|
264 | ||
|
265 | # sett = RhodeCodeUi.get_by_key('hggit') | |
|
266 | # sett.ui_active = form_result[_f('extensions_hggit')] | |
|
267 | # Session().add(sett) | |
|
268 | ||
|
265 | 269 | Session().commit() |
|
266 | 270 | |
|
267 |
h.flash(_('Updated |
|
|
271 | h.flash(_('Updated VCS settings'), category='success') | |
|
268 | 272 | |
|
269 | 273 | except Exception: |
|
270 | 274 | log.error(traceback.format_exc()) |
@@ -455,8 +459,7 b' class SettingsController(BaseController)' | |||
|
455 | 459 | |
|
456 | 460 | return render('admin/repos/repo_add_create_repository.html') |
|
457 | 461 | |
|
458 | @NotAnonymous() | |
|
459 | def get_hg_ui_settings(self): | |
|
462 | def _get_hg_ui_settings(self): | |
|
460 | 463 | ret = RhodeCodeUi.query().all() |
|
461 | 464 | |
|
462 | 465 | if not ret: |
@@ -471,7 +474,7 b' class SettingsController(BaseController)' | |||
|
471 | 474 | if k.find('.') != -1: |
|
472 | 475 | k = k.replace('.', '_') |
|
473 | 476 | |
|
474 |
if each.ui_section |
|
|
477 | if each.ui_section in ['hooks', 'extensions']: | |
|
475 | 478 | v = each.ui_active |
|
476 | 479 | |
|
477 | 480 | settings[each.ui_section + '_' + k] = v |
@@ -152,8 +152,7 b' class BaseVCSController(object):' | |||
|
152 | 152 | """ |
|
153 | 153 | org_proto = environ['wsgi._org_proto'] |
|
154 | 154 | #check if we have SSL required ! if not it's a bad request ! |
|
155 |
require_ssl = str2bool(RhodeCodeUi.get_by_key('push_ssl') |
|
|
156 | .scalar().ui_value) | |
|
155 | require_ssl = str2bool(RhodeCodeUi.get_by_key('push_ssl').ui_value) | |
|
157 | 156 | if require_ssl and org_proto == 'http': |
|
158 | 157 | log.debug('proto is %s and SSL is required BAD REQUEST !' |
|
159 | 158 | % org_proto) |
@@ -346,12 +346,20 b' class DbManage(object):' | |||
|
346 | 346 | hgsubversion.ui_value = '' |
|
347 | 347 | hgsubversion.ui_active = False |
|
348 | 348 | |
|
349 | # enable hggit disabled by default | |
|
350 | hggit = RhodeCodeUi() | |
|
351 | hggit.ui_section = 'extensions' | |
|
352 | hggit.ui_key = 'hggit' | |
|
353 | hggit.ui_value = '' | |
|
354 | hggit.ui_active = False | |
|
355 | ||
|
349 | 356 | self.sa.add(hooks1) |
|
350 | 357 | self.sa.add(hooks2) |
|
351 | 358 | self.sa.add(hooks3) |
|
352 | 359 | self.sa.add(hooks4) |
|
353 | 360 | self.sa.add(largefiles) |
|
354 | 361 | self.sa.add(hgsubversion) |
|
362 | self.sa.add(hggit) | |
|
355 | 363 | |
|
356 | 364 | def create_ldap_options(self, skip_existing=False): |
|
357 | 365 | """Creates ldap settings""" |
@@ -242,7 +242,7 b' class RhodeCodeUi(Base, BaseModel):' | |||
|
242 | 242 | |
|
243 | 243 | @classmethod |
|
244 | 244 | def get_by_key(cls, key): |
|
245 | return cls.query().filter(cls.ui_key == key) | |
|
245 | return cls.query().filter(cls.ui_key == key).scalar() | |
|
246 | 246 | |
|
247 | 247 | @classmethod |
|
248 | 248 | def get_builtin_hooks(cls): |
@@ -263,11 +263,11 b' class RhodeCodeUi(Base, BaseModel):' | |||
|
263 | 263 | |
|
264 | 264 | @classmethod |
|
265 | 265 | def get_repos_location(cls): |
|
266 |
return cls.get_by_key('/'). |
|
|
266 | return cls.get_by_key('/').ui_value | |
|
267 | 267 | |
|
268 | 268 | @classmethod |
|
269 | 269 | def create_or_update_hook(cls, key, val): |
|
270 |
new_ui = cls.get_by_key(key) |
|
|
270 | new_ui = cls.get_by_key(key) or cls() | |
|
271 | 271 | new_ui.ui_section = 'hooks' |
|
272 | 272 | new_ui.ui_active = True |
|
273 | 273 | new_ui.ui_key = key |
@@ -267,6 +267,10 b' def ApplicationUiSettingsForm():' | |||
|
267 | 267 | hooks_changegroup_push_logger = v.StringBoolean(if_missing=False) |
|
268 | 268 | hooks_preoutgoing_pull_logger = v.StringBoolean(if_missing=False) |
|
269 | 269 | |
|
270 | extensions_largefiles = v.StringBoolean(if_missing=False) | |
|
271 | extensions_hgsubversion = v.StringBoolean(if_missing=False) | |
|
272 | extensions_hggit = v.StringBoolean(if_missing=False) | |
|
273 | ||
|
270 | 274 | return _ApplicationUiSettingsForm |
|
271 | 275 | |
|
272 | 276 |
@@ -55,7 +55,7 b' class ReposGroupModel(BaseModel):' | |||
|
55 | 55 | Get's the repositories root path from database |
|
56 | 56 | """ |
|
57 | 57 | |
|
58 |
q = RhodeCodeUi.get_by_key('/') |
|
|
58 | q = RhodeCodeUi.get_by_key('/') | |
|
59 | 59 | return q.ui_value |
|
60 | 60 | |
|
61 | 61 | def _create_default_perms(self, new_group): |
@@ -220,6 +220,27 b'' | |||
|
220 | 220 | </div> |
|
221 | 221 | </div> |
|
222 | 222 | <div class="field"> |
|
223 | <div class="label label-checkbox"> | |
|
224 | <label>${_('Mercurial Extensions')}:</label> | |
|
225 | </div> | |
|
226 | <div class="checkboxes"> | |
|
227 | <div class="checkbox"> | |
|
228 | ${h.checkbox('extensions_largefiles','True')} | |
|
229 | <label for="extensions_hgsubversion">${_('largefiles extensions')}</label> | |
|
230 | </div> | |
|
231 | <div class="checkbox"> | |
|
232 | ${h.checkbox('extensions_hgsubversion','True')} | |
|
233 | <label for="extensions_hgsubversion">${_('hgsubversion extensions')}</label> | |
|
234 | </div> | |
|
235 | <span class="help-block">${_('Requires hgsubversion library installed. Allows clonning from svn remote locations')}</span> | |
|
236 | ##<div class="checkbox"> | |
|
237 | ## ${h.checkbox('extensions_hggit','True')} | |
|
238 | ## <label for="extensions_hggit">${_('hg-git extensions')}</label> | |
|
239 | ##</div> | |
|
240 | ##<span class="help-block">${_('Requires hg-git library installed. Allows clonning from git remote locations')}</span> | |
|
241 | </div> | |
|
242 | </div> | |
|
243 | <div class="field"> | |
|
223 | 244 | <div class="label"> |
|
224 | 245 | <label for="paths_root_path">${_('Repositories location')}:</label> |
|
225 | 246 | </div> |
General Comments 0
You need to be logged in to leave comments.
Login now