mirror of https://github.com/D4-project/d4-core
184 lines
6.9 KiB
HTML
184 lines
6.9 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<html>
|
|
<head>
|
|
<title>D4-Project</title>
|
|
<link rel="icon" href="{{ url_for('static', filename='img/d4-logo.png')}}">
|
|
<!-- Core CSS -->
|
|
<link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet">
|
|
<link href="{{ url_for('static', filename='font-awesome/css/font-awesome.css') }}" rel="stylesheet">
|
|
<link href="{{ url_for('static', filename='css/dataTables.bootstrap.min.css') }}" rel="stylesheet">
|
|
|
|
<!-- JS -->
|
|
<script src="{{ url_for('static', filename='js/jquery.js')}}"></script>
|
|
<script src="{{ url_for('static', filename='js/jquery.dataTables.min.js')}}"></script>
|
|
<script src="{{ url_for('static', filename='js/dataTables.bootstrap.min.js')}}"></script>
|
|
|
|
<style>
|
|
|
|
</style>
|
|
|
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
{% include 'navbar.html' %}
|
|
|
|
<div class="card-deck justify-content-center ml-0 mr-0">
|
|
<div class="card border-dark mt-3 ml-4 mr-4">
|
|
<div class="card-header bg-dark text-white">
|
|
Blacklisted IP
|
|
</div>
|
|
<div class="card-body text-dark">
|
|
|
|
<div class="row">
|
|
<div class="col-sm-5">
|
|
<table class="table table-striped table-bordered table-hover" id="myTable_1">
|
|
<thead class="thead-dark">
|
|
<tr>
|
|
<th style="max-width: 800px;">IP</th>
|
|
<th style="max-width: 800px;">Unblacklist IP</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for ip in list_blacklisted_ip_1 %}
|
|
<tr>
|
|
<td>{{ip}}</td>
|
|
<td>
|
|
<a href="{{ url_for('unblacklist_ip') }}?page={{page}}&ip={{ip}}">
|
|
<button type="button" class="btn btn-outline-danger">UnBlacklist IP</button>
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="col-sm-2">
|
|
<div class="card text-center border-danger" style="max-width: 20rem;">
|
|
<div class="card-body text-danger">
|
|
<h5 class="card-title">Blacklist IP</h5>
|
|
<input type="text" class="form-control {%if blacklisted_ip is not none %}{%if blacklisted_ip==1 %}is-valid{% else %}is-invalid{%endif%}{%endif%}" id="blacklist_ip_input" placeholder="IP Address">
|
|
<div class="invalid-feedback">
|
|
{%if blacklisted_ip==2 %}
|
|
This IP is already blacklisted
|
|
{% else %}
|
|
Incorrect IP address
|
|
{% endif %}
|
|
</div>
|
|
<div class="valid-feedback">
|
|
IP Blacklisted
|
|
</div>
|
|
<button type="button" class="btn btn-danger mt-2" onclick="window.location.href ='{{ url_for('blacklist_ip') }}?redirect=0&ip='+$('#blacklist_ip_input').val();">Blacklist IP</button>
|
|
</div>
|
|
</div>
|
|
<div class="card text-center border-success mt-4" style="max-width: 20rem;">
|
|
<div class="card-body">
|
|
<h5 class="card-title">Unblacklist IP</h5>
|
|
<input type="text" class="form-control {%if unblacklisted_ip is not none %}{%if unblacklisted_ip==1 %}is-valid{% else %}is-invalid{%endif%}{%endif%}" id="unblacklist_ip_input" placeholder="IP Address">
|
|
<div class="invalid-feedback">
|
|
{%if unblacklisted_ip==2 %}
|
|
This IP is not blacklisted
|
|
{% else %}
|
|
Incorrect IP address
|
|
{% endif %}
|
|
</div>
|
|
<div class="valid-feedback">
|
|
IP Unblacklisted
|
|
</div>
|
|
<button type="button" class="btn btn-outline-secondary mt-2" onclick="window.location.href ='{{ url_for('unblacklist_ip') }}?redirect=0&ip='+$('#unblacklist_ip_input').val();">Unblacklist IP</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-5">
|
|
<table class="table table-striped table-bordered table-hover" id="myTable_2">
|
|
<thead class="thead-dark">
|
|
<tr>
|
|
<th style="max-width: 800px;">IP</th>
|
|
<th style="max-width: 800px;">Unblacklist IP</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for ip in list_blacklisted_ip_2 %}
|
|
<tr>
|
|
<td>{{ip}}</td>
|
|
<td>
|
|
<a href="{{ url_for('unblacklist_ip') }}?page={{page}}&ip={{ip}}">
|
|
<button type="button" class="btn btn-outline-danger">UnBlacklist IP</button>
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="d-flex justify-content-center">
|
|
<nav class="mt-4" aria-label="...">
|
|
<ul class="pagination">
|
|
<li class="page-item {%if page==1%}disabled{%endif%}">
|
|
<a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page-1}}">Previous</a>
|
|
</li>
|
|
|
|
{%if page>3%}
|
|
<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page=1">1</a></li>
|
|
<li class="page-item disabled"><a class="page-link" aria-disabled="true" href="#">...</a></li>
|
|
<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page-1}}">{{page-1}}</a></li>
|
|
<li class="page-item active"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page}}">{{page}}</a></li>
|
|
{%else%}
|
|
{%if page>2%}<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page-2}}">{{page-2}}</a></li>{%endif%}
|
|
{%if page>1%}<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page-1}}">{{page-1}}</a></li>{%endif%}
|
|
<li class="page-item active"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page}}">{{page}}</a></li>
|
|
{%endif%}
|
|
|
|
{%if nb_page_max-page>3%}
|
|
<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page+1}}">{{page+1}}</a></li>
|
|
<li class="page-item disabled"><a class="page-link" aria-disabled="true" href="#">...</a></li>
|
|
<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{nb_page_max}}">{{nb_page_max}}</a></li>
|
|
{%else%}
|
|
{%if nb_page_max-page>2%}<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{nb_page_max-2}}">{{nb_page_max-2}}</a></li>{%endif%}
|
|
{%if nb_page_max-page>1%}<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{nb_page_max-1}}">{{nb_page_max-1}}</a></li>{%endif%}
|
|
{%if nb_page_max-page>0%}<li class="page-item"><a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{nb_page_max}}">{{nb_page_max}}</a></li>{%endif%}
|
|
{%endif%}
|
|
|
|
|
|
|
|
<li class="page-item {%if page==nb_page_max%}disabled{%endif%}">
|
|
<a class="page-link" href="{{ url_for('blacklisted_ip') }}?page={{page+1}}" aria-disabled="true">Next</a>
|
|
</li>
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
|
|
{% include 'navfooter.html' %}
|
|
</body>
|
|
|
|
<script>
|
|
var table
|
|
$(document).ready(function(){
|
|
|
|
table = $('#myTable_1').DataTable(
|
|
{
|
|
/*"aLengthMenu": [[5, 10, 15, 20, -1], [5, 10, 15, 20, "All"]],
|
|
"iDisplayLength": 10,*/
|
|
"order": [[ 0, "asc" ]]
|
|
}
|
|
);
|
|
|
|
table = $('#myTable_2').DataTable(
|
|
{
|
|
/*"aLengthMenu": [[5, 10, 15, 20, -1], [5, 10, 15, 20, "All"]],
|
|
"iDisplayLength": 10,*/
|
|
"order": [[ 0, "asc" ]]
|
|
}
|
|
);
|
|
|
|
});
|
|
</script>
|