8 isset(
$user) or require
$_SERVER[
'DOCUMENT_ROOT'] .
'/page/404.php';
10 if (!($row = Wrong\Database\Controller::find($_GET[
'id'],
'id', $_GET[
'table']))) {
11 exit(
'<script>errorToast("Ошибка!");</script>');
14 $groups = json_decode($row->groups,
true);
18 <div
class=
"modal fade" id=
"<?= $basename ?>" tabindex=
"-1" data-backdrop=
"static" data-keyboard=
"false">
19 <div
class=
"modal-dialog modal-dialog-centered" role=
"document">
20 <div
class=
"modal-content">
21 <div
class=
"modal-header">
22 <h5
class=
"modal-title">Группы доступа</h5>
23 <button type=
"button" class=
"close" data-dismiss=
"modal" aria-label=
"Close">
24 <span aria-hidden=
"true">×</span>
27 <div
class=
"modal-body pt-2">
28 <form action=
"<?= Wrong\Models\Actions::find(10)->request ?>">
29 <input type=
"hidden" name=
"id" value=
"<?= $row->id ?>">
30 <input type=
"hidden" name=
"table" value=
"<?= $_GET['table'] ?>">
31 <div
class=
"border px-2 py-1 rounded bg-light-info">
32 <small><a onclick=
"if(~~this.dataset.checked){$(this).html('Отметить все');this.dataset.checked=0;$(this).parents('form').find('[name^=groups]').prop('checked', false);}else{$(this).html('Снять все');this.dataset.checked=1;$(this).parents('form').find('[name^=groups]').prop('checked', true);}return false;" href=
"#">Отметить все</a></small>
34 foreach (Wrong\Rights\Group::$groups_not_system as $row) {
35 if ($_GET[
'table'] ==
'users' && !in_array($row->id,
$user->subordinate_groups))
continue;
36 echo
'<div class="custom-control custom-checkbox small">
37 <input type="checkbox" name="groups[' . $row->id .
']" class="custom-control-input" id="check-group-' . $row->id .
'" ' . (in_array($row->id,
$groups) ?
'checked' :
'') .
'>
38 <label class="custom-control-label" for="check-group-' . $row->id .
'">' . Wrong\Rights\Group::text($row->id) .
'</label>
43 <button type=
"submit" class=
"btn btn-sm btn-block btn-success mt-3">Сохранить</button>
49 $(
"#<?= $basename ?> form").submit(
function(e) {
50 lockSubmit($(
"#<?= $basename ?> form [type=submit]"));
54 url: $(
this).attr(
"action"),
55 data: $(
this).serialize(),
64 errorToast(response.error);
67 $(
'.dataTable').DataTable().ajax.reload(
null,
false);
68 $(
'.toast').toast(
'hide');
69 successToast(response.message);
70 $(
"#<?= $basename ?>").modal(
"hide");
73 unlockSubmit($(
"#<?= $basename ?> form [type=submit]"));
77 $(
'.toast').toast(
'hide');
78 dangerToast(
'Владелец Система. Изменение групп доступа для системного функционала может привести к нежелательным последствиям!', 15000);
setcookie('FROM_UID', $uid, [ 'expires'=> time()+31536000, 'path'=> '/', 'domain'=> $_SERVER['HTTP_HOST'], 'secure'=> Wrong\Start\Env::$e->IS_SECURE, 'httponly'=> false, 'samesite'=> Wrong\Start\Env::$e->IS_SECURE ? 'None' :'Lax']) or setcookie('FROM_UID' $_SERVER['HTTP_HOST']
if(($dbh=Connect::getInstance(true) ->dbh) && $dbh->query("SHOW TABLES") ->fetchAll() && $dbh->query("SELECT COUNT(*) FROM `users`") ->fetchColumn()) if(!empty($_POST)) exit
if(!($row=Wrong\Database\Controller::find($_GET['id'], 'id', $_GET['table']))) $groups