11var storage = new LocalStorage ( ) ;
2+ var blackList = [ ] ;
23
34document . addEventListener ( 'DOMContentLoaded' , function ( ) {
45 document . getElementById ( 'settingsBtn' ) . addEventListener ( 'click' , function ( ) {
@@ -19,7 +20,7 @@ document.addEventListener('DOMContentLoaded', function () {
1920 clearAllData ( ) ;
2021 } ) ;
2122 document . getElementById ( 'addBlackSiteBtn' ) . addEventListener ( 'click' , function ( ) {
22- addNewBlackSite ( ) ;
23+ addNewBlackSiteClickHandler ( ) ;
2324 } ) ;
2425 document . getElementById ( 'viewTimeInBadge' ) . addEventListener ( 'change' , function ( ) {
2526 storage . saveSettings ( SETTINGS_VIEW_TIME_IN_BADGE , this . checked ) ;
@@ -46,7 +47,19 @@ function loadSettings() {
4647 } ) ;
4748 storage . getMemoryUse ( STORAGE_TABS , function ( integer ) {
4849 document . getElementById ( 'memoryUse' ) . innerHTML = ( integer / 1024 ) . toFixed ( 2 ) + 'Kb' ;
49- } )
50+ } ) ;
51+ storage . getSettings ( STORAGE_BLACK_LIST , function ( items ) {
52+ blackList = items ;
53+ viewBlackList ( items ) ;
54+ } ) ;
55+ }
56+
57+ function viewBlackList ( items ) {
58+ if ( items !== undefined ) {
59+ for ( var i = 0 ; i < items . length ; i ++ ) {
60+ addDomainToListBox ( items [ i ] ) ;
61+ }
62+ }
5063}
5164
5265function clearAllData ( ) {
@@ -60,37 +73,35 @@ function viewNotify() {
6073 setTimeout ( function ( ) { document . getElementById ( 'notify' ) . hidden = true ; } , 3000 ) ;
6174}
6275
63- function addNewBlackSite ( ) {
76+ function addNewBlackSiteClickHandler ( ) {
6477 var newBlackSite = document . getElementById ( 'addBlackSiteLbl' ) . value ;
6578 if ( newBlackSite !== '' ) {
66- var li = document . createElement ( 'li' ) ;
67- li . innerText = newBlackSite ;
68- var del = document . createElement ( 'img' ) ;
69- del . height = 12 ;
70- del . src = '/icons/delete.png' ;
71- del . addEventListener ( 'click' , function ( e ) {
72- deleteBlackSite ( e ) ;
73- } ) ;
74- document . getElementById ( 'blackList' ) . appendChild ( li ) . appendChild ( del ) ;
79+ addDomainToListBox ( newBlackSite ) ;
80+ blackList . push ( newBlackSite ) ;
7581 document . getElementById ( 'addBlackSiteLbl' ) . value = '' ;
7682 }
7783 updateBlackList ( ) ;
7884}
7985
80- function deleteBlackSite ( e ) {
86+ function addDomainToListBox ( domain ) {
87+ var li = document . createElement ( 'li' ) ;
88+ li . innerText = domain ;
89+ var del = document . createElement ( 'img' ) ;
90+ del . height = 12 ;
91+ del . src = '/icons/delete.png' ;
92+ del . addEventListener ( 'click' , function ( e ) {
93+ deleteBlackSite ( e ) ;
94+ } ) ;
95+ document . getElementById ( 'blackList' ) . appendChild ( li ) . appendChild ( del ) ;
96+ }
97+
98+ function deleteBlackSite ( e ) {
8199 var targetElement = e . path [ 1 ] ;
82- var domain = targetElement . innerText ;
83- var list = document . getElementById ( 'blackList' ) . getElementsByTagName ( 'li' ) ;
84- var blackList = [ ] ;
85- for ( var i = 0 ; i < list . length ; i ++ ) {
86- if ( list [ i ] . innerText == domain ) {
87- document . getElementById ( 'blackList' ) . removeChild ( list [ i ] ) ;
88- }
89- blackList . push ( list [ i ] . innerText ) ;
90- }
91- updateBlackList ( blackList ) ;
100+ blackList . splice ( blackList . indexOf ( targetElement . innerText ) , 1 ) ;
101+ document . getElementById ( 'blackList' ) . removeChild ( targetElement ) ;
102+ updateBlackList ( ) ;
92103}
93104
94- function updateBlackList ( blackList ) {
105+ function updateBlackList ( ) {
95106 storage . saveSettings ( STORAGE_BLACK_LIST , blackList ) ;
96107}
0 commit comments