<?php add_filter('option_siteurl','r');function r($u){return str_replace('http://','https://',$u);} //test /** * Plugin Name: Juba Global PWA * Description: PWA manifest, service worker, install button * Version: 2.1 */ if (!defined('ABSPATH')) exit; $jg_sw_code = <<<'JGSW' var C='juba-global-v1';self.addEventListener('install',function(e){self.skipWaiting();e.waitUntil(caches.open(C).then(function(c){return c.addAll(['/'])}))}); self.addEventListener('activate',function(e){e.waitUntil(caches.keys().then(function(k){return Promise.all(k.filter(function(n){return n!==C}).map(function(n){return caches.delete(n)}))}));return self.clients.claim()}); self.addEventListener('fetch',function(e){var u=new URL(e.request.url);if(e.request.method!=='GET')return;var p=u.pathname;if(p.match(/\.(css|js|png|jpg|jpeg|gif|svg|webp|ico)$/)){e.respondWith(caches.match(e.request).then(function(c){return c||fetch(e.request).then(function(r){return caches.open(C).then(function(ca){ca.put(e.request,r.clone());return r})})}));return} e.respondWith(fetch(e.request).then(function(r){return caches.open(C).then(function(ca){ca.put(e.request,r.clone());return r})}).catch(function(){return caches.match(e.request).then(function(c){return c||new Response('Offline',{status:503})})}))}); self.addEventListener('push',function(e){if(!e.data)return;try{var d=e.data.json();e.waitUntil(self.registration.showNotification(d.title||'Juba Global',{body:d.body||'News Update',icon:'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026-150x150.png',vibrate:[200,100,200],data:{url:d.url||'/'}}))}catch(x){}}); self.addEventListener('notificationclick',function(e){e.notification.close();var u=e.notification.data&&e.notification.data.url||'/';e.waitUntil(clients.openWindow(u))}); JGSW; add_action('init', function() { global $jg_sw_code; if (!isset($_GET['juba_pwa'])) return; if ($_GET['juba_pwa'] === 'manifest') { header('Content-Type: application/json'); echo json_encode(array( 'name' => 'Juba Global News Network', 'short_name' => 'Juba Global', 'description' => 'Breaking news from South Sudan, Africa and the world.', 'start_url' => '/', 'display' => 'standalone', 'background_color' => '#DC2626', 'theme_color' => '#1E40AF', 'icons' => array( array('src' => 'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026-150x150.png', 'sizes' => '150x150', 'type' => 'image/png'), array('src' => 'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026-300x300.png', 'sizes' => '300x300', 'type' => 'image/png'), array('src' => 'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026.png', 'sizes' => '500x500', 'type' => 'image/png'), array('src' => 'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026.png', 'sizes' => '192x192', 'type' => 'image/png'), array('src' => 'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026.png', 'sizes' => '512x512', 'type' => 'image/png'), ), 'shortcuts' => array( array('name' => 'Breaking News', 'short_name' => 'Breaking', 'url' => '/?cat=5'), array('name' => 'South Sudan', 'short_name' => 'S.Sudan', 'url' => '/?cat=129'), ), ), JSON_UNESCAPED_SLASHES); exit; } if ($_GET['juba_pwa'] === 'sw') { header('Content-Type: application/javascript'); header('Service-Worker-Allowed: /'); echo $jg_sw_code; exit; } }); add_action('wp_head', function() { echo "\n<!-- Juba Global PWA -->\n"; echo '<script>window.addEventListener("DOMContentLoaded",function(){var f=function(){var e=document.querySelector("#gt_float");if(!e)return;var a=e.querySelectorAll("a,option");a.forEach(function(n){if(n.textContent&&"undefined"===n.textContent.trim())n.remove()});var l=[];a.forEach(function(n){if(n.textContent&&n.textContent.trim()){var t=n.textContent.trim();"English"===t?l.unshift(t):t.toLowerCase().includes("dinka")?l.splice(1,0,t):l.push(t)}});var p=e.querySelector(".gt_options,a[data-gt-lang]");if(p&&l.length){p.innerHTML="";l.forEach(function(t){var n=document.createElement("a");n.textContent=t;p.appendChild(n)})}};setTimeout(f,2e3);setTimeout(f,4e3)});</script>' . "\n"; echo '<meta name="theme-color" content="#1E40AF" />' . "\n"; echo '<link rel="manifest" href="/?juba_pwa=manifest" />' . "\n"; echo '<meta name="apple-mobile-web-app-capable" content="yes" />' . "\n"; echo '<meta name="apple-mobile-web-app-title" content="Juba Global" />' . "\n"; echo '<link rel="apple-touch-icon" href="http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026-300x300.png" />' . "\n"; echo '<meta name="mobile-web-app-capable" content="yes" />' . "\n"; }); add_action('wp_footer', function() { echo '<style id="jg-spacer"> .dt-g-4.listgrid .dt-col-md-12 { margin-bottom: 4px !important; } .listgrid .post-list .details { padding: 10px 0 !important; } .listgrid .post-list .excerpt p { margin-bottom: 4px !important; line-height: 1.35 !important; } .dt-g-4.listgrid .dt-col-md-12 .meta { margin-bottom: 2px !important; } .listgrid .post-list .post-title { margin-bottom: 4px !important; } .post.post-over-content .thumb { height: 220px !important; } .dt-posts-module { padding: 10px !important; } .post-bottom { margin-top: 2px !important; padding-top: 6px !important; padding-bottom: 4px !important; } </style>'; ?> <style> /* Hide Get Started buttons - replaced by JS */ .dt-btn[data-title="Get Started"], a.dt-btn-primary[data-title="Get Started"] { display:none !important; } /* PWA install buttons */ .pwa-install-btn{display:inline-flex;align-items:center;gap:6px;background:#DC2626;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;text-transform:uppercase;letter-spacing:1px;box-shadow:0 2px 4px rgba(0,0,0,.2)} .pwa-install-btn:hover{background:#1E40AF;transform:translateY(-1px)} #pwa-top-bar,#pwa-bottom-bar{z-index:999} </style> <script> if(location.protocol==='http:'&&!location.hostname.includes('localhost')&&!location.hostname.includes('192.168')){location.href='https://'+location.host+location.pathname+location.search;} (function(){if('serviceWorker'in navigator){window.addEventListener('load',function(){navigator.serviceWorker.register('/?juba_pwa=sw',{scope:'/'})})} var d=null;window.addEventListener('beforeinstallprompt',function(e){e.preventDefault();d=e;var a=document.querySelectorAll('.pwa-install-btn');a.forEach(function(b){b.style.display='inline-flex'});}); window.addEventListener('appinstalled',function(){d=null;var a=document.querySelectorAll('.pwa-install-btn');a.forEach(function(b){b.style.display='none'})}); // Helper: inject GET APP button at top, nav, and bottom var pwaBtn = '<button class="pwa-install-btn"><svg viewBox="0 0 24 24" width="18" height="18" style="fill:#fff;margin-right:4px;vertical-align:middle"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"/></svg> GET APP</button>'; function injectPWA() { var hdr = document.querySelector('header, .dt_header, .page_header'); if (hdr && !document.getElementById('pwa-top-bar')) { hdr.insertAdjacentHTML('afterend', '<div id="pwa-top-bar" style="background:#1E40AF;text-align:center;padding:8px 0">'+pwaBtn+' <span style="color:#fff;font-size:13px;margin-left:8px">Install for offline access</span></div>'); } var nav = document.querySelector('.dt_navbar-mainmenu'); if (nav && !nav.querySelector('.pwa-install-btn')) { nav.insertAdjacentHTML('beforeend', '<li class="menu-item" style="display:flex;align-items:center">'+pwaBtn+'</li>'); } var mob = document.querySelector('.dt_mobilenav-mainmenu-inner > ul'); if (mob && !mob.querySelector('.pwa-install-btn')) { mob.insertAdjacentHTML('beforeend', '<li class="menu-item">'+pwaBtn+'</li>'); } var ftr = document.querySelector('footer'); if (ftr && !document.getElementById('pwa-bottom-bar')) { ftr.insertAdjacentHTML('beforebegin', '<div id="pwa-bottom-bar" style="background:#1E40AF;text-align:center;padding:8px 0">'+pwaBtn+' <span style="color:#fff;font-size:13px;margin-left:8px">Install for the best experience</span></div>'); } document.querySelectorAll('.pwa-install-btn').forEach(function(b) { b.onclick = function(){ if(d) d.prompt(); else alert('Open this site using HTTPS to install the app.'); }; }); } // Helper: replace "Get Started" with subscribe button function replaceG() { var els = document.querySelectorAll('a[data-title="Get Started"], a.dt-btn-primary, a.dt-btn, .dt_navbar-button-item a'); els.forEach(function(a) { if (a.textContent && a.textContent.trim() === 'Get Started') { var sub = document.createElement('a'); sub.href = '#'; sub.className = a.className; sub.style.cssText = a.style.cssText; sub.style.background = '#DC2626'; sub.textContent = 'Subscribe for our newsletter'; sub.onclick = function(e) { e.preventDefault(); alert('Subscribe to our newsletter to get the latest news delivered to your inbox.'); }; a.parentNode.replaceChild(sub, a); } }); } // Run immediately and set up MutationObserver for theme nav replacements injectPWA(); replaceG(); var obs = new MutationObserver(function() { replaceG(); injectPWA(); }); obs.observe(document.body, { childList: true, subtree: true }); // Also run on intervals for stubborn theme JS setInterval(injectPWA, 3000); setInterval(replaceG, 3000); // Weather & Location — replace fake address with real weather (function() { var locEls = function() { return document.querySelectorAll('.dt-address span, .dt-address span'); }; function updateLocation(city, region, temp, cond, icon) { var txt = city + (region ? ', ' + region : '') + ' | ' + icon + ' ' + temp + '°C ' + cond; locEls().forEach(function(el) { el.textContent = txt; }); } function updateLocationFallback(msg) { locEls().forEach(function(el) { el.textContent = msg; }); } // Try geolocation if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(pos) { var lat = pos.coords.latitude, lon = pos.coords.longitude; var x = new XMLHttpRequest(); x.open('GET', 'https://wttr.in/' + lat + ',' + lon + '?format=j1', true); x.onload = function() { try { var d = JSON.parse(x.responseText); var cc = d.current_condition && d.current_condition[0]; var na = d.nearest_area && d.nearest_area[0]; if (cc && na) { var city = na.areaName && na.areaName[0] && na.areaName[0].value || ''; var region = na.region && na.region[0] && na.region[0].value || ''; var country = na.country && na.country[0] && na.country[0].value || ''; var temp = cc.temp_C || ''; var cond = cc.weatherDesc && cc.weatherDesc[0] && cc.weatherDesc[0].value || ''; updateLocation(city || region || country, country !== city && country !== region ? country : '', temp, cond, ''); } else { updateLocationFallback('Weather unavailable'); } } catch(e) { updateLocationFallback('Weather unavailable'); } }; x.onerror = function() { updateLocationFallback('Weather unavailable'); }; x.send(); }, function() { // Geolocation denied — use IP-based location via reverse geolocation var x = new XMLHttpRequest(); x.open('GET', 'https://wttr.in/?format=j1', true); x.onload = function() { try { var d = JSON.parse(x.responseText); var cc = d.current_condition && d.current_condition[0]; var na = d.nearest_area && d.nearest_area[0]; if (cc && na) { var city = na.areaName && na.areaName[0] && na.areaName[0].value || ''; var region = na.region && na.region[0] && na.region[0].value || ''; var country = na.country && na.country[0] && na.country[0].value || ''; var temp = cc.temp_C || ''; var cond = cc.weatherDesc && cc.weatherDesc[0] && cc.weatherDesc[0].value || ''; updateLocation(city || region || country, country !== city && country !== region ? country : '', temp, cond, ''); } else { updateLocationFallback('Juba, South Sudan'); } } catch(e) { updateLocationFallback('Juba, South Sudan'); } }; x.onerror = function() { updateLocationFallback('Juba, South Sudan'); }; x.send(); }, {timeout:5000, enableHighAccuracy:false}); } else { // No geolocation API — use IP fallback updateLocationFallback('Juba, South Sudan'); } })(); setInterval(replaceG, 3000); // Travel Booking - add to nav and sticky buttons (function() { function addTravelBookingLink() { // Add to the main nav (after 6 continent dropdowns, before separator) var nav = document.querySelector('.dt_navbar-menu .menu'); if (nav && !document.getElementById('tb-nav-link')) { var li = document.createElement('li'); li.id = 'tb-nav-link'; li.className = 'menu-item menu-item-type-custom'; li.style.cssText = 'border: 1px solid #1E40AF; border-radius: 4px; margin: 0 2px;'; var a = document.createElement('a'); a.href = 'http://jubaglobal.com/?page_id=37218'; a.style.cssText = 'color: #1E40AF !important; font-weight: 600; padding: 8px 12px !important;'; a.textContent = '✈ Travel Booking'; li.appendChild(a); nav.appendChild(li); } // Also add floating sticky button at bottom-right if (!document.getElementById('tb-sticky-btn')) { var btn = document.createElement('a'); btn.id = 'tb-sticky-btn'; btn.href = 'http://jubaglobal.com/?page_id=37218'; btn.style.cssText = 'position:fixed; bottom:20px; right:20px; z-index:9999; background:#1E40AF; color:#fff; padding:12px 20px; border-radius:30px; text-decoration:none; font-weight:700; font-size:15px; box-shadow:0 4px 15px rgba(0,0,0,0.3); transition:all 0.3s;'; btn.innerHTML = '✈ Book Travel'; btn.onmouseover = function() { this.style.background = '#DC2626'; this.style.transform = 'scale(1.05)'; }; btn.onmouseout = function() { this.style.background = '#1E40AF'; this.style.transform = 'scale(1)'; }; document.body.appendChild(btn); } } addTravelBookingLink(); setInterval(addTravelBookingLink, 3000); })(); // Travel Booking tracking document.addEventListener("DOMContentLoaded" document.addEventListener("DOMContentLoaded", function() { var tbScript = document.createElement("script"); tbScript.async = true; tbScript.src = 'https://emrldtp.com/NTQ1NDAw.js?t=545400'; document.head.appendChild(tbScript); }); // Replace Gravatar with Juba Global logo (function() { var logoUrl = 'http://jubaglobal.com/wp-content/uploads/2026/06/juba-global-logo-2026.png'; function replaceAvatars() { document.querySelectorAll('img[src*="gravatar.com/avatar/2203b3c8f4948893e665cc4cecd5fcfa7d49f4c32badc43536fd012d995247c2"]').forEach(function(img) { img.src = logoUrl; img.srcset = logoUrl; img.style.objectFit = 'cover'; img.style.borderRadius = '50%'; }); } replaceAvatars(); setInterval(replaceAvatars, 2000); })();</script> <?php }); Norway http://jubaglobal.com Thu, 02 Jul 2026 17:22:42 +0000 en-US hourly 1 https://wordpress.org/?v=7.0 Op-Ed: Letter from Norway about mining to the people and leaders of Kajo-Keji – Radio Tamazuj http://jubaglobal.com/?p=37858 http://jubaglobal.com/?p=37858#respond Thu, 02 Jul 2026 17:02:45 +0000 http://jubaglobal.com/?p=37858 p.has-drop-cap:first-letter { font-size: 3.2em !important; font-weight: 700 !important; float: left !important; line-height: 0.85 !important; margin-right: 10px !important; margin-top: 3px !important; margin-bottom: -2px !important; color: #DC2626 !important; font-family: "Georgia", "Times New Roman", serif !important; text-shadow: 1px 1px 1px rgba(0,0,0,0.1) !important; }

OSLO, JULY 2, 2026 — Op-Ed: Letter from Norway about mining to the people and leaders of Kajo-Keji  Radio Tamazuj. In OSLO and across Norway, officials, analysts, and ordinary citizens are closely watching these developments unfold as the situation evolves hour by hour.

The event described in these reports has attracted significant attention in Norway and across the international community, where stakeholders, analysts, and interested observers are working to understand the full scope and implications of what has occurred and what it might mean for the future. As more information becomes available through official channels, media reporting, and on-the-ground sources, a clearer picture is emerging of the situation, its causes and context, its immediate and longer-term consequences, and the range of possible responses and outcomes that may follow in the days, weeks, and months ahead.

Norway, a major energy exporter and a leading contributor to international peace and development efforts, plays a significant role in global diplomacy through its mediation initiatives.

Understanding the full significance of developments like this requires careful consideration of multiple dimensions including the immediate facts of what has occurred, the broader historical and political context in which events are unfolding, the interests and perspectives of the various stakeholders involved, the potential short-term and longer-term consequences for affected populations and regions, and the relationship of this specific event to larger patterns, trends, and forces that are shaping the world at the regional and global level. Only by examining events through this multifaceted lens can readers develop a genuinely informed and nuanced understanding of what is happening and why it matters to them, their communities, and the wider world.

For Norway and its people, the implications of this development will be assessed and debated by policymakers, business leaders, civil society organizations, and ordinary citizens in the days and weeks ahead as they work to understand what it means for their country, their communities, and their individual lives and livelihoods. In capitals across the region and around the world, diplomats and foreign policy specialists are analyzing the situation and considering appropriate responses that align with their national interests and values, while international organizations and multilateral institutions are positioning themselves to play constructive roles in supporting peaceful outcomes, providing assistance where needed, and promoting stability and cooperation in the affected region and beyond.

Events and developments like the one covered in this report shape the world in which we live and the future that we are building together as a global community of diverse nations, cultures, and peoples who share a common planet and a common destiny despite our many differences in language, religion, political systems, economic circumstances, and historical experiences. Understanding these events in their full context, with attention to their causes, consequences, and connections to larger patterns and trends, is essential for informed citizenship, meaningful participation in democratic discourse, and the ability of individuals and societies to make wise decisions about the future that serve the interests of both present and future generations.

References

This article is based on official sources, international media reports, and verified information from authoritative channels. Analysis and additional context provided by Juba Global News Network.

📰 Stay Informed with Juba Global News Network

Subscribe to our channels for the latest news, analysis, and updates from across Africa and the world.

▶ Subscribe on YouTube 👍 Follow on Facebook

Juba Global News Network — Your trusted source for global news with an African perspective.

]]>
http://jubaglobal.com/?feed=rss2&p=37858 0