admin: suggest a random key on api new form (#49117)

This commit is contained in:
Nicolas Roche 2020-12-04 10:52:24 +01:00
parent d1ed3df076
commit b39e7925c9
2 changed files with 4 additions and 4 deletions

View File

@ -77,7 +77,7 @@ def test_api_access_new(pub):
resp.form['name'] = 'a new API access'
resp.form['description'] = 'description'
resp.form['access_identifier'] = 'new_access'
resp.form['access_key'] = '1234'
assert len(resp.form['access_key'].value) == 36
resp = resp.form.submit('submit')
assert resp.location == 'http://example.net/backoffice/settings/api-access/'
resp = resp.follow()
@ -89,7 +89,6 @@ def test_api_access_new(pub):
resp = app.get('/backoffice/settings/api-access/new')
resp.form['name'] = 'a new API access'
resp.form['access_identifier'] = 'changed'
resp.form['access_key'] = '1234'
resp = resp.form.submit('submit')
assert resp.html.find('div', {'class': 'error'}).text == 'This name is already used.'
@ -140,7 +139,6 @@ def test_api_access_edit(pub, api_access):
resp = app.get('/backoffice/settings/api-access/new')
resp.form['name'] = 'Jhon'
resp.form['access_identifier'] = 'jhon'
resp.form['access_key'] = '1234'
resp = resp.form.submit('submit')
resp = app.get('/backoffice/settings/api-access/1/')
resp = resp.click(href='edit')

View File

@ -14,6 +14,8 @@
# You should have received a copy of the GNU General Public License
# along with this program; if not, see <http://www.gnu.org/licenses/>.
import uuid
from quixote import get_response, redirect
from quixote.directory import Directory
from quixote.html import TemplateIO, htmltext
@ -42,7 +44,7 @@ class ApiAccessUI(object):
required=True, size=30,
value=self.api_access.access_identifier)
form.add(StringWidget, 'access_key', title=_('Access key'), required=True, size=30,
value=self.api_access.access_key)
value=self.api_access.access_key or str(uuid.uuid4()))
if not self.api_access.is_readonly():
form.add_submit('submit', _('Submit'))
form.add_submit('cancel', _('Cancel'))