Add gamification trust analytics polish
This commit is contained in:
@@ -803,7 +803,16 @@ function openCarProfile() {
|
||||
}
|
||||
|
||||
async function loadServiceCenters() {
|
||||
state.serviceCenters = await api("/service-centers/my");
|
||||
const centers = await api("/service-centers/my");
|
||||
state.serviceCenters = await Promise.all(
|
||||
centers.map(async (center) => {
|
||||
try {
|
||||
return { ...center, trust_score: await api(`/service-centers/${center.id}/trust-score`) };
|
||||
} catch (_) {
|
||||
return center;
|
||||
}
|
||||
}),
|
||||
);
|
||||
renderServiceCenters();
|
||||
}
|
||||
|
||||
@@ -821,12 +830,23 @@ function renderServiceCenters() {
|
||||
<strong>${center.display_name || center.name}</strong>
|
||||
<small>${[center.city, center.address].filter(Boolean).join(", ") || "Адрес не указан"}</small>
|
||||
<small>Статус: ${center.verification_status}</small>
|
||||
${center.trust_score ? `<span class="trust-badge">${trustLabel(center.trust_score.trust_level)} · ${center.trust_score.trust_score}/100</span>` : ""}
|
||||
</div>
|
||||
`,
|
||||
)
|
||||
.join("");
|
||||
}
|
||||
|
||||
function trustLabel(level) {
|
||||
const labels = {
|
||||
new_service: "Новый сервис",
|
||||
verified_service: "Проверенный сервис",
|
||||
reliable_service: "Надежный сервис",
|
||||
high_confidence_service: "Высокое доверие",
|
||||
};
|
||||
return labels[level] || "Новый сервис";
|
||||
}
|
||||
|
||||
function renderPlaceholderList(selector, message) {
|
||||
const root = document.querySelector(selector);
|
||||
if (root) root.innerHTML = `<div class="empty">${message}</div>`;
|
||||
|
||||
@@ -1373,6 +1373,17 @@ select {
|
||||
color: var(--muted);
|
||||
}
|
||||
|
||||
.trust-badge {
|
||||
width: fit-content;
|
||||
padding: 5px 8px;
|
||||
color: #17362f;
|
||||
border: 1px solid rgba(22, 128, 106, 0.2);
|
||||
border-radius: 8px;
|
||||
background: rgba(94, 224, 189, 0.18);
|
||||
font-size: 12px;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
@keyframes toastIn {
|
||||
from {
|
||||
opacity: 0;
|
||||
|
||||
Reference in New Issue
Block a user