Skip to content

Commit

Permalink
web - fixed user creation from webUI
Browse files Browse the repository at this point in the history
  • Loading branch information
superstes committed Jan 8, 2022
1 parent addb9c4 commit 0e996db
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 50 deletions.
6 changes: 5 additions & 1 deletion code/web/base/ga/subviews/system/users.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@ def _list(self, msg: str = None, msg_style: str = 'success'):
users = User.objects.all().exclude(username=config.GA_ADMIN_USER)

update_user = None
create_user = False

if 'do' in self.request.GET and self.request.GET['do'] == 'create':
create_user = True

for user in users:
if 'do' in self.request.GET and self.request.GET['do'] == 'update' \
Expand All @@ -65,7 +69,7 @@ def _list(self, msg: str = None, msg_style: str = 'success'):

return render(self.request, 'system/users.html', context={
'request': self.request, 'title': TITLE, 'users': users, 'GA_GROUPS': self.GA_GROUPS, 'action_msg': msg, 'action_msg_style': msg_style,
'update_user': update_user,
'update_user': update_user, 'create_user': create_user,
})

@method_user_passes_test(authorized_to_write, login_url=config.DENIED_URL)
Expand Down
99 changes: 50 additions & 49 deletions code/web/base/ga/templates/system/users.html
Original file line number Diff line number Diff line change
Expand Up @@ -97,56 +97,57 @@
</td>
</tr>
{% endif %}
{% if user_create %}
<tr>
<td colspan="100%">
<form class="ga-form-inline" method="post" action="/system/user/">
{% csrf_token %}
<div class="row">
<div class="col">
<label>Username:
<input class="form-control" type="text" name="name" autocapitalize="none" autocomplete="username" maxlength="150" required>
</label>
</div>
<div class="col">
<label>E-Mail:
<input class="form-control" type="text" name="email" autocapitalize="none" autocomplete="username" maxlength="75" required>
</label>
</div>
<div class="col">
<label>Password:
<input class="form-control" type="password" name="password" autocomplete="current-password" maxlength="128" required>
</label>
</div>
<div class="col">
<label>Privileges:
<select class="form-control" name="privileges" required>
<option selected>{% get_empty %}</option>
{% for group, value in GA_GROUPS.items %}
<option value="{{ group }}">{{ value.pretty }}</option>
{% endfor %}
</select>
</label>
</div>
<input type="hidden" name="do" value="update" />
<input type="hidden" name="current_name" value="{{ user.username }}" />
{% include "../btn/save.html" %}
</div>
</form>
</td>
</tr>
<tr>
<td>
<form class="ga-form-inline" method="get" action="/system/user/">
<label>Create user:
<input type="hidden" name="do" value="create" />
{% include "../btn/create.html" %}
</label>
</form>
</td>
</tr>
{% endif %}
{% endfor %}
{% if create_user %}
<tr>
<td colspan="100%">
<form class="ga-form-inline" method="post" action="/system/user/">
{% csrf_token %}
<div class="row">
<div class="col">
<label>Username:
<input class="form-control" type="text" name="name" autocapitalize="none" autocomplete="username" maxlength="150" required>
</label>
</div>
<div class="col">
<label>E-Mail:
<input class="form-control" type="text" name="email" autocapitalize="none" autocomplete="username" maxlength="75" required>
</label>
</div>
<div class="col">
<label>Password:
<input class="form-control" type="password" name="password" autocomplete="current-password" maxlength="128" required>
</label>
</div>
<div class="col">
<label>Privileges:
<select class="form-control" name="privileges" required>
<option selected>{% get_empty %}</option>
{% for group, value in GA_GROUPS.items %}
<option value="{{ group }}">{{ value.pretty }}</option>
{% endfor %}
</select>
</label>
</div>
<input type="hidden" name="do" value="create" />
<input type="hidden" name="current_name" value="{{ user.username }}" />
{% include "../btn/save.html" %}
</div>
</form>
</td>
</tr>
{% else %}
<tr>
<td colspan="100%">
<form class="ga-form-inline" method="get" action="/system/user/">
<label>Create user:
<input type="hidden" name="do" value="create" />
{% include "../btn/add.html" %}
</label>
</form>
</td>
</tr>
{% endif %}
</table>
</div>
{% endblock %}

0 comments on commit 0e996db

Please sign in to comment.