@@ -114,7 +114,6 @@ var HTTPSBPopup = {
114114
115115 matrixStats : MatrixStats . prototype . createMatrixStats ( ) ,
116116 matrixHeaderTypes : [ '*' ] ,
117- matrixHeaderPrettyNames : { } ,
118117 matrixCellMenu : null ,
119118 matrixCellHotspots : null ,
120119 matrixRowTemplate : null ,
@@ -126,6 +125,17 @@ var HTTPSBPopup = {
126125
127126 mouseenterHandlers : { } ,
128127
128+ matrixHeaderPrettyNames : {
129+ 'all' : '' ,
130+ 'cookie' : '' ,
131+ 'image' : '' ,
132+ 'object' : '' ,
133+ 'script' : '' ,
134+ 'xmlhttprequest' : '' ,
135+ 'sub_frame' : '' ,
136+ 'other' : ''
137+ } ,
138+
129139 // Just so the background page will be notified when popup menu is closed
130140 port : chrome . runtime . connect ( ) ,
131141
@@ -846,13 +856,15 @@ function initMenuEnvironment() {
846856 HTTPSBPopup . matrixRowTemplate = $ ( '#templates .matRow' ) ;
847857
848858 var prettyNames = HTTPSBPopup . matrixHeaderPrettyNames ;
849- var cells = $ ( '#matHead .matRow .matCell' ) . toArray ( ) ;
850- var i = cells . length ;
851- var cell , type ;
859+ var keys = Object . keys ( prettyNames ) ;
860+ var i = keys . length ;
861+ var cell , key , text ;
852862 while ( i -- ) {
853- cell = $ ( cells [ i ] ) ;
854- type = cell . data ( 'filterType' ) ;
855- prettyNames [ type ] = cell . text ( ) ;
863+ key = keys [ i ] ;
864+ cell = $ ( '#matHead .matCell[data-filter-type="' + key + '"]' ) ;
865+ text = chrome . i18n . getMessage ( key + 'PrettyName' ) ;
866+ cell . text ( text ) ;
867+ prettyNames [ key ] = text ;
856868 }
857869}
858870
@@ -876,30 +888,27 @@ function toggleScopePage() {
876888function getScopePageButtonTip ( ) {
877889 var toolbar = $ ( 'body' ) ;
878890 if ( toolbar . hasClass ( 'scope-is-page' ) ) {
879- return 'Remove all rules specific to <b>' + HTTPSBPopup . scopeURL + '</b>' ;
891+ return chrome . i18n . getMessage ( 'matrixRemoveScope' ) . replace ( '{{what}}' , ' <b>' + HTTPSBPopup . scopeURL + '</b>' ) ;
880892 }
881- return 'Create rules specific to web pages which URL starts exactly with ' +
882- '<b>' + HTTPSBPopup . scopeURL + '</b>' ;
893+ return chrome . i18n . getMessage ( 'matrixCreateScope' ) . replace ( '{{what}}' , '<b>' + HTTPSBPopup . scopeURL + '</b>' ) ;
883894}
884895
885896/******************************************************************************/
886897
887898// Handle user mouse over filter buttons
888899
889- // TODO: localize
890-
891900var mouseOverPrompts = {
892- '+**' : 'Click to <span class="gdt">allow</span> all graylisted types and domains' ,
893- '-**' : 'Click to <span class="rdt">block</span> all graylisted types and domains' ,
894- '+?*' : 'Click to <span class="gdt">allow</span> <b>{{what}}</b> from <b>everywhere</b> except blacklisted domains' ,
895- '+*?' : 'Click to <span class="gdt">allow</span> <b>everything</b> from <b>{{where}}</b>' ,
896- '+??' : 'Click to <span class="gdt">allow</span> <b>{{what}}</b> from <b>{{where}}</b>' ,
897- '-?*' : 'Click to <span class="rdt">block</span> <b>{{what}}</b> from <b>everywhere</b> except whitelisted domains' ,
898- '-*?' : 'Click to <span class="rdt">block</span> <b>everything</b> from <b>{{where}}</b>' ,
899- '-??' : 'Click to <span class="rdt">block</span> <b>{{what}}</b> from <b>{{where}}</b>' ,
900- '.?*' : 'Click to graylist <b>{{what}}</b> from <b>everywhere</b>' ,
901- '.*?' : 'Click to graylist <b>everything</b> from <b>{{where}}</b>' ,
902- '.??' : 'Click to graylist <b>{{what}}</b> from <b>{{where}}</b>'
901+ '+**' : chrome . i18n . getMessage ( 'matrixAllowAll' ) ,
902+ '-**' : chrome . i18n . getMessage ( 'matrixBlockAll' ) ,
903+ '+?*' : chrome . i18n . getMessage ( 'matrixAllowSomethingFromEverywhere' ) ,
904+ '+*?' : chrome . i18n . getMessage ( 'matrixAllowEverythingFromSomewhere' ) ,
905+ '+??' : chrome . i18n . getMessage ( 'matrixAllowSomethingFromSomewhere' ) ,
906+ '-?*' : chrome . i18n . getMessage ( 'matrixBlockSomethingFromEverywhere' ) ,
907+ '-*?' : chrome . i18n . getMessage ( 'matrixBlockEverythingFromSomewhere' ) ,
908+ '-??' : chrome . i18n . getMessage ( 'matrixBlockSomethingFromSomewhere' ) ,
909+ '.?*' : chrome . i18n . getMessage ( 'matrixGraylistSomethingFromEverywhere' ) ,
910+ '.*?' : chrome . i18n . getMessage ( 'matrixGraylistEverythingFromSomewhere' ) ,
911+ '.??' : chrome . i18n . getMessage ( 'matrixGraylistSomethingFromSomewhere' )
903912} ;
904913
905914function handleFilterMessage ( hotspot , leaning ) {
@@ -931,17 +940,17 @@ function handleBlacklistFilterMessage(hotspot) {
931940
932941function handlePersistMessage ( button ) {
933942 if ( button . closest ( '.rdt' ) . length ) {
934- showMessage ( 'Permanently <span class="rdt">blacklist</span> this cell' ) ;
943+ showMessage ( chrome . i18n . getMessage ( 'matrixPersistBlock' ) ) ;
935944 } else if ( button . closest ( '.gdt' ) . length ) {
936- showMessage ( 'Permanently <span class="gdt">whitelist</span> this cell' ) ;
945+ showMessage ( chrome . i18n . getMessage ( 'matrixPersistAllow' ) ) ;
937946 }
938947}
939948
940949function handleUnpersistMessage ( button ) {
941950 if ( button . closest ( '.rdp' ) . length ) {
942- showMessage ( 'Cancel the permanent <span class="rdt">blacklist</span> status of this cell' ) ;
951+ showMessage ( chrome . i18n . getMessage ( 'matrixUnpersistBlock' ) ) ;
943952 } else if ( button . closest ( '.gdp' ) . length ) {
944- showMessage ( 'Cancel the permanent <span class="gdt">whitelist</span> status of this cell' ) ;
953+ showMessage ( chrome . i18n . getMessage ( 'matrixUnpersistAllow' ) ) ;
945954 }
946955}
947956
@@ -1095,12 +1104,16 @@ function initAll() {
10951104 . on ( 'mouseleave' , blankMessage ) ;
10961105
10971106 $ ( '#buttonRevert' )
1098- . on ( 'mouseenter' , function ( ) { showMessage ( 'Clear all temporary rules — those which are not padlocked' ) ; } )
1107+ . on ( 'mouseenter' , function ( ) { showMessage ( chrome . i18n . getMessage ( 'matrixRevert' ) ) ; } )
10991108 . on ( 'mouseleave' , blankMessage ) ;
11001109
11011110 $ ( '#buttonToggleScope' ) . on ( 'click' , toggleScopePage ) ;
11021111 $ ( '#buttonRevert' ) . on ( 'click' , revert ) ;
11031112
1113+ $ ( '#buttonRuleManager' ) . text ( chrome . i18n . getMessage ( 'ruleManagerPageName' ) ) ;
1114+ $ ( '#buttonInfo' ) . text ( chrome . i18n . getMessage ( 'statsPageName' ) ) ;
1115+ $ ( '#buttonSettings' ) . text ( chrome . i18n . getMessage ( 'settingsPageName' ) ) ;
1116+
11041117 $ ( '#matList' ) . on ( 'click' , '.groupSeparator.g3Meta' , function ( ) {
11051118 var separator = $ ( this ) ;
11061119 separator . toggleClass ( 'g3Collapsed' ) ;
0 commit comments