Pavel Loginov 2021-08-22 00:21:22 +06:00
parent abb52ebb8f
commit c1dd051893
7 changed files with 64 additions and 78 deletions

View File

@ -716,7 +716,7 @@ def update_db_v_5_2_4(**kwargs):
cursor.execute(sql)
except Exception as e:
if kwargs.get('silent') != 1:
if str(e) == 'duplicate column name: user_services':
if str(e) == 'duplicate column name: user_services' or str(e) == '(1060, "Duplicate column name \'user_services\'")':
print('Updating... DB has been updated to version 5.2.4')
else:
print("An error occurred:", e)
@ -731,7 +731,7 @@ def update_db_v_5_2_4_1(**kwargs):
cursor.execute(sql)
except Exception as e:
if kwargs.get('silent') != 1:
if str(e) == 'duplicate column name: nginx_metrics' or str(e) == '(1060, "Duplicate column name \'nginx_metrics\'")':
if str(e) == 'duplicate column name: nginx_metrics' or str(e) == '(1060, "Duplicate column name \'nginx_metrics\'")':
print('Updating... DB has been updated to version 5.2.4')
else:
print("An error occurred:", e)

View File

@ -58,7 +58,7 @@ class Server(BaseModel):
firewall_enable = IntegerField(constraints=[SQL('DEFAULT 0')])
nginx_alert = IntegerField(constraints=[SQL('DEFAULT 0')])
protected = IntegerField(constraints=[SQL('DEFAULT 0')])
nginx_metrics = IntegerField(constraints=[SQL('DEFAULT 1')])
nginx_metrics = IntegerField(constraints=[SQL('DEFAULT 0')])
class Meta:
table_name = 'servers'

View File

@ -5,11 +5,11 @@ env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
template = env.get_template('runtimeapi.html')
print('Content-type: text/html\n')
funct.check_login()
funct.check_login(service=1)
form = funct.form
try:
user, user_id, role, token, servers = funct.get_users_params(virt=1)
user, user_id, role, token, servers, user_services = funct.get_users_params(virt=1)
servbackend = form.getvalue('servbackend')
serv = form.getvalue('serv')
if servbackend is None:
@ -25,5 +25,6 @@ template = template.render(h2=0,
select_id="serv",
selects=servers,
token=token,
user_services=user_services,
servbackend=servbackend)
print(template)

View File

@ -5,7 +5,7 @@
<span title="{{s.0}} is started"><span class="serverUp server-status"></span></span>
{% else %}
{% if s.1.0 == 'inactive' or s.1.0 == 'failed' %}
<span title="{{s.0}} is stoped"><span class="serverDown server-status"></span></span>
<span title="{{s.0}} is stopped"><span class="serverDown server-status"></span></span>
{% else %}
<span title="{{s.0}} is not installed"><span class="serverNone server-status"></span></span>
{% endif %}

View File

@ -1,15 +1,14 @@
<table class="overview" style="border: none;">
<tr style="border: none;">
<td style="border: none">
<select id="newCurrentGroup" name="newCurrentGroup" >
{% for g in groups %}
{% if g.user_group_id|string() == group|string() %}
<option value="{{ g.user_group_id }}" selected>{{ g.groups.name }}</option>
{% else %}
<option value="{{ g.user_group_id }}">{{ g.groups.name }}</option>
{% endif %}
{% endfor %}
</select>
</td>
</tr>
</table>
<tr>
<td class="padding20" style="width: 70%">Current group</td>
<td>
<select id="newCurrentGroup" name="newCurrentGroup" >
{% for g in groups %}
{% if g.user_group_id|string() == group|string() %}
<option value="{{ g.user_group_id }}" selected>{{ g.groups.name }}</option>
{% else %}
<option value="{{ g.user_group_id }}">{{ g.groups.name }}</option>
{% endif %}
{% endfor %}
</select>
</td>
</tr>

View File

@ -256,14 +256,16 @@
</div>
</div>
<div id="show-user-settings">
<table class="overview">
<table class="overview" id="show-user-settings-table">
<tr>
<td class="padding20" style="width: 60%">Disable alerting for this tab</td>
<td><label for="disable_alert_for_tab"></label><input type="checkbox" id="disable_alert_for_tab" />
</tr>
<tr class="even">
<td class="padding20" style="width: 60%">Disable alerting for all tabs</td>
<td><label for="disable_alert_for_all"></label><input type="checkbox" id="disable_alert_for_all" />
<td class="padding20" style="width: 70%">Alerts</td>
<td>
<select id="disable_alerting">
<option value="0" title="Alerts for all tabs are enabled">All alerts are enabled</option>
<option value="1">Disable alerting for this tab</option>
<option value="2">Disable alerting for all tabs</option>
</select>
</td>
</tr>
</table>
</div>

View File

@ -799,12 +799,11 @@ $( function() {
modal: true,
title: 'User settings',
buttons: {
Save: function() {
Apply: function() {
saveUserSettings();
$( this ).dialog( "close" );
},
"Change group": function(){
showCurrentGroup(this);
Cancel: function () {
$( this ).dialog( "close" );
},
Logout: function() {
@ -815,13 +814,31 @@ $( function() {
$('#show-user-settings-button').click(function() {
if (sessionStorage.getItem('disabled_alert') == '1') {
$('#disable_alert_for_tab').prop('checked', true);
$( "input[type=checkbox]" ).checkboxradio('refresh');
}
if (localStorage.getItem('disabled_alert') == '1') {
$('#disable_alert_for_all').prop('checked', true);
$( "input[type=checkbox]" ).checkboxradio('refresh');
$('#disable_alerting option[value="1"]').prop('selected', true);
$('#disable_alerting').selectmenu('refresh');
} else if (localStorage.getItem('disabled_alert') == '1') {
$('#disable_alerting option[value="2"]').prop('selected', true);
$('#disable_alerting').selectmenu('refresh');
} else {
$('#disable_alerting option[value="0"]').prop('selected', true);
$('#disable_alerting').selectmenu('refresh');
}
$.ajax( {
url: "options.py",
data: {
getcurrentusergroup: 1,
token: $('#token').val()
},
type: "POST",
success: function( data ) {
if (data.indexOf('danger') != '-1') {
$("#ajax").html(data);
} else {
$('#show-user-settings-table').append(data);
$( "select" ).selectmenu();
}
}
} );
showUserSettings.dialog('open');
});
var location = window.location.href;
@ -969,50 +986,17 @@ $( function() {
})
});
function saveUserSettings(){
if ($('#disable_alert_for_tab').is(':checked')) {
if ($('#disable_alerting').val() == '0') {
localStorage.removeItem('disabled_alert');
sessionStorage.removeItem('disabled_alert');
} else if ($('#disable_alerting').val() == '1') {
sessionStorage.setItem('disabled_alert', '1');
} else {
localStorage.removeItem('disabled_alert');
} else if ($('#disable_alerting').val() == '2') {
localStorage.setItem('disabled_alert', '1');
sessionStorage.removeItem('disabled_alert');
}
if ($('#disable_alert_for_all').is(':checked')) {
localStorage.setItem('disabled_alert', '1');
} else {
localStorage.removeItem('disabled_alert');
}
}
function showCurrentGroup(dialog_id) {
$.ajax( {
url: "options.py",
data: {
getcurrentusergroup: 1,
token: $('#token').val()
},
type: "POST",
success: function( data ) {
if (data.indexOf('danger') != '-1') {
$("#ajax").html(data);
} else {
$('.alert-danger').remove();
$('#current-user-groups-form').html(data);
$( "select" ).selectmenu();
$( "#current-user-groups-dialog" ).dialog({
width: 290,
modal: true,
title: "Change a new current group",
buttons: {
"Change": function() {
$( this ).dialog( "close" );
changeCurrentGroupF();
},
Cancel: function() {
$( this ).dialog( "close" );
$( dialog_id ).dialog("open" );
}
}
});
}
}
} );
changeCurrentGroupF();
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));