(function() { 'use strict'; // ========================================================================= // SECAO 1: CONFIGURACOES CENTRALIZADAS // ========================================================================= const CONFIG = { loaderControl: { manage: true, zIndex: 10000, fadeOutMs: 400, backdropColor: 'rgba(255,255,255,0.6)', blurPx: 10, }, // ------------------------------------------------------------------------- // MODO DE OPERACAO // enabled: true -> Modo RetryStep (1 bloco, ignora no-fill, timeout global) // enabled: false -> Modo Cascata (3 blocos em sequencia, no-fill pula bloco) // ------------------------------------------------------------------------- retryStep: { enabled: true, timeoutMs: 10000, logAttempts: true, }, // ------------------------------------------------------------------------- // BLOCO ATIVO // Usado apenas quando retryStep.enabled = true. // ------------------------------------------------------------------------- activePlacement: 'bloco2', // ------------------------------------------------------------------------- // ORDEM DE CASCATA // Usado apenas quando retryStep.enabled = false. // ------------------------------------------------------------------------- executionOrder: ['bloco2', 'bloco1', 'bloco3'], // ------------------------------------------------------------------------- // CADASTRO DE BLOCOS // ------------------------------------------------------------------------- placements: { 'bloco1': { cookieName: 'AutoRewardCompleted_1', placementId: 'vja_rewarded_gift', adUnitPath: 'vja_rewarded_gift', divId: 'vja_rewarded_gift', timeoutMs: 10000 }, 'bloco2': { cookieName: 'AutoRewardCompleted_2', placementId: 'av_rewarded', adUnitPath: 'vja_rewarded', divClass: 'av-rewarded', timeoutMs: 8000 }, 'bloco3': { cookieName: 'AutoRewardCompleted_3', placementId: 'vja_rewarded_quizz', adUnitPath: 'vja_rewarded_quizz', divId: 'vja_rewarded_quizz', timeoutMs: 8000 } }, // --- Cookies --- // Mesmo cookie para completo e abandonado; muda apenas a duracao. cookie: { duration_minutes: 60, duration_closed_minutes: 2, samesite: 'Lax', secure: false, }, // --- Loader Textos --- loader: { loader_text_element_id: 'av-loader__text', text: 'O conteudo sera liberado apos o anuncio.', text_initial: 'O conteudo sera liberado apos o anuncio.', text_fallback1:'O conteudo sera liberado apos o anuncio.', text_fallback2:'O conteudo sera liberado apos o anuncio.', loaderBloqueado: 'Carregando...', }, // --- Prevencao Contra Multi-Requests --- guard_flag: '__autoRewardRunning', // --- Rastreamento (Analytics GA4) --- analytics: { enable_ga4: false }, // --- Fallback Top --- fallbackTop: { targetWrapperId: 'vja_top_wrapper2', adElementId: 'vja_top', insertPosition: 'afterend', htmlTemplate: `

Anuncios

` } }; // ========================================================================= // SECAO 2: FUNCOES AUXILIARES E UI // ========================================================================= // ---- LOADER ---- let _rewardLoaderEl = null; let _fallbackTopInserido = false; function criarRewardLoader(text) { if (!CONFIG.loaderControl.manage) return; if (document.getElementById('av-reward-loader')) return; if (!document.getElementById('av-reward-loader-style')) { const style = document.createElement('style'); style.id = 'av-reward-loader-style'; style.innerHTML = ` #av-reward-loader { position: fixed; width: 100vw; height: 100vh; z-index: ${CONFIG.loaderControl.zIndex}; top: 0; left: 0; background-color: ${CONFIG.loaderControl.backdropColor}; backdrop-filter: blur(${CONFIG.loaderControl.blurPx}px); -webkit-backdrop-filter: blur(${CONFIG.loaderControl.blurPx}px); opacity: 0; animation: rl-fadeIn 0.4s forwards; display: flex; flex-direction: column; align-items: center; justify-content: center; } @keyframes rl-fadeIn { from { opacity: 0 } to { opacity: 1 } } @keyframes rl-fadeOut { from { opacity: 1 } to { opacity: 0 } } #av-reward-loader__spinner { width: 52px; height: 52px; border: 7px solid #f3f3f3; border-radius: 50%; border-top: 7px solid #808080; animation: rl-spin 0.9s linear infinite; } @keyframes rl-spin { 0%{transform:rotate(0deg)} 100%{transform:rotate(360deg)} } #av-reward-loader__text { margin-top: 18px; font-size: 17px; font-weight: bold; text-align: center; padding: 0 24px; color: #222; } `; document.head.appendChild(style); } const el = document.createElement('div'); el.id = 'av-reward-loader'; el.innerHTML = `
${text || ''}
`; document.body.appendChild(el); _rewardLoaderEl = el; window.scrollTo({ top: 0, behavior: 'smooth' }); } function setRewardLoaderText(text) { try { const avEl = document.getElementById(CONFIG.loader.loader_text_element_id); if (avEl) avEl.textContent = text; } catch(e) {} const el = document.getElementById('av-reward-loader__text'); if (el) el.textContent = text; } function fecharRewardLoader(motivo) { if (!CONFIG.loaderControl.manage) return; const el = document.getElementById('av-reward-loader'); if (!el) return; console.log(`[Reward Loader] Fechando loader. Motivo: ${motivo}`); el.style.animation = `rl-fadeOut ${CONFIG.loaderControl.fadeOutMs}ms forwards`; setTimeout(() => { el.remove(); _rewardLoaderEl = null; }, CONFIG.loaderControl.fadeOutMs + 50); } // ---- COOKIES ---- function setCookie(name, value, minutes) { const date = new Date(); date.setTime(date.getTime() + (minutes * 60 * 1000)); const expires = 'expires=' + date.toUTCString(); const samesite = 'SameSite=' + CONFIG.cookie.samesite; const secure = CONFIG.cookie.secure ? '; Secure' : ''; document.cookie = name + '=' + (value || '') + '; ' + expires + '; path=/; ' + samesite + secure; } function getCookie(name) { const nameEQ = name + '='; const ca = document.cookie.split(';'); for (let i = 0; i < ca.length; i++) { let c = ca[i].trimStart(); if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length); } return null; } function usuarioJaInteragiu(placement) { return !!(placement && getCookie(placement.cookieName)); } function motivoCookieAtivo(placement) { return usuarioJaInteragiu(placement) ? 'already_interacted' : null; } // ---- ANALYTICS ---- function getTrackerData() { const params = new URLSearchParams(window.location.search); const getVal = (paramName, storageKey) => { let val = params.get(paramName); if (val) return val; val = sessionStorage.getItem(storageKey); if (val) return val; val = localStorage.getItem(storageKey); if (val) return val; return ''; }; return { utm_source: getVal('utm_source', 'avUtmSource'), utm_medium: getVal('utm_medium', 'avUtmMedium'), utm_campaign: getVal('utm_campaign', 'avUtmCampaign'), utm_term: getVal('utm_term', 'avUtmTerm'), utm_content: getVal('utm_content', 'avUtmContent'), gclid: getVal('gclid', 'avGclid'), fbclid: getVal('fbclid', 'avFbclid'), tbclid: getVal('tbclid', 'avTbclid'), ttclid: getVal('ttclid', 'avTtclid'), user_id: localStorage.getItem('avUserId') || '', session_id: sessionStorage.getItem('avSessionId') || '', experiment: sessionStorage.getItem('avExperiment') || '', marketplace: sessionStorage.getItem('avMarketplace') || '' }; } function trackGA4(eventName, placement, extraParams = {}) { if (!CONFIG.analytics.enable_ga4) return; if (!window.dataLayer) window.dataLayer = []; const payload = { event: eventName, country: window.av?.country || sessionStorage.getItem('avCountry') || 'unknown', ...getTrackerData(), ...extraParams }; if (placement) payload.reward_block = placement.placementId; window.dataLayer.push(payload); console.log(`[GA4 Track] ${eventName}`, payload); } // ---- FALLBACK TOP ---- function inserirAnuncioTop(reason = 'unknown') { if (_fallbackTopInserido) { fecharRewardLoader(reason); return; } fecharRewardLoader(reason); const targetDiv = document.getElementById(CONFIG.fallbackTop.targetWrapperId); if (!targetDiv) { console.warn(`[Reward] Fallback (${CONFIG.fallbackTop.targetWrapperId}) nao encontrado.`); return; } if (document.getElementById(CONFIG.fallbackTop.adElementId)) { _fallbackTopInserido = true; return; } console.log(`[Reward] Inserindo fallback top. Motivo: ${reason}`); trackGA4('reward_ad_fallback_top', null, { fallback_reason: reason }); targetDiv.insertAdjacentHTML(CONFIG.fallbackTop.insertPosition, CONFIG.fallbackTop.htmlTemplate); _fallbackTopInserido = true; } // ---- DIV ISCA ---- function inserirDivGenerica(placement) { if (placement.divId) { if (document.getElementById(placement.divId)) return; const div = document.createElement('div'); div.id = placement.divId; div.style.display = 'none'; document.body.appendChild(div); } else if (placement.divClass) { if (document.querySelector('.' + placement.divClass)) return; const div = document.createElement('div'); div.className = placement.divClass; div.style.display = 'none'; if (placement.divClass === 'av-rewarded') { div.dataset.avRewarded = 'true'; div.setAttribute('aria-hidden', 'true'); } document.body.appendChild(div); } } // ========================================================================= // SECAO 3A: MOTOR RETRYSTEP // ========================================================================= let activePlacementAdUnitPath = null; let activePlacement = null; let grantOcorreu = false; let globalActiveCleanup = null; let activeOnFail = null; function limparEstadoReward() { activePlacementAdUnitPath = null; activePlacement = null; activeOnFail = null; grantOcorreu = false; } function executarRewardComRetry(placement) { console.log(`[Reward][RetryStep] Iniciando para bloco: '${placement.placementId}'`); activePlacementAdUnitPath = placement.adUnitPath; activePlacement = placement; grantOcorreu = false; activeOnFail = null; trackGA4('reward_ad_request', placement); inserirDivGenerica(placement); let timeoutHandle = null; let isResolved = false; const cleanup = () => { isResolved = true; if (timeoutHandle) clearTimeout(timeoutHandle); globalActiveCleanup = null; }; globalActiveCleanup = cleanup; timeoutHandle = setTimeout(() => { if (isResolved) return; cleanup(); console.warn(`[Reward][RetryStep] Timeout (${CONFIG.retryStep.timeoutMs}ms) esgotado. Abrindo top.`); trackGA4('reward_ad_timeout', placement); limparEstadoReward(); inserirAnuncioTop('timeout'); }, CONFIG.retryStep.timeoutMs); window.av.waitFor(() => { if (isResolved) return true; const slot = window.av?.definedSlots?.find(s => s.placement === placement.placementId); return slot && slot.lifecycle === 'ready'; }).then(() => { if (isResolved) return; cleanup(); const rewardedSlot = window.av.definedSlots.find(s => s.placement === placement.placementId); if (!rewardedSlot) { console.error(`[Reward][RetryStep] Slot ausente apos retry. Abrindo top.`); trackGA4('reward_ad_nofill', placement); limparEstadoReward(); inserirAnuncioTop('slot_missing'); return; } console.log(`[Reward][RetryStep] Slot VENDIDO. Exibindo...`); trackGA4('reward_ad_filled', placement); rewardedSlot.show(function() { console.log(`[Reward][RetryStep] Usuario assistiu tudo.`); trackGA4('reward_ad_completed', placement); setCookie(placement.cookieName, 'true', CONFIG.cookie.duration_minutes); limparEstadoReward(); inserirAnuncioTop('completed'); }); }); } // ========================================================================= // SECAO 3B: MOTOR CASCATA // ========================================================================= function tentarPlacement(placement, onFail) { console.log(`[Reward][Cascata] Tentando bloco: '${placement.placementId}'`); activeOnFail = onFail; activePlacementAdUnitPath = placement.adUnitPath; activePlacement = placement; grantOcorreu = false; trackGA4('reward_ad_request', placement); inserirDivGenerica(placement); let timeoutHandle = null; let isResolved = false; const cleanup = () => { isResolved = true; if (timeoutHandle) clearTimeout(timeoutHandle); globalActiveCleanup = null; }; globalActiveCleanup = cleanup; timeoutHandle = setTimeout(() => { if (isResolved) return; cleanup(); console.warn(`[Reward][Cascata] Timeout em '${placement.placementId}'. Pulando...`); onFail(); }, placement.timeoutMs || 10000); window.av.waitFor(() => { if (isResolved) return true; const slot = window.av?.definedSlots?.find(s => s.placement === placement.placementId); return slot && slot.lifecycle === 'ready'; }).then(() => { if (isResolved) return; cleanup(); const rewardedSlot = window.av.definedSlots.find(s => s.placement === placement.placementId); if (!rewardedSlot) { console.error(`[Reward][Cascata] Slot '${placement.placementId}' ausente. Pulando...`); onFail(); return; } console.log(`[Reward][Cascata] Anuncio '${placement.placementId}' PRONTO. Exibindo...`); trackGA4('reward_ad_filled', placement); rewardedSlot.show(function() { console.log(`[Reward][Cascata] Usuario assistiu tudo em '${placement.placementId}'.`); trackGA4('reward_ad_completed', placement); setCookie(placement.cookieName, 'true', CONFIG.cookie.duration_minutes); limparEstadoReward(); inserirAnuncioTop('completed'); }); }); } function determinarPontoDeEntrada() { for (let i = 0; i < CONFIG.executionOrder.length; i++) { const blockKey = CONFIG.executionOrder[i]; const placement = CONFIG.placements[blockKey]; if (placement && !usuarioJaInteragiu(placement)) return i; } return -1; } function executarCascata(startIndex) { const loaderTexts = [ CONFIG.loader.text_initial, CONFIG.loader.text_fallback1, CONFIG.loader.text_fallback2 ]; let cadeia = function() { limparEstadoReward(); inserirAnuncioTop('all_empty_or_timeout'); }; for (let i = CONFIG.executionOrder.length - 1; i >= startIndex; i--) { (function(index, nextFail) { const blockKey = CONFIG.executionOrder[index]; const placement = CONFIG.placements[blockKey]; const loaderText = loaderTexts[index] || CONFIG.loader.text_initial; const thisOnFail = function() { if (index < CONFIG.executionOrder.length - 1) { setRewardLoaderText(loaderTexts[index + 1] || CONFIG.loader.text_fallback2); } nextFail(); }; cadeia = function() { if (!placement) { console.error(`[Reward][Cascata] Bloco '${blockKey}' faltante. Queimando etapa.`); thisOnFail(); return; } if (usuarioJaInteragiu(placement)) { console.log(`[Reward][Cascata] Cookie ativo em '${placement.placementId}'. Pulando bloco.`); thisOnFail(); return; } setRewardLoaderText(loaderText); tentarPlacement(placement, thisOnFail); }; })(i, cadeia); } cadeia(); } // ========================================================================= // SECAO 4: INTEGRACAO GAM // ========================================================================= window.googletag = window.googletag || { cmd: [] }; googletag.cmd.push(function() { googletag.pubads().addEventListener('rewardedSlotGranted', function(event) { const adUnitPath = event.slot.getAdUnitPath(); if (activePlacementAdUnitPath && adUnitPath.includes(activePlacementAdUnitPath)) { grantOcorreu = true; } }); googletag.pubads().addEventListener('rewardedSlotClosed', function(event) { const adUnitPath = event.slot.getAdUnitPath(); if (!activePlacementAdUnitPath || !adUnitPath.includes(activePlacementAdUnitPath)) return; if (grantOcorreu) return; console.warn(`[Reward] Usuario fechou o reward sem completar.`); trackGA4('reward_ad_abandoned', activePlacement); if (globalActiveCleanup) globalActiveCleanup(); if (activePlacement) { setCookie(activePlacement.cookieName, 'true', CONFIG.cookie.duration_closed_minutes); } limparEstadoReward(); inserirAnuncioTop('abandoned'); }); googletag.pubads().addEventListener('slotRenderEnded', function(event) { if (!event.isEmpty) return; const adUnitPath = event.slot.getAdUnitPath(); if (!activePlacementAdUnitPath || !adUnitPath.includes(activePlacementAdUnitPath)) return; if (CONFIG.retryStep.enabled) { if (CONFIG.retryStep.logAttempts) { console.log(`[Reward][RetryStep] Tentativa sem fill em '${activePlacement?.placementId}'. Aguardando proximo retry...`); } trackGA4('reward_ad_retry_attempt', activePlacement); } else { trackGA4('reward_ad_nofill', activePlacement); if (globalActiveCleanup) globalActiveCleanup(); if (activeOnFail) { console.warn(`[Reward][Cascata] NO FILL. Pulando para proximo bloco...`); const fail = activeOnFail; activeOnFail = null; fail(); } } }); }); // ========================================================================= // SECAO 5: INICIALIZACAO // ========================================================================= document.addEventListener('DOMContentLoaded', function() { if (window[CONFIG.guard_flag]) { console.warn('[Reward] Execucao paralela abortada.'); return; } window[CONFIG.guard_flag] = true; if (window.av?.skipAds) { console.warn('[Reward] AdBlock detectado.'); inserirAnuncioTop('adblock'); return; } if (!window.av) { inserirAnuncioTop('av_not_loaded'); return; } window.av.waitFor(() => window.av.isSafe !== null).then(() => { if (!window.av.isSafe) { console.warn('[Reward] Bot / trafego invalido. Negando reward.'); inserirAnuncioTop('bot_traffic'); return; } if (CONFIG.retryStep.enabled) { const placement = CONFIG.placements[CONFIG.activePlacement]; if (!placement) { console.error(`[Reward] activePlacement '${CONFIG.activePlacement}' nao encontrado.`); inserirAnuncioTop('config_error'); return; } const cookieReason = motivoCookieAtivo(placement); if (cookieReason) { console.log(`[Reward][RetryStep] Cookie ativo. Abrindo top direto.`); trackGA4('reward_ad_already_interacted', placement); criarRewardLoader(CONFIG.loader.loaderBloqueado); setRewardLoaderText(CONFIG.loader.loaderBloqueado); inserirAnuncioTop(cookieReason); return; } criarRewardLoader(CONFIG.loader.text); setRewardLoaderText(CONFIG.loader.text); executarRewardComRetry(placement); } else { const pontoDeEntrada = determinarPontoDeEntrada(); if (pontoDeEntrada === -1) { console.log('[Reward][Cascata] Todos os cookies ativos. Abrindo top direto.'); trackGA4('reward_ad_already_interacted_all', null); criarRewardLoader(CONFIG.loader.loaderBloqueado); setRewardLoaderText(CONFIG.loader.loaderBloqueado); inserirAnuncioTop('already_interacted_all'); return; } criarRewardLoader(CONFIG.loader.text_initial); setRewardLoaderText(CONFIG.loader.text_initial); executarCascata(pontoDeEntrada); } }); }); })();

Jovem Aprendiz Gerdau

A Gerdau
A Gerdau é uma companhia siderúrgica presente no mercado há mais de 110
anos. Sua história teve início em 1901 com uma fábrica de pregos em Porto
Alegre. Atualmente, seus produtos marcam presença no dia-a- dia de milhares
de pessoas. A Gerdau se encontra estabelecida em mais de 10 países em todo
o mundo, ofertando seus produtos diferenciados, e que fazem dela uma das
melhores companhias para se trabalhar na área da metalúrgica.
A Gerdau opera da mesma forma com o Jovem Aprendiz, admitindo
profissionais para contribuírem na fabricação de aços mais extensos da
indústria metalúrgica. Graças ao seu comprometimento sustentável com o
planeta, consegue fabricar milhares de toneladas de aço por ano, dispondo em
média de 40 mil colaboradores alcançando o seu objetivo.
O programa Jovem Aprendiz da Gerdau busca passar esse propósito aos
participantes do mesmo. Seus valores têm transformado a companhia e hoje
fazem dela uma das melhores em sua área de especialidade. Seu progresso foi
tanto que atualmente a Gerdau predomina em sua área e usufrui de um time e
infraestrutura exclusivos.

Programa Jovem Aprendiz
O Jovem Aprendiz é um projeto do governo federal desenvolvido com base na
Lei da Aprendizagem (Lei 10.097/00) tendo como objetivo que as companhias
desenvolvam programas de aprendizagem com o intuito de capacitar
profissionalmente adolescentes e jovens em todo o país.
O programa é formado por curso de aprendizagem gratuito com duração de até
dois anos. Durante esse tempo, o aprendiz irá adquirir conhecimento teórico
(em sala) e prático (trabalhando na empresa).

Requisitos Jovem Aprendiz Gerdau
Para se candidatar ao programa Jovem Aprendiz, os jovens devem estar
dentro de alguns quesitos da empresa.
 Ter entre 14 e 24 anos
 Não ter nenhuma experiência profissional registrada
 Estar matriculado e estudando em nível fundamental ou médio
 Possuir noções de informática
 Estar disponível para realizar uma jornada de trabalho de 6 horas
diárias

Anúncios

Marcos Eduardo
Marcos Eduardo

Marcos Eduardo é o criador de conteúdo por trás do Vagas Jovem Aprendiz. Com foco em simplificar temas importantes, ele se dedica a pesquisar e escrever sobre Carreira, Benefícios, Finanças e Planejamento Pessoal. Seu trabalho visa empoderar jovens para que tomem decisões mais inteligentes e seguras no início de suas jornadas.