mirror of
https://github.com/retspen/webvirtcloud
synced 2024-11-01 03:54:15 +00:00
140 lines
8.9 KiB
HTML
140 lines
8.9 KiB
HTML
{% extends "base.html" %}
|
|
{% load i18n %}
|
|
{% block title %}{% trans "User" %} - {{ user }}{% endblock %}
|
|
{% block content %}
|
|
<!-- Page Heading -->
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
{% include 'create_user_inst_block.html' %}
|
|
<h2 class="page-header">{{ user }}</h2>
|
|
</div>
|
|
</div>
|
|
<!-- /.row -->
|
|
|
|
{% include 'errors_block.html' %}
|
|
|
|
{% if request.user.is_superuser and publickeys %}
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
<div class="table-responsive">
|
|
<table class="table table-bordered table-hover">
|
|
<thead>
|
|
<tr>
|
|
<th scope="col">{% trans "Key name" %}</th>
|
|
<th scope="col">{% trans "Public key" %}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for publickey in publickeys %}
|
|
<tr>
|
|
<td>{{ publickey.keyname }}</td>
|
|
<td title="{{ publickey.keypublic }}">{{ publickey.keypublic|truncatechars:64 }}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
{% if not user_insts %}
|
|
<div class="col-lg-12">
|
|
<div class="alert alert-warning alert-dismissable">
|
|
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
|
<i class="fa fa-exclamation-triangle"></i> <strong>{% trans "Warning" %}:</strong> {% trans "User doesn't have any Instance" %}
|
|
</div>
|
|
</div>
|
|
{% else %}
|
|
<div class="table-responsive">
|
|
<table class="table table-bordered table-hover">
|
|
<thead>
|
|
<tr>
|
|
<th scope="col">#</th>
|
|
<th scope="col">{% trans "Instance" %}</th>
|
|
<th scope="col">{% trans "VNC" %}</th>
|
|
<th scope="col">{% trans "Resize" %}</th>
|
|
<th scope="col">{% trans "Delete" %}</th>
|
|
<th scope="colgroup" colspan="2">{% trans "Action" %}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for inst in user_insts %}
|
|
<tr>
|
|
<td>{{ forloop.counter }}</td>
|
|
<td><a href="{% url 'instance' inst.instance.compute.id inst.instance.name %}">{{ inst.instance.name }}</a></td>
|
|
<td>{{ inst.is_vnc }}</td>
|
|
<td>{{ inst.is_change }}</td>
|
|
<td>{{ inst.is_delete }}</td>
|
|
<td style="width:5px;">
|
|
<a href="#editPriv{{ forloop.counter }}" type="button" class="btn btn-sm btn-secondary" data-toggle="modal">
|
|
<span class="fa fa-pencil" aria-hidden="true"></span>
|
|
</a>
|
|
|
|
<!-- Modal pool -->
|
|
<div class="modal fade" id="editPriv{{ forloop.counter }}" tabindex="-1" role="dialog" aria-labelledby="editPrivLabel" aria-hidden="true">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h5 class="modal-title">{% trans "Edit privilegies for" %} {{ inst.instance.name }}</h5>
|
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<form method="post" action="" role="form" aria-label="Edit privileges form">{% csrf_token %}
|
|
<input type="hidden" name="user_inst" value="{{ inst.id }}">
|
|
<div class="form-group row">
|
|
<label class="col-sm-4 col-form-label">{% trans "VNC" %}</label>
|
|
<div class="col-sm-6">
|
|
<select class="form-control" name="inst_vnc">
|
|
<option value="">{% trans 'False' %}</option>
|
|
<option value="1" {% if inst.is_vnc %}selected{% endif %}>True</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="form-group row">
|
|
<label class="col-sm-4 col-form-label">{% trans "Resize" %}</label>
|
|
<div class="col-sm-6">
|
|
<select class="form-control" name="inst_change">
|
|
<option value="">{% trans 'False' %}</option>
|
|
<option value="1" {% if inst.is_change %}selected{% endif %}>True</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="form-group row">
|
|
<label class="col-sm-4 col-form-label">{% trans "Delete" %}</label>
|
|
<div class="col-sm-6">
|
|
<select class="form-control" name="inst_delete">
|
|
<option value="">{% trans 'False' %}</option>
|
|
<option value="1" {% if inst.is_delete %}selected{% endif %}>True</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" class="btn btn-secondary" data-dismiss="modal">{% trans "Close" %}</button>
|
|
<button type="submit" class="btn btn-primary" name="permission">{% trans "Edit" %}</button>
|
|
</div>
|
|
</form>
|
|
</div> <!-- /.modal-content -->
|
|
</div> <!-- /.modal-dialog -->
|
|
</div> <!-- /.modal -->
|
|
</td>
|
|
<td style="width:5px;">
|
|
<form action="" method="post" role="form" aria-label="Delete user form">{% csrf_token %}
|
|
<input type="hidden" name="user_inst" value="{{ inst.id }}">
|
|
<button type="submit" class="btn btn-sm btn-secondary" name="delete" title="{% trans "Delete" %}" onclick="return confirm('{% trans "Are you sure?" %}')">
|
|
<span class="fa fa-trash" aria-hidden="true"></span>
|
|
</button>
|
|
</form>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|