Skip to content

Commit 06baf03

Browse files
committed
Reorder navigation menu, hide stock adjustment from staff
1 parent 9a2f4d0 commit 06baf03

2 files changed

Lines changed: 45 additions & 21 deletions

File tree

β€Žwww/js/modules/stock.jsβ€Ž

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ export class StockManager {
4242
const container = document.getElementById("stockList");
4343
if (!container) return;
4444

45+
// Hide adjustment tab for staff
46+
this.hideAdjustmentTabForStaff();
47+
4548
try {
4649
// Use withLoading for the Firebase operation
4750
const stock = await UIManager.withLoading(async () => {
@@ -185,10 +188,17 @@ export class StockManager {
185188

186189
/**
187190
* Filter between stock view tabs (current stock vs adjustments)
191+
* Staff cannot access adjustment section
188192
* @param {'current'|'adjustment'} section - Section to display
189193
* @param {Event} [event] - Optional click event for button styling
190194
*/
191195
static filterStockTab(section, event) {
196+
// Staff cannot access adjustment section
197+
if (section === 'adjustment' && AppState.userRole === 'staff') {
198+
UIManager.showToast('You do not have permission to access stock adjustments');
199+
return;
200+
}
201+
192202
const sections = {
193203
current: document.getElementById("currentStockSection"),
194204
adjustment: document.getElementById("stockAdjustmentSection")
@@ -215,6 +225,20 @@ export class StockManager {
215225
}
216226
}
217227

228+
/**
229+
* Hide stock adjustment tab for staff users
230+
* Called when stock page is loaded
231+
*/
232+
static hideAdjustmentTabForStaff() {
233+
if (AppState.userRole === 'staff') {
234+
// Hide the Stock Adjustment button
235+
const filterButtons = document.querySelectorAll('#stock .filter-btn');
236+
if (filterButtons.length > 1) {
237+
filterButtons[1].style.display = 'none';
238+
}
239+
}
240+
}
241+
218242
/**
219243
* Load items into the stock adjustment dropdown
220244
* Populates select element with all inventory items

β€Žwww/templates/navigation.htmlβ€Ž

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ <h2>Aadhat Billing</h2>
2323
<span class="nav-icon">πŸ“‹</span>
2424
Billing
2525
</a>
26+
<a href="#" onclick="window.app.nav.showTab('wholesale-sales', event)">
27+
<span class="nav-icon">🧾</span>
28+
Sales
29+
</a>
2630
<a href="#" onclick="window.app.nav.showTab('expenses', event)">
2731
<span class="nav-icon">πŸ’³</span>
2832
Expenses
@@ -31,42 +35,30 @@ <h2>Aadhat Billing</h2>
3135
<span class="nav-icon">πŸ“¦</span>
3236
Items
3337
</a>
34-
<a href="#" onclick="window.app.nav.showTab('stock', event)">
35-
<span class="nav-icon">πŸ“Š</span>
36-
Stock
37-
</a>
38-
<a href="#" onclick="window.app.nav.showTab('wholesale-sales', event)">
39-
<span class="nav-icon">πŸ’°</span>
40-
Sales
41-
</a>
4238
<a href="#" onclick="window.app.nav.showTab('history', event)">
4339
<span class="nav-icon">πŸ“œ</span>
4440
History
4541
</a>
42+
<a href="#" onclick="window.app.nav.showTab('stock', event)">
43+
<span class="nav-icon">πŸ“Š</span>
44+
Stocks
45+
</a>
4646
<a href="#" onclick="window.app.nav.showTab('due', event)">
4747
<span class="nav-icon">πŸ’Έ</span>
4848
Outstanding
4949
</a>
50-
<a href="#" onclick="window.app.nav.showTab('reports', event)">
51-
<span class="nav-icon">πŸ“ˆ</span>
52-
Reports
53-
</a>
5450
<a href="#" onclick="window.app.nav.showTab('finance', event)">
5551
<span class="nav-icon">πŸ’°</span>
5652
Finance
5753
</a>
54+
<a href="#" onclick="window.app.nav.showTab('reports', event)">
55+
<span class="nav-icon">πŸ“ˆ</span>
56+
Reports
57+
</a>
5858
<a href="#" onclick="window.app.nav.showTab('analytics', event)">
59-
<span class="nav-icon">πŸ“Š</span>
59+
<span class="nav-icon">πŸ“‰</span>
6060
Analytics
6161
</a>
62-
<a href="#" onclick="window.app.nav.showTab('chat', event)">
63-
<span class="nav-icon">πŸ’¬</span>
64-
AI Assistant
65-
</a>
66-
<a href="#" onclick="window.app.nav.showTab('settings', event)">
67-
<span class="nav-icon">βš™οΈ</span>
68-
Settings
69-
</a>
7062
<a href="#" onclick="window.app.nav.showTab('admin', event)" id="adminNavLink" style="display: none;">
7163
<span class="nav-icon">πŸ› οΈ</span>
7264
Admin
@@ -75,6 +67,14 @@ <h2>Aadhat Billing</h2>
7567
<span class="nav-icon">πŸ”¬</span>
7668
Diagnostics
7769
</a>
70+
<a href="#" onclick="window.app.nav.showTab('settings', event)">
71+
<span class="nav-icon">βš™οΈ</span>
72+
Settings
73+
</a>
74+
<a href="#" onclick="window.app.nav.showTab('chat', event)">
75+
<span class="nav-icon">πŸ€–</span>
76+
AI Assistant
77+
</a>
7878
</nav>
7979
</div>
8080

0 commit comments

Comments
Β (0)