8 isset(
$user) or require
$_SERVER[
'DOCUMENT_ROOT'] .
'/page/404.php';
11 <div
class=
"modal fade" id=
"<?= $basename ?>" tabindex=
"-1" data-backdrop=
"static" data-keyboard=
"false">
12 <div
class=
"modal-dialog modal-lg modal-lg modal-dialog-centered" role=
"document">
13 <div
class=
"modal-content">
14 <div
class=
"modal-header">
15 <h5
class=
"modal-title"><i
class=
"fa fa-user mr-2"></i>Добавить пользователя</h5>
16 <button type=
"button" class=
"close" data-dismiss=
"modal" aria-label=
"Close">
17 <span aria-hidden=
"true">×</span>
20 <div
class=
"modal-body pt-2">
21 <form action=
"<?= Wrong\Models\Actions::find(20)->request ?>">
22 <div
class=
"border px-2 py-1 rounded bg-light-info">
23 <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>
25 foreach (
$user->subordinate_groups as $id) {
27 echo
'<div class="custom-control custom-checkbox small">
28 <input type="checkbox" name="groups[' . $row->id .
']" class="custom-control-input" id="check-group-' . $row->id .
'" ' . (in_array($row->id, Wrong\Start\Env::$e->GROUPS_USERS) ?
'checked' :
'') .
'>
29 <label class="custom-control-label" for="check-group-' . $row->id .
'">' . Wrong\Rights\Group::text($row->id) .
'</label>
34 <div
class=
"input-group input-group-sm mt-2">
35 <div
class=
"input-group-prepend w-50">
36 <span
class=
"input-group-text w-100">Группа владелец</span>
38 <select name=
"owner_group" class=
"custom-select">
40 foreach (
$user->subordinate_groups as $id) {
42 echo
'<option value="' . $row->id .
'" ' . ($row->id ==
Wrong\Start\Env::$e->OWNER_GROUP_USERS ?
' selected' :
'') .
'>' . Wrong\Rights\Group::text($row->id) .
'</option>';
47 <div
class=
"input-group input-group-sm mt-2">
48 <div
class=
"input-group-prepend w-50">
49 <span
class=
"input-group-text w-100">Email</span>
51 <input type=
"email" name=
"email" class=
"form-control" value=
"" placeholder=
"Email" autocomplete=
"off" required>
53 <div
class=
"input-group input-group-sm mt-2">
54 <div
class=
"input-group-prepend w-50">
55 <span
class=
"input-group-text w-100">Пароль</span>
57 <input type=
"text" name=
"password" class=
"form-control" value=
"" placeholder=
"Пароль" autocomplete=
"off" required>
59 <button type=
"submit" class=
"btn btn-sm btn-block btn-success mt-3">Сохранить</button>
65 $(
"#<?= $basename ?> form").submit(
function(e) {
66 lockSubmit($(
"#<?= $basename ?> form [type=submit]"));
70 url: $(
this).attr(
"action"),
71 data: $(
this).serialize(),
80 errorToast(response.error);
83 $(
'.dataTable').DataTable().ajax.reload(
null,
false);
84 $(
'.toast').toast(
'hide');
85 successToast(response.message);
86 $(
"#<?= $basename ?>").modal(
"hide");
89 unlockSubmit($(
"#<?= $basename ?> form [type=submit]"));
93 $(
'#<?= $basename ?> [name="password"]').val(Math.random().toString(36).slice(2, 10));
95 $(
'#<?= $basename ?> [name="password"]').click(
function(e) {
97 document.execCommand(
'copy',
false);
100 $(
'#<?= $basename ?> [name="password"]').on(
'copy',
function(e) {
101 successToast(
'Пароль скопирован');
104 $(
'#<?= $basename ?> [name="email"]').val(Math.random().toString(36).slice(2, 10) +
'@' + document.domain);
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']