tracking code: don't display form if support os disabled everywhere
This commit is contained in:
parent
6c9bc73d6e
commit
4b014889df
|
@ -326,6 +326,14 @@ def test_form_invalid_tracking_code():
|
|||
formdef.enable_tracking_codes = True
|
||||
formdef.store()
|
||||
|
||||
# create a secondary formdef, to always have the tracking code form
|
||||
# displayed on homepage
|
||||
formdef2 = FormDef()
|
||||
formdef2.name = 'test2'
|
||||
formdef2.fields = []
|
||||
formdef2.enable_tracking_codes = True
|
||||
formdef2.store()
|
||||
|
||||
formdata = formdef.data_class()()
|
||||
formdata.data = {'0': 'foobar'}
|
||||
formdata.store()
|
||||
|
|
|
@ -1010,7 +1010,15 @@ class RootDirectory(AccessControlled, Directory):
|
|||
r += message
|
||||
r += htmltext('</div>')
|
||||
|
||||
if FormDef.count():
|
||||
if self.category:
|
||||
formdefs = FormDef.select(lambda x: x.category_id == self.category.id,
|
||||
order_by='name', ignore_errors=True)
|
||||
else:
|
||||
formdefs = FormDef.select(order_by='name', ignore_errors=True)
|
||||
|
||||
formdefs = [x for x in formdefs if (not x.is_disabled() or x.disabled_redirection)]
|
||||
|
||||
if any((x for x in formdefs if x.enable_tracking_codes)):
|
||||
r += htmltext('<div id="side">')
|
||||
r += htmltext('<div id="tracking-code">')
|
||||
r += htmltext('<h3>%s</h3>') % _('Tracking code')
|
||||
|
@ -1021,14 +1029,6 @@ class RootDirectory(AccessControlled, Directory):
|
|||
r += htmltext('</div>')
|
||||
r += htmltext('</div> <!-- #side -->')
|
||||
|
||||
if self.category:
|
||||
formdefs = FormDef.select(lambda x: (
|
||||
x.category_id == self.category.id and (not x.is_disabled() or x.disabled_redirection)),
|
||||
order_by = 'name')
|
||||
else:
|
||||
formdefs = FormDef.select(lambda x: not x.is_disabled() or x.disabled_redirection, order_by = 'name',
|
||||
ignore_errors=True)
|
||||
|
||||
list_forms, advertised_forms = self.get_list_of_forms(formdefs, user)
|
||||
|
||||
if formdefs and not list_forms and not advertised_forms:
|
||||
|
|
Loading…
Reference in New Issue