backoffice: fix live url for cards submission (#39746)

This commit is contained in:
Thomas NOËL 2020-02-11 11:58:44 +01:00
parent 9ccf61e6c9
commit c1ee9e77c3
2 changed files with 17 additions and 0 deletions

View File

@ -5444,6 +5444,8 @@ def test_carddata_management(pub, studio):
carddef.name = 'foo'
carddef.fields = [
fields.StringField(id='1', label='Test', type='string', varname='foo'),
fields.StringField(id='2', label='Condi', type='string', varname='bar',
required=True, condition={'type': 'django', 'value': 'form_var_foo == "ok"'}),
]
carddef.store()
carddef.data_class().wipe()
@ -5475,6 +5477,18 @@ def test_carddata_management(pub, studio):
assert 'Add' in resp.text
resp = resp.click('Add')
resp.form['f1'] = 'blah'
live_url = resp.html.find('form').attrs['data-live-url']
assert '/backoffice/data/foo/add/live' in live_url
live_resp = app.post(live_url, params=resp.form.submit_fields())
assert live_resp.json['result']['1']['visible']
assert not live_resp.json['result']['2']['visible']
resp.form['f1'] = 'ok'
live_resp = app.post(live_url, params=resp.form.submit_fields())
assert live_resp.json['result']['1']['visible']
assert live_resp.json['result']['2']['visible']
resp.form['f2'] = 'blah'
resp = resp.form.submit('submit')
assert resp.location.endswith('/backoffice/data/foo/1/')
resp = resp.follow()

View File

@ -120,6 +120,9 @@ class CardDef(FormDef):
base_url = get_publisher().get_backoffice_url() + '/data'
return '%s/%s/' % (base_url, self.url_name)
def get_backoffice_submission_url(self):
return self.get_url() + 'add/'
def get_admin_url(self):
base_url = get_publisher().get_backoffice_url()
return '%s/cards/%s/' % (base_url, self.id)