mirror of https://github.com/Aidaho12/haproxy-wi
v7.2.4.0: Update requirements and refactor date formatting function
The requirements for el9, deb, and main have been updated to specifically use version 2.27.1 of the "requests" package. In addition, the date formatting function get_time_zoned_date in common.py has been refactored. The default format for the date has been moved to the function arguments, and the function now also checks if the provided date is an instance of datetime before processing it.pull/381/head
parent
5b98f1b611
commit
1954b60e13
|
@ -40,6 +40,8 @@ def get_time_zoned_date(date: datetime, fmt: str = '%Y-%m-%d %H:%M:%S') -> str:
|
|||
:rtype: str
|
||||
"""
|
||||
date_format = '%Y-%m-%d %H:%M:%S'
|
||||
if not fmt:
|
||||
fmt = date_format
|
||||
if not isinstance(date, datetime):
|
||||
date = datetime.strptime(date, date_format)
|
||||
native = _convert_to_time_zone(date)
|
||||
|
|
|
@ -10,7 +10,7 @@ function showHapserversCallBack(serv, hostnamea, service) {
|
|||
$.ajax( {
|
||||
url: "/app/service/" + service + "/" + serv + "/last-edit",
|
||||
beforeSend: function() {
|
||||
$("#edit_date_"+hostnamea).html('<img class="loading_small_haproxyservers" src="/app/static/images/loading.gif" />');
|
||||
$("#edit_date_"+hostnamea).html('<img class="loading_small_haproxyservers" src="/images/loading.gif" />');
|
||||
},
|
||||
type: "GET",
|
||||
success: function( data ) {
|
||||
|
@ -32,7 +32,7 @@ function overviewHapserverBackends(serv, hostnamea, service) {
|
|||
$.ajax( {
|
||||
url: "/app/service/" + service + "/backends/" + serv[0],
|
||||
beforeSend: function() {
|
||||
$("#top-"+hostnamea).html('<img class="loading_small" style="padding-left: 45%;" src="/app/static/images/loading.gif" />');
|
||||
$("#top-"+hostnamea).html('<img class="loading_small" style="padding-left: 45%;" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
if (data.indexOf('error:') != '-1') {
|
||||
|
@ -59,7 +59,7 @@ function showOverviewCallBack(serv, hostnamea) {
|
|||
$.ajax( {
|
||||
url: "/app/overview/server/"+serv,
|
||||
beforeSend: function() {
|
||||
$("#"+hostnamea).html('<img class="loading_small" src="/app/static/images/loading.gif" />');
|
||||
$("#"+hostnamea).html('<img class="loading_small" src="/images/loading.gif" />');
|
||||
},
|
||||
type: "GET",
|
||||
success: function( data ) {
|
||||
|
@ -77,7 +77,7 @@ function showServicesOverview() {
|
|||
$.ajax( {
|
||||
url: "/app/overview/services",
|
||||
beforeSend: function() {
|
||||
$("#services_ovw").html('<img class="loading_small_bin_bout" style="padding-left: 100%;padding-top: 40px;padding-bottom: 40px;" src="/app/static/images/loading.gif" />');
|
||||
$("#services_ovw").html('<img class="loading_small_bin_bout" style="padding-left: 100%;padding-top: 40px;padding-bottom: 40px;" src="/images/loading.gif" />');
|
||||
|
||||
},
|
||||
type: "GET",
|
||||
|
@ -321,8 +321,8 @@ function showBytes(serv) {
|
|||
},
|
||||
type: "POST",
|
||||
beforeSend: function() {
|
||||
$("#show_bin_bout").html('<img class="loading_small_bin_bout" src="/app/static/images/loading.gif" />');
|
||||
$("#sessions").html('<img class="loading_small_bin_bout" src="/app/static/images/loading.gif" />');
|
||||
$("#show_bin_bout").html('<img class="loading_small_bin_bout" src="/images/loading.gif" />');
|
||||
$("#sessions").html('<img class="loading_small_bin_bout" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
|
@ -343,7 +343,7 @@ function showNginxConnections(serv) {
|
|||
},
|
||||
type: "POST",
|
||||
beforeSend: function() {
|
||||
$("#sessions").html('<img class="loading_small_bin_bout" src="/app/static/images/loading.gif" />');
|
||||
$("#sessions").html('<img class="loading_small_bin_bout" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
|
@ -364,7 +364,7 @@ function showApachekBytes(serv) {
|
|||
},
|
||||
type: "POST",
|
||||
beforeSend: function() {
|
||||
$("#sessions").html('<img class="loading_small_bin_bout" src="/app/static/images/loading.gif" />');
|
||||
$("#sessions").html('<img class="loading_small_bin_bout" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
|
@ -385,7 +385,7 @@ function keepalivedBecameMaster(serv) {
|
|||
},
|
||||
type: "POST",
|
||||
beforeSend: function() {
|
||||
$("#bin_bout").html('<img class="loading_small_bin_bout" src="/app/static/images/loading.gif" />');
|
||||
$("#bin_bout").html('<img class="loading_small_bin_bout" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
|
@ -407,7 +407,7 @@ function showUsersOverview() {
|
|||
// },
|
||||
type: "GET",
|
||||
beforeSend: function() {
|
||||
$("#users-table").html('<img class="loading_small_bin_bout" style="padding-left: 100%;padding-top: 40px;padding-bottom: 40px;" src="/app/static/images/loading.gif" />');
|
||||
$("#users-table").html('<img class="loading_small_bin_bout" style="padding-left: 100%;padding-top: 40px;padding-bottom: 40px;" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
|
@ -428,7 +428,7 @@ function showSubOverview() {
|
|||
// },
|
||||
type: "GET",
|
||||
beforeSend: function() {
|
||||
$("#sub-table").html('<img class="loading_small_bin_bout" style="padding-left: 40%;padding-top: 40px;padding-bottom: 40px;" src="/app/static/images/loading.gif" />');
|
||||
$("#sub-table").html('<img class="loading_small_bin_bout" style="padding-left: 40%;padding-top: 40px;padding-bottom: 40px;" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
|
@ -576,13 +576,13 @@ function ShowOverviewLogs() {
|
|||
url: "/app/overview/logs",
|
||||
type: "GET",
|
||||
beforeSend: function() {
|
||||
$("#overview-logs").html('<img class="loading_small_bin_bout" style="padding-left: 40%;padding-top: 40px;padding-bottom: 40px;" src="/app/static/images/loading.gif" />');
|
||||
$("#overview-logs").html('<img class="loading_small_bin_bout" style="padding-left: 40%;padding-top: 40px;padding-bottom: 40px;" src="/images/loading.gif" />');
|
||||
},
|
||||
success: function( data ) {
|
||||
data = data.replace(/\s+/g,' ');
|
||||
$("#overview-logs").html(data);
|
||||
$.getScript("/inc/fontawesome.min.js")
|
||||
$.getScript("/inc/overview.js")
|
||||
$.getScript("/app/static/js/overview.js")
|
||||
}
|
||||
} );
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
var awesome = "/inc/fontawesome.min.js"
|
||||
var waf = "/app/static/js/waf.js"
|
||||
var overview = "/inc/overview.js"
|
||||
var overview = "/app/static/js/overview.js"
|
||||
function showOverviewWaf(serv, hostnamea) {
|
||||
var service = cur_url[1];
|
||||
if (service == 'haproxy') {
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
{% set header_params = {'add-header': 'add-header', 'set-header': 'set-header', 'del-header': 'del-header'} %}
|
||||
{% set if_values = {'1':'Host name starts with','2':'Host name ends with','3':'Path starts with','4':'Path ends with', '6': 'Src ip'} %}
|
||||
|
||||
<script src="/inc/add.js"></script>
|
||||
<script src="/app/static/js/add.js"></script>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#create" title="{{lang.words.add|title()}} {{lang.words.proxy}}: {{lang.words.create|title()}} {{lang.words.proxy}} - Roxy-WI">{{lang.words.create|title()}} {{lang.words.proxy}}</a></li>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
{% from 'include/input_macros.html' import input, checkbox, select %}
|
||||
{% set balance_params = dict() %}
|
||||
{% set balance_params = {'ip_hash':'ip_hash','least_conn':'least_conn','random':'random', 'round_robin': 'round-robin'} %}
|
||||
<script src="/inc/add_nginx.js"></script>
|
||||
<script src="/app/static/js/add_nginx.js"></script>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#create" title="{{lang.words.add|title()}} {{lang.words.proxy}}: {{lang.words.add|title()}} {{lang.words.proxy}} - Roxy-WI">{{lang.words.add|title()}} {{lang.words.proxy}}</a></li>
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
<script src="/inc/codemirror/mode/nginx.js"></script>
|
||||
<script src="/inc/codemirror/mode/haproxy.js"></script>
|
||||
<script src="/inc/codemirror/keymap/sublime.js"></script>
|
||||
<script src="/inc/configshow.js"></script>
|
||||
<script src="/app/static/js/configshow.js"></script>
|
||||
{% if is_serv_protected and g.user_params['role'] > 2 %}
|
||||
<meta http-equiv="refresh" content="0; url=/app/service">
|
||||
{% else %}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
{% from 'include/input_macros.html' import input, checkbox, copy_to_clipboard %}
|
||||
<script src="/inc/users.js"></script>
|
||||
<script src="/app/static/js/ha.js"></script>
|
||||
<script src="/inc/overview.js"></script>
|
||||
<script src="/app/static/js/overview.js"></script>
|
||||
<link href="{{ url_for('static', filename='css/servers.css') }}" rel="stylesheet"/>
|
||||
<link href="{{ url_for('static', filename='css/smon.css') }}" rel="stylesheet">
|
||||
<link href="{{ url_for('static', filename='css/ha.css') }}" rel="stylesheet">
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
'smon': 'SMON',
|
||||
}
|
||||
%}
|
||||
<script defer src="/inc/admin_settings.js"></script>
|
||||
<script defer src="/app/static/js/admin_settings.js"></script>
|
||||
<table id="settings">
|
||||
<tbody>
|
||||
{% set section = namespace(section='') %}
|
||||
|
|
|
@ -39,10 +39,10 @@
|
|||
<script src="/inc/jquery-ui.min.js"></script>
|
||||
<script src="/inc/js.cookie.min.js"></script>
|
||||
<script src="/inc/reconnecting-websocket.js"></script>
|
||||
<script src="/inc/hotkeys.js"></script>
|
||||
<script src="/app/static/js/hotkeys.js"></script>
|
||||
<link href="{{ url_for('static', filename='css/select2.css') }}" rel="stylesheet" />
|
||||
<script src="/inc/select2.js"></script>
|
||||
<script src="/app/static/js/select2.js"></script>
|
||||
<script src="/inc/script.js"></script>
|
||||
<script src="/inc/nprogress.js"></script>
|
||||
<script src="/app/static/js/nprogress.js"></script>
|
||||
<link href="{{ url_for('static', filename='css/toastr-6.3.9.css') }}" rel="stylesheet"/>
|
||||
<script src="/inc/toastr.js"></script>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
<link href="{{ url_for('static', filename='css/chart.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ url_for('static', filename='css/smon.css') }}" rel="stylesheet">
|
||||
<script src="/inc/chart.min-4.3.0.js"></script>
|
||||
<script src="/inc/smon.js"></script>
|
||||
<script src="/app/static/js/smon.js"></script>
|
||||
<div class="row wrap1">
|
||||
{% for s in smon %}
|
||||
<div id="smon_name" class="col-md-8">
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
}
|
||||
</style>
|
||||
<link href="{{ url_for('static', filename='css/chart.min.css') }}" rel="stylesheet">
|
||||
<script src="/inc/metrics.js"></script>
|
||||
<script src="/app/static/js/metrics.js"></script>
|
||||
<script src="/inc/chart.min-4.3.0.js"></script>
|
||||
<input type="hidden" id="service" value="{{service}}">
|
||||
{% if user_subscription['user_status'] == 0 %}
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
{% block h2 %}{{lang.menu_links.overview.h2}}{% endblock %}
|
||||
{% block content %}
|
||||
<link href="{{ url_for('static', filename='css/chart.min.css') }}" rel="stylesheet">
|
||||
<script src="/inc/metrics.js"></script>
|
||||
<script src="/app/static/js/metrics.js"></script>
|
||||
<script src="/inc/chart.min-4.3.0.js"></script>
|
||||
<script src="/inc/overview.js"></script>
|
||||
<script src="/app/static/js/overview.js"></script>
|
||||
<script>
|
||||
$("#secIntervals").css("display", "none");
|
||||
var ip = []
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
{% block h2 %}{{ lang.p_s_page.p_s_title }}{% endblock %}
|
||||
{% block content %}
|
||||
{% from 'include/input_macros.html' import input, checkbox, select %}
|
||||
<script src="/inc/overview.js"></script>
|
||||
<script src="/app/static/js/overview.js"></script>
|
||||
<style>
|
||||
.alert-danger {
|
||||
width: 250px;
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
{% from 'include/input_macros.html' import input, checkbox, select %}
|
||||
<link href="{{ url_for('static', filename='css/table-6.3.9.css') }}" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" charset="utf8" src="/inc/dataTables.min.js"></script>
|
||||
<script type="text/javascript" charset="utf8" src="/inc/runtimeapi.js"></script>
|
||||
<script type="text/javascript" charset="utf8" src="/app/static/js/runtimeapi.js"></script>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#runtimeapi" title="Runtime API - Roxy-WI">Runtime API</a></li>
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<script src="/inc/codemirror/addon/scroll/annotatescrollbar.js"></script>
|
||||
<script src="/inc/codemirror/mode/haproxy.js"></script>
|
||||
<script src="/inc/codemirror/keymap/sublime.js"></script>
|
||||
<script src="/inc/configshow.js"></script>
|
||||
<script src="/app/static/js/configshow.js"></script>
|
||||
<div class="left-space" style="margin-top: var(--indent);">
|
||||
<select autofocus required name="section" id="section">
|
||||
<option disabled>------</option>
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
{% block h2 %}{{ lang.menu_links.hapservers.h2 }} {{ service_desc.service }}{% endblock %}
|
||||
{% block content %}
|
||||
{% from 'include/input_macros.html' import input, checkbox, select, copy_to_clipboard %}
|
||||
<script src="/inc/overview.js"></script>
|
||||
<script src="/app/static/js/overview.js"></script>
|
||||
<link href="{{ url_for('static', filename='css/chart.min.css') }}" rel="stylesheet">
|
||||
<script src="/inc/metrics.js"></script>
|
||||
<script src="/app/static/js/metrics.js"></script>
|
||||
<script src="/inc/chart.min-4.3.0.js"></script>
|
||||
{% if servers|length == 0 %} {% include 'include/getstarted.html' %} {% endif %}
|
||||
<style>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
{% block h2 %}{{ lang.menu_links.monitoring.smon.agent }}{% endblock %}
|
||||
{% block content %}
|
||||
{% from 'include/input_macros.html' import input, select %}
|
||||
<script src="/inc/smon.js"></script>
|
||||
<script src="/app/static/js/smon.js"></script>
|
||||
<script src="/inc/jquery.timeago.js" type="text/javascript"></script>
|
||||
<link href="{{ url_for('static', filename='css/servers.css') }}" rel="stylesheet"/>
|
||||
<link href="{{ url_for('static', filename='css/smon.css') }}" rel="stylesheet"/>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
{% block h2 %}{{ lang.menu_links.monitoring.smon.dashboard }}{% endblock %}
|
||||
{% from 'include/input_macros.html' import input, checkbox, select %}
|
||||
{% block content %}
|
||||
<script src="/inc/smon.js"></script>
|
||||
<script src="/app/static/js/smon.js"></script>
|
||||
<script src="/inc/users.js"></script>
|
||||
<script src="/inc/fontawesome.min.js"></script>
|
||||
<script src="/inc/jquery.timeago.js" type="text/javascript"></script>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
{% block h2 %}{{ lang.menu_links.monitoring.smon.status_page }}{% endblock %}
|
||||
{% block content %}
|
||||
{% from 'include/input_macros.html' import input, select %}
|
||||
<script src="/inc/smon.js"></script>
|
||||
<script src="/app/static/js/smon.js"></script>
|
||||
<link href="{{ url_for('static', filename='css/servers.css') }}" rel="stylesheet"/>
|
||||
<link href="{{ url_for('static', filename='css/smon.css') }}" rel="stylesheet"/>
|
||||
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
<link href="{{ url_for('static', filename='css/smon.css') }}" rel="stylesheet">
|
||||
<script src="/inc/jquery-3.6.0.min.js"></script>
|
||||
<script src="/inc/jquery-ui.min.js"></script>
|
||||
<script src="/inc/smon.js"></script>
|
||||
<script src="/app/static/js/smon.js"></script>
|
||||
<link href="{{ url_for('static', filename='css/toastr-6.3.9.css') }}" rel="stylesheet"/>
|
||||
<script src="/inc/toastr.js"></script>
|
||||
</head>
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
<script src="/inc/codemirror/mode/nginx.js"></script>
|
||||
<script src="/inc/codemirror/mode/haproxy.js"></script>
|
||||
<script src="/inc/codemirror/keymap/sublime.js"></script>
|
||||
<script src="/inc/configshow.js"></script>
|
||||
<script src="/app/static/js/configshow.js"></script>
|
||||
<h4>{{lang.words.config|title()}} {{waf_rule_file}} {{lang.words.from|title()}} {{ serv }}</h4>
|
||||
<form action="/app/waf/{{service}}/{{serv}}/rule/{{waf_rule_id}}/save" name="saveconfig" id="saveconfig" method="post">
|
||||
<input type="hidden" value="{{ serv }}" name="serv">
|
||||
|
@ -177,8 +177,8 @@
|
|||
</table>
|
||||
{% if service == 'haproxy' %}
|
||||
<link href="{{ url_for('static', filename='css/chart.min.css') }}" rel="stylesheet">
|
||||
<script src="/inc/overview.js"></script>
|
||||
<script src="/inc/metrics.js"></script>
|
||||
<script src="/app/static/js/overview.js"></script>
|
||||
<script src="/app/static/js/metrics.js"></script>
|
||||
<script src="/inc/chart.min-4.3.0.js"></script>
|
||||
<div id="table_metrics"></div>
|
||||
<div class="metrics-time-range">
|
||||
|
|
|
@ -182,7 +182,7 @@ if(localStorage.getItem('restart')) {
|
|||
} else {
|
||||
$('#' + apply_div).html("You have made changes to the server: " + ip_for_restart + ". Changes will take effect only after restart. <a href='service' title='Overview'>Go to the HAProxy Overview page and restart</a><a href='#' title='close' id='apply_close' style='float: right'><b>X</b></a>");
|
||||
}
|
||||
$.getScript('/inc/overview.js');
|
||||
$.getScript('/app/static/js/overview.js');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -436,7 +436,7 @@ function showRemoteLogFiles() {
|
|||
} else {
|
||||
toastr.clear();
|
||||
$("#remote_log_files").html(data);
|
||||
$.getScript('/inc/configshow.js');
|
||||
$.getScript('/app/static/js/configshow.js');
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
@ -538,7 +538,7 @@ function showConfig() {
|
|||
} else {
|
||||
toastr.clear();
|
||||
$("#ajax").html(data);
|
||||
$.getScript('/inc/configshow.js');
|
||||
$.getScript('/app/static/js/configshow.js');
|
||||
window.history.pushState("Show config", "Show config", "/app/config/" + service + "/" + $("#serv").val() + "/show/" + config_file_name);
|
||||
}
|
||||
}
|
||||
|
@ -607,7 +607,7 @@ function showUploadConfig() {
|
|||
toastr.clear();
|
||||
$("#ajax").html(data);
|
||||
window.history.pushState("Show config", "Show config", "/app/config/versions/" + service + "/" + serv + "/" + configver);
|
||||
$.getScript('/inc/configshow.js');
|
||||
$.getScript('/app/static/js/configshow.js');
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
|
|
@ -35,12 +35,12 @@
|
|||
<link href="/app/static/css/jquery-ui.structure.min.css" rel="stylesheet">
|
||||
<script src="/inc/jquery-3.6.0.min.js"></script>
|
||||
<script src="/inc/jquery-ui.min.js"></script>
|
||||
<script src="/inc/nprogress.js"></script>
|
||||
<script src="/app/static/js/nprogress.js"></script>
|
||||
<script defer src="/inc/fa-solid.min.js"></script>
|
||||
<script defer src="/inc/fontawesome.min.js"></script>
|
||||
<link href="/app/static/css/awesome-6.3.9.css" rel="stylesheet">
|
||||
<link href="/app/static/css/chart.min.css" rel="stylesheet">
|
||||
<script src="/inc/metrics.js"></script>
|
||||
<script src="/app/static/js/metrics.js"></script>
|
||||
<script src="/inc/chart.min-4.3.0.js"></script>
|
||||
<link rel="stylesheet" href="/inc/codemirror/lib/codemirror.css">
|
||||
<script src="/inc/codemirror/lib/codemirror.js"></script>
|
||||
|
@ -51,7 +51,7 @@
|
|||
<script src="/inc/toastr.js"></script>
|
||||
<script defer src="/inc/ion.sound.min.js"></script>
|
||||
<link href="/app/static/css/select2.css" rel="stylesheet" />
|
||||
<script src="/inc/select2.js"></script>
|
||||
<script src="/app/static/js/select2.js"></script>
|
||||
<script src="/inc/reconnecting-websocket.js"></script>
|
||||
<link href="/app/static/css/table-6.3.9.css" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" charset="utf8" src="/inc/dataTables.min.js"></script>
|
||||
|
|
Loading…
Reference in New Issue