mirror of https://github.com/Aidaho12/haproxy-wi
parent
4879b215b7
commit
403272cf47
|
@ -453,6 +453,15 @@ def select_user_groups_with_names(user_id, **kwargs):
|
||||||
return query_res
|
return query_res
|
||||||
|
|
||||||
|
|
||||||
|
def select_user_roles_by_group(group_id: int):
|
||||||
|
try:
|
||||||
|
query_res = UserGroups.select().where(UserGroups.user_group_id == group_id).execute()
|
||||||
|
except Exception as e:
|
||||||
|
out_error(e)
|
||||||
|
else:
|
||||||
|
return query_res
|
||||||
|
|
||||||
|
|
||||||
def select_groups(**kwargs):
|
def select_groups(**kwargs):
|
||||||
if kwargs.get("group") is not None:
|
if kwargs.get("group") is not None:
|
||||||
query = Groups.select().where(Groups.name == kwargs.get('group'))
|
query = Groups.select().where(Groups.name == kwargs.get('group'))
|
||||||
|
|
|
@ -156,18 +156,6 @@ def show_user_groups_and_roles() -> None:
|
||||||
print(template)
|
print(template)
|
||||||
|
|
||||||
|
|
||||||
def add_user_group_and_role() -> None:
|
|
||||||
group_id = common.checkAjaxInput(form.getvalue('group_id'))
|
|
||||||
group_name = common.checkAjaxInput(form.getvalue('group_name'))
|
|
||||||
length_tr = common.checkAjaxInput(form.getvalue('length_tr'))
|
|
||||||
roles = sql.select_roles()
|
|
||||||
lang = roxywi_common.get_user_lang()
|
|
||||||
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True)
|
|
||||||
template = env.get_template('ajax/add_user_group_and_role.html')
|
|
||||||
template = template.render(roles=roles, lang=lang, group_id=group_id, group_name=group_name, length_tr=length_tr)
|
|
||||||
print(template)
|
|
||||||
|
|
||||||
|
|
||||||
def save_user_group_and_role() -> None:
|
def save_user_group_and_role() -> None:
|
||||||
import json
|
import json
|
||||||
|
|
||||||
|
|
|
@ -1090,11 +1090,6 @@ if act == 'show_user_group_and_role':
|
||||||
|
|
||||||
roxy_user.show_user_groups_and_roles()
|
roxy_user.show_user_groups_and_roles()
|
||||||
|
|
||||||
if act == 'add_user_group_and_role':
|
|
||||||
import modules.roxywi.user as roxy_user
|
|
||||||
|
|
||||||
roxy_user.add_user_group_and_role()
|
|
||||||
|
|
||||||
if act == 'save_user_group_and_role':
|
if act == 'save_user_group_and_role':
|
||||||
import modules.roxywi.user as roxy_user
|
import modules.roxywi.user as roxy_user
|
||||||
|
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
{% import 'languages/'+lang|default('en')+'.html' as lang %}
|
|
||||||
{% if length_tr|int() % 2 == 1 %}
|
|
||||||
{% set class = 'even' %}
|
|
||||||
{% endif %}
|
|
||||||
<tr class="{{class}}" id="remove_group-{{group_id}}" data-group_name="{{group_name}}">
|
|
||||||
<td class="padding20" style="width: 50%;">{{group_name}}</td>
|
|
||||||
<td style="width: 50%;">
|
|
||||||
<select id="add_role-{{group_id}}">
|
|
||||||
{% for r in roles %}
|
|
||||||
<option value="{{r.role_id}}">{{r.name}}</option>
|
|
||||||
{% endfor %}
|
|
||||||
</select>
|
|
||||||
</td>
|
|
||||||
<td><span class="remove_user_group" onclick="removeGroupFromUser({{group_id}})" title="{{lang.words.delete|title()}} {{lang.words.group2}}">-</span></td>
|
|
||||||
</tr>
|
|
|
@ -821,5 +821,6 @@
|
||||||
"send": "send",
|
"send": "send",
|
||||||
"additions": "additions",
|
"additions": "additions",
|
||||||
"deletions": "deletions",
|
"deletions": "deletions",
|
||||||
|
"recent": "recent",
|
||||||
}
|
}
|
||||||
%}
|
%}
|
||||||
|
|
|
@ -821,5 +821,6 @@
|
||||||
"send": "envoyer",
|
"send": "envoyer",
|
||||||
"additions": "ajouts",
|
"additions": "ajouts",
|
||||||
"deletions": "suppressions",
|
"deletions": "suppressions",
|
||||||
|
"recent": "récent",
|
||||||
}
|
}
|
||||||
%}
|
%}
|
||||||
|
|
|
@ -828,5 +828,6 @@
|
||||||
"send": "отправить",
|
"send": "отправить",
|
||||||
"additions": "дополнения",
|
"additions": "дополнения",
|
||||||
"deletions": "удаления",
|
"deletions": "удаления",
|
||||||
|
"recent": "недавние",
|
||||||
}
|
}
|
||||||
%}
|
%}
|
||||||
|
|
|
@ -211,7 +211,7 @@
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="/app/viewlogs.py?viewlogs={{roxy_wi_log_id}}&rows=10&grep=&hour=00&minut=00&hour1=24&minut1=00" title="{{lang.words.view|title()}} Roxy-WI {{lang.words.logs}}" class="logs_link">
|
<a href="/app/viewlogs.py?viewlogs={{roxy_wi_log_id}}&rows=10&grep=&hour=00&minut=00&hour1=24&minut1=00" title="{{lang.words.view|title()}} Roxy-WI {{lang.words.logs}}" class="logs_link">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
Recent Roxy-WI {{lang.words.logs}}
|
{{lang.words.recent|title()}} Roxy-WI {{lang.words.logs}}
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
|
|
|
@ -43,7 +43,7 @@ except Exception as e:
|
||||||
|
|
||||||
rendered_template = template.render(
|
rendered_template = template.render(
|
||||||
role=user_params['role'], user=user_params['user'], users=users, groups=sql.select_groups(),
|
role=user_params['role'], user=user_params['user'], users=users, groups=sql.select_groups(),
|
||||||
servers=sql.select_servers(full=1), masters=masters, sshs=sql.select_ssh(),
|
servers=sql.select_servers(full=1), masters=masters, sshs=sql.select_ssh(), roles=sql.select_roles(),
|
||||||
settings=settings, backups=sql.select_backups(), services=services, timezones=pytz.all_timezones,
|
settings=settings, backups=sql.select_backups(), services=services, timezones=pytz.all_timezones,
|
||||||
page="users.py", user_services=user_params['user_services'], ldap_enable=ldap_enable, gits=gits, guide_me=1,
|
page="users.py", user_services=user_params['user_services'], ldap_enable=ldap_enable, gits=gits, guide_me=1,
|
||||||
user_status=user_subscription['user_status'], user_plan=user_subscription['user_plan'], token=user_params['token'],
|
user_status=user_subscription['user_status'], user_plan=user_subscription['user_plan'], token=user_params['token'],
|
||||||
|
|
39
inc/users.js
39
inc/users.js
|
@ -2377,7 +2377,7 @@ function addServiceToUser(service_id) {
|
||||||
}
|
}
|
||||||
var html_tag = '<tr class="'+tr_class+'" id="remove_service-'+service_id+'" data-service_name="'+service_name+'">' +
|
var html_tag = '<tr class="'+tr_class+'" id="remove_service-'+service_id+'" data-service_name="'+service_name+'">' +
|
||||||
'<td class="padding20" style="width: 100%;">'+service_name+'</td>' +
|
'<td class="padding20" style="width: 100%;">'+service_name+'</td>' +
|
||||||
'<td><span class="add_user_group" onclick="removeServiceFromUser('+service_id+')" title="'+delete_word+' '+service_word+'">+</span></td></tr>';
|
'<td><span class="add_user_group" onclick="removeServiceFromUser('+service_id+')" title="'+delete_word+' '+service_word+'">-</span></td></tr>';
|
||||||
$('#add_service-'+service_id).remove();
|
$('#add_service-'+service_id).remove();
|
||||||
$("#checked_services tbody").append(html_tag);
|
$("#checked_services tbody").append(html_tag);
|
||||||
}
|
}
|
||||||
|
@ -3142,21 +3142,25 @@ function confirmChangeGroupsAndRoles(user_id) {
|
||||||
}
|
}
|
||||||
function addGroupToUser(group_id) {
|
function addGroupToUser(group_id) {
|
||||||
var group_name = $('#add_group-'+group_id).attr('data-group_name');
|
var group_name = $('#add_group-'+group_id).attr('data-group_name');
|
||||||
$.ajax({
|
var delete_word = $('#translate').attr('data-delete');
|
||||||
url: "options.py",
|
var group2_word = $('#translate').attr('data-group2');
|
||||||
data: {
|
var length_tr = $('#all_groups tbody tr').length;
|
||||||
act: 'add_user_group_and_role',
|
const roles = {1: 'superAdmin', 2: 'amdin', 3: 'user', 4: 'guest'};
|
||||||
group_id: group_id,
|
var options_roles = '';
|
||||||
group_name: group_name,
|
for (const [role_id, role_name] of Object.entries(roles)) {
|
||||||
length_tr: $('#checked_groups tbody tr').length,
|
options_roles += '<option value="'+role_id+'">'+role_name+'</option>';
|
||||||
token: $('#token').val()
|
}
|
||||||
},
|
var tr_class = 'odd';
|
||||||
type: "POST",
|
if (length_tr % 2 != 0) {
|
||||||
success: function (data) {
|
tr_class = 'even';
|
||||||
$('#add_group-'+group_id).remove();
|
}
|
||||||
$("#checked_groups tbody").append(data);
|
var html_tag = '<tr class="'+tr_class+'" id="remove_group-'+group_id+'" data-group_name="'+group_name+'">\n' +
|
||||||
}
|
' <td class="padding20" style="width: 50%;">'+group_name+'</td>\n' +
|
||||||
});
|
' <td style="width: 50%;">\n' +
|
||||||
|
' <select id="add_role-'+group_id+'">'+options_roles+'</select></td>\n' +
|
||||||
|
' <td><span class="remove_user_group" onclick="removeGroupFromUser('+group_id+')" title="'+delete_word+' '+group2_word+'">-</span></td></tr>'
|
||||||
|
$('#add_group-'+group_id).remove();
|
||||||
|
$("#checked_groups tbody").append(html_tag);
|
||||||
}
|
}
|
||||||
function removeGroupFromUser(group_id) {
|
function removeGroupFromUser(group_id) {
|
||||||
var group_name = $('#remove_group-'+group_id).attr('data-group_name');
|
var group_name = $('#remove_group-'+group_id).attr('data-group_name');
|
||||||
|
@ -3169,8 +3173,7 @@ function removeGroupFromUser(group_id) {
|
||||||
}
|
}
|
||||||
var html_tag = '<tr class="'+tr_class+'" id="add_group-'+group_id+'" data-group_name='+group_name+'>\n' +
|
var html_tag = '<tr class="'+tr_class+'" id="add_group-'+group_id+'" data-group_name='+group_name+'>\n' +
|
||||||
' <td class="padding20" style="width: 100%">'+group_name+'</td>\n' +
|
' <td class="padding20" style="width: 100%">'+group_name+'</td>\n' +
|
||||||
' <td><span class="add_user_group" title="'+add_word+' '+group2_word+'" onclick="addGroupToUser('+group_id+')">+</span></td>\n' +
|
' <td><span class="add_user_group" title="'+add_word+' '+group2_word+'" onclick="addGroupToUser('+group_id+')">+</span></td></tr>'
|
||||||
'</tr>'
|
|
||||||
$('#remove_group-'+group_id).remove();
|
$('#remove_group-'+group_id).remove();
|
||||||
$("#all_groups tbody").append(html_tag);
|
$("#all_groups tbody").append(html_tag);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue