You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			64 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			HTML
		
	
			
		
		
	
	
			64 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			HTML
		
	
{% extends 'base.html' %}
 | 
						|
 | 
						|
{% block content %}
 | 
						|
    <h2>{{ user.username }}'s Attributes</h2>
 | 
						|
 | 
						|
    {% if user.public_key %}
 | 
						|
        <h3 class="mt-4">Public Key</h3>
 | 
						|
        <pre class="bg-light p-3">{{ user.public_key }}</pre>
 | 
						|
    {% else %}
 | 
						|
        <div class="alert alert-warning mt-3">
 | 
						|
            <strong>Note:</strong> No public key uploaded. 
 | 
						|
            <a href="{% url 'abac:upload_public_key' username=user.username %}" class="alert-link">Click here to upload.</a>
 | 
						|
        </div>
 | 
						|
    {% endif %}
 | 
						|
    <table class="table">
 | 
						|
        <thead>
 | 
						|
            <tr>
 | 
						|
                <th scope="col">Attribute Name</th>
 | 
						|
                <th scope="col">Last Modified</th>
 | 
						|
                <th scope="col">Value</th>
 | 
						|
            </tr>
 | 
						|
        </thead>
 | 
						|
        <tbody>
 | 
						|
            {% for attribute in attributes %}
 | 
						|
                <tr>
 | 
						|
                    <td>{{ attribute.attribute_type.name }}</td>
 | 
						|
                    <td>{{ attribute.last_modified|date:"F d, Y H:i" }}</td>
 | 
						|
                    <td>
 | 
						|
                        {% if not attribute.attribute_type.is_private %}
 | 
						|
                            {{ attribute.value }}
 | 
						|
                        {% else %}
 | 
						|
                            <i>Private</i>
 | 
						|
                        {% endif %}
 | 
						|
                    </td>
 | 
						|
                </tr>
 | 
						|
            {% empty %}
 | 
						|
                <tr>
 | 
						|
                    <td colspan="3">This user has no attributes.</td>
 | 
						|
                </tr>
 | 
						|
            {% endfor %}
 | 
						|
        </tbody>
 | 
						|
    </table>
 | 
						|
 | 
						|
    <h3 class="mt-4">Upload Precertified Definitions</h3>
 | 
						|
    <div class="alert alert-warning mt-3">
 | 
						|
        <strong>Attention:</strong> These attributes are not encrypted and are immediatley forwarded to the NGAC backend! <strong>Do NOT upload senesitive information here!</strong>
 | 
						|
    </div>
 | 
						|
    <form method="post" enctype="multipart/form-data" class="mb-3">
 | 
						|
        {% csrf_token %}
 | 
						|
        <div class="custom-file mb-3">
 | 
						|
            <input type="file" class="custom-file-input" id="precertifiedFile" name="precertified_file">
 | 
						|
            <label class="custom-file-label" for="precertifiedFile">Choose file</label>
 | 
						|
        </div>
 | 
						|
        <button type="submit" class="btn btn-primary">Upload</button>
 | 
						|
    </form>
 | 
						|
    <script>
 | 
						|
        // This script ensures that the file name is displayed in the custom file input after selection
 | 
						|
        document.querySelector('.custom-file-input').addEventListener('change', function (e) {
 | 
						|
            var fileName = document.getElementById("precertifiedFile").files[0].name;
 | 
						|
            var nextSibling = e.target.nextElementSibling;
 | 
						|
            nextSibling.innerText = fileName;
 | 
						|
        });
 | 
						|
    </script>
 | 
						|
{% endblock %} |