@@ -50,50 +50,32 @@ var backupUserDataToFile = function() {
5050 ubiquitousWhitelist : ''
5151 } ;
5252
53- var userSettingsReady = function ( store ) {
54- allUserData . userSettings = store ;
55- chrome . storage . local . get ( [ 'version' , 'scopes' , 'remoteBlacklists' ] , ruleDataReady ) ;
53+ var userWhitelistReady = function ( details ) {
54+ allUserData . ubiquitousWhitelist = details . content ;
55+ chrome . downloads . download ( {
56+ 'url' : 'data:text/plain,' + encodeURIComponent ( JSON . stringify ( allUserData ) ) ,
57+ 'filename' : 'httpsb-alluserdata-backup.txt' ,
58+ 'saveAs' : true
59+ } ) ;
60+ } ;
61+
62+ var userBlacklistReady = function ( details ) {
63+ allUserData . ubiquitousBlacklist = details . content ;
64+ httpsb . assets . get ( httpsb . userWhitelistPath , userWhitelistReady ) ;
5665 } ;
5766
5867 var ruleDataReady = function ( store ) {
5968 allUserData . version = store . version ;
6069 allUserData . scopes = store . scopes ;
6170 allUserData . remoteBlacklists = store . remoteBlacklists ;
62- httpsb . assets . get (
63- httpsb . userBlacklistPath ,
64- 'userUbiquitousBlacklistReady'
65- ) ;
71+ httpsb . assets . get ( httpsb . userBlacklistPath , userBlacklistReady ) ;
6672 } ;
6773
68- var onMessageHandler = function ( request ) {
69- if ( ! request || ! request . what ) {
70- return ;
71- }
72- switch ( request . what ) {
73- case 'userUbiquitousBlacklistReady' :
74- allUserData . ubiquitousBlacklist = request . content ;
75- httpsb . assets . get (
76- httpsb . userWhitelistPath ,
77- 'userUbiquitousWhitelistReady'
78- ) ;
79- break ;
80- case 'userUbiquitousWhitelistReady' :
81- allUserData . ubiquitousWhitelist = request . content ;
82- saveToFile ( ) ;
83- break ;
84- }
85- } ;
86-
87- var saveToFile = function ( ) {
88- chrome . downloads . download ( {
89- 'url' : 'data:text/plain,' + encodeURIComponent ( JSON . stringify ( allUserData ) ) ,
90- 'filename' : 'httpsb-alluserdata-backup.txt' ,
91- 'saveAs' : true
92- } ) ;
93- chrome . runtime . onMessage . removeListener ( onMessageHandler ) ;
74+ var userSettingsReady = function ( store ) {
75+ allUserData . userSettings = store ;
76+ chrome . storage . local . get ( [ 'version' , 'scopes' , 'remoteBlacklists' ] , ruleDataReady ) ;
9477 } ;
9578
96- chrome . runtime . onMessage . addListener ( onMessageHandler ) ;
9779 chrome . storage . local . get ( httpsb . userSettings , userSettingsReady ) ;
9880} ;
9981
@@ -105,6 +87,15 @@ var restoreUserDataFromFile = function() {
10587 accept : 'text/plain'
10688 } ) ;
10789
90+ var restartCountdown = 2 ;
91+ var doCountdown = function ( ) {
92+ restartCountdown -= 1 ;
93+ if ( restartCountdown > 0 ) {
94+ return ;
95+ }
96+ chrome . runtime . reload ( ) ;
97+ } ;
98+
10899 var restoreBackup = function ( data ) {
109100 var httpsb = getHTTPSB ( ) ;
110101 chrome . storage . local . set ( data . userSettings ) ;
@@ -118,8 +109,8 @@ var restoreUserDataFromFile = function() {
118109 store . remoteBlacklists = data . remoteBlacklists ;
119110 }
120111 chrome . storage . local . set ( store ) ;
121- httpsb . assets . put ( httpsb . userBlacklistPath , data . ubiquitousBlacklist , 'restoreUserDataFromFileUserRestartCountdown' ) ;
122- httpsb . assets . put ( httpsb . userWhitelistPath , data . ubiquitousWhitelist , 'restoreUserDataFromFileUserRestartCountdown' ) ;
112+ httpsb . assets . put ( httpsb . userBlacklistPath , data . ubiquitousBlacklist , doCountdown ) ;
113+ httpsb . assets . put ( httpsb . userWhitelistPath , data . ubiquitousWhitelist , doCountdown ) ;
123114 } ;
124115
125116 var validateBackup = function ( s ) {
@@ -148,7 +139,9 @@ var restoreUserDataFromFile = function() {
148139 return ;
149140 }
150141 var time = new Date ( data . timeStamp ) ;
151- var msg = chrome . i18n . getMessage ( 'aboutUserDataRestoreConfirm' ) . replace ( '{{time}}' , time . toLocaleString ( ) ) ;
142+ var msg = chrome . i18n
143+ . getMessage ( 'aboutUserDataRestoreConfirm' )
144+ . replace ( '{{time}}' , time . toLocaleString ( ) ) ;
152145 var proceed = window . confirm ( msg ) ;
153146 if ( proceed ) {
154147 restoreBackup ( data ) ;
@@ -170,22 +163,6 @@ var restoreUserDataFromFile = function() {
170163 input . off ( 'change' , filePickerOnChangeHandler ) ;
171164 } ;
172165
173- var restartCountdown = 2 ;
174- var onMessageHandler = function ( request ) {
175- if ( ! request || ! request . what ) {
176- return ;
177- }
178- if ( request . what === 'restoreUserDataFromFileUserRestartCountdown' ) {
179- restartCountdown -= 1 ;
180- if ( restartCountdown > 0 ) {
181- return ;
182- }
183- }
184- chrome . runtime . onMessage . removeListener ( onMessageHandler ) ;
185- chrome . runtime . reload ( ) ;
186- } ;
187- chrome . runtime . onMessage . addListener ( onMessageHandler ) ;
188-
189166 input . on ( 'change' , filePickerOnChangeHandler ) ;
190167 input . trigger ( 'click' ) ;
191168} ;
@@ -244,37 +221,29 @@ var renderAssetList = function(details) {
244221var updateAssets = function ( ) {
245222 var httpsb = getHTTPSB ( ) ;
246223 setAssetListClassBit ( 2 , true ) ;
247- httpsb . assetUpdater . update ( updateList ) ;
224+ var onDone = function ( ) {
225+ httpsb . loadUpdatableAssets ( false ) ;
226+ } ;
227+ httpsb . assetUpdater . update ( updateList , onDone ) ;
248228} ;
249229
250230/******************************************************************************/
251231
252- var onAllLocalAssetsUpdated = function ( ) {
253- var httpsb = getHTTPSB ( ) ;
254- var onMessageHandler = function ( request ) {
255- if ( ! request || ! request . what ) {
256- return ;
257- }
258- if ( request . what !== 'dashboardAboutCachedAssetList' ) {
259- return ;
260- }
261- renderAssetList ( request ) ;
262- chrome . runtime . onMessage . removeListener ( onMessageHandler ) ;
263- } ;
264- chrome . runtime . onMessage . addListener ( onMessageHandler ) ;
265- httpsb . assetUpdater . getList ( 'dashboardAboutCachedAssetList' ) ;
232+ var updateAssetsList = function ( ) {
233+ getHTTPSB ( ) . assetUpdater . getList ( renderAssetList ) ;
266234} ;
267235
268236/******************************************************************************/
269237
270- var onMessageHandler = function ( request ) {
271- if ( ! request || ! request . what ) {
272- return ;
273- }
274- if ( request . what === 'allLocalAssetsUpdated' ) {
275- onAllLocalAssetsUpdated ( ) ;
238+ // Updating all assets could be done from elsewhere and if so the
239+ // list here needs to be updated.
240+
241+ var onMessage = function ( request ) {
242+ if ( request && request . what === 'allLocalAssetsUpdated' ) {
243+ updateAssetsList ( ) ;
276244 }
277245} ;
246+ chrome . runtime . onMessage . addListener ( onMessage ) ;
278247
279248/******************************************************************************/
280249
@@ -293,9 +262,7 @@ $('#resetUserDataButton').on('click', resetUserData);
293262
294263/******************************************************************************/
295264
296- chrome . runtime . onMessage . addListener ( onMessageHandler ) ;
297-
298- onAllLocalAssetsUpdated ( ) ;
265+ updateAssetsList ( ) ;
299266
300267/******************************************************************************/
301268
0 commit comments