17 if (isset(
$_GET[
'toggle']) &&
$_GET[
'toggle'] ===
"1")
19 if (isset(
$_GET[
'blocked']))
21 $user->blocked =
$_GET[
'blocked'];
23 if (isset(
$_GET[
'uid']))
25 $user->id =
$_GET[
'uid'];
27 if ($user->blocked ===
'1')
31 $status =
"$lang[ACTIVE]";
37 $status =
"$lang[BLOCKED]";
39 $user->username = user::getUserNameFromID(
$db, $user->id);
42 if($user->toggleOffline(
$db, $user->id, $user->blocked))
44 print alert::draw(
"$color",
"$user->username $status",
"$lang[USER] <b>$user->username</b> $lang[IS] $lang[NOW] $status",
"", 1800);
48 print alert::draw(
"danger",
"$lang[ERROR]",
"$lang[USER] $lang[TOGGLE_FAILED]",
"page=users", 5800);
55 if(
$_GET[
'delete'] ===
"true")
57 if (isset(
$_GET[
'user']))
59 if (
$_GET[
'user'] ===
'admin' OR
$_GET[
'user'] ===
'root' OR
$_GET[
'user'] ===
'administrator')
61 print alert::draw(
"danger",
"$lang[WARNING]",
"$lang[NOT_DELETEABLE]",
"", 10000);
64 if($user->delete(
$db,
$_GET[
'user']))
66 print alert::draw(
"success",
"$lang[SUCCESS]",
"$lang[USER] <strong>".
$_GET[
'user'].
"</strong> $lang[DELETED]",
"", 800);
70 print alert::draw(
"danger",
"$lang[ERROR]",
"$lang[USER] <strong>".
$_GET[
'user'].
"</strong> $lang[NOT] $lang[DELETED]",
"", 5800);
77 <script
type=
"text/javascript">
78 $(document).
ready(
function() {
79 $(
'#table-sort').dataTable( {
81 "bLengthChange":
false,
93 <!-- Content Wrapper. Contains page content -->
94 <div class=\"content-wrapper\" id=\"content-FX\">
95 <!-- Content Header (Page header) -->
96 <section class=\"content-header\">";
98 echo backend::getTitle(
$lang[
'USERS'],
$lang[
'USERS_SUBTEXT']);
99 echo
"<ol class=\"breadcrumb\">
100 <li><a href=\"index.php\" title=\"$lang[DASHBOARD]\"><i class=\"fa fa-dashboard\"></i> $lang[DASHBOARD]</a></li>
101 <li><a href=\"index.php?page=users\" class=\"active\" title=\"$lang[USERS]\"> $lang[USERS]</a></li>
104 <!-- Main content -->
105 <section class=\"content\">";
109 <div
class=
"box box-default">
110 <div
class=
"box-body">
112 <!-- btn add
user -->
113 <
a class=
"btn btn-success pull-right" href=
"index.php?page=user-new">
114 <
i class=
"glyphicon glyphicon-plus"></
i> &
nbsp;<?php print
$lang[
'USER+']; ?></
a>
115 <!-- btn group settings -->
116 <
a class=
"btn btn-default pull-right" href=
"index.php?page=user-groups">
117 <
i class=
"fa fa-users"></
i> &
nbsp;<?php print
$lang[
'GROUPS_SETUP']; ?></
a>
118 <!-- btn signup plugin -->
119 <
a class=
"btn btn-default pull-right" href=
"index.php?plugin=signup">
120 <
i class=
"fa fa-plug"></
i> &
nbsp;<?php print
$lang[
'SIGNUP_PLUGIN']; ?></
a>
122 <table style=
"width: 100%;" cellpadding=
"4" cellspacing=
"0" border=
"0" class=
"table table-striped table-hover table-responsive" id=
"table-sort">
125 <td style=
"width: 3%;"><strong>&
nbsp;</strong></td>
126 <td style=
"width: 5%;" class=
"text-center"><strong><?php echo
$lang[
'ID']; ?></strong></td>
127 <td style=
"width: 3%;"><strong>&
nbsp;</strong></td>
128 <td style=
"width: 29%;"><strong><?php echo
$lang[
'NAME']; ?></strong></td>
129 <td style=
"width: 10%;"><strong><?php echo
$lang[
'GROUP']; ?></strong></td>
130 <td style=
"width: 25%;"><strong><?php echo
$lang[
'EMAIL']; ?></strong></td>
131 <td style=
"width: 10%;"><strong><?php echo
$lang[
'LAST_ONLINE']; ?></strong></td>
132 <td style=
"width: 5%;" class=
"text-center"><strong><?php echo
$lang[
'LOGINS']; ?></strong></td>
133 <td style=
"width: 10%;" class=
"text-center"><strong><?php echo
$lang[
'ACTIONS']; ?></strong></td>
140 foreach (
$rows AS $row) {
142 if ($row[
'blocked'] ===
'0')
144 $pub =
"success"; $pubtext=
"$lang[ACTIVE]";
147 $pub =
"danger"; $pubtext =
"$lang[BLOCKED]";
150 $userpic = user::getUserImage(
"backend", $row[
'username'],
"img-circle", 25, 25);
153 <td class=\"text-center\">
154 <a title=\"toggle status\" href=\"index.php?page=users&toggle=1&blocked=".$row[
'blocked'].
"&uid=".$row[
'id'].
"&user=".$row[
'username'].
"\">
155 <span class=\"label label-$pub\">$pubtext</span></a>
157 <td class=\"text-center\">".$row[
'id'].
"</td>
159 <td><a title=\"".$row[
'username'].
"\" href=\"index.php?page=user-edit&user=".$row[
'username'].
"\">
160 <div style=\"width: 100%\">".$row[
'username'].
"</div></a></td>
161 <td>".$row[
'gid'].
"</td>
162 <td><a title=\"send Email\" href=\"index.php?page=email-new&user=".$row[
'username'].
"\">".$row[
'email'].
"</a></td>
163 <td>".$row[
'date_lastlogin'].
"</td>
164 <td class=\"text-center\"><a href=\"index.php?page=logins&user=".$row[
'username'].
"\" target=\"_self\" title=\"$lang[SHOW_LOGINS_OF]".$row[
'username'].
"\">".$row[
'login_count'].
"</a></td>
166 <td class=\"text-center\">
167 <a class=\"fa fa-envelope-o\" title=\"send Email\" href=\"index.php?page=email-new&user=".$row[
'username'].
"\"></a>
169 <a class=\"fa fa-edit\" title=\"edit: ".$row[
'username'].
"\" href=\"index.php?page=user-edit&user=".$row[
'username'].
"\"></a>
171 <a class=\"fa fa-trash-o\" role=\"dialog\" data-confirm=\"Den User «$row[username]» wirklich löschen?\"
172 title=\"$lang[DELETE]\" href=\"index.php?page=users&del=1&user=$row[username]&gid=$row[gid]&uid=$row[id]&delete=true\">
Throws a fancy Bootstrap Alert (success, info, warning or danger)
Backend class serves a few useful functions for the admin backend.
Mysqli database class; returns db connection object.
The language class - support multilingual backend.
The default user class. Provide all functions to handle the user object.
<!-- backend language -->< h3 >< i class="fa fa-language"></i > & nbsp
document ready(function() { $('a[data-confirm]').click(function(ev) { modal='#dataConfirmModal';var href=$(this).attr('href');var title=$(this).attr('title');var icon=$(this).attr('data-icon');if(!icon) { icon='fa fa-trash-o';} if(!$(modal).length) { $('body').append('< div id="dataConfirmModal" class="modal fade" role="dialog" aria-labelledby="dataConfirmLabel" aria-hidden="true">< div class="modal-dialog">< div class="modal-content">< div class="modal-header">< button type="button" class="close" data-dismiss="modal" aria-hidden="true">< i class="fa fa-times"></i ></button >< br >< div class="col-md-1">< h3 class="modal-title">< i class="'+icon+'"></i ></h3 ></div >< div class="col-md-11">< h3 class="modal-title" id="dataConfirmLabel">'+title+'</h3 ></div ></h3 ></div >< div class="modal-body"></div >< div class="modal-footer">< button type="button" class="btn btn-default" data-dismiss="modal" aria-hidden="true">Abbrechen</button >< a type="button" class="btn btn-danger" id="dataConfirmOK">< i class="'+icon+'"></i > L öschen</a ></div ></div ></div ></div >');} $(modal).find('.modal-body').text($(this).attr('data-confirm'));$('#dataConfirmOK').attr('href', href);$(modal).modal({show:true});return false;});$('#terminateUser').click(function() { var terminate=window.confirm("ACHTUNG!\nDas wird Deinen Account permanent deaktivieren.\n"+"Bist Du Dir sicher, dass Du das tun willst?");if(terminate===true) { var terminateUser=window.confirm("Bist Du Dir wirklich ganz sicher?\n"+"Diese Aktion kann nicht rueckgaengig gemacht werden.");if(terminateUser===true) { $.get('system/templates/YaWK-bootstrap3/js/terminate-user.php', function(data) { if(data==="true") { setTimeout("window.location='logout.html'", 0);} else { alert("Fehler: "+data);} });} } });function dismissNotifications() { $.ajax({ url:'js/dismiss-notifications.php', type:'POST', success:function(data) { if(!data) { alert('Something went wrong!');return false;} } });$("#bell-label").fadeOut();$('#notification-header').html('You have 0 notifications');$('#notification-menu').fadeOut();} $("#dismiss").click(function() { dismissNotifications();});function disableButtons(delay) { $('#loginButton').removeClass().addClass('btn btn-success disabled').attr('id', 'LOGIN_FORBIDDEN');$('#resetPasswordButton').removeClass().addClass('btn btn-danger disabled');setTimeout(function() { $('#LOGIN_FORBIDDEN').attr('id', 'loginButton').removeClass().addClass('btn btn-success');$('#resetPasswordButton').removeClass().addClass('btn btn-danger');}, delay);} $("#loginButton").click(function(){ if($('#loginButton').length > 0) { if($('#loginButton').hasClass('btn') &&$('#loginButton').hasClass('btn-success') &&$('#loginButton').hasClass('disabled')) { } else { $("#loginForm").submit();disableButtons(10000);} } else if($('#LOGIN_FORBIDDEN').length > 0) { if($('#LOGIN_FORBIDDEN').hasClass('btn') &&$('#LOGIN_FORBIDDEN').hasClass('btn-success') &&$('#LOGIN_FORBIDDEN').hasClass('disabled')) { } else { } } });$("#blockedBtn").hover(function() { $("#blockedBtn").hide();$("#askBtn").fadeIn(820);});})