<>
document.addEventListener('DOMContentLoaded', function () {
try {
var groups = window.skilljarUserStudentGroups;
// Validate Skilljar group array
if (!Array.isArray(groups) || groups.length === 0) {
return; // No groups → show no logo
}
var suffix = '-portal';
var portalGroups = [];
// Collect all groups whose name ends with "-portal" (case-insensitive)
groups.forEach(function (g) {
if (!g || !g.name) return;
var nameLower = String(g.name).trim().toLowerCase();
if (nameLower.endsWith(suffix)) {
portalGroups.push(g);
}
});
// No portal groups → show no logo
if (portalGroups.length === 0) {
return;
}
// Allowlist of supported portal slugs
var allowedCompanies = ['postman', 'acme', 'contoso'];
// Extend this list as new portal customers are added
// Insert a logo for each portal group found
portalGroups.forEach(function (pg) {
var nameLower = pg.name.trim().toLowerCase();
// Strip "-portal" suffix
var baseName = nameLower.slice(0, nameLower.length - suffix.length);
// Normalize slug
var slug = baseName
.trim()
.replace(/\s+/g, '-') // spaces → hyphens
.replace(/[^a-z0-9-]/g, ''); // remove invalid chars
if (!slug || allowedCompanies.indexOf(slug) === -1) {
return;
}
insertLogo(slug);
});
// -----------------------------------------
// Insert Logo Helper
// (NO default fallback — slug must match)
// -----------------------------------------
function insertLogo(slug) {
var container = document.getElementById('customer-portal-logo');
if (!container) return;
var elem = document.createElement('img');
elem.setAttribute('alt', 'Logo');
// Map slug → logo asset (examples)
switch (slug) {
case 'acme':
elem.setAttribute('src', 'https://example.com/logos/acme-portal-logo.png');
elem.setAttribute('width', '375');
elem.setAttribute('height', '80');
break;
case 'contoso':
elem.setAttribute('src', 'https://example.com/logos/contoso-portal-logo.png');
elem.setAttribute('width', '349');
elem.setAttribute('height', '65');
break;
case 'postman':
elem.setAttribute('src', 'https://everpath-course-content.s3-accelerate.amazonaws.com/instructor%2Fc3jrngphf22ys6kxwfiw0g9kk%2Fpublic%2F1672880408%2Fpostman-orange-logo.1672880408868.png');
elem.setAttribute('width', '370');
break;
default:
return; // Do nothing — no logo
}
container.appendChild(elem);
}
} catch (e) {
if (window.console && console.warn) {
console.warn('Portal logo init failed', e);
}
}
});
<>