Diff -- /var/www/vhosts/3dshawn.com/ptmatrix.3dshawn.com/TEMPLATES/tf_admin_team.html

O Operator
Diff

/var/www/vhosts/3dshawn.com/ptmatrix.3dshawn.com/TEMPLATES/tf_admin_team.html

added on local at 2026-07-11 18:33:07

Added
+35
lines
Removed
-0
lines
Context
0
unchanged
Blobs
from
to d99b67df681b
Restore this content →
Unified diff
Naive LCS-based line diff. Additions in emerald, deletions in rose. Both sides decompressed live from BLOB_STORE.
1<div class="page-header">
2 <div><h1>Team Members</h1><p class="subtitle">Platform staff with admin access. Click a row to view full account.</p></div>
3</div>
4<style>
5 tr.au-clickable { cursor: pointer; transition: background 0.12s; }
6 tr.au-clickable:hover { background: rgba(255,255,255,0.04); }
7</style>
8<div class="card">
9[if:$has_users]
10<table class="table">
11 <thead><tr><th>Member</th><th>Email</th><th>Company</th><th>Role</th><th>Status</th><th>Last login</th></tr></thead>
12 <tbody>
13 [loop:@users]
14 <tr class="au-clickable" data-href="/admin_user.cgi?u=$loop1.id">
15 <td><div style="display:flex;align-items:center;gap:10px"><div class="avatar avatar-sm" style="background:$loop1.avatar_color">$loop1.initials</div><div>$loop1.display_name [if:$loop1.is_super_admin]<span class="badge danger">SUPER</span>[/if][if:$loop1.is_admin][if:!$loop1.is_super_admin]<span class="badge primary">ADMIN</span>[/if][/if]</div></div></td>
16 <td>$loop1.email</td>
17 <td>[if:$loop1.company_name]<span style="display:inline-block;width:8px;height:8px;border-radius:50%;background:$loop1.company_color;margin-right:6px"></span>$loop1.company_name[/if]</td>
18 <td><span class="badge">$loop1.role</span></td>
19 <td><span class="badge">$loop1.account_status</span></td>
20 <td style="font-size:12px;color:var(--col-text-dim)"><span class="ts" data-ts="$loop1.last_login_epoch" data-fmt="datetime">$loop1.last_login_at</span></td>
21 </tr>
22 [/loop]
23 </tbody>
24</table>
25<script>
26 document.querySelectorAll('tr.au-clickable').forEach(function(tr){
27 tr.addEventListener('click', function(e){
28 if (e.target.closest('a,button,form,input')) return;
29 window.location.href = tr.dataset.href;
30 });
31 });
32</script>
33[/if]
34[if:!$has_users]<div class="muted-empty"><h3>No team members yet</h3></div>[/if]
35</div>