Skip to content

Aleostube/aleostube.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

🔥 Aleo’s Tube Network

Backlink + Affiliate Tracker v1.0

Integrating Blog, YouTube & Affiliate SEO Growth

Aleo’s Tube Network Banner


📊 Tentang Proyek

Aleo’s Tube Network Tracker membantu kreator, blogger, dan affiliate marketer mengelola backlink, afiliasi, serta performa SEO lintas platform secara efisien.

Proyek ini dibuat untuk menghubungkan seluruh aset digital — mulai dari blog, YouTube channel, hingga link afiliasi — dalam satu sistem pelacakan yang mudah digunakan, transparan, dan otomatis.

💡 “Empowering creators to build influence through smart SEO & affiliate growth.”


🚀 Fitur Utama

✅ Template Google Sheets untuk pelacakan backlink & afiliasi
✅ Integrasi lintas platform: Blog, YouTube, Shopee, Digistore24
✅ Tampilan visual profesional dengan gradasi merah–oranye khas Aleo’s Tube
✅ Lisensi MIT — bebas digunakan dan dimodifikasi
✅ Optimasi SEO bawaan (meta tags, rich snippet-ready)


📂 Struktur Proyek

📁 Aleos-Tube-Network/ │ ├── index.html # Landing page untuk GitHub Pages ├── Aleo's_Tube_Network_Banner.png # Header/banner resmi ├── LICENSE # Lisensi MIT └── README.md # Dokumentasi proyek (file ini)


🔗 Akses Cepat

🔧 Aksi 🌍 Link
📊 Buka Template Google Sheets Klik di sini
💾 Lihat di GitHub Pages aleostube.github.io/backlink-tracker
🧠 Baca Dokumentasi README.md

🌐 Jejaring & Afiliasi

🌍 Platform 🔗 Link
🎥 YouTube @Daily_vlog_anak_rantau
📘 Facebook Aleostube Page
🐦 X (Twitter) @aleostube
📌 Pinterest Aleostube on Pinterest
🛒 Shopee Affiliate Produk Pilihan Shopee
💰 Digistore24 Affiliate Affiliate Hub

🛠️ Teknologi & Tools

  • HTML5 + CSS3
  • Google Sheets Integration
  • GitHub Pages Deployment
  • MIT Open Source License

⚖️ Lisensi

Proyek ini dilindungi oleh MIT License.
Silakan gunakan, modifikasi, dan distribusikan — dengan tetap mencantumkan kredit kepada Aleo’s Tube Network.


💬 Tentang Penulis

👤 Aleo’s Tube
📺 Kreator konten & penulis digital
🌏 Membagikan pengetahuan, pengalaman, dan inspirasi dari kehidupan perantauan
📧 Hubungi: [email protected]

🌠 “Belajar, berbagi, dan tumbuh bersama — satu backlink dan satu ide setiap hari.”


Jika proyek ini bermanfaat, jangan lupa kasih bintang di repo GitHub kamu!
#AleoTube #SEO #AffiliateMarketing #BacklinkTracker #CreatorTools

      <?xml version="1.0" encoding="UTF-8" ?>
<script type="text/plain"> </script> <title></title> <script type='application/ld+json'> ", "url": "", "logo": "", "sameAs": [] }, { "@type": "WebSite", "url": "", "name": "", "potentialAction": { "@type": "SearchAction", "target": "search?q={search_term_string}", "query-input": "required name=search_term_string" } } ] } ]]> </script> <script async src='https://www.googletagmanager.com/gtag/js?id=G-71BR09BJ1R'></script> <script type='text/javascript'> </script> <style type='text/css'> #aleo-tools{font-family:system-ui,Arial;font-size:13px} #aleo-tools .card{background:rgba(255,255,255,0.96);border:1px solid rgba(0,0,0,0.06);padding:12px;border-radius:10px;box-shadow:0 6px 18px rgba(0,0,0,0.04)} #aleo-tools.compact{position:fixed;right:12px;bottom:12px;width:320px;z-index:99999} @media(max-width:720px){#aleo-tools.compact{display:none}} #aleo-tools h4{margin:0 0 8px;font-size:14px} #aleo-tools input,#aleo-tools button,#aleo-tools textarea{width:100%;margin:4px 0;padding:8px;border-radius:6px;border:1px solid #ddd;box-sizing:border-box} #aleo-seo-health{margin-top:8px;font-size:12px} </style> <script src='https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.umd.min.js' defer></script> <script type='text/javascript'> 10 && t.length<130), v: t.length}, {k:'description', ok: (len>50 && len<320), v: len}, {k:'canonical', ok: !!document.querySelector('link[rel="canonical"]'), v: location.href} ]; } // Render widget & chart function renderWidget(){ if(document.getElementById('aleo-tools')) return; const d = document.createElement('div'); d.id='aleo-tools'; d.className='compact'; d.innerHTML = '

SEO & Backlink — ALEO

' + '' + '' + 'Tambah' + '
SEO Health:
' + '' + '
Data lokal + Google Sheets (optional).
' + 'Export CSV' + '
'; document.body.appendChild(d); function refreshHealth(){ const list = seoHealth(); const box = document.getElementById('a-health'); box.innerHTML = ''; list.forEach(it => { const el = document.createElement('div'); el.textContent = '• ' + it.k + ': ' + (it.ok ? 'OK' : 'Periksa') + ' (' + it.v + ')'; box.appendChild(el); }); } refreshHealth(); document.getElementById('a-add').addEventListener('click', async function(){ const url = document.getElementById('a-url').value.trim(); const note = document.getElementById('a-note').value.trim(); if(!url){ alert('Masukkan URL target backlink.'); return; } await window.ALEO.add(url, note); document.getElementById('a-url').value=''; document.getElementById('a-note').value=''; refreshHealth(); redrawChart(); }); document.getElementById('a-exp').addEventListener('click', function(){ const s = window.ALEO.get(); const rows = ['url,added,notes']; s.targets.forEach(t => rows.push('"' + t.url + '","' + t.added + '","' + (t.notes||'') + '"')); const blob = new Blob([rows.join('\n')], {type:'text/csv'}); const u = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = u; a.download = 'aleo-backlinks.csv'; a.click(); URL.revokeObjectURL(u); }); // Chart draw function drawChart(){ try{ const s = window.ALEO.get(); const counts = {}; s.targets.forEach(t => { const m = (new Date(t.added)).toISOString().slice(0,7); counts[m] = (counts[m]||0)+1; }); const labels = Object.keys(counts).sort(); const data = labels.map(l=>counts[l]); const ctx = document.getElementById('a-chart').getContext('2d'); if(window.ALEO._chart){ try{ window.ALEO._chart.destroy(); }catch(e){} } window.ALEO._chart = new Chart(ctx, { type: 'line', data: { labels: labels, datasets: [{ label: 'Backlinks', data: data, fill: true, tension: 0.3 }] }, options:{ plugins:{ legend:{ display:false } }, scales:{ y:{ beginAtZero:true } } } }); }catch(e){} } function redrawChart(){ drawChart(); } drawChart(); window.ALEO.redrawChart = redrawChart; } if(document.readyState === 'loading') document.addEventListener('DOMContentLoaded', renderWidget); else renderWidget(); })(); ]]> </script> <script type='text/javascript'> window.addEventListener(evt, init, { once:true })); })(); ]]> </script> <script type='text/javascript'> -1) return; window.addEventListener('load', function(){ try{ var s = document.createElement('script'); s.src = '//translate.google.com/translate_a/element.js?cb=__gtInit'; s.type = 'text/javascript'; s.async = true; document.head.appendChild(s); }catch(e){} }); window.__gtInit = function(){ try{ new google.translate.TranslateElement({ pageLanguage: 'id', autoDisplay: false, layout: google.translate.TranslateElement.InlineLayout.SIMPLE }, 'google_translate_element'); var lang = (navigator.language || 'id').slice(0,2); document.cookie = 'googtrans=/id/' + lang + '; path=/;'; setTimeout(function(){ try{ var el = document.querySelector('.goog-te-combo'); if(el){ el.value = lang; el.dispatchEvent(new Event('change')); } }catch(e){} }, 700); }catch(e){} }; var d = document.createElement('div'); d.id = 'google_translate_element'; d.style.display = 'none'; document.addEventListener('DOMContentLoaded', function(){ document.body.appendChild(d); }); })(); ]]> </script>

/* Header ----------------------------------------------- */ .header-outer { background: $(header.background.color) $(header.background.gradient) repeat-x scroll top left; _background-image: none;

color: $(header.text.color);

-moz-border-radius: $(header.border.radius); -webkit-border-radius: $(header.border.radius); -goog-ms-border-radius: $(header.border.radius); border-radius: $(header.border.radius); }

.Header img, .Header #header-inner { -moz-border-radius: $(header.border.radius); -webkit-border-radius: $(header.border.radius); -goog-ms-border-radius: $(header.border.radius); border-radius: $(header.border.radius); }

.header-inner .Header .titlewrapper, .header-inner .Header .descriptionwrapper { padding-left: $(header.padding); padding-right: $(header.padding); }

.Header h1 { font: $(header.font); text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3); }

.Header h1 a { color: $(header.text.color); }

.Header .description { font-size: 130%; }

/* Tabs ----------------------------------------------- */ .tabs-inner { margin: .5em $(tabs.margin.sides) $(tabs.margin.bottom); padding: 0; }

.tabs-inner .section { margin: 0; }

.tabs-inner .widget ul { padding: 0;

background: $(tabs.background.color) $(tabs.background.gradient) repeat scroll bottom;

-moz-border-radius: $(tabs.border.radius); -webkit-border-radius: $(tabs.border.radius); -goog-ms-border-radius: $(tabs.border.radius); border-radius: $(tabs.border.radius); }

.tabs-inner .widget li { border: none; }

.tabs-inner .widget li a { display: inline-block;

padding: .5em 1em; margin-$endSide: $(tabs.spacing);

color: $(tabs.text.color); font: $(tabs.font);

-moz-border-radius: $(tab.border.radius) $(tab.border.radius) 0 0; -webkit-border-top-left-radius: $(tab.border.radius); -webkit-border-top-right-radius: $(tab.border.radius); -goog-ms-border-radius: $(tab.border.radius) $(tab.border.radius) 0 0; border-radius: $(tab.border.radius) $(tab.border.radius) 0 0;

background: $(tab.background);

border-$endSide: 1px solid $(tabs.separator.color); }

.tabs-inner .widget li:first-child a { padding-$startSide: 1.25em;

-moz-border-radius-top$startSide: $(tab.first.border.radius); -moz-border-radius-bottom$startSide: $(tabs.border.radius); -webkit-border-top-$startSide-radius: $(tab.first.border.radius); -webkit-border-bottom-$startSide-radius: $(tabs.border.radius); -goog-ms-border-top-$startSide-radius: $(tab.first.border.radius); -goog-ms-border-bottom-$startSide-radius: $(tabs.border.radius); border-top-$startSide-radius: $(tab.first.border.radius); border-bottom-$startSide-radius: $(tabs.border.radius); }

.tabs-inner .widget li.selected a, .tabs-inner .widget li a:hover { position: relative; z-index: 1;

background: $(tabs.selected.background.color) $(tab.selected.background.gradient) repeat scroll bottom; color: $(tabs.selected.text.color);

-moz-box-shadow: 0 0 $(region.shadow.spread) rgba(0, 0, 0, .15); -webkit-box-shadow: 0 0 $(region.shadow.spread) rgba(0, 0, 0, .15); -goog-ms-box-shadow: 0 0 $(region.shadow.spread) rgba(0, 0, 0, .15); box-shadow: 0 0 $(region.shadow.spread) rgba(0, 0, 0, .15); }

/* Headings ----------------------------------------------- */ h2 { font: $(widget.title.font); text-transform: $(widget.title.text.transform); color: $(widget.title.text.color); margin: .5em 0; }

/* Main ----------------------------------------------- */ .main-outer { background: $(main.background);

-moz-border-radius: $(main.border.radius.top) $(main.border.radius.top) 0 0; -webkit-border-top-left-radius: $(main.border.radius.top); -webkit-border-top-right-radius: $(main.border.radius.top); -webkit-border-bottom-left-radius: 0; -webkit-border-bottom-right-radius: 0; -goog-ms-border-radius: $(main.border.radius.top) $(main.border.radius.top) 0 0; border-radius: $(main.border.radius.top) $(main.border.radius.top) 0 0;

-moz-box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); -webkit-box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); -goog-ms-box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); }

.main-inner { padding: 15px $(main.padding.sides) 20px; }

.main-inner .column-center-inner { padding: 0 0; }

.main-inner .column-left-inner { padding-left: 0; }

.main-inner .column-right-inner { padding-right: 0; }

/* Posts ----------------------------------------------- */ h3.post-title { margin: 0; font: $(post.title.font); }

.comments h4 { margin: 1em 0 0; font: $(post.title.font); }

.date-header span { color: $(date.header.color); }

.post-outer { background-color: $(post.background.color); border: solid 1px $(post.border.color);

-moz-border-radius: $(post.border.radius); -webkit-border-radius: $(post.border.radius); border-radius: $(post.border.radius); -goog-ms-border-radius: $(post.border.radius);

padding: 15px 20px; margin: 0 $(post.margin.sides) 20px; }

.post-body { line-height: 1.4; font-size: 110%; position: relative; }

.post-header { margin: 0 0 1.5em;

color: $(post.footer.text.color); line-height: 1.6; }

.post-footer { margin: .5em 0 0;

color: $(post.footer.text.color); line-height: 1.6; }

#blog-pager { font-size: 140% }

#comments .comment-author { padding-top: 1.5em;

border-top: dashed 1px #ccc; border-top: dashed 1px rgba(128, 128, 128, .5);

background-position: 0 1.5em; }

#comments .comment-author:first-child { padding-top: 0;

border-top: none; }

.avatar-image-container { margin: .2em 0 0; }

/* Comments ----------------------------------------------- */ .comments .comments-content .icon.blog-author { background-repeat: no-repeat; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEgAACxIB0t1+/AAAAAd0SU1FB9sLFwMeCjjhcOMAAAD+SURBVDjLtZSvTgNBEIe/WRRnm3U8RC1neQdsm1zSBIU9VVF1FkUguQQsD9ITmD7ECZIJSE4OZo9stoVjC/zc7ky+zH9hXwVwDpTAWWLrgS3QAe8AZgaAJI5zYAmc8r0G4AHYHQKVwII8PZrZFsBFkeRCABYiMh9BRUhnSkPTNCtVXYXURi1FpBDgArj8QU1eVXUzfnjv7yP7kwu1mYrkWlU33vs1QNu2qU8pwN0UpKoqokjWwCztrMuBhEhmh8bD5UDqur75asbcX0BGUB9/HAMB+r32hznJgXy2v0sGLBcyAJ1EK3LFcbo1s91JeLwAbwGYu7TP/3ZGfnXYPgAVNngtqatUNgAAAABJRU5ErkJggg==); }

.comments .comments-content .loadmore a { border-top: 1px solid $(link.hover.color); border-bottom: 1px solid $(link.hover.color); }

.comments .continue { border-top: 2px solid $(link.hover.color); }

/* Widgets ----------------------------------------------- */ .widget ul, .widget #ArchiveList ul.flat { padding: 0; list-style: none; }

.widget ul li, .widget #ArchiveList ul.flat li { border-top: dashed 1px #ccc; border-top: dashed 1px rgba(128, 128, 128, .5); }

.widget ul li:first-child, .widget #ArchiveList ul.flat li:first-child { border-top: none; }

.widget .post-body ul { list-style: disc; }

.widget .post-body ul li { border: none; }

/* Footer ----------------------------------------------- */ .footer-outer { color:$(footer.text.color); background: $(footer.background);

-moz-border-radius: $(footer.border.radius.top) $(footer.border.radius.top) $(footer.border.radius.bottom) $(footer.border.radius.bottom); -webkit-border-top-left-radius: $(footer.border.radius.top); -webkit-border-top-right-radius: $(footer.border.radius.top); -webkit-border-bottom-left-radius: $(footer.border.radius.bottom); -webkit-border-bottom-right-radius: $(footer.border.radius.bottom); -goog-ms-border-radius: $(footer.border.radius.top) $(footer.border.radius.top) $(footer.border.radius.bottom) $(footer.border.radius.bottom); border-radius: $(footer.border.radius.top) $(footer.border.radius.top) $(footer.border.radius.bottom) $(footer.border.radius.bottom);

-moz-box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); -webkit-box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); -goog-ms-box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); box-shadow: 0 $(region.shadow.offset) $(region.shadow.spread) rgba(0, 0, 0, .15); }

.footer-inner { padding: 10px $(main.padding.sides) 20px; }

.footer-outer a { color: $(footer.link.color); }

.footer-outer a:visited { color: $(footer.link.visited.color); }

.footer-outer a:hover { color: $(footer.link.hover.color); }

.footer-outer .widget h2 { color: $(footer.widget.title.text.color); }

/* Mobile ----------------------------------------------- */ html body.mobile { height: auto; }

html body.mobile { min-height: 480px; background-size: 100% auto; }

.mobile .body-fauxcolumn-outer { background: $(mobile.background.overlay); }

html .mobile .mobile-date-outer, html .mobile .blog-pager { border-bottom: none; background: $(main.background); margin-bottom: 10px; }

.mobile .date-outer { background: $(main.background); }

.mobile .header-outer, .mobile .main-outer, .mobile .post-outer, .mobile .footer-outer { -moz-border-radius: 0; -webkit-border-radius: 0; -goog-ms-border-radius: 0; border-radius: 0; }

.mobile .content-outer, .mobile .main-outer, .mobile .post-outer { background: inherit; border: none; }

.mobile .content-outer { font-size: 100%; }

.mobile-link-button { background-color: $(link.color); }

.mobile-link-button a:link, .mobile-link-button a:visited { color: $(post.background.color); }

.mobile-index-contents { color: $(body.text.color); }

.mobile .tabs-inner .PageList .widget-content { background: $(tabs.selected.background.color) $(tab.selected.background.gradient) repeat scroll bottom; color: $(tabs.selected.text.color); }

.mobile .tabs-inner .PageList .widget-content .pagelist-arrow { border-$startSide: 1px solid $(tabs.separator.color); } ]]></b:skin>

<b:template-skin>
  <b:variable default='960px' name='content.width' type='length' value='700px'/>
  <b:variable default='100%' name='main.column.left.width' type='length' value='0px'/>
  <b:variable default='310px' name='main.column.right.width' type='length' value='0px'/>

  <![CDATA[
  body {
    min-width: $(content.width);
  }

  .content-outer, .content-fauxcolumn-outer, .region-inner {
    min-width: $(content.width);
    max-width: $(content.width);
    _width: $(content.width);
  }

  .main-inner .columns {
    padding-left: $(main.column.left.width);
    padding-right: $(main.column.right.width);
  }

  .main-inner .fauxcolumn-center-outer {
    left: $(main.column.left.width);
    right: $(main.column.right.width);
    /* IE6 does not respect left and right together */
    _width: expression(this.parentNode.offsetWidth -
        parseInt("$(main.column.left.width)") -
        parseInt("$(main.column.right.width)") + 'px');
  }

  .main-inner .fauxcolumn-left-outer {
    width: $(main.column.left.width);
  }

  .main-inner .fauxcolumn-right-outer {
    width: $(main.column.right.width);
  }

  .main-inner .column-left-outer {
    width: $(main.column.left.width);
    right: 100%;
    margin-left: -$(main.column.left.width);
  }

  .main-inner .column-right-outer {
    width: $(main.column.right.width);
    margin-right: -$(main.column.right.width);
  }

  #layout {
    min-width: 0;
  }

  #layout .content-outer {
    min-width: 0;
    width: 800px;
  }

  #layout .region-inner {
    min-width: 0;
    width: auto;
  }

  body#layout div.add_widget {
    padding: 8px;
  }

  body#layout div.add_widget a {
    margin-left: 32px;
  }
  ]]>
</b:template-skin>

<b:if cond='data:skin.vars.body_background.image.isResizable'>
  <b:include cond='not data:view.isPreview' data='{                          image: data:skin.vars.body_background.image,                          selector: &quot;body&quot;                        }' name='responsiveImageStyle'/>
</b:if>

<b:include data='blog' name='google-analytics'/>
<script type='text/javascript'> //document.querySelector('.analog-clock-footer .hand.hour').style.transform = rotate(${hour}deg) translate(-50%, -50%); document.querySelector('.analog-clock-footer .hand.minute').style.transform = rotate(${minute}deg) translate(-50%, -50%); document.querySelector('.analog-clock-footer .hand.second').style.transform = rotate(${second}deg) translate(-50%, -50%); }

setInterval(updateClockFooter, 1000); updateClockFooter(); //]]> </script>

<style> :root { --primary-color: #ffcc00; --subscribe-color: #ff0000; --light-bg: rgba(255,255,255,0.8); --light-text: #222; --dark-bg: rgba(20,20,20,0.8); --dark-text: #fff; }

/* Footer mungil lonjong */ footer.mini-footer { position: fixed; bottom: 58px; left: 50%; transform: translateX(-50%); background: var(--light-bg); color: var(--light-text); border-radius: 20px; padding: 3px 10px; font-size: 10px; font-family: Arial, sans-serif; box-shadow: 0 2px 6px rgba(0,0,0,0.15); z-index: 900; opacity: 0; animation: fadeUp 0.6s ease forwards; } @media (prefers-color-scheme: dark) { footer.mini-footer { background: var(--dark-bg); color: var(--dark-text); } }

/* Navbar mungil */ .mini-nav { position: fixed; bottom: 8px; left: 50%; transform: translateX(-50%); background: var(--light-bg); border-radius: 30px; display: flex; gap: 12px; padding: 4px 10px; box-shadow: 0 2px 8px rgba(0,0,0,0.15); z-index: 1000; opacity: 0; animation: fadeUp 0.8s ease forwards; } .mini-nav a { color: var(--light-text); font-size: 11px; text-decoration: none; display: flex; align-items: center; transition: all 0.2s ease; } .mini-nav a i { font-size: 13px; margin-right: 3px; } .mini-nav a:hover { color: var(--primary-color); } @media (prefers-color-scheme: dark) { .mini-nav { background: var(--dark-bg); } .mini-nav a { color: var(--dark-text); } }

/* Tombol Subscribe mungil dengan border pelangi + glow + floating */ .mini-subscribe { position: fixed; right: 12px; bottom: 100px; background: var(--subscribe-color); color: #fff; font-size: 11px; padding: 5px 12px; border-radius: 30px; text-decoration: none; font-weight: bold; z-index: 1100; display: inline-block !important; opacity: 0; animation: fadeUp 1s ease forwards, glowPulse 2s infinite, floatBounce 3s ease-in-out infinite; border: 2px solid transparent; background-clip: padding-box; position: relative; }

/* Border pelangi */ .mini-subscribe::before { content: ""; position: absolute; inset: -2px; border-radius: 30px; padding: 2px; background: linear-gradient(90deg, red, orange, yellow, green, blue, indigo, violet, red); background-size: 400%; -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; animation: rainbow 4s linear infinite; }

.mini-subscribe:hover { background: #cc0000; transform: scale(1.1); }

/* Animasi border pelangi */ @keyframes rainbow { 0% { background-position: 0% 50%; } 100% { background-position: 400% 50%; } }

/* Efek glow kedip */ @keyframes glowPulse { 0%, 100% { box-shadow: 0 0 6px rgba(255,0,0,0.6); } 50% { box-shadow: 0 0 14px rgba(255,0,0,0.9); } }

/* Animasi melayang naik-turun */ @keyframes floatBounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }

/* Animasi muncul */ @keyframes fadeUp { from { opacity: 0; transform: translateY(15px) translateX(-50%); } to { opacity: 1; transform: translateY(0) translateX(-50%); } } </style>

<iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-T5PTHLRB' style='display:none;visibility:hidden' width='0'/> <iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-MKB9TPDR' style='display:none;visibility:hidden' width='0'/> <iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-WR546M4D&gtm_auth=7_SAhutJuvX_5wv88hZpYg&gtm_preview=env-10&gtm_cookies_win=x' style='display:none;visibility:hidden' width='0'/> <script type="text/javascript"> function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener('load', function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } } </script> <div id="navbar-iframe-container"></div> <script type="text/javascript" src="https://apis.google.com/js/platform.js"></script> <script type="text/javascript"> gapi.load("gapi.iframes:gapi.iframes.style.bubble", function() { if (gapi.iframes && gapi.iframes.getContext) { gapi.iframes.getContext().openChild({ url: 'https://draft.blogger.com/navbar/8956348688248328686?origin\x3dhttp://localhost:80', where: document.getElementById("navbar-iframe-container"), id: "navbar-iframe" }); } }); </script><script type="text/javascript"> (function() { var script = document.createElement('script'); script.type = 'text/javascript'; script.src = '//pagead2.googlesyndication.com/pagead/js/google_top_exp.js'; var head = document.getElementsByTagName('head')[0]; if (head) { head.appendChild(script); }})(); </script>

<b:if cond='data:blog.pageType == "index"'>

<b:if cond='data:blog.metaDescription'> </b:if>
</b:if>

<style> .linktree-mini { text-align: center; margin: 15px auto; background: transparent; }

/* Avatar efek api */ .avatar-fire { position: relative; display: inline-block; margin-bottom: 20px; } .avatar-fire img { width: 90px; height: 90px; border-radius: 50%; object-fit: cover; z-index: 3; position: relative; }

/* Lidah api */ .flame { position: absolute; top: -25px; left: -25px; right: -25px; bottom: -25px; border-radius: 50%; filter: blur(28px); z-index: 1; opacity: 0.7; animation: flicker 2s infinite ease-in-out alternate; } .flame1 { background: radial-gradient(circle, rgba(255,140,0,0.8) 20%, transparent 70%); animation-delay: 0s; } .flame2 { background: radial-gradient(circle, rgba(255,69,0,0.8) 15%, transparent 80%); animation-delay: 0.5s; } .flame3 { background: radial-gradient(circle, rgba(255,215,0,0.7) 10%, transparent 80%); animation-delay: 1s; }

@keyframes flicker { 0% { transform: scale(1) rotate(0deg); opacity: 0.7; } 50% { transform: scale(1.2) rotate(12deg); opacity: 1; } 100% { transform: scale(1) rotate(-12deg); opacity: 0.6; } }

/* Sparks (percikan api) */ .spark { position: absolute; width: 6px; height: 6px; background: radial-gradient(circle, #ffec85 20%, #ff9900 70%, transparent 100%); border-radius: 50%; animation: sparkFly 3s linear infinite; opacity: 0.8; z-index: 2; } .spark:nth-child(4) { top: 10%; left: 40%; animation-delay: 0s; } .spark:nth-child(5) { top: 30%; left: 70%; animation-delay: 0.5s; } .spark:nth-child(6) { top: 60%; left: 20%; animation-delay: 1s; } .spark:nth-child(7) { top: 80%; left: 50%; animation-delay: 1.5s; } .spark:nth-child(8) { top: 40%; left: 10%; animation-delay: 2s; }

@keyframes sparkFly { 0% { transform: translateY(0) scale(1); opacity: 0.9; } 50% { transform: translateY(-40px) scale(0.8); opacity: 1; } 100% { transform: translateY(-80px) scale(0.5); opacity: 0; } }

/* Tombol oval horizontal */ .btn-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; } .btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 25px; font-size: 0.9rem; font-weight: 600; color: #fff; text-decoration: none; position: relative; overflow: hidden; z-index: 1; } .btn::before { content: ""; position: absolute; inset: -2px; border-radius: 30px; background: linear-gradient(90deg, red, orange, yellow, green, blue, violet); background-size: 400% 100%; animation: rainbowMove 6s linear infinite; z-index: -2; } .btn::after { content: ""; position: absolute; inset: 2px; border-radius: 25px; z-index: -1; } .btn-wa::after { background: #25D366; } .btn-yt::after { background: #FF0000; } .btn-ig::after { background: linear-gradient(45deg,#f58529,#dd2a7b,#8134af,#515bd4); } .btn-fb::after { background: #1877F2; } .btn-pin::after { background: #E60023; } .btn-th::after { background: #000; }

.btn i { font-size: 1rem; }

@keyframes rainbowMove { 0% { background-position: 0% 50%; } 100% { background-position: 100% 50%; } } </style>

<style> .aleo-monkey-widget { position: fixed; bottom: 12px; right: 12px; width: 78px; height: 84px; z-index: 99999; cursor: pointer; transition: transform 0.3s; } .aleo-monkey-widget:hover {transform: scale(1.18) rotate(-10deg);} .monkey-body { position: absolute; bottom: 5px; left: 15px; width: 50px; height: 45px; background: #d35400; border-radius: 50% 50% 30% 30% / 60% 60% 40% 40%; border: 3px solid #a0522d; animation: monkeyDance 2s infinite; } @keyframes monkeyDance { 0%,100%{transform:rotate(-3deg) scale(1);} 25%{transform:rotate(3deg) scale(1.03);} 75%{transform:rotate(-5deg) scale(0.97);} } .monkey-head { position: absolute; top: 5px; left: 20px; width: 45px; height: 47px; background: #d35400; border-radius: 50% 50% 40% 40% / 65% 65% 35% 35%; border: 3px solid #a0522d; display: flex; align-items: center; justify-content: center; font-size: 25px; animation: headBob 1.5s infinite; } @keyframes headBob {0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}} .monkey-arms {position: absolute; top: 26px; left: 4px; display: flex; gap: 50px;} .monkey-arms .arm { width: 18px; height: 25px; background: #d35400; border: 2px solid #a0522d; border-radius: 50px; transform-origin: top center; } .monkey-arms .arm.left {animation: armSwing 1.2s infinite;} .monkey-arms .arm.right {animation: armSwing 1.2s infinite reverse;} @keyframes armSwing {0%,100%{transform:rotate(-20deg);}50%{transform:rotate(25deg);}} .coconut { position: absolute; top: -5px; right: 5px; font-size: 15px; animation: coconutSpin 2.5s infinite; color: #8b4513; } @keyframes coconutSpin {0%,100%{transform:rotate(0deg);}100%{transform:rotate(360deg);}} .monkey-speech { position: absolute; right: 85px; bottom: 35px; background: #e74c3c; color: white; border-radius: 20px; font-size: 10px; padding: 7px 12px; font-family: Arial, sans-serif; white-space: nowrap; opacity: 0; transition: opacity 0.4s; box-shadow: 0 3px 15px rgba(231,76,60,0.4); animation: speechWiggle 3s infinite; pointer-events: none; } @keyframes speechWiggle {0%,100%{transform:rotate(0);}25%{transform:rotate(-2deg);}75%{transform:rotate(2deg);}} .monkey-speech:after { content: ''; position: absolute; left: 100%; top: 50%; transform: translateY(-50%); border: 5px solid transparent; border-left-color: #e74c3c; } .aleo-monkey-widget:hover .monkey-speech {opacity: 1;} </style>
🐵
🍌
Ayo nonton vlog aku dong!
<script> const monkeyPhrases = { id: [ 'Ayo nonton vlog aku dong!', 'Subscribe dong!', 'Ikuti petualangan saya di sawit!', 'Jangan lupa like ya Tuan!', 'Tolong bantu aku jadi orang sukses 🙏' ], en: [ 'Watch my vlogs!', 'Please subscribe!', 'Follow my palm oil adventures!', 'Don\'t forget to like!', 'Please help me become successful 🙏' ], ms: [ 'Tengok vlog saya!', 'Subscribe lah!', 'Ikut adventure sawit!', 'Jangan lupa like!', 'Tolong bantu saya jadi orang berjaya 🙏' ] }; let phraseIndex = 0; const lang = (navigator.language||'id').split('-')[0]; const phrases = monkeyPhrases[lang] || monkeyPhrases['id']; setInterval(() => { document.getElementById('monkeySpeech').textContent = phrases[phraseIndex]; phraseIndex = (phraseIndex + 1) % phrases.length; }, 3000); </script>
423 752 true true BEFORE_DESCRIPTION 752

<b:if cond='data:useImage'> <b:if cond='data:imagePlacement == "BEHIND"'> <b:if cond='data:mobile'>

<b:include name='title'/>

<b:include name='description'/>
<b:else/>

<b:include name='title'/>

<b:include name='description'/>
</b:if> <b:else/>
<b:if cond='data:imagePlacement == "BEFORE_DESCRIPTION"'> <b:include name='description'/> </b:if>
</b:if> <b:else/>

<b:include name='title'/>

<b:include name='description'/>
</b:if> </b:includable> <b:includable id='description'>

<div class='tabs-outer'>
<div class='tabs-cap-top cap-top'>
  <div class='cap-left'/>
  <div class='cap-right'/>
</div>
<div class='fauxborder-left tabs-fauxborder-left'>
<div class='fauxborder-right tabs-fauxborder-right'/>
<div class='region-inner tabs-inner'>
  <b:section class='tabs' id='crosscol' maxwidgets='1' name='Cross-Column' showaddelement='yes'>
    <b:widget id='HTML2' locked='false' title='' type='HTML'>
      <b:widget-settings>
        <b:widget-setting name='content'><![CDATA[<!-- ===============================

🏠 HOMEPAGE ALEO’S TUBE ================================ --> <b:if cond='data:blog.pageType == "index"'> Aleo’s Tube — Daily Vlog Anak Rantau

🌏 Aleo’s Tube Daily Vlog Anak Rantau

Gabungan cerita kehidupan, tutorial blogger, dan tools otomatis buatan Aleo.

Aleo's Tube
<span class="spark"></span>
<span class="spark"></span>
<span class="spark"></span>
<span class="spark"></span>
<span class="spark"></span>
O YT IG FB Pin XT
<style type="text/css"> #welcome-message { position: fixed; top: 20%; left: 50%; transform: translateX(-50%); background: rgba(255,255,255,0.9); padding: 15px 30px; border-radius: 15px; font-family: Poppins,sans-serif; font-size: 1.1rem; color: #222; text-align: center; opacity: 0; z-index: 9999; animation: fadeInOut 6s ease-in-out forwards; box-shadow:0 3px 10px rgba(0,0,0,0.15); } @keyframes fadeInOut { 0% {opacity:0; transform:translate(-50%,-10%);} 15% {opacity:1; transform:translate(-50%,0);} 85% {opacity:1; transform:translate(-50%,0);} 100% {opacity:0; transform:translate(-50%,10%);} } body.dark-mode #welcome-message { background: rgba(20,20,30,0.85); color:#fafafa; } </style> <script type="text/javascript"> // { // Dark mode otomatis const hour = new Date().getHours(); if(hour >= 18 || hour < 6) document.body.classList.add("dark-mode"); // Multi-bahasa const userLang = (navigator.language || 'id').split('-')[0]; const messages = { id: ["Selamat Datang di blog saya!","Halo! Terima kasih sudah mampir!"], en: ["Welcome to my blog!","Hello! Thanks for visiting!"], es: ["¡Bienvenidos a mi blog!","Hola! Gracias por visitar!"], fr: ["Bienvenue sur mon blog!","Salut! Merci pour votre visite!"], de: ["Willkommen auf meinem Blog!","Hallo! Danke für den Besuch!"], ja: ["私のブログへようこそ!","こんにちは! ご訪問ありがとうございます。"], zh: ["欢迎来到我的博客!","你好! 感谢访问!"], ko: ["제 블로그에 오신 것을 환영합니다!","안녕하세요! 방문해 주셔서 감사합니다!"], tet: ["Bondia senhór no senhóra sira!","Hola! Favor fahi blog hau!"] }; const greetArray = messages[userLang] || messages.id; const greeting = greetArray[Math.floor(Math.random() * greetArray.length)]; // tampilkan pesan const msgBox = document.createElement("div"); msgBox.id = "welcome-message"; msgBox.innerText = greeting; document.body.appendChild(msgBox); // suara otomatis setTimeout(()=>{ try{ const synth = window.speechSynthesis; const utter = new SpeechSynthesisUtterance(greeting); const langMap = { tet:'pt-PT' }; utter.lang = langMap[userLang] || (userLang+'-'+userLang.toUpperCase()); utter.pitch=1; utter.rate=1; utter.volume=1; synth.speak(utter); }catch(e){} },500); // hapus pesan setelah animasi setTimeout(()=> msgBox.remove(),6000); }); //]]]]> </script> <style> /* 🎨 Gaya Tombol Profesional */ .btn { display: inline-block; margin: 8px; padding: 12px 22px; font-size: 16px; font-weight: 600; text-decoration: none; color: #fff; border-radius: 12px; transition: all 0.25s ease-in-out; background: linear-gradient(135deg, #007bff, #00bfff); box-shadow: 0 4px 10px rgba(0,0,0,0.2); } .btn:hover { transform: translateY(-2px); background: linear-gradient(135deg, #0056b3, #0099cc); box-shadow: 0 6px 14px rgba(0,0,0,0.25); } .btn:active { transform: scale(0.97); } @media (max-width: 600px) { .btn { display: block; width: 100%; text-align: center; box-sizing: border-box; } } </style> <script> document.addEventListener("DOMContentLoaded", function() { const links = document.querySelectorAll("a[href='javascript:void(0);'][onclick*='trackAffiliate']"); links.forEach(a => { const onclickAttr = a.getAttribute("onclick"); const match = onclickAttr.match(/trackAffiliate\(['"]([^'"]+)['"],['"]([^'"]+)['"]\)/); if (match) { const productName = match[1]; const targetUrl = match[2]; // Ubah jadi SEO-friendly link a.setAttribute("href", targetUrl); a.setAttribute("onclick", `trackAffiliate('${productName}', this.href); return false;`); a.setAttribute("rel", "nofollow noopener noreferrer"); // Tambah kelas tombol (kalau belum ada) if (!a.classList.contains("btn")) a.classList.add("btn"); console.log("✅ Diperbaiki:", productName, "→", targetUrl); } }); }); </script> <script> function trackAffiliate(productName, url) { console.log("📈 Tracking:", productName); // kamu bisa tambahkan pelacakan custom di sini ( <script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-71BR09BJ1R"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-71BR09BJ1R'); </script>

, <b:if cond='data:blog.pageType != "preview"'>

<script type='text/javascript'> // </script> , dll) window.location.href = url; // redirect ke link tujuan }

🚀 Skor Kecepatan Blog

Mobile
Memuat...
Desktop
Memuat...
🔗 Lihat detail di PageSpeed Insights
<script> (async function(){ const blogUrl = 'https://aleos-tube-daily-vlog-anak-rantau.blogspot.com'; async function fetchScore(strategy){ const api = `https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=${blogUrl}&strategy=${strategy}`; const res = await fetch(api); const data = await res.json(); return Math.round(data.lighthouseResult.categories.performance.score * 100); } function colorFor(score){ if(score >= 90) return '#00c853'; // Hijau if(score >= 50) return '#ffb300'; // Oranye return '#d50000'; // Merah } async function updateUI(device){ const score = await fetchScore(device); const fill = document.getElementById(device + 'Fill'); const bar = document.getElementById(device + 'Bar'); const text = document.getElementById(device + 'Score'); fill.style.width = score + '%'; fill.style.background = colorFor(score); text.innerHTML = `${score}/100 (${device})`; text.style.color = colorFor(score); } updateUI('mobile'); updateUI('desktop'); })(); </script>

🚀 Skor Kecepatan Blog

Mobile
Memuat...
Desktop
Memuat...
🔗 Lihat detail di PageSpeed Insights
<script> (async function(){ const blogUrl = 'https://aleos-tube-daily-vlog-anak-rantau.blogspot.com'; async function fetchScore(strategy){ const api = `https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=${blogUrl}&strategy=${strategy}`; const res = await fetch(api); const data = await res.json(); return Math.round(data.lighthouseResult.categories.performance.score * 100); } function colorFor(score){ if(score >= 90) return '#00c853'; // Hijau if(score >= 50) return '#ffb300'; // Oranye return '#d50000'; // Merah } async function updateUI(device){ const score = await fetchScore(device); const fill = document.getElementById(device + 'Fill'); const bar = document.getElementById(device + 'Bar'); const text = document.getElementById(device + 'Score'); fill.style.width = score + '%'; fill.style.background = colorFor(score); text.innerHTML = `${score}/100 (${device})`; text.style.color = colorFor(score); } updateUI('mobile'); updateUI('desktop'); })(); </script>

<!doctype html>

SEO Status — Aleo's Tube

<style> body{font-family:Segoe UI, Roboto, Arial; background:#f6f8fb; color:#0b1220; padding:28px;} .card{background:white;border-radius:12px;padding:18px;box-shadow:0 8px 28px rgba(13,41,77,0.06);max-width:920px;margin:0 auto;} h1{margin:0 0 12px;font-size:20px} .row{display:flex;gap:12px;align-items:center;margin-top:10px;flex-wrap:wrap} .badge{padding:8px 12px;border-radius:10px;background:linear-gradient(90deg,#ff6b00,#0077ff);color:#fff;font-weight:700} button{padding:8px 12px;border-radius:10px;border:none;background:#0077ff;color:#fff;cursor:pointer;font-weight:700} .muted{color:#5b6782;font-size:13px} pre{background:#0b1220;color:#dff4ff;padding:12px;border-radius:8px;overflow:auto} </style>

SEO Status — Aleo's Tube

Halaman ini menampilkan status ping sitemap & consent lokal. Semua tindakan bersifat client-side dan tidak memerlukan akses server.
<div class="row" style="margin-top:18px">
  <div>
    <div class="muted">Consent analytics</div>
    <div id="consentStatus" class="badge">—</div>
  </div>

  <div>
    <div class="muted">Last auto-ping</div>
    <div id="lastPing" style="padding:8px 12px;border-radius:8px;background:#f1f5f9;color:#0b1220;font-weight:700">—</div>
  </div>

  <div style="margin-left:auto; display:flex; gap:8px;">
    <button id="manualPing">Ping Sekarang</button>
    <button id="clearPing" style="background:#ff4d4f">Reset</button>
  </div>
</div>

<section style="margin-top:18px;">
  <h3 style="margin:8px 0">Log Ringkas</h3>
  <div class="muted">Log di bawah hanya untuk debugging &amp; tersimpan sementara di sessionStorage.</div>
  <pre id="logArea" style="height:160px">—</pre>
</section>

<section style="margin-top:16px;">
  <small class="muted">Catatan: Ping dilakukan via <code>fetch</code> ke endpoint publik (Google/Bing) dengan mode <code>no-cors</code>. Browser tidak menampilkan respons yang bisa dibaca — operasi bersifat "fire-and-forget".</small>
</section>
<script> (function(){ var pingKey = 'gt_ping_v10_1'; var consentKey = 'gt_accept_v10_1'; var logArea = document.getElementById('logArea'); function appendLog(msg){ try { var now = new Date().toLocaleString(); var prev = sessionStorage.getItem('aleos_seo_log') || ''; var line = '['+ now +'] ' + msg + '\\n'; prev = line + prev; sessionStorage.setItem('aleos_seo_log', prev.slice(0, 5000)); logArea.textContent = prev || '—'; } catch(e){ console.warn(e); } } function updateUI(){ var last = localStorage.getItem(pingKey); document.getElementById('lastPing').textContent = last ? new Date(parseInt(last,10)).toLocaleString() : 'Belum pernah'; document.getElementById('consentStatus').textContent = localStorage.getItem(consentKey) ? 'Diterima' : 'Belum'; } function pingNow(){ try { var sitemap = location.origin + '/sitemap.xml'; appendLog('Mencoba ping Google & Bing untuk: ' + sitemap); // Google fetch('https://www.google.com/ping?sitemap=' + encodeURIComponent(sitemap), {mode:'no-cors'}).then(function(){ appendLog('Ping Google dikirim'); }).catch(function(e){ appendLog('Ping Google gagal'); }); // Bing fetch('https://www.bing.com/ping?sitemap=' + encodeURIComponent(sitemap), {mode:'no-cors'}).then(function(){ appendLog('Ping Bing dikirim'); }).catch(function(e){ appendLog('Ping Bing gagal'); }); localStorage.setItem(pingKey, String(Date.now())); updateUI(); } catch(e){ appendLog('Error ping: ' + (e && e.message ? e.message : e)); } } document.getElementById('manualPing').addEventListener('click', function(){ pingNow(); }, {passive:true}); document.getElementById('clearPing').addEventListener('click', function(){ localStorage.removeItem(pingKey); sessionStorage.removeItem('aleos_seo_log'); logArea.textContent = '—'; updateUI(); }, {passive:true}); // init try { logArea.textContent = sessionStorage.getItem('aleos_seo_log') || '—'; updateUI(); appendLog('Dashboard dibuka'); } catch(e){ console.warn(e); } })(); </script>

</!doctype>]]></b:widget-setting> </b:widget-settings> <b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> </b:section> <b:section class='tabs' id='crosscol-overflow' name='Cross-Column 2' showaddelement='no'/>

<div class='main-outer'>
<div class='main-cap-top cap-top'>
  <div class='cap-left'/>
  <div class='cap-right'/>
</div>

<div class='fauxborder-left main-fauxborder-left'>
<div class='fauxborder-right main-fauxborder-right'/>
<div class='region-inner main-inner'>

  <div class='columns fauxcolumns'>

    <div class='fauxcolumn-outer fauxcolumn-center-outer'>
    <div class='cap-top'>
      <div class='cap-left'/>
      <div class='cap-right'/>
    </div>
    <div class='fauxborder-left'>
    <div class='fauxborder-right'/>
    <div class='fauxcolumn-inner'>
    </div>
    </div>
    <div class='cap-bottom'>
      <div class='cap-left'/>
      <div class='cap-right'/>
    </div>
    </div>

    <div class='fauxcolumn-outer fauxcolumn-left-outer'>
    <div class='cap-top'>
      <div class='cap-left'/>
      <div class='cap-right'/>
    </div>
    <div class='fauxborder-left'>
    <div class='fauxborder-right'/>
    <div class='fauxcolumn-inner'>
    </div>
    </div>
    <div class='cap-bottom'>
      <div class='cap-left'/>
      <div class='cap-right'/>
    </div>
    </div>

    <div class='fauxcolumn-outer fauxcolumn-right-outer'>
    <div class='cap-top'>
      <div class='cap-left'/>
      <div class='cap-right'/>
    </div>
    <div class='fauxborder-left'>
    <div class='fauxborder-right'/>
    <div class='fauxcolumn-inner'>
    </div>
    </div>
    <div class='cap-bottom'>
      <div class='cap-left'/>
      <div class='cap-right'/>
    </div>
    </div>

    <!-- corrects IE6 width calculation -->
    <div class='columns-inner'>

    <div class='column-center-outer'>
    <div class='column-center-inner'>
      <b:section class='main' id='main' name='Main' showaddelement='no'>
        <b:widget id='Blog1' locked='false' title='Postingan Blog' type='Blog' version='1'>
          <b:widget-settings>
            <b:widget-setting name='commentLabel'>comments</b:widget-setting>
            <b:widget-setting name='showShareButtons'>true</b:widget-setting>
            <b:widget-setting name='authorLabel'>By Aleo</b:widget-setting>
            <b:widget-setting name='style.unittype'>TextAndImage</b:widget-setting>
            <b:widget-setting name='timestampLabel'>at</b:widget-setting>
            <b:widget-setting name='reactionsLabel'/>
            <b:widget-setting name='showAuthorProfile'>true</b:widget-setting>
            <b:widget-setting name='style.layout'>1x1</b:widget-setting>
            <b:widget-setting name='showLocation'>false</b:widget-setting>
            <b:widget-setting name='showTimestamp'>true</b:widget-setting>
            <b:widget-setting name='postsPerAd'>1</b:widget-setting>
            <b:widget-setting name='style.bordercolor'>#ffffff</b:widget-setting>
            <b:widget-setting name='showDateHeader'>true</b:widget-setting>
            <b:widget-setting name='style.textcolor'>#ffffff</b:widget-setting>
            <b:widget-setting name='showCommentLink'>true</b:widget-setting>
            <b:widget-setting name='style.urlcolor'>#ffffff</b:widget-setting>
            <b:widget-setting name='postLocationLabel'>Location: Indonesia</b:widget-setting>
            <b:widget-setting name='showAuthor'>true</b:widget-setting>
            <b:widget-setting name='style.linkcolor'>#ffffff</b:widget-setting>
            <b:widget-setting name='style.bgcolor'>#ffffff</b:widget-setting>
            <b:widget-setting name='showLabels'>false</b:widget-setting>
            <b:widget-setting name='postLabelsLabel'>Labels: Daily Vlog Anak Rantau Indonesia,</b:widget-setting>
            <b:widget-setting name='showBacklinks'>false</b:widget-setting>
            <b:widget-setting name='showInlineAds'>false</b:widget-setting>
            <b:widget-setting name='showReactions'>false</b:widget-setting>
          </b:widget-settings>
          <b:includable id='main' var='top'>

<b:if cond='!data:mobile'>

  <b:include data='top' name='status-message'/>

  <b:loop values='data:posts' var='post'>
    <b:if cond='data:post.isDateStart and not data:post.isFirstPost'>
      &lt;/div&gt;&lt;/div&gt;
    </b:if>
    <b:if cond='data:post.isDateStart'>
      &lt;div class=&quot;date-outer&quot;&gt;
    </b:if>
    <b:if cond='data:post.dateHeader'>
      <h2 class='date-header'><span><data:post.dateHeader/></span></h2>
    </b:if>
    <b:if cond='data:post.isDateStart'>
      &lt;div class=&quot;date-posts&quot;&gt;
    </b:if>
    <div class='post-outer'>
      <b:include data='post' name='post'/>
      <b:include cond='data:blog.pageType in {&quot;static_page&quot;,&quot;item&quot;}' data='post' name='comment_picker'/>
    </div>

    <!-- Ad -->
    <b:if cond='data:post.includeAd'>
      <div class='inline-ad'>
        <data:adCode/>
      </div>
    </b:if>
  </b:loop>
  <b:if cond='data:numPosts != 0'>
    &lt;/div&gt;&lt;/div&gt;
  </b:if>
</div>

<!-- navigation -->
<b:include name='nextprev'/>

<!-- feed links -->
<b:include name='feedLinks'/>

<b:else/> <b:include name='mobile-main'/> </b:if> </b:includable> <b:includable id='backlinkDeleteIcon' var='backlink'/> <b:includable id='backlinks' var='post'/> <b:includable id='comment-form' var='post'>

:
  <b:if cond='data:post.commentPagingRequired'>
    <span class='paging-control-container'>
      <b:if cond='data:post.hasOlderLinks'>
        <a expr:class='data:post.oldLinkClass' expr:href='data:post.oldestLinkUrl'><data:post.oldestLinkText/></a>
          &#160;
        <a expr:class='data:post.oldLinkClass' expr:href='data:post.olderLinkUrl'><data:post.olderLinkText/></a>
          &#160;
      </b:if>

      <data:post.commentRangeText/>

      <b:if cond='data:post.hasNewerLinks'>
        &#160;
        <a expr:class='data:post.newLinkClass' expr:href='data:post.newerLinkUrl'><data:post.newerLinkText/></a>
        &#160;
        <a expr:class='data:post.newLinkClass' expr:href='data:post.newestLinkUrl'><data:post.newestLinkText/></a>
      </b:if>
    </span>
  </b:if>

  <div expr:id='data:widget.instanceId + &quot;_comments-block-wrapper&quot;'>
    <dl expr:class='data:post.avatarIndentClass' id='comments-block'>
      <b:loop values='data:post.comments' var='comment'>
        <dt expr:class='&quot;comment-author &quot; + data:comment.authorClass' expr:id='data:comment.anchorName'>
          <b:if cond='data:comment.favicon'>
            <img expr:src='data:comment.favicon' height='16px' style='margin-bottom:-2px;' width='16px'/>
          </b:if>
          <a expr:name='data:comment.anchorName'/>
          <b:if cond='data:blog.enabledCommentProfileImages'>
            <data:comment.authorAvatarImage/>
          </b:if>
          <b:if cond='data:comment.authorUrl'>
            <a expr:href='data:comment.authorUrl' rel='nofollow'><data:comment.author/></a>
          <b:else/>
            <data:comment.author/>
          </b:if>
          <data:commentPostedByMsg/>
        </dt>
        <dd class='comment-body' expr:id='data:widget.instanceId + data:comment.cmtBodyIdPostfix'>
          <b:if cond='data:comment.isDeleted'>
            <span class='deleted-comment'><data:comment.body/></span>
          <b:else/>
            <p>
              <data:comment.body/>
            </p>
          </b:if>
        </dd>
        <dd class='comment-footer'>
          <span class='comment-timestamp'>
            <a expr:href='data:comment.url' title='comment permalink'>
              <data:comment.timestamp/>
            </a>
            <b:include data='comment' name='commentDeleteIcon'/>
          </span>
        </dd>
      </b:loop>
    </dl>
  </div>

  <b:if cond='data:post.commentPagingRequired'>
    <span class='paging-control-container'>
      <a expr:class='data:post.oldLinkClass' expr:href='data:post.oldestLinkUrl'>
        <data:post.oldestLinkText/>
      </a>
      <a expr:class='data:post.oldLinkClass' expr:href='data:post.olderLinkUrl'>
        <data:post.olderLinkText/>
      </a>
      &#160;
      <data:post.commentRangeText/>
      &#160;
      <a expr:class='data:post.newLinkClass' expr:href='data:post.newerLinkUrl'>
        <data:post.newerLinkText/>
      </a>
      <a expr:class='data:post.newLinkClass' expr:href='data:post.newestLinkUrl'>
        <data:post.newestLinkText/>
      </a>
    </span>
  </b:if>

  <p class='comment-footer'>
    <b:if cond='data:post.embedCommentForm'>
      <b:if cond='data:post.allowNewComments'>
        <b:include data='post' name='comment-form'/>
      <b:else/>
        <data:post.noNewCommentsText/>
      </b:if>
    <b:elseif cond='data:post.allowComments'/>
      <a expr:href='data:post.addCommentUrl' expr:onclick='data:post.addCommentOnclick'><data:postCommentMsg/></a>
    </b:if>
  </p>
</b:if>
<b:if cond='data:showCmtPopup'>
  <div id='comment-popup'>
    <iframe allowtransparency='true' frameborder='0' id='comment-actions' name='comment-actions' scrolling='no'>
    </iframe>
  </div>
</b:if>

<b:else/>

<b:loop values='data:posts' var='post'> <b:include cond='data:post.allowComments and data:post.feedLinks' data='post.feedLinks' name='feedLinksBody'/> </b:loop>
</b:if> </b:includable> <b:includable id='feedLinksBody' var='links'>

()
<div class='mobile-post-outer'>
  <a expr:href='data:post.url'>
    <h3 class='mobile-index-title entry-title' itemprop='name'>
      <data:post.title/>
    </h3>

    <div class='mobile-index-arrow'>&amp;rsaquo;</div>

    <div class='mobile-index-contents'>
      <b:if cond='data:post.thumbnailUrl'>
        <div class='mobile-index-thumbnail'>
          <div class='Image'>
            <img expr:src='data:post.thumbnailUrl'/>
          </div>
        </div>
      </b:if>

      <div class='post-body'>
        <b:if cond='data:post.snippet'><data:post.snippet/></b:if>
      </div>
    </div>

    <div style='clear: both;'/>
  </a>

  <div class='mobile-index-comment'>
    <b:include cond='data:blog.pageType != &quot;static_page&quot;                          and data:post.allowComments                          and data:post.numComments != 0' data='post' name='comment_count_picker'/>
  </div>
</div>
  <b:include data='top' name='status-message'/>

  <b:if cond='data:blog.pageType == &quot;index&quot;'>
    <b:loop values='data:posts' var='post'>
      <b:include data='post' name='mobile-index-post'/>
    </b:loop>
  <b:else/>
    <b:loop values='data:posts' var='post'>
      <b:include data='post' name='mobile-post'/>
    </b:loop>
  </b:if>
</div>

<b:include name='mobile-nextprev'/> </b:includable> <b:includable id='mobile-nextprev'>

<b:if cond='data:olderPageUrl'>
  <div class='mobile-link-button' id='blog-pager-older-link'>
  <a class='blog-pager-older-link' expr:href='data:olderPageUrl' expr:id='data:widget.instanceId + &quot;_blog-pager-older-link&quot;' expr:title='data:olderPageTitle'>&amp;rsaquo;</a>
  </div>
</b:if>

<div class='mobile-link-button' id='blog-pager-home-link'>
<a class='home-link' expr:href='data:blog.homepageUrl'><data:homeMsg/></a>
</div>

<div class='mobile-desktop-link'>
  <a class='home-link' expr:href='data:desktopLinkUrl'><data:desktopLinkMsg/></a>
</div>

    <div class='post hentry uncustomized-post-template' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
      <b:if cond='data:post.thumbnailUrl'>
        <meta expr:content='data:post.thumbnailUrl' itemprop='image_url'/>
      </b:if>
      <meta expr:content='data:blog.blogId' itemprop='blogId'/>
      <meta expr:content='data:post.id' itemprop='postId'/>

      <a expr:name='data:post.id'/>
      <b:if cond='data:post.title'>
        <h3 class='post-title entry-title' itemprop='name'>
          <b:if cond='data:post.link'>
            <a expr:href='data:post.link'><data:post.title/></a>
          <b:elseif cond='data:post.url and data:blog.url != data:post.url'/>
            <a expr:href='data:post.url'><data:post.title/></a>
          <b:else/>
            <data:post.title/>
          </b:if>
        </h3>
      </b:if>

      <div class='post-header'>
        <div class='post-header-line-1'/>
      </div>

      <div class='post-body entry-content' expr:id='&quot;post-body-&quot; + data:post.id' itemprop='articleBody'>
        <data:post.body/>
        <div style='clear: both;'/> <!-- clear for photos floats -->
      </div>            

      <div class='post-footer'>
        <div class='post-footer-line post-footer-line-1'>
          <span class='post-author vcard'>
            <b:if cond='data:top.showAuthor'>
              <b:if cond='data:post.authorProfileUrl'>
                <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
                  <meta expr:content='data:post.authorProfileUrl' itemprop='url'/>
                  <a expr:href='data:post.authorProfileUrl' rel='author' title='author profile'>
                    <span itemprop='name'><data:post.author/></span>
                  </a>
                </span>
              <b:else/>
                <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
                  <span itemprop='name'><data:post.author/></span>
                </span>
              </b:if>
            </b:if>
          </span>

          <span class='post-timestamp'>
            <b:if cond='data:top.showTimestamp'>
              <data:top.timestampLabel/>
              <b:if cond='data:post.url'>
                <meta expr:content='data:post.url.canonical' itemprop='url'/>
                <a class='timestamp-link' expr:href='data:post.url' rel='bookmark' title='permanent link'><abbr class='published' expr:title='data:post.timestampISO8601' itemprop='datePublished'><data:post.timestamp/></abbr></a>
              </b:if>
            </b:if>
          </span>

          <span class='post-comment-link'>
            <b:include cond='data:blog.pageType not in {&quot;item&quot;,&quot;static_page&quot;}                                  and data:post.allowComments' data='post' name='comment_count_picker'/>
          </span>
        </div>

        <div class='post-footer-line post-footer-line-2'>
          <b:if cond='data:top.showMobileShare'>
            <div class='mobile-link-button goog-inline-block' id='mobile-share-button'>
              <a href='javascript:void(0);'><data:shareMsg/></a>
            </div>
          </b:if>
        </div>

      </div>
    </div>

    <b:include cond='data:blog.pageType in {&quot;static_page&quot;,&quot;item&quot;}' data='post' name='comment_picker'/>
  </div>
</div>
<b:if cond='data:olderPageUrl'>
  <span id='blog-pager-older-link'>
  <a class='blog-pager-older-link' expr:href='data:olderPageUrl' expr:id='data:widget.instanceId + &quot;_blog-pager-older-link&quot;' expr:title='data:olderPageTitle'><data:olderPageTitle/></a>
  </span>
</b:if>

<a class='home-link' expr:href='data:blog.homepageUrl'><data:homeMsg/></a>

<b:if cond='data:mobileLinkUrl'>
  <div class='blog-mobile-link'>
    <a expr:href='data:mobileLinkUrl'><data:mobileLinkMsg/></a>
  </div>
</b:if>
<a expr:name='data:post.id'/>
<b:if cond='data:post.title'>
  <h3 class='post-title entry-title' itemprop='name'>
  <b:if cond='data:post.link or (data:post.url and data:blog.url != data:post.url)'>
    <a expr:href='data:post.link ? data:post.link : data:post.url'><data:post.title/></a>
  <b:else/>
    <data:post.title/>
  </b:if>
  </h3>
</b:if>

<div class='post-header'>
<div class='post-header-line-1'/>
</div>

<!-- Then use the post body as the schema.org description, for good G+/FB snippeting. -->
<div class='post-body entry-content' expr:id='&quot;post-body-&quot; + data:post.id' expr:itemprop='(data:blog.metaDescription ? &quot;&quot; : &quot;description &quot;) + &quot;articleBody&quot;'>
  <data:post.body/>
  <div style='clear: both;'/> <!-- clear for photos floats -->
</div>

<b:if cond='data:post.hasJumpLink'>
  <div class='jump-link'>
    <a expr:href='data:post.url + &quot;#more&quot;' expr:title='data:post.title'><data:post.jumpText/></a>
  </div>
</b:if>

<div class='post-footer'>
<div class='post-footer-line post-footer-line-1'>
  <span class='post-author vcard'>
    <b:if cond='data:top.showAuthor'>
      <data:top.authorLabel/>
        <b:if cond='data:post.authorProfileUrl'>
          <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
            <meta expr:content='data:post.authorProfileUrl' itemprop='url'/>
            <a class='g-profile' expr:href='data:post.authorProfileUrl' rel='author' title='author profile'>
              <span itemprop='name'><data:post.author/></span>
            </a>
          </span>
        <b:else/>
          <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
            <span itemprop='name'><data:post.author/></span>
          </span>
        </b:if>
    </b:if>
  </span>

  <span class='post-timestamp'>
    <b:if cond='data:top.showTimestamp'>
      <data:top.timestampLabel/>
      <b:if cond='data:post.url'>
        <meta expr:content='data:post.url.canonical' itemprop='url'/>
        <a class='timestamp-link' expr:href='data:post.url' rel='bookmark' title='permanent link'><abbr class='published' expr:title='data:post.timestampISO8601' itemprop='datePublished'><data:post.timestamp/></abbr></a>
      </b:if>
    </b:if>
  </span>

  <span class='post-comment-link'>
    <b:include cond='data:blog.pageType not in {&quot;item&quot;,&quot;static_page&quot;}                          and data:post.allowComments' data='post' name='comment_count_picker'/>
  </span>

  <span class='post-icons'>
    <!-- email post links -->
    <b:if cond='data:post.emailPostUrl'>
      <span class='item-action'>
      <a expr:href='data:post.emailPostUrl' expr:title='data:top.emailPostMsg'>
        <img alt='' class='icon-action' height='13' src='https://resources.blogblog.com/img/icon18_email.gif' width='18'/>
      </a>
      </span>
    </b:if>

    <!-- quickedit pencil -->
    <b:include data='post' name='postQuickEdit'/>
  </span>

  <!-- share buttons -->
  <div class='post-share-buttons goog-inline-block'>
    <b:include cond='data:post.sharePostUrl' data='post' name='shareButtons'/>
  </div>

  </div>

  <div class='post-footer-line post-footer-line-2'>
  <span class='post-labels'>
    <b:if cond='data:top.showPostLabels and data:post.labels'>
      <data:postLabelsLabel/>
      <b:loop values='data:post.labels' var='label'>
        <a expr:href='data:label.url' rel='tag'><data:label.name/></a><b:if cond='not data:label.isLast'>,</b:if>
      </b:loop>
    </b:if>
  </span>
  </div>

  <div class='post-footer-line post-footer-line-3'>
  <span class='post-location'>
    <b:if cond='data:top.showLocation and data:post.location'>
      <data:postLocationLabel/>
      <a expr:href='data:post.location.mapsUrl' target='_blank'><data:post.location.name/></a>
    </b:if>
  </span>
  </div>
  <b:if cond='data:post.authorAboutMe'>
    <div class='author-profile' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
      <b:if cond='data:post.authorPhoto.url'>
        <img expr:src='data:post.authorPhoto.url' itemprop='image' width='50px'/>
      </b:if>
      <div>
        <a class='g-profile' expr:href='data:post.authorProfileUrl' itemprop='url' rel='author' title='author profile'>
          <span itemprop='name'><data:post.author/></span>
        </a>
      </div>
      <span itemprop='description'><data:post.authorAboutMe/></span>
    </div>
  </b:if>
</div>
<script async='async' expr:src='data:post.commentSrc' type='text/javascript'/> <script type='text/javascript'> (function() { var items = ; var msgs = ; var config = ; // 0) { cursor = parseInt(items[items.length - 1].timestamp) + 1; } var bodyFromEntry = function(entry) { var text = (entry && ((entry.content && entry.content.$t) || (entry.summary && entry.summary.$t))) || ''; if (entry && entry.gd$extendedProperty) { for (var k in entry.gd$extendedProperty) { if (entry.gd$extendedProperty[k].name == 'blogger.contentRemoved') { return '' + text + ''; } } } return text; } var parse = function(data) { cursor = null; var comments = []; if (data && data.feed && data.feed.entry) { for (var i = 0, entry; entry = data.feed.entry[i]; i++) { var comment = {}; // comment ID, parsed out of the original id format var id = /blog-(\d+).post-(\d+)/.exec(entry.id.$t); comment.id = id ? id[2] : null; comment.body = bodyFromEntry(entry); comment.timestamp = Date.parse(entry.published.$t) + ''; if (entry.author && entry.author.constructor === Array) { var auth = entry.author[0]; if (auth) { comment.author = { name: (auth.name ? auth.name.$t : undefined), profileUrl: (auth.uri ? auth.uri.$t : undefined), avatarUrl: (auth.gd$image ? auth.gd$image.src : undefined) }; } } if (entry.link) { if (entry.link[2]) { comment.link = comment.permalink = entry.link[2].href; } if (entry.link[3]) { var pid = /.*comments\/default\/(\d+)\?.*/.exec(entry.link[3].href); if (pid && pid[1]) { comment.parentId = pid[1]; } } } comment.deleteclass = 'item-control blog-admin'; if (entry.gd$extendedProperty) { for (var k in entry.gd$extendedProperty) { if (entry.gd$extendedProperty[k].name == 'blogger.itemClass') { comment.deleteclass += ' ' + entry.gd$extendedProperty[k].value; } else if (entry.gd$extendedProperty[k].name == 'blogger.displayTime') { comment.displayTime = entry.gd$extendedProperty[k].value; } } } comments.push(comment); } } return comments; }; var paginator = function(callback) { if (hasMore()) { var url = config.feed + '?alt=json&v=2&orderby=published&reverse=false&max-results=50'; if (cursor) { url += '&published-min=' + new Date(cursor).toISOString(); } window.bloggercomments = function(data) { var parsed = parse(data); cursor = parsed.length < 50 ? null : parseInt(parsed[parsed.length - 1].timestamp) + 1 callback(parsed); window.bloggercomments = null; } url += '&callback=bloggercomments'; var script = document.createElement('script'); script.type = 'text/javascript'; script.src = url; document.getElementsByTagName('head')[0].appendChild(script); } }; var hasMore = function() { return !!cursor; }; var getMeta = function(key, comment) { if ('iswriter' == key) { var matches = !!comment.author && comment.author.name == config.authorName && comment.author.profileUrl == config.authorUrl; return matches ? 'true' : ''; } else if ('deletelink' == key) { return config.baseUri + '/comment/delete/' + config.blogId + '/' + comment.id; } else if ('deleteclass' == key) { return comment.deleteclass; } return ''; }; var replybox = null; var replyUrlParts = null; var replyParent = undefined; var onReply = function(commentId, domId) { if (replybox == null) { // lazily cache replybox, and adjust to suit this style: replybox = document.getElementById('comment-editor'); if (replybox != null) { replybox.height = '250px'; replybox.style.display = 'block'; replyUrlParts = replybox.src.split('#'); } } if (replybox && (commentId !== replyParent)) { replybox.src = ''; document.getElementById(domId).insertBefore(replybox, null); replybox.src = replyUrlParts[0] + (commentId ? '&parentID=' + commentId : '') + '#' + replyUrlParts[1]; replyParent = commentId; } }; var hash = (window.location.hash || '#').substring(1); var startThread, targetComment; if (/^comment-form_/.test(hash)) { startThread = hash.substring('comment-form_'.length); } else if (/^c[0-9]+$/.test(hash)) { targetComment = hash.substring(1); } // Configure commenting API: var configJso = { 'maxDepth': config.maxThreadDepth }; var provider = { 'id': config.postId, 'data': items, 'loadNext': paginator, 'hasMore': hasMore, 'getMeta': getMeta, 'onReply': onReply, 'rendered': true, 'initComment': targetComment, 'initReplyThread': startThread, 'config': configJso, 'messages': msgs }; var render = function() { if (window.goog && window.goog.comments) { var holder = document.getElementById('comment-holder'); window.goog.comments.render(holder, provider); } }; // render now, or queue to render when library loads: if (window.goog && window.goog.comments) { render(); } else { window.goog = window.goog || {}; window.goog.comments = window.goog.comments || {}; window.goog.comments.loadQueue = window.goog.comments.loadQueue || []; window.goog.comments.loadQueue.push(render); } })(); // ]]> </script>

</b:includable> <b:includable id='threaded_comments' var='post'>

true false 0 true true

<b:include name='quickedit'/> </b:includable> <b:includable id='content'>

<style type='text/css'> .image { width: 100%; } </style>

</b:includable> </b:widget> <b:widget id='PopularPosts1' locked='false' title='' type='PopularPosts'> <b:widget-settings> <b:widget-setting name='numItemsToShow'>5</b:widget-setting> <b:widget-setting name='showThumbnails'>false</b:widget-setting> <b:widget-setting name='showSnippets'>true</b:widget-setting> <b:widget-setting name='timeRange'>ALL_TIME</b:widget-setting> </b:widget-settings> <b:includable id='main'> <b:if cond='data:title != ""'>

data:title/

</b:if>

    <div class='column-left-outer'>
    <div class='column-left-inner'>
      <aside>
      <macro:include id='main-column-left-sections' name='sections'>
        <macro:param default='0' name='num' value='0'/>
        <macro:param default='sidebar-left' name='idPrefix'/>
        <macro:param default='sidebar' name='class'/>
        <macro:param default='true' name='includeBottom'/>
      </macro:include>
      </aside>
    </div>
    </div>

    <div class='column-right-outer'>
    <div class='column-right-inner'>
      <aside>
      <macro:include id='main-column-right-sections' name='sections'>
        <macro:param default='2' name='num' value='0'/>
        <macro:param default='sidebar-right' name='idPrefix'/>
        <macro:param default='sidebar' name='class'/>
        <macro:param default='true' name='includeBottom'/>
      </macro:include>
      </aside>
    </div>
    </div>

    </div>

    <div style='clear: both'/>
  <!-- columns -->
  </div>

<!-- main -->
</div>
</div>
<div class='main-cap-bottom cap-bottom'>
  <div class='cap-left'/>
  <div class='cap-right'/>
</div>
</div>

<footer>
<div class='footer-outer'>
<div class='footer-cap-top cap-top'>
  <div class='cap-left'/>
  <div class='cap-right'/>
</div>
<div class='fauxborder-left footer-fauxborder-left'>
<div class='fauxborder-right footer-fauxborder-right'/>
<div class='region-inner footer-inner'>
  <macro:include id='footer-sections' name='sections'>
    <macro:param default='2' name='num' value='3'/>
    <macro:param default='footer' name='idPrefix'/>
    <macro:param default='foot' name='class'/>
    <macro:param default='false' name='includeBottom'/>
  </macro:include>
  <!-- outside of the include in order to lock Attribution widget -->
  <b:section class='foot' id='footer-3' name='Footer' showaddelement='no'>
    <b:widget id='Attribution1' locked='false' title='' type='Attribution'>
      <b:widget-settings>
        <b:widget-setting name='copyright'><![CDATA[© 2025 Aleo&#39;s Tube. All Rights Reserved.]]></b:widget-setting>
      </b:widget-settings>
      <b:includable id='main'>
<div class='widget-content' style='text-align: center;'>
  <b:if cond='data:attribution != &quot;&quot;'>
   <data:attribution/>
  </b:if>
</div>

<b:include name='quickedit'/>

</b:includable> </b:widget> </b:section>

<script type='text/javascript'> window.setTimeout(function() { document.body.className = document.body.className.replace('loading', ''); }, 10); </script> <iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-TRBCNSHZ&env=1&auth=XlVCJiNF15b9I-YIWjI4Dg' style='display:none;visibility:hidden' width='0'/> <iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-WR546M4D' style='display:none;visibility:hidden' width='0'/> <iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-MKB9TPDR' style='display:none;visibility:hidden' width='0'/> <script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-2F6SD6VRNM"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config','G-2F6SD6VRNM'); </script> <script> (function(){ const consentKey='gt_accept_v10_3'; const pingKey='gt_ping_v10_3'; const sitemap=location.origin+'/sitemap.xml'; function runPing(){ try{ const now=Date.now(); const last=localStorage.getItem(pingKey); if(!last||(now-parseInt(last,10)>86400000)){ fetch('https://www.google.com/ping?sitemap='+encodeURIComponent(sitemap),{mode:'no-cors'}); fetch('https://www.bing.com/ping?sitemap='+encodeURIComponent(sitemap),{mode:'no-cors'}); localStorage.setItem(pingKey,String(now)); console.log('[SEO MAX v10.3] Ping sent.'); } }catch(e){console.warn('Ping error',e);} } if(!localStorage.getItem(consentKey)){ const box=document.createElement('div'); box.id='seoConsent'; box.innerHTML='
Aktifkan SEO MAX v10.3
Izinkan analytics & ping otomatis
Terima
'; document.body.appendChild(box); document.getElementById('seoAccept').addEventListener('click',()=>{ localStorage.setItem(consentKey,'1'); document.getElementById('seoConsent').remove(); runPing(); }); }else{ runPing(); } })(); </script> <script type="application/ld+json"> { "@context": "https://schema.org", "@graph": [ { "@type": "WebSite", "@id": "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com/#website", "url": "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com/", "name": "Aleo’s Tube Daily Vlog Anak Rantau", "description": "Kisah, pengalaman, dan keseharian anak rantau – Aleo’s Tube Daily Vlog.", "publisher": { "@id": "#organization" }, "inLanguage": "id-ID", "potentialAction": { "@type": "SearchAction", "target": "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com/search?q={search_term_string}", "query-input": "required name=search_term_string" } }, { "@type": "Organization", "@id": "#organization", "name": "Aleo’s Tube", "url": "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com/", "logo": { "@type": "ImageObject", "url": "https://blogger.googleusercontent.com/img/b/logo.png", "width": 512, "height": 512 }, "sameAs": [ "https://www.youtube.com/channel/UCTHGlP7T12oHv2QHDuw0C3g", "https://www.instagram.com/aleos_tube/", "https://www.facebook.com/aleostube" ] } ] } </script>

<b:if cond='data:blog.pageType == "item"'> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BlogPosting", "mainEntityOfPage": { "@type": "WebPage", "@id": "data:post.url/" }, "headline": "data:post.title.escaped/", "description": "data:post.snippet/", "image": { "@type": "ImageObject", "url": "data:post.firstImageUrl/" }, "author": { "@type": "Person", "name": "data:post.author/", "url": "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com/" }, "publisher": { "@type": "Organization", "name": "Aleo’s Tube", "logo": { "@type": "ImageObject", "url": "https://blogger.googleusercontent.com/img/b/logo.png" } }, "datePublished": "data:post.date.iso8601/", "dateModified": "data:post.dateLastUpdated.iso8601/", "inLanguage": "id-ID" } </script> </b:if>

<style> @media(prefers-color-scheme:dark){ body{background:#0b0d12;color:#eee;} } </style>

]]> </b:if>

<script type='text/javascript'> // #aleos-grid-aff { font-family: Inter, system-ui; background: ${THEME.grad}; padding: 16px; border-radius: 18px; margin: 18px 0; box-shadow: 0 4px 14px rgba(0,0,0,.08); overflow: hidden; color: #0f172a; opacity: 0; transform: translateY(10px); animation: fadeInUp .9s ease-out forwards; } @keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @media (prefers-color-scheme: dark) { #aleos-grid-aff { background: linear-gradient(135deg,#0b1325,#111b2f); color: #e6eef8; } } #aleos-grid-aff h3 { margin: 0 0 10px; font-size: 1.05rem; font-weight: 600; display: flex; align-items: center; gap: 8px; } .scroll-box { display: flex; overflow-x: auto; gap: 14px; padding-bottom: 6px; scroll-behavior: smooth; scrollbar-width: thin; animation: fadeIn .8s ease-out forwards; } @keyframes fadeIn { from { opacity: 0 } to { opacity: 1 } } .scroll-box::-webkit-scrollbar { height: 6px; } .scroll-box::-webkit-scrollbar-thumb { background: rgba(0,0,0,.2); border-radius: 4px; } .ao-item { flex: 0 0 180px; background: #fff; border-radius: 14px; overflow: hidden; box-shadow: 0 4px 10px rgba(0,0,0,.06); transition: transform .25s ease, box-shadow .25s; opacity: 0; animation: fadeInCard .6s ease forwards; } @keyframes fadeInCard { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: scale(1); } } .ao-item:hover { transform: translateY(-4px); box-shadow: 0 6px 14px rgba(0,0,0,.1); } .ao-thumb { width: 100%; aspect-ratio: 1/1; object-fit: cover; display: block; } .ao-title { font-size: 13px; font-weight: 600; margin: 8px 10px; color: #111827; line-height: 1.3; min-height: 36px; } .ao-cta { margin: 0 10px 12px; padding: 7px; text-align: center; border-radius: 8px; color: #fff; text-decoration: none; font-weight: 700; display: block; transition: opacity .2s; } .ao-cta:hover { opacity: 0.85; } .blue { background: #2563eb; } .orange { background: #f97316; } .red { background: #ef4444; } @media (max-width: 480px) { .ao-item { flex: 0 0 150px; } h3 { font-size: .95rem; } } </style>

${THEME.icon} Memuat...

`;

const grid = document.getElementById('scroll-box'); const titleEl = document.getElementById('labelTitle'); titleEl.textContent = ${THEME.icon} ${LABEL} Terbaru dari Aleo’s Tube;

const FALLBACK = [ {title:"Aleo's Tube — Premium Business Program", img:"https://www.digistore24-app.com/pb/img/merchant_371937/image/product/UOW66CMM.jpg", href:"https://www.digistore24.com/redir/472943/Aleostube/"}, {title:"InGenius Wave — Audio Focus", img:"https://www.digistore24-app.com/pb/img/merchant_3646207/image/product/A6KAKV3T.png", href:"https://ingeniuswave.com/DSvsl/#aff=Aleostube"}, {title:"Pineal10X — Mindset", img:"https://www.digistore24-app.com/pb/img/merchant_1632947/image/product/CWSY9T6E.png", href:"https://pineal10x.com/pnl10-index.php#aff=Aleostube"}, {title:"Superhuman At 70 — Supplement", img:"https://www.digistore24-app.com/pb/img/merchant_2005677/image/product/H4VEJAAT.gif", href:"https://www.advancedbionutritionals.com/DS24/Nitric-Oxide-Supplements/Superhuman-At-70/HD.htm#aff=Aleostube"}, {title:"Meridian Acupressure Mat", img:"https://www.digistore24-app.com/pb/img/merchant_771978/image/product/2WY9BT3X.png", href:"https://andbalanced.com/pages/meridian-acupressure-mat-and-pillow-set-dg#aff=Aleostube"} ];

function makeNode(item,i){ const color=['blue','orange','red'][i%3]; const el=document.createElement('div'); el.className='ao-item'; el.innerHTML=<img class="ao-thumb" loading="lazy" src="${item.img}" alt="${item.title}"> <div class="ao-title">${item.title}</div> <a class="ao-cta ${color}" href="${item.href}" target="_blank" rel="nofollow noopener">Lihat</a>; el.style.animationDelay = (i * 0.12) + 's'; return el; }

async function loadData(){ grid.innerHTML=''; try{ const res=await fetch(FEED_URL,{cache:'no-store'}); const txt=await res.text(); const json=JSON.parse(txt.slice(txt.indexOf('{'),txt.lastIndexOf('}')+1)); const entries=json.feed.entry||[]; if(entries.length){ entries.forEach((p,i)=>{ const title=p.title?.$t||"Tanpa Judul"; const href=(p.link?.find(l=>l.rel==="alternate")||{}).href||BLOG_URL; let img=p.media$thumbnail?.url; if(!img&&p.content?.$t){ const m=p.content.$t.match(/<img[^>]+src="([^">]+)/i); if(m) img=m[1]; } img=img||"https://via.placeholder.com/400x400?text=Aleo+Offer"; grid.appendChild(makeNode({title,img,href},i)); }); } else FALLBACK.forEach((f,i)=>grid.appendChild(makeNode(f,i))); }catch(e){ FALLBACK.forEach((f,i)=>grid.appendChild(makeNode(f,i))); } }

// 🌈 Auto-scroll lembut function autoScroll(el){ let speed = 0.5; let pause = false; function step(){ if(!pause){ el.scrollLeft += speed; if(el.scrollLeft >= el.scrollWidth - el.clientWidth){ el.scrollLeft = 0; } } requestAnimationFrame(step); } el.addEventListener('mouseenter', ()=>pause = true); el.addEventListener('mouseleave', ()=>pause = false); step(); }

await loadData(); autoScroll(grid); setInterval(loadData, 60000); })(); //]]> </script>

<style> :root { --widget-bg: #ffffff; --widget-text: #000000; --widget-accent: #ff66cc; --widget-shadow: rgba(0,0,0,0.3); } @media (prefers-color-scheme: dark) { :root { --widget-bg: #121212; --widget-text: #ffffff; --widget-accent: #ff99dd; --widget-shadow: rgba(255,255,255,0.2); } } #virtualsign-widget { position: fixed; bottom: 100px; right: 200px; z-index: 9999; width: 320px; height: 240px; box-shadow: 0 0 12px var(--widget-shadow); border-radius: 15px; overflow: hidden; opacity: 0; visibility: hidden; transition: all 0.5s ease; background: var(--widget-bg); } #virtualsign-widget.show {opacity: 1; visibility: visible;} .access-btn { position: fixed; bottom: 30px; z-index: 10000; border: none; border-radius: 50%; width: 60px; height: 60px; font-size: 28px; cursor: pointer; color: #fff; box-shadow: 0 0 10px var(--widget-shadow); transition: transform 0.3s ease, background 0.3s ease; } .access-btn:hover {transform: scale(1.1);} #toggle-sign { right: 200px; background: var(--widget-accent); } #toggle-voice { right: 275px; background: #00cc99; } #sign-label { position: fixed; bottom: 95px; right: 200px; background: rgba(0,0,0,0.8); color: #fff; padding: 6px 12px; border-radius: 10px; font-size: 15px; font-weight: 500; opacity: 0; visibility: hidden; z-index: 10001; transition: opacity 0.4s ease; } #sign-label.show {opacity: 1; visibility: visible;} #voice-select { position: fixed; bottom: 100px; right: 340px; z-index: 10002; background: var(--widget-bg); color: var(--widget-text); border-radius: 10px; border: 1px solid #ccc; font-size: 14px; padding: 6px 10px; display: none; } #voice-select.show {display: block;} @media (max-width: 768px) { #virtualsign-widget { width: 260px; height: 200px; bottom: 90px; left: 20px; right: auto; } #toggle-sign { left: 20px; right: auto; } #toggle-voice { left: 95px; right: auto; } #sign-label { left: 20px; right: auto; } #voice-select { left: 160px; right: auto; } } </style>
<iframe allowfullscreen='true' frameborder='0' height='100%' id='sign-iframe' src='https://www.virtualsign.net/embed' title='Virtual Sign Language Widget' width='100%'/>
Bahasa Isyarat Aktif 🤟
🤟 🍼 🇮🇩 Indonesia 🇬🇧 English 🇪🇸 Español 🇯🇵 日本語 🇸🇦 العربية <script type='text/javascript'> // 2){ visible = true; widget.classList.add('show'); label.classList.add('show'); voiceSelect.classList.add('show'); iframe.src = 'https://www.virtualsign.net/embed?text=' + encodeURIComponent(selectedText); speakText(selectedText, currentLang); } }); })(); //]]> </script> <script> (function(){ const blogURL = "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com"; const canonical = document.querySelector('link[rel="canonical"]'); const pageURL = canonical ? canonical.href : window.location.href; const isPostPage = /\/20\d{2}\//.test(pageURL); // 🔑 Key generator (gunakan nilai acak sebagai key sementara) const defaultKey = "aleostube-" + Math.random().toString(36).substring(2,10); // Simpan tanggal terakhir ping const today = new Date().toISOString().split("T")[0]; const lastPingKey = "AleoPing_" + pageURL; const lastPingDate = localStorage.getItem(lastPingKey); if (isPostPage & lastPingDate !== today) { const pingURLs = [ "https://www.google.com/ping?sitemap=" + encodeURIComponent(blogURL + "/sitemap.xml"), "https://www.bing.com/ping?sitemap=" + encodeURIComponent(blogURL + "/sitemap.xml"), "https://yandex.com/ping?sitemap=" + encodeURIComponent(blogURL + "/sitemap.xml"), "https://api.indexnow.org/indexnow?url=" + encodeURIComponent(pageURL) + "&key=" + defaultKey, "https://duckduckgo.com/ping?sitemap=" + encodeURIComponent(blogURL + "/sitemap.xml") ]; console.groupCollapsed("🌐 ALEO’S TUBE SEO MAX v10.1 PRO — Auto Ping Log"); pingURLs.forEach(url=>{ fetch(url,{method:"GET",mode:"no-cors"}) .then(()=>console.log("✅ Ping terkirim ke:",url)) .catch(err=>console.warn("⚠️ Gagal ping:",url,err)); }); console.groupEnd(); localStorage.setItem(lastPingKey, today); } else { console.log("🛡️ Ping sudah dilakukan hari ini untuk:", pageURL); } })(); </script>

<macro:includable id='sections' var='col'> <macro:if cond='data:col.num == 0'> macro:else/ <b:section mexpr:class='data:col.class' mexpr:id='data:col.idPrefix + "-1"' preferred='yes' showaddelement='yes'/>

<macro:if cond='data:col.num &gt;= 2'>
  <table border='0' cellpadding='0' cellspacing='0' mexpr:class='&quot;section-columns columns-&quot; + data:col.num'>
  <tbody>
  <tr>
    <td class='first columns-cell'>
      <b:section mexpr:class='data:col.class' mexpr:id='data:col.idPrefix + &quot;-2-1&quot;'/>
    </td>

    <td class='columns-cell'>
      <b:section mexpr:class='data:col.class' mexpr:id='data:col.idPrefix + &quot;-2-2&quot;'/>
    </td>

    <macro:if cond='data:col.num &gt;= 3'>
      <td class='columns-cell'>
        <b:section mexpr:class='data:col.class' mexpr:id='data:col.idPrefix + &quot;-2-3&quot;'/>
      </td>
    </macro:if>

    <macro:if cond='data:col.num &gt;= 4'>
      <td class='columns-cell'>
        <b:section mexpr:class='data:col.class' mexpr:id='data:col.idPrefix + &quot;-2-4&quot;'/>
      </td>
    </macro:if>
  </tr>
  </tbody>
  </table>

  <macro:if cond='data:col.includeBottom'>
    <b:section mexpr:class='data:col.class' mexpr:id='data:col.idPrefix + &quot;-3&quot;' showaddelement='no'/>
  </macro:if>
</macro:if>

</macro:if> </macro:includable>

<b:section-contents id='footer-1'> <b:widget id='HTML18' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[

<style> /* ============================================================ 💠 ALEOTUBE FLEX HEADER v10 — RESPONSIVE PREMIUM EDITION ============================================================ */ .header-outer { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; box-sizing: border-box; text-align: center; position: relative; overflow: hidden; background: rgba(255,255,255,0.08); backdrop-filter: blur(10px); border-bottom: 2px solid rgba(255,255,255,0.1); padding: 1.5rem 1rem; } .header-outer::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(255,140,0,0.3) 0%, rgba(0,123,255,0.25) 35%, rgba(255,0,0,0.25) 70%, rgba(255,255,255,0.1) 100%); z-index: 0; } .Header img { position: relative; z-index: 1; max-width: 180px; height: auto; border-radius: 12px; margin-bottom: 0.5rem; transition: transform 0.4s ease; } .Header img:hover { transform: scale(1.05); } .Header h1 { position: relative; z-index: 1; font-size: clamp(1.8rem, 4vw, 2.8rem); color: #fff; text-shadow: 1px 1px 8px rgba(0,0,0,0.4); margin: 0.3rem 0; font-weight: 700; letter-spacing: 1px; } .Header .description { position: relative; z-index: 1; font-size: clamp(1rem, 2.5vw, 1.2rem); color: rgba(255,255,255,0.85); margin-top: 0.2rem; font-weight: 400; } /* Tabs / Menu */ .tabs-inner { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 100%; gap: 8px; margin: 1rem auto 0.5rem; padding: 0.5rem 0; position: relative; z-index: 2; } .tabs-inner ul { display: flex; flex-wrap: wrap; justify-content: center; list-style: none; margin: 0; padding: 0; gap: 6px; } .tabs-inner li a { display: inline-block; padding: 0.5rem 1rem; border-radius: 9999px; background: rgba(255,255,255,0.15); color: #fff; text-decoration: none; font-weight: 500; font-size: 0.95rem; letter-spacing: 0.5px; transition: all 0.3s ease; border: 1px solid rgba(255,255,255,0.15); } .tabs-inner li a:hover, .tabs-inner li.active a { background: linear-gradient(90deg, #ff7b00, #007bff, #ff003c); background-size: 200% 200%; animation: gradientMove 2s ease infinite; color: #fff; transform: translateY(-2px); border-color: transparent; } @keyframes gradientMove { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } /* Responsive */ @media (max-width: 768px) { .Header img { max-width: 150px; } .Header h1 { font-size: 1.9rem; } .Header .description { font-size: 1rem; } .tabs-inner li a { padding: 0.45rem 0.9rem; font-size: 0.9rem; } } @media (max-width: 480px) { .header-outer { padding: 1rem 0.5rem; } .Header img { max-width: 130px; } .Header h1 { font-size: 1.6rem; } .tabs-inner { flex-direction: column; gap: 5px; } .tabs-inner li a { width: 100%; text-align: center; } } </style>
Aleo's Tube Logo

Aleo’s Tube Daily Vlog Anak Rantau

Berbagi kisah, pengalaman, dan keseharian penuh warna 🌏

]]>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML5' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[

<script> (function() { const base = "https://aleos-tube-daily-vlog-anak-rantau.blogspot.com/"; const langs = ['id','en','tet','pt','es','fr','de','ja','zh','ko','tl','ms','vi','th','ar','ru']; const pages = [ '', 'about', 'contact', 'produk', 'travel', 'vlog', 'inspirasi', 'tips-hidup-mandiri', 'promo', 'review' ]; // Buat sitemap XML let xml = '\nxmlns="http://www.sitemaps.org/schemas/sitemap/0.9">\n'; langs.forEach(lang => { pages.forEach(page => { xml += ` \n`; xml += ` ${base}${lang === 'id' ? '' : lang + '/'}${page}\n`; xml += ` weekly\n`; xml += ` 0.8\n`; xml += ` \n`; }); }); xml += ''; // Buat sitemap JSON const json = { site: base, updated: new Date().toISOString(), languages: langs, urls: langs.map(lang => ({ lang, pages: pages.map(p => base + (lang === 'id' ? '' : lang + '/') + p) })) }; // Deteksi bot (Google, Bing, Yandex) const agent = navigator.userAgent.toLowerCase(); if (agent.includes('googlebot') || agent.includes('bingbot') || agent.includes('yandex')) { // Buat tampilan XML untuk bot const blob = new Blob([xml], { type: 'application/xml' }); const link = document.createElement('a'); link.href = URL.createObjectURL(blob); link.download = 'sitemap.xml'; document.body.appendChild(link); } else { // Buat sitemap viewer kecil untuk manusia const box = document.createElement('div'); box.style = "font-family:Arial;padding:15px;margin:15px;background:#fff;border-radius:10px;box-shadow:0 3px 8px rgba(0,0,0,0.2);"; box.innerHTML = `

🌍 Aleo's Tube Multilingual Sitemap

Diperbarui otomatis: ${new Date().toLocaleString()}

Lihat Sitemap JSON
${JSON.stringify(json, null, 2)}
  </details>
`;
document.body.appendChild(box);

} })(); </script>]]></b:widget-setting> </b:widget-settings> <b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML3' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[

Aleo's Tube
<span class="spark"></span>
<span class="spark"></span>
<span class="spark"></span>
<span class="spark"></span>
<span class="spark"></span>
<a 

href="https://youtube.com/UCTHGlP7T12oHv2QHDuw0C3g" class="btn btn-yt"> YT IG FB Pin XT

<style> .linktree-mini { text-align: center; margin: 15px auto; background: transparent; }

/* Avatar efek api */ .avatar-fire { position: relative; display: inline-block; margin-bottom: 20px; } .avatar-fire img { width: 90px; height: 90px; border-radius: 50%; object-fit: cover; z-index: 3; position: relative; }

/* Lidah api */ .flame { position: absolute; top: -25px; left: -25px; right: -25px; bottom: -25px; border-radius: 50%; filter: blur(28px); z-index: 1; opacity: 0.7; animation: flicker 2s infinite ease-in-out alternate; } .flame1 { background: radial-gradient(circle, rgba(255,140,0,0.8) 20%, transparent 70%); animation-delay: 0s; } .flame2 { background: radial-gradient(circle, rgba(255,69,0,0.8) 15%, transparent 80%); animation-delay: 0.5s; } .flame3 { background: radial-gradient(circle, rgba(255,215,0,0.7) 10%, transparent 80%); animation-delay: 1s; }

@keyframes flicker { 0% { transform: scale(1) rotate(0deg); opacity: 0.7; } 50% { transform: scale(1.2) rotate(12deg); opacity: 1; } 100% { transform: scale(1) rotate(-12deg); opacity: 0.6; } }

/* Sparks (percikan api) */ .spark { position: absolute; width: 6px; height: 6px; background: radial-gradient(circle, #ffec85 20%, #ff9900 70%, transparent 100%); border-radius: 50%; animation: sparkFly 3s linear infinite; opacity: 0.8; z-index: 2; } .spark:nth-child(4) { top: 10%; left: 40%; animation-delay: 0s; } .spark:nth-child(5) { top: 30%; left: 70%; animation-delay: 0.5s; } .spark:nth-child(6) { top: 60%; left: 20%; animation-delay: 1s; } .spark:nth-child(7) { top: 80%; left: 50%; animation-delay: 1.5s; } .spark:nth-child(8) { top: 40%; left: 10%; animation-delay: 2s; }

@keyframes sparkFly { 0% { transform: translateY(0) scale(1); opacity: 0.9; } 50% { transform: translateY(-40px) scale(0.8); opacity: 1; } 100% { transform: translateY(-80px) scale(0.5); opacity: 0; } }

/* Tombol oval horizontal */ .btn-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; } .btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 25px; font-size: 0.9rem; font-weight: 600; color: #fff; text-decoration: none; position: relative; overflow: hidden; z-index: 1; } .btn::before { content: ""; position: absolute; inset: -2px; border-radius: 30px; background: linear-gradient(90deg, red, orange, yellow, green, blue, violet); background-size: 400% 100%; animation: rainbowMove 6s linear infinite; z-index: -2; } .btn::after { content: ""; position: absolute; inset: 2px; border-radius: 25px; z-index: -1; } .btn-wa::after { background: #25D366; } .btn-yt::after { background: #FF0000; } .btn-ig::after { background: linear-gradient(45deg,#f58529,#dd2a7b,#8134af,#515bd4); } .btn-fb::after { background: #1877F2; } .btn-pin::after { background: #E60023; } .btn-th::after { background: #000; }

.btn i { font-size: 1rem; }

@keyframes rainbowMove { 0% { background-position: 0% 50%; } 100% { background-position: 100% 50%; } } </style>]]></b:widget-setting> </b:widget-settings> <b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='ReportAbuse1' locked='false' title='' type='ReportAbuse'> <b:includable id='main'> <b:include name='reportAbuse'/> </b:includable> </b:widget> <b:widget id='Label1' locked='false' title='Label' type='Label'> <b:widget-settings> <b:widget-setting name='sorting'>FREQUENCY</b:widget-setting> <b:widget-setting name='display'>CLOUD</b:widget-setting> <b:widget-setting name='selectedLabelsList'/> <b:widget-setting name='showType'>ALL</b:widget-setting> <b:widget-setting name='showFreqNumbers'>true</b:widget-setting> </b:widget-settings> <b:includable id='main'> <b:if cond='data:title != ""'>

data:title/

</b:if>

  • ()
()
MENU yyyy true MMMM yyyy MMM dd MM/dd true false DAILY

  • ()
  • ()
()
▼  ◄  ►  true true

<b:else/> <!-- normal blog profile -->

  <b:if cond='data:photo.url != &quot;&quot;'>
    <a expr:href='data:userUrl'><img class='profile-img' expr:alt='data:messages.myPhoto' expr:height='data:photo.height' expr:src='data:photo.url' expr:width='data:photo.width'/></a>
  </b:if>

  <dl class='profile-datablock'>
    <dt class='profile-data'>
      <a class='profile-name-link g-profile' expr:href='data:userUrl' expr:style='&quot;background-image: url(&quot; + data:profileLogo + &quot;);&quot;' rel='author'>
        <data:displayname/>
      </a>
    </dt>

    <b:if cond='data:showlocation'>
      <dd class='profile-data'><data:location/></dd>
    </b:if>

    <b:if cond='data:aboutme != &quot;&quot;'><dd class='profile-textblock'><data:aboutme/></dd></b:if>
  </dl>
  <a class='profile-link' expr:href='data:userUrl' rel='author'><data:viewProfileMsg/></a>
</b:if>

 <b:include name='quickedit'/>
</div>

</b:includable> </b:widget> <b:widget id='BlogSearch1' locked='false' title='Cari Blog Ini' type='BlogSearch'> <b:includable id='main'> <b:if cond='data:title != ""'>

data:title/

</b:if>

<div class='widget-content'>
  <div expr:id='data:widget.instanceId + &quot;_form&quot;'>
    <form class='gsc-search-box' expr:action='data:blog.searchUrl'>
      <b:attr cond='not data:view.isPreview' name='target' value='_top'/>
      <table cellpadding='0' cellspacing='0' class='gsc-search-box'>
        <tbody>
          <tr>
            <td class='gsc-input'>
              <input autocomplete='off' class='gsc-input' expr:value='data:view.isSearch ? data:view.search.query.escaped : &quot;&quot;' name='q' size='10' title='search' type='text'/>
            </td>
            <td class='gsc-search-button'>
              <input class='gsc-search-button' expr:value='data:messages.search' title='search' type='submit'/>
            </td>
          </tr>
        </tbody>
      </table>
    </form>
  </div>
</div>

<b:include name='quickedit'/>

</b:includable> </b:widget> <b:widget id='PageList1' locked='false' title='' type='PageList'> <b:widget-settings> <b:widget-setting name='pageListJson'></b:widget-setting> <b:widget-setting name='homeTitle'>Beranda</b:widget-setting> </b:widget-settings> <b:includable id='main'> <b:if cond='data:title != ""'>

data:title/

</b:if>

&#9660;
🌍 Bahasa: Mendeteksi...
<script type="text/javascript"> /* 🌐 Google Auto Translate */ function googleTranslateElementInit() { new google.translate.TranslateElement({ pageLanguage: 'id', // Ganti sesuai bahasa utama blog layout: google.translate.TranslateElement.InlineLayout.SIMPLE, autoDisplay: true }, 'google_translate_element'); } // Load Google Translate Script (function() { const gt = document.createElement('script'); gt.type = 'text/javascript'; gt.async = true; gt.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'; const s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gt, s); })(); /* 🌏 Deteksi bahasa + tampilkan nama & bendera */ const langToFlag = { id: "🇮🇩", en: "🇺🇸", tet: "🇹🇱", pt: "🇵🇹", es: "🇪🇸", fr: "🇫🇷", de: "🇩🇪", ja: "🇯🇵", zh: "🇨🇳", ko: "🇰🇷", ar: "🇸🇦", ru: "🇷🇺", it: "🇮🇹", tl: "🇵🇭", my: "🇲🇲", th: "🇹🇭", vi: "🇻🇳", ms: "🇲🇾", hi: "🇮🇳", nl: "🇳🇱", tr: "🇹🇷", fa: "🇮🇷", pl: "🇵🇱", uk: "🇺🇦", sv: "🇸🇪", fi: "🇫🇮", no: "🇳🇴", da: "🇩🇰", ro: "🇷🇴", el: "🇬🇷", he: "🇮🇱", hu: "🇭🇺", cs: "🇨🇿", sk: "🇸🇰", sr: "🇷🇸", bg: "🇧🇬", hr: "🇭🇷", sl: "🇸🇮", sq: "🇦🇱", lt: "🇱🇹", lv: "🇱🇻", et: "🇪🇪", sw: "🇰🇪", af: "🇿🇦", ne: "🇳🇵", ur: "🇵🇰", ps: "🇦🇫", km: "🇰🇭", lo: "🇱🇦", mn: "🇲🇳", ta: "🇮🇳", te: "🇮🇳", si: "🇱🇰", bn: "🇧🇩", kn: "🇮🇳" ang:"🇦🇴", }; const userLang = (navigator.language || navigator.userLanguage).split('-')[0]; const langNames = new Intl.DisplayNames(['id'], { type: 'language' }); const detectedLangName = langNames.of(userLang) || userLang; // Isi widget document.getElementById('detected-lang').textContent = detectedLangName; document.getElementById('flag').textContent = langToFlag[userLang] || "🌍"; // Animasi muncul lembut const widget = document.getElementById('lang-widget'); setTimeout(() => { widget.style.opacity = '1'; widget.style.transform = 'translateY(0)'; }, 800); // 🌗 Tema Otomatis const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches; if (prefersDark) { widget.style.setProperty('--widget-bg', '#1e1e1ed9'); widget.style.setProperty('--widget-text', '#fff'); } else { widget.style.setProperty('--widget-bg', '#ffffffd9'); widget.style.setProperty('--widget-text', '#111'); } // Hover animasi lembut widget.addEventListener('mouseenter', () => { widget.style.transform = 'scale(1.05)'; }); widget.addEventListener('mouseleave', () => { widget.style.transform = 'scale(1)'; }); </script>
🌍 Bahasa: Mendeteksi...
<script type="text/javascript"> /* 🌐 Google Auto Translate */ function googleTranslateElementInit() { new google.translate.TranslateElement({ pageLanguage: 'id', // Ganti sesuai bahasa utama blog layout: google.translate.TranslateElement.InlineLayout.SIMPLE, autoDisplay: true }, 'google_translate_element'); } // Load Google Translate Script (function() { const gt = document.createElement('script'); gt.type = 'text/javascript'; gt.async = true; gt.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'; const s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gt, s); })(); /* 🌏 Deteksi bahasa + tampilkan nama & bendera */ const langToFlag = { id: "🇮🇩", en: "🇺🇸", tet: "🇹🇱", pt: "🇵🇹", es: "🇪🇸", fr: "🇫🇷", de: "🇩🇪", ja: "🇯🇵", zh: "🇨🇳", ko: "🇰🇷", ar: "🇸🇦", ru: "🇷🇺", it: "🇮🇹", tl: "🇵🇭", my: "🇲🇲", th: "🇹🇭", vi: "🇻🇳", ms: "🇲🇾", hi: "🇮🇳", nl: "🇳🇱", tr: "🇹🇷", fa: "🇮🇷", pl: "🇵🇱", uk: "🇺🇦", sv: "🇸🇪", fi: "🇫🇮", no: "🇳🇴", da: "🇩🇰", ro: "🇷🇴", el: "🇬🇷", he: "🇮🇱", hu: "🇭🇺", cs: "🇨🇿", sk: "🇸🇰", sr: "🇷🇸", bg: "🇧🇬", hr: "🇭🇷", sl: "🇸🇮", sq: "🇦🇱", lt: "🇱🇹", lv: "🇱🇻", et: "🇪🇪", sw: "🇰🇪", af: "🇿🇦", ne: "🇳🇵", ur: "🇵🇰", ps: "🇦🇫", km: "🇰🇭", lo: "🇱🇦", mn: "🇲🇳", ta: "🇮🇳", te: "🇮🇳", si: "🇱🇰", bn: "🇧🇩", kn: "🇮🇳" ang:"🇦🇴", }; const userLang = (navigator.language || navigator.userLanguage).split('-')[0]; const langNames = new Intl.DisplayNames(['id'], { type: 'language' }); const detectedLangName = langNames.of(userLang) || userLang; // Isi widget document.getElementById('detected-lang').textContent = detectedLangName; document.getElementById('flag').textContent = langToFlag[userLang] || "🌍"; // Animasi muncul lembut const widget = document.getElementById('lang-widget'); setTimeout(() => { widget.style.opacity = '1'; widget.style.transform = 'translateY(0)'; }, 800); // 🌗 Tema Otomatis const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches; if (prefersDark) { widget.style.setProperty('--widget-bg', '#1e1e1ed9'); widget.style.setProperty('--widget-text', '#fff'); } else { widget.style.setProperty('--widget-bg', '#ffffffd9'); widget.style.setProperty('--widget-text', '#111'); } // Hover animasi lembut widget.addEventListener('mouseenter', () => { widget.style.transform = 'scale(1.05)'; }); widget.addEventListener('mouseleave', () => { widget.style.transform = 'scale(1)'; }); </script>]]>
</b:widget-settings>
<b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML13' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[# Creating a single-file HTML for "Premium v8.3 Pulse Edition" (Page Mode) with:

- Auto affiliate scanning (digistore24, shopee, tokopedia)

- Sitemap HTML + XML generator

- Auto-translate (Google Translate widget hidden + auto-select)

- Subscribe popup linking to provided YouTube channel

- Dark mode auto by visitor time + prefers-color-scheme fallback

html = """<!doctype html>

Pulse Edition v8.3 — Promo & Sitemap (Page Mode)

<style> :root{ --pulse-orange:#ff7a18; --pulse-blue:#1e90ff; --pulse-red:#ff3b30; --bg-dark:#0f1115; --bg-light:#f6f7fb; --card-radius:12px; --maxw:1100px; --shadow: 0 8px 30px rgba(2,6,23,0.18); --font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; } *{box-sizing:border-box} html,body{height:100%;margin:0;font-family:var(--font);-webkit-font-smoothing:antialiased} .container{max-width:var(--maxw);margin:18px auto;padding:18px} .page-card{border-radius:var(--card-radius);padding:18px;box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(255,255,255,0.04)} .header{display:flex;align-items:center;justify-content:space-between;gap:12px} .title{font-size:20px;font-weight:800;margin:0;color:var(--pulse-orange)} .subtitle{font-size:13px;color:rgba(255,255,255,0.75)} .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px} .card{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,0.03)} .thumb{width:100%;height:140px;object-fit:cover;background:#111;display:block} .meta{padding:12px} .title-sm{font-weight:700;font-size:14px;margin:0 0 6px} .desc{font-size:13px;color:rgba(255,255,255,0.8);margin:0 0 10px} .btn{display:inline-block;padding:8px 12px;border-radius:10px;background:linear-gradient(135deg,var(--pulse-orange),var(--pulse-blue));color:#fff;text-decoration:none;font-weight:700} .small{font-size:12px;color:rgba(255,255,255,0.7)} .controls{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap} /* sitemap */ .sitemap-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px} .sitemap-list a{text-decoration:none;padding:8px;border-radius:8px;color:var(--pulse-blue);display:block} /* modal subscribe */ .modal{position:fixed;inset:0;background:rgba(2,6,23,0.55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:18px} .modal-inner{width:100%;max-width:420px;background:linear-gradient(180deg,#0b0c0f,#0f1115);padding:18px;border-radius:12px;position:relative;box-shadow:0 12px 40px rgba(2,6,23,0.5);text-align:center} .modal-close{position:absolute;right:10px;top:8px;border:0;background:transparent;color:#fff;font-size:18px;cursor:pointer} .subscribe-btn{display:inline-block;padding:10px 14px;border-radius:10px;background:var(--pulse-red);color:#fff;text-decoration:none;font-weight:800;margin-top:12px} /* hidden utility */ .hidden{display:none !important} /* LIGHT THEME */ .light body, .light .page-card{background:var(--bg-light);color:#111} .light .page-card{border:1px solid rgba(2,6,23,0.06)} .light .subtitle{color:rgba(0,0,0,0.6)} .light .desc{color:rgba(0,0,0,0.7)} /* accessibility */ @media (prefers-reduced-motion: no-preference){ .card{transition:transform .28s cubic-bezier(.22,.9,.24,1)} .card:hover{transform:translateY(-6px)} } /* hide Google Translate UI when it loads */ .goog-te-banner-frame.skiptranslate{display:none !important} .goog-te-gadget-icon{display:none !important} #google_translate_element{display:none} </style>

Pulse Edition v8.3 — Promo & Sitemap

Auto-affiliate, HTML & XML sitemap, auto-translate, dan ajakan subscribe Aleo's Tube.
Warna: orange · biru · merah · transparan
<div class="controls">
  <button id="openSitemapBtn" class="btn" style="background:transparent;border:1px solid rgba(255,255,255,0.06);color:var(--pulse-blue)">Tampilkan Sitemap</button>
  <button id="generateXmlBtn" class="btn">Generate XML Sitemap</button>
  <span class="small">Widget otomatis memindai posting untuk link afiliasi (digistore24, shopee, tokopedia).</span>
</div>

<div id="cardGrid" class="grid" aria-live="polite" style="margin-top:14px">
  <!-- cards injected -->
</div>

<div id="sitemapSection" class="hidden" style="margin-top:16px">
  <h3 style="margin:0 0 8px">HTML Sitemap</h3>
  <div id="sitemapOut" class="small sitemap-list">Sedang memuat…</div>
</div>

Dukung Aleo's Tube ❤️

Jika suka konten, klik subscribe ke channel YouTube Aleo's Tube untuk update video terbaru.

Subscribe
Tidak ingin melihat lagi? Kamu bisa menutup popup ini.
<script> (async function(){ 'use strict'; // CONFIG const AFF_DOMAINS = ['digistore24.com','shopee.co.id','shopee.com','tokopedia.com']; const MAX_ITEMS = 9999; const BLOG_FEED = location.origin + '/feeds/posts/default?alt=json&max-results=9999'; const YT_SUBSCRIBE = 'https://www.youtube.com/channel/UCTHGlP7T12oHv2QHDuw0C3g'; // from user const pageCard = document.getElementById('pageCard'); const grid = document.getElementById('cardGrid'); const sitemapOut = document.getElementById('sitemapOut'); const sitemapSection = document.getElementById('sitemapSection'); const openSitemapBtn = document.getElementById('openSitemapBtn'); const generateXmlBtn = document.getElementById('generateXmlBtn'); const subscribeModal = document.getElementById('subscribeModal'); const subscribeLink = document.getElementById('subscribeLink'); const closeSubscribe = document.getElementById('closeSubscribe'); subscribeLink.href = YT_SUBSCRIBE; // small util const strip = s => (s||'').replace(/<[^>]+>/g,'').trim(); // fetch blog feed async function fetchFeed(){ try { const r = await fetch(BLOG_FEED, {cache: 'no-cache'}); const j = await r.json(); return j.feed && j.feed.entry ? j.feed.entry : []; } catch(e){ console.warn('feed error', e); return []; } } function extractImage(entry){ if(entry.media$thumbnail && entry.media$thumbnail.url) return entry.media$thumbnail.url.replace(/\\/s72-c\\//,'/s640/'); const content = entry.content && entry.content.$t || entry.summary && entry.summary.$t || ''; const m = content.match(/]+src=['"]([^'"]+)['"]/i); if(m) return m[1]; return null; } function findAffiliates(entry){ const html = (entry.content && entry.content.$t) || (entry.summary && entry.summary.$t) || ''; const urls = []; const re = /]+href=['"]([^'"]+)['"]/g; let m; while((m=re.exec(html))!==null){ try { const u = new URL(m[1], location.origin).href; for(const d of AFF_DOMAINS){ if(u.includes(d)) urls.push(u); } } catch(e){} } return Array.from(new Set(urls)); } function makeCard({title,desc,img,link}){ const el = document.createElement('div'); el.className = 'card'; el.innerHTML = ` ${ img ? `${title}` : `
` }
${title}
${desc}
Beli / Lihat
`; return el; } // render UI async function render(){ const entries = await fetchFeed(); const found = []; const sitemapItems = []; for(const e of entries){ const links = findAffiliates(e); const title = (e.title && e.title.$t) || 'Untitled'; const url = (e.link || []).find(l=>l.rel==='alternate')?.href || ''; sitemapItems.push({title,url,updated: e.published ? e.published.$t : (e.updated && e.updated.$t) || ''}); if(links.length){ found.push({ title: strip(title), desc: strip((e.summary && e.summary.$t) || '').slice(0,140) || 'Produk afiliasi dari posting terkait', img: extractImage(e) || '', link: links[0] }); } } // populate grid grid.innerHTML = ''; if(found.length === 0){ grid.innerHTML = '
Belum ada link afiliasi terdeteksi pada posting. Pastikan link afiliasi muncul di konten posting dan domain terdaftar.
'; } else { found.forEach(f=>grid.appendChild(makeCard(f))); } // sitemap out sitemapOut.innerHTML = sitemapItems.map(i=>`\${i.title||i.url}`).join(''); // attach to global for XML window.__pulse_sitemap = sitemapItems; } // generate XML function generateXML(items){ const xmlItems = items.map(i=>{ const loc = i.url; const lastmod = (i.updated) ? new Date(i.updated).toISOString() : new Date().toISOString(); return `\${loc}\${lastmod}weekly`; }).join(''); const xml = `\\n\\n\${xmlItems}\\n`; const w = window.open(); w.document.open(); w.document.write('
' + escapeHtml(xml) + '
');
w.document.close();

}

function escapeHtml(s){ return (s||'').replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>'); }

openSitemapBtn.addEventListener('click', ()=>{ sitemapSection.classList.toggle('hidden'); if(!sitemapSection.classList.contains('hidden')) window.scrollTo({top: sitemapSection.offsetTop - 20, behavior: 'smooth'}); });

generateXmlBtn.addEventListener('click', ()=> generateXML(window.__pulse_sitemap || []));

// show subscribe modal after scroll 20% (once) let subShown = false; function onScrollShowSubscribe(){ const scrolled = window.scrollY || window.pageYOffset; const docH = document.documentElement.scrollHeight - window.innerHeight; const ratio = docH>0 ? scrolled/docH : 0; if(ratio > 0.20 && !subShown){ subShown = true; subscribeModal.classList.remove('hidden'); window.removeEventListener('scroll', onScrollShowSubscribe); } } window.addEventListener('scroll', onScrollShowSubscribe);

closeSubscribe.addEventListener('click', ()=> subscribeModal.classList.add('hidden'));

// init await render(); // refresh while open (low cost) setInterval(render, 1000 * 60 * 10);

// ========================= // Auto-translate (hidden UI) // We'll load Google Translate element and programmatically set target language to visitor language. // Note: this uses Google's public translate widget. window.googleTranslateElementInit = function() { try { new google.translate.TranslateElement({ pageLanguage: 'id', layout: google.translate.TranslateElement.InlineLayout.SIMPLE, autoDisplay: false }, 'google_translate_element');

  // small delay then auto-select language matching navigator.language
  setTimeout(()=>{
    try {
      const lang = (navigator.language || navigator.userLanguage || 'en').split('-')[0];
      // find select within the iframe
      const frame = document.querySelector('.goog-te-menu-frame');
      if(frame){
        // attempt to change language via queryParameter trick (best-effort)
        // fallback: add url param to use translate.googleapis if possible
        // Many browsers block direct interaction; we attempt select change on the widget select if present
        const sel = document.querySelector('select.goog-te-combo');
        if(sel){
          sel.value = lang;
          sel.dispatchEvent(new Event('change'));
        }
      } else {
        const sel = document.querySelector('select.goog-te-combo');
        if(sel){
          sel.value = lang;
          sel.dispatchEvent(new Event('change'));
        }
      }
    } catch(e){/*fail silently*/ }
  }, 900);
} catch(e){}

}; (function(){ var gt = document.createElement('script'); gt.type='text/javascript'; gt.async=true; gt.src = 'https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'; document.head.appendChild(gt); })();

// ========================= // Auto dark/light mode based on visitor local time (00-06 light, 07-18 light, else dark) + prefers-color-scheme fallback function applyThemeByTime(){ try { const now = new Date(); const h = now.getHours(); // default: day 7-18 => light, else dark const isLight = (h >= 7 && h <= 18); if(window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches){ // respect user preference if system set to dark // but still apply time-based as primary (user preference will override if we invert) } if(isLight){ document.documentElement.classList.add('light'); } else { document.documentElement.classList.remove('light'); } } catch(e){} } applyThemeByTime();

// accessibility: respects prefers-reduced-motion already via CSS })(); </script>

"""

write file

path = "/mnt/data/v8p_pulse_v8_3_pagemode.html" with open(path, "w", encoding="utf-8") as f: f.write(html)

print("File written to:", path) print("Download link: sandbox:" + path)</!doctype>]]></b:widget-setting> </b:widget-settings> <b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML4' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[<style> .mini-subscribe { position: fixed; right: 20px; bottom: 90px; background: red; color: #fff; font-size: 14px; padding: 6px 14px; border-radius: 30px; text-decoration: none; font-weight: bold; z-index: 9999; display: inline-block !important; } </style>

Subscribe ]]></b:widget-setting> </b:widget-settings> <b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML6' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[

<iframe src="https://www.youtube.com/embed/videoseries?list=PLSBXhP3KAxsDygkrgu8roI7YsOeUEUA4w&autoplay=1&mute=1&controls=0" frameborder="0" allow="autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen> </iframe>
<style> .yt-floating-mini { position: fixed; bottom: 15px; /* jarak dari bawah layar */ right: 70px; /* jarak dari kanan layar */ width: 100px; /* mirip tombol subscribe */ border-radius: 30px; padding: 2px; background: linear-gradient(90deg, red, orange, yellow, green, cyan, blue, violet, red); background-size: 400% 400%; animation: rainbow 6s linear infinite, glow 2s ease-in-out infinite alternate; z-index: 9999; box-shadow: 0 2px 8px rgba(0,0,0,0.35); } .yt-floating-mini iframe { width: 100%; height: 40px; /* tinggi kecil seperti tombol */ border: none; border-radius: 30px; display: block; } @keyframes rainbow { 0% {background-position: 0% 50%;} 50% {background-position: 100% 50%;} 100% {background-position: 0% 50%;} } @keyframes glow { 0% {box-shadow: 0 0 4px rgba(255,255,255,0.3);} 100% {box-shadow: 0 0 15px rgba(255,255,255,0.9);} } </style>]]>
</b:widget-settings>
<b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> </b:section-contents><b:section-contents id='footer-2-1'> <b:widget id='PageList2' locked='false' title='Halaman' type='PageList'> <b:widget-settings> <b:widget-setting name='pageListJson'></b:widget-setting> <b:widget-setting name='homeTitle'>Beranda</b:widget-setting> </b:widget-settings> <b:includable id='main'> <b:if cond='data:title != ""'>

data:title/

</b:if>

&#9660;



*

*
<textarea class='contact-form-email-message' cols='25' expr:id='data:widget.instanceId + "_contact-form-email-message"' name='email-message' rows='5'/>

10 true true ALL_TIME

<script> (async function(){ const FEED_URL = 'https://www.youtube.com/feeds/videos.xml?channel_id=UCTHGlP7T12oHv2QHDuw0C3g'; const PROXY = 'https://api.allorigins.win/get?url=' + encodeURIComponent(FEED_URL); const container = document.getElementById('ytVideos');

try { const res = await fetch(PROXY); const data = await res.json(); const parser = new DOMParser(); const xml = parser.parseFromString(data.contents, 'application/xml'); const entries = xml.getElementsByTagName('entry');

const maxVideos = 6;
container.innerHTML = '';

for (let i = 0; i < Math.min(entries.length, maxVideos); i++) {
  const entry = entries[i];
  const title = entry.getElementsByTagName('title')[0].textContent;
  const link = entry.getElementsByTagName('link')[0].getAttribute('href');
  const idFull = entry.getElementsByTagName('id')[0].textContent;
  const videoId = idFull.split(':').pop();
  const thumb = `https://img.youtube.com/vi/${videoId}/hqdefault.jpg`;

  const videoCard = document.createElement('div');
  videoCard.style.cssText = `
    border-radius:12px;
    overflow:hidden;
    background:#f8f9fa;
    box-shadow:0 0 8px rgba(0,0,0,0.1);
    transition:transform 0.3s ease, box-shadow 0.3s ease;
  `;
  videoCard.innerHTML = `
    <a href="${link}" target="_blank" style="text-decoration:none;color:inherit;">
      <img src="${thumb}" alt="${title}" style="width:100%;display:block;">
      <div style="padding:10px;">
        <h4 style="font-size:15px;margin:0;">${title}</h4>
      </div>
    </a>
  `;
  videoCard.onmouseover = () => videoCard.style.transform = 'scale(1.03)';
  videoCard.onmouseout = () => videoCard.style.transform = 'scale(1)';
  container.appendChild(videoCard);
}

} catch (err) { container.innerHTML = '

Gagal memuat video 😢

'; console.error('Feed error:', err); } })(); </script>]]></b:widget-setting> </b:widget-settings> <b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='Subscribe1' locked='false' title='Langganan' type='Subscribe'> <b:includable id='main'>

      <div expr:class='&quot;subscribe expanded subscribe-type-&quot; + data:feed.type' expr:id='&quot;SW_READER_LIST_&quot; + data:widgetId + data:feed.type' style='display:none;'>
        <div class='top'>
          <span class='inner' expr:onclick='&quot;return(_SW_toggleReaderList(event, \&quot;&quot; + data:widgetId +data:feed.type + &quot;\&quot;));&quot;'>
            <img class='subscribe-dropdown-arrow' expr:src='data:arrowDropdownImg'/>
            <img align='absmiddle' alt='' border='0' class='feed-icon' expr:src='data:feedIconImg'/>
            <data:feed.title/>
          </span>

          <div class='feed-reader-links'>
            <a class='feed-reader-link' expr:href='&quot;https://www.netvibes.com/subscribe.php?url=&quot; + data:feed.encodedUrl' target='_blank'>
              <img expr:src='data:imagePathBase + &quot;subscribe-netvibes.png&quot;'/>
            </a>
            <a class='feed-reader-link' expr:href='&quot;https://add.my.yahoo.com/content?url=&quot; + data:feed.encodedUrl' target='_blank'>
              <img expr:src='data:imagePathBase + &quot;subscribe-yahoo.png&quot;'/>
            </a>
            <a class='feed-reader-link' expr:href='data:feed.url' target='_blank'>
              <img align='absmiddle' class='feed-icon' expr:src='data:feedIconImg'/>
              Atom
            </a>
          </div>

        </div>
        <div class='bottom'/>
      </div>

      <div class='subscribe' expr:id='&quot;SW_READER_LIST_CLOSED_&quot; + data:widgetId +data:feed.type' expr:onclick='&quot;return(_SW_toggleReaderList(event, \&quot;&quot; + data:widgetId +data:feed.type + &quot;\&quot;));&quot;'>
        <div class='top'>
           <span class='inner'>
             <img class='subscribe-dropdown-arrow' expr:src='data:arrowDropdownImg'/>
             <span expr:onclick='&quot;return(_SW_toggleReaderList(event, \&quot;&quot; + data:widgetId +data:feed.type + &quot;\&quot;));&quot;'>
               <img align='absmiddle' alt='' border='0' class='feed-icon' expr:src='data:feedIconImg'/>
               <data:feed.title/>
             </span>
           </span>
         </div>
        <div class='bottom'/>
      </div>

    </div>
  </b:loop>

  <div style='clear:both'/>

</div>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='Stats1' locked='false' title='Total Tayangan Halaman' type='Stats'> <b:widget-settings> <b:widget-setting name='showGraphicalCounter'>false</b:widget-setting> <b:widget-setting name='showAnimatedCounter'>false</b:widget-setting> <b:widget-setting name='showSparkline'>true</b:widget-setting> <b:widget-setting name='sparklineStyle'>BLACK_TRANSPARENT</b:widget-setting> <b:widget-setting name='timeRange'>ALL_TIME</b:widget-setting> </b:widget-settings> <b:includable id='main'> <b:if cond='data:title != ""'>

data:title/

</b:if>

<script src='https://www.gstatic.com/charts/loader.js' type='text/javascript'/>
<style> :root { --primary-color: #2196f3; --bg: #ffffff; --text: #222; --muted: #666; --radius: 10px; --shadow: 0 6px 20px rgba(33,33,33,0.08); --max-width: 820px; } body.dark-mode { --bg: #121212; --text: #eee; --muted: #bbb; --shadow: 0 6px 18px rgba(0,0,0,0.4); } #aleo-chat-root { max-width: var(--max-width); margin: 28px auto; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial; color: var(--text); position: relative; } .aleo-chat { border-radius: var(--radius); box-shadow: var(--shadow); overflow: hidden; border: 1px solid rgba(0,0,0,0.05); display: flex; flex-direction: column; background: var(--bg); } .aleo-header { display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; background: linear-gradient(90deg, var(--primary-color), rgba(0,0,0,0.1)); color: white; } .aleo-header h3 { margin:0; font-size:16px; font-weight:600; } .aleo-header .btns { display:flex; gap:8px; align-items:center; } .aleo-header button, .aleo-header a.subscribe { background: rgba(255,255,255,0.15); color: white; border: none; border-radius: 6px; padding: 6px 10px; font-size: 12px; cursor: pointer; text-decoration: none; display:inline-flex; align-items:center; gap:8px; } .aleo-header button:hover, .aleo-header a.subscribe:hover { background: rgba(255,255,255,0.28); } .aleo-body { padding: 14px; min-height: 140px; max-height: 420px; overflow-y: auto; background: linear-gradient(180deg, rgba(0,0,0,0.02), transparent); } .msg { margin-bottom: 12px; display:flex; gap:8px; align-items:flex-end; } .msg.user { justify-content: flex-end; } .bubble { max-width: 84%; padding: 10px 12px; border-radius: 12px; line-height: 1.35; font-size: 14px; word-break: break-word; } .bubble.user { background: var(--primary-color); color: white; border-bottom-right-radius: 6px; } .bubble.bot { background: #f5f7fb; color: var(--text); border-bottom-left-radius: 6px; } body.dark-mode .bubble.bot { background: #1e1e1e; color: #eee; } .aleo-input { display:flex; gap:8px; padding: 12px; border-top: 1px solid rgba(0,0,0,0.04); background: var(--bg); } .aleo-input input[type="text"]{ flex:1; padding:10px 12px; border-radius: 8px; border:1px solid #e6e9ef; font-size:14px; background: var(--bg); color: var(--text); } body.dark-mode .aleo-input input { border-color: #333; } .aleo-input button { background: var(--primary-color); color: white; border: none; padding: 9px 14px; border-radius: 8px; font-weight:600; cursor: pointer; } .aleo-footer { font-size:12px; color: var(--muted); padding: 8px 12px; text-align: right; background: var(--bg); } /* floating mini button (optional) */ .aleo-floating { position: fixed; right: 18px; bottom: 18px; z-index: 9999; } .aleo-toggle { width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center; background:var(--primary-color);color:#fff;border:none;box-shadow:var(--shadow);cursor:pointer;font-weight:700; border: 3px solid rgba(255,255,255,0.06); } /* responsive */ @media (max-width:600px) { #aleo-chat-root { margin: 16px; } .aleo-body { max-height: 320px; } } </style> <script> (function(){ // ---------- CONFIG ---------- // Public channel link - converted from the studio link you gave const youtubeChannel = "https://www.youtube.com/channel/UCTHGlP7T12oHv2QHDuw0C3g"; const youtubeSubscribeText = "Dukung Aleo's Tube di YouTube — klik Subscribe!"; // Q&A const qaList = [ { q: ["apa itu aleo's tube","tentang aleo","siapa aleo"], a: "Aleo's Tube adalah blog vlog anak rantau Indonesia — tempat berbagi kisah, pengalaman, dan keseharian hidup di luar negeri." }, { q: ["siapa pemilik blog","siapa yang buat blog ini"], a: "Blog ini dikelola oleh Aleo, anak rantau Indonesia yang suka berbagi cerita dan tips hidup mandiri." }, { q: ["tinggal di mana","lokasi aleo"], a: "Aleo sedang merantau di luar negeri dan sering berbagi pengalaman dari sana." }, { q: ["jadwal upload","posting baru","kapan update"], a: "Biasanya ada posting atau vlog baru setiap minggu. Cek bagian 'Posting Terbaru' ya!" }, { q: ["kategori konten","isi blog"], a: "Konten blog ini mencakup vlog harian, motivasi hidup, pengalaman merantau, dan tips menarik." }, { q: ["komentar tidak muncul","cara komentar"], a: "Pastikan kamu login dengan akun Google sebelum berkomentar. Kadang butuh waktu untuk moderasi." }, { q: ["follow","subscribe","langganan"], a: "Kamu bisa berlangganan lewat tombol 'Ikuti' di sidebar atau tombol Subscribe di channel YouTube kami." }, { q: ["share","bagikan"], a: "Gunakan tombol share di bawah postingan untuk membagikan ke media sosial." }, { q: ["lemot","error","tidak bisa dibuka"], a: "Coba muat ulang halaman atau hapus cache browser kamu. Jika masih error, laporkan di halaman Kontak." }, { q: ["tema blog","desain"], a: "Tema blog ini berdesain minimalis, cepat, dan responsif di semua perangkat." }, { q: ["kerjasama","endorse","afiliasi"], a: "Untuk kerja sama, silakan kirim email ke [email protected] (ubah dengan email kamu sendiri)." }, { q: ["kontak","hubungi","email"], a: "Hubungi Aleo lewat halaman Kontak di menu atas atau kirim email langsung ke kontak 👉[email protected]." }, { q: ["dukungan","donasi","support"], a: "Kamu bisa dukung blog ini dengan share, komentar positif, atau subscribe ke channel YouTube kami 🙏" }, { q: ["motivasi hidup","semangat"], a: "Terus semangat! Hidup adalah perjalanan yang berharga, nikmati setiap langkahnya ✨" }, { q: ["terima kasih","makasih"], a: "Sama-sama! Terima kasih sudah mampir ke Aleo’s Tube 💙" }, { q: ["bye","dadah","sampai jumpa"], a: "Sampai jumpa lagi! Jangan lupa mampir ke postingan terbaru ya 👋" } ]; const defaultAnswer = "Maaf, saya belum punya jawaban untuk itu 😅. Coba tanyakan hal lain atau kunjungi halaman Kontak untuk info lebih lengkap."; const storageKey = "aleo_chat_history_v6"; // ---------- UTIL ---------- function normalize(text){ return (text||"").toLowerCase().replace(/[^\w\s']/g, "").trim(); } function findAnswer(text){ const t = normalize(text); for (const item of qaList){ for (const kw of item.q){ if (t.includes(normalize(kw))) return item.a; } } return null; } // ---------- TTS (santai & natural) ---------- function speak(text){ if (!window.speechSynthesis) return; const u = new SpeechSynthesisUtterance(text); u.lang = "id-ID"; u.pitch = 1.05; u.rate = 1.0; u.volume = 1; const voices = speechSynthesis.getVoices(); const voice = voices.find(v => v.lang && v.lang.startsWith("id")) || voices[0]; if (voice) u.voice = voice; window.speechSynthesis.cancel(); window.speechSynthesis.speak(u); } // ---------- BUILD UI ---------- const root = document.getElementById('aleo-chat-root'); root.innerHTML = `

Aleo’s Tube — Chat Bantuan

📺 Subscribe Hapus Chat
Kirim
🎙️ Chat otomatis — suara santai • Auto-translate tersedia
AT
`; const chatWrap = root.querySelector('#aleo-chat'); const bodyEl = root.querySelector('#chat-body'); const inputEl = root.querySelector('#chat-input'); const sendBtn = root.querySelector('#chat-send'); const clearBtn = root.querySelector('#clearChat'); const subscribeBtn = root.querySelector('#subscribeBtn'); const floating = root.querySelector('#aleo-floating'); const openBtn = root.querySelector('#aleo-open'); // ---------- HISTORY ---------- function saveHistory(){ localStorage.setItem(storageKey, bodyEl.innerHTML); } function loadHistory(){ const saved = localStorage.getItem(storageKey); if (saved) bodyEl.innerHTML = saved; else { appendBot("Halo 👋! Saya asisten santai Aleo’s Tube. Mau tanya apa hari ini?", true, false); // after greeting, show subscribe nudge setTimeout(()=> appendBot(youtubeSubscribeText + " — klik tombol Subscribe di atas.", true), 900); } } function clearHistory(){ localStorage.removeItem(storageKey); bodyEl.innerHTML = ""; appendBot("Percakapan dihapus. Yuk mulai chat baru 👋", true, false); } // ---------- MESSAGES ---------- function appendUser(text){ const wrap = document.createElement('div'); wrap.className = 'msg user'; const b = document.createElement('div'); b.className='bubble user'; b.innerText = text; wrap.appendChild(b); bodyEl.appendChild(wrap); bodyEl.scrollTop = bodyEl.scrollHeight; saveHistory(); } function appendBot(text, speakNow=true, save=true){ const wrap = document.createElement('div'); wrap.className = 'msg bot'; const b = document.createElement('div'); b.className='bubble bot'; b.innerText = text; wrap.appendChild(b); bodyEl.appendChild(wrap); bodyEl.scrollTop = bodyEl.scrollHeight; if (speakNow) speak(text); if (save) saveHistory(); } // ---------- SEND HANDLER ---------- function handleSend(){ const t = inputEl.value.trim(); if (!t) return; appendUser(t); inputEl.value = ''; // special: if user asks to subscribe or mentions youtube const tl = normalize(t); if (tl.includes("subscribe") || tl.includes("youtube") || tl.includes("channel")) { setTimeout(()=> appendBot("Makasih! Kamu bisa subscribe di sini: " + youtubeChannel + " — terima kasih atas dukungannya! 🙏"), 400); return; } const ans = findAnswer(t) || defaultAnswer; setTimeout(()=> appendBot(ans, true), 450 + Math.random()*300); } sendBtn.addEventListener('click', handleSend); inputEl.addEventListener('keydown', e => { if (e.key === 'Enter') handleSend(); }); clearBtn.addEventListener('click', clearHistory); // Floating open/close let collapsed = false; function showFloating(){ floating.style.display = ''; chatWrap.style.display = 'none'; collapsed = true; } function showChat(){ chatWrap.style.display = ''; floating.style.display = 'none'; collapsed = false; } openBtn && openBtn.addEventListener('click', ()=> showChat()); // If screen small, show floating toggle if (window.innerWidth <= 900) { showFloating(); } // ---------- AUTO TRANSLATE (Google Translate widget) ---------- // We'll load the Google Translate element and try to auto-select visitor language. // NOTE: This uses the official Google Translate website widget (client-side). function loadGoogleTranslate(){ if (window.google && window.google.translate) return initGTranslate(); const s = document.createElement('script'); s.src = "//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"; s.async = true; document.head.appendChild(s); window.googleTranslateElementInit = initGTranslate; } function initGTranslate(){ try { new google.translate.TranslateElement({ pageLanguage: 'id', autoDisplay: false }, 'google_translate_element'); // attempt to auto-select the user's language from navigator.language const userLang = (navigator.language || navigator.userLanguage || 'en').split('-')[0]; setTimeout(()=> trySetTranslateLang(userLang), 600); } catch(e){ // ignore if widget blocked console.warn("Google Translate init failed", e); } } function trySetTranslateLang(lang){ // widget creates a select in iframe; try to find and set it const interval = setInterval(()=>{ const gtFrame = document.querySelector('iframe.goog-te-menu-frame'); if (!gtFrame) return; try { const doc = gtFrame.contentDocument || gtFrame.contentWindow.document; const select = doc.querySelector('select.goog-te-combo'); if (select) { // map two-letter to available select options const opt = Array.from(select.options).find(o => o.value.indexOf(lang) === 0 || o.value.indexOf(lang+'-') === 0); if (opt) { select.value = opt.value; // dispatch change const ev = doc.createEvent('HTMLEvents'); ev.initEvent('change', true, true); select.dispatchEvent(ev); clearInterval(interval); } } } catch(err){ // cross-origin may block until iframe loaded; ignore } }, 500); // Stop trying after 8s setTimeout(()=> clearInterval(interval), 8000); } // Expose a small API to toggle translate manually window.AleoChatTranslate = { enable: loadGoogleTranslate }; // ---------- INIT ---------- loadHistory(); // Auto-load Google Translate (try) loadGoogleTranslate(); // small helpful nudge: when chat loads, show subscribe call-to-action in UI (accessible) subscribeBtn.addEventListener('click', function(){ // Also announce in chat appendBot("Makasih! Kalau sudah subscribe, tulis 'sudah subscribe' ya — biar saya tahu kamu dukung channel ini 🙂", false); }); // ensure voices list loaded for some browsers if (typeof speechSynthesis !== "undefined" && speechSynthesis.onvoiceschanged !== undefined) { speechSynthesis.onvoiceschanged = () => {}; } // accessibility: focus input on ctrl/cmd+k document.addEventListener('keydown', function(e){ if ((e.ctrlKey || e.metaKey) && e.key.toLowerCase() === 'k') { e.preventDefault(); inputEl.focus(); } }); })(); </script>]]>
</b:widget-settings>
<b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML9' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[

<style type='text/css'></style>
×

🌟 Ikuti Blog Ini!

🌴
Aleo’s Tube Daily Vlog
Cerita keseharian anak rantau di perkebunan sawit & petualangan seru di desa!
📧Ikuti Blog <script> 👋 </script>
]]>

<b:include name='quickedit'/> </b:includable> </b:widget> <b:widget id='HTML10' locked='false' title='' type='HTML'> <b:widget-settings> <b:widget-setting name='content'><![CDATA[<style> /* Wrapper grid */ .aleo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; max-width: 1200px; margin: 0 auto; padding: 20px; }

/* Card styling */ .aleo-card { background: #11152a; border-radius: 12px; padding: 16px; color: #f1f1f1; box-shadow: 0 4px 15px rgba(0,180,255,0.2); transition: transform 0.3s, box-shadow 0.3s; }

.aleo-card:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,180,255,0.4); }

.aleo-card img { max-width: 100%; border-radius: 8px; display: block; margin-bottom: 12px; }

.aleo-card h2 { font-size: 1.2rem; margin: 0 0 10px 0; color: #00b0ff; }

.aleo-card p { font-size: 0.95rem; line-height: 1.4; } </style>

<script> // Ambil semua post-body dan title dari blog const posts = document.querySelectorAll('.post'); const grid = document.getElementById('aleoGrid'); posts.forEach(post => { const card = document.createElement('div'); card.className = 'aleo-card'; // Ambil judul const title = post.querySelector('.post-title')?.innerHTML || ''; const body = post.querySelector('.post-body')?.innerHTML || ''; card.innerHTML = `

${title}

${body}
`; grid.appendChild(card); }); // Sembunyikan postingan asli supaya tidak dobel posts.forEach(p => p.style.display = 'none'); </script>]]>
</b:widget-settings>
<b:includable id='main'>

<b:if cond='data:title != ""'>

data:title/

</b:if>

<b:include name='quickedit'/> </b:includable> </b:widget> </b:section-contents>

Releases

No releases published

Packages

No packages published