3
minutter lesetid

Noova gir gaver direkte fra HR-systemet med Glede-integrasjonen i Huma

Silje Støldal
Manager Organization i Noova Energy Systems

Noova Energi System, en pioner innen energiteknologi, står i frontlinjen for å skape en bærekraftig fremtid. Gjennom sin innovative tilnærming har de hjulpet bedrifter med å redusere sitt energiforbruk betydelig. Men bærekraft for Noova handler ikke kun om energibruk. Det omfatter også kulturen deres, inkludert anerkjennelse og belønning av ansatte.

Julen er en tid for å gi tilbake, og for Noova betyr dette å vise takknemlighet til sine ansatte. Silje Støldal jobber som Manager Organization & Customer Success, og er ansvarlig for gavegivning i selskapet. "Våre ansatte står på dag inn og dag ut, og julegaven er en perfekt måte å si takk for årets innsats og god jul," deler hun.

Silje bruker til daglig det moderne HR-systemet Huma, hvor hun har  full oversikt over de ansattes merkedager, som bursdag, jubileum, oppstart, eller avgang. Hun oppdaget Glede da hun fikk en e-post fra Huma hvor de annonserte at man nå kunne sende gavekort direkte fra HR-systemet.


Glede-integrasjonen i Huma gjør gaver enkelt

De testet det først på noen i teamet og så hvor enkelt det var:

Tilbakemeldingene fra mottakerne av de første gaveutsendingene var så gode at vi fort begynte å bruke Glede til både julegaver og jubiléer

De ansatte fikk dermed et gavekort fra Glede i årets julegave, sendt direkte fra Huma sin plattform: 

Glede-integrasjonen har gjort jobben med julegavene ekstremt mye enklere enn før

“Etter å ha testet ut ulike gave alternativer tidligere, inkludert forskjellige gavekort, fant vi ut at Glede definitivt er det enkleste siden man kan bruke gavekortet hvor som helst i landet, både i butikk og på nett - så dette er vi veldig glad for at vi oppdaget!”

Bærekraft og valgfrihet gjør Glede til den perfekte julegaven 

For Noova er enkelhet, bærekraft, og valgfrihet viktig når de skal gi gaver til ansatte. "Vi har ansatte i forskjellige livsfaser. Derfor er det viktig for oss at gaven kan brukes til det de selv ønsker, enten det er å donere til en veldedig organisasjon eller bruke det på noe annet som gir dem glede”. 

Mottakelsen av gavene har vært kjempe positiv blant Noovas ansatte. Silje anbefaler på det varmeste Glede til andre bedrifter: "Det er en super løsning, og jeg har allerede anbefalt det til flere bekjente," avslutter hun.

Gi årets julegave med Glede? Klikk her!

Kontakt oss

Tusen takk! Vi har mottatt din henvendelse, og vil svare deg i løpet av én arbeidsdag 😊
Uups! Noe gikk galt, og meldingen ble ikke sendt. Prøv igjen, eller ta kontakt med oss på e-post: support@glede.app

Kom i gang med Glede

Gi gavekortet som kan brukes overalt — i butikk og på nett!

(function () { const DEBUG = false; const log = (...a) => DEBUG && console.log('[weglot-ui]', ...a); const normalize = (code) => { if (!code) return ''; code = String(code).toLowerCase(); if (code.includes('-')) code = code.split('-')[0]; // en-US -> en if (code === 'nb') code = 'no'; // Bokmål -> 'no' if (code === 'se') code = 'sv'; // common slip return code; }; // We cache a template per language so we can rebuild the list let TEMPLATES = { inner: {}, outer: {} }; function cacheTemplates(wrapper) { // Grab any [lang] blocks (from toggle OR list) and store inner/outer wrapper.querySelectorAll('[lang]').forEach(el => { const lang = normalize(el.getAttribute('lang')); if (!lang) return; if (!TEMPLATES.inner[lang]) TEMPLATES.inner[lang] = el.innerHTML; if (!TEMPLATES.outer[lang]) TEMPLATES.outer[lang] = el.outerHTML; }); log('cached templates', TEMPLATES); } function updateSwitcher(currentLang) { currentLang = normalize(currentLang); const wrappers = document.querySelectorAll('.wg-element-wrapper.sw6'); if (wrappers.length === 0) { log('no wrappers'); return; } else { wrappers.forEach(wrapper => { const toggle = wrapper.querySelector('.wg-dropdown-toggle'); const list = wrapper.querySelector('.wg-dd-1-list'); if (!toggle || !list) { log('missing toggle/list'); return; } // Ensure templates are cached (first run on this page load) if (!TEMPLATES.inner.no || !TEMPLATES.inner.sv || !TEMPLATES.inner.en) { cacheTemplates(wrapper); } // If any template still missing, bail (structure not as expected) if (!TEMPLATES.inner.no || !TEMPLATES.inner.sv || !TEMPLATES.inner.en) { log('incomplete templates'); return; } // 1) Set TOGGLE visual (attribute + optional state class + content) toggle.setAttribute('lang', currentLang); toggle.classList.remove('is-no','is-sv','is-en'); toggle.classList.add(`is-${currentLang}`); toggle.innerHTML = TEMPLATES.inner[currentLang]; // 2) Rebuild LIST to contain ONLY the two other languages (fresh each time) const ALL = ['no','sv','en']; const others = ALL.filter(l => l !== currentLang); // Build a clean list using the captured OUTER html so structure/classes match const htmlA = TEMPLATES.outer[others[0]]; const htmlB = TEMPLATES.outer[others[1]]; // Clear and insert exactly two items list.innerHTML = ''; // Insert via range to keep outerHTML intact const r1 = document.createRange(); r1.selectNode(list); list.appendChild(r1.createContextualFragment(htmlA)); const r2 = document.createRange(); r2.selectNode(list); list.appendChild(r2.createContextualFragment(htmlB)); // Optional: normalize classes on list items too list.querySelectorAll('[lang]').forEach(el => { const l = normalize(el.getAttribute('lang')); el.classList.remove('is-no','is-sv','is-en'); el.classList.add(`is-${l}`); }); log('updated → current:', currentLang, 'others:', others); } ) } } // Event delegation (survives DOM swaps) document.addEventListener('click', function (e) { const link = e.target.closest('.wg-element-wrapper.sw6 [lang]'); if (!link) return; e.preventDefault(); const lang = normalize(link.getAttribute('lang')); // Trigger Weglot switch (subdomain setups will reload; path setups will not) document.cookie = "glede_locale=" + lang + "; path=/; domain=.glede.app; max-age=31536000"; Weglot.switchTo(lang); // Do NOT call update here for subdomain setups; page will reload anyway. }); // Run AFTER Weglot has rendered (important on subdomain reload) function runAfterWeglotReady() { const run = () => { const lang = normalize(Weglot.getCurrentLang()); // Wait one frame to let Weglot paint its switcher nodes requestAnimationFrame(() => updateSwitcher(lang)); }; Weglot.on('initialized', run); // If already initialized (script included late), run immediately if (Weglot.getCurrentLang && Weglot.getCurrentLang()) run(); // For path-based projects (no reload), update visuals after change Weglot.on('languageChanged', (newLang) => { updateSwitcher(newLang) }); } // Boot when DOM is ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', runAfterWeglotReady); } else { runAfterWeglotReady(); } })();