Can Starlink solve Virginia’s broadband challenges?


Return to homepage ×

Please subscribe to keep reading. You can cancel at any time.

Subscription services is currently down for maintenance. Please check back later.]]>

‘; } else { var sFallBack = ‘Click here to subscribe‘; } $(‘#lee-services-list .loading’).hide(); $(‘#lee-services-list’).html(‘

‘+sFallBack+’

‘); $(‘.lee-featured-subscription’).html(sFallBack); } function lee_formatPackage(oService){ try { var bOnlyModal = true; var oSettings = lee_getPackageSettings(oService.HomeMembership); var newService = {}; if(parseInt(oService.WebFeatureFG) === 2) return false; if(oService.WebStartPrice != ”){ var custom = JSON.parse(oService.WebStartPrice); $.each(custom, function(k,v){ newService[k] = v; }); } if(bOnlyModal && newService.in_modal && newService.in_modal.toLowerCase() === ‘false’) return false; if(!bOnlyModal && newService.not_members && newService.not_members.toLowerCase() === ‘true’) return false; newService.has_featured_class = newService.featured ? ‘featured-package’ : ”; newService.sort = parseInt((newService.sort) ? newService.sort : oSettings.sort); newService.title = (newService.package_title && newService.package_title != ”) ? newService.package_title : oSettings.title; newService.level = oService.HomeMembership; newService.html = oService.WebOfferHTML; newService.disabled = newService.disable_purchase ? ‘disabled’ : ”; var price = lee_formatPackagePrice(newService.start_price); newService.start_price = price.cost; newService.format_dollars = (price.format_dollars) ? price.format_dollars : ”; newService.format_cents = (price.format_cents) ? price.format_cents : ”; newService.start_at_rate = (newService.fixed_rate === ‘true’) ? ‘for the low price of’ : ‘starting at’; if( !newService.term ) newService.term = ‘per month’; newService.has_promotion_class = ”; if( newService.promotional_price && newService.promotional_price != ” ){ newService.has_promotion_class = ‘has-promotion’; var promotion = lee_formatPackagePrice(newService.promotional_price); newService.promotional_price = promotion.cost; newService.promotional_format_dollars = (promotion.format_dollars) ? promotion.format_dollars : ”; newService.promotional_format_cents = (promotion.format_cents) ? promotion.format_cents : ”; } newService.special_title_class = newService.special_title ? ‘has-special-title’ : ”; newService.special_label_class = newService.label ? ‘has-label’ : ”; newService.action_button = ‘Sign Up’; if(newService.disabled === ‘disabled’){ newService.start_at_rate = ‘Call us at’; newService.start_price = ‘800-346-1234’; newService.term = ‘to get started’; newService.action_button = ‘Call Today’; } window.lee_service_impressions.push({ ‘id’: newService.level, ‘name’: newService.title, ‘price’: newService.start_price, ‘brand’: “roanoke.com”, ‘category’: ‘subscription’, ‘list’: ‘Block’, ‘position’: newService.sort }); return newService; } catch(e){ if(window.console) console.warn(e); return false; } } function lee_sortPackages(property) { var sortOrder = 1; if(property[0] === “-“) { sortOrder = -1; property = property.substr(1); } return function (a,b) { var result = (a[property] b[property]) ? 1 : 0; return result * sortOrder; } } function lee_getPackageSettings(sPackage){ switch(sPackage.toLowerCase()){ case ‘dob’: return {title: ‘Digital Basic’, sort: 0}; break; case ‘dop’: return {title: ‘Digital Plus’, sort: 1}; break; case ‘dopl’: return {title: ‘Digital Platinum’, sort: 2}; break; case ‘silv’: return {title: ‘Silver’, sort: 3}; break; case ‘gold’: return {title: ‘Gold’, sort: 4}; break; case ‘plat’: return {title: ‘Platinum’, sort: 5}; break; } } function lee_replacePackageTokens(sPackage, oService, sCol){ var hasPromotion = false; $.each(oService, function(k,v){ if( k === ‘html’){ v = v.replace(new RegExp(‘{{domain}}’, ‘gi’), ‘roanoke.com’) .replace(new RegExp(‘{{site_name}}’, ‘gi’), ‘Roanoke Times’) .replace(new RegExp(‘{{business_name}}’, ‘gi’), ‘roanoke.com’) .replace(new RegExp(‘{{site_phone}}’, ‘gi’), ‘800-346-1234’); } sPackage = sPackage.replace(new RegExp(‘{{‘+k+’}}’, ‘gi’), v); }); if(sCol) sPackage = sPackage.replace(‘{{col}}’, sCol); return sPackage; } if(window.lee_services_active && window.lee_services_active != ‘offline’){ try { var oPackages = [], oFeatured = false, sHtml = ”, sTemplate = $(‘#lee-service-template’).html(); $.each(window.leeMembershipPackages, function(i, oService){ var oService = lee_formatPackage(oService); if(oService){ oPackages.push(oService); if(oService.featured === ‘true’) oFeatured = oService; } }); if(oPackages.length === 0){ throw ‘No packages defined’; } oPackages.sort(lee_sortPackages(‘sort’)); if(!oFeatured) oFeatured = oPackages[0]; if(oPackages.length === 1){ sTemplate = $(‘#lee-service-template-single’).html(); $(‘#lee-services-list’).addClass(‘single’); } else { $(‘#lee-services-list’).addClass(‘multiple’); } switch(oPackages.length){ case 6: var sCol = ‘2’; break; case 5: var sCol = ‘5ths’; break; case 4: var sCol = ‘3’; break; case 3: var sCol = ‘4’; break; case 2: var sCol = ‘6’; break; default: var sCol = ’12’; break; } $(‘#lee-services-modal’).addClass(‘packages_’+oPackages.length); $.each(oPackages, function(i, oService){ sHtml += lee_replacePackageTokens(sTemplate, oService, sCol); }); $(‘#lee-services-list .packages’).html(sHtml).promise().then(function(){ $(‘#lee-services-list .loading’).hide(); $(‘#lee-services-list .packages’).css(‘opacity’, 1); }); if(!__tnt.user.services){ if( $(‘.lee-featured-subscription’).length > 0 && oFeatured ){ $(‘.lee-featured-subscription’).each(function(){ var html = $(this).html(); if( !oFeatured.featured_button_text ){ if(oFeatured.promotional_price){ oFeatured.featured_button_text = oFeatured.promotional_format_dollars+oFeatured.promotional_price+oFeatured.promotional_format_cents+’ ‘+oFeatured.term; } else { oFeatured.featured_button_text = ‘Join for ‘+oFeatured.format_dollars+oFeatured.start_price+oFeatured.format_cents+’ ‘+oFeatured.term; } } html = lee_replacePackageTokens(html, oFeatured); $(this).html(html); if(oFeatured.promotional_price) $(this).addClass(‘has-promotiom’); if( $(this).hasClass(‘show-after-loaded’) ) $(this).show(); }); } } } catch (e) { if(window.console) console.warn(e); lee_serviceError(); } window.lee_fetched_services = true; } else { lee_serviceError(‘offline’); } }); No thanks, return to homepage.

Source