76 lines
3.5 KiB
PHP
76 lines
3.5 KiB
PHP
<?php
|
|
$adminTitle = 'Assign Business Owners';
|
|
include __DIR__.'/admin_header.php';
|
|
|
|
if (isPost()) {
|
|
csrfCheck();
|
|
$act = p('_act');
|
|
if ($act === 'assign') {
|
|
$uid = (int)p('user_id'); $bid = (int)p('business_id');
|
|
if ($uid && $bid) {
|
|
qrun("INSERT OR IGNORE INTO business_owners(user_id,business_id)VALUES(?,?)",[$uid,$bid]);
|
|
flash('Owner assigned!','success');
|
|
}
|
|
}
|
|
if ($act === 'remove') {
|
|
qrun("DELETE FROM business_owners WHERE user_id=? AND business_id=?",[(int)p('user_id'),(int)p('business_id')]);
|
|
flash('Owner removed.','success');
|
|
}
|
|
go('/admin/owners.php'.($_GET?'?'.http_build_query($_GET):''));
|
|
}
|
|
|
|
$filterUser = iget('user_id');
|
|
$filterBiz = iget('business_id');
|
|
$users = qall("SELECT id,username FROM users WHERE is_active=1 ORDER BY username");
|
|
$bizs = qall("SELECT id,name FROM businesses WHERE is_active=1 ORDER BY name");
|
|
$owners = qall("SELECT bo.*,u.username,b.name biz_name FROM business_owners bo JOIN users u ON u.id=bo.user_id JOIN businesses b ON b.id=bo.business_id ORDER BY b.name,u.username");
|
|
?>
|
|
<?php adminTitle('Assign Business Owners','Link user accounts to businesses so they can manage listings, post alerts, and update menus.') ?>
|
|
|
|
<div class="ibox" style="border-color:var(--gold-d);margin-bottom:2rem">
|
|
<div class="ibox-title">🔑 ASSIGN OWNER TO BUSINESS</div>
|
|
<form method="POST">
|
|
<?=csrfField()?><input type="hidden" name="_act" value="assign">
|
|
<div class="form-row">
|
|
<div class="fg">
|
|
<label class="flabel">USER</label>
|
|
<select name="user_id" class="fselect" required>
|
|
<option value="">— Select user —</option>
|
|
<?php foreach($users as $u): ?><option value="<?=$u['id']?>"<?=$filterUser===$u['id']?' selected':''?>><?=e($u['username'])?></option><?php endforeach; ?>
|
|
</select>
|
|
</div>
|
|
<div class="fg">
|
|
<label class="flabel">BUSINESS</label>
|
|
<select name="business_id" class="fselect" required>
|
|
<option value="">— Select business —</option>
|
|
<?php foreach($bizs as $b): ?><option value="<?=$b['id']?>"<?=$filterBiz===$b['id']?' selected':''?>><?=e($b['name'])?></option><?php endforeach; ?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<button type="submit" class="btn btn-primary btn-sm">Assign Owner</button>
|
|
</form>
|
|
</div>
|
|
|
|
<div class="admin-sec-title">CURRENT OWNER ASSIGNMENTS (<?=count($owners)?>)</div>
|
|
<?php if($owners): ?>
|
|
<div class="tbl-wrap">
|
|
<table class="dtbl">
|
|
<thead><tr><th>BUSINESS</th><th>OWNER / USER</th><th></th></tr></thead>
|
|
<tbody>
|
|
<?php foreach($owners as $o): ?>
|
|
<tr>
|
|
<td class="td-name"><a href="/business.php?slug=<?=e(qval("SELECT slug FROM businesses WHERE id=?",[$o['business_id']]))?>" target="_blank"><?=e($o['biz_name'])?></a></td>
|
|
<td><?=e($o['username'])?></td>
|
|
<td>
|
|
<form method="POST" style="display:inline"><?=csrfField()?><input type="hidden" name="_act" value="remove"><input type="hidden" name="user_id" value="<?=$o['user_id']?>"><input type="hidden" name="business_id" value="<?=$o['business_id']?>"><button class="btn btn-xs btn-danger" data-confirm="Remove <?=e($o['username'])?> as owner of <?=e($o['biz_name'])?>?">Remove</button></form>
|
|
</td>
|
|
</tr>
|
|
<?php endforeach; ?>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<?php else: ?>
|
|
<div class="empty" style="padding:2rem"><div class="empty-ico">🔑</div><h3>No owner assignments yet</h3></div>
|
|
<?php endif; ?>
|
|
<?php include __DIR__.'/admin_footer.php'; ?>
|