LEFT | RIGHT |
1 /* This Source Code Form is subject to the terms of the Mozilla Public | 1 /* This Source Code Form is subject to the terms of the Mozilla Public |
2 * License, v. 2.0. If a copy of the MPL was not distributed with this file, | 2 * License, v. 2.0. If a copy of the MPL was not distributed with this file, |
3 * You can obtain one at http://mozilla.org/MPL/2.0/. */ | 3 * You can obtain one at http://mozilla.org/MPL/2.0/. */ |
4 | 4 |
5 Cu.import("resource://gre/modules/Services.jsm"); | 5 Cu.import("resource://gre/modules/Services.jsm"); |
6 Cu.import("resource://gre/modules/FileUtils.jsm"); | 6 Cu.import("resource://gre/modules/FileUtils.jsm"); |
7 | 7 |
8 let {Prefs} = require("prefs"); | 8 let {Prefs} = require("prefs"); |
9 | 9 |
10 let RULES_VERSION = 2; | 10 let RULES_VERSION = 2; |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 } | 88 } |
89 | 89 |
90 function addCustomRules() | 90 function addCustomRules() |
91 { | 91 { |
92 for (let domain in Prefs.whitelist) | 92 for (let domain in Prefs.whitelist) |
93 onWhitelistEntryAdded(domain); | 93 onWhitelistEntryAdded(domain); |
94 } | 94 } |
95 | 95 |
96 function onWhitelistEntryAdded(domain) | 96 function onWhitelistEntryAdded(domain) |
97 { | 97 { |
98 let reverse = Array.prototype.slice.call(domain).reverse().join(""); | 98 let reverse = domain.split("").reverse().join(""); |
99 addSuffix(rules.domain, reverse, CUSTOM_RULE_PRIORITY); | 99 addSuffix(rules.domain, reverse, CUSTOM_RULE_PRIORITY); |
100 } | 100 } |
101 exports.onWhitelistEntryAdded = onWhitelistEntryAdded; | 101 exports.onWhitelistEntryAdded = onWhitelistEntryAdded; |
102 | 102 |
103 function onWhitelistEntryRemoved(domain) | 103 function onWhitelistEntryRemoved(domain) |
104 { | 104 { |
105 let reverse = Array.prototype.slice.call(domain).reverse().join(""); | 105 let reverse = domain.split("").reverse().join(""); |
106 removeSuffix(rules.domain, reverse, CUSTOM_RULE_PRIORITY); | 106 removeSuffix(rules.domain, reverse, CUSTOM_RULE_PRIORITY); |
107 } | 107 } |
108 exports.onWhitelistEntryRemoved = onWhitelistEntryRemoved; | 108 exports.onWhitelistEntryRemoved = onWhitelistEntryRemoved; |
109 | 109 |
110 function addSuffix(tree, suffix, priority) | 110 function addSuffix(tree, suffix, priority) |
111 { | 111 { |
112 if (suffix.length == 0) | 112 if (suffix.length == 0) |
113 { | 113 { |
114 // We are at the last character, just put our priority here | 114 // We are at the last character, just put our priority here |
115 tree[""] = " " + priority; | 115 tree[""] = " " + priority; |
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
400 bestSuggestionDistance = distance; | 400 bestSuggestionDistance = distance; |
401 bestSuggestionMatched = matchedLen; | 401 bestSuggestionMatched = matchedLen; |
402 bestSuggestionPriority = priority; | 402 bestSuggestionPriority = priority; |
403 } | 403 } |
404 } | 404 } |
405 if (bestSuggestion) | 405 if (bestSuggestion) |
406 return input.substr(0, input.length - bestSuggestionMatched) + bestSuggestio
n; | 406 return input.substr(0, input.length - bestSuggestionMatched) + bestSuggestio
n; |
407 else | 407 else |
408 return input; | 408 return input; |
409 } | 409 } |
LEFT | RIGHT |