VulpesOS/assets/webapps/costcontrol.gaiamobile.org/js/fte.js
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

19 lines
No EOL
6.5 KiB
JavaScript

;(function(){'use strict';var DEFAULT_LOW_LIMIT_THRESHOLD=3;var defaultLowLimitThreshold=DEFAULT_LOW_LIMIT_THRESHOLD;window.addEventListener('DOMContentLoaded',function _onDomReady(){initLazyFTE();});function initLazyFTE(){var SCRIPTS_NEEDED=['js/utils/debug.js','js/utils/toolkit.js','js/sim_manager.js','js/common.js','js/config/config_manager.js','js/views/BalanceLowLimitView.js','js/view_manager.js','js/settings/autosettings.js'];LazyLoader.load(SCRIPTS_NEEDED,function onScriptsLoaded(){setupFTE();parent.postMessage({type:'fte_ready',data:''},Common.COST_CONTROL_APP);window.addEventListener('localized',_onLocalize);});}
var wizard,vmanager;var toStep2,step=0;function setupFTE(){if(SimManager.isMultiSim()){window.addEventListener('dataSlotChange',function _onDataSimChange(){window.removeEventListener('dataSlotChange',_onDataSimChange);Common.closeFTE();});}
ConfigManager.requestAll(function _onSettings(configuration,settings){wizard=document.getElementById('firsttime-view');vmanager=new ViewManager();if(configuration&&configuration.default_low_limit_threshold){defaultLowLimitThreshold=configuration.default_low_limit_threshold;}
ConfigManager.setOption({resetTime:1,trackingPeriod:'monthly'});var mode=ConfigManager.getApplicationMode();var SCRIPTS_NEEDED=['js/settings/limitdialog.js','js/utils/formatting.js'];LazyLoader.load(SCRIPTS_NEEDED,function onScriptsLoaded(){Common.loadNetworkInterfaces(function(){AutoSettings.addType('data-limit',dataLimitConfigurer);if(mode==='DATA_USAGE_ONLY'){AutoSettings.initialize(ConfigManager,vmanager,'#non-vivo-step-2');}});});if(configuration&&configuration.credit&&configuration.credit.currency){document.getElementById('currency').textContent=configuration.credit.currency;}
if(mode==='DATA_USAGE_ONLY'){debug('FTE for non supported SIM');wizard.dataset.steps='3';reset(['step-1','non-vivo-step-1','non-vivo-step-2']);AutoSettings.initialize(ConfigManager,vmanager,'#non-vivo-step-1');}else{wizard.dataset.steps='4';reset(['step-1','step-2']);AutoSettings.initialize(ConfigManager,vmanager,'#step-1');toStep2=document.getElementById('to-step-2');toStep2.disabled=true;document.getElementById('prepaid-plan').addEventListener('click',selectTrack);document.getElementById('postpaid-plan').addEventListener('click',selectTrack);addLowLimitStepConstrains();}
var next=document.querySelectorAll('[data-navigation=next]');[].forEach.call(next,function cc_eachNext(nextButton){nextButton.addEventListener('click',onNext);});var prev=document.querySelectorAll('[data-navigation=back]');[].forEach.call(prev,function cc_eachPrev(prevButton){prevButton.addEventListener('click',onBack);});var finish=document.querySelectorAll('[data-navigation=finish]');[].forEach.call(finish,function cc_eachFinish(finishButton){finishButton.addEventListener('click',onFinish);});LazyLoader.load(['js/costcontrol.js'],function(){var messageHandlerFrame=document.getElementById('message-handler');messageHandlerFrame.src='message_handler.html';});});}
function _onLocalize(){Common.localizeWeekdaySelector(document.getElementById('pre3-select-weekday'));Common.localizeWeekdaySelector(document.getElementById('post2-select-weekday'));Common.localizeWeekdaySelector(document.getElementById('non2-select-weekday'));function _setResetTimeToDefault(evt){var today=new Date();var defaultResetTime=(evt.target.value==='weekly')?today.getDay():today.getDate();ConfigManager.setOption({resetTime:defaultResetTime});}
var trackingPeriodSelector=document.querySelectorAll('[data-option="trackingPeriod"]');[].forEach.call(trackingPeriodSelector,function _reset(tPeriodSel){tPeriodSel.addEventListener('change',_setResetTimeToDefault);});}
if(window.location.hash){wizard=document.getElementById('firsttime-view');if(window.location.hash==='#PREPAID'||window.location.hash==='#POSTPAID'){wizard.querySelector('.authed-sim').hidden=false;}else{wizard.querySelector('.nonauthed-sim').hidden=false;}}
var currentTrack=['step-1','step-2'];function selectTrack(evt){if(evt.target.value==='prepaid'){currentTrack=['step-1','step-2','prepaid-step-2','prepaid-step-3'];AutoSettings.initialize(ConfigManager,vmanager,'#prepaid-step-2');AutoSettings.initialize(ConfigManager,vmanager,'#prepaid-step-3');balanceLowLimitView.disabled=false;ConfigManager.setOption({dataLimitValue:40,dataLimitUnit:'MB',lowLimit:true,lowLimitThreshold:defaultLowLimitThreshold});}else if(evt.target.value==='postpaid'){currentTrack=['step-1','step-2','postpaid-step-2','postpaid-step-3'];AutoSettings.initialize(ConfigManager,vmanager,'#postpaid-step-2');AutoSettings.initialize(ConfigManager,vmanager,'#postpaid-step-3');balanceLowLimitView.disabled=true;ConfigManager.setOption({dataLimitValue:2,dataLimitUnit:'GB'});}
ConfigManager.setOption({plantype:evt.target.value},function _onSet(){toStep2.disabled=false;});}
function reset(track){var currentScreen=document.getElementById(currentTrack[step]);var newStartScreen=document.getElementById(track[0]);currentScreen.dataset.viewport='left';newStartScreen.dataset.viewport='right';delete newStartScreen.dataset.viewport;for(var i=1;i<track.length;i+=1){var id=track[i];if(id){var screen=document.getElementById(id);screen.dataset.viewport='right';}}
step=0;currentTrack=track;}
function onNext(){if(step===currentTrack.length-1){return;}
var currentId=currentTrack[step];var currentScreen=document.getElementById(currentId);var nextScreenId=currentTrack[step+1];var nextScreen=document.getElementById(nextScreenId);delete nextScreen.dataset.viewport;currentScreen.dataset.viewport='left';step+=1;if(step===2){balanceLowLimitView&&balanceLowLimitView.validate();}}
function onBack(){if(step===0){return;}
var currentId=currentTrack[step];var currentScreen=document.getElementById(currentId);var prevScreenId=currentTrack[step-1];var prevScreen=document.getElementById(prevScreenId);delete prevScreen.dataset.viewport;currentScreen.dataset.viewport='right';step-=1;}
function onFinish(evt){evt.target.disabled=true;SimManager.requestDataSimIcc(function(dataSim){ConfigManager.requestSettings(dataSim.iccId,function _onSettings(settings){ConfigManager.setOption({fte:false},function _returnToApp(){Common.updateNextReset(settings.trackingPeriod,settings.resetTime,function _returnToTheApplication(){Common.startApp();});});});});}
var balanceLowLimitView;function addLowLimitStepConstrains(){var nextButton=document.getElementById('low-limit-next-button');balanceLowLimitView=new BalanceLowLimitView(document.getElementById('low-limit'),document.getElementById('low-limit-input'));balanceLowLimitView.onvalidation=function(evt){nextButton.disabled=!evt.isValid;};}}());