Leaderboard-widget voor de Launchpad — punten = % van target (salweb04/dashboard_data.php). Geen onderdeel van de warehouse-app.
Find a file
ramon c76cb71e33 leaderboard: add 'You · #X' line in header (visible when collapsed)
Matches the logged-in launchpad employee (BdEmployee first/last name) to
the leaderboard NAM; shows their Sales/Service monthly rank in the header,
highlights their row, and appends a 'You · #N' row when outside the top.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 12:57:15 +00:00
leaderboard-launchpad-demo.php Launchpad leaderboard: widget + demo + scoring doc 2026-06-29 21:53:06 +00:00
leaderboard-scoring-voor-chris.md Launchpad leaderboard: widget + demo + scoring doc 2026-06-29 21:53:06 +00:00
part-leaderboard.php leaderboard: add 'You · #X' line in header (visible when collapsed) 2026-06-30 12:57:15 +00:00
README.md Launchpad leaderboard: widget + demo + scoring doc 2026-06-29 21:53:06 +00:00

Launchpad Leaderboard

Een leaderboard-widget voor de BetterDeals Launchpad (salweb02). De punten zijn het percentage van de target per medewerker (omzet ÷ target × 100) — geen Cg.-bedragen als ranglijst. Bron: https://salweb04/dashboard_data.php (Counterpoint + Shopify).

Dit is geen onderdeel van de warehouse-app — vandaar een eigen repo.

Wat het toont

  • 2 tabs: Sales en Service.
  • Per tab de periodes samen, met kleur-legenda:
    • Sales: Daily · Monthly · Quarterly
    • Service: Today · Month
  • Drempelkleuren op het %: ≥100% groen · ≥80% amber · ≥60% blauw · <60% rood.
  • "Cg … to go" (rest tot target) verschijnt alléén als je dichtbij bent: maand < 10.000, dag < 2.500 (anders alleen het %). bij behaald.
  • Inklapbaar (start ingeklapt, onthoudt status + gekozen tab via localStorage), responsive (volle breedte), past bij dark/light via de launchpad-thema-variabelen.

De scoring (kort)

punten = omzet ÷ target × 100   (1 decimaal)

Targets komen uit dashboard_data.phpcalculated (sales dag 6.000 / maand 120.000 / kwartaal 499.500; service maand 3.250, dag = maand ÷ dagen). Lees ze altijd uit de JSON, niet hardcoderen.

Bestanden

Bestand Wat
part-leaderboard.php De widget (launchpad-partial, salweb02). PHP 7.0-compatibel.
leaderboard-launchpad-demo.php Standalone demo (draait op PHP 8.x, bv. de warehouse-server).
leaderboard-scoring-voor-chris.md Uitleg + kant-en-klare scoring-PHP.

Installeren in de Launchpad

  1. Zet part-leaderboard.php in /var/www/html/launch-pad/.
  2. De launchpad laadt 'm al via js/launchpad.js ($('#bd-leaderboard').load('part-leaderboard.php')) in de bestaande <div id="bd-leaderboard">.
  3. Klaar. Terugdraaien = part-leaderboard.php weghalen (de container blijft leeg).

Let op: salweb02 draait PHP 7.0 — geen arrow functions (fn)/match. Lint met php -l op die server.

Bron-API

https://salweb04/dashboard_data.php levert o.a. salesDailyLeaderboard / salesMonthlyLeaderboard / salesQuarterlyLeaderboard / serviceDailyLeaderboard / serviceMonthlyLeaderboard (elk NAM/USR_ID + omzetveld) en de targets in calculated.