|
1 {assign var="title" value="Users"} |
|
2 {include file="header.tpl"} |
|
3 |
|
4 <script type="text/javascript" src="/res/grep.js"></script> |
|
5 <script type="text/javascript" src="/res/user-create-form.js"></script> |
|
6 |
|
7 <h1>Users</h1> |
|
8 |
|
9 <p>This page allows you to view all the users in the system, and create, remove, disable or enable user accounts as necessary.</p> |
|
10 |
|
11 <div class="pull-right"> |
|
12 <form class="form-search form-inline" onsubmit="return false;"> |
|
13 <input class="search-query grep-filter" type="text" placeholder="Filter users..." /> |
|
14 </form> |
|
15 </div> |
|
16 <div class="pull-left"> |
|
17 <a href="#userCreateForm" onclick="return false;" data-toggle="modal" class="btn btn-success"> |
|
18 <i class="icon icon-white icon-plus"></i> |
|
19 Create user |
|
20 </a> |
|
21 </div> |
|
22 <table class="table table-bordered table-striped tablesorter sort-me"> |
|
23 <thead> |
|
24 <tr> |
|
25 <th>Name</th> |
|
26 <th>Username</th> |
|
27 <th>UNIX UID</th> |
|
28 <th>Title</th> |
|
29 <th class="actions"><i class="icon icon-cog"></i></th> |
|
30 </th> |
|
31 </thead> |
|
32 <tbody class="grep-me"> |
|
33 {foreach $users as $this_user} |
|
34 <tr> |
|
35 <td class="grep-col">{$this_user['cn']|escape:'html'}</td> |
|
36 <td class="grep-col">{$this_user['uid']|escape:'html'}</td> |
|
37 <td>{$this_user['uidNumber']|escape:'html'}</td> |
|
38 <td class="grep-col">{if isset($this_user['title'])}{$this_user['title']|escape:'html'}{else}<em>No job title set</em>{/if}</td> |
|
39 <td class="actions"> |
|
40 {if $this_user['enabled']} |
|
41 <a href="/users/disable/{$this_user['uid']|escape:'html'}" class="btn btn-warning btn-mini show-tooltip" title="Disable account"> |
|
42 <i class="icon icon-white icon-lock"></i> |
|
43 </a> |
|
44 {else} |
|
45 <a href="/users/enable/{$this_user['uid']|escape:'html'}" class="btn btn-success btn-mini show-tooltip" title="Enable account"> |
|
46 <i class="icon icon-white icon-ok"></i> |
|
47 </a> |
|
48 {/if} |
|
49 <a href="#" onclick="resetPassword('{$this_user['uid']|escape:'html'}'); return false;" class="btn btn-primary btn-mini show-tooltip" title="Reset password"> |
|
50 <i class="icon icon-white icon-refresh"></i> |
|
51 </a> |
|
52 <a href="/users/edit/{$this_user['uid']|escape:'html'}" class="btn btn-inverse btn-mini show-tooltip" title="Edit user details"> |
|
53 <i class="icon icon-white icon-pencil"></i> |
|
54 </a> |
|
55 <a href="/users/delete/{$this_user['uid']|escape:'html'}" class="btn btn-danger btn-mini show-tooltip" title="Delete account"> |
|
56 <i class="icon icon-white icon-trash"></i> |
|
57 </a> |
|
58 </td> |
|
59 </tr> |
|
60 {/foreach} |
|
61 </tbody> |
|
62 </table> |
|
63 |
|
64 <form method="post" action="/users/create" class="form-horizontal" name="userCreateForm"> |
|
65 <div class="modal hide fade" id="userCreateForm"> |
|
66 <div class="modal-header"> |
|
67 <h3>Create new user</h3> |
|
68 </div> |
|
69 <div class="modal-body"> |
|
70 |
|
71 <div class="control-group"> |
|
72 <label class="control-label">Given name:</label> |
|
73 <div class="controls"> |
|
74 <input type="text" name="givenName" value="" placeholder="John" /> |
|
75 </div> |
|
76 </div> |
|
77 |
|
78 <div class="control-group"> |
|
79 <label class="control-label">Surname:</label> |
|
80 <div class="controls"> |
|
81 <input type="text" name="surname" value="" placeholder="Doe" /> |
|
82 </div> |
|
83 </div> |
|
84 |
|
85 <div class="control-group error"> |
|
86 <label class="control-label">Username:</label> |
|
87 <div class="controls"> |
|
88 <input type="text" name="uid" value="" placeholder="jdoe" /> |
|
89 <p class="help-block">All lowercase. Will be used for logging in to the admin/resale portal, e-mail, etc.</p> |
|
90 </div> |
|
91 </div> |
|
92 |
|
93 <div class="control-group unpadded-bottom"> |
|
94 <label class="control-label">Password:</label> |
|
95 <div class="controls"> |
|
96 <p><input type="password" name="password" value="" placeholder="Password" /></p> |
|
97 <p class="help-block compliance-status">Must meet |
|
98 <a onclick="window.open(this.href); return false;" href="/pw-strength">password security requirements</a>.</p> |
|
99 </div> |
|
100 </div> |
|
101 |
|
102 <div class="control-group"> |
|
103 <div class="controls"> |
|
104 <p><input type="password" name="password_confirm" value="" placeholder="Confirm password" /></p> |
|
105 <p class="help-block compliance-status"></p> |
|
106 </div> |
|
107 </div> |
|
108 |
|
109 <div class="control-group"> |
|
110 <label class="control-label">Common name:</label> |
|
111 <div class="controls"> |
|
112 <input type="text" name="cn" value="" placeholder="John Doe" /> |
|
113 <p class="help-block">Typically the user's full name, but sometimes a more informal representation (e.g. "Dan" instead of "Daniel").</p> |
|
114 </div> |
|
115 </div> |
|
116 |
|
117 <div class="control-group"> |
|
118 <label class="control-label">Job title:</label> |
|
119 <div class="controls"> |
|
120 <input type="text" name="title" value="" placeholder="Beverage Retrieval Specialist" /> |
|
121 </div> |
|
122 </div> |
|
123 |
|
124 <div class="control-group"> |
|
125 <label class="control-label">UID:</label> |
|
126 <div class="controls"> |
|
127 <input type="text" readonly="readonly" name="uidNumber" value="{get_next_uid}" /> |
|
128 <p class="help-block">UNIX numeric user ID - the lowest available is picked automatically for you.</p> |
|
129 </div> |
|
130 </div> |
|
131 |
|
132 </div> |
|
133 <div class="modal-footer"> |
|
134 <input type="submit" class="btn btn-primary" value="Create user" /> |
|
135 <a class="btn" data-dismiss="modal">Cancel</a> |
|
136 </div> |
|
137 </div> |
|
138 </form> |
|
139 |
|
140 <form method="post" action="/users/resetpw" class="form-horizontal" name="userResetForm"> |
|
141 <div class="modal hide fade" id="userResetForm"> |
|
142 <div class="modal-header"> |
|
143 <h3>Reset password</h3> |
|
144 </div> |
|
145 <div class="modal-body"> |
|
146 |
|
147 <div class="control-group"> |
|
148 <label class="control-label">Username:</label> |
|
149 <div class="controls"> |
|
150 <input type="text" name="uid" value="" placeholder="John" /> |
|
151 </div> |
|
152 </div> |
|
153 |
|
154 <div class="control-group unpadded-bottom"> |
|
155 <label class="control-label">Password:</label> |
|
156 <div class="controls"> |
|
157 <p><input type="password" name="password" value="" placeholder="Password" /></p> |
|
158 <p class="help-block compliance-status">Must meet |
|
159 <a onclick="window.open(this.href); return false;" href="/pw-strength">password security requirements</a>.</p> |
|
160 </div> |
|
161 </div> |
|
162 |
|
163 <div class="control-group"> |
|
164 <div class="controls"> |
|
165 <p><input type="password" name="password_confirm" value="" placeholder="Confirm password" /></p> |
|
166 <p class="help-block compliance-status"></p> |
|
167 </div> |
|
168 </div> |
|
169 |
|
170 </div> |
|
171 <div class="modal-footer"> |
|
172 <input type="submit" class="btn btn-primary" value="Reset password" /> |
|
173 <a class="btn" data-dismiss="modal">Cancel</a> |
|
174 </div> |
|
175 </div> |
|
176 </form> |
|
177 |
|
178 {include file="footer.tpl"} |