diff options
Diffstat (limited to 'helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}')
517 files changed, 40803 insertions, 0 deletions
diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/bootstrap.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/bootstrap.js new file mode 100644 index 0000000..09530b9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/bootstrap.js @@ -0,0 +1,169 @@ +/* + * This file is part of the Adblock Plus build tools, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +const Cc = Components.classes; +const Ci = Components.interfaces; +const Cr = Components.results; +const Cu = Components.utils; + +let {Services, atob, btoa, File, TextDecoder, TextEncoder} = Cu.import("resource://gre/modules/Services.jsm", null); +let XMLHttpRequest = Components.Constructor("@mozilla.org/xmlextras/xmlhttprequest;1", "nsIXMLHttpRequest"); + +let addonData = null; + +function startup(params, reason) +{ + addonData = params; + Services.obs.addObserver(RequireObserver, "adblockplus-require", true); + onShutdown.add(function() Services.obs.removeObserver(RequireObserver, "adblockplus-require")); + + require("main"); +} + +function shutdown(params, reason) +{ + let windowNames = ["abp:subscriptionSelection", "abp:composer", "abp:filters"]; + for (let i = 0; i < windowNames.length; i++) + { + let enumerator = Services.wm.getEnumerator(windowNames[i]); + while (enumerator.hasMoreElements()) + { + let window = enumerator.getNext().QueryInterface(Ci.nsIDOMWindow); + window.setTimeout("window.close()", 0); // Closing immediately might not work due to modal windows + try + { + window.close(); + } catch(e) {} + } + } + onShutdown.done = true; + for (let i = shutdownHandlers.length - 1; i >= 0; i --) + { + try + { + shutdownHandlers[i](); + } + catch (e) + { + Cu.reportError(e); + } + } + shutdownHandlers = null; + + // Make sure to release our ties to the modules even if the sandbox cannot be + // released for some reason. + for (let key in require.scopes) + { + let scope = require.scopes[key]; + let list = Object.keys(scope); + for (let i = 0; i < list.length; i++) + scope[list[i]] = null; + } + require.scopes = null; + addonData = null; +} + +function install(params, reason) {} + +function uninstall(params, reason) +{ + const ADDON_UNINSTALL = 6; // https://developer.mozilla.org/en/Extensions/Bootstrapped_extensions#Reason_constants + if (reason == ADDON_UNINSTALL) + { + // Users often uninstall/reinstall extension to "fix" issues. Clear current + // version number on uninstall to rerun first-run actions in this scenario. + Services.prefs.clearUserPref("extensions.adblockplus.currentVersion"); + } +} +let shutdownHandlers = []; +let onShutdown = +{ + done: false, + add: function(handler) + { + if (shutdownHandlers.indexOf(handler) < 0) + shutdownHandlers.push(handler); + }, + remove: function(handler) + { + let index = shutdownHandlers.indexOf(handler); + if (index >= 0) + shutdownHandlers.splice(index, 1); + } +}; + +function require(module) +{ + let scopes = require.scopes; + if (!(module in scopes)) + { + if (module == "info") + { + let applications = {"{a23983c0-fd0e-11dc-95ff-0800200c9a66}": "fennec", "toolkit@mozilla.org": "toolkit", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}": "firefox", "dlm@emusic.com": "emusic", "{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}": "seamonkey", "{aa3c5121-dab2-40e2-81ca-7ea25febc110}": "fennec2", "{a79fe89b-6662-4ff4-8e88-09950ad4dfde}": "conkeror", "{aa5ca914-c309-495d-91cf-3141bbb04115}": "midbrowser", "songbird@songbirdnest.com": "songbird", "prism@developer.mozilla.org": "prism", "{3550f703-e582-4d05-9a08-453d09bdfdc6}": "thunderbird"}; + let appInfo = Services.appinfo; + + scopes[module] = {}; + scopes[module].exports = + { + addonID: addonData.id, + addonVersion: addonData.version, + addonRoot: addonData.resourceURI.spec, + addonName: "adblockplus", + application: (appInfo.ID in applications ? applications[appInfo.ID] : "other"), + applicationVersion: appInfo.version, + platform: "gecko", + platformVersion: appInfo.platformVersion + }; + } + else + { + let url = addonData.resourceURI.spec + "lib/" + module + ".js"; + scopes[module] = { + Cc: Cc, + Ci: Ci, + Cr: Cr, + Cu: Cu, + atob: atob, + btoa: btoa, + File: File, + require: require, + + onShutdown: onShutdown, + + XMLHttpRequest: XMLHttpRequest, + + exports: {}}; + Services.scriptloader.loadSubScript(url, scopes[module]); + } + } + return scopes[module].exports; +} +require.scopes = {__proto__: null}; +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +let RequireObserver = +{ + observe: function(subject, topic, data) + { + if (topic == "adblockplus-require") + { + subject.wrappedJSObject.exports = require(data); + } + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference, Ci.nsIObserver]) +};
\ No newline at end of file diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome.manifest b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome.manifest new file mode 100644 index 0000000..9778eda --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome.manifest @@ -0,0 +1,58 @@ +content adblockplus chrome/content/ +skin adblockplus classic/1.0 chrome/skin/ +locale adblockplus en-US chrome/locale/en-US/ +locale adblockplus ar chrome/locale/ar/ +locale adblockplus bg chrome/locale/bg/ +locale adblockplus ca chrome/locale/ca/ +locale adblockplus cs chrome/locale/cs/ +locale adblockplus da chrome/locale/da/ +locale adblockplus de chrome/locale/de/ +locale adblockplus dsb chrome/locale/dsb/ +locale adblockplus el chrome/locale/el/ +locale adblockplus en-GB chrome/locale/en-GB/ +locale adblockplus eo chrome/locale/eo/ +locale adblockplus es-AR chrome/locale/es-AR/ +locale adblockplus es-ES chrome/locale/es-ES/ +locale adblockplus es-MX chrome/locale/es-MX/ +locale adblockplus et chrome/locale/et/ +locale adblockplus eu chrome/locale/eu/ +locale adblockplus fa chrome/locale/fa/ +locale adblockplus fi chrome/locale/fi/ +locale adblockplus fr chrome/locale/fr/ +locale adblockplus fy-NL chrome/locale/fy-NL/ +locale adblockplus gl chrome/locale/gl/ +locale adblockplus he chrome/locale/he/ +locale adblockplus hr chrome/locale/hr/ +locale adblockplus hsb chrome/locale/hsb/ +locale adblockplus hu chrome/locale/hu/ +locale adblockplus hy-AM chrome/locale/hy-AM/ +locale adblockplus id chrome/locale/id/ +locale adblockplus is chrome/locale/is/ +locale adblockplus it chrome/locale/it/ +locale adblockplus ja chrome/locale/ja/ +locale adblockplus kk chrome/locale/kk/ +locale adblockplus ko chrome/locale/ko/ +locale adblockplus lt chrome/locale/lt/ +locale adblockplus lv chrome/locale/lv/ +locale adblockplus ms chrome/locale/ms/ +locale adblockplus nb-NO chrome/locale/nb-NO/ +locale adblockplus nl chrome/locale/nl/ +locale adblockplus pl chrome/locale/pl/ +locale adblockplus pt-BR chrome/locale/pt-BR/ +locale adblockplus pt-PT chrome/locale/pt-PT/ +locale adblockplus ro chrome/locale/ro/ +locale adblockplus ru chrome/locale/ru/ +locale adblockplus sk chrome/locale/sk/ +locale adblockplus sl chrome/locale/sl/ +locale adblockplus sq chrome/locale/sq/ +locale adblockplus sr chrome/locale/sr/ +locale adblockplus sv-SE chrome/locale/sv-SE/ +locale adblockplus th chrome/locale/th/ +locale adblockplus tr chrome/locale/tr/ +locale adblockplus uk chrome/locale/uk/ +locale adblockplus vi chrome/locale/vi/ +locale adblockplus zh-CN chrome/locale/zh-CN/ +locale adblockplus zh-TW chrome/locale/zh-TW/ + +# fennec settings +override chrome://adblockplus/content/ui/settings.xul chrome://adblockplus/content/ui/fennecSettings.xul application={a23983c0-fd0e-11dc-95ff-0800200c9a66} application={aa3c5121-dab2-40e2-81ca-7ea25febc110} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/errors.html b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/errors.html new file mode 100644 index 0000000..5c18929 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/errors.html @@ -0,0 +1,111 @@ +<!DOCTYPE html> + +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>Adblock Plus Errors</title> + <style type="text/css"> + .warning, .error + { + border: 1px dashed black; + margin: 5px; + padding: 2px; + white-space: pre-wrap; + } + + .error + { + background-color: #fff0f0; + } + + .warning + { + background-color: #ffffe0; + } + + button + { + float: right; + } + </style> +</head> +<body> + <button onclick="window.location.reload();">Refresh</button> + <button onclick="clearErrors();">Clear errors</button> + + <script type="application/x-javascript;version=1.7"> + let id = null; + try { + let {addonVersion, addonID} = require("info"); + + let text = "You are running Adblock Plus " + addonVersion; + text += "."; + document.write("<p>" + text + "</p>"); + + id = addonID.replace(/[\{\}]/g, ""); + } catch (e) {} + + // See https://bugzilla.mozilla.org/show_bug.cgi?id=664695 - starting with + // Gecko 19 this function returns the result, before that it wrote to a + // parameter. + let outparam = {}; + let messages = Components.classes["@mozilla.org/consoleservice;1"] + .getService(Components.interfaces.nsIConsoleService) + .getMessageArray(outparam, {}); + messages = messages || outparam.value || []; + messages = messages.filter(function(message) + { + return (message instanceof Components.interfaces.nsIScriptError && + !/^https?:/i.test(message.sourceName) && + (/adblock/i.test(message.errorMessage) || /adblock/i.test(message.sourceName) || + id && (message.errorMessage.indexOf(id) >= 0 || message.sourceName && message.sourceName.indexOf(id) >= 0))); + }); + + if (messages.length) + { + document.write("<p>Errors related to Adblock Plus:</p>"); + + for each (let message in messages) + { + let type = (message.flags & Components.interfaces.nsIScriptError.warningFlag ? "warning" : "error"); + let html = "<b>" + (type == "warning" ? "Warning:" : "Error:") + "</b><br>"; + html += encodeHTML(message.errorMessage) + "<br><br>"; + if (message.sourceLine) + html += "Source line: " + encodeHTML(message.sourceLine) + "<br>"; + if (message.sourceName) + html += "Location: " + encodeHTML(message.sourceName) + " line " + message.lineNumber + "<br>"; + html = html.replace(/(<br>)+$/, ""); + document.write("<div class='" + type + "'>" + + html + + "</div>"); + } + } + else + { + document.write("<p>No errors found.</p>"); + } + + function require(module) + { + let {Services} = Components.utils.import("resource://gre/modules/Services.jsm"); + let result = {}; + result.wrappedJSObject = result; + Services.obs.notifyObservers(result, "adblockplus-require", module); + return result.exports; + } + + function encodeHTML(string) + { + return string.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">"); + } + + function clearErrors() + { + Components.classes["@mozilla.org/consoleservice;1"] + .getService(Components.interfaces.nsIConsoleService) + .reset(); + window.location.reload(); + } + </script> +</body> +</html> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/objtabs.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/objtabs.css new file mode 100644 index 0000000..ce3a830 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/objtabs.css @@ -0,0 +1,82 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.w3.org/1999/xhtml"); + +.%%CLASSVISIBLETOP%%, .%%CLASSVISIBLEBOTTOM%%, .%%CLASSHIDDEN%% +{ + position: fixed !important; + display: block !important; + + width: auto !important; + height: auto !important; + right: auto !important; + bottom: auto !important; + z-index: 65535 !important; + float: left !important; + border-color: black !important; + border-style: solid !important; + background: white !important; + color: black !important; + cursor: pointer !important; + white-space: nowrap !important; + font-family: Arial,Helvetica,Sans-Serif !important; + font-size: 10px !important; + font-style: normal !important; + font-variant: normal !important; + font-weight: normal !important; + letter-spacing: normal !important; + line-height: normal !important; + text-align: center !important; + text-decoration: none !important; + text-indent: 0px !important; + text-transform: none !important; + direction: ltr !important; + padding: 0px 5px !important; + -moz-binding: none !important; + -moz-user-focus: none !important; + -moz-user-input: none !important; + -moz-user-select: none !important; +} + +.%%CLASSVISIBLETOP%%, .%%CLASSHIDDEN%% +{ + border-width: 1px 1px 0px 1px !important; + border-top-left-radius: 10px !important; + border-top-right-radius: 10px !important; + border-bottom-left-radius: 0px !important; + border-bottom-right-radius: 0px !important; +} + +.%%CLASSVISIBLEBOTTOM%% +{ + border-width: 0px 1px 1px 1px !important; + border-top-left-radius: 0px !important; + border-top-right-radius: 0px !important; + border-bottom-left-radius: 10px !important; + border-bottom-right-radius: 10px !important; +} + +.%%CLASSVISIBLETOP%%, .%%CLASSVISIBLEBOTTOM%% +{ + visibility: visible !important; +} + +.%%CLASSHIDDEN%% +{ + visibility: hidden !important; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/composer.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/composer.js new file mode 100644 index 0000000..f7b8087 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/composer.js @@ -0,0 +1,412 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +let nodes = null; +let item = null; +let advancedMode = false; + +function init() +{ + [nodes, item] = window.arguments; + + E("filterType").value = (!item.filter || item.filter.disabled || item.filter instanceof WhitelistFilter ? "filterlist" : "whitelist"); + E("customPattern").value = item.location; + + let insertionPoint = E("customPatternBox"); + let addSuggestion = function(address) + { + // Always drop protocol and www. from the suggestion + address = address.replace(/^[\w\-]+:\/+(?:www\.)?/, ""); + + let suggestion = document.createElement("radio"); + suggestion.setAttribute("value", address); + suggestion.setAttribute("label", address); + suggestion.setAttribute("crop", "center"); + suggestion.setAttribute("class", "suggestion"); + insertionPoint.parentNode.insertBefore(suggestion, insertionPoint); + + return address; + } + + let ioService = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService); + try + { + let suggestions = [""]; + + let url = ioService.newURI(item.location, null, null) + .QueryInterface(Ci.nsIURL); + let suffix = (url.query ? "?*" : ""); + url.query = ""; + url.ref = ""; + suggestions[1] = addSuggestion(url.spec + suffix); + + let parentURL = ioService.newURI(url.fileName == "" ? ".." : ".", null, url); + if (!parentURL.equals(url)) + suggestions[2] = addSuggestion(parentURL.spec + "*"); + else + suggestions[2] = suggestions[1]; + + let rootURL = ioService.newURI("/", null, url); + if (!rootURL.equals(parentURL) && !rootURL.equals(url)) + suggestions[3] = addSuggestion(rootURL.spec + "*"); + else + suggestions[3] = suggestions[2]; + + try + { + suggestions[4] = addSuggestion(url.host.replace(/^www\./, "") + "^"); + + // Prefer example.com^ to example.com/* + let undesired = suggestions[4].replace(/\^$/, "/*"); + for (let i = 0; i < suggestions.length - 1; i++) + if (suggestions[i] == undesired) + suggestions[i] = suggestions[4]; + + for (let child = insertionPoint.parentNode.firstChild; child; child = child.nextSibling) + { + if (child.localName == "radio" && child.getAttribute("value") == undesired) + { + child.parentNode.removeChild(child); + break; + } + } + } + catch (e) + { + suggestions[4] = suggestions[3]; + } + + try + { + let effectiveTLD = Cc["@mozilla.org/network/effective-tld-service;1"].getService(Ci.nsIEffectiveTLDService); + let host = url.host; + let baseDomain = effectiveTLD.getBaseDomainFromHost(host); + if (baseDomain != host.replace(/^www\./, "")) + suggestions[5] = addSuggestion(baseDomain + "^"); + else + suggestions[5] = suggestions[4]; + } + catch (e) + { + suggestions[5] = suggestions[4]; + } + + E("patternGroup").value = (Prefs.composer_default in suggestions ? suggestions[Prefs.composer_default] : suggestions[1]); + } + catch (e) + { + // IOService returned nsIURI - not much we can do with it + addSuggestion(item.location); + E("patternGroup").value = ""; + } + if (Prefs.composer_default == 0) + E("customPattern").focus(); + else + E("patternGroup").focus(); + + let types = []; + for (let type in Policy.localizedDescr) + { + types.push(parseInt(type)); + } + types.sort(function(a, b) { + if (a < b) + return -1; + else if (a > b) + return 1; + else + return 0; + }); + + let docDomain = item.docDomain; + let thirdParty = item.thirdParty; + + if (docDomain) + docDomain = docDomain.replace(/^www\./i, "").replace(/\.+$/, ""); + if (docDomain) + E("domainRestriction").value = docDomain; + + E("thirdParty").hidden = !thirdParty; + E("firstParty").hidden = thirdParty; + + let typeGroup = E("typeGroup"); + let defaultTypes = RegExpFilter.prototype.contentType & ~RegExpFilter.typeMap.DOCUMENT; + let isDefaultType = (RegExpFilter.typeMap[item.typeDescr] & defaultTypes) != 0; + for each (let type in types) + { + if (type == Policy.type.ELEMHIDE) + continue; + + let typeNode = document.createElement("checkbox"); + typeNode.setAttribute("value", Policy.typeDescr[type].toLowerCase().replace(/\_/g, "-")); + typeNode.setAttribute("label", Policy.localizedDescr[type].toLowerCase()); + + let typeMask = RegExpFilter.typeMap[Policy.typeDescr[type]]; + typeNode._defaultType = (typeMask & defaultTypes) != 0; + if ((isDefaultType && typeNode._defaultType) || (!isDefaultType && item.type == type)) + typeNode.setAttribute("checked", "true"); + + if (item.type == type) + typeNode.setAttribute("disabled", "true"); + typeNode.addEventListener("command", function() checkboxUpdated(this), false); + typeGroup.appendChild(typeNode); + } + + let collapseDefault = E("collapseDefault"); + collapseDefault.label = collapseDefault.getAttribute(Prefs.fastcollapse ? "label_no" : "label_yes"); + E("collapse").value = ""; + E("collapse").setAttribute("label", collapseDefault.label); + + let warning = E("disabledWarning"); + generateLinkText(warning); + warning.hidden = Prefs.enabled; + + updatePatternSelection(); +} + +function checkboxUpdated(checkbox) +{ + checkbox._lastChange = Date.now(); + updateFilter(); +} + +function updateFilter() +{ + let filter = ""; + + let type = E("filterType").value + if (type == "whitelist") + filter += "@@"; + + let pattern = E("patternGroup").value; + if (pattern == "") + pattern = E("customPattern").value; + + if (E("anchorStart").checked) + filter += E("anchorStart").flexibleAnchor ? "||" : "|"; + + filter += pattern; + + if (E("anchorEnd").checked) + filter += "|"; + + if (advancedMode) + { + let options = []; + + if (E("domainRestrictionEnabled").checked) + { + let domainRestriction = E("domainRestriction").value.replace(/[,\s]/g, "").replace(/\.+$/, ""); + if (domainRestriction) + options.push([E("domainRestrictionEnabled")._lastChange || 0, "domain=" + domainRestriction]); + } + + if (E("firstParty").checked) + options.push([E("firstParty")._lastChange || 0, "~third-party"]); + if (E("thirdParty").checked) + options.push([E("thirdParty")._lastChange || 0, "third-party"]); + + if (E("matchCase").checked) + options.push([E("matchCase")._lastChange || 0, "match-case"]); + + let collapse = E("collapse"); + disableElement(collapse, type == "whitelist", "value", ""); + if (collapse.value != "") + options.push([collapse._lastChange, collapse.value]); + + let enabledTypes = []; + let disabledTypes = []; + let forceEnabledTypes = []; + for (let typeNode = E("typeGroup").firstChild; typeNode; typeNode = typeNode.nextSibling) + { + let value = typeNode.getAttribute("value"); + if (value == "document") + disableElement(typeNode, type != "whitelist", "checked", false); + + if (!typeNode._defaultType) + { + if (typeNode.getAttribute("checked") == "true") + forceEnabledTypes.push([typeNode._lastChange || 0, value]); + } + else if (typeNode.getAttribute("checked") == "true") + enabledTypes.push([typeNode._lastChange || 0, value]); + else + disabledTypes.push([typeNode._lastChange || 0, "~" + value]); + } + if (!forceEnabledTypes.length && disabledTypes.length < enabledTypes.length) + options.push.apply(options, disabledTypes); + else + options.push.apply(options, enabledTypes); + options.push.apply(options, forceEnabledTypes); + + if (options.length) + { + options.sort(function(a, b) a[0] - b[0]); + filter += "$" + options.map(function(o) o[1]).join(","); + } + } + else + { + let defaultTypes = RegExpFilter.prototype.contentType & ~RegExpFilter.typeMap.DOCUMENT; + let isDefaultType = (RegExpFilter.typeMap[item.typeDescr] & defaultTypes) != 0; + if (!isDefaultType) + filter += "$" + item.typeDescr.toLowerCase().replace(/\_/g, "-"); + } + + filter = Filter.normalize(filter); + E("regexpWarning").hidden = !Filter.regexpRegExp.test(filter); + + let isSlow = false; + let compiledFilter = Filter.fromText(filter); + if (E("regexpWarning").hidden) + { + if (compiledFilter instanceof RegExpFilter && defaultMatcher.isSlowFilter(compiledFilter)) + isSlow = true; + } + E("shortpatternWarning").hidden = !isSlow; + + E("matchWarning").hidden = compiledFilter instanceof RegExpFilter && compiledFilter.matches(item.location, item.typeDescr, item.docDomain, item.thirdParty); + + E("filter").value = filter; +} + +function generateLinkText(element, replacement) +{ + let template = element.getAttribute("textTemplate"); + if (typeof replacement != "undefined") + template = template.replace(/\?1\?/g, replacement) + + let [, beforeLink, linkText, afterLink] = /(.*)\[link\](.*)\[\/link\](.*)/.exec(template) || [null, "", template, ""]; + while (element.firstChild && element.firstChild.nodeType != Node.ELEMENT_NODE) + element.removeChild(element.firstChild); + while (element.lastChild && element.lastChild.nodeType != Node.ELEMENT_NODE) + element.removeChild(element.lastChild); + if (!element.firstChild) + return; + + element.firstChild.textContent = linkText; + element.insertBefore(document.createTextNode(beforeLink), element.firstChild); + element.appendChild(document.createTextNode(afterLink)); +} + +function updatePatternSelection() +{ + let pattern = E("patternGroup").value; + if (pattern == "") + { + pattern = E("customPattern").value; + } + else + { + E("anchorStart").checked = true; + E("anchorEnd").checked = false; + } + + function testFilter(/**String*/ filter) /**Boolean*/ + { + return RegExpFilter.fromText(filter + "$" + item.typeDescr).matches(item.location, item.typeDescr, item.docDomain, item.thirdParty); + } + + let anchorStartCheckbox = E("anchorStart"); + if (!/^\*/.test(pattern) && testFilter("||" + pattern)) + { + disableElement(anchorStartCheckbox, false, "checked", false); + [anchorStartCheckbox.label, anchorStartCheckbox.accessKey] = Utils.splitLabel(anchorStartCheckbox.getAttribute("labelFlexible")); + anchorStartCheckbox.flexibleAnchor = true; + } + else + { + disableElement(anchorStartCheckbox, /^\*/.test(pattern) || !testFilter("|" + pattern), "checked", false); + [anchorStartCheckbox.label, anchorStartCheckbox.accessKey] = Utils.splitLabel(anchorStartCheckbox.getAttribute("labelRegular")); + anchorStartCheckbox.flexibleAnchor = false; + } + disableElement(E("anchorEnd"), /[\*\^]$/.test(pattern) || !testFilter(pattern + "|"), "checked", false); + + updateFilter(); + setAdvancedMode(document.documentElement.getAttribute("advancedMode") == "true"); +} + +function updateCustomPattern() +{ + E("patternGroup").value = ""; + updatePatternSelection(); +} + +function addFilter() { + let filter = Filter.fromText(document.getElementById("filter").value); + filter.disabled = false; + + FilterStorage.addFilter(filter); + + if (nodes) + Policy.refilterNodes(nodes, item); + + return true; +} + +function setAdvancedMode(mode) { + advancedMode = mode; + + var dialog = document.documentElement; + dialog.setAttribute("advancedMode", advancedMode); + + var button = dialog.getButton("disclosure"); + button.setAttribute("label", dialog.getAttribute(advancedMode ? "buttonlabeldisclosure_off" : "buttonlabeldisclosure_on")); + + updateFilter(); +} + +function disableElement(element, disable, valueProperty, disabledValue) { + if ((element.getAttribute("disabled") == "true") == disable) + return; + + if (disable) + { + element.setAttribute("disabled", "true"); + element._abpStoredValue = element[valueProperty]; + element[valueProperty] = disabledValue; + } + else + { + element.removeAttribute("disabled"); + if ("_abpStoredValue" in element) + element[valueProperty] = element._abpStoredValue; + delete element._abpStoredValue; + } +} + +function openPreferences() +{ + UI.openFiltersDialog(Filter.fromText(E("filter").value)); +} + +function doEnable() { + Prefs.enabled = true; + E("disabledWarning").hidden = true; +} + +/** + * Selects or unselects all type checkboxes except those + * that are disabled. + */ +function selectAllTypes(/**Boolean*/ select) +{ + for (let typeNode = E("typeGroup").firstChild; typeNode; typeNode = typeNode.nextSibling) + if (typeNode.getAttribute("disabled") != "true") + typeNode.checked = select; + updateFilter(); +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/composer.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/composer.xul new file mode 100644 index 0000000..8931e16 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/composer.xul @@ -0,0 +1,118 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<!DOCTYPE overlay SYSTEM "chrome://adblockplus/locale/composer.dtd"> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://adblockplus/skin/composer.css" type="text/css"?> + +<dialog id="abp-composer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + title="&dialog.title;" + onload="init()" + ondialogaccept="return addFilter()" + ondialogdisclosure="setAdvancedMode(!advancedMode)" + buttons="accept,cancel,disclosure" + width="800px" + height="400px" + persist="screenX screenY width height sizemode advancedMode" + advancedMode="false" + buttonlabelaccept="&accept.label;" + buttonlabeldisclosure="&advanced.label;" + buttonlabeldisclosure_on="&advanced.label;" + buttonlabeldisclosure_off="&basic.label;" + windowtype="abp:composer"> + + <script type="application/x-javascript;version=1.7" src="utils.js"/> + <script type="application/x-javascript;version=1.7" src="composer.js"/> + + <popupset> + <tooltip id="domainRestrictionHelp" label="&domainRestriction.help;"/> + </popupset> + + <description id="disabledWarning" hidden="true" textTemplate="&disabled.warning;"> + <label class="text-link" onclick="doEnable()"/> + </description> + + <hbox id="filterBox" align="center"> + <label control="filter" value="&filter.label;"/> + <textbox id="filter" flex="1" tabindex="-1" readonly="true"/> + <button id="preferences" label="&preferences.label;" oncommand="openPreferences()"/> + </hbox> + + <radiogroup orient="horizontal" id="filterType" oncommand="updateFilter()"> + <radio label="&type.filter.label;" value="filterlist" flex="1"/> + <radio label="&type.whitelist.label;" value="whitelist" flex="1"/> + </radiogroup> + + <hbox flex="1"> + <groupbox id="pattern" flex="1"> + <caption label="&pattern.label;"/> + <radiogroup id="patternGroup" flex="1" oncommand="updatePatternSelection()" style="overflow: auto;"> + <description id="patternExplanation">&pattern.explanation;</description> + <description id="regexpWarning" hidden="true">®exp.warning;</description> + <description id="shortpatternWarning" hidden="true">&shortpattern.warning;</description> + <description id="matchWarning" hidden="true">&match.warning;</description> + <hbox id="customPatternBox"> + <radio id="customPatternRadio" label="&custom.pattern.label;" value="" control="customPattern"/> + <textbox id="customPattern" flex="1" oninput="updateCustomPattern()"/> + </hbox> + </radiogroup> + <hbox id="anchorGroup" pack="start" align="baseline"> + <label value="&anchors.label;"/> + <description flex="1" style="margin: 0; padding: 0;"> + <checkbox id="anchorStart" labelRegular="&anchor.start.label;" + labelFlexible="&anchor.start.flexible.label;" + oncommand="updateFilter()"/> + <checkbox id="anchorEnd" label="&anchor.end.label;" oncommand="updateFilter()"/> + </description> + </hbox> + </groupbox> + <groupbox id="options"> + <caption label="&options.label;"/> + <checkbox id="firstParty" label="&firstParty.label;" oncommand="checkboxUpdated(this);"/> + <checkbox id="thirdParty" label="&thirdParty.label;" oncommand="checkboxUpdated(this);"/> + <checkbox id="matchCase" label="&matchCase.label;" oncommand="checkboxUpdated(this);"/> + <hbox align="baseline"> + <checkbox id="domainRestrictionEnabled" label="&domainRestriction.label;" oncommand="checkboxUpdated(this);"/> + <description class="help" value="?" tooltip="domainRestrictionHelp"/> + </hbox> + <textbox id="domainRestriction" oninput="updateFilter()"/> + + <label id="typeGroupLabel" value="&types.label;"/> + <hbox> + <label id="selectAllTypes" class="text-link" value="&selectAllTypes.label;" onclick="selectAllTypes(true)"/> + <spacer flex="1"/> + <label id="unselectAllTypes" class="text-link" value="&unselectAllTypes.label;" onclick="selectAllTypes(false)"/> + </hbox> + <vbox flex="1" id="typeGroup"/> + + <vbox> + <label control="collapse" value="&collapse.label;"/> + <menulist id="collapse" oncommand="updateFilter()"> + <menupopup> + <menuitem id="collapseDefault" value="" label_yes="&collapse.default.yes.label;" label_no="&collapse.default.no.label;" selected="true"/> + <menuitem label="&collapse.yes.label;" value="collapse"/> + <menuitem label="&collapse.no.label;" value="~collapse"/> + </menupopup> + </menulist> + </vbox> + </groupbox> + </hbox> +</dialog> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/fennecSettings.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/fennecSettings.xul new file mode 100644 index 0000000..9063ba3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/fennecSettings.xul @@ -0,0 +1,38 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<!DOCTYPE vbox [ +<!ENTITY % overlayDTD SYSTEM "chrome://adblockplus/locale/overlay.dtd"> +%overlayDTD; +<!ENTITY % filtersDTD SYSTEM "chrome://adblockplus/locale/filters.dtd"> +%filtersDTD; +]> + +<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <setting pref="extensions.adblockplus.enabled" type="bool" inverted="true" title="&disable.label;"/> + <setting type="control" title="&subscriptions.tab.label;"> + <menulist id="adblockplus-subscription-list"/> + </setting> + <setting id="adblockplus-acceptableAds" type="bool" title="&acceptableAds2.label;" + oncommand="/**See bug 762015*/ if (event.type == 'oncommand') {event = document.createEvent('Events'); event.initEvent('command', false, false); this.dispatchEvent(event);}"/> + <setting pref="extensions.adblockplus.fastcollapse" type="bool" title="&hideplaceholders.label;" + inverted="true"/> + <setting id="adblockplus-sync" type="bool" title="&sync.label;" + oncommand="/**See bug 762015*/ if (event.type == 'oncommand') {event = document.createEvent('Events'); event.initEvent('command', false, false); this.dispatchEvent(event);}"/> +</vbox> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-backup.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-backup.js new file mode 100644 index 0000000..3ef38c6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-backup.js @@ -0,0 +1,348 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/Services.jsm"); +Cu.import("resource://gre/modules/FileUtils.jsm"); + +/** + * Implementation of backup and restore functionality. + * @class + */ +var Backup = +{ + /** + * Template for menu items to be displayed in the Restore menu (for automated + * backups). + * @type Element + */ + restoreTemplate: null, + + /** + * Element after which restore items should be inserted. + * @type Element + */ + restoreInsertionPoint: null, + + /** + * Regular expression to recognize checksum comments. + */ + CHECKSUM_REGEXP: /^!\s*checksum[\s\-:]+([\w\+\/]+)/i, + + /** + * Regular expression to recognize group title comments. + */ + GROUPTITLE_REGEXP: /^!\s*\[(.*)\]((?:\/\w+)*)\s*$/, + + + /** + * Initializes backup UI. + */ + init: function() + { + this.restoreTemplate = E("restoreBackupTemplate"); + this.restoreInsertionPoint = this.restoreTemplate.previousSibling; + this.restoreTemplate.parentNode.removeChild(this.restoreTemplate); + this.restoreTemplate.removeAttribute("id"); + this.restoreTemplate.removeAttribute("hidden"); + }, + + /** + * Gets the default download dir, as used by the browser itself. + */ + getDefaultDir: function() /**nsIFile*/ + { + try + { + return Utils.prefService.getComplexValue("browser.download.lastDir", Ci.nsILocalFile); + } + catch (e) + { + // No default download location. Default to desktop. + return FileUtils.getDir("Desk", [], false); + } + }, + + /** + * Saves new default download dir after the user chose a different directory to + * save his files to. + */ + saveDefaultDir: function(/**nsIFile*/ dir) + { + try + { + Utils.prefService.setComplexValue("browser.download.lastDir", Ci.nsILocalFile, dir); + } catch(e) {}; + }, + + /** + * Called when the Restore menu is being opened, fills in "Automated backup" + * entries. + */ + fillRestorePopup: function() + { + while (this.restoreInsertionPoint.nextSibling && !this.restoreInsertionPoint.nextSibling.id) + this.restoreInsertionPoint.parentNode.removeChild(this.restoreInsertionPoint.nextSibling); + + let files = FilterStorage.getBackupFiles().reverse(); + for (let i = 0; i < files.length; i++) + { + let file = files[i]; + let item = this.restoreTemplate.cloneNode(true); + let label = item.getAttribute("label"); + label = label.replace(/\?1\?/, Utils.formatTime(file.lastModifiedTime)); + item.setAttribute("label", label); + item.addEventListener("command", function() + { + Backup.restoreAllData(file); + }, false); + this.restoreInsertionPoint.parentNode.insertBefore(item, this.restoreInsertionPoint.nextSibling); + } + }, + + /** + * Lets the user choose a file to restore filters from. + */ + restoreFromFile: function() + { + let picker = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker); + picker.init(window, E("backupButton").getAttribute("_restoreDialogTitle"), picker.modeOpen); + picker.defaultExtension = ".ini"; + picker.appendFilter(E("backupButton").getAttribute("_fileFilterComplete"), "*.ini"); + picker.appendFilter(E("backupButton").getAttribute("_fileFilterCustom"), "*.txt"); + + if (picker.show() != picker.returnCancel) + { + this.saveDefaultDir(picker.file.parent); + if (picker.filterIndex == 0) + this.restoreAllData(picker.file); + else + this.restoreCustomFilters(picker.file); + } + }, + + /** + * Restores patterns.ini from a file. + */ + restoreAllData: function(/**nsIFile*/ file) + { + let stream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream); + stream.init(file, FileUtils.MODE_RDONLY, FileUtils.PERMS_FILE, 0); + stream.QueryInterface(Ci.nsILineInputStream); + + let lines = []; + let line = {value: null}; + if (stream.readLine(line)) + lines.push(line.value); + if (stream.readLine(line)) + lines.push(line.value); + stream.close(); + + let match; + if (lines.length < 2 || lines[0] != "# Adblock Plus preferences" || !(match = /version=(\d+)/.exec(lines[1]))) + { + Utils.alert(window, E("backupButton").getAttribute("_restoreError"), E("backupButton").getAttribute("_restoreDialogTitle")); + return; + } + + let warning = E("backupButton").getAttribute("_restoreCompleteWarning"); + let minVersion = parseInt(match[1], 10); + if (minVersion > FilterStorage.formatVersion) + warning += "\n\n" + E("backupButton").getAttribute("_restoreVersionWarning"); + + if (!Utils.confirm(window, warning, E("backupButton").getAttribute("_restoreDialogTitle"))) + return; + + FilterStorage.loadFromDisk(file); + }, + + /** + * Restores custom filters from a file. + */ + restoreCustomFilters: function(/**nsIFile*/ file) + { + IO.readFromFile(file, { + seenHeader: false, + subscription: null, + process: function(line) + { + if (!this.seenHeader) + { + // This should be a header + this.seenHeader = true; + let match = /\[Adblock(?:\s*Plus\s*([\d\.]+)?)?\]/i.exec(line); + if (match) + { + let warning = E("backupButton").getAttribute("_restoreCustomWarning"); + let minVersion = match[1]; + if (minVersion && Utils.versionComparator.compare(minVersion, Utils.addonVersion) > 0) + warning += "\n\n" + E("backupButton").getAttribute("_restoreVersionWarning"); + + if (Utils.confirm(window, warning, E("backupButton").getAttribute("_restoreDialogTitle"))) + { + let subscriptions = FilterStorage.subscriptions.filter(function(s) s instanceof SpecialSubscription); + for (let i = 0; i < subscriptions.length; i++) + FilterStorage.removeSubscription(subscriptions[i]); + + return; + } + else + throw Cr.NS_BASE_STREAM_WOULD_BLOCK; + } + else + throw new Error("Invalid file"); + } + else if (line === null) + { + // End of file + if (this.subscription) + FilterStorage.addSubscription(this.subscription); + E("tabs").selectedIndex = 1; + } + else if (Backup.CHECKSUM_REGEXP.test(line)) + { + // Ignore checksums + } + else if (Backup.GROUPTITLE_REGEXP.test(line)) + { + // New group start + if (this.subscription) + FilterStorage.addSubscription(this.subscription); + + let [, title, options] = Backup.GROUPTITLE_REGEXP.exec(line); + this.subscription = SpecialSubscription.create(title); + + let defaults = []; + if (options) + options = options.split("/"); + for (let j = 0; j < options.length; j++) + if (options[j] in SpecialSubscription.defaultsMap) + defaults.push(options[j]); + if (defaults.length) + this.subscription.defaults = defaults; + } + else + { + // Regular filter + line = Filter.normalize(line); + if (line) + { + if (!this.subscription) + this.subscription = SpecialSubscription.create(Utils.getString("newGroup_title")); + this.subscription.filters.push(Filter.fromText(line)); + } + } + } + }, function(e) + { + if (e && e.result != Cr.NS_BASE_STREAM_WOULD_BLOCK) + { + Cu.reportError(e); + Utils.alert(window, E("backupButton").getAttribute("_restoreError"), E("backupButton").getAttribute("_restoreDialogTitle")); + } + }); + }, + + /** + * Lets the user choose a file to backup filters to. + */ + backupToFile: function() + { + let picker = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker); + picker.init(window, E("backupButton").getAttribute("_backupDialogTitle"), picker.modeSave); + picker.defaultExtension = ".ini"; + picker.appendFilter(E("backupButton").getAttribute("_fileFilterComplete"), "*.ini"); + picker.appendFilter(E("backupButton").getAttribute("_fileFilterCustom"), "*.txt"); + + if (picker.show() != picker.returnCancel) + { + this.saveDefaultDir(picker.file.parent); + if (picker.filterIndex == 0) + this.backupAllData(picker.file); + else + this.backupCustomFilters(picker.file); + } + }, + + /** + * Writes all patterns.ini data to a file. + */ + backupAllData: function(/**nsIFile*/ file) + { + FilterStorage.saveToDisk(file); + }, + + /** + * Writes user's custom filters to a file. + */ + backupCustomFilters: function(/**nsIFile*/ file) + { + let subscriptions = FilterStorage.subscriptions.filter(function(s) s instanceof SpecialSubscription); + let minVersion = "2.0" + let list = []; + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + let typeAddition = ""; + if (subscription.defaults) + typeAddition = "/" + subscription.defaults.join("/"); + list.push("! [" + subscription.title + "]" + typeAddition); + for (let j = 0; j < subscription.filters.length; j++) + { + let filter = subscription.filters[j]; + // Skip checksums + if (filter instanceof CommentFilter && this.CHECKSUM_REGEXP.test(filter.text)) + continue; + // Skip group headers + if (filter instanceof CommentFilter && this.GROUPTITLE_REGEXP.test(filter.text)) + continue; + list.push(filter.text); + + if (filter instanceof ElemHideException && Services.vc.compare(minVersion, "2.1") < 0) + minVersion = "2.1"; + } + } + list.unshift("[Adblock Plus " + minVersion + "]"); + + // Insert checksum. Have to add an empty line to the end of the list to + // account for the trailing newline in the file. + list.push(""); + let checksum = Utils.generateChecksum(list); + list.pop(); + if (checksum) + list.splice(1, 0, "! Checksum: " + checksum); + + function generator() + { + for (let i = 0; i < list.length; i++) + yield list[i]; + } + + IO.writeToFile(file, generator(), function(e) + { + if (e) + { + Cu.reportError(e); + Utils.alert(window, E("backupButton").getAttribute("_backupError"), E("backupButton").getAttribute("_backupDialogTitle")); + } + }); + } +}; + +window.addEventListener("load", function() +{ + Backup.init(); +}, false); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-filteractions.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-filteractions.js new file mode 100644 index 0000000..5512fda --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-filteractions.js @@ -0,0 +1,561 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * Implementation of the various actions performed on the filters. + * @class + */ +var FilterActions = +{ + /** + * Initializes filter actions. + */ + init: function() + { + let me = this; + this.treeElement.parentNode.addEventListener("keypress", function(event) + { + me.keyPress(event); + }, true); + this.treeElement.view = FilterView; + + // Work around https://bugzilla.mozilla.org/show_bug.cgi?id=777832, don't + // allow the tree to receive keypress/keydown events triggered by cursor + // keys pressed in the editor, it will call preventDefault() on them. + let propagationStopper = function(event) + { + if (event.keyCode >= event.DOM_VK_PAGE_UP && event.keyCode <= event.DOM_VK_DOWN) + event.stopPropagation(); + }; + + this.treeElement.inputField.addEventListener("keypress", propagationStopper, false); + this.treeElement.inputField.addEventListener("keydown", propagationStopper, false); + + // Create a copy of the view menu + function fixId(node, newId) + { + if (node.nodeType == node.ELEMENT_NODE) + { + if (node.hasAttribute("id")) + node.setAttribute("id", node.getAttribute("id").replace(/\d+$/, newId)); + + for (let i = 0, len = node.childNodes.length; i < len; i++) + fixId(node.childNodes[i], newId); + } + return node; + } + E("viewMenu").appendChild(fixId(E("filters-view-menu1").cloneNode(true), "2")); + }, + + /** + * <tree> element containing the filters. + * @type XULElement + */ + get treeElement() E("filtersTree"), + + /** + * Tests whether the tree is currently visible. + */ + get visible() + { + return !this.treeElement.parentNode.collapsed; + }, + + /** + * Tests whether the tree is currently focused. + * @type Boolean + */ + get focused() + { + let focused = document.commandDispatcher.focusedElement; + while (focused) + { + if ("treeBoxObject" in focused && focused.treeBoxObject == FilterView.boxObject) + return true; + focused = focused.parentNode; + } + return false; + }, + + /** + * Updates visible filter commands whenever the selected subscription changes. + */ + updateCommands: function() + { + E("filters-add-command").setAttribute("disabled", !FilterView.editable); + }, + + /** + * Called whenever filter actions menu is opened, initializes menu items. + */ + fillActionsPopup: function() + { + let editable = FilterView.editable; + let items = FilterView.selectedItems.filter(function(i) !i.filter.dummy); + items.sort(function(entry1, entry2) entry1.index - entry2.index); + let activeItems = items.filter(function(i) i.filter instanceof ActiveFilter); + + E("filters-edit-command").setAttribute("disabled", !editable || !items.length); + E("filters-delete-command").setAttribute("disabled", !editable || !items.length); + E("filters-resetHitCounts-command").setAttribute("disabled", !activeItems.length); + E("filters-moveUp-command").setAttribute("disabled", !editable || FilterView.isSorted() || !items.length || items[0].index == 0); + E("filters-moveDown-command").setAttribute("disabled", !editable || FilterView.isSorted() || !items.length || items[items.length - 1].index == FilterView.rowCount - 1); + E("filters-copy-command").setAttribute("disabled", !items.length); + E("filters-cut-command").setAttribute("disabled", !editable || !items.length); + E("filters-paste-command").setAttribute("disabled", !editable || !Utils.clipboard.hasDataMatchingFlavors(["text/unicode"], 1, Utils.clipboard.kGlobalClipboard)); + }, + + /** + * Changes sort current order for the tree. Sorts by filter column if the list is unsorted. + * @param {String} order either "ascending" or "descending" + */ + setSortOrder: function(sortOrder) + { + let col = (FilterView.sortColumn ? FilterView.sortColumn.id : "col-filter"); + FilterView.sortBy(col, sortOrder); + }, + + /** + * Toggles the visibility of a tree column. + */ + toggleColumn: function(/**String*/ id) + { + let col = E(id); + col.setAttribute("hidden", col.hidden ? "false" : "true"); + }, + + /** + * Enables or disables all filters in the current selection. + */ + selectionToggleDisabled: function() + { + if (this.treeElement.editingColumn) + return; + + let items = FilterView.selectedItems.filter(function(i) i.filter instanceof ActiveFilter); + if (items.length) + { + FilterView.boxObject.beginUpdateBatch(); + let newValue = !items[0].filter.disabled; + for (let i = 0; i < items.length; i++) + items[i].filter.disabled = newValue; + FilterView.boxObject.endUpdateBatch(); + } + }, + + /** + * Selects all entries in the list. + */ + selectAll: function() + { + if (this.treeElement.editingColumn) + return; + + FilterView.selection.selectAll(); + this.treeElement.focus(); + }, + + /** + * Starts editing the current filter. + */ + startEditing: function() + { + if (this.treeElement.editingColumn) + return; + + this.treeElement.startEditing(FilterView.selection.currentIndex, FilterView.boxObject.columns.getNamedColumn("col-filter")); + }, + + /** + * Starts editing a new filter at the current position. + */ + insertFilter: function() + { + if (!FilterView.editable || this.treeElement.editingColumn) + return; + + FilterView.insertEditDummy(); + this.startEditing(); + + let tree = this.treeElement; + let listener = function(event) + { + if (event.attrName == "editing" && tree.editingRow < 0) + { + tree.removeEventListener("DOMAttrModified", listener, false); + FilterView.removeEditDummy(); + } + } + tree.addEventListener("DOMAttrModified", listener, false); + }, + + /** + * Deletes items from the list. + */ + deleteItems: function(/**Array*/ items) + { + let oldIndex = FilterView.selection.currentIndex; + items.sort(function(entry1, entry2) entry2.index - entry1.index); + + for (let i = 0; i < items.length; i++) + FilterStorage.removeFilter(items[i].filter, FilterView._subscription, items[i].index); + + FilterView.selectRow(oldIndex); + }, + + /** + * Deletes selected filters. + */ + deleteSelected: function() + { + if (!FilterView.editable || this.treeElement.editingColumn) + return; + + let items = FilterView.selectedItems; + if (items.length == 0 || (items.length >= 2 && !Utils.confirm(window, this.treeElement.getAttribute("_removewarning")))) + return; + + this.deleteItems(items) + }, + + /** + * Resets hit counts of the selected filters. + */ + resetHitCounts: function() + { + if (this.treeElement.editingColumn) + return; + + let items = FilterView.selectedItems.filter(function(i) i.filter instanceof ActiveFilter); + if (items.length) + FilterStorage.resetHitCounts(items.map(function(i) i.filter)); + }, + + /** + * Moves items to a different position in the list. + * @param {Array} items + * @param {Integer} offset negative offsets move the items up, positive down + */ + _moveItems: function(/**Array*/ items, /**Integer*/ offset) + { + if (!items.length) + return; + + if (offset < 0) + { + items.sort(function(entry1, entry2) entry1.index - entry2.index); + let position = items[0].index + offset; + if (position < 0) + return; + + for (let i = 0; i < items.length; i++) + FilterStorage.moveFilter(items[i].filter, FilterView._subscription, items[i].index, position++); + FilterView.selection.rangedSelect(position - items.length, position - 1, false); + } + else if (offset > 0) + { + items.sort(function(entry1, entry2) entry2.index - entry1.index); + let position = items[0].index + offset; + if (position >= FilterView.rowCount) + return; + + for (let i = 0; i < items.length; i++) + FilterStorage.moveFilter(items[i].filter, FilterView._subscription, items[i].index, position--); + FilterView.selection.rangedSelect(position + 1, position + items.length, false); + } + }, + + /** + * Moves selected filters one line up. + */ + moveUp: function() + { + if (!FilterView.editable || FilterView.isEmpty || FilterView.isSorted() || this.treeElement.editingColumn) + return; + + this._moveItems(FilterView.selectedItems, -1); + }, + + /** + * Moves selected filters one line down. + */ + moveDown: function() + { + if (!FilterView.editable || FilterView.isEmpty || FilterView.isSorted() || this.treeElement.editingColumn) + return; + + this._moveItems(FilterView.selectedItems, 1); + }, + + /** + * Fills the context menu of the filters columns. + */ + fillColumnPopup: function(/**Element*/ element) + { + let suffix = element.id.match(/\d+$/)[0] || "1"; + + E("filters-view-filter" + suffix).setAttribute("checked", !E("col-filter").hidden); + E("filters-view-slow" + suffix).setAttribute("checked", !E("col-slow").hidden); + E("filters-view-enabled" + suffix).setAttribute("checked", !E("col-enabled").hidden); + E("filters-view-hitcount" + suffix).setAttribute("checked", !E("col-hitcount").hidden); + E("filters-view-lasthit" + suffix).setAttribute("checked", !E("col-lasthit").hidden); + + let sortColumn = FilterView.sortColumn; + let sortColumnID = (sortColumn ? sortColumn.id : null); + let sortDir = (sortColumn ? sortColumn.getAttribute("sortDirection") : "natural"); + E("filters-sort-none" + suffix).setAttribute("checked", sortColumn == null); + E("filters-sort-filter" + suffix).setAttribute("checked", sortColumnID == "col-filter"); + E("filters-sort-enabled" + suffix).setAttribute("checked", sortColumnID == "col-enabled"); + E("filters-sort-hitcount" + suffix).setAttribute("checked", sortColumnID == "col-hitcount"); + E("filters-sort-lasthit" + suffix).setAttribute("checked", sortColumnID == "col-lasthit"); + E("filters-sort-asc" + suffix).setAttribute("checked", sortDir == "ascending"); + E("filters-sort-desc" + suffix).setAttribute("checked", sortDir == "descending"); + }, + + /** + * Fills tooltip with the item data. + */ + fillTooltip: function(event) + { + let item = FilterView.getItemAt(event.clientX, event.clientY); + if (!item || item.filter.dummy) + { + event.preventDefault(); + return; + } + + function setMultilineContent(box, text) + { + while (box.firstChild) + box.removeChild(box.firstChild); + + for (var i = 0; i < text.length; i += 80) + { + var description = document.createElement("description"); + description.setAttribute("value", text.substr(i, 80)); + box.appendChild(description); + } + } + + setMultilineContent(E("tooltip-filter"), item.filter.text); + + E("tooltip-hitcount-row").hidden = !(item.filter instanceof ActiveFilter); + E("tooltip-lasthit-row").hidden = !(item.filter instanceof ActiveFilter) || !item.filter.lastHit; + if (item.filter instanceof ActiveFilter) + { + E("tooltip-hitcount").setAttribute("value", item.filter.hitCount) + E("tooltip-lasthit").setAttribute("value", Utils.formatTime(item.filter.lastHit)) + } + + E("tooltip-additional").hidden = false; + if (item.filter instanceof InvalidFilter && item.filter.reason) + E("tooltip-additional").textContent = item.filter.reason; + else if (item.filter instanceof RegExpFilter && defaultMatcher.isSlowFilter(item.filter)) + E("tooltip-additional").textContent = Utils.getString("filter_regexp_tooltip"); + else + E("tooltip-additional").hidden = true; + }, + + /** + * Called whenever a key is pressed on the list. + */ + keyPress: function(/**Event*/ event) + { + if (event.target != E("filtersTree")) + return; + + let modifiers = 0; + if (event.altKey) + modifiers |= SubscriptionActions._altMask; + if (event.ctrlKey) + modifiers |= SubscriptionActions._ctrlMask; + if (event.metaKey) + modifiers |= SubscriptionActions._metaMask; + + if (event.charCode == " ".charCodeAt(0) && modifiers == 0 && !E("col-enabled").hidden) + this.selectionToggleDisabled(); + else if (event.keyCode == Ci.nsIDOMKeyEvent.DOM_VK_UP && modifiers == SubscriptionActions._accelMask) + { + E("filters-moveUp-command").doCommand(); + event.preventDefault(); + event.stopPropagation(); + } + else if (event.keyCode == Ci.nsIDOMKeyEvent.DOM_VK_DOWN && modifiers == SubscriptionActions._accelMask) + { + E("filters-moveDown-command").doCommand(); + event.preventDefault(); + event.stopPropagation(); + } + }, + + /** + * Copies selected items to clipboard and optionally removes them from the + * list after that. + */ + copySelected: function(/**Boolean*/ keep) + { + let items = FilterView.selectedItems; + if (!items.length) + return; + + items.sort(function(entry1, entry2) entry1.index - entry2.index); + let text = items.map(function(i) i.filter.text).join(IO.lineBreak); + Utils.clipboardHelper.copyString(text); + + if (!keep && FilterView.editable && !this.treeElement.editingColumn) + this.deleteItems(items); + }, + + /** + * Pastes text from clipboard as filters at the current position. + */ + paste: function() + { + if (!FilterView.editable || this.treeElement.editingColumn) + return; + + let transferable = Cc["@mozilla.org/widget/transferable;1"].createInstance(Ci.nsITransferable); + transferable.addDataFlavor("text/unicode"); + + let data; + try + { + data = {}; + Utils.clipboard.getData(transferable, Utils.clipboard.kGlobalClipboard); + transferable.getTransferData("text/unicode", data, {}); + data = data.value.QueryInterface(Ci.nsISupportsString).data; + } + catch (e) { + return; + } + + let item = FilterView.currentItem; + let position = (item ? item.index : FilterView.data.length); + + let lines = data.replace(/\r/g, "").split("\n"); + for (let i = 0; i < lines.length; i++) + { + let line = Filter.normalize(lines[i]); + if (line) + { + let filter = Filter.fromText(line); + FilterStorage.addFilter(filter, FilterView._subscription, position++); + } + } + }, + + dragItems: null, + + /** + * Called whenever the user starts a drag operation. + */ + startDrag: function(/**Event*/ event) + { + let items = FilterView.selectedItems; + if (!items.length) + return; + + items.sort(function(entry1, entry2) entry1.index - entry2.index); + event.dataTransfer.setData("text/plain", items.map(function(i) i.filter.text).join(IO.lineBreak)); + this.dragItems = items; + event.stopPropagation(); + }, + + /** + * Called to check whether moving the items to the given position is possible. + */ + canDrop: function(/**Integer*/ newPosition, /**nsIDOMDataTransfer*/ dataTransfer) + { + if (!FilterView.editable || this.treeElement.editingColumn) + return false; + + // If we aren't dragging items then maybe we got filters as plain text + if (!this.dragItems) + return dataTransfer && dataTransfer.getData("text/plain"); + + if (FilterView.isEmpty || FilterView.isSorted()) + return false; + + if (newPosition < this.dragItems[0].index) + return true; + else if (newPosition > this.dragItems[this.dragItems.length - 1].index + 1) + return true; + else + return false; + }, + + /** + * Called when the user decides to drop the items. + */ + drop: function(/**Integer*/ newPosition, /**nsIDOMDataTransfer*/ dataTransfer) + { + if (!FilterView.editable || this.treeElement.editingColumn) + return; + + if (!this.dragItems) + { + // We got filters as plain text, insert them into the list + let data = (dataTransfer ? dataTransfer.getData("text/plain") : null); + if (data) + { + let lines = data.replace(/\r/g, "").split("\n"); + for (let i = 0; i < lines.length; i++) + { + let line = Filter.normalize(lines[i]); + if (line) + { + let filter = Filter.fromText(line); + FilterStorage.addFilter(filter, FilterView._subscription, newPosition++); + } + } + } + return; + } + + if (FilterView.isEmpty || FilterView.isSorted()) + return; + + if (newPosition < this.dragItems[0].index) + this._moveItems(this.dragItems, newPosition - this.dragItems[0].index); + else if (newPosition > this.dragItems[this.dragItems.length - 1].index + 1) + this._moveItems(this.dragItems, newPosition - this.dragItems[this.dragItems.length - 1].index - 1); + }, + + /** + * Called whenever the a drag operation finishes. + */ + endDrag: function(/**Event*/ event) + { + this.dragItems = null; + }, + + /** + * Called if filters have been dragged into a subscription and need to be removed. + */ + removeDraggedFilters: function() + { + if (!this.dragItems) + return; + + this.deleteItems(this.dragItems); + } +}; + +window.addEventListener("load", function() +{ + FilterActions.init(); +}, false); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-filterview.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-filterview.js new file mode 100644 index 0000000..dcee183 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-filterview.js @@ -0,0 +1,849 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +/** + * nsITreeView implementation to display filters of a particular filter + * subscription. + * @class + */ +var FilterView = +{ + /** + * Initialization function. + */ + init: function() + { + // "Manually" remove access key for col-slow tooltip, Utils.splitAllLabels() + // won't do it. + let slowColumn = document.getElementById("col-slow"); + if (slowColumn) + { + for (let attr of ["display", "tooltiptext"]) + { + let value = slowColumn.getAttribute(attr); + if (!value) + continue; + let [label, accessKey] = Utils.splitLabel(value); + if (label != value) + slowColumn.setAttribute(attr, label); + } + } + + if (this.sortProcs) + return; + + function compareText(/**Filter*/ filter1, /**Filter*/ filter2) + { + if (filter1.text < filter2.text) + return -1; + else if (filter1.text > filter2.text) + return 1; + else + return 0; + } + function compareSlow(/**Filter*/ filter1, /**Filter*/ filter2) + { + let isSlow1 = filter1 instanceof RegExpFilter && defaultMatcher.isSlowFilter(filter1); + let isSlow2 = filter2 instanceof RegExpFilter && defaultMatcher.isSlowFilter(filter2); + return isSlow1 - isSlow2; + } + function compareEnabled(/**Filter*/ filter1, /**Filter*/ filter2) + { + let hasEnabled1 = (filter1 instanceof ActiveFilter ? 1 : 0); + let hasEnabled2 = (filter2 instanceof ActiveFilter ? 1 : 0); + if (hasEnabled1 != hasEnabled2) + return hasEnabled1 - hasEnabled2; + else if (hasEnabled1) + return (filter2.disabled - filter1.disabled); + else + return 0; + } + function compareHitCount(/**Filter*/ filter1, /**Filter*/ filter2) + { + let hasHitCount1 = (filter1 instanceof ActiveFilter ? 1 : 0); + let hasHitCount2 = (filter2 instanceof ActiveFilter ? 1 : 0); + if (hasHitCount1 != hasHitCount2) + return hasHitCount1 - hasHitCount2; + else if (hasHitCount1) + return filter1.hitCount - filter2.hitCount; + else + return 0; + } + function compareLastHit(/**Filter*/ filter1, /**Filter*/ filter2) + { + let hasLastHit1 = (filter1 instanceof ActiveFilter ? 1 : 0); + let hasLastHit2 = (filter2 instanceof ActiveFilter ? 1 : 0); + if (hasLastHit1 != hasLastHit2) + return hasLastHit1 - hasLastHit2; + else if (hasLastHit1) + return filter1.lastHit - filter2.lastHit; + else + return 0; + } + + /** + * Creates a sort function from a primary and a secondary comparison function. + * @param {Function} cmpFunc comparison function to be called first + * @param {Function} fallbackFunc (optional) comparison function to be called if primary function returns 0 + * @param {Boolean} desc if true, the result of the primary function (not the secondary function) will be reversed - sorting in descending order + * @result {Function} comparison function to be used + */ + function createSortFunction(cmpFunc, fallbackFunc, desc) + { + let factor = (desc ? -1 : 1); + + return function(entry1, entry2) + { + // Comment replacements not bound to a filter always go last + let isLast1 = ("origFilter" in entry1 && entry1.filter == null); + let isLast2 = ("origFilter" in entry2 && entry2.filter == null); + if (isLast1) + return (isLast2 ? 0 : 1) + else if (isLast2) + return -1; + + let ret = cmpFunc(entry1.filter, entry2.filter); + if (ret == 0 && fallbackFunc) + return fallbackFunc(entry1.filter, entry2.filter); + else + return factor * ret; + } + } + + this.sortProcs = { + filter: createSortFunction(compareText, null, false), + filterDesc: createSortFunction(compareText, null, true), + slow: createSortFunction(compareSlow, compareText, true), + slowDesc: createSortFunction(compareSlow, compareText, false), + enabled: createSortFunction(compareEnabled, compareText, false), + enabledDesc: createSortFunction(compareEnabled, compareText, true), + hitcount: createSortFunction(compareHitCount, compareText, false), + hitcountDesc: createSortFunction(compareHitCount, compareText, true), + lasthit: createSortFunction(compareLastHit, compareText, false), + lasthitDesc: createSortFunction(compareLastHit, compareText, true) + }; + + let me = this; + let proxy = function() + { + return me._onChange.apply(me, arguments); + }; + FilterNotifier.addListener(proxy); + window.addEventListener("unload", function() + { + FilterNotifier.removeListener(proxy); + }, false); + }, + + /** + * Filter change processing. + * @see FilterNotifier.addListener() + */ + _onChange: function(action, item, param1, param2, param3) + { + switch (action) + { + case "subscription.updated": + { + if (item == this._subscription) + this.refresh(true); + break; + } + case "filter.disabled": + case "filter.hitCount": + case "filter.lastHit": + { + this.updateFilter(item); + break; + } + case "filter.added": + { + let subscription = param1; + let position = param2; + if (subscription == this._subscription) + this.addFilterAt(position, item); + break; + } + case "filter.removed": + { + let subscription = param1; + let position = param2; + if (subscription == this._subscription) + this.removeFilterAt(position); + break; + } + case "filter.moved": + { + let subscription = param1; + let oldPosition = param2; + let newPosition = param3; + if (subscription == this._subscription) + this.moveFilterAt(oldPosition, newPosition); + break; + } + } + }, + + /** + * Box object of the tree that this view is attached to. + * @type nsITreeBoxObject + */ + boxObject: null, + + /** + * Map of used cell properties to the corresponding nsIAtom representations. + */ + atoms: null, + + /** + * "Filter" to be displayed if no filter group is selected. + */ + noGroupDummy: null, + + /** + * "Filter" to be displayed if the selected group is empty. + */ + noFiltersDummy: null, + + /** + * "Filter" to be displayed for a new filter being edited. + */ + editDummy: null, + + /** + * Displayed list of filters, might be sorted. + * @type Filter[] + */ + data: [], + + /** + * <tree> element that the view is attached to. + * @type XULElement + */ + get treeElement() this.boxObject ? this.boxObject.treeBody.parentNode : null, + + /** + * Checks whether the list is currently empty (regardless of dummy entries). + * @type Boolean + */ + get isEmpty() + { + return !this._subscription || !this._subscription.filters.length; + }, + + /** + * Checks whether the filters in the view can be changed. + * @type Boolean + */ + get editable() + { + return (FilterView._subscription instanceof SpecialSubscription); + }, + + /** + * Returns current item of the list. + * @type Object + */ + get currentItem() + { + let index = this.selection.currentIndex; + if (index >= 0 && index < this.data.length) + return this.data[index]; + return null; + }, + + /** + * Returns items that are currently selected in the list. + * @type Object[] + */ + get selectedItems() + { + let items = [] + for (let i = 0; i < this.selection.getRangeCount(); i++) + { + let min = {}; + let max = {}; + this.selection.getRangeAt(i, min, max); + for (let j = min.value; j <= max.value; j++) + if (j >= 0 && j < this.data.length) + items.push(this.data[j]); + } + return items; + }, + + getItemAt: function(x, y) + { + let row = this.boxObject.getRowAt(x, y); + if (row >= 0 && row < this.data.length) + return this.data[row]; + else + return null; + }, + + _subscription: 0, + + /** + * Filter subscription being displayed. + * @type Subscription + */ + get subscription() this._subscription, + set subscription(value) + { + if (value == this._subscription) + return; + + // Make sure the editor is done before we update the list. + if (this.treeElement) + this.treeElement.stopEditing(true); + + this._subscription = value; + this.refresh(true); + }, + + /** + * Will be true if updates are outstanding because the list was hidden. + */ + _dirty: false, + + /** + * Updates internal view data after a change. + * @param {Boolean} force if false, a refresh will only happen if previous + * changes were suppressed because the list was hidden + */ + refresh: function(force) + { + if (FilterActions.visible) + { + if (!force && !this._dirty) + return; + this._dirty = false; + this.updateData(); + this.selectRow(0); + } + else + this._dirty = true; + }, + + /** + * Map of comparison functions by column ID or column ID + "Desc" for + * descending sort order. + * @const + */ + sortProcs: null, + + /** + * Column that the list is currently sorted on. + * @type Element + */ + sortColumn: null, + + /** + * Sorting function currently in use. + * @type Function + */ + sortProc: null, + + /** + * Resorts the list. + * @param {String} col ID of the column to sort on. If null, the natural order is restored. + * @param {String} direction "ascending" or "descending", if null the sort order is toggled. + */ + sortBy: function(col, direction) + { + let newSortColumn = null; + if (col) + { + newSortColumn = this.boxObject.columns.getNamedColumn(col).element; + if (!direction) + { + if (this.sortColumn == newSortColumn) + direction = (newSortColumn.getAttribute("sortDirection") == "ascending" ? "descending" : "ascending"); + else + direction = "ascending"; + } + } + + if (this.sortColumn && this.sortColumn != newSortColumn) + this.sortColumn.removeAttribute("sortDirection"); + + this.sortColumn = newSortColumn; + if (this.sortColumn) + { + this.sortColumn.setAttribute("sortDirection", direction); + this.sortProc = this.sortProcs[col.replace(/^col-/, "") + (direction == "descending" ? "Desc" : "")]; + } + else + this.sortProc = null; + + if (this.data.length > 1) + { + this.updateData(); + this.boxObject.invalidate(); + } + }, + + /** + * Inserts dummy entry into the list if necessary. + */ + addDummyRow: function() + { + if (this.boxObject && this.data.length == 0) + { + if (this._subscription) + this.data.splice(0, 0, this.noFiltersDummy); + else + this.data.splice(0, 0, this.noGroupDummy); + this.boxObject.rowCountChanged(0, 1); + } + }, + + /** + * Removes dummy entry from the list if present. + */ + removeDummyRow: function() + { + if (this.boxObject && this.isEmpty && this.data.length) + { + this.data.splice(0, 1); + this.boxObject.rowCountChanged(0, -1); + } + }, + + /** + * Inserts dummy row when a new filter is being edited. + */ + insertEditDummy: function() + { + FilterView.removeDummyRow(); + let position = this.selection.currentIndex; + if (position >= this.data.length) + position = this.data.length - 1; + if (position < 0) + position = 0; + + this.editDummy.index = (position < this.data.length ? this.data[position].index : this.data.length); + this.editDummy.position = position; + this.data.splice(position, 0, this.editDummy); + this.boxObject.rowCountChanged(position, 1); + this.selectRow(position); + }, + + /** + * Removes dummy row once the edit is finished. + */ + removeEditDummy: function() + { + let position = this.editDummy.position; + if (typeof position != "undefined" && position < this.data.length && this.data[position] == this.editDummy) + { + this.data.splice(position, 1); + this.boxObject.rowCountChanged(position, -1); + FilterView.addDummyRow(); + + this.selectRow(position); + } + }, + + /** + * Selects a row in the tree and makes sure it is visible. + */ + selectRow: function(row) + { + if (this.selection) + { + row = Math.min(Math.max(row, 0), this.data.length - 1); + this.selection.select(row); + this.boxObject.ensureRowIsVisible(row); + } + }, + + /** + * Finds a particular filter in the list and selects it. + */ + selectFilter: function(/**Filter*/ filter) + { + let index = -1; + for (let i = 0; i < this.data.length; i++) + { + if (this.data[i].filter == filter) + { + index = i; + break; + } + } + if (index >= 0) + { + this.selectRow(index); + this.treeElement.focus(); + } + }, + + /** + * Updates value of data property on sorting or filter subscription changes. + */ + updateData: function() + { + let oldCount = this.rowCount; + if (this._subscription && this._subscription.filters.length) + { + this.data = this._subscription.filters.map(function(f, i) ({index: i, filter: f})); + if (this.sortProc) + { + // Hide comments in the list, they should be sorted like the filter following them + let followingFilter = null; + for (let i = this.data.length - 1; i >= 0; i--) + { + if (this.data[i].filter instanceof CommentFilter) + { + this.data[i].origFilter = this.data[i].filter; + this.data[i].filter = followingFilter; + } + else + followingFilter = this.data[i].filter; + } + + this.data.sort(this.sortProc); + + // Restore comments + for (let i = 0; i < this.data.length; i++) + { + if ("origFilter" in this.data[i]) + { + this.data[i].filter = this.data[i].origFilter; + delete this.data[i].origFilter; + } + } + } + } + else + this.data = []; + + if (this.boxObject) + { + this.boxObject.rowCountChanged(0, -oldCount); + this.boxObject.rowCountChanged(0, this.rowCount); + } + + this.addDummyRow(); + }, + + /** + * Called to update the view when a filter property is changed. + */ + updateFilter: function(/**Filter*/ filter) + { + for (let i = 0; i < this.data.length; i++) + if (this.data[i].filter == filter) + this.boxObject.invalidateRow(i); + }, + + /** + * Called if a filter has been inserted at the specified position. + */ + addFilterAt: function(/**Integer*/ position, /**Filter*/ filter) + { + if (this.data.length == 1 && this.data[0].filter.dummy) + { + this.data.splice(0, 1); + this.boxObject.rowCountChanged(0, -1); + } + + if (this.sortProc) + { + this.updateData(); + for (let i = 0; i < this.data.length; i++) + { + if (this.data[i].index == position) + { + position = i; + break; + } + } + } + else + { + for (let i = 0; i < this.data.length; i++) + if (this.data[i].index >= position) + this.data[i].index++; + this.data.splice(position, 0, {index: position, filter: filter}); + } + this.boxObject.rowCountChanged(position, 1); + this.selectRow(position); + }, + + /** + * Called if a filter has been removed at the specified position. + */ + removeFilterAt: function(/**Integer*/ position) + { + for (let i = 0; i < this.data.length; i++) + { + if (this.data[i].index == position) + { + this.data.splice(i, 1); + this.boxObject.rowCountChanged(i, -1); + i--; + } + else if (this.data[i].index > position) + this.data[i].index--; + } + this.addDummyRow(); + }, + + /** + * Called if a filter has been moved within the list. + */ + moveFilterAt: function(/**Integer*/ oldPosition, /**Integer*/ newPosition) + { + let dir = (oldPosition < newPosition ? 1 : -1); + for (let i = 0; i < this.data.length; i++) + { + if (this.data[i].index == oldPosition) + this.data[i].index = newPosition; + else if (dir * this.data[i].index > dir * oldPosition && dir * this.data[i].index <= dir * newPosition) + this.data[i].index -= dir; + } + + if (!this.sortProc) + { + let item = this.data[oldPosition]; + this.data.splice(oldPosition, 1); + this.data.splice(newPosition, 0, item); + this.boxObject.invalidateRange(Math.min(oldPosition, newPosition), Math.max(oldPosition, newPosition)); + } + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsITreeView]), + + setTree: function(boxObject) + { + this.init(); + this.boxObject = boxObject; + + if (this.boxObject) + { + this.noGroupDummy = {index: 0, filter: {text: this.boxObject.treeBody.getAttribute("noGroupText"), dummy: true}}; + this.noFiltersDummy = {index: 0, filter: {text: this.boxObject.treeBody.getAttribute("noFiltersText"), dummy: true}}; + this.editDummy = {filter: {text: ""}}; + + let atomService = Cc["@mozilla.org/atom-service;1"].getService(Ci.nsIAtomService); + let stringAtoms = ["col-filter", "col-enabled", "col-hitcount", "col-lasthit", "type-comment", "type-filterlist", "type-whitelist", "type-elemhide", "type-elemhideexception", "type-invalid"]; + let boolAtoms = ["selected", "dummy", "slow", "disabled"]; + + this.atoms = {}; + for each (let atom in stringAtoms) + this.atoms[atom] = atomService.getAtom(atom); + for each (let atom in boolAtoms) + { + this.atoms[atom + "-true"] = atomService.getAtom(atom + "-true"); + this.atoms[atom + "-false"] = atomService.getAtom(atom + "-false"); + } + + let columns = this.boxObject.columns; + for (let i = 0; i < columns.length; i++) + if (columns[i].element.hasAttribute("sortDirection")) + this.sortBy(columns[i].id, columns[i].element.getAttribute("sortDirection")); + + this.refresh(true); + } + }, + + selection: null, + + get rowCount() this.data.length, + + getCellText: function(row, col) + { + if (row < 0 || row >= this.data.length) + return null; + + col = col.id; + if (col != "col-filter" && col != "col-slow" && col != "col-hitcount" && col != "col-lasthit") + return null; + + let filter = this.data[row].filter; + if (col == "col-filter") + return filter.text; + else if (col == "col-slow") + return (filter instanceof RegExpFilter && defaultMatcher.isSlowFilter(filter) ? "!" : null); + else if (filter instanceof ActiveFilter) + { + if (col == "col-hitcount") + return filter.hitCount; + else if (col == "col-lasthit") + return (filter.lastHit ? Utils.formatTime(filter.lastHit) : null); + } + + return null; + }, + + generateProperties: function(list, properties) + { + if (properties) + { + // Gecko 21 and below: we have an nsISupportsArray parameter, add atoms + // to that. + for (let i = 0; i < list.length; i++) + if (list[i] in this.atoms) + properties.AppendElement(this.atoms[list[i]]); + return null; + } + else + { + // Gecko 22+: no parameter, just return a string + return list.join(" "); + } + }, + + getColumnProperties: function(col, properties) + { + return this.generateProperties(["col-" + col.id], properties); + }, + + getRowProperties: function(row, properties) + { + if (row < 0 || row >= this.data.length) + return ""; + + let list = []; + let filter = this.data[row].filter; + list.push("selected-" + this.selection.isSelected(row)); + list.push("slow-" + (filter instanceof RegExpFilter && defaultMatcher.isSlowFilter(filter))); + if (filter instanceof ActiveFilter) + list.push("disabled-" + filter.disabled); + list.push("dummy-" + ("dummy" in filter)); + + if (filter instanceof CommentFilter) + list.push("type-comment"); + else if (filter instanceof BlockingFilter) + list.push("type-filterlist"); + else if (filter instanceof WhitelistFilter) + list.push("type-whitelist"); + else if (filter instanceof ElemHideFilter) + list.push("type-elemhide"); + else if (filter instanceof ElemHideException) + list.push("type-elemhideexception"); + else if (filter instanceof InvalidFilter) + list.push("type-invalid"); + + return this.generateProperties(list, properties); + }, + + getCellProperties: function(row, col, properties) + { + return this.getRowProperties(row, properties) + " " + this.getColumnProperties(col, properties); + }, + + cycleHeader: function(col) + { + let oldDirection = col.element.getAttribute("sortDirection"); + if (oldDirection == "ascending") + this.sortBy(col.id, "descending"); + else if (oldDirection == "descending") + this.sortBy(null, null); + else + this.sortBy(col.id, "ascending"); + }, + + isSorted: function() + { + return (this.sortProc != null); + }, + + canDrop: function(row, orientation, dataTransfer) + { + if (orientation == Ci.nsITreeView.DROP_ON || row < 0 || row >= this.data.length || !this.editable) + return false; + + let item = this.data[row]; + let position = (orientation == Ci.nsITreeView.DROP_BEFORE ? item.index : item.index + 1); + return FilterActions.canDrop(position, dataTransfer); + }, + + drop: function(row, orientation, dataTransfer) + { + if (orientation == Ci.nsITreeView.DROP_ON || row < 0 || row >= this.data.length || !this.editable) + return; + + let item = this.data[row]; + let position = (orientation == Ci.nsITreeView.DROP_BEFORE ? item.index : item.index + 1); + FilterActions.drop(position, dataTransfer); + }, + + isEditable: function(row, col) + { + if (row < 0 || row >= this.data.length || !this.editable) + return false; + + let filter = this.data[row].filter; + if (col.id == "col-filter") + return !("dummy" in filter); + else + return false; + }, + + setCellText: function(row, col, value) + { + if (row < 0 || row >= this.data.length || col.id != "col-filter") + return; + + let oldFilter = this.data[row].filter; + let position = this.data[row].index; + value = Filter.normalize(value); + if (!value || value == oldFilter.text) + return; + + // Make sure we don't get called recursively (see https://adblockplus.org/forum/viewtopic.php?t=9003) + this.treeElement.stopEditing(); + + let newFilter = Filter.fromText(value); + if (this.data[row] == this.editDummy) + this.removeEditDummy(); + else + FilterStorage.removeFilter(oldFilter, this._subscription, position); + FilterStorage.addFilter(newFilter, this._subscription, position); + }, + + cycleCell: function(row, col) + { + if (row < 0 || row >= this.data.length || col.id != "col-enabled") + return; + + let filter = this.data[row].filter; + if (filter instanceof ActiveFilter) + filter.disabled = !filter.disabled; + }, + + isContainer: function(row) false, + isContainerOpen: function(row) false, + isContainerEmpty: function(row) true, + getLevel: function(row) 0, + getParentIndex: function(row) -1, + hasNextSibling: function(row, afterRow) false, + toggleOpenState: function(row) {}, + getProgressMode: function() null, + getImageSrc: function() null, + isSeparator: function() false, + performAction: function() {}, + performActionOnRow: function() {}, + performActionOnCell: function() {}, + getCellValue: function() null, + setCellValue: function() {}, + selectionChanged: function() {}, +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-search.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-search.js new file mode 100644 index 0000000..4e817ac --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-search.js @@ -0,0 +1,269 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * Implementation of the filter search functionality. + * @class + */ +var FilterSearch = +{ + /** + * Initializes findbar widget. + */ + init: function() + { + let findbar = E("findbar"); + findbar.browser = FilterSearch.fakeBrowser; + + findbar.addEventListener("keypress", function(event) + { + // Work-around for bug 490047 + if (event.keyCode == KeyEvent.DOM_VK_RETURN) + event.preventDefault(); + }, false); + + // Hack to prevent "highlight all" from getting enabled + findbar.toggleHighlight = function() {}; + }, + + /** + * Performs a text search. + * @param {String} text text to be searched + * @param {Integer} direction search direction: -1 (backwards), 0 (forwards + * starting with current), 1 (forwards starting with next) + * @param {Boolean} caseSensitive if true, a case-sensitive search is performed + * @result {Integer} one of the nsITypeAheadFind constants + */ + search: function(text, direction, caseSensitive) + { + function normalizeString(string) caseSensitive ? string : string.toLowerCase(); + + function findText(text, direction, startIndex) + { + let list = E("filtersTree"); + let col = list.columns.getNamedColumn("col-filter"); + let count = list.view.rowCount; + for (let i = startIndex + direction; i >= 0 && i < count; i += (direction || 1)) + { + let filter = normalizeString(list.view.getCellText(i, col)); + if (filter.indexOf(text) >= 0) + { + FilterView.selectRow(i); + return true; + } + } + return false; + } + + text = normalizeString(text); + + // First try to find the entry in the current list + if (findText(text, direction, E("filtersTree").currentIndex)) + return Ci.nsITypeAheadFind.FIND_FOUND; + + // Now go through the other subscriptions + let result = Ci.nsITypeAheadFind.FIND_FOUND; + let subscriptions = FilterStorage.subscriptions.slice(); + subscriptions.sort(function(s1, s2) (s1 instanceof SpecialSubscription) - (s2 instanceof SpecialSubscription)); + let current = subscriptions.indexOf(FilterView.subscription); + direction = direction || 1; + for (let i = current + direction; ; i+= direction) + { + if (i < 0) + { + i = subscriptions.length - 1; + result = Ci.nsITypeAheadFind.FIND_WRAPPED; + } + else if (i >= subscriptions.length) + { + i = 0; + result = Ci.nsITypeAheadFind.FIND_WRAPPED; + } + if (i == current) + break; + + let subscription = subscriptions[i]; + for (let j = 0; j < subscription.filters.length; j++) + { + let filter = normalizeString(subscription.filters[j].text); + if (filter.indexOf(text) >= 0) + { + let list = E(subscription instanceof SpecialSubscription ? "groups" : "subscriptions"); + let node = Templater.getNodeForData(list, "subscription", subscription); + if (!node) + break; + + // Select subscription in its list and restore focus after that + let oldFocus = document.commandDispatcher.focusedElement; + E("tabs").selectedIndex = (subscription instanceof SpecialSubscription ? 1 : 0); + list.ensureElementIsVisible(node); + list.selectItem(node); + if (oldFocus) + { + oldFocus.focus(); + Utils.runAsync(oldFocus.focus, oldFocus); + } + + Utils.runAsync(findText, null, text, direction, direction == 1 ? -1 : subscription.filters.length); + return result; + } + } + } + + return Ci.nsITypeAheadFind.FIND_NOTFOUND; + } +}; + +/** + * Fake browser implementation to make findbar widget happy - searches in + * the filter list. + */ +FilterSearch.fakeBrowser = +{ + finder: + { + _resultListeners: [], + searchString: null, + caseSensitive: false, + lastResult: null, + + _notifyResultListeners: function(result, findBackwards) + { + this.lastResult = result; + for each (let listener in this._resultListeners) + listener.onFindResult(result, findBackwards); + }, + + fastFind: function(searchString, linksOnly, drawOutline) + { + this.searchString = searchString; + let result = FilterSearch.search(this.searchString, 0, + this.caseSensitive); + this._notifyResultListeners(result, false); + }, + + findAgain: function(findBackwards, linksOnly, drawOutline) + { + let result = FilterSearch.search(this.searchString, + findBackwards ? -1 : 1, + this.caseSensitive); + this._notifyResultListeners(result, findBackwards); + }, + + addResultListener: function(listener) + { + if (this._resultListeners.indexOf(listener) === -1) + this._resultListeners.push(listener); + }, + + removeResultListener: function(listener) + { + let index = this._resultListeners.indexOf(listener); + if (index !== -1) + this._resultListeners.splice(index, 1); + }, + + // Irrelevant for us + highlight: function(highlight, word) {}, + enableSelection: function() {}, + removeSelection: function() {}, + focusContent: function() {}, + keyPress: function() {} + }, + + get _lastSearchString() + { + return this.finder.searchString; + }, + + // This was used before Firefox 27 instead of the "finder" property. + fastFind: + { + get searchString() + { + return FilterSearch.fakeBrowser.finder.searchString; + }, + + set searchString(searchString) + { + FilterSearch.fakeBrowser.finder.searchString = searchString; + }, + + foundLink: null, + foundEditable: null, + + get caseSensitive() + { + return FilterSearch.fakeBrowser.finder.caseSensitive; + }, + + set caseSensitive(caseSensitive) + { + FilterSearch.fakeBrowser.finder.caseSensitive = caseSensitive; + }, + + get currentWindow() FilterSearch.fakeBrowser.contentWindow, + + find: function(searchString, linksOnly) + { + FilterSearch.fakeBrowser.finder.fastFind(searchString, linksOnly); + return FilterSearch.fakeBrowser.finder.lastResult; + }, + + findAgain: function(findBackwards, linksOnly) + { + FilterSearch.fakeBrowser.finder.findAgain(findBackwards, linksOnly); + return FilterSearch.fakeBrowser.finder.lastResult; + }, + + // Irrelevant for us + init: function() {}, + setDocShell: function() {}, + setSelectionModeAndRepaint: function() {}, + collapseSelection: function() {} + }, + currentURI: Utils.makeURI("http://example.com/"), + contentWindow: + { + focus: function() + { + E("filtersTree").focus(); + }, + scrollByLines: function(num) + { + E("filtersTree").boxObject.scrollByLines(num); + }, + scrollByPages: function(num) + { + E("filtersTree").boxObject.scrollByPages(num); + }, + }, + + addEventListener: function(event, handler, capture) + { + E("filtersTree").addEventListener(event, handler, capture); + }, + removeEventListener: function(event, handler, capture) + { + E("filtersTree").addEventListener(event, handler, capture); + }, +}; + +window.addEventListener("load", function() +{ + FilterSearch.init(); +}, false); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-subscriptionactions.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-subscriptionactions.js new file mode 100644 index 0000000..222a4a6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-subscriptionactions.js @@ -0,0 +1,606 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * Implemetation of the various actions that can be performed on subscriptions. + * @class + */ +var SubscriptionActions = +{ + /** + * Returns the subscription list currently having focus if any. + * @type Element + */ + get focusedList() + { + return E("tabs").selectedPanel.getElementsByTagName("richlistbox")[0]; + }, + + /** + * Returns the currently selected and focused subscription item if any. + * @type Element + */ + get selectedItem() + { + let list = this.focusedList; + return (list ? list.selectedItem : null); + }, + + /** + * Finds the subscription for a particular filter, selects it and selects the + * filter. + */ + selectFilter: function(/**Filter*/ filter) + { + let node = null; + let tabIndex = -1; + let subscriptions = filter.subscriptions.slice(); + subscriptions.sort(function(s1, s2) s1.disabled - s2.disabled); + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + let list = E(subscription instanceof SpecialSubscription ? "groups" : "subscriptions"); + tabIndex = (subscription instanceof SpecialSubscription ? 1 : 0); + node = Templater.getNodeForData(list, "subscription", subscription); + if (node) + break; + } + if (node) + { + E("tabs").selectedIndex = tabIndex; + Utils.runAsync(function() + { + node.parentNode.ensureElementIsVisible(node); + node.parentNode.selectItem(node); + if (!FilterActions.visible) + E("subscription-showHideFilters-command").doCommand(); + Utils.runAsync(FilterView.selectFilter, FilterView, filter); + }); + } + }, + + /** + * Updates subscription commands whenever the selected subscription changes. + * Note: this method might be called with a wrong "this" value. + */ + updateCommands: function() + { + let node = SubscriptionActions.selectedItem; + let data = Templater.getDataForNode(node); + let subscription = (data ? data.subscription : null) + E("subscription-editTitle-command").setAttribute("disabled", !subscription || + subscription.fixedTitle); + E("subscription-update-command").setAttribute("disabled", !subscription || + !(subscription instanceof DownloadableSubscription) || + Synchronizer.isExecuting(subscription.url)); + E("subscription-moveUp-command").setAttribute("disabled", !subscription || + !node || !node.previousSibling || !!node.previousSibling.id); + E("subscription-moveDown-command").setAttribute("disabled", !subscription || + !node || !node.nextSibling || !!node.nextSibling.id); + }, + + /** + * Starts title editing for the selected subscription. + */ + editTitle: function() + { + let node = this.selectedItem; + if (node) + TitleEditor.start(node); + }, + + /** + * Triggers re-download of a filter subscription. + */ + updateFilters: function(/**Node*/ node) + { + let data = Templater.getDataForNode(node || this.selectedItem); + if (data && data.subscription instanceof DownloadableSubscription) + Synchronizer.execute(data.subscription, true); + }, + + /** + * Triggers re-download of all filter subscriptions. + */ + updateAllFilters: function() + { + for (let i = 0; i < FilterStorage.subscriptions.length; i++) + { + let subscription = FilterStorage.subscriptions[i]; + if (subscription instanceof DownloadableSubscription) + Synchronizer.execute(subscription, true); + } + }, + + /** + * Sets Subscription.disabled field to a new value. + */ + setDisabled: function(/**Element*/ node, /**Boolean*/ value) + { + let data = Templater.getDataForNode(node || this.selectedItem); + if (data) + data.subscription.disabled = value; + }, + + /** + * Enables all disabled filters in a subscription. + */ + enableFilters: function(/**Element*/ node) + { + let data = Templater.getDataForNode(node); + if (!data) + return; + + let filters = data.subscription.filters; + for (let i = 0, l = filters.length; i < l; i++) + if (filters[i] instanceof ActiveFilter && filters[i].disabled) + filters[i].disabled = false; + }, + + /** + * Removes a filter subscription from the list (after a warning). + */ + remove: function(/**Node*/ node) + { + let data = Templater.getDataForNode(node || this.selectedItem); + if (data && Utils.confirm(window, Utils.getString(data.subscription instanceof SpecialSubscription ? "remove_group_warning" : "remove_subscription_warning"))) + FilterStorage.removeSubscription(data.subscription); + }, + + /** + * Adds a new filter group and allows the user to change its title. + */ + addGroup: function() + { + let subscription = SpecialSubscription.create(); + FilterStorage.addSubscription(subscription); + + let list = E("groups"); + let node = Templater.getNodeForData(list, "subscription", subscription); + if (node) + { + list.focus(); + list.ensureElementIsVisible(node); + list.selectedItem = node; + this.editTitle(); + } + }, + + /** + * Moves a filter subscription one line up. + */ + moveUp: function(/**Node*/ node) + { + node = Templater.getDataNode(node || this.selectedItem); + let data = Templater.getDataForNode(node); + if (!data) + return; + + let previousData = Templater.getDataForNode(node.previousSibling); + if (!previousData) + return; + + FilterStorage.moveSubscription(data.subscription, previousData.subscription); + }, + + /** + * Moves a filter subscription one line down. + */ + moveDown: function(/**Node*/ node) + { + node = Templater.getDataNode(node || this.selectedItem); + let data = Templater.getDataForNode(node); + if (!data) + return; + + let nextNode = node.nextSibling; + if (!Templater.getDataForNode(nextNode)) + return; + + let nextData = Templater.getDataForNode(nextNode.nextSibling); + FilterStorage.moveSubscription(data.subscription, nextData ? nextData.subscription : null); + }, + + /** + * Opens the context menu for a subscription node. + */ + openMenu: function(/**Event*/ event, /**Node*/ node) + { + node.getElementsByClassName("actionMenu")[0].openPopupAtScreen(event.screenX, event.screenY, true); + }, + + _altMask: 2, + _ctrlMask: 4, + _metaMask: 8, + get _accelMask() + { + let result = this._ctrlMask; + try { + let accelKey = Utils.prefService.getIntPref("ui.key.accelKey"); + if (accelKey == Ci.nsIDOMKeyEvent.DOM_VK_META) + result = this._metaMask; + else if (accelKey == Ci.nsIDOMKeyEvent.DOM_VK_ALT) + result = this._altMask; + } catch(e) {} + this.__defineGetter__("_accelMask", function() result); + return result; + }, + + /** + * Called when a key is pressed on the subscription list. + */ + keyPress: function(/**Event*/ event) + { + let modifiers = 0; + if (event.altKey) + modifiers |= this._altMask; + if (event.ctrlKey) + modifiers |= this._ctrlMask; + if (event.metaKey) + modifiers |= this._metaMask; + + if (event.charCode == " ".charCodeAt(0) && modifiers == 0) + { + // Ignore if Space is pressed on a button + for (let node = event.target; node; node = node.parentNode) + if (node.localName == "button") + return; + + let data = Templater.getDataForNode(this.selectedItem); + if (data) + data.subscription.disabled = !data.subscription.disabled; + } + else if (event.keyCode == Ci.nsIDOMKeyEvent.DOM_VK_UP && modifiers == this._accelMask) + { + E("subscription-moveUp-command").doCommand(); + event.preventDefault(); + event.stopPropagation(); + } + else if (event.keyCode == Ci.nsIDOMKeyEvent.DOM_VK_DOWN && modifiers == this._accelMask) + { + E("subscription-moveDown-command").doCommand(); + event.preventDefault(); + event.stopPropagation(); + } + }, + + /** + * Subscription currently being dragged if any. + * @type Subscription + */ + dragSubscription: null, + + /** + * Called when a subscription entry is dragged. + */ + startDrag: function(/**Event*/ event, /**Node*/ node) + { + let data = Templater.getDataForNode(node); + if (!data) + return; + + event.dataTransfer.addElement(node); + event.dataTransfer.setData("text/x-moz-url", data.subscription.url); + event.dataTransfer.setData("text/plain", data.subscription.title); + this.dragSubscription = data.subscription; + event.stopPropagation(); + }, + + /** + * Called when something is dragged over a subscription entry or subscriptions list. + */ + dragOver: function(/**Event*/ event) + { + // Don't allow dragging onto a scroll bar + for (let node = event.originalTarget; node; node = node.parentNode) + if (node.localName == "scrollbar") + return; + + // Don't allow dragging onto element's borders + let target = event.originalTarget; + while (target && target.localName != "richlistitem") + target = target.parentNode; + if (!target) + target = event.originalTarget; + + let styles = window.getComputedStyle(target, null); + let rect = target.getBoundingClientRect(); + if (event.clientX < rect.left + parseInt(styles.borderLeftWidth, 10) || + event.clientY < rect.top + parseInt(styles.borderTopWidth, 10) || + event.clientX > rect.right - parseInt(styles.borderRightWidth, 10) - 1 || + event.clientY > rect.bottom - parseInt(styles.borderBottomWidth, 10) - 1) + { + return; + } + + // If not dragging a subscription check whether we can accept plain text + if (!this.dragSubscription) + { + let data = Templater.getDataForNode(event.target); + if (!data || !(data.subscription instanceof SpecialSubscription) || !event.dataTransfer.getData("text/plain")) + return; + } + + event.preventDefault(); + event.stopPropagation(); + }, + + /** + * Called when something is dropped on a subscription entry or subscriptions list. + */ + drop: function(/**Event*/ event, /**Node*/ node) + { + if (!this.dragSubscription) + { + // Not dragging a subscription, maybe this is plain text that we can add as filters? + let data = Templater.getDataForNode(node); + if (data && data.subscription instanceof SpecialSubscription) + { + let lines = event.dataTransfer.getData("text/plain").replace(/\r/g, "").split("\n"); + for (let i = 0; i < lines.length; i++) + { + let line = Filter.normalize(lines[i]); + if (line) + { + let filter = Filter.fromText(line); + FilterStorage.addFilter(filter, data.subscription); + } + } + FilterActions.removeDraggedFilters(); + event.stopPropagation(); + } + return; + } + + // When dragging down we need to insert after the drop node, otherwise before it. + node = Templater.getDataNode(node); + if (node) + { + let dragNode = Templater.getNodeForData(node.parentNode, "subscription", this.dragSubscription); + if (node.compareDocumentPosition(dragNode) & node.DOCUMENT_POSITION_PRECEDING) + node = node.nextSibling; + } + + let data = Templater.getDataForNode(node); + FilterStorage.moveSubscription(this.dragSubscription, data ? data.subscription : null); + event.stopPropagation(); + }, + + /** + * Called when the drag operation for a subscription is finished. + */ + endDrag: function() + { + this.dragSubscription = null; + } +}; + +/** + * Subscription title editing functionality. + * @class + */ +var TitleEditor = +{ + /** + * List item corresponding with the currently edited subscription if any. + * @type Node + */ + subscriptionEdited: null, + + /** + * Starts editing of a subscription title. + * @param {Node} node subscription list entry or a child node + * @param {Boolean} [checkSelection] if true the editor will not start if the + * item was selected in the preceding mousedown event + */ + start: function(node, checkSelection) + { + if (this.subscriptionEdited) + this.end(true); + + let subscriptionNode = Templater.getDataNode(node); + if (!subscriptionNode || (checkSelection && !subscriptionNode._wasSelected)) + return; + + let subscription = Templater.getDataForNode(subscriptionNode).subscription; + if (!subscription || subscription.fixedTitle) + return; + + subscriptionNode.getElementsByClassName("titleBox")[0].selectedIndex = 1; + let editor = subscriptionNode.getElementsByClassName("titleEditor")[0]; + editor.value = subscription.title; + editor.setSelectionRange(0, editor.value.length); + this.subscriptionEdited = subscriptionNode; + editor.focus(); + }, + + /** + * Stops editing of a subscription title. + * @param {Boolean} save if true the entered value will be saved, otherwise dismissed + */ + end: function(save) + { + if (!this.subscriptionEdited) + return; + + let subscriptionNode = this.subscriptionEdited; + this.subscriptionEdited = null; + + let newTitle = null; + if (save) + { + newTitle = subscriptionNode.getElementsByClassName("titleEditor")[0].value; + newTitle = newTitle.replace(/^\s+/, "").replace(/\s+$/, ""); + } + + let subscription = Templater.getDataForNode(subscriptionNode).subscription + if (newTitle && newTitle != subscription.title) + subscription.title = newTitle; + else + { + subscriptionNode.getElementsByClassName("titleBox")[0].selectedIndex = 0; + subscriptionNode.parentNode.focus(); + } + }, + + /** + * Processes keypress events on the subscription title editor field. + */ + keyPress: function(/**Event*/ event) + { + // Prevent any key presses from triggering outside actions + event.stopPropagation(); + + if (event.keyCode == event.DOM_VK_RETURN || event.keyCode == event.DOM_VK_ENTER) + { + event.preventDefault(); + this.end(true); + } + else if (event.keyCode == event.DOM_VK_CANCEL || event.keyCode == event.DOM_VK_ESCAPE) + { + event.preventDefault(); + this.end(false); + } + } +}; + +/** + * Methods called when choosing and adding a new filter subscription. + * @class + */ +var SelectSubscription = +{ + /** + * Starts selection of a filter subscription to add. + */ + start: function(/**Event*/ event) + { + let panel = E("selectSubscriptionPanel"); + let list = E("selectSubscription"); + let template = E("selectSubscriptionTemplate"); + let parent = list.menupopup; + + if (panel.state == "open") + { + list.focus(); + return; + } + + // Remove existing entries if any + while (parent.lastChild) + parent.removeChild(parent.lastChild); + + // Load data + let request = new XMLHttpRequest(); + request.open("GET", "subscriptions.xml"); + request.onload = function() + { + // Avoid race condition if two downloads are started in parallel + if (panel.state == "open") + return; + + // Add subscription entries to the list + let subscriptions = request.responseXML.getElementsByTagName("subscription"); + let listedSubscriptions = []; + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + let url = subscription.getAttribute("url"); + if (!url || url in FilterStorage.knownSubscriptions) + continue; + + let localePrefix = Utils.checkLocalePrefixMatch(subscription.getAttribute("prefixes")); + let node = Templater.process(template, { + __proto__: null, + node: subscription, + localePrefix: localePrefix + }); + parent.appendChild(node); + listedSubscriptions.push(subscription); + } + let selectedNode = Utils.chooseFilterSubscription(listedSubscriptions); + list.selectedItem = Templater.getNodeForData(parent, "node", selectedNode) || parent.firstChild; + + // Show panel and focus list + let position = (Utils.versionComparator.compare(Utils.platformVersion, "2.0") < 0 ? "after_end" : "bottomcenter topleft"); + panel.openPopup(E("selectSubscriptionButton"), position, 0, 0, false, false, event); + Utils.runAsync(list.focus, list); + }; + request.send(); + }, + + /** + * Adds filter subscription that is selected. + */ + add: function() + { + E("selectSubscriptionPanel").hidePopup(); + + let data = Templater.getDataForNode(E("selectSubscription").selectedItem); + if (!data) + return; + + let subscription = Subscription.fromURL(data.node.getAttribute("url")); + if (!subscription) + return; + + FilterStorage.addSubscription(subscription); + subscription.disabled = false; + subscription.title = data.node.getAttribute("title"); + subscription.homepage = data.node.getAttribute("homepage"); + + // Make sure the subscription is visible and selected + let list = E("subscriptions"); + let node = Templater.getNodeForData(list, "subscription", subscription); + if (node) + { + list.ensureElementIsVisible(node); + list.selectedItem = node; + list.focus(); + } + + // Trigger download if necessary + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + }, + + /** + * Called if the user chooses to view the complete subscriptions list. + */ + chooseOther: function() + { + E("selectSubscriptionPanel").hidePopup(); + window.openDialog("subscriptionSelection.xul", "_blank", "chrome,centerscreen,modal,resizable,dialog=no", null, null); + }, + + /** + * Called for keys pressed on the subscription selection panel. + */ + keyPress: function(/**Event*/ event) + { + // Buttons and text links handle Enter key themselves + if (event.target.localName == "button" || event.target.localName == "label") + return; + + if (event.keyCode == event.DOM_VK_RETURN || event.keyCode == event.DOM_VK_ENTER) + { + // This shouldn't accept our dialog, only the panel + event.preventDefault(); + E("selectSubscriptionAccept").doCommand(); + } + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-subscriptionview.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-subscriptionview.js new file mode 100644 index 0000000..a1673e4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters-subscriptionview.js @@ -0,0 +1,330 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * Fills a list of filter groups and keeps it updated. + * @param {Element} list richlistbox element to be filled + * @param {Node} template template to use for the groups + * @param {Function} filter filter to decide which lists should be included + * @param {Function} listener function to be called on changes + * @constructor + */ +function ListManager(list, template, filter, listener) +{ + this._list = list; + this._template = template; + this._filter = filter; + this._listener = listener || function(){}; + + this._deck = this._list.parentNode; + + this._list.listManager = this; + this.reload(); + + let me = this; + let proxy = function() + { + return me._onChange.apply(me, arguments); + }; + FilterNotifier.addListener(proxy); + window.addEventListener("unload", function() + { + FilterNotifier.removeListener(proxy); + }, false); +} +ListManager.prototype = +{ + /** + * List element being managed. + * @type Element + */ + _list: null, + /** + * Template used for the groups. + * @type Node + */ + _template: null, + /** + * Filter function to decide which subscriptions should be included. + * @type Function + */ + _filter: null, + /** + * Function to be called whenever list contents change. + * @type Function + */ + _listener: null, + /** + * Deck switching between list display and "no entries" message. + * @type Element + */ + _deck: null, + + /** + * Completely rebuilds the list. + */ + reload: function() + { + // Remove existing entries if any + while (this._list.firstChild) + this._list.removeChild(this._list.firstChild); + + // Now add all subscriptions + let subscriptions = FilterStorage.subscriptions.filter(this._filter, this); + if (subscriptions.length) + { + for each (let subscription in subscriptions) + this.addSubscription(subscription, null); + + // Make sure first list item is selected after list initialization + Utils.runAsync(function() + { + this._list.selectItem(this._list.getItemAtIndex(this._list.getIndexOfFirstVisibleRow())); + }, this); + } + + this._deck.selectedIndex = (subscriptions.length ? 1 : 0); + this._listener(); + }, + + /** + * Adds a filter subscription to the list. + */ + addSubscription: function(/**Subscription*/ subscription, /**Node*/ insertBefore) /**Node*/ + { + let disabledFilters = 0; + for (let i = 0, l = subscription.filters.length; i < l; i++) + if (subscription.filters[i] instanceof ActiveFilter && subscription.filters[i].disabled) + disabledFilters++; + + let node = Templater.process(this._template, { + __proto__: null, + subscription: subscription, + isExternal: subscription instanceof ExternalSubscription, + downloading: Synchronizer.isExecuting(subscription.url), + disabledFilters: disabledFilters + }); + if (insertBefore) + this._list.insertBefore(node, insertBefore); + else + this._list.appendChild(node); + return node; + }, + + /** + * Map indicating subscriptions that need their "disabledFilters" property to + * be updated by next updateDisabled() call. + * @type Object + */ + _scheduledUpdateDisabled: null, + + /** + * Updates subscriptions that had some of their filters enabled/disabled. + */ + updateDisabled: function() + { + let list = this._scheduledUpdateDisabled; + this._scheduledUpdateDisabled = null; + for (let url in list) + { + let subscription = Subscription.fromURL(url); + let subscriptionNode = Templater.getNodeForData(this._list, "subscription", subscription); + if (subscriptionNode) + { + let data = Templater.getDataForNode(subscriptionNode); + let disabledFilters = 0; + for (let i = 0, l = subscription.filters.length; i < l; i++) + if (subscription.filters[i] instanceof ActiveFilter && subscription.filters[i].disabled) + disabledFilters++; + + if (disabledFilters != data.disabledFilters) + { + data.disabledFilters = disabledFilters; + Templater.update(this._template, subscriptionNode); + + if (!document.commandDispatcher.focusedElement) + this._list.focus(); + } + } + } + }, + + /** + * Subscriptions change processing. + * @see FilterNotifier.addListener() + */ + _onChange: function(action, item, param1, param2) + { + if ((action == "subscription.added" || action == "subscription.removed") && item.url == Prefs.subscriptions_exceptionsurl) + E("acceptableAds").checked = FilterStorage.subscriptions.some(function(s) s.url == Prefs.subscriptions_exceptionsurl); + + if (action == "filter.disabled") + { + if (this._scheduledUpdateDisabled == null) + { + this._scheduledUpdateDisabled = {__proto__: null}; + Utils.runAsync(this.updateDisabled, this); + } + for (let i = 0; i < item.subscriptions.length; i++) + this._scheduledUpdateDisabled[item.subscriptions[i].url] = true; + return; + } + + if (action != "load" && !this._filter(item)) + return; + + switch (action) + { + case "load": + { + this.reload(); + break; + } + case "subscription.added": + { + let index = FilterStorage.subscriptions.indexOf(item); + if (index >= 0) + { + let insertBefore = null; + for (index++; index < FilterStorage.subscriptions.length && !insertBefore; index++) + insertBefore = Templater.getNodeForData(this._list, "subscription", FilterStorage.subscriptions[index]); + this.addSubscription(item, insertBefore); + this._deck.selectedIndex = 1; + this._listener(); + } + break; + } + case "subscription.removed": + { + let node = Templater.getNodeForData(this._list, "subscription", item); + if (node) + { + let newSelection = node.nextSibling || node.previousSibling; + node.parentNode.removeChild(node); + if (!this._list.firstChild) + { + this._deck.selectedIndex = 0; + this._list.selectedIndex = -1; + } + else if (newSelection) + { + this._list.ensureElementIsVisible(newSelection); + this._list.selectedItem = newSelection; + } + this._listener(); + } + break + } + case "subscription.moved": + { + let node = Templater.getNodeForData(this._list, "subscription", item); + if (node) + { + node.parentNode.removeChild(node); + let insertBefore = null; + let index = FilterStorage.subscriptions.indexOf(item); + if (index >= 0) + for (index++; index < FilterStorage.subscriptions.length && !insertBefore; index++) + insertBefore = Templater.getNodeForData(this._list, "subscription", FilterStorage.subscriptions[index]); + this._list.insertBefore(node, insertBefore); + this._list.ensureElementIsVisible(node); + this._listener(); + } + break; + } + case "subscription.title": + case "subscription.disabled": + case "subscription.homepage": + case "subscription.lastDownload": + case "subscription.downloadStatus": + { + let subscriptionNode = Templater.getNodeForData(this._list, "subscription", item); + if (subscriptionNode) + { + Templater.getDataForNode(subscriptionNode).downloading = Synchronizer.isExecuting(item.url); + Templater.update(this._template, subscriptionNode); + + if (!document.commandDispatcher.focusedElement) + this._list.focus(); + this._listener(); + } + break; + } + case "subscription.fixedTitle": + { + SubscriptionActions.updateCommands(); + break; + } + case "subscription.updated": + { + if (this._scheduledUpdateDisabled == null) + { + this._scheduledUpdateDisabled = {__proto__: null}; + Utils.runAsync(this.updateDisabled, this); + } + this._scheduledUpdateDisabled[item.url] = true; + break; + } + } + } +}; + +/** + * Attaches list managers to the lists. + */ +ListManager.init = function() +{ + new ListManager(E("subscriptions"), + E("subscriptionTemplate"), + function(s) s instanceof RegularSubscription && !(ListManager.acceptableAdsCheckbox && s.url == Prefs.subscriptions_exceptionsurl), + SubscriptionActions.updateCommands); + new ListManager(E("groups"), + E("groupTemplate"), + function(s) s instanceof SpecialSubscription, + SubscriptionActions.updateCommands); + E("acceptableAds").checked = FilterStorage.subscriptions.some(function(s) s.url == Prefs.subscriptions_exceptionsurl); + E("acceptableAds").parentNode.hidden = !ListManager.acceptableAdsCheckbox; +}; + +/** + * Defines whether the "acceptable ads" subscription needs special treatment. + * @type Boolean + */ +ListManager.acceptableAdsCheckbox = Prefs.subscriptions_exceptionscheckbox; + +/** + * Adds or removes filter subscription allowing acceptable ads. + */ +ListManager.allowAcceptableAds = function(/**Boolean*/ allow) +{ + let subscription = Subscription.fromURL(Prefs.subscriptions_exceptionsurl); + if (!subscription) + return; + + subscription.disabled = false; + subscription.title = "Allow non-intrusive advertising"; + if (allow) + { + FilterStorage.addSubscription(subscription); + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + } + else + FilterStorage.removeSubscription(subscription); +}; + +window.addEventListener("load", ListManager.init, false); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters.js new file mode 100644 index 0000000..8830fdb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters.js @@ -0,0 +1,226 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * Initialization function, called when the window is loaded. + */ +function init() +{ + if (window.arguments && window.arguments.length) + { + let filter = window.arguments[0].wrappedJSObject; + if (filter instanceof Filter) + Utils.runAsync(SubscriptionActions.selectFilter, SubscriptionActions, filter); + } +} + +/** + * Called whenever the currently selected tab changes. + */ +function onTabChange(/**Element*/ tabbox) +{ + updateSelectedSubscription(); + + Utils.runAsync(function() + { + let panel = tabbox.selectedPanel; + if (panel) + panel.getElementsByClassName("initialFocus")[0].focus(); + SubscriptionActions.updateCommands(); + }); +} + +/** + * Called whenever the selected subscription changes. + */ +function onSelectionChange(/**Element*/ list) +{ + SubscriptionActions.updateCommands(); + updateSelectedSubscription(); + list.focus(); + + // Take elements of the previously selected item out of the tab order + if ("previousSelection" in list && list.previousSelection) + { + let elements = list.previousSelection.getElementsByClassName("tabable"); + for (let i = 0; i < elements.length; i++) + elements[i].setAttribute("tabindex", "-1"); + } + // Put elements of the selected item into tab order + if (list.selectedItem) + { + let elements = list.selectedItem.getElementsByClassName("tabable"); + for (let i = 0; i < elements.length; i++) + elements[i].removeAttribute("tabindex"); + } + list.previousSelection = list.selectedItem; +} + +/** + * Called when splitter state changes to make sure it is persisted properly. + */ +function onSplitterStateChange(/**Element*/ splitter) +{ + let state = splitter.getAttribute("state"); + if (!state) + { + splitter.setAttribute("state", "open"); + document.persist(splitter.id, "state"); + } +} + +/** + * Updates filter list when selected subscription changes. + */ +function updateSelectedSubscription() +{ + let panel = E("tabs").selectedPanel; + if (!panel) + return; + + let list = panel.getElementsByTagName("richlistbox")[0]; + if (!list) + return; + + let data = Templater.getDataForNode(list.selectedItem); + FilterView.subscription = (data ? data.subscription : null); + FilterActions.updateCommands(); +} + +/** + * Template processing functions. + * @class + */ +var Templater = +{ + /** + * Processes a template node using given data object. + */ + process: function(/**Node*/ template, /**Object*/ data) /**Node*/ + { + // Use a sandbox to resolve attributes (for convenience, not security) + let sandbox = Cu.Sandbox(window); + for (let key in data) + sandbox[key] = data[key]; + sandbox.formatTime = Utils.formatTime; + + // Clone template but remove id/hidden attributes from it + let result = template.cloneNode(true); + result.removeAttribute("id"); + result.removeAttribute("hidden"); + result._data = data; + + // Resolve any attributes of the for attr="{obj.foo}" + let conditionals = []; + let nodeIterator = document.createNodeIterator(result, NodeFilter.SHOW_ELEMENT, null, false); + for (let node = nodeIterator.nextNode(); node; node = nodeIterator.nextNode()) + { + if (node.localName == "if") + conditionals.push(node); + for (let i = 0; i < node.attributes.length; i++) + { + let attribute = node.attributes[i]; + let len = attribute.value.length; + if (len >= 2 && attribute.value[0] == "{" && attribute.value[len - 1] == "}") + { + let value = Cu.evalInSandbox(attribute.value.substr(1, len - 2), sandbox); + if (attribute.name == "condition") + value = value ? "true" : "false"; + attribute.value = value; + } + } + } + + // Process <if> tags - remove if condition is false, replace by their children + // if it is true + for each (let node in conditionals) + { + let fragment = document.createDocumentFragment(); + let condition = node.getAttribute("condition"); + if (condition == "false") + condition = false; + for (let i = 0; i < node.childNodes.length; i++) + { + let child = node.childNodes[i]; + if (child.localName == "elif" || child.localName == "else") + { + if (condition) + break; + condition = (child.localName == "elif" ? child.getAttribute("condition") : true); + if (condition == "false") + condition = false; + } + else if (condition) + fragment.appendChild(node.childNodes[i--]); + } + node.parentNode.replaceChild(fragment, node); + } + + return result; + }, + + /** + * Updates first child of a processed template if the underlying data changed. + */ + update: function(/**Node*/ template, /**Node*/ node) + { + if (!("_data" in node)) + return; + let newChild = Templater.process(template.firstChild, node._data); + delete newChild._data; + node.replaceChild(newChild, node.firstChild); + }, + + /** + * Walks up the parent chain for a node until the node corresponding with a + * template is found. + */ + getDataNode: function(/**Node*/ node) /**Node*/ + { + while (node) + { + if ("_data" in node) + return node; + node = node.parentNode; + } + return null; + }, + + /** + * Returns the data used to generate the node from a template. + */ + getDataForNode: function(/**Node*/ node) /**Object*/ + { + node = Templater.getDataNode(node); + if (node) + return node._data; + else + return null; + }, + + /** + * Returns a node that has been generated from a template using a particular + * data object. + */ + getNodeForData: function(/**Node*/ parent, /**String*/ property, /**Object*/ data) /**Node*/ + { + for (let child = parent.firstChild; child; child = child.nextSibling) + if ("_data" in child && property in child._data && child._data[property] == data) + return child; + return null; + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters.xul new file mode 100644 index 0000000..ce65659 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/filters.xul @@ -0,0 +1,400 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://adblockplus/skin/filters.css" type="text/css"?> + +<!DOCTYPE dialog SYSTEM "chrome://adblockplus/locale/filters.dtd"> + +<dialog + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + title="&dialog.title;" + id="abpFiltersWindow" + onload="init()" + buttons="accept" + width="950" + height="450" + persist="screenX screenY width height sizemode" + windowtype="abp:filters"> + +<script type="application/x-javascript;version=1.7" src="utils.js"/> +<script type="application/x-javascript;version=1.7" src="filters.js"/> +<script type="application/x-javascript;version=1.7" src="filters-subscriptionview.js"/> +<script type="application/x-javascript;version=1.7" src="filters-subscriptionactions.js"/> +<script type="application/x-javascript;version=1.7" src="filters-filterview.js"/> +<script type="application/x-javascript;version=1.7" src="filters-filteractions.js"/> +<script type="application/x-javascript;version=1.7" src="filters-backup.js"/> +<script type="application/x-javascript;version=1.7" src="filters-search.js"/> + +<keyset id="filtersKeyset"> + <key id="subscription-update-key" key="T" modifiers="accel" command="subscription-update-command"/> + <key id="subscription-update-all-key" key="T" modifiers="accel,shift" command="subscription-update-all-command"/> + <key id="edit-key" keycode="VK_F2" oncommand="E(FilterActions.focused ? 'filters-edit-command' : 'subscription-editTitle-command').doCommand();"/> + <key id="delete-key" keycode="VK_DELETE" oncommand="E(FilterActions.focused ? 'filters-delete-command' : 'subscription-delete-command').doCommand();"/> + <key id="subscription-showHideFilters-key" key="R" modifiers="accel" command="subscription-showHideFilters-command"/> + <key id="moveUp-key" keycode="VK_UP" modifiers="accel"/> + <key id="moveDown-key" keycode="VK_DOWN" modifiers="accel"/> + <key id="filters-add-key" keycode="VK_INSERT" oncommand="E('filters-add-command').doCommand();"/> + <key id="filters-selectAll-key" key="A" modifiers="accel" oncommand="if (FilterActions.focused) E('filters-selectAll-command').doCommand();"/> + <key id="filters-copy-key" key="C" modifiers="accel" oncommand="if (FilterActions.focused) E('filters-copy-command').doCommand();"/> + <key id="filters-cut-key" key="X" modifiers="accel" oncommand="if (FilterActions.focused) E('filters-cut-command').doCommand();"/> + <key id="filters-paste-key" key="V" modifiers="accel" oncommand="if (FilterActions.focused) E('filters-paste-command').doCommand();"/> + <key id="backup-key" key="E" modifiers="accel" oncommand="E('backup').doCommand();"/> + <key id="restore-key" key="I" modifiers="accel" oncommand="E('restoreOwnBackup').doCommand();"/> + <key id="find-key" key="F" modifiers="accel" oncommand="if (FilterActions.visible) E('find-command').doCommand();"/> + <key id="find-again-key" key="G" modifiers="accel" oncommand="if (FilterActions.visible) E('find-again-command').doCommand();"/> + <key id="find-previous-key" key="G" modifiers="accel,shift" oncommand="if (FilterActions.visible) E('find-previous-command').doCommand();"/> + <key id="find-again-key2" keycode="VK_F3" oncommand="if (FilterActions.visible) E('find-again-command').doCommand();"/> + <key id="find-previous-key2" keycode="VK_F3" modifiers="shift" oncommand="if (FilterActions.visible) E('find-previous-command').doCommand();"/> +</keyset> + +<commandset id="filtersCommandset"> + <command id="subscription-update-command" oncommand="SubscriptionActions.updateFilters();"/> + <command id="subscription-update-all-command" oncommand="SubscriptionActions.updateAllFilters();"/> + <command id="subscription-editTitle-command" oncommand="SubscriptionActions.editTitle();"/> + <command id="subscription-delete-command" oncommand="SubscriptionActions.remove();"/> + <command id="subscription-showHideFilters-command" oncommand="E('filtersGrippy').doCommand();"/> + <command id="subscription-moveUp-command" oncommand="SubscriptionActions.moveUp();"/> + <command id="subscription-moveDown-command" oncommand="SubscriptionActions.moveDown();"/> + <command id="subscription-add-command" oncommand="SelectSubscription.start(event);"/> + <command id="subscription-addSelected-command" oncommand="SelectSubscription.add();"/> + <command id="subscription-addOther-command" oncommand="SelectSubscription.chooseOther();"/> + <command id="group-add-command" oncommand="SubscriptionActions.addGroup();"/> + <command id="filters-selectAll-command" oncommand="FilterActions.selectAll();"/> + <command id="filters-edit-command" oncommand="FilterActions.startEditing();"/> + <command id="filters-add-command" oncommand="FilterActions.insertFilter();"/> + <command id="filters-delete-command" oncommand="FilterActions.deleteSelected();"/> + <command id="filters-resetHitCounts-command" oncommand="FilterActions.resetHitCounts();"/> + <command id="filters-moveUp-command" oncommand="FilterActions.moveUp();"/> + <command id="filters-moveDown-command" oncommand="FilterActions.moveDown();"/> + <command id="filters-copy-command" oncommand="FilterActions.copySelected(true);"/> + <command id="filters-cut-command" oncommand="FilterActions.copySelected(false);"/> + <command id="filters-paste-command" oncommand="FilterActions.paste();"/> + <command id="find-command" oncommand="E('findbar').startFind(E('findbar').FIND_NORMAL)"/> + <command id="find-again-command" oncommand="E('findbar').onFindAgainCommand(false)"/> + <command id="find-previous-command" oncommand="E('findbar').onFindAgainCommand(true)"/> +</commandset> + +<popupset id="filtersPopupset"> + <menupopup id="filters-view-menu1" onpopupshowing="FilterActions.fillColumnPopup(this);"> + <menuitem id="filters-view-filter1" label="&filter.column;" type="checkbox" disabled="true"/> + <menuitem id="filters-view-slow1" label="&slow.column;" type="checkbox" oncommand="FilterActions.toggleColumn('col-slow')"/> + <menuitem id="filters-view-enabled1" label="&enabled.column;" type="checkbox" oncommand="FilterActions.toggleColumn('col-enabled')"/> + <menuitem id="filters-view-hitcount1" label="&hitcount.column;" type="checkbox" oncommand="FilterActions.toggleColumn('col-hitcount')"/> + <menuitem id="filters-view-lasthit1" label="&lasthit.column;" type="checkbox" oncommand="FilterActions.toggleColumn('col-lasthit')"/> + <menuseparator/> + <menu id="filters-sort-menu1" label="&sort.label;"> + <menupopup id="filters-sort-popup1"> + <menuitem id="filters-sort-none1" label="&sort.none.label;" type="radio" name="sortColumn" oncommand="FilterView.sortBy(null)"/> + <menuitem id="filters-sort-filter1" label="&filter.column;" type="radio" name="sortColumn" oncommand="FilterView.sortBy('col-filter')"/> + <menuitem id="filters-sort-slow1" label="&slow.column;" type="radio" name="sortColumn" oncommand="FilterView.sortBy('col-slow')"/> + <menuitem id="filters-sort-enabled1" label="&enabled.column;" type="radio" name="sortColumn" oncommand="FilterView.sortBy('col-enabled')"/> + <menuitem id="filters-sort-hitcount1" label="&hitcount.column;" type="radio" name="sortColumn" oncommand="FilterView.sortBy('col-hitcount')"/> + <menuitem id="filters-sort-lasthit1" label="&lasthit.column;" type="radio" name="sortColumn" oncommand="FilterView.sortBy('col-lasthit')"/> + <menuseparator/> + <menuitem id="filters-sort-asc1" label="&sort.ascending.label;" type="radio" name="sortOrder" oncommand="FilterActions.setSortOrder('ascending')"/> + <menuitem id="filters-sort-desc1" label="&sort.descending.label;" type="radio" name="sortOrder" oncommand="FilterActions.setSortOrder('descending')"/> + </menupopup> + </menu> + </menupopup> + <tooltip id="filtersTooltip" onpopupshowing="FilterActions.fillTooltip(event);"> + <grid> + <columns> + <column/> + <column flex="1"/> + </columns> + <rows> + <row id="tooltip-filter-row" align="top"> + <label class="tooltipLabel" value="&filter.column;"/> + <vbox id="tooltip-filter"/> + </row> + <row id="tooltip-hitcount-row"> + <label class="tooltipLabel" value="&hitcount.column;"/> + <description id="tooltip-hitcount"/> + </row> + <row id="tooltip-lasthit-row"> + <label class="tooltipLabel" value="&lasthit.column;"/> + <description id="tooltip-lasthit"/> + </row> + </rows> + </grid> + + <description id="tooltip-additional"/> + </tooltip> +</popupset> + +<hbox id="content" flex="1"> + <tabbox id="tabs" flex="1" persist="selectedIndex"> + <tabs onselect="onTabChange(this.parentNode);"> + <tab label="&subscriptions.tab.label;"/> + <tab label="&filters.tab.label;"/> + </tabs> + <tabpanels flex="1"> + <tabpanel id="subscriptionsTab" orient="vertical" flex="1"> + <hbox pack="end"> + <button id="selectSubscriptionButton" label="&addSubscription.label;…" command="subscription-add-command"/> + </hbox> + + <panel id="selectSubscriptionPanel" type="arrow" position="bottomcenter topleft" + orient="vertical" onkeypress="SelectSubscription.keyPress(event);"> + <menuitem id="selectSubscriptionTemplate" hidden="true" + class="{localePrefix ? 'localeMatch' : ''}" + label="{node.getAttribute('title')}" + value="{node.getAttribute('url')}"> + <label class="selectSubscriptionItem" value="{node.getAttribute('title') + ' (' + node.getAttribute('specialization') + ')'}"/> + </menuitem> + <menulist id="selectSubscription"> + <menupopup/> + </menulist> + <hbox align="baseline"> + <label class="text-link" value="&addSubscriptionOther.label;" onclick="E('subscription-addOther-command').doCommand();"/> + <spacer flex="1"/> + <button id="selectSubscriptionAccept" default="true" label="&addSubscriptionAdd.label;" command="subscription-addSelected-command"/> + <spacer flex="1"/> + <button label="&addSubscriptionCancel.label;" oncommand="E('selectSubscriptionPanel').hidePopup();"/> + </hbox> + </panel> + + <richlistitem id="subscriptionTemplate" class="subscription" hidden="true" orient="vertical" + onmousedown="this._wasSelected = (this.parentNode.selectedItem == this);" + ondragstart="SubscriptionActions.startDrag(event, this);" + ondragend="SubscriptionActions.endDrag();" + ondragover="SubscriptionActions.dragOver(event);" + ondrop="SubscriptionActions.drop(event, this);" + oncontextmenu="SubscriptionActions.openMenu(event, this);"> + <vbox class="{subscription.disabled ? 'disabled' : ''}"> + <hbox align="center"> + <checkbox label="&subscription.enabled.label;" class="enabledCheckbox tabable" tabindex="-1" + checked="{subscription.disabled ? 'false' : 'true'}" oncommand="SubscriptionActions.setDisabled(this, !this.checked);"/> + + <vbox flex="1"> + <hbox align="center"> + <deck class="titleBox" flex="1" selectedIndex="0" onselect="event.stopPropagation();"> + <description ondblclick="if (event.button == 0) TitleEditor.start(this, true);"> + <description class="title" value="{subscription.title}" flex="1" crop="end"/> + (<if condition="{isExternal}"> + <description value="&subscription.external.label;"/> + <else/> + <if condition="{subscription.homepage}"> + <description class="link" value="&subscription.homepage.label;" + _url="{subscription.homepage}" tooltiptext="{subscription.homepage}" + onclick="if (event.button == 0) { event.stopPropagation();UI.loadInBrowser(this.getAttribute('_url')); }"/>,  + </if> + <description class="link" value="&subscription.source.label;" + _url="{subscription.url}" tooltiptext="{subscription.url}" + onclick="if (event.button == 0) { event.stopPropagation();UI.loadInBrowser(this.getAttribute('_url')); }"/> + </if>) + </description> + <textbox oncontextmenu="event.stopPropagation();" class="titleEditor" onkeypress="TitleEditor.keyPress(event);" onblur="TitleEditor.end(true);"/> + </deck> + </hbox> + <hbox align="center"> + <description flex="1" class="status"> + <description value="&subscription.lastDownload.label;"/>  + <if condition="{downloading}"> + <description value="&subscription.lastDownload.inProgress;"/> + <elif condition="{!subscription.lastDownload}"/> + <description value="&subscription.lastDownload.unknown;"/> + <else/> + <description value="{formatTime(subscription.lastDownload * 1000)}"/> + <if condition="{subscription.downloadStatus}"> + <description> +  (<if condition="{subscription.downloadStatus == 'synchronize_invalid_url'}"> + <description value="&subscription.lastDownload.invalidURL;"/> + <elif condition="{subscription.downloadStatus == 'synchronize_connection_error'}"/> + <description value="&subscription.lastDownload.connectionError;"/> + <elif condition="{subscription.downloadStatus == 'synchronize_invalid_data'}"/> + <description value="&subscription.lastDownload.invalidData;"/> + <elif condition="{subscription.downloadStatus == 'synchronize_checksum_mismatch'}"/> + <description value="&subscription.lastDownload.checksumMismatch;"/> + <else/> <!-- synchronize_ok --> + <description value="&subscription.lastDownload.success;"/> + </if>) + </description> + </if> + </if> + </description> + </hbox> + </vbox> + + <button class="actionButton tabable" type="menu" label="&subscription.actions.label;" tabindex="-1"> + <menupopup class="actionMenu"> + <menuitem label="&subscription.editTitle.label;" key="edit-key" command="subscription-editTitle-command"/> + <menuitem label="&subscription.update.label;" key="subscription-update-key" command="subscription-update-command"/> + <menuitem label="&subscription.showHideFilters.label;" key="subscription-showHideFilters-key" command="subscription-showHideFilters-command"/> + <menuitem label="&subscription.delete.label;…" key="delete-key" command="subscription-delete-command"/> + <menuseparator/> + <menuitem label="&subscription.moveUp.label;" key="moveUp-key" command="subscription-moveUp-command"/> + <menuitem label="&subscription.moveDown.label;" key="moveDown-key" command="subscription-moveDown-command"/> + </menupopup> + </button> + </hbox> + + <description class="warning" hidden="{!subscription.upgradeRequired}">&subscription.minVersion.warning;</description> + <description class="warning" hidden="{!disabledFilters}"> + &subscription.disabledFilters.warning; + <description class="link" value="&subscription.disabledFilters.enable;" onclick="SubscriptionActions.enableFilters(this);"/> + </description> + </vbox> + </richlistitem> + + <deck id="noSubscriptionsDeck" flex="1"> + <description flex="1">&noSubscriptions.text;</description> + <richlistbox id="subscriptions" class="initialFocus" flex="1" + onselect="onSelectionChange(this);" + ondragover="SubscriptionActions.dragOver(event);" + ondrop="SubscriptionActions.drop(event, null);" + onkeypress="SubscriptionActions.keyPress(event);"> + </richlistbox> + </deck> + + <!--description> + <checkbox id="acceptableAds" label="&acceptableAds2.label;" oncommand="ListManager.allowAcceptableAds(this.checked);"/> + <label class="text-link" value="&viewList.label;" onclick="UI.loadInBrowser(Prefs.subscriptions_exceptionsurl);"/> + <label class="text-link" value="&readMore.label;" onclick="UI.loadDocLink('acceptable_ads');"/> + </description--> + </tabpanel> + <tabpanel id="filtersTab" orient="vertical" flex="1"> + <hbox pack="end"> + <button id="addGroupButton" label="&addGroup.label;" command="group-add-command"/> + </hbox> + + <richlistitem id="groupTemplate" class="subscription" hidden="true" orient="vertical" + onmousedown="this._wasSelected = (this.parentNode.selectedItem == this);" + ondragstart="SubscriptionActions.startDrag(event, this);" + ondragend="SubscriptionActions.endDrag();" + ondragover="SubscriptionActions.dragOver(event);" + ondrop="SubscriptionActions.drop(event, this);" + oncontextmenu="SubscriptionActions.openMenu(event, this);"> + <hbox class="{subscription.disabled ? 'disabled' : ''}" align="center"> + <checkbox label="&subscription.enabled.label;" class="enabledCheckbox tabable" tabindex="-1" + checked="{subscription.disabled ? 'false' : 'true'}" oncommand="SubscriptionActions.setDisabled(this, !this.checked);"/> + <hbox align="center" flex="1"> + <deck class="titleBox" flex="1" selectedIndex="0" onselect="event.stopPropagation();"> + <description class="title" value="{subscription.title}" crop="end" ondblclick="if (event.button == 0) TitleEditor.start(this, true);"/> + <textbox oncontextmenu="event.stopPropagation();" class="titleEditor" onkeypress="TitleEditor.keyPress(event);" onblur="TitleEditor.end(true);"/> + </deck> + </hbox> + <button class="actionButton tabable" type="menu" label="&subscription.actions.label;" tabindex="-1"> + <menupopup class="actionMenu"> + <menuitem label="&subscription.editTitle.label;" key="edit-key" command="subscription-editTitle-command"/> + <menuitem label="&subscription.showHideFilters.label;" key="subscription-showHideFilters-key" command="subscription-showHideFilters-command"/> + <menuitem label="&subscription.delete.label;…" key="delete-key" command="subscription-delete-command"/> + <menuseparator/> + <menuitem label="&subscription.moveUp.label;" key="moveUp-key" command="subscription-moveUp-command"/> + <menuitem label="&subscription.moveDown.label;" key="moveDown-key" command="subscription-moveDown-command"/> + </menupopup> + </button> + </hbox> + </richlistitem> + + <deck id="noFiltersDeck" flex="1"> + <description flex="1">&noFilters.text;</description> + <richlistbox id="groups" class="initialFocus" flex="1" + onselect="onSelectionChange(this);" + ondragover="SubscriptionActions.dragOver(event);" + ondrop="SubscriptionActions.drop(event, null);" + onkeypress="SubscriptionActions.keyPress(event);"> + </richlistbox> + </deck> + </tabpanel> + </tabpanels> + </tabbox> + + <splitter id="filtersSplitter" persist="state" orient="horizontal" collapse="after" state="collapsed" oncommand="FilterView.refresh();onSplitterStateChange(this);"> + <grippy id="filtersGrippy"/> + </splitter> + + <vbox id="filtersContainer" persist="width height" width="500"> + <hbox pack="end"> + <button id="findButton" label="&find.label;" command="find-command"/> + <button id="filterActionButton" type="menu" label="&filter.actions.label;"> + <menupopup id="filterActionMenu" onpopupshowing="FilterActions.fillActionsPopup();"> + <menuitem label="&filter.edit.label;" key="edit-key" command="filters-edit-command"/> + <menuitem label="&filter.cut.label;" key="filters-cut-key" command="filters-cut-command"/> + <menuitem label="&filter.copy.label;" key="filters-copy-key" command="filters-copy-command"/> + <menuitem label="&filter.paste.label;" key="filters-paste-key" command="filters-paste-command"/> + <menuitem label="&filter.delete.label;" key="delete-key" command="filters-delete-command"/> + <menuseparator/> + <menuitem label="&filter.selectAll.label;" key="filters-selectAll-key" command="filters-selectAll-command"/> + <menuitem label="&filter.resetHitCounts.label;" command="filters-resetHitCounts-command"/> + <menuseparator/> + <menuitem label="&filter.moveUp.label;" key="moveUp-key" command="filters-moveUp-command"/> + <menuitem label="&filter.moveDown.label;" key="moveDown-key" command="filters-moveDown-command"/> + <menuseparator/> + <menu id="viewMenu" label="&viewMenu.label;"/> + </menupopup> + </button> + <button id="addFilterButton" label="&addFilter.label;" command="filters-add-command"/> + </hbox> + <tree id="filtersTree" + flex="1" + editable="true" + seltype="multiple" + enableColumnDrag="true" + hidecolumnpicker="true" + _removewarning="&filters.remove.warning;"> + <treecols context="filters-view-menu1"> + <treecol id="col-enabled" label="&enabled.column;" cycler="true" flex="0" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="col-filter" label="&filter.column;" flex="10" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="col-slow" label="!" display="&slow.column;" tooltiptext="&slow.column;" flex="0" width="16" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="col-hitcount" label="&hitcount.column;" flex="0" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="col-lasthit" label="&lasthit.column;" hidden="true" flex="4" persist="width ordinal sortDirection hidden"/> + </treecols> + + <treechildren id="filtersTreeChildren" + oncontextmenu="E('filterActionMenu').openPopupAtScreen(event.screenX, event.screenY, true);" + tooltip="filtersTooltip" + noGroupText="&noGroupSelected.text;" + noFiltersText="&noFiltersInGroup.text;" + ondragstart="FilterActions.startDrag(event);" + ondragend="FilterActions.endDrag(event);"/> + </tree> + </vbox> +</hbox> + +<findbar id="findbar"/> + +<hbox id="buttons"> + <button id="backupButton" type="menu" + label="&backupButton.label;" + _backupDialogTitle="&backup.label;" _restoreDialogTitle="&restore.own.label;" + _fileFilterComplete="&backup.complete.title;" _fileFilterCustom="&backup.custom.title;" + _backupError="&backup.error;" _restoreError="&restore.error;" + _restoreCompleteWarning="&restore.complete.warning;" _restoreCustomWarning="&restore.custom.warning;" + _restoreVersionWarning="&restore.minVersion.warning;" + oncommand="if (event.target == this) Utils.runAsync(function() this.open = true, this);"> + <menupopup onpopupshowing="Backup.fillRestorePopup();"> + <menuitem id="backup" key="backup-key" label="&backup.label;…" oncommand="Backup.backupToFile();"/> + <menuseparator/> + <menuitem id="restoreBackupTemplate" label="&restore.default.label;" hidden="true"/> + <menuitem id="restoreOwnBackup" key="restore-key" label="&restore.own.label;…" oncommand="Backup.restoreFromFile();"/> + </menupopup> + </button> + + <spacer flex="1"/> + + <button id="close" dlgtype="accept" label="&close.label;"/> +</hbox> + +</dialog> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/firstRun.html b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/firstRun.html new file mode 100644 index 0000000..36f5cf7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/firstRun.html @@ -0,0 +1,141 @@ +<!DOCTYPE html> +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<html> + <head> + <title class="i18n_firstRun_title"></title> + <meta charset="utf-8"> + <link type="text/css" href="/skin/firstRun.css" rel="stylesheet"/> + <script type="text/javascript" src="utils.js"></script> + <script type="text/javascript" src="i18n.js"></script> + <script type="text/javascript" src="firstRun.js"></script> + </head> + <body> + + + <header> + <div id="logo"></div> + <h1 id="title-main" class="i18n_firstRun_title"></h1> + </header> + + <section id="legacySafariWarning" class="i18n_firstRun_legacySafariWarning warning" hidden="true"></section> + <section id="filterlistsReinitializedWarning" class="i18n_firstRun_filterlistsReinitializedWarning warning" hidden="true"></section> + <section id="dataCorruptionWarning" class="i18n_firstRun_dataCorruptionWarning warning" hidden="true"></section> + + <section id="acceptable-ads"> + <h2 class="i18n_firstRun_acceptableAdsHeadline"></h2> + <p id="acceptableAdsExplanation" class="i18n_firstRun_acceptableAdsExplanation"></p> + </section> + + + <section id="share"> + <h2 id="share-headline" class="i18n_firstRun_share_headline"></h2> + + <div id="donate-block"> + <a id="donate" class="i18n_firstRun_donate" target="_blank"></a> + <span id="donate-label" class="i18n_firstRun_donate_label"></span> + </div> + + <div id="share-block"> + <div id="share-general" class="share-buttons"> + <a id="share-facebook" href="https://www.facebook.com/adblockplus" target="_blank" data-script="https://facebook.com/plugins/like.php?"> + </a> + <a id="share-twitter" href="https://twitter.com/adblockplus" target="_blank" data-script="https://platform.twitter.com/widgets.js"> + </a> + <a id="share-gplus" href="https://www.google.com/+AdblockPlus" target="_blank" data-script="https://apis.google.com/js/plusone.js"> + </a> + </div> + + <!-- Chinese social networks --> + <div id="share-chinese" class="share-buttons"> + <a id="share-renren" href="http://www.renren.com/601651969" target="_blank"> + </a> + <a id="share-weibo" href="http://e.weibo.com/adblockplus/" target="_blank"> + </a> + </div> + <span class="i18n_firstRun_share"></span> + </div> + </section> + + + <section id="can-do-more"> + <h2 class="i18n_firstRun_features"></h2> + + <div id="can-do-more-content"> + <ul id="features"> + <li id="feature-malware" class="feature"> + <div class="feature-image feature-malware-image"></div> + <div class="feature-description"> + <div class="feature-description-textblock"> + <h3 class="i18n_firstRun_feature_malware feature-title"></h3> + <span class="i18n_firstRun_feature_malware_description"></span> + </div> + <div id="toggle-malware" class="toggle"> + <div class="i18n_firstRun_toggle_on toggle-on"></div> + <div class="toggle-blob"></div> + <div class="i18n_firstRun_toggle_off toggle-off"></div> + </div> + </div> + + </li> + <li id="feature-social" class="feature"> + <div class="feature-image feature-social-image"></div> + <div class="feature-description"> + <div class="feature-description-textblock"> + <h3 class="i18n_firstRun_feature_social feature-title"></h3> + <span class="i18n_firstRun_feature_social_description"></span> + </div> + <div id="toggle-social" class="toggle"> + <div class="i18n_firstRun_toggle_on toggle-on"></div> + <div class="toggle-blob"></div> + <div class="i18n_firstRun_toggle_off toggle-off"></div> + </div> + </div> + </li> + + <li id="feature-tracking" class="feature"> + <div class="feature-image feature-tracking-image"></div> + <div class="feature-description"> + <div class="feature-description-textblock"> + <h3 class="i18n_firstRun_feature_tracking feature-title"></h3> + <span class="i18n_firstRun_feature_tracking_description"></span> + </div> + <div id="toggle-tracking" class="toggle"> + <div class="i18n_firstRun_toggle_on toggle-on"></div> + <div class="toggle-blob"></div> + <div class="i18n_firstRun_toggle_off toggle-off"></div> + </div> + </div> + </li> + + </ul> + + </div> + </section> + + + <footer> + <a id="contributors" class="i18n_firstRun_contributor_credits"></a> + </footer> + + + <div id="glass-pane"> + <iframe id="share-popup" scrolling="no"></iframe> + </div> + </body> +</html>
\ No newline at end of file diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/firstRun.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/firstRun.js new file mode 100644 index 0000000..be2caa6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/firstRun.js @@ -0,0 +1,253 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +"use strict"; + +(function() +{ + // Load subscriptions for features + var featureSubscriptions = [ + { + feature: "malware", + homepage: "http://malwaredomains.com/", + title: "Malware Domains", + url: "https://easylist-downloads.adblockplus.org/malwaredomains_full.txt" + }, + { + feature: "social", + homepage: "https://www.fanboy.co.nz/", + title: "Fanboy's Social Blocking List", + url: "https://easylist-downloads.adblockplus.org/fanboy-social.txt" + }, + { + feature: "tracking", + homepage: "https://easylist.adblockplus.org/", + title: "EasyPrivacy", + url: "https://easylist-downloads.adblockplus.org/easyprivacy.txt" + } + ]; + + function onDOMLoaded() + { + var locale = require("utils").Utils.appLocale; + document.documentElement.setAttribute("lang", locale); + + // Set up URLs + var donateLink = E("donate"); + donateLink.href = Utils.getDocLink("donate"); + + var contributors = E("contributors"); + contributors.href = Utils.getDocLink("contributors"); + + setLinks("acceptableAdsExplanation", Utils.getDocLink("acceptable_ads_criteria"), openFilters); + setLinks("share-headline", Utils.getDocLink("contribute")); + + if (typeof backgroundPage != "undefined") + { + // Show warning if data corruption was detected + if (backgroundPage.seenDataCorruption) + { + E("dataCorruptionWarning").removeAttribute("hidden"); + setLinks("dataCorruptionWarning", Utils.getDocLink("knownIssuesChrome_filterstorage")); + } + + // Show warning if filterlists settings were reinitialized + if (backgroundPage.filterlistsReinitialized) + { + E("filterlistsReinitializedWarning").removeAttribute("hidden"); + setLinks("filterlistsReinitializedWarning", openFilters); + } + } + + // Show warning if Safari version isn't supported + var info = require("info"); + if (info.platform == "safari" && ( + Services.vc.compare(info.platformVersion, "6.0") < 0 || // beforeload breaks websites in Safari 5 + Services.vc.compare(info.platformVersion, "6.1") == 0 || // extensions are broken in 6.1 and 7.0 + Services.vc.compare(info.platformVersion, "7.0") == 0 + )) + E("legacySafariWarning").removeAttribute("hidden"); + + // Set up feature buttons linked to subscriptions + featureSubscriptions.forEach(setToggleSubscriptionButton); + var filterListener = function(action) + { + if (/^subscription\.(added|removed|disabled)$/.test(action)) + { + for (var i = 0; i < featureSubscriptions.length; i++) + { + var featureSubscription = featureSubscriptions[i]; + updateToggleButton(featureSubscription.feature, isSubscriptionEnabled(featureSubscription)); + } + } + } + FilterNotifier.addListener(filterListener); + window.addEventListener("unload", function(event) + { + FilterNotifier.removeListener(filterListener); + }, false); + + initSocialLinks(); + } + + function isSubscriptionEnabled(featureSubscription) + { + return featureSubscription.url in FilterStorage.knownSubscriptions + && !Subscription.fromURL(featureSubscription.url).disabled; + } + + function setToggleSubscriptionButton(featureSubscription) + { + var feature = featureSubscription.feature; + + var element = E("toggle-" + feature); + updateToggleButton(feature, isSubscriptionEnabled(featureSubscription)); + element.addEventListener("click", function(event) + { + var subscription = Subscription.fromURL(featureSubscription.url); + if (isSubscriptionEnabled(featureSubscription)) + FilterStorage.removeSubscription(subscription); + else + { + subscription.disabled = false; + subscription.title = featureSubscription.title; + subscription.homepage = featureSubscription.homepage; + FilterStorage.addSubscription(subscription); + if (!subscription.lastDownload) + Synchronizer.execute(subscription); + } + }, false); + } + + function openSharePopup(url) + { + var iframe = E("share-popup"); + var glassPane = E("glass-pane"); + var popupMessageReceived = false; + + var popupMessageListener = function(event) + { + var originFilter = Filter.fromText("||adblockplus.org^"); + if (!originFilter.matches(event.origin, "OTHER", null, null)) + return; + + var width = event.data.width; + var height = event.data.height; + iframe.width = width; + iframe.height = height; + iframe.style.marginTop = -height/2 + "px"; + iframe.style.marginLeft = -width/2 + "px"; + popupMessageReceived = true; + window.removeEventListener("message", popupMessageListener); + }; + // Firefox requires last parameter to be true to be triggered by unprivileged pages + window.addEventListener("message", popupMessageListener, false, true); + + var popupLoadListener = function() + { + if (popupMessageReceived) + { + iframe.className = "visible"; + + var popupCloseListener = function() + { + iframe.className = glassPane.className = ""; + document.removeEventListener("click", popupCloseListener); + }; + document.addEventListener("click", popupCloseListener, false); + } + else + { + glassPane.className = ""; + window.removeEventListener("message", popupMessageListener); + } + + iframe.removeEventListener("load", popupLoadListener); + }; + iframe.addEventListener("load", popupLoadListener, false); + + iframe.src = url; + glassPane.className = "visible"; + } + + function initSocialLinks() + { + var networks = ["twitter", "facebook", "gplus"]; + networks.forEach(function(network) + { + var link = E("share-" + network); + link.addEventListener("click", onSocialLinkClick, false); + }); + } + + function onSocialLinkClick(event) + { + // Don't open the share page if the sharing script would be blocked + var filter = defaultMatcher.matchesAny(event.target.getAttribute("data-script"), "SCRIPT", "adblockplus.org", true); + if (!(filter instanceof BlockingFilter)) + { + event.preventDefault(); + openSharePopup(Utils.getDocLink(event.target.id)); + } + } + + function setLinks(id) + { + var element = E(id); + if (!element) + { + return; + } + + var links = element.getElementsByTagName("a"); + + for (var i = 0; i < links.length; i++) + { + if (typeof arguments[i + 1] == "string") + { + links[i].href = arguments[i + 1]; + links[i].setAttribute("target", "_blank"); + } + else if (typeof arguments[i + 1] == "function") + { + links[i].href = "javascript:void(0);"; + links[i].addEventListener("click", arguments[i + 1], false); + } + } + } + + function openFilters() + { + if (typeof UI != "undefined") + UI.openFiltersDialog(); + else + { + backgroundPage.openOptions(); + } + } + + function updateToggleButton(feature, isEnabled) + { + var button = E("toggle-" + feature); + if (isEnabled) + button.classList.remove("off"); + else + button.classList.add("off"); + } + + document.addEventListener("DOMContentLoaded", onDOMLoaded, false); +})(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/flasher.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/flasher.js new file mode 100644 index 0000000..ddb4131 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/flasher.js @@ -0,0 +1,108 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * Draws a blinking border for a list of matching nodes. + */ + +var flasher = { + nodes: null, + count: 0, + timer: null, + + flash: function(nodes) + { + this.stop(); + if (nodes) + nodes = nodes.filter(function(node) node.nodeType == Node.ELEMENT_NODE); + if (!nodes || !nodes.length) + return; + + if (Prefs.flash_scrolltoitem && nodes[0].ownerDocument) + { + // Ensure that at least one node is visible when flashing + let wnd = nodes[0].ownerDocument.defaultView; + try + { + let topWnd = Utils.getChromeWindow(wnd); + let {getBrowser} = require("appSupport"); + let browser = (getBrowser ? getBrowser(topWnd) : null); + if (browser) + browser.markupDocumentViewer.scrollToNode(nodes[0]); + } + catch(e) + { + Cu.reportError(e); + } + } + + this.nodes = nodes; + this.count = 0; + + this.doFlash(); + }, + + doFlash: function() { + if (this.count >= 12) { + this.stop(); + return; + } + + if (this.count % 2) + this.switchOff(); + else + this.switchOn(); + + this.count++; + + this.timer = window.setTimeout(function() {flasher.doFlash()}, 300); + }, + + stop: function() { + if (this.timer) { + window.clearTimeout(this.timer); + this.timer = null; + } + + if (this.nodes) { + this.switchOff(); + this.nodes = null; + } + }, + + setOutline: function(outline, offset) + { + for (var i = 0; i < this.nodes.length; i++) + { + if ("style" in this.nodes[i]) + { + this.nodes[i].style.outline = outline; + this.nodes[i].style.outlineOffset = offset; + } + } + }, + + switchOn: function() + { + this.setOutline("#CC0000 dotted 2px", "-2px"); + }, + + switchOff: function() + { + this.setOutline("", ""); + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/i18n.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/i18n.js new file mode 100644 index 0000000..8366268 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/i18n.js @@ -0,0 +1,150 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +var i18n; + +if (typeof ext != "undefined") + i18n = ext.i18n; +else if (typeof chrome != "undefined") + // TODO: This check only exist for backwards compatibility, while the Safari + // port isn't merged into the adblockpluschrome repo. So this branch should + // be removed when the Safari port was merged. + i18n = chrome.i18n; +else +{ + // Using Firefox' approach on i18n instead + + // Randomize URI to work around bug 719376 + var pageName = location.pathname.replace(/.*\//, '').replace(/\..*?$/, ''); + var stringBundle = Services.strings.createBundle("chrome://adblockplus/locale/" + pageName + + ".properties?" + Math.random()); + + function getI18nMessage(key) + { + return { + "message": stringBundle.GetStringFromName(key) + }; + } + + i18n = (function() + { + function getText(message, args) + { + var text = message.message; + var placeholders = message.placeholders; + + if (!args || !placeholders) + return text; + + for (var key in placeholders) + { + var content = placeholders[key].content; + if (!content) + continue; + + var index = parseInt(content.slice(1), 10); + if (isNaN(index)) + continue; + + var replacement = args[index - 1]; + if (typeof replacement === "undefined") + continue; + + text = text.split("$" + key + "$").join(replacement); + } + return text; + } + + return { + getMessage: function(key, args) + { + try{ + var message = getI18nMessage(key); + return getText(message, args); + } + catch(e) + { + Cu.reportError(e); + return "Missing translation: " + key; + } + } + }; + })(); +} + +// Inserts i18n strings into matching elements. Any inner HTML already in the element is +// parsed as JSON and used as parameters to substitute into placeholders in the i18n +// message. +i18n.setElementText = function(element, stringName, arguments) +{ + function processString(str, element) + { + var match = /^(.*?)<(a|strong)>(.*?)<\/\2>(.*)$/.exec(str); + if (match) + { + processString(match[1], element); + + var e = document.createElement(match[2]); + processString(match[3], e); + element.appendChild(e); + + processString(match[4], element); + } + else + element.appendChild(document.createTextNode(str)); + } + + while (element.lastChild) + element.removeChild(element.lastChild); + processString(i18n.getMessage(stringName, arguments), element); +} + +// Loads i18n strings +function loadI18nStrings() +{ + var nodes = document.querySelectorAll("[class^='i18n_']"); + for(var i = 0; i < nodes.length; i++) + { + var node = nodes[i]; + var arguments = JSON.parse("[" + node.textContent + "]"); + if (arguments.length == 0) + arguments = null; + + var className = node.className; + if (className instanceof SVGAnimatedString) + className = className.animVal; + var stringName = className.split(/\s/)[0].substring(5); + + i18n.setElementText(node, stringName, arguments); + } +} + +// Provides a more readable string of the current date and time +function i18n_timeDateStrings(when) +{ + var d = new Date(when); + var timeString = d.toLocaleTimeString(); + + var now = new Date(); + if (d.toDateString() == now.toDateString()) + return [timeString]; + else + return [timeString, d.toLocaleDateString()]; +} + +// Fill in the strings as soon as possible +window.addEventListener("DOMContentLoaded", loadI18nStrings, true); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/overlay.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/overlay.xul new file mode 100644 index 0000000..9724859 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/overlay.xul @@ -0,0 +1,134 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<!DOCTYPE overlay [ + <!ENTITY % overlayDTD SYSTEM "chrome://adblockplus/locale/overlay.dtd"> + %overlayDTD; + <!ENTITY % subscriptionsDTD SYSTEM "chrome://adblockplus/locale/subscriptionSelection.dtd"> + %subscriptionsDTD; +]> + +<overlay xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + imagecontextlabel="&context.image.label;…" objectcontextlabel="&context.object.label;…" + mediacontextlabel="&context.media.label;…" subdocumentcontextlabel="&context.frame.label;…" + whitelistcontextlabel="&context.removeWhitelist.label;" + objtabtext="&objecttab.title;…" objtabtooltip="&objecttab.tooltip;" + subscriptionDialogTitle="&dialog.title;" + subscriptionDialogMessage="&title.label; ?1? &location.label; ?2?"> + <popupset id="abp-popupset"> + <!-- Icon's tooltip --> + <tooltip id="abp-tooltip" orient="vertical"> + <description id="abp-tooltip-action" hidden="true"/> + <label id="abp-tooltip-status-label" value="&status.tooltip;"/> + <description id="abp-tooltip-status"/> + <label id="abp-tooltip-blocked-label" value="&blocked.tooltip;" hidden="true"/> + <description id="abp-tooltip-blocked" hidden="true"/> + <label id="abp-tooltip-filters-label" value="&filters.tooltip;" hidden="true"/> + <vbox id="abp-tooltip-filters" hidden="true"/> + <description id="abp-tooltip-more-filters" value="…" hidden="true"/> + </tooltip> + </popupset> + + <!-- Icon's context menu --> + <menupopup id="abp-status-popup" context=""> + <menuitem id="abp-status-sendReport" label="&sendReport.label;…" key="abp-key-sendReport" command="abp-command-sendReport"/> + <menuitem id="abp-status-openbottombar" label="&opensidebar.label;" key="abp-key-sidebar" command="abp-command-sidebar"/> + <menuitem id="abp-status-closebottombar" label="&closesidebar.label;" key="abp-key-sidebar" command="abp-command-sidebar"/> + <menuitem id="abp-status-filters" label="&filters.label;…" key="abp-key-filters" command="abp-command-filters"/> + <menuseparator id="abp-status-whitelist-sep"/> + <menuitem id="abp-status-whitelistsite" labeltempl="&whitelist.site.label;" type="checkbox" command="abp-command-togglesitewhitelist"/> + <menuitem id="abp-status-whitelistpage" label="&whitelist.page.label;" type="checkbox" command="abp-command-togglepagewhitelist"/> + <menuitem id="abp-status-disabled" label="&disable.label;" type="checkbox" key="abp-key-enable" command="abp-command-enable"/> + <menuseparator/> + <menu id="abp-status-options" label="&options.label;"> + <menupopup id="abp-status-options-popup"> + <menuitem id="abp-status-frameobjects" label="&objecttabs.label;" type="checkbox" command="abp-command-toggleobjtabs"/> + <menuitem id="abp-status-slowcollapse" label="&hideplaceholders.label;" type="checkbox" command="abp-command-togglecollapse"/> + <menuitem id="abp-status-savestats" label="&counthits.label;" type="checkbox" command="abp-command-togglesavestats"/> + <menuitem id="abp-status-sync" label="&sync.label;" type="checkbox" command="abp-command-togglesync"/> + <menuseparator id="abp-status-iconSettingsSeparator"/> + <menuitem id="abp-status-showintoolbar" label="&showintoolbar.label;" type="checkbox" command="abp-command-toggleshowintoolbar"/> + <menuitem id="abp-status-showinstatusbar" label="&showinstatusbar.label;" type="checkbox" command="abp-command-toggleshowinstatusbar"/> + </menupopup> + </menu> + + <hbox class="abp-contributebutton" id="abp-status-contributebutton" pack="center" align="center"> + <!-- noautoclose attribute tells Australis menu that it shouldn't close when + these are clicked, see https://bugzilla.mozilla.org/show_bug.cgi?id=940693 --> + <button class="abp-contributebutton-btn" label="&contribute.label;" command="abp-command-contribute" flex="1" noautoclose="true"/> + <toolbarbutton class="abp-contributebutton-close" command="abp-command-contribute-hide" noautoclose="true"/> + </hbox> + </menupopup> + + <keyset id="abp-keyset"/> + + <!-- Dummy oncommand attributes are work-arounds for bug 371900 --> + <commandset id="abp-commandset"> + <command id="abp-command-sendReport" oncommand="//"/> + <command id="abp-command-filters" oncommand="//"/> + <command id="abp-command-settings" oncommand="//"/> + <command id="abp-command-sidebar" oncommand="//"/> + <command id="abp-command-togglesitewhitelist"/> + <command id="abp-command-togglepagewhitelist"/> + <command id="abp-command-toggleobjtabs"/> + <command id="abp-command-togglecollapse"/> + <command id="abp-command-togglesavestats"/> + <command id="abp-command-togglesync"/> + <command id="abp-command-toggleshowintoolbar"/> + <command id="abp-command-toggleshowinstatusbar"/> + <command id="abp-command-enable" oncommand="//"/> + <command id="abp-command-contribute"/> + <command id="abp-command-contribute-hide"/> + </commandset> + + <statusbarpanel id="abp-status" class="statusbarpanel-iconic" + tooltip="abp-tooltip"/> + + <toolbarbutton id="abp-toolbarbutton" class="toolbarbutton-1" label="&toolbarbutton.label;" + tooltip="abp-tooltip"/> + + <!-- Tools menu --> + <menu id="abp-menuitem" label="&toolbarbutton.label;"/> + + <!-- Bottom bar --> + <hbox id="abp-bottombar-container"> + <splitter id="abp-bottombar-splitter"/> + <vbox id="abp-bottombar"> + <toolbox id="abp-bottombar-header"> + <toolbar id="abp-bottombar-toolbar" align="center" grippyhidden="true" fullscreentoolbar="true"> + <label id="abp-bottombar-title" control="abp-bottombar-browser" value="&sidebar.title;" flex="1" crop="end"/> + <toolbarbutton id="abp-bottombar-close" command="abp-command-sidebar" tooltiptext="&closesidebar.label;"/> + </toolbar> + </toolbox> + <iframe id="abp-bottombar-browser" src="chrome://adblockplus/content/ui/sidebar.xul" flex="1"/> + </vbox> + </hbox> + + <!-- Notification panel --> + <panel id="abp-notification" type="arrow" orient="vertical" + xmlns:html="http://www.w3.org/1999/xhtml"> + <label id="abp-notification-title" class="header"/> + <html:p id="abp-notification-message"/> + <hbox id="abp-notification-question"> + <button id="abp-notification-yes" label="¬ification.button.yes;"/> + <button id="abp-notification-no" label="¬ification.button.no;"/> + <toolbarbutton id="abp-notification-close" label="¬ification.button.close;"></toolbarbutton> + </hbox> + </panel> +</overlay> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/progressBar.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/progressBar.js new file mode 100644 index 0000000..659acdd --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/progressBar.js @@ -0,0 +1,158 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +(function() +{ + let progressBar, canvas, headers, isRTL; + + function onLoad() + { + window.removeEventListener("load", onLoad, false); + + // Init global variables + progressBar = document.getElementById("progressBar"); + canvas = document.getElementById("progressBarCanvas"); + + headers = Array.prototype.slice.call(progressBar.getElementsByTagName("label")); + for (let i = 0; i < headers.length; i++) + canvas.parentNode.appendChild(headers[i]); + + // Expose properties + progressBar.__defineGetter__("activeItem", getActiveItem); + progressBar.__defineSetter__("activeItem", setActiveItem); + progressBar.__defineGetter__("activeItemComplete", getActiveItemComplete); + progressBar.__defineSetter__("activeItemComplete", setActiveItemComplete); + + isRTL = (window.getComputedStyle(document.documentElement).direction == "rtl"); + + // Run actual drawing delayed, once the sizes are fixed + window.setTimeout(init, 0); + }; + window.addEventListener("load", onLoad, false); + + function init() + { + const gapWidth = 5; + const arrowheadWidth = 5; + + let width = canvas.width = canvas.offsetWidth; + let height = canvas.height = canvas.offsetHeight; + + let context = canvas.getContext("2d"); + context.fillStyle = window.getComputedStyle(progressBar, "").color; + context.strokeStyle = window.getComputedStyle(progressBar, "").color; + context.lineWidth = 1; + if (isRTL) + { + context.translate(width, 0); + context.scale(-1, 1); + } + + let panelCount = headers.length; + let panelWidth = (width - gapWidth * (panelCount - 1) - 1) / panelCount; + for (let i = 0; i < panelCount; i++) + { + context.save(); + context.translate(Math.round(i * (panelWidth + gapWidth)) + 0.5, 0.5); + context.beginPath(); + if (i) + context.moveTo(-arrowheadWidth, 0); + else + context.moveTo(0, 0); + context.lineTo(panelWidth - arrowheadWidth, 0); + context.lineTo(panelWidth, (height - 1) / 2); + context.lineTo(panelWidth - arrowheadWidth, height - 1); + if (i) + { + context.lineTo(-arrowheadWidth, height - 1); + context.lineTo(0, (height - 1) / 2); + context.lineTo(-arrowheadWidth, 0); + } + else + { + context.lineTo(0, height - 1); + context.lineTo(0, 0); + } + + context.stroke(); + context.restore(); + + let childLeft = Math.round(i * (panelWidth + gapWidth) + 1); + let childWidth = panelWidth - arrowheadWidth - 2; + let child = headers[i]; + child.style.MozMarginStart = childLeft + "px"; + child.style.MozMarginEnd = (width - childLeft - childWidth) + "px"; + child.style.width = childWidth + "px"; + } + + // Resize after initialization should be ignored + canvas.parentNode.removeAttribute("flex"); + } + + function getActiveItem() + { + for (let i = 0; i < headers.length; i++) + { + let header = headers[i]; + if (header.classList.contains("active")) + return header; + } + return null; + } + + function setActiveItem(val) + { + let complete = true; + for (let i = 0; i < headers.length; i++) + { + let header = headers[i]; + if (header == val) + complete = false; + + if (!complete && header.value[0] == "✔") + header.value = header.value.replace(/^✔\s*/, ""); + else if (complete && header.value[0] != "✔") + header.value = "✔ " + header.value; + + if (header == val) + header.classList.add("active"); + else + header.classList.remove("active"); + } + } + + function getActiveItemComplete() + { + let activeItem = this.activeItem; + if (!activeItem) + return false; + else + return activeItem.value[0] == "✔"; + } + + function setActiveItemComplete(val) + { + let activeItem = this.activeItem; + if (!activeItem) + return; + + if (!val && activeItem.value[0] == "✔") + activeItem.value = activeItem.value.replace(/^✔\s*/, ""); + else if (val && activeItem.value[0] != "✔") + activeItem.value = "✔ " + activeItem.value; + } +})(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/progressBar.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/progressBar.xul new file mode 100644 index 0000000..d940e61 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/progressBar.xul @@ -0,0 +1,29 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<overlay id="progressBarOverlay" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <script type="application/x-javascript;version=1.7" src="progressBar.js"/> + + <hbox id="progressBar" pack="center"> + <stack flex="1"> + <canvas xmlns="http://www.w3.org/1999/xhtml" id="progressBarCanvas" width="1" height="1"/> + </stack> + </hbox> +</overlay> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sendReport.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sendReport.js new file mode 100644 index 0000000..3ccc0e6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sendReport.js @@ -0,0 +1,1571 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +// +// Report data template, more data will be added during data collection +// + +Cu.import("resource://gre/modules/Services.jsm"); +Cu.import("resource://gre/modules/FileUtils.jsm"); + +const MILLISECONDS_IN_SECOND = 1000; +const SECONDS_IN_MINUTE = 60; +const SECONDS_IN_HOUR = 60 * SECONDS_IN_MINUTE; +const SECONDS_IN_DAY = 24 * SECONDS_IN_HOUR; + +let contentWindow = window.arguments[0]; +let windowURI = (window.arguments[1] instanceof Ci.nsIURI ? window.arguments[1] : null); + +let reportData = new DOMParser().parseFromString("<report></report>", "text/xml"); + +// Some helper functions to work with the report data +function reportElement(tag) +{ + for (let child = reportData.documentElement.firstChild; child; child = child.nextSibling) + if (child.nodeType == Node.ELEMENT_NODE && child.tagName == tag) + return child; + let element = reportData.createElement(tag); + reportData.documentElement.appendChild(element); + return element; +} +function removeReportElement(tag) +{ + for (let child = reportData.documentElement.firstChild; child; child = child.nextSibling) + if (child.nodeType == Node.ELEMENT_NODE && child.tagName == tag) + child.parentNode.removeChild(child); +} +function appendElement(parent, tag, attributes, body) +{ + let element = parent.ownerDocument.createElement(tag); + if (typeof attributes == "object" && attributes !== null) + for (let attribute in attributes) + if (attributes.hasOwnProperty(attribute)) + element.setAttribute(attribute, attributes[attribute]); + if (typeof body != "undefined" && body !== null) + element.textContent = body; + parent.appendChild(element); + return element; +} +function serializeReportData() +{ + let result = new XMLSerializer().serializeToString(reportData); + + // Insert line breaks before each new tag + result = result.replace(/(<[^\/]([^"<>]*|"[^"]*")*>)/g, "\n$1"); + result = result.replace(/^\n+/, ""); + return result; +} + +let (element = reportElement("adblock-plus")) +{ + let {addonVersion} = require("info"); + element.setAttribute("version", addonVersion); + element.setAttribute("locale", Utils.appLocale); +}; +let (element = reportElement("application")) +{ + element.setAttribute("name", Services.appinfo.name); + element.setAttribute("vendor", Services.appinfo.vendor); + element.setAttribute("version", Services.appinfo.version); + element.setAttribute("userAgent", window.navigator.userAgent); +}; +let (element = reportElement("platform")) +{ + element.setAttribute("name", "Gecko"); + element.setAttribute("version", Services.appinfo.platformVersion); + element.setAttribute("build", Services.appinfo.platformBuildID); +}; +let (element = reportElement("options")) +{ + appendElement(element, "option", {id: "enabled"}, Prefs.enabled); + appendElement(element, "option", {id: "objecttabs"}, Prefs.frameobjects); + appendElement(element, "option", {id: "collapse"}, !Prefs.fastcollapse); + appendElement(element, "option", {id: "privateBrowsing"}, PrivateBrowsing.enabledForWindow(contentWindow) || PrivateBrowsing.enabled); + appendElement(element, "option", {id: "subscriptionsAutoUpdate"}, Prefs.subscriptions_autoupdate); + appendElement(element, "option", {id: "javascript"}, Services.prefs.getBoolPref("javascript.enabled")); + appendElement(element, "option", {id: "cookieBehavior"}, Services.prefs.getIntPref("network.cookie.cookieBehavior")); +}; + +// +// Data collectors +// + +let reportsListDataSource = +{ + list: [], + + collectData: function(wnd, windowURI, callback) + { + let data = Prefs.recentReports; + if (data && "length" in data) + { + for (let i = 0; i < data.length; i++) + { + let entry = data[i]; + if (typeof entry.reportURL == "string" && entry.reportURL && + typeof entry.time == "number" && Date.now() - entry.time < 30*24*60*60*1000) + { + let newEntry = {site: null, reportURL: entry.reportURL, time: entry.time}; + if (typeof entry.site == "string" && entry.site) + newEntry.site = entry.site; + this.list.push(newEntry); + } + } + } + + if (this.list.length > 10) + this.list.splice(10); + + E("recentReports").hidden = !this.list.length; + if (this.list.length) + { + let rows = E("recentReportsRows") + for (let i = 0; i < this.list.length; i++) + { + let entry = this.list[i]; + let row = document.createElement("row"); + + let link = document.createElement("description"); + link.setAttribute("class", "text-link"); + link.setAttribute("url", entry.reportURL); + link.textContent = entry.reportURL.replace(/^.*\/(?=[^\/])/, ""); + row.appendChild(link); + + let site = document.createElement("description"); + if (entry.site) + site.textContent = entry.site; + row.appendChild(site); + + let time = document.createElement("description"); + time.textContent = Utils.formatTime(entry.time); + row.appendChild(time); + + rows.appendChild(row); + } + } + + callback(); + }, + + addReport: function(site, reportURL) + { + this.list.unshift({site: site, reportURL: reportURL, time: Date.now()}); + Prefs.recentReports = this.list; + }, + + clear: function() + { + this.list = []; + Prefs.recentReports = this.list; + E("recentReports").hidden = true; + }, + + handleClick: function(event) + { + if (event.button != 0 || !event.target || !event.target.hasAttribute("url")) + return; + + UI.loadInBrowser(event.target.getAttribute("url")); + } +}; + +let requestsDataSource = +{ + requests: reportElement("requests"), + origRequests: [], + requestNotifier: null, + callback: null, + nodeByKey: {__proto__: null}, + + collectData: function(wnd, windowURI, callback) + { + this.callback = callback; + this.requestNotifier = new RequestNotifier(wnd, this.onRequestFound, this); + }, + + onRequestFound: function(frame, node, entry, scanComplete) + { + if (entry) + { + let key = entry.location + " " + entry.typeDescr + " " + entry.docDomain; + let requestXML; + if (key in this.nodeByKey) + { + requestXML = this.nodeByKey[key]; + requestXML.setAttribute("count", parseInt(requestXML.getAttribute("count"), 10) + 1); + } + else + { + requestXML = this.nodeByKey[key] = appendElement(this.requests, "request", { + location: censorURL(entry.location), + type: entry.typeDescr, + docDomain: entry.docDomain, + thirdParty: entry.thirdParty, + count: 1 + }); + } + + // Location is meaningless for element hiding hits + if (entry.filter && entry.filter instanceof ElemHideBase) + requestXML.removeAttribute("location"); + + if (entry.filter) + requestXML.setAttribute("filter", entry.filter.text); + + if (node instanceof Element) + { + requestXML.setAttribute("node", (node.namespaceURI ? node.namespaceURI + "#" : "") + node.localName); + + try + { + requestXML.setAttribute("size", node.offsetWidth + "x" + node.offsetHeight); + } catch(e) {} + } + this.origRequests.push(entry); + } + + if (scanComplete) + { + this.requestNotifier.shutdown(); + this.requestNotifier = null; + this.callback(); + } + } +}; + +let filtersDataSource = +{ + origFilters: [], + + collectData: function(wnd, windowURI, callback) + { + let wndStats = RequestNotifier.getWindowStatistics(wnd); + if (wndStats) + { + let filters = reportElement("filters"); + for (let f in wndStats.filters) + { + let filter = Filter.fromText(f) + let hitCount = wndStats.filters[f]; + appendElement(filters, "filter", { + text: filter.text, + subscriptions: filter.subscriptions.filter(subscriptionsDataSource.subscriptionFilter).map(function(s) s.url).join(" "), + hitCount: hitCount + }); + this.origFilters.push(filter); + } + } + callback(); + } +}; + +let subscriptionsDataSource = +{ + subscriptionFilter: function(s) + { + if (s.disabled || !(s instanceof RegularSubscription)) + return false; + if (s instanceof DownloadableSubscription && !/^(http|https|ftp):/i.test(s.url)) + return false; + return true; + }, + + collectData: function(wnd, windowURI, callback) + { + let subscriptions = reportElement("subscriptions"); + let now = Math.round(Date.now() / 1000); + for (let i = 0; i < FilterStorage.subscriptions.length; i++) + { + let subscription = FilterStorage.subscriptions[i]; + if (!this.subscriptionFilter(subscription)) + continue; + + let subscriptionXML = appendElement(subscriptions, "subscription", { + id: subscription.url, + disabledFilters: subscription.filters.filter(function(filter) filter instanceof ActiveFilter && filter.disabled).length + }); + if (subscription.version) + subscriptionXML.setAttribute("version", subscription.version); + if (subscription.lastDownload) + subscriptionXML.setAttribute("lastDownloadAttempt", subscription.lastDownload - now); + if (subscription instanceof DownloadableSubscription) + { + if (subscription.lastSuccess) + subscriptionXML.setAttribute("lastDownloadSuccess", subscription.lastSuccess - now); + if (subscription.softExpiration) + subscriptionXML.setAttribute("softExpiration", subscription.softExpiration - now); + if (subscription.expires) + subscriptionXML.setAttribute("hardExpiration", subscription.expires - now); + subscriptionXML.setAttribute("downloadStatus", subscription.downloadStatus); + } + } + callback(); + } +}; + +let screenshotDataSource = +{ + imageOffset: 10, + + // Fields used for color reduction + _mapping: [0x00, 0x55, 0xAA, 0xFF], + _i: null, + _max: null, + _pixelData: null, + _callback: null, + + // Fields used for user interaction + _enabled: true, + _canvas: null, + _context: null, + _selectionType: "mark", + _currentData: null, + _undoQueue: [], + + collectData: function(wnd, windowURI, callback) + { + this._callback = callback; + this._canvas = E("screenshotCanvas"); + this._canvas.width = this._canvas.offsetWidth; + + // Do not resize canvas any more (no idea why Gecko requires both to be set) + this._canvas.parentNode.style.MozBoxAlign = "center"; + this._canvas.parentNode.align = "center"; + + this._context = this._canvas.getContext("2d"); + let wndWidth = wnd.document.documentElement.scrollWidth; + let wndHeight = wnd.document.documentElement.scrollHeight; + + // Copy scaled screenshot of the webpage. We scale the webpage by width + // but leave 10px on each side for easier selecting. + + // Gecko doesn't like sizes more than 64k, restrict to 30k to be on the safe side. + // Also, make sure height is at most five times the width to keep image size down. + let copyWidth = Math.min(wndWidth, 30000); + let copyHeight = Math.min(wndHeight, 30000, copyWidth * 5); + let copyX = Math.max(Math.min(wnd.scrollX - copyWidth / 2, wndWidth - copyWidth), 0); + let copyY = Math.max(Math.min(wnd.scrollY - copyHeight / 2, wndHeight - copyHeight), 0); + + let scalingFactor = (this._canvas.width - this.imageOffset * 2) / copyWidth; + this._canvas.height = copyHeight * scalingFactor + this.imageOffset * 2; + + this._context.save(); + this._context.translate(this.imageOffset, this.imageOffset); + this._context.scale(scalingFactor, scalingFactor); + this._context.drawWindow(wnd, copyX, copyY, copyWidth, copyHeight, "rgb(255,255,255)"); + this._context.restore(); + + // Init canvas settings + this._context.fillStyle = "rgb(0, 0, 0)"; + this._context.strokeStyle = "rgba(255, 0, 0, 0.7)"; + this._context.lineWidth = 3; + this._context.lineJoin = "round"; + + // Reduce colors asynchronously + this._pixelData = this._context.getImageData(this.imageOffset, this.imageOffset, + this._canvas.width - this.imageOffset * 2, + this._canvas.height - this.imageOffset * 2); + this._max = this._pixelData.width * this._pixelData.height * 4; + this._i = 0; + Utils.runAsync(this.run.bind(this)); + }, + + run: function() + { + // Process only 5000 bytes at a time to prevent browser hangs + let endIndex = Math.min(this._i + 5000, this._max); + let i = this._i; + for (; i < endIndex; i++) + this._pixelData.data[i] = this._mapping[this._pixelData.data[i] >> 6]; + + if (i >= this._max) + { + // Save data back and we are done + this._context.putImageData(this._pixelData, this.imageOffset, this.imageOffset); + this._callback(); + } + else + { + this._i = i; + Utils.runAsync(this.run.bind(this)); + } + }, + + get enabled() this._enabled, + set enabled(enabled) + { + if (this._enabled == enabled) + return; + + this._enabled = enabled; + this._canvas.style.opacity = this._enabled ? "" : "0.3" + E("screenshotMarkButton").disabled = !this._enabled; + E("screenshotRemoveButton").disabled = !this._enabled; + E("screenshotUndoButton").disabled = !this._enabled || !this._undoQueue.length; + }, + + get selectionType() this._selectionType, + set selectionType(type) + { + if (this._selectionType == type) + return; + + // Abort selection already in progress + this.abortSelection(); + + this._selectionType = type; + }, + + exportData: function() + { + removeReportElement("screenshot"); + if (this.enabled) + { + appendElement(reportData.documentElement, "screenshot", { + edited: (this._undoQueue.length ? 'true' : 'false') + }, this._canvas.toDataURL()); + } + }, + + abortSelection: function() + { + if (this._currentData && this._currentData.data) + { + this._context.putImageData(this._currentData.data, + Math.min(this._currentData.anchorX, this._currentData.currentX), + Math.min(this._currentData.anchorY, this._currentData.currentY)); + } + document.removeEventListener("keypress", this.handleKeyPress, true); + this._currentData = null; + }, + + handleKeyPress: function(event) + { + if (event.keyCode == Ci.nsIDOMKeyEvent.DOM_VK_ESCAPE) + { + event.stopPropagation(); + event.preventDefault(); + screenshotDataSource.abortSelection(); + } + }, + + startSelection: function(event) + { + if (event.button == 2) + this.abortSelection(); // Right mouse button aborts selection + + if (event.button != 0 || !this.enabled) + return; + + // Abort selection already in progress + this.abortSelection(); + + let boxObject = document.getBoxObjectFor(this._canvas); + let [x, y] = [event.screenX - boxObject.screenX, event.screenY - boxObject.screenY]; + this._currentData = { + data: null, + anchorX: x, + anchorY: y, + currentX: -1, + currentY: -1 + }; + this.updateSelection(event); + + document.addEventListener("keypress", this.handleKeyPress, true); + }, + + updateSelection: function(event) + { + if (event.button != 0 || !this._currentData) + return; + + let boxObject = document.getBoxObjectFor(this._canvas); + let [x, y] = [event.screenX - boxObject.screenX, event.screenY - boxObject.screenY]; + if (this._currentData.currentX == x && this._currentData.currentY == y) + return; + + if (this._currentData.data) + { + this._context.putImageData(this._currentData.data, + Math.min(this._currentData.anchorX, this._currentData.currentX), + Math.min(this._currentData.anchorY, this._currentData.currentY)); + } + + this._currentData.currentX = x; + this._currentData.currentY = y; + + let left = Math.min(this._currentData.anchorX, this._currentData.currentX); + let right = Math.max(this._currentData.anchorX, this._currentData.currentX); + let top = Math.min(this._currentData.anchorY, this._currentData.currentY); + let bottom = Math.max(this._currentData.anchorY, this._currentData.currentY); + + let minDiff = (this._selectionType == "mark" ? 3 : 1); + if (right - left >= minDiff && bottom - top >= minDiff) + this._currentData.data = this._context.getImageData(left, top, right - left, bottom - top); + else + this._currentData.data = null; + + if (this._selectionType == "mark") + { + // all coordinates need to be moved 1.5px inwards to get the desired result + left += 1.5; + right -= 1.5; + top += 1.5; + bottom -= 1.5; + if (left < right && top < bottom) + this._context.strokeRect(left, top, right - left, bottom - top); + } + else if (this._selectionType == "remove") + this._context.fillRect(left, top, right - left, bottom - top); + }, + + stopSelection: function(event) + { + if (event.button != 0 || !this._currentData) + return; + + if (this._currentData.data) + { + this._undoQueue.push(this._currentData); + E("screenshotUndoButton").disabled = false; + } + + this._currentData = null; + document.removeEventListener("keypress", this.handleKeyPress, true); + }, + + undo: function() + { + let op = this._undoQueue.pop(); + if (!op) + return; + + this._context.putImageData(op.data, + Math.min(op.anchorX, op.currentX), + Math.min(op.anchorY, op.currentY)); + + if (!this._undoQueue.length) + E("screenshotUndoButton").disabled = true; + } +}; + +let framesDataSource = +{ + site: null, + + collectData: function(wnd, windowURI, callback) + { + try + { + this.site = windowURI.host; + if (this.site) + document.title += " (" + this.site + ")"; + } + catch (e) + { + // Expected exception - not all URL schemes have a host name + } + + let window = reportElement("window"); + window.setAttribute("url", censorURL(windowURI ? windowURI.spec : wnd.location.href)); + if (wnd.opener && wnd.opener.location.href) + window.setAttribute("opener", censorURL(wnd.opener.location.href)); + if (wnd.document.referrer) + window.setAttribute("referrer", censorURL(wnd.document.referrer)); + this.scanFrames(wnd, window); + + callback(); + }, + + scanFrames: function(wnd, xmlList) + { + try + { + for (let i = 0; i < wnd.frames.length; i++) + { + let frame = wnd.frames[i]; + let frameXML = appendElement(xmlList, "frame", { + url: censorURL(frame.location.href) + }); + this.scanFrames(frame, frameXML); + } + } + catch (e) + { + // Don't break if something goes wrong + Cu.reportError(e); + } + } +}; + +let errorsDataSource = +{ + collectData: function(wnd, windowURI, callback) + { + let {addonID} = require("info"); + addonID = addonID.replace(/[\{\}]/g, ""); + + // See https://bugzilla.mozilla.org/show_bug.cgi?id=664695 - starting with + // Gecko 19 this function returns the result, before that it wrote to a + // parameter. + let outparam = {}; + let messages = Cc["@mozilla.org/consoleservice;1"].getService(Ci.nsIConsoleService).getMessageArray(outparam, {}); + messages = messages || outparam.value || []; + messages = messages.filter(function(message) + { + return (message instanceof Ci.nsIScriptError && + !/^https?:/i.test(message.sourceName) && + (/adblock/i.test(message.errorMessage) || /adblock/i.test(message.sourceName) || + message.errorMessage.indexOf(addonID) >= 0 || message.sourceName && message.sourceName.indexOf(addonID) >= 0)); + }); + if (messages.length > 10) // Only the last 10 messages + messages = messages.slice(messages.length - 10, messages.length); + + // Censor app and profile paths in error messages + let censored = {__proto__: null}; + let pathList = [["ProfD", "%PROFILE%"], ["GreD", "%GRE%"], ["CurProcD", "%APP%"]]; + for (let i = 0; i < pathList.length; i++) + { + let [pathID, placeholder] = pathList[i]; + try + { + let file = FileUtils.getDir(pathID, [], false); + censored[file.path.replace(/[\\\/]+$/, '')] = placeholder; + let uri = Utils.ioService.newFileURI(file); + censored[uri.spec.replace(/[\\\/]+$/, '')] = placeholder; + } catch(e) {} + } + + let errors = reportElement("errors"); + for (let i = 0; i < messages.length; i++) + { + let message = messages[i]; + + let text = message.errorMessage; + for (let path in censored) + text = text.replace(path, censored[path], "gi"); + if (text.length > 256) + text = text.substr(0, 256) + "..."; + + let file = message.sourceName; + for (let path in censored) + file = file.replace(path, censored[path], "gi"); + if (file.length > 256) + file = file.substr(0, 256) + "..."; + + let sourceLine = message.sourceLine; + if (sourceLine.length > 256) + sourceLine = sourceLine.substr(0, 256) + "..."; + + appendElement(errors, "error", { + type: message.flags & Ci.nsIScriptError.warningFlag ? "warning" : "error", + text: text, + file: file, + line: message.lineNumber, + column: message.columnNumber, + sourceLine: sourceLine + }); + } + + callback(); + } +}; + +let extensionsDataSource = +{ + data: reportData.createElement("extensions"), + + collectData: function(wnd, windowURI, callback) + { + try + { + let AddonManager = Cu.import("resource://gre/modules/AddonManager.jsm", null).AddonManager; + AddonManager.getAddonsByTypes(["extension", "plugin"], function(items) + { + for (let i = 0; i < items.length; i++) + { + let item = items[i]; + if (!item.isActive) + continue; + appendElement(this.data, "extension", { + id: item.id, + name: item.name, + type: item.type, + version: item.version + }); + } + callback(); + }.bind(this)); + } + catch (e) + { + // No add-on manager, what's going on? Skip this step. + callback(); + } + }, + + exportData: function(doExport) + { + if (doExport) + reportData.documentElement.appendChild(this.data); + else if (this.data.parentNode) + this.data.parentNode.removeChild(this.data); + } +}; + +let subscriptionUpdateDataSource = +{ + contentWnd: null, + type: null, + outdated: null, + needUpdate: null, + + collectData: function(wnd, windowURI, callback) + { + this.contentWnd = wnd; + let now = Date.now() / MILLISECONDS_IN_SECOND; + let outdatedThreshold = now - 14 * SECONDS_IN_DAY; + let needUpdateThreshold = now - 1 * SECONDS_IN_HOUR; + + this.outdated = []; + this.needUpdate = []; + + let subscriptions = FilterStorage.subscriptions.filter(issuesDataSource.subscriptionFilter); + for (let i = 0; i < subscriptions.length; i++) + { + let lastSuccess = subscriptions[i].lastSuccess; + if (lastSuccess < outdatedThreshold) + this.outdated.push(subscriptions[i]); + if (lastSuccess < needUpdateThreshold) + this.needUpdate.push(subscriptions[i]); + } + + callback(); + }, + + updatePage: function(type) + { + this.type = type; + E("updateInProgress").hidden = (type != "false positive" || this.needUpdate.length == 0); + E("outdatedSubscriptions").hidden = !E("updateInProgress").hidden || this.outdated.length == 0; + if (!E("outdatedSubscriptions").hidden) + { + let template = E("outdatedSubscriptionTemplate"); + let list = E("outdatedSubscriptionsList"); + while (list.lastChild) + list.removeChild(list.lastChild); + + for (let i = 0; i < this.outdated.length; i++) + { + let subscription = this.outdated[i]; + let entry = template.cloneNode(true); + entry.removeAttribute("id"); + entry.removeAttribute("hidden"); + entry.setAttribute("_url", subscription.url); + entry.setAttribute("tooltiptext", subscription.url); + entry.textContent = subscription.title; + list.appendChild(entry); + } + } + return !E("updateInProgress").hidden || !E("outdatedSubscriptions").hidden; + }, + + showPage: function() + { + document.documentElement.canAdvance = false; + + if (!E("updateInProgress").hidden) + { + document.documentElement.canRewind = false; + + for (let i = 0; i < this.needUpdate.length; i++) + Synchronizer.execute(this.needUpdate[i], true); + + let listener = function(action) + { + if (!/^subscription\./.test(action)) + return; + + for (let i = 0; i < this.needUpdate.length; i++) + if (Synchronizer.isExecuting(this.needUpdate[i].url)) + return; + + FilterNotifier.removeListener(listener); + E("updateInProgress").hidden = "true"; + + let filtersRemoved = false; + let requests = requestsDataSource.origRequests; + for (let i = 0; i < requests.length; i++) + if (requests[i].filter && !requests[i].filter.subscriptions.filter(function(s) !s.disabled).length) + filtersRemoved = true; + + if (filtersRemoved) + { + // Force the user to reload the page + E("updateFixedIssue").hidden = false; + document.documentElement.canAdvance = true; + + let nextButton = document.documentElement.getButton("next"); + [nextButton.label, nextButton.accessKey] = Utils.splitLabel(E("updatePage").getAttribute("reloadButtonLabel")); + document.documentElement.addEventListener("wizardnext", function(event) + { + event.preventDefault(); + event.stopPropagation(); + window.close(); + this.contentWnd.location.reload(); + }.bind(this), true); + } + else + { + this.collectData(null, null, function() {}); + this.needUpdate = []; + if (this.outdated.length) + { + document.documentElement.canRewind = true; + + this.updatePage(this.type); + this.showPage(); + } + else + { + // No more issues, make sure to remove this page from history and + // advance to the next page. + document.documentElement.canRewind = true; + document.documentElement.canAdvance = true; + + let next = document.documentElement.currentPage.next; + document.documentElement.rewind(); + document.documentElement.currentPage.next = next; + + document.documentElement.advance(); + } + } + }.bind(this); + + FilterNotifier.addListener(listener); + window.addEventListener("unload", function() + { + FilterNotifier.removeListener(listener); + }); + } + }, + + updateOutdated: function() + { + for (let i = 0; i < this.outdated.length; i++) + Synchronizer.execute(this.outdated[i], true); + } +} + +let issuesDataSource = +{ + contentWnd: null, + isEnabled: Prefs.enabled, + whitelistFilter: null, + disabledFilters: [], + disabledSubscriptions: [], + ownFilters: [], + numSubscriptions: 0, + numAppliedFilters: Infinity, + + subscriptionFilter: function(s) + { + if (s instanceof DownloadableSubscription) + return subscriptionsDataSource.subscriptionFilter(s); + else + return false; + }, + + collectData: function(wnd, windowURI, callback) + { + this.contentWnd = wnd; + this.whitelistFilter = Policy.isWindowWhitelisted(wnd); + + if (!this.whitelistFilter && this.isEnabled) + { + // Find disabled filters in active subscriptions matching any of the requests + let disabledMatcher = new CombinedMatcher(); + for each (let subscription in FilterStorage.subscriptions) + { + if (subscription.disabled) + continue; + + for each (let filter in subscription.filters) + if (filter instanceof BlockingFilter && filter.disabled) + disabledMatcher.add(filter); + } + + let seenFilters = {__proto__: null}; + for each (let request in requestsDataSource.origRequests) + { + if (request.filter) + continue; + + let filter = disabledMatcher.matchesAny(request.location, request.typeDescr, request.docDomain, request.thirdParty); + if (filter && !(filter.text in seenFilters)) + { + this.disabledFilters.push(filter); + seenFilters[filter.text] = true; + } + } + + // Find disabled subscriptions with filters matching any of the requests + let seenSubscriptions = {__proto__: null}; + for each (let subscription in FilterStorage.subscriptions) + { + if (!subscription.disabled) + continue; + + disabledMatcher.clear(); + for each (let filter in subscription.filters) + if (filter instanceof BlockingFilter) + disabledMatcher.add(filter); + + for each (let request in requestsDataSource.origRequests) + { + if (request.filter) + continue; + + let filter = disabledMatcher.matchesAny(request.location, request.typeDescr, request.docDomain, request.thirdParty); + if (filter && !(subscription.url in seenSubscriptions)) + { + this.disabledSubscriptions.push(subscription); + seenSubscriptions[subscription.text] = true; + break; + } + } + } + + this.numSubscriptions = FilterStorage.subscriptions.filter(this.subscriptionFilter).length; + this.numAppliedFilters = 0; + for each (let filter in filtersDataSource.origFilters) + { + if (filter instanceof WhitelistFilter) + continue; + + this.numAppliedFilters++; + if (filter.subscriptions.some(function(subscription) subscription instanceof SpecialSubscription)) + this.ownFilters.push(filter); + } + } + + callback(); + }, + + updateIssues: function(type) + { + if (type == "other") + { + E("typeSelectorPage").next = "typeWarning"; + return; + } + + E("issuesWhitelistBox").hidden = !this.whitelistFilter; + E("issuesDisabledBox").hidden = this.isEnabled; + E("issuesNoFiltersBox").hidden = (type != "false positive" || this.numAppliedFilters > 0); + E("issuesNoSubscriptionsBox").hidden = (type != "false negative" || this.numAppliedFilters > 0 || this.numSubscriptions > 0); + E("issuesSubscriptionCountBox").hidden = (this.numSubscriptions < 5); + + let ownFiltersBox = E("issuesOwnFilters"); + if (this.ownFilters.length && !ownFiltersBox.firstChild) + { + let template = E("issuesOwnFiltersTemplate"); + for each (let filter in this.ownFilters) + { + let element = template.cloneNode(true); + element.removeAttribute("id"); + element.removeAttribute("hidden"); + element.firstChild.setAttribute("value", filter.text); + element.firstChild.setAttribute("tooltiptext", filter.text); + element.abpFilter = filter; + ownFiltersBox.appendChild(element); + } + } + E("issuesOwnFiltersBox").hidden = (type != "false positive" || this.ownFilters.length == 0); + + let disabledSubscriptionsBox = E("issuesDisabledSubscriptions"); + if (this.disabledSubscriptions.length && !disabledSubscriptionsBox.firstChild) + { + let template = E("issuesDisabledSubscriptionsTemplate"); + for each (let subscription in this.disabledSubscriptions) + { + let element = template.cloneNode(true); + element.removeAttribute("id"); + element.removeAttribute("hidden"); + element.firstChild.setAttribute("value", subscription.title); + element.setAttribute("tooltiptext", subscription instanceof DownloadableSubscription ? subscription.url : subscription.title); + element.abpSubscription = subscription; + disabledSubscriptionsBox.appendChild(element); + } + } + E("issuesDisabledSubscriptionsBox").hidden = (type != "false negative" || this.disabledSubscriptions.length == 0); + + let disabledFiltersBox = E("issuesDisabledFilters"); + if (this.disabledFilters.length && !disabledFiltersBox.firstChild) + { + let template = E("issuesDisabledFiltersTemplate"); + for each (let filter in this.disabledFilters) + { + let element = template.cloneNode(true); + element.removeAttribute("id"); + element.removeAttribute("hidden"); + element.firstChild.setAttribute("value", filter.text); + element.setAttribute("tooltiptext", filter.text); + element.abpFilter = filter; + disabledFiltersBox.appendChild(element); + } + } + E("issuesDisabledFiltersBox").hidden = (type != "false negative" || this.disabledFilters.length == 0); + + // Don't allow sending report if the page is whitelisted - we need the data. + // Also disallow reports without matching filters or without subscriptions, + // subscription authors cannot do anything about those. + E("issuesOverride").hidden = !E("issuesWhitelistBox").hidden || + !E("issuesDisabledBox").hidden || + !E("issuesNoFiltersBox").hidden || + !E("issuesNoSubscriptionsBox").hidden || + !E("issuesSubscriptionCountBox").hidden; + + let page = E("typeSelectorPage"); + if (subscriptionUpdateDataSource.updatePage(type)) + { + page.next = "update"; + page = E("updatePage"); + } + + if (E("issuesWhitelistBox").hidden && E("issuesDisabledBox").hidden && + E("issuesNoFiltersBox").hidden && E("issuesNoSubscriptionsBox").hidden && + E("issuesOwnFiltersBox").hidden && E("issuesDisabledFiltersBox").hidden && + E("issuesDisabledSubscriptionsBox").hidden && E("issuesSubscriptionCountBox").hidden) + { + page.next = "screenshot"; + } + else + { + page.next = "issues"; + } + }, + + forceReload: function() + { + // User changed configuration, don't allow sending report now - page needs + // to be reloaded + E("issuesOverride").hidden = true; + E("issuesChangeMessage").hidden = false; + document.documentElement.canRewind = false; + document.documentElement.canAdvance = true; + + let contentWnd = this.contentWnd; + let nextButton = document.documentElement.getButton("next"); + [nextButton.label, nextButton.accessKey] = Utils.splitLabel(E("updatePage").getAttribute("reloadButtonLabel")); + document.documentElement.addEventListener("wizardnext", function(event) + { + event.preventDefault(); + event.stopPropagation(); + window.close(); + contentWnd.location.reload(); + }, true); + }, + + removeWhitelist: function() + { + if (this.whitelistFilter && this.whitelistFilter.subscriptions.length) + this.whitelistFilter.disabled = true; + E("issuesWhitelistBox").hidden = true; + this.forceReload(); + }, + + enable: function() + { + Prefs.enabled = true; + E("issuesDisabledBox").hidden = true; + this.forceReload(); + }, + + addSubscription: function() + { + let result = {}; + openDialog("subscriptionSelection.xul", "_blank", "chrome,centerscreen,modal,resizable,dialog=no", null, result); + if (!("url" in result)) + return; + + let subscriptionResults = [[result.url, result.title]]; + if ("mainSubscriptionURL" in result) + subscriptionResults.push([result.mainSubscriptionURL, result.mainSubscriptionTitle]); + + for each (let [url, title] in subscriptionResults) + { + let subscription = Subscription.fromURL(url); + if (!subscription) + continue; + + FilterStorage.addSubscription(subscription); + + subscription.disabled = false; + subscription.title = title; + + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + } + + E("issuesNoSubscriptionsBox").hidden = true; + this.forceReload(); + }, + + disableFilter: function(node) + { + let filter = node.abpFilter; + if (filter && filter.subscriptions.length) + filter.disabled = true; + + node.parentNode.removeChild(node); + if (!E("issuesOwnFilters").firstChild) + E("issuesOwnFiltersBox").hidden = true; + this.forceReload(); + }, + + enableFilter: function(node) + { + let filter = node.abpFilter; + if (filter && filter.subscriptions.length) + filter.disabled = false; + + node.parentNode.removeChild(node); + if (!E("issuesDisabledFilters").firstChild) + E("issuesDisabledFiltersBox").hidden = true; + this.forceReload(); + }, + + + enableSubscription: function(node) + { + let subscription = node.abpSubscription; + if (subscription) + subscription.disabled = false; + + node.parentNode.removeChild(node); + if (!E("issuesDisabledSubscriptions").firstChild) + E("issuesDisabledSubscriptionsBox").hidden = true; + this.forceReload(); + } +}; + +let dataCollectors = [reportsListDataSource, requestsDataSource, filtersDataSource, subscriptionsDataSource, + screenshotDataSource, framesDataSource, errorsDataSource, extensionsDataSource, + subscriptionUpdateDataSource, issuesDataSource]; + +// +// Wizard logic +// + +function initWizard() +{ + // Make sure no issue type is selected by default + E("typeGroup").selectedItem = null; + document.documentElement.addEventListener("pageshow", updateNextButton, false); + + // Move wizard header + let header = document.getAnonymousElementByAttribute(document.documentElement, "class", "wizard-header"); + if (header) + { + document.getElementById("wizardHeaderLabel").setAttribute("value", document.documentElement.wizardPages[0].getAttribute("label")); + document.documentElement.insertBefore(document.getElementById("wizardHeader"), document.documentElement.firstChild); + document.documentElement.addEventListener("pageshow", function() + { + document.getElementById("wizardHeaderDeck").selectedIndex = (document.documentElement.pageIndex == 0 ? 0 : 1); + }, false); + } + + // Move privacy link + let extraButton = document.documentElement.getButton("extra1"); + extraButton.parentNode.insertBefore(E("privacyLink"), extraButton); +} + +function updateNextButton() +{ + let nextButton = document.documentElement.getButton("next"); + if (!nextButton) + return; + + if (document.documentElement.currentPage.id == "commentPage") + { + if (!("_origLabel" in nextButton)) + { + nextButton._origLabel = nextButton.label; + nextButton._origAccessKey = nextButton.accessKey; + [nextButton.label, nextButton.accessKey] = Utils.splitLabel(document.documentElement.getAttribute("sendbuttonlabel")); + } + } + else + { + if ("_origLabel" in nextButton) + { + nextButton.label = nextButton._origLabel; + nextButton.accessKey = nextButton._origAccessKey; + delete nextButton._origLabel; + delete nextButton._origAccessKey; + } + } +} + +function initDataCollectorPage() +{ + document.documentElement.canAdvance = false; + + let totalSteps = dataCollectors.length; + let initNextDataSource = function() + { + if (!dataCollectors.length) + { + // We are done, continue to next page + document.documentElement.canAdvance = true; + document.documentElement.advance(); + return; + } + + let progress = (totalSteps - dataCollectors.length) / totalSteps * 100; + if (progress > 0) + { + let progressMeter = E("dataCollectorProgress"); + progressMeter.mode = "determined"; + progressMeter.value = progress; + } + + // Continue with the next data source, asynchronously to allow progress meter to update + let dataSource = dataCollectors.shift(); + Utils.runAsync(function() + { + dataSource.collectData(contentWindow, windowURI, initNextDataSource); + }); + }; + + initNextDataSource(); +} + +function initTypeSelectorPage() +{ + E("progressBar").activeItem = E("typeSelectorHeader"); + let header = document.getAnonymousElementByAttribute(document.documentElement, "class", "wizard-header"); + if (header) + header.setAttribute("viewIndex", "1"); + + document.documentElement.canRewind = false; + typeSelectionUpdated(); +} + +function typeSelectionUpdated() +{ + let selection = E("typeGroup").selectedItem; + document.documentElement.canAdvance = (selection != null); + if (selection) + { + if (reportData.documentElement.getAttribute("type") != selection.value) + { + E("screenshotCheckbox").checked = (selection.value != "other"); + E("screenshotCheckbox").doCommand(); + E("extensionsCheckbox").checked = (selection.value == "other"); + E("extensionsCheckbox").doCommand(); + } + reportData.documentElement.setAttribute("type", selection.value); + + issuesDataSource.updateIssues(selection.value); + } +} + +function initIssuesPage() +{ + updateIssuesOverride(); +} + +function updateIssuesOverride() +{ + document.documentElement.canAdvance = E("issuesOverride").checked; +} + +function initTypeWarningPage() +{ + updateTypeWarningOverride(); + + let textElement = E("typeWarningText"); + if ("abpInitialized" in textElement) + return; + + let template = textElement.textContent.replace(/[\r\n\s]+/g, " "); + + let [, beforeLink, linkText, afterLink] = /(.*)\[link\](.*)\[\/link\](.*)/.exec(template) || [null, "", template, ""]; + while (textElement.firstChild && textElement.firstChild.nodeType != Node.ELEMENT_NODE) + textElement.removeChild(textElement.firstChild); + while (textElement.lastChild && textElement.lastChild.nodeType != Node.ELEMENT_NODE) + textElement.removeChild(textElement.lastChild); + + if (textElement.firstChild) + textElement.firstChild.textContent = linkText; + textElement.insertBefore(document.createTextNode(beforeLink), textElement.firstChild); + textElement.appendChild(document.createTextNode(afterLink)); + textElement.abpInitialized = true; +} + +function updateTypeWarningOverride() +{ + document.documentElement.canAdvance = E("typeWarningOverride").checked; +} + +function initScreenshotPage() +{ + document.documentElement.canAdvance = true; + + E("progressBar").activeItem = E("screenshotHeader"); +} + +function initCommentPage() +{ + E("progressBar").activeItem = E("commentPageHeader"); + + updateEmail(); + + screenshotDataSource.exportData(); + updateDataField(); +} + +function showDataField() +{ + E('dataDeck').selectedIndex = 1; + updateDataField(); + E('data').focus(); +} + +let _dataFieldUpdateTimeout = null; + +function _updateDataField() +{ + let dataField = E("data"); + let [selectionStart, selectionEnd] = [dataField.selectionStart, dataField.selectionEnd]; + dataField.value = serializeReportData(); + dataField.setSelectionRange(selectionStart, selectionEnd); +} + +function updateDataField() +{ + // Don't do anything if data field is hidden + if (E('dataDeck').selectedIndex != 1) + return; + + if (_dataFieldUpdateTimeout) + { + window.clearTimeout(_dataFieldUpdateTimeout); + _dataFieldUpdateTimeout = null; + } + + _dataFieldUpdateTimeout = window.setTimeout(_updateDataField, 200); +} + +function updateComment() +{ + removeReportElement("comment"); + + let value = E("comment").value; + appendElement(reportData.documentElement, "comment", null, value.substr(0, 1000)); + E("commentLengthWarning").setAttribute("visible", value.length > 1000); + updateDataField(); +} + +function updateEmail() +{ + removeReportElement("email"); + + let anonymous = E("anonymousCheckbox").checked; + + let value = E("email").value; + + // required for persist to work on textbox, see: https://bugzilla.mozilla.org/show_bug.cgi?id=111486 + E("email").setAttribute("value", value); + + E("email").disabled = anonymous; + E("emailLabel").disabled = anonymous; + E("anonymityWarning").setAttribute("visible", anonymous); + + if (!anonymous) + appendElement(reportData.documentElement, "email", null, value); + + updateDataField(); + + document.documentElement.canAdvance = anonymous || /\S/.test(value); +} + +function updateExtensions(attach) +{ + extensionsDataSource.exportData(attach); + updateDataField(); +} + +function initSendPage() +{ + E("progressBar").activeItem = E("sendPageHeader"); + + E("result").hidden = true; + E("sendReportErrorBox").hidden = true; + E("sendReportMessage").hidden = false; + E("sendReportProgress").hidden = false; + E("sendReportProgress").mode = "undetermined"; + + document.documentElement.canRewind = false; + document.documentElement.getButton("finish").disabled = true; + + let guid = Cc["@mozilla.org/uuid-generator;1"].getService(Ci.nsIUUIDGenerator).generateUUID().toString().replace(/[\{\}]/g, ""); + let url = Prefs.report_submiturl.replace(/%GUID%/g, guid).replace(/%LANG%/g, Utils.appLocale); + let request = new XMLHttpRequest(); + request.open("POST", url); + request.setRequestHeader("Content-Type", "text/xml"); + request.setRequestHeader("X-Adblock-Plus", "1"); + request.addEventListener("load", reportSent, false); + request.addEventListener("error", reportSent, false); + if ("upload" in request && request.upload) + request.upload.addEventListener("progress", updateReportProgress, false); + request.send(serializeReportData()); +} + +function updateReportProgress(event) +{ + if (!event.lengthComputable) + return; + + let progress = Math.round(event.loaded / event.total * 100); + if (progress > 0) + { + let progressMeter = E("sendReportProgress"); + progressMeter.mode = "determined"; + progressMeter.value = progress; + } +} + +function reportSent(event) +{ + let request = event.target; + let success = false; + let errorMessage = E("sendReportError").getAttribute("defaultError"); + try + { + let status = request.channel.status; + if (Components.isSuccessCode(status)) + { + success = (request.status == 200 || request.status == 0); + errorMessage = request.status + " " + request.statusText; + } + else + { + errorMessage = "0x" + status.toString(16); + + // Try to find the name for the status code + let exception = Cc["@mozilla.org/js/xpc/Exception;1"].createInstance(Ci.nsIXPCException); + exception.initialize(null, status, null, null, null, null); + if (exception.name) + errorMessage = exception.name; + } + } catch (e) {} + + let result = ""; + try + { + result = request.responseText; + } catch (e) {} + + result = result.replace(/%CONFIRMATION%/g, encodeHTML(E("result").getAttribute("confirmationMessage"))); + result = result.replace(/%KNOWNISSUE%/g, encodeHTML(E("result").getAttribute("knownIssueMessage"))); + result = result.replace(/(<html)\b/, '$1 dir="' + window.getComputedStyle(document.documentElement, "").direction + '"'); + + if (!success) + { + let errorElement = E("sendReportError"); + let template = errorElement.getAttribute("textTemplate").replace(/[\r\n\s]+/g, " "); + + let [, beforeLink, linkText, afterLink] = /(.*)\[link\](.*)\[\/link\](.*)/.exec(template) || [null, "", template, ""]; + beforeLink = beforeLink.replace(/\?1\?/g, errorMessage); + afterLink = afterLink.replace(/\?1\?/g, errorMessage); + + while (errorElement.firstChild && errorElement.firstChild.nodeType != Node.ELEMENT_NODE) + errorElement.removeChild(errorElement.firstChild); + while (errorElement.lastChild && errorElement.lastChild.nodeType != Node.ELEMENT_NODE) + errorElement.removeChild(errorElement.lastChild); + + if (errorElement.firstChild) + errorElement.firstChild.textContent = linkText; + errorElement.insertBefore(document.createTextNode(beforeLink), errorElement.firstChild); + errorElement.appendChild(document.createTextNode(afterLink)); + + E("sendReportErrorBox").hidden = false; + } + + E("sendReportProgress").hidden = true; + + let frame = E("result"); + frame.hidden = false; + frame.docShell.allowAuth = false; + frame.docShell.allowJavascript = false; + frame.docShell.allowMetaRedirects = false; + frame.docShell.allowPlugins = false; + frame.docShell.allowSubframes = false; + + frame.setAttribute("src", "data:text/html;charset=utf-8," + encodeURIComponent(result)); + + E("sendReportMessage").hidden = true; + + if (success) + { + try + { + let link = request.responseXML.getElementById("link").getAttribute("href"); + let button = E("copyLink"); + button.setAttribute("url", link); + button.removeAttribute("disabled"); + + if (!PrivateBrowsing.enabledForWindow(contentWindow) && !PrivateBrowsing.enabled) + reportsListDataSource.addReport(framesDataSource.site, link); + } catch (e) {} + E("copyLinkBox").hidden = false; + + document.documentElement.getButton("finish").disabled = false; + document.documentElement.getButton("cancel").disabled = true; + E("progressBar").activeItemComplete = true; + } +} + +function processLinkClick(event) +{ + event.preventDefault(); + + let link = event.target; + while (link && !(link instanceof HTMLAnchorElement)) + link = link.parentNode; + + if (link && (link.protocol == "http:" || link.protocol == "https:")) + UI.loadInBrowser(link.href); +} + +function copyLink(url) +{ + Utils.clipboardHelper.copyString(url); +} + +function censorURL(url) +{ + return url.replace(/([?;&\/#][^?;&\/#]+?=)[^?;&\/#]+/g, "$1*"); +} + +function encodeHTML(str) +{ + return str.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """); +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sendReport.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sendReport.xul new file mode 100644 index 0000000..54e0726 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sendReport.xul @@ -0,0 +1,259 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://global/skin/wizard.css" type="text/css"?> +<?xml-stylesheet href="chrome://adblockplus/skin/sendReport.css" type="text/css"?> + +<?xul-overlay href="progressBar.xul"?> + +<!DOCTYPE dialog [ +<!ENTITY % reporterDTD SYSTEM "chrome://adblockplus/locale/sendReport.dtd"> +%reporterDTD; +<!ENTITY % filtersDTD SYSTEM "chrome://adblockplus/locale/filters.dtd"> +%filtersDTD; +]> + +<wizard + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + title="&wizard.title;" + id="abpSendReportWizard" + onload="initWizard();" + width="800" + height="550" + sendbuttonlabel="&sendButton.label;" + windowtype="abp:sendReport"> + +<script type="application/x-javascript;version=1.7" src="utils.js"/> +<script type="application/x-javascript;version=1.7" src="sendReport.js"/> + +<keyset id="wizardKeys"> + <key id="undoKey" modifiers="accel" key="Z" oncommand="if (document.documentElement.currentPage.id == 'screenshotPage') screenshotDataSource.undo();"/> +</keyset> + +<box hidden="true"> + <vbox id="wizardHeader" class="wizard-header"> + <deck id="wizardHeaderDeck"> + <description id="wizardHeaderLabel" class="wizard-header-label"/> + <hbox id="progressBar"> + <label id="typeSelectorHeader" class="progressLabel" value="&typeSelector.heading;" crop="end"/> + <label id="screenshotHeader" class="progressLabel" value="&screenshot.heading;" crop="end"/> + <label id="commentPageHeader" class="progressLabel" value="&commentPage.heading;" crop="end"/> + <label id="sendPageHeader" class="progressLabel" value="&sendPage.heading;" crop="end"/> + </hbox> + </deck> + </vbox> + + <label id="privacyLink" class="text-link" value="&privacyPolicy.label;" onclick="UI.loadDocLink('reporter_privacy');"/> +</box> + +<wizardpage id="dataCollectorPage" pageid="dataCollector" next="typeSelector" label="&dataCollector.heading;" onpageshow="initDataCollectorPage();"> + <description>&dataCollector.description;</description> + + <progressmeter id="dataCollectorProgress" mode="undetermined"/> +</wizardpage> + +<wizardpage id="typeSelectorPage" pageid="typeSelector" next="screenshot" label="&typeSelector.heading;" onpageshow="initTypeSelectorPage();"> + <description>&typeSelector.description;</description> + + <radiogroup id="typeGroup" oncommand="typeSelectionUpdated();"> + <radio id="typeFalsePositive" value="false positive" label="&typeSelector.falsePositive.label;"/> + <description class="radioDescription">&typeSelector.falsePositive.description;</description> + <radio id="typeFalseNegative" value="false negative" label="&typeSelector.falseNegative.label;"/> + <description class="radioDescription">&typeSelector.falseNegative.description;</description> + <radio id="typeOther" value="other" label="&typeSelector.other.label;"/> + <description class="radioDescription">&typeSelector.other.description;</description> + </radiogroup> + + <deck id="recentReports" currentIndex="0" flex="1"> + <vbox pack="end"> + <label class="text-link" value="&showRecentReports.label;" onclick="E('recentReports').selectedIndex = 1;"/> + </vbox> + <groupbox flex="1"> + <caption label="&recentReports.label;"/> + <grid flex="1" id="recentReportsList"> + <columns> + <column flex="2"/> + <column flex="1"/> + <column/> + </columns> + <rows id="recentReportsRows" onclick="reportsListDataSource.handleClick(event);"/> + </grid> + + <hbox pack="start"> + <button label="&recentReports.clear.label;" oncommand="reportsListDataSource.clear();"/> + </hbox> + </groupbox> + </deck> +</wizardpage> + +<wizardpage id="updatePage" pageid="update" next="screenshot" onpageshow="subscriptionUpdateDataSource.showPage();" reloadButtonLabel="&reloadButton.label;"> + <vbox id="updateInProgress"> + <description>&update.inProgress.description;</description> + <progressmeter mode="undetermined"/> + </vbox> + + <description id="updateFixedIssue" hidden="true">&update.fixed.description;</description> + + <vbox id="outdatedSubscriptions"> + <description>&outdatedSubscriptions.description;</description> + + <description id="outdatedSubscriptionTemplate" class="text-link" onclick="UI.loadInBrowser(this.getAttribute('_url'));"/> + + <vbox id="outdatedSubscriptionsList"/> + + <hbox> + <button label="&update.start.label;" oncommand="subscriptionUpdateDataSource.updateOutdated();window.close();"/> + <button label="&issues.openPreferences.label;" oncommand="UI.openFiltersDialog();window.close();"/> + </hbox> + </vbox> +</wizardpage> + +<wizardpage id="issuesPage" pageid="issues" next="screenshot" onpageshow="initIssuesPage();" reloadButtonLabel="&reloadButton.label;"> + <description>&issues.description;</description> + + <vbox id="issuesBox" flex="1"> + <groupbox id="issuesWhitelistBox" hidden="true"> + <description>&issues.whitelist.description;</description> + <hbox pack="end"> + <button label="&issues.whitelist.remove.label;" oncommand="issuesDataSource.removeWhitelist();"/> + </hbox> + </groupbox> + <groupbox id="issuesDisabledBox" hidden="true"> + <description>&issues.disabled.description;</description> + <hbox pack="end"> + <button label="&issues.disabled.enable.label;" oncommand="issuesDataSource.enable();"/> + </hbox> + </groupbox> + <groupbox id="issuesNoFiltersBox" hidden="true"> + <description>&issues.nofilters.description;</description> + </groupbox> + <groupbox id="issuesNoSubscriptionsBox" hidden="true"> + <description>&issues.nosubscriptions.description;</description> + <hbox pack="end"> + <button label="&issues.nosubscriptions.add.label;" oncommand="issuesDataSource.addSubscription();"/> + </hbox> + </groupbox> + <groupbox id="issuesSubscriptionCountBox" hidden="true"> + <description>&issues.subscriptionCount.description;</description> + <hbox pack="end"> + <button label="&issues.openPreferences.label;" oncommand="UI.openFiltersDialog();window.close();"/> + </hbox> + </groupbox> + <groupbox id="issuesOwnFiltersBox" hidden="true"> + <description>&issues.ownfilters.description;</description> + <hbox id="issuesOwnFiltersTemplate" align="center" hidden="true"> + <description flex="1" crop="end"/> + <button label="&issues.ownfilters.disable.label;" oncommand="issuesDataSource.disableFilter(this.parentNode);"/> + </hbox> + <vbox id="issuesOwnFilters"/> + </groupbox> + <groupbox id="issuesDisabledSubscriptionsBox" hidden="true"> + <description>&issues.disabledgroups.description;</description> + <hbox id="issuesDisabledSubscriptionsTemplate" align="center" hidden="true"> + <description flex="1" crop="end"/> + <button label="&issues.disabledgroups.enable.label;" oncommand="issuesDataSource.enableSubscription(this.parentNode);"/> + </hbox> + <vbox id="issuesDisabledSubscriptions"/> + </groupbox> + <groupbox id="issuesDisabledFiltersBox" hidden="true"> + <description>&issues.disabledfilters.description;</description> + <hbox id="issuesDisabledFiltersTemplate" align="center" hidden="true"> + <description flex="1" crop="end"/> + <button label="&issues.disabledfilters.enable.label;" oncommand="issuesDataSource.enableFilter(this.parentNode);"/> + </hbox> + <vbox id="issuesDisabledFilters"/> + </groupbox> + </vbox> + + <checkbox id="issuesOverride" label="&issues.override.label;" oncommand="updateIssuesOverride();"/> + <description id="issuesChangeMessage" hidden="true">&issues.change.description;</description> +</wizardpage> + +<wizardpage id="typeWarningPage" pageid="typeWarning" next="screenshot" onpageshow="initTypeWarningPage();"> + <description id="typeWarningText"> + &typeWarning.description; + <label id="typeWarningTextLink" class="text-link" onclick="UI.loadDocLink('reporter_other_link');"/> + </description> + + <checkbox id="typeWarningOverride" label="&typeWarning.override.label;" oncommand="updateTypeWarningOverride();"/> +</wizardpage> + +<wizardpage id="screenshotPage" pageid="screenshot" next="comment" label="&screenshot.heading;" onpageshow="initScreenshotPage();"> + <description>&screenshot.description;</description> + + <checkbox id="screenshotCheckbox" checked="true" label="&screenshot.attach.label;" oncommand="screenshotDataSource.enabled = this.checked;"/> + <hbox id="screenshotButtons" pack="end"> + <button id="screenshotMarkButton" type="radio" group="selectionType" oncommand="screenshotDataSource.selectionType = 'mark';" checked="true" label="&screenshot.mark.label;"/> + <button id="screenshotRemoveButton" type="radio" group="selectionType" oncommand="screenshotDataSource.selectionType = 'remove';" label="&screenshot.remove.label;"/> + <button id="screenshotUndoButton" oncommand="screenshotDataSource.undo();" disabled="true" label="&screenshot.undo.label;"/> + </hbox> + <vbox id="screenshotBox" flex="1"> + <canvas xmlns="http://www.w3.org/1999/xhtml" id="screenshotCanvas" onmousedown="screenshotDataSource.startSelection(event);" onmouseup="screenshotDataSource.stopSelection(event);" onmouseout="screenshotDataSource.stopSelection(event);" onmousemove="screenshotDataSource.updateSelection(event);"/> + </vbox> +</wizardpage> + +<wizardpage id="commentPage" pageid="comment" next="send" label="&commentPage.heading;" onpageshow="initCommentPage();"> + <description>&emailComment.label;</description> + <hbox class="topLabel" align="baseline"> + <label id="emailLabel" control="email" value="&email.label;"/> + <textbox id="email" persist="value" flex="1" maxlength="200" oninput="updateEmail();"/> + </hbox> + <checkbox id="anonymousCheckbox" label="&anonymous.label;" oncommand="updateEmail();"/> + <description id="anonymityWarning" visible="false">&anonymity.warning;</description> + + <description class="topLabel">&commentPage.description;</description> + <label class="topLabel" control="comment" value="&comment.label;"/> + <textbox id="comment" multiline="true" flex="1" oninput="updateComment();"/> + <description id="commentLengthWarning" visible="false">&comment.lengthWarning;</description> + + <checkbox id="extensionsCheckbox" label="&attachExtensions.label;" oncommand="updateExtensions(this.checked);"/> + + <deck id="dataDeck" selectedIndex="0" flex="2"> + <vbox pack="start"> + <label class="text-link" value="&showData.label;" onclick="showDataField();"/> + </vbox> + <vbox> + <label control="data" value="&data.label;"/> + <textbox id="data" readonly="true" multiline="true" wrap="off" flex="1"/> + </vbox> + </deck> +</wizardpage> + +<wizardpage id="sendPage" pageid="send" label="&sendPage.heading;" onpageshow="initSendPage();"> + <description id="sendReportMessage">&sendPage.waitMessage;</description> + + <vbox id="sendReportErrorBox" align="end" hidden="true"> + <description id="sendReportError" textTemplate="&sendPage.errorMessage;" defaultError="&subscription.lastDownload.connectionError;"> + <label id="sendReportErrorLinks" class="text-link" onclick="UI.loadDocLink('reporter_connect_issue');"/> + </description> + <button id="sendRetryButton" label="&sendPage.retry.label;" oncommand="initSendPage();"/> + </vbox> + + <progressmeter id="sendReportProgress" mode="undetermined"/> + + <iframe id="result" type="content" flex="1" hidden="true" onclick="processLinkClick(event);" + confirmationMessage="&sendPage.confirmation;" knownIssueMessage="&sendPage.knownIssue;"/> + + <hbox id="copyLinkBox" pack="end" hidden="true"> + <button id="copyLink" disabled="true" label="©Link.label;" oncommand="copyLink(this.getAttribute('url'));"/> + </hbox> +</wizardpage> + +</wizard> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/settings.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/settings.xul new file mode 100644 index 0000000..4215a38 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/settings.xul @@ -0,0 +1,38 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<!DOCTYPE vbox SYSTEM "chrome://adblockplus/locale/overlay.dtd"> + +<window + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + width="1" + height="1" + onload="window.close();"> <!-- Close window if it gets opened directly for some reason --> + <setting type="control"> + <button id="adblockplus-filters" label="&filters.label;…"/> + </setting> + <setting pref="extensions.adblockplus.enabled" type="bool" inverted="true" title="&disable.label;"/> + <setting pref="extensions.adblockplus.frameobjects" type="bool" title="&objecttabs.label;"/> + <setting pref="extensions.adblockplus.fastcollapse" type="bool" inverted="true" title="&hideplaceholders.label;"/> + <setting id="adblockplus-savestats" type="bool" title="&counthits.label;"/> + <setting id="adblockplus-sync" type="bool" title="&sync.label;"/> + <setting id="adblockplus-showintoolbar" type="bool" title="&showintoolbar.label;"/> + <setting id="adblockplus-showinstatusbar" pref="extensions.adblockplus.showinstatusbar" type="bool" title="&showinstatusbar.label;"/> + <setting id="adblockplus-autoupdate" pref="extensions.adblockplus.subscriptions_autoupdate" type="bool" title="&subscription.update.label;"/> +</window> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebar.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebar.js new file mode 100644 index 0000000..358aebe --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebar.js @@ -0,0 +1,1246 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +// Main browser window +var mainWin = parent; + +// The window handler currently in use +var requestNotifier = null; + +var cacheSession = null; +var noFlash = false; + +// Matcher for disabled filters +var disabledMatcher = new CombinedMatcher(); + +// Cached string values +var docDomainThirdParty = null; +var docDomainFirstParty = null; + +function init() { + docDomainThirdParty = document.documentElement.getAttribute("docDomainThirdParty"); + docDomainFirstParty = document.documentElement.getAttribute("docDomainFirstParty"); + + var list = E("list"); + list.view = treeView; + + // Restore previous state + var params = Utils.getParams(); + if (params && params.filter) + { + E("searchField").value = params.filter; + treeView.setFilter(params.filter); + } + if (params && params.focus && E(params.focus)) + E(params.focus).focus(); + else + E("searchField").focus(); + + var selected = null; + if (/sidebarDetached\.xul$/.test(parent.location.href)) + { + mainWin = parent.opener; + mainWin.addEventListener("unload", mainUnload, false); + E("detachButton").hidden = true; + E("reattachButton").hidden = false; + + let mustDetach = parent.arguments[0]; + if (mustDetach) + E("reattachButton").setAttribute("disabled", "true"); + if ("sidebar" in UI.hotkeys) + { + let {KeySelector} = require("keySelector"); + parent.addEventListener("keypress", function(event) + { + if (KeySelector.matchesKey(event, UI.hotkeys.sidebar)) + doClose(); + }, false); + } + + // Set default size/position unless already persisted + let defaults = {screenX: 0, screenY: 0, width: 600, height: 300}; + if (params && params.position) + defaults = params.position; + + let wnd = parent.document.documentElement; + for (let attr in defaults) + if (!wnd.hasAttribute(attr)) + wnd.setAttribute(attr, defaults[attr]); + } + + let {getBrowser, addBrowserLocationListener} = require("appSupport"); + window.__defineGetter__("content", function() {return getBrowser(mainWin).contentWindow;}); + + // Initialize matcher for disabled filters + reloadDisabledFilters(); + FilterNotifier.addListener(reloadDisabledFilters); + Prefs.addListener(onPrefChange); + + // Activate flasher + list.addEventListener("select", onSelectionChange, false); + + // Initialize data + handleLocationChange(); + + // Install a progress listener to catch location changes + if (addBrowserLocationListener) + addBrowserLocationListener(mainWin, handleLocationChange, true); +} + +// To be called for a detached window when the main window has been closed +function mainUnload() { + parent.close(); +} + +// To be called on unload +function cleanUp() { + flasher.stop(); + requestNotifier.shutdown(); + FilterNotifier.removeListener(reloadDisabledFilters); + Prefs.removeListener(onPrefChange); + E("list").view = null; + + let {removeBrowserLocationListener} = require("appSupport"); + if (removeBrowserLocationListener) + removeBrowserLocationListener(mainWin, handleLocationChange); + mainWin.removeEventListener("unload", mainUnload, false); +} + +/** + * Tracks preference changes, calls reloadDisabledFilters whenever Adblock Plus + * is enabled/disabled. + */ +function onPrefChange(name) +{ + if (name == "enabled") + reloadDisabledFilters(); +} + +let reloadDisabledScheduled = false; + +/** + * Updates matcher for disabled filters (global disabledMatcher variable), + * called on each filter change. Execute delayed to prevent multiple subsequent + * invocations. + */ +function reloadDisabledFilters() +{ + if (reloadDisabledScheduled) + return; + + Utils.runAsync(reloadDisabledFiltersInternal); + reloadDisabledScheduled = true; +} + +function reloadDisabledFiltersInternal() +{ + reloadDisabledScheduled = false; + disabledMatcher.clear(); + + if (Prefs.enabled) + { + for each (let subscription in FilterStorage.subscriptions) + { + if (subscription.disabled) + continue; + + for each (let filter in subscription.filters) + if (filter instanceof RegExpFilter && filter.disabled) + disabledMatcher.add(filter); + } + } + + treeView.updateFilters(); +} + +// Called whenever list selection changes - triggers flasher +function onSelectionChange() { + var item = treeView.getSelectedItem(); + if (item) + E("copy-command").removeAttribute("disabled"); + else + E("copy-command").setAttribute("disabled", "true"); + + if (item && window.content) + { + let key = item.location + " " + item.type + " " + item.docDomain; + RequestNotifier.storeSelection(window.content, key); + treeView.itemToSelect = null; + } + + if (!noFlash) + flasher.flash(item ? item.nodes : null); +} + +function handleLocationChange() +{ + if (requestNotifier) + requestNotifier.shutdown(); + + treeView.clearData(); + treeView.itemToSelect = RequestNotifier.getSelection(window.content); + requestNotifier = new RequestNotifier(window.content, function(wnd, node, item, scanComplete) + { + if (item) + treeView.addItem(node, item, scanComplete); + }); +} + +// Fills a box with text splitting it up into multiple lines if necessary +function setMultilineContent(box, text, noRemove) +{ + if (!noRemove) + while (box.firstChild) + box.removeChild(box.firstChild); + + for (var i = 0; i < text.length; i += 80) + { + var description = document.createElement("description"); + description.setAttribute("value", text.substr(i, 80)); + box.appendChild(description); + } +} + +// Fill in tooltip data before showing it +function fillInTooltip(e) { + // Prevent tooltip from overlapping menu + if (E("context").state == "open") + { + e.preventDefault(); + return; + } + + var item; + if (treeView.data && !treeView.data.length) + item = treeView.getDummyTooltip(); + else + item = treeView.getItemAt(e.clientX, e.clientY); + + if (!item) + { + e.preventDefault(); + return; + } + + let filter = ("filter" in item && item.filter ? item.filter : null); + let size = ("tooltip" in item ? null : getItemSize(item)); + let subscriptions = (filter ? filter.subscriptions.filter(function(subscription) { return !subscription.disabled; }) : []); + + E("tooltipDummy").hidden = !("tooltip" in item); + E("tooltipAddressRow").hidden = ("tooltip" in item); + E("tooltipTypeRow").hidden = ("tooltip" in item); + E("tooltipSizeRow").hidden = !size; + E("tooltipDocDomainRow").hidden = ("tooltip" in item || !item.docDomain); + E("tooltipFilterRow").hidden = !filter; + E("tooltipFilterSourceRow").hidden = !subscriptions.length; + + if ("tooltip" in item) + E("tooltipDummy").setAttribute("value", item.tooltip); + else + { + E("tooltipAddress").parentNode.hidden = (item.typeDescr == "ELEMHIDE"); + setMultilineContent(E("tooltipAddress"), item.location); + + var type = item.localizedDescr; + if (filter && filter instanceof WhitelistFilter) + type += " " + E("tooltipType").getAttribute("whitelisted"); + else if (filter && item.typeDescr != "ELEMHIDE") + type += " " + E("tooltipType").getAttribute("filtered"); + E("tooltipType").setAttribute("value", type); + + if (size) + E("tooltipSize").setAttribute("value", size.join(" x ")); + + E("tooltipDocDomain").setAttribute("value", item.docDomain + " " + (item.thirdParty ? docDomainThirdParty : docDomainFirstParty)); + } + + if (filter) + { + let filterField = E("tooltipFilter"); + setMultilineContent(filterField, filter.text); + if (filter.disabled) + { + let disabledText = document.createElement("description"); + disabledText.className = "disabledTextLabel"; + disabledText.textContent = filterField.getAttribute("disabledText"); + filterField.appendChild(disabledText); + } + + if (subscriptions.length) + { + let sourceElement = E("tooltipFilterSource"); + while (sourceElement.firstChild) + sourceElement.removeChild(sourceElement.firstChild); + for (let i = 0; i < subscriptions.length; i++) + setMultilineContent(sourceElement, subscriptions[i].title, true); + } + } + + var showPreview = Prefs.previewimages && !("tooltip" in item); + showPreview = showPreview && item.typeDescr == "IMAGE"; + showPreview = showPreview && (!item.filter || item.filter.disabled || item.filter instanceof WhitelistFilter); + if (showPreview) + { + // Check whether image is in cache (stolen from ImgLikeOpera) + if (!cacheSession) + { + var cacheService = Cc["@mozilla.org/network/cache-service;1"].getService(Ci.nsICacheService); + cacheSession = cacheService.createSession("HTTP", Ci.nsICache.STORE_ANYWHERE, true); + } + + let cacheListener = + { + onCacheEntryAvailable: function(descriptor, accessGranted, status) + { + if (!descriptor) + return; + + descriptor.close(); + // Show preview here since this is asynchronous now + // and we have a valid descriptor + E("tooltipPreview").setAttribute("src", item.location); + E("tooltipPreviewBox").hidden = false; + }, + onCacheEntryDoomed: function(status) + { + } + }; + try + { + cacheSession.asyncOpenCacheEntry(item.location, Ci.nsICache.ACCESS_READ, cacheListener); + } + catch (e) + { + Cu.reportError(e); + } + } + + E("tooltipPreviewBox").hidden = true; +} + +const visual = { + OTHER: true, + IMAGE: true, + SUBDOCUMENT: true +} + +/** + * Updates context menu before it is shown. + */ +function fillInContext(/**Event*/ e) +{ + let item, allItems; + if (treeView.data && !treeView.data.length) + { + item = treeView.getDummyTooltip(); + allItems = [item]; + } + else + { + item = treeView.getItemAt(e.clientX, e.clientY); + allItems = treeView.getAllSelectedItems(); + } + + if (!item || ("tooltip" in item && !("filter" in item))) + return false; + + E("contextDisableFilter").hidden = true; + E("contextEnableFilter").hidden = true; + E("contextDisableOnSite").hidden = true; + if ("filter" in item && item.filter) + { + let filter = item.filter; + let menuItem = E(filter.disabled ? "contextEnableFilter" : "contextDisableFilter"); + menuItem.setAttribute("label", menuItem.getAttribute("labeltempl").replace(/\?1\?/, filter.text)); + menuItem.hidden = false; + + if (filter instanceof ActiveFilter && !filter.disabled && filter.subscriptions.length && !filter.subscriptions.some(function(subscription) !(subscription instanceof SpecialSubscription))) + { + let domain = null; + try { + domain = Utils.effectiveTLD.getBaseDomainFromHost(item.docDomain); + } catch (e) {} + + if (domain && !filter.isActiveOnlyOnDomain(domain)) + { + menuItem = E("contextDisableOnSite"); + menuItem.setAttribute("label", menuItem.getAttribute("labeltempl").replace(/\?1\?/, domain)); + menuItem.hidden = false; + } + } + } + + E("contextWhitelist").hidden = ("tooltip" in item || !item.filter || item.filter.disabled || item.filter instanceof WhitelistFilter || item.typeDescr == "ELEMHIDE"); + E("contextBlock").hidden = !E("contextWhitelist").hidden; + E("contextBlock").setAttribute("disabled", "filter" in item && item.filter && !item.filter.disabled); + E("contextEditFilter").setAttribute("disabled", !("filter" in item && item.filter)); + E("contextOpen").setAttribute("disabled", "tooltip" in item || item.typeDescr == "ELEMHIDE"); + E("contextFlash").setAttribute("disabled", "tooltip" in item || !(item.typeDescr in visual) || (item.filter && !item.filter.disabled && !(item.filter instanceof WhitelistFilter))); + E("contextCopyFilter").setAttribute("disabled", !allItems.some(function(item) {return "filter" in item && item.filter})); + + return true; +} + +/** + * Resets context menu data once the context menu is closed. + */ +function clearContextMenu(/**Event*/ event) +{ + if (event.eventPhase != event.AT_TARGET) + return; + + { + let menuItem = E("contextDisableOnSite"); + menuItem.item = item; + menuItem.filter = filter; + menuItem.domain = domain; + } +} + +/** + * Processed mouse clicks on the item list. + * @param {Event} event + */ +function handleClick(event) +{ + let item = treeView.getItemAt(event.clientX, event.clientY); + if (event.button == 0 && treeView.getColumnAt(event.clientX, event.clientY) == "state") + { + if (item.filter) + enableFilter(item.filter, item.filter.disabled); + event.preventDefault(); + } + else if (event.button == 1) + { + openInTab(item, event); + event.preventDefault(); + } +} + +/** + * Processes double-clicks on the item list. + * @param {Event} event + */ +function handleDblClick(event) +{ + if (event.button != 0 || treeView.getColumnAt(event.clientX, event.clientY) == "state") + return; + + doBlock(); +} + +/** + * Opens the item in a new tab. + */ +function openInTab(item, /**Event*/ event) +{ + let items = (item ? [item] : treeView.getAllSelectedItems()); + for each (let item in items) + { + if (item && item.typeDescr != "ELEMHIDE") + UI.loadInBrowser(item.location, mainWin, event); + } +} + +function doBlock() { + var item = treeView.getSelectedItem(); + if (!item || item.typeDescr == "ELEMHIDE") + return; + + var filter = null; + if (item.filter && !item.filter.disabled) + filter = item.filter; + + if (filter && filter instanceof WhitelistFilter) + return; + + openDialog("chrome://adblockplus/content/ui/composer.xul", "_blank", "chrome,centerscreen,resizable,dialog=no,dependent", item.nodes, item.orig); +} + +function editFilter() +{ + var item = treeView.getSelectedItem(); + if (treeView.data && !treeView.data.length) + item = treeView.getDummyTooltip(); + + if (!("filter" in item) || !item.filter) + return; + + if (!("location") in item) + item.location = undefined + + UI.openFiltersDialog(item.filter); +} + +function enableFilter(filter, enable) { + filter.disabled = !enable; + + treeView.boxObject.invalidate(); +} + +/** + * Edits the filter to disable it on a particular domain. + */ +function disableOnSite() +{ + let item = treeView.getSelectedItem(); + let filter = item.filter; + if (!(filter instanceof ActiveFilter) || filter.disabled || !filter.subscriptions.length || filter.subscriptions.some(function(subscription) !(subscription instanceof SpecialSubscription))) + return; + + let domain; + try { + domain = Utils.effectiveTLD.getBaseDomainFromHost(item.docDomain).toUpperCase(); + } + catch (e) + { + return; + } + + // Generate text for new filter that excludes current domain + let text = filter.text; + if (filter instanceof RegExpFilter) + { + let match = Filter.optionsRegExp.exec(text); + if (match) + { + let found = false; + let options = match[1].toUpperCase().split(","); + for (let i = 0; i < options.length; i++) + { + let match = /^DOMAIN=(.*)/.exec(options[i]); + if (match) + { + let domains = match[1].split("|").filter(function(d) d != domain && d != "~" + domain && (d.length <= domain.length || d.lastIndexOf("." + domain) != d.length - domain.length - 1)); + domains.push("~" + domain); + options[i] = "DOMAIN=" + domains.join("|"); + found = true; + break; + } + } + if (!found) + options.push("DOMAIN=~" + domain); + + text = text.replace(Filter.optionsRegExp, "$" + options.join(",").toLowerCase()); + } + else + text += "$domain=~" + domain.toLowerCase(); + } + else if (filter instanceof ElemHideBase) + { + let match = /^([^#]+)(#.*)/.exec(text); + if (match) + { + let selector = match[2]; + let domains = match[1].toUpperCase().split(",").filter(function(d) d != domain && (d.length <= domain.length || d != "~" + domain && d.lastIndexOf("." + domain) != d.length - domain.length - 1)); + domains.push("~" + domain); + text = domains.join(",").toLowerCase() + selector; + } + else + text = "~" + domain.toLowerCase() + text; + } + + if (text == filter.text) + return; // Just in case, shouldn't happen + + // Insert new filter before the old one and remove the old one then + let newFilter = Filter.fromText(text); + if (newFilter.disabled && newFilter.subscriptions.length) + newFilter.disabled = false; + else if (!newFilter.subscriptions.length) + { + newFilter.disabled = false; + let subscription = filter.subscriptions.filter(function(s) s instanceof SpecialSubscription)[0]; + if (subscription) + FilterStorage.addFilter(newFilter, subscription, subscription.filters.indexOf(filter)); + } + FilterStorage.removeFilter(filter); + + // Update display + for (let i = 0; i < treeView.allData.length; i++) + if (treeView.allData[i].filter == filter) + treeView.allData[i].filter = null; + treeView.boxObject.invalidate(); +} + +function copyToClipboard() { + var items = treeView.getAllSelectedItems(); + if (!items.length) + return; + + Utils.clipboardHelper.copyString(items.map(function(item) {return item.location}).join(IO.lineBreak)); +} + +function copyFilter() { + var items = treeView.getAllSelectedItems().filter(function(item) {return item.filter}); + if (treeView.data && !treeView.data.length) + items = [treeView.getDummyTooltip()]; + + if (!items.length) + return; + + Utils.clipboardHelper.copyString(items.map(function(item) {return item.filter.text}).join(IO.lineBreak)); +} + +function selectAll() { + treeView.selectAll(); +} + +// Saves sidebar's state before detaching/reattaching +function saveState() { + var focused = document.commandDispatcher.focusedElement; + while (focused && (!focused.id || !("focus" in focused))) + focused = focused.parentNode; + + // Calculate default position for the detached window + var boxObject = document.documentElement.boxObject; + var position = {screenX: boxObject.screenX, screenY: boxObject.screenY, width: boxObject.width, height: boxObject.height}; + + var params = { + filter: treeView.filter, + focus: (focused ? focused.id : null), + position: position + }; + Utils.setParams(params); +} + +// closes the sidebar +function doClose() +{ + mainWin.document.getElementById("abp-command-sidebar").doCommand(); +} + +// detaches/reattaches the sidebar +function detach(doDetach) +{ + saveState(); + + // Store variables locally, global variables will go away when we are closed + let myPrefs = Prefs; + let myMainWin = mainWin; + + // Close sidebar and open detached window + myMainWin.document.getElementById("abp-command-sidebar").doCommand(); + myPrefs.detachsidebar = doDetach; + myMainWin.document.getElementById("abp-command-sidebar").doCommand(); +} + +// Returns items size in the document if available +function getItemSize(item) +{ + if (item.filter && !item.filter.disabled && item.filter instanceof BlockingFilter) + return null; + + for each (let node in item.nodes) + { + if (node instanceof HTMLImageElement && (node.naturalWidth || node.naturalHeight)) + return [node.naturalWidth, node.naturalHeight]; + else if (node instanceof HTMLElement && (node.offsetWidth || node.offsetHeight)) + return [node.offsetWidth, node.offsetHeight]; + } + return null; +} + +// Sort functions for the item list +function sortByAddress(item1, item2) { + if (item1.location < item2.location) + return -1; + else if (item1.location > item2.location) + return 1; + else + return 0; +} + +function sortByAddressDesc(item1, item2) { + return -sortByAddress(item1, item2); +} + +function compareType(item1, item2) { + if (item1.localizedDescr < item2.localizedDescr) + return -1; + else if (item1.localizedDescr > item2.localizedDescr) + return 1; + else + return 0; +} + +function compareFilter(item1, item2) { + var hasFilter1 = (item1.filter ? 1 : 0); + var hasFilter2 = (item2.filter ? 1 : 0); + if (hasFilter1 != hasFilter2) + return hasFilter1 - hasFilter2; + else if (hasFilter1 && item1.filter.text < item2.filter.text) + return -1; + else if (hasFilter1 && item1.filter.text > item2.filter.text) + return 1; + else + return 0; +} + +function compareState(item1, item2) { + var state1 = (!item1.filter ? 0 : (item1.filter.disabled ? 1 : (item1.filter instanceof WhitelistFilter ? 2 : 3))); + var state2 = (!item2.filter ? 0 : (item2.filter.disabled ? 1 : (item2.filter instanceof WhitelistFilter ? 2 : 3))); + return state1 - state2; +} + +function compareSize(item1, item2) { + var size1 = getItemSize(item1); + size1 = size1 ? size1[0] * size1[1] : 0; + + var size2 = getItemSize(item2); + size2 = size2 ? size2[0] * size2[1] : 0; + return size1 - size2; +} + +function compareDocDomain(item1, item2) +{ + if (item1.docDomain < item2.docDomain) + return -1; + else if (item1.docDomain > item2.docDomain) + return 1; + else if (item1.thirdParty && !item2.thirdParty) + return -1; + else if (!item1.thirdParty && item2.thirdParty) + return 1; + else + return 0; +} + +function compareFilterSource(item1, item2) +{ + let subs1 = item1.filter ? item1.filter.subscriptions.map(function(s) s.title).join(", ") : ""; + let subs2 = item2.filter ? item2.filter.subscriptions.map(function(s) s.title).join(", ") : ""; + if (subs1 < subs2) + return -1; + else if (subs1 > subs2) + return 1; + else + return 0; +} + +function createSortWithFallback(cmpFunc, fallbackFunc, desc) { + var factor = (desc ? -1 : 1); + return function(item1, item2) { + var ret = cmpFunc(item1, item2); + if (ret == 0) + return fallbackFunc(item1, item2); + else + return factor * ret; + } +} + +// Item list's tree view object +var treeView = { + // + // nsISupports implementation + // + + QueryInterface: function(uuid) { + if (!uuid.equals(Ci.nsISupports) && + !uuid.equals(Ci.nsITreeView)) + { + throw Cr.NS_ERROR_NO_INTERFACE; + } + + return this; + }, + + // + // nsITreeView implementation + // + + selection: null, + + setTree: function(boxObject) { + if (!boxObject) + return; + this.boxObject = boxObject; + this.itemsDummy = boxObject.treeBody.getAttribute("noitemslabel"); + this.whitelistDummy = boxObject.treeBody.getAttribute("whitelistedlabel"); + var stringAtoms = ["col-address", "col-type", "col-filter", "col-state", "col-size", "col-docDomain", "col-filterSource", "state-regular", "state-filtered", "state-whitelisted", "state-hidden", "state-hiddenexception"]; + var boolAtoms = ["selected", "dummy", "filter-disabled"]; + var atomService = Cc["@mozilla.org/atom-service;1"].getService(Ci.nsIAtomService); + this.atoms = {}; + for each (let atom in stringAtoms) + this.atoms[atom] = atomService.getAtom(atom); + for each (let atom in boolAtoms) + { + this.atoms[atom + "-true"] = atomService.getAtom(atom + "-true"); + this.atoms[atom + "-false"] = atomService.getAtom(atom + "-false"); + } + + this.itemsDummyTooltip = Utils.getString("no_blocking_suggestions"); + this.whitelistDummyTooltip = Utils.getString("whitelisted_page"); + + // Check current sort direction + var cols = document.getElementsByTagName("treecol"); + var sortDir = null; + for (let i = 0; i < cols.length; i++) { + var col = cols[i]; + var dir = col.getAttribute("sortDirection"); + if (dir && dir != "natural") { + this.sortColumn = col; + sortDir = dir; + } + } + if (!this.sortColumn) + { + let defaultSort = E("list").getAttribute("defaultSort"); + let match = /^(\w+)\s+(ascending|descending)$/.exec(defaultSort); + if (match) + { + this.sortColumn = E(match[1]); + if (this.sortColumn) + { + sortDir = match[2]; + this.sortColumn.setAttribute("sortDirection", sortDir); + } + } + } + + if (sortDir) + { + this.sortProc = this.sortProcs[this.sortColumn.id + (sortDir == "descending" ? "Desc" : "")]; + E("list").setAttribute("defaultSort", " "); + } + + // Make sure to update the dummy row every two seconds + setInterval(function(view) { + if (!view.data || !view.data.length) + view.boxObject.invalidateRow(0); + }, 2000, this); + + // Prevent a reference through closures + boxObject = null; + }, + get rowCount() { + return (this.data && this.data.length ? this.data.length : 1); + }, + getCellText: function(row, col) { + col = col.id; + if (col != "type" && col != "address" && col != "filter" && col != "size" && col != "docDomain" && col != "filterSource") + return ""; + if (this.data && this.data.length) { + if (row >= this.data.length) + return ""; + if (col == "type") + return this.data[row].localizedDescr; + else if (col == "filter") + return (this.data[row].filter ? this.data[row].filter.text : ""); + else if (col == "size") + { + let size = getItemSize(this.data[row]); + return (size ? size.join(" x ") : ""); + } + else if (col == "docDomain") + return this.data[row].docDomain + " " + (this.data[row].thirdParty ? docDomainThirdParty : docDomainFirstParty); + else if (col == "filterSource") + { + if (!this.data[row].filter) + return ""; + + return this.data[row].filter.subscriptions.filter(function(s) !s.disabled).map(function(s) s.title).join(", "); + } + else + return this.data[row].location; + } + else { + // Empty list, show dummy + if (row > 0 || (col != "address" && col != "filter")) + return ""; + if (col == "filter") { + var filter = Policy.isWindowWhitelisted(window.content); + return filter ? filter.text : ""; + } + + return (Policy.isWindowWhitelisted(window.content) ? this.whitelistDummy : this.itemsDummy); + } + }, + + generateProperties: function(list, properties) + { + if (properties) + { + // Gecko 21 and below: we have an nsISupportsArray parameter, add atoms + // to that. + for (let i = 0; i < list.length; i++) + if (list[i] in this.atoms) + properties.AppendElement(this.atoms[list[i]]); + return null; + } + else + { + // Gecko 22+: no parameter, just return a string + return list.join(" "); + } + }, + + getColumnProperties: function(col, properties) + { + return this.generateProperties(["col-" + col.id], properties); + }, + + getRowProperties: function(row, properties) + { + if (row >= this.rowCount) + return ""; + + let list = []; + list.push("selected-" + this.selection.isSelected(row)); + + let state; + if (this.data && this.data.length) { + list.push("dummy-false"); + + let filter = this.data[row].filter; + if (filter) + list.push("filter-disabled-" + filter.disabled); + + state = "state-regular"; + if (filter && !filter.disabled) + { + if (filter instanceof WhitelistFilter) + state = "state-whitelisted"; + else if (filter instanceof BlockingFilter) + state = "state-filtered"; + else if (filter instanceof ElemHideFilter) + state = "state-hidden"; + else if (filter instanceof ElemHideException) + state = "state-hiddenexception"; + } + } + else { + list.push("dummy-true"); + + state = "state-filtered"; + if (this.data && Policy.isWindowWhitelisted(window.content)) + state = "state-whitelisted"; + } + list.push(state); + return this.generateProperties(list, properties); + }, + + getCellProperties: function(row, col, properties) + { + return this.getRowProperties(row, properties) + " " + this.getColumnProperties(col, properties); + }, + + cycleHeader: function(col) { + col = col.id; + + col = E(col); + if (!col) + return; + + var cycle = { + natural: 'ascending', + ascending: 'descending', + descending: 'natural' + }; + + var curDirection = "natural"; + if (this.sortColumn == col) + curDirection = col.getAttribute("sortDirection"); + else if (this.sortColumn) + this.sortColumn.removeAttribute("sortDirection"); + + curDirection = cycle[curDirection]; + + if (curDirection == "natural") + this.sortProc = null; + else + this.sortProc = this.sortProcs[col.id + (curDirection == "descending" ? "Desc" : "")]; + + if (this.data) + this.refilter(); + + col.setAttribute("sortDirection", curDirection); + this.sortColumn = col; + + this.boxObject.invalidate(); + }, + + isSorted: function() { + return this.sortProc; + }, + + isContainer: function() {return false}, + isContainerOpen: function() {return false}, + isContainerEmpty: function() {return false}, + getLevel: function() {return 0}, + getParentIndex: function() {return -1}, + hasNextSibling: function() {return false}, + toggleOpenState: function() {}, + canDrop: function() {return false}, + drop: function() {}, + getCellValue: function() {return null}, + getProgressMode: function() {return null}, + getImageSrc: function() {return null}, + isSeparator: function() {return false}, + isEditable: function() {return false}, + cycleCell: function() {}, + performAction: function() {}, + performActionOnRow: function() {}, + performActionOnCell: function() {}, + selectionChanged: function() {}, + + // + // Custom properties and methods + // + + boxObject: null, + atoms: null, + filter: "", + data: null, + allData: [], + dataMap: {__proto__: null}, + sortColumn: null, + sortProc: null, + resortTimeout: null, + itemsDummy: null, + whitelistDummy: null, + itemsDummyTooltip: null, + whitelistDummyTooltip: null, + itemToSelect: null, + + sortProcs: { + address: sortByAddress, + addressDesc: sortByAddressDesc, + type: createSortWithFallback(compareType, sortByAddress, false), + typeDesc: createSortWithFallback(compareType, sortByAddress, true), + filter: createSortWithFallback(compareFilter, sortByAddress, false), + filterDesc: createSortWithFallback(compareFilter, sortByAddress, true), + state: createSortWithFallback(compareState, sortByAddress, false), + stateDesc: createSortWithFallback(compareState, sortByAddress, true), + size: createSortWithFallback(compareSize, sortByAddress, false), + sizeDesc: createSortWithFallback(compareSize, sortByAddress, true), + docDomain: createSortWithFallback(compareDocDomain, sortByAddress, false), + docDomainDesc: createSortWithFallback(compareDocDomain, sortByAddress, true), + filterSource: createSortWithFallback(compareFilterSource, sortByAddress, false), + filterSourceDesc: createSortWithFallback(compareFilterSource, sortByAddress, true) + }, + clearData: function(data) { + var oldRows = this.rowCount; + this.allData = []; + this.dataMap = {__proto__: null}; + this.refilter(); + + this.boxObject.rowCountChanged(0, -oldRows); + this.boxObject.rowCountChanged(0, this.rowCount); + }, + + addItem: function(/**Node*/ node, /**RequestEntry*/ item, /**Boolean*/ scanComplete) + { + // Merge duplicate entries + let key = item.location + " " + item.type + " " + item.docDomain; + if (key in this.dataMap) + { + // We know this item already - take over the filter if any and be done with it + let existing = this.dataMap[key]; + if (item.filter) + existing.filter = item.filter; + + existing.nodes.push(node); + this.invalidateItem(existing); + return; + } + + // Add new item to the list + // Store original item in orig property - reading out prototype is messed up in Gecko 1.9.2 + item = {__proto__: item, orig: item, nodes: [node]}; + this.allData.push(item); + this.dataMap[key] = item; + + // Show disabled filters if no other filter applies + if (!item.filter) + item.filter = disabledMatcher.matchesAny(item.location, item.typeDescr, item.docDomain, item.thirdParty); + + if (!this.matchesFilter(item)) + return; + + let index = -1; + if (this.sortProc && this.sortColumn && this.sortColumn.id == "size") + { + // Sorting by size requires accessing content document, and that's + // dangerous from a content policy (and we are likely called directly + // from a content policy call). Size data will be inaccurate anyway, + // delay sorting until later. + if (this.resortTimeout) + clearTimeout(this.resortTimeout); + this.resortTimeout = setTimeout(function(me) + { + if (me.sortProc) + me.data.sort(me.sortProc); + me.boxObject.invalidate(); + }, 500, this); + } + else if (this.sortProc) + for (var i = 0; index < 0 && i < this.data.length; i++) + if (this.sortProc(item, this.data[i]) < 0) + index = i; + + if (index >= 0) + this.data.splice(index, 0, item); + else { + this.data.push(item); + index = this.data.length - 1; + } + + if (this.data.length == 1) + this.boxObject.invalidateRow(0); + else + this.boxObject.rowCountChanged(index, 1); + + if (this.itemToSelect == key) + { + this.selection.select(index); + this.boxObject.ensureRowIsVisible(index); + this.itemToSelect = null; + } + else if (!scanComplete && this.selection.currentIndex >= 0) // Keep selected row visible while scanning + this.boxObject.ensureRowIsVisible(this.selection.currentIndex); + }, + + updateFilters: function() + { + for each (let item in this.allData) + { + if (item.filter instanceof RegExpFilter && item.filter.disabled) + delete item.filter; + if (!item.filter) + item.filter = disabledMatcher.matchesAny(item.location, item.typeDescr, item.docDomain, item.thirdParty); + } + this.refilter(); + }, + + /** + * Updates the list after a filter or sorting change. + */ + refilter: function() + { + if (this.resortTimeout) + clearTimeout(this.resortTimeout); + + this.data = this.allData.filter(this.matchesFilter, this); + + if (this.sortProc) + this.data.sort(this.sortProc); + }, + + /** + * Tests whether an item matches current list filter. + * @return {Boolean} true if the item should be shown + */ + matchesFilter: function(item) + { + if (!this.filter) + return true; + + return (item.location.toLowerCase().indexOf(this.filter) >= 0 || + (item.filter && item.filter.text.toLowerCase().indexOf(this.filter) >= 0) || + item.typeDescr.toLowerCase().indexOf(this.filter.replace(/-/g, "_")) >= 0 || + item.localizedDescr.toLowerCase().indexOf(this.filter) >= 0 || + (item.docDomain && item.docDomain.toLowerCase().indexOf(this.filter) >= 0) || + (item.docDomain && item.thirdParty && docDomainThirdParty.toLowerCase().indexOf(this.filter) >= 0) || + (item.docDomain && !item.thirdParty && docDomainFirstParty.toLowerCase().indexOf(this.filter) >= 0)); + }, + + setFilter: function(filter) { + var oldRows = this.rowCount; + + this.filter = filter.toLowerCase(); + this.refilter(); + + var newRows = this.rowCount; + if (oldRows != newRows) + this.boxObject.rowCountChanged(oldRows < newRows ? oldRows : newRows, this.rowCount - oldRows); + this.boxObject.invalidate(); + }, + + selectAll: function() { + this.selection.selectAll(); + }, + + getSelectedItem: function() { + if (!this.data || this.selection.currentIndex < 0 || this.selection.currentIndex >= this.data.length) + return null; + + return this.data[this.selection.currentIndex]; + }, + + getAllSelectedItems: function() { + let result = []; + if (!this.data) + return result; + + let numRanges = this.selection.getRangeCount(); + for (let i = 0; i < numRanges; i++) + { + let min = {}; + let max = {}; + let range = this.selection.getRangeAt(i, min, max); + for (let j = min.value; j <= max.value; j++) + { + if (j >= 0 && j < this.data.length) + result.push(this.data[j]); + } + } + return result; + }, + + getItemAt: function(x, y) + { + if (!this.data) + return null; + + var row = this.boxObject.getRowAt(x, y); + if (row < 0 || row >= this.data.length) + return null; + + return this.data[row]; + }, + + getColumnAt: function(x, y) + { + if (!this.data) + return null; + + let col = {}; + this.boxObject.getCellAt(x, y, {}, col, {}); + return (col.value ? col.value.id : null); + }, + + getDummyTooltip: function() { + if (!this.data || this.data.length) + return null; + + var filter = Policy.isWindowWhitelisted(window.content); + if (filter) + return {tooltip: this.whitelistDummyTooltip, filter: filter}; + else + return {tooltip: this.itemsDummyTooltip}; + }, + + invalidateItem: function(item) + { + let row = this.data.indexOf(item); + if (row >= 0) + this.boxObject.invalidateRow(row); + } +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebar.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebar.xul new file mode 100644 index 0000000..180b3ec --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebar.xul @@ -0,0 +1,139 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://adblockplus/skin/sidebar.css" type="text/css"?> + +<!DOCTYPE page SYSTEM "chrome://adblockplus/locale/sidebar.dtd"> + +<page + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + id="abp-sidebar" + onload="init()" + onunload="cleanUp()" + docDomainThirdParty="&docDomain.thirdParty;" + docDomainFirstParty="&docDomain.firstParty;"> + + <script type="application/x-javascript;version=1.7" src="utils.js"/> + <script type="application/x-javascript;version=1.7" src="sidebar.js"/> + <script type="application/x-javascript;version=1.7" src="flasher.js"/> + + <keyset id="sidebarKeys"> + <key id="block-key" keycode="VK_ENTER"/> + <key id="copy-key" modifiers="accel" key="C" command="copy-command"/> + <key id="selectAll-key" modifiers="accel" key="A" command="selectAll-command"/> + </keyset> + + <commandset id="sidebarCommands"> + <command id="copy-command" oncommand="copyToClipboard()" disabled="true"/> + <command id="selectAll-command" oncommand="selectAll()"/> + </commandset> + + <popupset id="sidebarPopups"> + <tooltip id="tooltip" orient="vertical" onpopupshowing="fillInTooltip(event);"> + <description id="tooltipDummy"/> + <hbox id="tooltipPreviewBox" pack="start"> + <image id="tooltipPreview" validate="never"/> + </hbox> + <grid> + <columns> + <column/> + <column flex="1"/> + </columns> + <rows> + <row id="tooltipAddressRow" align="top"> + <label value="&tooltip.address.label;"/> + <vbox id="tooltipAddress"/> + </row> + <row id="tooltipTypeRow"> + <label value="&tooltip.type.label;"/> + <description id="tooltipType" filtered="&tooltip.type.blocked;" whitelisted="&tooltip.type.whitelisted;"/> + </row> + <row id="tooltipSizeRow"> + <label value="&tooltip.size.label;"/> + <description id="tooltipSize"/> + </row> + <row id="tooltipDocDomainRow"> + <label value="&tooltip.docDomain.label;"/> + <description id="tooltipDocDomain"/> + </row> + <row id="tooltipFilterRow" align="top"> + <label value="&tooltip.filter.label;"/> + <vbox id="tooltipFilter" disabledText="&tooltip.filter.disabled;"/> + </row> + <row id="tooltipFilterSourceRow" align="top"> + <label value="&tooltip.filterSource.label;"/> + <vbox id="tooltipFilterSource"/> + </row> + </rows> + </grid> + </tooltip> + + <menupopup id="context" onpopupshowing="return fillInContext(event)"> + <menuitem id="contextBlock" label="&context.block.label;…" oncommand="doBlock()" key="block-key"/> + <menuitem id="contextWhitelist" label="&context.whitelist.label;…" oncommand="doBlock()" key="block-key"/> + <menuitem id="contextEditFilter" label="&context.editfilter.label;…" oncommand="editFilter()"/> + <menuitem id="contextDisableFilter" labeltempl="&context.disablefilter.label;" oncommand="enableFilter(treeView.getSelectedItem().filter, false)"/> + <menuitem id="contextEnableFilter" labeltempl="&context.enablefilter.label;" oncommand="enableFilter(treeView.getSelectedItem().filter, true)"/> + <menuitem id="contextDisableOnSite" labeltempl="&context.disablefilteronsite.label;" oncommand="disableOnSite()"/> + <menuseparator id="contextOpenSep"/> + <menuitem id="contextOpen" label="&context.open.label;" oncommand="openInTab(null, event)"/> + <menuitem id="contextFlash" label="&context.flash.label;" oncommand="onSelectionChange()"/> + <menuitem id="contextCopy" label="&context.copy.label;" command="copy-command" key="copy-key"/> + <menuitem id="contextCopyFilter" label="&context.copyFilter.label;" oncommand="copyFilter()"/> + <menuseparator id="contextSelectSep"/> + <menuitem id="contextSelectAll" label="&context.selectAll.label;" command="selectAll-command" key="selectAll-key"/> + </menupopup> + </popupset> + + <hbox> + <hbox align="center" flex="1"> + <label value="&search.label;" control="searchField"/> + <textbox id="searchField" flex="1" type="search" oncommand="treeView.setFilter(this.value)"/> + </hbox> + <description id="detachButton" value="&detach.label;" onclick="detach(true)"/> + <description id="reattachButton" value="&reattach.label;" onclick="if (this.getAttribute('disabled') != 'true') detach(false)" hidden="true"/> + </hbox> + + <tree id="list" context="context" flex="1" seltype="multiple" enableColumnDrag="true" + defaultSort="state descending" persist="defaultSort" + onkeypress="if (event.keyCode == event.DOM_VK_RETURN || event.keyCode == event.DOM_VK_ENTER) doBlock()"> + <treecols> + <treecol id="address" label="&address.label;" flex="2" crop="center" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="filter" label="&filter.label;" flex="1" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="type" label="&type.label;" width="80" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="state" label="&state.label;" width="16" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="size" label="&size.label;" width="60" hidden="true" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="docDomain" label="&docDomain.label;" width="100" hidden="true" persist="width ordinal sortDirection hidden"/> + <splitter class="tree-splitter"/> + <treecol id="filterSource" label="&filterSource.label;" width="100" hidden="true" persist="width ordinal sortDirection hidden"/> + </treecols> + <treechildren id="treechildren" + tooltip="tooltip" + onclick="handleClick(event)" + ondblclick="handleDblClick(event)" + noitemslabel="&noitems.label;" + whitelistedlabel="&whitelisted.label;"/> + </tree> +</page> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebarDetached.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebarDetached.xul new file mode 100644 index 0000000..b7e117b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/sidebarDetached.xul @@ -0,0 +1,50 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> + +<!DOCTYPE page SYSTEM "chrome://adblockplus/locale/sidebar.dtd"> + +<window + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + id="abpDetachedSidebar" + title="&detached.title;" + persist="screenX screenY width height sizemode" + onclose="document.getElementById('abp-command-sidebar').doCommand(); return false;"> + + <script type="application/x-javascript"> + // Some people actually switch off browser.frames.enabled and are surprised + // that things stop working... + window.QueryInterface(Components.interfaces.nsIInterfaceRequestor) + .getInterface(Components.interfaces.nsIWebNavigation) + .QueryInterface(Components.interfaces.nsIDocShell) + .allowSubframes = true; + </script> + + <keyset> + <key keycode="VK_ESCAPE" command="command-close"/> + <key modifiers="accel" key="w" command="command-close"/> + </keyset> + + <commandset> + <command id="command-close" oncommand="document.getElementById('sidebarFrame').contentWindow.doClose()"/> + </commandset> + + <iframe src="sidebar.xul" id="sidebarFrame" flex="1"/> +</window> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptionSelection.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptionSelection.js new file mode 100644 index 0000000..3fdcc18 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptionSelection.js @@ -0,0 +1,308 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/FileUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let subscriptionListLoading = false; + +function init() +{ + if (window.arguments && window.arguments.length && window.arguments[0]) + { + let source = window.arguments[0]; + setCustomSubscription(source.title, source.url, + source.mainSubscriptionTitle, source.mainSubscriptionURL); + + E("all-subscriptions-container").hidden = true; + E("fromWebText").hidden = false; + } + else + loadSubscriptionList(); +} + +function updateSubscriptionInfo() +{ + let selectedSubscription = E("all-subscriptions").selectedItem; + + E("subscriptionInfo").setAttribute("invisible", !selectedSubscription); + if (selectedSubscription) + { + let url = selectedSubscription.getAttribute("_url"); + let homePage = selectedSubscription.getAttribute("_homepage") + + let viewLink = E("view-list"); + viewLink.setAttribute("_url", url); + viewLink.setAttribute("tooltiptext", url); + + let homePageLink = E("visit-homepage"); + homePageLink.hidden = !homePage; + if (homePage) + { + homePageLink.setAttribute("_url", homePage); + homePageLink.setAttribute("tooltiptext", homePage); + } + } +} + +function reloadSubscriptionList() +{ + subscriptionListLoading = false; + loadSubscriptionList(); +} + +function loadSubscriptionList() +{ + if (subscriptionListLoading) + return; + + E("all-subscriptions-container").selectedIndex = 0; + E("all-subscriptions-loading").hidden = false; + + let request = new XMLHttpRequest(); + let errorHandler = function() + { + E("all-subscriptions-container").selectedIndex = 2; + E("all-subscriptions-loading").hidden = true; + }; + let successHandler = function() + { + if (!request.responseXML || request.responseXML.documentElement.localName != "subscriptions") + { + errorHandler(); + return; + } + + try + { + processSubscriptionList(request.responseXML); + E("all-subscriptions").selectedIndex = 0; + E("all-subscriptions").focus(); + } + catch (e) + { + Cu.reportError(e); + errorHandler(); + } + }; + + request.open("GET", Prefs.subscriptions_listurl); + request.addEventListener("error", errorHandler, false); + request.addEventListener("load", successHandler, false); + request.send(null); + + subscriptionListLoading = true; +} + +function processSubscriptionList(doc) +{ + let list = E("all-subscriptions"); + while (list.firstChild) + list.removeChild(list.firstChild); + + addSubscriptions(list, doc.documentElement, 0, null, null); + E("all-subscriptions-container").selectedIndex = 1; + E("all-subscriptions-loading").hidden = true; +} + +function addSubscriptions(list, parent, level, parentTitle, parentURL) +{ + for (let i = 0; i < parent.childNodes.length; i++) + { + let node = parent.childNodes[i]; + if (node.nodeType != Node.ELEMENT_NODE || node.localName != "subscription") + continue; + + if (node.getAttribute("type") != "ads" || node.getAttribute("deprecated") == "true") + continue; + + let variants = node.getElementsByTagName("variants"); + if (!variants.length || !variants[0].childNodes.length) + continue; + variants = variants[0].childNodes; + + let isFirst = true; + let mainTitle = null; + let mainURL = null; + for (let j = 0; j < variants.length; j++) + { + let variant = variants[j]; + if (variant.nodeType != Node.ELEMENT_NODE || variant.localName != "variant") + continue; + + let item = document.createElement("richlistitem"); + item.setAttribute("_title", variant.getAttribute("title")); + item.setAttribute("_url", variant.getAttribute("url")); + if (parentTitle && parentURL && variant.getAttribute("complete") != "true") + { + item.setAttribute("_supplementForTitle", parentTitle); + item.setAttribute("_supplementForURL", parentURL); + } + item.setAttribute("tooltiptext", variant.getAttribute("url")); + item.setAttribute("_homepage", node.getAttribute("homepage")); + + let title = document.createElement("description"); + if (isFirst) + { + if (Utils.checkLocalePrefixMatch(node.getAttribute("prefixes"))) + title.setAttribute("class", "subscriptionTitle localeMatch"); + else + title.setAttribute("class", "subscriptionTitle"); + title.textContent = node.getAttribute("title") + " (" + node.getAttribute("specialization") + ")"; + mainTitle = variant.getAttribute("title"); + mainURL = variant.getAttribute("url"); + isFirst = false; + } + title.setAttribute("flex", "1"); + title.style.marginLeft = (20 * level) + "px"; + item.appendChild(title); + + let variantTitle = document.createElement("description"); + variantTitle.setAttribute("class", "variant"); + variantTitle.textContent = variant.getAttribute("title"); + variantTitle.setAttribute("crop", "end"); + item.appendChild(variantTitle); + + list.appendChild(item); + } + + let supplements = node.getElementsByTagName("supplements"); + if (supplements.length) + addSubscriptions(list, supplements[0], level + 1, mainTitle, mainURL); + } +} + +function onSelectionChange() +{ + let selectedItem = E("all-subscriptions").selectedItem; + if (!selectedItem) + return; + + setCustomSubscription(selectedItem.getAttribute("_title"), selectedItem.getAttribute("_url"), + selectedItem.getAttribute("_supplementForTitle"), selectedItem.getAttribute("_supplementForURL")); + + updateSubscriptionInfo(); +} + +function setCustomSubscription(title, url, mainSubscriptionTitle, mainSubscriptionURL) +{ + E("title").value = title; + E("location").value = url; + + let messageElement = E("supplementMessage"); + let addMainCheckbox = E("addMainSubscription"); + if (mainSubscriptionURL && !hasSubscription(mainSubscriptionURL)) + { + messageElement.removeAttribute("invisible"); + addMainCheckbox.removeAttribute("invisible"); + + let [, beforeLink, afterLink] = /(.*)\?1\?(.*)/.exec(messageElement.getAttribute("_textTemplate")) || [null, messageElement.getAttribute("_textTemplate"), ""]; + while (messageElement.firstChild) + messageElement.removeChild(messageElement.firstChild); + messageElement.appendChild(document.createTextNode(beforeLink)); + let link = document.createElement("label"); + link.className = "text-link"; + link.setAttribute("tooltiptext", mainSubscriptionURL); + link.addEventListener("click", function() UI.loadInBrowser(mainSubscriptionURL), false); + link.textContent = mainSubscriptionTitle; + messageElement.appendChild(link); + messageElement.appendChild(document.createTextNode(afterLink)); + + addMainCheckbox.value = mainSubscriptionURL; + addMainCheckbox.setAttribute("_mainSubscriptionTitle", mainSubscriptionTitle) + let [label, accesskey] = Utils.splitLabel(addMainCheckbox.getAttribute("_labelTemplate")); + addMainCheckbox.label = label.replace(/\?1\?/g, mainSubscriptionTitle); + addMainCheckbox.accessKey = accesskey; + } + else + { + messageElement.setAttribute("invisible", "true"); + addMainCheckbox.setAttribute("invisible", "true"); + } +} + +function validateURL(url) +{ + if (!url) + return null; + url = url.replace(/^\s+/, "").replace(/\s+$/, ""); + + // Is this a file path? + try { + let file = new FileUtils.File(url); + return Services.io.newFileURI(file).spec; + } catch (e) {} + + // Is this a valid URL? + let uri = Utils.makeURI(url); + if (uri) + return uri.spec; + + return null; +} + +function addSubscription() +{ + let url = E("location").value; + url = validateURL(url); + if (!url) + { + Utils.alert(window, Utils.getString("subscription_invalid_location")); + E("location").focus(); + return false; + } + + let title = E("title").value.replace(/^\s+/, "").replace(/\s+$/, ""); + if (!title) + title = url; + + doAddSubscription(url, title); + + let addMainCheckbox = E("addMainSubscription") + if (addMainCheckbox.getAttribute("invisible") != "true" && addMainCheckbox.checked) + { + let mainSubscriptionTitle = addMainCheckbox.getAttribute("_mainSubscriptionTitle"); + let mainSubscriptionURL = validateURL(addMainCheckbox.value); + if (mainSubscriptionURL) + doAddSubscription(mainSubscriptionURL, mainSubscriptionTitle); + } + + return true; +} + +/** + * Adds a new subscription to the list. + */ +function doAddSubscription(/**String*/ url, /**String*/ title) +{ + let subscription = Subscription.fromURL(url); + if (!subscription) + return; + + FilterStorage.addSubscription(subscription); + + subscription.disabled = false; + subscription.title = title; + + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); +} + +function hasSubscription(url) +{ + return FilterStorage.subscriptions.some(function(subscription) subscription instanceof DownloadableSubscription && subscription.url == url); +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptionSelection.xul b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptionSelection.xul new file mode 100644 index 0000000..17f1854 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptionSelection.xul @@ -0,0 +1,75 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of Adblock Plus <http://adblockplus.org/>, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://adblockplus/skin/subscriptionSelection.css" type="text/css"?> + +<!DOCTYPE dialog SYSTEM "chrome://adblockplus/locale/subscriptionSelection.dtd"> + +<dialog + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + buttons="accept,cancel" + buttonlabelaccept="&addSubscription.label;" + title="&dialog.title;" + id="abpSubscriptionSelection" + windowtype="abp:subscriptionSelection" + onload="init();" + ondialogaccept="return addSubscription();"> + + <script type="application/x-javascript;version=1.7" src="utils.js"/> + <script type="application/x-javascript;version=1.7" src="subscriptionSelection.js"/> + + <deck id="all-subscriptions-container" selectedIndex="0" flex="1"> + <vbox pack="center"> + <progressmeter id="all-subscriptions-loading" mode="undetermined"/> + </vbox> + <vbox> + <richlistbox id="all-subscriptions" onselect="onSelectionChange()" flex="1"/> + <hbox id="subscriptionInfo" invisible="true"> + <label id="view-list" class="text-link" value="&viewList.label;" onclick="UI.loadInBrowser(this.getAttribute('_url'))"/> + <spacer flex="1"/> + <label id="visit-homepage" class="text-link" value="&visitHomepage.label;" onclick="UI.loadInBrowser(this.getAttribute('_url'))"/> + </hbox> + </vbox> + <vbox pack="center" align="center"> + <description value="&list.download.failed;"/> + <hbox> + <button label="&list.download.retry;" oncommand="reloadSubscriptionList()"/> + <button label="&list.download.website;" oncommand="UI.loadDocLink('subscriptions')"/> + </hbox> + </vbox> + </deck> + + <description id="fromWebText" hidden="true">&fromWeb.description;</description> + + <groupbox id="differentSubscription"> + <label value="&title.label;" control="title"/> + <textbox id="title"/> + + <label value="&location.label;" control="location"/> + <textbox id="location"/> + </groupbox> + + <description id="supplementMessage" invisible="true" _textTemplate="&supplementMessage;"> + &supplementMessage; + <label class="text-link" oncommand="">dummy dummy dummy dummy dummy dummy dummy dummy dummy dummy</label> + </description> + <checkbox id="addMainSubscription" invisible="true" checked="true" _labelTemplate="&addMain.label;" label="&addMain.label;"/> + +</dialog> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptions.xml b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptions.xml new file mode 100644 index 0000000..6a05d5e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/subscriptions.xml @@ -0,0 +1,117 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of the Adblock Plus web scripts, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<subscriptions> + <subscription title="EasyList" + specialization="English" + url="https://easylist-downloads.adblockplus.org/easylist.txt" + homepage="https://easylist.adblockplus.org/" + prefixes="en" + author="fanboy, MonztA, Famlam, Khrin"/> + <subscription title="ABPindo+EasyList" + specialization="Bahasa Indonesia" + url="https://easylist-downloads.adblockplus.org/abpindo+easylist.txt" + homepage="http://abpindo.blogspot.com/" + prefixes="id" + author="heradhis"/> + <subscription title="Bulgarian list+EasyList" + specialization="български" + url="https://easylist-downloads.adblockplus.org/bulgarian_list+easylist.txt" + homepage="http://stanev.org/abp/" + prefixes="bg" + author="Александър Станев"/> + <subscription title="EasyList China+EasyList" + specialization="中文" + url="https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt" + homepage="http://abpchina.org/forum/" + prefixes="zh" + author="John, Li, Jiefei"/> + <subscription title="EasyList Czech and Slovak+EasyList" + specialization="čeština, slovenčina" + url="https://easylist-downloads.adblockplus.org/easylistczechslovak+easylist.txt" + homepage="http://adblocksk.tk/" + prefixes="cs,sk" + author="tomasko126"/> + <subscription title="EasyList Dutch+EasyList" + specialization="Nederlands" + url="https://easylist-downloads.adblockplus.org/easylistdutch+easylist.txt" + homepage="https://easylist.adblockplus.org/" + prefixes="nl" + author="Famlam"/> + <subscription title="EasyList Germany+EasyList" + specialization="Deutsch" + url="https://easylist-downloads.adblockplus.org/easylistgermany+easylist.txt" + homepage="https://easylist.adblockplus.org/" + prefixes="de" + author="MonztA, Famlam"/> + <subscription title="EasyList Hebrew+EasyList" + specialization="עברית" + url="https://easylist-downloads.adblockplus.org/israellist+easylist.txt" + homepage="https://github.com/AdBlockPlusIsrael/EasyListHebrew" + prefixes="he" + author="BsT"/> + <subscription title="EasyList Italy+EasyList" + specialization="italiano" + url="https://easylist-downloads.adblockplus.org/easylistitaly+easylist.txt" + homepage="https://easylist.adblockplus.org/" + prefixes="it" + author="Khrin"/> + <subscription title="EasyList Lithuania+EasyList" + specialization="lietuvių kalba" + url="https://easylist-downloads.adblockplus.org/easylistlithuania+easylist.txt" + homepage="http://margevicius.lt/" + prefixes="lt" + author="Algimantas Margevičius"/> + <subscription title="Latvian List+EasyList" + specialization="latviešu valoda" + url="https://easylist-downloads.adblockplus.org/latvianlist+easylist.txt" + homepage="http://latvian-list.site11.com/" + prefixes="lv" + author="anonymous74100"/> + <subscription title="Liste AR+Liste FR+EasyList" + specialization="العربية" + url="https://easylist-downloads.adblockplus.org/liste_ar+liste_fr+easylist.txt" + homepage="https://code.google.com/p/liste-ar-adblock/" + prefixes="ar" + author="smed79"/> + <subscription title="Liste FR+EasyList" + specialization="français" + url="https://easylist-downloads.adblockplus.org/liste_fr+easylist.txt" + homepage="http://adblock-listefr.com/" + prefixes="fr" + author="Lian, Crits, smed79"/> + <subscription title="ROList+EasyList" + specialization="românesc" + url="https://easylist-downloads.adblockplus.org/rolist+easylist.txt" + homepage="http://www.zoso.ro/rolist" + prefixes="ro" + author="MenetZ, Zoso"/> + <subscription title="RuAdList+EasyList" + specialization="русский, українська" + url="https://easylist-downloads.adblockplus.org/ruadlist+easylist.txt" + homepage="https://code.google.com/p/ruadlist/" + prefixes="ru,uk" + author="Lain_13"/> + <subscription title="Wiltteri+EasyList" + specialization="suomi" + url="https://easylist-downloads.adblockplus.org/wiltteri+easylist.txt" + homepage="http://wiltteri.net/" + prefixes="fi" + author="None"/> + </subscriptions>
\ No newline at end of file diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/utils.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/utils.js new file mode 100644 index 0000000..49f6e7f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/content/ui/utils.js @@ -0,0 +1,66 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +const Cc = Components.classes; +const Ci = Components.interfaces; +const Cr = Components.results; +const Cu = Components.utils; + +Cu.import("resource://gre/modules/Services.jsm"); + +/** + * Imports a module from Adblock Plus core. + */ +function require(/**String*/ module) +{ + var result = {}; + result.wrappedJSObject = result; + Services.obs.notifyObservers(result, "adblockplus-require", module); + return result.exports; +} + +var {Policy} = require("contentPolicy"); +var {Filter, InvalidFilter, CommentFilter, ActiveFilter, RegExpFilter, + BlockingFilter, WhitelistFilter, ElemHideBase, ElemHideFilter, ElemHideException} = require("filterClasses"); +var {FilterNotifier} = require("filterNotifier"); +var {FilterStorage, PrivateBrowsing} = require("filterStorage"); +var {IO} = require("io"); +var {defaultMatcher, Matcher, CombinedMatcher} = require("matcher"); +var {Prefs} = require("prefs"); +var {RequestNotifier} = require("requestNotifier"); +var {Subscription, SpecialSubscription, RegularSubscription, + ExternalSubscription, DownloadableSubscription} = require("subscriptionClasses"); +var {Synchronizer} = require("synchronizer"); +var {UI} = require("ui"); +var {Utils} = require("utils"); + +/** + * Shortcut for document.getElementById(id) + */ +function E(id) +{ + return document.getElementById(id); +} + +/** + * Split up all labels into the label and access key portions. + */ +document.addEventListener("DOMContentLoaded", function splitAllLabelsHandler() +{ + document.removeEventListener("DOMContentLoaded", splitAllLabelsHandler, false); + Utils.splitAllLabels(document); +}, false); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/composer.dtd new file mode 100644 index 0000000..54ac458 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "في &نهاية العنوان"> +<!ENTITY domainRestriction.label "ت&قييد النطاق:"> +<!ENTITY collapse.default.no.label "استخدام الافتراضي (لا)"> +<!ENTITY firstParty.label "الطرف &نفسه فقط"> +<!ENTITY preferences.label "&إعرض الفلاتر المتوفرة..."> +<!ENTITY pattern.label "إبحث عن نموذج"> +<!ENTITY thirdParty.label "أطراف أ&خرى فقط"> +<!ENTITY filter.label "&فلتر جديد :"> +<!ENTITY collapse.label "طوي المحجوب: (&س)"> +<!ENTITY match.warning "النموذج الذي أدخلته لم يعد موافقا للعنوان الذي يجب أن يحجب أو يسمح به ولن يأثر فيه"> +<!ENTITY anchor.start.label "في ب&داية العنوان"> +<!ENTITY matchCase.label "م&طابقة الحالة"> +<!ENTITY custom.pattern.label "مخ&صص:"> +<!ENTITY unselectAllTypes.label "بدون أي اختيار"> +<!ENTITY type.whitelist.label "قاعدة است&ثناء"> +<!ENTITY regexp.warning "النموذج الذي أدخلته سيتم تعبيره على أنه تعبير العادي، الكثير من التعابير العادية قد تؤدي إلى بطء في التصفح. إن لم تكن تنوي استخدام التعابير العادية، قم بإضافة الرمز "*" إلى نهاية النموذج"> +<!ENTITY dialog.title "أضف قاعدة تصفية لآدبلوك بلس"> +<!ENTITY basic.label "العرض الأساسي"> +<!ENTITY type.filter.label "&فلاتر حجب"> +<!ENTITY types.label "التطبيق على الأنواع:"> +<!ENTITY shortpattern.warning "النموذج الذي أدخلته قصير جداً ليتم تحسينه وقد يبطئ تصفحك. ينصح باختيار قيمة أطول لهذا الفلتر لكي يقوم آدبلوك بلس بفلترته بطريقة بكفاءة."> +<!ENTITY collapse.yes.label "نعم"> +<!ENTITY anchors.label "قبول النموذج فقط:"> +<!ENTITY collapse.default.yes.label "استخدام الافتراضي (نعم)"> +<!ENTITY domainRestriction.help "استعمل هذا الخيار لتحديد نطاق واحد أو أكثر مفصول بالرمز "|"، سيطبق هذا الفلتر على هذه النطاقات فقط. وضع الرمز "~" قبل اسم نطاق يعني أن الفلتر يجب ألا يطبق على ذلك النطاق"> +<!ENTITY accept.label "إضافة فلتر"> +<!ENTITY options.label "إعدادات"> +<!ENTITY disabled.warning "آدبلوك بلس معطل حالياً. ما زال يمكنك إضافة الفلاتر و لكن لن يتم تطبيقهم إلا إذا قمت ب[link]بتفعيل آدبلوك بلس[/link]."> +<!ENTITY anchor.start.flexible.label "في ب&داية اسم النطاق"> +<!ENTITY collapse.no.label "لا"> +<!ENTITY selectAllTypes.label "اختيار الكل"> +<!ENTITY advanced.label "عرض متقدم"> +<!ENTITY pattern.explanation "هذا النمط يمكن أن يكون أي جزء من عنوان، الرمز (*) يستعمل كاختصار. سيتم تطبيق المصفاة على العناوين المطابقة للنمط المحدد فقط."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/filters.dtd new file mode 100644 index 0000000..e7691f6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "سيتم استبدال كافة عوامل التصفية المخصصة الخاصة بك بمحتويات الملف المحدد.هل تريد المتابعه؟"> +<!ENTITY slow.column "&عرض الفلاتر"> +<!ENTITY enabled.column "مش&غل"> +<!ENTITY subscription.lastDownload.checksumMismatch "فشل ، عدم تطابق المجموع الاختباري"> +<!ENTITY noFiltersInGroup.text "المجموعة المختارة فارغة"> +<!ENTITY subscription.actions.label "الإجراءات"> +<!ENTITY filter.selectAll.label "اختيار الكل"> +<!ENTITY backupButton.label "ال&نسخ الاحتياطية والاسترجاع"> +<!ENTITY restore.minVersion.warning "تنبيه : الملف تم إنشاؤه بواسطة نسخة حديثة لأد بلوك بلس . يجب عليك تحديث أد بلوك بلس قبل عمليةالاستعادة من هذا الملف. "> +<!ENTITY restore.error "لا يمكن معالجة بينات الملف ، من المحتمل أن هذاالملف ليس النسخة الاحتياطية لآد بلوك بلس ؟"> +<!ENTITY sort.ascending.label "ترتيب أبجدي (A > Z) (&ص)"> +<!ENTITY sort.label "ترتي&ب حسب"> +<!ENTITY subscription.source.label "قائمة الفلاتر"> +<!ENTITY hitcount.column "ال&ضغطات"> +<!ENTITY noFilters.text "لا توجد لديك فلاتر مخصصة بعد"> +<!ENTITY backup.custom.title "الفلاتر المخصصة فقط"> +<!ENTITY subscription.external.label "تم التحديث من اضافة اخرى"> +<!ENTITY subscription.delete.label "ازالة"> +<!ENTITY noGroupSelected.text "ج"> +<!ENTITY filter.cut.label "قص"> +<!ENTITY restore.default.label "الاسترجاع من النسخة الاحتياطية ?1?"> +<!ENTITY subscription.lastDownload.inProgress "جاري التحميل"> +<!ENTITY subscriptions.tab.label "اشتراكات الفلتر"> +<!ENTITY sort.descending.label "ت&رتيب أبجدي (Z > A)"> +<!ENTITY filters.remove.warning "أحقاً تريد ازالة الفلاتر المختارة؟"> +<!ENTITY filter.delete.label "حذف"> +<!ENTITY addSubscriptionAdd.label "اضافة"> +<!ENTITY viewMenu.label "عرض"> +<!ENTITY subscription.lastDownload.unknown "غير متاح"> +<!ENTITY addSubscriptionCancel.label "الغاء"> +<!ENTITY subscription.enabled.label "مفعّل"> +<!ENTITY noSubscriptions.text "لم تضف أي فلتر اشتراك حتى الان. لن يصد آد بلُك بلَس +أي شيء بدون هذه الفلاتر, الرجاء اختيار اشتراكات الفلاتر +لاضافة أحدها"> +<!ENTITY subscription.update.label "تحدبث الفلاتر"> +<!ENTITY dialog.title "تفضيلات التصفية لآد بلُك بلَس"> +<!ENTITY addFilter.label "إ&ضافة فلتر"> +<!ENTITY subscription.minVersion.warning "يتطلب هذا الاشتراك للتصفية أحدث إصدار آد بلُك بلَس ، يجب التحديث إلى الإصدار الأحدث"> +<!ENTITY subscription.lastDownload.invalidURL "فشل الأمر، ليس عنوان صحيح"> +<!ENTITY backup.error "حصل هناك خطأ في إضافة الفلاتر إلى الملف . تأكد من أن الملف قابل للتعديل و لا يتم استخدامه في برنامج آخر."> +<!ENTITY filter.moveUp.label "الى الاعلى"> +<!ENTITY addGroup.label "أضافة &مجموعة تصفية"> +<!ENTITY filter.edit.label "تحرير"> +<!ENTITY subscription.showHideFilters.label "اظهار / اخفاء الفلاتر"> +<!ENTITY acceptableAds2.label "السماح لب&عض الإعلانات الغير متطفّلة"> +<!ENTITY addSubscriptionOther.label "إضافة اشتراك آخر"> +<!ENTITY close.label "اغلاق"> +<!ENTITY sort.none.label "غي&ر مرتب"> +<!ENTITY filter.actions.label "أفعال الفلاتر"> +<!ENTITY filter.copy.label "نسخ"> +<!ENTITY filter.moveDown.label "الى الاسفل"> +<!ENTITY filter.resetHitCounts.label "استرجاع احصائيات الاصابات الصحيحة"> +<!ENTITY readMore.label "قراءة المزيد"> +<!ENTITY subscription.moveUp.label "الى الاعلى"> +<!ENTITY addSubscription.label "إضا&فة اشتراك إلى فلتر"> +<!ENTITY subscription.homepage.label "صفحة البداية"> +<!ENTITY backup.complete.title "كل الاشتراكات والفلاتر"> +<!ENTITY restore.own.label "الاسترجاع من النسخة الاحتياطية الذاتية"> +<!ENTITY restore.complete.warning "سيتم استبدال كافة التفضيلات الخاصة بك في تصفية محتويات الملف المحدد. هل تريد المتابعه؟"> +<!ENTITY filters.tab.label "الفلاتر المخصصة"> +<!ENTITY backup.label "اعمل نسخة احتياطية جديدة"> +<!ENTITY find.label "بحث (&ج)"> +<!ENTITY subscription.moveDown.label "الى الاسفل"> +<!ENTITY subscription.lastDownload.connectionError "فشل الأمر بسبب فشل التحميل"> +<!ENTITY subscription.lastDownload.success "نجاح"> +<!ENTITY subscription.lastDownload.invalidData "فشل الأمر، ليست قائمة فلاتر صحيحة"> +<!ENTITY filter.paste.label "لصق"> +<!ENTITY subscription.disabledFilters.enable "تفعيل الفلاتر المعطّلة"> +<!ENTITY lasthit.column "&آخر ضغطة"> +<!ENTITY subscription.editTitle.label "تحرير العنوان"> +<!ENTITY subscription.disabledFilters.warning "بعض الفلاتر في هذا الاشتراك معطّلة"> +<!ENTITY filter.column "قانون ال&فلتر"> +<!ENTITY subscription.lastDownload.label "آخر تحميل"> +<!ENTITY viewList.label "اظهار القائمة"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/firstRun.properties new file mode 100644 index 0000000..647ee0c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=حافظ على خصوصيتك عند استخدام المتصفح بتعطيل التجسس و أخفي نفسك على الشركات الإعلانية اللتي تحاول أن تتبع كل تحركاتك. +firstRun_toggle_off=إيقاف +firstRun_feature_tracking=تعطيل التعقب +firstRun_feature_malware=منع البرامج الضارة +firstRun_title=تم تثبيت آد بلوك بلس +firstRun_toggle_on=تشغيل +firstRun_acceptableAdsExplanation=نود تشجيع مواقع ويب باستخدام الإعلانات واضحة وغير مزعجة. ولهذا السبب وضعنا <a>مبادئ توجيهية صارمة</a> لتحديد الإعلانات المقبولة، والتي تظهر ضمن الإعدادات الافتراضية. إذا كنت تريد أن تمنع كل الإعلانات يمكنك <a>تعطيل</a> هذا في بضع ثوان. +firstRun_contributor_credits=شكر للمساهمين +firstRun_dataCorruptionWarning=هل تواصل هذه الصفحة الظهور ؟ <a>اضغط هنا !</a> +firstRun_acceptableAdsHeadline=سيتم الآن حجب الإعلانات المزعجة +firstRun_share=أخبر أصدقائك +firstRun_share_headline=<a>يقدم لنا يد المساعدة</a> في جعل الإنترنت مكاناً أفضل +firstRun_feature_social_description=خلص تلقائياً المتصفح الخاص بك من وسائل الإعلام الاجتماعية الأزرار، مثل مثل ألفيس بوك، التي تظهر في صفحات الويب، وتتبع السلوك الخاص بك. +firstRun_filterlistsReinitializedWarning=ويبدو أن خطأ تسبب في إزالة جميع قوائم الفلترات حجب الإعلانات، و لم نتمكن من استعادة نسخة احتياطية. ولذلك اضطررنا إلى إعادة تعيين الإعدادات الخاصة بك و قائمة الفلاتر للوضع السابق مع "الإعلانات القبول". الرجاء التحقق من قوائم الفلترات و إعدادات "الإعلانات المقبولة" في <a>خيارات آدبلوك بلس</a>. +firstRun_feature_malware_description=إجعل التصفح أكثر أماناً بتعطيل مواقع البرامج الضارة المعروفة. +firstRun_features=آد بلوك بلس يمكنه عمل أشياء أخرى غير حجب الإعلانات +firstRun_donate=تبرع +firstRun_donate_label=دعم مشروعنا +firstRun_feature_social=إزالة أزرار المواقع الإجتماعية +firstRun_legacySafariWarning=أنت تستخدم نسخة فديمة من متصفح سفارى وهذه النسخة غير مدعومة من أد بلوك بلس. بحيث من الممكن ان لا يعمل بصورة صحيحة على بعض المواقع. نحن نوصي بشدة ان تقوم بالترقية الى النسخة السادسة 6.1.1 للمتصفح سفارى أو النسخة الأحدث (متوفر على Mac OS X 10.8 Mountain Lion) أو النسخة السابعة 7.0.1 أو الأحدث (متوفر على OS X 10.9 Mavericks) أو تستطيع ان تستخدم أحدث إصدارللمتصفح فايرفوكس، جوجل كروم أو أوبرا. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/global.properties new file mode 100644 index 0000000..d626eb5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=لا توجد عناصر للحجب في هذه الصفحة +action3_tooltip=اضغط لتشغيل/تعطيل آدبلوك بلس +notification_antiadblock_title=إخفاء الرسائل المستهدفة؟ +type_label_script=سكريبت +filter_elemhide_nocriteria=لم يتم تحديد صيغة للتعرف على العنصر لإخفاؤه +blockingGroup_title=قواعد حجب الدعاية +whitelisted_tooltip=آدبلوك بلس فعال الآن، و لكنه معطل بالنسبة لهذه الصفحة +type_label_stylesheet=جدول الأنماط +blocked_count_tooltip=?1? خارج عن ?2? +type_label_font=الخط +type_label_popup=نافذة منبثقة +filter_regexp_tooltip=هذا الفلتر إما "تعبير منطقي" أو أقصر من أن يتم تحسينه. الكثير من هذه الفلاتر قد تؤدي إلى بطء في التصفح +action0_tooltip=اضغط لتظهر القائمة المرافقة، اضغط بالزر الأوسط للتشغيل/التعطيل +whitelisted_page=تم تعطيل آدبلوك بلس في الصفحة الحالية +remove_group_warning=هل تريد حقاً إزالة هذه المجموعة؟ +action1_tooltip=اضغط لفتح/إغلاق العناصر المحجوبة، اضغط بالزر الأوسط للتشغيل/ التعطيل +type_label_xmlhttprequest=طلب XML +active_tooltip=إن آدبلوك بلس مفعل. هناك ?1? اشتراك فلتر و ?2? فلاتر مخصصة قيد الاستعمال +type_label_document=مستند +type_label_object_subrequest=طلب فرعي للعنصر +whitelistGroup_title=قواعد الاستثتاء +disabled_tooltip=آدبلوك بلس معطل الآن +filter_elemhide_duplicate_id=تعريف واحد فقط للعنصر الذي سيتم إخفاؤه يمكن أن يحدد +type_label_object=عنصر +action2_tooltip=اضغط لفتح الخيارات، اضغط بالزر الأوسط للتشغيل/التعطيل +type_label_subdocument=إطار +clearStats_warning=هذا سيصفّر كل احصاءات الفلاتر ويعطّل تعداد اصابات الفلاتر. هل تريد التقدم؟ +notification_antiadblock_message=لقد عرف هذا الموقع بإظهاره رسائل موجهة إلى المستخدمين. هل تريد أن يخفي Adblock Plus الرسائل المستهدفة؟ +blocked_count_addendum=المسموح به ?1? والمخفي ?2? +subscription_invalid_location=موقع قائمة الفلتر ليس صحيح كعنوان ويب و لا كأسم ملف +type_label_image=صورة +remove_subscription_warning=هل أنت حقاً راغب بإزالة هذا الاشتراك؟ +type_label_other=أخرى +mobile_menu_enable=آدبلوك بلس: تفعيل +type_label_media=صوت/فيديو +mobile_menu_disable_site=آدبلوك بلس: تعطيل على ?1? +elemhideGroup_title=قواعد اخفاء العناصر +mobile_menu_enable_site=آدبلوك بلس: تفعيل على ?1? +type_label_elemhide=مخفي +newGroup_title=مجموعة فلترة جديدة +default_dialog_title=آدبلوك بلس diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/overlay.dtd new file mode 100644 index 0000000..6214cda --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&نعم"> +<!ENTITY notification.button.no "&لا"> +<!ENTITY sync.label "م&زامنة إعدادات آدبلوك بلس"> +<!ENTITY whitelist.site.label "تعطيل في ?1?"> +<!ENTITY filters.label "ت&فضيلات الفلتر"> +<!ENTITY disable.label "تعطيل في جميع الأماكن"> +<!ENTITY objecttab.title "أحجب"> +<!ENTITY objecttab.tooltip "اضغط هنا لحجب هذا العنصر بـ آدبلوك بلاس"> +<!ENTITY menuitem.label "تفضيلات آدبلوك بلس"> +<!ENTITY objecttabs.label "عرض &تبويبات لفلاش و جافا"> +<!ENTITY sendReport.label "ال&تبليغ عن خطأ في هذه الصفحة"> +<!ENTITY whitelist.page.label "تعطيل في هذه الصفحة فقط"> +<!ENTITY context.image.label "آدبلوك بلس : حجب صورة"> +<!ENTITY counthits.label "تعداد اصابات الفلترة (&إ)"> +<!ENTITY opensidebar.label "فتح العناصر المح&جوبة"> +<!ENTITY notification.button.close "&اغلاق"> +<!ENTITY contribute.label "شارك في آد بلُك بلَس"> +<!ENTITY toolbarbutton.label "آدبلوك بلس"> +<!ENTITY context.frame.label "آدبلوك بلس : حجب إطار"> +<!ENTITY blocked.tooltip "العناصر المحجوبة في هذه الصفحة"> +<!ENTITY hideplaceholders.label "ا&خفاء ماسك المكان للعناصر الموقوفة"> +<!ENTITY showinstatusbar.label "عرض في شريط ال&حالة"> +<!ENTITY sidebar.title "العناصر المحجوبة في الصفحة الحالية"> +<!ENTITY options.label "&خيارات"> +<!ENTITY context.object.label "آدبلوك بلس : حجب عنصر"> +<!ENTITY context.removeWhitelist.label "آدبلوك بلس : إعادة التفعيل في هذه الصفحة"> +<!ENTITY filters.tooltip "المصافي الأكثر نشاط:"> +<!ENTITY closesidebar.label "إغلاق العناصر المح&جوبة"> +<!ENTITY showintoolbar.label "عرض في &شريط الأدوات"> +<!ENTITY status.tooltip "الحالة"> +<!ENTITY context.media.label "آدبلوك بلس : حجب أوديوفيديو"> +<!ENTITY subscription.update.label "تحدبث الفلاتر"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/sendReport.dtd new file mode 100644 index 0000000..5e7f255 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&تراجع"> +<!ENTITY issues.disabledgroups.description "اشتراكات ومجموعات الفلاتر التالية معطلة، ولكنها قد تسبب أثرا على هذه الصفحة رغم ذلك"> +<!ENTITY showData.label "إظهار بيانات التقرير"> +<!ENTITY typeSelector.falsePositive.label "آدبلوك بلس يحجب &أكثر من اللازم"> +<!ENTITY issues.change.description "تم تغيير إعداداتك. الرجاء إعادة تحميل الصفحة لتجربة التغييرات وإرسال تقرير بالمشكلة إن لم تكن قد حلت بهذه التغييرات"> +<!ENTITY email.label "الب&ريد الإلكتروني:"> +<!ENTITY issues.openPreferences.label "فتح تفضيلات الفلتر"> +<!ENTITY sendPage.confirmation "تم حفظ تقريرك. ستستطيع الوصول إليه عن طريق العنوان التالي:"> +<!ENTITY copyLink.label "&نسخ رابط التقرير"> +<!ENTITY issues.nofilters.description "آدبلوك بلس لا يمنع أي شيء على هذه الصفحة. على الأغلب أن المشكلة التي تواجهها لا تتعلق بآدبلوك بلس نفسه."> +<!ENTITY sendPage.knownIssue "على الأغلب أن المشكلة التي قمت بإرسالها معروفة مسبقاً. للمزيد من المعلومات:"> +<!ENTITY typeSelector.other.description "اختر هذا الخيار إن كنت تشك أن المشكلة بآدبلوك بلس نفسه وليس بأحد الفلاتر"> +<!ENTITY issues.disabledgroups.enable.label "تفعيل مجموعة اشتراك فلتر"> +<!ENTITY typeWarning.override.label "أتفهم وأرغب بإر&سال التقرير"> +<!ENTITY issues.disabled.enable.label "تفعيل آدبلوك بلس"> +<!ENTITY update.fixed.description "التحديثات لاشتراكات الفلاتر أصلحت المشكلة التي أردت الإبلاغ عنها. رجاء أعد تحديث الصفحة وأعد المحاولة، اضغط تقرير مرة أخرى إذا بقيت المشكلة."> +<!ENTITY anonymous.label "تقرير بدون هوي&ة"> +<!ENTITY reloadButton.label "إعادة ت&حميل الصفحة"> +<!ENTITY recentReports.clear.label "&حذف كل التقارير"> +<!ENTITY typeSelector.description "هذه النافذة ستقودك خلال الخطوات المطلوبة لإرسال تبليغ بمشكلة في آدبلوك بلس. في البداية عليك اختيار نوع المشكلة التي تواجهها من هذه الصفحة"> +<!ENTITY screenshot.remove.label "&حذف المعلومات الحساسة"> +<!ENTITY issues.ownfilters.description "بعض الفلاتر المطبقة على هذه الصفحة من صنع المستخدم. الرجاء إلغاء تفعيل هذه الفلاتر لأنها ربما تكون سبب المشكلة"> +<!ENTITY update.inProgress.description "آدبلوك بلس يحتاج لتحديث اشتراكات الفلاتر للتأكد من أن المشكلة لم يتم إصلاحها مسبقا. الرجاء الانتظار..."> +<!ENTITY sendPage.retry.label "إرسالة مرة أخرى"> +<!ENTITY data.label "التبل&يغ عن بيانات"> +<!ENTITY recentReports.label "تقاريرك المرسلة مؤخرا"> +<!ENTITY typeWarning.description "لقد أشرت إلى رغبتك بالتبليغ عن مشكلة في آدبلوك بلس نفسه وليس بالفلاتر. الرجاء الانتباه إلى أنه من الأفضل التبليغ عن مثل هذه المشاكل في [link]منتدى آدبلوك بلس[/link]. يجب استعمال مبلغ المشاكل فقط للإضافة إلى مناقشة جارية أصلا لأن أحداً لن يلاحظ تقريرك إن لم تقم بوضع رابط إليه. سيتم إظهار رابط مولد لتقريرك بمجرد أن تقوم بإرسال التقرير."> +<!ENTITY issues.disabled.description "آدبلوك بلس معطل ولن يقوم بحجب أي شيء في هذه الحالة"> +<!ENTITY attachExtensions.label "إرف&اق قائمة بالإضافات الفعالة مع التقرير"> +<!ENTITY issues.nosubscriptions.add.label "إضافة اشتراك فلتر"> +<!ENTITY issues.disabledfilters.enable.label "تفعيل فلتر"> +<!ENTITY issues.override.label "ال&إعدادات معطلة، المتابعة بالتقرير"> +<!ENTITY issues.nosubscriptions.description "يبدو أنك لم تشترك بأي قوائم فلاتر جاهزة والتي ستقوم بإزالة المحتوى الغير من المواقع تلقائيا"> +<!ENTITY typeSelector.falsePositive.description "اختر هذا الخيار ان كان محتوى مهم ناقص من الصفحة أو كانت الصفحة تظهر بشكل خاطئ أو لا تعمل بشكل جيد. إن لم يكن باستطاعتك تحديد إن كان آدبلوك بلس هو سبب المشكلة جرب تعطيله مؤقتاً"> +<!ENTITY typeSelector.other.label "مشكلة أ&خرى"> +<!ENTITY emailComment.label "نحن نشجعك لإدخال بريد إلكتروني صحيح لكي نتمكن من الاتصال بك إذا كانت هناك أسئلة."> +<!ENTITY issues.whitelist.remove.label "إعادة تفعيل آدبلوك بلس على هذه الصفحة"> +<!ENTITY outdatedSubscriptions.description "اشتراكات الفلاتر التالية لم يتم تحديثها منذ أسبوعين على الأقل. الرجاء تحديث هذه الاشتراكات قبل إرسال تقرير، ربما تم إصلاح المشكلة مسبقا."> +<!ENTITY dataCollector.description "من فضلك انتظر بضعة دقائق ريثما يجمع آدبلوك بلس المعلومات المطلوبة"> +<!ENTITY sendButton.label "إرسا&ل التقرير"> +<!ENTITY comment.label "التعلي&ق (اختياري)ـ"> +<!ENTITY sendPage.errorMessage "فشل إرسال التقرير بسبب الخطأ "?1?". الرجاء التأكد من صحة اتصالك بالإنترنت وإعادة المحاولة. إن استمرت المشكلة الرجاء طلب المساعدة في [link]منتديات آدبلوك بلس[/link]"> +<!ENTITY showRecentReports.label "إظهار التقارير المرسلة مؤخرا"> +<!ENTITY commentPage.heading "إدخال تعليق"> +<!ENTITY update.start.label "بداية التحديث الان"> +<!ENTITY issues.disabledfilters.description "الفلاتر التالية معطلة ولكن قد يكون لها أثر على هذه الصفحة رغم ذلك"> +<!ENTITY screenshot.description "نفس الصفحة قد تظهر بشكل مختلف لأشخاص مختلفين. قد يساعدنا فهم المشكلة إن قمت بإرفاق صورة لشاشتك مع تقريرك. ستستطيع حذف المناطق التي تحتوي معلومات حساسة وكذلك وضع علامة على المناطق التي تظهر بها المشكلة. لفعل ذلك اضغط الزر المناسب ثم اختر منطقة من الصورة باستخدام الفأرة"> +<!ENTITY screenshot.attach.label "إر&فاق صورة للصفحة مع التقرير"> +<!ENTITY issues.whitelist.description "آدبلوك بلس معطل حاليا على الصفحة التي تقوم بالتبليغ عنها. الرجاء إعادة تفعيله وإعادة تحميل الصفحة قبل أن تقوم بإرسال التقرير للمساعدة في التحقق من المشكلة"> +<!ENTITY typeSelector.falseNegative.label "آدبلوك بلس لا يقوم بحجب أحد الإ&علانات"> +<!ENTITY typeSelector.heading "اختر نوع المشكلة"> +<!ENTITY anonymity.warning "لن نكون قادرين على الرجوع إليك و لن نعطي للتقرير أهمية كبيرة."> +<!ENTITY wizard.title "مبلغ المشاكل"> +<!ENTITY issues.ownfilters.disable.label "تعطيل فلتر"> +<!ENTITY commentPage.description "يسمح لك الحقل التالي بإدخال تعليق ليساعدنا في فهم المشكلة. هذه الخطوة إختيارية ولكننا نصح بها إن لم تكن المشكلة واضحة. ستستطيع أيضا مراجعة بيانات التقرير قبل إرساله"> +<!ENTITY comment.lengthWarning "طول التعليق يتجاوز 1000 حرف. سيتم إرسال أول 1000 حرف فقط"> +<!ENTITY typeSelector.falseNegative.description "اختر هذا الخيار إن كان أحد الإعلانات ظاهرا رغم أن آدبلوك بلس مفعل"> +<!ENTITY sendPage.waitMessage "الرجاء الانتظار ريثما يقوم آدبلوك بلس بإرسال تقرير"> +<!ENTITY dataCollector.heading "أهلا بك في مبلغ المشاكل"> +<!ENTITY screenshot.heading "إرفاق صورة للشاشة"> +<!ENTITY sendPage.heading "إرسال التقرير"> +<!ENTITY issues.subscriptionCount.description "يبدو أنك مشترك في الكثير جداً من اشتراكات الفلاتر وهو غير مفضل لأنه قد يكون السبب في المشاكل التي تعانيها. نعتذر عن قبول تقرير مشكلتك لأننا لن نستطيع تحديد الفلتر الذي يتسبب بالمشكلة لإبلاغ مطوره. الرجاء إزالة جميع الفلاتر وإبقاء الهام جداً منها فقط ثم تأكد من ذهاب المشكلة أو لا."> +<!ENTITY screenshot.mark.label "وضع علا&مة على المشكلة"> +<!ENTITY privacyPolicy.label "سياسة الخصوصية"> +<!ENTITY issues.description "قام آدبلوك بلس بتحديد مشاكل بإعداداتك قد تكون هي المسؤولة عن هذه المشكلة وسيجعل التحقق من المشكلة صعباً"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/sidebar.dtd new file mode 100644 index 0000000..78b50fb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "إضاءة حواف العنصر"> +<!ENTITY address.label "العنوان"> +<!ENTITY context.open.label "فتح في تبويب جديد"> +<!ENTITY type.label "النوع"> +<!ENTITY tooltip.filterSource.label "مصدر الفلتر:"> +<!ENTITY noitems.label "لا عناصر محجوبة"> +<!ENTITY filter.label "الفلتر"> +<!ENTITY tooltip.size.label "الحجم:"> +<!ENTITY reattach.label "إعادة إرفاق"> +<!ENTITY search.label "بح&ث"> +<!ENTITY docDomain.thirdParty "(طرف خارجي)"> +<!ENTITY filterSource.label "فلترة المصدر"> +<!ENTITY tooltip.docDomain.label "مصدر الملف:"> +<!ENTITY context.copy.label "نسخ عنوان العنصر"> +<!ENTITY tooltip.type.label "النوع"> +<!ENTITY context.disablefilter.label "تعطيل الفلتر ?1?"> +<!ENTITY context.copyFilter.label "نسخ الفلتر"> +<!ENTITY context.block.label "حجب هذا العنصر"> +<!ENTITY context.enablefilter.label "إعادة تفعيل الفلتر ?1?"> +<!ENTITY detach.label "فصل"> +<!ENTITY whitelisted.label "صفحة موثوقة"> +<!ENTITY context.disablefilteronsite.label "تعطيل هذا الفلتر على ?1?"> +<!ENTITY detached.title "آدبلوك بلاس : العناصر المحجوبة (المنفصلة)"> +<!ENTITY docDomain.firstParty "(طرف داخلي)"> +<!ENTITY tooltip.type.whitelisted "(موثوق)"> +<!ENTITY tooltip.filter.label "الفلتر الفعال"> +<!ENTITY tooltip.filter.disabled "(معطل)"> +<!ENTITY context.editfilter.label "تعديل الفلتر الفعال"> +<!ENTITY tooltip.type.blocked "(محجوب)"> +<!ENTITY size.label "الحجم"> +<!ENTITY context.whitelist.label "إضافة قانون استثنائي إلى هذا العنصر"> +<!ENTITY context.selectAll.label "اختيار الكل"> +<!ENTITY state.label "الحالة"> +<!ENTITY docDomain.label "مصدر الملف"> +<!ENTITY tooltip.address.label "العنوان"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/subscriptionSelection.dtd new file mode 100644 index 0000000..7c4938b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ar/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "إضافة ا&شتراك الفلتر "?1?" أيضا"> +<!ENTITY list.download.failed "فشل آدبلوك بلس في جلب قائمة الاشتراكات"> +<!ENTITY list.download.retry "إعادة المحاولة"> +<!ENTITY title.label "&عنوان الاشتراك"> +<!ENTITY list.download.website "عرض الموقع"> +<!ENTITY supplementMessage "اشتراك الفلتر هذا يجب أن يستخدم مع اشتراك الفلتر "?1?" والذي لم تستعمله بعد"> +<!ENTITY viewList.label "عرض فلاتر"> +<!ENTITY visitHomepage.label "زيارة الصفحة الرئيسية"> +<!ENTITY addSubscription.label "إضافة اشتراك"> +<!ENTITY dialog.title "أهلاً بك في آدبلوك بلس"> +<!ENTITY location.label "&موقع قائمة الفلاتر"> +<!ENTITY fromWeb.description "الرجاء التأكد من رغبتك في إضافة اشتراك الفلتر هذا. يمكنك أن تغير عنوان أو موقع الاشتراك قبل اضافته."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/composer.dtd new file mode 100644 index 0000000..1d185af --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "в края на адре&са"> +<!ENTITY domainRestriction.label "Ог&раничаване на домейн:"> +<!ENTITY collapse.default.no.label "Ползвай по подразбиране(не)"> +<!ENTITY firstParty.label "Първа страна сам&о"> +<!ENTITY preferences.label "Покажи съ&ществуващите филтри.."> +<!ENTITY pattern.label "Търсете модел"> +<!ENTITY thirdParty.label "&Трети страни само"> +<!ENTITY filter.label "Нов Филт&ър:"> +<!ENTITY collapse.label "Свиван&е на блокирани:"> +<!ENTITY match.warning "Моделът, който сте въвели, вече не отговаря на адреса за блокиране/белия списък и няма да въздействa върху него."> +<!ENTITY anchor.start.label "в на&чалото на адреса"> +<!ENTITY matchCase.label "Съвпадение на ре&гистъра"> +<!ENTITY custom.pattern.label "&Избрани:"> +<!ENTITY unselectAllTypes.label "Не избирай нищо"> +<!ENTITY type.whitelist.label "Из&ключение от правилото"> +<!ENTITY regexp.warning "Моделът който сте въвели ще бъде интерпретиран като регулярен израз, които не могат да бъдат ефективно обработени с Adblock Плюс и могат да забавят твоят браузър. Ако не възнамерявате да използвате регулярен израз, добавете звездичка (*) към края на модела."> +<!ENTITY dialog.title "Добавяне на Adblock Plus филтър правило"> +<!ENTITY basic.label "Основен изглед"> +<!ENTITY type.filter.label "&Блокиране на филтър"> +<!ENTITY types.label "Прилага за типове:"> +<!ENTITY shortpattern.warning "Моделът които сте въвели е твърде кратък, за да бъде оптимизиран и може да забави вашия браузър. Препоръчително е да изберете по-дълъг низ за този филтър, за да позволи Adblock Плюс за по-ефективна обработка на филтъра."> +<!ENTITY collapse.yes.label "Да"> +<!ENTITY anchors.label "Приемам само модел:"> +<!ENTITY collapse.default.yes.label "Ползвай по подразбиране(да)"> +<!ENTITY domainRestriction.help "Използвайте тази опция, за да зададете една или повече области, разделени с бар линия (|). Филтърът ще се прилага само за избран(и) домейн(и). А тилда (~) пред името на домейна се посочва, че филтърът не се прилага в този домейн."> +<!ENTITY accept.label "Добави Филтър"> +<!ENTITY options.label "Настройки"> +<!ENTITY disabled.warning "Adblock Плюс е изключена. Все още можете да добавите филтри, но те няма да се прилагат, освен ако не [link]Включите Adblock Плюс[/link]."> +<!ENTITY anchor.start.flexible.label "в на&чалото на домейн името"> +<!ENTITY collapse.no.label "Не"> +<!ENTITY selectAllTypes.label "Избери всички"> +<!ENTITY advanced.label "Разширен изглед"> +<!ENTITY pattern.explanation "Моделът може да бъде част от адрес; звездичка (*) да действа като заместващи символи. Филтърът ще се прилага само за адресите, отговарящи на предвидения образец."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/filters.dtd new file mode 100644 index 0000000..28cd5e4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Всички ваши потребителски филтри ще бъде заменен от съдържанието на избрания файл. Искате ли да продължите?"> +<!ENTITY slow.column "Пока&жи филтри"> +<!ENTITY enabled.column "&Включен"> +<!ENTITY subscription.lastDownload.checksumMismatch "Грешка, несъвпадение на контролната сума"> +<!ENTITY noFiltersInGroup.text "Избраната група е празна"> +<!ENTITY subscription.actions.label "Действия"> +<!ENTITY filter.selectAll.label "Избери Всички"> +<!ENTITY backupButton.label "Архи&вирай и Възстанови"> +<!ENTITY restore.minVersion.warning "Внимание: файлът е създаден с по-нова версия на Adblock Plus. Трябва да обновите до последната версия на Adblock Plus, преди да възстановите от този файл."> +<!ENTITY restore.error "Файлът не може да се обработи или не е с данни, може би Това не е Adblock Plus архивния файл?"> +<!ENTITY sort.ascending.label "&А > Я сортиране"> +<!ENTITY sort.label "&Сортирай по"> +<!ENTITY subscription.source.label "Филтър Лист"> +<!ENTITY hitcount.column "Посе&щения"> +<!ENTITY noFilters.text "Ти нямаш нито един собствен филтър още."> +<!ENTITY backup.custom.title "Лични филтри само"> +<!ENTITY subscription.external.label "Ъпдейтнат от друга добавка"> +<!ENTITY subscription.delete.label "Изтрий"> +<!ENTITY noGroupSelected.text "Вие трябва да изберете филтър група, преди тези филтри да бъдат показани."> +<!ENTITY filter.cut.label "Изрежи"> +<!ENTITY restore.default.label "Възстанови архив от ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Изтегляне..."> +<!ENTITY subscriptions.tab.label "Абонаменти за Филтър"> +<!ENTITY sort.descending.label "&Я > А Сортиране"> +<!ENTITY filters.remove.warning "Наистина ли искаш да изтриеш всички избрани филтри?"> +<!ENTITY filter.delete.label "Изтрий"> +<!ENTITY addSubscriptionAdd.label "Добави"> +<!ENTITY viewMenu.label "Изглед"> +<!ENTITY subscription.lastDownload.unknown "Няма данни"> +<!ENTITY addSubscriptionCancel.label "Откажи"> +<!ENTITY subscription.enabled.label "Включен"> +<!ENTITY noSubscriptions.text "Ти не си добавил никакъв абонамент за филтри. Adblock Plus няма да блокира + нищо без филтри, моля избери "Добави филтър абонаменти" за да + добавиш някакви."> +<!ENTITY subscription.update.label "Обнови филтрите"> +<!ENTITY dialog.title "Adblock Plus Настройки за филтър"> +<!ENTITY addFilter.label "Доб&ави Филтър"> +<!ENTITY subscription.minVersion.warning "Този филтър абонамент изисква по-нова версия на Adblock Plus, трябва да обновите до последната версия на Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Грешка, невалиден адрес"> +<!ENTITY backup.error "Възникна грешка при писане на филтри за файла.Уверете се, че файлът не е защитени или се използва от друго приложение."> +<!ENTITY filter.moveUp.label "Премести нагоре"> +<!ENTITY addGroup.label "Добави филтър &група"> +<!ENTITY filter.edit.label "Промени"> +<!ENTITY subscription.showHideFilters.label "Покажи/скрий филтрите"> +<!ENTITY acceptableAds2.label "Оставете няко&и не натрапчиви реклами"> +<!ENTITY addSubscriptionOther.label "Добави друг абонамент"> +<!ENTITY close.label "Затвори"> +<!ENTITY sort.none.label "&Несортирани"> +<!ENTITY filter.actions.label "Филтър действия"> +<!ENTITY filter.copy.label "Копирай"> +<!ENTITY filter.moveDown.label "Премести надоло"> +<!ENTITY filter.resetHitCounts.label "Рестарт на Хит Статистиката"> +<!ENTITY readMore.label "Прочети повече"> +<!ENTITY subscription.moveUp.label "Премести нагоре"> +<!ENTITY addSubscription.label "Добави абонамент за &филтър"> +<!ENTITY subscription.homepage.label "Лична Страница"> +<!ENTITY backup.complete.title "Всички филтри и абонаменти"> +<!ENTITY restore.own.label "Възстанови свой архив"> +<!ENTITY restore.complete.warning "Всички ваши филтър предпочитания ще бъдат заменени от съдържанието на избрания файл. Искате ли да продължите?"> +<!ENTITY filters.tab.label "Потребителски филтри"> +<!ENTITY backup.label "Направи нов архив"> +<!ENTITY find.label "&Намери"> +<!ENTITY subscription.moveDown.label "Премести надоло"> +<!ENTITY subscription.lastDownload.connectionError "Грешка, неуспешно изтегляне"> +<!ENTITY subscription.lastDownload.success "Успешно"> +<!ENTITY subscription.lastDownload.invalidData "Грешка, невалиден списък с филтри"> +<!ENTITY filter.paste.label "Постави"> +<!ENTITY subscription.disabledFilters.enable "Разреши забранените филтри"> +<!ENTITY lasthit.column "&Последни Посещения"> +<!ENTITY subscription.editTitle.label "Промени титла"> +<!ENTITY subscription.disabledFilters.warning "Някой филтри в този абонамент са забранени."> +<!ENTITY filter.column "&Филтър правило"> +<!ENTITY subscription.lastDownload.label "Последно изтеглен:"> +<!ENTITY viewList.label "Виж лист"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/firstRun.properties new file mode 100644 index 0000000..bd93321 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Сърфирайте инкогнито като забраните проследяването ви - също така прикрива вашите действия от рекламните компании, които биха проследили всеки ваш ход. +firstRun_toggle_off=Стоп +firstRun_feature_tracking=Забраняване на проследяването +firstRun_feature_malware=Блокиране на зловреден софтуер +firstRun_title=Adblock Plus е инсталиран +firstRun_toggle_on=Старт +firstRun_acceptableAdsExplanation=Бихме искали да насърчаваме уеб-сайтовете да използват обикновена, ненатрапчива реклама. Ето защо ние установихме <a>строги насоки</a>, където можете да видите кои са приемливите реклами, които се показват по подразбиране. Ако все още искате да блокирате всички реклами, можете да ги <a>забраните</a> в рамките на няколко секунди. +firstRun_contributor_credits=Сътрудници +firstRun_dataCorruptionWarning=Страницата продължава да се показва? <a>Щракнете тук!</a> +firstRun_acceptableAdsHeadline=Досадните реклами ще бъдат блокирани +firstRun_share=Споделете с приятелите си +firstRun_share_headline=<a>Помогнете ни</a> и направете мрежата по-добро място +firstRun_feature_social_description=Автоматично премахва от страниците в браузъра бутоните на социалните медии, като например тези на Facebook, които се появяват на някои уеб страници и проследяват вашето поведение. +firstRun_filterlistsReinitializedWarning=Изглежда, че има проблем, който е изтрил всички филтри и не сме в състояние да ги възстановим от архив. Поради тази причина се наложи да нулираме Вашите филтри и настройките за Приемливи реклами. Моля, проверете Вашите списъци с филтри, както и настройките за Приемливи реклами в <a>Adblock Плюс опции</a>. +firstRun_feature_malware_description=Направете своето сърфиране в Интернет по-безопасно чрез блокиране на зловредни домейни. +firstRun_features=Adblock Plus може и прави повече от блокиране на реклами +firstRun_donate=дарение +firstRun_donate_label=Подкрепете нашия проект +firstRun_feature_social=Премахвай бутоните на социалните мрежи +firstRun_legacySafariWarning=Вие използвате стара версия на Safari, която не се поддържа от Adblock Plus. В случая Adblock Plus може да не работи коректно, като е възможно да се наруши работата на потребителите в някои уеб сайтове. Ние силно препоръчваме да актуализирате Safari към версия 6 или по-висока (достъпна за Mac OS X 10.8 Mountain Lion и по-висока), или да използвате последната версия на Mozilla Firefox, Google Chrome или Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/global.properties new file mode 100644 index 0000000..ab8ac88 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Няма блокирани позиции на текущата страница +action3_tooltip=Щракнете за включване/изключване Adblock Плюс. +notification_antiadblock_title=Скриване на умишлените съобщения? +type_label_script=скрипт +filter_elemhide_nocriteria=Не е зададен критерий за разпознаване на елемент за скриване +blockingGroup_title=Правила за Блокиране +whitelisted_tooltip=Adblock Плюс е изключен на текущата страница. +type_label_stylesheet=интерфейс +blocked_count_tooltip=?1? от ?2? +type_label_font=шрифт +type_label_popup=изскачащ прозорец +filter_regexp_tooltip=Този филтър или е регулярен израз или е твърде кратък, за да се оптимизира. Твърде много от тези филтри могат да забавят сърфирането. +action0_tooltip=Щракнете за да извадите контекстното меню, средно щракване за включване/изключване. +whitelisted_page=Adblock Плюс беше изключен за текущата страница +remove_group_warning=Наистина ли искате да премахнете тази група? +action1_tooltip=Щракнете за да отворите/затворите блокираните параграфи, средно щракване за включване/изключване. +type_label_xmlhttprequest=XML заявка +active_tooltip=Adblock Плюс е включен, ?1? абонамента за филтриране и ?2? потребителски филтър(а) се използват. +type_label_document=документ +type_label_object_subrequest=обект под заявка +whitelistGroup_title=Изключение от правилата +disabled_tooltip=Adblock Плюс е изключен. +filter_elemhide_duplicate_id=Може да бъде задаван само един ID на елемент за скриване +type_label_object=обект +action2_tooltip=Кликнете за да отворите предпочитанията, средно щракване за включване/изключване. +type_label_subdocument=рамка +clearStats_warning=Това ще рестартира цялата статистика и ще забрани броенето на филтрите. Искате ли да продължите? +notification_antiadblock_message=Този сайт е известен с показване на умишлени послания от потребителите на Adblock Plus. Искате ли Adblock Plus, да скрие тези умишлени съобщения? +blocked_count_addendum=(също разрешени:?1?, скрити: ?2?) +subscription_invalid_location=Местоположението на списъка с филтри или не е валиден URL или не е валидно името на файла. +type_label_image=картинка +remove_subscription_warning=Наистина ли искате да премахнете този абонамент? +type_label_other=други +mobile_menu_enable=ABP: Включване +type_label_media=аудио/видео +mobile_menu_disable_site=ABP: Изключване на ?1? +elemhideGroup_title=Правила за скриване на елементи +mobile_menu_enable_site=ABP: Включване на ?1? +type_label_elemhide=скрит +newGroup_title=Нова група с филтри +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/overlay.dtd new file mode 100644 index 0000000..b1efd15 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Да"> +<!ENTITY notification.button.no "&Не"> +<!ENTITY sync.label "Син&хронизирай Настройките за Adblock Plus"> +<!ENTITY whitelist.site.label "Забрани на ?1?"> +<!ENTITY filters.label "&Филтър Настройки"> +<!ENTITY disable.label "Забрани навсякъде"> +<!ENTITY objecttab.title "Блокирай"> +<!ENTITY objecttab.tooltip "Щракни тук за да блокираш този обект със Adblock Плюс"> +<!ENTITY menuitem.label "Adblock Плюс &Настройки"> +<!ENTITY objecttabs.label "&Покажи разделите за Флаш и Java"> +<!ENTITY sendReport.label "&Докладване на проблем на тази страница"> +<!ENTITY whitelist.page.label "Забрани на тази страница само"> +<!ENTITY context.image.label "Adblock Плюс: Блокирани Картинки"> +<!ENTITY counthits.label "Бройте &филтър хитове"> +<!ENTITY opensidebar.label "Отвори &блокирани предмети"> +<!ENTITY notification.button.close "&Затвори"> +<!ENTITY contribute.label "Помогнете на Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Плюс"> +<!ENTITY context.frame.label "Adblock Плюс:Блокирани Фреймове"> +<!ENTITY blocked.tooltip "Блокирани предмети от тази страница:"> +<!ENTITY hideplaceholders.label "Скрий контейнери на блокираните еле&менти"> +<!ENTITY showinstatusbar.label "Покажи в лен&тата на състоянието"> +<!ENTITY sidebar.title "Блокирани предмети на тази страница"> +<!ENTITY options.label "&Настройки"> +<!ENTITY context.object.label "Adblock Плюс:Блокирани Обекти"> +<!ENTITY context.removeWhitelist.label "Adblock Плюс: Пусни за тази страница"> +<!ENTITY filters.tooltip "Най активни филтри:"> +<!ENTITY closesidebar.label "Затвори &блокирани предмети"> +<!ENTITY showintoolbar.label "Пок&ажи в лентата с инструменти"> +<!ENTITY status.tooltip "Статус:"> +<!ENTITY context.media.label "Adblock Плюс: Блокирани аудио/видео"> +<!ENTITY subscription.update.label "Обнови филтрите"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/sendReport.dtd new file mode 100644 index 0000000..080b8ba --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/sendReport.dtd @@ -0,0 +1,69 @@ +<!ENTITY screenshot.undo.label "&Отмяна"> +<!ENTITY issues.disabledgroups.description "Следните абонаменти за филтри/групи филтри са изключени. Все пак биха могли да имат ефект върху тази страница:"> +<!ENTITY showData.label "Показване на докладваните данни"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus блокира твърде &много"> +<!ENTITY issues.change.description "Вашата конфигурация е променена. Моля, презаредете страницата, за да тествате промените и да представите доклад, ако въпросът не бъде уреден от промените."> +<!ENTITY email.label "&Ел.Поща:"> +<!ENTITY issues.openPreferences.label "Отвори настройките за филтър"> +<!ENTITY sendPage.confirmation "Отчетът Ви е запазен. Можете да го намерите на следния адрес:"> +<!ENTITY copyLink.label "&Копиране линк на доклада"> +<!ENTITY issues.nofilters.description "Adblock Плюс не блокира нищо на текущата страница. Наблюдавания проблем най-вероятно + не е свързан с Adblock Плюс."> +<!ENTITY sendPage.knownIssue "Докладваният от Вас проблем вероятно вече е известен. За повече информация:"> +<!ENTITY typeSelector.other.description "Изберете тази настройка, ако подозирате, че проблемът е с Adblock Plus, а не с филтрите му."> +<!ENTITY issues.disabledgroups.enable.label "Включване на абонамент за филтър / група филтри"> +<!ENTITY typeWarning.override.label "Разбирам и все &пак искам да представя доклада въпреки всичко"> +<!ENTITY issues.disabled.enable.label "Включи Adblock Плюс"> +<!ENTITY update.fixed.description "Актуализациите на вашите абонаменти за филтри вероятно са решили въпроса който сте докладвали. Моля, презаредете страницата и опитайте отново, Докладвайте отново, ако проблемът все още го има."> +<!ENTITY anonymous.label "&Анонимно изпращане на информация"> +<!ENTITY reloadButton.label "Пре&зареждане на страницата"> +<!ENTITY recentReports.clear.label "Премах&ни всички доклади"> +<!ENTITY typeSelector.description "Този прозорец ще ви преведе през стъпките, необходими за подаване на доклад за Adblock + Плюс проблем. Първо, моля изберете вида на проблема, който сте срещнали на тази страница:"> +<!ENTITY screenshot.remove.label "П&ремахване на чувствителните данни"> +<!ENTITY issues.ownfilters.description "Някои от филтрите, приложени на тази страница са дефинирани от потребителя. Моля, деактивирайте филтрите, които може да причиняват проблема:"> +<!ENTITY update.inProgress.description "Adblock Plus трябва да актуализира вашите абонаменти за филтри и да се увери, че въпросът не е решен вече. Моля, изчакайте.."> +<!ENTITY sendPage.retry.label "Изпращане отново"> +<!ENTITY data.label "&Докладвани данни:"> +<!ENTITY recentReports.label "Вашите наскоро представените доклади"> +<!ENTITY typeWarning.description "Посочили сте, че искате да съобщите за общ проблем с Adblock Plus, а не проблем с филтрите. Моля, обърнете внимание, че тези въпроси са най-докладвани във [link]форума на Adblock Plus[/link]. Трябва да използвате докладчика на проблеми за допълване на съществуваща дискусия, тъй като никой няма да забележи вашия доклад, докато не предоставите връзка към него. Автоматично генерирана връзка ще бъде предоставена след предоставянето на доклада."> +<!ENTITY issues.disabled.description "Adblock Plus е изключен - няма да блокира нищо в неговото текущо състояние."> +<!ENTITY attachExtensions.label "Прилагане на списък с активните раз&ширения към доклада в случай че добавката причинява проблема"> +<!ENTITY issues.nosubscriptions.add.label "Добавяне на абонамент за филтър"> +<!ENTITY issues.disabledfilters.enable.label "Включи филтъра"> +<!ENTITY issues.override.label "Конфигурацията е &правилна, продължаване с доклада"> +<!ENTITY issues.nosubscriptions.description "Изглежда не сте абонирани за някои от предварително направени списъци с филтри, които автоматично премахват нежеланото съдържание от страниците."> +<!ENTITY typeSelector.falsePositive.description "Изберете тази настройка, ако на страницата липсва важно съдържание, показана е некоректно или не функционира правилно. Може да определите дали Adblock Плюс е причина за проблема, като временно го изключите."> +<!ENTITY typeSelector.other.label "Др&уг проблем"> +<!ENTITY emailComment.label "Ние ви препоръчваме да въведете валиден емайл адрес, така че да можем да се свържем, ако има въпроси относно вашия отчет. Това ще ни позволи да споделим вашия принос и да е с по висок приоритет."> +<!ENTITY issues.whitelist.remove.label "Повторно активиране на Adblock Plus на тази страница"> +<!ENTITY outdatedSubscriptions.description "Този филтър абонамент не е бил актуализиран най-малко две седмици. Моля, актуализирайте тези абонаменти, преди да изпратите доклад въпросът може да е решен вече и да не се налага да докладвате."> +<!ENTITY dataCollector.description "Моля, изчакайте няколко секунди, докато Adblock Plus събере необходимите данни."> +<!ENTITY sendButton.label "Из&пращане на доклада"> +<!ENTITY comment.label "&Коментар (по избор)"> +<!ENTITY sendPage.errorMessage "Опитът за изпращане на доклада се провали с код на грешка "?1?". Моля, уверете се, че сте свързани с интернет и повторете. Ако проблемът продължи, моля потърсете помощ в [link]форума на Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Покажи наскоро представените доклади"> +<!ENTITY commentPage.heading "Въвеждане на коментар"> +<!ENTITY update.start.label "Започни обновяването сега"> +<!ENTITY issues.disabledfilters.description "Следните филтри са изключени, но въпреки това може да окажат влияние на тази страница:"> +<!ENTITY screenshot.description "Същата страница може да изглежда различно за различни хора. Това може да ни помогне да разберем проблема, ако прикачите снимка на екрана към вашия доклад. Можете да премахнете частите, съдържащи чувствителна информация, както и зони, в които проблемът се забелязва. За да направите това натиснете съответния бутон и изберете частта от изображението с мишката."> +<!ENTITY screenshot.attach.label "Пр&икачване на изображение на страницата към доклада"> +<!ENTITY issues.whitelist.description "В момента Adblock Plus е изключен за страницата, която докладвате. Моля активирайте повторно + и презаредете страницата преди да изпратите доклада за да помогнете за откриване на проблема."> +<!ENTITY typeSelector.falseNegative.label "Adblock Плюс не блоки&ра реклама"> +<!ENTITY typeSelector.heading "Изберете тип на проблема"> +<!ENTITY anonymity.warning "Ние няма да бъдем в състояние да се върнем при теб и вероятно ще свалим приоритета на на доклада най доло."> +<!ENTITY wizard.title "Докладчик за проблеми"> +<!ENTITY issues.ownfilters.disable.label "Изключване на филтър"> +<!ENTITY commentPage.description "Полето по-долу ви позволява да въведете коментар да ни помогне да разберем проблема. Тази стъпка не е задължителна, но се препоръчва, ако проблемът не е очевиден. Можете също да прегледате данните от доклада, преди да е изпратен."> +<!ENTITY comment.lengthWarning "Дължината на коментара надвишава 1000 знака. Само първите 1000 знака ще бъдат изпратени."> +<!ENTITY typeSelector.falseNegative.description "Изберете тази настройка, ако се показва реклама въпреки, че Adblock Плюс е включен."> +<!ENTITY sendPage.waitMessage "Моля, изчакайте докато Adblock Plus представя Вашия отчет."> +<!ENTITY dataCollector.heading "Добре дошли в докладчика за проблеми"> +<!ENTITY screenshot.heading "Прикачете екранна снимка"> +<!ENTITY sendPage.heading "Изпрати доклада"> +<!ENTITY issues.subscriptionCount.description "Изглежда, че сте се абонирали за твърде много филтри. Тази настройка не се препоръчва, защото ще направи вероятността от проблеми много по-високи. Също така не може да приемем отчета за грешки защото не е ясно кой филтър прави проблеми и кой автор трябва да предприеме действия. Моля, премахнете всички и оставете само най важният филтър и пробвайте дали проблемът все още съществува."> +<!ENTITY screenshot.mark.label "&Маркиране на проблема"> +<!ENTITY privacyPolicy.label "Защита на личните данни"> +<!ENTITY issues.description "Adblock Plus откри проблеми с вашата конфигурация, които може да причиняват + този проблем или ще затрудни доклада за разследването."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/sidebar.dtd new file mode 100644 index 0000000..12441c0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Рамки на флаш продукти"> +<!ENTITY address.label "Адрес"> +<!ENTITY context.open.label "Отвори в нов под прозорец"> +<!ENTITY type.label "Тип"> +<!ENTITY tooltip.filterSource.label "Източник на филтъра"> +<!ENTITY noitems.label "Няма блокирани продукти"> +<!ENTITY filter.label "Филтър"> +<!ENTITY tooltip.size.label "Размер:"> +<!ENTITY reattach.label "Прикачи отново"> +<!ENTITY search.label "&Търси:"> +<!ENTITY docDomain.thirdParty "(трета страна)"> +<!ENTITY filterSource.label "Филтър източник"> +<!ENTITY tooltip.docDomain.label "Източник на документа:"> +<!ENTITY context.copy.label "Копирай адреса на продукта"> +<!ENTITY tooltip.type.label "Тип:"> +<!ENTITY context.disablefilter.label "Да изключа ли филтър ?1?"> +<!ENTITY context.copyFilter.label "Копирай филтърът"> +<!ENTITY context.block.label "Блокирай този продукт"> +<!ENTITY context.enablefilter.label "Повторно включване на филтъра ?1?"> +<!ENTITY detach.label "Отдели"> +<!ENTITY whitelisted.label "Разрешена странница"> +<!ENTITY context.disablefilteronsite.label "Да изключа ли този филтър за ?1?"> +<!ENTITY detached.title "Adblock Plus: Блокирани продукти (отделени)"> +<!ENTITY docDomain.firstParty "Основни"> +<!ENTITY tooltip.type.whitelisted "(разрешен)"> +<!ENTITY tooltip.filter.label "Филтър в сила:"> +<!ENTITY tooltip.filter.disabled "(изключен)"> +<!ENTITY context.editfilter.label "Редактиране на филтъра в сила:"> +<!ENTITY tooltip.type.blocked "(блокиран)"> +<!ENTITY size.label "Размер"> +<!ENTITY context.whitelist.label "Добави изключващо правило за продукта"> +<!ENTITY context.selectAll.label "Избери всички"> +<!ENTITY state.label "Състояние"> +<!ENTITY docDomain.label "Източник на документа"> +<!ENTITY tooltip.address.label "Адрес:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/subscriptionSelection.dtd new file mode 100644 index 0000000..df9a1b7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/bg/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "До&бави абонамент за филтър "?1?""> +<!ENTITY list.download.failed "Adblock Плюс не успя да изтегли списък с абонаменти."> +<!ENTITY list.download.retry "Опитайте отново"> +<!ENTITY title.label "&Заглавие на абонамента:"> +<!ENTITY list.download.website "Покажи сайтът"> +<!ENTITY supplementMessage "Този абонамент за филтърът е предназначен да се използва с подписка за филтри "?1?" Които не използвате все още."> +<!ENTITY viewList.label "Покажи филтрите"> +<!ENTITY visitHomepage.label "Посетете началната страница"> +<!ENTITY addSubscription.label "Добави абонамент"> +<!ENTITY dialog.title "Добавяне на абонамент за филтъра на Adblock Плюс"> +<!ENTITY location.label "&Местоположение на списъка с филтрите:"> +<!ENTITY fromWeb.description "Моля, потвърдете, че желаете да добавите този абонамент за този филтър. Може да промените заглавието или местоположението преди да го добавите."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/composer.dtd new file mode 100644 index 0000000..28e8a16 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "al &final de l'adreça"> +<!ENTITY domainRestriction.label "Restringeix al &domini:"> +<!ENTITY collapse.default.no.label "Utilitza per defecte (no)"> +<!ENTITY firstParty.label "N&omés originals"> +<!ENTITY preferences.label "Mo&stra els filtres existents..."> +<!ENTITY pattern.label "Cerca un patró"> +<!ENTITY thirdParty.label "Només de &tercers"> +<!ENTITY filter.label "Filtre &nou:"> +<!ENTITY collapse.label "Co&l·lapsa els bloquejats:"> +<!ENTITY match.warning "El patró inserit no concorda amb l'adreça a blocar/acceptar i quedarà sense efecte."> +<!ENTITY anchor.start.label "&al començament de l'adreça"> +<!ENTITY matchCase.label "Diferen&cia majúscules i minúscules"> +<!ENTITY custom.pattern.label "&Personalitza:"> +<!ENTITY unselectAllTypes.label "No seleccionis res"> +<!ENTITY type.whitelist.label "E&xcepció"> +<!ENTITY regexp.warning "El patró inserit serà interpretat com una expressió regular, la qual no podrà ser processada per Adblock Plus i podria comportar una ralentització de la vostra experiència de navegació. Si no volíeu emprar una expressió regular, afegiu el símbol (*) al final del patró."> +<!ENTITY dialog.title "Afegeix una regla de filtre de l'Adblock Plus"> +<!ENTITY basic.label "Visualització bàsica"> +<!ENTITY type.filter.label "Filtre de &bloqueig"> +<!ENTITY types.label "Aplicar als tipus:"> +<!ENTITY shortpattern.warning "El patró inserit és massa curt per optimitzar-lo. L'abús de patrons ralentitzaran la navegació. Es recomana una cadena de text més llarga per aquest filtre."> +<!ENTITY collapse.yes.label "Sí"> +<!ENTITY anchors.label "Accepta només un patró:"> +<!ENTITY collapse.default.yes.label "Utilitza per defecte (sí)"> +<!ENTITY domainRestriction.help "Indica un o més dominis separats pel símbol «|». El filtre només s'aplicarà a aquests dominis. El símbol «~» abans d'un nom de domini indica que el filtre no s'ha d'aplicar en aquest domini."> +<!ENTITY accept.label "Afegeix un filtre"> +<!ENTITY options.label "Opcions"> +<!ENTITY disabled.warning "L'Adblock Plus està actualment desactivat. Encara podeu afegir filtres però no s'aplicaran fins que no [link]activeu l'Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "al començament del &nom de domini"> +<!ENTITY collapse.no.label "No"> +<!ENTITY selectAllTypes.label "Selecciona-ho tot"> +<!ENTITY advanced.label "Visualització avançada"> +<!ENTITY pattern.explanation "El patró pot ser qualsevol part de l'adreça. L'asterisc (*) serveix de comodí. El filtre només serà aplicat a adreces que concordin amb el filtre."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/filters.dtd new file mode 100644 index 0000000..541ba03 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Tots els filtres personalitzats seràn substituits per els continguts del fitxer seleccionat. Vols seguir endavant?"> +<!ENTITY slow.column "Filtres d'aminorament (&w)"> +<!ENTITY enabled.column "Activat (&n)"> +<!ENTITY subscription.lastDownload.checksumMismatch "Error en la suma de verificació"> +<!ENTITY noFiltersInGroup.text "El grup seleccionat està buit."> +<!ENTITY subscription.actions.label "Accions"> +<!ENTITY filter.selectAll.label "Selecciona-ho tot"> +<!ENTITY backupButton.label "Fe&s una còpia de seguretat i restaura"> +<!ENTITY restore.minVersion.warning "Atenció : El fitxer ha estat creat amb una versió més nova d'AdBlock Plus. Hauries d'actualitzar a l'última versió de l'Adblock Plus abans de restaurar des d'aquest fitxer."> +<!ENTITY restore.error "Les dades del fitxer no s'han pogut processar, potser aquest no és un fitxer de còpia de Seguretat de l'AdBlock Plus ?"> +<!ENTITY sort.ascending.label "Ordre &A > Z"> +<!ENTITY sort.label "&Ordena per"> +<!ENTITY subscription.source.label "Llista de filtres"> +<!ENTITY hitcount.column "Encerts (&H)"> +<!ENTITY noFilters.text "Encara no teniu cap filtre personalitzat."> +<!ENTITY backup.custom.title "Només els filtres personalitzats"> +<!ENTITY subscription.external.label "Actualitzat per altre extensió"> +<!ENTITY subscription.delete.label "Suprimeix"> +<!ENTITY noGroupSelected.text "Necessites seleccionar un grup de filtres abans que aquests filtres puguin ser mostrats."> +<!ENTITY filter.cut.label "Retalla"> +<!ENTITY restore.default.label "Restaura de la còpia de seguretat del ?1?"> +<!ENTITY subscription.lastDownload.inProgress "S'està baixant..."> +<!ENTITY subscriptions.tab.label "Subscripció de filtres"> +<!ENTITY sort.descending.label "Ordre &Z > A"> +<!ENTITY filters.remove.warning "Segur que vols eliminar tots els filtres seleccionats ?"> +<!ENTITY filter.delete.label "Suprimeix"> +<!ENTITY addSubscriptionAdd.label "Afegeix"> +<!ENTITY viewMenu.label "Visualitza"> +<!ENTITY subscription.lastDownload.unknown "N/D"> +<!ENTITY addSubscriptionCancel.label "Cancel·la"> +<!ENTITY subscription.enabled.label "Activat"> +<!ENTITY noSubscriptions.text "Encara no heu afegit cap subscripció de filtre; l'AdBlock Plus no blocarà res sense filtres. Utilitzeu l'opció "Afegeix el filtre" per afegir-ne."> +<!ENTITY subscription.update.label "Actualitza els Filtres"> +<!ENTITY dialog.title "Preferències de filtre de l'AdBlock Plus"> +<!ENTITY addFilter.label "Afegeix un filt&re"> +<!ENTITY subscription.minVersion.warning "Aquesta subscripció de filtre requereix una versió recent. Heu d'actualitzar l'Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Error, no és una adreça vàlida"> +<!ENTITY backup.error "Hi ha hagut un error escribint els filtres al fitxer. Assegura't que el fitxer no s'hagi escrit protegint-lo o que l'estigui fent servir una altra aplicació."> +<!ENTITY filter.moveUp.label "Mou amunt"> +<!ENTITY addGroup.label "Afe&geix un grup de filtres"> +<!ENTITY filter.edit.label "Edita"> +<!ENTITY subscription.showHideFilters.label "Mostra/amaga els filtres"> +<!ENTITY acceptableAds2.label "Permet la publ&icitat no intrusiva"> +<!ENTITY addSubscriptionOther.label "Afegeix altre subscripció de filtre"> +<!ENTITY close.label "Tanca"> +<!ENTITY sort.none.label "&Desordenat"> +<!ENTITY filter.actions.label "Accions de filtre"> +<!ENTITY filter.copy.label "Copia"> +<!ENTITY filter.moveDown.label "Mou avall"> +<!ENTITY filter.resetHitCounts.label "Reinicia les estadístiques"> +<!ENTITY readMore.label "Més informació"> +<!ENTITY subscription.moveUp.label "Mou amunt"> +<!ENTITY addSubscription.label "A&fegeix el filtre"> +<!ENTITY subscription.homepage.label "Pàgina d'inici"> +<!ENTITY backup.complete.title "Tots els filtres i subscripcions"> +<!ENTITY restore.own.label "Restaura d'una còpia de seguretat propia"> +<!ENTITY restore.complete.warning "Totes les preferències de filtre seràn substituides amb els continguts del fitxer seleccionat. Vols seguir endavant?"> +<!ENTITY filters.tab.label "Filtres personalitzats"> +<!ENTITY backup.label "Crea una nova còpia de seguretat"> +<!ENTITY find.label "&Cerca"> +<!ENTITY subscription.moveDown.label "Mou avall"> +<!ENTITY subscription.lastDownload.connectionError "Error en la baixada"> +<!ENTITY subscription.lastDownload.success "Correcte"> +<!ENTITY subscription.lastDownload.invalidData "Error, no és una llista vàlida de filtres"> +<!ENTITY filter.paste.label "Enganxa"> +<!ENTITY subscription.disabledFilters.enable "Habilita els filtres"> +<!ENTITY lasthit.column "U&ltim encert"> +<!ENTITY subscription.editTitle.label "Edita el títol"> +<!ENTITY subscription.disabledFilters.warning "Alguns filtres d'aquesta subscripció no estan habilitats."> +<!ENTITY filter.column "Regla de &filtre"> +<!ENTITY subscription.lastDownload.label "Darrera baixada"> +<!ENTITY viewList.label "Mostra la llista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/firstRun.properties new file mode 100644 index 0000000..2eac957 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navegar de forma privada mitjançant la desactivació del seguiment – amagant el vostre rastre a les companyies de publicitat, que us seguirien encara més. +firstRun_toggle_off=DESACTIVAT +firstRun_feature_tracking=Desactivar el seguiment +firstRun_feature_malware=Bloqueig de programari maliciós +firstRun_title=S'ha instal·lat l'AdBlock Plus +firstRun_toggle_on=ACTIVAT +firstRun_acceptableAdsExplanation=Ens agradaria encoratjar els llocs web a utlitzar d'ara en endavant, publicitat no intrusiva. És per això que hem establert uns <a>patrons estrictes</a> per identificar els anuncis acceptables, els quals es mostren a sota de les preferències per defecte. Si encara voleu bloquejar tots els anuncis podeu <a>desactivar</a> això en pocs segons. +firstRun_contributor_credits=Crèdits de contribució +firstRun_dataCorruptionWarning=Es segueix mostrant aquesta pàgina? <a>Cliqueu aquí!</a> +firstRun_acceptableAdsHeadline=Els anuncis molestos ara es bloquejaran +firstRun_share=Digueu-ho a les vostres amistats +firstRun_share_headline=<a>Dóneu-nos un cop de mà</a> al fer la xarxa un lloc millor +firstRun_feature_social_description=Eliminar automàticament de la vostra experència de navegació els botons socials, com el m'agrada de Facebook, que apareixen a les pàgines web i segueixen el vostre comportament. +firstRun_filterlistsReinitializedWarning=Sembla que un problema ha causat que tots els filtres es suprimeixin, però hem pogut restaurar una còpia de seguretat. Durant aquest procés, també s'ha restaurat els filtres i la configuració d'anuncis acceptable. Verifiqueu que la configuració actual és la desitjada, mitjançant les <a>«Preferències del filtre»</a> de l'Adblock Plus. +firstRun_feature_malware_description=Fer la vostra navegació més segura bloquejant els dominis de malware coneguts. +firstRun_features=Adblock Plus pot fer molt més que bloquejar anuncis +firstRun_donate=Feu un donatiu +firstRun_donate_label=Recolzeu el nostre projecte +firstRun_feature_social=Eliminar els botons de xarxes socials +firstRun_legacySafariWarning=Estàs usant una versió antiga de Safari que no es troba suportada per Adblock Plus. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/global.properties new file mode 100644 index 0000000..1145e04 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=La pàgina actual no conté elements bloquejables +action3_tooltip=Clica per activar/desactivar Adblock Plus +notification_antiadblock_title=Amagar missatges dirigits? +type_label_script=script +filter_elemhide_nocriteria=Cap criteri especificat per reconeixes l'element a amagar +blockingGroup_title=Regles de blocatge d'anuncis +whitelisted_tooltip=Adblock Plus està actiu però desactivat en la pàgina actual +type_label_stylesheet=llista d'estils +blocked_count_tooltip=?1? de ?2? +type_label_font=Tipus de lletra +type_label_popup=finestra emergent +filter_regexp_tooltip=El filtre és una expressió regular o és massa curt per ser optimitzat. Massa d'aquests filtres poden alentir la vostra navegació. +action0_tooltip=Clica per activar el menu contextual, clica amb el botó del mig per activar/desactivar. +whitelisted_page=Adblock Plus ha estat desactivat per la pàgina actual +remove_group_warning=Segur que vols eliminar aquest grup ? +action1_tooltip=Clica per obrir/tancar els elements bloquejables, clica amb el botó del mig per activar/desactivar. +type_label_xmlhttprequest=Petició XML +active_tooltip=Adblock Plus està habilitat, ?1? subscripció (ns) de filtre i ?2? filtre personalitzats(s) en ús. +type_label_document=document +type_label_object_subrequest=Subpetició d'objecte +whitelistGroup_title=Regles d'excepció +disabled_tooltip=Adblock Plus està desactivat +filter_elemhide_duplicate_id=Només un identificador de l'element pot ser especificat +type_label_object=objecte +action2_tooltip=Clica per obrir les preferències, clica amb el botó del mig per activar/desactivar. +type_label_subdocument=marc +clearStats_warning=Això reiniciarà totes les estadístiques d'ús del filtre.Vols procedir? +notification_antiadblock_message=Aquesta web ha sigut coneguda per mostrar missatges dirigits a usuaris de Adblock Plus. Vols que Adblock Plus amague els missatges dirigits? +blocked_count_addendum=(també a la llista blanca: ?1?, amagats: ?2?) +subscription_invalid_location=La llista de filtres no és una URL vàlida ni un nom de fitxer vàlid. +type_label_image=imatge +remove_subscription_warning=Realment desitges eliminar aquesta subscripció? +type_label_other=Un altre +mobile_menu_enable=ABP : Activa +type_label_media=àudio/vídeo +mobile_menu_disable_site=ABP : Desactiva a ?1? +elemhideGroup_title=Regles d'amagar elements +mobile_menu_enable_site=ABP : Activa a ?1? +type_label_elemhide=amagat +newGroup_title=Nou grup de filtres +default_dialog_title=AdBlock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/overlay.dtd new file mode 100644 index 0000000..fc91e9e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Si"> +<!ENTITY notification.button.no "&No"> +<!ENTITY sync.label "&Sincronitza la configuració de l'AdBlock Plus"> +<!ENTITY whitelist.site.label "Inhabilita l'Adblock Plus a ?1?"> +<!ENTITY filters.label "&Preferències del filtre"> +<!ENTITY disable.label "Inhabilita a tots els llocs"> +<!ENTITY objecttab.title "Bloca"> +<!ENTITY objecttab.tooltip "Feu clic aquí per blocar aquest objecte amb l'Adblock Plus"> +<!ENTITY menuitem.label "Preferències de l'Ad&block Plus"> +<!ENTITY objecttabs.label "Mostra les &pestanyes a Flash i Java"> +<!ENTITY sendReport.label "&Informa sobre la pàgina"> +<!ENTITY whitelist.page.label "Inhabilita només en aquesta pàgina"> +<!ENTITY context.image.label "Adblock Plus: bloca la imatge"> +<!ENTITY counthits.label "Compta els cops que &funciona el filtre"> +<!ENTITY opensidebar.label "Obre &elements blocables"> +<!ENTITY notification.button.close "&Tancar"> +<!ENTITY contribute.label "Contribueix a l'Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: bloca el marc"> +<!ENTITY blocked.tooltip "Elements bloquejats en aquesta pàgina:"> +<!ENTITY hideplaceholders.label "Amaga &les localitzacions dels elements blocats"> +<!ENTITY showinstatusbar.label "Mostra a la barra d'&estat"> +<!ENTITY sidebar.title "Elements blocables a la pàgina actual"> +<!ENTITY options.label "&Opcions"> +<!ENTITY context.object.label "Adblock Plus: bloca l'objecte"> +<!ENTITY context.removeWhitelist.label "Adblock Plus:Rehabilita aquesta pàgina"> +<!ENTITY filters.tooltip "Filtres més actius:"> +<!ENTITY closesidebar.label "Tanca els elements &blocables"> +<!ENTITY showintoolbar.label "Mostra a la &barra d'eines"> +<!ENTITY status.tooltip "Estat:"> +<!ENTITY context.media.label "Adblock Plus: Bloqueja àudio/vídeo"> +<!ENTITY subscription.update.label "Actualitza els Filtres"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/sendReport.dtd new file mode 100644 index 0000000..049bb72 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Des&fés"> +<!ENTITY issues.disabledgroups.description "Els següents filtres/grups de filtres als quals estàs subscrits estan deshabilitats, tot i així podrien tenir algun efecte en aquesta pàgina:"> +<!ENTITY showData.label "Mostra les dades de l'informe"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus està bloquejant &massa"> +<!ENTITY issues.change.description "Si us plau, torna a carregar la pàgina per provar els canvis i envia un informe si el problema no ha estat resolt per les alteracions."> +<!ENTITY email.label "&Email:"> +<!ENTITY issues.openPreferences.label "Obre les preferències del filtre"> +<!ENTITY sendPage.confirmation "El teu informe ha estat guardat. Pots accedir a la següent adreça:"> +<!ENTITY copyLink.label "&Copia enllaç de l'informe"> +<!ENTITY issues.nofilters.description "L'Adblock Plus no està filtrant res a la pàgina actual. Segurament el problema no està relacionat amb l'Adblock Plus."> +<!ENTITY sendPage.knownIssue "El problema del que informes probablement ja es coneix. Més informació:"> +<!ENTITY typeSelector.other.description "Selecciona aquesta opció si creieu que hi ha un error amb l'Adblock Plus que no sigui amb els filtres."> +<!ENTITY issues.disabledgroups.enable.label "Activa filtre de subscripció / filtre de grup"> +<!ENTITY typeWarning.override.label "Ho entenc i vull pre&sentar l'informe de totes maneres"> +<!ENTITY issues.disabled.enable.label "Habilita l'Adblock Plus"> +<!ENTITY update.fixed.description "L'error s'ha solucionat actualitzant els filtres existents. Torneu a carregar la pàgina i verifiqueu novament. Si el problema persisteix, envieu altre avís."> +<!ENTITY anonymous.label "Envi&ament de forma anònima"> +<!ENTITY reloadButton.label "Ac&tualitza pàgina"> +<!ENTITY recentReports.clear.label "&Suprimeix tots els informes"> +<!ENTITY typeSelector.description "Aquest assistent us mostrarà com enviar un Avís d'error de l'Adblock Plus. Primer seleccioneu el tipus d'error que heu trobat:"> +<!ENTITY screenshot.remove.label "Sup&rimeix dades privades"> +<!ENTITY issues.ownfilters.description "Els filtres aplicats en aquesta pàgina poden ser definits per l'usuari/a. Inhabiliteu els filtres que poden causar el problema:"> +<!ENTITY update.inProgress.description "L'Adblock Plus ha d'actualitzar les subscripcions dels filtres per verificar si es pot resoldre d'aquesta manera. Espereu..."> +<!ENTITY sendPage.retry.label "Envia de nou"> +<!ENTITY data.label "Informe &de dades:"> +<!ENTITY recentReports.label "Informes que heu enviat"> +<!ENTITY typeWarning.description "Has indicat que desitges informar d'algun problema general amb Adblock Plus més que d'un problema amb els filtres. Tingues en compte que aquests informes són els més complets al [link]fòrum d'Adblock Plus[/link]. Només hauries d'usar l'avisador a menys que vulguis completar una discussió existent, ja que ningú es donarà compte del teu informe si no se'ls proporciona l'enllaç al mateix. L'enllaç generat automàticament es concedirà després de la presentació de l'informe."> +<!ENTITY issues.disabled.description "S'ha inhabilitat l'Adblock Plus i no filtrarà la publicitat no desitjada."> +<!ENTITY attachExtensions.label "Adjunta una llista d'e&xtensions actives per a l'informe en cas de que el conflicte amb les extensions sigui la causa del problema"> +<!ENTITY issues.nosubscriptions.add.label "Afegeix la subscripció a un filtre"> +<!ENTITY issues.disabledfilters.enable.label "Activa el filtre"> +<!ENTITY issues.override.label "La &configuració és correcta, continua amb l'informe"> +<!ENTITY issues.nosubscriptions.description "No us heu subscrit a cap llista de filtres prefabricats per filtrar automàticament el contingut no desitjat de les pàgines web."> +<!ENTITY typeSelector.falsePositive.description "Seleccioneu aquesta opció si a la pàgina manca contingut important, es mostra de forma incorrecta funciona deficientment. Podeu determinar si l'Adblock Plus és la causa del problema inhabilitant-lo temporalment."> +<!ENTITY typeSelector.other.label "Altr&es errors"> +<!ENTITY emailComment.label "Recomanem donar una adreça de correu electrònic vàlida per tal de contactar amb vostè si sorgeixen algunes preguntes sobre el vostre informe. També ens permetrà reconéixer les vostres contribucions i prioritzar-les."> +<!ENTITY issues.whitelist.remove.label "Torna a habilitar l'Adblock Plus en aquesta pàgina"> +<!ENTITY outdatedSubscriptions.description "Aquestes subscripcions a filtres no s'han actualitzat en un mínim de dues setmanes i estan obsoletes. Actualitzeu-les abans d'informar d'un error, atès que ja podria estar solucionat."> +<!ENTITY dataCollector.description "L'Adblock Plus està analitzant les dades. Espereu..."> +<!ENTITY sendButton.label "E&nvia informe"> +<!ENTITY comment.label "&Comentari (opcional):"> +<!ENTITY sendPage.errorMessage "Ha fallat un intent d'enviar l'informe d'error amb codi d'error "?1?". Assegura't que estàs connectat/da a Internet i torna a intentar-ho. Si el problema persisteix, si us plau demana assistència al [link]fòrum d'Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Mostra els informes enviats recentment"> +<!ENTITY commentPage.heading "Escriu un comentari"> +<!ENTITY update.start.label "Actualitza ara"> +<!ENTITY issues.disabledfilters.description "Els següents filtres estan desactivats, però, podrien tenir un efecte en aquesta pàgina:"> +<!ENTITY screenshot.description "La mateixa pàgina pot ser diferent per a diferents persones. Pot ajudar-nos a entendre el problema si s'adjunta una captura de pantalla per a l'informe. Pots treure seccions que contenen informació confidencial, així com remarcar les zones on el problema és evident. Per a això fes clic al botó corresponent i selecciona una secció de la imatge amb el ratolí."> +<!ENTITY screenshot.attach.label "Adjun&ta una imatge de la pàgina amb l'informe"> +<!ENTITY issues.whitelist.description "L'Adblock Plus està desactivat per aquesta pàgina. Habiliteu-lo i verifiqueu si el problema continua abans d'enviar un informe d'error per aquest motiu."> +<!ENTITY typeSelector.falseNegative.label "L'&Adblock Plus no bloca un anunci"> +<!ENTITY typeSelector.heading "Seleccioneu el tipus d'incidència"> +<!ENTITY anonymity.warning "No podrem contestar-lo i segurament, no el prioritzarem."> +<!ENTITY wizard.title "Avisador d'errors"> +<!ENTITY issues.ownfilters.disable.label "inhabilita el filtre"> +<!ENTITY commentPage.description "El camp de text a continuació et permet introduir un comentari que ens ajudi a comprendre el problema.Aquest pas és opcional però es recomana si el problema no és obvi.També pots revisar les dades de l'informe abans d'enviar."> +<!ENTITY comment.lengthWarning "La longitud del teu comentari supera els 1000 caràcters. Només s'enviaran els primers 1000 caràcters."> +<!ENTITY typeSelector.falseNegative.description "Seleccioneu aquesta opció si un anunci es mostra tot i que l'Adblock Plus està habilitat."> +<!ENTITY sendPage.waitMessage "Espera mentre Adblock Plus fa l'enviament del teu informe."> +<!ENTITY dataCollector.heading "Us donem la benvinguda a l'Avisador d'errors"> +<!ENTITY screenshot.heading "Adjunta Captura de pantalla"> +<!ENTITY sendPage.heading "Envia informe"> +<!ENTITY issues.subscriptionCount.description "Ja us heu subscrit a molts filtres. Aquesta configuració no és recomanable perquè podria augmentar el nombre d'errors. L'informe no serà enviat fins no verifiqueu que l'error és degut a un filtre. Inhabiliteu totes les subscripcions i comproveu afegint una subscripció alhora que l'error realment pertany a un filtre determinat."> +<!ENTITY screenshot.mark.label "&Marca el problema"> +<!ENTITY privacyPolicy.label "Política de Privadesa"> +<!ENTITY issues.description "L'Adblock Plus ha detectat problemes amb la configuració i podria ser la causa del problema o d'una anàlisi errònia."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/sidebar.dtd new file mode 100644 index 0000000..e68a983 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Pampallugueja les vores de l'element"> +<!ENTITY address.label "Adreça"> +<!ENTITY context.open.label "Obre en una pestanya nova"> +<!ENTITY type.label "Tipus"> +<!ENTITY tooltip.filterSource.label "Filtre d'origen:"> +<!ENTITY noitems.label "Elements no bloquejables"> +<!ENTITY filter.label "Filtre"> +<!ENTITY tooltip.size.label "Mida:"> +<!ENTITY reattach.label "Reenganxa"> +<!ENTITY search.label "&Cerca:"> +<!ENTITY docDomain.thirdParty "(tercers)"> +<!ENTITY filterSource.label "Filtre d'origen"> +<!ENTITY tooltip.docDomain.label "Font del document:"> +<!ENTITY context.copy.label "Copia l'adreça de l'element"> +<!ENTITY tooltip.type.label "Tipus:"> +<!ENTITY context.disablefilter.label "Inhabilita el filtre ?1?"> +<!ENTITY context.copyFilter.label "Copia el filtre"> +<!ENTITY context.block.label "Bloqueja aquest element"> +<!ENTITY context.enablefilter.label "Reactiva el filtre ?1?"> +<!ENTITY detach.label "Separa"> +<!ENTITY whitelisted.label "Pàgina a la llista de permesos"> +<!ENTITY context.disablefilteronsite.label "Inhabilita aquest filtre a ?1?"> +<!ENTITY detached.title "AdBlock Plus: Elements Blocables (Separat)"> +<!ENTITY docDomain.firstParty "(primers)"> +<!ENTITY tooltip.type.whitelisted "(a la llista de permesos)"> +<!ENTITY tooltip.filter.label "Filtre actiu"> +<!ENTITY tooltip.filter.disabled "(inhabilitat)"> +<!ENTITY context.editfilter.label "Edita el filtre actiu"> +<!ENTITY tooltip.type.blocked "(bloquejat)"> +<!ENTITY size.label "Mida"> +<!ENTITY context.whitelist.label "Afegeix una regla d'excepció per a l'element"> +<!ENTITY context.selectAll.label "Selecciona-ho tot"> +<!ENTITY state.label "Estat"> +<!ENTITY docDomain.label "Font del document"> +<!ENTITY tooltip.address.label "Adreça:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/subscriptionSelection.dtd new file mode 100644 index 0000000..a3b3ef3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ca/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Afegeix la &subscripció de filtre «?1?»"> +<!ENTITY list.download.failed "L'Adblock Plus ha fallat en trobar la llista de subscripcions."> +<!ENTITY list.download.retry "Torna-ho a provar"> +<!ENTITY title.label "&Títol de la subscripció:"> +<!ENTITY list.download.website "Vés a la pàgina web"> +<!ENTITY supplementMessage "Aquesta subscripció de filtre s'ha d'utilitzar amb «?1?» que encara no feu servir."> +<!ENTITY viewList.label "Mostra els filtres"> +<!ENTITY visitHomepage.label "Vés a la pàgina web"> +<!ENTITY addSubscription.label "Afegeix una subscripció"> +<!ENTITY dialog.title "Afegeix la subscripció de filtre per a Adblock Plus"> +<!ENTITY location.label "&Filtra la localització de la llista:"> +<!ENTITY fromWeb.description "Confirmeu que voleu afegir aquesta subscripció de filtre. Podeu canviar el títol de la subscripció o la localització abans d'afegir-la."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/composer.dtd new file mode 100644 index 0000000..a01b809 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "na &konci adresy"> +<!ENTITY domainRestriction.label "Omezit na &doménu:"> +<!ENTITY collapse.default.no.label "Použít jako výchozí (ne)"> +<!ENTITY firstParty.label "Pouze vl&astní filtry"> +<!ENTITY preferences.label "Zobrazit &existující filtry..."> +<!ENTITY pattern.label "Vyhledat vzor"> +<!ENTITY thirdParty.label "Pouze fil&try třetích stran"> +<!ENTITY filter.label "Nový &filtr:"> +<!ENTITY collapse.label "M&inimalizovat blokované objekty:"> +<!ENTITY match.warning "Vzor, který jste zadali, už neodpovídá adrese, kterou chcete zablokovat/povolit a nebude na ni tedy mít žádný účinek."> +<!ENTITY anchor.start.label "na &začátku adresy"> +<!ENTITY matchCase.label "&Rozlišovat velikost písmen"> +<!ENTITY custom.pattern.label "Vlast&ní:"> +<!ENTITY unselectAllTypes.label "Zrušit výběr"> +<!ENTITY type.whitelist.label "&Výjimka"> +<!ENTITY regexp.warning "Vzor, který jste zadali, bude interpretován jako regulární výraz. Mnoho regulárních výrazů může zpomalit vaše prohlížení stránek. Pokud jste nechěli použít regulární výraz, přidejte znak * na konec vzoru."> +<!ENTITY dialog.title "Přidat pravidlo filtru Adblock Plus"> +<!ENTITY basic.label "Základní zobrazení"> +<!ENTITY type.filter.label "&Blokující filtr"> +<!ENTITY types.label "Použít na typy:"> +<!ENTITY shortpattern.warning "Vzor, který jste zadali, je příliš krátký, aby mohl být optimalizován. Mnoho takových výrazů může zpomalit vaše prohlížení stránek. Je doporučeno, abyste pro tento filtr zadali delší řetězec."> +<!ENTITY collapse.yes.label "Ano"> +<!ENTITY anchors.label "Povolit vzor pouze:"> +<!ENTITY collapse.default.yes.label "Použít jako výchozí (ano)"> +<!ENTITY domainRestriction.help "Zadejte jednu nebo více domén oddělených znakem "|", filtr bude poté použit pouze na těchto doménách. Znak "~" před názvem domény zajistí, že filtr nebude na této doméně použit."> +<!ENTITY accept.label "Přidat filtr"> +<!ENTITY options.label "Možnosti"> +<!ENTITY disabled.warning "Adblock Plus je momentálně zakázán. I tak můžete přidávat filtry, ale nebudou použity, dokud [link]nepovolíte Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "na &začátku názvu domény"> +<!ENTITY collapse.no.label "Ne"> +<!ENTITY selectAllTypes.label "Vybrat vše"> +<!ENTITY advanced.label "Pokročilé zobrazení"> +<!ENTITY pattern.explanation "Vzor může být jakákoli část adresy, znak * funguje jako jakýkoliv text. Filtr bude aplikován pouze na adresy odpovídající vzoru."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/filters.dtd new file mode 100644 index 0000000..d91d351 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Všechny vaše vlastní filtry budou nahrazeny obsahem vybraného souboru. Chcete pokračovat?"> +<!ENTITY slow.column "Po&malé filtry"> +<!ENTITY enabled.column "Po&volené"> +<!ENTITY subscription.lastDownload.checksumMismatch "Chyba, neodpovídá kontrolní součet"> +<!ENTITY noFiltersInGroup.text "Vybraná skupina je prázdná"> +<!ENTITY subscription.actions.label "Akce"> +<!ENTITY filter.selectAll.label "Vybrat vše"> +<!ENTITY backupButton.label "Zál&ohování a obnova"> +<!ENTITY restore.minVersion.warning "Varování: Soubor byl vytvořen novější verzí Adblocku Plus. Měli byste jej aktualizovat na nějnovější verzi, než budete pokračovat."> +<!ENTITY restore.error "Data ze souboru nelze zpracovat, možná nejde o zálohu filtrů Adblocku Plus?"> +<!ENTITY sort.ascending.label "Vzestupně (&A-Z)"> +<!ENTITY sort.label "&Seřadit podle"> +<!ENTITY subscription.source.label "Seznam filtrů"> +<!ENTITY hitcount.column "Zása&hy"> +<!ENTITY noFilters.text "Nemáte žádné vlastnoručně vytvořené filtry."> +<!ENTITY backup.custom.title "Pouze vlastní filtry"> +<!ENTITY subscription.external.label "Aktualizováno jiným rozšířením"> +<!ENTITY subscription.delete.label "Smazat"> +<!ENTITY noGroupSelected.text "Musíte vybrat skupinu filtrů, aby byly zobrazeny nějaké filtry."> +<!ENTITY filter.cut.label "Vyjmout"> +<!ENTITY restore.default.label "Obnovit ze zálohy z ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Stahuji..."> +<!ENTITY subscriptions.tab.label "Odebírané sady cizích filtrů"> +<!ENTITY sort.descending.label "Sestupně (&Z-A)"> +<!ENTITY filters.remove.warning "Opravdu chcete odebrat všechny vybrané filtry?"> +<!ENTITY filter.delete.label "Smazat"> +<!ENTITY addSubscriptionAdd.label "Přidat"> +<!ENTITY viewMenu.label "Zobrazit"> +<!ENTITY subscription.lastDownload.unknown "neznámo"> +<!ENTITY addSubscriptionCancel.label "Zrušit"> +<!ENTITY subscription.enabled.label "Povoleno"> +<!ENTITY noSubscriptions.text "Zatím jste nezačali odebírat žádnou sadu cizích filtrů. Adblock Plus nebude blokovat nic bez nastavených filtrů, použijte prosím "Přidat cizí filtry", abyste nějaké přidali."> +<!ENTITY subscription.update.label "Aktualizovat filtry"> +<!ENTITY dialog.title "Předvolby filtrů Adblocku Plus"> +<!ENTITY addFilter.label "&Přidat filtr"> +<!ENTITY subscription.minVersion.warning "Tato cizí sada filtrů vyžaduje novější verzi Adblocku Plus, měli byste jej aktualizovat na nejnovější verzi."> +<!ENTITY subscription.lastDownload.invalidURL "Chyba, toto je nekorektní adresa."> +<!ENTITY backup.error "Došlo k chybě při zápisu filtrů do souboru. Ujistěte se prosím, že soubor není chráněn proti zápisu nebo používán jinou aplikací."> +<!ENTITY filter.moveUp.label "Posunout nahoru"> +<!ENTITY addGroup.label "Přidat &skupinu filtrů"> +<!ENTITY filter.edit.label "Upravit"> +<!ENTITY subscription.showHideFilters.label "Zobrazit/skrýt filtry"> +<!ENTITY acceptableAds2.label "Povolit &některé nerušivé reklamy"> +<!ENTITY addSubscriptionOther.label "Přidat další sadu cizích filtrů"> +<!ENTITY close.label "Zavřít"> +<!ENTITY sort.none.label "&Neřadit"> +<!ENTITY filter.actions.label "Akce filtrů"> +<!ENTITY filter.copy.label "Kopírovat"> +<!ENTITY filter.moveDown.label "Posunout dolů"> +<!ENTITY filter.resetHitCounts.label "Vynulovat statistiku zásahů"> +<!ENTITY readMore.label "Zjistit více"> +<!ENTITY subscription.moveUp.label "Posunout nahoru"> +<!ENTITY addSubscription.label "Přidat cizí &filtry"> +<!ENTITY subscription.homepage.label "Domovská stránka"> +<!ENTITY backup.complete.title "Všechny filtry a sady cizích filtrů"> +<!ENTITY restore.own.label "Obnovit z vlastní zálohy"> +<!ENTITY restore.complete.warning "Všechny vaše předvolby budou nahrazeny obsahem vybraného souboru. Chcete pokračovat?"> +<!ENTITY filters.tab.label "Vlastní filtry"> +<!ENTITY backup.label "Vytvořit novou zálohu"> +<!ENTITY find.label "Na&jít"> +<!ENTITY subscription.moveDown.label "Posunout dolů"> +<!ENTITY subscription.lastDownload.connectionError "Chyba, nepodařilo se stáhnout soubor"> +<!ENTITY subscription.lastDownload.success "Úspěch"> +<!ENTITY subscription.lastDownload.invalidData "Chyba, stažený soubor není souborem filtrů Adblock Plus"> +<!ENTITY filter.paste.label "Vložit"> +<!ENTITY subscription.disabledFilters.enable "Povolit zakázané filtry"> +<!ENTITY lasthit.column "Pos&lední zásah"> +<!ENTITY subscription.editTitle.label "Upravit název"> +<!ENTITY subscription.disabledFilters.warning "Některé filtry v této sadě jsou zakázány."> +<!ENTITY filter.column "&Pravidlo filtru"> +<!ENTITY subscription.lastDownload.label "Naposledy staženo:"> +<!ENTITY viewList.label "Zobrazit seznam"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/firstRun.properties new file mode 100644 index 0000000..d71aea6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Zakázáním sledování si zachovejte soukromí při prohlížení - zakryjte své stopy před reklamními společnostmi, které by jinak sladovali každičký Váš pohyb. +firstRun_toggle_off=VYPNUTO +firstRun_feature_tracking=Zakázat sledování +firstRun_feature_malware=Blokování malware +firstRun_title=Adblock Plus byl nainstalován +firstRun_toggle_on=ZAPNUTO +firstRun_acceptableAdsExplanation=Rádi bychom podpořili webové stránky v používání jasné neobtěžující reklamy. Proto jsme zavedli <a>přísná pravidla</a> k určení přijatelných reklam, které se pak ve výchozím nastavení zobrazují . Pokud přesto chcete blokovat veškerou reklamu, můžete toto během chvilky <a>zakázat</a>. +firstRun_contributor_credits=Zásluhy přispěvatelů +firstRun_dataCorruptionWarning=Neustále se Vám tato stránka znovu zobrazuje? <a>Klikněte zde!</a> +firstRun_acceptableAdsHeadline=Otravné reklamy budou nyní blokovány +firstRun_share=Řekněte svým přátelům +firstRun_share_headline=<a>Pomožte nám</a> učinit web lepším +firstRun_feature_social_description=Automaticky zbavte své surfování od tlačítek sociálních médií, jako například Facebook "To se mi líbí", která se objevují na webových stránkách a sledují Vaše chování. +firstRun_filterlistsReinitializedWarning=Zdá se, že nastal problém, který způsobil smazání všech filtrů a nebyli jsme schopni je obnovit ze zálohy. Museli jsme tudíž Vaše filtry a nastavení Přijatelných reklam resetovat. Prosím zkontrolujte si své nastavení seznamů filtrů a Přijatelných reklam v <a>předvolbách Adblocku Plus</a>. +firstRun_feature_malware_description=Blokováním známých malwarových domén učiňte Vaše prohlížení webu bezpečnějším. +firstRun_features=Adblock Plus toho umí více než jen blokovat reklamy +firstRun_donate=přispějte +firstRun_donate_label=Podpořte náš projekt +firstRun_feature_social=Odstranit tlačítka sociálních médií +firstRun_legacySafariWarning=Používáte starou verzi Safari, která není podporovaná Adblockem Plus. Nemusí to tak správně fungovat nebo to může zhoršit použitelnost na některých webových stránkách. Důrazně doporučujeme buď aktualizovat na Safari 6.1.1 či vyšší (v OS X 10.8 Mountain Lion), nebo Safari 7.0.1 či vyšší (v OS X 10.9 Mavericks), nebo používat nejnovější verzi Mozilla Firefoxu, Google Chrome či Opery. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/global.properties new file mode 100644 index 0000000..18ffe9f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Na této stránce nebyly nalezeny prvky k zablokování +action3_tooltip=Klepnutím povolit/zakázat Adblock Plus +notification_antiadblock_title=Skrýt cílená hlášení? +type_label_script=Skript +filter_elemhide_nocriteria=Nebyla uvedena žádná kritérie pro rozpoznání elementu, který má být skryt +blockingGroup_title=Pravidla blokování reklam +whitelisted_tooltip=Adblock Plus je aktivní, ale pro aktuální stránku byl zakázán. +type_label_stylesheet=Šablona kaskádových stylů +blocked_count_tooltip=?1? z ?2? +type_label_font=Písmo +type_label_popup=vyskakovací okno +filter_regexp_tooltip=Tento filtr je buď regulární výraz nebo je příliš krátký, aby mohl být optimalizován. Příliš mnoho takových filtrů může zpomalit vaše prohlížení stránek. +action0_tooltip=Levé tlačítko: Otevřít místní nabídku +whitelisted_page=Adblock Plus byl pro aktuální stránku zakázán +remove_group_warning=Chcete opravdu smazat tuhle skupniu? +action1_tooltip=Levé tlačítko: Otevřít blokovatelné prvky +type_label_xmlhttprequest=XML požadavek +active_tooltip=Adblock Plus je aktivní, cizí sady filtrů: ?1?, vlastní filtry: ?2? +type_label_document=Dokument +type_label_object_subrequest=Subpožadavek objektu +whitelistGroup_title=Výjimky z pravidel +disabled_tooltip=Adblock Plus je zakázán +filter_elemhide_duplicate_id=Může být uvedeno pouze jedno ID elementu, který má být skryt +type_label_object=Objekt +action2_tooltip=Levé tlačítko: Otevřít předvolby +type_label_subdocument=Rámec +clearStats_warning=Toto smaže všechny statistiky a vypne počítání zásahů filtrů. Chcete pokračovat? +notification_antiadblock_message=O této stránce se ví, že zobrazuje hlášení cílená na uživatele Adblocku Plus. Chcete, aby Adblock Plus skryl tyto cílené zprávy? +blocked_count_addendum=(povoleno výjimkou: ?1?, skryto: ?2?) +subscription_invalid_location=Zadaná adresa seznamu cizích filtrů je buď nesprávná URL nebo obsahuje nesprávné jméno souboru. +type_label_image=Obrázek +remove_subscription_warning=Skutečně si přejete odstranit tuto sadu cizích filtrů ? +type_label_other=Ostatní +mobile_menu_enable=ABP: povolit +type_label_media=zvuk a video +mobile_menu_disable_site=ABP: Zakázat na ?1? +elemhideGroup_title=Pravidla skrývání prvků +mobile_menu_enable_site=ABP: Povolit na ?1? +type_label_elemhide=skryto +newGroup_title=Nová skupina filtrů +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/overlay.dtd new file mode 100644 index 0000000..9980b76 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ano"> +<!ENTITY notification.button.no "&Ne"> +<!ENTITY sync.label "Na&stavení synchronizace Adblocku Plus"> +<!ENTITY whitelist.site.label "Vypnout na ?1?"> +<!ENTITY filters.label "&Předvolby filtrů"> +<!ENTITY disable.label "Zakázat všude"> +<!ENTITY objecttab.title "Blokovat"> +<!ENTITY objecttab.tooltip "Klepněte zde pro blokování tohoto objektu pomocí Adblock Plus"> +<!ENTITY menuitem.label "Předvol&by Adblock Plus"> +<!ENTITY objecttabs.label "Z&obrazovat ouška u objektů Java a Flash"> +<!ENTITY sendReport.label "&Nahlásit problém na této stránce"> +<!ENTITY whitelist.page.label "Vypnout pouze na této stránce"> +<!ENTITY context.image.label "Blokovat obrázek"> +<!ENTITY counthits.label "Počítat &zásahy filtrů"> +<!ENTITY opensidebar.label "Zo&brazit blokovatelné objekty"> +<!ENTITY notification.button.close "&Zavřít"> +<!ENTITY contribute.label "Přispět Adblocku Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Blokovat rámec"> +<!ENTITY blocked.tooltip "Blokované prvky na této stránce:"> +<!ENTITY hideplaceholders.label "Skrýt zástupné o&bjekty blokovaných prvků"> +<!ENTITY showinstatusbar.label "Zob&razit ve stavovém řádku"> +<!ENTITY sidebar.title "Adblock Plus: Blokovatelné objekty na zobrazené stránce"> +<!ENTITY options.label "&Možnosti"> +<!ENTITY context.object.label "Blokovat objekt"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Znovu povolit na této stránce"> +<!ENTITY filters.tooltip "Nejúčinnější filtry:"> +<!ENTITY closesidebar.label "Skrýt seznam &blokovatelných objektů"> +<!ENTITY showintoolbar.label "Zobrazit v &nástrojové liště"> +<!ENTITY status.tooltip "Stav:"> +<!ENTITY context.media.label "Adblock Plus: Blokovat audio/video"> +<!ENTITY subscription.update.label "Aktualizovat filtry"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/sendReport.dtd new file mode 100644 index 0000000..3fd5628 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Zpět"> +<!ENTITY issues.disabledgroups.description "Následující sady cizích filtrů / skupiny filtrů jsou zakázány, přesto můžou mít vliv na tuto stránku:"> +<!ENTITY showData.label "Zobrazit data hlášení"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokuje příliš &mnoho"> +<!ENTITY issues.change.description "Vaše nastavení bylo změněno. Obnovte prosím stránku pro otestování změn a odešlete hlášení problému, pokud nebyl vyřešen úpravami nastavení."> +<!ENTITY email.label "E-&mail:"> +<!ENTITY issues.openPreferences.label "Otevřít předvolby filtrů"> +<!ENTITY sendPage.confirmation "Vaše hlášení bylo odesláno. Můžete si prohlédnou hlášení na následující adrese:"> +<!ENTITY copyLink.label "&Kopírovat adresu hlášení"> +<!ENTITY issues.nofilters.description "Adblock Plus na aktuální stránce nic neblokuje. Problém, který chcete nahlásit, není s největší pravděpodobností způsoben Adblockem Plus."> +<!ENTITY sendPage.knownIssue "Problém, který jste nahlásili, je pravděpodobně již známý. Více informací:"> +<!ENTITY typeSelector.other.description "Vyberte tuto možnost, pokud máte pocit, že je chyba přímo v Adblocku Plus, ne ve jeho filtrech."> +<!ENTITY issues.disabledgroups.enable.label "Povolit sadu cizích filtrů / skupinu filtrů"> +<!ENTITY typeWarning.override.label "&Rozumím a přesto chci odeslat hlášení"> +<!ENTITY issues.disabled.enable.label "Aktivovat Adblock Plus"> +<!ENTITY update.fixed.description "Aktualizace vámi odebíraných sad filtrů pravděpodobně vyřešila problém,který jste reportovali.Prosím obnovte stránku a zkuste to znovu,klikněte na Znovu oznámit pokud problém přetrval."> +<!ENTITY anonymous.label "&Anonymní odeslání"> +<!ENTITY reloadButton.label "&Obnovit stránku"> +<!ENTITY recentReports.clear.label "Odst&ranit všechna hlášení"> +<!ENTITY typeSelector.description "Toto okno vás provede kroky potřebnými k oznámení problému v Adblocku Plus. Začněte prosím vybráním druhu problému, se kterým jste se na této stránce setkali:"> +<!ENTITY screenshot.remove.label "&Odstranit důvěrné údaje"> +<!ENTITY issues.ownfilters.description "Některé filtry použité na této stránce jsou vytvořené vámi. Zakažte prosím filtry, které mohly způsobit problém:"> +<!ENTITY update.inProgress.description "Adblock Plus potřebuje aktualizovat váš filtr odběrů aby zajistil že otázka nebyla již vyřešena. Prosím čekejte..."> +<!ENTITY sendPage.retry.label "Odeslat znovu"> +<!ENTITY data.label "&Data hlášení:"> +<!ENTITY recentReports.label "Vaše nedávná hlášení"> +<!ENTITY typeWarning.description "Vybrali jste, že chcete nahlásit problém přímo v Adblocku Plus, nikoli chybu ve filtrech. Nejlepší způsob hlášení takovýchto chyb je na [link]fóru Adblocku Plus[/link]. Měli byste používat nástroj na hlášení chyb pouze jako doplněk existující diskuse na fóru, protože nikdo se nebude zabývat vaším hlášením, dokud neposkytnete odkaz na něj. Automaticky vygenerovaný odkaz bude zobrazet po odeslání hlášení."> +<!ENTITY issues.disabled.description "Adblock Plus je zakázaný, v současném stavu nebude blokovat nic."> +<!ENTITY attachExtensions.label "&Připojit seznam aktivních rozšíření k hlášení pro případ, že problém byl způsoben konfliktem mezi doplňky"> +<!ENTITY issues.nosubscriptions.add.label "Přidat sadu cizích filtrů"> +<!ENTITY issues.disabledfilters.enable.label "Povolit filtr"> +<!ENTITY issues.override.label "Nastavení je v &pořádku, pokračovat v hlášení problém"> +<!ENTITY issues.nosubscriptions.description "Zdá se, že nejste přihlášeni k odběru žádných cizích sad filtrů, které automaticky odstraňují nežádoucí obsah z webových stránek."> +<!ENTITY typeSelector.falsePositive.description "Vyberte tuto možnost, pokud na stránce chybí důležitý obsah, není zobrazena správně nebo nefunguje. Zda je Adblock Plus příčinou problému můžete zjistit jeho dočasným vypnutím."> +<!ENTITY typeSelector.other.label "Jiný &problém"> +<!ENTITY emailComment.label "Nabádáme vás,aby jste zadali platnou emailovou adresu,aby jsme vás mohli kontaktovat pokud budou nějaké nesrovnalosti s vašim nahlášením.Také nám to umožní rozeznat vaše příspěvky a přikládat jim vyšší prioritu."> +<!ENTITY issues.whitelist.remove.label "Znovu povolit Adblock Plus na této stránce"> +<!ENTITY outdatedSubscriptions.description "Následující odběr filtrů nebyl aktualizován minimálně dva týdny.Prosím aktualizujte tyto odběry než reportujete chybu,problém už mohl být vyřešen."> +<!ENTITY dataCollector.description "Počkejte prosím zatímco Adblock Plus sbírá potřebná data."> +<!ENTITY sendButton.label "&Odeslat hlášení"> +<!ENTITY comment.label "&Komentář (nepovinný)"> +<!ENTITY sendPage.errorMessage "Pokus odeslat hlášení problému selhal s chybovým kódem "?1?". Ověřte prosím, že jste připojeni k internetu a pokus opakujte. Pokud problém přetrvává, zkuste prosím vyhledat pomoc na [link]fóru Adblocku Plus[/link]."> +<!ENTITY showRecentReports.label "Ukázat nedávno odeslaná hlášení"> +<!ENTITY commentPage.heading "Vložit komentář"> +<!ENTITY update.start.label "Spustit aktualizaci"> +<!ENTITY issues.disabledfilters.description "Následující filtry jsou zakázány, přesto můžou mít vliv na tuto stránku:"> +<!ENTITY screenshot.description "Stejná stránka může být zobrazena odlišně různým lidem. Pomůže nám pochopit problém, pokud připojíte snímek stránky k vašemu hlášení problému. Můžete odstranit části obsahující důvěrné informace i vyznačit místa, kde je problém vidět. Toho docílíte klepnutím na odpovídající tlačítko a výběrem části obrázku myší."> +<!ENTITY screenshot.attach.label "&Připojit snímek stránky k hlášení"> +<!ENTITY issues.whitelist.description "Adblock Plus je aktuálně neaktivní na stránce, na které hlásíte problém. Prosím aktivujte jej a obnovte stránku předtím, než odešlete hlášení, abyste pomohli vyřešit váš problém."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus &neblokuje reklamu"> +<!ENTITY typeSelector.heading "Vyberte druh problému"> +<!ENTITY anonymity.warning "Nebudeme moci vám odepsat a vašemu reportu bude pravděpodobně přikládána nižší priorita."> +<!ENTITY wizard.title "Oznamování problémů"> +<!ENTITY issues.ownfilters.disable.label "Zakázat filtr"> +<!ENTITY commentPage.description "Do textového pole níže můžete vložit komentář vysvětlující problém, který hlásíte. Tento krok není povinný, ale je doporučený, pokud problém není jednoznačně viditelný. Můžete také prohlédnout data hlášení před jejich odesláním."> +<!ENTITY comment.lengthWarning "Váš komentář přesahuje 1000 znaků. Pouze prvních 1000 znaků bude odesláno."> +<!ENTITY typeSelector.falseNegative.description "Tuto možnost vyberte v případě, že vidíte reklamu i přesto, že je Adblock Plus aktivovaný."> +<!ENTITY sendPage.waitMessage "Prosím počkejte zatímco Adblock Plus odesílá vaše hlášení."> +<!ENTITY dataCollector.heading "Vítejte v nástroji na oznamování problémů"> +<!ENTITY screenshot.heading "Připojit snímek"> +<!ENTITY sendPage.heading "Odeslat hlášení"> +<!ENTITY issues.subscriptionCount.description "Vypadá to, že jste přihlášeni k odběru příliš mnoha sad cizích filtrů. Toto nastavení není doporučeno, protože výrazně zvyšuje pravděpodobnost výskytu problémů. Zároveň nelze přijmout vaše hlášení, protože není jasné, který z autorů sad cizích filtrů je za zodpovědný. Odhlašte se prosím z odběru všech nepotřebných sad cizích filtrů a vyzkoušejte, zda se problém vyskytuje i poté."> +<!ENTITY screenshot.mark.label "&Vyznačit problém"> +<!ENTITY privacyPolicy.label "Ochrana soukromí"> +<!ENTITY issues.description "Adblock Plus zjistil problémy s vaším nastavením, které můžou způsobovat tento problém nebo ztížit jeho řešení."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/sidebar.dtd new file mode 100644 index 0000000..8707ce4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Blikání obrysu objektu"> +<!ENTITY address.label "Adresa"> +<!ENTITY context.open.label "Otevřít v novém panelu"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Zdroj filtru:"> +<!ENTITY noitems.label "Nic nebylo zablokováno"> +<!ENTITY filter.label "Filtr"> +<!ENTITY tooltip.size.label "Velikost:"> +<!ENTITY reattach.label "Připojit"> +<!ENTITY search.label "&Hledat:"> +<!ENTITY docDomain.thirdParty "(externí)"> +<!ENTITY filterSource.label "Zdroj filtru"> +<!ENTITY tooltip.docDomain.label "Zdroj dokumentu:"> +<!ENTITY context.copy.label "Kopírovat adresu objektu"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Zakázat filtr ?1?"> +<!ENTITY context.copyFilter.label "Kopírovat filtr"> +<!ENTITY context.block.label "Blokovat tento objekt"> +<!ENTITY context.enablefilter.label "Opět povolit filtr ?1?"> +<!ENTITY detach.label "Oddělit"> +<!ENTITY whitelisted.label "Adresa je na bílé listině"> +<!ENTITY context.disablefilteronsite.label "Zakázat tento filtr na ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokovatelné prvky (odděleno)"> +<!ENTITY docDomain.firstParty "(vlastní)"> +<!ENTITY tooltip.type.whitelisted "(na bílé listině)"> +<!ENTITY tooltip.filter.label "Použité filtry:"> +<!ENTITY tooltip.filter.disabled "(zakázaný)"> +<!ENTITY context.editfilter.label "Upravit příslušný filtr"> +<!ENTITY tooltip.type.blocked "(blokováno)"> +<!ENTITY size.label "Velikost"> +<!ENTITY context.whitelist.label "Přidat výjimku pro tento objekt"> +<!ENTITY context.selectAll.label "Vybrat vše"> +<!ENTITY state.label "Stav"> +<!ENTITY docDomain.label "Zdroj dokumentu"> +<!ENTITY tooltip.address.label "Adresa:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/subscriptionSelection.dtd new file mode 100644 index 0000000..a3fb375 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/cs/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Přidat také cizí &sadu filtrů "?1?""> +<!ENTITY list.download.failed "Adblocku Plus se nepodařilo získat seznam cizích sad filtrů."> +<!ENTITY list.download.retry "Zkusit znovu"> +<!ENTITY title.label "&Označení cizích filtrů:"> +<!ENTITY list.download.website "Zobrazit webovou stránku"> +<!ENTITY supplementMessage "Tato cizí sada filtrů je určena k používání se sadou "?1?", kterou ještě nepoužíváte."> +<!ENTITY viewList.label "Zobrazit pravidla"> +<!ENTITY visitHomepage.label "Navštívit domovskou stránku"> +<!ENTITY addSubscription.label "Přidat cizí sadu filtrů"> +<!ENTITY dialog.title "Přidat sadu cizích filtrů Adblock Plus"> +<!ENTITY location.label "&Umístění sady filtrů:"> +<!ENTITY fromWeb.description "Prosím potvrďte, že chcete přidat tuto cizí sadu filtrů. Můžete změnít její titulek nebo umístění před jejím přidáním."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/composer.dtd new file mode 100644 index 0000000..124473c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "i s&lutningen af adressen"> +<!ENTITY domainRestriction.label "Begræns til &domæne:"> +<!ENTITY collapse.default.no.label "Brug standard (nej)"> +<!ENTITY firstParty.label "Kun &førsteparts"> +<!ENTITY preferences.label "Vi&s eksisterende filtre..."> +<!ENTITY pattern.label "Kig efter mønster"> +<!ENTITY thirdParty.label "Kun tred&jeparts"> +<!ENTITY filter.label "&Nyt filter:"> +<!ENTITY collapse.label "Sammenf&old blokeret:"> +<!ENTITY match.warning "Det angivne mønster matcher ikke længere den blokerede/hvidlistede adresse og har ingen effekt."> +<!ENTITY anchor.start.label "i be&gyndelsen af adressen"> +<!ENTITY matchCase.label "&Versalfølsom (a/A)"> +<!ENTITY custom.pattern.label "&Tilpasset:"> +<!ENTITY unselectAllTypes.label "Vælg ingen"> +<!ENTITY type.whitelist.label "&Undtagelsesregel"> +<!ENTITY regexp.warning "Det indtastede mønster vil blive fortolket som et regulært udtryk. Mange regulære udtryk kan gøre din browser langsommere. Hvis det ikke var din mening at bruge et regulært udtryk, så tilføj et * i sidst i mønsteret."> +<!ENTITY dialog.title "Tilføj Adblock Plus filterregel"> +<!ENTITY basic.label "Enkel visning"> +<!ENTITY type.filter.label "Blok&eringsfilter"> +<!ENTITY types.label "Benyt på typer:"> +<!ENTITY shortpattern.warning "Det indtastede mønster er for kort til optimering, og kan sløve din browser. Det anbefales at du vælger en længere streng for dette filter."> +<!ENTITY collapse.yes.label "Ja"> +<!ENTITY anchors.label "Accepter kun mønster:"> +<!ENTITY collapse.default.yes.label "Brug standard (ja)"> +<!ENTITY domainRestriction.help "Angiv ét eller flere domæner adskilt af symbolet "|", så vil filteret kun blive anvendt på disse domæner. Symbolet "~" foran et domæne angiver at filteret ikke skal anvendes på dette domæne."> +<!ENTITY accept.label "Tilføj filter"> +<!ENTITY options.label "Indstillinger"> +<!ENTITY disabled.warning "Adblock Plus er deaktiveret. Du kan stadig tilføje filtre men disse anvendes ikke før du [link]aktiverer Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "i be&gyndelsen af domænenavnet"> +<!ENTITY collapse.no.label "Nej"> +<!ENTITY selectAllTypes.label "Vælg alle"> +<!ENTITY advanced.label "Avanceret visning"> +<!ENTITY pattern.explanation "Mønsteret kan være enhver del af adressen, tegnet * bruges som jokertegn. Filteret benyttes kun på adresser der matcher mønsteret."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/filters.dtd new file mode 100644 index 0000000..3d0400b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Alle dine tilpassede filtre erstattes af indholdet i den valgte fil. Vil du fortsætte?"> +<!ENTITY slow.column "Langs&omme filtre"> +<!ENTITY enabled.column "A&ktiveret"> +<!ENTITY subscription.lastDownload.checksumMismatch "Fejlede, checksum matcher ikke"> +<!ENTITY noFiltersInGroup.text "Den valgte gruppe er tom"> +<!ENTITY subscription.actions.label "Handlinger"> +<!ENTITY filter.selectAll.label "Vælg alle"> +<!ENTITY backupButton.label "&Backup og gendan"> +<!ENTITY restore.minVersion.warning "Advarsel: Filen er oprettet med en nyere Adblock Plus. Du bør opdatere Adblock Plus før du gendanner fra denne fil."> +<!ENTITY restore.error "Filen kunne ikke åbnes, måske er det ikke en Adblock Plus backupfil?"> +<!ENTITY sort.ascending.label "&A > Z"> +<!ENTITY sort.label "&Sorter efter"> +<!ENTITY subscription.source.label "Filterliste"> +<!ENTITY hitcount.column "&Hits"> +<!ENTITY noFilters.text "Du har endnu ingen tilpassede filtre."> +<!ENTITY backup.custom.title "Kun tilpassede filtre"> +<!ENTITY subscription.external.label "Opdateret af en anden tilføjelse"> +<!ENTITY subscription.delete.label "Slet"> +<!ENTITY noGroupSelected.text "Vælg en filtergruppe for at få vist filtrene."> +<!ENTITY filter.cut.label "Klip"> +<!ENTITY restore.default.label "Gendan backup fra ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Henter..."> +<!ENTITY subscriptions.tab.label "Filterabonnementer"> +<!ENTITY sort.descending.label "&Z > A"> +<!ENTITY filters.remove.warning "Vil du fjerne de valgte filtre?"> +<!ENTITY filter.delete.label "Slet"> +<!ENTITY addSubscriptionAdd.label "Tilføj"> +<!ENTITY viewMenu.label "Vis"> +<!ENTITY subscription.lastDownload.unknown "Ukendt"> +<!ENTITY addSubscriptionCancel.label "Annuller"> +<!ENTITY subscription.enabled.label "Aktiveret"> +<!ENTITY noSubscriptions.text "Du har endnu ikke tilføjet Filterabonnementer. Adblock Plus blokerer ikke + noget uden filtre, så brug "Tilføj Filterabonnementer; + for at tilføje nogen."> +<!ENTITY subscription.update.label "Opdater filtre"> +<!ENTITY dialog.title "Adblock Plus filterpræferencer"> +<!ENTITY addFilter.label "Ti&lføj filter"> +<!ENTITY subscription.minVersion.warning "Dette Filterabonnement kræver en nyere udgave af Adblock Plus. Opdater venligst."> +<!ENTITY subscription.lastDownload.invalidURL "Fejlede, ikke en gyldig adresse"> +<!ENTITY backup.error "Der opstod en skrivefejl. Kontroller at filen ikke er skrivebeskyttet eller åben i et andet program."> +<!ENTITY filter.moveUp.label "Flyt op"> +<!ENTITY addGroup.label "Tilføj filter&gruppe"> +<!ENTITY filter.edit.label "Rediger"> +<!ENTITY subscription.showHideFilters.label "Vis/skjul filtre"> +<!ENTITY acceptableAds2.label "T&illad upåtrængende annoncering delvist"> +<!ENTITY addSubscriptionOther.label "Tilføj endnu et abonnement"> +<!ENTITY close.label "Luk"> +<!ENTITY sort.none.label "&Usorteret"> +<!ENTITY filter.actions.label "Filterhandlinger"> +<!ENTITY filter.copy.label "Kopier"> +<!ENTITY filter.moveDown.label "Flyt ned"> +<!ENTITY filter.resetHitCounts.label "Nulstil statistikker"> +<!ENTITY readMore.label "Lær mere"> +<!ENTITY subscription.moveUp.label "Flyt op"> +<!ENTITY addSubscription.label "Til&føj filterabonnement"> +<!ENTITY subscription.homepage.label "Hjemmeside"> +<!ENTITY backup.complete.title "Alle filtre og abonnementer"> +<!ENTITY restore.own.label "Gendan eget backup"> +<!ENTITY restore.complete.warning "Alle dine filterpræferencer erstattes af indholdet i den valgte fil. Vil du fortsætte?"> +<!ENTITY filters.tab.label "Tilpassede filtre"> +<!ENTITY backup.label "Opret nyt backup"> +<!ENTITY find.label "S&øg"> +<!ENTITY subscription.moveDown.label "Flyt op"> +<!ENTITY subscription.lastDownload.connectionError "Fejlede, hentningsfejl"> +<!ENTITY subscription.lastDownload.success "Succes"> +<!ENTITY subscription.lastDownload.invalidData "Fejlede, ikke en gyldig liste over filtre"> +<!ENTITY filter.paste.label "Sæt ind"> +<!ENTITY subscription.disabledFilters.enable "Aktiver deaktiverede filtre"> +<!ENTITY lasthit.column "Seneste h&it"> +<!ENTITY subscription.editTitle.label "Rediger titel"> +<!ENTITY subscription.disabledFilters.warning "Dette abonnement indeholder deaktiverede filtre."> +<!ENTITY filter.column "&Filterregel"> +<!ENTITY subscription.lastDownload.label "Sidst hentet:"> +<!ENTITY viewList.label "Vis liste"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/firstRun.properties new file mode 100644 index 0000000..57c941b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Deaktiver sporing - og skjul dine netvaner fra de annoncefirmaer der holder øje med din færden. +firstRun_toggle_off=FRA +firstRun_feature_tracking=Deaktiver sporing +firstRun_feature_malware=Malwareblokering +firstRun_title=Adblock Plus blev installeret +firstRun_toggle_on=TIL +firstRun_acceptableAdsExplanation=Vi vil gerne tilskynde websider til at bruge enkel, diskret annoncering. Derfor har vi indført <a>strenge retningslinjer</a> for at identificere de acceptable annoncer, der vises med standardindstillingerne. Hvis du stadig vil blokere alle annoncer, kan du let <a>deaktivere</a> dette. +firstRun_contributor_credits=Tak til +firstRun_dataCorruptionWarning=<a>Klik her!</a> hvis denne side bliver ved med at dukke op. +firstRun_acceptableAdsHeadline=Generende annoncer bliver nu blokeret +firstRun_share=Fortæl det til vennerne +firstRun_share_headline=<a>Giv en hånd</a> med at gøre internettet til et bedre sted +firstRun_feature_social_description=Fjern automatisk de knapper fra sociale medier, f.eks Facebook Like, som vises på websider og sporer din adfærd. +firstRun_filterlistsReinitializedWarning=Et problem har tilsyneladende fjernet alle filtre og det var ikke muligt at gendanne en backup. Dine filtre og indstillinger for upåtrængende annoncer er derfor blevet nulstillet. Kontroller dine filtre m.m. i <a>Adblock Plus præferencer</a>. +firstRun_feature_malware_description=Gør din browsing mere sikker ved at blokere kendte malwaredomæner. +firstRun_features=Adblock Plus kan mere end blot blokere annoncer +firstRun_donate=donér +firstRun_donate_label=Støt projektet +firstRun_feature_social=Fjern knapper fra sociale medier +firstRun_legacySafariWarning=Du bruger en gammel udgave af Safari, som ikke understøttes af Adblock Plus. Det kan fungere dårligt eller forringe brugeroplevelsen på nogle websteder. Vi anbefaler kraftigt at opdatere til minimum Safari 6.1.1 (på OS X 10,8 Mountain Lion), Safari 7.0.1 (på OS X 10.9 Mavericks) eller bruge den nyeste Firefox, Google Chrome eller Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/global.properties new file mode 100644 index 0000000..6f29187 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Ingen blokerbare elementer på aktuel side +action3_tooltip=Klik for at aktivere/deaktivere Adblock Plus. +notification_antiadblock_title=Skjul målrettede beskeder ? +type_label_script=script +filter_elemhide_nocriteria=Ingen kriterier angivet for at genkende elementet der skal skjules +blockingGroup_title=Blokeringsregler +whitelisted_tooltip=Adblock Plus er aktiv men slået fra på nuværende side. +type_label_stylesheet=stilark +blocked_count_tooltip=?1? ud af ?2? +type_label_font=skrifttype +type_label_popup=popup vindue +filter_regexp_tooltip=Dette filter er enten et regulært udtryk eller for kort til at blive optimeret. For mange af disse kan gøre din browser langsommere. +action0_tooltip=Klik for at vise kontekstmenuen, midterklik aktiverer/deaktiverer. +whitelisted_page=Adblock Plus er slået fra for aktuel side +remove_group_warning=Vil du virkelig fjerne denne gruppe? +action1_tooltip=Klik for at åbne/lukke blokérbare elementer, midterklik aktiverer/deaktiverer. +type_label_xmlhttprequest=XML-forespørgsel +active_tooltip=Adblock Plus er aktiveret, ?1? filter-abonnementer og ?2? brugerdefinerede filtre i brug. +type_label_document=dokument +type_label_object_subrequest=objekt underforespørgsel +whitelistGroup_title=Undtagelsesregler +disabled_tooltip=Adblock Plus er deaktiveret. +filter_elemhide_duplicate_id=Kun ét ID for elementet der skal skjules kan angives +type_label_object=objekt +action2_tooltip=Klik for at åbne indstillingerne, midterklik aktiverer/deaktiverer. +type_label_subdocument=ramme +clearStats_warning=Nulstiller hit statistikker for alle filtre og deaktiverer tælleren. Vil du fortsætte? +notification_antiadblock_message=Denne side er kendt for målrettede beskeder til Adblock Plus brugere. Skal Adblock Plus skjule disse beskeder ? +blocked_count_addendum=(også hvidlistet: ?1?, skjult: ?2?) +subscription_invalid_location=Filterlistens placering er hverken en gyldig URL eller et gyldigt filnavn. +type_label_image=billede +remove_subscription_warning=Vil du virkelig fjerne dette abonnement? +type_label_other=andet +mobile_menu_enable=ABP: Aktiver +type_label_media=audio/video +mobile_menu_disable_site=ABP: Deaktiver på ?1? +elemhideGroup_title=Skjul emner regler +mobile_menu_enable_site=ABP: Aktiver på ?1? +type_label_elemhide=skjult +newGroup_title=Ny filtergruppe +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/overlay.dtd new file mode 100644 index 0000000..89522f2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ja"> +<!ENTITY notification.button.no "&Nej"> +<!ENTITY sync.label "Syn&k Adblock Plus indstillinger"> +<!ENTITY whitelist.site.label "Slå fra på ?1?"> +<!ENTITY filters.label "&Filterpræferencer"> +<!ENTITY disable.label "Deaktiver overalt"> +<!ENTITY objecttab.title "Bloker"> +<!ENTITY objecttab.tooltip "Klik her for at blokere dette objekt med Adblock Plus"> +<!ENTITY menuitem.label "&Adblock Plus indstillinger"> +<!ENTITY objecttabs.label "Vis faner på Flash og &Java"> +<!ENTITY sendReport.label "Ra&pporter problem"> +<!ENTITY whitelist.page.label "Slå fra på denne side"> +<!ENTITY context.image.label "Adblock billede"> +<!ENTITY counthits.label "Tæl filter&hits"> +<!ENTITY opensidebar.label "Åbn bloké&rbare elementer"> +<!ENTITY notification.button.close "&Luk"> +<!ENTITY contribute.label "Bidrag til Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock ramme"> +<!ENTITY blocked.tooltip "Blokerede emner på denne side:"> +<!ENTITY hideplaceholders.label "Skjul blokerede emners &pladsholder"> +<!ENTITY showinstatusbar.label "&Vis på statuslinje"> +<!ENTITY sidebar.title "Blokérbare elementer på aktuel side"> +<!ENTITY options.label "In&dstillinger"> +<!ENTITY context.object.label "Adblock objekt"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Genaktivér på denne side"> +<!ENTITY filters.tooltip "Mest aktive filtre:"> +<!ENTITY closesidebar.label "Luk bloké&rbare elementer"> +<!ENTITY showintoolbar.label "Vi&s på værktøjslinje"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Bloker audio/video"> +<!ENTITY subscription.update.label "Opdater filtre"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/sendReport.dtd new file mode 100644 index 0000000..5965eed --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Fortr&yd"> +<!ENTITY issues.disabledgroups.description "Følgende abonnementer/filtre er deaktiveret, men kan stadig påvirke siden:"> +<!ENTITY showData.label "Vis rapportdata"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokerer for &meget"> +<!ENTITY issues.change.description "Indstillingen blev ændret. Genindlæs siden og se om det har hjulpet. Indsend rapporten hvis problemet stadig findes."> +<!ENTITY email.label "E&mail:"> +<!ENTITY issues.openPreferences.label "Åben filterindstillinger"> +<!ENTITY sendPage.confirmation "Rapporten er gemt. Den kan ses på følgende adresse:"> +<!ENTITY copyLink.label "&Kopier link"> +<!ENTITY issues.nofilters.description "Adblock Plus blokerer intet på denne side. Problemet skyldes sandsynligvis ikke Adblock Plus."> +<!ENTITY sendPage.knownIssue "Det rapporterede problem er sandsynligvis kendt. Mere information:"> +<!ENTITY typeSelector.other.description "Vælges hvis du tror problemet skyldes Adblock Plus selv og ikke filtrene."> +<!ENTITY issues.disabledgroups.enable.label "Aktiver abonnement/filtre"> +<!ENTITY typeWarning.override.label "&Jeg forstår og vil indsende alligevel."> +<!ENTITY issues.disabled.enable.label "Aktiver Adblock Plus"> +<!ENTITY update.fixed.description "Opdateringen af filterabonnementet har sandsynligvis løst dit problem. Genindlæs siden og prøv igen. Rapporter igen hvis problemet består."> +<!ENTITY anonymous.label "&Anonym indsendelse"> +<!ENTITY reloadButton.label "&Genindlæs side"> +<!ENTITY recentReports.clear.label "&Fjern alle rapporter"> +<!ENTITY typeSelector.description "Dette vindue vil føre dig gennem de trin der kræves for at rapportere et Adblock Plus problem. Vælg først hvilken problemtype du oplever på denne side:"> +<!ENTITY screenshot.remove.label "&Dæk område"> +<!ENTITY issues.ownfilters.description "Der anvendes brugerdefinerede filtre på denne side. Deaktiver filtret der måske forårsager problemet:"> +<!ENTITY update.inProgress.description "Adblock Plus skal opdatere dit filterabonnement for at sikre at problemet ikke er blevet løst. Vent..."> +<!ENTITY sendPage.retry.label "Send igen"> +<!ENTITY data.label "Ra&pportdata:"> +<!ENTITY recentReports.label "Dine seneste rapporter"> +<!ENTITY typeWarning.description "Du vil indsende en rapport om generelle problemer med Adblock Plus, og ikke med filtrene. Bemærk at den slags problemer behandles bedst i [link]Adblock Plus forum[/link]. Du bør kun bruge denne problemrapport som bilag til en eksisterende diskussion, da ingen bemærker den med mindre du angiver et link. Du vil modtage et link efter afsendelse af rapporten."> +<!ENTITY issues.disabled.description "Adblock Plus er deaktiveret og blokerer ingenting."> +<!ENTITY attachExtensions.label "&Vedhæft liste med aktive tilføjelser til konstatering af eventuelle konflikter"> +<!ENTITY issues.nosubscriptions.add.label "Tilføj filterabonnement"> +<!ENTITY issues.disabledfilters.enable.label "Aktiver filter"> +<!ENTITY issues.override.label "&Indstillingen er korrekt, fortsæt rapporten"> +<!ENTITY issues.nosubscriptions.description "Du abonnerer tilsyneladende ikke på nogen af de filtre der automatisk fjerner uønsket indhold fra websider."> +<!ENTITY typeSelector.falsePositive.description "Vælges hvis siden mangler vigtigt indhold, vises forkert eller ikke fungerer rigtigt. Du kan se om problemet skyldes Adblock Plus ved at deaktivere det midlertidigt."> +<!ENTITY typeSelector.other.label "&Andet"> +<!ENTITY emailComment.label "Vi opfordrer dig til at angive en gyldig mailadresse, så vi kan kontakte dig, hvis der er spørgsmål til rapporten. Det tillader også genkendelse af dit bidrag for højere prioritet."> +<!ENTITY issues.whitelist.remove.label "Genaktiver Adblock Plus på denne side"> +<!ENTITY outdatedSubscriptions.description "Følgende filterabonnementer er ikke opdateret i mindst to uger. Opdater før du rapporterer en fejl, problemet er muligvis løst allerede."> +<!ENTITY dataCollector.description "Vent et øjeblik mens Adblock Plus indsamler data."> +<!ENTITY sendButton.label "Se&nd rapport"> +<!ENTITY comment.label "&Kommentar (valgfri):"> +<!ENTITY sendPage.errorMessage "Afsendelse af rapporten fejlede med kode "?1?". Kontroller din internetforbindelse og prøv igen. Hvis problemet fortsætter så søg hjælp i [link]Adblock Plus forum[/link]."> +<!ENTITY showRecentReports.label "Vis nyligt indsendte rapporter"> +<!ENTITY commentPage.heading "Indsæt kommentar"> +<!ENTITY update.start.label "Start opdatering"> +<!ENTITY issues.disabledfilters.description "Følgende filtre er deaktiveret, men kan stadig påvirke siden:"> +<!ENTITY screenshot.description "Samme side kan vises på forskellige måder. Det vil hjælpe os med at forstå problemet, hvis du vedhæfter et screenshot til rapporten. Du kan dække følsomme data og markere områder hvor problemet er tydeligt. Klik på den ønskede knap og vælg et område med musen."> +<!ENTITY screenshot.attach.label "Vedhæft &billede"> +<!ENTITY issues.whitelist.description "Adblock Plus er deaktiveret på siden du rapporterer. Genaktiver det og genindlæs siden før du indsender rapporten."> +<!ENTITY typeSelector.falseNegative.label "Adbloc&k Plus blokerer ikke annonce"> +<!ENTITY typeSelector.heading "Vælg problemtype"> +<!ENTITY anonymity.warning "Vi kan ikke kontakte dig, rapporten prioriteres lavere."> +<!ENTITY wizard.title "Rapporter problem"> +<!ENTITY issues.ownfilters.disable.label "Deaktiver filter"> +<!ENTITY commentPage.description "I tekstfeltet kan du beskrive problemet nærmere. Det er valgfrit, men vil hjælpe med at forstå problemet bedre. Du kan også gennemse rapporten før du sender den."> +<!ENTITY comment.lengthWarning "Teksten overstiger 1000 tegn. Kun de første 1000 tegn bliver sendt."> +<!ENTITY typeSelector.falseNegative.description "Vælges hvis en annonce vises selv om Adblock Plus er aktiveret."> +<!ENTITY sendPage.waitMessage "Vent mens Adblock Plus sender rapporten."> +<!ENTITY dataCollector.heading "Velkommen til Rapporter problem"> +<!ENTITY screenshot.heading "Vedhæft screenshot"> +<!ENTITY sendPage.heading "Send rapport"> +<!ENTITY issues.subscriptionCount.description "Du abonnerer tilsyneladende på for mange filtre. Det anbefales ikke, da det vil forøge chancen for problemer meget. Vi kan heller ikke acceptere din rapport, da det er uklart hvilken filterudvikler der skal behandle den. Fjern alle unødvendige filtre og se om problemet stadig eksisterer."> +<!ENTITY screenshot.mark.label "&Marker problem"> +<!ENTITY privacyPolicy.label "Privatlivspolitik"> +<!ENTITY issues.description "Adblock Plus har fundet problemer i dine indstillinger der kan forårsage dette probleme eller vanskeliggøre yderligere undesøgelser."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/sidebar.dtd new file mode 100644 index 0000000..5e93842 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Fremhæv emnets kanter"> +<!ENTITY address.label "Adresse"> +<!ENTITY context.open.label "Åbn i nyt faneblad"> +<!ENTITY type.label "Type"> +<!ENTITY tooltip.filterSource.label "Filterkilde:"> +<!ENTITY noitems.label "Ingen blokérbare emner"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Størrelse:"> +<!ENTITY reattach.label "Gentilkobl"> +<!ENTITY search.label "S&øg:"> +<!ENTITY docDomain.thirdParty "(tredjeparts)"> +<!ENTITY filterSource.label "Filterkilde"> +<!ENTITY tooltip.docDomain.label "Dokumentkilde:"> +<!ENTITY context.copy.label "Kopier emnets adresse"> +<!ENTITY tooltip.type.label "Type:"> +<!ENTITY context.disablefilter.label "Deaktiver filter ?1?"> +<!ENTITY context.copyFilter.label "Kopier filter"> +<!ENTITY context.block.label "Blokér dette emne"> +<!ENTITY context.enablefilter.label "Genaktiver filter ?1?"> +<!ENTITY detach.label "Frakobl"> +<!ENTITY whitelisted.label "Hvidlistet side"> +<!ENTITY context.disablefilteronsite.label "Deaktiver dette filter på ?1?"> +<!ENTITY detached.title "Adblock Plus blokérbare emner (frakoblet)"> +<!ENTITY docDomain.firstParty "(førsteparts)"> +<!ENTITY tooltip.type.whitelisted "(hvidlistet)"> +<!ENTITY tooltip.filter.label "Fungerende filter:"> +<!ENTITY tooltip.filter.disabled "(deaktiveret)"> +<!ENTITY context.editfilter.label "Redigér aktuelt filter"> +<!ENTITY tooltip.type.blocked "(blokeret)"> +<!ENTITY size.label "Størrelse"> +<!ENTITY context.whitelist.label "Tilføj undtagelsesregel for emne"> +<!ENTITY context.selectAll.label "Vælg alle"> +<!ENTITY state.label "Tilstand"> +<!ENTITY docDomain.label "Dokumentkilde"> +<!ENTITY tooltip.address.label "Adresse:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/subscriptionSelection.dtd new file mode 100644 index 0000000..cf25b98 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/da/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Tilføj og&så filterabonnement "?1?"."> +<!ENTITY list.download.failed "Adblock Plus kunne ikke hente abonnementslisten."> +<!ENTITY list.download.retry "Prøv igen"> +<!ENTITY title.label "Abonnemen&tstitel:"> +<!ENTITY list.download.website "Se hjemmeside"> +<!ENTITY supplementMessage "Dette filterabonnement er beregnet til brug sammen med abonnementet "?1?" som du endnu ikke bruger."> +<!ENTITY viewList.label "Vis filtre"> +<!ENTITY visitHomepage.label "Besøg hjemmeside"> +<!ENTITY addSubscription.label "Tilføj abonnement"> +<!ENTITY dialog.title "Tilføj Adblock Plus filterabonnement"> +<!ENTITY location.label "Fi&lterlistens placering:"> +<!ENTITY fromWeb.description "Bekræft tilføjelsen af dette abonnement. Du kan ændre titel eller placering før det tilføjes."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/composer.dtd new file mode 100644 index 0000000..7d377e2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "am En&de der Adresse"> +<!ENTITY domainRestriction.label "Auf Do&main beschränken:"> +<!ENTITY collapse.default.no.label "Standardeinstellung (nein)"> +<!ENTITY firstParty.label "Nur für Elemente der Ursprungsseite"> +<!ENTITY preferences.label "Existierende Filter an&zeigen ..."> +<!ENTITY pattern.label "Muster suchen"> +<!ENTITY thirdParty.label "Nur für Elemen&te von Drittseiten"> +<!ENTITY filter.label "Neue &Filter:"> +<!ENTITY collapse.label "Platz frei&geben:"> +<!ENTITY match.warning "Das Muster, das Sie eingegeben haben, passt nicht mehr zu der Adresse, für die der Filter erstellt werden soll. Es wird keinen Einfluss mehr auf diese Adresse haben."> +<!ENTITY anchor.start.label "am An&fang der Adresse"> +<!ENTITY matchCase.label "Groß-/&Kleinschreibung beachten"> +<!ENTITY custom.pattern.label "Be&nutzerdefiniert:"> +<!ENTITY unselectAllTypes.label "Keine auswählen"> +<!ENTITY type.whitelist.label "&Ausnahmeregel"> +<!ENTITY regexp.warning "Das Muster, das Sie eingegeben haben, wird als regulärer Ausdruck interpretiert. Zu viele reguläre Ausdrücke könnten Ihren Browser verlangsamen. Falls Sie nicht beabsichtigt haben, reguläre Ausdrücke zu verwenden, fügen Sie einfach das Symbol '*' am Ende des Musters an."> +<!ENTITY dialog.title "Neuen Filter hinzufügen"> +<!ENTITY basic.label "Standardansicht"> +<!ENTITY type.filter.label "&Blockierregel"> +<!ENTITY types.label "Auf Elementtypen anwenden:"> +<!ENTITY shortpattern.warning "Das Muster, das Sie eingegeben haben, ist zu kurz zum Optimieren. Zu viele solche Muster könnten Ihren Browser verlangsamen. Es ist deshalb empfehlenswert, nach Möglichkeit ein längeres Muster für diesen Filter zu verwenden."> +<!ENTITY collapse.yes.label "Ja"> +<!ENTITY anchors.label "Muster nur akzeptieren:"> +<!ENTITY collapse.default.yes.label "Standardeinstellung (ja)"> +<!ENTITY domainRestriction.help "Geben Sie eine oder mehrere Domains an (Trennzeichen ist "|"), der Filter wird dann nur auf diesen Domains angewandt. Das Zeichen "~" vor einem Domainnamen bedeutet, dass der Filter auf dieser Domain nicht angewandt werden sollte."> +<!ENTITY accept.label "Filter hinzufügen"> +<!ENTITY options.label "Optionen"> +<!ENTITY disabled.warning "Adblock Plus ist deaktiviert. Sie können trotzdem den Filter hinzufügen, dieser wird jedoch erst angewandt, wenn Sie [link]Adblock Plus aktivieren[/link]."> +<!ENTITY anchor.start.flexible.label "am An&fang des Domain-Namens"> +<!ENTITY collapse.no.label "Nein"> +<!ENTITY selectAllTypes.label "Alle auswählen"> +<!ENTITY advanced.label "Erweiterte Ansicht"> +<!ENTITY pattern.explanation "Das Muster kann ein beliebiger Teil der Adresse sein, das Zeichen '*' kann dabei als Jokerzeichen verwendet werden. Der Filter wird nur auf Adressen angewandt, die auf das Muster passen."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/filters.dtd new file mode 100644 index 0000000..7c3e0f1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/filters.dtd @@ -0,0 +1,73 @@ +<!ENTITY restore.custom.warning "Alle Ihre eigenen Filter werden durch den Inhalt dieser Datei ersetzt. Wollen Sie fortfahren?"> +<!ENTITY slow.column "&Langsame Filter"> +<!ENTITY enabled.column "A&ktiviert"> +<!ENTITY subscription.lastDownload.checksumMismatch "Fehler, Prüfsumme ist falsch, möglicherweise ein Übertragungsfehler"> +<!ENTITY noFiltersInGroup.text "Die gewählte Filtergruppe ist leer."> +<!ENTITY subscription.actions.label "Aktionen"> +<!ENTITY filter.selectAll.label "Alle auswählen"> +<!ENTITY backupButton.label "Sic&hern und Wiederherstellen"> +<!ENTITY restore.minVersion.warning "Warnung: diese Datei wurde mit einer neueren Version von Adblock Plus erstellt. Sie sollten Adblock Plus auf die neueste Version aktualisieren, bevor Sie Daten von dieser Sicherung wiederherstellen."> +<!ENTITY restore.error "Die Daten dieser Datei sind fehlerhaft, vielleicht ist es keine Sicherungsdatei von Adblock Plus?"> +<!ENTITY sort.ascending.label "&Aufsteigend"> +<!ENTITY sort.label "&Sortieren"> +<!ENTITY subscription.source.label "Filterliste"> +<!ENTITY hitcount.column "T&reffer"> +<!ENTITY noFilters.text "Sie haben noch keine eigenen Filter."> +<!ENTITY backup.custom.title "Nur eigene Filter"> +<!ENTITY subscription.external.label "Wird von einer anderen Erweiterung aktualisiert"> +<!ENTITY subscription.delete.label "Löschen"> +<!ENTITY noGroupSelected.text "Sie müssen eine Filtergruppe auswählen, um deren Inhalt anzuzeigen."> +<!ENTITY filter.cut.label "Ausschneiden"> +<!ENTITY restore.default.label "Sicherung von ?1? wiederherstellen"> +<!ENTITY subscription.lastDownload.inProgress "Wird heruntergeladen ..."> +<!ENTITY subscriptions.tab.label "Filterabonnements"> +<!ENTITY sort.descending.label "A&bsteigend"> +<!ENTITY filters.remove.warning "Wollen Sie wirklich alle ausgewählten Filter löschen?"> +<!ENTITY filter.delete.label "Löschen"> +<!ENTITY addSubscriptionAdd.label "Hinzufügen"> +<!ENTITY viewMenu.label "Ansicht"> +<!ENTITY subscription.lastDownload.unknown "Nie"> +<!ENTITY addSubscriptionCancel.label "Abbrechen"> +<!ENTITY subscription.enabled.label "Aktiviert"> +<!ENTITY noSubscriptions.text "Sie haben noch keine Filterabonnements hinzugefügt. Ohne Filter wird Adblock Plus + nichts blockieren können, bitte benutzen Sie die Schaltfläche "Filterabonnement hinzufügen"."> +<!ENTITY subscription.update.label "Filter aktualisieren"> +<!ENTITY dialog.title "Filtereinstellungen von Adblock Plus"> +<!ENTITY addFilter.label "&Filter hinzufügen"> +<!ENTITY subscription.minVersion.warning "Diese Filterliste benötigt eine neuere Version von Adblock Plus, Sie sollten auf die neueste Version von Adblock Plus aktualisieren."> +<!ENTITY subscription.lastDownload.invalidURL "Fehler, ungültige Adresse"> +<!ENTITY backup.error "Beim Schreiben der Filter in die Datei ist ein Problem aufgetreten. Bitte stellen Sie sicher, dass die Datei nicht schreibgeschützt ist oder von einem anderen Programm verwendet wird."> +<!ENTITY filter.moveUp.label "Nach oben verschieben"> +<!ENTITY addGroup.label "Filter&gruppe hinzufügen"> +<!ENTITY filter.edit.label "Bearbeiten"> +<!ENTITY subscription.showHideFilters.label "Filter anzeigen/verstecken"> +<!ENTITY acceptableAds2.label "Einige nicht auf&dringliche Werbung zulassen"> +<!ENTITY addSubscriptionOther.label "Anderes Abonnement hinzufügen"> +<!ENTITY close.label "Schließen"> +<!ENTITY sort.none.label "&Unsortiert"> +<!ENTITY filter.actions.label "Filteraktionen"> +<!ENTITY filter.copy.label "Kopieren"> +<!ENTITY filter.moveDown.label "Nach unten verschieben"> +<!ENTITY filter.resetHitCounts.label "Trefferstatistiken zurücksetzen"> +<!ENTITY readMore.label "Mehr Information"> +<!ENTITY subscription.moveUp.label "Nach oben verschieben"> +<!ENTITY addSubscription.label "Filtera&bonnement hinzufügen"> +<!ENTITY subscription.homepage.label "Webseite"> +<!ENTITY backup.complete.title "Alle Filter und alle Filterabonnements"> +<!ENTITY restore.own.label "Eigene Sicherung wiederherstellen"> +<!ENTITY restore.complete.warning "Alle Ihre Filtereinstellungen werden durch den Inhalt dieser Datei ersetzt. Wollen Sie fortfahren?"> +<!ENTITY filters.tab.label "Eigene Filter"> +<!ENTITY backup.label "Neue Sicherung erstellen"> +<!ENTITY find.label "Filter durch&suchen"> +<!ENTITY subscription.moveDown.label "Nach unten verschieben"> +<!ENTITY subscription.lastDownload.connectionError "Fehler, Herunterladen fehlgeschlagen"> +<!ENTITY subscription.lastDownload.success "Erfolgreich"> +<!ENTITY subscription.lastDownload.invalidData "Fehler, keine gültige Filterliste"> +<!ENTITY filter.paste.label "Einfügen"> +<!ENTITY subscription.disabledFilters.enable "Deaktivierte Filter aktivieren"> +<!ENTITY lasthit.column "Let&zter Treffer"> +<!ENTITY subscription.editTitle.label "Umbenennen"> +<!ENTITY subscription.disabledFilters.warning "Einige Filter in dieser Filterliste sind deaktiviert."> +<!ENTITY filter.column "&Filterregel"> +<!ENTITY subscription.lastDownload.label "Zuletzt aktualisiert:"> +<!ENTITY viewList.label "Liste öffnen"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/firstRun.properties new file mode 100644 index 0000000..98089de --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Privates Surfen durch Deaktivierung der Tracker - Versteckt Ihr Surfverhalten vor Werbefirmen, die Sie sonst ausspionieren würden. +firstRun_toggle_off=AUS +firstRun_feature_tracking=Verfolgung ausschalten +firstRun_feature_malware=Malware-Blockierung +firstRun_title=Adblock Plus wurde installiert +firstRun_toggle_on=AN +firstRun_acceptableAdsExplanation=Wir möchten Webseiten dazu ermutigen schlichte und unaufdringliche Werbung zu verwenden. Deshalb werden durch <a>strenge Richtlinien</a> akzeptable Werbeanzeigen bestimmt, welche unter Standard-Einstellungen noch angezeigt werden. Wenn Sie jedoch alle Werbungen blockieren möchten, können Sie diese Einstellung in kurzer Zeit <a>deaktivieren</a>. +firstRun_contributor_credits=Mitwirkende +firstRun_dataCorruptionWarning=Wird diese Seite immer wieder angezeigt? <a>Bitte hier klicken!</a> +firstRun_acceptableAdsHeadline=Lästige Werbung wird jetzt blockiert +firstRun_share=Weiterempfehlen +firstRun_share_headline=<a>Bitte unterstützen Sie uns</a> dabei, das Internet zu einem besseren Ort zu machen +firstRun_feature_social_description=Entfernt Social-Media-Buttons (z.B. den Facebook-Like) die auf Webseiten erscheinen und Ihr Surfverhalten aufzeichnen. +firstRun_filterlistsReinitializedWarning=Es scheint, als ob aufgrund eines Problems alle Filter entfernt wurden und wir keine Sicherung wiederherstellen konnten. Deshalb wurden alle Ihre Filter sowie Ihre Einstellungen für akzeptable Werbung zurückgesetzt werden. Überprüfen Sie bitte Ihre Filterliste und Ihre Einstellungen für akzeptable Werbung in den <a>Adblock Plus Optionen</a>. +firstRun_feature_malware_description=Sicheres Surfen durch Blockieren von infizierten Webseiten. +firstRun_features=Adblock Plus kann mehr als nur Werbung blockieren +firstRun_donate=Spenden +firstRun_donate_label=Unterstützen Sie unser Projekt +firstRun_feature_social=Social Media-Buttons entfernen +firstRun_legacySafariWarning=Sie verwenden eine ältere Version von Safari, die nicht von Adblock Plus unterstützt wird. Es kann sein, dass Adblock Plus damit nicht richtig funktioniert oder dass bestimmte Websites nicht richtig dargestellt werden. Wir empfehlen deshalb dringend, entweder einen Upgrade auf Safari 6.1.1 oder höher (auf OS X 10.8 Mountain Lion) oder auf Safari 7.0.1 oder höher (auf OS X 10.9 Mavericks) durchzuführen oder die neueste Version von Mozilla Firefox, Google Chrome oder Opera zu verwenden. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/global.properties new file mode 100644 index 0000000..da3cac2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Auf der geöffneten Seite gibt es keine Elemente, die blockiert werden könnten +action3_tooltip=Adblock Plus ein- bzw. ausschalten +notification_antiadblock_title=Zielgerichtete Nachrichten ausblenden? +type_label_script=Skript +filter_elemhide_nocriteria=Keine Kriterien angegeben, um das zu versteckende Element zu erkennen +blockingGroup_title=Blockierregeln +whitelisted_tooltip=Adblock Plus ist auf dieser Seite deaktiviert. +type_label_stylesheet=Stylesheet +blocked_count_tooltip=?1? von ?2? +type_label_font=Schriftart +type_label_popup=Pop-up-Fenster +filter_regexp_tooltip=Dieser Filter ist entweder ein regulärer Ausdruck oder zu kurz zum Optimieren. Zu viele solche Filter könnten Ihren Browser verlangsamen. +action0_tooltip=Kontextmenü anzeigen. Mittlere Maustaste schaltet Adblock Plus ein und aus. +whitelisted_page=Adblock Plus wurde für die geöffnete Seite deaktiviert +remove_group_warning=Sind Sie sicher, dass Sie diese Filtergruppe entfernen möchten? +action1_tooltip=Liste blockierbarer Elemente öffnen bzw. schließen. Mittlere Maustaste schaltet Adblock Plus ein und aus. +type_label_xmlhttprequest=XML-Anfrage +active_tooltip=Adblock Plus ist aktiv, ?1? Filterabonnement(s) und ?2? eigene Filter werden verwendet. +type_label_document=Dokument +type_label_object_subrequest=Objekt-Anfrage +whitelistGroup_title=Ausnahmeregeln +disabled_tooltip=Adblock Plus ist deaktiviert. +filter_elemhide_duplicate_id=Nur ein ID-Wert des zu versteckenden Elements kann angegeben werden +type_label_object=Objekt +action2_tooltip=Adblock Plus Einstellungen öffnen. Mittlere Maustaste schaltet Adblock Plus ein und aus. +type_label_subdocument=Frame +clearStats_warning=Alle Trefferstatistiken werden zurückgesetzt und Filtertreffer werden in Zukunft nicht mehr gezählt. Wollen Sie fortfahren? +notification_antiadblock_message=Diese Seite hat in der Vergangenheit Adblock Plus-Nutzern gezielt Nachrichten angezeigt. Soll Adblock Plus Nachrichten dieser Art verstecken? +blocked_count_addendum=(außerdem Ausnahmen: ?1?, versteckte Elemente: ?2?) +subscription_invalid_location=Die eingegebene Adresse ist weder eine gültige Web-Adresse, noch ein gültiger Dateiname. +type_label_image=Grafik +remove_subscription_warning=Sind Sie sicher, dass Sie dieses Abonnement entfernen möchten? +type_label_other=Unbekannt +mobile_menu_enable=ABP: Aktivieren +type_label_media=Audio/Video +mobile_menu_disable_site=ABP: Deaktivieren auf ?1? +elemhideGroup_title=Regeln zum Verstecken von Elementen +mobile_menu_enable_site=ABP: Aktivieren auf ?1? +type_label_elemhide=Versteckt +newGroup_title=Neue Filtergruppe +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/overlay.dtd new file mode 100644 index 0000000..7007b24 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ja"> +<!ENTITY notification.button.no "&Nein"> +<!ENTITY sync.label "Adblock Plus-Einstellungen s&ynchonisieren"> +<!ENTITY whitelist.site.label "Deaktivieren: auf ?1?"> +<!ENTITY filters.label "Filterein&stellungen"> +<!ENTITY disable.label "Überall deaktivieren"> +<!ENTITY objecttab.title "Blockieren"> +<!ENTITY objecttab.tooltip "Klicken Sie hier, um dieses Objekt mit Adblock Plus zu blockieren"> +<!ENTITY menuitem.label "&Adblock Plus - Einstellungen"> +<!ENTITY objecttabs.label "Ta&b zum Blockieren von Flash und Java anzeigen"> +<!ENTITY sendReport.label "&Fehler auf dieser Seite melden"> +<!ENTITY whitelist.page.label "Deaktivieren: nur auf dieser Seite"> +<!ENTITY context.image.label "Adblock Plus: Grafik blockieren"> +<!ENTITY counthits.label "Filtertreffer &zählen"> +<!ENTITY opensidebar.label "&Blockierbare Elemente öffnen"> +<!ENTITY notification.button.close "&Schließen"> +<!ENTITY contribute.label "Zu Adblock Plus beitragen"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Frame blockieren"> +<!ENTITY blocked.tooltip "Blockierte Elemente auf dieser Seite:"> +<!ENTITY hideplaceholders.label "P&latzhalter blockierter Elemente verstecken"> +<!ENTITY showinstatusbar.label "In &Statusleiste anzeigen"> +<!ENTITY sidebar.title "Elemente der geöffneten Seite"> +<!ENTITY options.label "&Optionen"> +<!ENTITY context.object.label "Adblock Plus: Objekt blockieren"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Auf dieser Seite wieder aktivieren"> +<!ENTITY filters.tooltip "Am meisten angewandte Filter:"> +<!ENTITY closesidebar.label "&Blockierbare Elemente schließen"> +<!ENTITY showintoolbar.label "In Symbolleis&te anzeigen"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Audio-/Video-Element blockieren"> +<!ENTITY subscription.update.label "Filter aktualisieren"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/sendReport.dtd new file mode 100644 index 0000000..5dfc848 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/sendReport.dtd @@ -0,0 +1,105 @@ +<!ENTITY screenshot.undo.label "&Rückgängig"> +<!ENTITY issues.disabledgroups.description "Die folgenden Filterabonnements / Filtergruppen sind deaktiviert, hätten jedoch + einen Einfluss auf diese Webseite:"> +<!ENTITY showData.label "Berichtdaten anzeigen"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blockiert zu &viel"> +<!ENTITY issues.change.description "Ihre Einstellungen wurden geändert. Bitte laden Sie die Seite neu, um die Änderungen + jetzt zu testen. Bitte melden Sie den Fehler, falls das Problem durch die + Änderungen nicht gelöst wurde."> +<!ENTITY email.label "E-&Mail:"> +<!ENTITY issues.openPreferences.label "Filtereinstellungen öffnen"> +<!ENTITY sendPage.confirmation "Ihr Bericht wurde gespeichert. Sie können Ihn unter der folgenden Adresse aufrufen:"> +<!ENTITY copyLink.label "Lin&k zum Bericht kopieren"> +<!ENTITY issues.nofilters.description "Adblock Plus blockiert auf dieser Seite nichts. Das Problem, das Sie sehen, wurde + wahrscheinlich nicht von Adblock Plus verursacht."> +<!ENTITY sendPage.knownIssue "Das Problem, das Sie berichtet haben, ist möglicherweise bereits bekannt. Zusätzliche Information:"> +<!ENTITY typeSelector.other.description "Wählen Sie diese Option, falls Sie ein Problem mit Adblock Plus selber und nicht + mit dessen Filtern vermuten."> +<!ENTITY issues.disabledgroups.enable.label "Filterabonnement / Filtergruppe aktivieren"> +<!ENTITY typeWarning.override.label "Ich &verstehe und will trotzdem einen Fehlerbericht einsenden"> +<!ENTITY issues.disabled.enable.label "Adblock Plus aktivieren"> +<!ENTITY update.fixed.description "Die Aktualisierung Ihrer Filterabonnements hat das Problem wahrscheinlich + bereits gelöst. Bitte laden Sie die Seite neu und senden Sie den Fehlerbericht + noch einmal ab, falls das Problem weiterhin besteht."> +<!ENTITY anonymous.label "&Anonymer Beitrag"> +<!ENTITY reloadButton.label "Seite &neu laden"> +<!ENTITY recentReports.clear.label "Alle Be&richte löschen"> +<!ENTITY typeSelector.description "Dieser Assistent wird Sie durch die nötigen Schritte zum Melden eines Adblock Plus-Fehlers + leiten. Zuerst wählen Sie bitte die Art des Fehlers, den Sie auf dieser Seite + beobachten:"> +<!ENTITY screenshot.remove.label "&Private Informationen löschen"> +<!ENTITY issues.ownfilters.description "Einige der Filter, die auf dieser Seite angewandt wurden, sind benutzerdefiniert. + Bitte deaktivieren Sie Filter, die das Problem verursacht haben könnten:"> +<!ENTITY update.inProgress.description "Adblock Plus muss Ihre Filterabonnements aktualisieren, um sicherzustellen, + dass das Problem nicht bereits gelöst ist. Bitte warten Sie ..."> +<!ENTITY sendPage.retry.label "Noch einmal senden"> +<!ENTITY data.label "Bericht&daten:"> +<!ENTITY recentReports.label "Ihre zuletzt gesendeten Fehlerberichte"> +<!ENTITY typeWarning.description "Sie haben angedeutet, dass Sie ein allgemeines Problem mit Adblock Plus melden wollen + und kein Filterproblem. Bitte beachten Sie, dass solche Probleme am besten im + [link]Adblock Plus Forum[/link] gemeldet werden sollten. Den Fehlerberichts-Assistenten + sollte man nur als Ergänzung zu einer vorhandenen Diskussion verwenden. Sie müssen + den Link zu Ihrem Fehlerbericht angeben, weil ihn sonst niemand sehen wird. + Diesen automatisch generierten Link bekommen Sie nach dem Senden des Berichts."> +<!ENTITY issues.disabled.description "Adblock Plus ist deaktiviert, in diesem Zustand wird es nichts blockieren."> +<!ENTITY attachExtensions.label "Liste aktiver Er&weiterungen anhängen für den Fall, dass das Problem von einer anderen Erweiterung verursacht wird"> +<!ENTITY issues.nosubscriptions.add.label "Filterabonnement hinzufügen"> +<!ENTITY issues.disabledfilters.enable.label "Filter aktivieren"> +<!ENTITY issues.override.label "Die Einstellungen sind so &korrekt, mit dem Fehlerbericht fortfahren"> +<!ENTITY issues.nosubscriptions.description "Es scheint, dass Sie keine der fertigen Filterlisten abonniert haben. Ein solches + kostenloses Abonnement ist jedoch erforderlich, um automatisch Werbung zu entfernen."> +<!ENTITY typeSelector.falsePositive.description "Wählen Sie diese Option, falls auf der Seite wichtige Inhalte fehlen, die Seite + falsch angezeigt wird oder nicht korrekt funktioniert. Sie können feststellen, + ob Adblock Plus das Problem verursacht, indem Sie es vorübergehend deaktivieren."> +<!ENTITY typeSelector.other.label "An&derer Fehler"> +<!ENTITY emailComment.label "Wir empfehlen Ihnen, eine gültige e-Mail-Adresse einzugeben, damit wir Sie kontaktieren können, falls es Fragen zu Ihrem Bericht gibt. Es erlaubt uns, Ihre Beiträge zu erkennen und diesen höhere Prioritäten beizumessen."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus auf dieser Seite wieder aktivieren"> +<!ENTITY outdatedSubscriptions.description "Die folgenden Filterabonnements wurden mindesten zwei Wochen lang nicht + aktualisiert. Bitte aktualisieren Sie diese, bevor Sie einen Fehlerbericht + senden, das Problem könnte bereits gelöst sein."> +<!ENTITY dataCollector.description "Bitte warten Sie einige Augenblicke, während Adblock Plus die benötigten Daten sammelt."> +<!ENTITY sendButton.label "Bericht ab&senden"> +<!ENTITY comment.label "&Kommentar (optional):"> +<!ENTITY sendPage.errorMessage "Beim Senden des Berichts ist ein Fehler aufgetreten (Fehlercode "?1?"). + Bitte stellen Sie sicher, dass Sie mit dem Internet verbunden sind, und versuchen + Sie, den Bericht noch einmal zu senden. Falls das Problem bestehen bleibt, wenden + Sie sich an das [link]Adblock Plus Forum[/link]."> +<!ENTITY showRecentReports.label "Zuletzt gesendeten Fehlerberichte anzeigen"> +<!ENTITY commentPage.heading "Kommentar eingeben"> +<!ENTITY update.start.label "Aktualisierung starten"> +<!ENTITY issues.disabledfilters.description "Die folgenden Filter sind deaktiviert, hätten jedoch einen Einfluss auf diese Webseite:"> +<!ENTITY screenshot.description "Dieselbe Seite kann bei verschiedenen Leuten verschieden aussehen. Deswegen könnte es + hilfreich sein, wenn Sie zu Ihrem Bericht ein Bild der Webseite hinzufügen. Sie können + Teile der Seite entfernen, falls sie private Informationen enthalten. Ebenso können + Sie Stellen markieren, wo das Problem deutlich wird. Klicken Sie dafür die entsprechende + Taste und markieren Sie den Bereich auf dem Bild mit der Maus."> +<!ENTITY screenshot.attach.label "Dieses &Bild meinem Bericht hinzufügen"> +<!ENTITY issues.whitelist.description "Adblock Plus ist derzeit deaktiviert auf der Seite, für die Ihr Bericht gesendet werden + soll. Bitte aktivieren Sie Adblock Plus wieder und laden Sie die Seite neu, bevor Sie + den Fehler melden. Das wird die Untersuchung des Problems vereinfachen."> +<!ENTITY typeSelector.falseNegative.label "Eine &Werbeeinblendung wird von Adblock Plus nicht blockiert"> +<!ENTITY typeSelector.heading "Fehlerart wählen"> +<!ENTITY anonymity.warning "Es ist uns nicht möglich sich erneut an Sie zu wenden und wir werden Ihrem Bericht eine niedrigere Priorität beimessen."> +<!ENTITY wizard.title "Fehler melden"> +<!ENTITY issues.ownfilters.disable.label "Filter deaktivieren"> +<!ENTITY commentPage.description "Unten können Sie einen Kommentar eingeben, um uns zu helfen, das Problem zu verstehen. + Das ist zwar optional, ist jedoch empfohlen, falls das Problem nicht offensichtlich ist. + Sie können auch die Daten Ihres Berichts überprüfen, bevor sie gesendet werden."> +<!ENTITY comment.lengthWarning "Ihr Kommentar ist länger als 1000 Zeichen. Nur die ersten 1000 Zeichen werden gesendet."> +<!ENTITY typeSelector.falseNegative.description "Wählen Sie diese Option, falls Werbung auf der Seite angezeigt wird, obwohl + Adblock Plus aktiviert ist."> +<!ENTITY sendPage.waitMessage "Bitte warten Sie, während Adblock Plus Ihren Bericht sendet."> +<!ENTITY dataCollector.heading "Willkommen zum Fehlerberichts-Assistenten"> +<!ENTITY screenshot.heading "Bildschirmfoto hinzufügen"> +<!ENTITY sendPage.heading "Bericht absenden"> +<!ENTITY issues.subscriptionCount.description "Es scheint, dass Sie zu viele Filterlisten abonniert haben. Das ist nicht + empfohlen, weil die Wahrscheinlichkeit von Problemen dadurch sehr stark + ansteigt. Wir können außerdem Ihren Fehlerbericht nicht annehmen, weil unklar + ist, welche Filterliste für das Problem verantwortlich ist. Bitte entfernen + Sie alle bis auf die wirklich notwendigen Filterabonnements und überprüfen + Sie dann, ob das Problem immer noch auftritt."> +<!ENTITY screenshot.mark.label "Proble&m markieren"> +<!ENTITY privacyPolicy.label "Datenschutzerklärung"> +<!ENTITY issues.description "Adblock Plus hat Probleme in Ihren Einstellungen gefunden, die für das vorliegende + Problem verantwortlich sein könnten oder eine Untersuchung des Problems behindern + würden."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/sidebar.dtd new file mode 100644 index 0000000..cac33e3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Position des Elements aufzeigen"> +<!ENTITY address.label "Adresse"> +<!ENTITY context.open.label "Adresse in neuem Tab öffnen"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Herkunft des Filters:"> +<!ENTITY noitems.label "Keine blockierbaren Elemente"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Größe:"> +<!ENTITY reattach.label "Ankoppeln"> +<!ENTITY search.label "&Suchen:"> +<!ENTITY docDomain.thirdParty "(Anfrage zu einer Drittseite)"> +<!ENTITY filterSource.label "Filterquelle"> +<!ENTITY tooltip.docDomain.label "Ursprungsdomain:"> +<!ENTITY context.copy.label "Adresse des Elements kopieren"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Filter ?1? deaktivieren"> +<!ENTITY context.copyFilter.label "Filter kopieren"> +<!ENTITY context.block.label "Dieses Element blockieren"> +<!ENTITY context.enablefilter.label "Filter ?1? wieder aktivieren"> +<!ENTITY detach.label "Abkoppeln"> +<!ENTITY whitelisted.label "Deaktiviert auf dieser Seite"> +<!ENTITY context.disablefilteronsite.label "Diesen Filter auf ?1? deaktivieren"> +<!ENTITY detached.title "Adblock Plus: Elemente der geöffneten Seite (abgekoppelt)"> +<!ENTITY docDomain.firstParty "(Anfrage zu derselben Domain)"> +<!ENTITY tooltip.type.whitelisted "(Ausnahmeregel aktiv)"> +<!ENTITY tooltip.filter.label "Angewandter Filter:"> +<!ENTITY tooltip.filter.disabled "(deaktiviert)"> +<!ENTITY context.editfilter.label "Angewandten Filter bearbeiten"> +<!ENTITY tooltip.type.blocked "(blockiert)"> +<!ENTITY size.label "Größe"> +<!ENTITY context.whitelist.label "Ausnahmeregel für das Element hinzufügen"> +<!ENTITY context.selectAll.label "Alles auswählen"> +<!ENTITY state.label "Status"> +<!ENTITY docDomain.label "Ursprungsdomain"> +<!ENTITY tooltip.address.label "Addresse:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/subscriptionSelection.dtd new file mode 100644 index 0000000..ee00470 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/de/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Filterabonnement »?1?« auc&h hinzufügen"> +<!ENTITY list.download.failed "Adblock Plus konnte die Liste der Filterabonnements nicht herunterladen."> +<!ENTITY list.download.retry "Nochmal versuchen"> +<!ENTITY title.label "Be&zeichnung des Abonnements:"> +<!ENTITY list.download.website "Internetseite ansehen"> +<!ENTITY supplementMessage "Dieses Filterabonnement sollte in Verbindung mit dem Filterabonnement »?1?« verwendet werden."> +<!ENTITY viewList.label "Filter ansehen"> +<!ENTITY visitHomepage.label "Webseite der Filterliste besuchen"> +<!ENTITY addSubscription.label "Filterabonnement hinzufügen"> +<!ENTITY dialog.title "Filterabonnement für Adblock Plus hinzufügen"> +<!ENTITY location.label "Ad&resse der Filterliste:"> +<!ENTITY fromWeb.description "Bitte bestätigen Sie, dass Sie dieses Filterabonnement hinzufügen möchten. Die Bezeichnung und Adresse der Abonnements können vor dem Hinzufügen geändert werden."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/composer.dtd new file mode 100644 index 0000000..1b3fd03 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "na kóń&cu adrese"> +<!ENTITY domainRestriction.label "Wobgranicowaś na &domenu:"> +<!ENTITY collapse.default.no.label "Standard wužywaś (ně)"> +<!ENTITY firstParty.label "&Jano prědny bok"> +<!ENTITY preferences.label "&Eksistěrujuce filtry pokazaś..."> +<!ENTITY pattern.label "Muster pytaś"> +<!ENTITY thirdParty.label "Jano &tśeśi bok"> +<!ENTITY filter.label "Nowy &filter:"> +<!ENTITY collapse.label "B&lokěrowane złožyś:"> +<!ENTITY match.warning "Muster, kótaryž sćo zapódał, wěcej njewótpowědujo adresy, kótaraž ma se blokěrowaś/do běłeje lisćiny pśewześ a njezmějo žedno wustatkowanje na nju."> +<!ENTITY anchor.start.label "na zac&hopjeńku adrese"> +<!ENTITY matchCase.label "&Na wjelikopisanje źiwaś"> +<!ENTITY custom.pattern.label "&Swójski:"> +<!ENTITY unselectAllTypes.label "Žeden wubraś"> +<!ENTITY type.whitelist.label "&Wuwześowe pšawidło"> +<!ENTITY regexp.warning "Muster, kótaryž sćo zapódał, buźo se ako regularny wuraz interpretěrowaś, kótaryž njedajo se pśez Adblock Plus statkownje pśeźěłaś a mógł waš wobglědowak spomałšyś. Jolic njocośo regularny wuraz wužywaś, pśidajśo gwězdku (*) ke kóńcoju mustra."> +<!ENTITY dialog.title "Filtrowe pšawidło Adblock Plus pśidaś"> +<!ENTITY basic.label "Zakładny naglěd"> +<!ENTITY type.filter.label "&Blokěrujucy filter"> +<!ENTITY types.label "Na typy nałožyś:"> +<!ENTITY shortpattern.warning "Muster, kótaryž sćo zapódał, jo za optiměrowanje pśekrotko a mógł waš wobglědowak spomałšyś. Pśiraźujo se, až wubjerjośo dlěšy znamuškowy rjeśazk za toś ten filter, aby wy Adblock Plus dowólił, filter statkownjej pśeźěłał."> +<!ENTITY collapse.yes.label "Jo"> +<!ENTITY anchors.label "Jano muster akceptěrowaś:"> +<!ENTITY collapse.default.yes.label "Standard wužywaś (jo)"> +<!ENTITY domainRestriction.help "Wužyjśo toś tu opciju, aby wy pódał jadnu domenu abo někotare domeny, kótarež wótdźěluju se pśez wertikalnu ceru (|). Filter buźo se jano na wubrane domeny nałožowaś. Tilda (~) pśed domenowym mjenim pódawa, až filter njebuźo se na tu domenu nałožowaś."> +<!ENTITY accept.label "Filter pśidaś"> +<!ENTITY options.label "Opcije"> +<!ENTITY disabled.warning "Adblock Plus jo tuchylu znjemóžnjony. Móžośo hyšći filtry pśidaś, ale njebudu se nałožowaś, snaźkuli [link]zmóžnijośo Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "na zac&hopjeńku mjenja domeny"> +<!ENTITY collapse.no.label "Ně"> +<!ENTITY selectAllTypes.label "Wšykne wubraś"> +<!ENTITY advanced.label "Rozšyrjony naglěd"> +<!ENTITY pattern.explanation "Muster móžo źěl adrese byś; gwězdki (*) funkcioněruju ako zastupujuce symbole. Filter buźo se janž na adrese nałožowaś, kótarež wótpowěduju pódanemu mustroju."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/filters.dtd new file mode 100644 index 0000000..35ed52d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Wšykne waše swójske filtry budu se pśez wopśimjeśe wubraneje dataje narownowaś. Cośo dalej cyniś?"> +<!ENTITY slow.column "&Pómałe filtry"> +<!ENTITY enabled.column "Z&móžnjony"> +<!ENTITY subscription.lastDownload.checksumMismatch "Njeraźiło, wopacna kontrolna suma"> +<!ENTITY noFiltersInGroup.text "Wubrana kupka jo prozna."> +<!ENTITY subscription.actions.label "Akcije"> +<!ENTITY filter.selectAll.label "Wšykno wubraś"> +<!ENTITY backupButton.label "&Zawěsćiś a wótnowiś"> +<!ENTITY restore.minVersion.warning "Warnowanje: Dataja jo se pśez nowšu wersiju Adblock Plus napórała. Wy by měł na nejnowšu wersiju Adblock Plus aktualizěrowaś, nježli až wótnowijośo toś tu dataju."> +<!ENTITY restore.error "Daty dataje njedaju se pśeźěłaś, jo móžno, až wóna njejo zawěsćeńska dataja Adblock Plus?"> +<!ENTITY sort.ascending.label "Sortěrow&ański pórěd A > Z"> +<!ENTITY sort.label "&Sortěrowaś pó"> +<!ENTITY subscription.source.label "Filtrowa lisćina"> +<!ENTITY hitcount.column "&Trjefarje"> +<!ENTITY noFilters.text "Njejsćo žedne swójske filtry."> +<!ENTITY backup.custom.title "Jano swójske filtry"> +<!ENTITY subscription.external.label "Pśez druge rozšyrjenje aktualizěrowany"> +<!ENTITY subscription.delete.label "Lašowaś"> +<!ENTITY noGroupSelected.text "Musyśo filtrowu kupku wubraś, nježli až jeje filtry daju se pokazaś."> +<!ENTITY filter.cut.label "Wurězaś"> +<!ENTITY restore.default.label "Zawěsćeńsku kopiju z ?1? wótnowiś"> +<!ENTITY subscription.lastDownload.inProgress "Ześěgujo se..."> +<!ENTITY subscriptions.tab.label "Filtrowe abonementy"> +<!ENTITY sort.descending.label "Sortěrowański pórěd &Z > A"> +<!ENTITY filters.remove.warning "Cośo napšawdu wšykne wubrane filtry wótpóraś?"> +<!ENTITY filter.delete.label "Lašowaś"> +<!ENTITY addSubscriptionAdd.label "Pśidaś"> +<!ENTITY viewMenu.label "Naglěd"> +<!ENTITY subscription.lastDownload.unknown "Njejo nic k dispoziciji"> +<!ENTITY addSubscriptionCancel.label "Pśetergnuś"> +<!ENTITY subscription.enabled.label "Zmóžnjony"> +<!ENTITY noSubscriptions.text "Njejsćo hyšći žedne filtrowe abonementy pśidał. Adblock Plus njebuźo bjez filtrow nic blokěrowaś, pšosym wužyjśo "Filtrowy abonement pśidaś", aby filter přidał."> +<!ENTITY subscription.update.label "Filtry akutalizěrowaś"> +<!ENTITY dialog.title "Adblock Plus - filtrowe nastajenja"> +<!ENTITY addFilter.label "Filter pśi&daś"> +<!ENTITY subscription.minVersion.warning "Toś ten filtrowy abonement pomina se nowšu wersiju Adblock Plus, wy by měł na nejnowšu wersiju Adblock Plus aktualizěrowaś."> +<!ENTITY subscription.lastDownload.invalidURL "Njeraźiło, žedna płaśiwa adresa"> +<!ENTITY backup.error "Pśi pisanju filtrow do dataje jo zmólka namakała. Zawěsććo, až dataja njejo pśeśiwo pisanjeju šćitana abo njewužywa se pśez drugi program."> +<!ENTITY filter.moveUp.label "Górjej"> +<!ENTITY addGroup.label "Filtrowu &kupku pśidaś"> +<!ENTITY filter.edit.label "Wobźěłaś"> +<!ENTITY subscription.showHideFilters.label "Filtry pokazaś/schowaś"> +<!ENTITY acceptableAds2.label "De&centne wabjenje dowóliś"> +<!ENTITY addSubscriptionOther.label "Drugi abonement pśidaś"> +<!ENTITY close.label "Zacyniś"> +<!ENTITY sort.none.label "&Njesortěrowany"> +<!ENTITY filter.actions.label "Filtrowe akcije"> +<!ENTITY filter.copy.label "Kopěrowaś"> +<!ENTITY filter.moveDown.label "Dołoj"> +<!ENTITY filter.resetHitCounts.label "Statistiku slědk stajiś"> +<!ENTITY readMore.label "Dalšne informacije"> +<!ENTITY subscription.moveUp.label "Górjej"> +<!ENTITY addSubscription.label "&Filtrowy abonement pśidaś"> +<!ENTITY subscription.homepage.label "Startowy bok"> +<!ENTITY backup.complete.title "Wšykne filtry a abonementy"> +<!ENTITY restore.own.label "Swójsku zawěsćeńsku kopiju wótnowiś"> +<!ENTITY restore.complete.warning "Wšykne waše filtrowe nastajenja budu se pśez wopśimjeśe wubraneje dataje narownowaś. Cośo dalej cyniś?"> +<!ENTITY filters.tab.label "Swójske filtry"> +<!ENTITY backup.label "Nowu zaěsćeńsku kopiju napóraś"> +<!ENTITY find.label "&Pytaś"> +<!ENTITY subscription.moveDown.label "Dołoj"> +<!ENTITY subscription.lastDownload.connectionError "Njeraźiło, ześěgnjeńska zmólka"> +<!ENTITY subscription.lastDownload.success "Wuspěch"> +<!ENTITY subscription.lastDownload.invalidData "Njeporaźiło, žedna płaśiwa filtrowa lisćina"> +<!ENTITY filter.paste.label "Zasunuś"> +<!ENTITY subscription.disabledFilters.enable "Znjemóžnjone filtry zmóžniś"> +<!ENTITY lasthit.column "S&lědny trjefaŕ"> +<!ENTITY subscription.editTitle.label "Titel wobźěłaś"> +<!ENTITY subscription.disabledFilters.warning "Někotare filtry w toś tom abonomenśe su znjemóžnjone."> +<!ENTITY filter.column "&Filtrowe pšawidło"> +<!ENTITY subscription.lastDownload.label "Slědne ześěgnjenje:"> +<!ENTITY viewList.label "Lisćinu pokazaś"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/firstRun.properties new file mode 100644 index 0000000..fa8cf6a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Pśeglědujśo priwatnje, z tym až znjemóžnjujośo slědowanje resp. zatajaśo swóje slědy pśed wabjeńskimi pśedewześami, kótarež by rady kuždemu z wašych pógibow slědowali. +firstRun_toggle_off=WUŠALTOWANY +firstRun_feature_tracking=Slědowanje znjemóžniś +firstRun_feature_malware=Škódnu software blokěrowaś +firstRun_title=Adblock Plus jo se instalěrował +firstRun_acceptableAdsExplanation=My by rady websedła pózbuźili, wuwěrne, decentne wabjenje wužywaś. Togodla smy <a>kšute směrnice</a> póstajili, aby my akceptabelne wabjenje identificěrowali, kótarež pokazujo se w standardnych nastajenjach. Jolic cośo weto wšykne wabjenje blokěrowaś, móžośo jo w běgu mało sekundow <a>znjemóžniś</a>. +firstRun_toggle_on=ZAŠALTOWANY +firstRun_contributor_credits=Źěkowanje sobustatkujucym +firstRun_dataCorruptionWarning=Pokazujo se toś ten bok dalej? <a>Klikniśo how!</a> +firstRun_acceptableAdsHeadline=Gramne wabjenje buźo se něnto blokěrowaś +firstRun_share=Informěrujśo swóje pśijaśele +firstRun_share_headline=<a>Pódajśo nam ruku</a>, aby my web k lěpšemu městnoju cynili +firstRun_features=Adblock Plus móžo wěcej cyniś ako wabjenje blokěrowaś +firstRun_feature_malware_description=Cyńśo swójo pśeglědowanje wěsćejše, z tym až blokěrujośo znate domeny złosneje softwary. +firstRun_feature_social_description=Wótpórajśo swóju pśeglědowańsku aktiwitu z tłocaškow socialnych medijow, ako na pś. tłocaška "Spódoba se mě" na Facebooku, kótarež pokazuju se na webbokach a slěduju wašomu zaźaržanjeju. +firstRun_donate=pósćiś +firstRun_donate_label=Pódprějśo naš projekt +firstRun_feature_social=Tłocaški za socialne medije wótpóraś +firstRun_legacySafariWarning=Wužywaśo staru wersiju Safari, kótaraž njepódpěra se pśez Adblock Plus. Wón njebuźo snaź korektnje funkcioněrowaś abo by mógał wužywarske dožywjenje na wěstych websedłach kazyś. Pśiraźujomy wuraznje, až pak aktualizěrujośo na Safari 6.1.1 abo wušu wersiju (stoj za Mac OS X 10.8 Mountain Lion k dispoziciji) abo Safari 7.0.1 abo wušu wersiju (na OS X 10.9 Mavericks) pak wužywaśo nejnowšu wersiju Mozilla Firefox, Google Chrome abo Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/global.properties new file mode 100644 index 0000000..3b6e734 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Žedne blokěrujobne zapiski na toś tom boku +action3_tooltip=Kliknuś, aby se Adblock Plus zmóžnił/znjemóžnił. +notification_antiadblock_title=Celowe powěźeńki schowaś? +type_label_script=skript +filter_elemhide_nocriteria=Njejsu žedne kriterije pódane, aby element spóznał, kótaryž ma se schowaś +blockingGroup_title=Pšawidła za blokěrowanje wabjenja +whitelisted_tooltip=Adblock Plus jo znjemóžnjony na aktualnem boku. +type_label_stylesheet=stilowa pśedłoga +blocked_count_tooltip=?1? z ?2? +type_label_font=pismo +type_label_popup=Wuskokujuce wokno +filter_regexp_tooltip=Toś ten filter jo pak regularny wuraz pak pśekrotko za optiměrowanje. Pśewjele toś tych filtrow by mógło waš wobglědowak spomałšyś. +action0_tooltip=Kliknuś, aby kontekstowy meni do prědka pśinjasć, ze srjejźneju tastu kliknuś, aby zmóžnił(znjemóžnił. +whitelisted_page=Adblock Plus jo se za aktualny bok znjemóžnił +remove_group_warning=Cośo toś tu kupku napšawdu wótpóraś? +action1_tooltip=Kliknuś, aby se blokěrujobne zapiski wócynili/zacynili, ze srjejźneju tastu kliknuś, aby zmóžnił/znjemóžnił. +type_label_xmlhttprequest=XML-napšašowanje +active_tooltip=Adblock Plus jo zmóžnjony, ?1? filtrowe abonementy a ?2? swójske filtry se wužywaju. +type_label_document=dokument +type_label_object_subrequest=objektowe pódnapšašowanje +whitelistGroup_title=Wuwześowe pšawidła +disabled_tooltip=Adblock Plus jo znjemóžnjony. +filter_elemhide_duplicate_id=Jano jaden ID elementa, kótaryž ma se schowaś, dajo se pódaś +type_label_object=objekt +action2_tooltip=Kliknuś, aby se nastajenja wócynili, ze srjejźneju tastu kliknuś, aby zmóžnił/znjemóžnił. +type_label_subdocument=wobłuk +clearStats_warning=To stajijo wšu filtrowu statistiku slědk a znjemóžnijo licenje filtrowych wótpowědnikow. Cośo pókšacowaś? +notification_antiadblock_message=Toś to sedło jo za to znate, až pokazujo celowe powěźeńki za wužywarje Adblock Plus. Cośo, až Adblock Plus chowa celowe powěźeńki? +blocked_count_addendum=(teke w běłej lisćinje: ?1?, schowane: ?2?) +subscription_invalid_location=Městno filtroweje lisćiny njejo daniž płaśiwy URL daniž płaśiwe datajowe mě. +type_label_image=wobraz +remove_subscription_warning=Cośo toś ten abonement napšawdu wótpóraś? +type_label_other=druge +mobile_menu_enable=ABP: Zmóžniś +type_label_media=awdio/wideo +mobile_menu_disable_site=ABP: Na ?1? znjemóžniś +elemhideGroup_title=Pšawidła za schowanje elementow +mobile_menu_enable_site=ABP: Na ?1? zmóžniś +type_label_elemhide=schowany +newGroup_title=Nowa filtrowa kupka +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/overlay.dtd new file mode 100644 index 0000000..b5e7b62 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Jo"> +<!ENTITY notification.button.no "&Ně"> +<!ENTITY sync.label "Nastajenja za syn&chronizěrowanje Adblock Plus"> +<!ENTITY whitelist.site.label "Na ?1? znjemóžniś"> +<!ENTITY filters.label "&Filtrowe nastajenja"> +<!ENTITY disable.label "Wšuźi znjemóžniś"> +<!ENTITY objecttab.title "Blokěrowaś"> +<!ENTITY objecttab.tooltip "Klikniśo how, aby toś ten objekt z Adblock Plus blokěrował"> +<!ENTITY menuitem.label "Adblock Plus - &Nastajenja"> +<!ENTITY objecttabs.label "&Rejtarki wó Flash a Java pokazaś"> +<!ENTITY sendReport.label "&Problem na toś tom boku k wěsći daś"> +<!ENTITY whitelist.page.label "Jano na toś tom boku znjemóžniś"> +<!ENTITY context.image.label "Adblock Plus: Wobraz blokěrowaś"> +<!ENTITY counthits.label "Fi&ltrowe trjefarje licyś"> +<!ENTITY opensidebar.label "B&lokěrujobne zapiski wócyniś"> +<!ENTITY notification.button.close "&Zacyniś"> +<!ENTITY contribute.label "K Adblock Plus pśinosowaś"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Wobłuk blokěrowaś"> +<!ENTITY blocked.tooltip "Blokěrowane zapiski na toś tom boku:"> +<!ENTITY hideplaceholders.label "Na&městniki blokěrowanych elementow schowaś"> +<!ENTITY showinstatusbar.label "W &statusowej lejstwje pokazaś"> +<!ENTITY sidebar.title "Blokěrujobne zapiski na aktualnem boku"> +<!ENTITY options.label "&Opcije"> +<!ENTITY context.object.label "Adblock Plus: Objekt blokěrowaś"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Na toś tom boku zasej zmóžniś"> +<!ENTITY filters.tooltip "Nejaktiwnjejše filtry:"> +<!ENTITY closesidebar.label "B&lokěrujobne zapiski zacyniś"> +<!ENTITY showintoolbar.label "W symbolowej rě&dce pokazaś"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Awdio/Wideo blokěrowaś"> +<!ENTITY subscription.update.label "Filtry akutalizěrowaś"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/sendReport.dtd new file mode 100644 index 0000000..3637b33 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Anulěrowaś"> +<!ENTITY issues.disabledgroups.description "Slědujuce filtrowe abonementy/filtrowe kupki su znjemóžnjone, weto by mógli wustatkowanje na toś ten bok měś:"> +<!ENTITY showData.label "Daty rozpšawy pokazaś"> +<!ENTITY typeSelector.falsePositive.label "Ad&block Plus blokěrujo pśewjele"> +<!ENTITY issues.change.description "Waša konfiguracija jo se změniła. Pšosym zacytajśo bok znowego, aby změny testował a wótpósćelśo rozpšawu, jolic problem njejo se pśez změny rozwězał."> +<!ENTITY email.label "&E-mail:"> +<!ENTITY issues.openPreferences.label "Filtrowe nastajenja wócyniś"> +<!ENTITY sendPage.confirmation "Waša rozpšawa jo se składowała. Móžośo ju pód slědujuceju adresu namakaś:"> +<!ENTITY copyLink.label "Wót&kaz rozpšawy kopěrowaś"> +<!ENTITY issues.nofilters.description "Adblock Plus njeblokěrujo nic na aktualnem boku. Problem, kótaryž sćo k wěsći dał, nejskerjej njama z Adblock Plus cyniś."> +<!ENTITY sendPage.knownIssue "Problem, wó kótaryž sćo rozpšawił, jo nejskerjej južo znaty. Dalšne informacije:"> +<!ENTITY typeSelector.other.description "Wubjeŕśo toś tu opciju, jolic gódaśo skerjej problem z Adblock Plus samym ako z jogo filtrami."> +<!ENTITY issues.disabledgroups.enable.label "Filtrowy abonement/filtrowu kupku zmóžniś"> +<!ENTITY typeWarning.override.label "Roz&měju a cu rozpšawu weto pósłaś"> +<!ENTITY issues.disabled.enable.label "Adblock Plus zmóžniś"> +<!ENTITY update.fixed.description "Aktualizacije za waše filtrowe abonementy su nejskerjej problem rozwězali, kótaryž sćo k wěsći dał. Pšosym zacytajśo bok znowego, wopytajśo hyšći raz a klikniśo zasej na 'Hyšći raz pósłaś', jolic problem hyšći wobstoj."> +<!ENTITY anonymous.label "&Anonymne słanje"> +<!ENTITY reloadButton.label "&Bok znowego zacytaś"> +<!ENTITY recentReports.clear.label "&Wšykne rozpšawy wótpóraś"> +<!ENTITY typeSelector.description "Toś to wokno buźo wam pśez kšace wjasć, kótarež su trěbne za słanje wopisanja problemow z Adblock Plus. Wubjeŕśo pšosym nejpjerwjej družynu problema, na kótaryž sćo na toś tom boku starcył:"> +<!ENTITY screenshot.remove.label "&Sensibelne daty wótpóraś"> +<!ENTITY issues.ownfilters.description "Někotare filtry, kótarež nałožuju se na toś ten bok, su wót wužywarja definěrowane. Pšosym znjemóžniśo filtry, kótarež by mógli problem zawinowaś:"> +<!ENTITY update.inProgress.description "Adblock Plus musy waše filtrowe abonementy aktualizěrowaś, aby zawěsćił, až problem njejo se hyšći rozwězał. Pšosym cakajśo..."> +<!ENTITY sendPage.retry.label "Hyšći raz pósłaś:"> +<!ENTITY data.label "&Daty rozpšawy:"> +<!ENTITY recentReports.label "Waše njedawno wótpósłane rozpšawy"> +<!ENTITY typeWarning.description "Sćo pódał, až maš skerjej powšykny problem z Adblock Plus ako problem z filtrami. Pšosym źiwajśo na to, až take problemy by měli se nejlěpjej we [link]forumje Adblock Plus[/link] k wěsći daś. Wy by měł jano rozpšawniski asistent za problemy wužywaś, aby eksistěrujucu diskusiju wudopołnił, dokulaž nichten njewopóznajo se wašu rozpšawu, snaźkuli wy by wótkaz na njo dodaś. Awtomatiski napórany wótkaz dodajo se pó słanju rozpšawy."> +<!ENTITY issues.disabled.description "Adblock Plus jo znjemóžnjony, njebuźo blokěrowaś nic w aktualnem statusu."> +<!ENTITY attachExtensions.label "&Lisćinu aktiwnych rozšyrjenjow k rozpšawje pśipowjesás, jolic konflikt z rozšyrjenim jo pśicyna problema"> +<!ENTITY issues.nosubscriptions.add.label "Filtrowy abonement pśidaś"> +<!ENTITY issues.disabledfilters.enable.label "Filter zmóžniś"> +<!ENTITY issues.override.label "Kon&figuracija jo korektna, z rozpšawu pókšacowaś"> +<!ENTITY issues.nosubscriptions.description "Zda se, až njejśco žedne gótowe lisćiny filtrow aboněrował, kótarež awtomatiski wótwónoźuju njewitane wopśimjeśe."> +<!ENTITY typeSelector.falsePositive.description "Wubjeŕśo toś tu opciju, jolic wažne wopśimjeśe felujo bokoju, jolic bok zwobraznja se wopak abo porědnje njefunkcioněrujo. Móžośo zwěsćiś, lěc Adblock Plus jo wina na toś tom problemje, gaž znjemóžnijośo jen nachylu."> +<!ENTITY typeSelector.other.label "D&rugi problem"> +<!ENTITY emailComment.label "Pśiraźujomy wam, płaśiwu e-mailowu adresu zapódaś, aby mógli z wami do zwiska stajiś, jolic su pšašanja wó wašej rozpšawje. To zmóžnijo nam, waše pśinoski pśipóznaś a jim wušu prioritu daś."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus na toś tom boku znowego zmóžniś"> +<!ENTITY outdatedSubscriptions.description "Slědujuce filtrowe abonementy njejsu se wót nanejmjenjej dweju tyźenjowu zaktualizěrowali. Pšosym zaktualizěrujśo toś te abonementy, pjerwjej až pósćeloš powěźeńku. Problem by mógał pón južo rozwězany byś."> +<!ENTITY dataCollector.description "Pšosym pócakajśo chylku, mjaztym až Adblock Plus wótwołujo trěbne daty."> +<!ENTITY sendButton.label "Ro&zpšawu pósłaś"> +<!ENTITY comment.label "&Komentar (opcionalny)"> +<!ENTITY sendPage.errorMessage "Wopyt, rozpšawu słaś, jo se ze zmólkowym kodom "?1?" njeraźił. Pšosym zawěsććo, až sćo z internetom zwězany a wopytajśo hyšći raz. Jolic problem dalej eksistěrujo, pšosćo pšosym w [link]forumje Adblock Plus[/link] wó pomoc."> +<!ENTITY showRecentReports.label "Njedawno wótpósłane rozpšawy pokazaś"> +<!ENTITY commentPage.heading "Komentar zapódaś"> +<!ENTITY update.start.label "Aktualizaciju něnto startowaś"> +<!ENTITY issues.disabledfilters.description "Slědujuce filtry su znjemóžnjone, weto by mógli wustatkowanje na toś ten bok měś:"> +<!ENTITY screenshot.description "Ten samy bok móžo rozdźělnje za rozdźělnych luźi wuglědaś. Móžo nam pomagaś, problem rozměś, jolic pśidajo wašej rozpšawje foto wobrazowki . Móžośo wótrězki wótpóraś, kótarež wopśimujo sensibelne informacije a teke wobłuki markěrowaś, źož se problem pokazujo. Aby to cynił, klikniśo na wótpowědny tłócašk a wubjeŕśo wótrězk wobraza ze swójeju myšku."> +<!ENTITY screenshot.attach.label "W&obraz boka rozpšawje pśidaś"> +<!ENTITY issues.whitelist.description "Adblock Plus jo tuchylu na boku, wó kótaremž rozpšawjaśo, znjemóžnjony. Pšosym zmóžniśo jen znowego a zacytajśo bok, nježli až wótposćelośo rozpšawu, aby analyzěrowanje toś togo problema pódprěł."> +<!ENTITY typeSelector.falseNegative.label "Adb&lock Plus njeblokěrujo wabjenje"> +<!ENTITY typeSelector.heading "Wubjeŕśo problemowy typ"> +<!ENTITY anonymity.warning "Njamóžomy se zasej a was wobrośiś a dajomy nejskerjej wašej rozpšawje nišu prioritu."> +<!ENTITY wizard.title "Rozpšawniski asistent za problemy"> +<!ENTITY issues.ownfilters.disable.label "Filter znjemóžniś"> +<!ENTITY commentPage.description "Slědujuce tekstowe pólo zmóžnja wam, komentar zapódaś, aby wy nam pomagał, problem rozměś. Toś ten kšac jo opcionalny, ale pśiraźujo se, jolic problem njejo widobny. Móžośo teke daty rozpšawy pśeglědaś, nježli až se sćelo."> +<!ENTITY comment.lengthWarning "Dłujkosć wašogo komentara pśekšaca 1000 znamuškow. Jano prědne 1000 znamuškow budu se słaś."> +<!ENTITY typeSelector.falseNegative.description "Wubjeŕśo toś tu opciju, jolic wabjenje se zwobraznja, lěcrownož Adblock Plus jo zmóžnjony."> +<!ENTITY sendPage.waitMessage "Pšosym cakajśo, mjaztym až Adblock Plus sćelo wašu rozpšawu."> +<!ENTITY dataCollector.heading "Witajśo do rozpšawniskego asistenta za problemy"> +<!ENTITY screenshot.heading "Foto wobrazowki pśidaś"> +<!ENTITY sendPage.heading "Rozpšawu słaś"> +<!ENTITY issues.subscriptionCount.description "Zda se, až sćo pśewjele filtrowych abonementow aboněrował. Toś to nastajenje se njepśiraźujo, dokulaž wjelgin pówušujo wěrjepódobnosć problemow. Teke njamóžomy waš problemowe wopisanje akceptěrowaś, dokulaž jo njejasnje, kótary awtor filtrowego abonementa ma jadnaś. Pšosym wótwónoźćo wšykne mimo napšawdu trěbnych filtrowych abonementow a testujśo, lěc problem daleje nastawa."> +<!ENTITY screenshot.mark.label "&Problem markěrowaś"> +<!ENTITY privacyPolicy.label "Pšawidła priwatnosći"> +<!ENTITY issues.description "Adblock Plus jo problemy z wašeju konfiguraciju namakał, kótarež by mógli na toś ten problem wina byś abo póśěźuju analyzěrowanje problema."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/sidebar.dtd new file mode 100644 index 0000000..edbbdb6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Kšomy zapiska pokazaś"> +<!ENTITY address.label "Adresa"> +<!ENTITY context.open.label "W nowem rejtarku wócyniś"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Filtrowe žrědło:"> +<!ENTITY noitems.label "Žedne blokěrujobne zapiski"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Wjelikosć:"> +<!ENTITY reattach.label "Zasej pśipowjesyś"> +<!ENTITY search.label "&Pytaś:"> +<!ENTITY docDomain.thirdParty "(tśeśi part)"> +<!ENTITY filterSource.label "Filtrowe žrědło"> +<!ENTITY tooltip.docDomain.label "Dokumentowe žrědło:"> +<!ENTITY context.copy.label "Adresu zapiska kopěrowaś"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Filter ?1? znjemóžniś"> +<!ENTITY context.copyFilter.label "Filter kopěrowaś"> +<!ENTITY context.block.label "Toś ten zapisk blokěrowaś"> +<!ENTITY context.enablefilter.label "Filter ?1? zasej zmóžniś"> +<!ENTITY detach.label "Wótpowjesyś"> +<!ENTITY whitelisted.label "Bok w běłej lisćinje"> +<!ENTITY context.disablefilteronsite.label "Toś ten filter na ?1? znjemóžniś"> +<!ENTITY detached.title "Adblock Plus: Blokěrujobne zapiski (wótpowjesone)"> +<!ENTITY docDomain.firstParty "(prědny part)"> +<!ENTITY tooltip.type.whitelisted "(w běłej lisćinje)"> +<!ENTITY tooltip.filter.label "Aktiwny filter:"> +<!ENTITY tooltip.filter.disabled "(znjemóžnjony)"> +<!ENTITY context.editfilter.label "Aktiwny filter wobźěłaś"> +<!ENTITY tooltip.type.blocked "(blokěrowany)"> +<!ENTITY size.label "Wjelikosć"> +<!ENTITY context.whitelist.label "Wuwześowe pšawidło za toś ten zapisk pśidaś"> +<!ENTITY context.selectAll.label "Wšykno wubraś"> +<!ENTITY state.label "Status"> +<!ENTITY docDomain.label "Dokumentowe žrědło"> +<!ENTITY tooltip.address.label "Adresa:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/subscriptionSelection.dtd new file mode 100644 index 0000000..334b3de --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/dsb/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "&Filtrowy abonement "?1?" teke pśidaś"> +<!ENTITY list.download.failed "Adblock Plus njejo mógał lisćiny abonementow wótwołaś."> +<!ENTITY list.download.retry "Hyšći raz wopytaś"> +<!ENTITY title.label "&Titel abonementa:"> +<!ENTITY list.download.website "Websedło se woglědaś"> +<!ENTITY supplementMessage "Toś ten filtrowy abonement jo za to myslony, se z filtrowym abonementom "?1?" wužywaś, kótaryž hyšći njewužywaśo."> +<!ENTITY viewList.label "Filtry se woglědaś"> +<!ENTITY visitHomepage.label "K startowemu bokoju woglědaś"> +<!ENTITY addSubscription.label "Abonement pśidaś"> +<!ENTITY dialog.title "Filtrowy abonement Adblock Plus pśidaś"> +<!ENTITY location.label "&Městno filtroweje lisćiny:"> +<!ENTITY fromWeb.description "Pšosym wobkšuśćo, až cośo toś ten filtrowy abonement pśidaś. Móžośo titel abo městno abonementa změniś, nježli až jen pśidajośo."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/composer.dtd new file mode 100644 index 0000000..8ea8aee --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "στο τέ&λος της διεύθυνσης"> +<!ENTITY domainRestriction.label "Περιορισ&μός στον τομέα:"> +<!ENTITY collapse.default.no.label "Χρήση προκαθορισμένου (όχι)"> +<!ENTITY firstParty.label "&Εκτός από τρίτους"> +<!ENTITY preferences.label "Προβολή υπαρχόντων φίλτρων..."> +<!ENTITY pattern.label "Αναζήτηση μοτίβου"> +<!ENTITY thirdParty.label "Από &τρίτους μόνο"> +<!ENTITY filter.label "Νέο φίλτρο:"> +<!ENTITY collapse.label "Σύμπτυξη φραγμένων:"> +<!ENTITY match.warning "Το μοτίβο που εισάγατε δεν ταιριάζει πλέον στην διεύθυνση που θέλετε να φραγεί και δεν θα έχει κανένα αποτέλεσμα."> +<!ENTITY anchor.start.label "στην &αρχή της διεύθυνσης"> +<!ENTITY matchCase.label "Ταίριασμα μικρών-κεφαλαίων"> +<!ENTITY custom.pattern.label "Προ&σαρμογή:"> +<!ENTITY unselectAllTypes.label "Επιλογή κανενός"> +<!ENTITY type.whitelist.label "Κανόνας εξαίρεσης"> +<!ENTITY regexp.warning "Το μοτίβο που εισάγατε θα ερμηνευτεί σαν regular expression. Πολλά regular expressions μπορεί να μειώσουν την ταχύτητα πλοήγησης. Αν σκοπός σας δεν ήταν να χρησιμοποιήσετε regular expressions, προσθέστε το σύμβολο * στο τέλος του μοτίβου."> +<!ENTITY dialog.title "Προσθήκη κανόνα φίλτρου του Adblock Plus"> +<!ENTITY basic.label "Βασική προβολή"> +<!ENTITY type.filter.label "Φίλτ&ρο φραγής"> +<!ENTITY types.label "Εφαρμογή στους τύπους:"> +<!ENTITY shortpattern.warning "Το μοτίβο που εισάγατε είναι πολύ κοντό για να βελτιστοποιηθεί· πολλά τέτοια μοτίβα μπορεί να μειώσουν την ταχύτητα πλοήγησης. Προτείνεται να επιλέξετε ένα μακρύτερο μοτίβο για το φίλτρο."> +<!ENTITY collapse.yes.label "Ναι"> +<!ENTITY anchors.label "Αποδοχή του μοτίβου μόνο:"> +<!ENTITY collapse.default.yes.label "Χρήση προκαθορισμένου (ναι)"> +<!ENTITY domainRestriction.help "Δηλώστε έναν ή περισσότερους τομείς (domain) διαχωρισμένους με το σύμβολο "|", και το φίλτρο θα εφαρμοστεί μόνο σε αυτούς. Το σύμβολο "~" πριν από τον τομέα σημαίνει πως το φίλτρο δεν θα εφαρμοστεί στο συγκεκριμένο τομέα."> +<!ENTITY accept.label "Προσθήκη φίλτρου"> +<!ENTITY options.label "Επιλογές"> +<!ENTITY disabled.warning "Το Adblock Plus είναι απενεργοποιημένο. Μπορείτε να προσθέσετε φίλτρα αλλά αυτά θα εφαρμοστούν μόλις [link]ενεργοποιήσετε το Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "στην &αρχή του ονόματος τομέα"> +<!ENTITY collapse.no.label "Όχι"> +<!ENTITY selectAllTypes.label "Επιλογή όλων"> +<!ENTITY advanced.label "Για προχωρημένους"> +<!ENTITY pattern.explanation "Το μοτίβο μπορεί να είναι οποιοδήποτε μέρος της διεύθυνσης, το σύμβολο * δρα ως wildcard. Το φίλτρο θα εφαρμοστεί μόνο στις διευθύνσεις που ταιριάζουν στο μοτίβο."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/filters.dtd new file mode 100644 index 0000000..006871b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Όλα τα προσαρμοσμένα φίλτρα σας θα αντικατασταθούν από τα περιεχόμενα του επιλεγμένου αρχείου. θέλετε να συνεχίσετε;"> +<!ENTITY slow.column "&Εμφάνιση φίλτρων"> +<!ENTITY enabled.column "Ε&νεργοποιημένο"> +<!ENTITY subscription.lastDownload.checksumMismatch "Απέτυχε, απόκλιση στον έλεγχο checksum"> +<!ENTITY noFiltersInGroup.text "Η επιλεγμένη ομάδα είναι άδεια"> +<!ENTITY subscription.actions.label "Ενέργειες"> +<!ENTITY filter.selectAll.label "Επιλογή όλων"> +<!ENTITY backupButton.label "&Αντίγραφα ασφαλείας και επαναφορά"> +<!ENTITY restore.minVersion.warning "Προειδοποίηση: το αρχείο έχει δημιουργηθεί με μια νεότερη έκδοση του Adblock Plus. Θα πρέπει να αναβαθμίσετε το Adblock Plus στην τελευταία του έκδοση πριν ανακτήσετε από αυτό το αρχείο."> +<!ENTITY restore.error "Τα δεδομένα του αρχείου δεν μπορούν να επεξεργαστούν, μήπως αυτός δεν είναι αντίγραφο ασφαλείας του Adblock Plus;"> +<!ENTITY sort.ascending.label "&Αύξουσα"> +<!ENTITY sort.label "&Ταξινόμηση κατά"> +<!ENTITY subscription.source.label "Λίστα φίλτρων"> +<!ENTITY hitcount.column "Επιτυ&χίες"> +<!ENTITY noFilters.text "Δεν έχετε κάποιο προσαρμοσμένο φίλτρο ακόμα."> +<!ENTITY backup.custom.title "Μόνο τα προσαρμοσμένα φίλτρα"> +<!ENTITY subscription.external.label "Ενημερώθηκε από άλλο πρόσθετο"> +<!ENTITY subscription.delete.label "Διαγραφή"> +<!ENTITY noGroupSelected.text "Πρέπει να επιλέξετε μια ομάδα φίλτρων ώστε να εμφανιστούν τα φίλτρα της."> +<!ENTITY filter.cut.label "Αποκοπή"> +<!ENTITY restore.default.label "Επαναφορά αντιγράφου ασφαλείας από την ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Σε εξέλιξη..."> +<!ENTITY subscriptions.tab.label "Συνδρομές φίλτρων"> +<!ENTITY sort.descending.label "Φ&θίνουσα"> +<!ENTITY filters.remove.warning "Θέλετε να απομακρύνετε όλα τα επιλεγμένα φίλτρα;"> +<!ENTITY filter.delete.label "Διαγραφή"> +<!ENTITY addSubscriptionAdd.label "Προσθήκη"> +<!ENTITY viewMenu.label "Προβολή"> +<!ENTITY subscription.lastDownload.unknown "Μ/Δ"> +<!ENTITY addSubscriptionCancel.label "Ακύρωση"> +<!ENTITY subscription.enabled.label "Ενεργοποιημένη"> +<!ENTITY noSubscriptions.text "Δεν έχετε προσθέσει κάποια συνδρομή φίλτρων. Το Adblock Plus δεν μπορεί να μπλοκάρει κάτι χωρίς φίλτρα· παρακαλώ χρησιμοποιήστε την "Προσθήκη συνδρομής" για να ορίσετε μια."> +<!ENTITY subscription.update.label "Ενημέρωση φίλτρων"> +<!ENTITY dialog.title "Προτιμήσεις φίλτρων του Adblock Plus"> +<!ENTITY addFilter.label "Προσθήκη &φίλτρου"> +<!ENTITY subscription.minVersion.warning "Αυτή η συνδρομή φίλτρων απαιτεί μια νεότερη έκδοση του Adblock Plus· θα πρέπει να αναβαθμίσετε το Adblock Plus στην τελευταία έκδοση."> +<!ENTITY subscription.lastDownload.invalidURL "Απέτυχε, μη έγκυρη διεύθυνση"> +<!ENTITY backup.error "Υπήρξε κάποιο πρόβλημα στην εγγραφή των φίλτρων στο αρχείο. Σιγουρευτείτε ότι το αρχείο δεν προστατεύεται από εγγραφή ή ότι δεν χρησιμοποιείται από κάποια άλλη εφαρμογή."> +<!ENTITY filter.moveUp.label "Μετακίνηση επάνω"> +<!ENTITY addGroup.label "Πρ&οσθήκη ομάδας φίλτρων"> +<!ENTITY filter.edit.label "Επεξεργασία"> +<!ENTITY subscription.showHideFilters.label "Εμφάνιση/απόκρυψη φίλτρων"> +<!ENTITY acceptableAds2.label "Να επιτρέπονται &μερικές μη-παρεμβατικές διαφημίσεις"> +<!ENTITY addSubscriptionOther.label "Προσθήκη άλλης συνδρομής"> +<!ENTITY close.label "Κλείσιμο"> +<!ENTITY sort.none.label "Χ&ωρίς ταξινόμηση"> +<!ENTITY filter.actions.label "Ενέργειες φίλτρων"> +<!ENTITY filter.copy.label "Αντιγραφή"> +<!ENTITY filter.moveDown.label "Μετακίνηση κάτω"> +<!ENTITY filter.resetHitCounts.label "Μηδενισμός στατιστικών επιτυχιών"> +<!ENTITY readMore.label "Διαβάστε περισσότερα"> +<!ENTITY subscription.moveUp.label "Μετακίνηση επάνω"> +<!ENTITY addSubscription.label "Προ&σθήκη συνδρομής"> +<!ENTITY subscription.homepage.label "Ιστοσελίδα"> +<!ENTITY backup.complete.title "Όλα τα φίλτρα και οι συνδρομές"> +<!ENTITY restore.own.label "Επαναφορά δικού σας αντιγράφου ασφαλείας"> +<!ENTITY restore.complete.warning "Όλες οι προτιμήσεις των φίλτρων σας θα αντικατασταθούν από τα περιεχόμενα του επιλεγμένου αρχείου. θέλετε να συνεχίσετε;"> +<!ENTITY filters.tab.label "Προσαρμοσμένα φίλτρα"> +<!ENTITY backup.label "Δημιουργία νέου αντιγράφου ασφαλείας"> +<!ENTITY find.label "Εύ&ρεση"> +<!ENTITY subscription.moveDown.label "Μετακίνηση κάτω"> +<!ENTITY subscription.lastDownload.connectionError "Απέτυχε, σφάλμα κατά τη λήψη"> +<!ENTITY subscription.lastDownload.success "Επιτυχής"> +<!ENTITY subscription.lastDownload.invalidData "Απέτυχε, μη έγκυρη λίστα φίλτρων"> +<!ENTITY filter.paste.label "Επικόλληση"> +<!ENTITY subscription.disabledFilters.enable "Ενεργοποίηση απενεργοποιημένων φίλτρων"> +<!ENTITY lasthit.column "Τε&λευταία επιτυχία"> +<!ENTITY subscription.editTitle.label "Επεξεργασία τίτλου"> +<!ENTITY subscription.disabledFilters.warning "Κάποια φίλτρα σε αυτή την συνδρομή είναι απενεργοποιημένα."> +<!ENTITY filter.column "Κανόνας &φίλτρου"> +<!ENTITY subscription.lastDownload.label "Τελευταία ενημέρωση:"> +<!ENTITY viewList.label "Δείτε την λίστα"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/firstRun.properties new file mode 100644 index 0000000..5ca81f3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Περιηγηθείτε ιδιωτικά απενεργοποιώντας την παρακολούθηση - αποκρύπτοντας τα ίχνη σας από εταιρείες διαφημίσεων που μπορούν να παρακολουθούν κάθε κίνησή σας. +firstRun_toggle_off=Ανενεργό +firstRun_feature_tracking=Απενεργοποίηση της παρακολούθησης +firstRun_feature_malware=Φραγή κακόβουλου λογισμικού +firstRun_title=Το Adblock Plus έχει εγκατασταθεί +firstRun_acceptableAdsExplanation=Θα θέλαμε να ενθαρρύνουμε τις ιστοσελίδες να χρησιμοποιούν ξεκάθαρες, διακριτικές διαφημίσεις. Γι' αυτό το λόγο έχουμε ορίσει <a>αυστηρές κατευθυντήριες γραμμές</a> για τον προσδιορισμό των αποδεκτών διαφημίσεων, οι οποίες εμφανίζονται στις προεπιλεγμένες ρυθμίσεις. Εάν εξακολουθείτε να θέλετε να αποκλείσετε όλες τις διαφημίσεις μπορείτε να <a>απενεργοποιήσετε</a> αυτήν την επιλογή σε λίγα δευτερόλεπτα. +firstRun_toggle_on=Ενεργό +firstRun_contributor_credits=Μνεία συντελεστών +firstRun_dataCorruptionWarning=Αυτή η σελίδα συνεχίζει να εμφανίζεται; <a>Κάντε κλικ εδώ!</a> +firstRun_acceptableAdsHeadline=Οι ενοχλητικές διαφημίσεις τώρα θα αποκλειστούν +firstRun_share=Πείτε το στους φίλους σας +firstRun_share_headline=<a>Δώστε μας ένα χεράκι</a> στο να κάνουμε το διαδίκτυο ένα καλύτερο μέρος +firstRun_features=Το Adblock Plus μπορεί να κάνει περισσότερα από το φιλτράρισμα διαφημίσεων +firstRun_feature_malware_description=Κάνετε την περιήγηση σας πιο ασφαλή φράσσοντας γνωστές διευθύνσεις κακόβουλου λογισμικού. +firstRun_feature_social_description=Απαλλάξετε αυτομάτως την περιήγησή σας από κουμπιά των μέσων κοινωνικής δικτύωσης, όπως το Like του Facebook, που εμφανίζονται σε ιστοσελίδες και παρακολουθούν τη συμπεριφορά σας. +firstRun_donate=δωρίστε +firstRun_donate_label=Υποστηρίξτε το έργο μας +firstRun_feature_social=Αφαίρεση κουμπιών μέσων κοινωνικής δικτύωσης +firstRun_legacySafariWarning=Χρησιμοποιείτε μια παλιά έκδοση του Safari, η οποία δεν υποστηρίζεται από το Adblock Plus. Μπορεί να μην λειτουργεί σωστά ή να αλλοιώσει την εμπειρία χρήστη σε ορισμένες ιστοσελίδες. Σας συνιστούμε είτε να ενημερώσετε την έκδοση του φυλλομετρητή σε Safari 6.1.1 ή νεότερη (σε Mac OS X 10.8 Mountain Lion), ή σε Safari 7.0.1 ή νεότερη (σε OS X 10.9 Mavericks) ή να χρησιμοποιήσετε την τελευταία έκδοση του Mozilla Firefox, Google Chrome ή Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/global.properties new file mode 100644 index 0000000..bdd9d06 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Δεν υπάρχουν αντικείμενα προς φραγή σε αυτή τη σελίδα +action3_tooltip=Κλικ για ενεργοποίηση/απενεργοποίηση. +notification_antiadblock_title=Απόκρυψη στοχευμένων μηνυμάτων; +type_label_script=σενάριο εντολών +filter_elemhide_nocriteria=Δεν καθορίστηκαν κριτήρια ώστε να αναγνωριστεί το στοιχείο που θα φιλτραριστεί +blockingGroup_title=Κανόνες φραγής διαφημίσεων +whitelisted_tooltip=Το Adblock Plus είναι ενεργό αλλά απενεργοποιημένο για την τρέχουσα σελίδα. +type_label_stylesheet=stylesheet +blocked_count_tooltip=?1? από τα ?2? +type_label_font=γραμματοσειρά +type_label_popup=αναδυόμενο παράθυρο +filter_regexp_tooltip=Αυτό το φίλτρο είναι ένα regular expression ή είναι πολύ κοντό ώστε να βελτιστοποιηθεί. Πολλά από αυτά τα φίλτρα μπορεί να μειώσουν την ταχύτητα πλοήγησης. +action0_tooltip=Κλικ για το μενού περιεχομένου, μεσαίο κλικ για ενεργοποίηση/απενεργοποίηση. +whitelisted_page=Το Adblock Plus απενεργοποιήθηκε για την τρέχουσα σελίδα +remove_group_warning=Θέλετε σίγουρα να διαγράψετε αυτή την ομάδα; +action1_tooltip=Κλικ για να ανοίξετε/κλείσετε τα στοιχεία προς φραγή, μεσαίο κλικ για ενεργοποίηση/απενεργοποίηση. +type_label_xmlhttprequest=αίτημα XML +active_tooltip=Το Adblock Plus είναι ενεργό, ?1? συνδρομή(ές) φίλτρων και ?2? προσαρμοσμένο(α) φίλτρο(α) σε χρήση. +type_label_document=κείμενο +type_label_object_subrequest=object subrequest +whitelistGroup_title=Κανόνες εξαίρεσης +disabled_tooltip=Το Adblock Plus είναι ανενεργό. +filter_elemhide_duplicate_id=Μόνο μια ταυτότητα του στοιχείου προς απόκρυψη πρέπει να καθοριστεί +type_label_object=αντικείμενο +action2_tooltip=Κλικ για τις επιλογές, μεσαίο κλικ για ενεργοποίηση/απενεργοποίηση. +type_label_subdocument=πλαίσιο +clearStats_warning=Αυτό θα μηδενίσει τα στατιστικά και θα απενεργοποιήσει τις επιτυχίες των φίλτρων. Θέλετε να συνεχίσετε; +notification_antiadblock_message=Αυτή η σελίδα είναι γνωστό ότι προβάλει στοχευμένα μηνύματα στους χρήστες του Adblock Plus. Θέλετε το Adblock Plus να αποκρύπτει στοχευμένα μηνύματα; +blocked_count_addendum=(λευκή λίστα: ?1?, κρυφά: ?2?) +subscription_invalid_location=Η τοποθεσία της λίστας φίλτρων δεν είναι έγκυρη URL ούτε και όνομα αρχείου. +type_label_image=εικόνα +remove_subscription_warning=Θέλετε να απομακρύνετε αυτή τη συνδρομή; +type_label_other=άλλο +mobile_menu_enable=ABP: Ενεργοποίηση +type_label_media=ήχος/βίντεο +mobile_menu_disable_site=ABP: Απενεργοποίηση στο ?1? +elemhideGroup_title=Κανόνες απόκρυψης στοιχείων +mobile_menu_enable_site=ABP: Ενεργοποίηση στο ?1? +type_label_elemhide=κρυφό +newGroup_title=Νέα ομάδα φίλτρων +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/overlay.dtd new file mode 100644 index 0000000..0d3fe6e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ναι"> +<!ENTITY notification.button.no "&Όχι"> +<!ENTITY sync.label "Συγ&χρονισμός των ρυθμίσεων του Adblock Plus"> +<!ENTITY whitelist.site.label "Απενεργοποίηση στο ?1?"> +<!ENTITY filters.label "Προτιμήσεις &φίλτρων"> +<!ENTITY disable.label "Απενεργοποίηση παντού"> +<!ENTITY objecttab.title "Φραγή"> +<!ENTITY objecttab.tooltip "Κλικ εδώ για να φιλτράρετε αυτό το αντικείμενο με το Adblock Plus"> +<!ENTITY menuitem.label "Ad&block Plus"> +<!ENTITY objecttabs.label "Εμφάνιση ετικέτ&ας σε αντικείμενα Flash και Java"> +<!ENTITY sendReport.label "Αναφο&ρά προβλήματος σε αυτή την σελίδα"> +<!ENTITY whitelist.page.label "Απενεργοποίηση σε αυτή τη σελίδα μόνο"> +<!ENTITY context.image.label "Adblock Plus: φραγή εικόνας"> +<!ENTITY counthits.label "Κα&ταμέτρηση επιτυχιών φίλτρων"> +<!ENTITY opensidebar.label "Άνοιγμ&α των φιλτραρισμένων στοιχείων"> +<!ENTITY notification.button.close "&Κλείσιμο"> +<!ENTITY contribute.label "Συνεισφέρετε στο Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: φραγή πλαισίου"> +<!ENTITY blocked.tooltip "Στοιχεία που έχουν φραχθεί σε αυτή τη σελίδα:"> +<!ENTITY hideplaceholders.label "Απόκρυψη πλα&ισίων των φιλτραρισμένων στοιχείων"> +<!ENTITY showinstatusbar.label "Εμφάνιση στην γραμμή &κατάστασης"> +<!ENTITY sidebar.title "Στοιχεία προς φιλτράρισμα στην τρέχουσα σελίδα"> +<!ENTITY options.label "Επι&λογές"> +<!ENTITY context.object.label "Adblock Plus: φραγή αντικειμένου"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Ενεργοποίηση σ' αυτή την σελίδα"> +<!ENTITY filters.tooltip "Φίλτρα με τις περισσότερες επιτυχίες:"> +<!ENTITY closesidebar.label "Κλείσιμο των φιλτρ&αρισμένων στοιχείων"> +<!ENTITY showintoolbar.label "Εμφάνιση στην εργαλειο&θήκη"> +<!ENTITY status.tooltip "Κατάσταση:"> +<!ENTITY context.media.label "Adblock Plus: φραγή ήχου/βίντεο"> +<!ENTITY subscription.update.label "Ενημέρωση φίλτρων"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/sendReport.dtd new file mode 100644 index 0000000..642b03a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Αναί&ρεση"> +<!ENTITY issues.disabledgroups.description "Οι ακόλουθες συνδρομές φίλτρων / ομάδες φίλτρων είναι απενεργοποιημένες, παρόλα αυτά μπορεί να έχουν επίδραση σε αυτή την σελίδα:"> +<!ENTITY showData.label "Εμφάνιση δεδομένων αναφοράς"> +<!ENTITY typeSelector.falsePositive.label "Το Adblock Plus φράζει πάρα πολλά &στοιχεία"> +<!ENTITY issues.change.description "Οι ρυθμίσεις σας έχουν αλλάξει. Παρακαλώ ανανεώστε την σελίδα για να δοκιμάσετε τις αλλαγές και υποβάλλετε μια αναφορά αν το ζήτημα δεν έχει λυθεί από τις τροποποιήσεις."> +<!ENTITY email.label "Email: (&μ)"> +<!ENTITY issues.openPreferences.label "Προτιμήσεις φίλτρων"> +<!ENTITY sendPage.confirmation "Η αναφορά σας έχει αποθηκευτεί. Πρόσβαση σε αυτήν έχετε από την ακόλουθη διεύθυνση:"> +<!ENTITY copyLink.label "&Αντιγραφή διεύθυνσης αναφοράς"> +<!ENTITY issues.nofilters.description "Το Adblock Plus δεν φιλτράρει τίποτα στην τρέχουσα σελίδα. Το ζήτημα το οποίο παρατηρείτε πιθανώς δεν σχετίζεται με το Adblock Plus."> +<!ENTITY sendPage.knownIssue "Το ζήτημα που αναφέρατε είναι πιθανώς ήδη γνωστό. Περισσότερες πληροφορίες:"> +<!ENTITY typeSelector.other.description "Επιλέξτε αυτό αν υποπτεύεστε κάποιο ζήτημα με το Adblock Plus το ίδιο, παρά με τα φίλτρα που χρησιμοποιούνται."> +<!ENTITY issues.disabledgroups.enable.label "Ενεργοποίηση της συνδρομής φίλτρων / ομάδας φίλτρων"> +<!ENTITY typeWarning.override.label "&Κατανοώ και επιθυμώ να υποβάλω την αναφορά όπως και να έχει"> +<!ENTITY issues.disabled.enable.label "Ενεργοποίηση του Adblock Plus"> +<!ENTITY update.fixed.description "Οι ενημερώσεις στις συνδρομές φίλτρων πιθανώς επιλύουν το πρόβλημα το οποίο αναφέρετε. Παρακαλώ ανανεώστε την σελίδα και προσπαθήστε ξανά. Κάντε μια αναφορά αν το πρόβλημα παραμένει."> +<!ENTITY anonymous.label "&Ανώνυμη υποβολή"> +<!ENTITY reloadButton.label "Α&νανέωση σελίδας"> +<!ENTITY recentReports.clear.label "&Αφαίρεση όλων των αναφορών"> +<!ENTITY typeSelector.description "Σε αυτό το παράθυρο θα βρείτε βοήθεια για τα βήματα που πρέπει να ακολουθηθούν ώστε να υποβληθεί μια αναφορά για κάποιο ζήτημα που αντιμετωπίζετε σχετικά με το Adblock Plus. Παρακαλώ πρώτα επιλέξτε τον τύπο του ζητήματος που αντιμετωπίζετε σε αυτή την σελίδα:"> +<!ENTITY screenshot.remove.label "Αφαίρεση ευαίσθητων &δεδομένων"> +<!ENTITY issues.ownfilters.description "Μερικά από τα φίλτρα έχουν οριστεί από εσάς. Παρακαλώ απενεργοποιήστε τα φίλτρα που πιθανώς έχουν προκαλέσει το ζήτημα:"> +<!ENTITY update.inProgress.description "Το Adblock Plus θα πρέπει να ενημερώσει τις συνδρομές φίλτρων ώστε να βεβαιωθεί ότι το πρόβλημα δεν έχει ήδη επιλυθεί. Παρακαλώ περιμένετε..."> +<!ENTITY sendPage.retry.label "Αποστολή ξανά"> +<!ENTITY data.label "Δεδομένα ανα&φοράς"> +<!ENTITY recentReports.label "Οι αναφορές που υποβάλλατε πρόσφατα"> +<!ENTITY typeWarning.description "Δηλώσατε πως θέλετε να αναφέρετε ένα γενικό ζήτημα σχετικά με το Adblock Plus παρά ένα πρόβλημα με τα φίλτρα. Παρακαλώ έχετε στο νου σας ότι τέτοιου είδους ζητήματα ταιριάζουν καλύτερα στο [link]forum του Adblock Plus[/link]. Θα πρέπει να χρησιμοποιείτε την αναφορά ζητήματος επιπρόσθετα μιας υπάρχουσας συζήτησης στο forum, καθώς κανένας δεν θα προσέξει την αναφορά σας εκτός αν περιέχει δεσμό προς την συζήτηση. Ο αυτόματα δημιουργημένος δεσμός θα εμφανιστεί μετά την υποβολή της αναφοράς."> +<!ENTITY issues.disabled.description "Το Adblock Plus είναι απενεργοποιημένο, δεν θα φιλτράρει τίποτα στην παρούσα κατάσταση."> +<!ENTITY attachExtensions.label "Επισύναψε την &λίστα με τα ενεργά πρόσθετα στην αναφορά, σε περίπτωση που κάποια ασυμβατότητα μεταξύ αυτών είναι το πρόβλημα"> +<!ENTITY issues.nosubscriptions.add.label "Προσθήκη συνδρομής φίλτρων"> +<!ENTITY issues.disabledfilters.enable.label "Ενεργοποίηση φίλτρου"> +<!ENTITY issues.override.label "Οι ρυθμί&σεις είναι σωστές, συνεχίστε με την αναφορά"> +<!ENTITY issues.nosubscriptions.description "Φαίνεται πως δεν είστε συνδρομητής σε καμιά από τις προεγκατεστημένες λίστες φίλτρων που αυτόματα αφαιρούν ανεπιθύμητο περιεχόμενο από τις σελίδες."> +<!ENTITY typeSelector.falsePositive.description "Επιλέξτε αυτό, αν η σελίδα στερείται βασικό περιεχόμενο, εμφανίζεται λαθεμένα ή δεν λειτουργεί σωστά. Για να διαγνώσετε αν το Adblock Plus είναι η αιτία του προβλήματός σας, απενεργοποιήστε το προσωρινά."> +<!ENTITY typeSelector.other.label "Ά&λλο ζήτημα"> +<!ENTITY emailComment.label "Σας συνιστούμε να εισάγετε μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου, ώστε να επικοινωνήσουμε μαζί σας εάν υπάρχουν ερωτήσεις σχετικά με την αναφορά σας. Θα μας επιτρέψει επίσης, να αναγνωρίζουμε τις συνεισφορές σας και να τις δώσουμε υψηλότερη προτεραιότητα."> +<!ENTITY issues.whitelist.remove.label "Ενεργοποίηση του Adblock Plus σε αυτή την σελίδα"> +<!ENTITY outdatedSubscriptions.description "Οι ακόλουθες συνδρομές φίλτρων δεν έχουν ενημερωθεί για δύο τουλάχιστο εβδομάδες. Παρακαλώ ενημερώστε αυτές τις συνδρομές πριν υποβάλετε την αναφορά, μιας και το ζήτημα μπορεί ήδη να έχει επιλυθεί."> +<!ENTITY dataCollector.description "Παρακαλώ περιμένετε καθώς το Adblock Plus συλλέγει τα απαραίτητα δεδομένα."> +<!ENTITY sendButton.label "Απο&στολή αναφοράς"> +<!ENTITY comment.label "Σ&χόλιο (προαιρετικό):"> +<!ENTITY sendPage.errorMessage "Η προσπάθεια αποστολής της αναφοράς απέτυχε με κωδικό λάθους "?1?". Παρακαλώ βεβαιωθείτε ότι έχετε πρόσβαση στο ίντερνετ και προσπαθήστε ξανά. Εάν το πρόβλημα παραμείνει, παρακαλώ ζητήστε βοήθεια στο [link]forum του Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Εμφάνιση πρόσφατα υποβληθέντων αναφορών"> +<!ENTITY commentPage.heading "Εισαγωγή σχολίου"> +<!ENTITY update.start.label "Ξεκινήστε την ενημέρωση"> +<!ENTITY issues.disabledfilters.description "Τα ακόλουθα φίλτρα είναι απενεροποιημένα, παρόλα αυτά μπορεί να έχουν επίδραση σε αυτή την σελίδα:"> +<!ENTITY screenshot.description "Η ίδια σελίδα μπορεί να εμφανίζεται διαφορετικά για διαφορετικούς χρήστες. Εάν επισυνάψετε ένα στιγμιότυπο οθόνης στην αναφορά σας μπορεί να μας βοηθήσει να κατανοήσουμε το πρόβλημα. Μπορείτε να αφαιρέσετε τμήματα τα οποία περιέχουν ευαίσθητες πληροφορίες όπως και να επισημάνετε περιοχές στις οποίες εντοπίζεται το πρόβλημα. Για να το πετύχετε, επιλέξτε το αντίστοιχο κουμπί και επιλέξτε ένα τμήμα του στιγμιότυπου με το ποντίκι."> +<!ENTITY screenshot.attach.label "Επισύναψη στιγμιότυπου ο&θόνης στην αναφορά"> +<!ENTITY issues.whitelist.description "Το Adblock Plus είναι απενεργοποιημένο στην σελίδα που αναφέρετε. Παρακαλώ ενεργοποιήστε το και ανανεώστε την σελίδα πριν υποβάλλετε την αναφορά."> +<!ENTITY typeSelector.falseNegative.label "Το Adblock Plus δεν &φράζει μια διαφήμιση"> +<!ENTITY typeSelector.heading "Τύπος ζητήματος"> +<!ENTITY anonymity.warning "Δεν θα μπορέσουμε να επικοινωνήσουμε μαζί σας και πιθανώς η αναφορά σας να θεωρηθεί χαμηλής προτεραιότητας."> +<!ENTITY wizard.title "Αναφορά ζητήματος"> +<!ENTITY issues.ownfilters.disable.label "Απενεργοποίηση φίλτρου"> +<!ENTITY commentPage.description "Το πεδίο κειμένου παρακάτω σας επιτρέπει να εισάγετε κάποιο σχόλιο το οποίο θα μας βοηθήσει να κατανοήσουμε το ζήτημα που αντιμετωπίζετε. Το παρόν βήμα είναι προαιρετικό αλλά προτείνεται να συμπληρωθεί αν το πρόβλημα δεν είναι προφανές. Μπορείτε να αναθεωρήσετε την αναφορά πριν την αποστείλετε."> +<!ENTITY comment.lengthWarning "Το μέγεθος του σχολίου υπερβαίνει τους 1000 χαρακτήρες. Μόνο οι πρώτοι 1000 θα αποσταλούν."> +<!ENTITY typeSelector.falseNegative.description "Επιλέξτε αυτό αν μια διαφήμιση εμφανίζεται παρόλο που το Adblock Plus είναι ενεργοποιημένο."> +<!ENTITY sendPage.waitMessage "Παρακαλώ περιμένετε καθώς το Adblock Plus υποβάλει την αναφορά."> +<!ENTITY dataCollector.heading "Καλώς ήρθατε στον βοηθό αναφοράς ζητήματος"> +<!ENTITY screenshot.heading "Στιγμιότυπο οθόνης"> +<!ENTITY sendPage.heading "Αποστολή αναφοράς"> +<!ENTITY issues.subscriptionCount.description "Φαίνεται ότι είστε συνδρομητής σε πάρα πολλές λίστες φίλτρων. Αυτή η επιλογή δεν συνιστάται. Δεν μπορούμε να δεχτούμε την αναφορά προβλήματος διότι δεν είναι σαφές ποιος από τους συγγραφείς των φίλτρων πρέπει να προβεί σε κάποια ενέργεια ώστε να διορθοθεί αυτό. Παρακαλώ αφαιρέστε όλες εκτός από τις απαραίτητες λίστες φίλτρων, και δοκιμάστε πάλι για να εξακριβώσετε αν το πρόβλημα συνεχιστεί."> +<!ENTITY screenshot.mark.label "Επισή&μανση του προβλήματος"> +<!ENTITY privacyPolicy.label "Πολιτική απορρήτου"> +<!ENTITY issues.description "Εντοπίστηκαν κάποια ζητήματα στις ρυθμίσεις σας που πιθανώς να είναι υπεύθυνες για αυτό το ζήτημα, ή που θα δυσκολέψουν την έρευνα της αναφοράς."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/sidebar.dtd new file mode 100644 index 0000000..76fe125 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Πλαίσιο στοιχείου Flash"> +<!ENTITY address.label "Διεύθυνση"> +<!ENTITY context.open.label "Άνοιγμα σε νέα καρτέλα"> +<!ENTITY type.label "Τύπος"> +<!ENTITY tooltip.filterSource.label "Πηγή φίλτρου:"> +<!ENTITY noitems.label "Δεν υπάρχουν στοιχεία προς φιλτράρισμα"> +<!ENTITY filter.label "Φίλτρο"> +<!ENTITY tooltip.size.label "Μέγεθος:"> +<!ENTITY reattach.label "Προσάρτηση"> +<!ENTITY search.label "Ανα&ζήτηση:"> +<!ENTITY docDomain.thirdParty "(τρίτων)"> +<!ENTITY filterSource.label "Πηγή φίλτρου"> +<!ENTITY tooltip.docDomain.label "Πηγή εγγράφου:"> +<!ENTITY context.copy.label "Αντιγραφή τοποθεσίας του στοιχείου"> +<!ENTITY tooltip.type.label "Τύπος:"> +<!ENTITY context.disablefilter.label "Απενεργοποίηση φίλτρου ?1?"> +<!ENTITY context.copyFilter.label "Αντιγραφή φίλτρου"> +<!ENTITY context.block.label "Φραγή του στοιχείου"> +<!ENTITY context.enablefilter.label "Ενεργοποίηση φίλτρου ?1?"> +<!ENTITY detach.label "Αποκόλληση"> +<!ENTITY whitelisted.label "Η σελίδα ανήκει στην άσπρη λίστα"> +<!ENTITY context.disablefilteronsite.label "Απενεργοποίηση του φίλτρου στο ?1?"> +<!ENTITY detached.title "Adblock Plus: Στοιχεία προς φραγή"> +<!ENTITY docDomain.firstParty "(πρωτεύον)"> +<!ENTITY tooltip.type.whitelisted "(στην άσπρη λίστα)"> +<!ENTITY tooltip.filter.label "Φίλτρο εν δράση:"> +<!ENTITY tooltip.filter.disabled "(απενεργοποιημένο)"> +<!ENTITY context.editfilter.label "Επεξεργασία του φίλτρου εν δράση"> +<!ENTITY tooltip.type.blocked "(φιλτραρισμένο)"> +<!ENTITY size.label "Μέγεθος"> +<!ENTITY context.whitelist.label "Προσθήκη κανόνα εξαίρεσης για το στοιχείο"> +<!ENTITY context.selectAll.label "Επιλογή όλων"> +<!ENTITY state.label "Κατάσταση"> +<!ENTITY docDomain.label "Πηγή εγγράφου"> +<!ENTITY tooltip.address.label "Διεύθυνση:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/subscriptionSelection.dtd new file mode 100644 index 0000000..054b6e9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/el/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Προσ&θήκη και της συνδρομής φίλτρων "?1?""> +<!ENTITY list.download.failed "Το Adblock Plus απέτυχε να λάβει την λίστα με τις συνδρομές."> +<!ENTITY list.download.retry "Προσπαθήστε ξανά"> +<!ENTITY title.label "Τίτλος &συνδρομής:"> +<!ENTITY list.download.website "Προβολή της ιστοσελίδας"> +<!ENTITY supplementMessage "Αυτή η συνδρομή φίλτρων μπορεί να χρησιμοποιηθεί μαζί με την συνδρομή "?1?" την οποία δεν χρησιμοποιείτε."> +<!ENTITY viewList.label "Προβολή φίλτρων"> +<!ENTITY visitHomepage.label "Ιστοσελίδα της συνδρομής"> +<!ENTITY addSubscription.label "Προσθήκη συνδρομής"> +<!ENTITY dialog.title "Συνδρομές φίλτρων του Adblock Plus"> +<!ENTITY location.label "&Τοποθεσία λίστας φίλτρων:"> +<!ENTITY fromWeb.description "Παρακαλώ επιβεβαιώστε ότι θέλετε να προσθέσετε αυτή την λίστα φίλτρων. Μπορείτε να τροποποιήσετε τον τίτλο ή την τοποθεσία πριν την προσθήκη."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/composer.dtd new file mode 100644 index 0000000..00d84ba --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "at the end of the address"> +<!ENTITY domainRestriction.label "Restrict to domain:"> +<!ENTITY collapse.default.no.label "Use default (no)"> +<!ENTITY firstParty.label "First-party only"> +<!ENTITY preferences.label "Show existing filters..."> +<!ENTITY pattern.label "Look for pattern"> +<!ENTITY thirdParty.label "Third-party only"> +<!ENTITY filter.label "New filter:"> +<!ENTITY collapse.label "Collapse blocked:"> +<!ENTITY match.warning "The pattern you entered no longer matches the address to be blocked/whitelisted and will have no effect on it."> +<!ENTITY anchor.start.label "at the beginning of the address"> +<!ENTITY matchCase.label "Match case"> +<!ENTITY custom.pattern.label "Custom:"> +<!ENTITY unselectAllTypes.label "Select none"> +<!ENTITY type.whitelist.label "Exception rule"> +<!ENTITY regexp.warning "The pattern you entered will be interpreted as a regular expression; this cannot be efficiently processed by Adblock Plus and may slow down your browsing experience. If you didn't intend to use a regular expression, add an asterisk (*) to the end of the pattern."> +<!ENTITY dialog.title "Add Adblock Plus filter rule"> +<!ENTITY basic.label "Basic view"> +<!ENTITY type.filter.label "Blocking filter"> +<!ENTITY types.label "Apply to types:"> +<!ENTITY shortpattern.warning "The pattern you entered is too short to be optimised; this may slow down your browsing experience. It is recommended that you choose a longer string for this filter to allow Adblock Plus to process the filter more efficiently."> +<!ENTITY collapse.yes.label "Yes"> +<!ENTITY anchors.label "Accept pattern only:"> +<!ENTITY collapse.default.yes.label "Use default (yes)"> +<!ENTITY domainRestriction.help "Use this option to specify one or more domains separated by a bar line (|). The filter will only be applied on the domain(s) selected. A tilde (~) before a domain name indicates that the filter will not be applied on that domain."> +<!ENTITY accept.label "Add filter"> +<!ENTITY options.label "Options"> +<!ENTITY disabled.warning "Adblock Plus is currently disabled. You can still add filters but they will not be applied unless you [link]enable Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "at the beginning of the domain name"> +<!ENTITY collapse.no.label "No"> +<!ENTITY selectAllTypes.label "Select all"> +<!ENTITY advanced.label "Advanced view"> +<!ENTITY pattern.explanation "The pattern can be any part of the address; asterisks (*) act as wildcards. The filter will only be applied to addresses matching the pattern provided."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/filters.dtd new file mode 100644 index 0000000..fa14794 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "All your custom filters will be replaced by the contents of the selected file. Do you want to proceeed?"> +<!ENTITY slow.column "Slow filters"> +<!ENTITY enabled.column "Enabled"> +<!ENTITY subscription.lastDownload.checksumMismatch "Failed: checksum mismatch"> +<!ENTITY noFiltersInGroup.text "The selected group is empty"> +<!ENTITY subscription.actions.label "Actions"> +<!ENTITY filter.selectAll.label "Select All"> +<!ENTITY backupButton.label "Backup and Restore"> +<!ENTITY restore.minVersion.warning "Warning: the file has been created with a newer Adblock Plus version. You should update to the latest Adblock Plus version before restoring from this file."> +<!ENTITY restore.error "The file's data could not be processed, maybe this isn't an Adblock Plus backup file?"> +<!ENTITY sort.ascending.label "A > Z sort order"> +<!ENTITY sort.label "Sort by"> +<!ENTITY subscription.source.label "Filter list"> +<!ENTITY hitcount.column "Hits"> +<!ENTITY noFilters.text "You don't have any custom filters yet."> +<!ENTITY backup.custom.title "Custom filters only"> +<!ENTITY subscription.external.label "Updated by another extension"> +<!ENTITY subscription.delete.label "Delete"> +<!ENTITY noGroupSelected.text "You need to select a filter group before its filters can be displayed."> +<!ENTITY filter.cut.label "Cut"> +<!ENTITY restore.default.label "Restore backup from ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Downloading..."> +<!ENTITY subscriptions.tab.label "Filter subscriptions"> +<!ENTITY sort.descending.label "Z > A sort order"> +<!ENTITY filters.remove.warning "Do you really want to remove all selected filters?"> +<!ENTITY filter.delete.label "Delete"> +<!ENTITY addSubscriptionAdd.label "Add"> +<!ENTITY viewMenu.label "View"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Cancel"> +<!ENTITY subscription.enabled.label "Enabled"> +<!ENTITY noSubscriptions.text "You haven't added any filter subscriptions yet. Adblock Plus won't block + anything without filters, please use "Add filter subscription" to + add some."> +<!ENTITY subscription.update.label "Update filters"> +<!ENTITY dialog.title "Adblock Plus Filter Preferences"> +<!ENTITY addFilter.label "Add filter"> +<!ENTITY subscription.minVersion.warning "This filter subscription requires a newer Adblock Plus version; you should update to the latest Adblock Plus version."> +<!ENTITY subscription.lastDownload.invalidURL "Failed: not a valid address"> +<!ENTITY backup.error "There was an error writing filters to the file. Make sure that the file isn't write protected or in use by another application."> +<!ENTITY filter.moveUp.label "Move up"> +<!ENTITY addGroup.label "Add filter group"> +<!ENTITY filter.edit.label "Edit"> +<!ENTITY subscription.showHideFilters.label "Show/hide filters"> +<!ENTITY acceptableAds2.label "Allow some non-intrusive advertising"> +<!ENTITY addSubscriptionOther.label "Add a different subscription"> +<!ENTITY close.label "Close"> +<!ENTITY sort.none.label "Unsorted"> +<!ENTITY filter.actions.label "Filter actions"> +<!ENTITY filter.copy.label "Copy"> +<!ENTITY filter.moveDown.label "Move down"> +<!ENTITY filter.resetHitCounts.label "Reset hit statistics"> +<!ENTITY readMore.label "Read more"> +<!ENTITY subscription.moveUp.label "Move up"> +<!ENTITY addSubscription.label "Add filter subscription"> +<!ENTITY subscription.homepage.label "Homepage"> +<!ENTITY backup.complete.title "All filters and subscriptions"> +<!ENTITY restore.own.label "Restore own backup"> +<!ENTITY restore.complete.warning "All your filter preferences will be replaced by the contents of the selected file. Do you want to proceeed?"> +<!ENTITY filters.tab.label "Custom filters"> +<!ENTITY backup.label "Create new backup"> +<!ENTITY find.label "Find"> +<!ENTITY subscription.moveDown.label "Move down"> +<!ENTITY subscription.lastDownload.connectionError "Failed: download failure"> +<!ENTITY subscription.lastDownload.success "Success"> +<!ENTITY subscription.lastDownload.invalidData "Failed: not a valid filters list"> +<!ENTITY filter.paste.label "Paste"> +<!ENTITY subscription.disabledFilters.enable "Enable disabled filters"> +<!ENTITY lasthit.column "Last hit"> +<!ENTITY subscription.editTitle.label "Edit title"> +<!ENTITY subscription.disabledFilters.warning "Some filters in this subscription are disabled."> +<!ENTITY filter.column "Filter rule"> +<!ENTITY subscription.lastDownload.label "Last download:"> +<!ENTITY viewList.label "View list"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/firstRun.properties new file mode 100644 index 0000000..971a702 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Browse privately by disabling tracking - hiding your tracks from ad companies that would track your every move. +firstRun_toggle_off=OFF +firstRun_feature_tracking=Disable Tracking +firstRun_feature_malware=Malware Blocking +firstRun_title=Adblock Plus has been installed +firstRun_acceptableAdsExplanation=We'd like to encourage websites to use straightforward, unobtrusive advertising. That's why we've established <a>strict guidelines</a> to identify positive ads, which are shown under default settings. If you still wish to block every ad you can <a>disable</a> this in a few seconds. +firstRun_toggle_on=ON +firstRun_contributor_credits=Contributor Credits +firstRun_dataCorruptionWarning=Does this page keep showing up? <a>Click here!</a> +firstRun_acceptableAdsHeadline=Annoying ads will now be blocked. +firstRun_share=Tell your friends +firstRun_share_headline=<a>Help us</a> in making the web a better place +firstRun_features=Adblock Plus can do more than block ads +firstRun_feature_malware_description=Make your browsing more secure by blocking known malware domains. +firstRun_feature_social_description=Automatically rid your browsing experience of social media buttons (such as the Facebook Like) which appear on web pages and track your behaviour. +firstRun_donate=Donate +firstRun_donate_label=Support our project +firstRun_feature_social=Remove Social Media Buttons +firstRun_legacySafariWarning=You are using an old version of Safari which is not supported by Adblock Plus. It might not work correctly or impair the user experience on some websites. We strongly recommend to either update to Safari 6.1.1 or higher (on OS X 10.8 Mountain Lion), or Safari 7.0.1 or higher (on OS X 10.9 Mavericks), or to use the latest version of Mozilla Firefox, Google Chrome or Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/global.properties new file mode 100644 index 0000000..6d3b8c6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=No blockable items on the current page +action3_tooltip=Click to enable/disable Adblock Plus. +notification_antiadblock_title=Hide targeted messages? +type_label_script=script +filter_elemhide_nocriteria=No criteria specified to recognise the element to be hidden +blockingGroup_title=Ad Blocking Rules +whitelisted_tooltip=Adblock Plus is active but disabled on current page. +type_label_stylesheet=stylesheet +blocked_count_tooltip=?1? out of ?2? +type_label_font=font +type_label_popup=popup window +filter_regexp_tooltip=This filter is either a regular expression or too short to be optimised. Too many of these filters might slow down your browsing. +action0_tooltip=Click to bring up context menu; middle-click to enable/disable. +whitelisted_page=Adblock Plus has been disabled for the current page +remove_group_warning=Do you really want to remove this group? +action1_tooltip=Click to open/close blockable items; middle-click to enable/disable. +type_label_xmlhttprequest=XML request +active_tooltip=Adblock Plus is enabled, ?1? filter subscription(s) and ?2? custom filter(s) in use. +type_label_document=document +type_label_object_subrequest=object sub-request +whitelistGroup_title=Exception Rules +disabled_tooltip=Adblock Plus is disabled. +filter_elemhide_duplicate_id=Only one ID of the element to be hidden can be specified +type_label_object=object +action2_tooltip=Click to open preferences; middle-click to enable/disable. +type_label_subdocument=frame +clearStats_warning=This will reset all filter hit statistics and disable counting filter hits. Do you want to proceed? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? +blocked_count_addendum=(also whitelisted: ?1?, hidden: ?2?) +subscription_invalid_location=Filter list location is neither a valid URL nor a valid file name. +type_label_image=image +remove_subscription_warning=Do you really want to remove this subscription? +type_label_other=other +mobile_menu_enable=ABP: Enable +type_label_media=audio/video +mobile_menu_disable_site=ABP: Disable on ?1? +elemhideGroup_title=Element Hiding Rules +mobile_menu_enable_site=ABP: Enable on ?1? +type_label_elemhide=hidden +newGroup_title=New filter group +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/overlay.dtd new file mode 100644 index 0000000..f916e9a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "Yes"> +<!ENTITY notification.button.no "No"> +<!ENTITY sync.label "Syn&chronise Adblock Plus settings"> +<!ENTITY whitelist.site.label "Disable on ?1?"> +<!ENTITY filters.label "Filter preferences"> +<!ENTITY disable.label "Disable everywhere"> +<!ENTITY objecttab.title "Block"> +<!ENTITY objecttab.tooltip "Block this object with Adblock Plus"> +<!ENTITY menuitem.label "Adblock Plus Preferences"> +<!ENTITY objecttabs.label "Show tabs on Flash and Java"> +<!ENTITY sendReport.label "Report issue on this page"> +<!ENTITY whitelist.page.label "Disable on this page only"> +<!ENTITY context.image.label "Adblock Plus: Block image"> +<!ENTITY counthits.label "Count filter hits"> +<!ENTITY opensidebar.label "Open blockable items"> +<!ENTITY notification.button.close "Close"> +<!ENTITY contribute.label "Contribute to Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Block frame"> +<!ENTITY blocked.tooltip "Blocked items on this page:"> +<!ENTITY hideplaceholders.label "Hide placeholders of blocked elements"> +<!ENTITY showinstatusbar.label "Show in status bar"> +<!ENTITY sidebar.title "Blockable items on current page"> +<!ENTITY options.label "Options"> +<!ENTITY context.object.label "Adblock Plus: Block object"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Re-enable on this page"> +<!ENTITY filters.tooltip "Most active filters:"> +<!ENTITY closesidebar.label "Close blockable items"> +<!ENTITY showintoolbar.label "Show in toolbar"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Block audio/video"> +<!ENTITY subscription.update.label "Update filters"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/sendReport.dtd new file mode 100644 index 0000000..1dec6f7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/sendReport.dtd @@ -0,0 +1,71 @@ +<!ENTITY screenshot.undo.label "Undo"> +<!ENTITY issues.disabledgroups.description "The following filter subscriptions / filter groups are disabled, yet they might have an effect on this page:"> +<!ENTITY showData.label "Show report data"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus is blocking too much"> +<!ENTITY issues.change.description "Your configuration has been changed. Please reload the page to test the changes and submit a report if the issue hasn't been resolved by the alterations."> +<!ENTITY email.label "Email:"> +<!ENTITY issues.openPreferences.label "Open filter preferences"> +<!ENTITY sendPage.confirmation "Your report has been saved. You can access it at the following address:"> +<!ENTITY copyLink.label "Copy report link"> +<!ENTITY issues.nofilters.description "Adblock Plus isn't blocking anything on the current page. The issue you are observing is probably unrelated to Adblock Plus."> +<!ENTITY sendPage.knownIssue "The issue you reported is probably already known. More information:"> +<!ENTITY typeSelector.other.description "Select this option if you suspect an issue with Adblock Plus itself rather than its filters."> +<!ENTITY issues.disabledgroups.enable.label "Enable filter subscription / filter group"> +<!ENTITY typeWarning.override.label "I understand and want to submit the report anyway"> +<!ENTITY issues.disabled.enable.label "Enable Adblock Plus"> +<!ENTITY update.fixed.description "The updates to your filter subscriptions likely resolved the issue that you + were reporting. Please reload the page and retry, hit Report again if the + problem remains."> +<!ENTITY anonymous.label "Anonymous submission"> +<!ENTITY reloadButton.label "Reload page"> +<!ENTITY recentReports.clear.label "Remove all reports"> +<!ENTITY typeSelector.description "This window will guide you through the steps required for the submission of an Adblock Plus issue report. First, please select the type of issue that you are experiencing on this page:"> +<!ENTITY screenshot.remove.label "Remove sensitive data"> +<!ENTITY issues.ownfilters.description "Some of the filters applied on this page are user-defined. Please disable the filters that might have caused the issue:"> +<!ENTITY update.inProgress.description "Adblock Plus needs to update your filter subscriptions to make sure that the + issue hasn't been resolved already. Please wait..."> +<!ENTITY sendPage.retry.label "Send again"> +<!ENTITY data.label "Report data:"> +<!ENTITY recentReports.label "Your recently submitted reports"> +<!ENTITY typeWarning.description "You have indicated that you want to report a general issue with Adblock Plus rather than a problem with the filters. Please note that such issues are best reported in the [link]Adblock Plus forum[/link]. You should only use the issue reporter to supplement an existing discussion, as nobody will notice your report unless you provide them with the link to it. The automatically generated link will be provided after submitting the report."> +<!ENTITY issues.disabled.description "Adblock Plus is disabled, it will not block anything in its current state."> +<!ENTITY attachExtensions.label "Attach a list of active extensions to the report in case add-on conflict is the cause of the problem"> +<!ENTITY issues.nosubscriptions.add.label "Add filter subscription"> +<!ENTITY issues.disabledfilters.enable.label "Enable filter"> +<!ENTITY issues.override.label "The configuration is correct, continue with the report"> +<!ENTITY issues.nosubscriptions.description "You do not appear to be subscribed to any of the pre-made filter lists that automatically remove unwanted content from websites."> +<!ENTITY typeSelector.falsePositive.description "Select this option if the page lacks important content, displays incorrectly or fails to function properly. You can determine whether Adblock Plus is the cause of the problem by disabling it temporarily."> +<!ENTITY typeSelector.other.label "Other issue"> +<!ENTITY emailComment.label "We encourage you to enter a valid email address so that we can contact you if there are questions + about your report. It will also allow us to recognize your contributions and to prioritize them higher."> +<!ENTITY issues.whitelist.remove.label "Re-enable Adblock Plus on this page"> +<!ENTITY outdatedSubscriptions.description "The following filter subscriptions haven't been updated for at least two + weeks. Please update these subscriptions before submitting a report, the + issue might be resolved already."> +<!ENTITY dataCollector.description "Please wait a few moments while Adblock Plus gathers the required data."> +<!ENTITY sendButton.label "Send report"> +<!ENTITY comment.label "Comment (optional):"> +<!ENTITY sendPage.errorMessage "An attempt to send the report failed with error code "?1?". Please ensure you are connected to the Internet and retry. If the problem persists please request assistance in the [link]Adblock Plus forum[/link]."> +<!ENTITY showRecentReports.label "Show recently submitted reports"> +<!ENTITY commentPage.heading "Enter comment"> +<!ENTITY update.start.label "Start update now"> +<!ENTITY issues.disabledfilters.description "The following filters are disabled, yet they might have an effect on this page:"> +<!ENTITY screenshot.description "The same page can look different for different people. It may help us to understand the problem if you attach a screenshot to your report. You can remove sections containing sensitive information as well as mark areas where the problem is noticeable. To do that click the corresponding button and select a section of the image with your mouse."> +<!ENTITY screenshot.attach.label "Attach a page image to the report"> +<!ENTITY issues.whitelist.description "Adblock Plus is currently disabled on the page you are reporting. Please re-enable it and reload the page before submitting the report to assist the investigation of this issue."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus doesn't block an advertisement"> +<!ENTITY typeSelector.heading "Select issue type"> +<!ENTITY anonymity.warning "We won't be able to come back to you and will likely prioritize the report lower."> +<!ENTITY wizard.title "Issue reporter"> +<!ENTITY issues.ownfilters.disable.label "Disable filter"> +<!ENTITY commentPage.description "The text field below allows you to enter a comment to help us understand the issue. This step is optional but recommended if the problem isn't obvious. You can also review the report data before it is sent."> +<!ENTITY comment.lengthWarning "The length of your comment exceeds 1000 characters. Only the first 1000 characters will be sent."> +<!ENTITY typeSelector.falseNegative.description "Select this option if an advertisement is displayed despite Adblock Plus being enabled."> +<!ENTITY sendPage.waitMessage "Please wait while Adblock Plus is submitting your report."> +<!ENTITY dataCollector.heading "Welcome to the issue reporter"> +<!ENTITY screenshot.heading "Attach screenshot"> +<!ENTITY sendPage.heading "Send report"> +<!ENTITY issues.subscriptionCount.description "It seems that you are subscribed to too many filter subscriptions. This setup is not recommended because it will make the likeliness of issues much higher. We also cannot accept your issue report because it is unclear which filter subscription author needs to take action. Please remove all but the really necessary filter subscriptions and test whether the issue still occurs then."> +<!ENTITY screenshot.mark.label "Mark the problem"> +<!ENTITY privacyPolicy.label "Privacy policy"> +<!ENTITY issues.description "Adblock Plus has detected issues with your configuration that might be responsible for this issue or will make investigating the report difficult."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/sidebar.dtd new file mode 100644 index 0000000..32cb7e1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Flash item's borders"> +<!ENTITY address.label "Address"> +<!ENTITY context.open.label "Open in New Tab"> +<!ENTITY type.label "Type"> +<!ENTITY tooltip.filterSource.label "Filter source:"> +<!ENTITY noitems.label "No blockable items"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Size"> +<!ENTITY reattach.label "Reattach"> +<!ENTITY search.label "Search:"> +<!ENTITY docDomain.thirdParty "(third party)"> +<!ENTITY filterSource.label "Filter source"> +<!ENTITY tooltip.docDomain.label "Document source:"> +<!ENTITY context.copy.label "Copy item's address"> +<!ENTITY tooltip.type.label "Type:"> +<!ENTITY context.disablefilter.label "Disable filter ?1?"> +<!ENTITY context.copyFilter.label "Copy filter"> +<!ENTITY context.block.label "Block this item"> +<!ENTITY context.enablefilter.label "Re-enable filter ?1?"> +<!ENTITY detach.label "Detach"> +<!ENTITY whitelisted.label "Whitelisted page"> +<!ENTITY context.disablefilteronsite.label "Disable this filter on ?1?"> +<!ENTITY detached.title "Adblock Plus: Blockable items (detached)"> +<!ENTITY docDomain.firstParty "(first party)"> +<!ENTITY tooltip.type.whitelisted "(whitelisted)"> +<!ENTITY tooltip.filter.label "Filter in effect:"> +<!ENTITY tooltip.filter.disabled "(disabled)"> +<!ENTITY context.editfilter.label "Edit filter in effect"> +<!ENTITY tooltip.type.blocked "(blocked)"> +<!ENTITY size.label "Size"> +<!ENTITY context.whitelist.label "Add exception rule for item"> +<!ENTITY context.selectAll.label "Select all"> +<!ENTITY state.label "State"> +<!ENTITY docDomain.label "Document source"> +<!ENTITY tooltip.address.label "Address:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/subscriptionSelection.dtd new file mode 100644 index 0000000..10ba808 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-GB/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Add filter subscription "?1?" as well"> +<!ENTITY list.download.failed "Adblock Plus failed to retrieve the list of subscriptions."> +<!ENTITY list.download.retry "Try again"> +<!ENTITY title.label "Subscription title:"> +<!ENTITY list.download.website "View website"> +<!ENTITY supplementMessage "This filter subscription is meant to be used with the filter subscription "?1?" which you are not using yet."> +<!ENTITY viewList.label "View filters"> +<!ENTITY visitHomepage.label "Visit home page"> +<!ENTITY addSubscription.label "Add subscription"> +<!ENTITY dialog.title "Add Adblock Plus filter subscription"> +<!ENTITY location.label "Filter list location:"> +<!ENTITY fromWeb.description "Please confirm that you want to add this filter subscription. You can change the subscription title or location before adding it."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/composer.dtd new file mode 100644 index 0000000..bba41e3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/composer.dtd @@ -0,0 +1,38 @@ +<!ENTITY dialog.title "Add Adblock Plus filter rule"> +<!ENTITY accept.label "Add filter"> +<!ENTITY advanced.label "Advanced view"> +<!ENTITY basic.label "Basic view"> + +<!ENTITY disabled.warning "Adblock Plus is currently disabled. You can still add filters but they will not be applied unless you [link]enable Adblock Plus[/link]."> + +<!ENTITY filter.label "New &filter:"> +<!ENTITY preferences.label "&Show existing filters..."> +<!ENTITY type.filter.label "&Blocking filter"> +<!ENTITY type.whitelist.label "E&xception rule"> +<!ENTITY pattern.label "Look for pattern"> +<!ENTITY pattern.explanation "The pattern can be any part of the address; asterisks (*) act as wildcards. The filter will only be applied to addresses matching the pattern provided."> +<!ENTITY regexp.warning "The pattern you entered will be interpreted as a regular expression which cannot be efficiently processed by Adblock Plus and may slow down your browsing experience. If you didn't intend to use a regular expression, add an asterisk (*) to the end of the pattern."> +<!ENTITY shortpattern.warning "The pattern you entered is too short to be optimized and may slow down your browsing experience. It is recommended that you choose a longer string for this filter to allow Adblock Plus to process the filter more efficiently."> +<!ENTITY match.warning "The pattern you entered no longer matches the address to be blocked/whitelisted and will have no effect on it."> +<!ENTITY custom.pattern.label "&Custom:"> +<!ENTITY anchors.label "Accept pattern only:"> +<!ENTITY anchor.start.label "at the be&ginning of the address"> +<!-- Note: This access key should usually be the same as anchor.start.flexible.accesskey. It is the same checkbox with different label depending on suggested filter.--> +<!ENTITY anchor.start.flexible.label "at the be&ginning of the domain name"> +<!-- Note: This access key should usually be the same as anchor.start.accesskey. It is the same checkbox with different label depending on suggested filter.--> +<!ENTITY anchor.end.label "at the e&nd of the address"> +<!ENTITY options.label "Options"> +<!ENTITY domainRestriction.label "Restrict to &domain:"> +<!ENTITY domainRestriction.help "Use this option to specify one or more domains separated by a bar line (|). The filter will only be applied on the domain(s) selected. A tilde (~) before a domain name indicates that the filter will not be applied on that domain."> +<!ENTITY firstParty.label "Fi&rst-party only"> +<!ENTITY thirdParty.label "&Third-party only"> +<!ENTITY matchCase.label "&Match case"> +<!ENTITY types.label "Apply to types:"> +<!ENTITY selectAllTypes.label "Select all"> +<!ENTITY unselectAllTypes.label "Select none"> + +<!ENTITY collapse.label "Co&llapse blocked:"> +<!ENTITY collapse.default.yes.label "Use default (yes)"> +<!ENTITY collapse.default.no.label "Use default (no)"> +<!ENTITY collapse.yes.label "Yes"> +<!ENTITY collapse.no.label "No"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/filters.dtd new file mode 100644 index 0000000..1ab4720 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/filters.dtd @@ -0,0 +1,92 @@ +<!ENTITY dialog.title "Adblock Plus Filter Preferences"> + +<!ENTITY subscriptions.tab.label "Filter subscriptions"> +<!ENTITY filters.tab.label "Custom filters"> + +<!ENTITY addSubscription.label "Add &filter subscription"> +<!ENTITY addSubscriptionAdd.label "Add"> +<!ENTITY addSubscriptionCancel.label "Cancel"> +<!ENTITY addSubscriptionOther.label "Add a different subscription"> + +<!ENTITY noSubscriptions.text " + You haven't added any filter subscriptions yet. Adblock Plus won't block + anything without filters, please use "Add filter subscription" to + add some. +"> +<!ENTITY subscription.homepage.label "Homepage"> +<!ENTITY subscription.external.label "Updated by another extension"> +<!ENTITY subscription.source.label "Filter list"> +<!ENTITY subscription.enabled.label "Enabled"> +<!ENTITY subscription.lastDownload.label "Last download:"> +<!ENTITY subscription.lastDownload.inProgress "Downloading…"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY subscription.lastDownload.invalidURL "Failed, not a valid address"> +<!ENTITY subscription.lastDownload.connectionError "Failed, download failure"> +<!ENTITY subscription.lastDownload.invalidData "Failed, not a valid filters list"> +<!ENTITY subscription.lastDownload.checksumMismatch "Failed, checksum mismatch"> +<!ENTITY subscription.lastDownload.success "Success"> +<!ENTITY subscription.minVersion.warning "This filter subscription requires a newer Adblock Plus version, you should update to the latest Adblock Plus version."> +<!ENTITY subscription.disabledFilters.warning "Some filters in this subscription are disabled."> +<!ENTITY subscription.disabledFilters.enable "Enable disabled filters"> + +<!ENTITY subscription.actions.label "Actions"> +<!ENTITY subscription.update.label "Update filters"> +<!ENTITY subscription.editTitle.label "Edit title"> +<!ENTITY subscription.delete.label "Delete"> +<!ENTITY subscription.showHideFilters.label "Show/hide filters"> +<!ENTITY subscription.moveUp.label "Move up"> +<!ENTITY subscription.moveDown.label "Move down"> + +<!ENTITY acceptableAds2.label "Allow some non-&intrusive advertising"> +<!ENTITY viewList.label "View list"> +<!ENTITY readMore.label "Read more"> + +<!ENTITY addGroup.label "Add filter &group"> +<!ENTITY noFilters.text " + You don't have any custom filters yet. +"> + +<!ENTITY addFilter.label "A&dd filter"> +<!ENTITY filter.actions.label "Filter actions"> +<!ENTITY filter.edit.label "Edit"> +<!ENTITY filter.cut.label "Cut"> +<!ENTITY filter.copy.label "Copy"> +<!ENTITY filter.paste.label "Paste"> +<!ENTITY filter.delete.label "Delete"> +<!ENTITY filter.selectAll.label "Select All"> +<!ENTITY filter.resetHitCounts.label "Reset hit statistics"> +<!ENTITY filter.moveUp.label "Move up"> +<!ENTITY filter.moveDown.label "Move down"> +<!ENTITY viewMenu.label "View"> + +<!ENTITY filter.column "&Filter rule"> +<!ENTITY slow.column "Slo&w filters"> +<!ENTITY enabled.column "E&nabled"> +<!ENTITY hitcount.column "&Hits"> +<!ENTITY lasthit.column "&Last hit"> +<!ENTITY sort.label "&Sort by"> +<!ENTITY sort.none.label "&Unsorted"> +<!ENTITY sort.ascending.label "&A > Z sort order"> +<!ENTITY sort.descending.label "&Z > A sort order"> +<!ENTITY noGroupSelected.text "You need to select a filter group before its filters can be displayed."> +<!ENTITY noFiltersInGroup.text "The selected group is empty."> + +<!ENTITY filters.remove.warning "Do you really want to remove all selected filters?"> + +<!ENTITY backupButton.label "&Backup and Restore"> +<!ENTITY backup.label "Create new backup"> +<!-- Note: the placeholder ?1? will be replaced by date/time of the automatic backup --> +<!ENTITY restore.default.label "Restore backup from ?1?"> +<!ENTITY restore.own.label "Restore own backup"> + +<!ENTITY backup.complete.title "All filters and subscriptions"> +<!ENTITY backup.custom.title "Custom filters only"> + +<!ENTITY backup.error "There was an error writing filters to the file. Make sure that the file isn't write protected or in use by another application."> +<!ENTITY restore.error "The file's data could not be processed, maybe this isn't an Adblock Plus backup file?"> +<!ENTITY restore.complete.warning "All your filter preferences will be replaced by the contents of the selected file. Do you want to proceeed?"> +<!ENTITY restore.custom.warning "All your custom filters will be replaced by the contents of the selected file. Do you want to proceeed?"> +<!ENTITY restore.minVersion.warning "Warning: the file has been created with a newer Adblock Plus version. You should update to the latest Adblock Plus version before restoring from this file."> + +<!ENTITY find.label "Fi&nd"> +<!ENTITY close.label "Close"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/firstRun.properties new file mode 100644 index 0000000..21438b1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/firstRun.properties @@ -0,0 +1,24 @@ +firstRun_title=Adblock Plus has been installed +firstRun_dataCorruptionWarning=Does this page keep showing up? <a>Click here!</a> +firstRun_acceptableAdsHeadline=Annoying ads will now be blocked +firstRun_acceptableAdsExplanation=We'd like to encourage websites to use straightforward, unobtrusive advertising. That's why we've established <a>strict guidelines</a> to identify acceptable ads, which are shown under default settings. If you still want to block every ad you can <a>disable</a> this in a few seconds. +firstRun_legacySafariWarning=You are using an old version of Safari which is not supported by Adblock Plus. It might not work correctly or impair the user experience on some websites. We strongly recommend to either update to Safari 6.1.1 or higher (on OS X 10.8 Mountain Lion), or Safari 7.0.1 or higher (on OS X 10.9 Mavericks), or to use the latest version of Mozilla Firefox, Google Chrome or Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. + +firstRun_toggle_on=ON +firstRun_toggle_off=OFF + +firstRun_features=Adblock Plus can do more than block ads +firstRun_feature_malware=Malware Blocking +firstRun_feature_malware_description=Make your browsing more secure by blocking known malware domains. +firstRun_feature_social=Remove Social Media Buttons +firstRun_feature_social_description=Automatically rid your browsing experience of social media buttons, such as the Facebook Like, which appear on web pages and track your behavior. +firstRun_feature_tracking=Disable Tracking +firstRun_feature_tracking_description=Browse privately by disabling tracking - hiding your tracks from ad companies that would track your every move. + +firstRun_share_headline=<a>Give us a hand</a> in making the web a better place +firstRun_donate=donate +firstRun_donate_label=Support our project +firstRun_share=Tell your friends + +firstRun_contributor_credits=Contributor Credits diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/global.properties new file mode 100644 index 0000000..59de9cb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/global.properties @@ -0,0 +1,58 @@ +default_dialog_title=Adblock Plus + +action0_tooltip=Click to bring up context menu, middle-click to enable/disable. +action1_tooltip=Click to open/close blockable items, middle-click to enable/disable. +action2_tooltip=Click to open preferences, middle-click to enable/disable. +action3_tooltip=Click to enable/disable Adblock Plus. + +disabled_tooltip=Adblock Plus is disabled. +# Note: the placeholder ?1? will be replaced by the number of active filter subscriptions, the placeholder ?2? by the number of custom filters +active_tooltip=Adblock Plus is enabled, ?1? filter subscription(s) and ?2? custom filter(s) in use. +whitelisted_tooltip=Adblock Plus is disabled on current page. + +# Note: the placeholder ?1? will be replaced by the number of blocked items, the placeholder ?2? by the total number of items on current page +blocked_count_tooltip=?1? out of ?2? +# Note: the placeholder ?1? will be replaced by the number of whitelisted items, the placeholder ?2? by the number of hidden items on current page +blocked_count_addendum=(also whitelisted: ?1?, hidden: ?2?) + +no_blocking_suggestions=No blockable items on the current page +whitelisted_page=Adblock Plus has been disabled for the current page + +newGroup_title=New filter group +whitelistGroup_title=Exception Rules +blockingGroup_title=Ad Blocking Rules +elemhideGroup_title=Element Hiding Rules + +remove_subscription_warning=Do you really want to remove this subscription? +remove_group_warning=Do you really want to remove this group? +clearStats_warning=This will reset all filter hit statistics and disable counting filter hits. Do you want to proceed? + +filter_regexp_tooltip=This filter is either a regular expression or too short to be optimized. Too many of these filters might slow down your browsing. +filter_elemhide_duplicate_id=Only one ID of the element to be hidden can be specified +filter_elemhide_nocriteria=No criteria specified to recognize the element to be hidden + +subscription_invalid_location=Filter list location is neither a valid URL nor a valid file name. + +type_label_other=other +type_label_script=script +type_label_image=image +type_label_stylesheet=stylesheet +type_label_object=object +type_label_subdocument=frame +type_label_document=document +type_label_elemhide=hidden +type_label_popup=pop-up window + +type_label_xmlhttprequest=XML request +type_label_object_subrequest=object subrequest +type_label_media=audio/video +type_label_font=font + +mobile_menu_enable=ABP: Enable +# Note: the placeholder ?1? will be replaced by the site name. Ideally it should be at the end of the string (space is limited and site names can be long). +mobile_menu_enable_site=ABP: Enable on ?1? +# Note: the placeholder ?1? will be replaced by the site name. Ideally it should be at the end of the string (space is limited and site names can be long). +mobile_menu_disable_site=ABP: Disable on ?1? + +notification_antiadblock_title=Hide targeted messages? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/overlay.dtd new file mode 100644 index 0000000..895ff80 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/overlay.dtd @@ -0,0 +1,41 @@ +<!ENTITY status.tooltip "Status:"> +<!ENTITY blocked.tooltip "Blocked items on this page:"> +<!ENTITY filters.tooltip "Most active filters:"> + +<!ENTITY menuitem.label "Ad&block Plus Preferences"> +<!ENTITY toolbarbutton.label "Adblock Plus"> + +<!ENTITY context.image.label "Adblock Plus: Block image"> +<!ENTITY context.object.label "Adblock Plus: Block object"> +<!ENTITY context.frame.label "Adblock Plus: Block frame"> +<!ENTITY context.media.label "Adblock Plus: Block audio/video"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Re-enable on this page"> + +<!ENTITY sidebar.title "Blockable items on current page"> + +<!ENTITY sendReport.label "&Report issue on this page"> +<!ENTITY filters.label "&Filter preferences"> +<!ENTITY opensidebar.label "Open &blockable items"> +<!-- Note: This access key should usually be the same as closesidebar.accesskey. It is the same menu item with different label depending on whether the sidebar is currently open.--> +<!ENTITY closesidebar.label "Close &blockable items"> +<!-- Note: This access key should usually be the same as opensidebar.accesskey. It is the same menu item with different label depending on whether the sidebar is currently open.--> +<!-- Note: the placeholder ?1? will be replaced by the domain name of the current page --> +<!ENTITY whitelist.site.label "Disable on ?1?"> +<!ENTITY whitelist.page.label "Disable on this page only"> +<!ENTITY disable.label "Disable everywhere"> +<!ENTITY options.label "&Options"> +<!ENTITY contribute.label "Contribute to Adblock Plus"> + +<!ENTITY showintoolbar.label "Show in tool&bar"> +<!ENTITY showinstatusbar.label "&Show in status bar"> +<!ENTITY objecttabs.label "Show &tabs on Flash and Java"> +<!ENTITY hideplaceholders.label "Hide p&laceholders of blocked elements"> +<!ENTITY counthits.label "Count filter &hits"> +<!ENTITY sync.label "Syn&c Adblock Plus settings"> +<!ENTITY objecttab.title "Block"> +<!ENTITY objecttab.tooltip "Click here to block this object with Adblock Plus"> + +<!ENTITY notification.button.yes "&Yes"> +<!ENTITY notification.button.no "&No"> +<!ENTITY notification.button.close "&Close"> +<!ENTITY subscription.update.label "Update filters"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/sendReport.dtd new file mode 100644 index 0000000..49621ec --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/sendReport.dtd @@ -0,0 +1,181 @@ +<!ENTITY wizard.title "Issue reporter"> +<!ENTITY privacyPolicy.label "Privacy policy"> + +<!ENTITY dataCollector.heading "Welcome to the issue reporter"> +<!ENTITY dataCollector.description "Please wait a few moments while Adblock Plus gathers the required data."> + +<!-- Please keep typeSelector.heading short - it is shown in the progress bar, not much space there --> +<!ENTITY typeSelector.heading "Select issue type"> + +<!ENTITY typeSelector.description " + This window will guide you through the steps required for the submission of an Adblock + Plus issue report. First, please select the type of issue that you are experiencing + on this page: +"> + +<!ENTITY typeSelector.falsePositive.label "Adblock Plus is blocking too &much"> +<!ENTITY typeSelector.falsePositive.description " + Select this option if the page lacks important content, displays incorrectly or + fails to function properly. You can determine whether Adblock Plus is the cause + of the problem by disabling it temporarily. +"> + +<!ENTITY typeSelector.falseNegative.label "Adblock Plus doesn't block an ad&vertisement"> +<!ENTITY typeSelector.falseNegative.description " + Select this option if an advertisement is displayed despite + Adblock Plus being enabled. +"> + +<!ENTITY typeSelector.other.label "O&ther issue"> +<!ENTITY typeSelector.other.description " + Select this option if you suspect an issue with Adblock Plus itself rather + than its filters. +"> + +<!ENTITY showRecentReports.label "Show recently submitted reports"> +<!ENTITY recentReports.label "Your recently submitted reports"> +<!ENTITY recentReports.clear.label "&Remove all reports"> +<!ENTITY update.inProgress.description " + Adblock Plus needs to update your filter subscriptions to make sure that the + issue hasn't been resolved already. Please wait... +"> + +<!ENTITY update.fixed.description " + The updates to your filter subscriptions likely resolved the issue that you + were reporting. Please reload the page and retry, hit Report again if the + problem remains. +"> + +<!ENTITY outdatedSubscriptions.description " + The following filter subscriptions haven't been updated for at least two + weeks. Please update these subscriptions before submitting a report, the + issue might be resolved already. +"> + +<!ENTITY update.start.label "Start update now"> + +<!ENTITY issues.description " + Adblock Plus has detected issues with your configuration that might be responsible + for this issue or will make investigating the report difficult. +"> + +<!ENTITY issues.whitelist.description " + Adblock Plus is currently disabled on the page you are reporting. Please re-enable + it and reload the page before submitting the report to assist the investigation of + this issue. +"> +<!ENTITY issues.whitelist.remove.label "Re-enable Adblock Plus on this page"> + +<!ENTITY issues.disabled.description " + Adblock Plus is disabled, it will not block anything in its current state. +"> +<!ENTITY issues.disabled.enable.label "Enable Adblock Plus"> + +<!ENTITY issues.nofilters.description " + Adblock Plus isn't blocking anything on the current page. The issue you are + observing is most likely unrelated to Adblock Plus. +"> + +<!ENTITY issues.nosubscriptions.description " + You do not appear to be subscribed to any of the pre-made filter lists that + automatically remove unwanted content from websites. +"> +<!ENTITY issues.nosubscriptions.add.label "Add filter subscription"> + +<!ENTITY issues.subscriptionCount.description " + It seems that you are subscribed to too many filter subscriptions. This + setup is not recommended because it will make the likeliness + of issues much higher. We also cannot accept your issue report because it + is unclear which filter subscription author needs to take action. Please + remove all but the really necessary filter subscriptions and test whether + the issue still occurs then. +"> +<!ENTITY issues.openPreferences.label "Open filter preferences"> + +<!ENTITY issues.ownfilters.description " + Some of the filters applied on this page are user-defined. Please disable + the filters that might have caused the issue: +"> +<!ENTITY issues.ownfilters.disable.label "Disable filter"> + +<!ENTITY issues.disabledgroups.description " + The following filter subscriptions / filter groups are disabled, yet they might have + an effect on this page: +"> +<!ENTITY issues.disabledgroups.enable.label "Enable filter subscription / filter group"> + +<!ENTITY issues.disabledfilters.description " + The following filters are disabled, yet they might have an effect on this page: +"> +<!ENTITY issues.disabledfilters.enable.label "Enable filter"> + +<!ENTITY issues.override.label "The &configuration is correct, continue with the report"> +<!ENTITY issues.change.description " + Your configuration has been changed. Please reload the page to test the changes + and submit a report if the issue hasn't been resolved by the alterations. +"> + +<!ENTITY typeWarning.description " + You have indicated that you want to report a general issue with Adblock Plus rather + than a problem with the filters. Please note that such issues are best reported + in the [link]Adblock Plus forum[/link]. You should only use the issue reporter to + supplement an existing discussion, as nobody will notice your report + unless you provide them with the link to it. The automatically generated link + will be provided after submitting the report. +"> + +<!ENTITY typeWarning.override.label "I under&stand and want to submit the report anyway"> +<!ENTITY reloadButton.label "&Reload page"> +<!-- Please keep screenshot.heading short - it is shown in the progress bar, not much space there --> +<!ENTITY screenshot.heading "Attach screenshot"> + +<!ENTITY screenshot.description " + The same page can look different for different people. It may help us to + understand the problem if you attach a screenshot to your report. You can remove + sections containing sensitive information as well as mark areas where the + problem is noticeable. To do that click the corresponding button and select + a section of the image with your mouse. +"> + +<!ENTITY screenshot.attach.label "A&ttach a page image to the report"> +<!ENTITY screenshot.mark.label "&Mark the problem"> +<!ENTITY screenshot.remove.label "&Remove sensitive data"> +<!ENTITY screenshot.undo.label "&Undo"> +<!-- Please keep commentPage.heading short - it is shown in the progress bar, not much space there --> +<!ENTITY commentPage.heading "Enter comment"> + +<!ENTITY commentPage.description " + The text field below allows you to enter a comment to help us understand the issue. + This step is optional but recommended if the problem isn't obvious. + You can also review the report data before it is sent. +"> + +<!ENTITY emailComment.label " + We encourage you to enter a valid email address so that we can contact you if there are questions + about your report. It will also allow us to recognize your contributions and to prioritize them higher. +"> +<!ENTITY comment.label "&Comment (optional):"> +<!ENTITY comment.lengthWarning "The length of your comment exceeds 1000 characters. Only the first 1000 characters will be sent."> +<!ENTITY email.label "E&mail:"> +<!ENTITY anonymous.label "&Anonymous submission"> +<!ENTITY anonymity.warning "We won't be able to come back to you and will likely prioritize the report lower."> + +<!ENTITY attachExtensions.label "Attach a list of active e&xtensions to the report in case add-on conflict is the cause of the problem"> +<!ENTITY sendButton.label "Se&nd report"> +<!ENTITY showData.label "Show report data"> +<!ENTITY data.label "Re&port data:"> +<!-- Please keep sendPage.heading short - it is shown in the progress bar, not much space there --> +<!ENTITY sendPage.heading "Send report"> +<!ENTITY sendPage.waitMessage "Please wait while Adblock Plus is submitting your report."> +<!ENTITY sendPage.confirmation "Your report has been saved. You can access it at the following address:"> +<!ENTITY sendPage.knownIssue "The issue you reported is probably already known. More information:"> + +<!-- Note: the placeholder ?1? will be replaced by the error code --> +<!ENTITY sendPage.errorMessage " + An attempt to send the report failed with error code "?1?". Please ensure you are + connected to the Internet and retry. If the problem persists please request + assistance in the [link]Adblock Plus forum[/link]. +"> +<!ENTITY sendPage.retry.label "Send again"> + +<!ENTITY copyLink.label "&Copy report link"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/sidebar.dtd new file mode 100644 index 0000000..f612047 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/sidebar.dtd @@ -0,0 +1,41 @@ +<!ENTITY detached.title "Adblock Plus: Blockable items (detached)"> + +<!ENTITY detach.label "Detach"> +<!ENTITY reattach.label "Reattach"> + +<!ENTITY search.label "&Search:"> +<!ENTITY type.label "Type"> +<!ENTITY address.label "Address"> +<!ENTITY filter.label "Filter"> +<!ENTITY state.label "State"> +<!ENTITY size.label "Size"> +<!ENTITY filterSource.label "Filter source"> +<!ENTITY docDomain.label "Document source"> +<!ENTITY docDomain.thirdParty "(third party)"> +<!ENTITY docDomain.firstParty "(first party)"> +<!ENTITY noitems.label "No blockable items"> +<!ENTITY whitelisted.label "Whitelisted page"> +<!ENTITY tooltip.address.label "Address:"> +<!ENTITY tooltip.type.label "Type:"> +<!ENTITY tooltip.type.blocked "(blocked)"> +<!ENTITY tooltip.type.whitelisted "(whitelisted)"> +<!ENTITY tooltip.size.label "Size:"> +<!ENTITY tooltip.docDomain.label "Document source:"> +<!ENTITY tooltip.filter.label "Filter in effect:"> +<!ENTITY tooltip.filter.disabled "(disabled)"> +<!ENTITY tooltip.filterSource.label "Filter source:"> + +<!ENTITY context.block.label "Block this item"> +<!ENTITY context.editfilter.label "Edit filter in effect"> +<!ENTITY context.whitelist.label "Add exception rule for item"> +<!-- Note: the placeholder ?1? will be replaced by the filter text --> +<!ENTITY context.disablefilter.label "Disable filter ?1?"> +<!-- Note: the placeholder ?1? will be replaced by the filter text --> +<!ENTITY context.enablefilter.label "Re-enable filter ?1?"> +<!-- Note: the placeholder ?1? will be replaced by the domain name of the current page --> +<!ENTITY context.disablefilteronsite.label "Disable this filter on ?1?"> +<!ENTITY context.open.label "Open in New Tab"> +<!ENTITY context.flash.label "Flash item's borders"> +<!ENTITY context.copy.label "Copy item's address"> +<!ENTITY context.copyFilter.label "Copy filter"> +<!ENTITY context.selectAll.label "Select all"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/subscriptionSelection.dtd new file mode 100644 index 0000000..78444d1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/en-US/subscriptionSelection.dtd @@ -0,0 +1,19 @@ +<!ENTITY dialog.title "Add Adblock Plus filter subscription"> + +<!ENTITY viewList.label "View filters"> +<!ENTITY visitHomepage.label "Visit home page"> + +<!ENTITY addSubscription.label "Add subscription"> + +<!ENTITY list.download.failed "Adblock Plus failed to retrieve the list of subscriptions."> +<!ENTITY list.download.retry "Try again"> +<!ENTITY list.download.website "View website"> + +<!ENTITY fromWeb.description "Please confirm that you want to add this filter subscription. You can change the subscription title or location before adding it."> + +<!ENTITY title.label "Subscrip&tion title:"> +<!ENTITY location.label "Fi&lter list location:"> +<!-- Note: the placeholder (?1?) will be replaced by the name of the filter subscription required --> +<!ENTITY supplementMessage "This filter subscription is meant to be used with the filter subscription "?1?" which you are not using yet."> +<!-- Note: the placeholder (?1?) will be replaced by the name of the filter subscription required --> +<!ENTITY addMain.label "Add filter &subscription "?1?" as well"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/composer.dtd new file mode 100644 index 0000000..20fc48a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "en la fi&no de la adreso"> +<!ENTITY domainRestriction.label "&Limigi al retregiono:"> +<!ENTITY collapse.default.no.label "Uzi apriorojn (ne)"> +<!ENTITY firstParty.label "Nu&r de unua liveranto"> +<!ENTITY preferences.label "Montri &ekzistantajn filtrilojn..."> +<!ENTITY pattern.label "Serĉi modelon"> +<!ENTITY thirdParty.label "Nur de &tria liveranto"> +<!ENTITY filter.label "Nova &filtrilo:"> +<!ENTITY collapse.label "Ma&letendi blokitajn:"> +<!ENTITY match.warning "La modelo, kiun vi enigis, ne plu konformas kun la adreso, kiu estu blokata/transprenata en la blankan liston kaj ne havos efikon al ĝi."> +<!ENTITY anchor.start.label "en la &komenco de la adreso"> +<!ENTITY matchCase.label "&Atenti usklecon"> +<!ENTITY custom.pattern.label "&Propraj:"> +<!ENTITY unselectAllTypes.label "Elekti nenion"> +<!ENTITY type.whitelist.label "Es&ceptoregulo"> +<!ENTITY regexp.warning "La modelo, kiun vi enigis, estos interpretata kiel regula esprimo, kiu ne povas esti traktata oer Adblock Plus kaj povas malrapidigi vian retumadon. Se vi ne intencas uzi regulan esprimon, aldonu asteriskon (*) al la fino de la modelo."> +<!ENTITY dialog.title "Aldoni filtrilregulon al Adblock Plus"> +<!ENTITY basic.label "Baza vido"> +<!ENTITY type.filter.label "&Blokanta filtrilo"> +<!ENTITY types.label "Apliki al specoj:"> +<!ENTITY shortpattern.warning "La modelo, kiun vi enigis, estas tro mallonga por optimigo kaj povas malrapidigi vian retumadon. Rekomendiĝas, ke vi elektas pli longan signoĉenon por ĉi tiu filtrilo por permesi Adblock Plus trakti la filtrilon pli efike."> +<!ENTITY collapse.yes.label "Jes"> +<!ENTITY anchors.label "Akcepti modelon nur:"> +<!ENTITY collapse.default.yes.label "Uzi apriorojn (jes)"> +<!ENTITY domainRestriction.help "Uzu ĉi tiun opcion por specifi unu retregionon aŭ plurajn retregionojn, separitajn per strekosigno (|). La filtrilo estos nur aplikata al elektita(j) retregiono(j). Tildo (~) antaŭ retregiona nomo indikas, ke la filtrilo ne estos aplikata al tiu retregiono."> +<!ENTITY accept.label "Aldoni filtrilon"> +<!ENTITY options.label "Opcioj"> +<!ENTITY disabled.warning "Addblock Plus estas nun malŝaltita. Vi povas ankoraŭ aldoni filtrilojn sed ili ne estos aplikataj, ĝis vi [link]enŝaltas Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "en la komenco de la retre&giona nomo"> +<!ENTITY collapse.no.label "Ne"> +<!ENTITY selectAllTypes.label "Elekti ĉion"> +<!ENTITY advanced.label "Detala vido"> +<!ENTITY pattern.explanation "La modelo povas esti parto de la adreso; asteriskoj (*) funkcias kiel ĵokeroj. La filtrilo estos nur aplikata al adresoj, kiuj konformas kun la specifita modelo."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/filters.dtd new file mode 100644 index 0000000..a7c498c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Ĉiuj viaj propraj filtriloj estos anstataŭigataj per la enhavo de la elektita dosiero. Ĉu vi volas daŭrigi?"> +<!ENTITY slow.column "&Malrapidaj filtriloj"> +<!ENTITY enabled.column "Ebl&igita"> +<!ENTITY subscription.lastDownload.checksumMismatch "Malsukcesis, kontrolsuma miskongruo"> +<!ENTITY noFiltersInGroup.text "La elektita grupo estas malplena."> +<!ENTITY subscription.actions.label "Agoj"> +<!ENTITY filter.selectAll.label "Elekti ĉion"> +<!ENTITY backupButton.label "Se&kurkopii kaj restaŭri"> +<!ENTITY restore.minVersion.warning "Averto: la dosiero estas kreita per pli nova versio de Adblock Plus. Vi ĝisdatigu al la plej nova versio de Adblock Plus antaŭ ol vi restaŭri ion el ĉi tiu dosiero."> +<!ENTITY restore.error "La dosieraj datumoj ne povis traktitaj, ĉu tio eble ne estas sekurkopia dosiero de Adblock Plus?"> +<!ENTITY sort.ascending.label "Ordigo &A > Z"> +<!ENTITY sort.label "&Ordigi laŭ"> +<!ENTITY subscription.source.label "Filtrila listo"> +<!ENTITY hitcount.column "&Trafoj"> +<!ENTITY noFilters.text "Vi ankoraŭ ne havas proprajn filtrilojn."> +<!ENTITY backup.custom.title "Nur propraj filtriloj"> +<!ENTITY subscription.external.label "Ĝisdatigita per alia etendaĵo"> +<!ENTITY subscription.delete.label "Forviŝi"> +<!ENTITY noGroupSelected.text "Vi devas elekti filtrilgrupon antaŭ ol filtriloj povas esti vidigataj."> +<!ENTITY filter.cut.label "Eltondi"> +<!ENTITY restore.default.label "Restaŭri sekurkopion de ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Elŝutanta..."> +<!ENTITY subscriptions.tab.label "Filtrilabonoj"> +<!ENTITY sort.descending.label "Ordigo &Z > A"> +<!ENTITY filters.remove.warning "Ĉu vi vere volas forigi ĉiujn elektitajn filtrilojn?"> +<!ENTITY filter.delete.label "Forviŝi"> +<!ENTITY addSubscriptionAdd.label "Aldoni"> +<!ENTITY viewMenu.label "Vidi"> +<!ENTITY subscription.lastDownload.unknown "Neniu"> +<!ENTITY addSubscriptionCancel.label "Nuligi"> +<!ENTITY subscription.enabled.label "Ebligita"> +<!ENTITY noSubscriptions.text "Vi ankoraŭ ne aldonis filtrilabonojn. Adblock Plus blokos enion sen filtriloj, bonvolu uzu "Aldoni filtrilabonon" por aldoni abonon."> +<!ENTITY subscription.update.label "Ĝisdatigi filtrilojn"> +<!ENTITY dialog.title "Filtrilaj agordoj de Adblock Plus"> +<!ENTITY addFilter.label "Al&doni filtrilon"> +<!ENTITY subscription.minVersion.warning "Ĉi tiu filtrilabono bezonas pli novan version de Adblock Plus, vi ĝisdatigu al la plej nova versio de Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Malsukcesis, tio ne estas valida adreso"> +<!ENTITY backup.error "Okazis eraro dum skribado de filtriloj en dosieron. Kontrolu, ke la dosiero ne estas kontraŭskribe protektita aŭ uzate per alia aplikaĵo."> +<!ENTITY filter.moveUp.label "Supren"> +<!ENTITY addGroup.label "Aldoni filtril&grupon"> +<!ENTITY filter.edit.label "Redakti"> +<!ENTITY subscription.showHideFilters.label "Montri/Kaŝi filtrilojn"> +<!ENTITY acceptableAds2.label "Permesi neal&trudiĝantan reklamon"> +<!ENTITY addSubscriptionOther.label "Aldoni alian abonon"> +<!ENTITY close.label "Fermi"> +<!ENTITY sort.none.label "&Nenio"> +<!ENTITY filter.actions.label "Filtrilaj agoj"> +<!ENTITY filter.copy.label "Kopii"> +<!ENTITY filter.moveDown.label "Malsupren"> +<!ENTITY filter.resetHitCounts.label "Rekomencigi trafostatistikon"> +<!ENTITY readMore.label "Legu pli"> +<!ENTITY subscription.moveUp.label "Supren"> +<!ENTITY addSubscription.label "Aldoni &filtrilabonon"> +<!ENTITY subscription.homepage.label "Hejmpaĝo"> +<!ENTITY backup.complete.title "Ĉiuj filtriloj kaj abonoj"> +<!ENTITY restore.own.label "Restaŭri propran sekurkopion"> +<!ENTITY restore.complete.warning "Ĉiuj viaj filtrilaj agordoj estos anstataŭigataj per la enhavo de la elektita dosiero. Ĉu vi volas daŭrigi?"> +<!ENTITY filters.tab.label "Propraj filtriloj"> +<!ENTITY backup.label "Krei novan sekurkopion"> +<!ENTITY find.label "&Serĉi"> +<!ENTITY subscription.moveDown.label "Malsupren"> +<!ENTITY subscription.lastDownload.connectionError "Malsukcesis, elŝuta eraro"> +<!ENTITY subscription.lastDownload.success "Sukceso"> +<!ENTITY subscription.lastDownload.invalidData "Malsukcesis, tio ne estas listo de validaj filtriloj"> +<!ENTITY filter.paste.label "Alglui"> +<!ENTITY subscription.disabledFilters.enable "Ebligi malebligitajn filtrilojn"> +<!ENTITY lasthit.column "&Lasta trafo"> +<!ENTITY subscription.editTitle.label "Redakti titolon"> +<!ENTITY subscription.disabledFilters.warning "Kelkaj filtriloj en ĉi tiu abono estas malebligitaj."> +<!ENTITY filter.column "&Filtrilregulo"> +<!ENTITY subscription.lastDownload.label "Lasta elŝuto:"> +<!ENTITY viewList.label "Montri liston"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/firstRun.properties new file mode 100644 index 0000000..64666ee --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Retumu private malebligante spuradon resp. kaŝante viajn spurojn antaŭ reklamfirmaoj, kiuj volonte spurus ĉiun el viaj movoj. +firstRun_toggle_off=Malŝaltita +firstRun_feature_tracking=Malebligi spuradon +firstRun_feature_malware=Bloki fiprogramaron +firstRun_title=Adblock Plus instaliĝis +firstRun_acceptableAdsExplanation=Ni volonte kuraĝigus retejojn uzi sinceran, nealtrudiĝeman varbadon. Tial ni fiksis <a>striktajn direktivojn</a> por identigi akcepteblan reklamon, kiujn vi trovas en la defaŭltaj agordoj. Se vi ankoraŭ volas bloki ĉian reklamon, vi povas <a>malebligi</a> tion dum malmultaj sekundoj. +firstRun_toggle_on=Ŝaltita +firstRun_contributor_credits=Danko al kontribuintoj +firstRun_dataCorruptionWarning=Ĉu la paĝo estas plumontrata? <a>Klaku ĉi tie!</a> +firstRun_acceptableAdsHeadline=Altrudiĝema reklamo estos nun blokata +firstRun_share=Informu viajn amikojn +firstRun_share_headline=<a>Donu al ni manon</a>, por ke ni faru la reton pli bona loko +firstRun_features=Adblock Plus povas fari pli multe ol bloki reklamon +firstRun_feature_malware_description=Faru vian retumadon pli sekura blokante konatajn domajnojn de fiprogramaro. +firstRun_feature_social_description=Aŭtomate forigi vian retan agadon faritan pere de butonoj de sociaj medioj, kiel la butono "Ŝati" en Fejsbuko, kiuj aperas en retpaĝoj kaj spuras vian konduton. +firstRun_donate=donaci +firstRun_donate_label=Subtenu nian projekton +firstRun_feature_social=Forigi butonojn de sociaj aŭdvidaĵoj +firstRun_legacySafariWarning=Vi uzas malnovan version de Safari, kiun Adblock Plus ne subtenas. Eble ĝi ne korekte funkcios aŭ ĝenas la travivaĵon de uzanto sur kelkaj retejoj. Ni eksplicite rekomendas aŭ ĝisdatigi al Safari 6.1.1 aŭ pli alta versio (estas je dispono por Mac OS X 10.8 Mountain Lion) aŭ Safari 7.0.1 aŭ pli alta versio (estas je dispono por OS X 10.9 Mavericks) aŭ uzi la plej novan version de Mozilla Firefox, Google Chrome aŭ Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/global.properties new file mode 100644 index 0000000..f37a94d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Neniuj blokeblaj elementoj en ĉi tiu paĝo +action3_tooltip=Klaku por ebligi/malebligi Adblock Plus. +notification_antiadblock_title=Ĉu kaŝi celmesaĝojn? +type_label_script=skripto +filter_elemhide_nocriteria=Neniuj kriterioj specifitaj por ekkoni la kaŝotan elementon +blockingGroup_title=Reguloj por bloki reklamon +whitelisted_tooltip=Adblock Plus estas malebligita sur ĉi tiu paĝo. +type_label_stylesheet=stilfolio +blocked_count_tooltip=?1? el ?2? +type_label_font=tiparo +type_label_popup=ŝprucfenestro +filter_regexp_tooltip=Ĉi tiu filtrilo estas aŭ regula esprimo aŭ tro mallonga por optimigo. Tro multe da ĉi tiuj filtriloj povus malrapidigi vian retumadon. +action0_tooltip=Klaku por vidigi la kuntekstan menuon, klaku per la meza musklavo por ebligi/malebligi ĝin. +whitelisted_page=Adblock Plus estas malebligita por ĉi tiu paĝo +remove_group_warning=Ĉu vi vere volas forigi ĉi tiun grupon? +action1_tooltip=Klaku por malfermi/fermi blokeblajn elementojn, klaku per la meza musklavo por ebligi/malebligi ĝin. +type_label_xmlhttprequest=XML-peto +active_tooltip=Adblock Plus estas ebligita, ?1? filtrilabonoj kaj ?2? propraj filtriloj estas uzataj. +type_label_document=dokumento +type_label_object_subrequest=objekta subpeto +whitelistGroup_title=Esceptoreguloj +disabled_tooltip=Adblock Plus estas malebligita. +filter_elemhide_duplicate_id=Nur unu el la kaŝotaj elementoj povas esti specifata +type_label_object=objekto +action2_tooltip=Klaku por malfermi agordojn, klaku per la meza musklavo por ebligi/malebligi ĝin. +type_label_subdocument=kadro +clearStats_warning=Tio rekomencigos la statistikon de filtrilaj trafoj kaj malebligos la nombradon de filtrilaj trafoj. Ĉu vi volas daŭrigi? +notification_antiadblock_message=Estas konate, ke ĉi tiu retejo montras celmesaĝojn por uzantoj de Adblock Plus. Ĉu vi volas, ke Adblock Plus kaŝu celmesaĝojn? +blocked_count_addendum=(ankaŭ en blanka listo: ?1?, kaŝita: ?2?) +subscription_invalid_location=La loko de la listo de filtriloj estas nek valida URL nek valida dosiernomo. +type_label_image=bildo +remove_subscription_warning=Ĉu vi efektive volas fini ĉi tiun abonon? +type_label_other=alia +mobile_menu_enable=ABP: Ebligi +type_label_media=aŭdio/video +mobile_menu_disable_site=ABP: Malebligi en ?1? +elemhideGroup_title=Reguloj por kaŝi elementojn +mobile_menu_enable_site=ABP: Ebligi en ?1? +type_label_elemhide=kaŝita +newGroup_title=Nova grupo de filtriloj +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/overlay.dtd new file mode 100644 index 0000000..6c1bb4f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Jes"> +<!ENTITY notification.button.no "&Ne"> +<!ENTITY sync.label "&Sinkronigi agordojn de Adblock Plus"> +<!ENTITY whitelist.site.label "Malebligi sur ?1?"> +<!ENTITY filters.label "&Filtrilaj agordoj"> +<!ENTITY disable.label "Ĉie malebligi"> +<!ENTITY objecttab.title "Bloki"> +<!ENTITY objecttab.tooltip "Klaku ĉi tien por bloki ĉi tiun objekton per Adblock Plus"> +<!ENTITY menuitem.label "&Agordoj de Adblock Plus"> +<!ENTITY objecttabs.label "&Montri langetojn de Flash kaj Ĝavo"> +<!ENTITY sendReport.label "&Raporti problemon pri ĉi tiu paĝo"> +<!ENTITY whitelist.page.label "Malebligi nur sur ĉi tiu paĝo"> +<!ENTITY context.image.label "Adblock Plus: Bloki bildon"> +<!ENTITY counthits.label "&Nombri filtriltrafojn"> +<!ENTITY opensidebar.label "Malfermi &blokeblajn elementojn"> +<!ENTITY notification.button.close "&Fermi"> +<!ENTITY contribute.label "Kontribuu al Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Bloki kadron"> +<!ENTITY blocked.tooltip "Blokitaj elementoj sur ĉi tiu paĝo:"> +<!ENTITY hideplaceholders.label "Kaŝi &lokokupilojn de blokitaj elementoj"> +<!ENTITY showinstatusbar.label "Vidi&gi en statstrio"> +<!ENTITY sidebar.title "Blokeblaj elementoj sur la nuna paĝo"> +<!ENTITY options.label "&Opcioj"> +<!ENTITY context.object.label "Adblock Plus: Bloki objekton"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Reebligi sur ĉi tiu paĝo"> +<!ENTITY filters.tooltip "Plej aktivaj filtriloj:"> +<!ENTITY closesidebar.label "Fermi &blokeblajn elementojn"> +<!ENTITY showintoolbar.label "&Vidigi en ilobreto"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Bloki aŭdion/videon"> +<!ENTITY subscription.update.label "Ĝisdatigi filtrilojn"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/sendReport.dtd new file mode 100644 index 0000000..5e145e7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Malfari"> +<!ENTITY issues.disabledgroups.description "La sekvontaj filtrilabonoj/filtrilgrupoj estas malebligitaj, sed ili povus havi efikon al ĉi tiu paĝo:"> +<!ENTITY showData.label "Montri raportodatumojn"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokas tro &multe"> +<!ENTITY issues.change.description "Via konfiguro estas ŝanĝita. Bonvolu reŝargi la paĝon por testi la ŝanĝojn kaj sendu la raporton, se la problemo ne solviĝos per la ŝanĝoj."> +<!ENTITY email.label "&Retpoŝto:"> +<!ENTITY issues.openPreferences.label "Malfermi filtrilagordojn"> +<!ENTITY sendPage.confirmation "Via raporto estas konservita. Vi povas atingi ĝin ĉe sekvonta adreso:"> +<!ENTITY copyLink.label "&Kopii raportligilon"> +<!ENTITY issues.nofilters.description "Adblock Plus blokas nenion sur ĉi tiu paĝo. La problemo, kiun vi observas, plej verŝajne ne rilatas al Adblock Plus."> +<!ENTITY sendPage.knownIssue "La problemo, kiun vi raportis, eble estas jam konata. Pliaj informoj:"> +<!ENTITY typeSelector.other.description "Elektu ĉi tiun opcion, se vi kredas problemon kun Adblock Plus mem pli verŝajna ol kun ĝiaj filtriloj."> +<!ENTITY issues.disabledgroups.enable.label "Ebligi filtrilabonon/filtrilgrupon"> +<!ENTITY typeWarning.override.label "Mi komprena&s kaj volas sendi la raporton malgraŭ tio"> +<!ENTITY issues.disabled.enable.label "Ebligi Adblock Plus"> +<!ENTITY update.fixed.description "La ĝisdatigoj de viaj filtrilabonoj verŝajne solvis la problemon, kiun vi sciigis. Bonvolu reŝargi la paĝon kaj alklaku denoe 'Sendi denove', se la problemo ankoraŭ ekzistas."> +<!ENTITY anonymous.label "&Anonima sendado"> +<!ENTITY reloadButton.label "&Reŝargi paĝon"> +<!ENTITY recentReports.clear.label "&Forigi ĉiujn raportojn"> +<!ENTITY typeSelector.description "Ĉi tiu fenestro gvidos vin tra la paŝoj, kiuj estas bezonataj por sendi la problemraporton de Adblock Plus. Unue bonvolu elekti la problemtipon, kiun vi renkontis sur ĉi tiu paĝo:"> +<!ENTITY screenshot.remove.label "&Forigi gravajn datumojn"> +<!ENTITY issues.ownfilters.description "Kelkaj filtriloj aplikataj al ĉi tiu paĝo estas propre difinitaj. Bonvolu malebligi la filtrilojn, kiuj povus kaŭzi la problemon:"> +<!ENTITY update.inProgress.description "Adblock Plus devas ĝisdatigi viajn fitrilabonojn por certigi, ke la problemo ne estas jam solvita. Bonvolu atendi..."> +<!ENTITY sendPage.retry.label "Denove sendi"> +<!ENTITY data.label "Ra&portodatumoj:"> +<!ENTITY recentReports.label "Viaj antaŭ nelonge senditaj raportoj"> +<!ENTITY typeWarning.description "Vi indikis, ke vi volas raporti ĝeneralan problemon kun Adblock Plus opiniante tion pli verŝajna ol problemo kun la filtriloj. Bonvolu atenti, ke tia problemo estu plej bone raportata en [link]forumo de Adblock Plus[/link]. Vi nur uzu la problemraportilon por kompletigi ekzistantan diskuton, ĉar neniu rimarkos via raporton, escepte, se vi donas al ili la ligilon al ĝi. La aŭtomate generita ligilo estos provizita post sendado de la raporto."> +<!ENTITY issues.disabled.description "Adblock Plus estas malebligita, ĝi blokos nenion en sia aktuala stato."> +<!ENTITY attachExtensions.label "Kun&sendi liston de aktivaj etendaĵoj kun la raporto, se etendaĵa konflikto estas la kaŭzo de la problemo"> +<!ENTITY issues.nosubscriptions.add.label "Aldoni filtrilabonon"> +<!ENTITY issues.disabledfilters.enable.label "Ebligi filtrilon"> +<!ENTITY issues.override.label "La &konfiguro estas korekta, daŭrigi la raporton"> +<!ENTITY issues.nosubscriptions.description "Ŝajnas, ke vi ne abonis preparitan liston de filtriloj, kiuj aŭtomate forigas nedeziratan enhavon de retejoj."> +<!ENTITY typeSelector.falsePositive.description "Elektu ĉi tiun opcion, se la paĝo malhavas gravan enhavon, ne estas vidigata korekte abo malsukcesas korekte funkcii. Vi povas determini, ĉu Adblock Plus estas la kaŭzo de la problemo malebligante ĝin provizore."> +<!ENTITY typeSelector.other.label "&Alia problemo"> +<!ENTITY emailComment.label "Ni rekomendas al vi enigi validan retpoŝtan adreson, por ke ni povu kontakti vin, se estos demandoj pri via raporto. Tio ankaŭ ebligas al ni agnoski viajn kontribuojn kaj doni pli altan prioritaton al ili."> +<!ENTITY issues.whitelist.remove.label "Denove ebligi Adblock Plus sur ĉi tiu paĝo"> +<!ENTITY outdatedSubscriptions.description "La sekvontaj filtrilabonoj ne ĝisdatiĝis de almenaŭ du semajnoj. Bonvolu ĝisdatigi ĉi tiujn abonojn, antaŭ ol vi sendas raporton, la problemo estas eble jam solvita."> +<!ENTITY dataCollector.description "Bonvolu atendi kelkajn momentojn dum Adblock Plus akiras la necesajn datumojn."> +<!ENTITY sendButton.label "Se&ndi raporton"> +<!ENTITY comment.label "&Komento (laŭvole):"> +<!ENTITY sendPage.errorMessage "Provo por sendi la raporton malsukcesis kun erarkodo "?1?". Bonvolu certiĝu, ke vi estas konektita al la interreto kaj provu denove. Se la problemo pluekzistas, bonvolu peti pri helpo en la [link]forumo de Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Montri antaŭ nelonge senditajn raportojn"> +<!ENTITY commentPage.heading "Enigi komenton"> +<!ENTITY update.start.label "Startigu nun ĝisdatigon"> +<!ENTITY issues.disabledfilters.description "La sekvontaj filtriloj estas malebligitaj, sed ili povus havi efikon al ĉi tiu paĝo:"> +<!ENTITY screenshot.description "La sama paĝo povas aspekti alie por diferencaj homoj. Helpus kompreni la problemon, se vi aldonas ekrankopion al via raporto. Vi povas forigi sekciojn, kiuj enhavas konfidencajn informojn kaj marki lokojn, kie la problemo estas rimarkebla. Por fari tion, alklaku la respektivan butonon kaj elektu la sekcion de la bildo per via muso."> +<!ENTITY screenshot.attach.label "Kunsendi paĝobi&ldon kun la raporto"> +<!ENTITY issues.whitelist.description "Adblock Plus estas nun malebligita sur la paĝo, pri kiu vi raportas. Bonvolu ebligi ĝin denove kaj reŝargu la paĝon antaŭ ol vi sendas la raporton por helpi analizi ĉi tiun problemon."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus ne blokas &reklamon"> +<!ENTITY typeSelector.heading "Elekti problemtipon"> +<!ENTITY anonymity.warning "Ni ne povas turni nin al vi denove kaj ni donos verŝajne pli malaltan prioritaton al via raporto."> +<!ENTITY wizard.title "Problemraportilo"> +<!ENTITY issues.ownfilters.disable.label "Malebligi filtrilon"> +<!ENTITY commentPage.description "La tekstokampo malsupre ebligas al vi enigi komenton por helpi al ni kompreni la problemon. Ĉi tiu paŝo estas laŭvola, sed rekomendata, se la problemo ne estas evidenta. Vi povas ankaŭ kontroli la raportodatumojn, antaŭ ol ĝi estas forsendata."> +<!ENTITY comment.lengthWarning "Via komento havas pli ol 1000 signojn. Nur la unuaj 1000 signoj estos sendataj:"> +<!ENTITY typeSelector.falseNegative.description "Elektu ĉi tiun opcion, se reklamo estas vidigata, kvankam Adblock Plus estas ebligita."> +<!ENTITY sendPage.waitMessage "Bonvolu atendi, dum Adblock Plus sendas vian raporton."> +<!ENTITY dataCollector.heading "Bonvenon al la problemraportilo"> +<!ENTITY screenshot.heading "Kunsendi ekrankopion"> +<!ENTITY sendPage.heading "Sendi raporton"> +<!ENTITY issues.subscriptionCount.description "Ŝajnas, ke vi abonis tro multajn filtrilabonojn. Ĉi tiu agordo ne rekomendiĝas, ĉar ĝi plialtigas la probablecon de problemoj. Ni ankaŭ ne povas akcepti vian problemraporton, ĉar estas malklare, kiu filtrilabona aŭtoro devas agi. Bonvolu forigi ĉion, escepte de la vere necesaj filtrilabonoj kaj testu, ĉu la problemo poste ankoraŭ ekzistas."> +<!ENTITY screenshot.mark.label "Ma&rki la problemon"> +<!ENTITY privacyPolicy.label "Reguloj de privateco"> +<!ENTITY issues.description "Adblock Plus malkovris problemojn kun via konfiguro, kiu eble estas kulpa pri ĉi tiu problemo aŭ malfaciligas la analizadon de la raporto."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/sidebar.dtd new file mode 100644 index 0000000..949e6ac --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Borderoj de elementoj de Flash"> +<!ENTITY address.label "Adreso"> +<!ENTITY context.open.label "Malfermi en nova langeto"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Fonto de la filtrilo:"> +<!ENTITY noitems.label "Neniuj blokeblaj elementoj"> +<!ENTITY filter.label "Filtrilo"> +<!ENTITY tooltip.size.label "Grandeco:"> +<!ENTITY reattach.label "Denove kunligi"> +<!ENTITY search.label "&Serĉi:"> +<!ENTITY docDomain.thirdParty "(de tria liveranto)"> +<!ENTITY filterSource.label "Fonto de la filtrilo"> +<!ENTITY tooltip.docDomain.label "Fonto de la dokumento:"> +<!ENTITY context.copy.label "Kopii la adreson de la elemento"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Malebligi filtrilon ?1?"> +<!ENTITY context.copyFilter.label "Kopii filtrilon"> +<!ENTITY context.block.label "Bloki ĉi tiun elementon"> +<!ENTITY context.enablefilter.label "Denove ebligi filtrilon ?1?"> +<!ENTITY detach.label "Malligi"> +<!ENTITY whitelisted.label "Paĝo en blanka listo"> +<!ENTITY context.disablefilteronsite.label "Malebligi ĉi tiun filtrilon sur ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokeblaj elementoj (malligitaj)"> +<!ENTITY docDomain.firstParty "(de unua liveranto)"> +<!ENTITY tooltip.type.whitelisted "(en blanka listo)"> +<!ENTITY tooltip.filter.label "Efika filtrilo:"> +<!ENTITY tooltip.filter.disabled "(malebligita)"> +<!ENTITY context.editfilter.label "Redakti efikan filtrilon"> +<!ENTITY tooltip.type.blocked "(blokita)"> +<!ENTITY size.label "Grandeco"> +<!ENTITY context.whitelist.label "Aldoni esceptoregulon por elemento"> +<!ENTITY context.selectAll.label "Elekti ĉion"> +<!ENTITY state.label "Stato"> +<!ENTITY docDomain.label "Fonto de la dokumento"> +<!ENTITY tooltip.address.label "Adreso:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/subscriptionSelection.dtd new file mode 100644 index 0000000..b28ca3b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eo/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Ankaŭ aldoni &filtrilabonon "?1?""> +<!ENTITY list.download.failed "Adblock Plus malsukcesis akiri la liston de abonoj."> +<!ENTITY list.download.retry "Ankoraŭfoje provi"> +<!ENTITY title.label "&Titolo de la abono:"> +<!ENTITY list.download.website "Rigardi retejon"> +<!ENTITY supplementMessage "Ĉi tiu filtrilabono estu uzata kun la filtrilabono "?1?", kiun vi ankoraŭ ne uzas."> +<!ENTITY viewList.label "Rigardi filtrilojn"> +<!ENTITY visitHomepage.label "Viziti hejmpaĝon"> +<!ENTITY addSubscription.label "Redakti abonon"> +<!ENTITY dialog.title "Aldoni filtrilabonon de Adblock Plus"> +<!ENTITY location.label "&Loko de la listo de filtriloj:"> +<!ENTITY fromWeb.description "Bonvolu konfirmi, ke vi volas aldoni ĉi tiun filtrilabonon. Vi povas ŝanĝi la abonan titolon aŭ lokon antaŭ ol vi aldonas ĝin."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/composer.dtd new file mode 100644 index 0000000..935f034 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "al &final de la dirección"> +<!ENTITY domainRestriction.label "Restringir al d&ominio:"> +<!ENTITY collapse.default.no.label "Usar predeterminado (no)"> +<!ENTITY firstParty.label "Solamente pe&rsonal"> +<!ENTITY preferences.label "&Mostrar filtros existentes…"> +<!ENTITY pattern.label "Buscar patrón"> +<!ENTITY thirdParty.label "Solamen&te de terceros"> +<!ENTITY filter.label "Nuevo fi&ltro:"> +<!ENTITY collapse.label "&Colapsar los bloqueados:"> +<!ENTITY match.warning "El patrón que ingresaste no coincide más con la dirección bloqueada o segura, y no surtirá ningún efecto."> +<!ENTITY anchor.start.label "al com&ienzo de la dirección"> +<!ENTITY matchCase.label "Coincidir m&ayúsculas"> +<!ENTITY custom.pattern.label "&Personalizado:"> +<!ENTITY unselectAllTypes.label "No seleccionar nada"> +<!ENTITY type.whitelist.label "Regla de &excepción"> +<!ENTITY regexp.warning "El patrón que ingresés será interpretado como una expresión constante. Demasiadas expresiones constantes podrían ralentizar tu navegación web. Si no preferís usar expresiones constantes, agregá un asterisco ("*") al final del patrón."> +<!ENTITY dialog.title "Agregar regla de filtro de Adblock Plus"> +<!ENTITY basic.label "Vista básica"> +<!ENTITY type.filter.label "Filtros de &bloqueo"> +<!ENTITY types.label "Aplicar a tipos:"> +<!ENTITY shortpattern.warning "El patrón que ingresaste es demasiado corto para poder ser optimizado. Varios patrones similares podrían ralentizar tu navegación web. Te recomendamos que elijás una cadena más larga para este filtro."> +<!ENTITY collapse.yes.label "Sí"> +<!ENTITY anchors.label "Aceptar solamente patrón:"> +<!ENTITY collapse.default.yes.label "Usar predeterminado (sí)"> +<!ENTITY domainRestriction.help "Especificá uno o más dominios, separados por el símbolo tubería "|", así el filtro se aplica solamente sobre estos dominios. El símbolo ñuflo "~" adelante de un nombre de dominio significa que el filtro no se aplicaría sobre ese dominio."> +<!ENTITY accept.label "Agregar filtro"> +<!ENTITY options.label "Opciones"> +<!ENTITY disabled.warning "Adblock Plus está deshabilitado. Podés seguir agregando filtros, pero no se aplicarán hasta que no actives los [link]filtros de Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "al comienzo del nombre de &dominio"> +<!ENTITY collapse.no.label "No"> +<!ENTITY selectAllTypes.label "Seleccionar todo"> +<!ENTITY advanced.label "Vista avanzada"> +<!ENTITY pattern.explanation "El patrón puede ser cualquier parte de la dirección. El asterisco ("*") funciona como un comodín. El filtro sólo será aplicado a aquellas direcciones que coincidan con el patrón."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/filters.dtd new file mode 100644 index 0000000..4c0cf83 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Todos tus filtros personalizados serán reemplazados por los contenidos del archivo seleccionado. ¿Querés continuar?"> +<!ENTITY slow.column "Filtros &lentos"> +<!ENTITY enabled.column "Ha&bilitado"> +<!ENTITY subscription.lastDownload.checksumMismatch "Falló, el archivo de suma de comprobación no coincide"> +<!ENTITY noFiltersInGroup.text "El grupo seleccionado está vacío."> +<!ENTITY subscription.actions.label "Acciones"> +<!ENTITY filter.selectAll.label "Seleccionar todo"> +<!ENTITY backupButton.label "Resg&uardar y restaurar"> +<!ENTITY restore.minVersion.warning "ADVERTENCIA: este archivo fue creado por una versión más reciente de Adblock Plus. Deberías actualizarte a la última versión de Adblock Plus antes de restaurar este archivo."> +<!ENTITY restore.error "No se pudo procesar los datos del archivo. ¿Este es un archivo de resguardo de Adblock Plus?"> +<!ENTITY sort.ascending.label "Ordenar de la "&A" a la "Z""> +<!ENTITY sort.label "&Ordenar por"> +<!ENTITY subscription.source.label "Lista de filtros"> +<!ENTITY hitcount.column "V&eces usado"> +<!ENTITY noFilters.text "Todavía no tenés ningún filtro personalizado."> +<!ENTITY backup.custom.title "Solamente filtros personalizados"> +<!ENTITY subscription.external.label "Actualizado por otra extensión"> +<!ENTITY subscription.delete.label "Eliminar"> +<!ENTITY noGroupSelected.text "Necesitás seleccionar un grupo de filtros antes de que sus filtros puedan ser visualizados."> +<!ENTITY filter.cut.label "Cortar"> +<!ENTITY restore.default.label "¿Restaurar resguardo de ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Descargando…"> +<!ENTITY subscriptions.tab.label "Suscripciones de filtro"> +<!ENTITY sort.descending.label "Ordenar de la "&Z" a la "A""> +<!ENTITY filters.remove.warning "¿Estás seguro que querés quitar todos los filtros seleccionados?"> +<!ENTITY filter.delete.label "Eliminar"> +<!ENTITY addSubscriptionAdd.label "Agregar"> +<!ENTITY viewMenu.label "Ver"> +<!ENTITY subscription.lastDownload.unknown "No disponible"> +<!ENTITY addSubscriptionCancel.label "Cancelar"> +<!ENTITY subscription.enabled.label "Habilitado"> +<!ENTITY noSubscriptions.text "Todavía no agregaste ninguna suscripción de filtro. Adblock Plus no bloqueará nada sin filtros. Por favor, andá a "Agregar suscripción de filtro" para agregar alguno."> +<!ENTITY subscription.update.label "Actualizar filtros"> +<!ENTITY dialog.title "Preferencia de filtro de Adblock Plus"> +<!ENTITY addFilter.label "&Agregar filtro"> +<!ENTITY subscription.minVersion.warning "Esta suscripción de filtro necesita de una versión más reciente de Adblock Plus. Deberías actualizar a la última versión de Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Falló, no es una dirección válida"> +<!ENTITY backup.error "Hubo un error al escribir filtros al archivo. Asegurate de que el archivo no esté protegido contra escritura o siendo usado por otro programa."> +<!ENTITY filter.moveUp.label "Subir"> +<!ENTITY addGroup.label "Agregar &grupo de filtros"> +<!ENTITY filter.edit.label "Editar"> +<!ENTITY subscription.showHideFilters.label "Mostrar/ocultar filtros"> +<!ENTITY acceptableAds2.label "Permitir publicidad no &hostigadora"> +<!ENTITY addSubscriptionOther.label "Agregar un filtro de suscripción"> +<!ENTITY close.label "Cerrar"> +<!ENTITY sort.none.label "Sin or&denar"> +<!ENTITY filter.actions.label "Acciones de filtro"> +<!ENTITY filter.copy.label "Copiar"> +<!ENTITY filter.moveDown.label "Bajar"> +<!ENTITY filter.resetHitCounts.label "Restablecer estadísticas de uso"> +<!ENTITY readMore.label "Leer más"> +<!ENTITY subscription.moveUp.label "Subir"> +<!ENTITY addSubscription.label "Agregar suscri&pción de filtros"> +<!ENTITY subscription.homepage.label "Página principal"> +<!ENTITY backup.complete.title "Todos los filtros y suscripciones"> +<!ENTITY restore.own.label "Restaurar tu propio resguardo"> +<!ENTITY restore.complete.warning "Todas tus preferencias de filtros serán reemplazadas por los contenidos del archivo seleccionado. ¿Querés continuar?"> +<!ENTITY filters.tab.label "Filtros personalizados"> +<!ENTITY backup.label "Crear nuevo resguardo"> +<!ENTITY find.label "Bus&car"> +<!ENTITY subscription.moveDown.label "Bajar"> +<!ENTITY subscription.lastDownload.connectionError "Falló, error en la descarga"> +<!ENTITY subscription.lastDownload.success "Se realizó exitosamente"> +<!ENTITY subscription.lastDownload.invalidData "Falló, no es una lista de filtros válida"> +<!ENTITY filter.paste.label "Pegar"> +<!ENTITY subscription.disabledFilters.enable "Habilitar filtros deshabilitados"> +<!ENTITY lasthit.column "Úl&tima vez usado"> +<!ENTITY subscription.editTitle.label "Editar título"> +<!ENTITY subscription.disabledFilters.warning "Algunos filtros en esta suscripción están deshabilitados."> +<!ENTITY filter.column "&Regla de filtro"> +<!ENTITY subscription.lastDownload.label "Última descarga:"> +<!ENTITY viewList.label "Ver lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/firstRun.properties new file mode 100644 index 0000000..3973073 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navegá privadamente deshabilitando el rastreo; esto es: ocultarle a las agencias de publicidad tus visitas, las cuales, de otro modo, registrarían todos tus movimientos. +firstRun_toggle_off=DESACTIVAR +firstRun_feature_tracking=Deshabilitá el rastreo +firstRun_feature_malware=Bloqueá malware +firstRun_title=Se instaló Adblock Plus +firstRun_toggle_on=ACTIVAR +firstRun_acceptableAdsExplanation=Nos gustaría alentar a que los sitios web usen publicidad más directa y menos hostigadora. Es por eso que establecimos unas <a>pautas estrictas</a> para identificar publicidades aceptables, las cuales se muestran en la configuración predeterminada. Si aún así querés seguir bloqueando todas las publicidades, podés <a>deshabilitar</a> esto en segundos. +firstRun_contributor_credits=Créditos +firstRun_dataCorruptionWarning=¿Sigue apareciendo esta página? <a>¡Hacé clic acá!</a> +firstRun_acceptableAdsHeadline=Las molestas publicidades ahora serán bloqueadas +firstRun_share=Contáselo a tus amigos +firstRun_share_headline=<a>Danos una mano</a> para hacer de la web un lugar mejor +firstRun_feature_social_description=Deshacé automáticamente, en tu experiencia al navegar, botones de medios sociales, como el "Me gusta" de Facebook, el cual aparece en miles de páginas web y rastrean tu comportamiento. +firstRun_filterlistsReinitializedWarning=Parece que hay un problema que causa que todos los filtros se quiten y que no se pueda restaurar desde una copia de seguridad. Por lo tanto tuvimos que restablecer tus filtros y la configuración de publicidades aceptadas. Por favor, revisá tus listas de filtros y la configuración de publicidades aceptadas en las <a>opciones de Adblock Plus</a>. +firstRun_feature_malware_description=Hacé tu navegación web más segura bloqueando dominios identificados como malware. +firstRun_features=Adblock Plus puede bloquear más que publicidades +firstRun_donate=doná +firstRun_donate_label=Apoyá nuestro proyecto +firstRun_feature_social=Quitá botones de redes sociales +firstRun_legacySafariWarning=Estás usando una versión vieja de Safari, la cual no soporta Adblock Plus. Puede que no funcione correctamente o que perjudique la experiencia del usuario en algunos sitios web. Te recomendamos encarecidamente que, o bien actualicés a Safari 6.1. o más reciente (en Mac OS X 10.8 Mountain Lion), o Safari 7.0.1 o más reciente (en Mac OS X 10.9 Mavericks), o bien usés la última versión de Mozilla Firefox, Google Chrome u Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/global.properties new file mode 100644 index 0000000..fb119dc --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=No hay elementos bloqueables en la página actual +action3_tooltip=Clic para habilitar/deshabilitar Adblock Plus. +notification_antiadblock_title=¿Ocultar mensajes de usuario? +type_label_script=script +filter_elemhide_nocriteria=No se especificó el criterio para reconocer el elemento a ser ocultado +blockingGroup_title=Reglas de bloqueo de publicidad +whitelisted_tooltip=Adblock Plus está deshabilitado en la página actual. +type_label_stylesheet=hoja de estilo +blocked_count_tooltip=?1? de un total de ?2? +type_label_font=tipografía +type_label_popup=ventana emergente +filter_regexp_tooltip=Este filtro, o bien es una expresión constante, o bien es demasiado corto para ser optimizado. Demasiados filtros similares podrían ralentizar tu navegación web. +action0_tooltip=Clic para ver el menú contextual, clic con el botón del medio para habilitarlo/deshabilitarlo. +whitelisted_page=Adblock Plus fue deshabilitado para la página actual +remove_group_warning=¿Estás seguro que querés quitar este grupo? +action1_tooltip=Clic para abrir/cerrar los elementos bloqueables, clic con el botón del medio para habilitarlos/deshabilitarlos. +type_label_xmlhttprequest=petición XML +active_tooltip=Adblock Plus está activo. En uso: ?1? suscripción/es de filtros y ?2? filtro/s personalizado/s. +type_label_document=documento +type_label_object_subrequest=subpetición de objeto +whitelistGroup_title=Reglas de excepción +disabled_tooltip=Adblock Plus está deshabilitado. +filter_elemhide_duplicate_id=Se puede especificar solamente un identificador del elemento a ser ocultado. +type_label_object=objeto +action2_tooltip=Clic para abrir el menú de preferencias, clic con el botón del medio para habilitarlo/deshabilitarlo. +type_label_subdocument=marco +clearStats_warning=Esto restablecerá todas las estadísticas de conteo y las deshabilitará. ¿Querés continuar? +notification_antiadblock_message=Este sitio web es conocido por mostrar mensajes a los usuarios de Adblock Plus. ¿Querés que Adblock Plus los oculte? +blocked_count_addendum=(también en la lista segura: ?1?, ocultos: ?2?) +subscription_invalid_location=La ubicación de lista de filtros no es válida, o no es válido el nombre de archivo. +type_label_image=imagen +remove_subscription_warning=¿Estás seguro que querés quitar esta suscripción? +type_label_other=otro +mobile_menu_enable=ABP: Habilitar +type_label_media=audio/video +mobile_menu_disable_site=ABP: Deshabilitar en ?1? +elemhideGroup_title=Reglas de elementos colapsados +mobile_menu_enable_site=ABP: Habilitar en ?1? +type_label_elemhide=oculto +newGroup_title=Nuevo grupo de filtros +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/overlay.dtd new file mode 100644 index 0000000..1ba864e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Sí"> +<!ENTITY notification.button.no "&No"> +<!ENTITY sync.label "Si&ncronizar la configuración de Adblock Plus"> +<!ENTITY whitelist.site.label "Deshabilitar en ?1?"> +<!ENTITY filters.label "P&referencias de filtro"> +<!ENTITY disable.label "Deshabilitar en todos lados"> +<!ENTITY objecttab.title "Bloquear"> +<!ENTITY objecttab.tooltip "Hacé clic acá para bloquear este objeto con Adblock Plus"> +<!ENTITY menuitem.label "&Preferencias de Adblock Plus"> +<!ENTITY objecttabs.label "Mostrar pe&stañas en Flash y Java"> +<!ENTITY sendReport.label "&Informar de problemas en esta página"> +<!ENTITY whitelist.page.label "Deshabilitar solamente en esta página"> +<!ENTITY context.image.label "Adblock Plus: bloquear imagen"> +<!ENTITY counthits.label "&Veces usado"> +<!ENTITY opensidebar.label "&Abrir elementos bloqueables"> +<!ENTITY notification.button.close "&Cerrar"> +<!ENTITY contribute.label "Contribuí a Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: bloquear marco"> +<!ENTITY blocked.tooltip "Elementos bloqueados en esta página:"> +<!ENTITY hideplaceholders.label "Co&lapsar elementos bloqueados"> +<!ENTITY showinstatusbar.label "Mostrar en la barra de &estado"> +<!ENTITY sidebar.title "Elementos bloqueables en la página actual"> +<!ENTITY options.label "&Opciones"> +<!ENTITY context.object.label "Adblock Plus: bloquear objeto"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: rehabilitar en esta página"> +<!ENTITY filters.tooltip "Filtros más activos:"> +<!ENTITY closesidebar.label "&Cerrar elementos bloqueables"> +<!ENTITY showintoolbar.label "Mostrar en la barra de &herramientas"> +<!ENTITY status.tooltip "Estado:"> +<!ENTITY context.media.label "Adblock Plus: bloquear audio/video"> +<!ENTITY subscription.update.label "Actualizar filtros"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/sendReport.dtd new file mode 100644 index 0000000..cda41df --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Deshacer"> +<!ENTITY issues.disabledgroups.description "Las siguientes suscripciones de filtros / grupos de filtros están deshabilitados, aunque aún podrían tener algún efecto sobre esta página web:"> +<!ENTITY showData.label "Mostrar datos del informe"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus bloquea &demasiado"> +<!ENTITY issues.change.description "Tu configuración cambió. Por favor, recargá la página para probar los cambios y enviar el informe si el problema no se resolvió después de estos cambios."> +<!ENTITY email.label "Dirección de correo e&lectrónico:"> +<!ENTITY issues.openPreferences.label "Abrir preferencias de filtros"> +<!ENTITY sendPage.confirmation "Tu informe se guardó exitosamente. Podés acceder al mismo desde esta dirección:"> +<!ENTITY copyLink.label "Cop&iar enlace del informe"> +<!ENTITY issues.nofilters.description "Adblock Plus no está bloqueando nada de la página actual. Este problema específico probablemente no tenga que ver con Adblock Plus."> +<!ENTITY sendPage.knownIssue "El problema que enviaste probablemente es un inconveniente ya informado. Más información:"> +<!ENTITY typeSelector.other.description "Seleccioná esta opción si pensás que el problema está relacionado más con Adblock Plus mismo que con sus filtros."> +<!ENTITY issues.disabledgroups.enable.label "Habilitar suscripción de filtro / grupo de filtro"> +<!ENTITY typeWarning.override.label "Lo &entiendo, y quiero enviar el informe de todas maneras"> +<!ENTITY issues.disabled.enable.label "Habilitar Adblock Plus"> +<!ENTITY update.fixed.description "Las actualizaciones a tus suscripciones de filtros probablemente resolvieron el problema que informaste. Por favor, recargá la página y reintentá. Hacé clic en "Informar" si el problema persiste."> +<!ENTITY anonymous.label "Envío a&nónimo"> +<!ENTITY reloadButton.label "&Recargar la página"> +<!ENTITY recentReports.clear.label "&Quitar todos los informes"> +<!ENTITY typeSelector.description "Esta ventana te va a guiar a través de los pasos necesarios para el envío de informes de problemas de Adblock Plus. Por favor, primero elegí el tipo de problema que estás experimentando en esta página web:"> +<!ENTITY screenshot.remove.label "Q&uitar datos sensibles"> +<!ENTITY issues.ownfilters.description "Algunos de los filtros aplicados en esta página están definidos por el usuario. Por favor, deshabilitá los filtros que podrían causar el inconveniente:"> +<!ENTITY update.inProgress.description "Adblock Plus necesita actualizar tus suscripciones de filtros para asegurarse de que el problema no ha sido solucionado aún. Por favor, esperá…"> +<!ENTITY sendPage.retry.label "Enviar de nuevo"> +<!ENTITY data.label "Datos del &informe:"> +<!ENTITY recentReports.label "Tus informes enviados recientemente"> +<!ENTITY typeWarning.description "Indicaste que querés informar de un problema general de Adblock Plus mismo más que un problema con los filtros. Por favor, tené en cuenta que tal clase de problemas se informan de mejor modo en el [link]foro de Adblock Plus[/link]. Deberías usar el informe de problemas solamente para complementar un debate existente, ya que nadie sabrá de tu informe, a menos que les ofrezcas el enlace hacia el mismo. El enlace generado automáticamente será otorgado luego de enviar el informe."> +<!ENTITY issues.disabled.description "Adblock Plus se encuentra deshabilitado, no bloqueará nada en este estado actual."> +<!ENTITY attachExtensions.label "Adjuntá una lista de las e&xtensiones activas al informe, en caso de que sea alguno de los complementos el causante del problema"> +<!ENTITY issues.nosubscriptions.add.label "Agregar suscripción de filtro"> +<!ENTITY issues.disabledfilters.enable.label "Habilitar filtro"> +<!ENTITY issues.override.label "La &configuración es correcta, podés continuar con el informe"> +<!ENTITY issues.nosubscriptions.description "Parece que no estás suscripto a ninguna de las listas de filtro preestablecidas que automáticamente quita contenido no deseado de sitios web."> +<!ENTITY typeSelector.falsePositive.description "Seleccioná esta opción si falta contenido importante, si la página se visualiza incorrectamente o si no funciona apropiadamente. Podés determinar si Adblock Plus es el causante del problema, deshabilitándolo temporalmente."> +<!ENTITY typeSelector.other.label "&Otro problema"> +<!ENTITY emailComment.label "Te alentamos a que ingresés una dirección válida de correo electrónico, así podemos contactarte si tenemos dudas sobre tu informe. También nos permitirá reconocer tus contribuciones y priorizarlas por sobre el resto."> +<!ENTITY issues.whitelist.remove.label "Rehabilitar Adblock Plus en esta página."> +<!ENTITY outdatedSubscriptions.description "Las siguientes suscripciones de filtros no fueron actualizadas por, al menos, dos semanas. Por favor, actualizá estas suscripciones antes de enviar un informe; el problema ya podría haberse resuelto."> +<!ENTITY dataCollector.description "Por favor, esperá unos instantes mientras Adblock Plus recolecta los datos requeridos."> +<!ENTITY sendButton.label "En&viar informe"> +<!ENTITY comment.label "Com&entarios (opcional):"> +<!ENTITY sendPage.errorMessage "Se intentó enviar el reporte, pero falló y devolvió un error de código "?1?". Por favor, asegurate que estás conectado a Internet e intentá nuevamente. Si el problema persiste, por favor, pedí ayuda en el [link]foro de Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Mostrar informes enviados recientemente"> +<!ENTITY commentPage.heading "Ingresar comentarios"> +<!ENTITY update.start.label "Comenzar con la actualización ahora"> +<!ENTITY issues.disabledfilters.description "Los siguientes filtros están deshabilitados, aunque aún podrían tener algún efecto sobre esta página web:"> +<!ENTITY screenshot.description "La misma página web puede lucir diferente para distintas personas. Si adjuntás una captura de pantalla a tu informe, nos sería de mucha ayuda para entender el inconveniente. Por supuesto, podés quitar fragmentos conteniendo información sensible, así como marcar áreas en donde el problema es más explícito. Para hacer eso, hacé clic en el botón correspondiente y seleccioná un fragmento de la imagen con el mouse."> +<!ENTITY screenshot.attach.label "&Adjuntar al informe una captura de la página web"> +<!ENTITY issues.whitelist.description "Adblock Plus se encuentra deshabilitado en la página que estás informando. Por favor, rehabilitalo y recargá la página antes de enviar el informe para colaborar con la investigación de este problema."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus no bloquea una &publicidad"> +<!ENTITY typeSelector.heading "Seleccioná el tipo de problema"> +<!ENTITY anonymity.warning "No podremos contactarte y tu informe seguramente tendrá poca prioridad."> +<!ENTITY wizard.title "Informe de problemas"> +<!ENTITY issues.ownfilters.disable.label "Deshabilitar filtro"> +<!ENTITY commentPage.description "El campo de texto, debajo, te permite ingresar algún comentario para ayudarnos a entender el problema. Este paso es opcional, pero encarecidamente recomendado si el problema no resulta tan obvio. También podés revisar los datos del informe antes de enviarlo."> +<!ENTITY comment.lengthWarning "La longitud de tu comentario excede los 1.000 caracteres. Sólo los primeros 1.000 caracteres serán enviados."> +<!ENTITY typeSelector.falseNegative.description "Seleccioná esta opción si una publicidad es mostrada, estando Adblock Plus habilitado."> +<!ENTITY sendPage.waitMessage "Por favor, esperá mientras Adblock Plus envía tu informe."> +<!ENTITY dataCollector.heading "Bienvenido al informe de problemas"> +<!ENTITY screenshot.heading "Adjuntar captura"> +<!ENTITY sendPage.heading "Enviar informe"> +<!ENTITY issues.subscriptionCount.description "Parece que estás suscripto a demasiadas suscripciones de filtros. Esta configuración no es recomendada, ya que potenciará sobre manera la aparición de problemas. Tampoco podemos aceptar tu reporte por inconvenientes, porque no quedaría claro qué autor de todos esos filtros es el que debe corregir algo. Por favor, quitá todas las suscripciones de filtros, dejando sólo las que considerés elementales, y luego fijate si el problema continúa."> +<!ENTITY screenshot.mark.label "&Marcar el problema"> +<!ENTITY privacyPolicy.label "Política de privacidad"> +<!ENTITY issues.description "Adblock Plus detectó problemas con tu configuración, la cual podría ser la causante de este inconveniente."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/sidebar.dtd new file mode 100644 index 0000000..4648a04 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Bordes de los elementos Flash"> +<!ENTITY address.label "Dirección"> +<!ENTITY context.open.label "Abrir en nueva pestaña"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Fuente del filtro"> +<!ENTITY noitems.label "Sin elementos bloqueables"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Tamaño:"> +<!ENTITY reattach.label "Rejuntar"> +<!ENTITY search.label "&Buscar:"> +<!ENTITY docDomain.thirdParty "(de terceros)"> +<!ENTITY filterSource.label "Fuente de filtro"> +<!ENTITY tooltip.docDomain.label "Fuente del documento:"> +<!ENTITY context.copy.label "Copiar dirección del elemento"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Deshabilitar filtro ?1?"> +<!ENTITY context.copyFilter.label "Copiar filtro"> +<!ENTITY context.block.label "Bloquear este elemento"> +<!ENTITY context.enablefilter.label "Rehabilitar filtro ?1?"> +<!ENTITY detach.label "Separar"> +<!ENTITY whitelisted.label "Página segura"> +<!ENTITY context.disablefilteronsite.label "Deshabilitar este filtro en ?1?"> +<!ENTITY detached.title "Adblock Plus: elementos bloqueables (separados)"> +<!ENTITY docDomain.firstParty "(personal)"> +<!ENTITY tooltip.type.whitelisted "(segura)"> +<!ENTITY tooltip.filter.label "Filtro en efecto:"> +<!ENTITY tooltip.filter.disabled "(deshabilitado)"> +<!ENTITY context.editfilter.label "Editar filtro en efecto"> +<!ENTITY tooltip.type.blocked "(bloqueada)"> +<!ENTITY size.label "Tamaño"> +<!ENTITY context.whitelist.label "Agregar regla de excepción por elemento"> +<!ENTITY context.selectAll.label "Seleccionar todo"> +<!ENTITY state.label "Estado"> +<!ENTITY docDomain.label "Fuente del documento"> +<!ENTITY tooltip.address.label "Dirección:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/subscriptionSelection.dtd new file mode 100644 index 0000000..099f80a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-AR/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Agregá también la suscripción de filtros "?1?"."> +<!ENTITY list.download.failed "Hubo un error al recuperar la lista de suscripciones."> +<!ENTITY list.download.retry "Intentar de nuevo"> +<!ENTITY title.label "&Título de suscripción:"> +<!ENTITY list.download.website "Ver sitio web"> +<!ENTITY supplementMessage "Esta suscripción está diseñada para ser usada conjuntamente con la suscripción de filtros "?1?", que aún no agregaste."> +<!ENTITY viewList.label "Ver filtros"> +<!ENTITY visitHomepage.label "Visitar la página oficial"> +<!ENTITY addSubscription.label "Agregar suscripción"> +<!ENTITY dialog.title "Agregar suscripción de filtro de Adblock Plus"> +<!ENTITY location.label "&Ubicación de la lista de filtros:"> +<!ENTITY fromWeb.description "Por favor, confirmá que querés agregar esta suscripción de filtros. Podés cambiar el título de la suscripción o la ubicación antes de agregarla."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/composer.dtd new file mode 100644 index 0000000..1785209 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "al &final de la dirección"> +<!ENTITY domainRestriction.label "&Restringir al dominio:"> +<!ENTITY collapse.default.no.label "Usar predeterminado (no)"> +<!ENTITY firstParty.label "Sólo para conteni&dos del dominio"> +<!ENTITY preferences.label "&Mostrar filtros existentes…"> +<!ENTITY pattern.label "Buscar patrón"> +<!ENTITY thirdParty.label "Sólo para con&tenidos de terceros"> +<!ENTITY filter.label "&Nuevo filtro:"> +<!ENTITY collapse.label "C&olapsar elementos bloqueados:"> +<!ENTITY match.warning "El patrón introducido no coincide con la dirección a bloquear o incluir en la lista blanca, y no tendrá ningún efecto sobre ella."> +<!ENTITY anchor.start.label "al &inicio de la dirección"> +<!ENTITY matchCase.label "&Coincidir MAY/minús"> +<!ENTITY custom.pattern.label "&Personalizar:"> +<!ENTITY unselectAllTypes.label "No seleccionar ninguno"> +<!ENTITY type.whitelist.label "Regla de e&xcepción"> +<!ENTITY regexp.warning "El patrón que ha introducido se interpretará como expresión regular. Si usa muchas expresiones regulares su navegación podría volverse más lenta. Si no quería usar una expresión regular, añada un carácter "*" al final del patrón."> +<!ENTITY dialog.title "Añadir regla de filtrado de Adblock Plus"> +<!ENTITY basic.label "Vista básica"> +<!ENTITY type.filter.label "Filtro de &bloqueo"> +<!ENTITY types.label "Aplicar a estos tipos:"> +<!ENTITY shortpattern.warning "El patrón que ha introducido es demasiado corto para ser optimizado, si usa muchos patrones como este su navegación podría volverse más lenta. Le recomendamos elegir una cadena más larga para este filtro."> +<!ENTITY collapse.yes.label "Sí"> +<!ENTITY anchors.label "Sólo aceptar patrones:"> +<!ENTITY collapse.default.yes.label "Usar predeterminado (sí)"> +<!ENTITY domainRestriction.help "Si especifica uno o varios dominios separados por el símbolo "|", el filtro sólo se aplicará a dichos dominios. El símbolo "~" antes del nombre de un dominio indica que el filtro no se aplicará en ese dominio."> +<!ENTITY accept.label "Añadir filtro"> +<!ENTITY options.label "Opciones"> +<!ENTITY disabled.warning "Adblock Plus está desactivado. Puede añadir filtros, pero no se aplicarán a menos que [link]active Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "al &inicio del nombre de dominio"> +<!ENTITY collapse.no.label "No"> +<!ENTITY selectAllTypes.label "Seleccionar todos"> +<!ENTITY advanced.label "Vista avanzada"> +<!ENTITY pattern.explanation "El patrón puede ser cualquier parte de la dirección, el carácter "*" actúa como comodín. El filtro sólo se aplicará a las direcciones que se correspondan con el patrón."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/filters.dtd new file mode 100644 index 0000000..27f587b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Todas sus filtros personalizados se sustituirán por los contenidos del archivo seleccionado ¿Desea continuar?"> +<!ENTITY slow.column "Filtros l&entos"> +<!ENTITY enabled.column "Acti&vado"> +<!ENTITY subscription.lastDownload.checksumMismatch "Error, el checksum no coincide"> +<!ENTITY noFiltersInGroup.text "El grupo seleccionado está vacío"> +<!ENTITY subscription.actions.label "Acciones"> +<!ENTITY filter.selectAll.label "Seleccionar todos"> +<!ENTITY backupButton.label "&Copias de seguridad y restauración"> +<!ENTITY restore.minVersion.warning "Atención: el archivo se creó con una versión más reciente de Adblock Plus. Debería actualizar a la última versión de Adblock Plus antes de hacer una restauración desde este archivo."> +<!ENTITY restore.error "No se pudieron procesar los datos del archivo. ¿Es posible que no sea un archivo de copia de seguridad de Adblock Plus?"> +<!ENTITY sort.ascending.label "Ordenar &A > Z"> +<!ENTITY sort.label "&Listar"> +<!ENTITY subscription.source.label "Lista de filtros"> +<!ENTITY hitcount.column "&Contador"> +<!ENTITY noFilters.text "Aún no tiene filtros personalizados."> +<!ENTITY backup.custom.title "Sólo los filtros personalizados"> +<!ENTITY subscription.external.label "Actualizado por otra extensión"> +<!ENTITY subscription.delete.label "Eliminar"> +<!ENTITY noGroupSelected.text "Tiene que seleccionar un grupo de filtros para que se muestren sus filtros."> +<!ENTITY filter.cut.label "Cortar"> +<!ENTITY restore.default.label "Restaurar copia de seguridad de ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Descargando…"> +<!ENTITY subscriptions.tab.label "Suscripciones de filtros"> +<!ENTITY sort.descending.label "Ordenar &Z > A"> +<!ENTITY filters.remove.warning "¿Está seguro de querer eliminar todos los filtros seleccionados?"> +<!ENTITY filter.delete.label "Eliminar"> +<!ENTITY addSubscriptionAdd.label "Añadir"> +<!ENTITY viewMenu.label "Ver"> +<!ENTITY subscription.lastDownload.unknown "N/D"> +<!ENTITY addSubscriptionCancel.label "Cancelar"> +<!ENTITY subscription.enabled.label "Activada"> +<!ENTITY noSubscriptions.text "Aún no ha añadido ninguna suscripción de filtros. Adblock Plus no bloquea nada si no tiene filtros, por favor use "Añadir suscripción de filtros" para añadir alguna."> +<!ENTITY subscription.update.label "Actualizar filtros"> +<!ENTITY dialog.title "Preferencias de filtros de Adblock Plus"> +<!ENTITY addFilter.label "A&ñadir filtro"> +<!ENTITY subscription.minVersion.warning "Esta suscripción de filtros necesita una versión más reciente de Adblock Plus, debería actualizar a la última versión de Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Error: dirección no válida"> +<!ENTITY backup.error "Se produjo un error al escribir filtros en el archivo. Asegúrese que el archivo no está protegido contra escritura o siendo utilizado por otra aplicación."> +<!ENTITY filter.moveUp.label "Subir"> +<!ENTITY addGroup.label "Añadir &grupo de filtros"> +<!ENTITY filter.edit.label "Editar"> +<!ENTITY subscription.showHideFilters.label "Mostrar/ocultar filtros"> +<!ENTITY acceptableAds2.label "&Permitir cierta publicidad no intrusiva"> +<!ENTITY addSubscriptionOther.label "Añadir otra suscripción"> +<!ENTITY close.label "Cerrar"> +<!ENTITY sort.none.label "&Sin ordenar"> +<!ENTITY filter.actions.label "Acciones de filtros"> +<!ENTITY filter.copy.label "Copiar"> +<!ENTITY filter.moveDown.label "Bajar"> +<!ENTITY filter.resetHitCounts.label "Reiniciar estadísticas de uso"> +<!ENTITY readMore.label "Leer más"> +<!ENTITY subscription.moveUp.label "Subir"> +<!ENTITY addSubscription.label "Añadir &suscripción de filtros"> +<!ENTITY subscription.homepage.label "Página de inicio"> +<!ENTITY backup.complete.title "Todos los filtros y suscripciones"> +<!ENTITY restore.own.label "Restaurar copia de seguridad propia"> +<!ENTITY restore.complete.warning "Todas sus preferencias de filtros se sustituirán por los contenidos del archivo seleccionado ¿Desea continuar?"> +<!ENTITY filters.tab.label "Filtros personalizados"> +<!ENTITY backup.label "Crear nueva copia de seguridad"> +<!ENTITY find.label "&Buscar"> +<!ENTITY subscription.moveDown.label "Bajar"> +<!ENTITY subscription.lastDownload.connectionError "Error: error de descarga"> +<!ENTITY subscription.lastDownload.success "Correcto"> +<!ENTITY subscription.lastDownload.invalidData "Error: lista de filtros no válida"> +<!ENTITY filter.paste.label "Pegar"> +<!ENTITY subscription.disabledFilters.enable "Activar filtros desactivados"> +<!ENTITY lasthit.column "Último &uso"> +<!ENTITY subscription.editTitle.label "Editar título"> +<!ENTITY subscription.disabledFilters.warning "En esta suscripción hay filtros desactivados."> +<!ENTITY filter.column "&Regla de filtrado"> +<!ENTITY subscription.lastDownload.label "Última descarga:"> +<!ENTITY viewList.label "Ver lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/firstRun.properties new file mode 100644 index 0000000..83ba3ff --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navegue con intimidad desactivando el rastreo - ocultando su rastro a las empresas de publicidad que espían cada uno de sus movimientos. +firstRun_toggle_off=DESACTIVAR +firstRun_feature_tracking=Desactivar el rastreo +firstRun_feature_malware=Bloquear malware +firstRun_title=Se ha instalado Adblock Plus +firstRun_toggle_on=ACTIVAR +firstRun_acceptableAdsExplanation=Nos gustaría fomentar el uso de una publicidad más directa y menos agresiva en los sitios web. Por eso hemos establecido unas <a>directrices estrictas</a> para identificar la publicidad aceptable, que se muestra en modo predeterminado. Si sigue queriendo bloquear toda la publicidad puede <a>desactivar</a> este modo en unos pocos segundos. +firstRun_contributor_credits=Colaboradores +firstRun_dataCorruptionWarning=¿Sigue apareciendo esta página? <a>Pulse aquí</a> +firstRun_acceptableAdsHeadline=Ahora se bloqueará la publicidad molesta +firstRun_share=Dígaselo a sus amigos +firstRun_share_headline=<a>Ayúdenos</a> a conseguir una web mejor +firstRun_feature_social_description=Elimine automáticamente de su navegación los botones de redes sociales, como los "Me gusta" de Facebook, incluidos en las paginas web y que rastrean sus hábitos. +firstRun_filterlistsReinitializedWarning=Parece que un problema provocó que se eliminasen todos los filtros y no se pudo restaurar una copia de seguridad. Por ello ha sido necesario reiniciar los filtros y predisposiciones de publicidad aceptable. Por favor, revise sus listas de filtros y predisposiciones de publicidad aceptable en <a>Opciones de Adblock Plus</a>. +firstRun_feature_malware_description=Navegue con más seguridad bloqueando dominios identificados como malware. +firstRun_features=Adblock Plus no sólo bloquea anuncios, puede hacer más cosas +firstRun_donate=Donar +firstRun_donate_label=Apoye nuestro proyecto +firstRun_feature_social=Eliminar botones de redes sociales +firstRun_legacySafariWarning=Está utilizando una versión antigua de Safari no soportada por Adblock Plus, por lo que podría funcionar incorrectamente o afectar a su experiencia de usuario en algunos sitios web. Le recomendamos actualizar a Safari 6.1.1 o posterior (para Mac OS X 10.8 Mountain Lion), o a Safari 7.0.1 o superior (para Mac OS X 10.9 Mavericks), o usar la última versión de Mozilla Firefox, Google Chrome u Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/global.properties new file mode 100644 index 0000000..f1f432e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=No hay elementos que se puedan bloquear en la página actual +action3_tooltip=Pulse para activar/desactivar Adblock Plus. +notification_antiadblock_title=¿Ocultar mensajes dirigidos a usuarios de Adblock Plus? +type_label_script=script +filter_elemhide_nocriteria=No se especificó ningún criterio para identificar el elemento a ocultar +blockingGroup_title=Reglas de bloqueo de publicidad +whitelisted_tooltip=Adblock Plus activado pero deshabilitado en la página actual. +type_label_stylesheet=hoja de estilo +blocked_count_tooltip=?1? de un total de ?2? +type_label_font=fuente +type_label_popup=ventana emergente +filter_regexp_tooltip=Este filtro es una expresión regular o demasiado corto para ser optimizado. Demasiados filtros de este tipo podrían hacer más lenta su navegación. +action0_tooltip=Pulse para abrir el menú contextual, botón central para activar/desactivar. +whitelisted_page=Se ha deshabilitado Adblock Plus para la página actual +remove_group_warning=¿Está seguro de querer eliminar este grupo? +action1_tooltip=Pulse para abrir/cerrar elementos para bloquear, botón central para activar/desactivar. +type_label_xmlhttprequest=solicitud XML +active_tooltip=Adblock Plus activado, ?1? suscripciones de filtros y ?2? filtros personalizados en uso. +type_label_document=documento +type_label_object_subrequest=solicitud de objeto +whitelistGroup_title=Reglas de excepción +disabled_tooltip=Adblock Plus está desactivado. +filter_elemhide_duplicate_id=Sólo puede especificarse una ID del elemento a ocultar +type_label_object=objeto +action2_tooltip=Pulse para abrir las preferencias, botón central para activar/desactivar. +type_label_subdocument=marco +clearStats_warning=Se reiniciarán todas las estadísticas de uso de filtros y se desactivarán dichas estadísticas de uso de filtros. ¿Desea continuar con la acción? +notification_antiadblock_message=Se sabe que este sitio ha mostrado en el pasado mensajes dirigidos a los usuarios de Adblock Plus. ¿Quiere que Adblock Plus oculte esos mensajes? +blocked_count_addendum=(en lista blanca: ?1?, ocultos: ?2?) +subscription_invalid_location=La dirección de la lista de filtros no es una URL ni una ruta de archivo válida. +type_label_image=imagen +remove_subscription_warning=¿Está seguro de querer eliminar esta suscripción? +type_label_other=otro +mobile_menu_enable=ABP: Activar +type_label_media=audio/vídeo +mobile_menu_disable_site=ABP: Desactivar en ?1? +elemhideGroup_title=Reglas de ocultación de elementos +mobile_menu_enable_site=ABP: Activar en ?1? +type_label_elemhide=oculto +newGroup_title=Nuevo grupo de filtros +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/overlay.dtd new file mode 100644 index 0000000..7820c11 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "& Sí"> +<!ENTITY notification.button.no "& No"> +<!ENTITY sync.label "Sincroni&zar predisposiciones de Adblock Plus"> +<!ENTITY whitelist.site.label "Desactivar en ?1?"> +<!ENTITY filters.label "&Preferencias de filtros"> +<!ENTITY disable.label "Desactivar globalmente"> +<!ENTITY objecttab.title "Bloquear"> +<!ENTITY objecttab.tooltip "Pulse aquí para bloquear este objeto con Adblock Plus"> +<!ENTITY menuitem.label "&Adblock Plus"> +<!ENTITY objecttabs.label "&Mostrar pestañas en Flash y Java"> +<!ENTITY sendReport.label "&Informar de un problema en esta página"> +<!ENTITY whitelist.page.label "Desactivar sólo en esta página"> +<!ENTITY context.image.label "ABP - Bloquear imagen"> +<!ENTITY counthits.label "Contar &usos de filtros"> +<!ENTITY opensidebar.label "Abrir &ventana elementos bloqueables"> +<!ENTITY notification.button.close "&Cerrar"> +<!ENTITY contribute.label "Ayudar a Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "ABP - Bloquear marco"> +<!ENTITY blocked.tooltip "Elementos bloqueados en esta página:"> +<!ENTITY hideplaceholders.label "O&cultar posicionadores de elementos bloqueados"> +<!ENTITY showinstatusbar.label "Mostrar en la barra &de estado"> +<!ENTITY sidebar.title "Elementos bloqueables en la página actual"> +<!ENTITY options.label "&Opciones"> +<!ENTITY context.object.label "ABP - Bloquear objeto"> +<!ENTITY context.removeWhitelist.label "ABP - Reactivar en esta página"> +<!ENTITY filters.tooltip "Filtros más activos:"> +<!ENTITY closesidebar.label "Cerrar &ventana elementos bloqueables"> +<!ENTITY showintoolbar.label "Mostrar en la barra de &herramientas"> +<!ENTITY status.tooltip "Estado:"> +<!ENTITY context.media.label "ABP - Bloquear vídeo/audio"> +<!ENTITY subscription.update.label "Actualizar filtros"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/sendReport.dtd new file mode 100644 index 0000000..63a2bcc --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Deshacer"> +<!ENTITY issues.disabledgroups.description "Están desactivadas las siguientes suscripciones de filtros/grupos de filtros, que podrían tener algún tipo de efecto sobre la página:"> +<!ENTITY showData.label "Mostrar datos del informe"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus está bloqueando de&masiado"> +<!ENTITY issues.change.description "Se ha cambiado su configuración. Por favor, recargue la página para probar los cambios y enviar un informe si el problema no se ha resuelto con las modificaciones."> +<!ENTITY email.label "Co&rreo electrónico:"> +<!ENTITY issues.openPreferences.label "Abrir preferencias de filtros"> +<!ENTITY sendPage.confirmation "Su informe ha sido guardado. Puede acceder a él en la siguiente dirección:"> +<!ENTITY copyLink.label "&Copiar enlace del informe"> +<!ENTITY issues.nofilters.description "Adblock Plus no está bloqueando nada en esta página. El problema que observa muy probablemente no tenga nada que ver con Adblock Plus."> +<!ENTITY sendPage.knownIssue "El problema del que informó probablemente ya fuera conocido. Más información:"> +<!ENTITY typeSelector.other.description "Seleccione esta opción si cree que es un problema del mismo Adblock Plus, y no de sus filtros."> +<!ENTITY issues.disabledgroups.enable.label "Activar suscripción de filtros/grupo de filtros"> +<!ENTITY typeWarning.override.label "Lo &entiendo pero quiero enviar el informe de todas formas"> +<!ENTITY issues.disabled.enable.label "Activar Adblock Plus"> +<!ENTITY update.fixed.description "La actualización de sus suscripciones de filtros probablemente resolvió el problema del que estaba informando. Por favor, recargue la página y vuelva a probar. Pulse de nuevo Informar de un problema si no se ha solucionado."> +<!ENTITY anonymous.label "Envío &anónimo"> +<!ENTITY reloadButton.label "&Recargar página"> +<!ENTITY recentReports.clear.label "Eliminar &todos los informes"> +<!ENTITY typeSelector.description "Esta ventana le guiará en el proceso necesario para enviar un informe de fallo de Adblock Plus. Primero, seleccione el tipo de problema que ha detectado en esta página:"> +<!ENTITY screenshot.remove.label "&Eliminar datos sensibles"> +<!ENTITY issues.ownfilters.description "Algunos de los filtros aplicados en esta página son filtros personales de usuario. Por favor, desactive los filtros que podrían haber causado el problema:"> +<!ENTITY update.inProgress.description "Adblock Plus necesita actualizar sus suscripciones de filtros para asegurarse de que el problema aún no se ha resuelto. Espere, por favor…"> +<!ENTITY sendPage.retry.label "Enviar de nuevo"> +<!ENTITY data.label "&Datos del informe:"> +<!ENTITY recentReports.label "Sus informes más recientes"> +<!ENTITY typeWarning.description "Usted ha indicado que quiere informar de un problema atribuible a Adblock Plus y no a los filtros utilizados. Tenga en cuenta que suele ser mejor informar de este tipo de problemas en el [link]foro de Adblock Plus[/link], y utilizar el generador de informes de problemas sólo como añadido en una discusión ya existente, puesto que nadie se apercibirá de su informe a menos que aporte un enlace al mismo. Tras enviar el informe se le mostrará el enlace generado automáticamente."> +<!ENTITY issues.disabled.description "Adblock Plus está desactivado, no bloqueará nada en este estado."> +<!ENTITY attachExtensions.label "Adjuntar una lista de e&xtensiones activas al informe por si la causa del problema es un conflicto entre extensiones"> +<!ENTITY issues.nosubscriptions.add.label "Añadir suscripción de filtros"> +<!ENTITY issues.disabledfilters.enable.label "Activar filtro"> +<!ENTITY issues.override.label "La &configuración es correcta, puede seguir con el informe"> +<!ENTITY issues.nosubscriptions.description "Aparentemente usted no está suscrito a ninguna de las listas de filtros ya existentes que eliminan automáticamente el contenido no deseado de los sitios web."> +<!ENTITY typeSelector.falsePositive.description "Seleccione esta opción si en la página falta contenido importante, se muestra incorrectamente o no funciona adecuadamente. Puede confirmar si el problema lo está provocando Adblock Plus desactivándolo temporalmente."> +<!ENTITY typeSelector.other.label "&Otros problemas"> +<!ENTITY emailComment.label "Le recomendamos que introduzca una dirección válida de correo electrónico para que podamos contactar si surgen dudas sobre tu informe. También nos permitirá reconocer tus contribuciones y darles mayor prioridad."> +<!ENTITY issues.whitelist.remove.label "Reactivar Adblock Plus en esta página"> +<!ENTITY outdatedSubscriptions.description "Las siguientes suscripciones de filtros no se han actualizado desde hace más de dos semanas. Por favor, actualícelas antes de enviar un informe de error, el problema podría estar ya resuelto."> +<!ENTITY dataCollector.description "Por favor espere un momento mientras Adblock Plus reúne los datos necesarios."> +<!ENTITY sendButton.label "E&nviar informe"> +<!ENTITY comment.label "&Comentario (opcional):"> +<!ENTITY sendPage.errorMessage "Un intento de enviar el informe produjo un fallo con código de error "?1?". Por favor, asegúrese de que está conectado a Internet y vuelva a intentarlo. Si el problema persiste por favor pida ayuda en el [link]foro de Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Mostrar informes más recientes"> +<!ENTITY commentPage.heading "Comentario"> +<!ENTITY update.start.label "Iniciar actualización ahora"> +<!ENTITY issues.disabledfilters.description "Están desactivados los siguientes filtros, que podrían tener algún tipo de efecto sobre la página:"> +<!ENTITY screenshot.description "La misma página puede tener diferente apariencia para diferentes personas. Puede resultar útil para comprender el problema si adjunta una captura de pantalla a su informe. Puede eliminar las partes que contengan información sensible y marcar las zonas en las que se aprecia el problema. Para conseguirlo pulse el botón correspondiente y seleccione con el ratón un área de la imagen."> +<!ENTITY screenshot.attach.label "A&ñadir al informe una imagen de la página"> +<!ENTITY issues.whitelist.description "Adblock Plus está ahora mismo desactivado en la página a la que se refiere el informe. Por favor, reactívelo y recargue la página antes de enviar el informe para ayudar en la investigación del problema."> +<!ENTITY typeSelector.falseNegative.label "Adblock Pl&us no bloquea un anuncio"> +<!ENTITY typeSelector.heading "Elegir tipo error"> +<!ENTITY anonymity.warning "No podremos comunicar con usted y es probable que le demos una prioridad inferior a su informe."> +<!ENTITY wizard.title "Creador de informes de errores"> +<!ENTITY issues.ownfilters.disable.label "Desactivar filtro"> +<!ENTITY commentPage.description "El campo de texto de la parte inferior le permite introducir un comentario para ayudarnos comprender el problema. Es algo opcional, pero recomendable si el problema no resulta evidente. Puede revisar los datos del informe antes de que se envíen."> +<!ENTITY comment.lengthWarning "La longitud se su comentario supera los 1.000 caracteres. Sólo se enviarán los 1.000 primeros."> +<!ENTITY typeSelector.falseNegative.description "Seleccione esta opción si se muestra un anuncio a pesar de que Adblock Plus está activado."> +<!ENTITY sendPage.waitMessage "Por favor, espere mientras Adblock Plus envía su informe."> +<!ENTITY dataCollector.heading "Bienvenido al creador de informes de errores"> +<!ENTITY screenshot.heading "Adjuntar vista"> +<!ENTITY sendPage.heading "Enviar informe"> +<!ENTITY issues.subscriptionCount.description "Parece que se ha suscrito a demasiadas suscripciones de filtros. Eso no es recomendable porque aumenta mucho la probabilidad de que aparezcan problemas y hace que no se pueda procesar su informe de error porque no puede saberse qué autor de suscripción de filtros tiene que actuar. Por favor, borre todas las suscripciones que no sean realmente necesarias y compruebe si el problema persiste."> +<!ENTITY screenshot.mark.label "&Marcar el problema"> +<!ENTITY privacyPolicy.label "Política de privacidad"> +<!ENTITY issues.description "Adblock Plus ha detectado problemas con su configuración que podrían ser la causa del fallo o que están dificultando la investigación del mismo."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/sidebar.dtd new file mode 100644 index 0000000..ef28209 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Resaltar los bordes del elemento"> +<!ENTITY address.label "Dirección"> +<!ENTITY context.open.label "Abrir en nueva pestaña"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Procedencia del filtro:"> +<!ENTITY noitems.label "Ningún elemento bloqueable"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Tamaño:"> +<!ENTITY reattach.label "Unir"> +<!ENTITY search.label "&Buscar:"> +<!ENTITY docDomain.thirdParty "(terceros)"> +<!ENTITY filterSource.label "Origen filtro"> +<!ENTITY tooltip.docDomain.label "Origen del documento:"> +<!ENTITY context.copy.label "Copiar la dirección del elemento"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Desactivar filtro ?1?"> +<!ENTITY context.copyFilter.label "Copiar filtro"> +<!ENTITY context.block.label "Bloquear este elemento"> +<!ENTITY context.enablefilter.label "Reactivar filtro ?1?"> +<!ENTITY detach.label "Separar"> +<!ENTITY whitelisted.label "Página de lista blanca"> +<!ENTITY context.disablefilteronsite.label "Desactivar este filtro en ?1?"> +<!ENTITY detached.title "Adblock Plus: Elementos bloqueables (separado)"> +<!ENTITY docDomain.firstParty "(dominio)"> +<!ENTITY tooltip.type.whitelisted "(en lista blanca)"> +<!ENTITY tooltip.filter.label "Filtro en efecto:"> +<!ENTITY tooltip.filter.disabled "(desactivado)"> +<!ENTITY context.editfilter.label "Editar el filtro en uso"> +<!ENTITY tooltip.type.blocked "(bloqueado)"> +<!ENTITY size.label "Tamaño"> +<!ENTITY context.whitelist.label "Añadir regla de excepción para el elemento"> +<!ENTITY context.selectAll.label "Seleccionar todo"> +<!ENTITY state.label "Estado"> +<!ENTITY docDomain.label "Origen documento"> +<!ENTITY tooltip.address.label "Dirección:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/subscriptionSelection.dtd new file mode 100644 index 0000000..2b0a803 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-ES/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "A&ñadir también la suscripción "?1?"."> +<!ENTITY list.download.failed "Error al recuperar la lista de suscripciones."> +<!ENTITY list.download.retry "Intentar de nuevo"> +<!ENTITY title.label "&Título de la suscripción:"> +<!ENTITY list.download.website "Ver página web"> +<!ENTITY supplementMessage "Esta suscripción de filtros está pensada para usarse junto a la suscripción "?1?" que aún no ha instalado."> +<!ENTITY viewList.label "Ver filtros"> +<!ENTITY visitHomepage.label "Visitar su página web"> +<!ENTITY addSubscription.label "Añadir suscripción"> +<!ENTITY dialog.title "Añadir suscripción de filtros para Adblock Plus"> +<!ENTITY location.label "&Ubicación de la lista de filtros:"> +<!ENTITY fromWeb.description "Por favor, confirme que quiere añadir está suscripción de filtros. Puede cambiar su título o ubicación antes de añadirla."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/composer.dtd new file mode 100644 index 0000000..00bc242 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "ir al &final de la dirección"> +<!ENTITY domainRestriction.label "&Restringir al dominio:"> +<!ENTITY collapse.default.no.label "Usar por defecto (no)"> +<!ENTITY firstParty.label "So&lo propietarios"> +<!ENTITY preferences.label "&Mostrar filtros existentes..."> +<!ENTITY pattern.label "Buscar un patrón"> +<!ENTITY thirdParty.label "&Solo terceros"> +<!ENTITY filter.label "&Nuevo filtro:"> +<!ENTITY collapse.label "C&olapso bloqueado"> +<!ENTITY match.warning "El patrón que ha ingresado ya no concuerda con la dirección a ser Bloqueada/Permitida y no tendrá efecto en la misma."> +<!ENTITY anchor.start.label "&ir al principio de la dirección"> +<!ENTITY matchCase.label "&Coincidir Mayus/Minus"> +<!ENTITY custom.pattern.label "&Personalizar:"> +<!ENTITY unselectAllTypes.label "Seleccionar ninguno"> +<!ENTITY type.whitelist.label "Regla de e&xcepción"> +<!ENTITY regexp.warning "El patrón que ha escrito se interpretará como una expresión regular, la cual no puede ser eficientemente procesada por Adblock Plus y podría ralentizar su experiencia al navegar. Si no tenía la intención de usar una expresión regular, agregue un asterisco (*) al final del patrón."> +<!ENTITY dialog.title "Agregar una regla de filtro de Adblock Plus"> +<!ENTITY basic.label "Vista básica"> +<!ENTITY type.filter.label "Filtro de &bloqueo"> +<!ENTITY types.label "Se aplica a tipos:"> +<!ENTITY shortpattern.warning "El patrón que ha ingresado es muy corto para ser optimizado y podría ralentizar su experiencia al navegar. Es recomendable que elija una cadena más larga para este filtro para permitir a Adblock Plus procesar el filtro con mayor eficacia."> +<!ENTITY collapse.yes.label "Si"> +<!ENTITY anchors.label "Solo aceptar patrones:"> +<!ENTITY collapse.default.yes.label "Usar por defecto (si)"> +<!ENTITY domainRestriction.help "Use esta opción para especificar uno o más dominios separados por una barra (|). El filtro solo se aplicará en dominio(s) seleccionados. Una tilde (~) antes del nombre del dominio indica que el filtro no se aplicará en ese dominio."> +<!ENTITY accept.label "Agregar filtro"> +<!ENTITY options.label "Opciones"> +<!ENTITY disabled.warning "Adblock Plus se encuentra desactivado. Puedes continuar agregando filtros pero no serán aplicados hasta que [link]habilites Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "&ir al principio del nombre de dominio"> +<!ENTITY collapse.no.label "No"> +<!ENTITY selectAllTypes.label "Seleccionar todos"> +<!ENTITY advanced.label "Vista Avanzada"> +<!ENTITY pattern.explanation "El patrón puede ser cualquier parte de una dirección; asteriscos(*) actuan como comodines. El filtro solo se aplicara a direcciones que igualen el patrón proporcionado."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/filters.dtd new file mode 100644 index 0000000..5e9cc80 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Todos tus filtros personalizados serán reemplazados con el contenido del archivo seleccionado. Deseas continuar con el proceso?"> +<!ENTITY slow.column "Filtros lentos"> +<!ENTITY enabled.column "Habilitado"> +<!ENTITY subscription.lastDownload.checksumMismatch "Falló, comprobación(checksum) no concuerda"> +<!ENTITY noFiltersInGroup.text "El grupo seleccionado esta vacio"> +<!ENTITY subscription.actions.label "Comportamiento/Acciones"> +<!ENTITY filter.selectAll.label "Seleccionar Todo"> +<!ENTITY backupButton.label "&Salvar/Copia de Seguridad y Restaurar"> +<!ENTITY restore.minVersion.warning "Advertencia: el archivo ha sido creado con una versión mas actual de Adblock Plus. Deberias actualizar Adblock Plus a la versión mas reciente antes de restaurar desde este archivo."> +<!ENTITY restore.error "Los datos de archivo no se pudierón procesar, tal vez esta no sea una copia de seguridad de Adblock Plus?"> +<!ENTITY sort.ascending.label "Ordern&ar de la A > Z"> +<!ENTITY sort.label "Ordenar &por"> +<!ENTITY subscription.source.label "Lista de filtros"> +<!ENTITY hitcount.column "&Contador"> +<!ENTITY noFilters.text "Usted no tiene ningún filtro personalizado aún."> +<!ENTITY backup.custom.title "Solo filtros personalizados"> +<!ENTITY subscription.external.label "Actualizado por otro complemento"> +<!ENTITY subscription.delete.label "Eliminar"> +<!ENTITY noGroupSelected.text "Necesitas seleccionar un grupo de filtros antes para que su contenido de filtros se puedan mostrar."> +<!ENTITY filter.cut.label "Cortar"> +<!ENTITY restore.default.label "Restaurar copia de seguridad desde ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Descargando..."> +<!ENTITY subscriptions.tab.label "Suscripciones de Filtro"> +<!ENTITY sort.descending.label "Ordernar de la &Z > A"> +<!ENTITY filters.remove.warning "Realmente deseas quitar todos los filtros seleccionados?"> +<!ENTITY filter.delete.label "Eliminar"> +<!ENTITY addSubscriptionAdd.label "Agregar"> +<!ENTITY viewMenu.label "Vista"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Cancelar"> +<!ENTITY subscription.enabled.label "Activado"> +<!ENTITY noSubscriptions.text "Usted no ha agregado ninguna subscripción de filtros aun. Adblock Plus no bloqueará + nada sin filtros, por favor use "Agregar subscripción de filtros" para + agregar algunos."> +<!ENTITY subscription.update.label "Actualizar filtros"> +<!ENTITY dialog.title "Preferencias de Filtro de Adblock Plus"> +<!ENTITY addFilter.label "Agregar &filtro"> +<!ENTITY subscription.minVersion.warning "Esta suscripción de filtro necesita una versión actualizada de Adblock Plus, debes actualizar tu versión de Adblock Plus a la más reciente."> +<!ENTITY subscription.lastDownload.invalidURL "Falló, no es una dirección valida"> +<!ENTITY backup.error "Hubo un error escribiendo los filtros en el archivo. Asegurese que el archivo no esta protegido o que no se encuentre en uso por otra aplicación."> +<!ENTITY filter.moveUp.label "Mover arriba"> +<!ENTITY addGroup.label "Agregar grupo de filtros"> +<!ENTITY filter.edit.label "Editar"> +<!ENTITY subscription.showHideFilters.label "Mostrar/Ocultar filtros"> +<!ENTITY acceptableAds2.label "Permitir algo de publicidad no intrusiva"> +<!ENTITY addSubscriptionOther.label "Agregar una suscripción diferente"> +<!ENTITY close.label "Cerrar"> +<!ENTITY sort.none.label "&Sin clasificar"> +<!ENTITY filter.actions.label "Comportamiento/Acción de filtros"> +<!ENTITY filter.copy.label "Copiar"> +<!ENTITY filter.moveDown.label "Mover abajo"> +<!ENTITY filter.resetHitCounts.label "Reiniciar estadísticas"> +<!ENTITY readMore.label "Leer más"> +<!ENTITY subscription.moveUp.label "Mover arriba"> +<!ENTITY addSubscription.label "&Agregar suscripción de filtro"> +<!ENTITY subscription.homepage.label "Página de inicio"> +<!ENTITY backup.complete.title "Todos los filtros y suscripciones"> +<!ENTITY restore.own.label "Restaurar copia de seguridad propia"> +<!ENTITY restore.complete.warning "Todas tus preferencias de filtros se reemplazarán con el contenido del archivo seleccionado. Deseas continuar con el proceso?"> +<!ENTITY filters.tab.label "Filtros personalizados"> +<!ENTITY backup.label "Crear nueva copia de seguridad"> +<!ENTITY find.label "&Buscar"> +<!ENTITY subscription.moveDown.label "Mover abajo"> +<!ENTITY subscription.lastDownload.connectionError "Falló, La descarga ha fracasado"> +<!ENTITY subscription.lastDownload.success "Éxito"> +<!ENTITY subscription.lastDownload.invalidData "Falló, no es una lista de filtros válida"> +<!ENTITY filter.paste.label "Pegar"> +<!ENTITY subscription.disabledFilters.enable "Activar filtros desactivados"> +<!ENTITY lasthit.column "&Ultima visita"> +<!ENTITY subscription.editTitle.label "Editar título"> +<!ENTITY subscription.disabledFilters.warning "Algunos filtros en esta suscripción se encuentran desactivados."> +<!ENTITY filter.column "Regla de &filtro"> +<!ENTITY subscription.lastDownload.label "Ultima descarga:"> +<!ENTITY viewList.label "Ver lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/firstRun.properties new file mode 100644 index 0000000..bc70db1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navega de forma privada desactivando el rastreo, ocultando así tu actividad de compañías de publicidad que te rastrearían en cada momento. +firstRun_toggle_off=NO +firstRun_feature_tracking=Desactivar el Rastreo +firstRun_feature_malware=Bloquear Malware +firstRun_title=Adblock Plus ha sido instalado +firstRun_toggle_on=SÍ +firstRun_acceptableAdsExplanation=Nos gustaría fomentar en los sitios web, el uso de publicidad discreta y directa. Es por eso que hemos establecido <a>lineamientos estrictos</a> para identificar anuncios aceptables, que son mostrados bajo las configuraciones predeterminadas. Si aun así deseas bloquear todos los anuncios, puedes <a>desactivar</a> esta opción en pocos segundos. +firstRun_contributor_credits=Colaboradores +firstRun_dataCorruptionWarning=¿Se sigue mostrando esta página? <a>¡Haz clic acá!</a> +firstRun_acceptableAdsHeadline=Anuncios molestos serán bloqueados +firstRun_share=Cuéntale a tus amigos +firstRun_share_headline=<a>Ayúdanos</a> haciendo el internet un mejor lugar +firstRun_feature_social_description=Libérate automáticamente de los botones de redes sociales, como el "Me gusta" de Facebook, el cual aparece en páginas web y rastrea tu actividad en línea. +firstRun_filterlistsReinitializedWarning=Parece que un problema provocó que todos los filtros fueron removidos y fuimos incapaces de restaurar una copia de seguridad. Por lo tanto tuvimos que restaurar tus filtros y configuraciones de anuncios aceptables. Por favor revisa tu lista de filtros y configuración de anuncios aceptables en las <a>Opciones de Adblock Plus</a>. +firstRun_feature_malware_description=Haz tu navegación más segura bloqueando dominios maliciosos conocidos. +firstRun_features=Adblock Plus puede hacer más que bloquear anuncios +firstRun_donate=donar +firstRun_donate_label=Apoya nuestro proyecto +firstRun_feature_social=Quitar Botones de Redes Sociales +firstRun_legacySafariWarning=Está utilizando una versión antigua de Safari no soportada por Adblock Plus, por lo que podría funcionar incorrectamente o afectar a su experiencia de usuario en algunos sitios web. Le recomendamos actualizar a Safari 6.1.1 o superior (para Mac OS X 10.8 Mountain Lion), o a Safari 7.0.1 o superior (para Mac OS X 10.9 Mavericks), o usar la última versión de Mozilla Firefox, Google Chrome u Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/global.properties new file mode 100644 index 0000000..fe253c1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=No hay elementos bloqueables en la página actual +action3_tooltip=Click para activar/desactivar Adblock Plus. +notification_antiadblock_title=¿Ocultar mensajes dirigidos? +type_label_script=script +filter_elemhide_nocriteria=No hay criterios específicos para reconocer el elemento que se oculta +blockingGroup_title=Reglas de Bloqueo de Anuncios +whitelisted_tooltip=Adblock Plus esta desactivado en la página actual. +type_label_stylesheet=estilo de hoja +blocked_count_tooltip=?1? del total de ?2? +type_label_font=fuente +type_label_popup=ventana emergente +filter_regexp_tooltip=Este filtro o bien es una expresión regular o es demasiado corto para ser optimizado. Demasiados de estos filtros podrian relentizar su experiencia al navegar. +action0_tooltip=Haga clic para abrir el menú contextual, click medio para activar/desactivar. +whitelisted_page=Adblock Plus ha sido desactivado para la página actual +remove_group_warning=¿Realmente desea eliminar este grupo? +action1_tooltip=Click para abrir/cerrar elementos bloqueables, click medio para activar/desactivar. +type_label_xmlhttprequest=Solicitud XML +active_tooltip=Adblock Plus esta activado, ?1? suscripción(es) de filtro(s) y ?2? filtro(s) personalizado(s) en uso. +type_label_document=documento +type_label_object_subrequest=Solicitud de objeto +whitelistGroup_title=Reglas de excepción +disabled_tooltip=Adblock Plus está desactivado. +filter_elemhide_duplicate_id=Solo una ID de el elemento oculto puede ser especificado +type_label_object=objeto +action2_tooltip=Click para abrir las Preferencias, click medio para activar/desactivar. +type_label_subdocument=marco +clearStats_warning=Esto reiniciará todas las estadísticas de filtros afectados y desactivará el conteo de accesos de los filtros. ¿Deseas proceder? +notification_antiadblock_message=Es sabido que este sitio muestra mensajes dirigidos a los usuarios de Adblock Plus. ¿Quieres que Adblock plus oculte estos mensajes? +blocked_count_addendum=(tambien permitidos: ?1?, ocultos: ?2?) +subscription_invalid_location=La ubicación de la lista de filtros no es ni una dirección URL válida, ni un nombre de archivo válido. +type_label_image=imagen +remove_subscription_warning=¿Realmente deseas quitar esta subscripción? +type_label_other=otro +mobile_menu_enable=ABP: activar +type_label_media=sonido/video +mobile_menu_disable_site=¿ABP: Deshabilitar en ?1? +elemhideGroup_title=Reglas para Ocultar Elementos +mobile_menu_enable_site=¿ABP: Habilitar en ?1? +type_label_elemhide=oculto +newGroup_title=Nuevo grupo de filtros +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/overlay.dtd new file mode 100644 index 0000000..ffa1dc3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Sí"> +<!ENTITY notification.button.no "&No"> +<!ENTITY sync.label "&Sincronizar configuración de Adblock Plus"> +<!ENTITY whitelist.site.label "Desactivar en ?1?"> +<!ENTITY filters.label "&Preferencias de filtro"> +<!ENTITY disable.label "Desactivado en cualquier lugar"> +<!ENTITY objecttab.title "Bloquear"> +<!ENTITY objecttab.tooltip "Click aquí para bloquear este objeto con Adblock Plus"> +<!ENTITY menuitem.label "Pr&eferencias de Adblock Plus"> +<!ENTITY objecttabs.label "Mostrar pestañas sobre Flash y Java"> +<!ENTITY sendReport.label "Reportar problema en esta página"> +<!ENTITY whitelist.page.label "Deshabilitar solo en esta página"> +<!ENTITY context.image.label "Adblock Plus: Bloquear imagen"> +<!ENTITY counthits.label "Contar accesos de &filtro"> +<!ENTITY opensidebar.label "Abrir elementos bloqueables"> +<!ENTITY notification.button.close "&Cerrar"> +<!ENTITY contribute.label "Desactivar con Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock plus"> +<!ENTITY context.frame.label "Adblock Plus: Bloquear marco"> +<!ENTITY blocked.tooltip "Elementos bloqueados en esta pagina:"> +<!ENTITY hideplaceholders.label "&Ocultar marcadores de posición de elementos bloqueados"> +<!ENTITY showinstatusbar.label "&Mostrar en la barra de estado"> +<!ENTITY sidebar.title "Elementos bloqueables en la página actual"> +<!ENTITY options.label "&Opciones"> +<!ENTITY context.object.label "Adblock Plus: Bloquear objeto"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Re-habilitar en esta página"> +<!ENTITY filters.tooltip "Filtros mas activos:"> +<!ENTITY closesidebar.label "Cerrar elementos bloqueables"> +<!ENTITY showintoolbar.label "Mostrar barra de &complementos"> +<!ENTITY status.tooltip "Estado:"> +<!ENTITY context.media.label "Adblock Plus: Bloquear sonido/video"> +<!ENTITY subscription.update.label "Actualizar filtros"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/sendReport.dtd new file mode 100644 index 0000000..eb5b334 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Deshacer"> +<!ENTITY issues.disabledgroups.description "La siguiente subscripcion/Grupo de filtros se encuentra desactivada, aun asi pueden tener efectos en esta página:"> +<!ENTITY showData.label "Mostrar datos del reporte"> +<!ENTITY typeSelector.falsePositive.label "&Adblock Plus está bloqueando demasiado"> +<!ENTITY issues.change.description "Su configuración ha sido cambiada. Por favor recargue la página para probar los cambios y presentar un reporte si el problema no ha sido resuelto por las alteraciones."> +<!ENTITY email.label "Co&rreo electrónico:"> +<!ENTITY issues.openPreferences.label "Abrir preferencias de filtro"> +<!ENTITY sendPage.confirmation "Su reporte ha sido salvado. Puede acceder al mismo en la siguiente direccion:"> +<!ENTITY copyLink.label "&Copiar dirección del reporte"> +<!ENTITY issues.nofilters.description "Adblock Plus no está bloqueando nada en la página actual. El problema que esta observando es probable que no se encuentre relacionado con Adblock Plus."> +<!ENTITY sendPage.knownIssue "El problema que ha reportado probablemente ya sea conocido. Mas información:"> +<!ENTITY typeSelector.other.description "Seleccione esta opción si usted sospecha un problema con Adblock Plus específicamente en lugar de sus filtros."> +<!ENTITY issues.disabledgroups.enable.label "Activar subscripción/Grupo de filtros"> +<!ENTITY typeWarning.override.label "&Entiendo y deseo presentar el reporte de todos modos"> +<!ENTITY issues.disabled.enable.label "Activar Adblock Plus"> +<!ENTITY update.fixed.description "Las actualizaciones de sus suscripciones de filtro probablemente resolvieron el problema sobre el que está usted informando. Por favor vuelva a cargar la página y vuelva a intentarlo. Informe nuevamente si el problema persiste."> +<!ENTITY anonymous.label "Envío &Anónimo"> +<!ENTITY reloadButton.label "&Recargar página"> +<!ENTITY recentReports.clear.label "&Quitar todos los reportes"> +<!ENTITY typeSelector.description "Esta ventana lo guiará por pasos, necesarios para el envio de un reporte de problemas de Adblock Plus. Primero, por favor seleccione el tipo de problema que esta experimentando en esta página:"> +<!ENTITY screenshot.remove.label "Q&uitar datos sensitivos/privados"> +<!ENTITY issues.ownfilters.description "Alguno de los filtros aplicados en esta página se encuentran definidos por el usuarios. Por favor desactive los filtros que pueden causar el problema:"> +<!ENTITY update.inProgress.description "AdBlock Plus necesita actualizar sus suscripciones de filtro para asegurarse de que el problema no ha sido resuelto ya. Por favor, espere..."> +<!ENTITY sendPage.retry.label "Enviar otra vez"> +<!ENTITY data.label "Da&tos de Reporte"> +<!ENTITY recentReports.label "Tus reportes recientemente enviados"> +<!ENTITY typeWarning.description "Ha indicado que desea reportar un problema general con Adblock Plus en lugar de un problema con los filtros. Por favor tenga en cuenta que estos problemas son mejor reportados en el [link]Foro de Adblock Plus[/link]. Solo deberia usar el reportero de problemas para complementar una discución existente, ya que nadie se percatará de su informe a menos que se les proporcione el enlace a la misma. El enlace generado automáticamente sera proporcionado después de presentar el reporte respectivo."> +<!ENTITY issues.disabled.description "Adblock Plus esta desactivado, no bloqueará nada en su estado actual."> +<!ENTITY attachExtensions.label "A&djuntar una lista de extensiones activas a el repote en caso de que un conflicto de complementos sea la causa del problema"> +<!ENTITY issues.nosubscriptions.add.label "Agregar filtro de suscripción"> +<!ENTITY issues.disabledfilters.enable.label "Activar filtro"> +<!ENTITY issues.override.label "&La configuración es correcta, continue con el reporte"> +<!ENTITY issues.nosubscriptions.description "Usted no parece estar suscrito a ninguna lista de filtro pre-desarrollado que automáticamente quita contenido no deseado de los sitios web."> +<!ENTITY typeSelector.falsePositive.description "Seleccione esta opción si la página carece de contenido importante, muestra incorrectamente o falla al funcionar como debe. Puede determinar si Adblock Plus es el causante del problema desactivándolo temporalmente."> +<!ENTITY typeSelector.other.label "&Otro problema"> +<!ENTITY emailComment.label "Te sugerimos que ingreses una dirección válida de correo electrónico para que podamos contactarte si hay preguntas sobre tu informe. También nos permitirá reconocer tus contribuciones y darles mayor prioridad."> +<!ENTITY issues.whitelist.remove.label "Re-activar Adblock Plus en esta página"> +<!ENTITY outdatedSubscriptions.description "Las siguientes suscripciones de filtro no han sido actualizadas desde hace al menos dos semanas. Por favor, actualícelas antes de enviar un informe de error, el problema quizá esté ya resuelto."> +<!ENTITY dataCollector.description "Por favor espere un momento mientras Adblock Plus reúne los datos necesarios."> +<!ENTITY sendButton.label "En&viar reporte"> +<!ENTITY comment.label "Come&ntario (opcional):"> +<!ENTITY sendPage.errorMessage "Un intento de enviar el reporte ha fallado con el código de error "?1?". Por favor asegúrese de que se encuentra conectado a internet y vuelva a intentarlo. Si el problema persiste por favor solicite asistencia en el [link]Foro de Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Mostrar reportes enviados recientemente"> +<!ENTITY commentPage.heading "Comentar"> +<!ENTITY update.start.label "Iniciar actualización ahora"> +<!ENTITY issues.disabledfilters.description "Los siguientes filtros están desactivados, aun así pueden tener efectos en esta página:"> +<!ENTITY screenshot.description "La misma página puede parecer diferente para cada persona. Puede ayudarnos a entender el problema si adjunta una captura de pantalla a su reporte. Puede quitar partes que contengan informacion sensitiva/privada asi mismo marcar áreas donde el problema se note. Para hacerlo click en el botón correspondiente y seleccione una parte de la imagen con su cursor/puntero."> +<!ENTITY screenshot.attach.label "Adjuntar una &imagen de la página al reporte"> +<!ENTITY issues.whitelist.description "Adblock Plus se encuentra desactivado en la página que esta reportando. Por favor vuelva a activarlo y recargue la página antes de presentar el informe para ayudar a la investigación de este problema."> +<!ENTITY typeSelector.falseNegative.label "Ad&block Plus no bloquea una publicidad"> +<!ENTITY typeSelector.heading "Elija tipo de problema"> +<!ENTITY anonymity.warning "No podremos comunicarnos contigo y es probable que le demos una prioridad inferior a tu informe."> +<!ENTITY wizard.title "Reportero de problemas"> +<!ENTITY issues.ownfilters.disable.label "Desactivar filtro"> +<!ENTITY commentPage.description "El campo de texto a continuación le permite escribir un comentario para ayudarnos a entender el problema. Este paso es opcional pero recomendado si el problema no es obvio. Puede tambien revisar el reporte de datos antes de que sea enviado."> +<!ENTITY comment.lengthWarning "El tamaño de su comentario excede los 1000 caracteres. Solo los primeros 1000 caracteres seran enviados."> +<!ENTITY typeSelector.falseNegative.description "Seleccione esta opción si una publicidad continua mostrándose a pesar que Adblock Plus se encuentra activado."> +<!ENTITY sendPage.waitMessage "Por favor espere mientras Adblock Plus envía su reporte."> +<!ENTITY dataCollector.heading "Bienvenido al reportero de problemas"> +<!ENTITY screenshot.heading "Adjuntar captura de pantalla"> +<!ENTITY sendPage.heading "Enviar reporte"> +<!ENTITY issues.subscriptionCount.description "Parece que usted se encuentra inscrito en demasiadas suscripciones de filtro. Esta configuración no se recomienda porque causará una verosimilitud con problemas mucho mas grandes. Tampoco podemos aceptar su reporte de problemas porque en el mismo no se encuentra claro qué autor de suscripción de filtro necesita tomar acciones. Por favor quite todo menos las suscripciones realmente necesarias y compruebe si el problema aun persiste."> +<!ENTITY screenshot.mark.label "&Marcar el problema"> +<!ENTITY privacyPolicy.label "Política de Privacidad"> +<!ENTITY issues.description "Adblock Plus ha detectado problemas con su configuración que puede ser la causa de este problema o que podria dificultar la investigación del problema."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/sidebar.dtd new file mode 100644 index 0000000..a7eb86f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Elementos flash en bordes"> +<!ENTITY address.label "Dirección"> +<!ENTITY context.open.label "Abrir en Nueva Pestaña"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Fuente del filtro:"> +<!ENTITY noitems.label "No hay elementos bloqueables"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Tamaño:"> +<!ENTITY reattach.label "Unir"> +<!ENTITY search.label "&Buscar:"> +<!ENTITY docDomain.thirdParty "(terceros)"> +<!ENTITY filterSource.label "Fuente de filtro"> +<!ENTITY tooltip.docDomain.label "Fuente del Documento:"> +<!ENTITY context.copy.label "Copiar dirección de elementos"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Desactivar filtro ?1?"> +<!ENTITY context.copyFilter.label "Copiar filtro"> +<!ENTITY context.block.label "Bloquear este elemento"> +<!ENTITY context.enablefilter.label "Re-Habilitar filtro ?1?"> +<!ENTITY detach.label "Separar"> +<!ENTITY whitelisted.label "Página de lista de Permitidos"> +<!ENTITY context.disablefilteronsite.label "Desactivar este filtro en ?1?"> +<!ENTITY detached.title "Adblock Plus: Elementos bloqueables (Separados)"> +<!ENTITY docDomain.firstParty "(propietario)"> +<!ENTITY tooltip.type.whitelisted "(permitido)"> +<!ENTITY tooltip.filter.label "Filtro en uso:"> +<!ENTITY tooltip.filter.disabled "(desactivado)"> +<!ENTITY context.editfilter.label "Editar filtro en uso"> +<!ENTITY tooltip.type.blocked "(bloqueado)"> +<!ENTITY size.label "Tamaño"> +<!ENTITY context.whitelist.label "Agregar una regla de excepción para el elemento"> +<!ENTITY context.selectAll.label "Seleccionar todo"> +<!ENTITY state.label "Estado"> +<!ENTITY docDomain.label "Fuente del documento"> +<!ENTITY tooltip.address.label "Dirección:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/subscriptionSelection.dtd new file mode 100644 index 0000000..c43540e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/es-MX/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "A&gregar suscripción de filtro "?1?" también"> +<!ENTITY list.download.failed "Adblock Plus ha fallado al recuperar la lista de subscripciones."> +<!ENTITY list.download.retry "Intente de nuevo"> +<!ENTITY title.label "&Titulo de la Suscripción:"> +<!ENTITY list.download.website "Ver sitio web"> +<!ENTITY supplementMessage "Esta suscripción de filtros está orientada a ser usada con la subscripción de filtro "?1?" la cual aun no está usando."> +<!ENTITY viewList.label "Ver filtros"> +<!ENTITY visitHomepage.label "Visitar pagina principal"> +<!ENTITY addSubscription.label "Agregar subscripción"> +<!ENTITY dialog.title "Agregar subscripción de filtro de Adblock Plus"> +<!ENTITY location.label "&Ubicación de la lista de filtros:"> +<!ENTITY fromWeb.description "Por favor confirme que desea agregar esta subscripción de filtro. Usted puede cambiar el titulo de la subscripción o la localización antes de agregarla."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/composer.dtd new file mode 100644 index 0000000..5a0ceac --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "aadressi &lõpus"> +<!ENTITY domainRestriction.label "Kehtib ainult domeenis:"> +<!ENTITY collapse.default.no.label "Kasuta vaikeväärtust (ei)"> +<!ENTITY firstParty.label "Ainult &põhilehel"> +<!ENTITY preferences.label "Näita olemasolevaid filtreid..."> +<!ENTITY pattern.label "Otsitav avaldis"> +<!ENTITY thirdParty.label "Ainult &väljaspoolsed"> +<!ENTITY filter.label "Uus filter:"> +<!ENTITY collapse.label "A&henda blokeeritavad:"> +<!ENTITY match.warning "Sisestatud avaldis ei leia aadressist ühtegi vastet ja seega ei oma sellele mingit mõju."> +<!ENTITY anchor.start.label "aadressi alguses"> +<!ENTITY matchCase.label "&Tõstutundlik"> +<!ENTITY custom.pattern.label "L&oo ise:"> +<!ENTITY unselectAllTypes.label "Tühista valik"> +<!ENTITY type.whitelist.label "&Erandi reegel"> +<!ENTITY regexp.warning "Sisestatud avaldis loetakse regulaaravaldiseks, mida Adblock Plus ei suuda efektiivselt töödelda ja mis võib muuta interneti lehitsemise aeglasemaks. Kui sa tegelikult ei soovinud luua regulaaravaldist, siis lisa selle lõppu tärn (*)."> +<!ENTITY dialog.title "Lisa Adblock Plusi filtreerimisreegel"> +<!ENTITY basic.label "Tavaline vaade"> +<!ENTITY type.filter.label "Blokeeriv filter"> +<!ENTITY types.label "Rakenda tüüpidele:"> +<!ENTITY shortpattern.warning "Sisestatud avaldis on optimeerimiseks liiga lühike ja võib muuta interneti lehitsemise aeglasemaks. Soovitatav oleks valida selle filtri jaoks pikem string, mida Adblock Plusi töötleb efektiivsemalt."> +<!ENTITY collapse.yes.label "Jah"> +<!ENTITY anchors.label "Otsitav võib olla ainult:"> +<!ENTITY collapse.default.yes.label "Kasuta vaikeväärtust (jah)"> +<!ENTITY domainRestriction.help "Sisesta üks või enam püstkriipsuga (|) eraldatud domeeninime. See filter kehtib ainult nendele domeenidele. Tilde (~) domeeninime ees näitab, et seda filtrit ei rakendata antud domeenile."> +<!ENTITY accept.label "Lisa filter"> +<!ENTITY options.label "Valikud"> +<!ENTITY disabled.warning "Adblock Plus on hetkel keelatud olekus. Sa võid lisada filtreid, kuid neid ei rakendu enne, kui [link]lubad Adblock Plusi[/link]."> +<!ENTITY anchor.start.flexible.label "domeeninime alguses"> +<!ENTITY collapse.no.label "Ei"> +<!ENTITY selectAllTypes.label "Vali kõik"> +<!ENTITY advanced.label "Detailne vaade"> +<!ENTITY pattern.explanation "Otsitavaks võib olla aadressi suvaline osa; tärnid (*) toimivad metamärkidena. Filter kehtib ainult aadresside puhul, mis sobivad antud otsingu avaldisega."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/filters.dtd new file mode 100644 index 0000000..29d8bc5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Kõik su isetehtud filtrid asendatakse valitud faili sisuga. Kas soovid jätkata?"> +<!ENTITY slow.column "A&eglased filtrid"> +<!ENTITY enabled.column "L&ubatud"> +<!ENTITY subscription.lastDownload.checksumMismatch "Nurjus, kontrollsumma ei klapi"> +<!ENTITY noFiltersInGroup.text "Valitud grupp on tühi"> +<!ENTITY subscription.actions.label "Tegevused"> +<!ENTITY filter.selectAll.label "Vali kõik"> +<!ENTITY backupButton.label "&Varundamine ja taastamine"> +<!ENTITY restore.minVersion.warning "Hoiatus: see fail on loodud uuema Adblock Plus versiooniga. Enne selle taastamist peaksid sa Adblock Plus'i uuendama viimasele versioonile."> +<!ENTITY restore.error "Faili andmeid ei õnnestu töödelda. Kas see on ikka Adblock Plus varundusfail?"> +<!ENTITY sort.ascending.label "A > Z sortimiskord"> +<!ENTITY sort.label "Sortimine"> +<!ENTITY subscription.source.label "Filtrite loetelu"> +<!ENTITY hitcount.column "&Tabamusi"> +<!ENTITY noFilters.text "Sul ei ole ühtegi isetehtud filtrit."> +<!ENTITY backup.custom.title "Ainult isetehtud filtrid"> +<!ENTITY subscription.external.label "Uuendatud mingi teise lisa poolt"> +<!ENTITY subscription.delete.label "Kustuta"> +<!ENTITY noGroupSelected.text "Enne kui filtreid saab näidata pead valima filtrite grupi."> +<!ENTITY filter.cut.label "Lõika"> +<!ENTITY restore.default.label "Taasta andmed varukoopiast ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Laen alla..."> +<!ENTITY subscriptions.tab.label "Filtrite tellimused"> +<!ENTITY sort.descending.label "Z > A sortimiskord"> +<!ENTITY filters.remove.warning "Kas soovid tõesti eemaldada kõik valitud filtrid?"> +<!ENTITY filter.delete.label "Kustuta"> +<!ENTITY addSubscriptionAdd.label "Lisa"> +<!ENTITY viewMenu.label "Vaade"> +<!ENTITY subscription.lastDownload.unknown "Pole teada"> +<!ENTITY addSubscriptionCancel.label "Loobu"> +<!ENTITY subscription.enabled.label "Lubatud"> +<!ENTITY noSubscriptions.text "Sa ei ole veel lisanud ühtegi filtrite tellimust. Adblock Plus ei blokeeri midagi ilma filtriteta. Filtrite tellimiseks klõpsa nupul "Lisa filtrite tellimus"."> +<!ENTITY subscription.update.label "Uuenda filtreid"> +<!ENTITY dialog.title "Adblock Plus filtrite sätted"> +<!ENTITY addFilter.label "&Lisa filter"> +<!ENTITY subscription.minVersion.warning "See filtrite tellimus nõuab uuemat Adblock Plus versiooni. Sa peaksid uuendama Adblock Plus'i."> +<!ENTITY subscription.lastDownload.invalidURL "Nurjus, vale aadress"> +<!ENTITY backup.error "Viga filtrite faili kirjutamisel. Kontrolli, et fail ei oleks avatud mingi teise rakenduse poolt ja et fail ei oleks kirjutuskaitstud."> +<!ENTITY filter.moveUp.label "Liiguta üles"> +<!ENTITY addGroup.label "Lisa filtrite grupp"> +<!ENTITY filter.edit.label "Muuda"> +<!ENTITY subscription.showHideFilters.label "Näita/peida filtreid"> +<!ENTITY acceptableAds2.label "Luba mõned mittepealetükkivad reklaamid"> +<!ENTITY addSubscriptionOther.label "Lisa muu tellimus"> +<!ENTITY close.label "Sulge"> +<!ENTITY sort.none.label "S&ortimata"> +<!ENTITY filter.actions.label "Filtri tegevused"> +<!ENTITY filter.copy.label "Kopeeri"> +<!ENTITY filter.moveDown.label "Liiguta alla"> +<!ENTITY filter.resetHitCounts.label "Nullista tabamuste statistika"> +<!ENTITY readMore.label "Loe lisaks"> +<!ENTITY subscription.moveUp.label "Liiguta üles"> +<!ENTITY addSubscription.label "Lisa filtrite tellimus"> +<!ENTITY subscription.homepage.label "Koduleht"> +<!ENTITY backup.complete.title "Kõik filtrid ja tellimused"> +<!ENTITY restore.own.label "Taasta andmed mujalt"> +<!ENTITY restore.complete.warning "Kõik filtrite sätted asendatakse valitud faili sisuga. Kas soovid jätkata?"> +<!ENTITY filters.tab.label "Isetehtud filtrid"> +<!ENTITY backup.label "Loo uus varukoopia"> +<!ENTITY find.label "&Otsi"> +<!ENTITY subscription.moveDown.label "Liiguta alla"> +<!ENTITY subscription.lastDownload.connectionError "Nurjus, allalaadimise viga"> +<!ENTITY subscription.lastDownload.success "Õnnestus"> +<!ENTITY subscription.lastDownload.invalidData "Nurjus, vale filtrite nimekiri"> +<!ENTITY filter.paste.label "Aseta"> +<!ENTITY subscription.disabledFilters.enable "Luba keelatud filtrid"> +<!ENTITY lasthit.column "&Viimane tabamus"> +<!ENTITY subscription.editTitle.label "Muuda pealkirja"> +<!ENTITY subscription.disabledFilters.warning "Mõned selle tellimuse filtrid on keelatud."> +<!ENTITY filter.column "Filtri reegel"> +<!ENTITY subscription.lastDownload.label "Viimati alla laaditud:"> +<!ENTITY viewList.label "Vaata loetelu"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/firstRun.properties new file mode 100644 index 0000000..fdc591a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_toggle_off=VÄLJAS +firstRun_feature_tracking=Keela Jälgimine +firstRun_title=Adblock Plus on paigaldatud +firstRun_toggle_on=SEES +firstRun_feature_malware=Viiruste blokeerimine +firstRun_feature_social=Eemalde sotsiaalse meedia nuppe +firstRun_acceptableAdsHeadline=Tüütud kuulutused on nüüd blokeeritud +firstRun_share=Räägi oma sõpradele +firstRun_share_headline=<a>Anna meile käsi</a> veebi muutmises paremaks kohaks +firstRun_donate=anneta +firstRun_donate_label=Toeta meie projekti +firstRun_feature_tracking_description=Browse privately by disabling tracking - hiding your tracks from ad companies that would track your every move. +firstRun_acceptableAdsExplanation=We'd like to encourage websites to use straightforward, unobtrusive advertising. That's why we've established <a>strict guidelines</a> to identify acceptable ads, which are shown under default settings. If you still want to block every ad you can <a>disable</a> this in a few seconds. +firstRun_contributor_credits=Contributor Credits +firstRun_dataCorruptionWarning=Does this page keep showing up? <a>Click here!</a> +firstRun_feature_social_description=Automatically rid your browsing experience of social media buttons, such as the Facebook Like, which appear on web pages and track your behavior. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. +firstRun_feature_malware_description=Make your browsing more secure by blocking known malware domains. +firstRun_features=Adblock Plus can do more than block ads +firstRun_legacySafariWarning=You are using an old version of Safari which is not supported by Adblock Plus. It might not work correctly or impair the user experience on some websites. We strongly recommend to either update to Safari 6.1.1 or higher (on OS X 10.8 Mountain Lion), or Safari 7.0.1 or higher (on OS X 10.9 Mavericks), or to use the latest version of Mozilla Firefox, Google Chrome or Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/global.properties new file mode 100644 index 0000000..7802c1e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Antud lehel ei leidu blokeeritavaid elemente +action3_tooltip=Hiireklõps lubab/keelab Adblock Plusi. +type_label_script=skript +filter_elemhide_nocriteria=Pole antud ühtegi kriteeriumit peidetava elemendi äratundmiseks +blockingGroup_title=Blokeerivad reeglid +whitelisted_tooltip=Antud lehel on Adblock Plus keelatud. +type_label_stylesheet=laaditabel +blocked_count_tooltip=?1?, elemente kokku ?2? +type_label_font=font +type_label_popup=hüpikaken +filter_regexp_tooltip=Antud filter on kas regulaaravaldis või optimeerimiseks liiga lühike. Selliste filtrite suur hulk võib muuta interneti lehitsemine aeglaseks. +action0_tooltip=Hiireklõps avab kontekstimenüü, klõps keskmisel nupul lubab/keelab lisa. +whitelisted_page=Adblock Plus on antud lehel keelatud +remove_group_warning=Kas oled kindel, et soovid seda gruppi kustutada? +action1_tooltip=Hiireklõps avab/sulgeb blokeeritavad elemendid, klõps keskmisel nupul lubab/keelab lisa. +type_label_xmlhttprequest=XML päring +active_tooltip=Adblock Plus on lubatud, kasutusel on ?1? filtrite tellimus(t) ja ?2? isetehtud filtrit. +type_label_document=dokument +type_label_object_subrequest=objekti alampäring +whitelistGroup_title=Erandite reeglid +disabled_tooltip=Adblock Plus on keelatud. +filter_elemhide_duplicate_id=Määratleda saab ainult ühe peidetava elemendi ID +type_label_object=objekt +action2_tooltip=Hiireklõps avab sätted, klõps keskmisel nupul lubab/keelab lisa. +type_label_subdocument=raam +clearStats_warning=See nullistab kõigi filtrite tabamuste statistika ja keelab filtrite tabamuste loendamise. Kas soovid jätkata? +blocked_count_addendum=(valges nimekirjas: ?1?, peidetud: ?2?) +subscription_invalid_location=Filtrite nimekirja asukoht on kas vigane URL või failinimi. +type_label_image=pilt +remove_subscription_warning=Kas oled kindel, et soovid selle tellimuse eemaldata? +type_label_other=muu +mobile_menu_enable=ABP: Luba +type_label_media=heli/video +mobile_menu_disable_site=ABP: Keela saidil ?1? +elemhideGroup_title=Elemendi peitmise reeglid +mobile_menu_enable_site=ABP: Luba saidil ?1? +type_label_elemhide=peidetud +newGroup_title=Uus filtrite grupp +default_dialog_title=Adblock Plus +notification_antiadblock_title=Hide targeted messages? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/overlay.dtd new file mode 100644 index 0000000..4750c46 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY sync.label "Sün&kroniseeri Adblock Plus sätted"> +<!ENTITY whitelist.site.label "Keela domeenis ?1?"> +<!ENTITY filters.label "Filtrite sätted"> +<!ENTITY disable.label "Keela kõikjal"> +<!ENTITY objecttab.title "Blokeeri"> +<!ENTITY objecttab.tooltip "Klõpsa siia selle objekti blokeerimiseks Adblock Plusi abil"> +<!ENTITY menuitem.label "Adblock Plusi sätted"> +<!ENTITY objecttabs.label "Näita Flash ja Java objektidel sakke"> +<!ENTITY sendReport.label "&Teata probleemist antud lehel"> +<!ENTITY whitelist.page.label "Keela ainult antud lehel"> +<!ENTITY context.image.label "Adblock Plus: Blokeeri pilt"> +<!ENTITY counthits.label "Loenda &filtrite tabamusi"> +<!ENTITY opensidebar.label "Ava blokeeritavad elemendid"> +<!ENTITY contribute.label "Toeta Adblock Plus'i"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Blokeeri raam"> +<!ENTITY blocked.tooltip "Blokeeritud elemendid antud lehel:"> +<!ENTITY hideplaceholders.label "Peida blokeeritud elementide kohatäitjad"> +<!ENTITY showinstatusbar.label "Näita &olekuribal"> +<!ENTITY sidebar.title "Blokeeritavad elemendid antud lehel"> +<!ENTITY options.label "V&alikud"> +<!ENTITY context.object.label "Adblock Plus: Blokeeri objekt"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Luba uuesti antud lehel"> +<!ENTITY filters.tooltip "Kõige aktiivsemad filtrid:"> +<!ENTITY closesidebar.label "Sulge blokeeritavad elemendid"> +<!ENTITY showintoolbar.label "Nä&ita tööriistade menüüs"> +<!ENTITY status.tooltip "Olek:"> +<!ENTITY context.media.label "Adblock Plus: Blokeeri audio/video"> +<!ENTITY subscription.update.label "Uuenda filtreid"> +<!ENTITY notification.button.yes "&Yes"> +<!ENTITY notification.button.no "&No"> +<!ENTITY notification.button.close "&Close"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/sendReport.dtd new file mode 100644 index 0000000..ca6e99a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Tü&hista"> +<!ENTITY issues.disabledgroups.description "Järgnevad filtrite tellimused/filtrigrupid on keelatud, ent nad võivad siiski veel sellel lehel toimida:"> +<!ENTITY showData.label "Näita teate andmeid"> +<!ENTITY typeSelector.falsePositive.label "Adblock &Plus blokeerib liiga palju"> +<!ENTITY issues.change.description "Seadistust on muudetud. Palun laadi leht uuesti muudatuste testimiseks ja teata probleemist, kui see muudatus ei lahendanud probleemi."> +<!ENTITY email.label "E-&post:"> +<!ENTITY issues.openPreferences.label "Ava filtri sätted"> +<!ENTITY sendPage.confirmation "Su teade on salvestatud. Sa võid sellele ligi pääseda järgneval aadressil:"> +<!ENTITY copyLink.label "&Kopeeri teate link"> +<!ENTITY issues.nofilters.description "Adblock Plus ei blokeeri praegusel lehel midagi. See probleem ei ole tõenäoliselt Adblock Plusiga seotud."> +<!ENTITY sendPage.knownIssue "Seda probleemi tõenäoliselt juba teatakse. Rohkem infot:"> +<!ENTITY typeSelector.other.description "Vali see variant juhul kui sa kahtlustad, et probleem on pigem Adblock Plusis kui selle filtrites."> +<!ENTITY issues.disabledgroups.enable.label "Luba filtrite tellimus/filtrigrupp"> +<!ENTITY typeWarning.override.label "&Ma mõistan ja soovin siiski probleemist teada anda"> +<!ENTITY issues.disabled.enable.label "Luba Adblock Plus"> +<!ENTITY update.fixed.description "Filtrite tellimuste uuendused lahendasid tõenäoliselt selle probleemi, millest sa teatasid. Palun lae leht uuesti ja ürita uuesti. Teata uuesti, kui probleemid jäid alles."> +<!ENTITY anonymous.label "&Anonüümne esitamine"> +<!ENTITY reloadButton.label "&Laadi leht uuesti"> +<!ENTITY recentReports.clear.label "&Kustuta kõik teated"> +<!ENTITY typeSelector.description "Antud aknas saab teatada Adblock Plusi probleemidest, tehes läbi vajalikud sammud. Kõigepealt tuleb valida probleemi liik, millega sa antud lehel kokku puutud:"> +<!ENTITY screenshot.remove.label "Eema&lda tundlikud andmed"> +<!ENTITY issues.ownfilters.description "Mõned sellel lehel kehtivad filtrid on loonud kasutaja. Palun keela need filtrid mis võiksid põhjustada seda probleemi:"> +<!ENTITY update.inProgress.description "Adblock Plus peab uuendama filtrite tellimusi, olemaks kindel, et see probleem ei ole juba lahendatud. Palun oota..."> +<!ENTITY sendPage.retry.label "Saada uuesti"> +<!ENTITY data.label "T&eate andmed:"> +<!ENTITY recentReports.label "Sinu viimati esitatud teated"> +<!ENTITY typeWarning.description "Sa märkisid, et soovid teatada Adblock Plusi üldisest probleemist ja mitte probleemist filtritega. Pane tähele, et selliseid probleeme on kõige parem teatada [link]Adblock Plusi foorumis[/link]. Sa peaksid kasutama probleemist teatamise abivahendit ainult selleks, et täiendada olemasolevat arutelu, sest mitte keegi ei märka su teadet kui sa ei pane selle juurde linki. Automaatselt genereeritud link luuakse peale probleemi edastamist."> +<!ENTITY issues.disabled.description "Adblock Plus on keelatud, see ei blokeeri hetkel midagi."> +<!ENTITY attachExtensions.label "Pa&ne teatele kaasa aktiivsete lisade nimekiri juhuks, kui probleemi põhjuseks on lisade konflikt"> +<!ENTITY issues.nosubscriptions.add.label "Lisa filtrite tellimus"> +<!ENTITY issues.disabledfilters.enable.label "Luba filter"> +<!ENTITY issues.override.label "Antud seadistus &on õige. Jätka aruandmist"> +<!ENTITY issues.nosubscriptions.description "Sa ei paista olevat tellinud ühtegi filtrite nimekirja, mis eemaldavad automaatselt veebilehtedelt soovimata sisu."> +<!ENTITY typeSelector.falsePositive.description "Vali see variant juhul kui lehel on kaduma läinud oluline sisu, lehte kuvatakse valesti või kui see ei tööta korralikult. Et teha kindlaks, kas Adblock Plus on selle probleemi põhjustaja, võid ta ajutiselt ära keelata."> +<!ENTITY typeSelector.other.label "&Muu probleem"> +<!ENTITY emailComment.label "Me soovitame sul sisestada oma kehtiva meiliaadressi, et saaksime küsimuste tekkimisel antud teate kohta sinuga ühendust võtta. Samuti aitab see suurendada sinu teadete prioriteeti."> +<!ENTITY issues.whitelist.remove.label "Luba uuesti Adblock Plus sellel lehel"> +<!ENTITY outdatedSubscriptions.description "Järgmisi filtrite tellimusi ei ole uuendatud vähemalt kahe nädala jooksul. Palun uuenda neid tellimusi enne veaaruande esitamist, sest probleem võib olla juba lahendatud."> +<!ENTITY dataCollector.description "Palun oota mõni hetk kuni Adblock Plus kogub vajalikke andmeid."> +<!ENTITY sendButton.label "S&aada teade"> +<!ENTITY comment.label "&Kommentaar (valikuline):"> +<!ENTITY sendPage.errorMessage "Teate saatmine ebaõnnestus. Veakood "?1?". Palun kontrolli, et su internetiühendus töötab ja proovi uuesti. Kui see probleem kordub, siis küsi abi [link]Adblock Plus foorumist[/link]."> +<!ENTITY showRecentReports.label "Näita viimati esitatud teateid"> +<!ENTITY commentPage.heading "Kommenteeri"> +<!ENTITY update.start.label "Alusta kohe uuendamist"> +<!ENTITY issues.disabledfilters.description "Järgnevad filtrid on keelatud, ent nad võivad siiski veel sellel lehel toimida:"> +<!ENTITY screenshot.description "Sama lehekülg võib erinevatel inimestel paista erinevalt. Teatele ekraanipildi lisamine võib aidata meil probleemist aru saada. Sa võid välja lõigata osad, mis sisaldavad tundlikku informatsiooni ja samuti ära märkida piirkonnad, kus probleem on märgatav. Selle tegemiseks klõpsa vastavale nupule ja vali hiirega pildi osa."> +<!ENTITY screenshot.attach.label "P&ane teatele kaasa pilt leheküljest"> +<!ENTITY issues.whitelist.description "Adblock Plus on praegu keelatud sinu poolt teatataval lehel. Palun luba see uuesti ja laadi leht uuesti enne teate saatmist, et hõlbustada selle probleemi lahendamist."> +<!ENTITY typeSelector.falseNegative.label "Ad&block Plus ei blokeeri reklaami"> +<!ENTITY typeSelector.heading "Vali probleemi liik"> +<!ENTITY anonymity.warning "Meil ei ole võimalik sinu poole tagasi pöörduda ja tõenäoliselt omistame sellele teatele madamala prioriteedi."> +<!ENTITY wizard.title "Probleemidest teatamine"> +<!ENTITY issues.ownfilters.disable.label "Keela filter"> +<!ENTITY commentPage.description "Järgnevasse tekstivälja saad lisada oma kommentaari, et aidata meil probleemist aru saada. See ei ole kohustuslik, kuid on soovitatav kui probleem ei ole selgelt arusaadav. Sa võid samuti üle vaadata aruande andmed enne kui need ära saadetakse."> +<!ENTITY comment.lengthWarning "Kommentaari pikkus ületab 1000 tähemärki. Ära saadetakse ainult esimesed 1000 tähemärki."> +<!ENTITY typeSelector.falseNegative.description "Vali see variant juhul kui reklaami kuvatakse hoolimata sellest, et Adblock Plus on lubatud."> +<!ENTITY sendPage.waitMessage "Palun oota kuni Adblock Plus edastab teadet."> +<!ENTITY dataCollector.heading "Tere tulemast kasutama probleemidest teatamise abivahendit"> +<!ENTITY screenshot.heading "Lisa ekraanipilt"> +<!ENTITY sendPage.heading "Saada teade"> +<!ENTITY issues.subscriptionCount.description "Paistab, et sul on liiga palju filtrite tellimusi. Selline seadistus ei ole soovitatav, sest vigade tekkimise tõenäosus on nüüd palju suurem. Me ei saa ka vastu võta sinu probleemist teatamise aruannet, sest pole selge, millise filtrite tellimuse autor peab selle probleemiga tegelema. Palun kustuta kõik filtrite tellimused ja jäta alles ainult hädavajalikud ning kontrolli, kas probleem on ikka veel alles."> +<!ENTITY screenshot.mark.label "&Märgista probleem"> +<!ENTITY privacyPolicy.label "Privaatsus"> +<!ENTITY issues.description "Adblock Plus on kindlaks teinud probleemid su praeguses seadistuses, mis võivad seda probleemi põhjustada või teha selle teate uurimise keeruliseks."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/sidebar.dtd new file mode 100644 index 0000000..3043e96 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Flash elemendi piirid"> +<!ENTITY address.label "Aadress"> +<!ENTITY context.open.label "Ava uuel kaardil"> +<!ENTITY type.label "Tüüp"> +<!ENTITY tooltip.filterSource.label "Filtri asukoht:"> +<!ENTITY noitems.label "Blokeeritavaid elemendid puuduvad"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Suurus:"> +<!ENTITY reattach.label "Haagi tagasi"> +<!ENTITY search.label "Ot&sing:"> +<!ENTITY docDomain.thirdParty "(väljaspoolt)"> +<!ENTITY filterSource.label "Filtri allikas"> +<!ENTITY tooltip.docDomain.label "Dokumendi allikas:"> +<!ENTITY context.copy.label "Kopeeri elemendi aadress"> +<!ENTITY tooltip.type.label "Tüüp:"> +<!ENTITY context.disablefilter.label "Keela filter ?1?"> +<!ENTITY context.copyFilter.label "Kopeeri filter"> +<!ENTITY context.block.label "Blokeeri see element"> +<!ENTITY context.enablefilter.label "Luba taas filter ?1?"> +<!ENTITY detach.label "Haagi lahti"> +<!ENTITY whitelisted.label "Lehekülg on valges nimekirjas"> +<!ENTITY context.disablefilteronsite.label "Keela see filter domeenis ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokeeritavad elemendid (lahti haagitud)"> +<!ENTITY docDomain.firstParty "(põhileht)"> +<!ENTITY tooltip.type.whitelisted "(valges nimekirjas)"> +<!ENTITY tooltip.filter.label "Kehtiv filter:"> +<!ENTITY tooltip.filter.disabled "(keelatud)"> +<!ENTITY context.editfilter.label "Muuda kehtivat filtrit"> +<!ENTITY tooltip.type.blocked "(blokeeritud)"> +<!ENTITY size.label "Suurus"> +<!ENTITY context.whitelist.label "Lisa antud elemendile erandi reegel"> +<!ENTITY context.selectAll.label "Vali kõik"> +<!ENTITY state.label "Olek"> +<!ENTITY docDomain.label "Dokumendi allikas"> +<!ENTITY tooltip.address.label "Aadress:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/subscriptionSelection.dtd new file mode 100644 index 0000000..082ab98 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/et/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Lisa ka filtrite tellimus "?1?""> +<!ENTITY list.download.failed "Adblock Plusil ei õnnestunud alla laadida tellimuste nimekirja."> +<!ENTITY list.download.retry "Proovi uuesti"> +<!ENTITY title.label "Tellimuse &pealkiri:"> +<!ENTITY list.download.website "Külasta kodulehte"> +<!ENTITY supplementMessage "See filtrite tellimus on mõeldud kasutamiseks koos filtrite tellimusega "?1?" mida sa veel ei kasuta."> +<!ENTITY viewList.label "Vaata filtreid"> +<!ENTITY visitHomepage.label "Külasta kodulehte"> +<!ENTITY addSubscription.label "Lisa tellimus"> +<!ENTITY dialog.title "Lisa Adblock Plus filtrite tellimus"> +<!ENTITY location.label "Filtrite nimekirja asukoht:"> +<!ENTITY fromWeb.description "Palun kinnita, et soovid lisada selle filtrite tellimuse. Enne lisamist saad muuta tellimuse pealkirja või asukohta."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/composer.dtd new file mode 100644 index 0000000..ae82d94 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "helbidearen &bukaeran"> +<!ENTITY domainRestriction.label "Mugatu &domeinu honetara:"> +<!ENTITY collapse.default.no.label "Erabili lehenetsitakoa (ez)"> +<!ENTITY firstParty.label "Lehen es&kukoa soilik"> +<!ENTITY preferences.label "&Erakutsi dauden iragazkiak..."> +<!ENTITY pattern.label "Bilatu eredua"> +<!ENTITY thirdParty.label "Ka&npotik jasoa soilik"> +<!ENTITY filter.label "&Iragazki berria:"> +<!ENTITY collapse.label "Ko&lapso blokeatuta:"> +<!ENTITY match.warning "Sartu duzun ereduak ez du blokeatu/desblokeatu nahi duzun helbidearekin bat egiten eta ez du inolako eraginik izango."> +<!ENTITY anchor.start.label "helbidearen &hasieran"> +<!ENTITY matchCase.label "Bereizi letra &Larriak/xeheak"> +<!ENTITY custom.pattern.label "&Pertsonalizatua:"> +<!ENTITY unselectAllTypes.label "Ez aukeratu bat ere ez"> +<!ENTITY type.whitelist.label "&Salbuespen-araua"> +<!ENTITY regexp.warning "Sartu duzun eredua adierazpen erregulartzat hartuko da, Adblock Plusek ezin ditu azkar prozesatu eta honek zure nabigazioa moteldu dezake. Zure asmoa ez bazen adierazpen erregular bat erabiltzea, gehitu izarño bat (*) ereduaren bukaeran."> +<!ENTITY dialog.title "Gehitu Adblock Plus iragazki-araua"> +<!ENTITY basic.label "Oinarrizko ikuspegia"> +<!ENTITY type.filter.label "&Blokeatzeko iragazkia"> +<!ENTITY types.label "Aplikatu mota hauei:"> +<!ENTITY shortpattern.warning "Sartu duzun eredua laburregia da optimizatu ahal izateko eta zure nabigazioa moteldu dezake. Testu kate luzeago bat aukeratzea aholkatzen da Adblock Plusek azkarrago prozesatu dezan."> +<!ENTITY collapse.yes.label "Bai"> +<!ENTITY anchors.label "Onartu eredua soilik:"> +<!ENTITY collapse.default.yes.label "Erabili lehenetsitakoa (bai)"> +<!ENTITY domainRestriction.help "Erabili aukera hau domeinu bat edo gehiago zehazteko marra bertikal batez banatuta (|). Iragazkia aukeratutako domeinuetan erabiliko da soilik. Gehitu tilet bat (~) domeinuaren aurretik domeinu horretan iragazkia ez erabiltzeko."> +<!ENTITY accept.label "Gehitu iragazkia"> +<!ENTITY options.label "Aukerak"> +<!ENTITY disabled.warning "Adblock Plus orain desgaituta dago. Iragazkiak gehitu ditzakezu baina ez dira aplikatuko ez baduzu [link]Adblock Plus gaitzen[/link]."> +<!ENTITY anchor.start.flexible.label "domeinu izenaren &hasieran"> +<!ENTITY collapse.no.label "Ez"> +<!ENTITY selectAllTypes.label "Aukeratu denak"> +<!ENTITY advanced.label "Ikuspegi aurreratua"> +<!ENTITY pattern.explanation "Eredua helbidearen edozein atal izan daiteke; izarñoa (*) komodin lanak egiten ditu, zernahitarako balio du. Iragazkia soilik aplikatuko da ereduarekin bat datozen helbideetan."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/filters.dtd new file mode 100644 index 0000000..71aabc9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/filters.dtd @@ -0,0 +1,73 @@ +<!ENTITY restore.custom.warning "Zure iragazki pertsonal guztiak aukeratutako fitxategiko edukiarekin ordeztuko dira. Aurrera jarraitu nahi duzu?"> +<!ENTITY slow.column "Iraga&zki motelak"> +<!ENTITY enabled.column "&Gaituta"> +<!ENTITY subscription.lastDownload.checksumMismatch "Errorea; kontrol-baturak ez datoz bat"> +<!ENTITY noFiltersInGroup.text "Aukeratutako taldea hutsik dago"> +<!ENTITY subscription.actions.label "Ekintzak"> +<!ENTITY filter.selectAll.label "Denak aukeratu"> +<!ENTITY backupButton.label "Segu&rtasun kopia eta berrezartzea"> +<!ENTITY restore.minVersion.warning "Oharra: fitxategi hau Adblock Plusen bertsio berriago batekin sortu da. Adblock Plus azken bertsiora eguneratu beharko zenuke fitxategi hau berrezarri aurretik."> +<!ENTITY restore.error "Fitxategiko datuak ezin dira prozesatu, agian ez da Adblock Plus segurtasun kopia bat?"> +<!ENTITY sort.ascending.label "&A > Z ordena"> +<!ENTITY sort.label "Ordenatu honen ara&bera"> +<!ENTITY subscription.source.label "Iragazki zerrenda"> +<!ENTITY hitcount.column "&Bategiteak"> +<!ENTITY noFilters.text "Ez duzu pertsonalizatutako iragazkirik oraindik."> +<!ENTITY backup.custom.title "Iragazki pertsonalak soilik"> +<!ENTITY subscription.external.label "Beste gehigarri batek eguneratua"> +<!ENTITY subscription.delete.label "Ezabatu"> +<!ENTITY noGroupSelected.text "Iragazki talde bat aukeratu behar duzu bere iragazkiak ikusi ahal izateko"> +<!ENTITY filter.cut.label "Moztu"> +<!ENTITY restore.default.label "?1? segurtasun kopiatik berrezarri"> +<!ENTITY subscription.lastDownload.inProgress "Deskargatzen..."> +<!ENTITY subscriptions.tab.label "Iragazki harpidetzak"> +<!ENTITY sort.descending.label "&Z > A ordena"> +<!ENTITY filters.remove.warning "Benetan ezabatu nahi dituzu aukeratutako iragazkiak?"> +<!ENTITY filter.delete.label "Ezabatu"> +<!ENTITY addSubscriptionAdd.label "Gehitu"> +<!ENTITY viewMenu.label "Ikusi"> +<!ENTITY subscription.lastDownload.unknown "Ez erabilgarri"> +<!ENTITY addSubscriptionCancel.label "Utzi bertan behera"> +<!ENTITY subscription.enabled.label "Gaituta"> +<!ENTITY noSubscriptions.text "Ez duzu harpidetzarik gehitu oraindik. Adblock Plusek du ezer blokeatuko iragazkirik gabe; mesedez, erabili "Gehitu iragazki harpidetza" + iragazkiak gehitzeko."> +<!ENTITY subscription.update.label "Eguneratu iragazkiak"> +<!ENTITY dialog.title "Adblock Plus iragazki hobespenak"> +<!ENTITY addFilter.label "Gehitu iraga&zkia"> +<!ENTITY subscription.minVersion.warning "Iragazki harpidetzak Adblock Plus bertsio berria behar du, azken bertsiora eguneratu beharko zenuke Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Huts egin du; ez da helbide baliagarria"> +<!ENTITY backup.error "Iragazkiak fitxategira idazteak errore bat gertatu da. Egiaztatu fitxategian idaztea dagoela eta ez duela beste aplikazio batek blokeatu."> +<!ENTITY filter.moveUp.label "Igo"> +<!ENTITY addGroup.label "Gehitu &talde iragazkia"> +<!ENTITY filter.edit.label "Editatu"> +<!ENTITY subscription.showHideFilters.label "Erakutsi/ezkutatu iragazkiak"> +<!ENTITY acceptableAds2.label "Baimendu publizitate ez &intrusiboa"> +<!ENTITY addSubscriptionOther.label "Gehitu beste harpidetza bat"> +<!ENTITY close.label "Itxi"> +<!ENTITY sort.none.label "Ordenatu &gabe"> +<!ENTITY filter.actions.label "Iragazki ekintzak"> +<!ENTITY filter.copy.label "Kopiatu"> +<!ENTITY filter.moveDown.label "Jaitsi"> +<!ENTITY filter.resetHitCounts.label "Garbitu bategite estatistikak"> +<!ENTITY readMore.label "Gehiago irakurri"> +<!ENTITY subscription.moveUp.label "Igo"> +<!ENTITY addSubscription.label "Geh&itu iragazki harpidetza"> +<!ENTITY subscription.homepage.label "Hasiera orria"> +<!ENTITY backup.complete.title "Iragazki eta harpidetza guztiak"> +<!ENTITY restore.own.label "Segurtasun kopia propioa berrezarri"> +<!ENTITY restore.complete.warning "Zure iragazki hobespen guztiak aukeratutako fitxategiko edukiarekin ordeztuko dira. Aurrera jarraitu nahi duzu?"> +<!ENTITY filters.tab.label "Pertsonalizatutako iragazkiak"> +<!ENTITY backup.label "Sortu segurtasun kopia berria"> +<!ENTITY find.label "&Bilatu"> +<!ENTITY subscription.moveDown.label "Jaitsi"> +<!ENTITY subscription.lastDownload.connectionError "Huts egin du; deskarga errorea"> +<!ENTITY subscription.lastDownload.success "Ongi"> +<!ENTITY subscription.lastDownload.invalidData "Huts egin du; ez da iragazki zerrenda baliagarria"> +<!ENTITY filter.paste.label "Itsatsi"> +<!ENTITY subscription.disabledFilters.enable "Gaitu desgaitutako iragazkiak"> +<!ENTITY lasthit.column "&Azken bategitea"> +<!ENTITY subscription.editTitle.label "Editatu izenburua"> +<!ENTITY subscription.disabledFilters.warning "Harpidetza honetako iragazki batzuk desgaituta daude."> +<!ENTITY filter.column "&Iragazki araua"> +<!ENTITY subscription.lastDownload.label "Azken deskarga:"> +<!ENTITY viewList.label "Ikusi zerrenda"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/firstRun.properties new file mode 100644 index 0000000..86b4926 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Jarraitzea blokeatuz pribatuki nabigatu - Zure nondik norakoak dena jakin nahi duten publizitate konpainiei ezkutatuz. +firstRun_toggle_off=EZGAITUA +firstRun_feature_tracking=Ezgaitu jarraipena +firstRun_feature_malware=Programa kaltegarriak geldiarazi +firstRun_title=Adblock Plus instalatu da +firstRun_acceptableAdsExplanation=Webguneak publizitate zintzoa eta ez intrusiboa erabiltzera bultzatu nahi ditugu. Horregatik <a>arau zorrotzak</a> ezarri ditugu iragarki onargarriak bereizteko, lehenetsitako hobespenetan daude ikusgai. Iragarki guztiak blokeatu nahi badituzu aukera hau <a>desgaitu</a> dezakezu. +firstRun_toggle_on=GAITUA +firstRun_contributor_credits=Parte-hartzaileen kredituak +firstRun_dataCorruptionWarning=Orri hau behin eta berriro agertzen dela? <a>Egin klik hemen!</a> +firstRun_acceptableAdsHeadline=Iragarki gogaikarriak blokeatuko dira orain +firstRun_share=Esan zure lagunei +firstRun_share_headline=<a>Lagundu gaitzazu</a> web-a hobetzen +firstRun_features=Adblock Plus iragarkiak blokeatzea baino gehiago egin dezake +firstRun_feature_malware_description=Malware domeinuak blokeatuz zure nabigazioa ziurragoa egin. +firstRun_feature_social_description=Automatikoki kendu gizarte sare botoiak webguneetatik, Facebook Like kasu, zure nondik norakoak gordetzen dituzten webguneetan agertu ohi dira. +firstRun_donate=diruz lagundu +firstRun_donate_label=Babestu gure proiektua +firstRun_feature_social=Kendu gizarte-sareetako botoiak +firstRun_legacySafariWarning=Adblock Plus-ekin bateragarria ez den Safari nabigatzailearen bertsio zahar bat erabiltzen ari zara. Agian ez da behar bezala ibiliko, edo webgune batzuen erabilera oztopatuko du. Mesedez Safari 6.11 edo berriagoa den bertsio batetara eguneratu (Mac OS X 10.8 Mountain Lion bertsiotik aurrera eskuragarri dago) edo Safari 7.0.1 (OS X 10.9 Mavericks bertsioan), edo erabili Mozilla Firefox, Google Chrome edo Opera nabigatzaileen azken bertsioa. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/global.properties new file mode 100644 index 0000000..1dc9c84 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Ez dago elementu blokeagarririk uneko orrian +action3_tooltip=Egin klik Adblock Plus gaitzeko/desgaitzeko. +type_label_script=scripta +filter_elemhide_nocriteria=Ez da zehaztu ezkutatu beharreko elementua aurkitzeko irizpiderik +blockingGroup_title=Publizitatea blokeatzeko arauak +whitelisted_tooltip=Adblock Plus orri honetan desgaituta dago. +type_label_stylesheet=estilo orria +blocked_count_tooltip=?1? / ?2? +type_label_font=letra-tipoa +type_label_popup=pop-up leihoa +filter_regexp_tooltip=Iragazki hau adierazpen erregular bat da edo optimizatzeko laburregia da. Honelako iragazki gehiegik nabigazioa motelduko dute. +action0_tooltip=Egin klik testuinguru menua atera dadin; egin erdiko klika gaitzeko/desgaitzeko. +whitelisted_page=Adblock Plus ezgaitu egin da uneko orrirako +remove_group_warning=Ziur talde hau ezabatu nahi duzula? +action1_tooltip=Egin klik elementu blokeagarriak irekitzeko/ixteko; egin erdiko klika gaitzeko/desgaitzeko. +type_label_xmlhttprequest=XML eskakizuna +active_tooltip=Adblock Plus gaituta dago, ?1? iragazki harpidetza eta ?2? iragazki pertsonal erabiliz. +type_label_document=dokumentua +type_label_object_subrequest=objektu azpieskakizuna +whitelistGroup_title=Salbuespen arauak +disabled_tooltip=Adblock Plus ezgaituta dago. +filter_elemhide_duplicate_id=Ezkutatu beharreko elementuaren ID bakarra zehaztu daiteke +type_label_object=objektua +action2_tooltip=Egin klik hobespenak irekitzeko, egin erdiko klika gaitzeko/desgaitzeko. +type_label_subdocument=markoa +clearStats_warning=Honek bategite estatistika guztiak ezabatuko ditu eta iragazkien bategiteak zenbatzeari utziko zaio. Aurrera jarraitu nahi duzu? +blocked_count_addendum=(baita baimenduta: ?1?, ezkutuan: ?2?) +subscription_invalid_location=Iragazki zerrendaren kokagunea ez da balio duen URLa, ezta fitxategi baten izena ere. +type_label_image=irudia +remove_subscription_warning=Ziur harpidetza hau ezabatu nahi duzula? +type_label_other=beste bat +mobile_menu_enable=ABP: Gaitua +type_label_media=audioa/bideoa +mobile_menu_disable_site=ABP: Desgaitua ?1? horretan +elemhideGroup_title=Elementuak ezkutatzeko arauak +mobile_menu_enable_site=ABP: Gaitua ?1? horretan +type_label_elemhide=ezkutuan +newGroup_title=Iragazki talde berria +default_dialog_title=Adblock Plus +notification_antiadblock_title=Hide targeted messages? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/overlay.dtd new file mode 100644 index 0000000..21efd6c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY sync.label "&Sinkronizatu Adblock Plus ezarpenak"> +<!ENTITY whitelist.site.label "Ezgaitu hemen: ?1?"> +<!ENTITY filters.label "&Iragazki hobespenak"> +<!ENTITY disable.label "Ezgaitu edonon"> +<!ENTITY objecttab.title "Blokeatu"> +<!ENTITY objecttab.tooltip "Egin klik hemen objektu hau Adblock Plusekin blokeatzeko"> +<!ENTITY menuitem.label "Adbloc&k Plus hobespenak"> +<!ENTITY objecttabs.label "Erakutsi &fitxak Flash eta Javan"> +<!ENTITY sendReport.label "Orri hone&tan sortutako arazo bati buruzko txostena egin"> +<!ENTITY whitelist.page.label "Ezgaitu orri honetan soilik"> +<!ENTITY context.image.label "Adblock Plus: Irudia blokeatu"> +<!ENTITY counthits.label "Zenbatu iragazkien &bategiteak"> +<!ENTITY opensidebar.label "Ire&ki elementu blokeagarriak"> +<!ENTITY contribute.label "Adblock Plus-en parte hartu"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Markoa blokeatu"> +<!ENTITY blocked.tooltip "Orri honetan blokeatutako elementuak:"> +<!ENTITY hideplaceholders.label "Ezkutatu blokeatutako elementuen &kokagunea"> +<!ENTITY showinstatusbar.label "Erakutsi &egoera-barran"> +<!ENTITY sidebar.title "Elementu blokeagarriak uneko orrialdean"> +<!ENTITY options.label "&Aukerak"> +<!ENTITY context.object.label "Adblock Plus: Objektua blokeatu"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Bergaitu orri honetan"> +<!ENTITY filters.tooltip "Iragazki aktiboenak:"> +<!ENTITY closesidebar.label "Itxi elementu blo&keagarriak"> +<!ENTITY showintoolbar.label "Erakutsi &tresna-barran"> +<!ENTITY status.tooltip "Egoera:"> +<!ENTITY context.media.label "Adblock Plus: audio/bideoa blokeatu"> +<!ENTITY subscription.update.label "Eguneratu iragazkiak"> +<!ENTITY notification.button.yes "&Yes"> +<!ENTITY notification.button.no "&No"> +<!ENTITY notification.button.close "&Close"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/sendReport.dtd new file mode 100644 index 0000000..91e07fb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/sendReport.dtd @@ -0,0 +1,66 @@ +<!ENTITY screenshot.undo.label "&Desegin"> +<!ENTITY issues.disabledgroups.description "Hurrengo iragazki harpidetzak / iragazki taldeak ezgaituta daude, hala ere orri honetan eragina izan dezakete:"> +<!ENTITY showData.label "Erakutsi txostenaren informazioa"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus gehigarria behar baino gehia&go blokeatzen ari da"> +<!ENTITY issues.change.description "Zure konfigurazioa aldatu da. Mesedez birkargatu orria aldaketak egiaztatzeko eta bidali txostena arazoa konpondu ez bada."> +<!ENTITY email.label "E-&Posta:"> +<!ENTITY issues.openPreferences.label "Ireki iragazki hobespenak"> +<!ENTITY sendPage.confirmation "Zure txostena gorde egin da. Honako helbidean eskuratu dezakezu:"> +<!ENTITY copyLink.label "Ko&piatu txostenaren lotura"> +<!ENTITY issues.nofilters.description "Adblock Plus ez dago ezer blokeatzen oraingo orrian. Ikusten duzun arazoa ziurrenez ez du Adblock Plusekin erlaziorik."> +<!ENTITY sendPage.knownIssue "Aipatu duzun arazoa ziur aski ezaguna da jada. Informazio gehiago:"> +<!ENTITY typeSelector.other.description "Aukeratu hau arazoa Adblock Plus berak duela uste baduzu, eta ez iragazkiek."> +<!ENTITY issues.disabledgroups.enable.label "Gaitu iragazki harpidetza / iragazki taldea"> +<!ENTITY typeWarning.override.label "Ulertzen dut eta txostena bidali na&hi dut hala ere"> +<!ENTITY issues.disabled.enable.label "Gaitu Adblock Plus"> +<!ENTITY update.fixed.description "Baliteke zure iragazki harpidetzak eguneratzeak arazoa konpondu izana. Mesedez birkargatu orria eta berriro saiatu, arazoa berean badirau berriro zapaldu Berri eman botoia."> +<!ENTITY anonymous.label "Bidalketa anonimoa"> +<!ENTITY reloadButton.label "Bi&rkargatu orria"> +<!ENTITY recentReports.clear.label "E&zabatu txosten guztiak"> +<!ENTITY typeSelector.description "Leiho honek Adblock Plus arazo txosten bat bidaltzeko beharrezkoak diren urratsetan zehar gidatuko zaitu. Hasteko, mesedez aukeratu orri honetan pairatzen duzun arazo mota aukeratu:"> +<!ENTITY screenshot.remove.label "Kendu info&rmazio sentsiblea"> +<!ENTITY issues.ownfilters.description "Orri honetan erabilitako iragazki batzuk erabiltzaileak sortutakoak dira. Mesedez ezgaitu arazoa sor lezaketen iragazkiak:"> +<!ENTITY update.inProgress.description "Adblock Plusek zure iragazki harpidetzak eguneratu behar ditu arazoa dagoeneko konponduta dagoen egiaztatzeko. Mesedez itxaron..."> +<!ENTITY sendPage.retry.label "Bidali berriro"> +<!ENTITY data.label "Txostenaren informa&zioa:"> +<!ENTITY recentReports.label "Orain dela gutxi bidalitako txostenak"> +<!ENTITY typeWarning.description "Adblock Plusen arazo orokor, baten txostena egin nahi duzula esan duzu, ez iragazkiena. Jabetu zaitez arazo horien berri emateko hobe dela [link]Adblock Plus forum[/link] foroa erabiltza. Arazoen txosten bidalketa erabili soilik badagoen eztabaida bati eransteko, inork ez duelako zure txostena ikusiko lotura bat ematen ez baduzu. Automatikoki sortutako lotura bat emango zaizu txostena bidali eta gero."> +<!ENTITY issues.disabled.description "Adblock Plus ezgaituta dago, ez du ezer blokeatuko oraingo egoeran."> +<!ENTITY attachExtensions.label "Erant&si gehigarri aktiboen zerrenda bat txostenera hauen arteko konfliktoak arazoa sor balezakete"> +<!ENTITY issues.nosubscriptions.add.label "Gehitu iragazki harpidetza"> +<!ENTITY issues.disabledfilters.enable.label "Gaitu iragazkia"> +<!ENTITY issues.override.label "&Konfigurazioa zuzena da, jarraitu txostenarekin"> +<!ENTITY issues.nosubscriptions.description "Antza denez ez zara harpidetu webguneetatik nahi ez dituzun edukiak automatikoki ezabatzen duten aurrez egindako zerrendetara."> +<!ENTITY typeSelector.falsePositive.description "Aukeratu hau orrian informazio garrantzitsua falta bada, gaizki ikusten bada edo ez badabil behar bezala . + Adblock Plus une batez desgaituz erruduna den egiaztatu dezakezu."> +<!ENTITY typeSelector.other.label "Beste zerba&it"> +<!ENTITY emailComment.label "Eposta helbide zuzen bat idaztea aholkatzen dizugu, zurekin kontaktuan jarri ahal izateko galderarik badugu. Zure parte hartze orokorra antzeman eta lehentasunez tratatzea baimentzen digu ere."> +<!ENTITY issues.whitelist.remove.label "Birgaitu Adblock Plus orri honetan"> +<!ENTITY outdatedSubscriptions.description "Hurrengo iragazki harpidetzak ez dira eguneratu bi astetan gutxienez. Mesedez eguneratu harpidetza hauek txosten bat bidali aurretik, baliteke arazoa jada konponduta egotea."> +<!ENTITY dataCollector.description "Mesedez itxaron Adblock Plusek beharrezko informazioa jaso bitartean."> +<!ENTITY sendButton.label "Txostena &bidali"> +<!ENTITY comment.label "&Iruzkina (aukerazkoa):"> +<!ENTITY sendPage.errorMessage "Txostena bidaltzeko saiakerak huts egin du hurrengo errore kodearekin "?1?". Mesedez egiaztatu Internetera konektatuta zaudela eta saia zaitez berriro. Arazoa ez bada konpontzen eskatu laguntza [link]Adblock Plus forum[/link] foroan."> +<!ENTITY showRecentReports.label "Erakutsi orain dela gutxi bidalitako txostenak"> +<!ENTITY commentPage.heading "Sartu iruzkina"> +<!ENTITY update.start.label "Hasi eguneraketa orain"> +<!ENTITY issues.disabledfilters.description "Hurrego iragazkiak ezgaituta daude, hala ere orri honetan eragina izan dezakete:"> +<!ENTITY screenshot.description "Orri bera ez dute berdin ikusiko pertsona guztiek. Pantaila argazki bat eransteak arazoa ulertzen lagundu ahal digu. Ken ditzakezu Informazio sentsiblea duten atalak eta markatu arazoa nabaria duten atalak. Hori egiteko, egin klik dagokion botoian eta aukeratu zonaldea saguarekin."> +<!ENTITY screenshot.attach.label "Geh&itu irudia txostenera"> +<!ENTITY issues.whitelist.description "Adblock Plus orain desgaituta dago txosnenaren orrian. Mesedez berriz gaitu eta orria birkargatu txostena bidali aurretik arazoaren ikerketa errazteko."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plusek ez du &iragarki bat blokeatzen"> +<!ENTITY typeSelector.heading "Aukeratu arazo mota"> +<!ENTITY anonymity.warning "Ezin izango gara zurekin kontatuan jarri eta ziurrenez lehentasun gutxiago emango diogu txosten honi."> +<!ENTITY wizard.title "Arazoaren txostena bidali da"> +<!ENTITY issues.ownfilters.disable.label "Iragazkia ezgaitu"> +<!ENTITY commentPage.description "Beheko testu eremuak guk arazoa hobeto ulertzeko iruzkin bat sartzea baimentzen dizu. Hau aukerazkoa da baina gomendagarria arazoa begi-bistakoa ez bada. Gainera, txostenaren informazioa gainbegiratu dezakezu bidali aurretik."> +<!ENTITY comment.lengthWarning "Iruzkinak 1000 karaktere baino gehiago ditu. Lehen 1000 karaktereak bidaliko dira soilik."> +<!ENTITY typeSelector.falseNegative.description "Aukeratu hau publizitatea agertzen bada Adblock Plus gaituta egonda ere."> +<!ENTITY sendPage.waitMessage "Mesedez itxaron Adblock Plus zure txostena bidaltzen duen bitartean."> +<!ENTITY dataCollector.heading "Ongi etorri arazoen txosten bidalketara"> +<!ENTITY screenshot.heading "Erantsi pantaila argazkia"> +<!ENTITY sendPage.heading "Bidali txostena"> +<!ENTITY issues.subscriptionCount.description "Antza denez iragazki harpidetza gehiegitara harpidetu zara. hau ez da gomendagarria arazoak izateko aukera geihago suposatzen duelako. Gainera ezin dugu zure txostena onartu ez dagoelako argi zein iragazki egilek egin behar duen ezer. Mesedez ezabatu ezinbestekoak ez diren iragazki harpidetzak eta egiaztatu arazoa oraindik gertatzen den."> +<!ENTITY screenshot.mark.label "Arazoa &markatu"> +<!ENTITY privacyPolicy.label "Pribatutasun politika"> +<!ENTITY issues.description "Adblock Plusek arazo honen errudun izan daitezken edo txosten hau ikerkertzea zaildu dezaketen arazoak aurkitu ditu zure konfigurazioan."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/sidebar.dtd new file mode 100644 index 0000000..9fd57a8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Flash elementuaren ertzak"> +<!ENTITY address.label "Helbidea"> +<!ENTITY context.open.label "Ireki fitxa berri batean"> +<!ENTITY type.label "Mota"> +<!ENTITY tooltip.filterSource.label "Iragazki iturria:"> +<!ENTITY noitems.label "Ez dago elementu blokeagarririk"> +<!ENTITY filter.label "Iragazkia"> +<!ENTITY tooltip.size.label "Tamaina:"> +<!ENTITY reattach.label "Lotu"> +<!ENTITY search.label "&Bilatu:"> +<!ENTITY docDomain.thirdParty "(kanpo iturria)"> +<!ENTITY filterSource.label "Iragazki iturria"> +<!ENTITY tooltip.docDomain.label "Dokumentuaren iturria:"> +<!ENTITY context.copy.label "Kopiatu elementuaren helbidea"> +<!ENTITY tooltip.type.label "Mota:"> +<!ENTITY context.disablefilter.label "Ezgaitu ?1? iragazkia"> +<!ENTITY context.copyFilter.label "Kopiatu iragazkia"> +<!ENTITY context.block.label "Blokeatu elementu hau"> +<!ENTITY context.enablefilter.label "Gaitu ?1? iragazkia"> +<!ENTITY detach.label "Askatu"> +<!ENTITY whitelisted.label "Onartutako orria"> +<!ENTITY context.disablefilteronsite.label "Ezgaitu iragazki hau ?1? domeinuan"> +<!ENTITY detached.title "Adblock Plus: Elementu blokeagarriak (askatua)"> +<!ENTITY docDomain.firstParty "(lehen eskukoa)"> +<!ENTITY tooltip.type.whitelisted "(onartua)"> +<!ENTITY tooltip.filter.label "Iragazki aktiboa:"> +<!ENTITY tooltip.filter.disabled "(ezgaitua)"> +<!ENTITY context.editfilter.label "Editatu iragazki aktiboa"> +<!ENTITY tooltip.type.blocked "(blokeatuta)"> +<!ENTITY size.label "Tamaina"> +<!ENTITY context.whitelist.label "Gehitu salbuespen-araua elementuarentzat"> +<!ENTITY context.selectAll.label "Aukeratu denak"> +<!ENTITY state.label "Egoera"> +<!ENTITY docDomain.label "Dokumentu iturria"> +<!ENTITY tooltip.address.label "Helbidea:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/subscriptionSelection.dtd new file mode 100644 index 0000000..0442e3f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/eu/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Ge&hitu "?1?" iragazki harpidetza ere"> +<!ENTITY list.download.failed "Adblock Plusek ezin izan du harpidetza zerrenda eskuratu"> +<!ENTITY list.download.retry "Saiatu berriro"> +<!ENTITY title.label "Harp&idetza izenburua:"> +<!ENTITY list.download.website "Ikusi webgunea"> +<!ENTITY supplementMessage "Iragazki harpidetza hau "?1?" iragazki harpidetzarekin batera erabiltzekoa da eta zuk ez duzu oraindik erabiltzen."> +<!ENTITY viewList.label "Ikusi iragazkiak"> +<!ENTITY visitHomepage.label "Bisitatu hasiera orria"> +<!ENTITY addSubscription.label "Gehitu harpidetza"> +<!ENTITY dialog.title "Gehitu Adblock Plus iragazki harpidetza"> +<!ENTITY location.label "Iragaz&ki zerrendaren kokagunea:"> +<!ENTITY fromWeb.description "Mesedez berretsi iragazki harpidetza hau gehitu nahi duzula. Harpidetza izenburua eta kokagunea aldatu ditzakezu gehitu aurretik."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/composer.dtd new file mode 100644 index 0000000..dc68759 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "در پایا&ن نشانی"> +<!ENTITY domainRestriction.label "مح&دود به دامنه :"> +<!ENTITY collapse.default.no.label "استفاده پیشفرض (خیر)"> +<!ENTITY firstParty.label "فقط او&لین عضو"> +<!ENTITY preferences.label "نمایش پالایه های موجود..."> +<!ENTITY pattern.label "جستجو برای الگوی"> +<!ENTITY thirdParty.label "فقط سو&مین عضو"> +<!ENTITY filter.label "پالایه جدید:"> +<!ENTITY collapse.label "بس&تن مسدود شده ها:"> +<!ENTITY match.warning "الگویی که وارد کرده اید دیگر با نشانی که قصد مسدود کردن/افزودن به فهرست سفید آن را داشته اید مطابقت ندارد و روی آن تاثیر نمی گزارد."> +<!ENTITY anchor.start.label "در آ&غاز نشانی"> +<!ENTITY matchCase.label "م&طابقت حالت (بزرگی کوچکی)"> +<!ENTITY custom.pattern.label "س&فارشی:"> +<!ENTITY unselectAllTypes.label "انتخاب هیچکدام"> +<!ENTITY type.whitelist.label "قاعده است&ثنا"> +<!ENTITY regexp.warning "الگویی که شما وارد کرده اید یک نویسه مرتب تفسیر می شود که نمی تواند به صورت بهینه توسط فوق تبلیغ شکن پردازش شود و ممکن است مرور صفحات شمار را کند کند. اگر شما قصد استفاده کردن از یک نویسه مرتب را نداشته اید، یک ستار (*) به انتهای الگوی خود اضافه کنید."> +<!ENTITY dialog.title "اضافه کردن قاعد فیلتر ادبلاک پلاس"> +<!ENTITY basic.label "نمایش پایه"> +<!ENTITY type.filter.label "فیلتر م&سدود کننده"> +<!ENTITY types.label "اعمال به انواع:"> +<!ENTITY shortpattern.warning "الگویی که وارد کردید بسیار کوتاه تر از آن است که بهینه باشد و ممکن است سرعت مرور صفحات شما را کند کند. توصیه می شود که جمله طویل تری را وارد کنید که فوق تبلیغ شکن بهتر بتواند آن را پردازش کند."> +<!ENTITY collapse.yes.label "بله"> +<!ENTITY anchors.label "فقط پذیرش الگو:"> +<!ENTITY collapse.default.yes.label "استفاده پیشفرض (بله)"> +<!ENTITY domainRestriction.help "از این گزینه برای مشخص کردن یک یا چند دامنه از هم جدا شده توسط نوار خط (|) استفاده کنید. پالایه تنها برای دامنه(ها)ی انتخاب شده اعمال می شود. علامت مد (~) قبل از نام دامنه نشاندهنده آن است که پالایه در آن دامنه اعمال نشود."> +<!ENTITY accept.label "افزودن فیلتر"> +<!ENTITY options.label "گزینه ها"> +<!ENTITY disabled.warning "فوق تبلیغ شکن هم اکنون غیر فعال می یاشد. شما هنوز می توانید پالایه اضافه کنید، اما آنها اعمال نمی شوند مگر [link]فوق تبلیغ شکن را فعال کنید[/link]."> +<!ENTITY anchor.start.flexible.label "در آ&غاز نام دامنه"> +<!ENTITY collapse.no.label "خیر"> +<!ENTITY selectAllTypes.label "انتخاب همه"> +<!ENTITY advanced.label "نمایش پیشرفته"> +<!ENTITY pattern.explanation "الگو می تواند هر قسمتی از نشانی باشد; ستاره (*) بعنوان نویسه عام عمل می کند. پالایه فقط به نشانی مطابق الگوی ارائه شده اعمال می شود."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/filters.dtd new file mode 100644 index 0000000..2f4d957 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "میخواهید تمامی فیلترهای سفارشی خود را با محتویات فایل انتخاب شده جایگزین می شود؟"> +<!ENTITY slow.column "&نمایش فیلترها"> +<!ENTITY enabled.column "ف&عال"> +<!ENTITY subscription.lastDownload.checksumMismatch "ناموفق, عدم تطابق کنترلی"> +<!ENTITY noFiltersInGroup.text "گروه انتخاب شده خالی می باشد."> +<!ENTITY subscription.actions.label "اقدامات"> +<!ENTITY filter.selectAll.label "انتخاب همه"> +<!ENTITY backupButton.label "پشتیبان گیری و بازیابی (&B)"> +<!ENTITY restore.minVersion.warning "هشدار: این فایل با نسخه جدیدتری از برنامه ایجاد شده است. قبل از بازگرداندن از این فایل شما باید برنامه را بروز کنید."> +<!ENTITY restore.error "فایل اطلاعات قابل پردازش نیست، شاید این فایل پشتیبان برنامه نمی باشد؟"> +<!ENTITY sort.ascending.label "ترتیب حروف &الف با از ابتدا"> +<!ENTITY sort.label "مرتب کردن بر ا&ساس"> +<!ENTITY subscription.source.label "لیست فیلتر"> +<!ENTITY hitcount.column "بر&خورد ها"> +<!ENTITY noFilters.text "شما هیچ فیلتر شخصی ایجاد نکرده اید."> +<!ENTITY backup.custom.title "فقط فیلتر های سفارشی"> +<!ENTITY subscription.external.label "با پسوند دیگری به روز شده"> +<!ENTITY subscription.delete.label "حذف"> +<!ENTITY noGroupSelected.text "شما قبل ازاین که فیلترها نمایش داده شوند نیاز به انتخاب گروه فیلتر دارید."> +<!ENTITY filter.cut.label "برش"> +<!ENTITY restore.default.label "بازیابی پشتیبان از ?1?"> +<!ENTITY subscription.lastDownload.inProgress "در حال دریافت..."> +<!ENTITY subscriptions.tab.label "فیلتر زیرنوشت ها"> +<!ENTITY sort.descending.label "&ترتیب حروف الف با از انتها"> +<!ENTITY filters.remove.warning "آیا واقعاً می خواهید تمامی فیلترهای انتخابی را حذف کنید؟"> +<!ENTITY filter.delete.label "حذف"> +<!ENTITY addSubscriptionAdd.label "اضافه"> +<!ENTITY viewMenu.label "نما"> +<!ENTITY subscription.lastDownload.unknown "(تعریف نشده)"> +<!ENTITY addSubscriptionCancel.label "لغو"> +<!ENTITY subscription.enabled.label "فعال شده"> +<!ENTITY noSubscriptions.text "شما هنوز هیچ اشتراک فیلتری را اضافه نکردید. Adblock Plus هیچ چیزی را بدون فیلترها مسدود نمی کند, لطفا با استفاده از "افزودن اشتراک فیلتر" چند فیلتر اضافه کنید."> +<!ENTITY subscription.update.label "به روز رسانی فیلتر"> +<!ENTITY dialog.title "تنظیمات فیلتر Adblock Plus"> +<!ENTITY addFilter.label "افزودن فیلتر (&d)"> +<!ENTITY subscription.minVersion.warning "این فیلتر اشتراک نیاز به نسخه جدید برنامه دارد، شما باید برنامه را به آخرین نگارش به روز کنید."> +<!ENTITY subscription.lastDownload.invalidURL "ناموفق، نشانی معتبر نیست"> +<!ENTITY backup.error "خطایی هنگام نوشتن فیلتر به فایل دیده شد. اطمینان حاصل کنید که فایل نسبت به نوشتن حفاظت شده نیست و یا توسط برنامه کاربردی دیگری استفاده نمی شود."> +<!ENTITY filter.moveUp.label "حرکت به بالا"> +<!ENTITY addGroup.label "افزودن گروه فیلتر"> +<!ENTITY filter.edit.label "ویرایش"> +<!ENTITY subscription.showHideFilters.label "نمایش/پنهان کردن فیلترها"> +<!ENTITY acceptableAds2.label "اجازه دادن به تبلیغات ناخواسته (&i)"> +<!ENTITY addSubscriptionOther.label "یک اشتراک ديگر اضافه کنید"> +<!ENTITY close.label "بستن"> +<!ENTITY sort.none.label "نا م&رتب"> +<!ENTITY filter.actions.label "اقدامات فیلتر"> +<!ENTITY filter.copy.label "رونوشت"> +<!ENTITY filter.moveDown.label "حرکت به پایین"> +<!ENTITY filter.resetHitCounts.label "تنظیم مجدد آمار"> +<!ENTITY readMore.label "بیشتر بخوانید"> +<!ENTITY subscription.moveUp.label "حرکت به بالا"> +<!ENTITY addSubscription.label "اضافه کردن اشتراک فیلتر (&f)"> +<!ENTITY subscription.homepage.label "صفحه اصلی"> +<!ENTITY backup.complete.title "تمام فیلترها و اشتراک ها"> +<!ENTITY restore.own.label "بازیابی پشتیبان خود"> +<!ENTITY restore.complete.warning "تمام تنظیمات فیلتر با محتویات فایل انتخاب شده جایگزین می شود. می خواهید انجام دهید؟"> +<!ENTITY filters.tab.label "فیلترهای سفارشی"> +<!ENTITY backup.label "نسخه پشتیبان جدید بسازید"> +<!ENTITY find.label "یافتن (&n)"> +<!ENTITY subscription.moveDown.label "حرکت به پایین"> +<!ENTITY subscription.lastDownload.connectionError "ناموفق، فرآیند دریافت شکست خورد"> +<!ENTITY subscription.lastDownload.success "موفق"> +<!ENTITY subscription.lastDownload.invalidData "ناموفق، فهرست پالایه ها نامعتبر است"> +<!ENTITY filter.paste.label "جای گذاری"> +<!ENTITY subscription.disabledFilters.enable "فعال کردن فیلتر های غیر فعال"> +<!ENTITY lasthit.column "آخرین برخ&ورد"> +<!ENTITY subscription.editTitle.label "ویرایش عنوان"> +<!ENTITY subscription.disabledFilters.warning "برخی از فیلترها برای این اشتراک غیر فعال می باشد."> +<!ENTITY filter.column "&قواعد فیلتر"> +<!ENTITY subscription.lastDownload.label "آخرین دریافت:"> +<!ENTITY viewList.label "مشاهده لیست"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/firstRun.properties new file mode 100644 index 0000000..0ee991a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=با غیر فعال کردن ردیابی با امنیت کامل به گشت و گذار اینترنتی بپردازید وخود را از شرکت هایی که می توانند هر لحظه زیر نظر داشته باشند مخفی کنید. +firstRun_toggle_off=خاموش +firstRun_feature_tracking=غیر فعال کردن ردیابی +firstRun_feature_malware=مسدود کردن نرم افزارهای مخرب +firstRun_title=Adblock Plus با موفقیت نصب شد +firstRun_toggle_on=روشن +firstRun_acceptableAdsExplanation=من می خواهم وب سایت ها را تشویق کنم تا از تبلیغات درست و حسابی بدون مزاحمت استفاده کنند. این دلیل ساختن <a> دستورالعمل های دقیق </a> است تا بتواند تبلیغات قابل قبول را بپذیرد و آن ها را به شما نشان دهد ، تبلیغاتی که در شرایط استاندارد صدق کنند. اگر شما می خواهید هر تبلیغی را از هر صفحه ای مسدود کنید می توانید آن را در عرض چند ثانیه <a>غیر فعال</a> کنید. +firstRun_contributor_credits=اعتبار نویسندگان +firstRun_dataCorruptionWarning=آیا این صفحه در حال رویت نگه داشته شده؟ <a>اینجا کلیک کن!</a> +firstRun_acceptableAdsHeadline=تبلیغات آزار دهنده در حال حاضر مسدود خواهد شد +firstRun_share=به دوستان خود بگویید +firstRun_share_headline=<a>بیایید</a> اینترنت را بهتر کنیم +firstRun_feature_social_description=به طور خودکار مانند like در فیس بوک ، تجربه وبگردی از رسانه های اجتماعی را بفرستید و وضعیت کارهای خود را دنبال کنید. +firstRun_filterlistsReinitializedWarning=به نظر می رسد که ناشی از موضوع همه فیلتر به حذف می شود و ما قادر به بازگرداندن پشتیبان. بنابراین ما مجبور به تنظیم مجدد فیلتر و تنظیمات تبلیغات قابل قبول. لطفا لیست فیلتر و تنظیمات تبلیغات قابل قبول در <a>Adblock پلاس گزینه های</a> خود را. +firstRun_feature_malware_description=مرور خود رابا مسدود کردن دامنه های مخرب شناخته شده امن تر کنید. +firstRun_features=Adblock Plus می تواند تبلیغات بیشتری را مسدود کند +firstRun_donate=کمک مالی +firstRun_donate_label=پروژه ما را حمایت کنید +firstRun_feature_social=حذف دکمه های رسانه های اجتماعی +firstRun_legacySafariWarning=شما در حال حاضر از يك نسخه قديمي تر مرورگر Safari استفاده ميكنيد كه توسط Adblock Plus پشتيباني نميشود. اين موضوع احتمال دارد بر روي تجربه وب گردي كاربر تأثير منفي گذاشته و يا باعث درست عمل نكردن پلاگين شود. ما قوياً توصيه مي كنيم كه مرورگر خود را به Safari 6.1.1 يا بالاتربه روز رساني كنيد (براي نسخه Mountain Lion ورژن OS X 10.8 در سيستم عامل مكينتاش)، و يا به روز رساني به Safari 7.0.1 (براي نسخه Mavericks ورژن OS X 10.9 در سيستم عامل مكينتاش). و يا اينكه ازآخرين ورژن مرورگرهايي مانند: Google Chrome ،Mozilla Firefox و يا Opera استفاده كنيد. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/global.properties new file mode 100644 index 0000000..6ada4e9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=مورد مسدود شده ای در این صفحه موجود نیست +action3_tooltip=برای فعال یا غیرفعالکردن Adblock Plus کلیک کنید. +notification_antiadblock_title=آیا مایلید پیام های هدفمند برای کاربران Adblock Plus را مخفی نمایید؟ +type_label_script=نویسه +filter_elemhide_nocriteria=هیچ ضابطه ای برای شناسایی عناصری که می بایست پنهان شوند مشخص نشد. +blockingGroup_title=قوانین مسدود کردن تبلیغ +whitelisted_tooltip=Adblock Plus برای این صفحه غیرفعال شده است. +type_label_stylesheet=شیوه نامه (stylesheet) +blocked_count_tooltip=?1? از میان ?2? +type_label_font=قلم +type_label_popup=پنجره پاپ آپ +filter_regexp_tooltip=این فیلتر یا نوشته مرتب است یا این که خیلی کوچکتر از آن است که یک فیلتر مناسب باشد. تعداد زیادی از این نوشته ها می تواند سرعت مرورگر شما را کاهش دهد. +action0_tooltip=برای نمایش فهرست کلیک کنید. کلیک-وسط برای فعال یا غیرفعال کردن است. +whitelisted_page=Adblock Plus برای صفحه جاری غیرفعال شده است. +remove_group_warning=واقعا می خواهید این گروه را حذف کنید؟ +action1_tooltip=برای گشودن یا بستن موارد مسدود شده کلیک کنید. کلیک-وسط برای فعال یا غیرفعال کردن است. +type_label_xmlhttprequest=XML خواسته شده +active_tooltip=فوق تبلیغ شکن یا Adblock Plus فعال است, ?1? اشتراک(های) فیلتر و ?2? فیلتر(ها)ی سفارشی در حال استفاده هستند. +type_label_document=سند +type_label_object_subrequest=اشیاء زیرخواسته +whitelistGroup_title=قوانین استثنا +disabled_tooltip=Adblock Plus غیرفعال است. +filter_elemhide_duplicate_id=فقط یک شناسه از عنصری که قرار است پنهان شود را می توان مشخص کرد. +type_label_object=شیء +action2_tooltip=برای گشودن ترجیحات کلیک کنید. کلیک-وسط برای فعال یا غیرفعال کردن است. +type_label_subdocument=قابک +clearStats_warning=این کار تمام آمار ها را پاک کرده و آمارگیری را متوقف می کند. آیا مایل به توقف هستید؟ +notification_antiadblock_message=این سایت پیام های هدفمند برای کاربران Adblock Plus نشان می دهد. آیا مایلید که Adblock Plus پیام های هدفمند را از دید شما مخفی کند؟ +blocked_count_addendum=(همچنین فهرست سفید: ?1?, پنهان: ?2?) +subscription_invalid_location=مکان وارد شده برای فهرست فیلترها نامعتبر است. +type_label_image=تصویر +remove_subscription_warning=آیا برای حذف اشتراک مطمئن هستید؟ +type_label_other=دیگر +mobile_menu_enable=ABP: فعال +type_label_media=چند رسانه ای +mobile_menu_disable_site=ABP: غیر فعال کردن در ?1? +elemhideGroup_title=قوانبن اختفا عناصر +mobile_menu_enable_site=ABP: فعال کردن در ?1? +type_label_elemhide=پنهان +newGroup_title=گروه فیلتر جدید +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/overlay.dtd new file mode 100644 index 0000000..c2a0e52 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "ب&له"> +<!ENTITY notification.button.no "&نه"> +<!ENTITY sync.label "همگام سازی تن&ظیمات Adblock Plus"> +<!ENTITY whitelist.site.label "غیرفعال در ?1?"> +<!ENTITY filters.label "& تنظیمات فیلتر"> +<!ENTITY disable.label "غیر فعال کردن در همه جا"> +<!ENTITY objecttab.title "مسدود کردن"> +<!ENTITY objecttab.tooltip "جهت مسدود کردن با Adblock Plus اینجا کلیک کنید"> +<!ENTITY menuitem.label "ترجیحات فوق ت&بلیغ شکن (Adblock Plus)"> +<!ENTITY objecttabs.label "نمایش زبانه در موارد فلش و &جاوا"> +<!ENTITY sendReport.label "گزارش مشکل در این &صفحه"> +<!ENTITY whitelist.page.label "غیرفعال فقط در این صفحه"> +<!ENTITY context.image.label "Adblock Plus: سد تصاویر"> +<!ENTITY counthits.label "شمارش &تعداد فیلتر شده ها"> +<!ENTITY opensidebar.label "باز کردن موارد &قابل مسدود سازی"> +<!ENTITY notification.button.close "&بستن"> +<!ENTITY contribute.label "کمک کردن به Adblock Plus"> +<!ENTITY toolbarbutton.label "فوق تبلیغ شکن یا Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus:سد قابک"> +<!ENTITY blocked.tooltip "موارد رد شده در این صفحه:"> +<!ENTITY hideplaceholders.label "پنهان کردن &متغیرها از عناصر مسدود شده"> +<!ENTITY showinstatusbar.label "نمایش در ن&وار وضعیت"> +<!ENTITY sidebar.title "موارد قابل مسدود شدن در صفحه جاری"> +<!ENTITY options.label "&گزینه ها"> +<!ENTITY context.object.label "Adblock Plus: سد شیء"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: فعال شدن مجدد در این صفحه"> +<!ENTITY filters.tooltip "فعال ترین فیلترها:"> +<!ENTITY closesidebar.label "بستن موارد &قابل مسدود سازی"> +<!ENTITY showintoolbar.label "نمایش در نوار ا&بزار"> +<!ENTITY status.tooltip "وضعیت:"> +<!ENTITY context.media.label "Adblock Plus: سد داده های چند رسانه ای"> +<!ENTITY subscription.update.label "به روز رسانی فیلتر"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/sendReport.dtd new file mode 100644 index 0000000..d8c2300 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/sendReport.dtd @@ -0,0 +1,66 @@ +<!ENTITY screenshot.undo.label "&برگشت"> +<!ENTITY issues.disabledgroups.description "اشتراک های فیلتر / دسته های فیلتر روبرو غیر فعال هستند، آنها ممکن است هنوز روی صفحه تاثیر داشته باشند:"> +<!ENTITY showData.label "نمایش داده های گزارش"> +<!ENTITY typeSelector.falsePositive.label "فوق تبلیغ شکن بیش از &حد موارد را مسدود می کند."> +<!ENTITY issues.change.description "پیکربندی شما تغییر یافت. لطفا صفحه را برای بررسی تغییرات تازه سازی کنید و اگر هنوز با وجود تغییرات انجام شده مشکل پابرجا بود اقدام به ارسال گزارش کنید."> +<!ENTITY email.label "پ&ست الکترونیکی:"> +<!ENTITY issues.openPreferences.label "باز کردن تنظیمات فیلتر"> +<!ENTITY sendPage.confirmation "گزارش شما ذخیره شد. شما می توانید در نشانی زیر به آن دسترسی پیدا کنید:"> +<!ENTITY copyLink.label "رو&نوشت از پیوند گزارش"> +<!ENTITY issues.nofilters.description "فوق تبلیغ شکن هیچ موردی را در صفحه جاری مسدود نکرده. مشکلی که شما مشاهده کرده اید به احتمال زیاد به فوق تبلیغ شکن ربطی ندارد."> +<!ENTITY sendPage.knownIssue "گزارشی که شما ارسال کردید هم اکنون شناخته شده است. اطلاعات بیشتر:"> +<!ENTITY typeSelector.other.description "اگر شما مشکوک هستید که این مشکل از خود فوق تبلیغ شکن می باشد نه از فیلترها، این گزینه را انتخاب کنید."> +<!ENTITY issues.disabledgroups.enable.label "فعال سازی اشتراک های فیلتر / دسته های فیلتر"> +<!ENTITY typeWarning.override.label "من متو&جه هستم و می خواهم که گزارش را در هر صورت ارسال کنم"> +<!ENTITY issues.disabled.enable.label "فعال کردن فوق تبلیغ شکن"> +<!ENTITY update.fixed.description "به روز رسانی های فیلتر احتمالاً مشکلی را که شما گزارش داده اید را حل کرده. لطفاً دوباره صفحه را باز کنید،اگر مشکل حل نشد دوباره روی دکمه گزارش کلیک کنید."> +<!ENTITY anonymous.label "ا&رسال ناشناس"> +<!ENTITY reloadButton.label "تا&زه سازی صفحه"> +<!ENTITY recentReports.clear.label "پاک کردن تمامی &گزارشات"> +<!ENTITY typeSelector.description "این پنجره شما را برای ارائه یک گزارش خطا فوق تبلیغ شکن راهنمایی می کند. ابتدا نوع مشکلی را که در این صفحه با آن روبرو هستید را انتخاب کنید:"> +<!ENTITY screenshot.remove.label "&پاک کردن داده های حساس"> +<!ENTITY issues.ownfilters.description "بعضی از پالایه های اعمالی در صفحه توسط کاربر تعریف شده اند. لطفا پالایه های که ممکن است باعث بروز مشکل شود را غیرفعال کنید:"> +<!ENTITY update.inProgress.description "Adblock Plus باید اشتراکات فیلتر را بررسی نماید تا مطمئن شود مشکل حل شده است. لطفاً منتظر بمانید..."> +<!ENTITY sendPage.retry.label "ارسال مجدد"> +<!ENTITY data.label "داده های &گزارش:"> +<!ENTITY recentReports.label "گزارشات به تازگی ارسال شده شما"> +<!ENTITY typeWarning.description "شما می خواهید که مشکلی کلی در مورد فوق تبلیغ شکن را گزارش دهید به جای اینکه مشکلی در رابطه با فیلتر گزارش دهید. لطفا توجه داشته باشید که این طور مسائل بهتر است در [link]تالار گفتمان فوق تبلیغ شکن[/link] بحث شوند. شما باید فقط در صورتی از گزارش گر مشکلات استفاده کنید که مکمل بحث موجود باشد, چونکه (در تالار گفتمان) هیچ کس به گزارش شما توجه نمی کند مگر این که برای آن یک پیوند ارائه کنید. وقتی که گزارش را ارسال می کنید پیوند به طور خودکار ساخته و مهیا می شود."> +<!ENTITY issues.disabled.description "فوق تبلیغ شکن هم اکنون غیرفعال است. در این وضعیت هیچ موردی را مسدود نمی کند."> +<!ENTITY attachExtensions.label "ضمیمه کردن فهرستی ا&ز افزونه ها به گزارش در مواردی که افزونه های دیگر باعث ایجاد مشکل باشند."> +<!ENTITY issues.nosubscriptions.add.label "افزودن اشتراک فیلتر"> +<!ENTITY issues.disabledfilters.enable.label "فعال کردن فیلتر"> +<!ENTITY issues.override.label "تنظیمات &پیکربندی صحیح است، ادامه گزارش"> +<!ENTITY issues.nosubscriptions.description "شما در هیچ فهرست پالایه پیش ساخته ای مشترک نشده اید که به طور خود کار محتوای ناخواسته را پاک می کنند."> +<!ENTITY typeSelector.falsePositive.description "اگر صفحه خالی از محتوای مهم می شود یا نادرست نمایش داده می شود یا موفق به عملکرد درست نیست این گزینه را انتخاب کنید."> +<!ENTITY typeSelector.other.label "سایر مشکلا&ت"> +<!ENTITY emailComment.label "ما شما را تشویق می کنیم که یک آدرس ایمیل معتبر از خود وارد کنید تا اگر سوالی بود ما بتوانیم در آینده با شما ارتباط برقرار کنیم +در مورد گزارش شما. این به ما اجازه می دهد که میزان همکاری شما را بسنجیم و اولویت کار شما به مراحل بالاتر برسد."> +<!ENTITY issues.whitelist.remove.label "فعال کردن مجدد فوق تبلیغ شکن در این صفحه"> +<!ENTITY outdatedSubscriptions.description "اشتراک فیلتر زیر برای حداقل دو هفته به روز نشده است. لطفاً این اشتراک را قبل از ارسال گزارش به روز کنید, شاید مشکل حل شود."> +<!ENTITY dataCollector.description "لطفا برای چند لحظه صبر کنید تا فوق تبلیغ شکن داده های درخواستی شما را جمع آوری کند."> +<!ENTITY sendButton.label "ارسا&ل گزارش"> +<!ENTITY comment.label "ن&ظر (اختیاری):"> +<!ENTITY sendPage.errorMessage "تلاش برای ارسال گزارش شکست خورد، شماره خطا "?1?". لطفا مطمئن شوید که به اینترنت متصل هستید و مجددا سعی کنید. اگر مشکل همچنان ادامه دارد می توانید در [link]تالار گفتمان فوق تبلیغ شکن[/link] در خواست کمک کنید."> +<!ENTITY showRecentReports.label "نمایش گزارشات ارسال شده اخیر"> +<!ENTITY commentPage.heading "وارد کردن نظر"> +<!ENTITY update.start.label "در حال به روز رسانی"> +<!ENTITY issues.disabledfilters.description "فیلترهای روبرو غیر فعال هستند، آنها ممکن است هنوز روی صفحه تاثیر داشته باشند:"> +<!ENTITY screenshot.description "صفحات مشابه امکان دارد برای هر فرد به صورتی نامشابه نمایش داده شوند. ضمیمه کردن یک تصویر می تواند کمک زیادی در فهم مشکل به ما بکند. شما می توانید بخش هایی که حاوی اطلاعات حساس می باشد را پاک کنید و همچنین بخش هایی که مشکل در آنها نمودار شده را علامت گزاری کنید. برای این کار کلید متناظر را کلیک کنید و بخشی از تصویر را با موشواره انتخاب کنید."> +<!ENTITY screenshot.attach.label "افزودن ت&صویر صفحه به گزارش"> +<!ENTITY issues.whitelist.description "فوق تبلیغ شکن هم اکنون روی صفحه ای که شما در مورد آن گزارش می دهید غیر فعال است. ابتدا آن را دوباره فعال کنید و پس از تازه سازی صفحه، مشکل را مجددا بررسی کنید."> +<!ENTITY typeSelector.falseNegative.label "فوق تبلیغ شکن &هیچ تبلیغی را مسدود نمی کند."> +<!ENTITY typeSelector.heading "انتخاب نوع اشکال"> +<!ENTITY anonymity.warning "ما قادر نخواهیم بود که دوباره بیاییم و احتمالاً این گزارش را در اولویت های پایین تر قرار می دهیم."> +<!ENTITY wizard.title "گزارش گر اشکالات"> +<!ENTITY issues.ownfilters.disable.label "غیر فعال کردن فیلتر"> +<!ENTITY commentPage.description "جعبه متن زیر به شما اجازه می دهد که نظر خود را برای کمک به درک ما در مورد مشکل وارد کنید. این مورد اختیاری می باشد ولی در صورتی که مشکل آشکار نیست توصیه می شود. شما همچنین می توانید قبل از ارسال گزارش داده ها را بررسی کنید."> +<!ENTITY comment.lengthWarning "حد اکثر طول نظر 1000 حرف می باشد. فقط 1000 حرف اولی فرستاده می شود."> +<!ENTITY typeSelector.falseNegative.description "اگر تبلیغات همچنان مشاهده می شوند با وجود این که فوق تبلیغ شکن فعال است این گزینه را انتخاب کنید"> +<!ENTITY sendPage.waitMessage "لطفا صبر کنید تا فوق تبلیغ شکن گزارش شما را ارسال کند."> +<!ENTITY dataCollector.heading "به گزارشگر اشکالات خوش آمدید"> +<!ENTITY screenshot.heading "افزودن تصویر از صفحه"> +<!ENTITY sendPage.heading "ارسال گزارش"> +<!ENTITY issues.subscriptionCount.description "به نظر می رسد که شما در اشتراک های بسیار زیادی عضو هستید. این عمل توصیه نمی شود زیرا که شانس ایجاد مشکل بیشتر می شود. بنابرین ما نمی توانیم گزارش های شما را قبول کنیم چرا که معلوم نیست که کدام اشتراک فیلتر نیاز به بررسی دارد. لطفا همه آنها را به جز اشتراک های واقعا لازم حذف کنید و سپس امتحان کنید که آیا این مسئله هنوز هم پس از آن رخ می دهد."> +<!ENTITY screenshot.mark.label "&علامت گزاری مشکل"> +<!ENTITY privacyPolicy.label "سیاست حفظ اسرار"> +<!ENTITY issues.description "فوق تبلیغ شکن مشکلی را در پیکربندی های شما پیدا کرده که ممکن است مشکل شما ناشی از آن باشد و یا این که ممکن است در رسیدگی به مشکل شما اشکال ایجاد کند."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/sidebar.dtd new file mode 100644 index 0000000..757ed0a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "مرز های اقلام فلش"> +<!ENTITY address.label "نشانی"> +<!ENTITY context.open.label "گشودن در زبانه نو"> +<!ENTITY type.label "نوع"> +<!ENTITY tooltip.filterSource.label "متن فیلتر:"> +<!ENTITY noitems.label "هیچ مورد قابل انسدادی نیست"> +<!ENTITY filter.label "فیلتر"> +<!ENTITY tooltip.size.label "اندازه:"> +<!ENTITY reattach.label "وصل کردن دوباره"> +<!ENTITY search.label "جستجو:"> +<!ENTITY docDomain.thirdParty "(شخص ثالث)"> +<!ENTITY filterSource.label "منبع فیلتر"> +<!ENTITY tooltip.docDomain.label "منبع نوشتار:"> +<!ENTITY context.copy.label "کپی آدرس مورد"> +<!ENTITY tooltip.type.label "نوع:"> +<!ENTITY context.disablefilter.label "غیر فعال کردن فیلتر ?1?"> +<!ENTITY context.copyFilter.label "رونوشت فیلتر"> +<!ENTITY context.block.label "مسدود کردن این مورد"> +<!ENTITY context.enablefilter.label "فعال کردن فیلتر ?1?"> +<!ENTITY detach.label "قطع کردن"> +<!ENTITY whitelisted.label "صفحه فهرست سفید"> +<!ENTITY context.disablefilteronsite.label "غیر فعال کردن این فیلتر در ?1?"> +<!ENTITY detached.title "فوق تبلیغ شکن: موارد قابل انسداد (قطع شده)"> +<!ENTITY docDomain.firstParty "(شخص اول)"> +<!ENTITY tooltip.type.whitelisted "(در فهرست سفید)"> +<!ENTITY tooltip.filter.label "فیلترهای مؤثر:"> +<!ENTITY tooltip.filter.disabled "(غیر فعال)"> +<!ENTITY context.editfilter.label "ویرایش فیلتر مؤثر"> +<!ENTITY tooltip.type.blocked "(مسدود شده)"> +<!ENTITY size.label "اندازه"> +<!ENTITY context.whitelist.label "افزودن قانون استثنا برای این مورد"> +<!ENTITY context.selectAll.label "انتخاب همه"> +<!ENTITY state.label "وضعیت"> +<!ENTITY docDomain.label "منبع نوشتار"> +<!ENTITY tooltip.address.label "نشانی:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/subscriptionSelection.dtd new file mode 100644 index 0000000..18f3a61 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fa/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "افزودن اشتراک فیلتر "?1?" هم&چنین"> +<!ENTITY list.download.failed "فوق تبلیغ شکن موفق نشد که فهرست اشتراکات را بازیابی کند."> +<!ENTITY list.download.retry "تلاش مجدد"> +<!ENTITY title.label "عنوان ا&شتراک:"> +<!ENTITY list.download.website "دیدن پایگاه تحت شبکه"> +<!ENTITY supplementMessage "این اشتراک فیلتر به معنی آن است که با اشتراک فیلتر "?1?" استفاده می شود که شما هنوز در آن مشترک نشده اید."> +<!ENTITY viewList.label "دیدن فیلترها"> +<!ENTITY visitHomepage.label "بازدید از صفحه خانگی"> +<!ENTITY addSubscription.label "افزودن اشتراک"> +<!ENTITY dialog.title "افزودن اشتراک پالایه فوق تبلیغ شکن"> +<!ENTITY location.label "نشانی &فهرست فیلترها:"> +<!ENTITY fromWeb.description "لطفا تایید کنید که قصد افزودن این اشتراک فیلتر را دارید. شما می توانید قبل از افزودن، نام و مسیر اشتراک را تغییر دهید."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/composer.dtd new file mode 100644 index 0000000..2713052 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "osoitteen &lopussa"> +<!ENTITY domainRestriction.label "R&ajoita verkkotunnukseen:"> +<!ENTITY collapse.default.no.label "Käytä oletusta (ei)"> +<!ENTITY firstParty.label "Va&in sivun ylläpitäjän"> +<!ENTITY preferences.label "&Näytä nykyiset suodattimet..."> +<!ENTITY pattern.label "Merkkijonon löytäminen"> +<!ENTITY thirdParty.label "Vain &muiden kuin sivun ylläpitäjän"> +<!ENTITY filter.label "Uusi &suodatin:"> +<!ENTITY collapse.label "&Romahduta estetyt:"> +<!ENTITY match.warning "Syöttämäsi merkkijono ei enää täsmää estettävän/sallittavan osoitteen kanssa; se ei vaikuta kyseiseen osoitteeseen."> +<!ENTITY anchor.start.label "osoi&tteen alussa"> +<!ENTITY matchCase.label "&Huomioi kirjainkoko"> +<!ENTITY custom.pattern.label "&Oma muokkaus:"> +<!ENTITY unselectAllTypes.label "Älä valitse mitään"> +<!ENTITY type.whitelist.label "&Sallimisehto"> +<!ENTITY regexp.warning "Syöttämäsi merkkijono tulkitaan säännölliseksi lausekkeeksi. Monet säännölliset lausekkeet saattavat hidastaa selailua. Jos tarkoituksena ei ollut käyttää säännöllistä lauseketta, lisää tähtimerkki (*) lauseen loppuun."> +<!ENTITY dialog.title "Lisää Adblock Plus -suodatusehto"> +<!ENTITY basic.label "Perusnäkymä"> +<!ENTITY type.filter.label "&Estävä suodatin"> +<!ENTITY types.label "Käytä tyypeissä:"> +<!ENTITY shortpattern.warning "Syöttämäsi merkkijono on liian lyhyt optimoitavaksi. Useat tällaiset merkkijonot saattavat hidastaa selailua. On suositeltavaa, että valitset tälle suodattimelle pidemmän merkkijonon."> +<!ENTITY collapse.yes.label "Kyllä"> +<!ENTITY anchors.label "Hyväksy merkkijono vain:"> +<!ENTITY collapse.default.yes.label "Käytä oletusta (kyllä)"> +<!ENTITY domainRestriction.help "Määrittele yksi tai useampia verkkotunnuksia "|"-merkilla eroteltuna. Suodatin on käytössä vain näissä verkkotunnuksissa. Suodatinta ei käytetä verkkotunnuksella, jos sen edessä on "~"-merkki."> +<!ENTITY accept.label "Lisää suodatin"> +<!ENTITY options.label "Asetukset"> +<!ENTITY disabled.warning "Adblock Plus on tällä hetkellä poistettu käytöstä. Voit silti lisätä suodattimia mutta ne otetaan käyttöön vasta kun, [link]otat Adblockin Plussan käyttöön[/link]."> +<!ENTITY anchor.start.flexible.label "verkko&tunnuksen alussa."> +<!ENTITY collapse.no.label "Ei"> +<!ENTITY selectAllTypes.label "Valitse kaikki"> +<!ENTITY advanced.label "Edistyneempi näkymä"> +<!ENTITY pattern.explanation "Merkkijono voi olla mikä tahansa osoitteen osa. Tähtimerkki (*) toimii jokerimerkkinä. Suodatin toimii vain osoitteissa, joita merkkijono vastaa."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/filters.dtd new file mode 100644 index 0000000..5535b40 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Kaikki omat suodattimet korvataan valitun tiedoston sisällöllä. Haluatko varmasti jatkaa?"> +<!ENTITY slow.column "&Hitaat suodattimet"> +<!ENTITY enabled.column "Kä&ytössä"> +<!ENTITY subscription.lastDownload.checksumMismatch "Epäonnistui, tarkistussumma ei täsmää"> +<!ENTITY noFiltersInGroup.text "Valittu ryhmä on tyhjä"> +<!ENTITY subscription.actions.label "Toiminnot"> +<!ENTITY filter.selectAll.label "Valitse kaikki"> +<!ENTITY backupButton.label "&Varmuuskopioi ja palauta"> +<!ENTITY restore.minVersion.warning "Varoitus: tiedosto on luotu uudemmalla Adblock Plussan versiolla. Ennen kuin palautat tästä tiedostosta, on suositeltavaa päivittää uusimpaan Adblock Plussan versioon."> +<!ENTITY restore.error "Tiedoston tietoja ei voida käsitellä. Ehkä tämä ei ole Adblock Plus -varmuuskopiotiedosto?"> +<!ENTITY sort.ascending.label "&A > Z lajittelu"> +<!ENTITY sort.label "Lajitt&eluperuste"> +<!ENTITY subscription.source.label "Suodatintilaus"> +<!ENTITY hitcount.column "&Osumat"> +<!ENTITY noFilters.text "Omia suodattimia ei ole vielä."> +<!ENTITY backup.custom.title "Vain omat suodattimet"> +<!ENTITY subscription.external.label "Toisen laajennuksen päivättävä"> +<!ENTITY subscription.delete.label "Poista"> +<!ENTITY noGroupSelected.text "Suodatinryhmä on valittava, ennen kuin sen suodattimia voidaan näyttää."> +<!ENTITY filter.cut.label "Leikkaa"> +<!ENTITY restore.default.label "Palauta varmuuskopio: ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Lataa..."> +<!ENTITY subscriptions.tab.label "Suodatintilaukset"> +<!ENTITY sort.descending.label "&Z > A lajittelu"> +<!ENTITY filters.remove.warning "Haluatko varmasti poistaa kaikki valitut suodattimet?"> +<!ENTITY filter.delete.label "Poista"> +<!ENTITY addSubscriptionAdd.label "Lisää"> +<!ENTITY viewMenu.label "Näytä"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Peruuta"> +<!ENTITY subscription.enabled.label "Käytössä"> +<!ENTITY noSubscriptions.text "Suodatintilauksia ei ole vielä lisätty. Adblock Plus ei estä mitään + ilman suodattimia. Käytä "Lisää suodatintilaus" -painiketta lisätäksesi + joitakin."> +<!ENTITY subscription.update.label "Päivitä suodattimet"> +<!ENTITY dialog.title "Adblock Plus -suodatinasetukset"> +<!ENTITY addFilter.label "&Lisää suodatin"> +<!ENTITY subscription.minVersion.warning "Tämä suodatintilaus vaatii uudemman Adblock Plus -version, on suositeltavaa päivittää uusimpaan Adblock Plussan versioon."> +<!ENTITY subscription.lastDownload.invalidURL "Epäonnistui, kelvoton osoite"> +<!ENTITY backup.error "Tapahtui virhe kirjoitettaessa suodattimia tiedostoon. Varmista että tiedosto ei ole kirjoitussuojattu tai jonkin muun ohjelman käytössä."> +<!ENTITY filter.moveUp.label "Siirrä ylös"> +<!ENTITY addGroup.label "Li&sää suodatinryhmä"> +<!ENTITY filter.edit.label "Muokkaa"> +<!ENTITY subscription.showHideFilters.label "Näytä/piilota suodattimet"> +<!ENTITY acceptableAds2.label "S&alli osa ei-häiritsevästä mainonnasta"> +<!ENTITY addSubscriptionOther.label "Lisää jokin muu tilaus"> +<!ENTITY close.label "Sulje"> +<!ENTITY sort.none.label "Ei &lajiteltu"> +<!ENTITY filter.actions.label "Suodatintoiminnot"> +<!ENTITY filter.copy.label "Kopioi"> +<!ENTITY filter.moveDown.label "Siirrä alas"> +<!ENTITY filter.resetHitCounts.label "Nollaa osumatilastot"> +<!ENTITY readMore.label "Lue lisää"> +<!ENTITY subscription.moveUp.label "Siirrä ylös"> +<!ENTITY addSubscription.label "L&isää suodatintilaus"> +<!ENTITY subscription.homepage.label "Kotisivu"> +<!ENTITY backup.complete.title "Kaikki suodattimet ja tilaukset"> +<!ENTITY restore.own.label "Palauta oma varmuuskopio"> +<!ENTITY restore.complete.warning "Kaikki suodatinasetukset korvataan valitun tiedoston sisällöllä. Haluatko varmasti jatkaa?"> +<!ENTITY filters.tab.label "Omat suodattimet"> +<!ENTITY backup.label "Luo uusi varmuuskopio"> +<!ENTITY find.label "&Etsi"> +<!ENTITY subscription.moveDown.label "Siirrä alas"> +<!ENTITY subscription.lastDownload.connectionError "Epäonnistui, latausvirhe"> +<!ENTITY subscription.lastDownload.success "Onnistui"> +<!ENTITY subscription.lastDownload.invalidData "Epäonnistui, kelvoton suodatinlista"> +<!ENTITY filter.paste.label "Liitä"> +<!ENTITY subscription.disabledFilters.enable "Ota käytöstä poistetut suodattimet käyttöön"> +<!ENTITY lasthit.column "&Viimeisin osuma"> +<!ENTITY subscription.editTitle.label "Muokkaa otsikkoa"> +<!ENTITY subscription.disabledFilters.warning "Jotkin tämän suodatintilauksen suodattimista on poistettu käytössä."> +<!ENTITY filter.column "&Suodatusehto"> +<!ENTITY subscription.lastDownload.label "Viimeisin lataus:"> +<!ENTITY viewList.label "Näytä lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/firstRun.properties new file mode 100644 index 0000000..3e6d9bb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Selaa yksityisesti estämällä seuraaminen - piilota jälkesi mainosyhtiöiltä, jotka muuten seuraavat jokaista liikettäsi. +firstRun_toggle_off=OFF +firstRun_feature_tracking=Seuraamisen estäminen +firstRun_feature_malware=Haittaohjelmien estäminen +firstRun_title=Adblock Plus on asennettu +firstRun_toggle_on=ON +firstRun_acceptableAdsExplanation=Kannustamme verkkosivuja käyttämään yksinkertaisia mainoksia, jotka eivät häiritse. Tämän vuoksi olemme luoneet <a>tiukat ohjesäännöt</a> hyväksyttävien mainosten tunnistamiseksi, jotka näytetään oletusasetuksilla. Jos silti haluat estää kaikki mainokset, voit ottaa tämän <a>pois käytöstä</a> käden käänteessä. +firstRun_contributor_credits=Avustajat: +firstRun_dataCorruptionWarning=Näetkö tämän sivun koko ajan? <a>Napsauta tätä!</a> +firstRun_acceptableAdsHeadline=Häiritsevät mainokset estetään +firstRun_share=Kerro ystävillesi +firstRun_share_headline=<a>Auta meitä</a> tekemään verkosta parempi paikka +firstRun_feature_social_description=Poista sivustoilta automaattisesti sosiaalisen median painikkeet, kuten Facebookin tykkää -painikkeet, jotka seuraavat verkkokäyttäytymistäsi. +firstRun_filterlistsReinitializedWarning=Näyttäisi siltä, että ongelman takia kaikki suodattimet on poistettu ja niiden palauttaminen varmuuskopiosta epäonnistui. Tämän vuoksi kaikki suodattimien ja hyväksyttävien mainoksien asetukset on palautettu alkuarvoihin. Tarkasta suodatinlistat ja hyväksyttävien mainosten asetukset <a>Adblock Plussan asetuksista</a>. +firstRun_feature_malware_description=Tee selaimestasi turvallisempi estämällä verkko-osoitteita, joiden tiedetään sisältävän haitallisia ohjelmia. +firstRun_features=Adblock Plus voi tehdä muutakin kuin vain estää mainoksia +firstRun_donate=lahjoita +firstRun_donate_label=Tue projektiamme +firstRun_feature_social=Sosiaalisen median painikkeiden poistaminen +firstRun_legacySafariWarning=Käytössäsi on Safarin vanha versio, jota Adblock Plus ei tue. Se ei välttämättä toimi oikein tai saattaa heikentää joidenkin sivustojen käyttökokemusta. Suosittelemme vahvasti päivittämään Safari 6.1.1:een tai uudempaan (OSX 10.8 Mountain Lion), tai Safari 7.0.1:een tai uudempaan (OSX 10.9 Mavericks), tai käyttämään Mozilla Firefoxin, Google Chromen tai Operan uusinta versiota. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/global.properties new file mode 100644 index 0000000..843c5e6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Ei estettäviä elementtejä avoimella sivulla +action3_tooltip=Napsauttamalla Adblock Plus otetaan käyttöön/poistetaan käytöstä. +notification_antiadblock_title=Piilotetaanko kohdennetut viestit? +type_label_script=komento +filter_elemhide_nocriteria=Piilotettavaa elementtiä määrittelevää tunnistetta ei annettu +blockingGroup_title=Estoehdot +whitelisted_tooltip=Adblock Plus on poistettu käytöstä tämänhetkisellä sivustolla. +type_label_stylesheet=tyyliohje +blocked_count_tooltip=?1? / ?2? +type_label_font=kirjaisin +type_label_popup=ponnahdusikkuna +filter_regexp_tooltip=Tämä suodatin on joko säännöllinen lauseke tai liian lyhyt optimoitavaksi. Liian monta tällaista suodatinta saattaa hidastaa selailuasi. +action0_tooltip=Napsautus avaa ponnahdusvalikon. Keskinapsautus ottaa käyttöön/poistaa käytöstä. +whitelisted_page=Adblock Plus on poistettu käytöstä avoimella sivulla +remove_group_warning=Haluatko varmasti poistaa tämän ryhmän? +action1_tooltip=Napsautus avaa/sulkee elementtilistan. Keskinapsautus ottaa käyttöön/poistaa käytöstä. +type_label_xmlhttprequest=XML-pyyntö +active_tooltip=Adblock Plus on aktiivinen, ?1? kpl suodatintilauksia ja ?2? kpl omia suodattimia käytössä. +type_label_document=dokumentti +type_label_object_subrequest=objektin alipyyntö +whitelistGroup_title=Poikkeusehdot +disabled_tooltip=Adblock Plus ei ole käytössä. +filter_elemhide_duplicate_id=Piilotettavalle elementille voidaan määritellä vain yksi tunniste (ID) +type_label_object=objekti +action2_tooltip=Napsautus avaa asetukset. Keskinapsautus ottaa käyttöön/poistaa käytöstä. +type_label_subdocument=kehys +clearStats_warning=Tämä nollaa kaikki osumatilastot ja poistaa osumien laskemisen käytöstä. Haluatko jatkaa? +notification_antiadblock_message=Tämän sivun tiedetään näyttäneen kohdennettuja viestejä Adblock Plussan käyttäjille. Haluatko, että Adblock Plus piilottaa kohdennetut viestit? +blocked_count_addendum=(sallituja: ?1?, piilotettuja: ?2?) +subscription_invalid_location=Suodatinlistan sijainti on joko kelvoton osoite tai tiedoston nimi. +type_label_image=kuva +remove_subscription_warning=Haluatko varmasti poistaa tämän tilauksen? +type_label_other=muu +mobile_menu_enable=ABP: Ota käyttöön +type_label_media=ääni/video +mobile_menu_disable_site=ABP: Ei käytössä osoitteessa ?1? +elemhideGroup_title=Elementtien piilotusehdot +mobile_menu_enable_site=ABP: Käytä osoitteessa ?1? +type_label_elemhide=piilotettu +newGroup_title=Uusi suodatinryhmä +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/overlay.dtd new file mode 100644 index 0000000..a123135 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Kyllä"> +<!ENTITY notification.button.no "&Ei"> +<!ENTITY sync.label "&Synkronoi Adblock Plussan asetukset"> +<!ENTITY whitelist.site.label "Ei käytössä osoitteessa ?1?"> +<!ENTITY filters.label "&Suodatinasetukset"> +<!ENTITY disable.label "Poista käytöstä kaikkialla"> +<!ENTITY objecttab.title "Estä"> +<!ENTITY objecttab.tooltip "Estä tämä objekti Adblock Plussalla"> +<!ENTITY menuitem.label "A&dblock Plus - Asetukset"> +<!ENTITY objecttabs.label "&Korvake Flashin ja Javan yhteydessä"> +<!ENTITY sendReport.label "Raportoi onge&lma tällä sivulla"> +<!ENTITY whitelist.page.label "Ei käytössä tällä sivulla"> +<!ENTITY context.image.label "Adblock Plus: Estä kuva"> +<!ENTITY counthits.label "&Laske suodattimen osumat"> +<!ENTITY opensidebar.label "Näytä &elementit"> +<!ENTITY notification.button.close "&Sulje"> +<!ENTITY contribute.label "Avusta Adblock Plussaa"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Estä kehys"> +<!ENTITY blocked.tooltip "Tämän sivun estetyt elementit:"> +<!ENTITY hideplaceholders.label "P&iilota elementit, jotka sisältävät estettyjä elementtejä"> +<!ENTITY showinstatusbar.label "&Näytä tilarivillä"> +<!ENTITY sidebar.title "Estettävät elementit avoimella sivulla"> +<!ENTITY options.label "&Valinnat"> +<!ENTITY context.object.label "Adblock Plus: Estä kohde"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Ota tämä sivu uudestaan käyttöön"> +<!ENTITY filters.tooltip "Aktiivisimmat suodattimet:"> +<!ENTITY closesidebar.label "Sulj&e elementit"> +<!ENTITY showintoolbar.label "Nä&ytä työkalupalkilla"> +<!ENTITY status.tooltip "Tila:"> +<!ENTITY context.media.label "Adblock Plus: Estä ääni/kuva"> +<!ENTITY subscription.update.label "Päivitä suodattimet"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/sendReport.dtd new file mode 100644 index 0000000..8c58fdc --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "K&umoa"> +<!ENTITY issues.disabledgroups.description "Seuraavat suodatintilaukset / suodatinryhmät ovat poistettu käytöstä mutta niillä saatta silti olla vaikutusta tällä sivulla:"> +<!ENTITY showData.label "Näytä raportin tiedot"> +<!ENTITY typeSelector.falsePositive.label "Adb&lock Plus estää liikaa"> +<!ENTITY issues.change.description "Asetuksia on muutettu. Päivitä sivu testataksesi muutokset ja raportoi, jos muutokset eivät ratkaisseet ongelmaa."> +<!ENTITY email.label "Sä&hköposti:"> +<!ENTITY issues.openPreferences.label "Avaa suodatinasetukset"> +<!ENTITY sendPage.confirmation "Rapotti on tallennettu. Se löytyy tästä osoitteesta:"> +<!ENTITY copyLink.label "&Kopioi raportin linkki"> +<!ENTITY issues.nofilters.description "Adblock Plus ei estä mitään tällä sivulla. Kohdattu ongelma on todennäköisesti riippumaton Adblock Plussasta."> +<!ENTITY sendPage.knownIssue "Raportoimasi ongelma on todennäköisesti jo tiedossa. Lisätietoa:"> +<!ENTITY typeSelector.other.description "Valitse tämä vaihtoehto, jos epäilet ongelman olevan ennemminkin Adblock Plussassa kuin sen suodattimissa."> +<!ENTITY issues.disabledgroups.enable.label "Ota suodatintilaus / suodatinlista käyttöön"> +<!ENTITY typeWarning.override.label "&Ymmärrän ja haluan silti raportoida"> +<!ENTITY issues.disabled.enable.label "Ota Adblock Plus käyttöön tällä sivulla"> +<!ENTITY update.fixed.description "Suodatintilausten päivitykset todennäköisesti ratkaisivat raportoitavan ongelman. Päivitä sivusto ja yritä uudelleen. Mikäli ongelma säilyy, raportoi se."> +<!ENTITY anonymous.label "&Lähetä nimettömänä"> +<!ENTITY reloadButton.label "&Päivitä sivu"> +<!ENTITY recentReports.clear.label "Poista kaikki &raportit"> +<!ENTITY typeSelector.description "Tämä ikkuna ohjeistaa tarvittavat vaiheet Adblockin Plussan ongelmaraportin lähettämiseksi. Aluksi valitse onhelmatyyppi, jollaisen koet tällä sivulla:"> +<!ENTITY screenshot.remove.label "&Poista arkaluontoista tietoa"> +<!ENTITY issues.ownfilters.description "Osa tämän sivun suodattimista on käyttäjän määrittelemiä. Poista käytöstä suodattimet, jotka saattavat aiheuttaa ongelmia:"> +<!ENTITY update.inProgress.description "Adblock Plussan pitää päivittää suodatintilaukset varmistaakseen, että ongelmaa ei ole jo ratkottu. Odota hetki..."> +<!ENTITY sendPage.retry.label "Lähetä uudelleen"> +<!ENTITY data.label "Raportin tie&dot:"> +<!ENTITY recentReports.label "Näytä viimeksi lähetemäsi raportit"> +<!ENTITY typeWarning.description "Olet antanut ymmärtää halukkuutesi raportoida yleisestä virheestä Adblock Plussassa suodattimien sijaan. Huomaa että tällaiset raportit olisi parasta jättää [link]Adblock Plussan foorumeille[/link]. Ongelmaraportteria tulisi käyttää vain täydentämään olevassa olevaa keskutelua, sillä kukaan ei huomioi raporttiasi, jos et anna siihen linkitystä. Rapotoidessa annetaan automaattisesti luotu linkki."> +<!ENTITY issues.disabled.description "Adblock Plus on poissa käytöstö tällä sivulla, se ei estä mitään."> +<!ENTITY attachExtensions.label "L&iitä lista aktiivisista laajennuksista rapottiin siltä varalta, että jokin niistä on ongelma syy"> +<!ENTITY issues.nosubscriptions.add.label "Lisää suodatintilaus"> +<!ENTITY issues.disabledfilters.enable.label "Ota suodatin käyttöön"> +<!ENTITY issues.override.label "Asetukset ovat oikein, &jatka raportoimista"> +<!ENTITY issues.nosubscriptions.description "Näyttäisi siltä, että et ole tilannut yhtään valmiiksi tehtyä suodatinlistaa, jotka poistavat automaattisesti sivuilta epämieluisaa sisältöä."> +<!ENTITY typeSelector.falsePositive.description "Valitse tämä vaihtoehto, jos sivulta puuttu olennaista sisältöä tai se näkyy väärin. Voit päätellä onko Adblock Plus syy ongelmaan ottamalla sen väliaikaisesti pois kaytöstä."> +<!ENTITY typeSelector.other.label "&Muu ongelma"> +<!ENTITY emailComment.label "On suositeltavaa antaa voimassa oleva sähköpostiosoite, jotta sinuun voidaan ottaa yhteyttä raporttiin liittyvissä kysymyksissä. Tämä mahdollistaa myös avustuksiesi tunnistamisen ja priorisoinnin korkeammalle."> +<!ENTITY issues.whitelist.remove.label "Ota Adblock Plus uudestaan käyttöön tällä sivulla"> +<!ENTITY outdatedSubscriptions.description "Seuraavia suodatintilauksia ei ole päivitetty ainakaan kahteen viikkoon. Päivitä nämä tilaukset ennen raportin lähettämistä, sillä ongelma on saattaanut jo ratketa."> +<!ENTITY dataCollector.description "Odota hetki, kun Adblock Plus kerää tarvittavia tietoja."> +<!ENTITY sendButton.label "&Lähetä raportti"> +<!ENTITY comment.label "Kommentti (&valinnainen):"> +<!ENTITY sendPage.errorMessage "Raportin lähettäminen epäonnistui virhekoodilla "?1?". Varmista että olet yhteydessä Internettiin ja yritä uudelleen. Mikäli ongelma ei katoa, pyydä apua osoitteesta [link]Adblock Plus forum[/link]."> +<!ENTITY showRecentReports.label "Näytä viimeksi lähetetyt raportit"> +<!ENTITY commentPage.heading "Lisää kommentti"> +<!ENTITY update.start.label "Aloita päivittäminen nyt"> +<!ENTITY issues.disabledfilters.description "Seuraavat suodattimet on poistettu käytöstä mutta niillä saatta silti olla vaikutusta tällä sivulla:"> +<!ENTITY screenshot.description "Sama sivu saattaa näyttää erilaiselta eri ihmisillä. Ongelman ymmärtämistä saattaa helpottaa, jos liität raporttiisi kuvakaappauksen. Voit myös poistaa arkaluontoista tietoa tai merkitä ongelman kannalta huomattavia kohtia. Tehdäksesi tämän napsauta vastaava painiketta ja valitse kuvan kohta hiirellä."> +<!ENTITY screenshot.attach.label "&Liitä sivun kuva raporttiin"> +<!ENTITY issues.whitelist.description "Adblock Plus on tällä hetkellä poistettu käytöstä sivulla, jota olet raportoimassa. Ota se käyttöön ja ennen raportointia päivitä sivu. Tämä auttaa rapotin tutkimista."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus &ei estä mainosta"> +<!ENTITY typeSelector.heading "Valitse ongelman tyyppi"> +<!ENTITY anonymity.warning "Sinuun ei voida ottaa yhteyttä ja todennäköisesti priorisoimme raportin alemmas."> +<!ENTITY wizard.title "Ongelman raportointi"> +<!ENTITY issues.ownfilters.disable.label "Poista suodatin käytöstä"> +<!ENTITY commentPage.description "Alla olevaan tekstikenttään voit syöttää kommentin (englanniksi) helpottaaksesi meitä ymmärtämään ongelman. Tämä vaihe on valinnainen mutta suositeltava, jos ongelma ei ole ilmiselvä. Voit myös käydä läpi raportin tiedot ennen sen lähettämistä."> +<!ENTITY comment.lengthWarning "Kommentin pituus ylittää 1000 merkkiä. Vain ensimmäiset 1000 merkkiä lähetetään."> +<!ENTITY typeSelector.falseNegative.description "Valitse tämä vaihtoehto, jos mainos näkyy vaikka Adblock Plus on käytössä."> +<!ENTITY sendPage.waitMessage "Odota, Adblock Plus lähettää raporttia."> +<!ENTITY dataCollector.heading "Tervetuloa ongelman raportoijaan"> +<!ENTITY screenshot.heading "Liitä kuvakaappaus"> +<!ENTITY sendPage.heading "Raportin lähettäminen"> +<!ENTITY issues.subscriptionCount.description "Näyttäisi siltä, että liian monta suodatintilausta on tilattuna. Tällainen järjestely ei ole suositeltavaa, sillä se nostaa ongelmien todennäköisyyttä. Emme voi hyväksyä ongelmaraporttia, koska jää epäselväksi kenen suodatintilauksen tekijän on ryhdyttävä korjaustoimiin. Poista kaikki paitsi välttämättömät suodatintilaukset ja kokeile esiintyykö ongelma yhä."> +<!ENTITY screenshot.mark.label "&Merkkaa ongelma"> +<!ENTITY privacyPolicy.label "Yksityisyyskäytäntö"> +<!ENTITY issues.description "Adblock Plus on havainnut ongelmia asetuksissa, jotka saattavat aiheuttaa tämän ongelman tai tehdä raportin tutkimisesta vaikeaa."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/sidebar.dtd new file mode 100644 index 0000000..5a6c4d0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Välkytä reunoja"> +<!ENTITY address.label "Osoite"> +<!ENTITY context.open.label "Avaa uuteen välilehteen"> +<!ENTITY type.label "Tyyppi"> +<!ENTITY tooltip.filterSource.label "Suodattimen lähde:"> +<!ENTITY noitems.label "Ei estettäviä elementtejä"> +<!ENTITY filter.label "Suodatin"> +<!ENTITY tooltip.size.label "Koko:"> +<!ENTITY reattach.label "Kiinnitä"> +<!ENTITY search.label "&Etsi:"> +<!ENTITY docDomain.thirdParty "(kolmas osapuoli)"> +<!ENTITY filterSource.label "Suodattimen lähde"> +<!ENTITY tooltip.docDomain.label "Dokumentin lähde:"> +<!ENTITY context.copy.label "Kopioi osoite"> +<!ENTITY tooltip.type.label "Tyyppi:"> +<!ENTITY context.disablefilter.label "Poista käytöstä suodatin: ?1?"> +<!ENTITY context.copyFilter.label "Kopioi suodatin"> +<!ENTITY context.block.label "Estä elementti"> +<!ENTITY context.enablefilter.label "Palauta suodatin: ?1?"> +<!ENTITY detach.label "Irrota"> +<!ENTITY whitelisted.label "Sallittu sivu"> +<!ENTITY context.disablefilteronsite.label "Poista tämä suodatin käytöstä osoiteessa ?1?"> +<!ENTITY detached.title "Adblock Plus: Estettävien elementtien lista (irrotettu)"> +<!ENTITY docDomain.firstParty "(ensimmäinen osapuoli)"> +<!ENTITY tooltip.type.whitelisted "(sallittu)"> +<!ENTITY tooltip.filter.label "Vaikuttava suodatin:"> +<!ENTITY tooltip.filter.disabled "(poistettu käytöstä)"> +<!ENTITY context.editfilter.label "Muokkaa suodatinta"> +<!ENTITY tooltip.type.blocked "(estetty)"> +<!ENTITY size.label "Koko"> +<!ENTITY context.whitelist.label "Lisää poikkeusehto"> +<!ENTITY context.selectAll.label "Valitse kaikki"> +<!ENTITY state.label "Tila"> +<!ENTITY docDomain.label "Dokumentin lähde"> +<!ENTITY tooltip.address.label "Osoite:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/subscriptionSelection.dtd new file mode 100644 index 0000000..694748c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fi/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Lisää myös suodatintilaus "?1?""> +<!ENTITY list.download.failed "Suodatinlistan noutaminen epäonnistui."> +<!ENTITY list.download.retry "Yritä uudestaan"> +<!ENTITY title.label "Tilauksen nimi:"> +<!ENTITY list.download.website "Näytä verkkosivu"> +<!ENTITY supplementMessage "Tämä suodatintilaus on tarkoitettu käytettäväksi yhdessä suodatintilauksen "?1?" kanssa, jota et vielä käytä."> +<!ENTITY viewList.label "Näytä suodattimet"> +<!ENTITY visitHomepage.label "Vieraile kotisivulla"> +<!ENTITY addSubscription.label "Lisää suodatintilaus"> +<!ENTITY dialog.title "Lisää Adblock Plus -suodatintilaus"> +<!ENTITY location.label "Suodatinlistan sijainti:"> +<!ENTITY fromWeb.description "Vahvista tämän suodatintilauksen lisääminen. Voit muuttaa tilauksen nimeä tai sijaintia ennen sen lisäämistä."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/composer.dtd new file mode 100644 index 0000000..285f961 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "e&n fin d'adresse"> +<!ENTITY domainRestriction.label "Restrein&dre au domaine :"> +<!ENTITY collapse.default.no.label "Utiliser le comportement par défaut (non)"> +<!ENTITY firstParty.label "Provenant unique&ment du même domaine"> +<!ENTITY preferences.label "&Afficher les filtres existants…"> +<!ENTITY pattern.label "Proposition de motifs"> +<!ENTITY thirdParty.label "Provenan&t uniquement d'autres domaines"> +<!ENTITY filter.label "Nouveau &filtre :"> +<!ENTITY collapse.label "&Réutiliser l'espace de l'élément filtré :"> +<!ENTITY match.warning "Le motif que vous avez saisi ne correspondra plus à l'adresse devant être bloquée/autorisée et n'aura plus aucun effet sur elle."> +<!ENTITY anchor.start.label "en déb&ut d'adresse"> +<!ENTITY matchCase.label "Sensible à la &casse"> +<!ENTITY custom.pattern.label "&Personnalisé :"> +<!ENTITY unselectAllTypes.label "Ne rien sélectionner"> +<!ENTITY type.whitelist.label "Règle d'e&xception"> +<!ENTITY regexp.warning "Le motif que vous avez indiqué sera interprété comme une expression régulière qui ne peut être traitée efficacement par Adblock Plus et ralentira votre navigation. Si vous ne souhaitiez pas utiliser d'expression régulière, veuillez ajouter un * à la fin du motif."> +<!ENTITY dialog.title "Ajouter une règle de filtrage Adblock Plus"> +<!ENTITY basic.label "Affichage standard"> +<!ENTITY type.filter.label "Filtre &bloquant"> +<!ENTITY types.label "Appliquer aux types suivants :"> +<!ENTITY shortpattern.warning "Le motif que vous avez indiqué est trop court pour être optimisé et ralentira votre navigation. Nous vous recommandons de choisir une chaîne de caractères plus longue pour ce filtre afin de permettre à Adblock Plus de le traiter plus efficacement."> +<!ENTITY collapse.yes.label "Oui"> +<!ENTITY anchors.label "Accepter le motif uniquement :"> +<!ENTITY collapse.default.yes.label "Utiliser le comportement par défaut (oui)"> +<!ENTITY domainRestriction.help "Spécifiez un ou plusieurs domaines séparés par le symbole « | », le filtre ne s'appliquera alors qu'aux domaines indiqués. Le symbole « ~ » précédant un nom de domaine signifie que le filtre ne devra pas être appliqué à ce domaine."> +<!ENTITY accept.label "Ajouter le filtre"> +<!ENTITY options.label "Options"> +<!ENTITY disabled.warning "Adblock Plus est actuellement désactivée. Vous pouvez continuer à ajouter des filtres mais ils ne seront pas appliqués tant que vous n'aurez pas [link]activé Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "a&u début du nom de domaine"> +<!ENTITY collapse.no.label "Non"> +<!ENTITY selectAllTypes.label "Tout sélectionner"> +<!ENTITY advanced.label "Affichage avancé"> +<!ENTITY pattern.explanation "Le motif peut être une partie de l'adresse ; le symbole * jouant le rôle de joker. Le filtre ne sera appliqué qu'aux adresses coïncidant avec le motif."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/filters.dtd new file mode 100644 index 0000000..6583fd9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Tous vos filtres personnalisés seront remplacés par le contenu du fichier sélectionné. Voulez-vous continuer ?"> +<!ENTITY slow.column "Fi&ltres lents"> +<!ENTITY enabled.column "A&ctivé"> +<!ENTITY subscription.lastDownload.checksumMismatch "Échec, le checksum ne correspond pas !"> +<!ENTITY noFiltersInGroup.text "Le groupe sélectionné est vide."> +<!ENTITY subscription.actions.label "Actions"> +<!ENTITY filter.selectAll.label "Tout sélectionner"> +<!ENTITY backupButton.label "&Sauvegarde et restauration"> +<!ENTITY restore.minVersion.warning "Attention : le fichier a été créé avec une nouvelle version d'Adblock Plus. Vous devriez mettre à jour et passer à la dernière version d'Adblock Plus avant de restaurer vos données avec ce fichier."> +<!ENTITY restore.error "Les données de ce fichier ne peuvent être traitées, il est possible qu'il ne s'agisse pas d'un fichier de données d'Adblock Plus."> +<!ENTITY sort.ascending.label "Ordre de &A > Z"> +<!ENTITY sort.label "&Trier par"> +<!ENTITY subscription.source.label "Liste de filtres"> +<!ENTITY hitcount.column "Co&mpteur"> +<!ENTITY noFilters.text "Vous n'avez pas encore de filtres personnalisés."> +<!ENTITY backup.custom.title "Uniquement les filtres personnalisés"> +<!ENTITY subscription.external.label "Mis à jour par une autre extension"> +<!ENTITY subscription.delete.label "Supprimer"> +<!ENTITY noGroupSelected.text "Vous devez choisir un groupe de filtres avant de pouvoir afficher ses filtres."> +<!ENTITY filter.cut.label "Couper"> +<!ENTITY restore.default.label "Restaurer la sauvegarde du ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Téléchargement en cours…"> +<!ENTITY subscriptions.tab.label "Abonnements à des filtres"> +<!ENTITY sort.descending.label "Ordre de &Z > A"> +<!ENTITY filters.remove.warning "Souhaitez-vous vraiment supprimer tous les filtres sélectionnés ?"> +<!ENTITY filter.delete.label "Supprimer"> +<!ENTITY addSubscriptionAdd.label "Ajouter"> +<!ENTITY viewMenu.label "Affichage"> +<!ENTITY subscription.lastDownload.unknown "Inconnu"> +<!ENTITY addSubscriptionCancel.label "Annuler"> +<!ENTITY subscription.enabled.label "Activé"> +<!ENTITY noSubscriptions.text "Vous n'avez pas encore ajouté d'abonnement. Adblock Plus ne bloquera rien sans filtres, veuillez utiliser « Ajouter un abonnement » pour en ajouter."> +<!ENTITY subscription.update.label "Mettre à jour les filtres"> +<!ENTITY dialog.title "Préférences Adblock Plus"> +<!ENTITY addFilter.label "Ajouter u&n filtre"> +<!ENTITY subscription.minVersion.warning "Cet abonnement nécessite une version plus récente d'Adblock Plus, vous devriez installer la dernière version d'Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Échec, ceci n'est pas une adresse valide !"> +<!ENTITY backup.error "Une erreur s'est produite lors de l'écriture des filtres dans le fichier. Assurez-vous que ce fichier n'est pas protégé en écriture ou utilisé par une autre application."> +<!ENTITY filter.moveUp.label "Monter"> +<!ENTITY addGroup.label "Ajouter un &groupe de filtres"> +<!ENTITY filter.edit.label "Modifier"> +<!ENTITY subscription.showHideFilters.label "Afficher/masquer les filtres"> +<!ENTITY acceptableAds2.label "Autor&iser certaines publicités non-intrusives"> +<!ENTITY addSubscriptionOther.label "Ajouter un autre abonnement"> +<!ENTITY close.label "Fermer"> +<!ENTITY sort.none.label "&Non trié"> +<!ENTITY filter.actions.label "Actions sur filtre"> +<!ENTITY filter.copy.label "Copier"> +<!ENTITY filter.moveDown.label "Descendre"> +<!ENTITY filter.resetHitCounts.label "Réinitialiser le compteur"> +<!ENTITY readMore.label "En apprendre davantage"> +<!ENTITY subscription.moveUp.label "Monter"> +<!ENTITY addSubscription.label "S'abonner à la liste de &filtres"> +<!ENTITY subscription.homepage.label "Page d'accueil"> +<!ENTITY backup.complete.title "Tous les filtres et abonnements"> +<!ENTITY restore.own.label "Restaurer une sauvegarde personnelle"> +<!ENTITY restore.complete.warning "Toutes vos préférences pour les filtres seront remplacées par le contenu du fichier sélectionné. Voulez-vous continuer ?"> +<!ENTITY filters.tab.label "Filtres personnalisés"> +<!ENTITY backup.label "Créer une nouvelle sauvegarde"> +<!ENTITY find.label "Re&chercher"> +<!ENTITY subscription.moveDown.label "Descendre"> +<!ENTITY subscription.lastDownload.connectionError "Échec, erreur lors du téléchargement !"> +<!ENTITY subscription.lastDownload.success "Réussie"> +<!ENTITY subscription.lastDownload.invalidData "Échec, ceci n'est pas une liste de filtres valide !"> +<!ENTITY filter.paste.label "Coller"> +<!ENTITY subscription.disabledFilters.enable "Activer les filtres désactivés"> +<!ENTITY lasthit.column "&Dernière utilisation"> +<!ENTITY subscription.editTitle.label "Modifier le nom"> +<!ENTITY subscription.disabledFilters.warning "Certains filtres de cet abonnement sont désactivés."> +<!ENTITY filter.column "Règle de &filtrage"> +<!ENTITY subscription.lastDownload.label "Dernière mise à jour :"> +<!ENTITY viewList.label "Afficher la liste"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/firstRun.properties new file mode 100644 index 0000000..ddc8c7b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Naviguer incognito en désactivant le suivi, en masquant vos traces aux publicistes qui traqueraient vos faits et gestes. +firstRun_toggle_off=INACTIF +firstRun_feature_tracking=Désactiver l'espionnage +firstRun_feature_malware=Blocage des logiciels malveillants +firstRun_title=Adblock Plus a été installée +firstRun_toggle_on=ACTIF +firstRun_acceptableAdsExplanation=Nous aimerions encourager les sites Web à utiliser de la publicité honnête et discrète. C'est pourquoi nous avons établi <a>des lignes directrices strictes</a> afin d'identifier les annonces acceptables, par défaut. Si vous souhaitez tout de même bloquer toutes les publicités, vous pouvez <a>désactiver</a> cela dans les paramètres en quelques secondes. +firstRun_contributor_credits=Crédits des contributeurs +firstRun_dataCorruptionWarning=Cette page s'affiche-t-elle encore ? <a>Cliquez ici !</a> +firstRun_acceptableAdsHeadline=Les pubs seront à présent bloquées +firstRun_share=Parlez-en à vos amis +firstRun_share_headline=<a>Donnez-nous un coup de main</a> à rendre le Web meilleur +firstRun_feature_social_description=Se débarrasser automatiquement des boutons de réseaux sociaux tels que les « J'aime » Facebook qui apparaissent sur les pages Web et suivent votre comportement. +firstRun_filterlistsReinitializedWarning=Il semblerait qu'à cause d'un problème, tous les filtres aient été supprimés et que nous n'ayons été en mesure de rétablir une sauvegarde. C'est pourquoi nous avons été contraints de réinitialiser vos filtres et les paramètres des publicités acceptables. Veuillez vérifier vos listes de filtres et les paramètres de publicités acceptables dans les <a>options d'Adblock Plus</a>. +firstRun_feature_malware_description=Rendre votre navigation plus sécurisée en bloquant les domaines malveillants connus. +firstRun_features=Adblock Plus peut faire plus que bloquer les pubs +firstRun_donate=Faire un don +firstRun_donate_label=Soutenir notre projet +firstRun_feature_social=Supprimer les boutons des réseaux sociaux +firstRun_legacySafariWarning=Vous utilisez une vieille version de Safari incompatible avec Adblock Plus. Elle pourra ne pas bien fonctionner ou nuire à l'expérience utilisateur sur certains sites Web. Nous recommandons fortement de mettre à jour Safari, soit vers la version 6.1.1 ou supérieure (sur OS X 10.8 Mountain Lion), soit vers la version 7.0.1 ou supérieure (sur OS X 10.9 Mavericks) ou d'utiliser la dernière version de Mozilla Firefox, Google Chrome ou Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/global.properties new file mode 100644 index 0000000..351b82d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Aucun élément filtrable sur cette page +action3_tooltip=Cliquez pour activer/désactiver Adblock Plus. +notification_antiadblock_title=Cacher les messages ciblés ? +type_label_script=script +filter_elemhide_nocriteria=Aucun critère spécifié pour reconnaître l'élément à masquer +blockingGroup_title=Règles de blocage de publicités +whitelisted_tooltip=Adblock Plus est désactivée pour cette page. +type_label_stylesheet=feuille de styles +blocked_count_tooltip=?1? bloqués sur ?2? +type_label_font=police +type_label_popup=Fenêtre popup +filter_regexp_tooltip=Ce filtre est soit une expression régulière, soit trop court pour être optimisé. Un excès de ce genre de filtres pourrait ralentir votre navigation. +action0_tooltip=Cliquez pour afficher le menu contextuel, clic du milieu pour activer/désactiver. +whitelisted_page=Adblock Plus a été désactivée pour cette page +remove_group_warning=Souhaitez-vous vraiment supprimer ce groupe ? +action1_tooltip=Cliquez pour ouvrir/fermer la liste des éléments filtrables, clic du milieu pour activer/désactiver. +type_label_xmlhttprequest=requête XML +active_tooltip=Adblock Plus est active, ?1? abonnement(s) et ?2? filtre(s) personnel(s) utilisé(s). +type_label_document=document +type_label_object_subrequest=sous-requête objet +whitelistGroup_title=Règles d'exceptions +disabled_tooltip=Adblock Plus est désactivée. +filter_elemhide_duplicate_id=Il n'est possible de spécifier qu'une ID de l'élément à masquer +type_label_object=objet +action2_tooltip=Cliquez pour ouvrir les préférences, clic du milieu pour activer/désactiver. +type_label_subdocument=cadre +clearStats_warning=Cela va remettre à zéro les statistiques d'utilisation de filtre et désactiver le comptage d'utilisation de filtre. Souhaitez-vous vraiment faire cela ? +notification_antiadblock_message=Ce site est connu pour afficher des messages destinés aux utilisateurs d'Adblock Plus. Voulez-vous qu'Adblock Plus cache ces messages ? +blocked_count_addendum=(également en liste blanche : ?1?, masqué(s) : ?2?) +subscription_invalid_location=L'adresse indiquant l'emplacement de la liste de filtres n'est ni une URL valide, ni un nom de fichier valide. +type_label_image=image +remove_subscription_warning=Souhaitez-vous vraiment supprimer cet abonnement ? +type_label_other=autre +mobile_menu_enable=ABP : Activer +type_label_media=audio/vidéo +mobile_menu_disable_site=ABP : Désactiver pour ?1? +elemhideGroup_title=Règles de masquage d'éléments +mobile_menu_enable_site=ABP : Activer pour ?1? +type_label_elemhide=masqué +newGroup_title=Nouveau groupe de filtres +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/overlay.dtd new file mode 100644 index 0000000..c07c593 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Oui"> +<!ENTITY notification.button.no "&Non"> +<!ENTITY sync.label "S&ynchroniser les paramètres d'Adblock Plus"> +<!ENTITY whitelist.site.label "Désactiver pour ?1?"> +<!ENTITY filters.label "Pré&férences de filtre"> +<!ENTITY disable.label "Désactiver partout"> +<!ENTITY objecttab.title "Bloquer"> +<!ENTITY objecttab.tooltip "Cliquer ici afin qu'Adblock Plus bloque cet objet"> +<!ENTITY menuitem.label "Préférences d'Ad&block Plus"> +<!ENTITY objecttabs.label "Afficher une étiquette pour Flash et &Java"> +<!ENTITY sendReport.label "&Signaler un problème sur cette page"> +<!ENTITY whitelist.page.label "Désactiver pour cette page uniquement"> +<!ENTITY context.image.label "Bloquer l'image avec Adblock Plus"> +<!ENTITY counthits.label "Co&mpter la fréquence d'utilisation de filtre"> +<!ENTITY opensidebar.label "Ouvrir la liste des élé&ments filtrables"> +<!ENTITY notification.button.close "&Fermer"> +<!ENTITY contribute.label "Contribuer à Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Bloquer le cadre avec Adblock Plus"> +<!ENTITY blocked.tooltip "Éléments bloqués sur cette page :"> +<!ENTITY hideplaceholders.label "Ré&utiliser l'espace laissé par les éléments bloqués"> +<!ENTITY showinstatusbar.label "Afficher da&ns la barre d'état"> +<!ENTITY sidebar.title "Éléments filtrables dans la page courante"> +<!ENTITY options.label "&Options"> +<!ENTITY context.object.label "Bloquer l'objet avec Adblock Plus"> +<!ENTITY context.removeWhitelist.label "Activer à nouveau Adblock Plus pour cette page"> +<!ENTITY filters.tooltip "Filtres les plus utilisés :"> +<!ENTITY closesidebar.label "Fer&mer la liste des éléments filtrables"> +<!ENTITY showintoolbar.label "Afficher dans la barre d'&outils"> +<!ENTITY status.tooltip "État :"> +<!ENTITY context.media.label "Bloquer les vidéos/audios avec Adblock Plus"> +<!ENTITY subscription.update.label "Mettre à jour les filtres"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/sendReport.dtd new file mode 100644 index 0000000..ee5069b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "A&nnuler"> +<!ENTITY issues.disabledgroups.description "Les abonnements/groupes de filtres suivants sont désactivés, ils ne peuvent pas encore avoir d'effet sur cette page :"> +<!ENTITY showData.label "Afficher les données du signalement"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus bloque &trop"> +<!ENTITY issues.change.description "Votre configuration a été modifiée. Veuillez actualiser la page pour tester les modifications et soumettez un signalement si le problème n'a pas été résolu en effectuant cette modification."> +<!ENTITY email.label "&Courriel :"> +<!ENTITY issues.openPreferences.label "Ouvrir les préférences de filtre"> +<!ENTITY sendPage.confirmation "Votre signalement a été envoyé. Vous pouvez y accéder à l'adresse suivante :"> +<!ENTITY copyLink.label "Co&pier le lien du signalement"> +<!ENTITY issues.nofilters.description "Adblock Plus ne bloque rien sur la page courante. Le problème que vous observez n'est probablement pas à mettre en relation avec Adblock Plus."> +<!ENTITY sendPage.knownIssue "Le problème que vous signalez est probablement déjà connu. Davantage d'informations :"> +<!ENTITY typeSelector.other.description "Choisissez cette option si vous pensez qu'Adblock Plus elle-même est la cause du problème plutôt que ses filtres."> +<!ENTITY issues.disabledgroups.enable.label "Activer l'abonnement/le groupe de filtres"> +<!ENTITY typeWarning.override.label "Je comprend&s et souhaite soumettre le signalement tout de même"> +<!ENTITY issues.disabled.enable.label "Activer Adblock Plus"> +<!ENTITY update.fixed.description "Les mises à jour de vos abonnements de filtres ont probablement résolu le problème que vous avez signalé. Veuillez recharger la page et réessayer, appuyez à nouveau sur « Signaler » si le problème persiste."> +<!ENTITY anonymous.label "Soumission &anonyme"> +<!ENTITY reloadButton.label "&Actualiser la page"> +<!ENTITY recentReports.clear.label "&Supprimer tous les signalements"> +<!ENTITY typeSelector.description "Cette fenêtre vous guidera à travers les étapes nécessaires à la soumission d'un problème Adblock Plus. Dans un premier temps, veuillez choisir le type de problème rencontré sur cette page :"> +<!ENTITY screenshot.remove.label "&Supprimer les données sensibles"> +<!ENTITY issues.ownfilters.description "Certains des filtres utilisés sur cette page ont été définis par l'utilisateur. Veuillez désactiver les filtres qui ont pu avoir été à l'origine du problème :"> +<!ENTITY update.inProgress.description "Adblock Plus doit mettre à jour vos abonnements de filtres pour s'assurer que le problème n'a pas déjà été résolu. Veuillez patienter…"> +<!ENTITY sendPage.retry.label "Envoyer à nouveau"> +<!ENTITY data.label "&Données du signalement :"> +<!ENTITY recentReports.label "Vos signalements récemment soumis"> +<!ENTITY typeWarning.description "Vous avez indiqué que vous voulez signaler un problème général concernant Adblock Plus plutôt qu'un problème de filtres. Veuillez prendre note que ce type de problèmes est plutôt signalé dans le [link]forum d'Adblock Plus[/link]. Vous devriez utiliser la soumission de signalement uniquement pour ajouter un point à une discussion existante, puisque personne n'en prendra connaissance à moins que vous leur fournissiez le lien pointant vers la discussion. Le lien automatiquement généré sera fourni après la soumission du signalement."> +<!ENTITY issues.disabled.description "Adblock Plus est désactivée, elle ne bloquera rien dans cet état."> +<!ENTITY attachExtensions.label "Joindre une liste d'e&xtensions actives au signalement au cas où il y aurait un problème de conflit d'extension"> +<!ENTITY issues.nosubscriptions.add.label "Ajouter un abonnement"> +<!ENTITY issues.disabledfilters.enable.label "Activer le filtre"> +<!ENTITY issues.override.label "La &configuration est correcte, poursuivre le signalement"> +<!ENTITY issues.nosubscriptions.description "Vous ne semblez pas être abonné à une liste de filtres prédéfinis qui suppriment automatiquement des contenus indésirables de sites Web."> +<!ENTITY typeSelector.falsePositive.description "Choisissez cette option si le contenu de la page est sévèrement tronqué, est mal affiché ou ne fonctionne pas correctement. Vous pouvez vérifier si Adblock Plus en est la cause en la désactivant temporairement."> +<!ENTITY typeSelector.other.label "&Autre problème"> +<!ENTITY emailComment.label "Nous vous encourageons à saisir un courriel valide afin que nous puissions vous contacter pour toute question concernant votre signalement. Cela nous permettra également de reconnaître vos contributions et de les traiter prioritairement."> +<!ENTITY issues.whitelist.remove.label "Activer à nouveau Adblock Plus sur cette page"> +<!ENTITY outdatedSubscriptions.description "Les abonnements de filtres suivants n'ont pas été mis à jour depuis au moins deux semaines. Veuillez mettre à jour ces abonnements avant de signaler un problème, il se pourrait qu'il ait déjà été résolu."> +<!ENTITY dataCollector.description "Veuillez patienter quelques instants pendant qu'Adblock Plus réunit les données nécessaires."> +<!ENTITY sendButton.label "Envo&yer le signalement"> +<!ENTITY comment.label "&Commentaire (facultatif) :"> +<!ENTITY sendPage.errorMessage "Une tentative d'envoi du signalement a échoué avec le code erreur « ?1? ». Veuillez vérifier que vous êtes bien connecté à Internet et réessayer. Si le problème persiste, veuillez demander assistance dans le [link]forum d'Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Afficher les signalements soumis récemment"> +<!ENTITY commentPage.heading "Commentaire"> +<!ENTITY update.start.label "Mettre à jour maintenant"> +<!ENTITY issues.disabledfilters.description "Les filtres suivants sont désactivés, ils ne peuvent pas encore avoir d'effet sur cette page :"> +<!ENTITY screenshot.description "La même page peut s'afficher différemment pour différentes personnes. Cela pourrait être utile de joindre une copie d'écran à votre signalement. Vous pouvez enlever les parties contenant des informations sensibles et mettre en évidence les zones où le problème est visible. Pour cela, cliquez sur le bouton correspondant et sélectionnez une zone de l'image avec votre souris."> +<!ENTITY screenshot.attach.label "&Joindre une image de la page au signalement"> +<!ENTITY issues.whitelist.description "Adblock Plus est actuellement désactivée sur la page que vous signalez. Veuillez l'activer à nouveau et actualiser la page avant de soumettre le signalement pour qu'une recherche de solutions soit entamée."> +<!ENTITY typeSelector.falseNegative.label "Ad&block Plus ne bloque pas une publicité"> +<!ENTITY typeSelector.heading "Choisir le type de problème"> +<!ENTITY anonymity.warning "Nous ne serons pas en mesure de vous recontacter et votre signalement ne sera probablement pas traité prioritairement."> +<!ENTITY wizard.title "Signalement de problèmes"> +<!ENTITY issues.ownfilters.disable.label "Désactiver le filtre"> +<!ENTITY commentPage.description "Le champ ci-dessous vous permet de saisir un commentaire pour nous aider à comprendre le problème. Cette étape est facultative mais recommandée si le problème n'est pas évident à détecter. Vous pouvez également revoir les données du signalement avant l'envoi."> +<!ENTITY comment.lengthWarning "Votre commentaire comporte plus de 1000 caractères. Seuls les 1000 premiers caractères seront envoyés."> +<!ENTITY typeSelector.falseNegative.description "Choisissez cette option si une publicité est tout de même affichée bien qu'Adblock Plus soit activée."> +<!ENTITY sendPage.waitMessage "Veuillez patienter pendant qu'Adblock Plus soumet votre signalement."> +<!ENTITY dataCollector.heading "Bienvenue dans l'assistant de signalement de problèmes"> +<!ENTITY screenshot.heading "Joindre une copie d'écran"> +<!ENTITY sendPage.heading "Envoyer le signalement"> +<!ENTITY issues.subscriptionCount.description "Il semblerait que vous soyez abonné(e) à trop de listes de filtres. Cette configuration n'est pas recommandée car elle augmentera la probabilité de rencontrer des problèmes. Nous ne pouvons également pas accepter votre signalement parce qu'il ne sera pas facile de définir quel auteur d'abonnement devra entreprendre quelque chose. Veuillez supprimer tous les abonnements exceptés ceux qui sont absolument nécessaires et vérifier si le problème se produit encore."> +<!ENTITY screenshot.mark.label "&Mettre en évidence le problème"> +<!ENTITY privacyPolicy.label "Politique de confidentialité"> +<!ENTITY issues.description "Adblock Plus a détecté que votre configuration est mal paramétrée, cela pourrait être la cause du problème ou rendra la recherche de solution au signalement difficile."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/sidebar.dtd new file mode 100644 index 0000000..ffdafff --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Faire clignoter les bordures de l'élément"> +<!ENTITY address.label "Adresse"> +<!ENTITY context.open.label "Ouvrir dans un nouvel onglet"> +<!ENTITY type.label "Type"> +<!ENTITY tooltip.filterSource.label "Source du filtre :"> +<!ENTITY noitems.label "Aucun élément filtrable"> +<!ENTITY filter.label "Filtre"> +<!ENTITY tooltip.size.label "Taille :"> +<!ENTITY reattach.label "Rattacher"> +<!ENTITY search.label "&Rechercher :"> +<!ENTITY docDomain.thirdParty "(tierce partie)"> +<!ENTITY filterSource.label "Source du filtre"> +<!ENTITY tooltip.docDomain.label "Source du document :"> +<!ENTITY context.copy.label "Copier l'adresse de l'élément"> +<!ENTITY tooltip.type.label "Type :"> +<!ENTITY context.disablefilter.label "Désactiver le filtre ?1?"> +<!ENTITY context.copyFilter.label "Copier le filtre"> +<!ENTITY context.block.label "Bloquer cet élément"> +<!ENTITY context.enablefilter.label "Réactiver le filtre ?1?"> +<!ENTITY detach.label "Détacher"> +<!ENTITY whitelisted.label "Page dans la liste blanche"> +<!ENTITY context.disablefilteronsite.label "Désactiver ce filtre pour ?1?"> +<!ENTITY detached.title "Adblock Plus : éléments filtrables (détaché)"> +<!ENTITY docDomain.firstParty "(première partie)"> +<!ENTITY tooltip.type.whitelisted "(autorisée)"> +<!ENTITY tooltip.filter.label "Filtre utilisé :"> +<!ENTITY tooltip.filter.disabled "(désactivé)"> +<!ENTITY context.editfilter.label "Modifier le filtre actif"> +<!ENTITY tooltip.type.blocked "(bloquée)"> +<!ENTITY size.label "Taille"> +<!ENTITY context.whitelist.label "Ajouter à la liste blanche"> +<!ENTITY context.selectAll.label "Tout sélectionner"> +<!ENTITY state.label "État"> +<!ENTITY docDomain.label "Source du document"> +<!ENTITY tooltip.address.label "Adresse :"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/subscriptionSelection.dtd new file mode 100644 index 0000000..56b935b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fr/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "&Ajouter également l'abonnement « ?1? »"> +<!ENTITY list.download.failed "Adblock Plus n'a pu récupérer la liste des abonnements."> +<!ENTITY list.download.retry "Essayer à nouveau"> +<!ENTITY title.label "&Nom de l'abonnement :"> +<!ENTITY list.download.website "Afficher le site Web"> +<!ENTITY supplementMessage "Cet abonnement est prévu pour être utilisé avec l'abonnement "?1?" que vous n'utilisez pas encore."> +<!ENTITY viewList.label "Afficher les filtres"> +<!ENTITY visitHomepage.label "Se rendre au site Web"> +<!ENTITY addSubscription.label "Ajouter l'abonnement"> +<!ENTITY dialog.title "Ajouter un abonnement à une liste de filtres Adblock Plus"> +<!ENTITY location.label "&Emplacement de la liste :"> +<!ENTITY fromWeb.description "Veuillez confirmer que vous souhaitez ajouter cet abonnement. Vous pouvez modifier le titre ou l'emplacement de l'abonnement avant de l'ajouter."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/composer.dtd new file mode 100644 index 0000000..79d4830 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "oan it ein fan it a&dres"> +<!ENTITY domainRestriction.label "Behein ta do&mein"> +<!ENTITY collapse.default.no.label "Brûk standert (nee)"> +<!ENTITY firstParty.label "Allinnich earst diel"> +<!ENTITY preferences.label "&Toan besteande filters..."> +<!ENTITY pattern.label "Sykje nei patroan"> +<!ENTITY thirdParty.label "&Allinnich tredde diel"> +<!ENTITY filter.label "Nije filter:"> +<!ENTITY collapse.label "Blokkearre ynklappe:"> +<!ENTITY match.warning "It patroan dy't jo opjûn hawwe is net lyk oan it adres om te blokkearjen/wytlisten en sil gjin effekt op it hawwe."> +<!ENTITY anchor.start.label "oan it begjin fan it adres"> +<!ENTITY matchCase.label "&Haadlettergefoelich"> +<!ENTITY custom.pattern.label "&Oanpast:"> +<!ENTITY unselectAllTypes.label "Selektearje neat"> +<!ENTITY type.whitelist.label "&Utsûnderingsrigel"> +<!ENTITY regexp.warning "It patroan dy't jo opjûn hawwe sil ynterpretearre wurde as reguliere ekspresje. In protte reguliere ekspresjes kinne it sneupjen fertrage. As jo net fan plan wienen om reguliere ekspresje te brûken, foegje in symboal * ta oan it ein fan it patroan."> +<!ENTITY dialog.title "Foegje Adblock Plus filterrigel ta"> +<!ENTITY basic.label "Basisbyld"> +<!ENTITY type.filter.label "Blokkearfilter"> +<!ENTITY types.label "Tapasse op types:"> +<!ENTITY shortpattern.warning "It patroan dy't jo opjûn hawwe is te koart om te optimalisearjen, in protte reguliere ekspresje kinne it sneupjen fertrage. It wurdt oanret dat jo in langere útdrukking kieze foar dit filter."> +<!ENTITY collapse.yes.label "Ja"> +<!ENTITY anchors.label "Akseptearje allinnich patroan:"> +<!ENTITY collapse.default.yes.label "Brûk standert (ja)"> +<!ENTITY domainRestriction.help "Spesifisearje ien of mear domeinen skieden troch it symboal "|", it filter sil allinnich op dizze domeinen tapast wurden. It symboal "~" foar in domeinnamme betsjut dat it filter net tapast wurde moat op dat domein."> +<!ENTITY accept.label "Filter tafoegje"> +<!ENTITY options.label "Opsjes"> +<!ENTITY disabled.warning "Adblock Plus is op dit stuit útskeakele. Jo kinne noch hieltyd filters tafoegje, mar dy sille net earder aktyf wêze as jo [link]Adblock Plus ynskeakelje[/link]."> +<!ENTITY anchor.start.flexible.label "oan it begjin fan de domeinnamme"> +<!ENTITY collapse.no.label "Nee"> +<!ENTITY selectAllTypes.label "Selektearje alles"> +<!ENTITY advanced.label "Avansearre byld"> +<!ENTITY pattern.explanation "It patroan kin elk part fan it adres wêze, symboal * wurket as joker. It filter sil allinnich tapast wurde op adressen neffens it patroan."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/filters.dtd new file mode 100644 index 0000000..3ef491d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Alle foarkearen fan dyn eigen filters wurde ferfangen troch de data fan it selekteare bestand. Troch gean?"> +<!ENTITY slow.column "Lan&gsame filters"> +<!ENTITY enabled.column "Yns&keakele"> +<!ENTITY subscription.lastDownload.checksumMismatch "Mislearre, checksum komt net oerien"> +<!ENTITY noFiltersInGroup.text "Dizze groep is leech."> +<!ENTITY subscription.actions.label "Akties"> +<!ENTITY filter.selectAll.label "Selekt alles"> +<!ENTITY backupButton.label "&Feilich sette en werom sette"> +<!ENTITY restore.minVersion.warning "Warskouwing: Dit bestand is makke my in nije fersy fan Adblock Plus. Update dyn eigen Adblock Plus foardast dit bestand brûkst."> +<!ENTITY restore.error "De data in dit bestand koe net brûkt wurde. Miskien is it gjin Adblock Plus backup bestand?"> +<!ENTITY sort.ascending.label "A > Z sortearoarder"> +<!ENTITY sort.label "Sortearje op"> +<!ENTITY subscription.source.label "Filterlist"> +<!ENTITY hitcount.column "&Hits"> +<!ENTITY noFilters.text "Do hast noch gjin eigen filters."> +<!ENTITY backup.custom.title "Allinnich oanpasse filters"> +<!ENTITY subscription.external.label "Fernijd troch in oar útwreiding"> +<!ENTITY subscription.delete.label "furt goaie"> +<!ENTITY noGroupSelected.text "Do moast yn filter groep selektere foardast it filter sjen kist."> +<!ENTITY filter.cut.label "Knippe"> +<!ENTITY restore.default.label "Backup werom sette fan ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Ynlade..."> +<!ENTITY subscriptions.tab.label "Filterabonneminten"> +<!ENTITY sort.descending.label "Z > A sortearoarder"> +<!ENTITY filters.remove.warning "Wolst echt alle filters furt smite?"> +<!ENTITY filter.delete.label "Fuortsmite"> +<!ENTITY addSubscriptionAdd.label "Tafoegje"> +<!ENTITY viewMenu.label "Byld"> +<!ENTITY subscription.lastDownload.unknown "n.f.t."> +<!ENTITY addSubscriptionCancel.label "Annulearje"> +<!ENTITY subscription.enabled.label "Ynskeakele"> +<!ENTITY noSubscriptions.text "Jo hawwe gjin ien filter tafoege. Adblock Plus sil neat blokkearje + sûnder filters, brûk "Filterabonnemint tafoegje" om + ta te foegjen."> +<!ENTITY subscription.update.label "Update filters"> +<!ENTITY dialog.title "Adblock Plus Filterfoarkarren"> +<!ENTITY addFilter.label "Tafoegje"> +<!ENTITY subscription.minVersion.warning "Dit filter abonnemint had in nijere fersy fan Adblok Plus nedich. Update dyn Adblock nar de nijste fersy."> +<!ENTITY subscription.lastDownload.invalidURL "Mislearre, gjin jildich adres"> +<!ENTITY backup.error "Der wy in probleem my it skriuwen fan de filters. Soarch der foar dast it wol skriuwe meist en dat it net troch in oar programma brûkt wurdt."> +<!ENTITY filter.moveUp.label "Omheech"> +<!ENTITY addGroup.label "Filter groep tafoege"> +<!ENTITY filter.edit.label "feroarje"> +<!ENTITY subscription.showHideFilters.label "Sjen/Ferstopje filters"> +<!ENTITY acceptableAds2.label "Let sommige net skreauwende advertinsjes ta"> +<!ENTITY addSubscriptionOther.label "In oar abonnemint tafoegje"> +<!ENTITY close.label "sluten"> +<!ENTITY sort.none.label "&Net sortearre"> +<!ENTITY filter.actions.label "Filter aksjes"> +<!ENTITY filter.copy.label "Kopiearje"> +<!ENTITY filter.moveDown.label "Omleech"> +<!ENTITY filter.resetHitCounts.label "Reset statistysken"> +<!ENTITY readMore.label "Lês mear"> +<!ENTITY subscription.moveUp.label "omheech"> +<!ENTITY addSubscription.label "Filterabonnemint tafoegje"> +<!ENTITY subscription.homepage.label "Startside"> +<!ENTITY backup.complete.title "Alle filters en abonneminten"> +<!ENTITY restore.own.label "Eigen backup werom sette"> +<!ENTITY restore.complete.warning "Alle filter foarkearen wurde ferfangen troch de data fan it selekteare bestand. Troch gean?"> +<!ENTITY filters.tab.label "Oanpaste filters"> +<!ENTITY backup.label "Meitsje nije backup"> +<!ENTITY find.label "Sykje"> +<!ENTITY subscription.moveDown.label "omleech"> +<!ENTITY subscription.lastDownload.connectionError "Mislearre, ynlaadprobleem"> +<!ENTITY subscription.lastDownload.success "Slagge"> +<!ENTITY subscription.lastDownload.invalidData "Mislearre, gjin jildige filterlist"> +<!ENTITY filter.paste.label "Plakke"> +<!ENTITY subscription.disabledFilters.enable "Set filters oan"> +<!ENTITY lasthit.column "Lêste hit"> +<!ENTITY subscription.editTitle.label "Namme oanpasse"> +<!ENTITY subscription.disabledFilters.warning "Sommige filters in dit abonnemint stean út."> +<!ENTITY filter.column "Filterrigel"> +<!ENTITY subscription.lastDownload.label "Lêste ynlaad:"> +<!ENTITY viewList.label "Lyst sjen"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/firstRun.properties new file mode 100644 index 0000000..98c1128 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Ynternette mear privaat troch it útsetten fan tracking. Ferstopje dyn surf gedrach fan reklame bedriuwen dy't dy graach in de gaten wolle hâlde. +firstRun_toggle_off=út +firstRun_feature_tracking=Folgje út +firstRun_feature_malware=Troep blokkeare +firstRun_title=Adblock is no ynstalleare +firstRun_acceptableAdsExplanation=Wy wolle graach dat websiden simpele net skreauwende advertinsjes brûke. Derom hawwe wy <a>stringe regels</a> om akseptabele advertinsjes te werkennen. Dit stiet ûnder standert settings. Ast noch steeds alle advertinsjes blokkeare wolst, dan kist dat <a>Út sette</a> yn in pear sekonden. +firstRun_toggle_on=Oan +firstRun_contributor_credits=Meiwurker Nammen +firstRun_dataCorruptionWarning=Bliuwst dizze side sjen? <a>Klik hjir!</a> +firstRun_acceptableAdsHeadline=ferfelende advertinsjes wurde no tsjin hâlden +firstRun_share=sis it tsjin freonen +firstRun_share_headline=<a>Jou ús in hantsje</a> om it web in moaiere plak te meitsjen +firstRun_features=Adblock kin mear dwaan dan advertinsjes stopje +firstRun_feature_malware_description=Meitsje dyn browser mear feiliger troch it blokkearen fan bekende rotsoai domeinen. +firstRun_feature_social_description=Meitsje dyn ynternetten moaier en helje automatysk de knoppen furt as de Facebook Like, dy't op websiden stean om dyn gedrach by te hâlden. +firstRun_donate=Donneare +firstRun_donate_label=Support ús projekt +firstRun_feature_social=Sociale Media knop fuorthelje +firstRun_legacySafariWarning=Do brûkst in âlde fersy fan Safari dy net mear troch Adblock Plus understeunt wurdt. Miskien wurket it net goed of liket it soms wat raar. Wij adviseare om Safari 6.1.1 of heger (op OS X 10.8 Mountain Lion), of Safari 7.0.1 of heger (op OS X 10.9 Mavericks) te brûken, of de lêste fersy van Mozilla Firefox, Google Chrome of Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/global.properties new file mode 100644 index 0000000..6e5bfc1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Gjin blokkearbere ûnderdielen op dizze side +action3_tooltip=Klik om Adblock Plus yn/út te skeakeljen. +type_label_script=skript +filter_elemhide_nocriteria=Gjin kritearia spesifisearre om it te ferstoppen elemint te ûntdekken +blockingGroup_title=Blokkearregels tafoegje +whitelisted_tooltip=Adblock Plus is ynskeakele mar stiet út foar dizze side. +type_label_stylesheet=stylside +blocked_count_tooltip=?1? fan de ?2? +type_label_font=lettertype +type_label_popup=pop-up finster +filter_regexp_tooltip=Dit filter is of in reguliere ekspresje of te koart om optimalisearre te wurden. Te folle fan dizze filters kinne it sneupjen fertrage. +action0_tooltip=Klik om it kontekst-menu te iepenjen, midden-klik om yn/út te skeakeljen. +whitelisted_page=Adblock Plus is útskeakele foar dizze side +remove_group_warning=Wolst do dizze groep echt furt helje? +action1_tooltip=Klik om blokkearbere ûnderdielen te iepenjen/sluten, midden-klik om yn/út te skeakeljen. +type_label_xmlhttprequest=XML fersyk +active_tooltip=Adblock Plus is ynskeakele, ?1? filter abonnemint(en) en ?2? oanpaste filter(s) yn gebrûk. +type_label_document=dokumint +type_label_object_subrequest=objekt subfersyk +whitelistGroup_title=Utsûnderingsregels +disabled_tooltip=Adblock Plus is útskeakele. +filter_elemhide_duplicate_id=Der kin allinnich ien ID fan it te ferstoppen elemint spesifisearre wurde +type_label_object=objekt +action2_tooltip=Klik om foarkarren te iepenjen, midden-klik om yn/út te skeakeljen. +type_label_subdocument=dielfinster +clearStats_warning=Dit sil alle filterhitstatistiken opnij ynstelle en it tellen fan filterhits útskeakelje. Wolle jo trochgean? +blocked_count_addendum=(ek wytliste: ?1?, ferstoppe: ?2?) +subscription_invalid_location=Dizze lokaasje foar in filterlist is gjin jildige URL of gjin jildige bestânsnamme. +type_label_image=ôfbylding +remove_subscription_warning=Witte jo seker dat jo dit abonnemint fuortsmite wolle? +type_label_other=oars +mobile_menu_enable=ABP: Oan sette +type_label_media=audio/fideo +mobile_menu_disable_site=ABP: Út sette op ?1? +elemhideGroup_title=Elemint ferstopregels +mobile_menu_enable_site=ABP: Oan sette op ?1? +type_label_elemhide=ferstoppe +newGroup_title=Nije filtergroep +default_dialog_title=Adblock Plus +notification_antiadblock_title=Hide targeted messages? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/overlay.dtd new file mode 100644 index 0000000..57e9f9e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ja"> +<!ENTITY notification.button.no "&Nee"> +<!ENTITY sync.label "Sync Adblock Plus opsjes"> +<!ENTITY whitelist.site.label "Utskeakelje op ?1?"> +<!ENTITY filters.label "Filterfoarkarren"> +<!ENTITY disable.label "Oeral útskeakelje"> +<!ENTITY objecttab.title "Blokkearje"> +<!ENTITY objecttab.tooltip "Klik hjir om dit objekt te blokkearjen mei Adblock Plus"> +<!ENTITY menuitem.label "&Adblock Plus"> +<!ENTITY objecttabs.label "Ljepblêden sjen li&tte op Flash en Java"> +<!ENTITY sendReport.label "Rapportearje probleem op dizze side"> +<!ENTITY whitelist.page.label "Allinnich op dizze side útskeakelje"> +<!ENTITY context.image.label "Ofbylding blokkearje"> +<!ENTITY counthits.label "Tel filterhits"> +<!ENTITY opensidebar.label "&Blokkearbere ûnderdielen iepenje"> +<!ENTITY notification.button.close "&Slûte"> +<!ENTITY contribute.label "Donearje oan Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Dielfinster blokkearje"> +<!ENTITY blocked.tooltip "Blokkearre ûnderdielen:"> +<!ENTITY hideplaceholders.label "Ferstop placeholders fan blokkearre eleminten"> +<!ENTITY showinstatusbar.label "Toane yn steatbalke"> +<!ENTITY sidebar.title "Blokkearbere ûnderdelen op dizze side"> +<!ENTITY options.label "Opsjes"> +<!ENTITY context.object.label "Objekt blokkearje"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: opnij ynskeakelje op dizze side"> +<!ENTITY filters.tooltip "Meast aktive filters:"> +<!ENTITY closesidebar.label "&Blokkearbere ûnderdielen slute"> +<!ENTITY showintoolbar.label "To&ane yn arkbalke"> +<!ENTITY status.tooltip "Steat:"> +<!ENTITY context.media.label "Adblock Plus: Blokkearje audio/fideo"> +<!ENTITY subscription.update.label "Update filters"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/sendReport.dtd new file mode 100644 index 0000000..a4cdc9c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Ûngedien meitsje"> +<!ENTITY issues.disabledgroups.description "De folgjende filterabonneminten/filtergroepen binne útskeakele, dochs it kin wêze dat se effekt hawwe op dizze side:"> +<!ENTITY showData.label "Toan rapportgegevens"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokkearret te &folle"> +<!ENTITY issues.change.description "Jo konfiguraasje is wizige. Laad de side op 'e nij om de wizigings te testen en in rapport te stjoeren as it probleem net oplost is."> +<!ENTITY email.label "E-mail:"> +<!ENTITY issues.openPreferences.label "Iepenje filteropsjes"> +<!ENTITY sendPage.confirmation "Jo rapport is bewarre. Jo kinne it besjen op it folgjende adres:"> +<!ENTITY copyLink.label "&Kopiearje rapportkeppeling"> +<!ENTITY issues.nofilters.description "Adblock Plus blokkearret no neat op dizze side. It probleem dat jo sjogge hat wierskienlik neat fan dwaan mei Adblock Plus."> +<!ENTITY sendPage.knownIssue "It probleem dat jo rapportearre hawwe is miskien al bekend. Mear ynformaasje:"> +<!ENTITY typeSelector.other.description "Selektearje dizze opsje as jo tinke dat it in probleem mei Adblock Plus sels is yn stee fan syn filters."> +<!ENTITY issues.disabledgroups.enable.label "Filterabonnemint / filtergroep ynskeakelje"> +<!ENTITY typeWarning.override.label "Ik &begryp it en wol it rapport wol ynstjoere"> +<!ENTITY issues.disabled.enable.label "Adblock Plus ynskeakelje"> +<!ENTITY update.fixed.description "De updates foar dyn abonneminten losse dyn probleem wierskynlik op. Laad de webside opnij. Hast dan noch steed yn probleem, rapportearje it dan."> +<!ENTITY anonymous.label "Anonym Bydrage"> +<!ENTITY reloadButton.label "Side opnij &lade"> +<!ENTITY recentReports.clear.label "&Smyt alle rapporten fuort"> +<!ENTITY typeSelector.description "Dit finster sil jo begeliede troch de stappen nedich foar it yntsjinjen fan in Adblock Plus probleemrapport. Earst, selektearje it type probleem wat jo tsjinkommen binne op dizze side:"> +<!ENTITY screenshot.remove.label "Sensitive &gegevens fuortsmite"> +<!ENTITY issues.ownfilters.description "Sommige fan de filters tapast op dizze side binne brûker-definiearre. Skeakel de filters út dy't miskien dit probleem feroarsake hawwe:"> +<!ENTITY update.inProgress.description "Adblock Plus moat dyn filter abonnemint bywurkje om der seker fan te wêzen dat er noch gjin oplossing bekend is. Wacht efkes..."> +<!ENTITY sendPage.retry.label "Ferstjoer op 'e nij"> +<!ENTITY data.label "&Rapportgegevens:"> +<!ENTITY recentReports.label "Jo resint ynstjoerde rapporten"> +<!ENTITY typeWarning.description "Jo hawwe oanjûn dat jo in algemien probleem mei Adblock Plus rapportearej wolle yn stee fan in probleem mei de filters. It is it bêste dat jo soksoartige fan problemen rapportearje yn it [link]Adblock Plus foarum[/link]. Jo soene allinnich dizze rapportearder brûke moatte as tafoeging oan in besteande diskusje, oars sil net ien jo rapport sjen útsein as jo in keppeling opjouwe. De automatysk generearre keppeling sil jûn wurde as it rapport ynstjoerd is."> +<!ENTITY issues.disabled.description "Adblock Plus is útskeakele, it sil no neat blokkearje."> +<!ENTITY attachExtensions.label "Foegje in list mei aktive útwreidings ta oan it ra&pport foar it gefal as in tafoeging it probleem feroarsaket"> +<!ENTITY issues.nosubscriptions.add.label "Foegje filterabonnemint ta"> +<!ENTITY issues.disabledfilters.enable.label "Filter ynskeakelje"> +<!ENTITY issues.override.label "De &konfiguraasje is korrekt, fierder mei it rapport"> +<!ENTITY issues.nosubscriptions.description "It liket der op dat jo net abonnearre binne op ien fan de yn-it-foar makke filterlisten dy't automatysk net-winske ynhâld fan websteeën fuortsmyt."> +<!ENTITY typeSelector.falsePositive.description "Selektearje dizze opsje as de side wichtige ynhâld mist, net goed toant wurd of net goed funksjonearret. Jo kinne útfine oft Adblock Plus de oarsaak is fan it probleem troch it tydlik út te skeakeljen."> +<!ENTITY typeSelector.other.label "O&ar probleem"> +<!ENTITY emailComment.label "It soe moai wêze ast in goed mail adres kist opjaan sa dat wy kontakt my die kinne opnimme as der fragen binne oer dyn rapport. It jout ús ek de mooglikheid om minsken te werkennen en mear prioriteit te jaan."> +<!ENTITY issues.whitelist.remove.label "Skeakel Adblock Plus op dizze side wer yn"> +<!ENTITY outdatedSubscriptions.description "De folgjende filters binne al in tiid net bywurke. Wurkje dizze by foardast in rapport ynstjoerst. Miskien is it al oplost."> +<!ENTITY dataCollector.description "In amerijke wylst Adblock Plus de nedige gegevens sammelt."> +<!ENTITY sendButton.label "&Ferstjoer rapport"> +<!ENTITY comment.label "&Kommentaar (opsjoneel):"> +<!ENTITY sendPage.errorMessage "It is net slagge om it rapport te ferstjoeren, flaterkoade "?1?". Wês wis dat jo ferbûn binne mei it ynternet en probearje nochris. As it probleem bliuwt freegje dan assistinsje yn it [link]Adblock Plus foarum[/link]."> +<!ENTITY showRecentReports.label "Toan resint ynstjoerde rapporten"> +<!ENTITY commentPage.heading "Kommentaar"> +<!ENTITY update.start.label "No bywurkje"> +<!ENTITY issues.disabledfilters.description "De folgjende filters binne útskeakele, dochs it kin wêze dat se effekt hawwe op dizze side:"> +<!ENTITY screenshot.description "Deselde side kin der ferskillend útsjen foar ferskillende minsken. It kin ús helpe om it probleem te begripen as jo in skerôfdruk meistjoere. Jo kinne seksjes mei sensitive ynformaasje fuortsmite en ek ûnderdielen markearje dêr't it probleem te sjen is. Om dat te dwaan klik de knop en selektearje in seksje fan de ôfbylding mei jo mûs."> +<!ENTITY screenshot.attach.label "Foegje in ôfbylding ta oan it rapport"> +<!ENTITY issues.whitelist.description "Adblock Plus is no útskeakele op de side dy't jo rapportearje. Skeakel it yn en laad de side op 'e nij eardat it rapport ynstjoerd wurd om it ûndersyk fan dit probleem te helpen."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus blokkearret in advertinsje net"> +<!ENTITY typeSelector.heading "Selektearje probleemtype"> +<!ENTITY anonymity.warning "We kinnen dy gjin kommentaar jaan en sille wierskynlik in leage prioriteit oan dyn rapport jaan."> +<!ENTITY wizard.title "Probleemrapportearder"> +<!ENTITY issues.ownfilters.disable.label "Filter útskeakelje"> +<!ENTITY commentPage.description "It tekstfjild hjirûnder jout de mooglikheid om kommentaar te jaan. Dizze stap is opsjoneel, mar oanrikkemandearre as it in frjemd probleem is. Jo kinne ek de gegevens besjen eardat it ferstjoerd wurd."> +<!ENTITY comment.lengthWarning "De lingte fan jo kommentaar hat mear as 1000 karakters. Allinnich de earste 1000 karakters sille ferstjoerd wurde."> +<!ENTITY typeSelector.falseNegative.description "Selektearje dizze opsje as in advertinsje toant wurd wylst Adblock Plus ynskeakele is."> +<!ENTITY sendPage.waitMessage "Wachtsje wylst Adblock Plus jo rapport ynstjoerd."> +<!ENTITY dataCollector.heading "Wolkom by de probleemrapportearder"> +<!ENTITY screenshot.heading "Skermôfdruk tafoegje"> +<!ENTITY sendPage.heading "Ferstjoer rapport"> +<!ENTITY issues.subscriptionCount.description "It liket as jo abonnearre binne op te folle filters. Dizze opset is net oanrikkemandearre omdat it wierskienlik faker problemen feroarsaakje kin. Wy kinne ek jo probleemrapport net akseptearje omdat it net dúdlik is hokker filterabonnemint auteur aksje ûndernimme moat. Helje alle net needsaaklike filters fuort en test oft de problemen wer barre."> +<!ENTITY screenshot.mark.label "Markearje it probleem"> +<!ENTITY privacyPolicy.label "Privacybelied"> +<!ENTITY issues.description "Adblock Plus hat problemen ûntdekt mei jo konfiguraasje dy't miskien ferantwurdlik binne foar dit probleem of sil it sier meitsje om it te ûndersykjen."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/sidebar.dtd new file mode 100644 index 0000000..4280a2d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Lit rannen knipperje"> +<!ENTITY address.label "Adres"> +<!ENTITY context.open.label "Iepen yn in nij ljepblêd"> +<!ENTITY type.label "Type"> +<!ENTITY tooltip.filterSource.label "Filterboarne:"> +<!ENTITY noitems.label "Gjin blokkearbere items"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Grutte:"> +<!ENTITY reattach.label "Fêstmeitsje"> +<!ENTITY search.label "Sykje:"> +<!ENTITY docDomain.thirdParty "(tredde partij)"> +<!ENTITY filterSource.label "Filterboarne"> +<!ENTITY tooltip.docDomain.label "Dokumintboarne:"> +<!ENTITY context.copy.label "Kopiearje"> +<!ENTITY tooltip.type.label "Type:"> +<!ENTITY context.disablefilter.label "Filter útskeakelje ?1?"> +<!ENTITY context.copyFilter.label "Filter kopiearje"> +<!ENTITY context.block.label "Blokkearje dit item"> +<!ENTITY context.enablefilter.label "Filter ynskeakelje ?1?"> +<!ENTITY detach.label "Losmeitsje"> +<!ENTITY whitelisted.label "Tastiene side"> +<!ENTITY context.disablefilteronsite.label "Skeakel dit filter út op ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokkearbere ûnderdielen (los)"> +<!ENTITY docDomain.firstParty "(earste partij)"> +<!ENTITY tooltip.type.whitelisted "(tastien)"> +<!ENTITY tooltip.filter.label "Tapast filter:"> +<!ENTITY tooltip.filter.disabled "(útskeakele)"> +<!ENTITY context.editfilter.label "Bewurkje tapaste filter"> +<!ENTITY tooltip.type.blocked "(blokkearre)"> +<!ENTITY size.label "Grutte"> +<!ENTITY context.whitelist.label "Meitsje in útsûnderingsrigel foar dit ûnderdiel"> +<!ENTITY context.selectAll.label "Selektearje alles"> +<!ENTITY state.label "Steat"> +<!ENTITY docDomain.label "Dokumintboarne"> +<!ENTITY tooltip.address.label "Adres:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/subscriptionSelection.dtd new file mode 100644 index 0000000..374db56 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/fy-NL/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "&Filterabonnemint "?1?" ek tafoegje"> +<!ENTITY list.download.failed "It is Adblock Plus net slagge om de list mei abonneminten te krijen."> +<!ENTITY list.download.retry "Op 'e nij besykje"> +<!ENTITY title.label "A&bonnemintnamme:"> +<!ENTITY list.download.website "Toan webstee"> +<!ENTITY supplementMessage "Dit filterabonnemint is bedoeld om brûkt te wurden mei it filterabonnemint "?1?" dy't jo no noch net brûke."> +<!ENTITY viewList.label "Toan filters"> +<!ENTITY visitHomepage.label "Besykje thússide"> +<!ENTITY addSubscription.label "Abonnemint tafoegje"> +<!ENTITY dialog.title "Foegje Adblock Plus filterabonnemint ta"> +<!ENTITY location.label "Fi&lterlist lokaasje:"> +<!ENTITY fromWeb.description "Befestigje asjobleaft dat jo dit filterabonnemint tafoegje wolle. Jo kinne de abonneminttitel of lokaasje wizigje foardat jo it tafoegje."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/composer.dtd new file mode 100644 index 0000000..fb550c7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "ao final &do enderezo"> +<!ENTITY domainRestriction.label "&Restrinxir ao dominio:"> +<!ENTITY collapse.default.no.label "Uso por defecto (non)"> +<!ENTITY firstParty.label "Só de or&ixe"> +<!ENTITY preferences.label "Amo&sar os filtros existentes..."> +<!ENTITY pattern.label "Buscar unha pauta"> +<!ENTITY thirdParty.label "Só de &terceiros"> +<!ENTITY filter.label "&Filtro novo:"> +<!ENTITY collapse.label "Pr&egar bloqueados:"> +<!ENTITY match.warning "A pauta que inseriches non coincide co enderezo que queres bloquear ou pór na lista branca, polo que non terá efecto ningún."> +<!ENTITY anchor.start.label "ao come&zo do enderezo"> +<!ENTITY matchCase.label "&Caso coincidente"> +<!ENTITY custom.pattern.label "&Personalizado:"> +<!ENTITY unselectAllTypes.label "Non marcar ningún"> +<!ENTITY type.whitelist.label "E&xcepción"> +<!ENTITY regexp.warning "A pauta que inseriches interprétase como unha expresión regular, e de usares moitas poderíase facer máis lenta a navegación. Se non tes a intención de utilizar expresións regulares, engade un símbolo * ao final da pauta."> +<!ENTITY dialog.title "Engadir regra de filtrado do Adblock Plus"> +<!ENTITY basic.label "Vista básica"> +<!ENTITY type.filter.label "Filtro de &bloqueo"> +<!ENTITY types.label "Aplicar aos tipos:"> +<!ENTITY shortpattern.warning "A pauta que inseriches é demasiado curta como para ser optimizada, e de haber moitas así poderíase retardar a navegación. Recomendámosche escoller unha cadea máis longa para este filtro."> +<!ENTITY collapse.yes.label "Si"> +<!ENTITY anchors.label "Aceptar só a pauta:"> +<!ENTITY collapse.default.yes.label "Uso por defecto (si)"> +<!ENTITY domainRestriction.help "Especifica un ou máis dominios separándoos polo símbolo "|". O filtro só se aplicará nestes dominios. O símbolo "~" antes dun nome de dominio significa que o filtro non debe aplicarse sobre o devandito dominio."> +<!ENTITY accept.label "Engadir filtro"> +<!ENTITY options.label "Opcións"> +<!ENTITY disabled.warning "O Adblock Plus agora mesmo está desactivado. Aínda podes engadir os filtros, mais non se aplicarán a menos que [link]actives o Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "ao come&zo do nome do dominio"> +<!ENTITY collapse.no.label "Non"> +<!ENTITY selectAllTypes.label "Marcar todos"> +<!ENTITY advanced.label "Vista avanzada"> +<!ENTITY pattern.explanation "A pauta pode ser calquera parte do enderezo, o símbolo * úsase como comodín. O filtro só se aplicará ós enderezos que coincidan coa pauta."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/filters.dtd new file mode 100644 index 0000000..23e3259 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Tódalos os teus filtros persoalizados serán cambiados polo contido do arquivo que seleccionaches. Estás seguro?"> +<!ENTITY slow.column "Filtros le&ntos"> +<!ENTITY enabled.column "A&ctivada"> +<!ENTITY subscription.lastDownload.checksumMismatch "Erro: a proba do "checksum" seica non cadrou ben"> +<!ENTITY noFiltersInGroup.text "Seica o grupo que seleccionaches está baleiro."> +<!ENTITY subscription.actions.label "Accións"> +<!ENTITY filter.selectAll.label "Seleccionalo Todo"> +<!ENTITY backupButton.label "&Copia de Seguridade e Recuperación"> +<!ENTITY restore.minVersion.warning "Ollo: este arquivo foi creado cunha versión máis moderna do Adblock Plus. Debes actualizar a túa versión antes de recuperar o arquivo."> +<!ENTITY restore.error "Os datos do arquivo non puideron ser procesados, seica este arquivo non é unha copia de seguridade do Adblock Plus?"> +<!ENTITY sort.ascending.label "Orden&ar do "A" ao "Z""> +<!ENTITY sort.label "&Ordenar por"> +<!ENTITY subscription.source.label "Lista dos filtros"> +<!ENTITY hitcount.column "&Veces usado"> +<!ENTITY noFilters.text "Seica aínda non tes feito ningún filtro persoalizado."> +<!ENTITY backup.custom.title "Só filtros persoalizados"> +<!ENTITY subscription.external.label "Actualizado por outro complemento"> +<!ENTITY subscription.delete.label "Borrar"> +<!ENTITY noGroupSelected.text "Precisas de seleccionar un grupo antes de que se podan amosar os filtros."> +<!ENTITY filter.cut.label "Cortar"> +<!ENTITY restore.default.label "Recuperar a copia de seguridade do ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Baixando..."> +<!ENTITY subscriptions.tab.label "Suscricións aos filtros"> +<!ENTITY sort.descending.label "Ordenar do "&Z" ao "A""> +<!ENTITY filters.remove.warning "De verdade que queres eliminar tódolos filtros que seleccionaches?"> +<!ENTITY filter.delete.label "Borrar"> +<!ENTITY addSubscriptionAdd.label "Engadir"> +<!ENTITY viewMenu.label "Ver"> +<!ENTITY subscription.lastDownload.unknown "Non disponible"> +<!ENTITY addSubscriptionCancel.label "Cancelar"> +<!ENTITY subscription.enabled.label "Activado"> +<!ENTITY noSubscriptions.text "Aínda non engadiches ningunha suscrición. O Adblock Plus non che bloqueará nada se non tes filtros, por favor dalle a "Engadir suscripción ós filtros" para engadir algún."> +<!ENTITY subscription.update.label "Actualizar os filtros"> +<!ENTITY dialog.title "Preferencias dos filtros do Adblock Plus"> +<!ENTITY addFilter.label "Enga&dir filtro"> +<!ENTITY subscription.minVersion.warning "Esta suscripción ao filtro precisa dunha versión máis moderna do Adblock Plus. Deberías baixarte a última versión."> +<!ENTITY subscription.lastDownload.invalidURL "Erro: enderezo non válido"> +<!ENTITY backup.error "Seica houbo un erro ao escribir os filtros no arquivo. Mira a ver se o arquivo non está protexido contra a escritura ou está sendo uso por outro programa."> +<!ENTITY filter.moveUp.label "Subir para arriba"> +<!ENTITY addGroup.label "En&gadir grupo de filtros"> +<!ENTITY filter.edit.label "Editar"> +<!ENTITY subscription.showHideFilters.label "Amosar/agochar os filtros"> +<!ENTITY acceptableAds2.label "Perm&itir publicidade non invasiva"> +<!ENTITY addSubscriptionOther.label "Engadir outra subscrición"> +<!ENTITY close.label "Pechar"> +<!ENTITY sort.none.label "Dei&xalo todo atrapallado"> +<!ENTITY filter.actions.label "Accións dos filtros"> +<!ENTITY filter.copy.label "Copiar"> +<!ENTITY filter.moveDown.label "Baixar para abaixo"> +<!ENTITY filter.resetHitCounts.label "Resetear as estatísticas de uso"> +<!ENTITY readMore.label "Ler máis"> +<!ENTITY subscription.moveUp.label "Subir para arriba"> +<!ENTITY addSubscription.label "Engadir subscrición de &filtros"> +<!ENTITY subscription.homepage.label "Páxina"> +<!ENTITY backup.complete.title "Tódolos filtros e suscricións"> +<!ENTITY restore.own.label "Recuperar a copia de seguridade propia"> +<!ENTITY restore.complete.warning "Tódalas as túas preferencias serán cambiadas polo contido do arquivo que seleccionaches. Estás seguro?"> +<!ENTITY filters.tab.label "Filtros persoalizados"> +<!ENTITY backup.label "Facer unha nova copia de seguridade"> +<!ENTITY find.label "Busca&r"> +<!ENTITY subscription.moveDown.label "Baixar para abaixo"> +<!ENTITY subscription.lastDownload.connectionError "Erro: fallo na descarga"> +<!ENTITY subscription.lastDownload.success "Valeu"> +<!ENTITY subscription.lastDownload.invalidData "Erro: lista de filtros non válida"> +<!ENTITY filter.paste.label "Pegar"> +<!ENTITY subscription.disabledFilters.enable "Activar os filtros inactivos"> +<!ENTITY lasthit.column "Ú&ltimo uso"> +<!ENTITY subscription.editTitle.label "Editar o título"> +<!ENTITY subscription.disabledFilters.warning "Algúns filtros desta suscrición estanche desactivados."> +<!ENTITY filter.column "Regra de &filtro"> +<!ENTITY subscription.lastDownload.label "Baixado o:"> +<!ENTITY viewList.label "Qué publicidade?"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/firstRun.properties new file mode 100644 index 0000000..bb33050 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navega de xeito privado ó desactivar o seguemento - agochando as túas trazas das compañías de publicidade que doutro xeito rexistrarían os teus movementos. +firstRun_toggle_off=DESACTIVADO +firstRun_feature_tracking=Desactivar o seguimento +firstRun_feature_malware=Bloquear malware +firstRun_title=O Adblock Plus foiche instalado +firstRun_toggle_on=ACTIVADO +firstRun_acceptableAdsExplanation=Queremos animar ás páxinas web para que empreguen a publicidade dun xeito mais directo e non invasivo. É polo que fixemos unhas <a>regras moi estrictas</a> co fin de identificar a publicidade aceptable, a cal é mostrada coas opcións por defecto. Se aínda queres bloquear tódala publicidade, podes <a>desactivar</a> isto deseguido. +firstRun_contributor_credits=Coa colaboración de... +firstRun_dataCorruptionWarning=Segue a aparecer a páxina esta? <a>Fai click aquí!</a> +firstRun_acceptableAdsHeadline=A partir de agora os anuncios anoxantes seranche bloqueados +firstRun_share=Cóntalle ós teus amigos +firstRun_share_headline=<a>Bótanos unha man</a> para facer da rede un sitio mellor +firstRun_feature_social_description=Eliminar de xeito automático os botóns de redes sociais como o "gústame" do Facebook, que aparecen nás páxinas web e rexistran o teu comportamento. +firstRun_filterlistsReinitializedWarning=Semella que un problema facía que tódolos filtros fosen borrados e imposibles de restaurar. Polo tanto, tivemos que resetear os filtros e a configuración da "Publicidade Aceptable". Por favor bótalle un ollo á tua lista de filtros e á configuración de "Publicidade Aceptable" nas <a>opcións do Adblock Plus</a>. +firstRun_feature_malware_description=Fai mais seguro o teu navegador ó bloquear dominios con "malware". +firstRun_features=O Adblock Plus faiche mais cousas que bloquear publicidade +firstRun_donate=fai unha doazón +firstRun_donate_label=Apoia ó noso proxecto +firstRun_feature_social=Eliminar os botóns das redes sociais +firstRun_legacySafariWarning=Estás a empregar unha versión vella do Safari que xa non está mantida polo Adblock Plus. Podería non funcionar correctamente ou alterar a experiencia do usuario nalgunhas webs. Aconsellámosche que ou ben actualices ó Safari 6.1.1 ou superior (no OS X 10.8 Mountain Lion), ou ó Safari 7.0.1 ou superior (no OSX 10.9 Mavericks), ou empregues a última versión do Mozilla Firefox, do Google Chrome ou do Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/global.properties new file mode 100644 index 0000000..2fbc69c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Non che hai elementos bloqueables nesta páxina +action3_tooltip=Preme para activar/desactivar o Adblock Plus. +notification_antiadblock_title=Agochar mensaxes dirixidas? +type_label_script=script +filter_elemhide_nocriteria=Non se especificaron criterios para recoñecer o elemento que se quere agochar +blockingGroup_title=Reglas de bloqueo de publicidade +whitelisted_tooltip=O Adblock Plus está activo mais está desactivado nesta páxina. +type_label_stylesheet=folla de estilo +blocked_count_tooltip=?1? de ?2? +type_label_font=fonte +type_label_popup=Xanela emerxente +filter_regexp_tooltip=Este filtro é ben unha expresión regular ben é demasiado curto para ser optimizado. Se tes moitos filtros así, o navegador pode volverse máis lento. +action0_tooltip=Preme para abrir o menú contextual, e click no medio para activar/desactivar. +whitelisted_page=O Adblock Plus foi desactivado nesta páxina +remove_group_warning=É verdade que queres borrar este grupo? +action1_tooltip=Preme para abrir/pechar elementos bloqueables, e click no medio para activar/desactivar. +type_label_xmlhttprequest=solicitude XML +active_tooltip=O Adblock Plus está activo, ?1? o filtro de suscrición(s) ?2? e o(s) filtro(s) persoalizado(s) están en uso. +type_label_document=documento +type_label_object_subrequest=sub-solicitude de obxecto +whitelistGroup_title=Excepcións +disabled_tooltip=O Adblock Plus está desactivado. +filter_elemhide_duplicate_id=Só pode especificarse un ID do elemento que se quere agochar +type_label_object=obxecto +action2_tooltip=Preme para abrir as preferencias, e click no medio para activar/desactivar. +type_label_subdocument=marco +clearStats_warning=Isto vai resetear as estatísticas dos filtros e a desactivar a contabilidade do uso dos filtros. Estás seguro que o queres facer? +notification_antiadblock_message=Este sitio é coñecido por amosar mensaxes dirixidas ós usuarios do Adblock Plus. Queres que o Adblock plus agoche estas mensaxes dirixidas? +blocked_count_addendum=(tamén na Lista Branca: ?1?, agochados: ?2?) +subscription_invalid_location=Esa localización da lista de filtros non é nin unha URL válida nin un nome de arquivo válido. +type_label_image=imaxe +remove_subscription_warning=De seguro de que queres darche de baixa nesta subscrición? +type_label_other=outro +mobile_menu_enable=ABP - Activar +type_label_media=audio/vídeo +mobile_menu_disable_site=ABP - Desactivar en ?1? +elemhideGroup_title=Reglas ao agochar elementos +mobile_menu_enable_site=ABP - Activar en ?1? +type_label_elemhide=agochado +newGroup_title=Novo grupo de filtros +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/overlay.dtd new file mode 100644 index 0000000..7a68f62 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Sí"> +<!ENTITY notification.button.no "&Non"> +<!ENTITY sync.label "Sin&cronizar as opcións do Adblock Plus"> +<!ENTITY whitelist.site.label "Desactivar en ?1?"> +<!ENTITY filters.label "Pre&ferencias dos filtros"> +<!ENTITY disable.label "Desactivar en tódalas páxinas"> +<!ENTITY objecttab.title "Bloquear"> +<!ENTITY objecttab.tooltip "Fai click aquí para bloquear este obxecto co Adblock Plus"> +<!ENTITY menuitem.label "Preferencias do Ad&block Plus"> +<!ENTITY objecttabs.label "Amo&sar os separadores en Flash e Java"> +<!ENTITY sendReport.label "&Informar dun problema nesta páxina"> +<!ENTITY whitelist.page.label "Desactivar só nesta páxina"> +<!ENTITY context.image.label "ABP - Bloquear a imaxe"> +<!ENTITY counthits.label "Co&ntabilizar as veces que se usa cada filtro"> +<!ENTITY opensidebar.label "A&brir temas bloqueables"> +<!ENTITY notification.button.close "&Pechar"> +<!ENTITY contribute.label "Apoquinar ó Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "ABP - Bloquear o marco"> +<!ENTITY blocked.tooltip "Elementos bloqueados nesta páxina:"> +<!ENTITY hideplaceholders.label "Agochar o espacio deixado po&los elementos bloqueados"> +<!ENTITY showinstatusbar.label "Amosar na barra d&e estado"> +<!ENTITY sidebar.title "Temas bloqueables na páxina actual"> +<!ENTITY options.label "&Opcións"> +<!ENTITY context.object.label "ABP - Bloquear o obxecto"> +<!ENTITY context.removeWhitelist.label "ABP - Reactivado nesta páxina"> +<!ENTITY filters.tooltip "Filtros máis activos:"> +<!ENTITY closesidebar.label "Pechar temas &bloqueables"> +<!ENTITY showintoolbar.label "Amosar na barra &Ferramentas"> +<!ENTITY status.tooltip "Estado:"> +<!ENTITY context.media.label "ABP - Bloquear o audio/vídeo"> +<!ENTITY subscription.update.label "Actualizar os filtros"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/sendReport.dtd new file mode 100644 index 0000000..e2c4b96 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Desfacer"> +<!ENTITY issues.disabledgroups.description "As seguintes suscricións/grupos de filtros están desactivadas, pero poderían aínda ter efecto nesta páxina:"> +<!ENTITY showData.label "Amosar os datos do informe"> +<!ENTITY typeSelector.falsePositive.label "Seica o Adblock Plus está a bloquear de &máis"> +<!ENTITY issues.change.description "A túa configuración cambiou. Tenta recargar a páxina para probar os cambios e envía un informe se o problema aínda así non foi arranxado."> +<!ENTITY email.label "E-&mail:"> +<!ENTITY issues.openPreferences.label "Abrir as preferencias dos filtros"> +<!ENTITY sendPage.confirmation "O teu informe foi gardado. Podes acceder a él no seguinte enderezo:"> +<!ENTITY copyLink.label "&Copiar ligazón ao informe"> +<!ENTITY issues.nofilters.description "O Adblock Plus non está a bloquear nada na páxina da que informas. Seica o problema que observaches non ten relación co Adblock Plus."> +<!ENTITY sendPage.knownIssue "O problema do que informas é coñecido. Máis información:"> +<!ENTITY typeSelector.other.description "Escolle esta opción se sospeitas que o que che da problemas é o Adblock Plus e non os seus filtros."> +<!ENTITY issues.disabledgroups.enable.label "Activar suscrición/grupos de filtros"> +<!ENTITY typeWarning.override.label "Comprendido, pero aínda a&sí quero mandar o informe"> +<!ENTITY issues.disabled.enable.label "Activar o Adblock Plus"> +<!ENTITY update.fixed.description "Se cadra a actualización dos filtros resolveu o problema do que informabas. Tenta recargar a páxina e se o problema mantense, dalle de novo a Informar."> +<!ENTITY anonymous.label "Informe &anónimo"> +<!ENTITY reloadButton.label "&Recargar a páxina"> +<!ENTITY recentReports.clear.label "Bo&rrar tódolos informes"> +<!ENTITY typeSelector.description "Esta xanela vaiche guiar a través dos pasos necesarios para a presentación dun informe de problema no Adblock Plus. Primeiro, selecciona o tipo de problema que atopaches nesta páxina:"> +<!ENTITY screenshot.remove.label "&Borrar información persoal"> +<!ENTITY issues.ownfilters.description "Algúns dos filtros que se aplican nesta páxina foron definidos polo usuario. Desactiva os filtros que poidan ter causado o problema:"> +<!ENTITY update.inProgress.description "O Adblock Plus precisa de actualizar as túas suscricións para estar seguros de que este tema aínda non fora resolto. Acouga un intre..."> +<!ENTITY sendPage.retry.label "Mandar de novo"> +<!ENTITY data.label "Datos do in&forme:"> +<!ENTITY recentReports.label "Informes que mandaches fai pouco"> +<!ENTITY typeWarning.description "Indicaches que queres informar dun problema co Adblock Plus e non cos filtros. Ten en conta que estos temas é mellor comentalos na [link]conferencia do Adblock Plus[/link]. Só deberías usar o xerador de informes de problemas para aportar a unha discusión xa existente, xa que ninguén verá o teu informe a non ser que inclúas a ligazón ó mesmo. A ligazón xerada automáticamente serache dada tras mandar o reporte."> +<!ENTITY issues.disabled.description "O Adblock Plus estache desactivado e non vai facer nada mentres o manteñas deste xeito."> +<!ENTITY attachExtensions.label "Engadir ó informe unha lista das e&xtensións activas, por se unha incompatibilidade con outra extensión é a causa do problema"> +<!ENTITY issues.nosubscriptions.add.label "Engadir suscrición de filtro"> +<!ENTITY issues.disabledfilters.enable.label "Activar filtro"> +<!ENTITY issues.override.label "A &configuración está ben, podes continuar tranquilo co informe"> +<!ENTITY issues.nosubscriptions.description "Non semellas estar suscrito a ningunha lista de filtros, as cales bloquean automáticamente contido non deseado nas páxinas."> +<!ENTITY typeSelector.falsePositive.description "Selecciona esta opción se a páxina non ten contido importante, se ésta amósase incorrectamente ou non funciona correctamente. Podes determinar se Adblock Plus é a causa do problema desactivándoo temporalmente."> +<!ENTITY typeSelector.other.label "Ou&tro problema"> +<!ENTITY emailComment.label "Recomenámosche que poñas un e-mail válido, para que deste xeito poidamos contactar contigo se temos algunha pregunta sobre o teu informe. Isto tamén nos permite recoñecer as túas contribucións e darlles unha prioridade mais alta."> +<!ENTITY issues.whitelist.remove.label "Reactivar o Adblock Plus nesta páxina"> +<!ENTITY outdatedSubscriptions.description "As seguintes suscricións de filtros non foron actualizadas en alomenos dúas semanas. Tenta actualizalas antes de mandarnos un informe, xa que o problema podería estar xa arranxado."> +<!ENTITY dataCollector.description "Agarda un intre mentres Adblock Plus reúne os datos necesarios."> +<!ENTITY sendButton.label "Ma&ndar o informe"> +<!ENTITY comment.label "&Comentario (opcional):"> +<!ENTITY sendPage.errorMessage "O intento de envio fallou co código de erro "?1?". Por favor asegurate que estás conectado a Internet e volta a intentalo. Se segue o problema, pide axuda na [link]conferencia do Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Amosar os informes que mandaches fai pouco"> +<!ENTITY commentPage.heading "Comentar"> +<!ENTITY update.start.label "Comezar coa actualización"> +<!ENTITY issues.disabledfilters.description "Os seguintes filtros están desactivados, aínda que poderían ter efecto nesta páxina:"> +<!ENTITY screenshot.description "A mesma páxina pode parecer diferente según quen a mire. Para axudarnos a comprender o problema, estaría ben se nos mandases un pantallazo no teu informe. Podes borrar as partes da imaxe que teñan información privada e tamén salientar as partes na que o problema é visible. Para facer isto, fai click co botón correspondente e selecciona unha parte da imaxe co rato."> +<!ENTITY screenshot.attach.label "Engadir un pan&tallazo ó informe"> +<!ENTITY issues.whitelist.description "Tes desactivado o Adblock Plus na páxina da que informas. Por favor reactívao e dalle a recargar a páxina antes de mandar o informe para axudarnos a investigar o problema."> +<!ENTITY typeSelector.falseNegative.label "O Ad&block Plus non está a bloquear ningún elemento"> +<!ENTITY typeSelector.heading "Selecciona o tipo de problema"> +<!ENTITY anonymity.warning "Non poderemos responderche, polo que lle daremos unha prioridade máis baixa."> +<!ENTITY wizard.title "Xerador de informes de problemas"> +<!ENTITY issues.ownfilters.disable.label "Desactivar filtro"> +<!ENTITY commentPage.description "O campo de texto xusto debaixo permíteche comentar o problema. Este paso é opcional pero o recomendamos se o problema non che é claro. Poderás revisar os datos do informe antes de envialo."> +<!ENTITY comment.lengthWarning "O teu comentario ten mais de 1000 caracteres, e só os primeiros 1000 serán enviados."> +<!ENTITY typeSelector.falseNegative.description "Escolla esta opción se aparece publicidade aínda a pesar de estar activado o Adblock Plus."> +<!ENTITY sendPage.waitMessage "Agarda namentres o Adblock Plus manda o teu informe."> +<!ENTITY dataCollector.heading "Benvido ao Xerador de Informes de Problemas"> +<!ENTITY screenshot.heading "Engadir pantallazo"> +<!ENTITY sendPage.heading "Mandar o informe"> +<!ENTITY issues.subscriptionCount.description "Seica tes suscricións de máis. Isto non é nada recomendable, xa que aumenta a posibilidade de erro. Tampouco aceptamos o teu informe xa que non está claro cal é a suscripción que está a causar o problema. Tenta eliminar os filtros que non sexan necesarios e olla se aínda segues a ter o problema."> +<!ENTITY screenshot.mark.label "&Marcar o problema"> +<!ENTITY privacyPolicy.label "Política de privacidade"> +<!ENTITY issues.description "Adblock Plus detectou uns problemiñas coa túa configuración que poderían ser a causa deste erro ou facer a investigación do problema mais difícil."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/sidebar.dtd new file mode 100644 index 0000000..f32368a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Salientar os bordos do elemento"> +<!ENTITY address.label "Enderezo"> +<!ENTITY context.open.label "Abrir nunha lapela nova"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Fonte do filtro:"> +<!ENTITY noitems.label "Non che hai temas bloqueables"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Tamaño:"> +<!ENTITY reattach.label "Unir de novo"> +<!ENTITY search.label "&Procurar:"> +<!ENTITY docDomain.thirdParty "(terceiros)"> +<!ENTITY filterSource.label "Fonte do filtro"> +<!ENTITY tooltip.docDomain.label "Documento fonte:"> +<!ENTITY context.copy.label "Copiar o enderezo do elemento"> +<!ENTITY tooltip.type.label "Tipo"> +<!ENTITY context.disablefilter.label "Desactivar o filtro ?1?"> +<!ENTITY context.copyFilter.label "Copiar o filtro"> +<!ENTITY context.block.label "Bloquear este elemento"> +<!ENTITY context.enablefilter.label "Activar o filtro ?1?"> +<!ENTITY detach.label "Separar"> +<!ENTITY whitelisted.label "Páxina da Lista Branca"> +<!ENTITY context.disablefilteronsite.label "Desactivar este filtro en ?1?"> +<!ENTITY detached.title "Adblock Plus: Temas bloqueables (separados)"> +<!ENTITY docDomain.firstParty "(orixinal)"> +<!ENTITY tooltip.type.whitelisted "(engadido á lista branca)"> +<!ENTITY tooltip.filter.label "Filtro activo:"> +<!ENTITY tooltip.filter.disabled "(desactivado)"> +<!ENTITY context.editfilter.label "Editar o filtro activo"> +<!ENTITY tooltip.type.blocked "(bloqueado)"> +<!ENTITY size.label "Tamaño"> +<!ENTITY context.whitelist.label "Engadir excepción para este elemento"> +<!ENTITY context.selectAll.label "Seleccionalo todo"> +<!ENTITY state.label "Estado"> +<!ENTITY docDomain.label "Documento fonte"> +<!ENTITY tooltip.address.label "Enderezo:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/subscriptionSelection.dtd new file mode 100644 index 0000000..5664d19 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/gl/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Engadir tamén a &suscrición de filtro "?1?""> +<!ENTITY list.download.failed "Fallo na recuperación da lista de suscricións."> +<!ENTITY list.download.retry "Téntao de novo"> +<!ENTITY title.label "&Título da suscrición:"> +<!ENTITY list.download.website "Ver páxina web"> +<!ENTITY supplementMessage "Esta suscrición de filtro está feita para ser usada en conxunto coa suscrición de filtro "?1?" que aínda non engadiches."> +<!ENTITY viewList.label "Ver os filtros"> +<!ENTITY visitHomepage.label "Visita a páxina de inicio"> +<!ENTITY addSubscription.label "Engadir suscrición"> +<!ENTITY dialog.title "Engadir a suscrición aos filtros do Adblock Plus"> +<!ENTITY location.label "&Localización da lista dos Filtros:"> +<!ENTITY fromWeb.description "Por favor, confirma que queres engadir esta suscrición de filtro. Podes cambiar o título ou a situación da suscrición antes de engadila."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/composer.dtd new file mode 100644 index 0000000..bad38a4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "&בסוף הכתובת"> +<!ENTITY domainRestriction.label "&הגבלה לשם מרחב:"> +<!ENTITY collapse.default.no.label "שימוש בברירת מחדל (לא)"> +<!ENTITY firstParty.label "צד-ראשון (יוצר) בלבד"> +<!ENTITY preferences.label "&הצגת המסננים הקיימים..."> +<!ENTITY pattern.label "חיפוש אחר דפוס"> +<!ENTITY thirdParty.label "&צד-שלישי בלבד"> +<!ENTITY filter.label "&מסנן חדש:"> +<!ENTITY collapse.label "&צמצום החסומים:"> +<!ENTITY match.warning "הדפוס שהוזן איננו תואם יותר לכתובת החסימה/הרשימות הלבנות ואיננו משפיע עוד."> +<!ENTITY anchor.start.label "&בתחילת הכתובת"> +<!ENTITY matchCase.label "&התאמת אותיות גדולות/קטנות"> +<!ENTITY custom.pattern.label "&מותאם:"> +<!ENTITY unselectAllTypes.label "לא לבחור דבר"> +<!ENTITY type.whitelist.label "&חוק חריג"> +<!ENTITY regexp.warning "הדפוס שהוזן יפורש כביטוי רגיל. ביטויים רגילים רבים עשויים להאט את הגלישה. אם אין כוונה להשתמש בביטויים רגילים, יש להוסיף את הסמל * בסוף התבנית."> +<!ENTITY dialog.title "הוספת חוק סינון Adblock Plus"> +<!ENTITY basic.label "תצוגה בסיסית"> +<!ENTITY type.filter.label "&מסנן חסימה"> +<!ENTITY types.label "החלה על הסוגים:"> +<!ENTITY shortpattern.warning "הדפוס שהוזן קצר מדי בכדי להיות יעיל, דפוסים רבים מסוג זה עשויים להאט את הגלישה. מומלץ לבחור מחרוזת ארוכה יותר למסנן זה."> +<!ENTITY collapse.yes.label "כן"> +<!ENTITY anchors.label "הסכמה לדפוס בלבד:"> +<!ENTITY collapse.default.yes.label "שימוש בברירת מחדל (כן)"> +<!ENTITY domainRestriction.help "מרחב אחד או יותר מופרדים על ידי הסמל "|", המסנן יאפשר מרחבים אלו בלבד. הסמל "~" לפני שם המרחב משמעותו שמסנן זה מנוטרל על מרחב זה."> +<!ENTITY accept.label "הוספת מסנן"> +<!ENTITY options.label "אפשרויות"> +<!ENTITY disabled.warning "Adblock Plus מנוטרל כרגע. ניתן עדיין להוסיף מסננים לרשימה, אבל הם לא יחולו אלא אם [link]Adblock Plus מאפשר [/link]."> +<!ENTITY anchor.start.flexible.label "&בתחילת שם המתחם"> +<!ENTITY collapse.no.label "לא"> +<!ENTITY selectAllTypes.label "בחירת הכל"> +<!ENTITY advanced.label "תצוגה מתקדמת"> +<!ENTITY pattern.explanation "הדפוס יכול להיות כל חלק מהכתובת, סמל * משמש כתו חופשי שאחריו יכול לבוא כל תו אחר. המסנן יכול להחיל רק על כתובות המתאימות לתבנית."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/filters.dtd new file mode 100644 index 0000000..54dfd2f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "כל המסננים האישיים שלך יוחלפו בתוכן הקובץ הנבחר. האם להמשיך?"> +<!ENTITY slow.column "&מסננים אטיים"> +<!ENTITY enabled.column "&מאפשר"> +<!ENTITY subscription.lastDownload.checksumMismatch "נכשל, ביקורת הסיכום לתקינות לא התאימה בצורה טובה"> +<!ENTITY noFiltersInGroup.text "הקבוצה הנבחרת ריקה"> +<!ENTITY subscription.actions.label "פעולות"> +<!ENTITY filter.selectAll.label "בחירת הכל"> +<!ENTITY backupButton.label "&גיבוי ושחזור"> +<!ENTITY restore.minVersion.warning "אזהרה: הקובץ נוצר על-ידי גרסה חדשה יותר של Adblock Plus. כדי לשדרג לגרסה האחרונה של Adblock Plus לפני שחזור מקובץ זה."> +<!ENTITY restore.error "לא ניתן לעבד המידע בקובץ. אולי זה לא קובץ גיבוי של Adblock Plus?"> +<!ENTITY sort.ascending.label "&מיון מ- א > עד ת"> +<!ENTITY sort.label "&מיון לפי"> +<!ENTITY subscription.source.label "רשימת מסננים"> +<!ENTITY hitcount.column "&לחיצות"> +<!ENTITY noFilters.text "עדיין לא הוספו מסננים אישיים."> +<!ENTITY backup.custom.title "מסננים מותאמים בלבד"> +<!ENTITY subscription.external.label "התעדכן על ידי הרחבה אחרת"> +<!ENTITY subscription.delete.label "מחיקה"> +<!ENTITY noGroupSelected.text "צריך לבחור קבוצת סינון לפני שהמסננים שלה יוצגו."> +<!ENTITY filter.cut.label "גזירה"> +<!ENTITY restore.default.label "שחזור הגיבוי מ- ?1?"> +<!ENTITY subscription.lastDownload.inProgress "מוריד..."> +<!ENTITY subscriptions.tab.label "הרשמות מסננים"> +<!ENTITY sort.descending.label "&מיון מ- ת > עד א"> +<!ENTITY filters.remove.warning "האם להסיר את כל המסננים הנבחרים?"> +<!ENTITY filter.delete.label "מחיקה"> +<!ENTITY addSubscriptionAdd.label "הוספה"> +<!ENTITY viewMenu.label "תצוגה"> +<!ENTITY subscription.lastDownload.unknown "לא זמין"> +<!ENTITY addSubscriptionCancel.label "ביטול"> +<!ENTITY subscription.enabled.label "מאפשר"> +<!ENTITY noSubscriptions.text "עדיין לא הוספת הרשמות למסננים. Adblock Plus לא יחסום דבר ללא מסננים, אנא השתמשו ב-"הוספת הרשמה למסננים" להוספת מסננים."> +<!ENTITY subscription.update.label "עדכון מסננים"> +<!ENTITY dialog.title "העדפות סינון Adblock Plus"> +<!ENTITY addFilter.label "&הוספת מסנן"> +<!ENTITY subscription.minVersion.warning "הרשמת מסננים זאת דורשת גרסה חדשה יותר של Adblock Plus, צריך לשדרג לגרסה האחרונה של Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "נכשל, הכתובת שגויה"> +<!ENTITY backup.error "אירעה שגיאה ברשימת המסננים לקובץ. יש לוודא כי הקובץ לא מוגן לכתיבה או בשימוש על-ידי יישום אחר."> +<!ENTITY filter.moveUp.label "הזזה מעלה"> +<!ENTITY addGroup.label "הוספת &קבוצת סינון"> +<!ENTITY filter.edit.label "עריכה"> +<!ENTITY subscription.showHideFilters.label "הצגת/הסתרת מסננים"> +<!ENTITY acceptableAds2.label "&אפשור קצת פרסום לא פולשני"> +<!ENTITY addSubscriptionOther.label "הוספת הרשמה אחרת"> +<!ENTITY close.label "סגירה"> +<!ENTITY sort.none.label "&לא ממוין"> +<!ENTITY filter.actions.label "פעולות מסנן"> +<!ENTITY filter.copy.label "העתקה"> +<!ENTITY filter.moveDown.label "הזזה מטה"> +<!ENTITY filter.resetHitCounts.label "איפוס סטטיסטיקות לחיצה"> +<!ENTITY readMore.label "לקרוא עוד"> +<!ENTITY subscription.moveUp.label "הזזה מעלה"> +<!ENTITY addSubscription.label "&הוספת הרשמת מסנן"> +<!ENTITY subscription.homepage.label "עמוד בית"> +<!ENTITY backup.complete.title "כל המסננים וההרשמות"> +<!ENTITY restore.own.label "שחזור גיבוי משלי"> +<!ENTITY restore.complete.warning "כל הגדרות המסננים שלך יוחלפו בתוכן הקובץ הנבחר. האם להמשיך?"> +<!ENTITY filters.tab.label "מסננים מותאמים"> +<!ENTITY backup.label "יצירת גיבוי חדש"> +<!ENTITY find.label "&חיפוש"> +<!ENTITY subscription.moveDown.label "הזזה מטה"> +<!ENTITY subscription.lastDownload.connectionError "נכשל, ההורדה נכשלה"> +<!ENTITY subscription.lastDownload.success "הצליח"> +<!ENTITY subscription.lastDownload.invalidData "נכשל, רשימת המסננים לא חוקית"> +<!ENTITY filter.paste.label "הדבקה"> +<!ENTITY subscription.disabledFilters.enable "אפשר מסננים מנוטרלים"> +<!ENTITY lasthit.column "&לחיצה אחרונה"> +<!ENTITY subscription.editTitle.label "עריכת הכותרת"> +<!ENTITY subscription.disabledFilters.warning "כמה מהמסננים בהרשמה זאת מנוטרלים."> +<!ENTITY filter.column "חוק &סינון"> +<!ENTITY subscription.lastDownload.label "הורדה אחרונה:"> +<!ENTITY viewList.label "הצגת רשימה"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/firstRun.properties new file mode 100644 index 0000000..b1b4799 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=גלשו באנונימיות בעזרת נטרול מעקב - הסתרת עקבותיכם מחברות המודעות אשר עוקבות אחר כל פעולה שלכם. +firstRun_toggle_off=מכובה +firstRun_feature_tracking=נטרול מעקב +firstRun_feature_malware=חסימת תוכנות זדוניות +firstRun_title=Adblock Plus הותקן +firstRun_acceptableAdsExplanation=אנחנו רוצים לעודד אתרים להשתמש בפרסום פשוט ולא בולט. זאת מדוע ביססנו <a>קווים מנחים נוקשים</a> כדי לזהות מודעות מתקבלות, אשר מופיעות בהגדרות ברירת המחדל. אם ברצונכם לחסום בכל זאת את כל המודעות ניתן <a>לנטרל</a> זאת במספר שניות. +firstRun_toggle_on=מופעל +firstRun_contributor_credits=קרדיטים לתורמים +firstRun_dataCorruptionWarning=עמוד זה ממשיך להופיע ? <a>לחצו כאן!</a> +firstRun_acceptableAdsHeadline=מודעות מציקות ייחסמו מעכשיו +firstRun_share=ספרו לחבריכם ומשפחתכם +firstRun_share_headline=<a>תנו לנו יד</a> בהפיכת הרשת למקום טוב יותר +firstRun_features=Adblock Plus יכול לעשות יותר מרק לחסום פרסומות +firstRun_feature_malware_description=הפכו את הגלישה שלכם למאובטחת יותר על ידי חסימת אתרים המכילים תוכנה זדונית. +firstRun_feature_social_description=שחררו אוטומטית את חווית הגלישה שלכם מכפתורי מדיה חברתית, כגון Facebook Like, אשר מופיעים בעמודי אינטרנט ומנתרים את התנהגותכם. +firstRun_donate=תרומה +firstRun_donate_label=תמיכה בפרויקט שלנו +firstRun_feature_social=הסרת כפתורי מדיה חברתיים +firstRun_legacySafariWarning=הנכם משתמשים בגירסה ישנה של Safari שלא נתמכת על ידי Adblock Plus. זה עלול לא לעבוד כראוי או לשבש את חווית המשתמש בחלק מהאתרים. אנו ממליצים לכם לעדכן את Safari לגרסה 6.1.1 ומעלה (OS X 10.8 Mountain Lion) או Safari 7.0.1 ומעלה (OS X 10.9 Mavericks) או להשתמש בגרסה האחרונה של Mozilla Firefox, Google Chrome or Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/global.properties new file mode 100644 index 0000000..eee273a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=אין פריטים לחסימה בעמוד הנוכחי +action3_tooltip=לחיצה כדי לאפשר/לנטרל את Adblock Plus. +notification_antiadblock_title=הסתרת הודעות מוכוונות? +type_label_script=תסריט +filter_elemhide_nocriteria=לא צוין קריטריון לזיהוי האלמנט שיוסתר +blockingGroup_title=כללי חסימת מודעות +whitelisted_tooltip=Adblock Plus עובד אבל הוא מנוטרל בעמוד הנוכחי. +type_label_stylesheet=סגנון +blocked_count_tooltip=?1? מתוך ?2? +type_label_font=גופן +type_label_popup=חלון קופץ +filter_regexp_tooltip=מסנן זה הוא ביטוי רגיל או קצר מדי מכדי להיות מיטבי. יותר מדי מסננים מסוג זה יכולים להאט את הגלישה. +action0_tooltip=לחיצה כדי להציג את תפריט הלחצן הימני, לחיצה אמצעית כדי לאפשר/לנטרל. +whitelisted_page=Adblock Plus מנוטרל עבור העמוד הנוכחי +remove_group_warning=האם באמת ברצונך להסיר קבוצה זו? +action1_tooltip=לחיצה כדי לפתוח/לסגור את רשימת הפריטים לחסימה, לחיצה אמצעית כדי לאפשר/לנטרל. +type_label_xmlhttprequest=בקשת XML +active_tooltip=Adblock Plus מאפשר, ?1? הרשמת(ות) מסננים ו ?2? מסנן(ים) מותאמים בשימוש. +type_label_document=מסמך +type_label_object_subrequest=תת-דרישת אובייקט +whitelistGroup_title=כללים חריגים +disabled_tooltip=Adblock Plus מנוטרל. +filter_elemhide_duplicate_id=רק זהות אחת של האלמנט שיוסתר ניתנת לציון +type_label_object=אובייקט +action2_tooltip=לחיצה כדי לפתוח את המאפיינים, לחיצה אמצעית כדי לאפשר/לנטרל. +type_label_subdocument=מסגרת +clearStats_warning=זה יאפס את כל סטטיסטיקות הלחיצה של המסננים וינטרל את מניית הלחיצה של המסנן. האם להמשיך? +notification_antiadblock_message=אתר זה ידוע בהצגת הודעות מכוונות למשתמשי Adblock Plus. האם ברצונכם ש-Adblock Plus יסתיר הודעות מוכוונות? +blocked_count_addendum=(גם כן ברשימת המורשים: ?1?, מוסתר: ?2?) +subscription_invalid_location=מיקום רשימת הסינון איננו כתובת אתר חוקית ולא שם קובץ חוקי. +type_label_image=תמונה +remove_subscription_warning=האם להסיר את ההרשמה הזאת? +type_label_other=אחר +mobile_menu_enable=ABP: מאפשר +type_label_media=אודיו/וידאו +mobile_menu_disable_site=ABP: מנטרל ב-?1? +elemhideGroup_title=כללי הסתרת אלמנטים +mobile_menu_enable_site=ABP: מאפשר ב-?1? +type_label_elemhide=מוסתר +newGroup_title=קבוצת מסננים חדשה +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/overlay.dtd new file mode 100644 index 0000000..96b0652 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&כן"> +<!ENTITY notification.button.no "&לא"> +<!ENTITY sync.label "&סנכרון הגדרות Adblock Plus"> +<!ENTITY whitelist.site.label "נטרול ב-?1?"> +<!ENTITY filters.label "&העדפות סינון"> +<!ENTITY disable.label "נטרול בכל מקום"> +<!ENTITY objecttab.title "חסימה"> +<!ENTITY objecttab.tooltip "לחיצה כאן לחסימת פריט זה עם Adblock Plus"> +<!ENTITY menuitem.label "&העדפות Adblock Plus"> +<!ENTITY objecttabs.label "הצגת &לשוניות על פלאש וג'אווה"> +<!ENTITY sendReport.label "&דיווח על בעיה בעמוד זה"> +<!ENTITY whitelist.page.label "נטרול בעמוד הזה בלבד"> +<!ENTITY context.image.label "Adblock Plus: חסימת תמונה"> +<!ENTITY counthits.label "מנה &לחיצות מסנן"> +<!ENTITY opensidebar.label "&פתיחת רשימת הפריטים לחסימה"> +<!ENTITY notification.button.close "&סגירה"> +<!ENTITY contribute.label "תרום ל-Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: חסימת מסגרת (פריים)"> +<!ENTITY blocked.tooltip "פריטים חסומים בעמוד זה:"> +<!ENTITY hideplaceholders.label "הסתרת &מצייני מקום של אלמנטים חסומים"> +<!ENTITY showinstatusbar.label "&הצגה בשורת המצב"> +<!ENTITY sidebar.title "פריטים לחסימה בעמוד הנוכחי"> +<!ENTITY options.label "&אפשרויות"> +<!ENTITY context.object.label "Adblock Plus: חסימת פריט"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: מאפשר מחדש בעמוד זה"> +<!ENTITY filters.tooltip "המסננים הפעילים ביותר:"> +<!ENTITY closesidebar.label "&סגירת הרשימה של הפריטים לחסימה"> +<!ENTITY showintoolbar.label "&הצגה בסרגל הכלים"> +<!ENTITY status.tooltip "מצב:"> +<!ENTITY context.media.label "Adblock Plus: חסימת ווידאו/אודיו"> +<!ENTITY subscription.update.label "עדכון מסננים"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/sendReport.dtd new file mode 100644 index 0000000..7a042c1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/sendReport.dtd @@ -0,0 +1,66 @@ +<!ENTITY screenshot.undo.label "&ביטול"> +<!ENTITY issues.disabledgroups.description "קבוצות ההרשמה/המסננים הבאות מנוטרלות, לפי שעה אולי יש להם השפעה על עמוד זה:"> +<!ENTITY showData.label "הצגת מידע של הדיווח"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus חוסם יותר &מדי"> +<!ENTITY issues.change.description "התצורה שלכם שונתה. יש לרענן את העמוד כדי לבחון את השינויים ולהזין דיווח אם הבעיה לא נפתרה בעקבות השינוי."> +<!ENTITY email.label "&דוא"ל:"> +<!ENTITY issues.openPreferences.label "פתיחת העדפות סינון"> +<!ENTITY sendPage.confirmation "הדיווח שלכם נשמר. ניתן לגשת אליו בכתובת הבאה:"> +<!ENTITY copyLink.label "&העתקת הקישור לדיווח"> +<!ENTITY issues.nofilters.description "Adblock Plus לא חוסם דבר בעמוד הנוכחי. הבעיה אשר מבחינים קרוב לוודאי איננה קשורה ל-Adblock Plus."> +<!ENTITY sendPage.knownIssue "הבעיה שדווחה קרוב לוודאי שידועה כבר. מידע נוסף:"> +<!ENTITY typeSelector.other.description "בחירת אפשרות זו בחשד לבעיה עם Adblock Plus עצמו ולא במסננים שלו."> +<!ENTITY issues.disabledgroups.enable.label "אפשור ההרשמה/קבוצת המסננים"> +<!ENTITY typeWarning.override.label "אני &מבין ורוצה לשלוח את הדיווח בכל זאת"> +<!ENTITY issues.disabled.enable.label "אפשור Adblock Plus"> +<!ENTITY update.fixed.description "אפשרי שעדכון הרשמות המסננים שלכם יפתור את הבעיה שדווחה. אנא רעננו את העמוד ונסו שוב, לחצו על דיווח שוב אם הבעיה נשארת."> +<!ENTITY anonymous.label "הגשה &אנונימית"> +<!ENTITY reloadButton.label "&רענון העמוד"> +<!ENTITY recentReports.clear.label "&הסרת כל הדיווחים"> +<!ENTITY typeSelector.description "חלון זה ידריך אתכם דרך הצעדים הדרושים להזנת דיווח בעיה עבור Adblock Plus. ראשית, אנא בחרו את סוג הבעיה אשר אתם חווים בעמוד זה:"> +<!ENTITY screenshot.remove.label "&הסרת מידע רגיש"> +<!ENTITY issues.ownfilters.description "חלק מהמסננים שחלים על עמוד זה הם מוגדרי-משתמש. יש לנטרל את המסננים אשר אולי הם הגורמים לבעיה:"> +<!ENTITY update.inProgress.description "Adblock Plus צריך לעדכן את הרשמות המסננים כדי לוודא שהבעיה לא נפתרה כבר. אנא אנא המתינו..."> +<!ENTITY sendPage.retry.label "שלח שוב"> +<!ENTITY data.label "&מידע הדיווח:"> +<!ENTITY recentReports.label "דיווחים אחרונים שלך שנשלחו"> +<!ENTITY typeWarning.description "ציינתם שאתם מעוניינים לדווח על בעיה כללית עם Adblock Plus מאשר בעיה עם המסננים. שימו לב שבעיות כאלו עדיף לדווח ב[link]פורום Adblock Plus[/link]. יש להשתמש במדווח הבעיות רק בנוסף לדיון קיים, כיוון שאף אחד לא ישים לב לדיווח שלכם אלא אם יסופק קישור אליו. הקישור שנוצר אוטומטית יסופק לאחר הזנת הדיווח."> +<!ENTITY issues.disabled.description "Adblock Plus מנוטרל, זה לא יחסום דבר במצב הנוכחי."> +<!ENTITY attachExtensions.label "סיפוח רשימת &ההרחבות הפעילות אל הדיווח במקרה וניגוד תוספות הוא הגורם לבעיה"> +<!ENTITY issues.nosubscriptions.add.label "הוספת הרשמת מסנן"> +<!ENTITY issues.disabledfilters.enable.label "אפשור מסנן"> +<!ENTITY issues.override.label "&התצורה נכונה, אפשר להמשיך עם הדיווח"> +<!ENTITY issues.nosubscriptions.description "נראה שאינכם רשומים לשום מסנן שהוכן מראש אשר מופיע ברשימה שמסיר אוטומטית תוכן לא רצוי מאתרי אינטרנט."> +<!ENTITY typeSelector.falsePositive.description "בחר באפשרות זו אם חסר בעמוד תוכן חשוב או שמוצג בצורה לא נכונה או כושל לתפקד כראוי. ניתן לקבוע האם Adblock Plus הוא הגורם לבעיה על ידי נטרולו זמנית."> +<!ENTITY typeSelector.other.label "בעיה &אחרת"> +<!ENTITY emailComment.label "אנו ממליצים להזין כתובת דוא"ל תקפה, כך שנוכל ליצור איתך קשר אם קיימות שאלות לגבי הדוח שלך. +כמו כן, כתובתך תאפשר לנו לזהות את תרומותייך ולתעדף אותן בצורה גבוהה יותר."> +<!ENTITY issues.whitelist.remove.label "אפשור מחדש של Adblock Plus בעמוד זה"> +<!ENTITY outdatedSubscriptions.description "הרשמות המסננים הבאות לא עודכנו לפחות שבועיים. אנא עדכנו הרשמות אלו לפני שליחת הדיווח, יכול להיות שהבעיה נפתרה כבר."> +<!ENTITY dataCollector.description "אנא המתינו מספר רגעים עד אשר Adblock Plus יאסוף את המידע הדרוש."> +<!ENTITY sendButton.label "&שליחת דיווח"> +<!ENTITY comment.label "&הערה (לא חובה):"> +<!ENTITY sendPage.errorMessage "נכשל ניסיון השליחה של הדיווח עם קוד השגיאה "?1?". אנא וודאו שאתם מחוברים לאינטרנט ונסו שוב. אם הבעיה נמשכת, אנא בקשו סיוע ב[link]פורום Adblock Plus[/link]LL."> +<!ENTITY showRecentReports.label "הצגת הדיווחים האחרונים שנשלחו"> +<!ENTITY commentPage.heading "הזנת תגובה"> +<!ENTITY update.start.label "התחל לעדכן כעת"> +<!ENTITY issues.disabledfilters.description "המסננים הבאים מנוטרלים, לפי שעה אולי יש להם השפעה על עמוד זה:"> +<!ENTITY screenshot.description "עמוד זהה יכול להראות שונה לאנשים שונים. אם תצורף תמונת מסך לדיווח, זה אולי יעזור לנו להבין את הבעיה. ניתן להסיר חלקים המכילים מידע רגיש וכמו כן לסמן אזורים שבהם הבעיה מובחנת. כדי לעשות זאת יש ללחוץ על כפתור ההתכתבות ולבחור עם העכבר חלק מהתמונה."> +<!ENTITY screenshot.attach.label "&צרף תמונת דף לדיווח"> +<!ENTITY issues.whitelist.description "Adblock Plus מנוטרל כעת בעמוד אשר מדווח. יש לאפשר אותו מחדש ולרענן את העמוד לפני הזנת הדיווח על מנת לסייע בחקירת בעיה זו."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus איננו חוסם &פרסומות"> +<!ENTITY typeSelector.heading "בחירת סוג הבעיה"> +<!ENTITY anonymity.warning "לא נוכל לחזור אליך, וסביר שנתעדף את הדוח בצורה נמוכה יותר."> +<!ENTITY wizard.title "מדווח הבעיות"> +<!ENTITY issues.ownfilters.disable.label "נטרול מסנן"> +<!ENTITY commentPage.description "שדה הטקסט שמתחת מאפשר הזנת תגובה כדי לסייע לנו בהבנת הבעיה. צעד זה איננו בגדר חובה אך מומלץ אם הבעיה איננה מובנת מאליה. ניתן גם לסקור את נתוני הדיווח לפני שהוא נשלח."> +<!ENTITY comment.lengthWarning "אורך ההודעה חרג מ-1000 תווים. רק 1000 התווים הראשונים ישלחו."> +<!ENTITY typeSelector.falseNegative.description "בחירת אפשרות זו אם מוצגת פרסומת למרות ש-Adblock Plus מאפשר."> +<!ENTITY sendPage.waitMessage "אנא המתינו בזמן ש-Adblock Plus מזין את הדיווח שלכם."> +<!ENTITY dataCollector.heading "ברוכים הבאים למדווח הבעיות"> +<!ENTITY screenshot.heading "צירוף צילום מסך"> +<!ENTITY sendPage.heading "שליחת דיווח"> +<!ENTITY issues.subscriptionCount.description "נראה שאתם רשומים ליותר מדי הרשמות מסננים. מערך זה איננו מומלץ מכיוון שזה יגרום לסיכוי לבעיות להיות הרבה יותר גבוה. אנחנו גם לא נוכל לקבל את דיווחי הבעיות שלכם מכיוון שלא ברור איזה מחבר הרשמות מסנן צריך לנקוט בפעולה. אנא הסירו את כל הרשמות המסננים פרט לאלו שבאמת נחוצות ובדקו האם אז הבעיה עדיין מתרחשת."> +<!ENTITY screenshot.mark.label "&סמן את הבעיה"> +<!ENTITY privacyPolicy.label "הצהרת פרטיות"> +<!ENTITY issues.description "Adblock Plus זיהה בעיות עם התצורה שלכם שאולי אחראית לבעיה זו או שיגרום לחקירת הדיווח לקשה."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/sidebar.dtd new file mode 100644 index 0000000..3cac07a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "גבולות פריט הפלאש"> +<!ENTITY address.label "כתובת"> +<!ENTITY context.open.label "פתיחה בלשונית חדשה"> +<!ENTITY type.label "סוג"> +<!ENTITY tooltip.filterSource.label "מקור מסנן"> +<!ENTITY noitems.label "אין פריטים הניתנים לחסימה"> +<!ENTITY filter.label "מסנן"> +<!ENTITY tooltip.size.label "גודל:"> +<!ENTITY reattach.label "חיבור"> +<!ENTITY search.label "&חיפוש:"> +<!ENTITY docDomain.thirdParty "(צד שלישי)"> +<!ENTITY filterSource.label "מקור המסנן"> +<!ENTITY tooltip.docDomain.label "מקור המסמך:"> +<!ENTITY context.copy.label "העתקת כתובת הפריט"> +<!ENTITY tooltip.type.label "סוג:"> +<!ENTITY context.disablefilter.label "נטרול המסנן ?1?"> +<!ENTITY context.copyFilter.label "העתקת המסנן"> +<!ENTITY context.block.label "חסימת פריט זה"> +<!ENTITY context.enablefilter.label "אפשור המסנן מחדש ?1?"> +<!ENTITY detach.label "הפרדה"> +<!ENTITY whitelisted.label "העמוד נמצא ברשימה הלבנה"> +<!ENTITY context.disablefilteronsite.label "נטרול מסנן זה ב ?1?"> +<!ENTITY detached.title "(פריטים לחסימה (מופרד :Adblock Plus"> +<!ENTITY docDomain.firstParty "(צד ראשון)"> +<!ENTITY tooltip.type.whitelisted "(ברשימה הלבנה)"> +<!ENTITY tooltip.filter.label "השפעת המסנן:"> +<!ENTITY tooltip.filter.disabled "(מנוטרל)"> +<!ENTITY context.editfilter.label "עריכת המסנן שמשפיע"> +<!ENTITY tooltip.type.blocked "(חסום)"> +<!ENTITY size.label "גודל"> +<!ENTITY context.whitelist.label "הוספת כלל חריג עבור פריט"> +<!ENTITY context.selectAll.label "בחירת הכל"> +<!ENTITY state.label "מצב"> +<!ENTITY docDomain.label "מקור המסמך"> +<!ENTITY tooltip.address.label "כתובת:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/subscriptionSelection.dtd new file mode 100644 index 0000000..eaa7959 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/he/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "הוספת &הרשמת המסננים "?1?" גם כן"> +<!ENTITY list.download.failed "Adblock Plus נכשל באחזור רשימת ההרשמות."> +<!ENTITY list.download.retry "נסה שנית"> +<!ENTITY title.label "&כותרת ההרשמה:"> +<!ENTITY list.download.website "הצגת האתר"> +<!ENTITY supplementMessage "מסנן הרשמה זה נועד לשימוש עם מסנן ההרשמה "?1?" אשר לא נעשה בו שימוש עדיין."> +<!ENTITY viewList.label "הצגת מסננים"> +<!ENTITY visitHomepage.label "ביקור באתר הבית"> +<!ENTITY addSubscription.label "הוספת הרשמה"> +<!ENTITY dialog.title "הוספת הרשמת מסננים ל-Adblock Plus"> +<!ENTITY location.label "מיקום רשימת &המסננים:"> +<!ENTITY fromWeb.description "יש לוודא הוספת מסנן הרשמה זה. ניתן לשנות את כותרת או מיקום ההרשמה לפני הוספתה."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/composer.dtd new file mode 100644 index 0000000..5f131ff --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "&na kraju adrese"> +<!ENTITY domainRestriction.label "Ograniči na &domenu:"> +<!ENTITY collapse.default.no.label "Koriati uobičajeno (ne)"> +<!ENTITY firstParty.label "Samo od p&rve strane"> +<!ENTITY preferences.label "Pri&kaži postojeće filtere..."> +<!ENTITY pattern.label "Traži ponavljajući uzorak"> +<!ENTITY thirdParty.label "Samo od &treće strane"> +<!ENTITY filter.label "Novi &filter:"> +<!ENTITY collapse.label "&Sažeti blokirano:"> +<!ENTITY match.warning "Uneseni uzorak više se ne poklapa sa adresom za blokeiranje/odblokiranje i neće imati nikakvog utjecaja na nju."> +<!ENTITY anchor.start.label "na &početku adrese"> +<!ENTITY matchCase.label "Točan i&zraz"> +<!ENTITY custom.pattern.label "Prila&gođeno:"> +<!ENTITY unselectAllTypes.label "Odaberi ništa"> +<!ENTITY type.whitelist.label "Prav&ilo iznimke"> +<!ENTITY regexp.warning "Uzorak koji ste unijeli biti će protumačen kao obični izraz kojeg Adblock Plus ne može efikasno obraditi i može usporiti vaše surfanje. Ako niste namjeravali koristiti obični izraz, dodajte asterisk (*) na kraju uzorka."> +<!ENTITY dialog.title "Dodaj Adblock Plus pravilo filtera"> +<!ENTITY basic.label "Osnovni pregled"> +<!ENTITY type.filter.label "&Blokirani filter"> +<!ENTITY types.label "Primjeniti na vrste:"> +<!ENTITY shortpattern.warning "Uneseni uzorak je prekratak za optimizaciju i može usporiti vaše surfanje. Preporučamo da odaberete duži niz za ovaj filter kako biste omogućili da Adblock Plus efikasnije obradi taj filter."> +<!ENTITY collapse.yes.label "Da"> +<!ENTITY anchors.label "Prihvati samo uzorak:"> +<!ENTITY collapse.default.yes.label "Koristi uobičajeno (da)"> +<!ENTITY domainRestriction.help "Koristite ovu mogućnost za odabir jedne ili više domena odvojenih okomitom linijom (|). Filter će biti primjenjen samo na odabrane domene. Tilda (~) prije naziva domene pokazuje da filter neće biti primjenjen na toj domeni."> +<!ENTITY accept.label "Dodaj filter"> +<!ENTITY options.label "Mogućnosti"> +<!ENTITY disabled.warning "Adblock Plus je trenutno onemogućen. Možete dodavati filtere ali oni se neće primjenjivati ako ne [link]omogućite Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "na &početku naziva domene"> +<!ENTITY collapse.no.label "Ne"> +<!ENTITY selectAllTypes.label "Odaberi sve"> +<!ENTITY advanced.label "Napredni pregled"> +<!ENTITY pattern.explanation "Uzorak može biti bilo koji dio adrese, asterisk (*) služi kao zamjena. Filter će biti samo primjenjen na adrese koje se podudaraju sa naznačenim uzorkom."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/filters.dtd new file mode 100644 index 0000000..efbb24b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Svi vaši prilagođeni filteri biti će zamijenjene sadržajem odabrane datoteke. Želite li nastaviti?"> +<!ENTITY slow.column "Spori filteri (&w)"> +<!ENTITY enabled.column "O&mogućeno"> +<!ENTITY subscription.lastDownload.checksumMismatch "Neuspješno, neusklađenost checksum-a."> +<!ENTITY noFiltersInGroup.text "Odabrana grupa je prazna."> +<!ENTITY subscription.actions.label "Radnje"> +<!ENTITY filter.selectAll.label "Odaberi sve"> +<!ENTITY backupButton.label "&Sigurnosne kopije i vraćanje"> +<!ENTITY restore.minVersion.warning "Upozorenje: datoteka je stvorena novijom inačicom Adblock Plus-a. Trebali biste ažurirati na posljednju inačicu Adblock Plus-a prije vraćanja ove datoteke."> +<!ENTITY restore.error "Podaci datoteka ne mogu biti obrađeni, možda to nije Adblock Plus datoteka sigurnosne kopije?"> +<!ENTITY sort.ascending.label "&A > Z red slaganja"> +<!ENTITY sort.label "Po&složiti po"> +<!ENTITY subscription.source.label "Popis filtera"> +<!ENTITY hitcount.column "Pogoci (&H)"> +<!ENTITY noFilters.text "Još nemate prilagođenih filtera."> +<!ENTITY backup.custom.title "Samo prilagođeni filteri"> +<!ENTITY subscription.external.label "Ažurirano drugim priključkom"> +<!ENTITY subscription.delete.label "Obriši"> +<!ENTITY noGroupSelected.text "Morate odabrati grupu filtera prije nego filteri mogu biti prikazani."> +<!ENTITY filter.cut.label "Izreži"> +<!ENTITY restore.default.label "Vrati sigurnosnu kopiju od ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Preuzimanje..."> +<!ENTITY subscriptions.tab.label "Pretplate filtera"> +<!ENTITY sort.descending.label "&Z > A red slaganja"> +<!ENTITY filters.remove.warning "Sigurno želite ukloniti sve odabrane filtere?"> +<!ENTITY filter.delete.label "Obriši"> +<!ENTITY addSubscriptionAdd.label "Dodaj"> +<!ENTITY viewMenu.label "Pogledaj"> +<!ENTITY subscription.lastDownload.unknown "nepoznato"> +<!ENTITY addSubscriptionCancel.label "Poništi"> +<!ENTITY subscription.enabled.label "Omogućen"> +<!ENTITY noSubscriptions.text "Još niste dodali nijednu pretplatu filtera. Adblock Plus neće blokirati + ništa bez filtera, molim koristite "Dodaj pretplatu filtera" za + dodavanje filtera."> +<!ENTITY subscription.update.label "Ažuriraj filtere"> +<!ENTITY dialog.title "Adblock Plus postavke filtera"> +<!ENTITY addFilter.label "&Dodaj filter"> +<!ENTITY subscription.minVersion.warning "Ova pretplata filtera zahtijeva noviju inačicu Adblock Plus-a, ažurirajte na posljednju Adblock Plus inačicu."> +<!ENTITY subscription.lastDownload.invalidURL "Neuspješno, neispravna adresa"> +<!ENTITY backup.error "Dogodila se greška pri zapisivanja filtera u datoteku. Pobrinite se da datoteka nije postavljena na -samo čitanje- ili ju koristi druga aplikacija."> +<!ENTITY filter.moveUp.label "Pomakni gore"> +<!ENTITY addGroup.label "Dodaj &grupu filtera"> +<!ENTITY filter.edit.label "Uredi"> +<!ENTITY subscription.showHideFilters.label "Prikaži/sakrij filtere"> +<!ENTITY acceptableAds2.label "Dopust&i neke nenametljive reklame"> +<!ENTITY addSubscriptionOther.label "Dodaj drugu pretplatu"> +<!ENTITY close.label "Zatvori"> +<!ENTITY sort.none.label "&Neposloženo"> +<!ENTITY filter.actions.label "Radnje filtera"> +<!ENTITY filter.copy.label "Kopiraj"> +<!ENTITY filter.moveDown.label "Pomakni gore"> +<!ENTITY filter.resetHitCounts.label "Vrati na početno statistiku pogodaka"> +<!ENTITY readMore.label "Pročitaj više"> +<!ENTITY subscription.moveUp.label "Pomakni gore"> +<!ENTITY addSubscription.label "Dodaj pretplatu &filtera"> +<!ENTITY subscription.homepage.label "Početna stranica"> +<!ENTITY backup.complete.title "Svi filteri i pretplate"> +<!ENTITY restore.own.label "Vratite vlastitu sigurnosnu kopiju"> +<!ENTITY restore.complete.warning "Sve vaše postavke filtera biti će zamijenjene sadržajem odabrane datoteke. Želite li nastaviti?"> +<!ENTITY filters.tab.label "Prilagođeni filteri"> +<!ENTITY backup.label "Stvori novu sigurnosnu kopiju"> +<!ENTITY find.label "&Traži"> +<!ENTITY subscription.moveDown.label "Pomakni dolje"> +<!ENTITY subscription.lastDownload.connectionError "Neuspješno, greška preuzimanja"> +<!ENTITY subscription.lastDownload.success "Uspješno"> +<!ENTITY subscription.lastDownload.invalidData "Neuspješno, neispravan popis filtera"> +<!ENTITY filter.paste.label "Zalijepi"> +<!ENTITY subscription.disabledFilters.enable "Omogući onemogućene filtere"> +<!ENTITY lasthit.column "Pos&ljednji pogodak"> +<!ENTITY subscription.editTitle.label "Uredi naziv"> +<!ENTITY subscription.disabledFilters.warning "Neki filteri u ovoj pretplati su onemogućeni."> +<!ENTITY filter.column "Pravilo &filtera"> +<!ENTITY subscription.lastDownload.label "Zadnje preuzimanje:"> +<!ENTITY viewList.label "Pogledaj popis"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/firstRun.properties new file mode 100644 index 0000000..dad411a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Surfajte privatno tako što ćete onemogućiti praćenje - skrivanjem od reklamnih kompanija koje prate vaš svaki pokret. +firstRun_toggle_off=ISKLJUČI +firstRun_feature_tracking=Onemogućavanje praćenja +firstRun_feature_malware=Blokiranje malwara +firstRun_title=Adblock Plus je instaliran +firstRun_toggle_on=UKLJUČI +firstRun_acceptableAdsExplanation=Želimo podupirati web stranice da koriste pošteno, nenametljivo reklamiranje. Zato smo uspostavili <a>točne smjernice</a> za prepoznavanje reklama, koje su prikazane prema uobičajenim postavkama. Ako još uvijek želite blokirati svaku reklamu to možete <a>onemogućiti</a> za nekoliko sekuondis. +firstRun_contributor_credits=Zasluge doprinositelja +firstRun_dataCorruptionWarning=Nastavlja li se ova stranica pojavljivati? <a>Kliknite ovdje!</a> +firstRun_acceptableAdsHeadline=Naporni oglasi će sada biti blokirani +firstRun_share=Recite svojim prijateljima +firstRun_share_headline=<a>Pomognite nam</a> pri stvaranju Interneta boljim mjestom +firstRun_feature_social_description=Automatski oslobodite svoje surfanje internetom od napornih tipki društvenih mreža poput Facebook 'Sviđa mi se' tipke, koji se pojavljuju na web stranicama i prati vaše ponašanje. +firstRun_filterlistsReinitializedWarning=Izgleda da je greška uzrokovala uklanjanje svih filtra, a mi smo u nemogućnosti da ih vratimo. Zato smo postavili na početne postavke vaših filtra i prihvatljivih reklama. Provjerite postavke vaših popisa filtra i prihvatljivih reklama u <a>Adblock Plus mogućnostima</a>. +firstRun_feature_malware_description=Učinite vaše surfanje Internetom sigurnijim blokiranjem poznatih malvare domena. +firstRun_features=Adblock Plus može učiniti mnogo više nego samo blokirati reklame +firstRun_donate=donirajte +firstRun_donate_label=Podržite naš projekt +firstRun_feature_social=Uklanjanje tipki društvenih mreža +firstRun_legacySafariWarning=Koristite stariju inačicu Safarija koja ne podržava Adblock Plus. Možda neće ispravno raditi ili može narušiti korisničko iskustvo na nekim web stranicama. Stoga vam preporučamo nadogradnju na Safari 6.1.1 ili noviju inačicu (dostupnu za Mac OS X 10.8 Mountain Lion), ili Safari 7.0.1 ili noviju inačicu (za OS X 10.9 Mavericks), ili koristite najnoviju inačicu Mozilla Firefoxa, Google Chroma ili Opere. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/global.properties new file mode 100644 index 0000000..4e368c9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Na trenutnoj stranici nema stavki koje se mogu blokirati +action3_tooltip=Kliknite za omogućavanje/onemogućavanje Adblock Plus-a. +notification_antiadblock_title=Sakrij ciljane poruke? +type_label_script=skripta +filter_elemhide_nocriteria=Nema kriterija za prepoznavanje elementa koji će biti skriven +blockingGroup_title=Ad Blocking pravila +whitelisted_tooltip=Adblock Plus je onemogućen na trenutnoj stranici. +type_label_stylesheet=stil +blocked_count_tooltip=?1? od ?2? +type_label_font=slovo +type_label_popup=skočni prozor +filter_regexp_tooltip=Ovaj filter je ili regularan izraz ili je prekatak za optimizacju. Previše ovakvih filtera vam može usporiti surfanje. +action0_tooltip=Kliknite za otvaranje kontekstnog izbornika, srednji klik za omogućavanje/onemogućavanje. +whitelisted_page=Adblock Plus je onemogućen za trenutnu stranicu +remove_group_warning=Želite li stvarno ukloniti ovu grupu? +action1_tooltip=Kliknite za otvaranje/zatvaranje blokiranih stavki, srednji klik za omogućavanje/onemogućavanje. +type_label_xmlhttprequest=XML zahtjev +active_tooltip=Adblock Plus je omogućen, ?1? pretplata na filtere i ?2? prilagođenih filtera je u upotrebi. +type_label_document=dokument +type_label_object_subrequest=podzahtjev objekta +whitelistGroup_title=Pravila iznimka +disabled_tooltip=Adblock Plus je onemogućen. +filter_elemhide_duplicate_id=Samo jedan ID elementa za skrivanje može biti odabran. +type_label_object=objekt +action2_tooltip=Kliknite za otvaranje postavki, srednji klik za omogućavanje/onemogućavanje. +type_label_subdocument=okvir +clearStats_warning=Ovo će poništiti svu statistiku pogodaka filtera i onemogućiti brojanje pogodaka filtera. Želite li nastaviti? +notification_antiadblock_message=Za ovu stranicu je poznato da prikazuje ciljane poruke Adblock Plus korisnicima. Želite li da Adblock Plus sakrije ciljane poruke? +blocked_count_addendum=(dopušteni: ?1?, skriveni: ?2?) +subscription_invalid_location=Lokacija popisa filtera nije niti valjana web adresa niti naziv datoteke. +type_label_image=slika +remove_subscription_warning=Želite li stvarno ukloniti ovu pretplatu? +type_label_other=drugi +mobile_menu_enable=ABP: Omogući +type_label_media=zvučni/video zapisi +mobile_menu_disable_site=ABP: Onemogući na ?1? +elemhideGroup_title=Pravila elementa sakrivanja +mobile_menu_enable_site=ABP: Omogući na ?1? +type_label_elemhide=skriveno +newGroup_title=Nova grupa filtera +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/overlay.dtd new file mode 100644 index 0000000..cf53e9f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Da"> +<!ENTITY notification.button.no "&Ne"> +<!ENTITY sync.label "Sinkroniziraj Adblo&ck Plus postavke"> +<!ENTITY whitelist.site.label "Onemogući na ?1?"> +<!ENTITY filters.label "Postavke &filtera"> +<!ENTITY disable.label "Onemogući posvuda"> +<!ENTITY objecttab.title "Blokiraj"> +<!ENTITY objecttab.tooltip "Kliknite ovdje za blokiranje ovog objekta s Adblock Plus-om"> +<!ENTITY menuitem.label "Ad&block Plus postavke"> +<!ENTITY objecttabs.label "Pri&kaži kartice s Flashom i Javom"> +<!ENTITY sendReport.label "P&rijavite problem na ovoj stranici"> +<!ENTITY whitelist.page.label "Onemogući samo na ovoj stranici"> +<!ENTITY context.image.label "Blokiraj sliku s Adblock Plus-om"> +<!ENTITY counthits.label "Broji pogodke fil&tera"> +<!ENTITY opensidebar.label "Otvori &blokirane stavke"> +<!ENTITY notification.button.close "&Zatvori"> +<!ENTITY contribute.label "Doprinesite Adblock Plus-u"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Blokiraj okvir s Adblock Plus-om"> +<!ENTITY blocked.tooltip "Blokirane stavke na ovoj stranici:"> +<!ENTITY hideplaceholders.label "Sakrij rezervirana mjesta b&lokiranih elemenata"> +<!ENTITY showinstatusbar.label "Prikaži u &statusnoj traci"> +<!ENTITY sidebar.title "Stavke koje se mogu blokirati na trenutnoj stranici"> +<!ENTITY options.label "M&ogućnosti"> +<!ENTITY context.object.label "Blokiraj objekt s Adblock Plus-om"> +<!ENTITY context.removeWhitelist.label "Ponovno omogući na ovoj stranici Adblock Plus"> +<!ENTITY filters.tooltip "Najaktivniji filteri:"> +<!ENTITY closesidebar.label "Zatvori &blokirane stavke"> +<!ENTITY showintoolbar.label "Prik&aži u alatnoj traci"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Blokiraj audio/video s Adblock Plus-om"> +<!ENTITY subscription.update.label "Ažuriraj filtere"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/sendReport.dtd new file mode 100644 index 0000000..61195b8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/sendReport.dtd @@ -0,0 +1,102 @@ +<!ENTITY screenshot.undo.label "&Vrati"> +<!ENTITY issues.disabledgroups.description "Sljedeća pretplata filtera / grupe filtera su onemogućene, koje možda + utječu na ovu stranicu:"> +<!ENTITY showData.label "Prikaži podatke izvješća"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus prev&iše blokira"> +<!ENTITY issues.change.description "Vaše postavke su promijenjene. Ponovno učitajte stranicu za testiranje promjena + i pošaljite izvješće ako problem nije't riješen testiranjem promjene."> +<!ENTITY email.label "&E-pošta:"> +<!ENTITY issues.openPreferences.label "Otvori postavke filtera"> +<!ENTITY sendPage.confirmation "Vaše izvješće je spremljeno. Možete mu pristupiti na sljedećoj adresi:"> +<!ENTITY copyLink.label "Kopiraj povezni&cu izvješća"> +<!ENTITY issues.nofilters.description "Adblock Plus ništa ne blokira na ovoj trenutnoj stranici. Problem koji ste + opazili zacijelo nije povezan s Adblock Plus-om."> +<!ENTITY sendPage.knownIssue "Problem koji ste prijavili već je poznat. Više informacija:"> +<!ENTITY typeSelector.other.description "Odaberite ovu mogućnost ako mislite da je problem sa Adblock Plus-om, + a ne sa filterima."> +<!ENTITY issues.disabledgroups.enable.label "Omogući pretplatu filtera / grupe filtera"> +<!ENTITY typeWarning.override.label "Razumijem i ipak želim podnije&ti izvješće"> +<!ENTITY issues.disabled.enable.label "Omogući Adblock Plus"> +<!ENTITY update.fixed.description "Ažuriranje vaših pretplata na filtere je vjerovatno riješila problem koji ste + prijavljivali. Ponovno učitajte stranicu i pokušajte ponovno, pritisnite Prijavi ponovno ako + problem nije rješen."> +<!ENTITY anonymous.label "&Anoniman prijavak"> +<!ENTITY reloadButton.label "Ponovno učitaj st&ranicu"> +<!ENTITY recentReports.clear.label "&Ukloni sva izvješća"> +<!ENTITY typeSelector.description "Ovaj prozor će vas voditi kroz korake potrebne za prijavu Adblock + Plus izvještaja problema. Prvo odaberite vrstu problema koju ste doživjeli + na ovoj stranici:"> +<!ENTITY screenshot.remove.label "&Ukloni osjetljive podatke"> +<!ENTITY issues.ownfilters.description "Neki od filtera primjenjenih na ovoj stranici je definirao korisnik. Onemogućite + filtere koji možda uzrokuju problem:"> +<!ENTITY update.inProgress.description "Adblock Plus treba ažurirati vaše pretplate na filtere kako bi bili sigurni da + problem već nije riješen. Pričekajte..."> +<!ENTITY sendPage.retry.label "Pošalji ponovno"> +<!ENTITY data.label "&Podaci izvješća:"> +<!ENTITY recentReports.label "Vaša nedavno podnesena izvješća"> +<!ENTITY typeWarning.description "Naznačili ste da želite prijaviti općeniti problem sa Adblock Plus-om a ne + problem sa filterima. Takav problem najbolje je prijaviti + na [link]Adblock Plus forumu[/link]. Trebali biste koristiti prijavu problema + za dopunu postojeće rasprave, jer nitko neće zapaziti vaše izvješće + osim ako im ne date poveznicu na to izvješće. Automatski generirana poveznica + biti će dostupna nakon prijave izvješća."> +<!ENTITY issues.disabled.description "Adblock Plus je onemogućen, neće ništa blokirati u ovom trenutnom stanju."> +<!ENTITY attachExtensions.label "Dodaj popis aktivnih dodataka u izvješće u slučaju da je dodatak &razlog problema"> +<!ENTITY issues.nosubscriptions.add.label "Dodaj pretplatu filtera"> +<!ENTITY issues.disabledfilters.enable.label "Omogući filter"> +<!ENTITY issues.override.label "P&ostavke su ispravne, nastavi s podnošenjem izvješća"> +<!ENTITY issues.nosubscriptions.description "Čini se da niste pretplaćeni na nijedan od unaprijed izrađenih popisa filtera koji + automatski uklanjaju neželjeni sadržaj sa web stranica."> +<!ENTITY typeSelector.falsePositive.description "Odaberite ovu mogućnost ako stranica važan sadržaj prikazuje neispravno ili + ne radi ispravno. Možete odrediti da li Adblock Plus uzrokuje + taj problem, tako da ga privremeno onemogućite."> +<!ENTITY typeSelector.other.label "Os&tali problemi"> +<!ENTITY emailComment.label "Molimo vas da upišete valjanu adresu e-pošte, da vas možemo kontaktirati ako ćemo imati pitanja o vašem izvješću problema. To će nam isto tako omogućiti da prepoznamo vaš doprinos i damo mu veći prioritet."> +<!ENTITY issues.whitelist.remove.label "Ponovno omogućite Adblock Plus na ovoj stranici"> +<!ENTITY outdatedSubscriptions.description "Sljedeće pretplate na filtere nisu ažurirane najmanje dva tjedna. + Ažurirajte ove pretplate prije slanja prijave, problem je možda + već riješen."> +<!ENTITY dataCollector.description "Pričekajte nekoliko minuta dok Adblock Plus prikuplja potrebne podatke."> +<!ENTITY sendButton.label "Poša&lji izvješće"> +<!ENTITY comment.label "&Komentar (neobavezno):"> +<!ENTITY sendPage.errorMessage "Neuspjelo slanje izvješća sa greškom "?1?". Provjerite jeste li + spojeni na internet i pokušajte ponovno. Ako se problem ponovi zatražite + pomoć na [link]Adblock Plus forumu[/link]."> +<!ENTITY showRecentReports.label "Prikaži nedavno podnesena izvješća"> +<!ENTITY commentPage.heading "Dodaj komentar"> +<!ENTITY update.start.label "Pokreni ažuriranje sada"> +<!ENTITY issues.disabledfilters.description "Sljedeći filteri su onemogućeni, koji možda utječu na ovu stranicu:"> +<!ENTITY screenshot.description "Ista stranica može izgledati drugačije svakoj osobi. To nam može pomoći + u razumijevanju problema ako priložite snimku zaslona u izvješće. Možete uklonit + dio koji sadrži osjetljive informacije i označiti područje gdje je + problem uočen. Da bi to učinili kliknite na odgovarajuću tipku i odaberite + odabrani dio slike mišem."> +<!ENTITY screenshot.attach.label "Priloži&te sliku stranice u izvješće"> +<!ENTITY issues.whitelist.description "Adblock Plus je trenutno onemogućen na stranici za koju šaljete izvješće. Ponovno ga omogućite + i učitajte stranicu prije podnošenja izvješća za pomoć u istraživanju of + ovog problema."> +<!ENTITY typeSelector.falseNegative.label "Adblo&ck Plus ne blokira reklame"> +<!ENTITY typeSelector.heading "Odaberite vrstu problema"> +<!ENTITY anonymity.warning "Nećemo vas moći kontaktirati i najvjerojatnije izvješće problema će imati niži prioritet."> +<!ENTITY wizard.title "Izvještaj problema"> +<!ENTITY issues.ownfilters.disable.label "Onemogući filter"> +<!ENTITY commentPage.description "Polje teksta ispod omogućuje vam dodavanje komentara, što nam olakšava razumijenvanje problema. + Ovaj korak je neobevezan ali preporučljiv ako problem nije jasan. + Provjerite ovo izvješće prije nego što ga pošaljete."> +<!ENTITY comment.lengthWarning "Duljina vašeg komentara je veća od 1000 znakova. Samo prvih 1000 znakova biti će poslano."> +<!ENTITY typeSelector.falseNegative.description "Odaberite ovu mogućnost ako su reklame prikazane iako + je Adblock Plus omogućen."> +<!ENTITY sendPage.waitMessage "Pričekajte dok Adblock Plus prijavljuje vaše izvješće."> +<!ENTITY dataCollector.heading "Dobrodošli u izvještaj problema"> +<!ENTITY screenshot.heading "Priložite snimak zaslona"> +<!ENTITY sendPage.heading "Pošalji izvješće"> +<!ENTITY issues.subscriptionCount.description "Čini se da ste pretplaćeni na previše filter pretplata. Ovakvo + podešavanje nije preporučeno zato jer će povećati vjerojatnost + za nastanak problema. Ne možemo prihvatiti vaš izvještaj problema zato it + jer nije jasno koji autor filtera pretplate mora pogledat problem. Uklonite + sve osim stvarno neophodnih filter pretplata i testirajte je li + se problem još pojavljuje."> +<!ENTITY screenshot.mark.label "Označite proble&m"> +<!ENTITY privacyPolicy.label "Pravila privatnosti"> +<!ENTITY issues.description "Adblock Plus je otkrio problem sa vašim postavkama koje su možda odgovorne + za ovaj problem ili će istražiti poteškoću izvještaja."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/sidebar.dtd new file mode 100644 index 0000000..6d885c7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Osvijetli granice stavke"> +<!ENTITY address.label "Adresa"> +<!ENTITY context.open.label "Otvori u novoj kartici"> +<!ENTITY type.label "Vrsta"> +<!ENTITY tooltip.filterSource.label "Izvor filtera:"> +<!ENTITY noitems.label "Nema stavki za blokiranje"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Veličina:"> +<!ENTITY reattach.label "Ponovno spoji"> +<!ENTITY search.label "&Pretraži:"> +<!ENTITY docDomain.thirdParty "(treća strana)"> +<!ENTITY filterSource.label "Izvor filtera"> +<!ENTITY tooltip.docDomain.label "Izvor dokumenta:"> +<!ENTITY context.copy.label "Kopiraj adresu stavke"> +<!ENTITY tooltip.type.label "Vrsta:"> +<!ENTITY context.disablefilter.label "Onemogućiti filter ?1?"> +<!ENTITY context.copyFilter.label "Kopiraj filter"> +<!ENTITY context.block.label "Blokiraj ovu stavku"> +<!ENTITY context.enablefilter.label "Ponovno omogućiti filter ?1?"> +<!ENTITY detach.label "Odvoji"> +<!ENTITY whitelisted.label "Stranica koja je na dopuštenom popisu"> +<!ENTITY context.disablefilteronsite.label "Onemogućiti ovaj filter na ?1?"> +<!ENTITY detached.title "Adblock Plus: stavke za blokiranje (odvojene)"> +<!ENTITY docDomain.firstParty "(prva strana)"> +<!ENTITY tooltip.type.whitelisted "(na dozvoljenom popisu)"> +<!ENTITY tooltip.filter.label "Filter u upotrebi:"> +<!ENTITY tooltip.filter.disabled "(onemogućen)"> +<!ENTITY context.editfilter.label "Uredi filter u upotrebi"> +<!ENTITY tooltip.type.blocked "(blokiran)"> +<!ENTITY size.label "Veličina"> +<!ENTITY context.whitelist.label "Dodaj pravilo izuzimanja za stavku"> +<!ENTITY context.selectAll.label "Odaberi sve"> +<!ENTITY state.label "Status"> +<!ENTITY docDomain.label "Izvor dokumenta"> +<!ENTITY tooltip.address.label "Adresa:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/subscriptionSelection.dtd new file mode 100644 index 0000000..1ad21bb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hr/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Također &dodajte pretplatu na filter "?1?""> +<!ENTITY list.download.failed "Adblock Plus nije uspio preuzeti popis pretplata."> +<!ENTITY list.download.retry "Pokušajte ponovno"> +<!ENTITY title.label "Naslov &pretplate:"> +<!ENTITY list.download.website "Pogledaj stranicu"> +<!ENTITY supplementMessage "Ova pretplata na filter je namjenjena korištenju sa pretplatom na filter "?1?" koju još ne koristite."> +<!ENTITY viewList.label "Pogledaj filtere"> +<!ENTITY visitHomepage.label "Posjetite početnu stranicu"> +<!ENTITY addSubscription.label "Dodaj pretplatu"> +<!ENTITY dialog.title "Dodaj Adblock Plus pretplate filtera"> +<!ENTITY location.label "Lokaci&ja popisa filtera:"> +<!ENTITY fromWeb.description "Potvrdite želite li dodati ovu pretplatu na filter. Možete promijeniti naziv ili lokaciju pretplate prije nego što je dodate."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/composer.dtd new file mode 100644 index 0000000..c0234a0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "na kón&cu adresy"> +<!ENTITY domainRestriction.label "Wob&mjezować na domenu:"> +<!ENTITY collapse.default.no.label "Standard wužiwać (ně)"> +<!ENTITY firstParty.label "&Jenož prěni bok"> +<!ENTITY preferences.label "&Eksistowace filtry pokazać…"> +<!ENTITY pattern.label "Muster pytać"> +<!ENTITY thirdParty.label "Jenož &třeći bok"> +<!ENTITY filter.label "Nowy &filter:"> +<!ENTITY collapse.label "Zabl&okowane fałdować:"> +<!ENTITY match.warning "Muster, kotryž sće zapodał, wjace adresy njewotpowěduje, kotraž ma so blokować/do běłeje lisćiny přewzać a njezměje žadyn wuskutk na nju."> +<!ENTITY anchor.start.label "na spočatku a&dresy"> +<!ENTITY matchCase.label "&Wulkopisanje wobkedźbować"> +<!ENTITY custom.pattern.label "&Swójski:"> +<!ENTITY unselectAllTypes.label "Žadyn wubrać"> +<!ENTITY type.whitelist.label "W&uwzaćne prawidło"> +<!ENTITY regexp.warning "Muster, kotryž sće zapodał, budźe so jako regularny wuraz interpretować, kotryž njehodźi so přez Adblock Plus skutkownje předźěłać a móhł waš wobhladowak spomałšić. Jeli nochceće regularny wuraz wužiwać, přidajće hwěžku (*) ke kóncej mustra."> +<!ENTITY dialog.title "Filtrowe prawidło Adblock Plus přidać"> +<!ENTITY basic.label "Zakładny napohlad"> +<!ENTITY type.filter.label "&Blokowanski filter"> +<!ENTITY types.label "Nałožić na typy:"> +<!ENTITY shortpattern.warning "Muster, kotryž sće zapodał, je za optimowanje překrótko a móhł waš wobhladowak spomałšić. Poruča so, zo wubjerjeće dlěši znamješkowy rjećazk za tutón filter, zo byšće Adblock Plus dowolił, filter bóle skutkownje předźěłał."> +<!ENTITY collapse.yes.label "Haj"> +<!ENTITY anchors.label "Jenož muster akceptować:"> +<!ENTITY collapse.default.yes.label "Standard wužiwać (haj)"> +<!ENTITY domainRestriction.help "Wužijće tutu opciju, zo byšće jednu domenu abo wjacore domeny podał, kotrež přez wertikalnu smužku (|) wotdźělić. Filter budźe so jenož na wubrane domeny nałožować. Tilda (~) před domenowym mjenom podawa, zo filter njebudźe so na tu domenu nałožować."> +<!ENTITY accept.label "Filter přidać"> +<!ENTITY options.label "Opcije"> +<!ENTITY disabled.warning "Adblock Plus je tuchwilu znjemóžnjeny. Móžeće hišće filtry přidać, ale njebudu so nałožować, chibazo [link]zmóžnjeće Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "na spočatku &domenoweho mjena"> +<!ENTITY collapse.no.label "Ně"> +<!ENTITY selectAllTypes.label "Wšě wubrać"> +<!ENTITY advanced.label "Rozšěrjeny napohlad"> +<!ENTITY pattern.explanation "Muster móže dźěl adresy być; hwěžki (*) funguja jako zastupowace symbole. Filter budźe so jenož na adresy nałožować, kotrež podatemu mustrej wotpowěduja."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/filters.dtd new file mode 100644 index 0000000..18f33fa --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Wšě waše swójske filtry budu so přez wobsah wubraneje dataje narunować. Chceće pokročować?"> +<!ENTITY slow.column "P&omałe filtry"> +<!ENTITY enabled.column "Z&móžnjeny"> +<!ENTITY subscription.lastDownload.checksumMismatch "Njeporadźiło, wopačna kontrolna suma"> +<!ENTITY noFiltersInGroup.text "Wubrana skupina je prózdna."> +<!ENTITY subscription.actions.label "Akcije"> +<!ENTITY filter.selectAll.label "Wšo wubrać"> +<!ENTITY backupButton.label "&Zawěsćić a wobnowić"> +<!ENTITY restore.minVersion.warning "Warnowanje: Dataja je so přez nowšu wersiju Adblock Plus wutworiła. Wy měł na najnowšu wersiju Adblock Plus aktualizować, prjedy hač tutu dataju wobnowiće."> +<!ENTITY restore.error "Daty dataje njedadźa so předźěłać, je móžno, zo wona zawěsćenska dataja Adblock Plus njeje?"> +<!ENTITY sort.ascending.label "Porj&ad A > Z"> +<!ENTITY sort.label "&Sortěrować po"> +<!ENTITY subscription.source.label "Filtrowa lisćina"> +<!ENTITY hitcount.column "&Wotpowědniki"> +<!ENTITY noFilters.text "Nimaće hišće žane swójske filtry."> +<!ENTITY backup.custom.title "Jenož swójske filtry"> +<!ENTITY subscription.external.label "Přez druhe rozšěrjenje zaktualizowany"> +<!ENTITY subscription.delete.label "Zhašeć"> +<!ENTITY noGroupSelected.text "Dyrbiće filtrowu skupinu wubrać, prjedy hač filtry dadźa so zwobraznić."> +<!ENTITY filter.cut.label "Wutřihać"> +<!ENTITY restore.default.label "Zawěsćensku kopiju wot ?1? wobnowić"> +<!ENTITY subscription.lastDownload.inProgress "Sćahuje so…"> +<!ENTITY subscriptions.tab.label "Filtrowe abonementy"> +<!ENTITY sort.descending.label "Porjad &Z > A"> +<!ENTITY filters.remove.warning "Chceće woprawdźe wšě wubrane filtry wotstronić?"> +<!ENTITY filter.delete.label "Zhašeć"> +<!ENTITY addSubscriptionAdd.label "Přidać"> +<!ENTITY viewMenu.label "Napohlad"> +<!ENTITY subscription.lastDownload.unknown "Ničo k dispoziciji"> +<!ENTITY addSubscriptionCancel.label "Přetorhnyć"> +<!ENTITY subscription.enabled.label "Zmóžnjeny"> +<!ENTITY noSubscriptions.text "Njejsće hišće žane filtrowe abonementy přidał. Adblock Plus njebudźe bjez filtrow ničo blokować, prošu wužijće "Filtrowy abonement přidać", zo byšće filter přidał."> +<!ENTITY subscription.update.label "Filtry aktualizować"> +<!ENTITY dialog.title "Adblock Plus - filtrowe nastajenja"> +<!ENTITY addFilter.label "Filter při&dać"> +<!ENTITY subscription.minVersion.warning "Tutón filtrowy abonement wužaduje sej nowšu wersiju Adblock Plus, wy měł na najnowšu wersiju Adblock Plus aktualizować."> +<!ENTITY subscription.lastDownload.invalidURL "Njeporadźiło, žana płaćiwa adresa"> +<!ENTITY backup.error "Při pisanju filtrow do dataje je zmylk wustupił. Zawěsćće, zo dataja njeje přećiwo pisanju škitana abo so přez druhi program njewužiwa."> +<!ENTITY filter.moveUp.label "Horje"> +<!ENTITY addGroup.label "Filtrowu &skupinu přidać"> +<!ENTITY filter.edit.label "Wobdźěłać"> +<!ENTITY subscription.showHideFilters.label "Filtry pokazać/schować"> +<!ENTITY acceptableAds2.label "&Njenadběhawe wabjenje dowolić"> +<!ENTITY addSubscriptionOther.label "Druhi abonement přidać"> +<!ENTITY close.label "Začinić"> +<!ENTITY sort.none.label "Njeso&rtěrowany"> +<!ENTITY filter.actions.label "Filtrowe akcije"> +<!ENTITY filter.copy.label "Kopěrować"> +<!ENTITY filter.moveDown.label "Dele"> +<!ENTITY filter.resetHitCounts.label "Statistiku wróćo stajić"> +<!ENTITY readMore.label "Dalše informacije"> +<!ENTITY subscription.moveUp.label "Horje"> +<!ENTITY addSubscription.label "&Filtrowy abonement přidać"> +<!ENTITY subscription.homepage.label "Startowa strona"> +<!ENTITY backup.complete.title "Wšě filtry a abonementy"> +<!ENTITY restore.own.label "Swójsku zawěsćensku kopiju wobnowić"> +<!ENTITY restore.complete.warning "Wšě waše filtrowe nastajenja budu so přez wobsah wubraneje dataje narunować. Chceće pokročować?"> +<!ENTITY filters.tab.label "Swójske filtry"> +<!ENTITY backup.label "Nowu zawěsćensku kopiju wutworić"> +<!ENTITY find.label "&Pytać"> +<!ENTITY subscription.moveDown.label "Dele"> +<!ENTITY subscription.lastDownload.connectionError "Njeporadźiło, sćahowanski zmylk"> +<!ENTITY subscription.lastDownload.success "Wuspěch"> +<!ENTITY subscription.lastDownload.invalidData "Njeporadźiło, žana płaćiwa filtrowa lisćina"> +<!ENTITY filter.paste.label "Zasunyć"> +<!ENTITY subscription.disabledFilters.enable "Znjemóžnjene filtry zmóžnić"> +<!ENTITY lasthit.column "&Posledni wotpowědnik"> +<!ENTITY subscription.editTitle.label "Titul wobdźěłać"> +<!ENTITY subscription.disabledFilters.warning "Někotre filtry w tutym abonemenće su znjemóžnjene."> +<!ENTITY filter.column "&Filtrowe prawidło"> +<!ENTITY subscription.lastDownload.label "Poslednje sćehnjenje:"> +<!ENTITY viewList.label "Lisćinu pokazać"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/firstRun.properties new file mode 100644 index 0000000..de870d3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Přehladujće priwatnje znjemóžnjejo slědowanje resp. chowajo swoje slědy před wabjenskimi předewzaćemi, kotrež bychu rady kóždy z wašich pohibow slědowali. +firstRun_toggle_off=WUPINJENY +firstRun_feature_tracking=Slědowanje znjemóžnić +firstRun_feature_malware=Škódnu softwaru blokować +firstRun_title=Adblock Plus je so instalował +firstRun_acceptableAdsExplanation=Bychmy rady websydła pozbudźili, sprawne, decentne wabjenje wužiwać. Tohodla smy <a>krute směrnicy</a> postajili, zo bychmy akceptabelne wabjenje identifikowali, kotrež so w standardnych nastajenjach pokazuje. Jeli chceće najebać toho wšo wabjenje blokować, móžeće jo wob mało sekundow <a>znjemóžnić</a>. +firstRun_toggle_on=ZAPINJENY +firstRun_contributor_credits=Dźakprajenje sobuskutkowacym +firstRun_dataCorruptionWarning=Pokazuje so tuta strona dale? <a>Klikńće tu!</a> +firstRun_acceptableAdsHeadline=Mjerzaca reklama budźe so nětko blokować +firstRun_share=Informujće swojich přećelow +firstRun_share_headline=<a>Podajće nam ruku</a>, zo bychmy web k lěpšemu městnu činili +firstRun_features=Adblock Plus móže wjace činić hač wabjenje blokować +firstRun_feature_malware_description=Čińće swoje přehladowanje wěsćiše blokujo znate domeny złomyslneje softwary. +firstRun_feature_social_description=Wotstrońće swoju přehladowansku aktiwitu z tłóčatkow socialnych medijow, kaž na př. tłóčatka "Lubi so mi" na Facebooku, kotrež so na webstronach jewja a waše zadźerženje slěduja. +firstRun_donate=darić +firstRun_donate_label=Podpěrajće naš projekt +firstRun_feature_social=Tłóčatka za socialne medije wotstronić +firstRun_legacySafariWarning=Wužiwaće staru wersiju Safari, kotraž se přez Adblock Plus njepodpěruje. Wón njebudźe snano korektnje fungować abo wužiwarske dožiwjenje na wěstach websydłach kazyć. Poručujemy wuraznje, zo pak aktualizujeće na Safari 6.1.1 abo wyši (k dispoziciji za Mac OS X 10.8 Lion) abo na Safari 7.0.1 abo wyši (na OS X 10.9 Mavericks) pak wužiwaće najnowšu wersiju Mozilla Firefox, Google Chrome abo Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/global.properties new file mode 100644 index 0000000..71491fe --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Žane blokujomne zapiski na tutej stronje +action3_tooltip=Klikńće, zo byšće Adblock Plus zmóžnił/znjemóžnił. +notification_antiadblock_title=Cilowe zdźělenki schować? +type_label_script=skript +filter_elemhide_nocriteria=Žane kriterije podate, zo by element spóznało, kotryž ma so schować +blockingGroup_title=Prawidła za blokowanje reklamy +whitelisted_tooltip=Adblock Plus je na tutej stronje znjemóžnjeny. +type_label_stylesheet=stilowa předłoha +blocked_count_tooltip=?1? z ?2? +type_label_font=pismo +type_label_popup=wuskakowace wokno +filter_regexp_tooltip=Tutón filter je pak regularny wuraz pak překrótko za optimizowanje. Přewjele tutych filtrow móhło waš wobhladowak spomałšić. +action0_tooltip=Klikńće, zo byšće kontekstowy meni zwobraznił, klikńće ze srjedźnej tastu myše, zo by zmóžniło/znjemóžniło. +whitelisted_page=Adblock Plus je so za tutu stronu znjemóžnił +remove_group_warning=Chceće tutu skupinu woprawdźe wotstronić? +action1_tooltip=Klikńće, zo byšće blokujomne zapiski wočinił/začinił, klikńće ze srjedźnej tastu myše, zo by zmóžniło/znjemóžniło. +type_label_xmlhttprequest=XML-naprašowanje +active_tooltip=Adblock Plus je zmóžnjeny, ?1? filtrowe abonementy a ?2? swójske filtry so wužiwaja. +type_label_document=dokument +type_label_object_subrequest=objektowe naprašowanje +whitelistGroup_title=Wuwzaćne prawidła +disabled_tooltip=Adblock Plus je znjemóžnjeny. +filter_elemhide_duplicate_id=Jenož jedyn ID elementa, kotryž ma so schować, hodźi so podać +type_label_object=objekt +action2_tooltip=Klikńće, zo byšće nastajenja wočinił, klikńće ze srjedźnej tastu myše, zo by zmóžniło/znjemóžniło. +type_label_subdocument=wobłuk +clearStats_warning=To staji wšu filtrowu statistiku wróćo a znjemóžni ličenje filtrowych wotpowědnikow. Chceće pokoročować? +notification_antiadblock_message=Tute sydło je za to znate, zo cilowe zdźělenki za wužiwarjow Adblock Plus pokazuje. Chceće, zo Adblock Plus cilowe zdźělenki chowa? +blocked_count_addendum=(tež w běłej lisćinje: ?1?, schowane: ?2?) +subscription_invalid_location=Městno filtroweje lisćiny njeje ani płaćiwy URL ani płaćiwe datajowe mjeno. +type_label_image=wobraz +remove_subscription_warning=Chceće woprawdźe tutón abonement wotstronić? +type_label_other=druhi +mobile_menu_enable=ABP: Zmóžnić +type_label_media=awdio/widejo +mobile_menu_disable_site=ABP: Na ?1? znjemóžnić +elemhideGroup_title=Prawidła za schowanje elementow +mobile_menu_enable_site=ABP: Na ?1? zmóžnić +type_label_elemhide=schowany +newGroup_title=Nowa filtrowa skupina +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/overlay.dtd new file mode 100644 index 0000000..1b480b2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Haj"> +<!ENTITY notification.button.no "&Ně"> +<!ENTITY sync.label "Nastajenja Adblo&ck Plus synchronizować"> +<!ENTITY whitelist.site.label "Na ?1? znjemóžnić"> +<!ENTITY filters.label "&Filtrowe nastajenja"> +<!ENTITY disable.label "Wšudźe znjemóžnić"> +<!ENTITY objecttab.title "Blokować"> +<!ENTITY objecttab.tooltip "Klikńće sem, zo byšće tutón objekt z pomcu Adblock Plus blokował"> +<!ENTITY menuitem.label "Na&stajenja Adblock Plus"> +<!ENTITY objecttabs.label "Rajtarki wo Flash a Ja&va pokazać"> +<!ENTITY sendReport.label "&Problem na tutej stronje zdźělić"> +<!ENTITY whitelist.page.label "Jenož na tutej stronje znjemóžnić"> +<!ENTITY context.image.label "Adblock Plus: Wobraz blokować"> +<!ENTITY counthits.label "&Filtrowe wotpowědniki ličić"> +<!ENTITY opensidebar.label "Blo&kujomne elementy wočinić"> +<!ENTITY notification.button.close "&Začinić"> +<!ENTITY contribute.label "K Adblock Plus přinošować"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Wobłuk blokować"> +<!ENTITY blocked.tooltip "Zablokowane elementy na tutej stronje:"> +<!ENTITY hideplaceholders.label "&Městodźeržićele zablokowanych elementow schować"> +<!ENTITY showinstatusbar.label "W &statusowej lajsće pokazać"> +<!ENTITY sidebar.title "Blokujomne elementy na aktualnej stronje"> +<!ENTITY options.label "&Opcije"> +<!ENTITY context.object.label "Adblock Plus: Objekt blokować"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Na tutej stronje zaso zmóžnić"> +<!ENTITY filters.tooltip "Najaktiwniše filtry:"> +<!ENTITY closesidebar.label "Blo&kujomne elementy začinić"> +<!ENTITY showintoolbar.label "W gratowej &lajsće pokazać"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Awdio/Widejo blokować"> +<!ENTITY subscription.update.label "Filtry aktualizować"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/sendReport.dtd new file mode 100644 index 0000000..00a413b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Cofnyć"> +<!ENTITY issues.disabledgroups.description "Slědowace filtrowe abonementy/filtrowe skupiny su znjemóžnjene, najebać toho móhli wuskutk na tutu stronu měć:"> +<!ENTITY showData.label "Daty zdźělenki pokazać"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus pře&wjele blokuje"> +<!ENTITY issues.change.description "Waša konfiguracija je so změniła. Prošu začitajće stronu znowa, zo byšće změny testował a wotpósćelće zdźělenje, jeli problem njeje so přez změny rozrisał."> +<!ENTITY email.label "E-&mejl:"> +<!ENTITY issues.openPreferences.label "Filtrowe nastajenja wočinić"> +<!ENTITY sendPage.confirmation "Waša zdźělenka je so składowała. Móžeš pod slědowacej adresu na njo přistup měć:"> +<!ENTITY copyLink.label "&Wotkaz zdźělenki kopěrować"> +<!ENTITY issues.nofilters.description "Adblock Plus na aktualnej stronje ničo njeblokuje. Problem, kotryž sće zwěsćił, najskerje z Adblock Plus činić nima."> +<!ENTITY sendPage.knownIssue "Problem, kotryž sće zdźělił, je hižo znaty. Dalše informacije:"> +<!ENTITY typeSelector.other.description "Wubjerće tutu opciju, jeli skerje na problem z Adblock Plus samym hač z jeho filtrami tukaće."> +<!ENTITY issues.disabledgroups.enable.label "Filtrowy abonement/filtrowu skupinu zmóžnić"> +<!ENTITY typeWarning.override.label "Ro&zumju a chcu zdźělenje najebać toho pósłać"> +<!ENTITY issues.disabled.enable.label "Adblock Plus zmóžnić"> +<!ENTITY update.fixed.description "Aktualizacije za waše filtrowe abonementy su najskerje problem rozrisali, kotryž sće zdźělił. Prošu začitajće stronu znowa, spytajće hišće raz a klikńće zaso na 'Hišće raz pósłać', jeli problem hišće wobsteji."> +<!ENTITY anonymous.label "&Anonymne słanje"> +<!ENTITY reloadButton.label "&Stronu znowa začitać"> +<!ENTITY recentReports.clear.label "Wšě &zdźělenki wotstronić"> +<!ENTITY typeSelector.description "Tute wokno budźe wam přez kroki wjesć, kotrež su trěbne za słanje wopisanja problemow Adblock Plus. Wubjerće prošu najprjedy družinu problema, na kotryž sće na tutej stronje storčił:"> +<!ENTITY screenshot.remove.label "&Dowěrne daty wotstronić"> +<!ENTITY issues.ownfilters.description "Někotre filtry, kotrež so na tutu stronu nałožuja, su wot wužiwarja definowane. Prošu znjemóžńće filtry, kotrež móhli problem zawinować:"> +<!ENTITY update.inProgress.description "Adblock Plus dyrbi waše filtrowe abonementy aktualizować, zo by zawěsćił, zo problem njeje so hišće rozrisał. Prošu čakajće..."> +<!ENTITY sendPage.retry.label "Hišće raz pósłać"> +<!ENTITY data.label "Da&ty zdźělenki:"> +<!ENTITY recentReports.label "Waše njedawno pósłane zdźělenki"> +<!ENTITY typeWarning.description "Sće podał, zo maće skerje powšitkowny problem z Adblock Plus hač problem z filtrami. Prošu dźiwajće na to, zo tajke problemy měli so najlěpje w [link]forumje Adblock Plus[/link] zdźělić. Wy měł jenož problemowy rozuprawnik wužiwać, zo byšće eksistowacu diskusiju wudospołnił, dokelž nichtó waše zdźělenje k wědomje njewozmje, chibazo byšće wotkaz na njo dodał. Awtomatisce wutworjeny wotkaz so po słanju zdźělenja doda."> +<!ENTITY issues.disabled.description "Adblock Plus je znjemóžnjeny, w jeho tuchwilnym stawje ničo njeblokuje."> +<!ENTITY attachExtensions.label "Lisćinu aktiwnych &rozšěrjenjow k zdźělence připowěsnyć, jeli konflikt z rozšěrjenjom je přičina problema"> +<!ENTITY issues.nosubscriptions.add.label "Filtrowy abonement přidać"> +<!ENTITY issues.disabledfilters.enable.label "Filter zmóžnić"> +<!ENTITY issues.override.label "&Konfiguracija je korektna, ze zdźělenjom pokročować"> +<!ENTITY issues.nosubscriptions.description "Zda so, zo njejśce žane hotowe lisćiny filtrow abonował, kotrež njewitany wobsah z websydło awtomatisce wotstronjeja."> +<!ENTITY typeSelector.falsePositive.description "Wubjerće tutu opciju, jeli stronje wažny wobsah faluje, so strona wopak zwobraznja abo porjadnje njefunguje. Móžeće zwěsćić, hač Adblock Plus je wina na tutym problemje, hdyž jón nachwilu znjemóžnjeće."> +<!ENTITY typeSelector.other.label "Dr&uhi problem"> +<!ENTITY emailComment.label "Poručamy was, płaćiwu e-mejlowu adresu zapodać, zo bychmy móhli z wami do zwiska stajić, jeli su prašenja wo wašej rozprawje. Budźe nam tež zmóžnić, waše přinoški připóznać a jim wyšu prioritu dać."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus na tutej stronje zaso zmóžnić"> +<!ENTITY outdatedSubscriptions.description "Slědowace filtrowe abonementy njejsu so wot znajmjeńša dweju njedźelow zaktualizowali. Prošu zaktualizujće tute abonementy, prjedy hač pósćeleš zdźělenku. Problem móhł potom hižo rozrisany być."> +<!ENTITY dataCollector.description "Prošu počakńće, mjeztym zo Adblock Plus trěbne daty hromadźi."> +<!ENTITY sendButton.label "Zdźě&lenku pósłać"> +<!ENTITY comment.label "&Komentar (opcionalny):"> +<!ENTITY sendPage.errorMessage "Pospyt, zdźělenku pósłać, je so ze zmylkowym kodom "?1?" njeporadźił. Prošu zawěsćće, zo sće z internetom zwjazany a spytajće hišće raz. Jeli problem dale eksistuje, poprošće prošu w [link]forumje Adblock Plus[/link] wo pomoc."> +<!ENTITY showRecentReports.label "Njedawno pósłane zdźělenki"> +<!ENTITY commentPage.heading "Komentar zapodać"> +<!ENTITY update.start.label "Aktualizaciju nětko startować"> +<!ENTITY issues.disabledfilters.description "Slědowace filtry su znjemóžnjene, najebać toho móhli wuskutk na tutu stronu měć:"> +<!ENTITY screenshot.description "Samsna strona móže rozdźělnje za rozdźělnych ludźi wupadać. Móže nam pomhać, problem rozumić, jeli k wašej zdźělence foto wobrazowki připowěsnjeće. Móžeće wotrězki wotstronić, kotrež sensibelne informacije wobsahuje kaž tež wobłuki markěrować, hdźež so problem pokazuje. Zo byšće to činił, klikńće na wotpowědne tłóčatko a wubjerće wotrězk wobraza ze swojej myšu."> +<!ENTITY screenshot.attach.label "Wo&braz strony k zdźělence připowěsnyć"> +<!ENTITY issues.whitelist.description "Adblock Plus je tuchwilu na stronje, wo kotrejž rozprawjeće, znjemóžnjeny. Prošu zmóžńće jón znowa a začitajće stronu, prjedy hač zdźělenku wotpósćeleće, zo byšće analyzowanje tutoho problema podpěrał."> +<!ENTITY typeSelector.falseNegative.label "Ad&block Plus wabjenje njeblokuje"> +<!ENTITY typeSelector.heading "Problemowy typ wubrać"> +<!ENTITY anonymity.warning "Njemóžemy so zaso na was wobroćić a damy najskerje wašej rozprawje nisku prioritu."> +<!ENTITY wizard.title "Problemowy rozprawnik"> +<!ENTITY issues.ownfilters.disable.label "Filter znjemóžnić"> +<!ENTITY commentPage.description "Tekstowe polo deleka zmóžnja wam, komentar zapodać, zo byšće nam pomhał, problem rozumić. Tutón krok je opcionalny, ale poruča so, jeli problem wočiwidny njeje. Móžeće tež daty zdźělenki přepruwować, prjedy hač so sćele."> +<!ENTITY comment.lengthWarning "Dołhosć wašeho komentar překročuje 1000 znamješkow. Jenož prěnje 1000 znamješkow budu so słać."> +<!ENTITY typeSelector.falseNegative.description "Wubjerće tutu opciju, jeli wabjenje so zwobraznjuje, hačrunjež Adblock Plus je zmóžnjeny."> +<!ENTITY sendPage.waitMessage "Prošu počakńće, doniž Adblock Plus wašu zdźělenku njewotesyła."> +<!ENTITY dataCollector.heading "Witajće do problemoweho rozprawnika"> +<!ENTITY screenshot.heading "Foto wobrazowki připowěsnyć"> +<!ENTITY sendPage.heading "Zdźělenku pósłać"> +<!ENTITY issues.subscriptionCount.description "Zda so, zo sće přewjele filtrowych abonementow abonował. Tute nastajenje so njeporuča, dokelž prawdźepodobnosć problemow jara zwyši. Ani njemóžemy waš problemowe wopisanje akceptować, dokelž je njejasnje, kotry awtor filtroweho abonementa ma jednać. Prošu wotstrońće wšě nimo woprawdźe trěbnych filtrowych abonementow a testujće, hač problem dale wustupuje."> +<!ENTITY screenshot.mark.label "&Problem markěrować"> +<!ENTITY privacyPolicy.label "Prawidła priwatnosće"> +<!ENTITY issues.description "Adblock Plus je problemy z wašej konfiguraciju wotkrył, kotrež móhli na tutón problem wina być abo analyzowanje problema poćežuja."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/sidebar.dtd new file mode 100644 index 0000000..71d6ef1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Ramiki elementa pokazać"> +<!ENTITY address.label "Adresa"> +<!ENTITY context.open.label "W nowym rajtarku wočinić"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Žórło filtra:"> +<!ENTITY noitems.label "Žane blokujomne elementy"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Wulkosć:"> +<!ENTITY reattach.label "Zaso připowěsnyć"> +<!ENTITY search.label "&Pytać:"> +<!ENTITY docDomain.thirdParty "(třeći bok)"> +<!ENTITY filterSource.label "Žórło filtrow"> +<!ENTITY tooltip.docDomain.label "Žórło dokumenta:"> +<!ENTITY context.copy.label "Adresu elementa kopěrować"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Filter ?1? znjemóžnić"> +<!ENTITY context.copyFilter.label "Filter kopěrować"> +<!ENTITY context.block.label "Tutón element blokować"> +<!ENTITY context.enablefilter.label "Filter ?1? zaso zmóžnić"> +<!ENTITY detach.label "Wotpowěsnyć"> +<!ENTITY whitelisted.label "Strona w běłej lisćinje"> +<!ENTITY context.disablefilteronsite.label "Tutón filter na ?1? znjemóžnić"> +<!ENTITY detached.title "Adblock Plus: Blokujomne elementy (wotpowěsnjene)"> +<!ENTITY docDomain.firstParty "(prěni bok)"> +<!ENTITY tooltip.type.whitelisted "(w běłej lisćinje)"> +<!ENTITY tooltip.filter.label "Aktiwny filter:"> +<!ENTITY tooltip.filter.disabled "(znjemóžnjeny)"> +<!ENTITY context.editfilter.label "Aktiwny filter wobdźěłać"> +<!ENTITY tooltip.type.blocked "(zablokowany)"> +<!ENTITY size.label "Wulkosć"> +<!ENTITY context.whitelist.label "Wuwzaćne prawidło za element přidać"> +<!ENTITY context.selectAll.label "Wšitko wubrać"> +<!ENTITY state.label "Staw"> +<!ENTITY docDomain.label "Žórło dokumenta"> +<!ENTITY tooltip.address.label "Adresa:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/subscriptionSelection.dtd new file mode 100644 index 0000000..80511a2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hsb/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Filtrowy a&bonement "?1?" tež přidać"> +<!ENTITY list.download.failed "Adblock Plus njemóžeše lisćiny abonementow wotwołać."> +<!ENTITY list.download.retry "Hišće raz spytać"> +<!ENTITY title.label "&Titul abonementa:"> +<!ENTITY list.download.website "Websydło sej wobhladać"> +<!ENTITY supplementMessage "Tutón filtrowy abonement je za to mysleny, so z filtrowym abonementom "?1?" wužiwać, kotryž hišće njewužiwaće."> +<!ENTITY viewList.label "Filtry sej wobhladać"> +<!ENTITY visitHomepage.label "Startowu stronu wopytać"> +<!ENTITY addSubscription.label "Abonement přidać"> +<!ENTITY dialog.title "Filtrowy abonement Adblock Plus přidać"> +<!ENTITY location.label "&Městno filtroweje lisćiny:"> +<!ENTITY fromWeb.description "Prošu wobkrućće, zo chceće tutón filtrowy abonement přidać. Móžeće titul abo městno abonementa změnić, prjedy hač jón přidaće."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/composer.dtd new file mode 100644 index 0000000..6292ed7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "a cím &végén"> +<!ENTITY domainRestriction.label "Korlá&tozás tartományra:"> +<!ENTITY collapse.default.no.label "Alapértelmezett (nem)"> +<!ENTITY firstParty.label "Csak &belső címhez"> +<!ENTITY preferences.label "&Meglévő szűrők megjelenítése..."> +<!ENTITY pattern.label "Minta"> +<!ENTITY thirdParty.label "Csak külső cím&hez"> +<!ENTITY filter.label "Ú&j szűrő:"> +<!ENTITY collapse.label "Bl&okkolt elem összecsukása:"> +<!ENTITY match.warning "A megadott minta nem egyezik a blokkolt/engedélyezett címek listájával, így annak használata nem jár eredménnyel."> +<!ENTITY anchor.start.label "a cím &elején"> +<!ENTITY matchCase.label "K&is- és nagy betűk megkülönböztetése"> +<!ENTITY custom.pattern.label "E&gyedi:"> +<!ENTITY unselectAllTypes.label "Kijelölés törlése"> +<!ENTITY type.whitelist.label "&Kivételszabály"> +<!ENTITY regexp.warning "A megadott minta reguláris kifejezésként fog szerepelni. Sok ilyen kifejezés lassíthatja a böngészést. Ha nem akar használni ilyen kifejezéseket, a minta végére írja a * jelet."> +<!ENTITY dialog.title "Adblock Plus szűrőszabály hozzáadása"> +<!ENTITY basic.label "Alap nézet"> +<!ENTITY type.filter.label "Blokkoló &szűrő"> +<!ENTITY types.label "Alkalmazás típusokra:"> +<!ENTITY shortpattern.warning "A megadott minta nem optimalizálható, mert túl rövid. Sok ilyen minta lassíthatja a böngészést. Ajánlott ehhez a szűrőhöz egy hosszabb karakterlánc használata."> +<!ENTITY collapse.yes.label "Igen"> +<!ENTITY anchors.label "Minta elfogadása csak:"> +<!ENTITY collapse.default.yes.label "Alapértelmezett (igen)"> +<!ENTITY domainRestriction.help "Adjon meg egy vagy több tartományt a "|" jellel elválasztva, a szűrő csak ezeken a tartományokon lesz alkalmazva. A "~" jellel a tartománynév elején letilthatja a szűrő használatát az adott tartományon."> +<!ENTITY accept.label "Szűrő hozzáadása"> +<!ENTITY options.label "Beállítások"> +<!ENTITY disabled.warning "Az Adblock Plus jelenleg le van tiltva. Szűrőket hozzáadhat, de azok nem fognak működni, amíg nem [link]engedélyezi az Adblock Plust[/link]."> +<!ENTITY anchor.start.flexible.label "a tartománynév &elején"> +<!ENTITY collapse.no.label "Nem"> +<!ENTITY selectAllTypes.label "Minden kijelölése"> +<!ENTITY advanced.label "Haladó nézet"> +<!ENTITY pattern.explanation "A minta lehet egy webcím bármely része, amelyben a * szimbólum helyettesítő karakterként szerepelhet. A szűrő csak azokra címekre lesz alkalmazva, amelyekre a minta illeszkedik."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/filters.dtd new file mode 100644 index 0000000..5059863 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Az összes saját szűrője le lesz cserélve a kiválasztott fájlban lévőkre. Biztosan folytatni szeretné?"> +<!ENTITY slow.column "&Lassú szűrők"> +<!ENTITY enabled.column "&Engedélyezve"> +<!ENTITY subscription.lastDownload.checksumMismatch "Sikertelen, érvénytelen ellenőrző összeg"> +<!ENTITY noFiltersInGroup.text "A kiválasztott csoport üres."> +<!ENTITY subscription.actions.label "Műveletek"> +<!ENTITY filter.selectAll.label "Az összes kijelölése"> +<!ENTITY backupButton.label "&Biztonsági mentés és visszaállítás"> +<!ENTITY restore.minVersion.warning "Figyelmeztetés: a fájlt az Adblock Plus újabb verziójával készült. Frissítsen az Adblock Plus legújabb verziójára, mielőtt visszaállítaná ezt a fájlt."> +<!ENTITY restore.error "A fájlt nem sikerült feldolgozni, lehetséges, hogy nem egy Adblock Plus biztonsági mentést tartalmaz."> +<!ENTITY sort.ascending.label "Rendezés &A > Z"> +<!ENTITY sort.label "&Rendezés"> +<!ENTITY subscription.source.label "Szűrő lista"> +<!ENTITY hitcount.column "&Találatok"> +<!ENTITY noFilters.text "Nincsenek saját szűrők."> +<!ENTITY backup.custom.title "Csak saját szűrők"> +<!ENTITY subscription.external.label "Másik kiterjesztés frissíti"> +<!ENTITY subscription.delete.label "Törlés"> +<!ENTITY noGroupSelected.text "Ki kell választania egy szűrő csoportot a benne lévő szűrők megjelenítéséhez."> +<!ENTITY filter.cut.label "Kivágás"> +<!ENTITY restore.default.label "Visszaállítás ?1?-i állapotra"> +<!ENTITY subscription.lastDownload.inProgress "Letöltés..."> +<!ENTITY subscriptions.tab.label "Külső szűrők"> +<!ENTITY sort.descending.label "Rendezés &Z > A"> +<!ENTITY filters.remove.warning "Biztosan eltávolítja az összes kiválasztott szűrőt?"> +<!ENTITY filter.delete.label "Törlés"> +<!ENTITY addSubscriptionAdd.label "Hozzáadás"> +<!ENTITY viewMenu.label "Nézet"> +<!ENTITY subscription.lastDownload.unknown "ismeretlen"> +<!ENTITY addSubscriptionCancel.label "Mégse"> +<!ENTITY subscription.enabled.label "Engedélyezve"> +<!ENTITY noSubscriptions.text "Nincs felvéve egyetlen külső szűrőt sem. Az Adblock Plus nem fog semmit szűrni szűrők nélkül. Kérem használja a "Külső szűrő felvétele" funkciót új szűrők felvételéhez."> +<!ENTITY subscription.update.label "Szűrők frissítése"> +<!ENTITY dialog.title "Adblock Plus szűrő beállítások"> +<!ENTITY addFilter.label "Szűrő &hozzáadása"> +<!ENTITY subscription.minVersion.warning "A külső szűrő újabb Adblock Plus verzióhoz készült, frissítenie kell az Adblock Plust a legújabb verzióra."> +<!ENTITY subscription.lastDownload.invalidURL "Sikertelen, érvénytelen cím"> +<!ENTITY backup.error "Hiba történt a szűrők fájlba mentésekor. Ellenőrizze, hogy a fájl nem írásvédett vagy nem használja-e egy másik alkalmazás."> +<!ENTITY filter.moveUp.label "Mozgatás fel"> +<!ENTITY addGroup.label "Szűrő &csoport felvétele"> +<!ENTITY filter.edit.label "Szerkesztés"> +<!ENTITY subscription.showHideFilters.label "Szűrők megjelenítése/elrejtése"> +<!ENTITY acceptableAds2.label "Néhány nem &tolakodó hirdetés engedélyezése"> +<!ENTITY addSubscriptionOther.label "Külső szűrő hozzáadása"> +<!ENTITY close.label "Bezárás"> +<!ENTITY sort.none.label "Ren&dezetlen"> +<!ENTITY filter.actions.label "Szűrő műveletek"> +<!ENTITY filter.copy.label "Másolás"> +<!ENTITY filter.moveDown.label "Mozgatás le"> +<!ENTITY filter.resetHitCounts.label "Találati statisztika törlése"> +<!ENTITY readMore.label "Mi ez?"> +<!ENTITY subscription.moveUp.label "Mozgatás fel"> +<!ENTITY addSubscription.label "Kül&ső szűrő hozzáadása"> +<!ENTITY subscription.homepage.label "Honlap"> +<!ENTITY backup.complete.title "Az összes szűrő és feliratkozás"> +<!ENTITY restore.own.label "Saját mentés visszaállítása"> +<!ENTITY restore.complete.warning "Az összes szűrő beállítása le lesz cserélve a kiválasztott fájlban lévőkre. Biztosan folytatni szeretné?"> +<!ENTITY filters.tab.label "Saját szűrők"> +<!ENTITY backup.label "Új biztonsági mentés"> +<!ENTITY find.label "&Keresés"> +<!ENTITY subscription.moveDown.label "Mozgatás le"> +<!ENTITY subscription.lastDownload.connectionError "Sikertelen, letöltési hiba"> +<!ENTITY subscription.lastDownload.success "Sikeres"> +<!ENTITY subscription.lastDownload.invalidData "Sikertelen, érvénytelen szűrőlista"> +<!ENTITY filter.paste.label "Beillesztés"> +<!ENTITY subscription.disabledFilters.enable "Letiltott szűrők engedélyezése"> +<!ENTITY lasthit.column "&Utolsó találat"> +<!ENTITY subscription.editTitle.label "Cím szerkesztése"> +<!ENTITY subscription.disabledFilters.warning "Néhány szűrő ebben a listában le van tiltva."> +<!ENTITY filter.column "&Szűrő szabály"> +<!ENTITY subscription.lastDownload.label "Legutóbb letöltve:"> +<!ENTITY viewList.label "Lista megtekintése"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/firstRun.properties new file mode 100644 index 0000000..8a3d609 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Böngésszen privátban azáltal, hogy letiltja a követést - elrejtheti nyomait a reklámcégek elől, amelyek egyébként figyelnék minden lépését. +firstRun_toggle_off=KIKAPCSOLVA +firstRun_feature_tracking=Követés letiltása +firstRun_feature_malware=Rosszindulatú kódok blokkolása +firstRun_title=Sikeresen telepítette az Adblock Plus-t +firstRun_toggle_on=BEKAPCSOLVA +firstRun_acceptableAdsExplanation=Szeretnénk arra biztatni a weboldalakat, hogy egyértelmű, nem tolakodó hirdetéseket használjanak. Ezért hoztunk létre <a>szigorú irányelveket</a>, amelyek segítségével azonosíthatók az elfogadható hirdetések, amelyek az alapbeállítások között találhatók meg. Ha ennek ellenére minden hirdetést <a>blokkolni</a> szeretne, ezt továbbra is megteheti mindössze néhány másodperc alatt. +firstRun_contributor_credits=Hozzájárulók névsora +firstRun_dataCorruptionWarning=Állandóan megjelenik ez az oldal? <a>Kattintson ide!</a> +firstRun_acceptableAdsHeadline=A bosszantó hirdetések mostantól blokkolva lesznek +firstRun_share=Mondja el barátainak +firstRun_share_headline=<a>Segítsen nekünk</a> jobb hellyé tenni a világhálót +firstRun_feature_social_description=Automatikusan szabaduljon meg a közösségi médiával kapcsolatos gomboktól, mint például a facebook "Tetszik" gombja, amelyek a weboldalakon jelennek meg és figyelik az Ön szokásait. +firstRun_filterlistsReinitializedWarning=Egy hiba miatt az összes szűrő eltávolításra került és a biztonsági másolatot sem sikerült visszaállítani. Az összes szűrő és az elfogadható hirdetések beállításai alapállapotba kerültek. Kérem ellenőrizze a szűrő listákat és az elfogadható hirdetések beállításait az <a>Adblock Plus opció</a> közt. +firstRun_feature_malware_description=Tegye a böngészést biztonságosabbá azáltal, hogy letiltja az ismert malware címeket. +firstRun_features=Az Adblock Plus a reklámok blokkolásánál többre is képes +firstRun_donate=adományozás +firstRun_donate_label=A projekt támogatása +firstRun_feature_social=Közösségi oldalak gombjainak eltávolítása +firstRun_legacySafariWarning=A Safari egy régi verzióját használja, amelyet nem támogat az Adblock Plus. Lehetséges, hogy nem fog megfelelően működni vagy lelassítja a működést egyes weboldalakon. Erősen ajánlott frissíteni a Safari 6.1.1-es (Mac OS X 10.8 Mountain Lion operációs rendszeren) , vagy a Safari 7.0.1-es és újabb verzióira (OS X 10.9 Maverics operációs rendszertől) vagy használja a Mozilla Firefox, Google Chrome vagy Opera legújabb verzióját. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/global.properties new file mode 100644 index 0000000..3b32ac6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Nincsenek blokkolható elemek az aktuális oldalon. +action3_tooltip=Kattintson ide az Adblock Plus ki/bekapcsolásához. +notification_antiadblock_title=Célzott üzenetek elrejtése +type_label_script=szkript +filter_elemhide_nocriteria=Nincs megadva feltétel az elrejtendő elemre +blockingGroup_title=Reklám szűrő szabályok +whitelisted_tooltip=Az Adblock be van kapcsolva, de a szűrés le van tiltva az aktuális oldalon. +type_label_stylesheet=stíluslap +blocked_count_tooltip=?1?/?2? +type_label_font=betűtípus +type_label_popup=felugró ablak +filter_regexp_tooltip=Ez a szűrő vagy reguláris kifejezés vagy túl rövid az optimalizációhoz. Túl sok ilyen szűrő lelassíthatja a böngészést. +action0_tooltip=Kattintson ide a környezeti menühöz, középső gombbal a ki/bekapcsoláshoz. +whitelisted_page=Az Adblock Plus le van tiltva az aktuális oldalon +remove_group_warning=Biztosan eltávolítja ezt a csoportot? +action1_tooltip=Kattintson ide a blokkolható elemek megnyitásához/bezárásához, középső gombbal a ki/bekapcsoláshoz. +type_label_xmlhttprequest=XML kérés +active_tooltip=Az Adblock Plus aktív, ?1? szűrő(k) és ?2? saját szűrő(k) van használatban. +type_label_document=dokumentum +type_label_object_subrequest=objektum alkérés +whitelistGroup_title=Kivétel szabályok +disabled_tooltip=Az Adblock Plus ki van kapcsolva. +filter_elemhide_duplicate_id=Csak egy ID-ját lehet megadni az elrejtendő elemnek +type_label_object=objektum +action2_tooltip=Kattintson ide a beállítások megnyitásához, középső gombbal a ki/bekapcsoláshoz. +type_label_subdocument=keret +clearStats_warning=Ezzel letörli az összes találati statisztikát és letiltja a mentésüket. Biztosan folytatja? +notification_antiadblock_message=Ezen az oldalon célzott üzeneteket jelenítenek meg az Adblock Plus felhasználóinak. Szeretné, ha az Adblock Plus elrejtené ezeket az üzeneteket? +blocked_count_addendum=(fehér listán: ?1?, rejtett: ?2?) +subscription_invalid_location=A megadott külső szűrőt tartalmazó cím helytelen, vagy hibás fájlnevet tartalmaz. +type_label_image=kép +remove_subscription_warning=Valóban el kívánja távolítani ezt a szűrőt? +type_label_other=egyéb +mobile_menu_enable=ABP: Engedélyezés +type_label_media=hang/videó +mobile_menu_disable_site=ABP: Letiltja itt: ?1? +elemhideGroup_title=Elem elrejtési szabályok +mobile_menu_enable_site=ABP: Engedélyezi itt: ?1? +type_label_elemhide=rejtett +newGroup_title=Új szűrő csoport +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/overlay.dtd new file mode 100644 index 0000000..f60fae1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Igen"> +<!ENTITY notification.button.no "&Nem"> +<!ENTITY sync.label "Adblock Plus beállítások s&zinkronizálása"> +<!ENTITY whitelist.site.label "Szűrés tiltása itt: ?1?"> +<!ENTITY filters.label "Szűrő &beállítások"> +<!ENTITY disable.label "Letiltás mindenhol"> +<!ENTITY objecttab.title "Blokkolás"> +<!ENTITY objecttab.tooltip "Kattintson ide a blokkoláshoz (Adblock Plus)"> +<!ENTITY menuitem.label "Ad&block Plus beállítások"> +<!ENTITY objecttabs.label "&Fülek megjelenítése Java és Flash objektumoknál"> +<!ENTITY sendReport.label "Hibás webhel&y bejelentése"> +<!ENTITY whitelist.page.label "Szűrés tiltása csak ezen az aloldalon"> +<!ENTITY context.image.label "Kép blokkolása"> +<!ENTITY counthits.label "&Szűrő találati statisztika mentése"> +<!ENTITY opensidebar.label "Blokkolható ob&jektumok megjelenítése"> +<!ENTITY notification.button.close "&Bezárás"> +<!ENTITY contribute.label "Közreműködés az Adblock Plus-hoz"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Keret blokkolása"> +<!ENTITY blocked.tooltip "Blokkolt objektumok ezen az oldalon:"> +<!ENTITY hideplaceholders.label "Letiltott elemek &helyőrzőinek elrejtése"> +<!ENTITY showinstatusbar.label "Megje&lenítés az állapotsoron"> +<!ENTITY sidebar.title "Blokkolható objektumok"> +<!ENTITY options.label "&Opciók"> +<!ENTITY context.object.label "Objektum blokkolása"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Újra-engedélyezés ezen az oldalon"> +<!ENTITY filters.tooltip "Legaktívabb szűrők:"> +<!ENTITY closesidebar.label "Blokkolható ob&jektumok elrejtése"> +<!ENTITY showintoolbar.label "M&egjelenítés az eszköztáron"> +<!ENTITY status.tooltip "Állapot:"> +<!ENTITY context.media.label "Adblock Plus: videó/audió blokkolása"> +<!ENTITY subscription.update.label "Szűrők frissítése"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/sendReport.dtd new file mode 100644 index 0000000..e9477ed --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Visszavonás"> +<!ENTITY issues.disabledgroups.description "Az alábbi szűrő listák/csoportok le vannak tiltva, de hatással lehetnének az alábbi oldalra:"> +<!ENTITY showData.label "Jelentés adatainak megtekintése"> +<!ENTITY typeSelector.falsePositive.label "Az Adblock Plus &túl sok mindent letilt"> +<!ENTITY issues.change.description "A konfiguráció megváltozott. Kérem töltse újra az oldalt és próbálja ki a változásokat és csak akkor küldje el a jelentést, ha a módosítások hatására nem szűnt meg a probléma."> +<!ENTITY email.label "&Email:"> +<!ENTITY issues.openPreferences.label "Szűrő beállítások megnyitása"> +<!ENTITY sendPage.confirmation "Az Ön jelentése el lett mentve. Az alábbi címen érheti el a későbbiekben:"> +<!ENTITY copyLink.label "Jelentés &címének másolása"> +<!ENTITY issues.nofilters.description "Az Adblock Plus jelenleg nem blokkol semmit az aktuális oldalon. A tapasztalt hibajelenség valószínűleg nem köthető az Adblock Plus-hoz."> +<!ENTITY sendPage.knownIssue "Az Ön által bejelentett hiba már ismert. További információk:"> +<!ENTITY typeSelector.other.description "Válassza ezt a lehetőséget, ha Ön szerint a probléma magával az Adblock Plus-szal van és nem a szűrőkkel."> +<!ENTITY issues.disabledgroups.enable.label "Szűrő lista/csoport engedélyezése"> +<!ENTITY typeWarning.override.label "Megértettem é&s így is szeretném elküldeni a jelentést"> +<!ENTITY issues.disabled.enable.label "Az Adblock Plus engedélyezése"> +<!ENTITY update.fixed.description "A szűrőlisták frissítése nagy valószínűséggel megoldja a bejelentett hibát. Kérem frissítse az oldalt és próbálja újra, csak akkor küldjön bejelentést, ha a probléma továbbra is fennáll."> +<!ENTITY anonymous.label "Né&vtelen beküldendő"> +<!ENTITY reloadButton.label "&Oldal újratöltése"> +<!ENTITY recentReports.clear.label "Az összes &jelentés eltávolítása"> +<!ENTITY typeSelector.description "Ez az ablak végigvezeti az Adblock Plus hiba bejelentési lépésein. Először kérem válassza ki a webhelyen jelentkező hiba jellegét:"> +<!ENTITY screenshot.remove.label "&Kényes adatok eltávolítása"> +<!ENTITY issues.ownfilters.description "Ezen az oldalon néhány alkalmazott szűrőt a felhasználó definiált. Kérem tiltsa le az alábbi szűrők közül azokat, amelyeket a problémát okozhatták."> +<!ENTITY update.inProgress.description "Az Adblock Plusnak frissítenie kell a szűrőlistákat, hogy megbizonyosodjon róla, hogy a probléma még mindig fennáll. Kérem várjon…"> +<!ENTITY sendPage.retry.label "Újraküldés"> +<!ENTITY data.label "Jelentés a&datai:"> +<!ENTITY recentReports.label "Legutóbb beküldött jelentések"> +<!ENTITY typeWarning.description "Ön azt a lehetőséget választotta, hogy a hiba az Adblock Plus-szal van és nem a szűrőkkel. Kérem vegye figyelembe, hogy az ilyen hibákat célszerűbb az [link]Adblock Plus fórumon[/link] bejelenteni. Csak akkor használja így a hibajelentőt, ha egy meglévő szálhoz szeretne hozzátenni, és a jelentésben tüntesse fel a hozzá tartozó hivatkozást is. Az automatikusan generált hivatkozás a jelentés beküldése után áll majd rendelkezésre."> +<!ENTITY issues.disabled.description "Az Adblock Plus le van tiltva, így nem tud semmit blokkolni."> +<!ENTITY attachExtensions.label "Engedélyezett k&iterjesztések listájának csatolása, arra az esetre, ha a kiterjesztések közti ütközésekből adódik a probléma"> +<!ENTITY issues.nosubscriptions.add.label "Feliratkozás szűrőre"> +<!ENTITY issues.disabledfilters.enable.label "Szűrő engedélyezése"> +<!ENTITY issues.override.label "A kon&figuráció megfelelő, bejelentés folytatása"> +<!ENTITY issues.nosubscriptions.description "Úgy tűnik, hogy nincs feliratkozva egyetlen előre elkészített szűrőlistára sem, amellyel automatikusan eltávolíthatja a nem kívánt tartalmakat a webhelyekről."> +<!ENTITY typeSelector.falsePositive.description "Válassza ezt a lehetőséget, ha a webhelyről hiányoznak lényeges tartalmak, rosszul jelenik meg, vagy hibásan működik. Úgy bizonyosodhat meg arról, hogy az Adblock Plus okozza a problémát, ha ideiglenesen letiltja azt."> +<!ENTITY typeSelector.other.label "E&gyéb"> +<!ENTITY emailComment.label "Javasoljuk, hogy érvényes e-mail címet adjon meg, így fel tudjuk venni Önnel a kapcsolatot, ha kérdés merül fel a jelentésével kapcsolatban. Ezzel azt is lehetővé teszi, hogy felismerjük az Ön hozzájárulásait, és azok magasabb prioritást kapjanak."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus újraengedélyezése az oldalon"> +<!ENTITY outdatedSubscriptions.description "Az alábbi szűrőlistákat legalább két hete nem frissítette. Kérem frissítse a listákat mielőtt jelentést küld róluk, lehetséges, hogy a probléma időközben megoldódott."> +<!ENTITY dataCollector.description "Kérem várjon pár pillanatot, amíg az Adblock Plus összegyűjti a szükséges adatokat."> +<!ENTITY sendButton.label "Jelentés &küldése"> +<!ENTITY comment.label "&Megjegyzés (nem kötelező):"> +<!ENTITY sendPage.errorMessage "A jelentés elküldése közben hiba történt, melynek kódja: "?1?". Kérem ellenőrizze, hogy megfelelően csatlakozik-e az Internethez és próbálja újra. Ha a probléma nem szűnik meg, kérem kérjen segítséget az [link]Adblock Plus fórumon[/link]."> +<!ENTITY showRecentReports.label "Legutóbb beküldött jelentések"> +<!ENTITY commentPage.heading "Megjegyzés hozzáadása"> +<!ENTITY update.start.label "Frissítés most"> +<!ENTITY issues.disabledfilters.description "Az alábbi szűrők le vannak tiltva, de hatással lehetnének az oldalra:"> +<!ENTITY screenshot.description "Ugyanaz az oldal máshogy is kinézhet mások számítógépén. Segíthet a probléma megoldásában, ha csatol egy képernyőképet a jelentéshez. A képről eltávolíthatja a kényes információt tartalmazó részeket, valamint kiemelheti a problémás területeket. Ehhez nyomja meg a megfelelő gombot és jelölje ki az adott területet az egérrel."> +<!ENTITY screenshot.attach.label "Oldal képének &csatolása a jelentéshez"> +<!ENTITY issues.whitelist.description "Az Adblock Plus jelenleg le van tiltva az oldalon, amelyet be szeretne jelenteni. Kérem engedélyezze újra a bejelentés előtt, hogy több segédinformáció álljon rendelkezésre a hiba kivizsgálásánál."> +<!ENTITY typeSelector.falseNegative.label "Az Adblock Plus nem tiltott le egy hi&rdetést"> +<!ENTITY typeSelector.heading "Vállasszon típust"> +<!ENTITY anonymity.warning "Nem fogunk tudni kapcsolatba lépni Önnel, és valószínű, hogy a jelentése alacsonyabb prioritást kap."> +<!ENTITY wizard.title "Hibajelentő"> +<!ENTITY issues.ownfilters.disable.label "Szűrő letiltása"> +<!ENTITY commentPage.description "Az alábbi szöveges mezőbe beírhat egy megjegyzést, ami segíthet megérteni a problémát. Ez a lépés kihagyható, de ajánlott, ha a probléma nem egyértelmű. A jelentés elküldése előtt még lesz lehetősége átnézni a megadott adatokat."> +<!ENTITY comment.lengthWarning "A megjegyzés hossza meghaladja az 1000 karaktert. Csak az első 1000 karakter lesz elküldve."> +<!ENTITY typeSelector.falseNegative.description "Válassza ezt a lehetőséget, ha hirdetések jelennek meg az oldalon annak ellenére, hogy az Adblock Plus engedélyezve van."> +<!ENTITY sendPage.waitMessage "Kérem várjon, amíg az Adblock Plus elküldi a jelentését."> +<!ENTITY dataCollector.heading "Üdvözli a hibajelentő"> +<!ENTITY screenshot.heading "Képernyőkép csatolása"> +<!ENTITY sendPage.heading "Jelentés küldése"> +<!ENTITY issues.subscriptionCount.description "Úgy tűnik, hogy túl sok szűrőre van feliratkozva. Ez azért nem ajánlott, mivel ilyenkor gyakrabban fordulnak elő problémák. Emiatt nem fogadhatjuk el a hiba bejelentését, mivel nem tisztázott, hogy melyik szűrő készítőjének kell továbbítani. Kérem távolítsa el azokat a szűrőket, amelyek nem feltétlenül szükségesek és próbálja meg újra előidézni a hibajelenséget."> +<!ENTITY screenshot.mark.label "&Problémás rész jelölése"> +<!ENTITY privacyPolicy.label "Adatvédelmi elvek"> +<!ENTITY issues.description "Az Adblock Plus konfigurációs problémákat észlelt, amelyek okozhatják a bejelentendő hibát vagy megnehezíthetik a bejelentés elküldését."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/sidebar.dtd new file mode 100644 index 0000000..4446fff --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Objektum széleinek villogtatása"> +<!ENTITY address.label "Cím"> +<!ENTITY context.open.label "Megnyitás új fülön"> +<!ENTITY type.label "Típus"> +<!ENTITY tooltip.filterSource.label "Szűrő forrása:"> +<!ENTITY noitems.label "Nincs blokkolható objektum"> +<!ENTITY filter.label "Szűrő"> +<!ENTITY tooltip.size.label "Méret:"> +<!ENTITY reattach.label "Oldalsávba"> +<!ENTITY search.label "&Keresés:"> +<!ENTITY docDomain.thirdParty "(3. fél)"> +<!ENTITY filterSource.label "Szűrő forrása"> +<!ENTITY tooltip.docDomain.label "Dokumentum forrás:"> +<!ENTITY context.copy.label "Objektum címének másolása"> +<!ENTITY tooltip.type.label "Típus:"> +<!ENTITY context.disablefilter.label "Szűrő letiltása ?1?"> +<!ENTITY context.copyFilter.label "Szűrő másolása"> +<!ENTITY context.block.label "Objektum blokkolása"> +<!ENTITY context.enablefilter.label "Szűrő engedélyezése ?1?"> +<!ENTITY detach.label "Leválaszt"> +<!ENTITY whitelisted.label "A cím 'fehér listán' van"> +<!ENTITY context.disablefilteronsite.label "Szűrő letiltása itt: ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokkolható objektumok (leválasztva)"> +<!ENTITY docDomain.firstParty "(első fél)"> +<!ENTITY tooltip.type.whitelisted "(fehér listán)"> +<!ENTITY tooltip.filter.label "Alkalmazott szűrők:"> +<!ENTITY tooltip.filter.disabled "(letiltva)"> +<!ENTITY context.editfilter.label "Alkalmazott szűrő szerkesztése"> +<!ENTITY tooltip.type.blocked "(blokkolva)"> +<!ENTITY size.label "Méret"> +<!ENTITY context.whitelist.label "Kivétel megadása objektumhoz"> +<!ENTITY context.selectAll.label "Minden kijelölése"> +<!ENTITY state.label "Állapot"> +<!ENTITY docDomain.label "Dokumentum forrás"> +<!ENTITY tooltip.address.label "Cím:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/subscriptionSelection.dtd new file mode 100644 index 0000000..435a5fd --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hu/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Szűrő &hozzáadása: "?1?""> +<!ENTITY list.download.failed "Hiba a szűrők betöltésekor."> +<!ENTITY list.download.retry "Próbálja újra"> +<!ENTITY title.label "Külső szűrő &neve:"> +<!ENTITY list.download.website "Weboldal megtekintése"> +<!ENTITY supplementMessage "Ez a szűrő a(z) "?1?" szűrővel együtt használható csak, amely jelenleg nincs a szűrőkhöz hozzáadva."> +<!ENTITY viewList.label "Szűrők megtekintése"> +<!ENTITY visitHomepage.label "Honlap meglátogatása"> +<!ENTITY addSubscription.label "Szűrő hozzáadása"> +<!ENTITY dialog.title "Adblock Plus szűrő felvétele"> +<!ENTITY location.label "Szűrőlista &címe:"> +<!ENTITY fromWeb.description "Kérem erősítse meg a szűrő hozzáadását. Módosíthatja a szűrő címét és helyét a hozzáadás előtt."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/composer.dtd new file mode 100644 index 0000000..8fc62bb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "հասցեի &վերջում"> +<!ENTITY domainRestriction.label "Արգելել &դոմեյնում`"> +<!ENTITY collapse.default.no.label "Լռությամբ (ոչ)"> +<!ENTITY firstParty.label "Միայն &հիմնական"> +<!ENTITY preferences.label "Նայել ա&ռկա ֆիլտրերը..."> +<!ENTITY pattern.label "Որոնել շաբլոն"> +<!ENTITY thirdParty.label "Միայն &երրորդ կողմից"> +<!ENTITY filter.label "Նոր &Ֆիլտր."> +<!ENTITY collapse.label "Թաքցնել ֆիլտրվա&ծները`"> +<!ENTITY match.warning "Ներմուծված շաբլոնը այլևս չի համապատասխանում հասցեին և ոչ մի ազդեցություն չի ունենալու."> +<!ENTITY anchor.start.label "հա&սցեի սկզբում"> +<!ENTITY matchCase.label "Հաշվի առնել &տառատեսակը"> +<!ENTITY custom.pattern.label "Սե&փական."> +<!ENTITY unselectAllTypes.label "Չընտրել ոչինչ"> +<!ENTITY type.whitelist.label "Բա&ցառություն"> +<!ENTITY regexp.warning "Ներմուծված շաբլոնը ընկալվելու է որպես ռեգուլյար արտահայտություն(regexp): Ռեգուլյար արտահայտությունների մեծ քանակը կարող է դանդաղեցնել ծրագրի աշխատանքը: Եթե դուք չեք պատրաստվում օգտագործել ռեգուլյար արտահայտություն, ավելացրեք * շաբլոնի վերջում:"> +<!ENTITY dialog.title "Ավելացնել «Adblock Plus» ֆիլտրման կանոն"> +<!ENTITY basic.label "Պարզ տեսք"> +<!ENTITY type.filter.label "&Արգելող ֆիլտր"> +<!ENTITY types.label "Ավելացնել հետևյալ տիպերին`"> +<!ENTITY shortpattern.warning "Ներմուծված շաբլոնը շատ կարճ է ու չի կարող օպտիմիզացվել, այսպիսի շաբլոնների մեծ քանակը կարող է դանդաղեցնել ծրագրի աշխատանքը: Խորհուրդ է տրվում ֆիլտրի համար օգտագործել ավելի երկար տող:"> +<!ENTITY collapse.yes.label "Այո"> +<!ENTITY anchors.label "Շաբլոններն ընդունել միայն."> +<!ENTITY collapse.default.yes.label "Լռությամբ (այո)"> +<!ENTITY domainRestriction.help "Սահմանեք մեկ կամ ավել դոմեյներ բաժանված "|" նշանով, ֆիլտրը կաշխատի միայն այդ դոմեյներում: Դոմեյնի անվան առաջ "~" նշանը արգելում է ֆիլտրի օգտագործումը այդ դոմեյնում:"> +<!ENTITY accept.label "Ավելացնել ֆիլտր"> +<!ENTITY options.label "Ընտրանքներ"> +<!ENTITY disabled.warning "«Adblock Plus»ը անջատված է: Դուք կարող եք ավելացնել ֆիլտրեր, բայց դրանց գործելու համար պետք է [link]միացնել «Adblock Plus»ը[/link]:"> +<!ENTITY anchor.start.flexible.label "դոմեյնի անվան &սկզբում"> +<!ENTITY collapse.no.label "Ոչ"> +<!ENTITY selectAllTypes.label "Լրիվ Ընտրել"> +<!ENTITY advanced.label "Ընդլայնված տեսք"> +<!ENTITY pattern.explanation "Նմուշը կարող է լինել հասցեի ցանկացած մաս, *-ը նշանակում է ցանկացած սիմվոլ: Կֆիլտրվեն միայն նմուշին բավարարող հասցեները:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/filters.dtd new file mode 100644 index 0000000..f098c8f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Բոլոր ֆիլտրերը կփոխարինվեն նորերով:Ցանկանո՞ւմ եք կիրառել:"> +<!ENTITY slow.column "Դանդաղ ֆիլտրեր (&w)"> +<!ENTITY enabled.column "&Միացած է"> +<!ENTITY subscription.lastDownload.checksumMismatch "Անհաջող."> +<!ENTITY noFiltersInGroup.text "Ընտրված խումբը դատարկ է:"> +<!ENTITY subscription.actions.label "Գործողություններ"> +<!ENTITY filter.selectAll.label "Նշել բոլորը"> +<!ENTITY backupButton.label "Պահուստ և Վերականգնում (&B)"> +<!ENTITY restore.minVersion.warning "Ուշադրություն:Ֆայլը ստեղշվել է ավելի նոր Adblock Plus-ի տարբերակով:Թարմացրե՛ք Adblock Plus-ը՝ այդ ֆայլից վերականգնելու համար:"> +<!ENTITY restore.error "Անհանար է վերականգնել:Հնարավո՞ր է, որ դա Adblock Plus-ի արխիվ չէ:"> +<!ENTITY sort.ascending.label "&Ա > Ֆ կարգով"> +<!ENTITY sort.label "&Դասավորել"> +<!ENTITY subscription.source.label "Ֆիլտրերի ցուցակ"> +<!ENTITY hitcount.column "Ազդ (&Հ)"> +<!ENTITY noFilters.text "Դուք դեռևս չունեք որևէ սեփական ֆիլտր:"> +<!ENTITY backup.custom.title "Միայն սեփական ֆիլտրերը"> +<!ENTITY subscription.external.label "Թարմացվեց այլ հավելվածի կողմից"> +<!ENTITY subscription.delete.label "Ջնջել"> +<!ENTITY noGroupSelected.text "Պիտի ընտրեք ֆաիլտրի խումբ՝ այն ցուցադրելուց առաջ:"> +<!ENTITY filter.cut.label "Կտրել"> +<!ENTITY restore.default.label "Վերականգնել ?1?-ի պահուստը"> +<!ENTITY subscription.lastDownload.inProgress "Բեռնում..."> +<!ENTITY subscriptions.tab.label "Բաժանորդագրված ֆիլտրեր"> +<!ENTITY sort.descending.label "&Ֆ > Ա կարգով"> +<!ENTITY filters.remove.warning "Արդյո՞ք ցանկանում եք ջնջել նշված վոլոր ֆիլտրերը:"> +<!ENTITY filter.delete.label "Ջնջել"> +<!ENTITY addSubscriptionAdd.label "Ավելացնել"> +<!ENTITY viewMenu.label "Տեսք"> +<!ENTITY subscription.lastDownload.unknown "ՉԿԱ"> +<!ENTITY addSubscriptionCancel.label "Չեղարկել"> +<!ENTITY subscription.enabled.label "Միացված է"> +<!ENTITY noSubscriptions.text "Դուք դեռևս չեք բաժանորդագրվել որևէ ֆիլտրի: Adblock Plus-ը ոչինչ չի արգելափակի առանց ֆիլտրերի, այդ պատճառով խնդրում ենք կիրառել «Ավելացնել բաժանորդագրություն» կոճակը:"> +<!ENTITY subscription.update.label "Թարմացնել ֆիլտրերը"> +<!ENTITY dialog.title "Adblock Plus ֆիլտրերի կարգավորեւմ"> +<!ENTITY addFilter.label "Ավելացնել Ֆիլտր (&d)"> +<!ENTITY subscription.minVersion.warning "Այս ֆիլտրին բաժանորդագրվելու համար անհրաժեշտ է Adblock Plus-ի ավելի նոր տարբերակը, դուք պետք է թարմացնեք Adblock Plus-ը:"> +<!ENTITY subscription.lastDownload.invalidURL "Անհաջող. Սխալ հասցե"> +<!ENTITY backup.error "Անհանար է պահել փոփոխությունները:Համոզվե՛ք, որ ֆայլը հնարավոր է փոխել կամ չի օգտագործվում այլ ծրագրի կողմից:"> +<!ENTITY filter.moveUp.label "Բարձրացնել վերև"> +<!ENTITY addGroup.label "Ավելացնել ֆիլտրերի խումբ"> +<!ENTITY filter.edit.label "Խմբագրել"> +<!ENTITY subscription.showHideFilters.label "Ցուցադրել/Թաքցնել ֆիլտրերը"> +<!ENTITY acceptableAds2.label "Թույլատրել որոշ չկպչուն գովազդ (&!)"> +<!ENTITY addSubscriptionOther.label "Ավելացնել այլ բաժանորդագրություն"> +<!ENTITY close.label "Փակել"> +<!ENTITY sort.none.label "Ա&նկանոն"> +<!ENTITY filter.actions.label "Գործողություններ ֆիլտրերի հետ"> +<!ENTITY filter.copy.label "Կրկնել"> +<!ENTITY filter.moveDown.label "Բարձրացնել ներքև"> +<!ENTITY filter.resetHitCounts.label "Ջնջել ստատիստիկան"> +<!ENTITY readMore.label "Տեղեկանալ ավելին"> +<!ENTITY subscription.moveUp.label "Բարձրացնել վերև"> +<!ENTITY addSubscription.label "Բաժանորդագրվել ֆիլտրերի (&f)"> +<!ENTITY subscription.homepage.label "տնէջ"> +<!ENTITY backup.complete.title "Բոլոր ֆիլտրերը և բաժանորդագրությունները"> +<!ENTITY restore.own.label "Վերականգնել սեփական արխիվը"> +<!ENTITY restore.complete.warning "Բոլոր ֆիլտրերը կփոխարինվեն նորերով:Ցանկանո՞ւմ եք շարունակել:"> +<!ENTITY filters.tab.label "Սեփական ֆիլտրեր"> +<!ENTITY backup.label "Ստեղծել նոր պահուստ"> +<!ENTITY find.label "Փնտրել (&n)"> +<!ENTITY subscription.moveDown.label "Իջացնել ներև"> +<!ENTITY subscription.lastDownload.connectionError "Անհաջող. Բեռնման սխալ"> +<!ENTITY subscription.lastDownload.success "Հաջող"> +<!ENTITY subscription.lastDownload.invalidData "Անհաջող. Սխալ ֆիլտրերի ցուցակ"> +<!ENTITY filter.paste.label "Տեղադրել"> +<!ENTITY subscription.disabledFilters.enable "Միացնել անջատված ֆիլտրերը"> +<!ENTITY lasthit.column "Վեր&ջինը"> +<!ENTITY subscription.editTitle.label "Խմբագրել անվանումը"> +<!ENTITY subscription.disabledFilters.warning "Այս բաժանորդագրության որոշ ֆիլտներ անջատված են:"> +<!ENTITY filter.column "Ֆի&լտր"> +<!ENTITY subscription.lastDownload.label "Վերջին բեռնում."> +<!ENTITY viewList.label "Դիտել ցանկը"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/firstRun.properties new file mode 100644 index 0000000..6206ba5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Այցելեք ինտերնետ անանուն՝ թաքցնելով Ձեր տվյալները, որոնցից օգտվում են որոշ կազմակերպություններ։ +firstRun_toggle_off=ԱՆՋ +firstRun_feature_tracking=Անջատել թրեքինգը +firstRun_feature_malware=Վիրուսի արգելում +firstRun_title=Վերջ! կարող էք օգտվել Adblock-ից +firstRun_acceptableAdsExplanation=Մենք թույլատրում ենք <a>որոշ կայքերի</a> գովազդը, որովհետև գիտենք, որ նրանք հաճելի գովազդ են օգտագործում։ Եթե Դուք չեք ցանկանում դրանք տեսնել, կարող եք <a>անջատել</a> դրանք շատ հեշտ։ +firstRun_toggle_on=ՄԻԱՑ +firstRun_contributor_credits=Ծրագրի հեղինակները +firstRun_dataCorruptionWarning=Արդյոք այս էջը ցուցադրվում է? <a>Սեղմեք այստեղ!</a> +firstRun_acceptableAdsHeadline=Վատ գովազդներն այժմ արգելված են +firstRun_share=Պատմեք ընկերներին +firstRun_share_headline=<a>Մեզ օգնեք</a> դարձնելու ինտերնետն ավելի լավ վայր +firstRun_features=Adblock Plus ավելին կարող է անել +firstRun_feature_malware_description=Անվտանգ դարձնել Ձեր համակարգիչն արգելելով վիրուս-դոմենները։ +firstRun_feature_social_description=Ավտոմատ արագացնել աշխատանքը արգելափակելով սոց․ ցանցերի կոճակները, օրինակ՝ Facebook Like, որը գալիս է կայքերում և հետևում Ձեզ։ +firstRun_donate=նվիրաբերել +firstRun_donate_label=Օգնեք մեր ծրագրին +firstRun_feature_social=Հեռացնել սոց․ ցանցերի կոճակները +firstRun_legacySafariWarning=Դուք օգտագործում եք Safari հին տարբերակ, որտեղ Adblock Plus չի աշխատում կամ վատ է աշխատում։ Մենք խորհուրդ ենք տեղադրել Safari 6.1.1 կամ ավելի բարձր տարբերակ (OS X 10.8 Mountain Lion-ում) կամ Safari 7.0.1 և բարձր (OS X 10.9 Mavericks-ում), իսկ եթե ոչ օգտագործեք Mozilla Firefox, Google Chrome կամ Opera։ +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/global.properties new file mode 100644 index 0000000..69bb1c4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Այս էջում ֆիլտրվվող տարրեր չկան +action3_tooltip=Կլիկով` անջատել/միացնել «Adblock Plus»ը: +notification_antiadblock_title=Թաքցնե՞լ նամակները +type_label_script=սկրիպտ +filter_elemhide_nocriteria=Տարրը թաքցնելու ոչ մի չափանիշ տրված չէ +blockingGroup_title=Գովազդի արգելման կանոններ +whitelisted_tooltip=«Adblock Plus»ը միացված է, բայց արգելված այս էջում +type_label_stylesheet=ոճեր +blocked_count_tooltip=?1? հատ ` ?2? հատից +type_label_font=ֆոնտ +type_label_popup=pop-up պատուհան +filter_regexp_tooltip=Ներմուծված շաբլոնը կամ ռեգուլյար արտահայտություն , կամ շատ կարճ է ու չի կարող օպտիմիզացվել, այսպիսի շաբլոնների մեծ քանակը կարող է դանդաղեցնել ծրագրի աշխատանքը: +action0_tooltip=Սեղմեք մենյուի համար, կետնտրոնական կոճակով` անջատել/միացնել +whitelisted_page=«Adblock Plus»ը անջատված է այս էջի համար +remove_group_warning=Դուք ցանկանո՞ւմ եք ջնջել այս խումբը: +action1_tooltip=Կլիկով` բացել/փակել ֆիլտրվվող տարրերը; կետնտրոնական կոճակով` անջատել/միացնել +type_label_xmlhttprequest=XML կանչ +active_tooltip=«Adblock Plus»ը միացված է, օգտագործվում է ?1? ֆիլտրի բաժանորդագրություն եւ ?2? ավելացված ֆիլտր +type_label_document=փասթաթուղթ +type_label_object_subrequest=օբյեկտի կանչ +whitelistGroup_title=Բացառական կանոններ +disabled_tooltip=«Adblock Plus»ը անջատված է +filter_elemhide_duplicate_id=Տարրը թաքցնելու համար կարելի է տալ միայն մեկ ID +type_label_object=օբյեկտ +action2_tooltip=Կլիկով` Նախընտրանքներ; կետնտրոնական կոճակով` անջատել/միացնել +type_label_subdocument=ֆրեյմ +clearStats_warning=Այս կջնջի ստատիստիկան և կանջատի այն:Ցանկանո՞ւմ եք շարունակել: +notification_antiadblock_message=Այս կայքը ցուցադրում է նամակներ Adblock Plus-ի օգտվողներին։ Ուզո՞ւմ եք թաքցնել դրանք։ +blocked_count_addendum=?1?-ը ?2?-ից +subscription_invalid_location=Ֆիլտրերի ցանկի հասցեն կամ սխալ URL է, կամ սխալ ֆայլի անուն: +type_label_image=նկար +remove_subscription_warning=Իրո՞ք ուզում եք հեռացնել այս բաժանորդագրությունը: +type_label_other=անհայտ +mobile_menu_enable=ABP: Միացնել +type_label_media=աուդիո/վիդեո +mobile_menu_disable_site=ABP: Անջատել ?1?-ում +elemhideGroup_title=Էլեմենտը թաքցնելու կանոններ +mobile_menu_enable_site=ABP: Միացնել ?1?-ում +type_label_elemhide=թաքնված +newGroup_title=Նոր ֆիլտրի խումբ +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/overlay.dtd new file mode 100644 index 0000000..23482ce --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Այո"> +<!ENTITY notification.button.no "&Ոչ"> +<!ENTITY sync.label "&Սինքրոնացնել Adblock Plus-ի նախընտրանքները"> +<!ENTITY whitelist.site.label "Անջատել ?1?-ում"> +<!ENTITY filters.label "Ֆիլտրերի կարգավորում (&F)"> +<!ENTITY disable.label "Անջատել ամենուր"> +<!ENTITY objecttab.title "Ֆիլտրել"> +<!ENTITY objecttab.tooltip "Սեղմել «Adblock Plus»ով այս օբյեկտը ֆիլտրելու համար"> +<!ENTITY menuitem.label "Ad&block Plus"> +<!ENTITY objecttabs.label "Ֆիլտրելու &կոճակներ Flash-ի և Java-ի համար"> +<!ENTITY sendReport.label "Տեղեկացնել այս էջի պրոբլեմի մասին (&R)"> +<!ENTITY whitelist.page.label "Անջատել միայն այս էջի համար"> +<!ENTITY context.image.label "Adblock` Ֆիլտրել Նկարը"> +<!ENTITY counthits.label "Հաշվել ֆիլտրի ստատիստիկան (&h)"> +<!ENTITY opensidebar.label "Բացել ֆիլ&տրվող տարրերը"> +<!ENTITY notification.button.close "&Փակել"> +<!ENTITY contribute.label "Աջակցել Adblock Plus-ին"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock` Ֆիլտրել Ֆրեյմը"> +<!ENTITY blocked.tooltip "Այս էջի ֆիլտրված տարրերը`"> +<!ENTITY hideplaceholders.label "Ցույց չտալ արգելված էլեմենտների տեղը"> +<!ENTITY showinstatusbar.label "Ցույց տալ &վիճակի տողում"> +<!ENTITY sidebar.title "Այս էջի ֆիլտրվող տարրերը"> +<!ENTITY options.label "&Ընտրանքներ"> +<!ENTITY context.object.label "Adblock` Ֆիլտրել Օբյեկտը"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Վերակտիվացնել այս էջում"> +<!ENTITY filters.tooltip "Ամենաակտիվ ֆիլտրերը`"> +<!ENTITY closesidebar.label "Փակել ֆիլ&տրվող տարրերը"> +<!ENTITY showintoolbar.label "Ցույց տալ &գործիքաշարում"> +<!ENTITY status.tooltip "Վիճակը."> +<!ENTITY context.media.label "Adblock` Ֆիլտրել Աուդիո/Վիդեո"> +<!ENTITY subscription.update.label "Թարմացնել ֆիլտրերը"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/sendReport.dtd new file mode 100644 index 0000000..28dfde3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Հետքայլ (&U)"> +<!ENTITY issues.disabledgroups.description "Հետեւյալ ֆիլտրերի բաժանորդագրությունները/խմբերը անջատված են, սակայն նրանք կարող են ազդեցություն ունենալ այս էջում:"> +<!ENTITY showData.label "Ցույց տալ զեկույցը"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus-ը շատ է արգելում"> +<!ENTITY issues.change.description "Ձեր կոնֆիգուրացիան փոխվել է: Խնդրում ենք վերբեռնել էջը և թեստավորել փոփոխությունները եւ հայտնել, եթե փոփոխություններից պրոբլեմը չի լուծվում:"> +<!ENTITY email.label "E&mail՝"> +<!ENTITY issues.openPreferences.label "Բացել ֆիլտրերի ընտրանքները"> +<!ENTITY sendPage.confirmation "Ձեր զեկույցը պահպանվել է: Դուք կարող եք մուտք գործել այն հետեւյալ հասցեով՝"> +<!ENTITY copyLink.label "Կրկնակել զեկույցի հղումը"> +<!ENTITY issues.nofilters.description "Adblock Plus-ը չի արգելափակում ոչինչ ընթացիկ էջում: Պրոբլեմը որը եք ամենայն հավանականությամբ, կապված չէ Adblock Plus."> +<!ENTITY sendPage.knownIssue "Ձեր հաղորդած հարցը հնարավոր է արդեն հայտնի է: Լրացուցիչ տեղեկություններ՝"> +<!ENTITY typeSelector.other.description "Ընտրեք այս տարբերակը, եթե կասկածում եք, մի պրոբլեմը Adblock Plus-ի հետ է ոչ թե ֆիլտրերի:"> +<!ENTITY issues.disabledgroups.enable.label "Միացնել ֆիլտրերի բաժանորդագրությունը / խումբը"> +<!ENTITY typeWarning.override.label "Ես հասկանում եմ եւ ուզում եմ այնուամենայնիվ ներկայացնել զեկույցը (&s)"> +<!ENTITY issues.disabled.enable.label "Միացնել Adblock Plus-ը"> +<!ENTITY update.fixed.description "Ֆիլտրերի թարմացումը լուծեց Ձեր խնդիրը:Թարմացրե՛ք էջը՝ համոզվելու դրանում:Խնդրի կրկնվելու դեպքում դիմե՛ք կրկին:"> +<!ENTITY anonymous.label "Անհայտ ֆիլտեր"> +<!ENTITY reloadButton.label "Վերաբեռնել էջը"> +<!ENTITY recentReports.clear.label "Հեռացնել բոլոր հաղորդագրությունները (&R)"> +<!ENTITY typeSelector.description "Այս պատուհանը օգնում է կատարել Adblock Plus-ի խնդրի մասին տեղակացնելու համար անհրաժեշտ քայլերն. Նախ ընտրեք այս էջում ձեր ունեցած խնդրի տեսակը"> +<!ENTITY screenshot.remove.label "Հեռացնել անցանկալի բաժիններ (&R)"> +<!ENTITY issues.ownfilters.description "Այս էջին կիրառված որոշ ֆիլտրեր սահմանված են օգտագործողի կողմից: Աանջատեք դրանք այդ ֆիլտրերը, որոնք կարող են առաջացրել պրոբլեմը:"> +<!ENTITY update.inProgress.description "Adblock Plus-ը պիտի թարմացնի Ձեր ֆիլտրերը՝ համոզվելու, որ խնդիրը չի լուծվում:Խնդրում ենք սպասեք..."> +<!ENTITY sendPage.retry.label "Նորից ուղարկել"> +<!ENTITY data.label "Տվյալներ՝ (&p)"> +<!ENTITY recentReports.label "Ձեր վերջին ներկայացված հաղորդագրությունները"> +<!ENTITY typeWarning.description "Դուք ցանկանում եք հայտնել Adblock Plus-ի պրոբլեիմի մասին, ոչ թե կապված ֆիլտրերի հետ: Խնդրում ենք նկատի ունենալ, որ նման հարցերի մասին տեղեկացնելու լավագույն տեղը [link]Adblock Plus ֆորում[/link]-ն է: Դուք պետք է օգտվեք այս միջոցից միայն քննարկումը շարունակելու համար, քանի որ ոչ ոք չի նկատի Ձեր զեկույցը եթե Դուք չտրամադրեք հղում են դեպի այն: Ավտոմատ կերպով գեներացված հղում կտրամադրվի զեկույցը ներկայացնելուց հետո:"> +<!ENTITY issues.disabled.description "Adblock Plus-ը անջատված է, այն չի արգելափակում որեւէ բան այս վիճակում:"> +<!ENTITY attachExtensions.label "Ամրացնել ակտիվ ավելացումների ցուցակը զեկույցին, այն դեպքի համար եթե ավելացնումները խնդրի պատճառ են:"> +<!ENTITY issues.nosubscriptions.add.label "Ավելացնել ֆիլտրի բաժանորդագրություն"> +<!ENTITY issues.disabledfilters.enable.label "Միացնել ֆիլտրը"> +<!ENTITY issues.override.label "Կոնֆիգուրացիան ճիշտ է, շարունակել հայտնել խնդրի մասին"> +<!ENTITY issues.nosubscriptions.description "Դուք, ըստ երեւույթի, բաժանորդագրված չեք որեւէ պատրաստի ֆիլտրերի ցուցակի, որը ավտոմատ կերպով կհեռացնի անցանկալի բովանդակությունը կայքերում:"> +<!ENTITY typeSelector.falsePositive.description "Ընտրեք այս տարբերակը, եթե այս էջում կորել է կարեւոր բովանդակություն, այն ցուցադրվում է սխալ կամ չի աշխատում: Դուք կարող եք որոշել, թե արդյոք Adblock Plus-ն է պատճառը ժամանակավորապես անջատելով այն:"> +<!ENTITY typeSelector.other.label "Այլ խնդիր"> +<!ENTITY emailComment.label "Խնդրում ենք գրե՛ք ճիշտ email հասցե՝ Ձեզ հետ կապնվելու համար և խնդիրը լուծելու համար:"> +<!ENTITY issues.whitelist.remove.label "Միացնել Adblock Plus-ը այս էջում"> +<!ENTITY outdatedSubscriptions.description "Այս ֆիլտրը չի թարմացվել մոտ 2 շաբաթ:Թարմացրե՛ք, քանի որ դա կարող է լուծել խնդիրը:Խնդրի չլուծման դեպքում դիմե՛ք կրկին:"> +<!ENTITY dataCollector.description "Սպասեք մինչև Adblock Plus-ը հավաքի անհրաժեշտ տվյալներ…"> +<!ENTITY sendButton.label "Ուղարկել զեկույցը"> +<!ENTITY comment.label "Մեկնաբանություն (պարտադիր չէ)՝"> +<!ENTITY sendPage.errorMessage "Զեկույցի ուղարկման փորձը ձախողվել է հետևյալ սխալի կոդով՝ "?1?": Ստուգեք միացումը ինտերնետին եւ կրկնեք: Եթե խնդիրը չկարգավորվի, խնդրում ենք դիմել [link]Adblock Plus Ֆորում[/link] աջակցության համար:"> +<!ENTITY showRecentReports.label "Ցույց տալ վերջին ներկայացված հաղորդագրությունները"> +<!ENTITY commentPage.heading "Մեկնաբանել"> +<!ENTITY update.start.label "Սկսել թարմացումը հիմա"> +<!ENTITY issues.disabledfilters.description "Հետեւյալ ֆիլտրերը անջատված են, սակայն նրանք կարող են ազդեցություն ունենալ այս էջում:"> +<!ENTITY screenshot.description "Նույն էջը կարող է տարբեր նայվել տարբեր մարդկանց: Եթե դուք Ձեր զեկույցին կցեք էկրանի նկարը դա կարող է օգնել մեզ հասկանալ խնդիրը: Դուք նույնպես կարող եք հեռացնել անցանկալի բաժիններ, ինչպես նաեւ նշել այն տարածքները, որտեղ երեւում է խնդիրը: Դա անելու համար սեղմեք համապատասխան կոճակը եւ մկնիկով ընտրեք պատկերի հատվածը:"> +<!ENTITY screenshot.attach.label "Կցել էջի նկարը"> +<!ENTITY issues.whitelist.description "Adblock Plus-ը այժմ անջատված է այս էջում: Միացրեք այն եւ վերբեռնեք այս էջը ուղարկելուց առաջ խնդրի լուծումանը աջակցելու համար:"> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus-ը չի փակում գովազդը (&v)"> +<!ENTITY typeSelector.heading "Խնդրի ընտրում"> +<!ENTITY anonymity.warning "Մենք չենք կարողանալու ետ գալ Ձեզ մոտ և զեկույցը ցածր կհամարենք:"> +<!ENTITY wizard.title "Տեղեկացնել"> +<!ENTITY issues.ownfilters.disable.label "Անջատել ֆիլտր(եր)ը"> +<!ENTITY commentPage.description "Տեքստային դաշտի ստորեւ թույլ է տալիս մուտքագրել մեկնաբանություն մեզ օգնելու համար՝ հասկանալ խնդիրը" Այս քայլը պարտադիր չէ, սակայն խորհուրդ է տրվում, եթե Խնդիրը ակնհայտ չէ: Դուք կարող եք նաեւ վերանայել զեկույցի տվյալները մինչ դրա ուղարկումը:"> +<!ENTITY comment.lengthWarning "Մեկնաբանության երկարությունը գերազանցում է 1000 սիմվոլ: Միայն առաջին 1000 սիմվոլը կուղարկվի:"> +<!ENTITY typeSelector.falseNegative.description "Ընտրեք այս տարբերակը, եթե գովազդը ցուցադրվում է, չնայած Adblock Plus միացված է:"> +<!ENTITY sendPage.waitMessage "Խնդրում ենք սպասել, մինչ Adblock Plus-ը, ուղարկի Ձեր զեկույցը:"> +<!ENTITY dataCollector.heading "Բարի գալուստ պրոբլեմների հետևման համակարգ"> +<!ENTITY screenshot.heading "Կցել էկրանի նկարը"> +<!ENTITY sendPage.heading "Ուղարկել զեկույցը"> +<!ENTITY issues.subscriptionCount.description "Դուք բաժանորդագրված եք չափից շատ ֆիլտրերի: Սա կարող է խնդրի պատճառ դառնալ: Մենք չենք ընդունի ձեր բաղոքը խնդրի հետ կապված, քանի որ անհնար է լինելու պարզել դրա աղբյուրը: Խնդրում ենք հեռացնել բաժանորդագրույունները, թողնելով միայն ամենաանհրաժեշտները և ստուգել արդյոք խնդիրը դեռ կա:"> +<!ENTITY screenshot.mark.label "Նշել խնդրի տեղը"> +<!ENTITY privacyPolicy.label "Անձնական տվյալների պահպանում"> +<!ENTITY issues.description "Adblock Plus-ը հայտնաբերել է պրոբլեմներ ձեր կոնֆիգուրացիայի հետ, որոնք կարող են խնդրի պատճառ լինել կամ բարդացնի լուծումը:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/sidebar.dtd new file mode 100644 index 0000000..d185321 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Ցույց տալ օբյեկտը էջում"> +<!ENTITY address.label "Հասցեն"> +<!ENTITY context.open.label "Բացել նոր Թաբում"> +<!ENTITY type.label "Տեսակը"> +<!ENTITY tooltip.filterSource.label "Ֆիլտրի աղբյուրը`"> +<!ENTITY noitems.label "Ֆիլտրվվող տարրեր չկան"> +<!ENTITY filter.label "Ազդող ֆիլտրը"> +<!ENTITY tooltip.size.label "Չափը`"> +<!ENTITY reattach.label "Ամրացնել"> +<!ENTITY search.label "&Փնտրել"> +<!ENTITY docDomain.thirdParty "(երրորդ կողմի)"> +<!ENTITY filterSource.label "Ֆիլտրի աղբյուրը`"> +<!ENTITY tooltip.docDomain.label "Աշխատանքի աղբյուրը`"> +<!ENTITY context.copy.label "Կրկնել տարրի հասցեն"> +<!ENTITY tooltip.type.label "Տեսակը`"> +<!ENTITY context.disablefilter.label "Անջատել ֆիլտրը ?1?"> +<!ENTITY context.copyFilter.label "Կրկնակել ֆիլտրը"> +<!ENTITY context.block.label "Ֆիլտրել այս տարրը"> +<!ENTITY context.enablefilter.label "Վերակտիվացնել ֆիլտրը ?1?"> +<!ENTITY detach.label "Անջատ պատուհան"> +<!ENTITY whitelisted.label "Բացառություն"> +<!ENTITY context.disablefilteronsite.label "Արգելել այս ֆիլտրը ?1? -ում"> +<!ENTITY detached.title "Adblock Plus - Ֆիլտրվվող տարրեր (Անջատ)"> +<!ENTITY docDomain.firstParty "(ուղիղ աղբյուր)"> +<!ENTITY tooltip.type.whitelisted "(բացառություն)"> +<!ENTITY tooltip.filter.label "Ազդող ֆիլտրը`"> +<!ENTITY tooltip.filter.disabled "(անջատված)"> +<!ENTITY context.editfilter.label "Խմբագրել Ազդող ֆիլտրը"> +<!ENTITY tooltip.type.blocked "(ֆիլտրված)"> +<!ENTITY size.label "Չափը"> +<!ENTITY context.whitelist.label "Այս տարրի համար Բացառություն ավելացնել"> +<!ENTITY context.selectAll.label "Լրիվ Ընտրել"> +<!ENTITY state.label "Վիճակը"> +<!ENTITY docDomain.label "Աշխատանքի աղբյուրը"> +<!ENTITY tooltip.address.label "Հասցեն`"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/subscriptionSelection.dtd new file mode 100644 index 0000000..77ecf84 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/hy-AM/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Ավելաց&նել բաժանորդագրություն նաև "?1?" ֆիլտրին"> +<!ENTITY list.download.failed "«Adblock Plus»-ը չկարողացավ բեռնել ֆիլտրերի բաժանարդոգրությունների ցուցակը"> +<!ENTITY list.download.retry "Կրկին Փորձել"> +<!ENTITY title.label "Բ&աժանորդագրության ավանումը`"> +<!ENTITY list.download.website "Այցելել կայք"> +<!ENTITY supplementMessage "Այս ֆիլտրի բաժանարդոգրությունը հաճախ օգտագործվում է "?1?"-ի հետ, որը դուք չեք օգտագործում:"> +<!ENTITY viewList.label "Նայել ֆիլտրերը"> +<!ENTITY visitHomepage.label "Այցելել կայք"> +<!ENTITY addSubscription.label "Ավելացնել բաժանորդագրություն"> +<!ENTITY dialog.title "Բարի գալուստ Adblock Plus"> +<!ENTITY location.label "Ֆիլտրերի &հասցեն`"> +<!ENTITY fromWeb.description "Հաստատեք որ ցանկանում եք ավելացնել բաժանորդագրություն: Դուք կարող եք փողել բաժանորդագրության վերնագիրը կամ հասցեն միչև ավելացնելը:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/composer.dtd new file mode 100644 index 0000000..867e6ca --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "&pada akhir dari alamat"> +<!ENTITY domainRestriction.label "Membatasi pada & domain:"> +<!ENTITY collapse.default.no.label "Gunakan default (tidak)"> +<!ENTITY firstParty.label "&Hanya untuk pihak pertama"> +<!ENTITY preferences.label "&Tampilkan filter yang ada..."> +<!ENTITY pattern.label "Mencari pola"> +<!ENTITY thirdParty.label "Hanya pihak ke&tiga"> +<!ENTITY filter.label "&Tapis baru:"> +<!ENTITY collapse.label "&tutup yang diblokir:"> +<!ENTITY match.warning "Pola yang Anda masukkan tidak lagi cocok dengan masuk daftar alamat yang akan diblokir/daftar putih dan tidak akan berpengaruh sama sekali."> +<!ENTITY anchor.start.label "&pada awal alamat"> +<!ENTITY matchCase.label "&Sama persis"> +<!ENTITY custom.pattern.label "&Kustom:"> +<!ENTITY unselectAllTypes.label "Tidak memilih apapun"> +<!ENTITY type.whitelist.label "Aturan p&engabaian"> +<!ENTITY regexp.warning "Pola yang Anda masukkan akan dianggap sebagai regular expression yang tidak akan efisien untuk dapat diproses oleh Adblock Plus dan mungkin akan memperlambat pengalaman browsing Anda. Jika Anda tidak berniat untuk menggunakan regular expression, tambahkan tanda bintang (*) diakhir pola."> +<!ENTITY dialog.title "Tambah aturan filter Adblock Plus"> +<!ENTITY basic.label "Tampilan dasar"> +<!ENTITY type.filter.label "&Filter yang diblokir"> +<!ENTITY types.label "Terapkan untuk jenis:"> +<!ENTITY shortpattern.warning "Pola yang Anda masukkan terlalu pendek untuk dapat disempurnakan dan mungkin memperlambat pengalaman berselancar Anda. Anda disarankan untuk memilih lagi karakter yang lebih panjang untuk saringan ini untuk memungkinkan Adblock Plus mengolah saringan agar lebih efisien."> +<!ENTITY collapse.yes.label "Ya"> +<!ENTITY anchors.label "Hanya menerima pola:"> +<!ENTITY collapse.default.yes.label "Gunakan default (Ya)"> +<!ENTITY domainRestriction.help "Gunakan pilihan ini untuk menentukan satu atau lebih domain yang dipisahkan oleh sebuah garis bar(|). Filter hanya akan diterapkan pada domain yang dipilih. Sebuah tilde (~) sebelum nama domain menunjukkan bahwa filter tidak akan diterapkan pada domain tersebut."> +<!ENTITY accept.label "Tambahkan filter"> +<!ENTITY options.label "Pilihan"> +<!ENTITY disabled.warning "Adblock Plus sedang dimatikan. Anda masih dapat menambahkan filter tetapi mereka tidak akan diterapkan kecuali Anda [link] mengaktifkan Adblock Plus [/link]."> +<!ENTITY anchor.start.flexible.label "&pada awal nama domain"> +<!ENTITY collapse.no.label "Tidak"> +<!ENTITY selectAllTypes.label "Pilih Semua"> +<!ENTITY advanced.label "Tampilan lanjutan"> +<!ENTITY pattern.explanation "Pola dapat menjadi bagian dari alamat; tanda bintang (*) bertindak sebagai wildcard. Filter hanya akan diterapkan ke alamat yang cocok dengan pola yang diberikan."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/filters.dtd new file mode 100644 index 0000000..6136b99 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Semua penyesuaian penyaring Anda akan digantikan oleh isi berkas yang dipilih. Apakah Anda ingin memproses?"> +<!ENTITY slow.column "Penyaring Slo&w"> +<!ENTITY enabled.column "Hidupka&n"> +<!ENTITY subscription.lastDownload.checksumMismatch "Gagal, checksum berbeda"> +<!ENTITY noFiltersInGroup.text "Kelompok yang dipilih kosong."> +<!ENTITY subscription.actions.label "Tindakan"> +<!ENTITY filter.selectAll.label "Pilih semua"> +<!ENTITY backupButton.label "&Cadangan dan Pengembalian"> +<!ENTITY restore.minVersion.warning "Peringatan: berkas telah dibuat dengan versi Adblock Plus yang lebih baru. Anda harus memperbarui ke versi Adblock Plus terbaru sebelum mengembalikan dari berkas ini."> +<!ENTITY restore.error "Data berkas tidak bisa diproses, mungkin ini bukan berkas cadangan Adblock Plus?"> +<!ENTITY sort.ascending.label "Urutkan dari A > Z"> +<!ENTITY sort.label "&Urutkan dari"> +<!ENTITY subscription.source.label "Daftar penyaring"> +<!ENTITY hitcount.column "Sasaran"> +<!ENTITY noFilters.text "Anda belum memiliki penyesuaian penyaring apapun."> +<!ENTITY backup.custom.title "Hanya penyesuaian penyaring"> +<!ENTITY subscription.external.label "Diperbarui oleh ekstensi lain"> +<!ENTITY subscription.delete.label "Hapus"> +<!ENTITY noGroupSelected.text "Anda perlu memilih kelompok penyaring sebelum penyaring dapat ditampilkan."> +<!ENTITY filter.cut.label "Potong"> +<!ENTITY restore.default.label "Mengembalikan cadangan dari ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Mengunduh…"> +<!ENTITY subscriptions.tab.label "Penyaring langganan"> +<!ENTITY sort.descending.label "Urutkan dari Z > A"> +<!ENTITY filters.remove.warning "Apakah Anda sungguh ingin menghapus semua penyaring yang dipilih?"> +<!ENTITY filter.delete.label "Hapus"> +<!ENTITY addSubscriptionAdd.label "Tambahkan"> +<!ENTITY viewMenu.label "Lihat"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Batal"> +<!ENTITY subscription.enabled.label "Diaktifkan"> +<!ENTITY noSubscriptions.text "Anda belum menambahkan penyaring langganan apapun. Adblock Plus tidak akan memblok apapun tanpa penyaring, silahkan gunakan "Tambahkan penyaring langganan" untuk menambahkan."> +<!ENTITY subscription.update.label "Perbarui penyaring"> +<!ENTITY dialog.title "Preferensi Penyaring Adblock Plus"> +<!ENTITY addFilter.label "Tambahkan penyaring"> +<!ENTITY subscription.minVersion.warning "Penyaring langganan memerlukan versi Adblock Plus yang lebih baru, Anda harus memperbarui ke versi Adblock Plus terbaru."> +<!ENTITY subscription.lastDownload.invalidURL "Gagal, bukan alamat yang benar"> +<!ENTITY backup.error "Ada kesalahan penulisan penyaring ke berkas. Pastikan berkas tidak diproteksi atau sedang digunakan aplikasi lain."> +<!ENTITY filter.moveUp.label "Ke atas"> +<!ENTITY addGroup.label "Tambahkan penyaring dan kelompok"> +<!ENTITY filter.edit.label "Sunting"> +<!ENTITY subscription.showHideFilters.label "Tampilkan/sembunyikan penyaring"> +<!ENTITY acceptableAds2.label "Ijinkan beberapa iklan yang bukan dan mengganggu"> +<!ENTITY addSubscriptionOther.label "Tambahkan skrip yang berbeda"> +<!ENTITY close.label "Tutup"> +<!ENTITY sort.none.label "&Belum diurutkan"> +<!ENTITY filter.actions.label "Tindakan penyaring"> +<!ENTITY filter.copy.label "Salin"> +<!ENTITY filter.moveDown.label "Ke bawah"> +<!ENTITY filter.resetHitCounts.label "Reset kembali statistik kunjungan"> +<!ENTITY readMore.label "Baca lebih lanjut"> +<!ENTITY subscription.moveUp.label "Ke atas"> +<!ENTITY addSubscription.label "Tambahkan penyaring"> +<!ENTITY subscription.homepage.label "Beranda"> +<!ENTITY backup.complete.title "Semua penyaring dan langganan"> +<!ENTITY restore.own.label "Mengembalikan cadangan sendiri"> +<!ENTITY restore.complete.warning "Semua preferensi penyaring Anda akan digantikan oleh isi berkas yang dipilih. Apakah Anda ingin memproses?"> +<!ENTITY filters.tab.label "Penyesuaian penyaring"> +<!ENTITY backup.label "Membuat cadangan baru"> +<!ENTITY find.label "Cari"> +<!ENTITY subscription.moveDown.label "Ke bawah"> +<!ENTITY subscription.lastDownload.connectionError "Gagal, gagal mengunduh"> +<!ENTITY subscription.lastDownload.success "Sukses"> +<!ENTITY subscription.lastDownload.invalidData "Gagal, bukan daftar penyaring yang benar"> +<!ENTITY filter.paste.label "Tempel"> +<!ENTITY subscription.disabledFilters.enable "Aktifkan penyaring yang dinonaktifkan"> +<!ENTITY lasthit.column "Sasaran terakhir"> +<!ENTITY subscription.editTitle.label "Sunting judul"> +<!ENTITY subscription.disabledFilters.warning "Beberapa penyaring di layanan langganan ini dinonaktifkan."> +<!ENTITY filter.column "Aturan penyaring"> +<!ENTITY subscription.lastDownload.label "Unduhan terakhir:"> +<!ENTITY viewList.label "Lihat daftar"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/firstRun.properties new file mode 100644 index 0000000..573f16c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Menjelajah secara rahasia dengan menonaktifkan pelacakan - menyembunyikan jejak Anda dari perusahaan iklan yang akan melacak setiap langkah Anda. +firstRun_toggle_off=OFF +firstRun_feature_tracking=Nonaktifkan Pelacakan +firstRun_feature_malware=Memblokir malware +firstRun_title=Adblock Plus telah diinstal +firstRun_acceptableAdsExplanation=Kami ingin mendorong situs web untuk menggunakan iklan langsung yang tidak mengganggu. Itu sebabnya kami telah menetapkan <a>Peraturan ketat</a> untuk mengenali iklan yang bisa diterima, yang akan ditampilkan di dalam pengaturan default. Jika Anda masih ingin memblokir setiap iklan, Anda dapat <a>menonaktifkan</a> ini dalam beberapa detik. +firstRun_toggle_on=ON +firstRun_contributor_credits=Kredit Kontributor +firstRun_dataCorruptionWarning=Apakah halaman ini tetap muncul? <a>Klik disini!</a> +firstRun_acceptableAdsHeadline=Sekarang iklan yang mengganggu akan diblokir +firstRun_share=Beritahu teman Anda +firstRun_share_headline=<a>Bantulah kami</a> dalam membuat web menjadi tempat yang lebih baik +firstRun_features=Adblock Plus dapat melakukan lebih dari sekedar pemblokiran iklan +firstRun_feature_malware_description=Membuat penjelajahan Anda lebih aman dengan cara memblokir domain yang dikenal sebagai malware. +firstRun_feature_social_description=Secara otomatis membersihkan tombol media sosial, seperti Facebook Like, yang muncul pada halaman web dan melacak perilaku Anda. +firstRun_donate=donasi +firstRun_donate_label=Dukung proyek ini +firstRun_feature_social=Hapus Tombol Media Sosial +firstRun_legacySafariWarning=Anda menggunakan versi lama Safari yang tidak didukung oleh Adblock Plus. Mungkin tidak akan bekerja dengan baik atau bahkan mengganggu pengalaman pengguna di beberapa website. Kami sangat menyarankan sebaiknya memperbarui ke Safari 6.1.1 atau lebih tinggi (pada OS X 10.8 Mountain Lion), atau Safari 7.0.1 atau lebih tinggi (pada OS X 10.9 Mavericks), atau gunakan versi terbaru dari Mozilla Firefox, Google Chrome atau Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/global.properties new file mode 100644 index 0000000..42fbf15 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Tidak ada item yang dapat diblok di halaman ini +action3_tooltip=Klik untuk mengaktifkan/menonaktifkan Adblock Plus. +notification_antiadblock_title=Sembunyikan pesan yang dipilih? +type_label_script=script +filter_elemhide_nocriteria=Tidak ada kriteria yang ditentukan untuk mengenali unsur yang disembunyikan +blockingGroup_title=Aturan pemblokiran iklan +whitelisted_tooltip=Adblock Plus dinonaktifkan pada halaman ini. +type_label_stylesheet=stylesheet +blocked_count_tooltip=?1? dari ?2? +type_label_font=font +type_label_popup=Jendela pop-up +filter_regexp_tooltip=Filter ini adalah regular expression atau terlalu pendek untuk dioptimalkan. Penggunaan filter yang terlalu banyak akan memperlambat browsing Anda. +action0_tooltip=Klik untuk memunculkan menu, klik tengah untuk mengaktifkan/menonaktifkan. +whitelisted_page=Adblock Plus telah dinonaktifkan untuk halaman ini +remove_group_warning=Anda benar-benar ingin menghapus kelompok ini? +action1_tooltip=Klik untuk membuka/menutup item yang dapat diblok, klik tengah untuk mengaktifkan/menonaktifkan. +type_label_xmlhttprequest=permintaan XML +active_tooltip=Adblock Plus diaktifkan, ?1? filter subscription(s) dan ?2? custom filter(s) digunakan. +type_label_document=dokumen +type_label_object_subrequest=objek subrequest +whitelistGroup_title=Aturan pengecualian +disabled_tooltip=Adblock Plus dinonaktifkan. +filter_elemhide_duplicate_id=Hanya satu ID dari unsur yang akan disembunyikan dapat ditentukan +type_label_object=Obyek +action2_tooltip=Klik untuk membuka preferensi, klik tengah untuk mengaktifkan/menonaktifkan. +type_label_subdocument=bingkai +clearStats_warning=Ini akan menyetel ulang semua filter statistik kunjungan dan menonaktifkan filter penghitung kunjungan. Apakah Anda ingin melanjutkan? +notification_antiadblock_message=Situs ini dikenal sebagai penunjuk pesan yang dipilih terhadap pengguna Adblock Plus. Apakah anda ingin Adblock Plus menyembunyikan pesan yang dipilih? +blocked_count_addendum=(Dalam daftar putih:?1?, tersembunyi:?2?) +subscription_invalid_location=Filter daftar lokasi bukanlah URL valid maupun nama file yang valid. +type_label_image=gambar +remove_subscription_warning=Apakah anda yakin ingin menghapus langganan ini? +type_label_other=Lainnya +mobile_menu_enable=ABP: Aktifkan +type_label_media=audio/video +mobile_menu_disable_site=ABP: Menonaktifkan pada ?1? +elemhideGroup_title=Aturan penyembunyian elemen +mobile_menu_enable_site=ABP: Aktifkan pada ?1? +type_label_elemhide=tersembunyi +newGroup_title=Kelompok penyaring baru +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/overlay.dtd new file mode 100644 index 0000000..0cb31d3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Iya"> +<!ENTITY notification.button.no "&Tidak"> +<!ENTITY sync.label "Syn&c pengaturan Adblock Plus"> +<!ENTITY whitelist.site.label "Non aktifkan pada ?1?"> +<!ENTITY filters.label "&Preferensi penyaring"> +<!ENTITY disable.label "Non aktifkan disemua tempat"> +<!ENTITY objecttab.title "Blokir"> +<!ENTITY objecttab.tooltip "Klik disini untuk memblokir objek ini dengan Adblock Plus"> +<!ENTITY menuitem.label "Preferensi Ad&block Plus"> +<!ENTITY objecttabs.label "&Tunjukkan tab pada Flash dan Java"> +<!ENTITY sendReport.label "&Laporkan masalah pada halaman ini"> +<!ENTITY whitelist.page.label "Non aktifkan pada halaman ini saja"> +<!ENTITY context.image.label "Adblock Plus: Blokir gambar"> +<!ENTITY counthits.label "Menghitung filter &kunjungan"> +<!ENTITY opensidebar.label "Buka &item yang dapat diblok"> +<!ENTITY notification.button.close "&Tutup"> +<!ENTITY contribute.label "Kontribusi untuk Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Blokir bingkai"> +<!ENTITY blocked.tooltip "Blokir item pada halaman ini:"> +<!ENTITY hideplaceholders.label "Sembunyikan p&laceholders dari unsur pemblokiran"> +<!ENTITY showinstatusbar.label "Tunjukkan di &status bar"> +<!ENTITY sidebar.title "Item yang dapat diblok di halaman ini"> +<!ENTITY options.label "&Pilihan"> +<!ENTITY context.object.label "Adblock Plus: Blokir objek"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Mengaktifkan ulang pada halaman ini"> +<!ENTITY filters.tooltip "Filter paling aktif:"> +<!ENTITY closesidebar.label "Tutup &item yang dapat diblok"> +<!ENTITY showintoolbar.label "Tunjukkan di tool&bar"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Blokir audio/video"> +<!ENTITY subscription.update.label "Perbarui penyaring"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/sendReport.dtd new file mode 100644 index 0000000..98a4903 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Batalkan"> +<!ENTITY issues.disabledgroups.description "Filter langganan / kelompok filter ini dinonaktifkan, namun mungkin tetap akan memliki efek pada halaman ini:"> +<!ENTITY showData.label "Tunjukkan data laporan"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus memblokir terlalu &banyak"> +<!ENTITY issues.change.description "Konfigurasi Anda telah diubah. Silahkan muat ulang halaman untuk menguji perubahan dan kirimkan laporan jika masalah belum terselesaikan oleh perubahan tersebut."> +<!ENTITY email.label "Email:"> +<!ENTITY issues.openPreferences.label "Buka preferensi filter"> +<!ENTITY sendPage.confirmation "Laporan Anda telah disimpan. Anda dapat mengaksesnya pada alamat berikut:"> +<!ENTITY copyLink.label "&Copy link laporan"> +<!ENTITY issues.nofilters.description "Adblock Plus tidak memblokir apapun pada halaman ini. Masalah yang Anda alami tidak ada kaitannya dengan Adblock Plus."> +<!ENTITY sendPage.knownIssue "Masalah yang Anda laporkan mungkin sudah dikenal. Informasi selanjutnya:"> +<!ENTITY typeSelector.other.description "Pilih opsi ini jika Anda mencurigai masalah dengan Adblock Plus sendiri daripada filter nya."> +<!ENTITY issues.disabledgroups.enable.label "Aktifkan filter langganan / kelompok filter"> +<!ENTITY typeWarning.override.label "Saya mengerti dan ingin mengirim laporan"> +<!ENTITY issues.disabled.enable.label "Aktifkan Adblock Plus"> +<!ENTITY update.fixed.description "Pembaharuan filter langganan Anda sepertinya menyelesaikan masalah yang Anda laporkan. Silahkan buka kembali halaman dan coba kembali, klik Laporkan lagi jika masih terdapat masalah."> +<!ENTITY anonymous.label "&Penyerahan anonim"> +<!ENTITY reloadButton.label "&Muat ulang halaman"> +<!ENTITY recentReports.clear.label "&Hapus semua laporan"> +<!ENTITY typeSelector.description "Jendela ini akan memandu Anda melalui langkah-langkah yang diperlukan untuk penyerahan laporan masalah Adblock plus. Pertama, silakan pilih jenis masalah yang Anda alami di halaman ini:"> +<!ENTITY screenshot.remove.label "&Hapus semua data sensitif"> +<!ENTITY issues.ownfilters.description "Beberapa dari filter yang diterapkan pada halaman ini ditetapkan oleh pengguna. Silahkan nonaktifkan filter yang mungkin menyebabkan masalah:"> +<!ENTITY update.inProgress.description "Adblock Plus perlu memperbaharui langganan filter Anda untuk memastikan bahwa masalah belum bisa diselesaikan. Harap tunggu..."> +<!ENTITY sendPage.retry.label "Kirim kembali"> +<!ENTITY data.label "Data laporan:"> +<!ENTITY recentReports.label "Anda baru saja mengirimkan laporan"> +<!ENTITY typeWarning.description "Anda menyatakan bahwa Anda ingin melaporkan masalah umum dengan Adblock Plus daripada masalah filter. Silahkan catat bahwa masalah seperti ini lebih baik dilaporkan pada [link]Forum Adblock Plus[/link]. Anda hanya perlu menggunakan pelaporan masalah untuk melengkapi diskusi yang ada, karena tidak ada seorangpun yang melihat laporan Anda kecuali Anda memberi mereka link untuk masalah tersebut. Link otomatis akan diberikan setelah mengirimkan laporan."> +<!ENTITY issues.disabled.description "Adblock Plus dinonaktifkan, ini tidak akan memblokir apapun dalam keadaan ini."> +<!ENTITY attachExtensions.label "Lampirkan daftar ekstensi aktif pada laporan jika konflik pengaya adalah penyebab dari masalah tersebut"> +<!ENTITY issues.nosubscriptions.add.label "Tambahkan filter langganan"> +<!ENTITY issues.disabledfilters.enable.label "Aktifkan filter"> +<!ENTITY issues.override.label "&Konfigurasi benar, lanjutkan dengan laporkan"> +<!ENTITY issues.nosubscriptions.description "Anda tidak berlangganan satupun dari filter bawaan yang secara otomatis menghapus konten yang tidak diinginkan pada situs web."> +<!ENTITY typeSelector.falsePositive.description "Pilih opsi ini jika halaman kurang memiliki konten penting, salah menampilkan atau tidak berfungsi dengan benar. Anda dapat menentukan apakah Adblock Plus adalah penyebab masalah dengan menonaktifkannya untuk sementara."> +<!ENTITY typeSelector.other.label "Masalah lainnya"> +<!ENTITY emailComment.label "Kami menganjurkan Anda untuk memasukkan alamat email yang valid sehingga kami dapat menghubungi Anda jika terdapat pertanyaan tentang laporan Anda. Ini juga akan memungkinkan kami untuk mengetahui kontribusi Anda dan meninggikan prioritas."> +<!ENTITY issues.whitelist.remove.label "Aktifkan kembali Adblock Plus pada halaman ini"> +<!ENTITY outdatedSubscriptions.description "Filter langganan ini belum diperbaharui setidaknya dua minggu. Silahkan perbaharui langganan ini sebelum mengirimkan laporan masalah yang mungkin sudah terselesaikan sebelumnya."> +<!ENTITY dataCollector.description "Silahkan tunggu beberapa saat sementara Adblock Plus mengumpulkan data yang dibutuhkan."> +<!ENTITY sendButton.label "Kirim laporan"> +<!ENTITY comment.label "&Komentar (pilihan):"> +<!ENTITY sendPage.errorMessage "Upaya mengirimkan laporan gagal dengan kode kesalahan "?1?". Silahkan pastikan Anda terhubung ke Internet dan coba kembali. Jika masalah berlanjut, silahkan meminta bantuan pada [link]Forum Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Tampilkan laporan yang baru disampaikan"> +<!ENTITY commentPage.heading "Masukkan Komentar"> +<!ENTITY update.start.label "Mulai pembaharuan sekarang"> +<!ENTITY issues.disabledfilters.description "Filter ini dinonaktifkan, namun mungkin masih mempunyai efek pada halaman ini:"> +<!ENTITY screenshot.description "Halaman yang sama dapat terlihat berbeda untuk berbagai orang. Ini dapat membantu kami untuk memahami masalah jika Anda melampirkan sebuah screenshot pada laporan Anda. Anda dapat menghapus bagian yang mengandung informasi sensitif serta tandai daerah dimana masalah tersebut terjadi. Untuk melakukannya klik sesuai tombol dan pilih bagian dari gambar dengan mouse Anda."> +<!ENTITY screenshot.attach.label "Lampirkan gambar halaman untuk melaporkan"> +<!ENTITY issues.whitelist.description "Adblock Plus sedang dinonaktifkan pada halaman yang Anda laporkan. Silahkan aktifkan dan muat ulang halaman sebelum mengirimkan laporan untuk membantu peyelidikan masalah ini."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus tidak memblokir sebuah &iklan"> +<!ENTITY typeSelector.heading "Pilih tipe laporan"> +<!ENTITY anonymity.warning "Kami tidak dapat menghubungi Anda kembali dan akan menurunkan prioritas laporan ini."> +<!ENTITY wizard.title "Pelaporan"> +<!ENTITY issues.ownfilters.disable.label "Nonaktifkan filter"> +<!ENTITY commentPage.description "Kotak teks di bawah ini memungkinkan Anda untuk memasukkan komentar untuk membantu kami memahami masalah. Langkah ini bersifat pilihan tetapi dianjurkan jika masalahnya tidak jelas. Anda juga dapat memeriksa data laporan sebelum dikirim."> +<!ENTITY comment.lengthWarning "Panjang komentar Anda melebihi 1000 karakter. Hanya 1000 karakter pertama yang akan dikirim."> +<!ENTITY typeSelector.falseNegative.description "Pilih opsi ini jika iklan ditampilkan meskipun Adblock Plus telah diaktifkan."> +<!ENTITY sendPage.waitMessage "Silahkan tunggu sementara Adblock Plus mengirimkan laporan Anda."> +<!ENTITY dataCollector.heading "Selama datang di pelaporan masalah"> +<!ENTITY screenshot.heading "Lampirkan screenshot"> +<!ENTITY sendPage.heading "Kirim laporan"> +<!ENTITY issues.subscriptionCount.description "Tampaknya Anda berlangganan filter langganan terlalu banyak. Pengaturan ini tidak dianjurkan karena akan membuat masalah semakin tinggi. Kami juga tidak dapat menerima laporan masalah karena tidak jelas filter langganan mana yang pembuat butuhkan untuk menindak lanjuti. Silahkan hapus semua selain yang benar-benar dibutuhkan dan uji apakah masalah masih terjadi."> +<!ENTITY screenshot.mark.label "&Tandai masalah"> +<!ENTITY privacyPolicy.label "Kebijakan privasi"> +<!ENTITY issues.description "Adblock Plus mendeteksi masalah pada pengaturan Anda yang mungkin adalah penyebab dari masalah atau akan membuat laporan penyelidikan menjadi sulit."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/sidebar.dtd new file mode 100644 index 0000000..a6f02e1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Border item yang ber-flash"> +<!ENTITY address.label "Alamat"> +<!ENTITY context.open.label "Buka di tab baru"> +<!ENTITY type.label "Ketik"> +<!ENTITY tooltip.filterSource.label "Sumber filter:"> +<!ENTITY noitems.label "Tidak ada item yang bisa diblok"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Ukuran:"> +<!ENTITY reattach.label "Sertakan kembali"> +<!ENTITY search.label "&Cari:"> +<!ENTITY docDomain.thirdParty "(pihak ketiga)"> +<!ENTITY filterSource.label "Sumber filter"> +<!ENTITY tooltip.docDomain.label "Sumber dokumen:"> +<!ENTITY context.copy.label "Salin alamat item"> +<!ENTITY tooltip.type.label "Tipe:"> +<!ENTITY context.disablefilter.label "Nonaktifkan filter ?1?"> +<!ENTITY context.copyFilter.label "Salin filter"> +<!ENTITY context.block.label "Blokir item ini"> +<!ENTITY context.enablefilter.label "Hidupkan ulang filter ?1?"> +<!ENTITY detach.label "Lepas"> +<!ENTITY whitelisted.label "Halaman yang dibebaskan"> +<!ENTITY context.disablefilteronsite.label "Nonaktifkan filter ini pada ?1?"> +<!ENTITY detached.title "Adblock Plus: Item yang bisa diblok (dilepaskan)"> +<!ENTITY docDomain.firstParty "(pihak pertama)"> +<!ENTITY tooltip.type.whitelisted "(dibebaskan)"> +<!ENTITY tooltip.filter.label "Efek filter:"> +<!ENTITY tooltip.filter.disabled "(dinonaktifkan)"> +<!ENTITY context.editfilter.label "Edit efek filter"> +<!ENTITY tooltip.type.blocked "(diblokir)"> +<!ENTITY size.label "Ukuran"> +<!ENTITY context.whitelist.label "Tambahkan Aturan pengecualian untuk item"> +<!ENTITY context.selectAll.label "Pilih semua"> +<!ENTITY state.label "Bagian"> +<!ENTITY docDomain.label "Sumber dokumen"> +<!ENTITY tooltip.address.label "Alamat:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/subscriptionSelection.dtd new file mode 100644 index 0000000..4092dd2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/id/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Tambahkan filter &langganan "?1?" juga"> +<!ENTITY list.download.failed "Adblock Plus gagal untuk mengambil daftar langganan."> +<!ENTITY list.download.retry "Coba lagi"> +<!ENTITY title.label "&Judul langganan:"> +<!ENTITY list.download.website "Lihat situs"> +<!ENTITY supplementMessage "Filter langganan ini dimaksudkan untuk digunakan dengan filter langganan "?1?" yang Anda tidak menggunakannya lagi."> +<!ENTITY viewList.label "Lihat filter"> +<!ENTITY visitHomepage.label "Kunjungi situs web"> +<!ENTITY addSubscription.label "Tambahkan langganan"> +<!ENTITY dialog.title "Tambahkan filter langganan Adblock Plus"> +<!ENTITY location.label "&Lokasi daftar filter:"> +<!ENTITY fromWeb.description "Silahkan konfirmasi bahwa Anda ingin menambahkan filter langganan. Anda dapat merubah judul langganan atau lokasi sebelum menambahkannya."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/composer.dtd new file mode 100644 index 0000000..1e7a125 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "í en&da netfangs"> +<!ENTITY domainRestriction.label "&Takmarka við lén:"> +<!ENTITY collapse.default.no.label "Nota sjálfgefið (nei)"> +<!ENTITY firstParty.label "Aðeins fy&rsta aðila"> +<!ENTITY preferences.label "Sýna nú&verandi síur..."> +<!ENTITY pattern.label "Leita að mynstri"> +<!ENTITY thirdParty.label "&Aðeins þriðja aðila"> +<!ENTITY filter.label "Ný &sía:"> +<!ENTITY collapse.label "Fella sa&man lokaða hluti:"> +<!ENTITY match.warning "Mynstrið sem þú slóst inn passar ekki ekki við veffangið sem á að loka á/hvítlista og mun ekki hafa nein áhrif á það."> +<!ENTITY anchor.start.label "í &byrjun netfangs"> +<!ENTITY matchCase.label "&Passa við stafstöðu"> +<!ENTITY custom.pattern.label "Sérs&nið:"> +<!ENTITY unselectAllTypes.label "Velja ekkert"> +<!ENTITY type.whitelist.label "&Frávikregla"> +<!ENTITY regexp.warning "Mynstrið sem þú slóst inn verður túlkað sem regluleg segð. Margar reglulegar segðir gætu haft þau áhrif að hægja á vöfrun. Ef þú ætlar ekki að nota reglulega segðir, bættu þá * tákni við enda mynstursins."> +<!ENTITY dialog.title "Bæta við Adblock Plus síureglu"> +<!ENTITY basic.label "Einföld sýn"> +<!ENTITY type.filter.label "&Lokunarsía"> +<!ENTITY types.label "Virkja fyrir tegundir:"> +<!ENTITY shortpattern.warning "Mynstrið sem þú slóst inn er of stutt til að hægt sé að nota það, of mörg svona mynstur geta hægt á vöfrun. Mælt er með að þú notir lengri streng fyrir þessa síu."> +<!ENTITY collapse.yes.label "Já"> +<!ENTITY anchors.label "Aðeins samþykkja mynstur:"> +<!ENTITY collapse.default.yes.label "Nota sjálfgefið (já)"> +<!ENTITY domainRestriction.help "Sláðu inn eitt eða fleiri lén aðskilið með tákninu (|). Sían verður aðeins beitt á þessi lén. Táknið (~) fyrir framan lén þýðir að ekki ætti að beita síunni á það lén."> +<!ENTITY accept.label "Bæta við síu"> +<!ENTITY options.label "Valkostir"> +<!ENTITY disabled.warning "Adblock Plus er óvirkt eins og er. Þú getur samt bætt við síum en síurnar munu ekki vera virkar nema þú [link]virkjir Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "í &byrjun lénsins"> +<!ENTITY collapse.no.label "Nei"> +<!ENTITY selectAllTypes.label "Velja allt"> +<!ENTITY advanced.label "Ítarleg sýn"> +<!ENTITY pattern.explanation "Mynstrið getur verið hvaða hluti sem er í netfanginu; táknið (*) virkar sem algildisstafur. Síunni verður aðeins beitt á þau netföng sem passa við mynstrið."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/filters.dtd new file mode 100644 index 0000000..d22adad --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Allar sérsniðnar síur verða yfirskrifaðar af skrá. Viltu halda áfram?"> +<!ENTITY slow.column "H&ægar síur"> +<!ENTITY enabled.column "&Virkt"> +<!ENTITY subscription.lastDownload.checksumMismatch "Mistókst, prófsumma stemmir ekki"> +<!ENTITY noFiltersInGroup.text "Valinn hópur er tómur."> +<!ENTITY subscription.actions.label "Aðgerðir"> +<!ENTITY filter.selectAll.label "Velja allt"> +<!ENTITY backupButton.label "&Afrita og endurheimta"> +<!ENTITY restore.minVersion.warning "Aðvörun: skráin var búin til að nýrri útgáfu af Adblock Plus. Þú ættir að uppfæra í nýjustu útgáfu af Adblock Plus áður en þú endurheimtir þessa skrá."> +<!ENTITY restore.error "Ekki tókst að lesa skráargögn, kannski er skráin ekki Adblock Plus afritunarskrá?"> +<!ENTITY sort.ascending.label "&A > Ö röðun"> +<!ENTITY sort.label "Raða e&ftir"> +<!ENTITY subscription.source.label "Sía lista"> +<!ENTITY hitcount.column "&Notkun"> +<!ENTITY noFilters.text "Þú ert ekki ennþá með neina sérsniðna síu."> +<!ENTITY backup.custom.title "Aðeins sérsniðnar síur"> +<!ENTITY subscription.external.label "Uppfært af annarri viðbót"> +<!ENTITY subscription.delete.label "Eyða"> +<!ENTITY noGroupSelected.text "Þú verður að velja síuhóp áður en hægt er að birta síur."> +<!ENTITY filter.cut.label "Klippa"> +<!ENTITY restore.default.label "Endurheimta afrit frá ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Hleður…"> +<!ENTITY subscriptions.tab.label "Síu áskriftir"> +<!ENTITY sort.descending.label "&Ö > A röðun"> +<!ENTITY filters.remove.warning "Viltu örugglega fjarlægja alla valdar síur?"> +<!ENTITY filter.delete.label "Eyða"> +<!ENTITY addSubscriptionAdd.label "Bæta við"> +<!ENTITY viewMenu.label "Skoða"> +<!ENTITY subscription.lastDownload.unknown "Óþekkt"> +<!ENTITY addSubscriptionCancel.label "Hætta við"> +<!ENTITY subscription.enabled.label "Virkt"> +<!ENTITY noSubscriptions.text "Þú hefur ekki ennþá bætt við áskrift að síu. Adblock Plus virkar ekki + án þess að vera með síur, notaðu "Bæta við síuáskrift" til + að bæta við síuáskrift."> +<!ENTITY subscription.update.label "Uppfæra síur"> +<!ENTITY dialog.title "Adblock Plus síu stillingar"> +<!ENTITY addFilter.label "Bæta við sí&u"> +<!ENTITY subscription.minVersion.warning "Þessi síuáskrift þarfnast nýrri útáfu af Adblock Plus, þú ættir að uppfæra í nýjustu útgáfu."> +<!ENTITY subscription.lastDownload.invalidURL "Mistókst, ekki gilt netfang"> +<!ENTITY backup.error "Upp kom villa við að skrifa síur í skránna. Gakktu úr skugga um að skráin sé ekki ritvarin eða í notkun af öðru forriti."> +<!ENTITY filter.moveUp.label "Færa upp"> +<!ENTITY addGroup.label "Bæta við síu&hóp"> +<!ENTITY filter.edit.label "Breyta"> +<!ENTITY subscription.showHideFilters.label "Sýna/fela síur"> +<!ENTITY acceptableAds2.label "Leyfa auglýs&ingar sem eru ekki uppáþrengjandi"> +<!ENTITY addSubscriptionOther.label "Bæta við öðruvísi áskrift"> +<!ENTITY close.label "Loka"> +<!ENTITY sort.none.label "Ó&raðað"> +<!ENTITY filter.actions.label "Síu aðgerðir"> +<!ENTITY filter.copy.label "Afrita"> +<!ENTITY filter.moveDown.label "Færa niður"> +<!ENTITY filter.resetHitCounts.label "Endurstilla síu teljara"> +<!ENTITY readMore.label "Lesa meira"> +<!ENTITY subscription.moveUp.label "Færa upp"> +<!ENTITY addSubscription.label "&Bæta við síuáskrift"> +<!ENTITY subscription.homepage.label "Heimasíða"> +<!ENTITY backup.complete.title "Allar síur og áskriftir"> +<!ENTITY restore.own.label "Endurheimta eigið afrit"> +<!ENTITY restore.complete.warning "Allar síustillingar verða yfirskrifaðar af skrá. Viltu halda áfram?"> +<!ENTITY filters.tab.label "Sérsniðnar síur"> +<!ENTITY backup.label "Búa til nýtt afrit"> +<!ENTITY find.label "&Leita"> +<!ENTITY subscription.moveDown.label "Færa niður"> +<!ENTITY subscription.lastDownload.connectionError "Mistókst, gat ekki niðurhalað"> +<!ENTITY subscription.lastDownload.success "Tókst"> +<!ENTITY subscription.lastDownload.invalidData "Mistókst, ekki gildur síulisti"> +<!ENTITY filter.paste.label "Líma"> +<!ENTITY subscription.disabledFilters.enable "Virkja óvirkar síur"> +<!ENTITY lasthit.column "Seinast &heimsótt"> +<!ENTITY subscription.editTitle.label "Breyta titli"> +<!ENTITY subscription.disabledFilters.warning "Sumar síur í þessari áskrift eru óvirkar."> +<!ENTITY filter.column "Síu re&gla"> +<!ENTITY subscription.lastDownload.label "Seinasta niðurhal:"> +<!ENTITY viewList.label "Skoða lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/firstRun.properties new file mode 100644 index 0000000..a337e72 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Vafraðu örugglega með því að loka á að fylgst sé með þér - feldu þig frá auglýsinga fyrirtækjum sem geta fylgst með þér í hverju skrefi. +firstRun_toggle_off=ÓVIRKT +firstRun_feature_tracking=Slökkva á rakningu +firstRun_feature_malware=Loka á spilliforrit +firstRun_title=Adblock Plus var sett inn +firstRun_toggle_on=VIRKT +firstRun_acceptableAdsExplanation=Við viljum hvetja vefsvæði til að nota einfaldar auglýsingar, sem eru ekki uppáþrengjandi. Þess vegna höfum við sett fram <a>ákveðnar reglur</a> til að skilgreina ásættanlegar auglýsingar, sem eru birtar með venjulegum stillingum. Ef þú vilt loka á allar auglýsingar geturðu gert þetta <a>óvirkt</a> á einfaldan hátt. +firstRun_contributor_credits=Stuðningsaðilar +firstRun_dataCorruptionWarning=Er þessi síða alltaf að birtast? <a>Smelltu hér!</a> +firstRun_acceptableAdsHeadline=Lokað verður á uppáþrengjandi auglýsingar +firstRun_share=Láttu vini þína vita +firstRun_share_headline=<a>Hjálpaðu okkur</a> í því að gera vefinn betri +firstRun_feature_social_description=Taktu sjálfkrafa út samfélags hnappa, eins og Facebook hnappa, sem birtast á vefsíðum og fylgjast með þér. +firstRun_filterlistsReinitializedWarning=Svo virðist sem að upp hafi komið vandamál sem gerði það að verkum að öllum síum var eytt og ekki var hægt að endurheimta. Þar af leiðandi þurfti að endurstilla allar síur og stillingar fyrir ásættanlegar auglýsingar. Athugaðu síu listana og stillingar fyrir ásættanlegar auglýsingar í <a>Adblock Plus stillingum</a>. +firstRun_feature_malware_description=Gerðu netvafur öruggara með því að loka á þekkt hættuleg vefsvæði. +firstRun_features=Adblock Plus getur gert meira heldur en að loka á auglýsingar +firstRun_donate=gefa +firstRun_donate_label=Styðja verkefnið +firstRun_feature_social=Fjarlægja hnappa fyrir netsamfélög +firstRun_legacySafariWarning=Þú ert að nota gamla útgáfu af Safari sem er ekki með stuðning frá Adblock Plus. Hugsanlega virkar hún ekki eða virkar illa á sumum vefsvæðum. Við mælum með að þú annað hvort uppfærir í Safari 6.1.1 eða hærri útgáfu (á Mac OS X 10.8 Mountain Lion), eða Safari 7.0.1 eða hærri (á OS X 10.9 Mavericks), eða notir nýjustu útgáfu af Mozilla Firefox, Google Chrome eða Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/global.properties new file mode 100644 index 0000000..775228d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Engir lokaðir hlutir á núverandi síðu +action3_tooltip=Smelltu til að virkja/gera óvirkt Adblock Plus. +notification_antiadblock_title=Fela áhugamiðuð skilaboð? +type_label_script=skrifta +filter_elemhide_nocriteria=Engin viðmiðun skilgreind til þess að bera kennsl á hlut til að fela +blockingGroup_title=Lokunarreglur +whitelisted_tooltip=Adblock Plus er í gangi en er óvirkur á núverandi síðu. +type_label_stylesheet=stílblað +blocked_count_tooltip=?1? af ?2? +type_label_font=leturgerð +type_label_popup=sprettigluggi +filter_regexp_tooltip=Sían er annaðhvort regluleg segð eða of stutt til að hægt sé að nota. Of margar af svona síum gætu hægt á vöfrun. +action0_tooltip=Smelltu til að birta valmynd, miðju smelltu á músinni til að virkja/gera óvirkt. +whitelisted_page=Búið er að gera Adblock Plus óvirkt fyrir núverandi síðu +remove_group_warning=Viltu fjarlægja þennan hóp? +action1_tooltip=Smelltu til að opna/loka hlutum, miðju smella til að virkja/gera óvirkt. +type_label_xmlhttprequest=XML beiðni +active_tooltip=Adblock Plus er virkur, ?1? síu áskriftir og ?2? sérsniðnar síur í notkun. +type_label_document=skjal +type_label_object_subrequest=undiraðgerð hlutar +whitelistGroup_title=Undantekningarreglur +disabled_tooltip=Adblock Plus er óvirkur. +filter_elemhide_duplicate_id=Aðeins er hægt að skilgreina eitt auðkenni fyrir hlut sem á að fela +type_label_object=hlutur +action2_tooltip=Smelltu til að opna stillingar, miðju smelltu til að virkja/gera óvirkt. +type_label_subdocument=rammi +clearStats_warning=Þetta mun endurstilla alla teljara á síunotkun og hætta að telja síunotkun. Viltu halda áfram? +notification_antiadblock_message=Þetta vefsvæði er þekkt fyrir að sýna áhugamiðuð skilaboð til Adblock Plus notenda. Viltu að Adblock Plus feli þessi áhugamiðuð skilaboð? +blocked_count_addendum=(einnig á hvítlista: ?1?, falið: ?2?) +subscription_invalid_location=Staðsetning síu er ekki gilt URL eða gilt skráarnafn. +type_label_image=mynd +remove_subscription_warning=Viltu fjarlægja þessa áskrift? +type_label_other=annað +mobile_menu_enable=ABP: Virkja +type_label_media=hljóð/mynd +mobile_menu_disable_site=ABP: Óvirkt fyrir ?1? +elemhideGroup_title=Felureglur +mobile_menu_enable_site=ABP: Virkja fyrir ?1? +type_label_elemhide=falið +newGroup_title=Ný síu regla +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/overlay.dtd new file mode 100644 index 0000000..6f94a02 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Já"> +<!ENTITY notification.button.no "&Nei"> +<!ENTITY sync.label "Sa&mstilla Adblock Plus stillingar"> +<!ENTITY whitelist.site.label "Gera óvirkt á ?1?"> +<!ENTITY filters.label "&Síu stillingar"> +<!ENTITY disable.label "Slökkva á allstaðar"> +<!ENTITY objecttab.title "Loka á"> +<!ENTITY objecttab.tooltip "Smelltu hér til að loka á þennan hlut með Adblock Plus"> +<!ENTITY menuitem.label "Ad&block Plus stillingar"> +<!ENTITY objecttabs.label "Sýna &flipa fyrir Flass og Java"> +<!ENTITY sendReport.label "Tilkynna vandamál á þessa&ri síðu"> +<!ENTITY whitelist.page.label "Gera óvirkt aðeins á þessari síðu"> +<!ENTITY context.image.label "Adblock Plus: Loka auglýsingamynd"> +<!ENTITY counthits.label "Telja síu &notkun"> +<!ENTITY opensidebar.label "Skoða h&luti"> +<!ENTITY notification.button.close "&Loka"> +<!ENTITY contribute.label "Taka þátt í Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Loka auglýsingaramma"> +<!ENTITY blocked.tooltip "Lokaðir hlutir á þessari síðu:"> +<!ENTITY hideplaceholders.label "Fela staðgeng&itákn á lokuðum einindum"> +<!ENTITY showinstatusbar.label "&Sýna í stöðuslá"> +<!ENTITY sidebar.title "Hlutir á núverandi síðu sem hægt er að loka á"> +<!ENTITY options.label "&Valkostir"> +<!ENTITY context.object.label "Adblock Plus: Loka auglýsingahlut"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Endurvirkja á þessari síðu"> +<!ENTITY filters.tooltip "Mest notaðar síur:"> +<!ENTITY closesidebar.label "&Loka hlutum"> +<!ENTITY showintoolbar.label "Sýna í &tækjaslá"> +<!ENTITY status.tooltip "Staða:"> +<!ENTITY context.media.label "Adblock Plus: Loka á myndefni/hljóð"> +<!ENTITY subscription.update.label "Uppfæra síur"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/sendReport.dtd new file mode 100644 index 0000000..6c28bec --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/sendReport.dtd @@ -0,0 +1,97 @@ +<!ENTITY screenshot.undo.label "Aft&urkalla"> +<!ENTITY issues.disabledgroups.description "Eftirfarandi síuáskriftir / síuhópar eru óvirkar, samt sem áður gætu þær haft haft + áhrif á þessari síðu:"> +<!ENTITY showData.label "Sýna skýrslugögn"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus lokar á of &mikið"> +<!ENTITY issues.change.description "Búið er að breyta stillingum. Vinsamlega endurnýjaðu síðuna til að prófa breytingarnar + og sendu skýrslu ef vandamálið leystist ekki vegna breytinganna."> +<!ENTITY email.label "&Tölvupóstfang:"> +<!ENTITY issues.openPreferences.label "Opna síuvalkosti"> +<!ENTITY sendPage.confirmation "Búið er að vista skýrsluna. Þú getur séð hana á eftirfarandi veffangi:"> +<!ENTITY copyLink.label "&Afrita skýrslutengil"> +<!ENTITY issues.nofilters.description "Adblock Plus er ekki að loka á neitt á núverandi síðu. Vandamálið sem þú ert að + sjá er líklega ótengt Adblock Plus."> +<!ENTITY sendPage.knownIssue "Vandamálið sem þú tilkynntir er öllum líkindum þegar þekkt. Meiri upplýsingar:"> +<!ENTITY typeSelector.other.description "Veldu þennan möguleika ef þú heldur að vandamálið sé hjá Adblock Plus sjálfu frekar + en í síu."> +<!ENTITY issues.disabledgroups.enable.label "Virkja síuáskrift / síuhópur"> +<!ENTITY typeWarning.override.label "Ég &skil og vill samt senda skýrslu"> +<!ENTITY issues.disabled.enable.label "Virkja Adblock Plus"> +<!ENTITY update.fixed.description "Uppfærslur á síuáskriftum lagfærðu að öllum líkindum vandamálið. Endurnýjaðu síðun og reyndu aftur, smelltu á tilkynna aftur ef vandamálið er enn til staðar."> +<!ENTITY anonymous.label "N&afnlaus sending"> +<!ENTITY reloadButton.label "Endu&rnýja síðu"> +<!ENTITY recentReports.clear.label "Fja&rlægja allar skýrslur"> +<!ENTITY typeSelector.description "Þessi gluggi hjálpar þér í gegnum þau skref sem þarf til að tilkynna Adblock + Plus vandamála. Veldu fyrst, hverskonar tegund af vandamáli þú ert að lenda í + á þessari síðu:"> +<!ENTITY screenshot.remove.label "Fja&rlægja viðkvæm gögn"> +<!ENTITY issues.ownfilters.description "Sumar af síunum sem eru virkar á þessari síðu eru stilltar af notanda. Vinsamlega gerðu þær síur óvirkar + sem hugsanlega gætu hafa valdið vandræðunum:"> +<!ENTITY update.inProgress.description "Adblock Plus þarf að uppfæra síuáskriftir til að ganga úr skugga um að vandamálið hafi ekki þegar verið lagað. Bíddu aðeins…"> +<!ENTITY sendPage.retry.label "Senda aftur"> +<!ENTITY data.label "&Skýrslugögn:"> +<!ENTITY recentReports.label "Nýlegar sendar skýrslur"> +<!ENTITY typeWarning.description "Þú hefur gefið til kynna að þú viljir tilkynna almennt vandamál á Adblock Plus frekar + en vandamál með síurnar. Vinsamlega athugaðu að svoleiðis vandamál er best að tilkynna + á [link]Adblock Plus umræðusvæðinu[/link]. Þú ættir aðeins að tilkynna vandamál sem + viðauka við umræðu sem er til fyrir, þar sem enginn tekur eftir tilkynningunni + nema þú setjir tengil með. Sjálfvirki tengillinn + verður aðgengilegur eftir að skýrslan hefur verið send."> +<!ENTITY issues.disabled.description "Adblock Plus er óvirkt, það mun ekki loka á neitt í núverandi ástandi."> +<!ENTITY attachExtensions.label "Láta fylgja með lista af &virkum viðbótum í skýrslunni ef svo vildi til að vandamálið væri vegna þeirra"> +<!ENTITY issues.nosubscriptions.add.label "Bæta við síuáskrift"> +<!ENTITY issues.disabledfilters.enable.label "Virkja síu"> +<!ENTITY issues.override.label "&Stillingarnar eru réttar, halda áfram með skýrsluna"> +<!ENTITY issues.nosubscriptions.description "Þú ert ekki áskrifandi að neinum af forskilgreindum síulistum sem fjarlægja + sjálfvirkt óæskilegt efni frá vefsvæðum."> +<!ENTITY typeSelector.falsePositive.description "Veldu þennan möguleika ef á síðuna vantar mikilvæg gögn, birtist rangt eða + virkar ekki eðlilega. Þú getur gengið úr skugga um hvort Adblock Plus sé vandamálið + með því að gera það óvirkt tímabundið."> +<!ENTITY typeSelector.other.label "A&nnað vandamál"> +<!ENTITY emailComment.label "Við mælum með að þú sláir inn gilt tölvupóstfang svo hægt að hafa samband við þig ef það eru spurningar um skýrsluna þína. Einnig gerir það okkur kleyft að bera kennsl á það sem þú sendir inn og hægt er að forgangsraða því hærra."> +<!ENTITY issues.whitelist.remove.label "Virkja Adblock Plus á þessari síðu"> +<!ENTITY outdatedSubscriptions.description "Eftirfarandi síuáskriftir hafa ekki verið uppfærðar í að minnsta kosti tvær vikur. Uppfærðu síuáskriftirnar áður en þú tilkynnir vandamál, hugsanlega er þegar búið að leysa vandamálið."> +<!ENTITY dataCollector.description "Bíddu aðeins á meðan Adblock Plus tekur saman nauðsynleg gögn."> +<!ENTITY sendButton.label "Se&nda skýrslu"> +<!ENTITY comment.label "&Athugasemd (valfrjálst):"> +<!ENTITY sendPage.errorMessage "Tilraun til að senda skýrsluna mistókst með villukóða "?1?". Gakktu úr skugga um þú sért + tengdur við netið og reyndu aftur. Ef vandamálið er viðvarandi fáðu þá + hjálp í [link]Adblock Plus umræðusvæðinu[/link]."> +<!ENTITY showRecentReports.label "Sýna nýlegar sendar skýrslur"> +<!ENTITY commentPage.heading "Sláðu inn athugasemd"> +<!ENTITY update.start.label "Byrja uppfærslu"> +<!ENTITY issues.disabledfilters.description "Eftirfarandi síur eru óvirkar, en gætu samt sem áður haft áhrif á þessari síðu:"> +<!ENTITY screenshot.description "Sama síðan getur birst á mismunandi hátt fyrir mismunandi fólk. Það gæti hjálpað okkur + að skilja vandamálið ef þú setur skjáskot með skýrslunni. Þú getur fjarlægt + svæði sem innihalda persónulegar upplýsingar og merkt einnig þau svæði þar sem + vandamálið sést. Til að merkja svæði smelltu á viðkomandi hnapp og veldu + svæði á myndinni með músinni."> +<!ENTITY screenshot.attach.label "&Hengja mynd af síðu við skýrsluna"> +<!ENTITY issues.whitelist.description "Adblock Plus er óvirkt á síðunni sem þú ert að senda skýrslu um. Vinsamlega virkjaðu + það og endurnýjaðu síðuna áður en þú sendir skýrsluna til að hjálpa til með að rannsaka + þetta vandamál."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus lokar &ekki á auglýsingu"> +<!ENTITY typeSelector.heading "Veldu tegund skýrslu"> +<!ENTITY anonymity.warning "Við munum ekki geta haft samband við þig og munum að öllum líkindum þess vegna setja þína skýrslu í lægri forgang."> +<!ENTITY wizard.title "Höfundur tilkynningar"> +<!ENTITY issues.ownfilters.disable.label "Slökkva á síu"> +<!ENTITY commentPage.description "Þú getur slegið inn athugasemd í textasvæðið hér fyrir neðan til að hjálpa okkur að skilja vandamálið. + Þetta skref er valkvæmt en mælt er með því ef vandamálið er ekki augljóst. + Þú getur einnig forskoðað skýrsluna áður en þú hún er send."> +<!ENTITY comment.lengthWarning "Lengdin á athugasemd er yfir 1000 stafir. Aðeins verða sendir fyrstu 1000 stafirnir."> +<!ENTITY typeSelector.falseNegative.description "Veldu þennan möguleika ef auglýsing birtist jafnvel + þótt Adblock Plus sé virkt."> +<!ENTITY sendPage.waitMessage "Bíddu aðeins meðan Adblock Plus sendir skýrsluna."> +<!ENTITY dataCollector.heading "Velkominn í tilkynna vandamál"> +<!ENTITY screenshot.heading "Hengja skjámynd við"> +<!ENTITY sendPage.heading "Senda skýrslu"> +<!ENTITY issues.subscriptionCount.description "Svo virðist sem þú sért áskrifandi að of mörgum síuáskriftum. Ekki + er mælt með þessu þar sem líklegt er að + vandamál verði of mörg. Ekki er heldur hægt að taka á móti tilkynningu um villu + vegna þess að ekki er augljóst hvaða síu þarf að laga. Vinsamlega + fjarlægðu allar síur nema þær allra nauðsynlegustu og prófaðu aftur hvort + vandamálið sé enn til staðar."> +<!ENTITY screenshot.mark.label "&Merkja vandamálið"> +<!ENTITY privacyPolicy.label "Persónuverndarstefna"> +<!ENTITY issues.description "Adblock Plus uppgötvaði vandamál með stillingar sem gætu verið ástæða + fyrir þessu vandamáli eða gæti haft áhrif á rannsókn vandamálsins."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/sidebar.dtd new file mode 100644 index 0000000..68608a7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Rammi Flash hlutar"> +<!ENTITY address.label "Netfang"> +<!ENTITY context.open.label "Opna í nýjum flipa"> +<!ENTITY type.label "Tegund"> +<!ENTITY tooltip.filterSource.label "Sía frumkóða:"> +<!ENTITY noitems.label "Engir hlutir til að loka á"> +<!ENTITY filter.label "Sía"> +<!ENTITY tooltip.size.label "Stærð:"> +<!ENTITY reattach.label "Festa aftur"> +<!ENTITY search.label "&Leita:"> +<!ENTITY docDomain.thirdParty "(þriðja aðila)"> +<!ENTITY filterSource.label "Síu uppruni"> +<!ENTITY tooltip.docDomain.label "Netfang síðu:"> +<!ENTITY context.copy.label "Afrita vefslóð hlutar"> +<!ENTITY tooltip.type.label "Tegund:"> +<!ENTITY context.disablefilter.label "Aftengja síu ?1?"> +<!ENTITY context.copyFilter.label "Afrita síu"> +<!ENTITY context.block.label "Loka á þennan hlut"> +<!ENTITY context.enablefilter.label "Virkja aftur síu ?1?"> +<!ENTITY detach.label "Aftengja"> +<!ENTITY whitelisted.label "Síða fyrir hvítlista"> +<!ENTITY context.disablefilteronsite.label "Aftengja síu fyrir ?1?"> +<!ENTITY detached.title "Adblock Plus: Lokaðir hlutir (aðskildir)"> +<!ENTITY docDomain.firstParty "(frumaðili)"> +<!ENTITY tooltip.type.whitelisted "(hvítlisti)"> +<!ENTITY tooltip.filter.label "Sía í notkun:"> +<!ENTITY tooltip.filter.disabled "(óvirkt)"> +<!ENTITY context.editfilter.label "Breyta núverandi síu"> +<!ENTITY tooltip.type.blocked "(stöðvað)"> +<!ENTITY size.label "Stærð"> +<!ENTITY context.whitelist.label "Bæta við undantekningu fyrir hlut"> +<!ENTITY context.selectAll.label "Velja allt"> +<!ENTITY state.label "Ríki"> +<!ENTITY docDomain.label "Netfang síðu"> +<!ENTITY tooltip.address.label "Netfang:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/subscriptionSelection.dtd new file mode 100644 index 0000000..8d2a550 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/is/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Bæta einnig við &síu áskrift "?1?""> +<!ENTITY list.download.failed "Adblock Plus gat ekki náð í lista af áskriftum."> +<!ENTITY list.download.retry "Reyndu aftur"> +<!ENTITY title.label "Áskrif&tartitill:"> +<!ENTITY list.download.website "Skoða vefsvæði"> +<!ENTITY supplementMessage "Þessi síu áskrift er ætluð til þess að vera notuð með síu áskrift "?1?" sem þú hefur ekki ennþá bætt við."> +<!ENTITY viewList.label "Skoða síur"> +<!ENTITY visitHomepage.label "Heimsækja heimasíðu"> +<!ENTITY addSubscription.label "Bæta við áskrift"> +<!ENTITY dialog.title "Bæta við Adblock Plus síu áskrift"> +<!ENTITY location.label "Staðsetning síu&lista:"> +<!ENTITY fromWeb.description "Staðfestu að þú viljir bæta við þessari síu áskrift. Þú getur breytt titlinum eða staðsetningu áður en þú bætir við."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/composer.dtd new file mode 100644 index 0000000..ad05b55 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "alla f&ine dell'indirizzo web"> +<!ENTITY domainRestriction.label "Limita al &dominio:"> +<!ENTITY collapse.default.no.label "Utilizza predefiniti (no)"> +<!ENTITY firstParty.label "Solo dominii di p&rimo livello"> +<!ENTITY preferences.label "&Mostra i filtri esistenti…"> +<!ENTITY pattern.label "Modelli"> +<!ENTITY thirdParty.label "&Solo domini di terza parte"> +<!ENTITY filter.label "&Nuovo filtro:"> +<!ENTITY collapse.label "&Contrai bloccati:"> +<!ENTITY match.warning "Il modello inserito non corrisponde più all'indirizzo web da bloccare/permettere e non avrà quindi alcun effetto"> +<!ENTITY anchor.start.label "all'i&nizio dell'indirizzo web"> +<!ENTITY matchCase.label "Mai&uscole/minuscole"> +<!ENTITY custom.pattern.label "&Personalizza:"> +<!ENTITY unselectAllTypes.label "Deseleziona"> +<!ENTITY type.whitelist.label "Eccezione"> +<!ENTITY regexp.warning "Il modello inserito verrà interpretato come espressione regolare. Un numero eccessivo di tali modelli potrebbe rallentare la navigazione. Se non si intende utilizzare le espressioni regolari aggiungere il carattere * alla fine del modello"> +<!ENTITY dialog.title "Nuovo filtro di Adblock Plus"> +<!ENTITY basic.label "<< Generali"> +<!ENTITY type.filter.label "Filtro &per bloccare"> +<!ENTITY types.label "Applica ai tipi:"> +<!ENTITY shortpattern.warning "Il modello inserito è troppo breve per essere ottimizzato. Un numero eccessivo di tali modelli potrebbe rallentare la navigazione. Sarebbe preferibile utilizzare una stringa più lunga"> +<!ENTITY collapse.yes.label "Sì"> +<!ENTITY anchors.label "Accetta modelli solo:"> +<!ENTITY collapse.default.yes.label "Utilizza predefiniti (sì)"> +<!ENTITY domainRestriction.help "È possibile specificare uno o più dominii separandoli con il carattere "|": il filtro verrà applicato solamente a tali dominii (si noti che il carattere "~" prima del nome di un dominio significa che il filtro non verrà applicato per tale dominio)"> +<!ENTITY accept.label "Aggiungi filtro"> +<!ENTITY options.label "Opzioni"> +<!ENTITY disabled.warning "Adblock Plus è attualmente disattivata. È comunque possibile aggiungere filtri, ma questi verranno applicati solo dopo la [link]riattivazione di Adblock Plus[/link]"> +<!ENTITY anchor.start.flexible.label "all'i&nizio del nome del dominio"> +<!ENTITY collapse.no.label "No"> +<!ENTITY selectAllTypes.label "Seleziona tutti"> +<!ENTITY advanced.label "Avanzate >>"> +<!ENTITY pattern.explanation "Il modello può corrispondere a qualsiasi parte dell'indirizzo web, il carattere * corrisponde ad un carattere jolly. Il filtro verrà applicato ai soli indirizzi web corrispondenti al modello"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/filters.dtd new file mode 100644 index 0000000..77200a0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Tutti i filtri personalizzati verranno sostituiti dal contenuto del file selezionato. Procedere comunque?"> +<!ENTITY slow.column "Fi&ltri lenti"> +<!ENTITY enabled.column "A&ttivato"> +<!ENTITY subscription.lastDownload.checksumMismatch "Sincronizzazione non riuscita, checksum non corrispondente"> +<!ENTITY noFiltersInGroup.text "Il gruppo di filtri selezionato è vuoto"> +<!ENTITY subscription.actions.label "Azioni"> +<!ENTITY filter.selectAll.label "Seleziona tutto"> +<!ENTITY backupButton.label "&Backup e ripristino"> +<!ENTITY restore.minVersion.warning "Attenzione: il file di backup è stato creato con una versione più recente di Adblock Plus. Installare l'ultima versione di Adblock Plus per poter effettuare il ripristino da tale file"> +<!ENTITY restore.error "Impossibile effettuare il ripristino del backup poiché il file selezionato probabilmente non è un file di backup di Adblock Plus"> +<!ENTITY sort.ascending.label "Ordin&a A > Z"> +<!ENTITY sort.label "&Ordina"> +<!ENTITY subscription.source.label "Lista di filtri"> +<!ENTITY hitcount.column "Acce&ssi"> +<!ENTITY noFilters.text "Non è stato ancora aggiunto alcun filtro personalizzato"> +<!ENTITY backup.custom.title "Solo filtri personalizzati"> +<!ENTITY subscription.external.label "Sottoscrizione aggiornata da un'altra estensione"> +<!ENTITY subscription.delete.label "Elimina"> +<!ENTITY noGroupSelected.text "Selezionare un gruppo di filtri per visualizzarne i filtri"> +<!ENTITY filter.cut.label "Taglia"> +<!ENTITY restore.default.label "Ripristina il backup datato ?1?"> +<!ENTITY subscription.lastDownload.inProgress "download in corso…"> +<!ENTITY subscriptions.tab.label "Sottoscrizioni di filtri"> +<!ENTITY sort.descending.label "Ordina &Z > A"> +<!ENTITY filters.remove.warning "Eliminare tutti i filtri selezionati?"> +<!ENTITY filter.delete.label "Elimina"> +<!ENTITY addSubscriptionAdd.label "Aggiungi"> +<!ENTITY viewMenu.label "Visualizza"> +<!ENTITY subscription.lastDownload.unknown "sconosciuto"> +<!ENTITY addSubscriptionCancel.label "Annulla"> +<!ENTITY subscription.enabled.label "Attiva"> +<!ENTITY noSubscriptions.text "Non è stata ancora aggiunta alcuna sottoscrizione di filtri, senza cui Adblock Plus non + bloccherà alcun elemento; fare clic sul pulsante "Aggiungi sottoscrizione…" + per aggiungerne una"> +<!ENTITY subscription.update.label "Aggiorna i filtri"> +<!ENTITY dialog.title "Gestione dei filtri di Adblock Plus"> +<!ENTITY addFilter.label "Aggiungi &filtro"> +<!ENTITY subscription.minVersion.warning "Per questa sottoscrizione di filtri è necessaria una versione di Adblock Plus aggiornata. È necessario installare l'ultima versione di Adblock Plus"> +<!ENTITY subscription.lastDownload.invalidURL "Sincronizzazione non riuscita, indirizzo web non valido"> +<!ENTITY backup.error "Si è verificato un errore durante la creazione del file di backup. Verificare i permessi di scrittura per il file e/o che non sia già utilizzato da un'altra applicazione"> +<!ENTITY filter.moveUp.label "Sposta su"> +<!ENTITY addGroup.label "A&ggiungi gruppo di filtri"> +<!ENTITY filter.edit.label "Modifica"> +<!ENTITY subscription.showHideFilters.label "Mostra/nascondi i filtri"> +<!ENTITY acceptableAds2.label "&Permetti alcune pubblicità non inopportune"> +<!ENTITY addSubscriptionOther.label "Altre sottoscrizioni"> +<!ENTITY close.label "Chiudi"> +<!ENTITY sort.none.label "Non or&dinare"> +<!ENTITY filter.actions.label "Opzioni del filtro"> +<!ENTITY filter.copy.label "Copia"> +<!ENTITY filter.moveDown.label "Sposta giù"> +<!ENTITY filter.resetHitCounts.label "Ripristina le statistiche di accesso"> +<!ENTITY readMore.label "Ulteriori informazioni…"> +<!ENTITY subscription.moveUp.label "Sposta su"> +<!ENTITY addSubscription.label "&Aggiungi sottoscrizione"> +<!ENTITY subscription.homepage.label "Sito web"> +<!ENTITY backup.complete.title "Tutti i filtri e le sottoscrizioni"> +<!ENTITY restore.own.label "Backup personale da ripristinare"> +<!ENTITY restore.complete.warning "Tutte le impostazioni dei filtri verranno sostituite dal contenuto del file selezionato. Procedere comunque?"> +<!ENTITY filters.tab.label "Filtri personalizzati"> +<!ENTITY backup.label "Nuovo backup"> +<!ENTITY find.label "Tro&va"> +<!ENTITY subscription.moveDown.label "Sposta giù"> +<!ENTITY subscription.lastDownload.connectionError "Sincronizzazione non riuscita, errore durante il download"> +<!ENTITY subscription.lastDownload.success "Sincronizzazione effettuata con successo"> +<!ENTITY subscription.lastDownload.invalidData "Sincronizzazione non riuscita, lista dei filtri non valida"> +<!ENTITY filter.paste.label "Incolla"> +<!ENTITY subscription.disabledFilters.enable "Attiva i filtri disattivati"> +<!ENTITY lasthit.column "&Ultimo accesso"> +<!ENTITY subscription.editTitle.label "Modifica il titolo"> +<!ENTITY subscription.disabledFilters.warning "Alcuni filtri di questa sottoscrizione sono disattivati."> +<!ENTITY filter.column "&Ruolo del filtro"> +<!ENTITY subscription.lastDownload.label "Ultimo aggiornamento:"> +<!ENTITY viewList.label "Visualizza la lista…"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/firstRun.properties new file mode 100644 index 0000000..bd96e56 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Naviga privatamente disattivando il tracciamento, nascondendo alle compagnie pubblicitarie quali siti web vengono visitati +firstRun_toggle_off=Disattivato +firstRun_feature_tracking=Disattiva il tracciamento +firstRun_feature_malware=Blocco del malware +firstRun_title=Adblock Plus è stata installata +firstRun_toggle_on=Attivo +firstRun_acceptableAdsExplanation=Vorremmo incoraggiare i siti web ad utilizzare pubblicità semplici e discrete. Ecco perché sono state stabilite <a>severe linee guida</a> per identificare pubblicità accettabili, che saranno visualizzate con le impostazioni predefinite. Per bloccare comunque tutte le pubblicità è possibile <a>disattivare</a> l'opzione rapidamente +firstRun_contributor_credits=Lista dei collaboratori +firstRun_dataCorruptionWarning=Questa pagina continua ad essere visualizzata? <a>Fai clic qui</a> +firstRun_acceptableAdsHeadline=Le pubblicità fastidiose verranno bloccate +firstRun_share=Dillo ai tuoi amici +firstRun_share_headline=<a>Aiuta</a> a rendere il web un luogo migliore +firstRun_feature_social_description=Elimina automaticamente i pulsanti social media, come Facebook Like, che compaiono sulle pagine web e tracciano poi quali siti vengono visitati +firstRun_filterlistsReinitializedWarning=Sembra che un problema abbia causato la rimozione di tutti i filtri e non siamo stati in grado di ripristinare un backup. Quindi abbiamo dovuto azzerare i filtri e le impostazioni per la pubblicità accettabile. Si prega di controllare le impostazioni per la pubblicità accettabile e gli elenchi dei filtri nelle <a>opzioni di Adblock Plus</a>. +firstRun_feature_malware_description=Rendi la tua navigazione più sicura bloccando domini pericolosi conosciuti +firstRun_features=Adblock Plus può fare di più, oltre a bloccare pubblicità +firstRun_donate=dona +firstRun_donate_label=Sostieni il nostro progetto +firstRun_feature_social=Elimina i pulsanti Social Media +firstRun_legacySafariWarning=Si sta utilizzando una vecchia versione di Safari che non è supportato da Adblock Plus. Potrebbe non funzionare correttamente o compromettere l'esperienza dell'utente su alcuni siti Web. Si consiglia vivamente di aggiornare a Safari 6.1.1 o superiore (disponibile per Mac OS X 10.8 Mountain Lion), or Safari 7.0.1 (per OS X 10.9 Maveriscks), o di utilizzare l'ultima versione di Mozilla Firefox, Google Chrome o Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/global.properties new file mode 100644 index 0000000..7c4f1fb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Nessun elemento bloccabile nella pagina attuale +action3_tooltip=Fare clic per attivare/disattivare Adblock Plus +notification_antiadblock_title=Nascondere messaggi mirati? +type_label_script=script +filter_elemhide_nocriteria=Non è stato specificato alcun criterio per rilevare l'elemento da nascondere +blockingGroup_title=Gruppo di filtri per bloccare elementi +whitelisted_tooltip=Adblock Plus è attiva ma è stata disattivata per la pagina attuale +type_label_stylesheet=foglio di stile +blocked_count_tooltip=?1? di ?2? +type_label_font=carattere +type_label_popup=finestra a pop-up +filter_regexp_tooltip=Il filtro inserito verrà interpretato come un'espressione regolare. Un numero eccessivo di tali filtri potrebbe rallentare la navigazione +action0_tooltip=Fare clic per visualizzare il menu contestuale, clic centrale per attivare/disattivare +whitelisted_page=Adblock Plus è stata disattivata per la pagina attuale +remove_group_warning=Eliminare il gruppo di filtri? +action1_tooltip=Fare clic per aprire/chiudere la finestra degli elementi bloccabili, clic centrale per attivare/disattivare +type_label_xmlhttprequest=richiesta XML +active_tooltip=Adblock Plus è attiva (sottoscrizioni di filtri in uso: ?1?, filtri in uso: ?2?) +type_label_document=documento +type_label_object_subrequest=oggetto sottorichiesto +whitelistGroup_title=Gruppo di filtri per permettere elementi +disabled_tooltip=Adblock Plus è disattivata +filter_elemhide_duplicate_id=È possibile specificare solo un ID dell'elemento da nascondere +type_label_object=oggetto +action2_tooltip=Fare clic per aprire la finestra di gestione dei filtri, clic centrale per attivare/disattivare +type_label_subdocument=riquadro +clearStats_warning=Azzerare le statistiche per tutti i filtri e disattivarne il futuro conteggio? +notification_antiadblock_message=Questo sito è noto per mostrare messaggi mirati agli utenti di Adblock Plus. Vuoi che Adblock Plus nasconda i messaggi mirati (pubblicità)? +blocked_count_addendum=(elementi permessi: ?1?, elementi nascosti: ?2?) +subscription_invalid_location=Attenzione: per poter aggiungere una sottoscrizione è necessario che i campi 'Titolo della sottoscrizione:' ed 'Indirizzo della lista dei filtri:' non siano lasciati vuoti e corrispondano a nomi di file validi. Inserire tali dati e ripetere la procedura +type_label_image=immagine +remove_subscription_warning=Eliminare la sottoscrizione di filtri? +type_label_other=altro +mobile_menu_enable=Attiva ABP +type_label_media=audio/video +mobile_menu_disable_site=ABP è disattivata per ?1? +elemhideGroup_title=Gruppo di filtri per nascondere elementi +mobile_menu_enable_site=ABP è attivata per ?1? +type_label_elemhide=nascosto +newGroup_title=Nuovo gruppo di filtri +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/overlay.dtd new file mode 100644 index 0000000..3bd3482 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "Sì"> +<!ENTITY notification.button.no "No"> +<!ENTITY sync.label "Sincronizza le impostazioni di Adbloc&k Plus"> +<!ENTITY whitelist.site.label "Disattiva per ?1?"> +<!ENTITY filters.label "Gestione dei &filtri"> +<!ENTITY disable.label "Disattiva per tutte le pagine"> +<!ENTITY objecttab.title "Blocca"> +<!ENTITY objecttab.tooltip "Fare clic qui per bloccare l'oggetto con Adblock Plus"> +<!ENTITY menuitem.label "Gestione dei filtri di &Adblock Plus"> +<!ENTITY objecttabs.label "Mos&tra linguetta 'Blocca…' per elementi Flash e Java"> +<!ENTITY sendReport.label "&Segnala problemi nella pagina attuale"> +<!ENTITY whitelist.page.label "Disattiva solo per la pagina attuale"> +<!ENTITY context.image.label "Blocca immagine con Adblock Plus"> +<!ENTITY counthits.label "&Effettua le statistiche di accesso"> +<!ENTITY opensidebar.label "Apri l'elenco degli elementi &bloccabili"> +<!ENTITY notification.button.close "Chiudi"> +<!ENTITY contribute.label "Contribuisci ad Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Blocca riquadro con Adblock Plus"> +<!ENTITY blocked.tooltip "Elementi attualmente bloccati"> +<!ENTITY hideplaceholders.label "&Nascondi gli elementi bloccati"> +<!ENTITY showinstatusbar.label "Vi&sualizza nella barra di stato"> +<!ENTITY sidebar.title "Elenco degli elementi bloccabili con Adblock Plus"> +<!ENTITY options.label "&Opzioni di Adblock Plus"> +<!ENTITY context.object.label "Blocca oggetto con Adblock Plus"> +<!ENTITY context.removeWhitelist.label "Riattiva Adblock Plus nella pagina attuale"> +<!ENTITY filters.tooltip "Filtri di Adblock Plus maggiormente attivi"> +<!ENTITY closesidebar.label "Chiudi l'elenco degli elementi &bloccabili"> +<!ENTITY showintoolbar.label "Visualizza nella &barra degli strumenti"> +<!ENTITY status.tooltip "Stato di Adblock Plus"> +<!ENTITY context.media.label "Blocca video/audio con Adblock Plus"> +<!ENTITY subscription.update.label "Aggiorna i filtri"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/sendReport.dtd new file mode 100644 index 0000000..5d83af1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/sendReport.dtd @@ -0,0 +1,97 @@ +<!ENTITY screenshot.undo.label "&Annulla"> +<!ENTITY issues.disabledgroups.description "Gruppi/sottoscrizioni di filtri sono stati disattivati, ma potrebbero avere effetto + nella seguente pagina web:"> +<!ENTITY showData.label "Mostra i dati della segnalazione"> +<!ENTITY typeSelector.falsePositive.label "Adblock &Plus sta bloccando troppi elementi"> +<!ENTITY issues.change.description "Le impostazioni di Adblock Plus sono state modificate. Ricaricare la pagina web per testare le + modifiche e se il problema dovesse persistere inviare la segnalazione"> +<!ENTITY email.label "Indirizzo e-&mail:"> +<!ENTITY issues.openPreferences.label "Apri la finestra di 'Gestione dei filtri di Adblock Plus'…"> +<!ENTITY sendPage.confirmation "Segnalazione inviata correttamente, per visualizzarne i dati fare clic sul seguente link:"> +<!ENTITY copyLink.label "Copia il lin&k della segnalazione"> +<!ENTITY issues.nofilters.description "Adblock Plus attualmente non sta bloccando alcun elemento. Il problema che si è + verificato è più probabile che non sia relativo ad Adblock Plus"> +<!ENTITY sendPage.knownIssue "Problema segnalato precedentemente noto. Ulteriori informazioni:"> +<!ENTITY typeSelector.other.description "Selezionare questa opzione se nella pagina web si sta verificando un problema di altro tipo + che si sospetta relativo all'estensione stessa piuttosto che ai suoi filtri"> +<!ENTITY issues.disabledgroups.enable.label "Attiva gruppi/sottoscrizioni di filtri"> +<!ENTITY typeWarning.override.label "Comprendo e &voglio inviare la segnalazione comunque"> +<!ENTITY issues.disabled.enable.label "Attiva Adblock Plus"> +<!ENTITY update.fixed.description "L'aggiornamento della sottoscrizione di filtri potrebbe aver risolto il problema che si stava segnalando. Ricaricare la pagina e riprovare; se il problema persiste inviare nuovamente la segnalazione"> +<!ENTITY anonymous.label "Seg&nalazione anonima"> +<!ENTITY reloadButton.label "Ricarica la &pagina web"> +<!ENTITY recentReports.clear.label "Elimina &tutte le segnalazioni"> +<!ENTITY typeSelector.description "La configurazione guidata permette passo a passo di raccogliere ed inviare i dati necessari per effettuare la + segnalazione di Adblock Plus di problemi in una pagina web. Come primo passo, selezionare il tipo di problema + che si è verificato"> +<!ENTITY screenshot.remove.label "&Elimina i dati sensibili"> +<!ENTITY issues.ownfilters.description "Alcuni dei filtri che vengono applicati nella pagina web attuale sono personalizzati; + disattivare tali filtri che potrebbero essere la causa del seguente problema:"> +<!ENTITY update.inProgress.description "È necessario aggiornare la sottoscrizione di filtri per verificare che il problema non sia già stato risolto. Attendere…"> +<!ENTITY sendPage.retry.label "Riprova ad inviare"> +<!ENTITY data.label "&Dati della segnalazione:"> +<!ENTITY recentReports.label "Segnalazioni recentemente inviate"> +<!ENTITY typeWarning.description "È stato indicato che si vuole segnalare un problema generico relativo all'estensione + stessa piuttosto che ai suoi filtri. Poiché tali problemi sono riportati meglio sul + [link]forum di Adblock Plus[/link], si suggerisce di utilizzare la segnalazione di + problemi solo come integrazione di una discussione già esistente, visto che nessuno noterà + una segnalazione priva di relativo link alla pagina web dove si verifica appunto il problema. + Il link generato automaticamente verrà fornito dopo l'invio della segnalazione"> +<!ENTITY issues.disabled.description "Adblock Plus è attualmente disattivata e quindi non bloccherà alcun elemento"> +<!ENTITY attachExtensions.label "A&llega la lista di estensioni e plugin attivi"> +<!ENTITY issues.nosubscriptions.add.label "Aggiungi una sottoscrizione di filtri…"> +<!ENTITY issues.disabledfilters.enable.label "Attiva i filtri"> +<!ENTITY issues.override.label "&Le impostazioni di Adblock Plus sono corrette, proseguire con la raccolta dei dati per la segnalazione"> +<!ENTITY issues.nosubscriptions.description "Non sembra essere attiva alcuna sottoscrizione di filtri che permette l'eliminazione + automatica di banner e/o pubblicità presenti nei siti web"> +<!ENTITY typeSelector.falsePositive.description "Selezionare questa opzione se nella pagina web manca parte del contenuto importante, se la pagina web viene + visualizzata non correttamente oppure se non funziona come dovrebbe. È possibile determinare se sia Adblock Plus + la causa del problema disattivando temporaneamente l'estensione"> +<!ENTITY typeSelector.other.label "&Si è verificato un problema di altro tipo"> +<!ENTITY emailComment.label "Inserire un indirizzo e-mail valido per poter essere ricontattati in caso di domande su questa segnalazione, per riconoscerne i contributi e per aumentare l'ordine di priorità"> +<!ENTITY issues.whitelist.remove.label "Riattiva Adblock Plus nella pagina attuale"> +<!ENTITY outdatedSubscriptions.description "Le seguenti sottoscrizioni di filtri non sono state aggiornate per almeno due settimane. È necessario aggiornarle prima di inviare una segnalazione, poiché il problema potrebbe esser già stato risolto"> +<!ENTITY dataCollector.description "Attendere mentre vengono raccolti i dati necessari per la segnalazione di Adblock Plus di problemi in una pagina web"> +<!ENTITY sendButton.label "Invia la segnala&zione"> +<!ENTITY comment.label "C&ommento (opzionale):"> +<!ENTITY sendPage.errorMessage "Il tentativo di inviare la segnalazione non è riuscito a causa del seguente errore: "?1?". + Accertarsi di essere collegati ad internet e riprovare. Se il problema persiste inviare una richiesta + di assistenza nel [link]forum di Adblock Plus[/link]"> +<!ENTITY showRecentReports.label "Mostra le segnalazioni recentemente inviate"> +<!ENTITY commentPage.heading "Invio di un commento"> +<!ENTITY update.start.label "Avvia l'aggiornamento ora"> +<!ENTITY issues.disabledfilters.description "I filtri sono stati disattivati, ma potrebbero avere effetto nella seguente pagina web:"> +<!ENTITY screenshot.description "Una stessa pagina web può apparire in modo differente a più persone. Potrebbe essere di aiuto per + meglio comprendere il problema allegare un'immagine della pagina web alla segnalazione. È + possibile eliminare le sezioni contenenti dati sensibili nonché contrassegnare le aree dove il + problema è evidente facendo prima clic sui relativi pulsanti ed in seguito selezionando le parti + interessate dell'immagine della pagina web con il mouse"> +<!ENTITY screenshot.attach.label "Allega &un'immagine della pagina web alla segnalazione"> +<!ENTITY issues.whitelist.description "Adblock Plus è attualmente disattivata per la pagina web che si sta segnalando. Riattivare + l'estensione e ricaricare la pagina prima di inviare la segnalazione del problema per + rinvenirne le cause"> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus &non sta bloccando alcun elemento"> +<!ENTITY typeSelector.heading "Selezione del problema"> +<!ENTITY anonymity.warning "Nota: è impossibile rispondere a segnalazioni anonime alle quali viene probabilmente dato un ordine di priorità inferiore"> +<!ENTITY wizard.title "Configurazione guidata per segnalare problemi in una pagina web"> +<!ENTITY issues.ownfilters.disable.label "Disattiva i filtri"> +<!ENTITY commentPage.description "È possibile digitare nel relativo campo di testo qui sotto un commento per comprendere meglio + il problema segnalato. Questo passo è opzionale ma raccomandato se il problema non è ovvio. + È inoltre possibile visualizzare i dati della segnalazione prima di inviarla"> +<!ENTITY comment.lengthWarning "La lunghezza massima del testo del commento è di 1000 caratteri; quelli eccedenti non verranno inviati"> +<!ENTITY typeSelector.falseNegative.description "Selezionare questa opzione se nella pagina web vengono visualizzati banner e/o pubblicità nonostante + Adblock Plus sia attiva"> +<!ENTITY sendPage.waitMessage "Attendere mentre la segnalazione di Adblock Plus viene inviata"> +<!ENTITY dataCollector.heading "Benvenuti alla configurazione guidata per segnalare problemi in una pagina web"> +<!ENTITY screenshot.heading "Immagine da allegare"> +<!ENTITY sendPage.heading "Invio della segnalazione"> +<!ENTITY issues.subscriptionCount.description "Sembra che siano state aggiunte troppe sottoscrizioni di filtri. Ciò non è + raccomandato poiché aumenta considerevolmente la possibilità che si verifichino + dei problemi. È inoltre impossibile accettare tale segnalazione in quanto non + è chiaro quale autore di sottoscrizioni di filtri debba controllare; eliminare + tutte le sottoscrizioni superflue lasciando solo quella necessaria e verificare + se il problema persiste ancora"> +<!ENTITY screenshot.mark.label "&Contrassegna l'area del problema"> +<!ENTITY privacyPolicy.label "Informativa sulla privacy"> +<!ENTITY issues.description "Sono stati rilevati dei problemi con le impostazioni di Adblock Plus che potrebbero essere responsabili + del problema da segnalare oppure potrebbero rendere difficile rinvenirne le cause"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/sidebar.dtd new file mode 100644 index 0000000..2ae120b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Fai lampeggiare il contorno dell'elemento selezionato"> +<!ENTITY address.label "Indirizzo web"> +<!ENTITY context.open.label "Apri in una nuova scheda"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Sorgente del filtro:"> +<!ENTITY noitems.label "Nessun elemento bloccabile"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Dimensione:"> +<!ENTITY reattach.label "Riunisci"> +<!ENTITY search.label "&Cerca:"> +<!ENTITY docDomain.thirdParty "(terza parte)"> +<!ENTITY filterSource.label "Sorgente del filtro"> +<!ENTITY tooltip.docDomain.label "Sorgente del documento:"> +<!ENTITY context.copy.label "Copia l'indirizzo web dell'elemento"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Disattiva il filtro ?1?"> +<!ENTITY context.copyFilter.label "Copia il filtro"> +<!ENTITY context.block.label "Blocca questo elemento"> +<!ENTITY context.enablefilter.label "Riattiva il filtro ?1?"> +<!ENTITY detach.label "Separa"> +<!ENTITY whitelisted.label "Pagina in lista di siti permessi"> +<!ENTITY context.disablefilteronsite.label "Disattiva il filtro per ?1?"> +<!ENTITY detached.title "Elementi bloccabili con Adblock Plus (separati)"> +<!ENTITY docDomain.firstParty "(prima parte)"> +<!ENTITY tooltip.type.whitelisted "(in lista di elementi permessi)"> +<!ENTITY tooltip.filter.label "Filtro effettivo:"> +<!ENTITY tooltip.filter.disabled "(disattivato)"> +<!ENTITY context.editfilter.label "Modifica il filtro in effetto"> +<!ENTITY tooltip.type.blocked "(in lista di elementi bloccati)"> +<!ENTITY size.label "Dimensione"> +<!ENTITY context.whitelist.label "Aggiungi un'eccezione per l'elemento"> +<!ENTITY context.selectAll.label "Seleziona tutto"> +<!ENTITY state.label "Stato"> +<!ENTITY docDomain.label "Sorgente"> +<!ENTITY tooltip.address.label "Indirizzo web:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/subscriptionSelection.dtd new file mode 100644 index 0000000..36af5cd --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/it/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Aggiungere la &sottoscrizione di filtri "?1?""> +<!ENTITY list.download.failed "Recupero della lista di sottoscrizioni non riuscito"> +<!ENTITY list.download.retry "Riprova"> +<!ENTITY title.label "&Titolo della sottoscrizione:"> +<!ENTITY list.download.website "Visita il sito web delle sottoscrizioni"> +<!ENTITY supplementMessage "Questa sottoscrizione di filtri verrà utilizzata insieme a quella chiamata "?1?" (ancora non aggiunta)."> +<!ENTITY viewList.label "Visualizza i filtri della sottoscrizione"> +<!ENTITY visitHomepage.label "Visita il sito web"> +<!ENTITY addSubscription.label "Aggiungi sottoscrizione"> +<!ENTITY dialog.title "Sottoscrizione di filtri di Adblock Plus"> +<!ENTITY location.label "Indiri&zzo web della lista dei filtri:"> +<!ENTITY fromWeb.description "Confermare l'aggiunta della sottoscrizione di filtri. È possibile modificare il titolo della sottoscrizione oppure l'URL/percorso della lista dei filtri prima di aggiungerla"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/composer.dtd new file mode 100644 index 0000000..0c162d5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "アドレス末尾(&N)"> +<!ENTITY domainRestriction.label "ドメイン制限:(&D)"> +<!ENTITY collapse.default.no.label "デフォルト (いいえ)"> +<!ENTITY firstParty.label "ファーストパーティ制限(&R)"> +<!ENTITY preferences.label "既存のフィルタを表示...(&S)"> +<!ENTITY pattern.label "パターンを選択"> +<!ENTITY thirdParty.label "サードパーティ制限(&T)"> +<!ENTITY filter.label "新フィルタ:(&F)"> +<!ENTITY collapse.label "ブロック後の空きスペースを詰める:(&L)"> +<!ENTITY match.warning "入力したパターンはアドレスに一致しないので効果がありません。"> +<!ENTITY anchor.start.label "アドレス先頭(&G)"> +<!ENTITY matchCase.label "大文字小文字を区別(&M)"> +<!ENTITY custom.pattern.label "自作:(&C)"> +<!ENTITY unselectAllTypes.label "選択解除"> +<!ENTITY type.whitelist.label "ホワイトリスト(&X)"> +<!ENTITY regexp.warning "入力されたパターンは正規表現として解釈されるため Adblock Plus が効率よく処理できず、ブラウジング速度低下の原因になることがあります。もし正規表現の使用を意図していなかった場合は、パターン末尾に半角アスタリスク (*) を追加してください。"> +<!ENTITY dialog.title "Adblock Plus フィルタを追加"> +<!ENTITY basic.label "基本表示"> +<!ENTITY type.filter.label "ブロックフィルタ(&B)"> +<!ENTITY types.label "適用種別:"> +<!ENTITY shortpattern.warning "入力したパターンは最適化するには短すぎるためブラウジング速度が低下することがあります。Adblock Plus の処理を効率化するために、より長い文字列を選ぶことを推奨します。"> +<!ENTITY collapse.yes.label "はい"> +<!ENTITY anchors.label "パターン適用の起点:"> +<!ENTITY collapse.default.yes.label "デフォルト (はい)"> +<!ENTITY domainRestriction.help "フィルタ適用対象にするドメインを指定することができます。複数指定したい場合は縦線(|)で分けてください。ドメイン名の前にチルダ(~)を付けることで、適用外ドメインとすることもできます"> +<!ENTITY accept.label "フィルタを追加"> +<!ENTITY options.label "オプション"> +<!ENTITY disabled.warning "現在 Adblock Plus は無効になっています。フィルタを追加することはできますが、それらは [link]Adblock Plus を有効にする[/link] まで適用されません。"> +<!ENTITY anchor.start.flexible.label "ドメイン名先頭(&G)"> +<!ENTITY collapse.no.label "いいえ"> +<!ENTITY selectAllTypes.label "すべて選択"> +<!ENTITY advanced.label "詳細表示"> +<!ENTITY pattern.explanation "パターンとはアドレスの任意の一部のことです。半角アスタリスク (*) をワイルドカードとして使用することもできます。指定したパターンに一致したアドレスにのみフィルタが適用されます。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/filters.dtd new file mode 100644 index 0000000..b5d5270 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "全ての自作フィルタは指定したファイルの内容に置換されます。よろしいですか?"> +<!ENTITY slow.column "低速フィルタ(&W)"> +<!ENTITY enabled.column "有効(&N)"> +<!ENTITY subscription.lastDownload.checksumMismatch "更新失敗: チェックサム不一致"> +<!ENTITY noFiltersInGroup.text "選択したグループにフィルタはありません"> +<!ENTITY subscription.actions.label "アクション"> +<!ENTITY filter.selectAll.label "すべて選択"> +<!ENTITY backupButton.label "バックアップと復元(&B)"> +<!ENTITY restore.minVersion.warning "警告: このファイルはより新しいバージョンの Adblock Plus で作成されています。このファイルから復元する前に Adblock Plus を最新版に更新してください。"> +<!ENTITY restore.error "ファイルデータが処理できません。このファイルは Adblock Plus のバックアップでないのでは?"> +<!ENTITY sort.ascending.label "&A > Z 順にソート"> +<!ENTITY sort.label "ソート(&S)"> +<!ENTITY subscription.source.label "フィルタリスト"> +<!ENTITY hitcount.column "ヒット数(&H)"> +<!ENTITY noFilters.text "まだ自作フィルタはありません。"> +<!ENTITY backup.custom.title "自作フィルタのみ"> +<!ENTITY subscription.external.label "他の拡張により更新"> +<!ENTITY subscription.delete.label "削除"> +<!ENTITY noGroupSelected.text "フィルタを表示するには、まずフィルタグループを選択してください"> +<!ENTITY filter.cut.label "切り取り"> +<!ENTITY restore.default.label "?1? のバックアップから復元"> +<!ENTITY subscription.lastDownload.inProgress "ダウンロード中..."> +<!ENTITY subscriptions.tab.label "購読しているフィルタ"> +<!ENTITY sort.descending.label "&Z > A 順にソート"> +<!ENTITY filters.remove.warning "選択したフィルタを本当に削除しますか?"> +<!ENTITY filter.delete.label "削除"> +<!ENTITY addSubscriptionAdd.label "追加"> +<!ENTITY viewMenu.label "表示"> +<!ENTITY subscription.lastDownload.unknown "不明"> +<!ENTITY addSubscriptionCancel.label "キャンセル"> +<!ENTITY subscription.enabled.label "有効"> +<!ENTITY noSubscriptions.text "フィルタをまだ購読していません。Adblock Plus はフィルタなしで何もブロックできないので「購読するフィルタを追加」してください。"> +<!ENTITY subscription.update.label "フィルタを更新"> +<!ENTITY dialog.title "Adblock Plus フィルタ設定"> +<!ENTITY addFilter.label "フィルタを追加(&D)"> +<!ENTITY subscription.minVersion.warning "購読しているフィルタはより新しいバージョンの Adblock Plus を要求しているので、最新の Adblock Plus に更新してください。"> +<!ENTITY subscription.lastDownload.invalidURL "更新失敗: アドレス無効"> +<!ENTITY backup.error "ファイル出力エラー。ファイル書き込み禁止/他のアプリケーションで使用中 となっていないか確認してください。"> +<!ENTITY filter.moveUp.label "上に移動"> +<!ENTITY addGroup.label "フィルタグループを追加(&G)"> +<!ENTITY filter.edit.label "編集"> +<!ENTITY subscription.showHideFilters.label "フィルタを表示/非表示"> +<!ENTITY acceptableAds2.label "控えめな広告を許可(&I)"> +<!ENTITY addSubscriptionOther.label "別の購読するフィルタを追加"> +<!ENTITY close.label "閉じる"> +<!ENTITY sort.none.label "ソートしない(&U)"> +<!ENTITY filter.actions.label "フィルタアクション"> +<!ENTITY filter.copy.label "コピー"> +<!ENTITY filter.moveDown.label "下に移動"> +<!ENTITY filter.resetHitCounts.label "ヒット数をリセット"> +<!ENTITY readMore.label "詳細説明ページを開く"> +<!ENTITY subscription.moveUp.label "上に移動"> +<!ENTITY addSubscription.label "購読するフィルタを追加(&F)"> +<!ENTITY subscription.homepage.label "ホームページ"> +<!ENTITY backup.complete.title "自作及び購読しているフィルタ"> +<!ENTITY restore.own.label "バックアップファイルを指定して復元"> +<!ENTITY restore.complete.warning "全てのフィルタ設定は指定したファイルの内容に置換されます。よろしいですか?"> +<!ENTITY filters.tab.label "自作フィルタ"> +<!ENTITY backup.label "バックアップを新規作成"> +<!ENTITY find.label "検索(&N)"> +<!ENTITY subscription.moveDown.label "下に移動"> +<!ENTITY subscription.lastDownload.connectionError "更新失敗: 接続エラー"> +<!ENTITY subscription.lastDownload.success "更新成功"> +<!ENTITY subscription.lastDownload.invalidData "更新失敗: フィルタリスト無効"> +<!ENTITY filter.paste.label "貼り付け"> +<!ENTITY subscription.disabledFilters.enable "無効になっているフィルタを有効化"> +<!ENTITY lasthit.column "最終ヒット日時(&L)"> +<!ENTITY subscription.editTitle.label "タイトルを編集"> +<!ENTITY subscription.disabledFilters.warning "購読しているフィルタの一部が無効化されています"> +<!ENTITY filter.column "フィルタ(&F)"> +<!ENTITY subscription.lastDownload.label "更新日時:"> +<!ENTITY viewList.label "フィルタファイルを開いて確認"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/firstRun.properties new file mode 100644 index 0000000..776b9e7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=追跡を無効化してプライバシーを確保しつつブラウジング - あなたのあらゆる動静を追跡する広告会社から足跡を隠します。 +firstRun_toggle_off=OFF +firstRun_feature_tracking=トラッキングを無効化 +firstRun_feature_malware=マルウェアをブロック +firstRun_title=Adblock Plus がインストールされました +firstRun_toggle_on=ON +firstRun_acceptableAdsExplanation=我々はウェブサイトが簡素で控えめな広告を使用するよう後押ししたいと考えています。そのため控えめな広告を区別するための<a>厳格なガイドライン</a>を策定し、デフォルトで許可するようにしました。すべての広告をブロックしたい場合は数秒で控えめな広告の許可を<a>無効にする</a>ことができます 。 +firstRun_contributor_credits=貢献した人 +firstRun_dataCorruptionWarning=このページが何度も再表示される場合は <a>ここを参照!</a> +firstRun_acceptableAdsHeadline=迷惑な広告はブロックされます +firstRun_share=友達に教える +firstRun_share_headline=Web をより良い場所にするために<a>協力する</a> +firstRun_feature_social_description=Web ページに設置されていてユーザーの行動を追跡するソーシャルメディアボタン(例えば Facebook の「いいね!」)を自動的に取り除きます。 +firstRun_filterlistsReinitializedWarning=すべてのフィルタが削除されてしまう問題が発生したようです。バックアップから復元することができず、お使いのフィルタと控えめな広告の設定をリセットする必要がありました。 <a>Adblock Plus のオプション</a>から、お使いのフィルタリストと控えめな広告の設定を確認してください。 +firstRun_feature_malware_description=既知のマルウェア配布ドメインをブロックすることで、より安全なブラウジングを可能にします。 +firstRun_features=Adblock Plus は単に広告をブロックするだけではありません +firstRun_donate=寄付 +firstRun_donate_label=プロジェクトを支援 +firstRun_feature_social=ソーシャルメディアのボタンを消す +firstRun_legacySafariWarning=Adblock Plus がサポートしていない古いバージョンの Safari を利用しているため、正常に動作しなかったりユーザー体験を損なう Web サイトがあるかもしれません。Mac OS X 10.8 Mountain Lion なら Safari 6.1.1 以降、Mac OS X 10.9 Mavericks なら Safari 7.0.1 以降に更新するか、Mozilla Firefox/Google Chrome/Opera いずれか最新版の利用を強く推奨します。 diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/global.properties new file mode 100644 index 0000000..842af8e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=現在のページにブロック可能項目はありません +action3_tooltip=クリックで Adblock Plus 有効/無効を切り替え +notification_antiadblock_title=Adblock Plus ユーザー向けのメッセージを非表示にしますか? +type_label_script=スクリプト +filter_elemhide_nocriteria=要素を非表示にする条件が指定されていません +blockingGroup_title=広告ブロックルール +whitelisted_tooltip=Adblock Plus は現在のページで無効 +type_label_stylesheet=スタイルシート +blocked_count_tooltip=ブロック済: ?1?/ブロック可能 :?2? +type_label_font=フォント +type_label_popup=ポップアップ +filter_regexp_tooltip=このフィルタは正規表現を使用している、もしくは最適化するのに短過ぎます。このようなフィルタが多いとブラウザが遅くなることがあります。 +action0_tooltip=クリックでコンテキストメニューを表示、中クリックで有効/無効を切り替え +whitelisted_page=Adblock Plus は現在のページで無効に設定されています +remove_group_warning=本当にこのグループを削除しますか? +action1_tooltip=クリックでブロック可能項目一覧を開/閉、中クリックで有効/無効を切り替え +type_label_xmlhttprequest=XML リクエスト +active_tooltip=Adblock Plus 有効 (フィルタ購読数: ?1?/自作フィルタ数: ?2?) +type_label_document=ドキュメント +type_label_object_subrequest=オブジェクトのサブリクエスト +whitelistGroup_title=ホワイトリスト +disabled_tooltip=Adblock Plus 無効 +filter_elemhide_duplicate_id=要素を非表示にする ID は1つだけ指定できます +type_label_object=オブジェクト +action2_tooltip=クリックで設定をオープン、中クリックで有効/無効を切り替え +type_label_subdocument=フレーム +clearStats_warning=全フィルタのヒット数をリセットし、ヒット数記録機能を無効化しますか? +notification_antiadblock_message=このサイトは Adblock Plus ユーザーを対象としたメッセージを表示することで知られています。Adblock Plus でこれらのメッセージを非表示にしますか? +blocked_count_addendum=(ホワイトリスト: ?1?/要素非表示: ?2?) +subscription_invalid_location=購読するフィルタの URL が無効、もしくは不正なファイル名です。 +type_label_image=画像 +remove_subscription_warning=本当にこのフィルタの購読を削除しますか? +type_label_other=その他 +mobile_menu_enable=ABP: 有効 +type_label_media=オーディオ/ビデオ +mobile_menu_disable_site=ABP: ?1? で無効 +elemhideGroup_title=要素非表示ルール +mobile_menu_enable_site=ABP: ?1? で有効 +type_label_elemhide=要素非表示 +newGroup_title=新しいフィルタグループ +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/overlay.dtd new file mode 100644 index 0000000..660a2df --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "はい(&Y)"> +<!ENTITY notification.button.no "いいえ(&N)"> +<!ENTITY sync.label "Adblock Plus 設定を Sync で同期(&C)"> +<!ENTITY whitelist.site.label "?1? で無効"> +<!ENTITY filters.label "フィルタ設定(&F)"> +<!ENTITY disable.label "全ページで無効"> +<!ENTITY objecttab.title "ブロックする"> +<!ENTITY objecttab.tooltip "クリックしてオブジェクトをブロック (Adblock Plus)"> +<!ENTITY menuitem.label "Adblock Plus 設定(&B)"> +<!ENTITY objecttabs.label "Flash と Java でタブを表示(&T)"> +<!ENTITY sendReport.label "このページでの不具合を報告(&R)"> +<!ENTITY whitelist.page.label "このページだけ無効"> +<!ENTITY context.image.label "Adblock Plus: 画像をブロック"> +<!ENTITY counthits.label "フィルタのヒット数を数える(&H)"> +<!ENTITY opensidebar.label "ブロック可能項目一覧を開く(&B)"> +<!ENTITY notification.button.close "閉じる(&C)"> +<!ENTITY contribute.label "Adblock Plus に貢献する"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: フレームをブロック"> +<!ENTITY blocked.tooltip "このページでブロック中の項目:"> +<!ENTITY hideplaceholders.label "ブロックした場所に残る空きスペースを詰める(&L)"> +<!ENTITY showinstatusbar.label "ステータスバーに表示(&S)"> +<!ENTITY sidebar.title "このページのブロック可能項目一覧"> +<!ENTITY options.label "オプション(&O)"> +<!ENTITY context.object.label "Adblock Plus: オブジェクトをブロック"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: このページで有効に戻す"> +<!ENTITY filters.tooltip "有効なフィルタ:"> +<!ENTITY closesidebar.label "ブロック可能項目一覧を閉じる(&B)"> +<!ENTITY showintoolbar.label "ツールバーに表示(&B)"> +<!ENTITY status.tooltip "ステータス:"> +<!ENTITY context.media.label "Adblock Plus: オーディオ/ビデオをブロック"> +<!ENTITY subscription.update.label "フィルタを更新"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/sendReport.dtd new file mode 100644 index 0000000..d8a54eb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "元に戻す(&U)"> +<!ENTITY issues.disabledgroups.description "購読している次のフィルタ/フィルタグループは無効になっていますが、このページに影響があったかもしれません:"> +<!ENTITY showData.label "不具合報告データを表示"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus のブロックが過剰 (&M)"> +<!ENTITY issues.change.description "設定が変更されました。確認のためにページを再読み込みし、もし不具合が解決しなければ不具合報告を提出してください"> +<!ENTITY email.label "Email:(&M)"> +<!ENTITY issues.openPreferences.label "フィルタ設定を開く"> +<!ENTITY sendPage.confirmation "あなたの不具合報告は保存されました。次のアドレスでアクセスできます:"> +<!ENTITY copyLink.label "不具合報告のリンクをコピー(&C)"> +<!ENTITY issues.nofilters.description "Adblock Plus はこのページで何もブロックしていないので、お気付きの不具合は恐らく Adblock Plus とは関係ありません。"> +<!ENTITY sendPage.knownIssue "恐らく、あなたの報告した不具合は既知の問題です。詳細:"> +<!ENTITY typeSelector.other.description "フィルタではなく Adblock Plus 自体の不具合が疑われる場合はこの選択肢。"> +<!ENTITY issues.disabledgroups.enable.label "購読しているフィルタ/フィルタグループを有効化"> +<!ENTITY typeWarning.override.label "理解した上で、それでも不具合報告を提出したい(&S)"> +<!ENTITY issues.disabled.enable.label "Adblock Plus を有効化"> +<!ENTITY update.fixed.description "報告しようとしていた不具合は、購読しているフィルタの更新で解決しそうです。ページを再読み込みして再確認してみてください。それでも解決しない場合は再度不具合を報告願います。"> +<!ENTITY anonymous.label "匿名で報告(&A)"> +<!ENTITY reloadButton.label "ページを再読み込み(&R)"> +<!ENTITY recentReports.clear.label "すべての不具合報告を削除(&R)"> +<!ENTITY typeSelector.description "このウィンドウで不具合の報告に必要なステップをご案内します。まず最初に、遭遇した不具合の種別を選択してください:"> +<!ENTITY screenshot.remove.label "機密情報等を黒塗りして隠す(&R)"> +<!ENTITY issues.ownfilters.description "このページには自作フィルタが適用されています。それが不具合の原因となっている可能性があるので、まずそれらを無効にしてください:"> +<!ENTITY update.inProgress.description "不具合が解決したか確かめるため、Adblock Plus で購読しているフィルタを更新する必要があります。しばらくお待ちください..."> +<!ENTITY sendPage.retry.label "再送信"> +<!ENTITY data.label "不具合報告データ:(&P)"> +<!ENTITY recentReports.label "最近送信した不具合報告"> +<!ENTITY typeWarning.description "フィルタについてではなく Adblock Plus 全般の不具合を報告しようとしています。このような不具合は通常 [link]Adblock Plus フォーラム[/link] で報告されています。また、不具合報告へのリンクを自ら提供しない限りフォーラムの誰もあなたの不具合報告の存在に気付けないので、既存の議論を補完するためだけに使用してください。不具合報告へのリンクはレポート送信後に提供されます。"> +<!ENTITY issues.disabled.description "Adblock Plus が無効なので、何もブロックされていません"> +<!ENTITY attachExtensions.label "アドオンの競合が不具合の原因である場合があるので、動作しているアドオンのリストを不具合報告に添付する(&X)"> +<!ENTITY issues.nosubscriptions.add.label "購読するフィルタを追加"> +<!ENTITY issues.disabledfilters.enable.label "フィルタを有効化"> +<!ENTITY issues.override.label "設定に間違いはなかったので報告を続けます(&C)"> +<!ENTITY issues.nosubscriptions.description "ウェブサイトの不要なコンテンツを自動削除する、既存のフィルタをまだ購読していないようです。"> +<!ENTITY typeSelector.falsePositive.description "あるべきコンテンツがない、表示がおかしい、フィルタが適切に機能してない場合はこの選択肢。 (ヒント: Adblock Plus を一時的に無効にすれば、原因に Adblock Plus が関わっているか確認できます)"> +<!ENTITY typeSelector.other.label "その他の不具合(&T)"> +<!ENTITY emailComment.label "報告に不明な点があった際に連絡が取れるよう、メールアドレスの入力をお勧めしています。このメールアドレスにより、報告の受信者が報告者別にこれまでの貢献を考慮し、優先度を調整できるようになります。"> +<!ENTITY issues.whitelist.remove.label "このページで Adblock Plus を再度有効にする"> +<!ENTITY outdatedSubscriptions.description "購読している次のフィルタは2週間以上更新されていません。既に不具合は解決済みかもしれないので、先に手動更新してから不具合を報告してください。"> +<!ENTITY dataCollector.description "Adblock Plus が必要なデータを集めています。しばらくお待ちください。"> +<!ENTITY sendButton.label "不具合報告を送信(&N)"> +<!ENTITY comment.label "コメント(任意入力):(&C)"> +<!ENTITY sendPage.errorMessage "不具合報告の送信がエラーコード "?1?" で失敗しました。インターネットに接続されているか確認し再試行してください。問題が解決しない場合は [link]Adblock Plus フォーラム[/link] で助けを求めてください。"> +<!ENTITY showRecentReports.label "最近送信した不具合報告を表示"> +<!ENTITY commentPage.heading "コメントを入力"> +<!ENTITY update.start.label "今すぐ更新"> +<!ENTITY issues.disabledfilters.description "次のフィルタは無効になっていますが、このページに影響があったかもしれません:"> +<!ENTITY screenshot.description "同じページでも別の人には異なって表示されることがあるので、スクリーンショット添付は不具合を理解する助けとなります。ボタンをクリックしてからスクリーンショット上でドラッグすることで、不具合箇所に印をつけたり個人情報を隠すことができます。"> +<!ENTITY screenshot.attach.label "不具合報告にスクリーンショットを添付(&T)"> +<!ENTITY issues.whitelist.description "報告しようとしているページで Adblock Plus が無効になっています。調査の妨げになるので Adblock Plus を有効に戻し、再読み込みしてから不具合報告を作成してください。"> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus が広告をブロックしていない(&V)"> +<!ENTITY typeSelector.heading "不具合種別を選択"> +<!ENTITY anonymity.warning "匿名で報告の際は報告者を個別に識別できないので優先度が下がります。"> +<!ENTITY wizard.title "不具合報告"> +<!ENTITY issues.ownfilters.disable.label "フィルタを無効化"> +<!ENTITY commentPage.description "コメントがあると不具合を理解するのに助かります(症状、再現手順、原因を特定した根拠、不具合発生開始時期、正常動作との違い、不具合発生場所)。報告するデータは送信前に再検討できます。"> +<!ENTITY comment.lengthWarning "コメントが 1000 文字を超えているので、先頭から 1000 文字だけ送信します"> +<!ENTITY typeSelector.falseNegative.description "Adblock Plus が有効でも広告が表示される場合はこの選択肢。"> +<!ENTITY sendPage.waitMessage "Adblock Plus が不具合報告を送信する間、しばらくお待ちください"> +<!ENTITY dataCollector.heading "不具合報告へようこそ"> +<!ENTITY screenshot.heading "スクリーンショットを添付"> +<!ENTITY sendPage.heading "不具合報告を送信"> +<!ENTITY issues.subscriptionCount.description "購読しているフィルタが多過ぎです。このような設定は問題解決を難しくするので推奨されません。また、どのフィルタ作者がこの不具合に対処すべきか不明なのでレポートを受理できません。本当に必要なフィルタ以外を削除し、不具合が再現するか確認願います。"> +<!ENTITY screenshot.mark.label "不具合箇所に印をつける(&M)"> +<!ENTITY privacyPolicy.label "プライバシー・ポリシー"> +<!ENTITY issues.description "Adblock Plus はこの不具合に関係、もしくは調査を困難にしている設定を発見しました。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/sidebar.dtd new file mode 100644 index 0000000..2d4fd84 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "ボーダーを点滅"> +<!ENTITY address.label "アドレス"> +<!ENTITY context.open.label "新規タブで開く"> +<!ENTITY type.label "種別"> +<!ENTITY tooltip.filterSource.label "フィルタ帰属:"> +<!ENTITY noitems.label "ブロック可能項目はありません"> +<!ENTITY filter.label "フィルタ"> +<!ENTITY tooltip.size.label "サイズ:"> +<!ENTITY reattach.label "ウィンドウ内表示"> +<!ENTITY search.label "検索:(&S)"> +<!ENTITY docDomain.thirdParty "(サードパーティ)"> +<!ENTITY filterSource.label "フィルタ帰属"> +<!ENTITY tooltip.docDomain.label "ドキュメント帰属:"> +<!ENTITY context.copy.label "アドレスをコピー"> +<!ENTITY tooltip.type.label "種別:"> +<!ENTITY context.disablefilter.label "フィルタ ?1? を無効化"> +<!ENTITY context.copyFilter.label "フィルタをコピー"> +<!ENTITY context.block.label "この項目をブロック"> +<!ENTITY context.enablefilter.label "再度フィルタ ?1? を有効化"> +<!ENTITY detach.label "別ウィンドウ表示"> +<!ENTITY whitelisted.label "ホワイトリストされたページ"> +<!ENTITY context.disablefilteronsite.label "フィルタを ?1? で無効化"> +<!ENTITY detached.title "Adblock Plus: ブロック可能項目一覧 (別ウィンドウ表示中)"> +<!ENTITY docDomain.firstParty "(ファーストパーティ)"> +<!ENTITY tooltip.type.whitelisted "(ホワイトリスト中)"> +<!ENTITY tooltip.filter.label "適用中のフィルタ:"> +<!ENTITY tooltip.filter.disabled "(無効中)"> +<!ENTITY context.editfilter.label "フィルタを編集"> +<!ENTITY tooltip.type.blocked "(ブロック中)"> +<!ENTITY size.label "サイズ"> +<!ENTITY context.whitelist.label "この項目用のホワイトリストを追加"> +<!ENTITY context.selectAll.label "すべて選択"> +<!ENTITY state.label "状態"> +<!ENTITY docDomain.label "ドキュメント帰属"> +<!ENTITY tooltip.address.label "アドレス:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/subscriptionSelection.dtd new file mode 100644 index 0000000..0595ef8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ja/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label ""?1?" も追加する(&S)"> +<!ENTITY list.download.failed "Adblock Plus は購読用フィルタ一覧の取得に失敗しました。"> +<!ENTITY list.download.retry "再試行"> +<!ENTITY title.label "購読するフィルタの名称:(&T)"> +<!ENTITY list.download.website "ウェブサイトを参照"> +<!ENTITY supplementMessage "このフィルタは "?1?" と併用することが前提になっています。"> +<!ENTITY viewList.label "フィルタファイルを開いて確認"> +<!ENTITY visitHomepage.label "作者のページを開く"> +<!ENTITY addSubscription.label "購読するフィルタを追加"> +<!ENTITY dialog.title "購読する Adblock Plus 用フィルタを追加"> +<!ENTITY location.label "購読するフィルタの場所:(&L)"> +<!ENTITY fromWeb.description "購読するフィルタを確認してください。追加前に名称と場所を変更できます。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/composer.dtd new file mode 100644 index 0000000..f22d365 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "адрес соң&ында"> +<!ENTITY domainRestriction.label "Доменмен шек&теу:"> +<!ENTITY collapse.default.no.label "Бастапқысын қолдану (жоқ)"> +<!ENTITY firstParty.label "Тек сол сайт өз құрамасы ү&шін"> +<!ENTITY preferences.label "Бар фильтрлерді &көрсету..."> +<!ENTITY pattern.label "Шаблон"> +<!ENTITY thirdParty.label "Тек б&асқа сайт құрамасы үшін"> +<!ENTITY filter.label "Жаңа &фильтр:"> +<!ENTITY collapse.label "Блокталған құраманы &жинау:"> +<!ENTITY match.warning "Сіз енгізген шаблон енді блокталатын не блокталмайтын адреске сәйкес келмейді, сол үшін оның әсері жоқ."> +<!ENTITY anchor.start.label "а&дрес басында"> +<!ENTITY matchCase.label "&Регистрді ескеру"> +<!ENTITY custom.pattern.label "Ө&зіңіздің:"> +<!ENTITY unselectAllTypes.label "Ерекшелеуді тастау"> +<!ENTITY type.whitelist.label "&Ерекше ереже"> +<!ENTITY regexp.warning "Сіз енгізген шаблон, регулярлы өрнек ретінде өңделеді. Осындай шаблондардың көп саны браузеріңіздің жұмысын тежей алады. Регулярлы өрнекті қолданғыңыз келмесе, шаблон соңына жұлдызшаны қосыңыз."> +<!ENTITY dialog.title "Adblock Plus фильтр ережесін қосу"> +<!ENTITY basic.label "Негізгі көрінісі"> +<!ENTITY type.filter.label "&Блоктаушы фильтр"> +<!ENTITY types.label "Қолдану үшін құрама түрі:"> +<!ENTITY shortpattern.warning "Сіз енгізген оптимизация үшін тым қысқа, осындай шаблондардың көп саны браузеріңіздің жұмысын тежей алады. Осы фильтр үшін ұзынырақ шаблонды қолдану ұсынылады."> +<!ENTITY collapse.yes.label "Иә"> +<!ENTITY anchors.label "Шаблонды тек келесіде қолдану:"> +<!ENTITY collapse.default.yes.label "Бастапқысын қолдану (иә)"> +<!ENTITY domainRestriction.help "Бір немесе "|" таңбасымен ажыратылған бірнеше доменді көрсетіңіз, фильтр тек осы домендер үшін орындалады. Домен атының алдыңдағы "~" таңбасы осы доменде фильтр орындалмайтынын көрсетеді."> +<!ENTITY accept.label "Фильтрді қосу"> +<!ENTITY options.label "Баптаулар"> +<!ENTITY disabled.warning "Adblock Plus қазір сөндірулі. Фильтрлерді қазір де қоса аласыз, бірақ олар жұмыс істемейді, сіз [link]Adblock Plus қосқанға дейін[/link]."> +<!ENTITY anchor.start.flexible.label "&домен атынын басында"> +<!ENTITY collapse.no.label "Жоқ"> +<!ENTITY selectAllTypes.label "Барлығын ерекшелеу"> +<!ENTITY advanced.label "Кеңейтілген көрінісі"> +<!ENTITY pattern.explanation "Шаблон адрестің кез-келген бөлігі бола алады, мұндағы жұлдызша (*) таңбалардың кез-келген санын белгілейді. Фильтр тек оған сәйкес келетін адрестер үшін қолданылады."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/filters.dtd new file mode 100644 index 0000000..cf794ce --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Сіздің барлық пайдаланушы фильтрлер баптаулары таңдалған файлдың құрамасымен алмастырылады. Жалғастыруды қалайсыз ба?"> +<!ENTITY slow.column "Баяу фил&ьтрлер"> +<!ENTITY enabled.column "Қосу&лы"> +<!ENTITY subscription.lastDownload.checksumMismatch "Қате, тексеру сомасы сәйкес емес"> +<!ENTITY noFiltersInGroup.text "Таңдалған топ бос."> +<!ENTITY subscription.actions.label "Әрекеттер"> +<!ENTITY filter.selectAll.label "Барлығын таңдау"> +<!ENTITY backupButton.label "Сақтау мен қал&пына келтіру"> +<!ENTITY restore.minVersion.warning "Ескерту: Файл жаңалау Adblock Plus нұсқасымен жасалған. Бұл файлдан қалпына келтіру үшін сізге Adblock Plus-тың соңғы нұсқасын орнату керек."> +<!ENTITY restore.error "Файл мәліметін өңдеу мүмкін емес, мүмкін ол Adblock Plus-тің көшірме файлы емес шығар?"> +<!ENTITY sort.ascending.label "&А > Я сұрыптау"> +<!ENTITY sort.label "&Сұрыптау"> +<!ENTITY subscription.source.label "Фильтлер тізімі"> +<!ENTITY hitcount.column "Х&иттер"> +<!ENTITY noFilters.text "Сізде әлі пайдаланушы фильтрлері жоқ."> +<!ENTITY backup.custom.title "Тек пайланушы фильтрлері"> +<!ENTITY subscription.external.label "Басқа кеңейтумен жаңартылған"> +<!ENTITY subscription.delete.label "Өшіру"> +<!ENTITY noGroupSelected.text "Алдымен фильтрлер тобын таңдаңыз, кейін ғана оның фильтрлері көрсетіледі."> +<!ENTITY filter.cut.label "Қиып алу"> +<!ENTITY restore.default.label "Көшірмені қалпына келтіру ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Жүктелуде..."> +<!ENTITY subscriptions.tab.label "Фильтрлерге жазылулар"> +<!ENTITY sort.descending.label "&Я > А сұрыптау"> +<!ENTITY filters.remove.warning "Таңдалған фильтрлердің барлығын өшіру керек пе?"> +<!ENTITY filter.delete.label "Жою"> +<!ENTITY addSubscriptionAdd.label "Қосу"> +<!ENTITY viewMenu.label "Түрі"> +<!ENTITY subscription.lastDownload.unknown "Ешқашан"> +<!ENTITY addSubscriptionCancel.label "Бас тарту"> +<!ENTITY subscription.enabled.label "Іске қосулы"> +<!ENTITY noSubscriptions.text "Сіз әлі фильтрге жазылуларды қосқан жоқсыз. Фильтрлерсіз + Adblock Plus ешнәрсені блоктамайды, оларды қосу үшін + "Фильтрге жазылуды қосу" қолданыңыз."> +<!ENTITY subscription.update.label "Фильтрлерді жаңарту"> +<!ENTITY dialog.title "Adblock Plus фильтр баптаулары"> +<!ENTITY addFilter.label "Фильтрді қо&су"> +<!ENTITY subscription.minVersion.warning "Бұл фильтрге жазылу Adblock Plus-тің жаңа нұсқасын талап етеді, оңы жаңартыңыз."> +<!ENTITY subscription.lastDownload.invalidURL "Қате, дұрыс адрес емес"> +<!ENTITY backup.error "Фильтрлерді файлға жазу кезінде қате орын алды. Файл жазу үшін қолжетерлік және басқа қолданбаның қолданысында болмағанына көз жеткізіңіз."> +<!ENTITY filter.moveUp.label "Жоғары жылжыту"> +<!ENTITY addGroup.label "Фильтрлер тоб&ын қосу"> +<!ENTITY filter.edit.label "Түзету"> +<!ENTITY subscription.showHideFilters.label "Фильтрлерді көрсету/жасыру"> +<!ENTITY acceptableAds2.label "Зиянке&с емес кейбір жарнаманы іске қосу"> +<!ENTITY addSubscriptionOther.label "Басқа жазылуды қосу"> +<!ENTITY close.label "Жабу"> +<!ENTITY sort.none.label "Сұрыптаусы&з"> +<!ENTITY filter.actions.label "Фильтр әрекеттері"> +<!ENTITY filter.copy.label "Көшіру"> +<!ENTITY filter.moveDown.label "Төмен жылжыту"> +<!ENTITY filter.resetHitCounts.label "Хит статистикасын тастау"> +<!ENTITY readMore.label "Көбірек оқу"> +<!ENTITY subscription.moveUp.label "Жоғары жылжыту"> +<!ENTITY addSubscription.label "Фильтрге жазыл&уды қосу"> +<!ENTITY subscription.homepage.label "Үй парағы"> +<!ENTITY backup.complete.title "Фильтрлер мен жазылуларды қосу"> +<!ENTITY restore.own.label "Өз көшірмені қалпына келтіру"> +<!ENTITY restore.complete.warning "Сіздің барлық фильтрлер баптаулары таңдалған файлдың құрамасымен алмастырылады. Жалғастыруды қалайсыз ба?"> +<!ENTITY filters.tab.label "Пайдаланушы фильтрлері"> +<!ENTITY backup.label "Жаңа көшірмені жасау"> +<!ENTITY find.label "І&здеу"> +<!ENTITY subscription.moveDown.label "Төмен жылжыту"> +<!ENTITY subscription.lastDownload.connectionError "Қате, жүктеу мүмкін емес"> +<!ENTITY subscription.lastDownload.success "Сәтті аяқталды"> +<!ENTITY subscription.lastDownload.invalidData "Қате, дұрыс сүзгілер файлы емес"> +<!ENTITY filter.paste.label "Кірістіру"> +<!ENTITY subscription.disabledFilters.enable "Сөндірулі фильтрлерді іске қосу"> +<!ENTITY lasthit.column "Соңғ&ы хит"> +<!ENTITY subscription.editTitle.label "Атауын түзету"> +<!ENTITY subscription.disabledFilters.warning "Бұл жазылудағы кейбір фильтрлер сөндірулі."> +<!ENTITY filter.column "Фильтр &ережесі:"> +<!ENTITY subscription.lastDownload.label "Соңғы жаңарту:"> +<!ENTITY viewList.label "Тізімді көру"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/firstRun.properties new file mode 100644 index 0000000..fac03ce --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Бақылауды сөндіру арқылы шолуды жеке қылыңыз - сіздің әр қимылыңызды бақылайтын жарнамалық компаниялардан ізіңізді жасыру арқылы. +firstRun_toggle_off=OFF +firstRun_feature_tracking=Бақылауды сөндіру +firstRun_feature_malware=Зиянкес бағдарламаларды блоктау +firstRun_title=Adblock Plus орнатылды +firstRun_toggle_on=ON +firstRun_acceptableAdsExplanation=Біз вебсайттарды тура, мазаңызды алмайтын жарнаманы қолдануын қалаймыз. Сондықтан біз жарамды жарнаманы анықтаудың <a>қатаң нұсқаулығын</a> орнаттық, ол жарнамма бастапқы баптаулармен көрсетілетін болады. Егер сіз сонда да барлық жарнаманы <a>блоктағыңыз</a> келсе, осыны тез арада сөндіре аласыз. +firstRun_contributor_credits=Үлес қосқандар +firstRun_dataCorruptionWarning=Бұл парақ көрсетіле бере ме? <a>Осында шертіңіз!</a> +firstRun_acceptableAdsHeadline=Мазаңызды алатын жарнама блокталатын болады +firstRun_share=Достарыңызға айтыңыз +firstRun_share_headline=Интернетті жақсырақ қылу үшін <a>бізге көмек қолын созыңыз</a> +firstRun_feature_social_description=Интернетті шолуды әлеуметтік желілер батырмаларынан құтылу арқылы жақсартыңыз, ол батырмалар, Facebook Like сияқты, веб парақтарда көрсетіледі және сіздің жұмысыңызды бақылайды. +firstRun_filterlistsReinitializedWarning=Қандай да бір мәселе салдарынан барлық сүзгілер өшіріліп, біз оларды қор көшірмеден қалпына келтіре алмайтын сияқтымыз. Сондықтан, барлық сүзгілер өшіріледі және жарамды жарнама баптаулары іске асырылады. Өзіңіздің сүзгілер тізімін және жарамды жарнама баптауларын <a>Adblock Plus баптауларында</a> тексеріңіз. +firstRun_feature_malware_description=Интернетті шолуды кейбір белгілі зиянкес домендерді блоктау арқылы қауіпсіздеу қылыңыз. +firstRun_features=Adblock Plus тек жарнаманы блоктаудан басқа көбірек нәрсені істей алады +firstRun_donate=ақшалай көмектесу +firstRun_donate_label=Жобамызды қолдаңыз +firstRun_feature_social=Әлеуметтік сайттар батырмаларын алып тастау +firstRun_legacySafariWarning=Сіз қолданып отырған Safari нұсқасы ескі, және оны Adblock Plus қолдамайды. Ол дұрыс жұмыс жасамауы мүмкін, немесе кейбір вебсайттарда пайдаланушы жұмысын нашарлау қылуы мүмкін. Біз қатаң түрде Safari нұсқасы 6.1.1 не одан жаңалау (OS X 10.8 Mountain Lion жүйесінде), немесе Safari нұсқасы 7.0.1 не одан жаңалау (OS X 10.9 Mavericks жүйесінде) дейін жаңартуды ұсынамыз, немесе Mozilla Firefox, Google Chrome не Opera браузерлерінің соңғы нұсқаларын қолдануды ұсынамыз. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/global.properties new file mode 100644 index 0000000..dae6af2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Ағымдағы парақта блоктауға болатын құрама жоқ +action3_tooltip=Adblock Plus қосу/сөндіру үшін шертіңіз. +notification_antiadblock_title=Мақсатталған хабарламаларды жасыру керек пе? +type_label_script=Скрипт +filter_elemhide_nocriteria=Элементті жасыру үшін бірде-бір шарт анықталмады +blockingGroup_title=Жарнаманы блоктау ережелері +whitelisted_tooltip=Adblock Plus қосулы, бірақ осы парақ үшін сөндірулі. +type_label_stylesheet=Стильдер кестесі +blocked_count_tooltip=?1? келесіден ?2? +type_label_font=қаріп +type_label_popup=атып шығатын терезе +filter_regexp_tooltip=Бұл сүзгі не регулярлы өрнек, не оптимизация үшін тым қысқа. Осындай сүзгілер көп болса, браузеріңіздің жұмысын тежеу мүмкін. +action0_tooltip=Контексті мәзірін ашу үшін шертіңіз, тышқанның орта батырмасы - қосу/сөндіру үшін. +whitelisted_page=Adblock Plus ағымдағы парақ үшін сөндірулі тұр +remove_group_warning=Бұл топты өшіруді шынымен қалайсыз ба? +action1_tooltip=Блокталған құраманы ашу/жабу үшін шертіңіз, тышқанның орта батырмасы - қосу/сөндіру үшін. +type_label_xmlhttprequest=XML-сұранымы +active_tooltip=Adblock Plus қосулы тұр, ?1? сүзгілерге жазылу мен ?2? пайдаланушы сүзгілері қолданылуда. +type_label_document=Құжат +type_label_object_subrequest=объект сұранымы +whitelistGroup_title=Ережеден тыс +disabled_tooltip=Adblock Plus сөндірулі тұр. +filter_elemhide_duplicate_id=Жасыралатын элементтің идентификаторы тек біреу болу керек. +type_label_object=Объект +action2_tooltip=Баптауларды ашу үшін шертіңіз, тышқанның орта батырмасы - қосу/сөндіру үшін. +type_label_subdocument=Фрейм +clearStats_warning=Бұл әрекет барлық фильтрлерді хит статистикасын тастап, фильтр хиттерін санауды сөндіреді. Жалғастыруды қалайсыз ба? +notification_antiadblock_message=Бұл сайт Adblock Plus пайдаланушыларына мақсатталған хабарламаларды көрсететіні белгілі. Adblock Plus мақсатталған хабарламаларды жасыруы керек пе? +blocked_count_addendum=(сүзгіден тыс: ?1?, жасырын: ?2?) +subscription_invalid_location=Енгізілген адрес не интернет адресі, не файл мекен-жайы ретінде анықталмады. +type_label_image=Сурет +remove_subscription_warning=Осы жазылуды өшіруды шынымен қалайсыз ба? +type_label_other=Басқа +mobile_menu_enable=ABP: Іске қосу +type_label_media=Аудио/видео +mobile_menu_disable_site=ABP: Келесі үшін сөндіру: ?1? +elemhideGroup_title=Элементтерді жасыру ережелері +mobile_menu_enable_site=ABP: Келесі үшін іске қосу: ?1? +type_label_elemhide=Жасырын +newGroup_title=Жаңа фильтрлер тобы +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/overlay.dtd new file mode 100644 index 0000000..85523ea --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Иә"> +<!ENTITY notification.button.no "&Жоқ"> +<!ENTITY sync.label "Adblock Plus баптауларын Sync і&шіне қосу"> +<!ENTITY whitelist.site.label "Келесі үшін сөндіру: ?1?"> +<!ENTITY filters.label "Фильт&р баптаулары"> +<!ENTITY disable.label "Әр жерде сөндіру"> +<!ENTITY objecttab.title "Блоктау"> +<!ENTITY objecttab.tooltip "Adblock Plus көмегімен осы объектті блоктау үшін шертіңіз"> +<!ENTITY menuitem.label "Adblock Plus ба&птаулары"> +<!ENTITY objecttabs.label "Flash пен Java-ға сілтеме қал&дыру"> +<!ENTITY sendReport.label "Бұл парақтағы мәселе туралы &хабарлау"> +<!ENTITY whitelist.page.label "Тек осы парақ үшін сөндіру"> +<!ENTITY context.image.label "Adblock Plus: Суретті блоктау"> +<!ENTITY counthits.label "Ф&ильтрлер хиттерін санау"> +<!ENTITY opensidebar.label "Блокталған құраманы аш&у"> +<!ENTITY notification.button.close "Ж&абу"> +<!ENTITY contribute.label "Adblock Plus-қа үлес қосу"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Фреймді блоктау"> +<!ENTITY blocked.tooltip "Бұл парақтағы блокталған құрама:"> +<!ENTITY hideplaceholders.label "Блокталған &элементтер шектерін жасыру"> +<!ENTITY showinstatusbar.label "Қалып-&күй жолағында көрсету"> +<!ENTITY sidebar.title "Ағымдағы парақ құрамасы"> +<!ENTITY options.label "&Баптаулар"> +<!ENTITY context.object.label "Adblock Plus: Объектті блоктау"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Осы парақта қайта қосу"> +<!ENTITY filters.tooltip "Көп қолданылатын фильтрлер:"> +<!ENTITY closesidebar.label "Блокталған құраманы жаб&у"> +<!ENTITY showintoolbar.label "&Панельде көрсету"> +<!ENTITY status.tooltip "Күйі:"> +<!ENTITY context.media.label "Adblock Plus: Аудио/Видеоны блоктау"> +<!ENTITY subscription.update.label "Фильтрлерді жаңарту"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/sendReport.dtd new file mode 100644 index 0000000..1e14564 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/sendReport.dtd @@ -0,0 +1,66 @@ +<!ENTITY screenshot.undo.label "Б&олдырмау"> +<!ENTITY issues.disabledgroups.description "Келесі фильтрлер/тізімдер сөндірілген, бірақ олар ағымдағы параққа өз әсерлерін тигізуі мүмкін:"> +<!ENTITY showData.label "Хабарлама мәліметін көрсету"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus &тым көп блоктайды"> +<!ENTITY issues.change.description "Баптауларыңыз өзгертілді. Парақты қайта жүктеп, өзгерістерді сынап көріңіз, егер олар қайталанатын болса, хабарламаны жіберіңіз."> +<!ENTITY email.label "&Эл. пошта:"> +<!ENTITY issues.openPreferences.label "Фильтр баптауларын ашу"> +<!ENTITY sendPage.confirmation "Хабарламаңыз сақталды. Оны келесі адрестен көре аласыз:"> +<!ENTITY copyLink.label "Хабарлама сілтемесін &көшіру"> +<!ENTITY issues.nofilters.description "Adblock Plus бұл парақта ешнәрсені блоктап тұрған жоқ. Бұл мәселе Adblock Plus-ке байланысты емес сияқты."> +<!ENTITY sendPage.knownIssue "Сіз хабарлаған мәселе белгілі сияқты. Көбірек біліңіз:"> +<!ENTITY typeSelector.other.description "Егер мәселе Adblock Plus өзімен, оның фильтлерімен емес болып тұр деп ойласаңыз, бұл опцияны таңдаңыз."> +<!ENTITY issues.disabledgroups.enable.label "Фильтрге жазылу/фильтрлер тобын іске қосу"> +<!ENTITY typeWarning.override.label "Мен түсініп тұрмын, және хабарламаны жібергім &келеді"> +<!ENTITY issues.disabled.enable.label "Adblock Plus іске қосу"> +<!ENTITY update.fixed.description "Cіз хабарлаған мәселе фильтрлерге жаңартылумен шешілген сияқты. Парақты қайта жүктеп, қайталап көріңіз, мәселе жоғалмаса, Хабарлау батырмасын басыңыз."> +<!ENTITY anonymous.label "&Анонимды жіберу"> +<!ENTITY reloadButton.label "Па&рақты қайта жүктеу"> +<!ENTITY recentReports.clear.label "Барлық хабарламаларды ө&шіру"> +<!ENTITY typeSelector.description "Бұл терезе сізге Adblock Plus мәселесі туралы хабарламаны дайындауға көмектеседі. Біріншіден, бұл парақта кездескен мәселе түрін таңдаңыз:"> +<!ENTITY screenshot.remove.label "Жеке ақ&паратты өшіру"> +<!ENTITY issues.ownfilters.description "Бұл параққа іске асырылған кейбір фильтрлерді сіз қолмен көрсеткенсіз. Мәселені туғызуы мүмкін фильтрлерді сөндіріңіз:"> +<!ENTITY update.inProgress.description "Adblock Plus мәселе шешілген бе, соны тексеру үшін фильтрлерге жазылуларыңызды жаңартуы тиіс. Күте тұрыңыз..."> +<!ENTITY sendPage.retry.label "Қайта жіберу"> +<!ENTITY data.label "Хабарла&ма мәліметі:"> +<!ENTITY recentReports.label "Сіздің соңғы жіберген хабарламаларыңыз"> +<!ENTITY typeWarning.description "Сіз хабарламаны Adblock Plus-пен болған мәселе, фильтрлермен емес деп белгіледіңіз. Ондай мәселелер жөнінде [link]Adblock Plus форумына[/link] хабарлау жөн. Осы хабарлаушыны тек форумдағы темаға толықтыру ретінде қолданыңыз, яғни, хабарламаңыздың сілтемесін бермесеңіз, оны ешкім де байқамайды. Автожасалған сілтеме хабарламаны жіберуден кейін қолжетерлік болады."> +<!ENTITY issues.disabled.description "Adblock Plus қазір сөндірулі тұр, сондықтан ол ешнәрсені блоктамайды."> +<!ENTITY attachExtensions.label "Бел&сенді кеңейтулер тізімін жіберу, мүмкін, өзара мәселелер пайда болған шығар"> +<!ENTITY issues.nosubscriptions.add.label "Фильтрлерге жазылуды қосу"> +<!ENTITY issues.disabledfilters.enable.label "Фильтрді іске қосу"> +<!ENTITY issues.override.label "Баптаулар дұр&ыс, хабарламаны жалғастыру"> +<!ENTITY issues.nosubscriptions.description "Веб сайттардан керек емес құраманы өшіретін алдын-ала әзірленген фильтрлердің біреуіне де жазылмаған сияқтысыз."> +<!ENTITY typeSelector.falsePositive.description "Парақта маңызды құрама жоқ болса, қате көрсетілсе не дұрыс істемесе, бұл опцияны таңдаңыз. Ол мәселе Adblock Plus салдарынан пайда болатынын тексеру үшін, оны уақытша сөндіріңіз."> +<!ENTITY typeSelector.other.label "Ба&сқа мәселе"> +<!ENTITY emailComment.label "Біз сізден шын эл. пошта адресін енгізуді сұраймыз, өйткені есептемеңіз жөнінде сұрақтар бар болса, біз сізге + хабарласа алатын боламыз. Сонымен бірге қосқан үлесіңізді танып, оның маңыздылығын көтере алуға жол ашады."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus осы парақта қайта қосу"> +<!ENTITY outdatedSubscriptions.description "Келесі фильтрге жазылу кем дегенде екі апта бойы жаңартылмады. Хабарламаны жіберу алдында фильтрге жазылуды жаңартыңыз, мәселе шешілген болуы мүмкін."> +<!ENTITY dataCollector.description "Adblock Plus керек ақпаратты жинағанша, күте тұрыңыз."> +<!ENTITY sendButton.label "Хабарлама&ны жіберу"> +<!ENTITY comment.label "Түсіндірме (т&иісті емес):"> +<!ENTITY sendPage.errorMessage "Хабарламаны жіберу талабы "?1?" қате кодымен аяқталды. Интернетпен байланысыңызды тексеріп, қайталаңыз. Егер ол көмектеспесе, [link]Adblock Plus форумынан[/link] көмек сұраңыз."> +<!ENTITY showRecentReports.label "Соңғы жіберілген хабарламаларды қарау"> +<!ENTITY commentPage.heading "Түсіндірмені енгізу"> +<!ENTITY update.start.label "Жаңартуды қазір бастау"> +<!ENTITY issues.disabledfilters.description "Келесі фильтрлер сөндірілген, бірақ олар ағымдағы параққа өз әсерлерін тигізуі мүмкін:"> +<!ENTITY screenshot.description "Бірдей парақ әр түрлі адамдар үшін әр түрлі көрінуі мүмкін. Скриншотты қосып жіберсеңіз, ол бізге көмектесуі мүмкін. Жеке ақпаратыңыз бар бөлігін өшіріп, мәселе пайда болған аймақтарды белгілей аласыз. Ол үшін төмендегі батырманы басып, тышқанмен керек аймақты таңдаңыз."> +<!ENTITY screenshot.attach.label "Парақ скриншо&тын хабарламаға қосып жіберу"> +<!ENTITY issues.whitelist.description "Хабарлап тұрған парағыңыз үшін Adblock Plus қазір сөндірілген. Мәселені анықтауға көмектесу үшін, хабарламаны жіберу алдында оны іске қосып, парақты қайта жүктеңіз."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus жарна&маны блоктамайды"> +<!ENTITY typeSelector.heading "Мәселе түрін таңдаңыз"> +<!ENTITY anonymity.warning "Біз сізге кері хабарласа алмаймыз, және есептемеңізді маңыздылығы төмендеу деп санауымыз мүмкін."> +<!ENTITY wizard.title "Хабарлаушы"> +<!ENTITY issues.ownfilters.disable.label "Фильтрді сөндіру"> +<!ENTITY commentPage.description "Төмендегі мәтін өрісіне мәселені түсіндіретін түсіндірмені жаза аласыз. Бұл қадам тиісті емес, бірақ мәселе күрделі болса, көмегі тиеді. Жіберу алдында мәліметті тексере аласыз."> +<!ENTITY comment.lengthWarning "Түсіндірмеңіздің ұзындығы 1000 таңбадан асты. Тек алғашқы 1000 таңба жіберіледі."> +<!ENTITY typeSelector.falseNegative.description "Егер Adblock Plus қосулы тұрса, ал жарнама сонда да көрсетілсе, бұл опцияны таңдаңыз."> +<!ENTITY sendPage.waitMessage "Adblock Plus хабарламаңызды жібергенше күте тұрыңыз."> +<!ENTITY dataCollector.heading "Мәселелер туралы хабарлауға қош келдіңіз"> +<!ENTITY screenshot.heading "Скриншотты қосып жіберу"> +<!ENTITY sendPage.heading "Хабарламаны жіберу"> +<!ENTITY issues.subscriptionCount.description "Сізде фильтрлерге жазылулар саны тым көп сияқты. Ондай жағдай қолдануға ұсынылмайды. Сонымен қатар біз сіздің хабарлауыңызды қабылдай алмаймыз, өйткені мәселе қай жазылудың салдарынан пайда болғаны түсініксіз. Тек маңызды жазылуларды қалдырып, басқаларды өшіріңіз, және мәселе қайталана ма, соны көріңіз."> +<!ENTITY screenshot.mark.label "Хабарламаны бел&гілеу"> +<!ENTITY privacyPolicy.label "Жекелік саясаиы"> +<!ENTITY issues.description "Adblock Plus бұл мәселе үшін жауапты бола алатын, немесе тергеуді қиындататын сіздің баптауларыңызды анықтады."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/sidebar.dtd new file mode 100644 index 0000000..7374b17 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Flash құрамасының шектері"> +<!ENTITY address.label "Адресі"> +<!ENTITY context.open.label "Жаңа бетте ашу"> +<!ENTITY type.label "Түрі"> +<!ENTITY tooltip.filterSource.label "Фильтр көзі:"> +<!ENTITY noitems.label "Блокталатын құрама жоқ"> +<!ENTITY filter.label "Фильтр"> +<!ENTITY tooltip.size.label "Көлемі:"> +<!ENTITY reattach.label "Қосып қою"> +<!ENTITY search.label "І&здеу:"> +<!ENTITY docDomain.thirdParty "(үшінші жақты)"> +<!ENTITY filterSource.label "Фильтр көзі"> +<!ENTITY tooltip.docDomain.label "Құжат көзі:"> +<!ENTITY context.copy.label "Элемент адресін көшіру"> +<!ENTITY tooltip.type.label "Түрі:"> +<!ENTITY context.disablefilter.label "Фильтрді сөндіру ?1?"> +<!ENTITY context.copyFilter.label "Фильтрді көшіру"> +<!ENTITY context.block.label "Бұл элементті блоктау"> +<!ENTITY context.enablefilter.label "Фильтрді қайта қосу ?1?"> +<!ENTITY detach.label "Бөліп жіберу"> +<!ENTITY whitelisted.label "Ережеден тыс парақ"> +<!ENTITY context.disablefilteronsite.label "Келесі үшін фильтрді өшіру ?1?"> +<!ENTITY detached.title "Adblock Plus: ағымдағы парақ құрамасы (бөлінген)"> +<!ENTITY docDomain.firstParty "(бірінші жақты)"> +<!ENTITY tooltip.type.whitelisted "(ережеден тыс)"> +<!ENTITY tooltip.filter.label "Қолданудағы фильтр:"> +<!ENTITY tooltip.filter.disabled "(сөндірулі)"> +<!ENTITY context.editfilter.label "Қолданудағы фильтрді түзету"> +<!ENTITY tooltip.type.blocked "(блокталған)"> +<!ENTITY size.label "Көлемі"> +<!ENTITY context.whitelist.label "Элемент үшін ерекше ереже жасау"> +<!ENTITY context.selectAll.label "Барлығын ерекшелеу"> +<!ENTITY state.label "Күйі"> +<!ENTITY docDomain.label "Құжат көзі"> +<!ENTITY tooltip.address.label "Адресі:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/subscriptionSelection.dtd new file mode 100644 index 0000000..131c081 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/kk/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label ""?1?" сүзгі жазыл&уын да қосу"> +<!ENTITY list.download.failed "Adblock Plus жазылулар тізімін жүктеп ала алмаған."> +<!ENTITY list.download.retry "Қайтадан көру"> +<!ENTITY title.label "Жа&зылудың аты:"> +<!ENTITY list.download.website "Веб сайтты шолу"> +<!ENTITY supplementMessage "Бұл фильтрге жазылу сізде әлі қосылмаған "?1?" сүзгімен бірге қолданылуы тиіс."> +<!ENTITY viewList.label "Сүзгілерді қарап шығу"> +<!ENTITY visitHomepage.label "Үй парағын шолу"> +<!ENTITY addSubscription.label "Жазылуды қосу"> +<!ENTITY dialog.title "Adblock Plus фильтрлерге жазылуды қосу"> +<!ENTITY location.label "Фильтр тізім а&дресі:"> +<!ENTITY fromWeb.description "Сүзгі жазылуын қосуды растаңыз. Қосу алдында оның атауын не орналасуын өзгерте аласыз."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/composer.dtd new file mode 100644 index 0000000..4cf4c74 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "주소 끝 부분에 일치 (&n)"> +<!ENTITY domainRestriction.label "지정된 도메인에만 적용(&D) :"> +<!ENTITY collapse.default.no.label "기본값 (아니요)"> +<!ENTITY firstParty.label "내부 요청에만 적용 (&r)"> +<!ENTITY preferences.label "필터 목록 (&S)"> +<!ENTITY pattern.label "유형 찾기"> +<!ENTITY thirdParty.label "외부 요청에만 적용 (&T)"> +<!ENTITY filter.label "새 필터 (&f)"> +<!ENTITY collapse.label "차단된 요소의 영역 숨기기 (&l)"> +<!ENTITY match.warning "입력한 유형과 일치하는 주소가 없으며, 차단/허용할 주소에 영향을 미치지 않음."> +<!ENTITY anchor.start.label "주소 시작 부분에 일치 (&g)"> +<!ENTITY matchCase.label "대/소문자 구분 (&M)"> +<!ENTITY custom.pattern.label "사용자 지정 (&C)"> +<!ENTITY unselectAllTypes.label "선택 해제"> +<!ENTITY type.whitelist.label "예외 규칙 (&x)"> +<!ENTITY regexp.warning "[느린 필터] 유형 끝에 임의 문자(*)가 없으면 정규 표현식으로 해석되며, 웹 페이지를 불러오는 속도가 느려짐."> +<!ENTITY dialog.title "필터 추가"> +<!ENTITY basic.label "기본 보기"> +<!ENTITY type.filter.label "차단 필터 (&B)"> +<!ENTITY types.label "적용 형식"> +<!ENTITY shortpattern.warning "[느린 필터] 유형의 길이가 너무 짧으면 필터가 비효율적으로 처리되며, 웹 페이지를 불러오는 속도가 느려짐."> +<!ENTITY collapse.yes.label "예"> +<!ENTITY anchors.label "유형 일치 조건 :"> +<!ENTITY collapse.default.yes.label "기본값 (예)"> +<!ENTITY domainRestriction.help "1. 파이프 기호(|)를 이용해 여러 도메인에 적용 (예시 : site1.com|site2.net). 2. 물결 기호(~)를 이용해 필터를 적용하지 않을 도메인 지정 (예시 : ~site.com)"> +<!ENTITY accept.label "추가"> +<!ENTITY options.label "옵션"> +<!ENTITY disabled.warning "애드블록 플러스는 현재 비활성화된 상태입니다. 필터는 여전히 추가할 수 있지만 [link]애드블록플러스를 활성화[/link]하지 않으면 추가한 필터는 적용되지 않습니다."> +<!ENTITY anchor.start.flexible.label "도메인 시작 부분에 일치 (&g)"> +<!ENTITY collapse.no.label "아니요"> +<!ENTITY selectAllTypes.label "모두 선택"> +<!ENTITY advanced.label "고급 보기"> +<!ENTITY pattern.explanation "유형은 일치하는 주소를 검색하는 텍스트 문자열이며, 임의 문자(*)로 적용 범위를 조절할 수 있습니다."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/filters.dtd new file mode 100644 index 0000000..b099db4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "선택된 복원 파일에 의해 모든 사용자 필터가 교체됩니다. 진행하시겠습니까?"> +<!ENTITY slow.column "느린 필터(!) (&w)"> +<!ENTITY enabled.column "사용 (&n)"> +<!ENTITY subscription.lastDownload.checksumMismatch "실패함 : 검사합 불일치"> +<!ENTITY noFiltersInGroup.text "필터 없음"> +<!ENTITY subscription.actions.label "동작"> +<!ENTITY filter.selectAll.label "모두 선택"> +<!ENTITY backupButton.label "백업/복원 (&B)"> +<!ENTITY restore.minVersion.warning "경고 : 이 파일은 보다 높은 버전의 애드블록 플러스에 의해 생성되었습니다. 이 파일로 복원하기 전에 최신 버전의 애드블록 플러스로 업데이트하십시오."> +<!ENTITY restore.error "애드블록 플러스의 백업 파일이 아니므로 복원을 할 수 없습니다."> +<!ENTITY sort.ascending.label "오름차순 (&A ⇒ Z)"> +<!ENTITY sort.label "정렬 (&S)"> +<!ENTITY subscription.source.label "필터 목록"> +<!ENTITY hitcount.column "적용 횟수 (&H)"> +<!ENTITY noFilters.text "사용자 필터가 없습니다."> +<!ENTITY backup.custom.title "사용자 필터만 백업"> +<!ENTITY subscription.external.label "다른 확장 프로그램에 의해 업데이트됨"> +<!ENTITY subscription.delete.label "삭제"> +<!ENTITY noGroupSelected.text "필터 목록을 보려면 필터 그룹을 선택하십시오."> +<!ENTITY filter.cut.label "잘라내기"> +<!ENTITY restore.default.label "복원 날짜 - ?1?"> +<!ENTITY subscription.lastDownload.inProgress "다운로드 중..."> +<!ENTITY subscriptions.tab.label "구독 필터"> +<!ENTITY sort.descending.label "내림차순 (&Z ⇒ A)"> +<!ENTITY filters.remove.warning "선택한 모든 필터를 제거하시겠습니까?"> +<!ENTITY filter.delete.label "삭제"> +<!ENTITY addSubscriptionAdd.label "추가"> +<!ENTITY viewMenu.label "보기"> +<!ENTITY subscription.lastDownload.unknown "알 수 없음"> +<!ENTITY addSubscriptionCancel.label "취소"> +<!ENTITY subscription.enabled.label "사용"> +<!ENTITY noSubscriptions.text "구독 필터를 아직 추가하지 않았습니다. 애드블록 플러스는 필터 없이는 아무것도 차단할 수 없으므로 "구독 필터 추가" 버튼을 눌러 구독 필터를 추가하십시오."> +<!ENTITY subscription.update.label "업데이트"> +<!ENTITY dialog.title "필터 설정"> +<!ENTITY addFilter.label "필터 추가 (&d)"> +<!ENTITY subscription.minVersion.warning "이 구독 필터는 보다 높은 버전의 애드블록 플러스가 필요합니다. 최신 버전의 애드블록 플러스를 설치하십시오."> +<!ENTITY subscription.lastDownload.invalidURL "실패함 : 올바르지 않은 주소"> +<!ENTITY backup.error "백업 파일에 필터 작성 오류가 있습니다. 이 파일은 쓰기 방지 상태이거나 다른 응용 프로그램에서 사용 중인지 확인하십시오."> +<!ENTITY filter.moveUp.label "위로 이동"> +<!ENTITY addGroup.label "필터 그룹 추가 (&g)"> +<!ENTITY filter.edit.label "편집"> +<!ENTITY subscription.showHideFilters.label "필터 목록 보기/숨기기"> +<!ENTITY acceptableAds2.label "비침입형 광고 허용 (&i)"> +<!ENTITY addSubscriptionOther.label "다른 구독 필터 추가 (F)"> +<!ENTITY close.label "닫기"> +<!ENTITY sort.none.label "정렬 안 함 (&U)"> +<!ENTITY filter.actions.label "필터 동작"> +<!ENTITY filter.copy.label "복사"> +<!ENTITY filter.moveDown.label "아래로 이동"> +<!ENTITY filter.resetHitCounts.label "필터 적용 횟수 초기화"> +<!ENTITY readMore.label "자세히 보기"> +<!ENTITY subscription.moveUp.label "위로 이동"> +<!ENTITY addSubscription.label "구독 필터 추가 (&f)"> +<!ENTITY subscription.homepage.label "홈페이지"> +<!ENTITY backup.complete.title "사용자/구독 필터 백업"> +<!ENTITY restore.own.label "백업 파일로 복원"> +<!ENTITY restore.complete.warning "선택된 복원 파일에 의해 모든 필터 설정이 교체됩니다. 진행하시겠습니까?"> +<!ENTITY filters.tab.label "사용자 필터"> +<!ENTITY backup.label "백업 파일 저장"> +<!ENTITY find.label "찾기 (&n)"> +<!ENTITY subscription.moveDown.label "아래로 이동"> +<!ENTITY subscription.lastDownload.connectionError "실패함 : 다운로드 실패"> +<!ENTITY subscription.lastDownload.success "동기화 성공"> +<!ENTITY subscription.lastDownload.invalidData "실패함 : 올바르지 않은 필터"> +<!ENTITY filter.paste.label "붙여넣기"> +<!ENTITY subscription.disabledFilters.enable "필터 다시 사용"> +<!ENTITY lasthit.column "마지막 적용 날짜 (&L)"> +<!ENTITY subscription.editTitle.label "필터 그룹명 편집"> +<!ENTITY subscription.disabledFilters.warning "이 구독 필터의 일부 필터는 사용 중지되었습니다."> +<!ENTITY filter.column "필터 (&F)"> +<!ENTITY subscription.lastDownload.label "마지막 다운로드 :"> +<!ENTITY viewList.label "필터 목록 보기"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/firstRun.properties new file mode 100644 index 0000000..10a0ba9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=광고 회사가 수집하는 사용자 추적 정보를 유출되지 않게 하여 개인 정보를 보호합니다. +firstRun_toggle_off=끄기 +firstRun_feature_tracking=추적 차단 +firstRun_feature_malware=맬웨어 차단 +firstRun_title=애드블록 플러스가 설치되었습니다. +firstRun_toggle_on=켜기 +firstRun_acceptableAdsExplanation=우리는 비침입적이며 이용자 친화적인 광고 방식을 채택한 웹사이트를 격려하고자 합니다. 특정 광고를 허용하기 위한 <a>광고 허용 지침</a>을 수립하였으며, 기본 설정으로 그러한 광고는 화면에 표시됩니다. 모든 광고를 차단하려면 이 기능의 <a>사용을 중지</a>할 수 있습니다. +firstRun_contributor_credits=공헌자 명단 +firstRun_dataCorruptionWarning=이 페이지를 계속해서 보시겠습니까? <a>여기 클릭!</a> +firstRun_acceptableAdsHeadline=인터넷 이용을 방해하거나 불법·유해한 광고는 이제 차단될 것입니다 +firstRun_share=홍보 +firstRun_share_headline=더 나은 웹을 만들기 위해 <a>공헌하기</a> +firstRun_feature_social_description=웹페이지상에 인터넷 사용 행태를 추적하는 사회관계망 서비스 버튼을 자동으로 제거해줍니다. +firstRun_filterlistsReinitializedWarning=문제가 발생하여 모든 필터가 제거되고, 백업을 복원할 수 없습니다. 그러므로 사용자 필터와 허용 광고 설정을 초기화했어야 합니다. <a>애드블록 플러스 옵션</a>에서 구독필터와 허용 광고 설정을 확인하십시오. +firstRun_feature_malware_description=널리 알려진 맬웨어 도메인을 차단함으로써 웹을 더 안전하게 이용합니다. +firstRun_features=애드블록 플러스는 광고 차단 이외 다양한 기능이 있습니다 +firstRun_donate=기부 +firstRun_donate_label=프로젝트 지원 +firstRun_feature_social=사회관계망 서비스 버튼 제거 +firstRun_legacySafariWarning=애드블록 플러스에서 지원하지 않는 구버전 사파리를 사용하고 있습니다. 그래서 일부 사이트에서 정상적인 작동을 하지 않거나 사용자 경험에 손상을 줄 수 있습니다. 사파리 6.6.1 이상(OS X 10.8 Mountain Lion), 또는 사파리 7.0.1 이상(OS X 10.9 Mavericks) 또는 모질라 파이어폭, 구글 크롬, 오페라의 최신 버전을 사용할 것을 권장합니다. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/global.properties new file mode 100644 index 0000000..bbd9425 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=현재 페이지에 차단 가능한 항목이 없습니다. +action3_tooltip=애드블록 플러스 사용/중지 +notification_antiadblock_title=표적 메시지를 숨기겠습니까? +type_label_script=스크립트 +filter_elemhide_nocriteria=숨기려는 요소를 인식하기 위한 기준이 지정되지 않았습니다. +blockingGroup_title=요청 차단 필터 +whitelisted_tooltip=애드블록 플러스 사용 (허용된 페이지) +type_label_stylesheet=스타일시트 +blocked_count_tooltip=차단 : ?1?개, 전체 항목 : ?2?개 +type_label_font=글꼴 +type_label_popup=팝업창 +filter_regexp_tooltip=이 필터는 정규 표현식이거나 최적화하기에 길이가 너무 짧으므로 웹 페이지를 불러오는 속도가 저하됩니다. +action0_tooltip=마우스 가운데 버튼 - 애드블록 플러스 사용/중지 +whitelisted_page=허용된 페이지 +remove_group_warning=이 그룹을 정말 제거하시겠습니까? +action1_tooltip=마우스 가운데 버튼 - 애드블록 플러스 사용/중지 +type_label_xmlhttprequest=XML 요청 +active_tooltip=애드블록 플러스 사용 [구독 필터 : ?1?개, 사용자 필터 : ?2?개 ] +type_label_document=문서 +type_label_object_subrequest=하위 객체 요청 +whitelistGroup_title=허용 필터 +disabled_tooltip=애드블록 플러스 사용 중지 +filter_elemhide_duplicate_id=숨기려는 요소의 ID는 한 개만 지정할 수 있습니다. +type_label_object=객체 +action2_tooltip=마우스 가운데 버튼 - 애드블록 플러스 사용/중지 +type_label_subdocument=프레임 +clearStats_warning=모든 필터 적용 횟수가 초기화되고, 이 통계 기능을 사용하지 않습니다. 진행하시겠습니까? +notification_antiadblock_message=이 사이트는 애드블록 플러스 사용자에게 표적 메시지를 보여주는 것으로 알려져 있습니다. 애드블록 플러스로 표적 메시지를 숨기겠습니까? +blocked_count_addendum=(허용 : ?1?개, 요소 숨김 : ?2?개) +subscription_invalid_location=구독 필터의 위치에 입력하는 URL 또는 파일명이 올바르지 않습니다. +type_label_image=이미지 +remove_subscription_warning=이 구독 필터를 제거하시겠습니까? +type_label_other=기타 +mobile_menu_enable=ABP:사용 +type_label_media=오디오/비디오 +mobile_menu_disable_site=ABP:해제 - ?1? +elemhideGroup_title=요소 숨김 필터 +mobile_menu_enable_site=ABP:사용 - ?1? +type_label_elemhide=숨겨진 요소 +newGroup_title=새 필터 그룹 +default_dialog_title=애드블록 플러스 diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/overlay.dtd new file mode 100644 index 0000000..2b84e5e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&예"> +<!ENTITY notification.button.no "&아니요"> +<!ENTITY sync.label "애드블록 플러스 설정 동기화 (&c)"> +<!ENTITY whitelist.site.label "사이트 허용 : ?1?"> +<!ENTITY filters.label "필터 설정 (&F)"> +<!ENTITY disable.label "사용 중지"> +<!ENTITY objecttab.title "차단"> +<!ENTITY objecttab.tooltip "이 객체를 차단하려면 차단 탭을 클릭하십시오."> +<!ENTITY menuitem.label "필터 설정 (&B)"> +<!ENTITY objecttabs.label "플래시/자바에 차단 탭 표시 (&T)"> +<!ENTITY sendReport.label "현재 페이지의 문제 보고 (&R)"> +<!ENTITY whitelist.page.label "현재 페이지 허용"> +<!ENTITY context.image.label "애드블록 플러스 : 이미지 차단"> +<!ENTITY counthits.label "필터 적용 횟수 기록 (&h)"> +<!ENTITY opensidebar.label "차단 가능 목록 (&B)"> +<!ENTITY notification.button.close "&닫기"> +<!ENTITY contribute.label "애드블록 플러스에 공헌하기"> +<!ENTITY toolbarbutton.label "애드블록 플러스"> +<!ENTITY context.frame.label "애드블록 플러스 : 프레임 차단"> +<!ENTITY blocked.tooltip "적용된 필터 개수"> +<!ENTITY hideplaceholders.label "차단된 요소의 영역 숨기기 (&l)"> +<!ENTITY showinstatusbar.label "상태 표시줄에 아이콘 보이기 (&S)"> +<!ENTITY sidebar.title "현재 페이지의 차단 가능한 항목"> +<!ENTITY options.label "옵션 (&O)"> +<!ENTITY context.object.label "애드블록 플러스 : 객체 차단"> +<!ENTITY context.removeWhitelist.label "애드블록 플러스 : 사이트/페이지 허용 해제"> +<!ENTITY filters.tooltip "적용된 주요 필터"> +<!ENTITY closesidebar.label "차단 가능 목록 닫기 (&B)"> +<!ENTITY showintoolbar.label "툴바에 아이콘 보이기 (&B)"> +<!ENTITY status.tooltip "상태"> +<!ENTITY context.media.label "애드블록 플러스 : 비디오/오디오 차단"> +<!ENTITY subscription.update.label "업데이트"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/sendReport.dtd new file mode 100644 index 0000000..2e06d78 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "되돌리기 (&U)"> +<!ENTITY issues.disabledgroups.description "다음 구독 필터/필터 그룹을 사용하지 않지만 이 페이지에 영향을 줄 수 있습니다."> +<!ENTITY showData.label "보고할 자료 보기"> +<!ENTITY typeSelector.falsePositive.label "애드블록 플러스가 콘텐츠를 과도하게 차단함 (&m)"> +<!ENTITY issues.change.description "설정이 변경되었습니다. 웹 페이지를 다시 불러온 후 문제가 해결되지 않는다면 보고서를 제출하십시오."> +<!ENTITY email.label "메일 주소: (&m)"> +<!ENTITY issues.openPreferences.label "필터 설정 열기"> +<!ENTITY sendPage.confirmation "보고서가 서버에 저장되었고, 다음 주소로 보고서를 확인할 수 있습니다. 필터 유지자가 보고를 접수하면 보고서의 Status 항목에는 unknown 대신에 처리 결과가 표시됩니다."> +<!ENTITY copyLink.label "보고 링크 복사 (&C)"> +<!ENTITY issues.nofilters.description "이 문제는 애드블록 플러스가 아무것도 차단하지 않은 상태에서 발생해서 애드블록 플러스와 관련이 없습니다."> +<!ENTITY sendPage.knownIssue "보고한 문제는 다른 사용자들에 의해 이미 많이 보고되었습니다. 더 많은 정보 :"> +<!ENTITY typeSelector.other.description "필터 문제가 아닌 애드블록 플러스 자체의 문제로 의심한다면 이 옵션을 선택하십시오."> +<!ENTITY issues.disabledgroups.enable.label "구독 필터/필터 그룹 사용"> +<!ENTITY typeWarning.override.label "위의 내용을 이해했으며, 보고서 작성을 계속 진행함 (&s)"> +<!ENTITY issues.disabled.enable.label "애드블록 플러스 사용"> +<!ENTITY update.fixed.description "업데이트에 의해 보고된 이슈가 해결된 것 같습니다. 페이지 새로 고침을 하신 후 재시도 하십시오. 아직 문제가 더 있으면 다시 보고해 주십시오."> +<!ENTITY anonymous.label "익명 전송 (&a)"> +<!ENTITY reloadButton.label "페이지 새로고침 (&R)"> +<!ENTITY recentReports.clear.label "모든 보고서 제거 (&R)"> +<!ENTITY typeSelector.description "문제 보고 마법사는 애드블록 플러스의 문제를 필터 유지자에게 보고하기 위해 필요한 단계를 안내합니다. 먼저 현재 페이지의 문제 유형을 선택하십시오."> +<!ENTITY screenshot.remove.label "민감한 영역 숨김 (&R)"> +<!ENTITY issues.ownfilters.description "현재 페이지에 적용된 필터의 일부는 사용자가 지정했습니다. 이 문제에 영향을 줄 수 있는 사용자 필터는 사용하지 마십시오."> +<!ENTITY update.inProgress.description "아직 해결되지 않은 이슈로 인해 애드블록 플러스의 필터를 업데이트 해야 합니다. 잠시만 기다려 주십시오..."> +<!ENTITY sendPage.retry.label "다시 전송"> +<!ENTITY data.label "보고할 자료 (&p)"> +<!ENTITY recentReports.label "최근에 제출한 보고서"> +<!ENTITY typeWarning.description "필터 문제가 아닌 애드블록 플러스의 일반적인 문제는 [link]애드블록 플러스 포럼[/link]에 보고하는 것이 최선책입니다. 포럼에서 이미 논의된 문제를 보충하기 위해 문제 보고 마법사를 이용해야 합니다. 보고서를 확인할 수 있는 링크를 제공하지 않으면 아무도 보고를 확인할 수 없기 때문입니다. 보고서를 제출하면 자동으로 생성된 링크가 제공됩니다."> +<!ENTITY issues.disabled.description "애드블록 플러스를 사용하지 않는 상태이므로 아무것도 차단하지 않습니다."> +<!ENTITY attachExtensions.label "사용하고 있는 부가 프로그램의 목록을 보고서에 추가 (다른 부가 프로그램과 충돌이 원인인 경우) (&x)"> +<!ENTITY issues.nosubscriptions.add.label "구독 필터 추가"> +<!ENTITY issues.disabledfilters.enable.label "필터 사용"> +<!ENTITY issues.override.label "설정에는 이상이 없으며, 보고서 작성을 계속 진행함 (&c)"> +<!ENTITY issues.nosubscriptions.description "웹 사이트의 원하지 않는 광고를 자동 차단하는 구독 필터를 추가하지 않았습니다."> +<!ENTITY typeSelector.falsePositive.description "중요한 콘텐츠 누락, 웹 페이지가 잘못 표시됨, 오작동 등 차단 오류가 있으면 이 옵션을 선택하십시오. 애드블록 플러스의 사용을 임시로 중지하여 애드블록 플러스가 문제의 원인인지 먼저 확인하십시오."> +<!ENTITY typeSelector.other.label "다른 문제 (&t)"> +<!ENTITY emailComment.label "전자우편 주소를 입력할 것을 권장합니다. 만약 보고된 문제에 대해 문의해야 할 때 연락을 할 수 있기 때문입니다."> +<!ENTITY issues.whitelist.remove.label "사이트/페이지 허용 필터를 사용 중지"> +<!ENTITY outdatedSubscriptions.description "아래 필터가 적어도 2주 이상 업데이트되지 않았습니다. 보고하기 이전에 먼저 필터를 업데이트하여 주십시오. 업데이트를 하면 문제가 해결될 수도 있습니다."> +<!ENTITY dataCollector.description "필요한 자료를 수집하는 동안 잠시만 기다려주십시오."> +<!ENTITY sendButton.label "보고서 전송 (&n)"> +<!ENTITY comment.label "보고 내용 (필수 항목) : (&C)"> +<!ENTITY sendPage.errorMessage "오류 코드 "?1?"에 의해 보고 전송을 실패했습니다. 인터넷이 접속되었는지 확인한 후 다시 시도하십시오. 만약 문제가 계속해서 발생한다면 [link]애드블록 플러스 포럼[/link]에 도움을 요청하십시오."> +<!ENTITY showRecentReports.label "최근에 제출한 보고서 보기"> +<!ENTITY commentPage.heading "보고 내용 입력"> +<!ENTITY update.start.label "지금 업데이트 시작하기"> +<!ENTITY issues.disabledfilters.description "다음 필터는 사용하지 않지만 현재 페이지에 영향을 줄 수 있습니다."> +<!ENTITY screenshot.description "같은 페이지도 다른 사람들에게는 다르게 보일 수 있습니다. 그래서 보고서에 화면 갈무리을 첨부하면 문제를 이해하는데 도움이 됩니다. 문제 영역을 부각하기 위해 페이지 이미지에 표시를 하고, 민감한 정보 영역은 숨길 수 있습니다. 원하는 버튼을 누르고, 이미지에 마우스로 영역을 표시하십시오."> +<!ENTITY screenshot.attach.label "보고서에 페이지 이미지 첨부 (&t)"> +<!ENTITY issues.whitelist.description "현재 페이지에 허용 필터를 적용하여 콘텐츠가 차단되지 않았습니다. 현재 페이지에 적용된 허용 필터의 사용을 중지한 상태에서 웹 페이지를 다시 불러오십시오."> +<!ENTITY typeSelector.falseNegative.label "애드블록 플러스가 광고를 차단 안 함 (&v)"> +<!ENTITY typeSelector.heading "문제 유형 선택"> +<!ENTITY anonymity.warning "우리가 당신에 게 돌아올 수 없을 고 가능성이 보고서 낮은 우선 순위를 지정 합니다."> +<!ENTITY wizard.title "문제 보고 마법사"> +<!ENTITY issues.ownfilters.disable.label "필터 사용 중지"> +<!ENTITY commentPage.description "모든 언어로 입력 가능 + 페이지 전체 URL : 평소 사용하거나 설명하기 쉬운 언어로 보고할 내용을 입력하십시오. 그런 후 주소 표시줄의 페이지 전체 URL을 복사해 입력한 내용 아래에 반드시 붙여넣으십시오."> +<!ENTITY comment.lengthWarning "설명의 길이가 1000자를 초과하여 1000자까지만 전송됩니다."> +<!ENTITY typeSelector.falseNegative.description "애드블록 플러스를 사용함에도 불구하고 광고가 보이면 이 옵션을 선택하십시오."> +<!ENTITY sendPage.waitMessage "보고서를 제출하는 동안 잠시만 기다려주십시오."> +<!ENTITY dataCollector.heading "문제 보고 마법사를 이용해주셔서 고맙습니다!"> +<!ENTITY screenshot.heading "화면 갈무리 첨부"> +<!ENTITY sendPage.heading "보고서 전송"> +<!ENTITY issues.subscriptionCount.description "너무 많은 구독 필터를 구독하고 있습니다. 이 설정은 더 많은 문제를 발생시킬 수 있기 때문에 권장하지 않습니다. 또한 필요한 조치를 취할 구독 필터 유지자가 명확하지 않기 때문에 이 문제 보고를 받아들일 수 없습니다. 실제로 필요한 구독 필터를 제외한 모든 구독 필터를 제거하고, 그런 후에도 문제가 발생하는지를 테스트하십시오."> +<!ENTITY screenshot.mark.label "문제 영역 표시 (&M)"> +<!ENTITY privacyPolicy.label "개인 정보 보호 정책"> +<!ENTITY issues.description "이 문제에 영향을 줄 수 있는 설정 또는 자료 조사를 어렵게 하는 요인을 탐지했습니다."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/sidebar.dtd new file mode 100644 index 0000000..48d280d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "항목 위치 확인"> +<!ENTITY address.label "주소"> +<!ENTITY context.open.label "새 탭으로 열기"> +<!ENTITY type.label "형식"> +<!ENTITY tooltip.filterSource.label "필터 그룹 :"> +<!ENTITY noitems.label "차단 가능한 항목 없음"> +<!ENTITY filter.label "필터"> +<!ENTITY tooltip.size.label "크기 :"> +<!ENTITY reattach.label "통합"> +<!ENTITY search.label "검색 (&S)"> +<!ENTITY docDomain.thirdParty "(외부 요청)"> +<!ENTITY filterSource.label "필터 위치"> +<!ENTITY tooltip.docDomain.label "문서 위치 :"> +<!ENTITY context.copy.label "주소 복사"> +<!ENTITY tooltip.type.label "형식 :"> +<!ENTITY context.disablefilter.label "필터 사용 중지 : ?1?"> +<!ENTITY context.copyFilter.label "필터 복사"> +<!ENTITY context.block.label "차단 필터 추가"> +<!ENTITY context.enablefilter.label "필터 다시 사용 : ?1?"> +<!ENTITY detach.label "분리"> +<!ENTITY whitelisted.label "허용된 페이지"> +<!ENTITY context.disablefilteronsite.label "지정된 도메인에만 적용 중지 : ?1?"> +<!ENTITY detached.title "차단 가능 목록 (분리됨)"> +<!ENTITY docDomain.firstParty "(내부 요청)"> +<!ENTITY tooltip.type.whitelisted "(허용됨)"> +<!ENTITY tooltip.filter.label "필터 :"> +<!ENTITY tooltip.filter.disabled "(사용 중지)"> +<!ENTITY context.editfilter.label "필터 편집"> +<!ENTITY tooltip.type.blocked "(차단됨)"> +<!ENTITY size.label "크기"> +<!ENTITY context.whitelist.label "허용 필터 추가"> +<!ENTITY context.selectAll.label "모두 선택"> +<!ENTITY state.label "상태"> +<!ENTITY docDomain.label "문서 위치"> +<!ENTITY tooltip.address.label "주소 :"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/subscriptionSelection.dtd new file mode 100644 index 0000000..2374e0d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ko/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label ""?1?" 구독 필터도 함께 추가 (&s)"> +<!ENTITY list.download.failed "구독 필터 목록의 검색 실패"> +<!ENTITY list.download.retry "다시 시도"> +<!ENTITY title.label "이름 (&T)"> +<!ENTITY list.download.website "웹 사이트"> +<!ENTITY supplementMessage "선택한 구독 필터는 "?1?"와(과) 함께 추가할 것을 권장합니다."> +<!ENTITY viewList.label "필터 목록 보기"> +<!ENTITY visitHomepage.label "홈페이지"> +<!ENTITY addSubscription.label "추가"> +<!ENTITY dialog.title "구독 필터 추가"> +<!ENTITY location.label "위치 (&L)"> +<!ENTITY fromWeb.description "추가하려는 구독 필터인지 확인하십시오. 추가하기 전에 이름 또는 위치를 변경할 수 있습니다."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/composer.dtd new file mode 100644 index 0000000..13efa60 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "adreso &pabaigoje"> +<!ENTITY domainRestriction.label "Apribojimai &domenui:"> +<!ENTITY collapse.default.no.label "Naudoti numatytą (ne)"> +<!ENTITY firstParty.label "Tik &pagrindinių"> +<!ENTITY preferences.label "&Rodyti esamus filtrus..."> +<!ENTITY pattern.label "Ieškoti atitikmens"> +<!ENTITY thirdParty.label "&Tik trečiųjų šalių"> +<!ENTITY filter.label "Naujas &filtras:"> +<!ENTITY collapse.label "&Suskleisti užblokuotus:"> +<!ENTITY match.warning "Atitikmuo kurį įvedėte nebeatitinka adreso kurį reikia įdėti į baltąjį/juodąjį sąrašą todėl jis nebeturės jokio efekto."> +<!ENTITY anchor.start.label "a&dreso pradžioje"> +<!ENTITY matchCase.label "&Skirti didžiąsias ir mažąsias raides"> +<!ENTITY custom.pattern.label "&Pasirinktas:"> +<!ENTITY unselectAllTypes.label "Nieko nepasirinkti"> +<!ENTITY type.whitelist.label "I&šimties taisyklė"> +<!ENTITY regexp.warning "Atitikmuo kurį įvedėte bus interpretuojamas kaip reguliarioji išraiška, Adblock Plus negali jo efektyviai pritaikyti, todėl gali sulėtėti naršymas. Jei nenorėjote naudoti reguliariųjų išraiškų, atitikmens pabaigoje pridėkite žvaigždutę (*)."> +<!ENTITY dialog.title "Pridėti Adblock Plus filtravimo taisyklę"> +<!ENTITY basic.label "Paprastas konfigūravimas"> +<!ENTITY type.filter.label "&Blokavimo filtrai"> +<!ENTITY types.label "Pritaikyti tipams:"> +<!ENTITY shortpattern.warning "Atitikmuo kurį įvedėte yra per trumpas, kad būtų galima optimizuoti ir gali sulėtinti naršymą. Rekomenduojama šiam filtrui pasirinkti ilgesnę eilutę, kad Adblock Plus galėtų efektyviau išnaudoti šį filtrą."> +<!ENTITY collapse.yes.label "Taip"> +<!ENTITY anchors.label "Priimti tik atitikmenį:"> +<!ENTITY collapse.default.yes.label "Naudoti numatytą (taip)"> +<!ENTITY domainRestriction.help "Naudokite šią pasirinkty nurodyti vieną ar kelis domenus atskirtus |. Filtras bus pritaikytas tik pasirinktiems domenams. ~ prieš domeną parodo jog filtras nebus pritaikytas tam domenui."> +<!ENTITY accept.label "Pridėti filtrą"> +<!ENTITY options.label "Parinktys"> +<!ENTITY disabled.warning "Adblock Plus šiuo metu yra išjungtas. Vistiek galite pridėti filtrus, bet jie neveiks kol [link]neįjungsite Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "&domeno pradžioje"> +<!ENTITY collapse.no.label "Ne"> +<!ENTITY selectAllTypes.label "Pasirinkti visus"> +<!ENTITY advanced.label "Sudėtingesnis konfigūravimas"> +<!ENTITY pattern.explanation "Atitikmuo gali būti betkuri adreso dalis; žvaigždutė (*) veiks kaip „wildcards“. Filtras bus pritaikytas tik tuo atveju jei adrese bus rastas atitikmuo."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/filters.dtd new file mode 100644 index 0000000..630e8cc --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Visi jūsų pasirinktiniai filtrai bus pakeisti pasirinkto failo turiniu. Ar norite tęsti?"> +<!ENTITY slow.column "&Lėti filtrai"> +<!ENTITY enabled.column "Įju&ngta"> +<!ENTITY subscription.lastDownload.checksumMismatch "Nepavyko, bloga kontrolinė suma"> +<!ENTITY noFiltersInGroup.text "Pasirinkta grupė yra tuščia"> +<!ENTITY subscription.actions.label "Veiksmai"> +<!ENTITY filter.selectAll.label "Pasirinkti visas"> +<!ENTITY backupButton.label "&Atsarginių kopijų kūrimas ir atkūrimas"> +<!ENTITY restore.minVersion.warning "Įspėjimas: failas sukurtas naudojant naujesnę Adblock Plus versiją. Prieš atstatant iš šio failo, turėtumėte atnaujinti savo Adblock Plus iki naujausios versijos."> +<!ENTITY restore.error "Neįmanoma panaudoti failo duomenų, gal tai ne Adblock PLus atsarginės kopijos failas?"> +<!ENTITY sort.ascending.label "Riki&avimo tvarka „A > Z“"> +<!ENTITY sort.label "&Rikiuoti pagal"> +<!ENTITY subscription.source.label "Filtrų sąrašas"> +<!ENTITY hitcount.column "&Blokavimai"> +<!ENTITY noFilters.text "Kol kas jūs neturite jokių pasirinktinių filtrų."> +<!ENTITY backup.custom.title "Tik pasirinktiniai filtrai"> +<!ENTITY subscription.external.label "Atnaujino kitas plėtinys"> +<!ENTITY subscription.delete.label "Ištrinti"> +<!ENTITY noGroupSelected.text "Jūs turite pasirinkti filtrų grupę, tik tada bus galima parodyti tos grupės filtrus."> +<!ENTITY filter.cut.label "Iškirpti"> +<!ENTITY restore.default.label "Atstatyti atsarginę kopiją iš ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Atsiunčiama..."> +<!ENTITY subscriptions.tab.label "Filtrų prenumeratos"> +<!ENTITY sort.descending.label "Rikiavimo tvarka „&Z > A“"> +<!ENTITY filters.remove.warning "Ar tikrai norite pašalinti visus pasirinktus filtrus?"> +<!ENTITY filter.delete.label "Pašalinti"> +<!ENTITY addSubscriptionAdd.label "Pridėti"> +<!ENTITY viewMenu.label "Rodymas"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Atšaukti"> +<!ENTITY subscription.enabled.label "Įjungta"> +<!ENTITY noSubscriptions.text "Kol kas jūs nepridėjote jokių filtrų prenumeratų. Be filtrų Adblock Plus nieko neblokuos, +norėdami pridėti kelis naudokite +"Pridėti filtrų prenumeratą"."> +<!ENTITY subscription.update.label "Atnaujinti filtrus"> +<!ENTITY dialog.title "Adblock Plus filtrų nustatymai"> +<!ENTITY addFilter.label "Pri&dėti filtrą"> +<!ENTITY subscription.minVersion.warning "Ši filtrų prenumerata reikalauja naujesnės Adblock Plus versijos, turėtume atsinaujinti savo Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Nepavyko, netinkamas adresas"> +<!ENTITY backup.error "Įvyko klaida rašant filtrus į failą. Įsitikinkite jog tas failas neapsaugotas nuo rašymo ir jo nenaudoja kita programa."> +<!ENTITY filter.moveUp.label "Pakelti aukštyn"> +<!ENTITY addGroup.label "Pridėti filtrų &grupę"> +<!ENTITY filter.edit.label "Keisti"> +<!ENTITY subscription.showHideFilters.label "Rodyti/slėpti filtrų taisykles"> +<!ENTITY acceptableAds2.label "Leisti &neįkyrias reklamas"> +<!ENTITY addSubscriptionOther.label "Pridėti kitą prenumeratą"> +<!ENTITY close.label "Užverti"> +<!ENTITY sort.none.label "&Nerikiuojama"> +<!ENTITY filter.actions.label "Filtro veiksmai"> +<!ENTITY filter.copy.label "Kopijuoti"> +<!ENTITY filter.moveDown.label "Perkelti žemyn"> +<!ENTITY filter.resetHitCounts.label "Atstatyti blokavimų statistiką"> +<!ENTITY readMore.label "Plačiau"> +<!ENTITY subscription.moveUp.label "Pakelti aukštyn"> +<!ENTITY addSubscription.label "&Pridėti filtro prenumeratą"> +<!ENTITY subscription.homepage.label "Namų puslapis"> +<!ENTITY backup.complete.title "Visi filtrai ir prenumeratos"> +<!ENTITY restore.own.label "Atstatyti savo atsarginę kopiją"> +<!ENTITY restore.complete.warning "Visi jūsų filtrų nustatymai bus pakeisti pasirinkto failo turiniu. Ar norite tęsti?"> +<!ENTITY filters.tab.label "Pasirinktiniai filtrai"> +<!ENTITY backup.label "Sukurti naują atsarginę kopiją"> +<!ENTITY find.label "Ra&sti"> +<!ENTITY subscription.moveDown.label "Perkelti žemyn"> +<!ENTITY subscription.lastDownload.connectionError "Nepavyko, atsiuntimo klaida"> +<!ENTITY subscription.lastDownload.success "Sėkmingai"> +<!ENTITY subscription.lastDownload.invalidData "Nepavyko, netinkamas filtrų sąrašas"> +<!ENTITY filter.paste.label "Įdėti"> +<!ENTITY subscription.disabledFilters.enable "Įjungti išjungtus filtrus"> +<!ENTITY lasthit.column "Paskutinis b&lokavimas"> +<!ENTITY subscription.editTitle.label "Pervadinti"> +<!ENTITY subscription.disabledFilters.warning "Kai kurie filtrai, šioje prenumeratoje, išjungti."> +<!ENTITY filter.column "Filtro &taisyklė"> +<!ENTITY subscription.lastDownload.label "Paskutinis atsiuntimas:"> +<!ENTITY viewList.label "Peržiūrėti sąrašą"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/firstRun.properties new file mode 100644 index 0000000..18f17b1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Išjunkite sekimą ir paverskite savo naršymą privačiu - paslėpkite savo pėdsakus nuo reklamos įmonių kurios galbūt seka kiekvieną jūsų žingsnį. +firstRun_toggle_off=IŠJ. +firstRun_feature_tracking=Išjungti sekimą +firstRun_feature_malware=Kenkėjiškų programų blokavimas +firstRun_title=AdBlock Plus sėkmingai įdiegta +firstRun_acceptableAdsExplanation=Mes norėtume paskatinti svetaines naudoti paprastas, nekrentančias į akis reklamas. Todėl nustatėme <a>griežtas gaires</a> priimtinų reklamų nustatymui, jos bus rodomos pagal nutylėjimą. Jei vis tiek norite visas reklamas galite <a>išjungti</a> šią galimybę per kelias sekundes. +firstRun_toggle_on=Įj. +firstRun_contributor_credits=Padėkos prisidėjusiems +firstRun_dataCorruptionWarning=Ar šis puslapis pastoviai rodomas? <a>Paspauskite čia</a> +firstRun_acceptableAdsHeadline=Nuo šiol erzinančios reklamos bus užblokuotos +firstRun_share=Papasakokite savo draugams +firstRun_share_headline=<a>Padėkite mums</a> paversti internetą geresne vieta +firstRun_features=Adblock Plus gali daugiau nei tik blokuoti reklamas +firstRun_feature_malware_description=Padarykite savo naršymą saugesniu užblokuodami žinomas kenkėjiškas svetaines. +firstRun_feature_social_description=Automatiškai pašalinkite socialinių tinklų mygtukus, tokius kaip „Facebook Like“, kurie seka jūsų elgesį. +firstRun_donate=paaukoti +firstRun_donate_label=Paremkite mūsų projektą +firstRun_feature_social=Pašalinti socialinių puslapių mygtukus +firstRun_legacySafariWarning=Jūs naudojate seną Safari versiją, kurios Adblock Plus nepalaiko. Adblock plus gali veikti netinkamai ar sukelti problemų. Rekomenduojame naudoti Safari 6.1.1 ar naujesnę versiją (prieinama Mac OS X 10.9 Mavericks) arba naudokite naujausią Mozilla Firefox, Google Chrome ar Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/global.properties new file mode 100644 index 0000000..8480dda --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Šiame puslapyje nėra jokių blokuojamų elementų +action3_tooltip=Spragtelėkite, norėdami įjungti/išjungti „Adblock Plus“. +notification_antiadblock_title=Paslėpti tikslinius pranešimus? +type_label_script=scenarijus +filter_elemhide_nocriteria=Nėra kriterijaus pagal kurį galima būtų nuspręsti kurį elementą paslėpti +blockingGroup_title=Reklamų blokavimo taisyklės +whitelisted_tooltip=„Adblock Plus“ aktyvus, bet išjungtas dabartiniam tinklalapiui. +type_label_stylesheet=stilius +blocked_count_tooltip=?1? iš ?2? +type_label_font=šriftas +type_label_popup=iššokantis langas +filter_regexp_tooltip=Šis filtras yra reguliarioji išraiška arba per trumpas, kad būtų galima optimizuoti. Jei yra daug tokių filtrų jie gali sulėtinti naršymą. +action0_tooltip=Spragtelėkite, norėdami iškviesti kontekstinį meniu; spragtelėkite viduriniuoju klavišu norėdami įjungti/išjungti. +whitelisted_page=„Adblock Plus“ yra išjungtas dabartiniam tinklalapiui +remove_group_warning=Ar tikrai norite pašalinti šią grupę? +action1_tooltip=Spragtelėkite, norėdami atverti/užverti blokuojamus elementus; spragtelėkite viduriniuoju klavišu norėdami įjungti/išjungti. +type_label_xmlhttprequest=XML užklausa +active_tooltip=Adblock Plus įjungtas, naudojamos ?1? filtrų prenumeratos ir ?2? pasirinktiniai filtrai. +type_label_document=dokumentas +type_label_object_subrequest=papildoma objekto užklausa +whitelistGroup_title=Išimčių taisyklės +disabled_tooltip=„Adblock Plus“ išjungtas. +filter_elemhide_duplicate_id=Gali būti nurodytas tik vienas elemento ID kurį reikia paslėpti +type_label_object=objektas +action2_tooltip=Spragtelėkite, norėdami atverti nustatymus; spragtelėkite viduriniuoju klavišu norėdami įjungti/išjungti. +type_label_subdocument=kadras +clearStats_warning=Bus atstatyta visų filtrų blokavimų statistika ir išjungtas blokavimų skaičiavimas. Ar norite tęsti? +notification_antiadblock_message=Šioje svetainėje rodomi tiksliniai pranešimai Adblock Plus naudotojams. Ar norite jog Adblock Plus paslėptų tikslinius pranešimus? +blocked_count_addendum=(baltajame sąraše: ?1?, paslėpta: ?2?) +subscription_invalid_location=Filtrų sąrašo adresas nėra taisyklingas URL ar failo vardas. +type_label_image=paveikslėlis +remove_subscription_warning=Ar tikrai norite atsisakyti šios prenumeratos? +type_label_other=kita +mobile_menu_enable=ABP: Įjungti +type_label_media=audio/video +mobile_menu_disable_site=ABP: Išjungti ?1? +elemhideGroup_title=Elementų slėpimo taisyklės +mobile_menu_enable_site=ABP: Įjungti ?1? +type_label_elemhide=paslėpta +newGroup_title=Nauja filtrų grupė +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/overlay.dtd new file mode 100644 index 0000000..8e2f332 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Taip"> +<!ENTITY notification.button.no "&Ne"> +<!ENTITY sync.label "Adblo&ck Plus Sync nustatymai"> +<!ENTITY whitelist.site.label "Išjungti ?1?"> +<!ENTITY filters.label "&Filtrų nustatymai"> +<!ENTITY disable.label "Išjungti visur"> +<!ENTITY objecttab.title "Blokuoti"> +<!ENTITY objecttab.tooltip "Spragtelėkite čia norėdami užblokuoti šį objektą su „Adblock Plus“"> +<!ENTITY menuitem.label "„&Adblock Plus“ nustatymai"> +<!ENTITY objecttabs.label "Rodyti korteles &Flash ir Java elementams"> +<!ENTITY sendReport.label "P&ranešti apie problemą šiame puslapyje"> +<!ENTITY whitelist.page.label "Išjungti šiam tinklalapiui"> +<!ENTITY context.image.label "„Adblock Plus“: Blokuoti paveikslėlį"> +<!ENTITY counthits.label "Sus&kaičiuoti filtro blokavimus"> +<!ENTITY opensidebar.label "Atverti &blokuojamus elementus"> +<!ENTITY notification.button.close "&Uždaryti"> +<!ENTITY contribute.label "Prisidėti prie Adblock Plus"> +<!ENTITY toolbarbutton.label "„Adblock Plus“"> +<!ENTITY context.frame.label "„Adblock Plus“: Blokuoti kadrą"> +<!ENTITY blocked.tooltip "Šiame tinklalapyje užblokuoti elementai:"> +<!ENTITY hideplaceholders.label "S&lėpti užblokuotų elementų vietos laikiklius"> +<!ENTITY showinstatusbar.label "Rodyti &būsenos juostoje"> +<!ENTITY sidebar.title "Blokuojami elementai dabartiniame tinklalapyje"> +<!ENTITY options.label "&Pasirinktys"> +<!ENTITY context.object.label "„Adblock Plus“: Blokuoti objektą"> +<!ENTITY context.removeWhitelist.label "„Adblock Plus“: iš naujo įjungti šiame puslapyje"> +<!ENTITY filters.tooltip "Aktyviausi filtrai:"> +<!ENTITY closesidebar.label "Užverti &blokuojamus elementus"> +<!ENTITY showintoolbar.label "&Rodyti priemonių juostoje"> +<!ENTITY status.tooltip "Būsena:"> +<!ENTITY context.media.label "„Adblock Plus“: Blokuoti audio/video"> +<!ENTITY subscription.update.label "Atnaujinti filtrus"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/sendReport.dtd new file mode 100644 index 0000000..9a832cd --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/sendReport.dtd @@ -0,0 +1,96 @@ +<!ENTITY screenshot.undo.label "&Atšaukti"> +<!ENTITY issues.disabledgroups.description "Šios filtrų prenumeratos / filtrų grupės yra išjungtos, nors jos gali +turėti įtakos šiam puslapiui:"> +<!ENTITY showData.label "Rodyti pranešimo duomenis"> +<!ENTITY typeSelector.falsePositive.label "A&dblock Plus blokuoja per daug"> +<!ENTITY issues.change.description "Jūsų konfigūracija pakeista. Perkraukite puslapį ir išbandykite keitimus +ir jei problema neišsisprendė praneškite apie ją."> +<!ENTITY email.label "El. paš&tas:"> +<!ENTITY issues.openPreferences.label "Atverti filtro nustatymus"> +<!ENTITY sendPage.confirmation "Jūsų pranešimas išsaugotas. Jį pasiekti galite šiuo adresu:"> +<!ENTITY copyLink.label "&Kopijuoti pranešimo nuorodą"> +<!ENTITY issues.nofilters.description "Adblock Plus dabartiniame puslapyje nieko neblokuoja. Problema kurią matote +tikriausiai nėra susijusi su Adblock Plus."> +<!ENTITY sendPage.knownIssue "Pranešta klaida turbūt žinoma. Daugiau informacijos:"> +<!ENTITY typeSelector.other.description "Pasirinkite šią pasirinkty jei manote jog tai pačio Adblock Plus bėda, o ne filtrų."> +<!ENTITY issues.disabledgroups.enable.label "Įjungti filtro prenumeratą / filtrų grupę"> +<!ENTITY typeWarning.override.label "&Aš suprantu ir vistiek noriu pranešti"> +<!ENTITY issues.disabled.enable.label "Įjungti Adblock Plus"> +<!ENTITY update.fixed.description "Atnaujinimai greičiausiai išsprendė bėdą apie kurią jūs norėjote pranešti. Įkraukite puslapį iš naujo, jei problema vis dar yra paspauskite „Pranešti“."> +<!ENTITY anonymous.label "&Anoniminis pranešimas"> +<!ENTITY reloadButton.label "&Įkelti iš naujo"> +<!ENTITY recentReports.clear.label "&Pašalinti visus pranešimus"> +<!ENTITY typeSelector.description "Šis langas padės įvykdyti kelis žingsnius kurie reikalingi pranešti apie Adblock Plus +problemą. Pirmiausia, šiame puslapyje, pasirinkite problemos su kuria susidūrėte +tipą:"> +<!ENTITY screenshot.remove.label "&Pašalinti neviešus duomenis"> +<!ENTITY issues.ownfilters.description "Kai kurie filtrai pritaikyti šiam puslapiui yra sukurti naudotojo. Išjunkite +filtrus kurie galėjo sukelti problemą:"> +<!ENTITY update.inProgress.description "Adblock Plus turi atnaujinti jūsų filtrų prenumeratas ir įsitikinti jog problema dar neišspręsta. Palaukite..."> +<!ENTITY sendPage.retry.label "Siųsti dar kartą"> +<!ENTITY data.label "Praneš&imo duomenys:"> +<!ENTITY recentReports.label "Jūsų nesenai praneštos problemos"> +<!ENTITY typeWarning.description "Jūs pareiškėte jog problemą sukėlė Adblock Plus, o ne filtrai. +Turėkite omeny jog tokias problemas geriausia pranešti +[link]Adblock Plus forume[/link]. Šį problemų pranešėją turėtumėte naudoti +tik papildyti esamas diskusijas, niekas nepastebės jūsų pranešimo +nebent duosite nuorodą į jį. Automatiškai sukurta nuoroda +bus parodyta kai išsiųsite pranešimą."> +<!ENTITY issues.disabled.description "Adblock Plus yra išjungtas, tokioje būsenoje jis nieko neužblokuos."> +<!ENTITY attachExtensions.label "Prie pranešimo pri&segti aktyvių plėtinių sąrašą, jei kartais problema kilo dėl plėtinių nesuderinamumo"> +<!ENTITY issues.nosubscriptions.add.label "Pridėti filtro prenumeratą"> +<!ENTITY issues.disabledfilters.enable.label "Įjungti filtrą"> +<!ENTITY issues.override.label "Konfi&gūracija teisinga, tęskite su pranešimu"> +<!ENTITY issues.nosubscriptions.description "Atrodo jūs neprenumeruojate jokių sukurtų filtrų sąrašų kurie automatiškai +šalintų nepageidaujamą turinį iš puslapių."> +<!ENTITY typeSelector.falsePositive.description "Pasirinkite šią pasirinkty jei puslapyje trūksta svarbaus turinio, jei atvaizduojama netinkamai ar +puslapis nefunkcionuoja taip kaip turėtų. Norėdami įsitikinti jog problemą sukėlė Adblock Plus galite +trumpam išjungti Adblock Plus."> +<!ENTITY typeSelector.other.label "Ki&ta bėda"> +<!ENTITY emailComment.label "Mes raginame įvesti veikiantį el. pašto adresą, tada jei turėsime klausimų galėsime jums juos užduoti. Taipogi tai padės atpažinti jūsų pranešimus ir suteikti jiems aukštesnį prioritetą."> +<!ENTITY issues.whitelist.remove.label "Šiame puslapyje pakartotinai įjungti Adblock Plus"> +<!ENTITY outdatedSubscriptions.description "Šios filtrų prenumeratos nebuvo atnaujintos bent dvi savaites. Prieš siųsdami pranešimą atnaujinkite šias prenumeratas, gali būti jog problema jau išspręsta."> +<!ENTITY dataCollector.description "Palaukite kelias akimirkas, kol Adblock Plus surinks reikalingus duomenis."> +<!ENTITY sendButton.label "Siųsti p&ranešimą"> +<!ENTITY comment.label "&Komentaras (nebūtinas):"> +<!ENTITY sendPage.errorMessage "Bandymas išsiųsti pranešimą nepavyko, buvo gauta klaida "?1?". Įsitikinkite jog +esate prisijungę prie interneto ir bandykite dar kartą. Jei problema vis dar yra paprašykite +pagalbos forume [link]Adblock Plus forumas[/link]."> +<!ENTITY showRecentReports.label "Rodyti nesenai praneštas problemas"> +<!ENTITY commentPage.heading "Parašykite komentarą"> +<!ENTITY update.start.label "Pradėti atnaujinimą"> +<!ENTITY issues.disabledfilters.description "Šie filtrai yra išjungti, nors jie gali turėti įtakos šiam puslapiui:"> +<!ENTITY screenshot.description "Tas pats puslapis skirtingiems žmonėms, atrodo skirtingai. Mums gali padėti +prisegtas ekrano vaizdas. Jūs galite pašalinti sritis kuriose +gali būti neviešos informacijos, taip pat ir tas kuriose +nesimato problemos. Norint tai padaryti paspauskite atitinkamą mygtuką ir pasirinkite +reikalingą paveiksliuko dalį su pele."> +<!ENTITY screenshot.attach.label "P&rie pranešimo pridėti puslapio vaizdą"> +<!ENTITY issues.whitelist.description "Šiuo metu, šiame puslapyje Adblock Plus yra išjungtas. Prašau įjungti jį +ir perkrauti puslapį prieš pranešant apie problemą kuriai +spręsti norite pagalbos."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus neblokuoja &reklamų"> +<!ENTITY typeSelector.heading "Pasirinkite tipą"> +<!ENTITY anonymity.warning "Mes negalėsime grįžti prie jūsų ir greičiausiai jūsų ataskaitai bus priskirtas žemas prioritetas."> +<!ENTITY wizard.title "Klaidos pranešimas"> +<!ENTITY issues.ownfilters.disable.label "Išjungti filtrą"> +<!ENTITY commentPage.description "Teksto įvedimo laukelis leidžia jums įvesti komentarą kuris mums padės suprasti jūsų problemą. +Šis žingsnis nebūtinas, bet rekomenduojamas jei problema neaiški. +Taipogi galite peržiūrėti pranešimą prieš jį siunčiant."> +<!ENTITY comment.lengthWarning "Jūsų komentaras ilgesnis nei 1000 simbolių. Bus išsiųsti tik pirmi 1000 simbolių."> +<!ENTITY typeSelector.falseNegative.description "Pasirinkite šią pasirinkty jei reklama rodoma, net ir +įjungus Adblock Plus."> +<!ENTITY sendPage.waitMessage "Palaukite kol Adblock Plus siunčia jūsų pranešimą."> +<!ENTITY dataCollector.heading "Sveiki atvykę į klaidų pranešėją"> +<!ENTITY screenshot.heading "Pridėti ekranvaizdį"> +<!ENTITY sendPage.heading "Siųsti pranešimą"> +<!ENTITY issues.subscriptionCount.description "Atrodo jūs prenumeruojate perdaug filtrų prenumeratų. Tokie nustatymai +rekomenduojami, nes tai sumažins problemų tikimybes. +Taipogi mes negalime priimti jūsų pranešimo, nes +neaišku kurio filtro autorius turėtų imtis veiksmų. Prašome +pašalinti visus tikrai reikalingas filtrų prenumeratas ir +patikrinti ar problema vis dar yra."> +<!ENTITY screenshot.mark.label "Paž&ymėti problemą"> +<!ENTITY privacyPolicy.label "Privatumo politika"> +<!ENTITY issues.description "Adblock Plus nustatė klaidų jūsų konfigūracijoje kurios gali būti atsakingos +dėl šios problemos arba gali apsunkinti problemų sprendimą."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/sidebar.dtd new file mode 100644 index 0000000..4649d2e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Paryškinti elemento rėmelį"> +<!ENTITY address.label "Adresas"> +<!ENTITY context.open.label "Atverti naujoje kortelėje"> +<!ENTITY type.label "Tipas"> +<!ENTITY tooltip.filterSource.label "Filtro šaltinis:"> +<!ENTITY noitems.label "Nėra blokuojamų elementų"> +<!ENTITY filter.label "Filtras"> +<!ENTITY tooltip.size.label "Dydis:"> +<!ENTITY reattach.label "Iš naujo įkelti"> +<!ENTITY search.label "&Ieškoti:"> +<!ENTITY docDomain.thirdParty "(trečioji šalis)"> +<!ENTITY filterSource.label "Filtruoti pirminį kodą"> +<!ENTITY tooltip.docDomain.label "Dokumento šaltinis:"> +<!ENTITY context.copy.label "Kopijuoti elemento adresą"> +<!ENTITY tooltip.type.label "Tipas:"> +<!ENTITY context.disablefilter.label "Išjungti filtrą ?1?"> +<!ENTITY context.copyFilter.label "Kopijuoti filtrą"> +<!ENTITY context.block.label "Blokuoti šį elementą"> +<!ENTITY context.enablefilter.label "Iš naujo įjungti filtrą ?1?"> +<!ENTITY detach.label "Iškelti"> +<!ENTITY whitelisted.label "Tinklalapis įtrauktas į išimtis"> +<!ENTITY context.disablefilteronsite.label "Išjungti šį filtrą tinklalapiui ?1?"> +<!ENTITY detached.title "„Adblock Plus“ blokuojami elementai (iškelta)"> +<!ENTITY docDomain.firstParty "(pagrindinis)"> +<!ENTITY tooltip.type.whitelisted "(įtraukta į išimtis)"> +<!ENTITY tooltip.filter.label "Galiojantys filtrai:"> +<!ENTITY tooltip.filter.disabled "(išjungta)"> +<!ENTITY context.editfilter.label "Redaguoti aktyvų filtrą"> +<!ENTITY tooltip.type.blocked "(užblokuota)"> +<!ENTITY size.label "Dydis"> +<!ENTITY context.whitelist.label "Pridėti išimties taisyklę šiam elementui"> +<!ENTITY context.selectAll.label "Pažymėti viską"> +<!ENTITY state.label "Būsena"> +<!ENTITY docDomain.label "Dokumento šaltinis"> +<!ENTITY tooltip.address.label "Adresas:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/subscriptionSelection.dtd new file mode 100644 index 0000000..dfcc0f7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lt/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "T&aip pat pridėti filtro prenumeratą "?1?""> +<!ENTITY list.download.failed "Adblock Plus nepavyko gauti prenumeratų sąrašo."> +<!ENTITY list.download.retry "Bandykite dar kartą"> +<!ENTITY title.label "&Prenumeratos pavadinimas:"> +<!ENTITY list.download.website "Rodyti tinklalapį"> +<!ENTITY supplementMessage "Ši filtrų prenumerata skirta naudoti kartu su "?1?" filtrų prenumerata, kurios jūs kol kas nenaudojate."> +<!ENTITY viewList.label "Rodyti filtrus"> +<!ENTITY visitHomepage.label "Aplankyti tinklalapį"> +<!ENTITY addSubscription.label "Pridėti prenumeratą"> +<!ENTITY dialog.title "Pridėti „Adblock Plus“ filtro prenumeratą"> +<!ENTITY location.label "Filtrų sąrašo &vieta:"> +<!ENTITY fromWeb.description "Patvirtinkite jog norite pridėti šią prenumeratą. Prieš įdedant prenumeratą jūs galite pakeisti jos pavadinimą ar vietą."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/composer.dtd new file mode 100644 index 0000000..08bd7d8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "adreses beigās"> +<!ENTITY domainRestriction.label "Ierobežot līdz domēnam:"> +<!ENTITY collapse.default.no.label "Lietot noklusēto vērtību (nē)"> +<!ENTITY firstParty.label "Tikai pirmās puses"> +<!ENTITY preferences.label "Rādīt esošos filtrus..."> +<!ENTITY pattern.label "Meklēt paraugu"> +<!ENTITY thirdParty.label "Tikai trešās puses"> +<!ENTITY filter.label "Jauns filtrs:"> +<!ENTITY collapse.label "Bloķēts sabrukums:"> +<!ENTITY match.warning "Modeli ko jus ievadijat vairs neatbilst adresei bloketiem/baltulistetiem un neizveidos nekad effektu uz ta."> +<!ENTITY anchor.start.label "adreses sākumā"> +<!ENTITY matchCase.label "Saderīgs gadījums"> +<!ENTITY custom.pattern.label "Pielāgots:"> +<!ENTITY unselectAllTypes.label "Izvēlēties nevienu"> +<!ENTITY type.whitelist.label "Izņēmuma nosacījums"> +<!ENTITY regexp.warning "Modelis kuru jūs ievadījāt tika interpretēts kā regulāra izteiksme, ko Adblock Plus nevar efektīvi apstrādāt un tas var palēnināt jūsu pārlūkošanas ātrumu. Ja jūs neplānojat izmantot regulāru izteiksmi, pievienojiet zvaigznīti (*) parauga beigās."> +<!ENTITY dialog.title "Pievienot Adblock Plus filtra nosacījumu"> +<!ENTITY basic.label "Pamata skatījums"> +<!ENTITY type.filter.label "Bloķēšanas filtrs"> +<!ENTITY types.label "Pielietot tipiem:"> +<!ENTITY shortpattern.warning "Paraugs, kuru jūs ievadījāt, ir pārāk īss, lai būtu optimizēts un tas var palēnināt jūsu pārlūkošanu. Ieteicams izvēlēties garāku virkni šim filtram, lai Adblock Plus varētu apstrādāt filtru efektīvāk."> +<!ENTITY collapse.yes.label "Jā"> +<!ENTITY anchors.label "Apstiprināt tiaki paraugus:"> +<!ENTITY collapse.default.yes.label "Lietot noklusēto vērtību (jā)"> +<!ENTITY domainRestriction.help "Izmantojiet šo opciju, lai precizētu vienu vai vairākus domēnus, atdalītus ar joslu līniju (|). Filtrs tiks attiecināts tikai uz izvēlēto domēnu(-iem). Tilde (~) pirms domēna vārda norāda, ka filtrs netiek piemērots attiecībā uz šo domēnu."> +<!ENTITY accept.label "Pievienot filtru"> +<!ENTITY options.label "Opcijas"> +<!ENTITY disabled.warning "Adblock Plus šobrīd ir atspējots. Jūs joprojām varat pievienot filtrus, bet tie netiks piemēroti tik ilgi, kamēr jūs [link]neiespējosiet Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "domēna vārda sākumā"> +<!ENTITY collapse.no.label "Nē"> +<!ENTITY selectAllTypes.label "Izvēlēties visu"> +<!ENTITY advanced.label "Paplašināts skatījums"> +<!ENTITY pattern.explanation "Paraugs var būt jebkura daļa no adreses, zvaigznīte (*) darbojas kā aizstājējzīme. Filtrs var tikt piemērots tikai adresei, kas atbilst paredzētajam modelim."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/filters.dtd new file mode 100644 index 0000000..f7c466f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Visi Jūsu pielāgotie filtri tiks aizvietori ar izvēlētā faila saturu. Vai vēlaties turpināt?"> +<!ENTITY slow.column "Lēni filtri"> +<!ENTITY enabled.column "Iespējots"> +<!ENTITY subscription.lastDownload.checksumMismatch "Neizdevās, kontrolsummas neatbilstība"> +<!ENTITY noFiltersInGroup.text "Izvēlētā grupa ir tukšsa."> +<!ENTITY subscription.actions.label "Darbības"> +<!ENTITY filter.selectAll.label "Izvēlēties visu"> +<!ENTITY backupButton.label "Dublējumkopiju izveide un atjaunošana"> +<!ENTITY restore.minVersion.warning "Brīdinājums: fails ir izveidots, izmantojot jaunāku Adblock Plus versiju. Jums nepieciešams atjaunināt Adblock Plus, pirms turpināt atjaunošanu no šī faila."> +<!ENTITY restore.error "Faila dati nevar tikt apstrādāti, varbūt tas nav Adblock Plus rezerves kopijas fails?"> +<!ENTITY sort.ascending.label "A > Z kārtošanas secība"> +<!ENTITY sort.label "Kārtot pēc"> +<!ENTITY subscription.source.label "Filtru saraksts"> +<!ENTITY hitcount.column "Klikšķi"> +<!ENTITY noFilters.text "Jums vēl nav pielagotus filtrus."> +<!ENTITY backup.custom.title "Tikai pielāgotie filtri"> +<!ENTITY subscription.external.label "Atjaunināts ar citu paplašinājumu"> +<!ENTITY subscription.delete.label "Dzēst"> +<!ENTITY noGroupSelected.text "Jums ir nepieciešams izvēlēties filtra grupu pirms tās filtrus var parādīt."> +<!ENTITY filter.cut.label "Izgriezt"> +<!ENTITY restore.default.label "Atjaunot rezerves kopiju no ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Lejupielādē..."> +<!ENTITY subscriptions.tab.label "Filtra abonementi"> +<!ENTITY sort.descending.label "Z > A kārtošanas secība"> +<!ENTITY filters.remove.warning "Vai tiešām vēlaties noņemt visus atlasītos filtrus?"> +<!ENTITY filter.delete.label "Dzēst"> +<!ENTITY addSubscriptionAdd.label "Pievienot"> +<!ENTITY viewMenu.label "Skatīt"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Atcelt"> +<!ENTITY subscription.enabled.label "Iespējota"> +<!ENTITY noSubscriptions.text "Jūs līdz šim neesat pievienojis nevienu filra abonementu. Adblock Plus neko nebloķēs bez filtriem, lūdzam lietot "Pievienot filtra abonementu", lai tos pievienotu."> +<!ENTITY subscription.update.label "Atjaunināt filtrus"> +<!ENTITY dialog.title "Adblock Plus filtra prioritātes"> +<!ENTITY addFilter.label "Pievienot Filtru"> +<!ENTITY subscription.minVersion.warning "Šo filtru abonēšanai nepieciešama jaunāka versija Adblock Plus, tadel jums vajadzētu atjaunināt ar jaunāko Adblock Plus versiju."> +<!ENTITY subscription.lastDownload.invalidURL "Neizdevās, nav derīga adrese"> +<!ENTITY backup.error "Radās kļūda, ierakstot filtrus failā. Pārliecinieties, ka fails nav aizsargāts pret ierakstu vai netiek izmantots citā lietojumprogrammā."> +<!ENTITY filter.moveUp.label "Pārvietot uz augšu"> +<!ENTITY addGroup.label "Pievienot filtra grupu"> +<!ENTITY filter.edit.label "Rediģēt"> +<!ENTITY subscription.showHideFilters.label "Rādīt/paslēpt filtrus"> +<!ENTITY acceptableAds2.label "Atļaut dažas neuzbāzīgas reklāmas"> +<!ENTITY addSubscriptionOther.label "Pievienot citu abonementu"> +<!ENTITY close.label "Aizvērt"> +<!ENTITY sort.none.label "Nesakārtots"> +<!ENTITY filter.actions.label "Filtra darbību"> +<!ENTITY filter.copy.label "Kopēt"> +<!ENTITY filter.moveDown.label "Pārvietot uz leju"> +<!ENTITY filter.resetHitCounts.label "Atiestatīt izmantojumu statistiku"> +<!ENTITY readMore.label "Lasīt vairāk"> +<!ENTITY subscription.moveUp.label "Pārvietot uz augšu"> +<!ENTITY addSubscription.label "Pievienot filtra abonēšanu"> +<!ENTITY subscription.homepage.label "Mājas lapa"> +<!ENTITY backup.complete.title "Visi filtri un abonementi"> +<!ENTITY restore.own.label "Atjaunot paša rezerves kopiju"> +<!ENTITY restore.complete.warning "Visas Jūsu filtru prioritātes tiks aizvietotas ar izvēlētā faila saturu. Vai vēlaties turpināt?"> +<!ENTITY filters.tab.label "Pielāgoti filtrus"> +<!ENTITY backup.label "Izveidot jaunu rezerves kopiju"> +<!ENTITY find.label "Meklēt"> +<!ENTITY subscription.moveDown.label "Pārvietot uz leju"> +<!ENTITY subscription.lastDownload.connectionError "Neizdevās, lejupielāde neizdevās"> +<!ENTITY subscription.lastDownload.success "Izdevās"> +<!ENTITY subscription.lastDownload.invalidData "Neizdevās, nav derīgs filtru saraksts"> +<!ENTITY filter.paste.label "Ielīmēt"> +<!ENTITY subscription.disabledFilters.enable "Iespējot atspējotie filtri"> +<!ENTITY lasthit.column "Pēdējai klikšķis"> +<!ENTITY subscription.editTitle.label "Rediģēt nosaukumu"> +<!ENTITY subscription.disabledFilters.warning "Daži filtri šo abonementu ir atspējotas."> +<!ENTITY filter.column "Filtra noteikumi"> +<!ENTITY subscription.lastDownload.label "Pēdējā lejupielāde:"> +<!ENTITY viewList.label "Skatīt sarakstu"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/firstRun.properties new file mode 100644 index 0000000..efbd94e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Pārlūkot privāti, atspējojot izsekošanu - slēpjot Jūsu pēdas no reklāmas kompānijām, kuras varētu izsekot katru Jūsu kustību. +firstRun_toggle_off=IZSLĒGTS +firstRun_feature_tracking=Atspējot izsekošanu +firstRun_feature_malware=Bloķēt ļaundabīgas programmas +firstRun_title=AdblockPlus ir uzstādīts +firstRun_acceptableAdsExplanation=Mēs vēlētos veicināt vienkāršu, neuzbāzīgu reklāmu lietošanu vietnēs. Tāpēc esam izveidojuši <a>stingras vadlīnijas</a> pieņemamo reklāmu noteikšanai, kuras parādītas noklusējuma iestatījumos. Ja Jūs joprojām vēlaties bloķēt pilnīgi visas reklāmas, Jūs varat <a>atspējot</a> šo pēc dažām sekundēm. +firstRun_toggle_on=IESLĒGTS +firstRun_contributor_credits=Ziedotāju saraksts +firstRun_dataCorruptionWarning=Vai šī lapa turpina attēloties? <a>Spied šeit!</a> +firstRun_acceptableAdsHeadline=Uzmācīgas reklāmas turpmāk tiks bloķētas +firstRun_share=Pastāsti saviem draugiem +firstRun_share_headline=<a>Palīdzi mums</a> padarīt tīklu par labāku vietu +firstRun_features=AdblockPlus var izdarīt vairāk, ne tikai bloķēt reklāmas +firstRun_feature_malware_description=Padarīt Jūsu pārlūkošanu drošāku, bloķējot zināmos ļaundabīgo programmu avotus. +firstRun_feature_social_description=Automātiski atbrīvot Jūsu pārlūkošanas procesu no tādām sociālo mediju pogām kā Facebook Live, kas parādās interneta lapās un izseko Jūsu darbību. +firstRun_donate=ziedot +firstRun_donate_label=Atbalstīt mūsu projektu +firstRun_feature_social=Noņemt sociālo mediju pogas +firstRun_legacySafariWarning=Jūs izmantojat novecojušu Safari versiju, kuru Adblock Plus neatbalsta. Tas var nedarboties pareizi vai pasliktināt lietotāja pieredzi dažās vietnēs. Mēs uzstājīgi iesakām Jums atjaunināt Safari līdz 6. vai vēl jaunākai versijai (pieejama Mac OS X 10.8 Mountain Lion un augstāk) jeb lietot Mozilla Firefox, Google Chrome vai Opera jaunākās versijas. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/global.properties new file mode 100644 index 0000000..4eb9bdf --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Pašreizējā lapā nav bloķējamu vienību +action3_tooltip=Noklikšķiniet, lai aktivizētu/deaktivizētu Adblock Plus. +notification_antiadblock_title=slēpt mērķtiecīgas ziņas? +type_label_script=skripts +filter_elemhide_nocriteria=Elementa paslēpšanai nav norādīts neviens kritērijs +blockingGroup_title=Reklāmu bloķēšanas noteikumi +whitelisted_tooltip=Pašreizējā lapā Adblock Plus ir deaktivizēts. +type_label_stylesheet=stila lapa +blocked_count_tooltip=?1? no ?2? +type_label_font=fonts +type_label_popup=uzlecošais logs +filter_regexp_tooltip=Šis filtrs ir vai nu regulārā izteiksme vai arī pārāk īss, lai tiktu optimizēts. Pārāk daudz šādu filtru var palēnināt Jūsu parlūkošanu. +action0_tooltip=Noklikšķiniet, lai parādītu konteksta izvēlni, vidējais klikšķis, lai aktivizētu/deaktivizētu. +whitelisted_page=Pašreizējā lapā Adblock Plus ir ticis deaktivizēts. +remove_group_warning=Vai tiešām vēlaties noņemt šo grupu? +action1_tooltip=Noklikšķiniet, lai atvērtu aizvērtu bloķējamās vienības, vidējais klikšķis, lai aktivizētu/deaktivizētu. +type_label_xmlhttprequest=XML pieprasījums +active_tooltip=Adblock Plus ir aktivizēts, ?1? filtru abonementi un ?2? pielāgotie filtri tiek izmantoti. +type_label_document=dokuments +type_label_object_subrequest=objekta apakš-pieprasījums +whitelistGroup_title=Izņēmuma noteikumi +disabled_tooltip=Adblock Plus ir deaktivizēts. +filter_elemhide_duplicate_id=Tikai viens paslēpjamā elementa ID drīkst tikt norādīts. +type_label_object=objekts +action2_tooltip=Noklikšķiniet, lai atvērtu iestatījumus, vidējais klikšķis, lai aktivizētu/deaktivizētu. +type_label_subdocument=rāmis +clearStats_warning=Šī darbība atiestatīs visu filtra izmantojumu statistiku un atspējos tās uzskaiti. Vai vēlaties turpināt? +notification_antiadblock_message=Šī vietne ir zināma, lai parādītu mērķtiecīgas ziņas Adblock Plus lietotājiem. Vai jūs vēlaties, Adblock Plus slēpt mērķtiecīgas ziņas? +blocked_count_addendum=(arī, baltajā sarakstā: ?1?, slēpti: ?2?) +subscription_invalid_location=Filtru saraksta atrašanās vieta nav ne derīgs URL ne arī derīgs faila nosaukums. +type_label_image=attēls +remove_subscription_warning=Vai Jūs tiešām vēlaties noņemt šo abonementu? +type_label_other=cits +mobile_menu_enable=ABP: Ieslēgts +type_label_media=audio/video +mobile_menu_disable_site=ABP: Atspējotu uz ?1? +elemhideGroup_title=Elementu paslēpšanas noteikumi +mobile_menu_enable_site=ABP: Iespējot uz ?1? +type_label_elemhide=paslēpts +newGroup_title=Jaunu filtru grupas +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/overlay.dtd new file mode 100644 index 0000000..030d111 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "& Jā"> +<!ENTITY notification.button.no "& Nē"> +<!ENTITY sync.label "Sinhronizet Adblock Plus uzstādījumus"> +<!ENTITY whitelist.site.label "Atspējot uz ?1?"> +<!ENTITY filters.label "Filtra preferences"> +<!ENTITY disable.label "Atspējot visur"> +<!ENTITY objecttab.title "Bloķēt"> +<!ENTITY objecttab.tooltip "Noklikšķiniet šeit, lai bloķētu šo objektu ar Adblock Plus"> +<!ENTITY menuitem.label "Adblock Plus Iestatījumi"> +<!ENTITY objecttabs.label "Rādī&t cilnes Flash un Java"> +<!ENTITY sendReport.label "&Ziņot par problēmām šajā lapā"> +<!ENTITY whitelist.page.label "Atspējot tikai šajā lapā"> +<!ENTITY context.image.label "Adblock Plus: Bloķēt attēlu"> +<!ENTITY counthits.label "Skaitīt filtra izmantojumus"> +<!ENTITY opensidebar.label "Atvērt bloķējamās vienības"> +<!ENTITY notification.button.close "& Aizvērt"> +<!ENTITY contribute.label "Palīdziet Adblock Plus veidošanai, tulkošanai..."> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Bloķēt rāmi"> +<!ENTITY blocked.tooltip "Bloķētās vienības šajā lapā:"> +<!ENTITY hideplaceholders.label "Noslēpt bloķēto elementu vietturus"> +<!ENTITY showinstatusbar.label "Rādīt stāvokļa joslā"> +<!ENTITY sidebar.title "Bloķējamās vienības šajā lapā"> +<!ENTITY options.label "Iespējas"> +<!ENTITY context.object.label "Adblock Plus: Bloķēt objektu"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Iespējot šajā lapā"> +<!ENTITY filters.tooltip "Visaktīvākie filtri:"> +<!ENTITY closesidebar.label "Aizvērt bloķējamās vienības"> +<!ENTITY showintoolbar.label "Rādīt rīkjoslā"> +<!ENTITY status.tooltip "Statuss:"> +<!ENTITY context.media.label "Adblock Plus: Bloķēt audio/video"> +<!ENTITY subscription.update.label "Atjaunināt filtrus"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/sendReport.dtd new file mode 100644 index 0000000..5881de0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Atsa&ukt"> +<!ENTITY issues.disabledgroups.description "Sekojošie filtru abonementi / filtru grupas ir atslēgti, tomēr tiem ir ietekme uz šo lapu:"> +<!ENTITY showData.label "Rādīt ziņojuma datus"> +<!ENTITY typeSelector.falsePositive.label "A&dblock Plus bloķē pārāk daudz"> +<!ENTITY issues.change.description "Jūsu konfigurācija ir izmanīta. Lūdzu pārlādējiet lapu, lai pārbaudītu izmaiņas un nosūtītu ziņojumu, ja izmaiņas nav novērsušas problēmu."> +<!ENTITY email.label "E-&pasts:"> +<!ENTITY issues.openPreferences.label "Atvērt filtru iestatījumus"> +<!ENTITY sendPage.confirmation "Jūsu ziņojums ir saglabāts. Jūs tam varat piekļūt sekojošajā adresē:"> +<!ENTITY copyLink.label "&Kopēt ziņojuma saiti"> +<!ENTITY issues.nofilters.description "Pašreizējā lapā Adblock Plus neko nebloķē. Problēma, ko Jūs pieredzat visticamāk ir nesaistīta ar Adblock Plus."> +<!ENTITY sendPage.knownIssue "Jūsu nosūtītais problēma iespējams jau ir zināma. Vairāk informācija:"> +<!ENTITY typeSelector.other.description "Izvēlaties šo opciju ja Jūs nojaušat problēmu ar pašu Adblock Plus nevis tā filtriem."> +<!ENTITY issues.disabledgroups.enable.label "Ievadīt filtru abonementu / filtru grupu"> +<!ENTITY typeWarning.override.label "Es saprotu un vienalga vēlos nosūtīt ziņojumu"> +<!ENTITY issues.disabled.enable.label "Iespējot Adblock Plus"> +<!ENTITY update.fixed.description "Jūsu filtru abonementu atjauninājums acīmredzot atrisināja problēmu, par kuru ziņojāt. Lūdzu, pārlādējiet lapu un mēģiniet vēlreiz. Ziņojiet atkārtoti, ja problēma saglabājas."> +<!ENTITY anonymous.label "Anonīms iesniegums"> +<!ENTITY reloadButton.label "Pār&lādēt lapu"> +<!ENTITY recentReports.clear.label "&Noņemt visus ziņojumus"> +<!ENTITY typeSelector.description "Šis log Jūs vedīs cauri nepieciešamajiem soļiem, lai nosūtītu Adblock Plus problēmu ziņojumu. Vispirms, lūdzu izvēlieties tipu problēmai, ko Jūs pieredzat šajā lapā:"> +<!ENTITY screenshot.remove.label "&Noņemt jūtīgu informāciju"> +<!ENTITY issues.ownfilters.description "Daži no šajā lapā pielietotajiem filtriem ir lietotāja izveidoti. Lūdzu atslēdziet filtrus, kas varēja izraisīt šo problēmu:"> +<!ENTITY update.inProgress.description "Adblock Plus ir nepieciešams atjaunināt filtru abonementus, lai pārliecinātos, vai jau nav atrisināts jautājums. Lūdzu, uzgaidiet..."> +<!ENTITY sendPage.retry.label "Sūtīt vēlreiz"> +<!ENTITY data.label "&Ziņojuma dati:"> +<!ENTITY recentReports.label "Jūsu nesen nosūtītie ziņojumi"> +<!ENTITY typeWarning.description "Jūs norādījāt, ka vēlaties ziņot par vispārēju Adblock Plus problēmu nevis problēmu ar filtriem. Par šādām problēmām vislabāk ir paziņot [link]Adblock Plus forumā[/link]. Šo problēmu ziņotāju vajadzētu izmantot tikai lai papildinātu esošu diskusiju, jo neviens neredzēs Jūsu ziņojumu, ja Jūs nenodrošinās viņus ar saiti uz to. Automātiski ģenerētā saite tiks nodrošināta pēc ziņojuma nosūtīšanas."> +<!ENTITY issues.disabled.description "Adblock Plus ir atspējots, pašreizējā stāvoklī tas nebloķēs neko."> +<!ENTITY attachExtensions.label "Pievienot ziņojumam sarakstu ar aktīviem papil&dinājumiem, gadījumā, ja kāds papildinājums izraisa problēmu"> +<!ENTITY issues.nosubscriptions.add.label "Pievienot filtru abonementu"> +<!ENTITY issues.disabledfilters.enable.label "Iespējot filtru"> +<!ENTITY issues.override.label "&Konfigurācija ir pareiza, varat turpināt ziņojumu"> +<!ENTITY issues.nosubscriptions.description "Izskatās, ka Jūs neabonējat nevienu no gatavajiem sarakstiem, kuri automātiski noņem nevajadzīgo saturu no mājas lapām."> +<!ENTITY typeSelector.falsePositive.description "Izvēlaties šo opciju, ja lai trūkst svarīga saturam tā tiek nepareizi attēlota vai nefunkcionē pareizi. Jūs varat noteikt vai to izraisa Adblock Plus, to īslaicīgi atslēdzot."> +<!ENTITY typeSelector.other.label "&Cita problēma"> +<!ENTITY emailComment.label "Mēs aicinām Jūs ievadīt derīgu e-pasta adresi, lai mēs varētu ar Jums kontaktēties, ja radīsies papildus jautājumi par Jūsu ziņojumu. Tā palīdzēs mums arī atpazīt Jūsu ieguldījumu un piešķirt tam augstāku prioritāti."> +<!ENTITY issues.whitelist.remove.label "Iespējot Adblock Plus šajā lapā"> +<!ENTITY outdatedSubscriptions.description "Sekojošie filtru abonementi nav atjaunināti vismaz divas nedēļas. Lūdzu, atjauniniet šos abonementus pirms ziņojuma apstiprināšanas, jo problēma jau var būt atrisināta."> +<!ENTITY dataCollector.description "Uzgaidiet pāris mirkļus, kamēr Adblock Plus apkopo nepieciešamos datus."> +<!ENTITY sendButton.label "&Sūtīt ziņojumu"> +<!ENTITY comment.label "&Komentārs (nav obligāti):"> +<!ENTITY sendPage.errorMessage "Mēģinājums sūtīt ziņojumu neizdevās. Kļūdas kods "?1?". Lūdzu pārliecinieties, ka Jums ir savienojums ar internetu un mēģiniet vēlreiz. Ja problēma atkārtojas, lūdzu prasiet palīdzību [link]Adblock Plus forumā[/link]."> +<!ENTITY showRecentReports.label "Parādīt nesen nosūtītos ziņojumus"> +<!ENTITY commentPage.heading "Pievienojiet komentāru"> +<!ENTITY update.start.label "Tagad sāktu atjaunināšanu"> +<!ENTITY issues.disabledfilters.description "Sekojošie filtri ir atslēgt, tomēr tiem var būt ietekme uz šo lapu:"> +<!ENTITY screenshot.description "Tā pati lapa var izskatīties atšķirīgi dažādiem cilvēkiem. Ja Jūs pievienosiet ekrān-šāviņu, tas mums palīdzēs izprast problēmu. Jūs varat noņemt apgabalus, kas satur jūtīgu informāciju kā arī iezīmēt vietas, kur ir redzama problēma. Lai to izdarītu, noklikšķiniet uz atbilstošās pogas un izvēlieties apgabalu ar peli."> +<!ENTITY screenshot.attach.label "&Pievienot ziņojumam lapas attēlu"> +<!ENTITY issues.whitelist.description "Adblock Plus pašreiz ir atslēgt lapā par kuru Jūs ziņojat. Lai palīdzētu problēmas izmeklēšanā, pirms ziņojuma sūtīšanas lūdzu ieslēdziet to un atsvaidziniet lapu."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus nebloķē &reklāmu"> +<!ENTITY typeSelector.heading "Izvēlieties problēmas tipu"> +<!ENTITY anonymity.warning "Mēs nevarēsim ar Jums sazināties un visdrīzāk piešķirsim Jūsu ziņojumam zemāku prioritāti."> +<!ENTITY wizard.title "Problēmu ziņotājs"> +<!ENTITY issues.ownfilters.disable.label "Atspējot filtru"> +<!ENTITY commentPage.description "Teksta laukums ļauj Jums ierakstīt komentāru, lai palīdzētu mums saprast problēmu. Šis solis nav obligāts, bet ir rekomendēts, ja problēma nav acīmredzama. Jūs arī varat pārskatīt ziņojuma datus, pirms nosūtīšanas."> +<!ENTITY comment.lengthWarning "Jūsu komentāra garums pārsniedz 1000 simbolus. Tikai pirmie 1000 simboli tiks nosūtīti."> +<!ENTITY typeSelector.falseNegative.description "Izvēlaties šo opciju ja reklāma tiek attēlota neskatoties uz to ka Adblock Plus ir ieslēgts."> +<!ENTITY sendPage.waitMessage "Lūdzu uzgaidiet kamēr Adblock Plus sūta Jūsu ziņojumu."> +<!ENTITY dataCollector.heading "Laipni lūdzu problēmu ziņotājā"> +<!ENTITY screenshot.heading "Pievienojiet ekrān-šāviņu"> +<!ENTITY sendPage.heading "Sūtīt ziņojumu"> +<!ENTITY issues.subscriptionCount.description "Izskatās, ka Jūs abonējat pārāk daudz abonementu. Šāda konfigurācija netiek rekomendēta, jo tas palielina problēmu iespējamību. Mēs nespējam pieņemt ziņojumu, jo nav skaidrs kuram filtru abonementam ir jārīkojas. Lūdzu noņemiet visu izņemot tiešām nepieciešamos abonementus un pārbaudiet vai problēma joprojām pastāv."> +<!ENTITY screenshot.mark.label "Ie&zīmēt problēmu"> +<!ENTITY privacyPolicy.label "Privātuma politika"> +<!ENTITY issues.description "Adblock Plus ir atradis problēmu Jūsu konfigurācijā, kas varētu būt atbildīga par šo problēmu vai arī apgrūtinās ziņojuma izmeklēšanu."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/sidebar.dtd new file mode 100644 index 0000000..97a127a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Flash vienības malas"> +<!ENTITY address.label "Adrese"> +<!ENTITY context.open.label "Atvērt jaunā cilnē"> +<!ENTITY type.label "Tips"> +<!ENTITY tooltip.filterSource.label "Filtra avots:"> +<!ENTITY noitems.label "Nav bloķējamu vienību"> +<!ENTITY filter.label "Filtrs"> +<!ENTITY tooltip.size.label "Izmērs:"> +<!ENTITY reattach.label "Pievienot atpakaļ"> +<!ENTITY search.label "&Meklēt:"> +<!ENTITY docDomain.thirdParty "(trešā puse)"> +<!ENTITY filterSource.label "Filtra avots"> +<!ENTITY tooltip.docDomain.label "Dokumenta avots:"> +<!ENTITY context.copy.label "Kopēt vienības adresi"> +<!ENTITY tooltip.type.label "Tips:"> +<!ENTITY context.disablefilter.label "Atspējot filtru ?1?"> +<!ENTITY context.copyFilter.label "Kopēt filtru"> +<!ENTITY context.block.label "Bloķēt šo vienību"> +<!ENTITY context.enablefilter.label "Iespējot filtru ?1?"> +<!ENTITY detach.label "Atdalīt"> +<!ENTITY whitelisted.label "Lapa ir baltajā sarakstā"> +<!ENTITY context.disablefilteronsite.label "Atspējot šo filtru ?1?"> +<!ENTITY detached.title "Adblock Plus: Bloķējamās vienības (atdalīts)"> +<!ENTITY docDomain.firstParty "(pirmā puse)"> +<!ENTITY tooltip.type.whitelisted "(baltajā sarakstā)"> +<!ENTITY tooltip.filter.label "Aktīvais filtrs:"> +<!ENTITY tooltip.filter.disabled "(atspējots)"> +<!ENTITY context.editfilter.label "Rediģēt aktīvo filtru"> +<!ENTITY tooltip.type.blocked "(bloķēts)"> +<!ENTITY size.label "Izmērs"> +<!ENTITY context.whitelist.label "Pievienot izņēmuma noteikumu šai vienībai"> +<!ENTITY context.selectAll.label "Iezīmēt visu"> +<!ENTITY state.label "Stāvoklis"> +<!ENTITY docDomain.label "Dokumenta avots"> +<!ENTITY tooltip.address.label "Adrese:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/subscriptionSelection.dtd new file mode 100644 index 0000000..dca19de --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/lv/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Pievienot arī filtra abonementu "?1?""> +<!ENTITY list.download.failed "Adblock Plus neizdevās ielādēt abonentu sarakstu."> +<!ENTITY list.download.retry "Mēģiniet vēlreiz"> +<!ENTITY title.label "Abonemen&ta nosaukums:"> +<!ENTITY list.download.website "Skatīt tīmekļa vietni"> +<!ENTITY supplementMessage "Šī filtra abonements ir paredzēts lietošanai kopā ar filtra abonementu "?1?" kuru jūs vēl neizmantojat."> +<!ENTITY viewList.label "Skatīt filtrus"> +<!ENTITY visitHomepage.label "Apmeklēt mājaslapu"> +<!ENTITY addSubscription.label "Pievienot abonementu"> +<!ENTITY dialog.title "Pievienot Adblock Plus filtra abonementu"> +<!ENTITY location.label "Fi&ltru saraksta atrašanās vieta:"> +<!ENTITY fromWeb.description "Lūdzu, apstipriniet, ka vēlaties pievienot šī filtra abonementu. Jūs varat mainīt abonementa nosaukumu vai atrašanās vietu pirms pievienošanas."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/composer.dtd new file mode 100644 index 0000000..5b2264c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "p&ada akhir alamat"> +<!ENTITY domainRestriction.label "Terhad pada domain: (&s)"> +<!ENTITY collapse.default.no.label "Gunakan default (tidak)"> +<!ENTITY firstParty.label "Pihak per&tama sahaja"> +<!ENTITY preferences.label "Papar penapi&s sedia ada..."> +<!ENTITY pattern.label "Lihat pola"> +<!ENTITY thirdParty.label "Pihak keti&ga sahaja"> +<!ENTITY filter.label "Penapis &baru:"> +<!ENTITY collapse.label "&Jatuhkan yang disekat:"> +<!ENTITY match.warning "Pola yang anda masukkan tidak lagi memadani alamat yang akan disekat/dikecualikan dan tidak akan berkesan kepadanya."> +<!ENTITY anchor.start.label "pada per&mulaan alamat"> +<!ENTITY matchCase.label "&Kes sepadan"> +<!ENTITY custom.pattern.label "&Ubah suai:"> +<!ENTITY unselectAllTypes.label "Tidak pilih"> +<!ENTITY type.whitelist.label "Peraturan penge&cualian"> +<!ENTITY regexp.warning "Pola yang anda masukkan akan diinterpretasi sebagai ungkapan biasa di mana ia boleh melambatkan penjelajahan web. Jika anda tidak berniat untuk menggunakan ungkapan biasa, tambah simbol (*) diakhir pola."> +<!ENTITY dialog.title "Tambah peraturan penapis Adblock Plus"> +<!ENTITY basic.label "Paparan biasa"> +<!ENTITY type.filter.label "&Penapis penyekat"> +<!ENTITY types.label "Gunakan pada jenis:"> +<!ENTITY shortpattern.warning "Pola yang anda masukkan terlalu pendek untuk dioptimumkan dan kemungkinan boleh melambatkan penjelajahan web. Anda digalakkan memilih masukan yang lebih panjang untuk penapis ini supaya Adbolck Plus dapat memproses penapis ini dengan lebih berkesan."> +<!ENTITY collapse.yes.label "Ya"> +<!ENTITY anchors.label "Terima pola sahaja:"> +<!ENTITY collapse.default.yes.label "Gunakan default (ya)"> +<!ENTITY domainRestriction.help "Gunakan pilihan ini untuk tentukan satu atau lebih domain secara berasingan dengan simbol "|". Penapis hanya akan digunakan pada domain terpilih sahaja. Simbol "~" sebelum domain bermaksud penapis tidak akan digunakan pada domain tersebut."> +<!ENTITY accept.label "Tambah penapis"> +<!ENTITY options.label "Pilihan"> +<!ENTITY disabled.warning "Adblock Plus telah dinyahaktifkan. Anda masih boleh menambah penapis tetapi ia tidak akan aktif sehingga anda [link]aktifkan Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "pada per&mulaan nama domain"> +<!ENTITY collapse.no.label "Tidak"> +<!ENTITY selectAllTypes.label "Pilih semua"> +<!ENTITY advanced.label "Paparan mahir"> +<!ENTITY pattern.explanation "Pola boleh jadi mana-mana bahagian alamat; simbol (*) bertujuan sebagai wildcards. Penapis hanya digunakan pada alamat yang sepadan dengan pola."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/filters.dtd new file mode 100644 index 0000000..9d3541d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/filters.dtd @@ -0,0 +1,73 @@ +<!ENTITY restore.custom.warning "Semua penapis khas anda akan digantikan dengan kandungan fail yang dipilih. Adakah anda pasti?"> +<!ENTITY slow.column "&Lambatkan penapis"> +<!ENTITY enabled.column "&Diaktifkan"> +<!ENTITY subscription.lastDownload.checksumMismatch "Gagal, checksum tidak sepadan"> +<!ENTITY noFiltersInGroup.text "Kumpulan yang dipilih adalah kosong."> +<!ENTITY subscription.actions.label "Aksi-aksi"> +<!ENTITY filter.selectAll.label "Pilih Semua"> +<!ENTITY backupButton.label "Backup dan Re&store"> +<!ENTITY restore.minVersion.warning "Amaran: fail ini dibuat menggunakan versi Adblock Plus terbaru. Anda harus mendapatkan versi Adblock Plus terbaru sebelum anda restore dari fail ini."> +<!ENTITY restore.error "Data fail tidak dapat diprosese, mungkin ini bukan fail backup Adblock Plus?"> +<!ENTITY sort.ascending.label "Susun&an A > Z"> +<!ENTITY sort.label "Susun &dengan"> +<!ENTITY subscription.source.label "Senarai penapis"> +<!ENTITY hitcount.column "&Hit"> +<!ENTITY noFilters.text "Anda tiada penapis khas."> +<!ENTITY backup.custom.title "Penapis khas sahaja"> +<!ENTITY subscription.external.label "Dikemaskini oleh extension lain"> +<!ENTITY subscription.delete.label "Buang"> +<!ENTITY noGroupSelected.text "Anda perlu memilih satu kumpulan penapis sebelum penapisnya dapat dipaparkan."> +<!ENTITY filter.cut.label "Potong"> +<!ENTITY restore.default.label "Restore backup dari ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Memuat-turun..."> +<!ENTITY subscriptions.tab.label "Langganan penapis"> +<!ENTITY sort.descending.label "Susunan &Z > A"> +<!ENTITY filters.remove.warning "Adakah anda pasti mahu membuang semua penapis yang dipilih?"> +<!ENTITY filter.delete.label "Padam"> +<!ENTITY addSubscriptionAdd.label "Tambah"> +<!ENTITY viewMenu.label "Papar"> +<!ENTITY subscription.lastDownload.unknown "tiada maklumat"> +<!ENTITY addSubscriptionCancel.label "Batal"> +<!ENTITY subscription.enabled.label "Diaktifkan"> +<!ENTITY noSubscriptions.text "Anda belum menambah langganan penapis. Adblock Plus tidak akan menapis + apa-apa tanpa penapis, sila guna "Tambah langganan penapis" untuk menambah."> +<!ENTITY subscription.update.label "Kemaskini penapis"> +<!ENTITY dialog.title "Pilihan Penapis Adblock Plus"> +<!ENTITY addFilter.label "&Tambah penapis"> +<!ENTITY subscription.minVersion.warning "Langganan penapis ini memerlukan versi Adblock Plus terbaru, anda perlu mendapatkan versi Adblock Plus terbaru."> +<!ENTITY subscription.lastDownload.invalidURL "Gagal, bukan alamat yang sah"> +<!ENTITY backup.error "Terdapat ralat semasa menulis penapis pada fail. Sila pastikan fail tidak write protected atau digunakan oleh aplikasi lain."> +<!ENTITY filter.moveUp.label "Pindah atas"> +<!ENTITY addGroup.label "Tambah &kumpulan penapis"> +<!ENTITY filter.edit.label "Ubahsuai"> +<!ENTITY subscription.showHideFilters.label "Tunjuk/sembunyi penapis"> +<!ENTITY acceptableAds2.label "Benarkan iklan yan&g tidak mengganggu"> +<!ENTITY addSubscriptionOther.label "Tambah langganan lain"> +<!ENTITY close.label "Tutup"> +<!ENTITY sort.none.label "&Tidak disusun"> +<!ENTITY filter.actions.label "Aksi penapis"> +<!ENTITY filter.copy.label "Salin"> +<!ENTITY filter.moveDown.label "Pindah bawah"> +<!ENTITY filter.resetHitCounts.label "Reset statistik"> +<!ENTITY readMore.label "Baca lebih"> +<!ENTITY subscription.moveUp.label "Pindah ke atas"> +<!ENTITY addSubscription.label "Tambah &langganan penapis"> +<!ENTITY subscription.homepage.label "Laman rumah"> +<!ENTITY backup.complete.title "Semua penapis dan langganan"> +<!ENTITY restore.own.label "Restore backup sendiri"> +<!ENTITY restore.complete.warning "Semua pilihan penapis anda akan digantikan dengan kandungan fail yang dipilih. Adakah anda pasti?"> +<!ENTITY filters.tab.label "Penapis khas"> +<!ENTITY backup.label "Buat backup baru"> +<!ENTITY find.label "&Cari"> +<!ENTITY subscription.moveDown.label "Pindah ke bawah"> +<!ENTITY subscription.lastDownload.connectionError "Gagal, kegagalan memuat-turun"> +<!ENTITY subscription.lastDownload.success "Berjaya"> +<!ENTITY subscription.lastDownload.invalidData "Gagal, bukan senarai penapis yang sah"> +<!ENTITY filter.paste.label "Tampal"> +<!ENTITY subscription.disabledFilters.enable "Aktifkan penapis yang telah dinyaktifkan."> +<!ENTITY lasthit.column "Hit t&erakhir"> +<!ENTITY subscription.editTitle.label "Ubahsuai tajuk"> +<!ENTITY subscription.disabledFilters.warning "Sesetengah penapis dalam langganan ini telah dinyahaktifkan."> +<!ENTITY filter.column "Pe&raturan penapis"> +<!ENTITY subscription.lastDownload.label "Muat-turun terakhir:"> +<!ENTITY viewList.label "Lihat senarai"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/firstRun.properties new file mode 100644 index 0000000..d119e0b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Lihat secara peribadi dengan menyahdayakan pengesanan - menyembunyikan trek anda dari syarikat-syarikat iklan yang akan menjejaki setiap langkah anda. +firstRun_toggle_off=TUTUP +firstRun_feature_tracking=Menyahdayakan pengesanan +firstRun_feature_malware=Menyekat perisian berniat jahat +firstRun_title=Adblock Plus telah dipasang +firstRun_acceptableAdsExplanation=Kami ingin menggalakkan Laman web untuk menggunakan pengiklanan terus-terang, tidak mengganggu. Itulah sebabnya mengapa kita telah menetapkan <a>garis panduan yang ketat</a> untuk mengenalpasti iklan yang boleh diterima, yang ditunjukkan di bawah seting lalai. Jika anda masih mahu menyekat iklan setiap anda boleh <a>menyahdayakan</a> ini dalam beberapa saat. +firstRun_toggle_on=Pada +firstRun_contributor_credits=Kredit sebagai penyumbang +firstRun_dataCorruptionWarning=Adakah laman ini muncul tidak terhenti-henti? <a>Klik di sini!</a> +firstRun_acceptableAdsHeadline=Annoying iklan akan kini menjadi disekat +firstRun_share=Beritahu rakan-rakan anda +firstRun_share_headline=<a>Berikan tangan</a> dalam membuat laman web yang lebih baik +firstRun_features=Adblock Plus boleh melakukan lebih daripada iklan yang menghalang +firstRun_feature_malware_description=Membuat pelayaran anda lebih selamat dengan menyekat domain dikenali perisian berniat jahat. +firstRun_feature_social_description=Secara automatik membuang pengalaman menyemak lalu anda daripada butang media sosial, seperti Facebook Like, yang muncul di laman web dan mengesan tingkah laku anda. +firstRun_donate=mendermakan +firstRun_donate_label=Menyokong projek kami +firstRun_feature_social=Mengalih keluar butang Media sosial +firstRun_legacySafariWarning=Anda menggunakan versi lama Safari yang tidak disokong oleh Adblock Plus. Ia mungkin tidak berfungsi dengan betul atau menjejaskan pengalaman pengguna di sesetengah tapak web. Kami amat mengesyorkan sama ada mengemaskini Safari 6 atau lebih tinggi (yang tersedia untuk Mac OS X 10.8 Mountain Lion) dan lebih tinggi(OS X 10.9 Mavericks), atau untuk menggunakan versi terkini pelayar Mozilla Firefox, Google Chrome atau Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/global.properties new file mode 100644 index 0000000..54428fe --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Tiada item yang boleh disekat pada laman semasa +action3_tooltip=Klik untuk aktifkan/nyahaktifkan Adblock Plus. +notification_antiadblock_title=Sembunyi Mesej-mesej yang disasarkan? +type_label_script=skrip +filter_elemhide_nocriteria=Tiada kriteria yang dinyatakan untuk mengenal pasti elemen untuk disembunyikan +blockingGroup_title=Peraturan Penapisan Iklan +whitelisted_tooltip=Adblock Plus dinyahaktifkan pada laman semasa. +type_label_stylesheet=lembaran stail +blocked_count_tooltip=?1? daripada ?2? +type_label_font=font +type_label_popup=tetingkap pop-up +filter_regexp_tooltip=Penapis ini hanya ungkapan biasa atau terlalu pendek untuk dioptimumkan. Terlalu banyak penapis mungkin akan melambatkan penjelajahan web. +action0_tooltip=Klik untuk mengeluarkan menu konteks, klik tengah untuk aktifkan/nyahaktifkan. +whitelisted_page=Adblock Plus telah dinyahaktifkan untuk laman semasa +remove_group_warning=Adakah anda pasti mahu membuang kumpulan ini? +action1_tooltip=Klik untuk membuka/menutup item yang boleh disekat, klik tengah untuk aktifkan/nyahaktifkan. +type_label_xmlhttprequest=permintaan XML +active_tooltip=Adblock Plus telah diaktifkan, ?1? langganan penapis dan ?2? penapis sendiri digunakan. +type_label_document=dokumen +type_label_object_subrequest=subpermintaan objek +whitelistGroup_title=Peraturan Pengecualian +disabled_tooltip=Adblock Plus telah dinyahaktifkan. +filter_elemhide_duplicate_id=Hanya satu ID elemen untuk disembunyikan boleh dinyatakan +type_label_object=objek +action2_tooltip=Klik untuk buka tatarajah, klik tengah untuk aktifkan/nyahaktifkan. +type_label_subdocument=bingkai +clearStats_warning=Ini akan mengreset semua statistik dan menyahaktifkan kiraan penapis. Teruskan? +notification_antiadblock_message=Laman web ini telah dikenali untuk menunjukkan mesej yang disasarkan kepada pengguna Adblock Plus. Adakah anda mahu Adblock Plus untuk menyembunyikan mesej yang disasarkan? +blocked_count_addendum=(juga dikecualikan: ?1?, disembunyikan: ?2? +subscription_invalid_location=Lokasi senarai penapis sama ada URL atau nama fail adalah tidak sah. +type_label_image=imej +remove_subscription_warning=Adakah anda mahu membuang langganan ini? +type_label_other=lain +mobile_menu_enable=ABP:Aktifkan +type_label_media=audio/video +mobile_menu_disable_site=ABP:Nyahaktifkan untuk ?1? +elemhideGroup_title=Peraturan Penyembunyian Elemen +mobile_menu_enable_site=ABP:Nyahaktifkan untuk ?1? +type_label_elemhide=disembunyikan +newGroup_title=Kumpulan penapis baru +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/overlay.dtd new file mode 100644 index 0000000..5fc0085 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ya"> +<!ENTITY notification.button.no "&Tiada"> +<!ENTITY sync.label "Syn&c tatacara Adblock Plus"> +<!ENTITY whitelist.site.label "Nyahaktifkan pada ?1?"> +<!ENTITY filters.label "&Tatarajah penapis"> +<!ENTITY disable.label "Nyahaktif di semua tempat"> +<!ENTITY objecttab.title "Sekat"> +<!ENTITY objecttab.tooltip "Klik di sini untuk menyekat objek ini dengan Adblock Plus"> +<!ENTITY menuitem.label "&Pilihan Adblock Plus"> +<!ENTITY objecttabs.label "Paparkan &tab pada Flash dan Java"> +<!ENTITY sendReport.label "&Lapor isu pada laman ini"> +<!ENTITY whitelist.page.label "Nyahaktifkan pada laman ini sahaja"> +<!ENTITY context.image.label "Adblock Plus: Sekat imej"> +<!ENTITY counthits.label "&Kira kiraan penapis"> +<!ENTITY opensidebar.label "Buka &item yang boleh disekat"> +<!ENTITY notification.button.close "&Tutup"> +<!ENTITY contribute.label "Sumbang kepada Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Sekat bingkai"> +<!ENTITY blocked.tooltip "Item yang disekat pada laman ini:"> +<!ENTITY hideplaceholders.label "Sembun&yikan placeholders elemen tersembunyi"> +<!ENTITY showinstatusbar.label "Papar&kan di bar status"> +<!ENTITY sidebar.title "Item yang boleh disekat pada laman semasa"> +<!ENTITY options.label "Piliha&n"> +<!ENTITY context.object.label "Adblock Plus: Sekat objek"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Aktifkan semula pada laman ini"> +<!ENTITY filters.tooltip "Penapis yang paling aktif:"> +<!ENTITY closesidebar.label "Tutup &item yang boleh disekat"> +<!ENTITY showintoolbar.label "Papa&rkan di bar alatan"> +<!ENTITY status.tooltip "Keadaan:"> +<!ENTITY context.media.label "Adblock Plus: Sekat audio/video"> +<!ENTITY subscription.update.label "Kemaskini penapis"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/sendReport.dtd new file mode 100644 index 0000000..ae861c6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Undur (&K)"> +<!ENTITY issues.disabledgroups.description "Langganan penapis/kumpulan penapis berikut telah dinyahaktifkan, tetapi ia mungkin masih membawa kesan pada laman ini:"> +<!ENTITY showData.label "Tunjuk data laporan"> +<!ENTITY typeSelector.falsePositive.label "Terlalu &banyak disekat Adblock Plus"> +<!ENTITY issues.change.description "Konfigurasi anda telah diubah. Sila reload laman tersebut untuk menguji perubahan yang dilakukan dan hantar laporan jika isu tersebut masih tidak diselesaikan oleh perubahan yang dilakukan."> +<!ENTITY email.label "&E-mel:"> +<!ENTITY issues.openPreferences.label "Buka tatarajah penapis"> +<!ENTITY sendPage.confirmation "Laporan anda telah disimpan. Anda boleh mengaksesnya di alamat berikut:"> +<!ENTITY copyLink.label "&Salin pautan laporan"> +<!ENTITY issues.nofilters.description "Adblock Plus tidak menyekat apa-apa pada laman semasa. Isu yang diperhatikan ini kemungkinan besar tidak berkaitan dengan Adblock Plus."> +<!ENTITY sendPage.knownIssue "Isu yang dilaporkan kemungkinan telah dikenalpasti. Maklumat lanjut:"> +<!ENTITY typeSelector.other.description "Pilih pilihan ini jika anda mencurigai isu pada Adblock Plus sendiri dan bukan disebabkan langganan."> +<!ENTITY issues.disabledgroups.enable.label "Aktifkan langganan penapis/kumpula penapis"> +<!ENTITY typeWarning.override.label "Saya &faham dan ingin menghantar laporan juga"> +<!ENTITY issues.disabled.enable.label "Aktifkan Adblock Plus"> +<!ENTITY update.fixed.description "Langganan anda yang dikemaskini kemungkinan besar telahpun menyelesaikan masalah yang anda laporkan. Sila reload halaman tersebut dan cuba sekali lagi. Laporkan sekali lagi jika masalah tetap ada."> +<!ENTITY anonymous.label "Penyerahan &tanpa nama"> +<!ENTITY reloadButton.label "Reload laman (&t)"> +<!ENTITY recentReports.clear.label "&Padam semua laporan"> +<!ENTITY typeSelector.description "Tingkap ini akan membimbing anda dengan langkah-langkah yang diperlukan untuk mengemukakan laporan isu Adblock Plus. Pertama sekali, sila pilih jenis isu yang dialami pada laman ini:"> +<!ENTITY screenshot.remove.label "Pa&dam data sensitif"> +<!ENTITY issues.ownfilters.description "Sebahagian penapis yang digunakan pada laman ini ditentukan pengguna. Sila nyahaktifkan penapis tersebut yang mungkin menyebabkan isu itu."> +<!ENTITY update.inProgress.description "Adblock Plus perlu mengemaskini langganan penapis anda untuk memastikan isu tersebut belum diselesaikan. Sila tunggu"...""> +<!ENTITY sendPage.retry.label "Hantar sekali lagi"> +<!ENTITY data.label "&Lapor data"> +<!ENTITY recentReports.label "Laporan yang dihantar baru-baru ini oleh saya"> +<!ENTITY typeWarning.description "Anda didapati ingin melaporkan isu berkaitan Adblock Plus dan bukan masalah dengan penapis. Sila ambil perhatian bahawa isu sebegini paling bagus dilaporkan di [link]Adblock Plus[/link]. Anda patut hanya menggunakan pelapor isu untuk menambah info pada perbincangan yang sedia ada, kerana tiada siapa akan perasan laporan itu kecuali anda membekalkan mereka dengan pautannya. Pautan yang dihasilkan secara automatik akan dibekalkan selepas laporan dihantar."> +<!ENTITY issues.disabled.description "Adblock Plus telah dinyahaktifkan, ia tidak akan menyekat apa-apa."> +<!ENTITY attachExtensions.label "Lampirkan senarai e&xtension aktif pada laporan untuk menentukan samada masalah disebabkan konflik add-on"> +<!ENTITY issues.nosubscriptions.add.label "Tambah langganan penapis"> +<!ENTITY issues.disabledfilters.enable.label "Aktifkan penapis"> +<!ENTITY issues.override.label "&Konfigurasi adalah betul, sila teruskan dengan laporan"> +<!ENTITY issues.nosubscriptions.description "Anda didapati tidak melanggan mana-mana penapis yang direka khas untuk membuang isi yang tidak diperlukan pada laman web secara automatik."> +<!ENTITY typeSelector.falsePositive.description "Pilih pilihan ini jika laman tersebut kekurangan isi penting, salah paparannya atau gagal berfungsi dengan betul. Anda boleh menentukan sama ada Adblock Plus ialah penyebab masalah tersebut dengan menyahaktifkannya buat sementara waktu."> +<!ENTITY typeSelector.other.label "&Isu lain"> +<!ENTITY emailComment.label "Kami menggalakkan anda memasukkan alamat email yang sah supaya kami boleh menghubungi anda jika ada pertanyaan tentang laporan anda. Ia juga akan membolehkan kita untuk mengiktiraf sumbangan anda dan memberi keutamaan kepada mereka dengan lebih tinggi."> +<!ENTITY issues.whitelist.remove.label "Aktifkan kembali Adblock Plus pada laman ini"> +<!ENTITY outdatedSubscriptions.description "Langganan penapis yang disenaraikan belum dikemaskini sekurang-kurangnya 2 minggu. Sila kemaskini langganan tersebut sebelum menghantar laporan, isu tersebut mungkin telahpun diselesaikan."> +<!ENTITY dataCollector.description "Sila tunggu sebentar sementara Adblock Plus mengumpul data yang diperlukan."> +<!ENTITY sendButton.label "&Hantar laporan"> +<!ENTITY comment.label "K&omen(optional)"> +<!ENTITY sendPage.errorMessage "Cubaan untuk menghantar laporan gagal dengan kod error "?1?". Sila pastikan internet anda berfungsi dan cuba lagi. Jika masalah berterusan sila minta bantuan di [link]Adblock Plus forum[/link]."> +<!ENTITY showRecentReports.label "Paparkan laporan yang dihantar baru-baru ini"> +<!ENTITY commentPage.heading "Masukkan komen"> +<!ENTITY update.start.label "Mulakan kemaskini sekarang"> +<!ENTITY issues.disabledfilters.description "Penapis berikut telah dinyahaktifkan, tetapi ia mungkin masih membawa kesan pada laman ini:"> +<!ENTITY screenshot.description "Laman yang sama mungkin kelihatan berbeza untuk individu yang berbeza. Ia mungkin membantu kami memahami masalahnya jika screenshot dilampirkan bersama laporan anda. Anda boleh memadam bahagian-bahagian yang mengandungi info sensitif di samping menanda bahagian-bahagian di mana masalah itu jelas kelihatan. Untuk berbuat demikian klik butang berkaitan dan pilih sebahagian imej dengan tetikus anda."> +<!ENTITY screenshot.attach.label "La&mpir imej laman pada laporan"> +<!ENTITY issues.whitelist.description "Adblock Plus telah dinyahaktifkan pada laman yang anda ingin laporkan. Sila aktifkannya kembali dan reload laman tersebut sebelum menghantar laporan."> +<!ENTITY typeSelector.falseNegative.label "Adbloc&k Plus tidak menyekat iklan"> +<!ENTITY typeSelector.heading "Pilih jenis isu"> +<!ENTITY anonymity.warning "Kita tidak akan dapat kembali kepada anda dan mungkin akan mengutamakan laporan yang lebih rendah."> +<!ENTITY wizard.title "Pelapor isu"> +<!ENTITY issues.ownfilters.disable.label "Nyahaktifkan penapis"> +<!ENTITY commentPage.description "Bahagian di bawah membenarkan anda memasukkan komen untuk membantu kami memahami isu tersebut. Langkah ini adalah optional tetapi disyorkan jika masalah tersebut tidak jelas. Anda juga boleh memeriksa data laporan sebelum menghantarnya."> +<!ENTITY comment.lengthWarning "Panjang komen anda melebihi 1000 huruf. Hanya 1000 huruf pertama sahaja akan dihantar."> +<!ENTITY typeSelector.falseNegative.description "Pilih pilihan ini jika iklan dipaparkan walaupun Adblock Plus telah diaktifkan."> +<!ENTITY sendPage.waitMessage "Sila tunggu sementara Adblock Plus menghantar laporan anda."> +<!ENTITY dataCollector.heading "Selamat datang ke pelapor isu"> +<!ENTITY screenshot.heading "Lampir screenshot"> +<!ENTITY sendPage.heading "Hantar laporan"> +<!ENTITY issues.subscriptionCount.description "Didapati anda melanggan terlalu banyak langganan penapis. Ini tidak disyorkan kerana ia mungkin akan mewujudkan masalah. Kami juga tidak dapat menerima laporan anda kerana ia kurang jelas penulis langganan penapis mana yang perlu mengambil tindakan. Sila buang semua langganan penapis kecuali yang diperlukan dan uji samada masalah masih berterusan."> +<!ENTITY screenshot.mark.label "&Tanda masalah tersebut"> +<!ENTITY privacyPolicy.label "Polisi privasi"> +<!ENTITY issues.description "Adblock Plus telah mengesan isu pada konfigurasi anda yang mungkin penyebab isu ini atau akan menyukarkan penyiasatan laporan."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/sidebar.dtd new file mode 100644 index 0000000..c2f2cd8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Jelaskan sempadan item"> +<!ENTITY address.label "Alamat"> +<!ENTITY context.open.label "Buka dalam Tab Baru"> +<!ENTITY type.label "Jenis"> +<!ENTITY tooltip.filterSource.label "Sumber penapis:"> +<!ENTITY noitems.label "Tiada item yang boleh disekat"> +<!ENTITY filter.label "Penapis"> +<!ENTITY tooltip.size.label "Saiz:"> +<!ENTITY reattach.label "Lampir semula"> +<!ENTITY search.label "&Cari:"> +<!ENTITY docDomain.thirdParty "(pihak ketiga)"> +<!ENTITY filterSource.label "Sumber penapis"> +<!ENTITY tooltip.docDomain.label "Sumber dokumen:"> +<!ENTITY context.copy.label "Salin alamat item"> +<!ENTITY tooltip.type.label "Jenis:"> +<!ENTITY context.disablefilter.label "Nyahaktif penapis ?1?"> +<!ENTITY context.copyFilter.label "Salin penapis"> +<!ENTITY context.block.label "Sekat item ini"> +<!ENTITY context.enablefilter.label "Aktifkan kembali penapis ?1?"> +<!ENTITY detach.label "Asingkan"> +<!ENTITY whitelisted.label "Laman yang disenarai putih"> +<!ENTITY context.disablefilteronsite.label "Nyahaktif penapis ini pada ?1?"> +<!ENTITY detached.title "Adblock Plus: Item yang boleh disekat (diasingkan)"> +<!ENTITY docDomain.firstParty "(pihak pertama)"> +<!ENTITY tooltip.type.whitelisted "(senarai putih)"> +<!ENTITY tooltip.filter.label "Penapis yang digunakan:"> +<!ENTITY tooltip.filter.disabled "(dinyahaktifkan)"> +<!ENTITY context.editfilter.label "Ubah penapis yang digunakan"> +<!ENTITY tooltip.type.blocked "(disekat)"> +<!ENTITY size.label "Saiz"> +<!ENTITY context.whitelist.label "Tambah peraturan pengecualian untuk item"> +<!ENTITY context.selectAll.label "Pilih semua"> +<!ENTITY state.label "Keadaan"> +<!ENTITY docDomain.label "Sumber dokumen"> +<!ENTITY tooltip.address.label "Alamat:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/subscriptionSelection.dtd new file mode 100644 index 0000000..cdf6791 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ms/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Tam&bah langganan penapis "?1?" juga"> +<!ENTITY list.download.failed "Adblock Plus gagal memuat-turun senarai langganan."> +<!ENTITY list.download.retry "Cuba lagi"> +<!ENTITY title.label "Ta&juk langganan"> +<!ENTITY list.download.website "Papar laman web"> +<!ENTITY supplementMessage "Langganan penapis ini bertujuan untuk digunakan bersama langganan penapis "?1?" yang tidak digunakan oleh anda lagi."> +<!ENTITY viewList.label "Papar penapis"> +<!ENTITY visitHomepage.label "Lawat laman web Adblock Plus"> +<!ENTITY addSubscription.label "Tambah langganan"> +<!ENTITY dialog.title "Tambah langganan penapis Adblock Plus"> +<!ENTITY location.label "L&okasi senarai penapis:"> +<!ENTITY fromWeb.description "Sila pastikan anda mahu menambah langganan penapis ini. Anda boleh mengubah tajuk langganan atau lokasi sebelum menambahnya."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/composer.dtd new file mode 100644 index 0000000..3292cd0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "på slutte&n av adressen"> +<!ENTITY domainRestriction.label "Begrens til &domene:"> +<!ENTITY collapse.default.no.label "Bruk standard (nei)"> +<!ENTITY firstParty.label "Kun elementer fra hovedsiden"> +<!ENTITY preferences.label "Vi&s eksisterende filtre..."> +<!ENTITY pattern.label "Se etter mønster"> +<!ENTITY thirdParty.label "Kun &tredjeparts"> +<!ENTITY filter.label "Nytt &filter:"> +<!ENTITY collapse.label "Minimer b&lokkerte:"> +<!ENTITY match.warning "Mønsteret du laget stemmer ikke lenger overens med adressen som skal blokkeres/hvitelistes, og vil ikke ha noen effekt."> +<!ENTITY anchor.start.label "på starten av adressen (&g)"> +<!ENTITY matchCase.label "&Ta hensyn til stor og liten forbokstav (A/a)"> +<!ENTITY custom.pattern.label "Egendefinert: (&C)"> +<!ENTITY unselectAllTypes.label "Velg ingen"> +<!ENTITY type.whitelist.label "Unntaksregel (&x)"> +<!ENTITY regexp.warning "Mønsteret du har laget vil bli tolket som et standarduttrykk, og kan ikke behandles effektivt av Adblock Plus, som igjen vil gjøre nettleseren din tregere. Hvis du ikke hadde tenkt til å lage et standarduttrykk, kan du legge til en stjerne (*) på slutten av mønsteret."> +<!ENTITY dialog.title "Legg til filtreringsregel for Adblock Plus"> +<!ENTITY basic.label "Grunnleggende visning"> +<!ENTITY type.filter.label "&Blokkeringsfilter"> +<!ENTITY types.label "Bruk på:"> +<!ENTITY shortpattern.warning "Mønsteret du skrev inn er for kort til å bli optimert, og kan gjøre nettleseren din tregere. Vi anbefaler at du lager en lengre tekstsekvens for dette filteret, slik at Adblock Plus kan behandle filteret mer effektivt."> +<!ENTITY collapse.yes.label "Ja"> +<!ENTITY anchors.label "Aksepter kun mønster:"> +<!ENTITY collapse.default.yes.label "Bruk standard (ja)"> +<!ENTITY domainRestriction.help "Bruk dette valget til å spesifisere ett domene eller flere domener, separert med vertikalstreker (|). Filteret vil kun brukes på domenet eller domenene som er valgt. En tilde (~) foran et domenenavn indikerer at filteret ikke skal brukes på det domenet."> +<!ENTITY accept.label "Legg til filter"> +<!ENTITY options.label "Alternativer"> +<!ENTITY disabled.warning "Adblock Plus er deaktivert. Du kan fremdeles legge til filtre, men de blir ikke aktivert med mindre du [link]aktiverer Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "på starten av domenenavnet (&g)"> +<!ENTITY collapse.no.label "Nei"> +<!ENTITY selectAllTypes.label "Velg alle"> +<!ENTITY advanced.label "Avansert visning"> +<!ENTITY pattern.explanation "Mønsteret kan være hvilken som helst del av adressen; stjerner (*) fungerer som frie symboler. Filteret vil kun bli aktivert for adresser som stemmer overens med sekvensen du har definert."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/filters.dtd new file mode 100644 index 0000000..ac2bc21 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Alle dine egenkomponerte filtre vil bli erstattet av innholdet i filen du har valgt. Vil du fortsette?"> +<!ENTITY slow.column "Trege filtre (&w)"> +<!ENTITY enabled.column "Aktivert (&n)"> +<!ENTITY subscription.lastDownload.checksumMismatch "Mislyktes - kontrollsummen stemmer ikke"> +<!ENTITY noFiltersInGroup.text "Den valgte gruppen er tom."> +<!ENTITY subscription.actions.label "Handlinger"> +<!ENTITY filter.selectAll.label "Velg alle"> +<!ENTITY backupButton.label "Sikkerhetskopier og gjenopprett (&B)"> +<!ENTITY restore.minVersion.warning "Advarsel: Filen har blitt laget med en nyere versjon av Adblock Plus. Du bør oppdatere til nyeste versjon av Adblock Plus før du bruker denne filen."> +<!ENTITY restore.error "Informasjonen i filen kunne ikke bli behandlet. Kanskje dette ikke er en backup-fil for Adblock Plus?"> +<!ENTITY sort.ascending.label "&Sortér fra A til Å"> +<!ENTITY sort.label "&Sorter etter"> +<!ENTITY subscription.source.label "Filterliste"> +<!ENTITY hitcount.column "Treff (&H)"> +<!ENTITY noFilters.text "Du har ingen egendefinerte filtre ennå."> +<!ENTITY backup.custom.title "Kun egendefinerte filtre"> +<!ENTITY subscription.external.label "Oppdatert av et annet tillegg"> +<!ENTITY subscription.delete.label "Slett"> +<!ENTITY noGroupSelected.text "Du må velge en filtergruppe før tilhørende filtre kan vises."> +<!ENTITY filter.cut.label "Klipp ut"> +<!ENTITY restore.default.label "Gjenopprett sikkerhetskopi fra ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Laster ned..."> +<!ENTITY subscriptions.tab.label "Filterabonnementer"> +<!ENTITY sort.descending.label "&Sortér fra Å til A"> +<!ENTITY filters.remove.warning "Ønsker du virkelig å fjerne alle valgte filtre?"> +<!ENTITY filter.delete.label "Slett"> +<!ENTITY addSubscriptionAdd.label "Legg til"> +<!ENTITY viewMenu.label "Vis"> +<!ENTITY subscription.lastDownload.unknown "Ikke tilgjengelig"> +<!ENTITY addSubscriptionCancel.label "Avbryt"> +<!ENTITY subscription.enabled.label "Aktivert"> +<!ENTITY noSubscriptions.text "Du har ikke lagt til noen filterabonnementer ennå. Adblock Plus blokkerer ikke noe uten filtre. Vennligst bruk "Legg til filterabonnement" for å legge til filtre."> +<!ENTITY subscription.update.label "Oppdater filtre"> +<!ENTITY dialog.title "Filtervalg for Adblock Plus"> +<!ENTITY addFilter.label "Legg til filter (&d)"> +<!ENTITY subscription.minVersion.warning "Dette filterabonnementet krever en nyere versjon av Adblock Plus. Du bør oppdatere til nyeste versjon av Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Feilet, ikke en gyldig adresse"> +<!ENTITY backup.error "Det oppstod en feil under lagring av filtrene til filen. Sjekk at ikke filen er skrivebeskyttet, eller at den brukes av et annet program."> +<!ENTITY filter.moveUp.label "Flytt opp"> +<!ENTITY addGroup.label "Le&gg til filtergruppe"> +<!ENTITY filter.edit.label "Rediger"> +<!ENTITY subscription.showHideFilters.label "Vis/skjul filtre"> +<!ENTITY acceptableAds2.label "Tillat noen ikke-påtrengende annonser"> +<!ENTITY addSubscriptionOther.label "Legg til et annet abonnement"> +<!ENTITY close.label "Lukk"> +<!ENTITY sort.none.label "&Usortert"> +<!ENTITY filter.actions.label "Filterhandlinger"> +<!ENTITY filter.copy.label "Kopier"> +<!ENTITY filter.moveDown.label "Flytt ned"> +<!ENTITY filter.resetHitCounts.label "Nullstill treffstatistikker"> +<!ENTITY readMore.label "Les mer"> +<!ENTITY subscription.moveUp.label "Flytt opp"> +<!ENTITY addSubscription.label "Legg til &filterabonnement"> +<!ENTITY subscription.homepage.label "Hjemmeside"> +<!ENTITY backup.complete.title "Alle filtre og abonnenter"> +<!ENTITY restore.own.label "Gjenopprett egen sikkerhetskopi"> +<!ENTITY restore.complete.warning "Alle filtervalgene dine vil bli erstattet av innholdet i filen du har valgt. Vil du fortsette?"> +<!ENTITY filters.tab.label "Egendefinerte filtre"> +<!ENTITY backup.label "Opprett ny sikkerhetskopi"> +<!ENTITY find.label "Fi&nn"> +<!ENTITY subscription.moveDown.label "Flytt ned"> +<!ENTITY subscription.lastDownload.connectionError "Feilet, nedlastingsfeil"> +<!ENTITY subscription.lastDownload.success "Vellykket"> +<!ENTITY subscription.lastDownload.invalidData "Feilet, ikke en gyldig filterliste"> +<!ENTITY filter.paste.label "Lim inn"> +<!ENTITY subscription.disabledFilters.enable "Aktiver deaktiverte filtre"> +<!ENTITY lasthit.column "Siste treff (&L)"> +<!ENTITY subscription.editTitle.label "Rediger tittel"> +<!ENTITY subscription.disabledFilters.warning "Noen filtre i dette abonnementet er deaktivert."> +<!ENTITY filter.column "&Filterregel"> +<!ENTITY subscription.lastDownload.label "Siste nedlasting:"> +<!ENTITY viewList.label "Vis liste"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/firstRun.properties new file mode 100644 index 0000000..dc51602 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Vær privat på nettet ved å hindre sporing - gjem sporene dine fra reklameselskaper som ellers registrerer alt du gjør. +firstRun_toggle_off=AV +firstRun_feature_tracking=Slå av sporing +firstRun_feature_malware=Blokkering av skadeprogram +firstRun_title=Adblock Plus har blitt installert +firstRun_toggle_on=PÅ +firstRun_acceptableAdsExplanation=Vi vil oppfordre nettsider til å bruke standard, ikke-påtrengende annonser. Derfor har vi laget <a>strenge retningslinjer</a> for å identifisere akseptable annonser, som vises når man har aktivert standardinnstillingene. Hvis du ønsker å blokkere alle annonser, kan du <a>velge bort</a> dette straks. +firstRun_contributor_credits=Takk til +firstRun_dataCorruptionWarning=Dukker denne siden stadig opp? <a>Klikk her!</a> +firstRun_acceptableAdsHeadline=Irriterende annonser blir fra nå av blokkert +firstRun_share=Fortell dette til vennene dine +firstRun_share_headline=<a>Hjelp oss</a> med å gjøre Internett til et bedre sted +firstRun_feature_social_description=Bli kvitt knapper for sosiale medier, slik som "Liker" fra Facebook, som dukker opp på nettsider og sporer handlingene dine. +firstRun_filterlistsReinitializedWarning=Det kan se ut som at en feil i systemet gjorde at alle filtrene ble fjernet, og vi var ute av stand til å gjenopprette sikkerhetskopien. Vi har derfor måttet nullstille alle filtrene og innstillingene for Akseptable annonser. Vennligst kontroller filterlistene dine og innstillingene for Akseptable annonser i valgalternativene til <a>Adblock Plus options</a>. +firstRun_feature_malware_description=Gjør nettlesingen din tryggere ved å blokkere domener som er kjent for å være skadelige. +firstRun_features=Adblock Plus kan gjøre mer enn å bare blokkere annonser +firstRun_donate=donér +firstRun_donate_label=Støtt prosjektet vårt +firstRun_feature_social=Fjern sosiale media-knapper +firstRun_legacySafariWarning=Du bruker en gammel versjon av Safari som ikke støttes av Adblock Plus, og det kan hende Adblock Plus ikke fungerer, eller forverrer brukeropplevelsen på enkelte nettsteder. Vi anbefaler sterkt at du enten oppdaterer til Safari 6.1.1 eller nyere (tilgjengelig for Mac OS X 10.8 Mountain Lion), Safari 7.0.1 (tilgjengelig for OS X 10.9 Mavericks) eller nyere, eller bruker den nyeste versjonen av Mozilla Firefox, Google Chrome eller Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/global.properties new file mode 100644 index 0000000..45be984 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Ingen blokkerbare elementer på nåværende side +action3_tooltip=Klikk for å aktivere/deaktivere Adblock Plus. +notification_antiadblock_title=Skjul meldinger til Adblock Plus brukere? +type_label_script=script +filter_elemhide_nocriteria=Du har ikke spesifisert kriterier for å gjenkjenne elementet som skal skjules +blockingGroup_title=Regler for annonseblokkering +whitelisted_tooltip=Adblock Plus er deaktivert på nåværende side. +type_label_stylesheet=stilark +blocked_count_tooltip=?1? av ?2? +type_label_font=font +type_label_popup=sprettoppvindu +filter_regexp_tooltip=Dette filteret er enten et standarduttrykk eller er for kort til å bli optimalisert. For mange slike filtre kan gjøre nettleseren din tregere. +action0_tooltip=Trykk her for å vise kontekstmenyen. Midtklikk for å aktivere/deaktivere. +whitelisted_page=Adblock Plus har blitt deaktivert for nåværende side +remove_group_warning=Ønsker du virkelig å fjerne denne gruppen? +action1_tooltip=Klikk her for å åpne/lukke elementer som kan blokkeres. Midtklikk for å aktivere/deaktivere. +type_label_xmlhttprequest=XML-forespørsel +active_tooltip=Adblock Plus er aktivert. ?1? filterabonnementer og ?2? egendefinerte filtre i bruk. +type_label_document=dokument +type_label_object_subrequest=underforespørsel fra objektet +whitelistGroup_title=Unntaksregler +disabled_tooltip=Adblock Plus er deaktivert. +filter_elemhide_duplicate_id=Du kan kun angi ett ID for elementet som skal skjules +type_label_object=objekt +action2_tooltip=Klikk her for å åpne innstillingsvalgene. Midtklikk for å aktivere/deaktivere. +type_label_subdocument=ramme +clearStats_warning=Dette vil nullstille alle treffstatistikker for filtre og deaktivere telleren. Vil du fortsette? +notification_antiadblock_message=Dette området er kjent for å vise meldinger som henvender seg til AdBlock Plus brukere. Vil du at Adblock Plus skal skjule disse meldingene? +blocked_count_addendum=(også hvitelistet: ?1?, skjult: ?2?) +subscription_invalid_location=Filterlistens plassering er verken en gyldig URL eller et gyldig filnavn. +type_label_image=bilde +remove_subscription_warning=Ønsker du virkelig å fjerne dette abonnementet? +type_label_other=annet +mobile_menu_enable=ABP: Aktiver +type_label_media=lyd/video +mobile_menu_disable_site=ABP: Deaktiver på ?1? +elemhideGroup_title=Regler for å skjule elementer +mobile_menu_enable_site=ABP: Aktiver på ?1? +type_label_elemhide=skjult +newGroup_title=Ny filtergruppe +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/overlay.dtd new file mode 100644 index 0000000..9d89b41 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ja"> +<!ENTITY notification.button.no "&Nei"> +<!ENTITY sync.label "Synkroniser innstillinger for Adblo&ck Plus"> +<!ENTITY whitelist.site.label "Deaktiver på ?1?"> +<!ENTITY filters.label "&Filterinnstillinger"> +<!ENTITY disable.label "Deaktiver overalt"> +<!ENTITY objecttab.title "Blokker"> +<!ENTITY objecttab.tooltip "Klikk her for å blokkere dette elementet med Adblock Plus"> +<!ENTITY menuitem.label "Adblock Plus innstillinger"> +<!ENTITY objecttabs.label "Vis faner på Flash og Java"> +<!ENTITY sendReport.label "&Rapporter problem på denne siden"> +<!ENTITY whitelist.page.label "Deaktiv kun på denne siden"> +<!ENTITY context.image.label "Adblock Plus: Blokker bilde"> +<!ENTITY counthits.label "Tell filtertreff (&h)"> +<!ENTITY opensidebar.label "Åpne &blokkerbare elementer"> +<!ENTITY notification.button.close "&Lukk"> +<!ENTITY contribute.label "Bidra til Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Blokker ramme"> +<!ENTITY blocked.tooltip "Blokkerte elementer på denne siden:"> +<!ENTITY hideplaceholders.label "Skjul plassbeholder for blokkerte elementer"> +<!ENTITY showinstatusbar.label "Vis i statuslinjen"> +<!ENTITY sidebar.title "Blokkerbare elementer på nåværende side"> +<!ENTITY options.label "Alternativer (&O)"> +<!ENTITY context.object.label "Adblock Plus: Blokker objekt"> +<!ENTITY context.removeWhitelist.label "Reaktiver på denne siden"> +<!ENTITY filters.tooltip "Mest aktive filtre:"> +<!ENTITY closesidebar.label "Lukk &blokkérbare elementer"> +<!ENTITY showintoolbar.label "Vis på verktøylinje (&b)"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Blokker lyd/video"> +<!ENTITY subscription.update.label "Oppdater filtre"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/sendReport.dtd new file mode 100644 index 0000000..1cc95f1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Angre (&U)"> +<!ENTITY issues.disabledgroups.description "Disse filterabonnementene/filtergruppene er deaktivert, men de kan ha en effekt på denne siden likevel:"> +<!ENTITY showData.label "Vis rapportdata"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokkerer for &mye"> +<!ENTITY issues.change.description "Konfigurasjonene dine er endret. Last inn siden på nytt for å teste forandringene, og send inn en ny rapport hvis problemene er vedvarende."> +<!ENTITY email.label "E-post: (&m)"> +<!ENTITY issues.openPreferences.label "Åpne filterinnstillinger"> +<!ENTITY sendPage.confirmation "Rapporten er lagret. Du kan få tilgang til den ved følgende internettadresse:"> +<!ENTITY copyLink.label "Kopier rapportlink (&C)"> +<!ENTITY issues.nofilters.description "Adblock Plus blokkerer ingenting på denne siden. Problemer du opplever er trolig urelatert til Adblock Plus."> +<!ENTITY sendPage.knownIssue "Problemet du rapporterte inn er allerede kjent for oss. Mer informasjon:"> +<!ENTITY typeSelector.other.description "Velg dette alternativet hvis du mistenker at det er et problem med Adblock Plus som program, i motsetning til filterene."> +<!ENTITY issues.disabledgroups.enable.label "Aktiver filterabonnement / filtergruppe"> +<!ENTITY typeWarning.override.label "Jeg for&står og ønsker likevel å sende rapporten"> +<!ENTITY issues.disabled.enable.label "Aktiver Adblock Plus"> +<!ENTITY update.fixed.description "Oppdateringen av filterabonnemenetene dine løste trolig problemet du rapporterte inn. Vennligst last inn siden på nytt. Rapporter inn problemet på nytt hvis problemet fremdeles eksisterer."> +<!ENTITY anonymous.label "&Anonym innsending"> +<!ENTITY reloadButton.label "Last side på nytt (&R)"> +<!ENTITY recentReports.clear.label "Fje&rn alle rapporter"> +<!ENTITY typeSelector.description "Dette vinduet vil veilede deg gjennom de nødvendige stegene som trengs for å sende inn en problemrapport til Adblock Plus. Velg først hvilket type problem du har på denne siden:"> +<!ENTITY screenshot.remove.label "Fje&rn sensitive data"> +<!ENTITY issues.ownfilters.description "Noen av filterene som er aktivert på denne siden er brukerdefinerte. Vennligst deaktiver filterene som kan ha forårsaket problemet:"> +<!ENTITY update.inProgress.description "Adblock Plus behøver å oppdatere filterabonnementene for å forsikre seg at problemet ikke har blitt løst allerede. Vennligst vent..."> +<!ENTITY sendPage.retry.label "Send på nytt"> +<!ENTITY data.label "Ra&pportdata:"> +<!ENTITY recentReports.label "Dine nylig innsendte rapporter"> +<!ENTITY typeWarning.description "Du har angitt at du vil rapportere inn et generelt problem vedrørende Adblock Plus, istedenfor et problem vedrørende filtrene. Vennligst legg merke til at slike problemer helst bør rapporteres inn på [link]Adblock Plus forum[/link]. Du burde kun bruke rapportingsfunksjonen til å supplementere til en eksisterende diskusjon, siden ingen vil legge merke til din rapport såfremt du ikke legger ved en link. En automatisk generert link vil bli gitt deg etter at du har sendt inn en rapport."> +<!ENTITY issues.disabled.description "Adblock Plus er deaktivert, og vil ikke blokkere noenting i denne tilstanden."> +<!ENTITY attachExtensions.label "Legg ved en liste over aktive tillegg til rapporten, i tilfelle det er en "add-on" som er grunnen til problemet"> +<!ENTITY issues.nosubscriptions.add.label "Legg til filterabonnement"> +<!ENTITY issues.disabledfilters.enable.label "Aktiver filter"> +<!ENTITY issues.override.label "Følgende konfigurasjon er korrekt; fortsetter med rapporteringen"> +<!ENTITY issues.nosubscriptions.description "Det virker som om du ikke har abonnert på noen av de forhåndsdefinerte listene som fjerner uønsket innhold fra internettsider."> +<!ENTITY typeSelector.falsePositive.description "Velg dette alternativet hvis siden mangler viktig innhold, vises feil eller ikke fungerer sånn det skal. Du kan finne ut om Adblock Plus er roten til problemet ved å deaktivere Adblock Plus midlertidig."> +<!ENTITY typeSelector.other.label "Anne&t problem"> +<!ENTITY emailComment.label "Vi oppfordrer deg til å oppgi en gyldig e-postadresse, slik at vi kan kontakte deg hvis vi har spørsmål angående denne rapporten. Det vil også gjøre at vi kan gjenkjenne dine bidrag, og prioritere dem høyere."> +<!ENTITY issues.whitelist.remove.label "Reaktiver Adblock Plus for denne siden"> +<!ENTITY outdatedSubscriptions.description "Disse filterabonnementene har ikke blitt oppdatert på minst to uker. Vennligst oppdater disse filterabonnementene før du sender inn en problemrapport; problemet kan ha blitt løst allerede."> +<!ENTITY dataCollector.description "Vennligst vent på at Adblock Plus samler inn de nødvendige data."> +<!ENTITY sendButton.label "Se&nd rapport"> +<!ENTITY comment.label "Kommentar (valgfritt): (&C)"> +<!ENTITY sendPage.errorMessage "Et forsøk på å sende inn rapporten feilet, med feilkoden "?1?". Vennligst kontrollér at du har internettilgang, og prøv på nytt. Hvis problemet vedvarer kan du be om hjelp i [link]Adblock Plus forum[/link]."> +<!ENTITY showRecentReports.label "Vis nylig innsendte rapporter"> +<!ENTITY commentPage.heading "Skriv inn kommentar"> +<!ENTITY update.start.label "Start oppdatering nå"> +<!ENTITY issues.disabledfilters.description "Følgende filter er deaktiver, men det kan alikevell ha en effekt på denne siden:"> +<!ENTITY screenshot.description "En internettside kan se annerledes ut for forskjellige personer. Det vil muligens hjelpe oss til å forstå problemet hvis du du sender med en skjermdump, sammen med rapporten. Du kan fjerne sensitiv informasjon, såvell som markere området hvor problemet er merkbart. For å gjøre dette må du klikke tilsvarende knapp, og velge området du vil markere med datamusen."> +<!ENTITY screenshot.attach.label "Legg ved et bilde til rapporten"> +<!ENTITY issues.whitelist.description "Adblock Plus er for tiden deaktivert for siden du ønkser å rapportere inn. Vennligst reaktiver Adblock Plus for denne siden, og last inn siden på nytt før sender inn rapporten."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus blokkerer ikke et reklameelement"> +<!ENTITY typeSelector.heading "Velg type problem"> +<!ENTITY anonymity.warning "Vi vil ikke kunne svare deg, og det vil sannsynligvis gjøre at rapporten får lavere prioritet."> +<!ENTITY wizard.title "Problemrapporterer"> +<!ENTITY issues.ownfilters.disable.label "Deaktiver filter"> +<!ENTITY commentPage.description "I tekstfeltet nedenfor kan du skrive en kommentar som kan hjelpe oss til å forstå problemet. Dette er valgfritt, men anbefalt hvis problemet ikke åpenbart. Du kan også se på rapportdataene før de sendes."> +<!ENTITY comment.lengthWarning "Lengden på din kommentar er lenger enn 1000 bokstav. Bare de første 1000 bokstavene vil bli inkludert i rapporten."> +<!ENTITY typeSelector.falseNegative.description "Velg dette alternativet hvis et reklameelement vises, selv om Adblock Plus er aktivert."> +<!ENTITY sendPage.waitMessage "Vennligst vent mens Adblock Plus sender inn din rapport."> +<!ENTITY dataCollector.heading "Velkommen til problemrapportereren"> +<!ENTITY screenshot.heading "Legg ved skjermdump"> +<!ENTITY sendPage.heading "Send rapport"> +<!ENTITY issues.subscriptionCount.description "Det virker som om du har abonnert på for mange filterabonnementer. Dette oppsettet er ikke oppsettet er ikke anbefalt, da det ofte vil resultere i at du opplever flere problemer med Adblock plus. Vi kan heller ikke ta imot din rapport, siden det er usikkert hvilken filterforfatter det er som eventuelt må fikse filteret sitt. Vennligst fjern alle ikke-nødvendige filtere, og se om samme problem oppstår da."> +<!ENTITY screenshot.mark.label "Markèr problemet"> +<!ENTITY privacyPolicy.label "Personvern"> +<!ENTITY issues.description "Adblock Plus oppdaget problemer med konfigurasjonene som kan være grunnen til problemet, eller som kan gjøre det vanskelig å undersøke problemet."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/sidebar.dtd new file mode 100644 index 0000000..1e4e45b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Fremhév elementets kanter"> +<!ENTITY address.label "Adresse"> +<!ENTITY context.open.label "Åpne i ny fane"> +<!ENTITY type.label "Type"> +<!ENTITY tooltip.filterSource.label "Filterkilde:"> +<!ENTITY noitems.label "Ingen blokkerbare elementer"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Størrelse:"> +<!ENTITY reattach.label "Gjentilkoble"> +<!ENTITY search.label "&Søk:"> +<!ENTITY docDomain.thirdParty "(tredjeparts)"> +<!ENTITY filterSource.label "Filterkilde"> +<!ENTITY tooltip.docDomain.label "Dokumentkilde:"> +<!ENTITY context.copy.label "Kopier elementets adresse"> +<!ENTITY tooltip.type.label "Type:"> +<!ENTITY context.disablefilter.label "Deaktiver filter ?1?"> +<!ENTITY context.copyFilter.label "Kopier filter"> +<!ENTITY context.block.label "Blokker dette elementet"> +<!ENTITY context.enablefilter.label "Reaktiver filter ?1?"> +<!ENTITY detach.label "Frakoble"> +<!ENTITY whitelisted.label "Hvitelistet side"> +<!ENTITY context.disablefilteronsite.label "Deaktiver dette filteret på ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokkérbare elementer(frittstående)"> +<!ENTITY docDomain.firstParty "(førsteparts)"> +<!ENTITY tooltip.type.whitelisted "(hvitelistet)"> +<!ENTITY tooltip.filter.label "Gjeldende filter:"> +<!ENTITY tooltip.filter.disabled "(deaktivert)"> +<!ENTITY context.editfilter.label "Redigér gjeldende filter"> +<!ENTITY tooltip.type.blocked "(blokkert)"> +<!ENTITY size.label "Størrelse"> +<!ENTITY context.whitelist.label "Legg til unntaksregel for elementet"> +<!ENTITY context.selectAll.label "Velg alle"> +<!ENTITY state.label "Tilstand"> +<!ENTITY docDomain.label "Dokumentkilde"> +<!ENTITY tooltip.address.label "Adresse:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/subscriptionSelection.dtd new file mode 100644 index 0000000..14ae574 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nb-NO/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Legg til filterabonnement "?1?" også"> +<!ENTITY list.download.failed "Adblock Plus mislyktes i å hente listen med abonnementene."> +<!ENTITY list.download.retry "Prøv igjen"> +<!ENTITY title.label "Abonnemen&tstittel:"> +<!ENTITY list.download.website "Vis nettside"> +<!ENTITY supplementMessage "Dette filter abonnementet er ment å brukes sammen med filter abonnementet "?1?" som du ikke bruker ennå."> +<!ENTITY viewList.label "Vis filtre"> +<!ENTITY visitHomepage.label "Besøk hjemmeside"> +<!ENTITY addSubscription.label "Legg til abonnement"> +<!ENTITY dialog.title "Legg til filterabonnement for Adblock Plus"> +<!ENTITY location.label "Filterabonnementets plassering:"> +<!ENTITY fromWeb.description "Vennligst bekreft at du vil legge til dette filterabonnementet. Du kan forandre tittelen på abonnementet, eller plasseringen til abonnementet, før det legges til."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/composer.dtd new file mode 100644 index 0000000..1ae748e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "aan het e&ind van het adres"> +<!ENTITY domainRestriction.label "Tot domein be&perken:"> +<!ENTITY collapse.default.no.label "Standaard gebruiken (nee)"> +<!ENTITY firstParty.label "A&lleen van eigen website"> +<!ENTITY preferences.label "Bestaande filters &weergeven…"> +<!ENTITY pattern.label "Naar patroon zoeken"> +<!ENTITY thirdParty.label "Alleen van &derden"> +<!ENTITY filter.label "&Nieuwe filter:"> +<!ENTITY collapse.label "&Geblokkeerd onderdeel inklappen:"> +<!ENTITY match.warning "Het door u ingegeven patroon komt niet meer overeen met het te blokkeren/op de witte lijst te plaatsen adres en zal er geen effect op hebben."> +<!ENTITY anchor.start.label "aan &het begin van het adres"> +<!ENTITY matchCase.label "H&oofdlettergevoelig"> +<!ENTITY custom.pattern.label "&Aangepast:"> +<!ENTITY unselectAllTypes.label "Niets selecteren"> +<!ENTITY type.whitelist.label "&Uitzonderingsregel"> +<!ENTITY regexp.warning "Het patroon dat u heeft gegeven zal worden behandeld als een reguliere expressie. Deze kunnen niet efficiënt worden verwerkt door Adblock Plus en kunnen uw browser traag maken. Als het niet uw bedoeling was een reguliere expressie te schrijven, voeg dan een asterisk (*) aan het eind van het patroon toe."> +<!ENTITY dialog.title "Adblock Plus-filterregel toevoegen"> +<!ENTITY basic.label "Eenvoudige weergave"> +<!ENTITY type.filter.label "&Blokkeringsfilter"> +<!ENTITY types.label "Toepassen op types:"> +<!ENTITY shortpattern.warning "Het patroon dat u heeft gegeven is te kort om te worden geoptimaliseerd en kan uw browser traag maken. U kunt beter een langere regel voor dit filter kiezen, zodat Adblock Plus het filter efficiënter kan toepassen."> +<!ENTITY collapse.yes.label "Ja"> +<!ENTITY anchors.label "Alleen patronen accepteren:"> +<!ENTITY collapse.default.yes.label "Standaard gebruiken (ja)"> +<!ENTITY domainRestriction.help "Gebruik deze optie om één of meer domeinen te specificeren, gescheiden door een lijn (|). Het filter zal alleen op deze domeinen worden toegepast. Een tilde (~) voor een domein betekent dat het filter niet moet worden toegepast op dat domein."> +<!ENTITY accept.label "Filter toevoegen"> +<!ENTITY options.label "Opties"> +<!ENTITY disabled.warning "Adblock Plus is momenteel uitgeschakeld. U kunt nog wel filters toevoegen, maar ze worden niet toegepast tenzij u [link]Adblock Plus weer inschakelt[/link]."> +<!ENTITY anchor.start.flexible.label "aan &het begin van de domeinnaam"> +<!ENTITY collapse.no.label "Nee"> +<!ENTITY selectAllTypes.label "Alles selecteren"> +<!ENTITY advanced.label "Geavanceerde weergave"> +<!ENTITY pattern.explanation "Het patroon kan ieder gedeelte zijn van het adres, waarbij een asterisk (*) als wildcard geldt. Het filter wordt alleen toegepast op adressen die met het patroon overeenkomen."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/filters.dtd new file mode 100644 index 0000000..f04172e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Al uw aangepaste filters worden vervangen door de inhoud van het geselecteerde bestand. Wilt u doorgaan?"> +<!ENTITY slow.column "T&rage filters"> +<!ENTITY enabled.column "&Ingeschakeld"> +<!ENTITY subscription.lastDownload.checksumMismatch "Mislukt, afwijkend controlecijfer"> +<!ENTITY noFiltersInGroup.text "De geselecteerde groep is leeg."> +<!ENTITY subscription.actions.label "Acties"> +<!ENTITY filter.selectAll.label "Alles selecteren"> +<!ENTITY backupButton.label "&Back-up en herstel"> +<!ENTITY restore.minVersion.warning "Waarschuwing: het bestand is gemaakt met een nieuwere versie van Adblock Plus. U dient bij te werken naar de laatste versie voordat u kunt herstellen vanuit dit bestand."> +<!ENTITY restore.error "De gegevens in het bestand kunnen niet worden verwerkt, wellicht is het geen back-up-bestand van Adblock Plus?"> +<!ENTITY sort.ascending.label "&A > Z sortering"> +<!ENTITY sort.label "&Sorteren op"> +<!ENTITY subscription.source.label "Filterlijst"> +<!ENTITY hitcount.column "&Treffers"> +<!ENTITY noFilters.text "U heeft nog geen aangepaste filters."> +<!ENTITY backup.custom.title "Alleen aangepaste filters"> +<!ENTITY subscription.external.label "Bijgewerkt door een andere extensie"> +<!ENTITY subscription.delete.label "Verwijderen"> +<!ENTITY noGroupSelected.text "U dient een filtergroep te selecteren voordat de filters kunnen worden weergegeven."> +<!ENTITY filter.cut.label "Knippen"> +<!ENTITY restore.default.label "Back-up van ?1? terugzetten"> +<!ENTITY subscription.lastDownload.inProgress "Downloaden…"> +<!ENTITY subscriptions.tab.label "Filterabonnementen"> +<!ENTITY sort.descending.label "&Z > A sortering"> +<!ENTITY filters.remove.warning "Wilt u echt alle geselecteerde filters verwijderen?"> +<!ENTITY filter.delete.label "Verwijderen"> +<!ENTITY addSubscriptionAdd.label "Toevoegen"> +<!ENTITY viewMenu.label "Beeld"> +<!ENTITY subscription.lastDownload.unknown "Onbekend"> +<!ENTITY addSubscriptionCancel.label "Annuleren"> +<!ENTITY subscription.enabled.label "Ingeschakeld"> +<!ENTITY noSubscriptions.text "U heeft nog geen filterabonnementen toegevoegd. Adblock Plus blokkeert niets zonder filters, gebruik ‘Filterabonnement toevoegen’ om er één toe te voegen."> +<!ENTITY subscription.update.label "Filters bijwerken"> +<!ENTITY dialog.title "Adblock Plus-filtervoorkeuren"> +<!ENTITY addFilter.label "Fil&ter toevoegen"> +<!ENTITY subscription.minVersion.warning "Dit filterabonnement vereist een nieuwere versie van Adblock Plus, u dient bij te werken naar de nieuwste versie."> +<!ENTITY subscription.lastDownload.invalidURL "Mislukt, geen geldig adres"> +<!ENTITY backup.error "Er is een fout opgetreden bij het wegschrijven van de filters. Zorg ervoor dat het bestand niet tegen schrijven beveiligd is of wordt gebruikt door een andere toepassing."> +<!ENTITY filter.moveUp.label "Omhoog"> +<!ENTITY addGroup.label "&Filtergroep toevoegen"> +<!ENTITY filter.edit.label "Bewerken"> +<!ENTITY subscription.showHideFilters.label "Filters weergeven/verbergen"> +<!ENTITY acceptableAds2.label "&Enkele niet-opdringerige advertenties toestaan"> +<!ENTITY addSubscriptionOther.label "Een ander abonnement toevoegen"> +<!ENTITY close.label "Sluiten"> +<!ENTITY sort.none.label "&Ongesorteerd"> +<!ENTITY filter.actions.label "Filteracties"> +<!ENTITY filter.copy.label "Kopiëren"> +<!ENTITY filter.moveDown.label "Omlaag"> +<!ENTITY filter.resetHitCounts.label "Trefferstatistieken opnieuw instellen"> +<!ENTITY readMore.label "Lees meer"> +<!ENTITY subscription.moveUp.label "Omhoog"> +<!ENTITY addSubscription.label "&Filterabonnement toevoegen"> +<!ENTITY subscription.homepage.label "Startpagina"> +<!ENTITY backup.complete.title "Alle filters en abonnementen"> +<!ENTITY restore.own.label "Eigen back-up terugzetten"> +<!ENTITY restore.complete.warning "Al uw filtervoorkeuren worden vervangen door de inhoud van het geselecteerde bestand. Wilt u doorgaan?"> +<!ENTITY filters.tab.label "Aangepaste filters"> +<!ENTITY backup.label "Nieuwe back-up maken"> +<!ENTITY find.label "Z&oeken"> +<!ENTITY subscription.moveDown.label "Omlaag"> +<!ENTITY subscription.lastDownload.connectionError "Mislukt, downloadprobleem"> +<!ENTITY subscription.lastDownload.success "Gelukt"> +<!ENTITY subscription.lastDownload.invalidData "Mislukt, geen geldige filterlijst"> +<!ENTITY filter.paste.label "Plakken"> +<!ENTITY subscription.disabledFilters.enable "Uitgeschakelde filters inschakelen"> +<!ENTITY lasthit.column "&Laatste treffer"> +<!ENTITY subscription.editTitle.label "Titel bewerken"> +<!ENTITY subscription.disabledFilters.warning "Enkele filters in dit abonnement zijn uitgeschakeld."> +<!ENTITY filter.column "&Filterregel"> +<!ENTITY subscription.lastDownload.label "Laatste download:"> +<!ENTITY viewList.label "Lijst bekijken"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/firstRun.properties new file mode 100644 index 0000000..309fdcd --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Browse privé door 'tracking' uit te schakelen - verberg uw gegevens voor advertentiebedrijven die al uw surfgedrag zouden volgen. +firstRun_toggle_off=UIT +firstRun_feature_tracking=Tracking uitschakelen +firstRun_feature_malware=Malware Blokkering +firstRun_title=Adblock plus is geïnstalleerd +firstRun_acceptableAdsExplanation=Wij zouden websites willen aanmoedigen eenvoudige, niet-opdringerige advertenties te gebruiken. Daarom hebben we <a>strikte richtlijnen</a> opgesteld om acceptabele advertenties te identificeren, die worden getoond onder Standaardinstellingen. Als u alsnog alle advertenties wilt blokkeren, kunt u dit in een paar seconden <a>uitschakelen</a>. +firstRun_toggle_on=AAN +firstRun_contributor_credits=Bijdrager Credits +firstRun_dataCorruptionWarning=Blijft deze pagina verschijnen? <a>Klik hier!</a> +firstRun_acceptableAdsHeadline=Vervelende advertenties zullen nu worden geblokkeerd +firstRun_share=Vertel uw vrienden +firstRun_share_headline=<a>Help ons</a> om van het web een betere plek te maken +firstRun_features=Adblock Plus kan meer doen dan advertenties blokkeren +firstRun_feature_malware_description=Maak het browsen veiliger door het blokkeren van bekende malware domeinen. +firstRun_feature_social_description=Verwijder social media-knoppen (zoals de Facebook "Like" knop) automatisch, omdat die op webpagina's verschijnen en uw surfgedrag volgen. +firstRun_donate=doneren +firstRun_donate_label=Steun ons project +firstRun_feature_social=Verwijder Social Media knoppen +firstRun_legacySafariWarning=U gebruikt een oude versie van Safari die niet wordt ondersteund door Adblock Plus. Sommige websites kunnen daardoor onjuist worden weergegeven. Wij raden u aan een update uit te voeren naar Safari versie 6.1.1 of hoger (voor Mac OS X 10.8 Mountain Lion), Safari versie 7.0.1 of hoger (voor Mac OS X 10.9 Mavericks) of de laatste versie van Mozilla Firefox, Google Chrome of Opera te gebruiken. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/global.properties new file mode 100644 index 0000000..15b65fd --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Geen blokkeerbare onderdelen op deze pagina +action3_tooltip=Klik om Adblock Plus in/uit te schakelen. +notification_antiadblock_title=Gerichte berichten verbergen? +type_label_script=script +filter_elemhide_nocriteria=Geen criteria opgegeven om het te verbergen element te herkennen +blockingGroup_title=Advertentieblokkaderegels +whitelisted_tooltip=Adblock Plus is ingeschakeld maar staat uit voor deze pagina. +type_label_stylesheet=stylesheet +blocked_count_tooltip=?1? van de ?2? +type_label_font=lettertype +type_label_popup=pop-upvenster +filter_regexp_tooltip=Dit filter is een reguliere expressie of te kort om te kunnen worden geoptimaliseerd. Te veel van dit soort filters kan uw browser traag maken. +action0_tooltip=Klik om het contextmenu te openen, middelklik om in/uit te schakelen. +whitelisted_page=Adblock Plus is uitgeschakeld voor deze pagina +remove_group_warning=Wilt u echt deze groep verwijderen? +action1_tooltip=Klik om blokkeerbare onderdelen te openen/sluiten, middelklik om in/uit te schakelen. +type_label_xmlhttprequest=XML-verzoek +active_tooltip=Adblock Plus is actief, ?1? filterabonnement(en) en ?2? aangepast(e) filter(s) in gebruik. +type_label_document=document +type_label_object_subrequest=object-subverzoek +whitelistGroup_title=Uitzonderingsregels +disabled_tooltip=Adblock Plus is uitgeschakeld. +filter_elemhide_duplicate_id=Er kan slechts één ID van het te verbergen element worden opgegeven +type_label_object=object +action2_tooltip=Klik om voorkeuren te openen, middelklik om in/uit te schakelen. +type_label_subdocument=frame +clearStats_warning=Dit stelt alle filtertrefferstatistieken opnieuw in en schakelt het tellen van filtertreffers uit. Wilt u doorgaan? +notification_antiadblock_message=Deze website staat er om bekend dat ze berichten laat zien die op Adblock plus gebruikers gericht zijn. Wilt u dat Adblock Plus deze verbergt? +blocked_count_addendum=(ook op witte lijst: ?1?, verborgen: ?2?) +subscription_invalid_location=Deze filterlijstlocatie is geen geldige URL en ook geen geldige bestandsnaam. +type_label_image=afbeelding +remove_subscription_warning=Weet u zeker dat u dit abonnement wilt verwijderen? +type_label_other=anders +mobile_menu_enable=ABP: Inschakelen +type_label_media=audio/video +mobile_menu_disable_site=ABP: Uitschakelen op ?1? +elemhideGroup_title=Elementverbergingsregels +mobile_menu_enable_site=ABP: Inschakelen op ?1? +type_label_elemhide=verborgen +newGroup_title=Nieuwe filtergroep +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/overlay.dtd new file mode 100644 index 0000000..9537253 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Ja"> +<!ENTITY notification.button.no "&Nee"> +<!ENTITY sync.label "Syn&chroniseer Adblock Plus instellingen"> +<!ENTITY whitelist.site.label "Uitschakelen op ?1?"> +<!ENTITY filters.label "&Filtervoorkeuren"> +<!ENTITY disable.label "Overal uitschakelen"> +<!ENTITY objecttab.title "Blokkeren"> +<!ENTITY objecttab.tooltip "Klik hier om dit object te blokkeren met Adblock Plus"> +<!ENTITY menuitem.label "&Adblock Plus-voorkeuren"> +<!ENTITY objecttabs.label "&Tabs weergeven op Flash en Java"> +<!ENTITY sendReport.label "&Probleem op deze pagina rapporteren"> +<!ENTITY whitelist.page.label "Alleen op deze pagina uitschakelen"> +<!ENTITY context.image.label "Adblock Plus: Afbeelding blokkeren"> +<!ENTITY counthits.label "&Filtertreffers tellen"> +<!ENTITY opensidebar.label "&Blokkeerbare onderdelen openen"> +<!ENTITY notification.button.close "&Sluit"> +<!ENTITY contribute.label "Draag bij aan Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Deelvenster blokkeren"> +<!ENTITY blocked.tooltip "Geblokkeerde onderdelen op deze pagina:"> +<!ENTITY hideplaceholders.label "P&laatshouders van geblokkeerde elementen verbergen"> +<!ENTITY showinstatusbar.label "In &statusbalk weergeven"> +<!ENTITY sidebar.title "Blokkeerbare onderdelen op deze pagina"> +<!ENTITY options.label "&Opties"> +<!ENTITY context.object.label "Adblock Plus: Object blokkeren"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Opnieuw inschakelen op deze pagina"> +<!ENTITY filters.tooltip "Meest actieve filters:"> +<!ENTITY closesidebar.label "&Blokkeerbare onderdelen sluiten"> +<!ENTITY showintoolbar.label "In werk&balk weergeven"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Audio/video blokkeren"> +<!ENTITY subscription.update.label "Filters bijwerken"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/sendReport.dtd new file mode 100644 index 0000000..90265fb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "Onge&daan maken"> +<!ENTITY issues.disabledgroups.description "De volgende filterabonnementen / filtergroepen zijn uitgeschakeld, maar ze hebben mogelijk wel een effect op deze pagina:"> +<!ENTITY showData.label "Rapportgegevens weergeven"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokkeert te &veel"> +<!ENTITY issues.change.description "Uw configuratie is gewijzigd. Laad de pagina opnieuw om de wijzigingen te testen en een rapport in te dienen als het probleem niet is opgelost door de wijzigingen."> +<!ENTITY email.label "E-&mailadres:"> +<!ENTITY issues.openPreferences.label "Filtervoorkeuren openen"> +<!ENTITY sendPage.confirmation "Uw rapport is opgeslagen. U kunt het bekijken op het volgende adres:"> +<!ENTITY copyLink.label "Rapport&koppeling kopiëren"> +<!ENTITY issues.nofilters.description "Adblock Plus blokkeert niets op de huidige pagina. Het door u ervaren probleem hangt hoogstwaarschijnlijk niet samen met Adblock Plus."> +<!ENTITY sendPage.knownIssue "Het door u gemelde probleem is waarschijnlijk al bekend. Meer informatie:"> +<!ENTITY typeSelector.other.description "Selecteer deze optie als u een probleem met Adblock Plus zelf vermoedt in plaats van met de filters."> +<!ENTITY issues.disabledgroups.enable.label "Filterabonnement / filtergroep inschakelen"> +<!ENTITY typeWarning.override.label "Ik be&grijp het en wil het rapport toch indienen"> +<!ENTITY issues.disabled.enable.label "Adblock Plus inschakelen"> +<!ENTITY update.fixed.description "De updates voor uw filterabonnementen hebben waarschijnlijk het door u gerapporteerde probleem verholpen. Laad de pagina opnieuw en probeer het nog eens, en druk opnieuw op Rapporteren als het probleem aanhoudt."> +<!ENTITY anonymous.label "&Anonieme bijdrage"> +<!ENTITY reloadButton.label "Pagina opnie&uw laden"> +<!ENTITY recentReports.clear.label "Alle rappor&ten verwijderen"> +<!ENTITY typeSelector.description "Dit venster leidt u door de stappen die nodig zijn voor het indienen van een Adblock Plus-probleemrapport. Selecteer eerst het probleemtype dat u ervaart op deze pagina:"> +<!ENTITY screenshot.remove.label "Gevoelige gegevens ver&wijderen"> +<!ENTITY issues.ownfilters.description "Enkele van de op deze pagina toegepaste filters zijn door een gebruiker gedefinieerd. Schakel de filters uit die mogelijk het probleem hebben veroorzaakt:"> +<!ENTITY update.inProgress.description "Adblock Plus dient uw filterabonnementen bij te werken om te controleren of het probleem niet al is opgelost. Een ogenblik…"> +<!ENTITY sendPage.retry.label "Opnieuw verzenden"> +<!ENTITY data.label "Ra&pportgegevens:"> +<!ENTITY recentReports.label "Uw onlangs ingediende rapporten"> +<!ENTITY typeWarning.description "U hebt aangegeven dat u een algemeen probleem met Adblock Plus wilt rapporteren in plaats van een probleem met de filters. Merk op dat dergelijke problemen het beste kunnen worden gerapporteerd in het [link]Adblock Plus-forum[/link]. U dient de probleemrapportage alleen te gebruiken om een bestaande discussie aan te vullen, aangezien niemand uw rapport zal opmerken tenzij u een koppeling ernaartoe geeft. De automatisch aangemaakte koppeling wordt weergegeven na indienenvan het rapport."> +<!ENTITY issues.disabled.description "Adblock Plus is uitgeschakeld, in de huidige staat zal het niets blokkeren."> +<!ENTITY attachExtensions.label "Voeg een lijst met actieve e&xtensies toe aan het rapport voor het geval conflicterende add-ons de oorzaak van het probleem zijn"> +<!ENTITY issues.nosubscriptions.add.label "Filterabonnement toevoegen"> +<!ENTITY issues.disabledfilters.enable.label "Filter inschakelen"> +<!ENTITY issues.override.label "De &configuratie is juist, doorgaan met rapportage"> +<!ENTITY issues.nosubscriptions.description "Het lijkt er op dat u geen abonnement heeft op een filterlijst die automatisch ongewenste inhoud van websites verwijdert."> +<!ENTITY typeSelector.falsePositive.description "Selecteer deze optie als de pagina belangrijke inhoudt niet weergeeft, onjuist wordt weergegeven of niet goed werkt. U kunt bepalen of Adblock Plus de oorzaak hiervan is door het tijdelijk uit te schakelen."> +<!ENTITY typeSelector.other.label "&Overige problemen"> +<!ENTITY emailComment.label "We raden u aan een geldig e-mailadres in te voeren, zodat we contact met u op kunnen nemen als er vragen zijn over uw verslag. Hierdoor kunnen wij uw bijdragen ook herkennen en ze hoger prioriteren."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus weer inschakelen op deze pagina"> +<!ENTITY outdatedSubscriptions.description "De volgende filterabonnementen zijn ten minste twee weken niet meer bijgewerkt. Werk ze eerst bij voordat u een rapport indient, het probleem is mogelijk al verholpen."> +<!ENTITY dataCollector.description "Wacht enkele momenten terwijl Adblock Plus de benodigde gegevens verzamelt."> +<!ENTITY sendButton.label "Rapport ver&zenden"> +<!ENTITY comment.label "Opme&rking (optioneel):"> +<!ENTITY sendPage.errorMessage "De poging om het rapport te verzenden is mislukt met foutcode ‘?1?’. Controleer uw internetverbinding en probeer het opnieuw. Als het probleem aanhoudt, vraag dan om hulp op het [link]Adblock Plus-forum[/link]."> +<!ENTITY showRecentReports.label "Onlangs ingediende rapporten weergeven"> +<!ENTITY commentPage.heading "Opmerking toevoegen"> +<!ENTITY update.start.label "Nu bijwerken"> +<!ENTITY issues.disabledfilters.description "De volgende filters zijn uitgeschakeld, maar ze hebben mogelijk wel een effect op deze pagina:"> +<!ENTITY screenshot.description "Dezelfde pagina kan er verschillend uitzien voor verschillende personen. We begrijpen het probleem misschien beter als u een schermafbeelding toevoegt aan uw rapport. U kunt secties met gevoelige informatie verwijderen en gebieden waar het probleem zich voordoet markeren. Klik op de bijbehorende knop om dit te doen en selecteer een sectie van de afbeelding met uw muis."> +<!ENTITY screenshot.attach.label "Een pagina-afbeelding bi&j het rapport bijvoegen"> +<!ENTITY issues.whitelist.description "Adblock Plus is momenteel uitgeschakeld op de door u gerapporteerde pagina. Schakel het weer in en herlaad de pagina voordat u het rapport indient om te helpen bij het onderzoeken van dit probleem."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus blokk&eert een advertentie niet"> +<!ENTITY typeSelector.heading "Selecteer probleemtype"> +<!ENTITY anonymity.warning "We kunnen niet met u in contact komen en zullen uw verslag daarom waarschijnlijk lager prioriteren."> +<!ENTITY wizard.title "Probleemrapportage"> +<!ENTITY issues.ownfilters.disable.label "Filter uitschakelen"> +<!ENTITY commentPage.description "In het onderstaande tekstveld kunt u een opmerking toevoegen om ons te helpen het probleem te begrijpen. Deze stap is optioneel maar wordt aanbevolen als het probleem niet evident is. U kunt de rapportgegevens ook nakijken voordat u het rapport verstuurt."> +<!ENTITY comment.lengthWarning "De lengte van uw opmerking overschrijdt 1000 tekens. Alleen de eerste 1000 tekens worden verzonden."> +<!ENTITY typeSelector.falseNegative.description "Selecteer deze optie als een advertentie wordt weergegeven ondanks het feit dat Adblock Plus is ingeschakeld."> +<!ENTITY sendPage.waitMessage "Een ogenblik terwijl Adblock Plus uw rapport indient."> +<!ENTITY dataCollector.heading "Welkom bij de probleemrapportage"> +<!ENTITY screenshot.heading "Schermafbeelding toevoegen"> +<!ENTITY sendPage.heading "Rapport verzenden"> +<!ENTITY issues.subscriptionCount.description "Het lijkt er op dat u op te veel filterabonnementen geabonneerd bent. Dit is niet aanbevolen, want het verhoogt de kans op problemen. Wij kunnen ook geen probleemmeldingen accepteren, omdat het niet duidelijk is van welk filterabonnement de auteur actie dient te ondernemen. Verwijder alstublieft alle filterabonnementen op de hoogst nodige na en controleer of het probleem dan nog steeds optreedt."> +<!ENTITY screenshot.mark.label "Het problee&m markeren"> +<!ENTITY privacyPolicy.label "Privacybeleid"> +<!ENTITY issues.description "Adblock plus heeft problemen met uw configuratie gedetecteerd die mogelijk verantwoordelijk zijn voor dit probleem of het onderzoeken van het rapport bemoeilijken."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/sidebar.dtd new file mode 100644 index 0000000..d715dff --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Randen laten knipperen"> +<!ENTITY address.label "Adres"> +<!ENTITY context.open.label "Openen in een nieuw tabblad"> +<!ENTITY type.label "Type"> +<!ENTITY tooltip.filterSource.label "Filterbron:"> +<!ENTITY noitems.label "Geen blokkeerbare onderdelen"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Grootte:"> +<!ENTITY reattach.label "Vastkoppelen"> +<!ENTITY search.label "&Zoeken:"> +<!ENTITY docDomain.thirdParty "(derden)"> +<!ENTITY filterSource.label "Filterbron"> +<!ENTITY tooltip.docDomain.label "Documentbron:"> +<!ENTITY context.copy.label "Adres kopiëren"> +<!ENTITY tooltip.type.label "Type:"> +<!ENTITY context.disablefilter.label "Filter ?1? uitschakelen"> +<!ENTITY context.copyFilter.label "Filter kopiëren"> +<!ENTITY context.block.label "Dit onderdeel blokkeren"> +<!ENTITY context.enablefilter.label "Filter ?1? inschakelen"> +<!ENTITY detach.label "Loskoppelen"> +<!ENTITY whitelisted.label "Toegestane pagina"> +<!ENTITY context.disablefilteronsite.label "Filter uitschakelen op ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokkeerbare onderdelen (losgekoppeld)"> +<!ENTITY docDomain.firstParty "(rechtstreeks)"> +<!ENTITY tooltip.type.whitelisted "(toegestaan)"> +<!ENTITY tooltip.filter.label "Toegepast filter:"> +<!ENTITY tooltip.filter.disabled "(uitgeschakeld)"> +<!ENTITY context.editfilter.label "Toegepast filter bewerken"> +<!ENTITY tooltip.type.blocked "(geblokkeerd)"> +<!ENTITY size.label "Grootte"> +<!ENTITY context.whitelist.label "Uitzonderingsregel voor dit onderdeel toevoegen"> +<!ENTITY context.selectAll.label "Alles selecteren"> +<!ENTITY state.label "Status"> +<!ENTITY docDomain.label "Documentbron"> +<!ENTITY tooltip.address.label "Adres:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/subscriptionSelection.dtd new file mode 100644 index 0000000..cfc0f76 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/nl/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Filterabonnement “?1?” oo&k toevoegen"> +<!ENTITY list.download.failed "Adblock Plus kan de lijst met abonnementen niet ophalen."> +<!ENTITY list.download.retry "Opnieuw proberen"> +<!ENTITY title.label "A&bonnementstitel:"> +<!ENTITY list.download.website "Website bekijken"> +<!ENTITY supplementMessage "Dit filterabonnement is bedoeld om samen gebruikt te worden met het filterabonnement “?1?”, dat u nog niet gebruikt."> +<!ENTITY viewList.label "Filters bekijken"> +<!ENTITY visitHomepage.label "Startpagina bezoeken"> +<!ENTITY addSubscription.label "Abonneren"> +<!ENTITY dialog.title "Adblock Plus filterabonnement toevoegen"> +<!ENTITY location.label "Fi&lterlijstlocatie:"> +<!ENTITY fromWeb.description "Bevestig a.u.b. dat u dit filterabonnement wilt toevoegen. U kunt de abonnementstitel of -locatie wijzigen voor toevoegen."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/composer.dtd new file mode 100644 index 0000000..37e1edc --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "na &końcu adresu"> +<!ENTITY domainRestriction.label "Ogranicz do dom&eny:"> +<!ENTITY collapse.default.no.label "Użyj domyślnej (nie)"> +<!ENTITY firstParty.label "Tylko pie&rwszy człon"> +<!ENTITY preferences.label "Wyświetl istniejące &filtry…"> +<!ENTITY pattern.label "Poszukaj wzorca"> +<!ENTITY thirdParty.label "Tylko trze&ci człon"> +<!ENTITY filter.label "&Nowy filtr:"> +<!ENTITY collapse.label "&Zwiń zablokowane:"> +<!ENTITY match.warning "Podany wzorzec nie pasuje do żadnego blokowanego/dozwolonego adresu i nie będzie miał zastosowania."> +<!ENTITY anchor.start.label "na &początku adresu"> +<!ENTITY matchCase.label "&Uwzględniaj wielkość liter"> +<!ENTITY custom.pattern.label "Wła&sny:"> +<!ENTITY unselectAllTypes.label "Odznacz wszystko"> +<!ENTITY type.whitelist.label "Reguła &wyjątku"> +<!ENTITY regexp.warning "Podany wzorzec będzie interpretowany jako wyrażenie regularne, które nie może być skutecznie przetwarzane przez Adblock Plusa i może powodować spowolnienie działania przeglądarki. Jeśli nie zamierzasz używać wyrażenia regularnego, dodaj gwiazdkę (*) na końcu wzorca."> +<!ENTITY dialog.title "Dodawanie reguły filtra"> +<!ENTITY basic.label "Wygląd podstawowy"> +<!ENTITY type.filter.label "Filtr &blokujący"> +<!ENTITY types.label "Zastosuj do typów:"> +<!ENTITY shortpattern.warning "Podany wzorzec jest zbyt krótki, by go zoptymalizować i może spowolnić działanie przeglądarki. Zaleca się dla tego filtra wybrać dłuższy ciąg znaków, by umożliwić Adblock Plusowi bardziej efektywne zastosowanie tego filtra."> +<!ENTITY collapse.yes.label "Tak"> +<!ENTITY anchors.label "Akceptuj tylko wzorzec:"> +<!ENTITY collapse.default.yes.label "Użyj domyślnej (tak)"> +<!ENTITY domainRestriction.help "Użyj tej opcji do określania jednej lub kilku domen, oddzielając ich nazwy znakiem (|). Filtr będzie stosowany jedynie dla wybranych domen. Znak tyldy (~) umieszczony przed nazwą domeny wskazuje, że filtr nie zostanie zastosowany w tej domenie."> +<!ENTITY accept.label "Dodaj filtr"> +<!ENTITY options.label "Opcje"> +<!ENTITY disabled.warning "Adblock Plus jest aktualnie wyłączony. Możesz nadal dodawać filtry, ale nie będą one działały do czasu [link]włączenia Adblock Plusa[/link]."> +<!ENTITY anchor.start.flexible.label "na p&oczątku nazwy domeny"> +<!ENTITY collapse.no.label "Nie"> +<!ENTITY selectAllTypes.label "Zaznacz wszystko"> +<!ENTITY advanced.label "Wygląd zaawansowany"> +<!ENTITY pattern.explanation "Wzorzec może być częścią adresu – gwiazdka (*) działa jako wieloznacznik. Filtr będzie stosowany tylko w adresach pasujących do tego wzorca."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/filters.dtd new file mode 100644 index 0000000..3d08e0f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Wszystkie własne filtry zostaną zastąpione zawartością wybranego pliku. Czy chcesz kontynuować?"> +<!ENTITY slow.column "&Wolne filtry"> +<!ENTITY enabled.column "A&ktywny"> +<!ENTITY subscription.lastDownload.checksumMismatch "Nie powiodło się – niepoprawna suma kontrolna"> +<!ENTITY noFiltersInGroup.text "Wybrana grupa jest pusta"> +<!ENTITY subscription.actions.label "Czynności"> +<!ENTITY filter.selectAll.label "Zaznacz wszystko"> +<!ENTITY backupButton.label "&Tworzenie i odtwarzanie kopii"> +<!ENTITY restore.minVersion.warning "Ostrzeżenie! Plik został utworzony za pomocą najnowszej wersji Adblock Plusa. Przed odtworzeniem zawartości tego pliku, należy zainstalować najnowszą wersję Adblock Plusa."> +<!ENTITY restore.error "Nie można przetworzyć danych filtra. Może to nie jest plik kopii zapasowej Adblock Plusa?"> +<!ENTITY sort.ascending.label "Kierunek sortow&ania A > Z"> +<!ENTITY sort.label "&Sortuj wg"> +<!ENTITY subscription.source.label "Zawartość zestawu"> +<!ENTITY hitcount.column "&Użycie"> +<!ENTITY noFilters.text "Nie masz jeszcze żadnych własnych filtrów."> +<!ENTITY backup.custom.title "Tylko własne filtry"> +<!ENTITY subscription.external.label "Zaktualizowany przez inne rozszerzenie"> +<!ENTITY subscription.delete.label "Usuń"> +<!ENTITY noGroupSelected.text "Aby filtry mogły być wyświetlane, należy najpierw wybrać grupę."> +<!ENTITY filter.cut.label "Wytnij"> +<!ENTITY restore.default.label "Odtwórz kopię z dnia ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Pobieranie…"> +<!ENTITY subscriptions.tab.label "Zestawy filtrów"> +<!ENTITY sort.descending.label "Kierunek sortowania &Z > A"> +<!ENTITY filters.remove.warning "Czy na pewno chcesz usunąć wszystkie wybrane filtry?"> +<!ENTITY filter.delete.label "Usuń"> +<!ENTITY addSubscriptionAdd.label "Dodaj"> +<!ENTITY viewMenu.label "Widok"> +<!ENTITY subscription.lastDownload.unknown "nieznane"> +<!ENTITY addSubscriptionCancel.label "Anuluj"> +<!ENTITY subscription.enabled.label "Aktywny"> +<!ENTITY noSubscriptions.text "Jeszcze nie dodano żadnego zestawu filtrów. Adblock Plus nie może nic blokować bez filtrów. Naciśnij przycisk „Dodaj zestaw filtrów…”, by dodać jakiś filtr."> +<!ENTITY subscription.update.label "Aktualizuj filtry"> +<!ENTITY dialog.title "Add Adblock Plus – ustawienia filtrów"> +<!ENTITY addFilter.label "Dodaj fi&ltr"> +<!ENTITY subscription.minVersion.warning "Ten zestaw filtrów działa z najnowszą wersją Adblock Plusa. Zaktualizuj Adblock Plusa."> +<!ENTITY subscription.lastDownload.invalidURL "Nie powiodło się – nieprawidłowy adres"> +<!ENTITY backup.error "W trakcie zapisu filtrów wystąpił błąd. Sprawdź, czy czasami plik nie ma zabezpieczenia przed zapisem lub nie jest używany przez inną aplikację."> +<!ENTITY filter.moveUp.label "Przenieś w górę"> +<!ENTITY addGroup.label "Dodaj &grupę filtrów"> +<!ENTITY filter.edit.label "Edytuj"> +<!ENTITY subscription.showHideFilters.label "Wyświetl/ukryj filtry"> +<!ENTITY acceptableAds2.label "Zezwalaj na nie natrętne rekla&my"> +<!ENTITY addSubscriptionOther.label "Wybierz inny zestaw"> +<!ENTITY close.label "Zamknij"> +<!ENTITY sort.none.label "Ni&eposortowane"> +<!ENTITY filter.actions.label "Czynności filtrów"> +<!ENTITY filter.copy.label "Kopiuj"> +<!ENTITY filter.moveDown.label "Przenieś w dół"> +<!ENTITY filter.resetHitCounts.label "Resetuj statystyki użycia"> +<!ENTITY readMore.label "Dowiedz się więcej"> +<!ENTITY subscription.moveUp.label "Przenieś w górę"> +<!ENTITY addSubscription.label "&Dodaj zestaw filtrów"> +<!ENTITY subscription.homepage.label "Strona domowa"> +<!ENTITY backup.complete.title "Wszystkie filtry i zestawy"> +<!ENTITY restore.own.label "Odtwórz własną kopię"> +<!ENTITY restore.complete.warning "Wszystkie ustawienia filtrów zostaną zastąpione zawartością wybranego pliku. Czy chcesz kontynuować?"> +<!ENTITY filters.tab.label "Własne filtry"> +<!ENTITY backup.label "Utwórz nową kopię"> +<!ENTITY find.label "Z&najdź"> +<!ENTITY subscription.moveDown.label "Przenieś w dół"> +<!ENTITY subscription.lastDownload.connectionError "Nie powiodło się – błąd pobierania"> +<!ENTITY subscription.lastDownload.success "Zakończono pomyślnie"> +<!ENTITY subscription.lastDownload.invalidData "Nie powiodło się – nieprawidłowy zestaw filtrów"> +<!ENTITY filter.paste.label "Wklej"> +<!ENTITY subscription.disabledFilters.enable "Włącz wyłączone filtry"> +<!ENTITY lasthit.column "&Ostatnie użycie"> +<!ENTITY subscription.editTitle.label "Edytuj nazwę zestawu"> +<!ENTITY subscription.disabledFilters.warning "Niektóre filtry w tym zestawie są wyłączone."> +<!ENTITY filter.column "&Reguła filtru"> +<!ENTITY subscription.lastDownload.label "Ostatnie pobieranie:"> +<!ENTITY viewList.label "Zobacz listę"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/firstRun.properties new file mode 100644 index 0000000..dee4d0f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Przeglądaj, zachowując prywatność poprzez wyłączenie śledzenia, ukrywając swoje ślady przed firmami reklamowymi, które chciałyby śledzić każdy twój ruch. +firstRun_toggle_off=WYŁ. +firstRun_feature_tracking=Wyłączenie śledzenia +firstRun_feature_malware=Blokowanie złośliwego oprogramowania +firstRun_title=Adblock Plus został zainstalowany +firstRun_toggle_on=WŁ. +firstRun_acceptableAdsExplanation=Chcielibyśmy zachęcić witryny do używania prostych, dyskretnych reklam. Dlatego mamy zdefiniowane<a> ścisłe wytyczne </ a>określające akceptowalne reklamy wyświetlane na podstawie tych ustawień. Jeśli chcesz blokować każdą reklamę, możesz tę funkcję <a> wyłączyć </ a> w ciągu kilku sekund. +firstRun_contributor_credits=Podziękowania dla współtwórców +firstRun_dataCorruptionWarning=Czy ta strona ma być wyświetlana? <a>Kliknij tutaj!</a> +firstRun_acceptableAdsHeadline=Irytujące reklamy będą teraz blokowane +firstRun_share=Powiedz znajomym +firstRun_share_headline=<a>Pomóż nam</a> uczynić internet lepszym miejscem +firstRun_feature_social_description=Automatycznie pozbądź się przycisków dodawanych przez media społecznościowe, takich jak facebookowy „Lubię to!”, które śledzą twoje zachowanie. +firstRun_filterlistsReinitializedWarning=Wygląda na to, że w wyniku błędu wszystkie filtry zostały usunięte i nie udało się ich przywrócić z kopii zapasowej, dlatego twoje filtry i ustawienia akceptowalnych reklam zostały zresetowane. Sprawdź swoje listy filtrów i ustawienia akceptowalnych reklam w <a>opcjach Adblock Plusa</a>. +firstRun_feature_malware_description=Spraw, by twoje przeglądanie było bardziej bezpieczne, blokując znane domeny ze złośliwym oprogramowaniem. +firstRun_features=Adblock Plus umożliwia więcej niż blokowanie reklam +firstRun_donate=Wspomóż nas +firstRun_donate_label=Wesprzyj nasz projekt +firstRun_feature_social=Usuwanie przycisków serwisów społecznościowych +firstRun_legacySafariWarning=Używasz starej, nie obsługiwanej już przez Adblock Plusa wersji Safari. Może to powodować nieprawidłowe działanie lub zakłócać przeglądanie niektórych witryn. Zalecamy uaktualnienie Safari w systemie OS X Mountain Lion do wersji 6.1.1 lub nowszej, lub do wersji 7.0.1 lub nowszej w systemie OS X 10.9 Maverick. Możesz także użyć najnowszych wersji przeglądarek Firefox, Chrome lub Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/global.properties new file mode 100644 index 0000000..36c805e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Nieblokowalne elementy na aktywnej stronie +action3_tooltip=Kliknij l.p.m., aby włączyć/wyłączyć Adblock Plus +notification_antiadblock_title=Ukrywanie ukierunkowanych informacji +type_label_script=skrypt +filter_elemhide_nocriteria=Nie określono kryteriów rozpoznania elementu do ukrycia +blockingGroup_title=Reguły blokowania reklam +whitelisted_tooltip=Adblock Plus jest aktywny, ale wyłączony na oglądanej stronie. +type_label_stylesheet=arkusz stylów +blocked_count_tooltip=?1? z ?2? +type_label_font=czcionka +type_label_popup=wyskakujące okno +filter_regexp_tooltip=Ten filtr jest wyrażeniem regularnym albo jest za krótki, aby go zoptymalizować. Zbyt dużo filtrów tego rodzaju może powodować spowolnienie przeglądania internetu. +action0_tooltip=Kliknij l.p.m., aby otworzyć menu kontekstowe, ś.p.m., aby włączyć/wyłączyć +whitelisted_page=Adblock Plus został wyłączony dla tej strony +remove_group_warning=Czy na pewno chcesz usunąć tę grupę? +action1_tooltip=Kliknij l.p.m., aby otworzyć/zamknąć listę blokowalnych elementów, ś.p.m., aby włączyć/wyłączyć +type_label_xmlhttprequest=żądanie XML +active_tooltip=Adblock Plus jest aktywny. Subskrybowane zestawy: ?1? i własne filtry: ?2?. +type_label_document=dokument +type_label_object_subrequest=subżądanie obiektu +whitelistGroup_title=Reguły wyjątków +disabled_tooltip=Adblock Plus jest wyłączony +filter_elemhide_duplicate_id=Może być określony tylko jeden ID elementu do ukrycia +type_label_object=obiekt +action2_tooltip=Kliknij l.p.m., aby otworzyć opcje, ś.p.m., aby włączyć/wyłączyć +type_label_subdocument=ramka +clearStats_warning=Spowoduje to zresetowanie wszystkich statystyk użycia filtra i wyłączenie zliczania kolejnych użyć. Czy chcesz kontynuować? +notification_antiadblock_message=Ta witryna wyświetla użytkownikom Adblock Plusa ukierunkowane dla nich informacje. Czy chcesz, by Adblock Plus ukrywał tego typu informacje? +blocked_count_addendum=(dozwolone:?1?, ukryte:?2?) +subscription_invalid_location=Lokalizacja zestawu filtrów ma niewłaściwą nazwę pliku, albo adres URL +type_label_image=obrazek +remove_subscription_warning=Czy chcesz usunąć ten zestaw? +type_label_other=inne +mobile_menu_enable=ABP:Włącz +type_label_media=audio/wideo +mobile_menu_disable_site=ABP:Wyłącz na ?1? +elemhideGroup_title=Reguły ukrywania elementów +mobile_menu_enable_site=ABP:Włącz na ?1? +type_label_elemhide=ukryty +newGroup_title=Nowa grupa filtrów +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/overlay.dtd new file mode 100644 index 0000000..115752e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Tak"> +<!ENTITY notification.button.no "&Nie"> +<!ENTITY sync.label "&Synchronizuj ustawienia Adblock Plusa"> +<!ENTITY whitelist.site.label "Wyłącz blokowanie na ?1?"> +<!ENTITY filters.label "&Ustawienia filtra"> +<!ENTITY disable.label "Wyłącz wszędzie"> +<!ENTITY objecttab.title "Zablokuj"> +<!ENTITY objecttab.tooltip "Kliknij tutaj, aby zablokować ten obiekt"> +<!ENTITY menuitem.label "&Adblock Plus - ustawienia"> +<!ENTITY objecttabs.label "Wyświetlaj przycis&ki blokowania na elementach Flasha i Javy"> +<!ENTITY sendReport.label "&Zgłoś problem na tej stronie"> +<!ENTITY whitelist.page.label "Wyłącz blokowanie tylko na tej stronie"> +<!ENTITY context.image.label "Zablokuj obrazek"> +<!ENTITY counthits.label "Zli&czaj użycie filtra"> +<!ENTITY opensidebar.label "Otwórz listę &blokowalnych elementów"> +<!ENTITY notification.button.close "&Zamknij"> +<!ENTITY contribute.label "Wspomóż Adblock Plusa"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Zablokuj ramkę"> +<!ENTITY blocked.tooltip "Zablokowane elementy na tej stronie:"> +<!ENTITY hideplaceholders.label "Ukrywaj za&mienniki blokowanych elementów"> +<!ENTITY showinstatusbar.label "&Wyświetlaj ikonę Adblock Plusa na pasku stanu"> +<!ENTITY sidebar.title "Blokowalne elementy na aktywnej stronie"> +<!ENTITY options.label "&Opcje"> +<!ENTITY context.object.label "Zablokuj obiekt"> +<!ENTITY context.removeWhitelist.label "Włącz ponownie na tej stronie"> +<!ENTITY filters.tooltip "Najczęściej stosowane filtry:"> +<!ENTITY closesidebar.label "Zamknij listę blokowal&nych elementów"> +<!ENTITY showintoolbar.label "Wyświetlaj ikonę Adblock Plusa na pasku na&rzędzi"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Zablokuj wideo/audio"> +<!ENTITY subscription.update.label "Aktualizuj filtry"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/sendReport.dtd new file mode 100644 index 0000000..7ab04d9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Cofnij"> +<!ENTITY issues.disabledgroups.description "Następujące zestawy filtrów/grupy filtrów są wyłączone, ale mogą oddziaływać na tę stronę:"> +<!ENTITY showData.label "Wyświetl dane zgłoszenia"> +<!ENTITY typeSelector.falsePositive.label "&Adblock Plus zbyt dużo blokuje"> +<!ENTITY issues.change.description "Twoja konfiguracja została zmieniona. By wykonać test zmian, odśwież stronę i wyślij zgłoszenie, jeśli dokonane zmiany nie rozwiązały problemu."> +<!ENTITY email.label "Em&ail:"> +<!ENTITY issues.openPreferences.label "Otwórz ustawienia filtra"> +<!ENTITY sendPage.confirmation "Zgłoszenie zostało zapisane. Możesz zobaczyć je pod następującym adresem:"> +<!ENTITY copyLink.label "&Kopiuj odnośnik zgłoszenia"> +<!ENTITY issues.nofilters.description "Na aktualnej stronie Adblock Plus nic nie blokuje. Obserwowany problem najprawdopodobniej nie jest związany z Adblock Plusem."> +<!ENTITY sendPage.knownIssue "Prawdopodobnie zgłaszany problem jest już znany. Więcej informacji:"> +<!ENTITY typeSelector.other.description "Wybierz tę opcję, jeśli podejrzewasz, że problem związany jest z samym Adblock Plusem, a nie z filtrami."> +<!ENTITY issues.disabledgroups.enable.label "Włącz zestawy filtrów/grupy filtrów"> +<!ENTITY typeWarning.override.label "Rozu&miem i mimo wszystko chcę wysłać zgłoszenie"> +<!ENTITY issues.disabled.enable.label "Włącz Adblock Plusa"> +<!ENTITY update.fixed.description "Aktualizacja zestawu filtrów prawdopodobnie rozwiązała zgłaszany problem. Odśwież stronę i spróbuj ponownie, naciśnij przycisk Zgłoś, jeśli problem nadal występuje."> +<!ENTITY anonymous.label "&Wyślij anonimowo"> +<!ENTITY reloadButton.label "&Odśwież stronę"> +<!ENTITY recentReports.clear.label "&Usuń wszystkie zgłoszenia"> +<!ENTITY typeSelector.description "Tutaj możesz wykonać czynności niezbędne do wysłania zgłoszenia problemu związanego z Adblock Plusem. Najpierw wybierz typ problemu, jaki występuje na tej stronie:"> +<!ENTITY screenshot.remove.label "&Ukryj poufne dane"> +<!ENTITY issues.ownfilters.description "Część filtrów stosowanych na tej stronie jest zdefiniowanych przez ciebie. Wyłącz filtry, które mogły spowodować problem:"> +<!ENTITY update.inProgress.description "Aby upewnić się, że problem został już rozwiązany, Adblock Plus musi zaktualizować twój zestaw filtrów. Proszę czekać…"> +<!ENTITY sendPage.retry.label "Wyślij ponownie"> +<!ENTITY data.label "Dan&e zgłoszenia"> +<!ENTITY recentReports.label "Twoje ostatnio wysłane zgłoszenia"> +<!ENTITY typeWarning.description "Chcesz zgłosić ogólny problem dotyczący Adblock Plusa, a nie problem z filtrami. Tego rodzaju problemy najlepiej jest zgłaszać na [link]forum Adblock Plusa[/link]. Reportera błędów powinno się używać do uzupełnienia dyskusji na forum, ponieważ nikt nie zauważy zgłoszenia, chyba że dołączysz do niego odnośnik. Automatycznie generowany odnośnik zostanie dołączony po wysłaniu zgłoszenia."> +<!ENTITY issues.disabled.description "Adblock Plus jest wyłączony. Obecnie nic nie będzie blokował."> +<!ENTITY attachExtensions.label "Dołącz do zgłoszenia listę aktywnych &rozszerzeń, gdy przyczyną problemu jest konflikt z innym rozszerzeniem."> +<!ENTITY issues.nosubscriptions.add.label "Subskrybuj filtry"> +<!ENTITY issues.disabledfilters.enable.label "Włącz filtr"> +<!ENTITY issues.override.label "&Konfiguracja jest prawidłowa – kontynuuj zgłoszenie"> +<!ENTITY issues.nosubscriptions.description "Wygląda na to, że nie subskrybujesz żadnej gotowej listy filtrów, które automatycznie usuwają niepożądaną zawartość ze stron internetowych."> +<!ENTITY typeSelector.falsePositive.description "Wybierz tę opcję, jeśli strona nie zawiera ważnych treści, jest wyświetlana nieprawidłowo lub działa niepoprawnie. Możesz określić, czy Adblock Plus jest przyczyną problemu, wyłączając go chwilowo."> +<!ENTITY typeSelector.other.label "&Inny problem"> +<!ENTITY emailComment.label "Zachęcamy do podania prawidłowego adresu e-mail, abyśmy mogli skontaktować się z tobą w przypadku, gdy może to ułatwić rozwiązanie problemu. Pozwoli to również rozpoznać naszych współpracowników i nadać ich raportom wyższy priorytet."> +<!ENTITY issues.whitelist.remove.label "Włącz ponownie Adblock Plusa na tej stronie"> +<!ENTITY outdatedSubscriptions.description "Od dwóch tygodni następujące zestawy filtrów nie były aktualizowane. Przed wysłaniem zgłoszenia zaktualizuj te zestawy. Być może rozwiąże to twój problem."> +<!ENTITY dataCollector.description "Proszę poczekać kilka chwil, aż Adblock Plus zbierze wymagane dane."> +<!ENTITY sendButton.label "&Wyślij zgłoszenie"> +<!ENTITY comment.label "O&bjaśnienia (opcjonalne):"> +<!ENTITY sendPage.errorMessage "Próba wysłania zgłoszenia nie powiodła się z powodu „?1?” Sprawdź połączenie z Internetem i ponów próbę. Jeśli problem będzie nadal występował, poproś o pomoc na [link]forum Adblock Plusa[/link]."> +<!ENTITY showRecentReports.label "Wyświetl ostatnio wysłane zgłoszenia"> +<!ENTITY commentPage.heading "Dodaj objaśnienie"> +<!ENTITY update.start.label "Aktualizuj teraz"> +<!ENTITY issues.disabledfilters.description "Następujące filtry są wyłączone, ale mogą oddziaływać na tę stronę:"> +<!ENTITY screenshot.description "Ta sama strona może wyglądać różnie dla różnych osób. Dołączenie zrzutu ekranu do zgłoszenia może pomóc nam w zrozumieniu problemu. Możesz usunąć miejsca, gdzie występują informacje poufne, jak również zaznaczyć obszary, gdzie problem jest zauważalny. W tym celu naciśnij odpowiedni przycisk i wybierz fragment obrazka za pomocą myszy."> +<!ENTITY screenshot.attach.label "Dołącz obrazek &strony do zgłoszenia"> +<!ENTITY issues.whitelist.description "Adblock Plus jest obecne wyłączony na zgłaszanej stronie. By ułatwić zbadanie tego problemu, przed jego zgłoszeniem włącz ponownie Adblock Plusa i odśwież stronę."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus nie blokuje &reklam"> +<!ENTITY typeSelector.heading "Wybierz typ problemu"> +<!ENTITY anonymity.warning "Nie będziemy w stanie się z tobą skontaktować, co może spowodować nadanie raportowi niższego priorytetu."> +<!ENTITY wizard.title "Reporter problemów"> +<!ENTITY issues.ownfilters.disable.label "Wyłącz filtr"> +<!ENTITY commentPage.description "W poniższym polu tekstowym możesz podać objaśnienie, które pomoże nam zrozumieć problem. Jest to opcjonalne, ale zalecane, jeśli problem nie jest oczywisty. Możesz również sprawdzić dane zawarte w zgłoszeniu przed jego wysłaniem."> +<!ENTITY comment.lengthWarning "Treść objaśnienia przekroczyła dopuszczalny limit 1000 znaków. Zostanie wysłane tylko pierwsze 1000 znaków."> +<!ENTITY typeSelector.falseNegative.description "Wybierz tę opcję, jeśli reklama jest wyświetlana pomimo tego, że Adblock Plus jest włączony."> +<!ENTITY sendPage.waitMessage "Wysyłanie zgłoszenia… Proszę czekać."> +<!ENTITY dataCollector.heading "Witamy w reporterze problemów"> +<!ENTITY screenshot.heading "Dołącz zrzut ekranu"> +<!ENTITY sendPage.heading "Wyślij zgłoszenie"> +<!ENTITY issues.subscriptionCount.description "Wydaje się, że wybrano subskrypcje zbyt dużej liczby filtrów. Nie jest to zalecane, ponieważ zwiększy prawdopodobieństwo wystąpienia problemów. Jeśli w związku z tym wystąpią problemy, nie będziemy przyjmowali zgłoszeń tych problemów, ponieważ nie będziemy w stanie rozpoznać autora filtrów i powiadomić go, by podjął odpowiednie działania. Usuń wszystkie subskrybowane filtry i sprawdź czy problem nadal występuje."> +<!ENTITY screenshot.mark.label "O&znacz problem"> +<!ENTITY privacyPolicy.label "Zasady ochrony prywatności"> +<!ENTITY issues.description "Adblock Plus wykrył problemy z twoją konfiguracją, które mogą być odpowiedzialne za powstanie tego problemu lub mogą utrudniać jego zbadanie."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/sidebar.dtd new file mode 100644 index 0000000..bbb27b6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Pokaż element w mrugającej ramce"> +<!ENTITY address.label "Adres"> +<!ENTITY context.open.label "Otwórz w nowej karcie"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Źródło filtra:"> +<!ENTITY noitems.label "Elementy nieblokowalne"> +<!ENTITY filter.label "Filtr"> +<!ENTITY tooltip.size.label "Rozmiar:"> +<!ENTITY reattach.label "Przyłącz"> +<!ENTITY search.label "&Szukaj:"> +<!ENTITY docDomain.thirdParty "(trzeci człon adresu)"> +<!ENTITY filterSource.label "Źródło filtra"> +<!ENTITY tooltip.docDomain.label "Źródło dokumentu:"> +<!ENTITY context.copy.label "Kopiuj adres elementu"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Wyłącz filtr ?1?"> +<!ENTITY context.copyFilter.label "Kopiuj filtr"> +<!ENTITY context.block.label "Zablokuj ten element"> +<!ENTITY context.enablefilter.label "Włącz filtr ?1?"> +<!ENTITY detach.label "Odłącz"> +<!ENTITY whitelisted.label "Nieblokowana strona"> +<!ENTITY context.disablefilteronsite.label "Wyłącz ten filtr na ?1?"> +<!ENTITY detached.title "Adblock Plus – elementy blokowalne (odłączony)"> +<!ENTITY docDomain.firstParty "(pierwszy człon adresu)"> +<!ENTITY tooltip.type.whitelisted "(nieblokowane)"> +<!ENTITY tooltip.filter.label "Działające filtry:"> +<!ENTITY tooltip.filter.disabled "(wyłączony)"> +<!ENTITY context.editfilter.label "Edytuj filtr w rzeczywistości"> +<!ENTITY tooltip.type.blocked "(zablokowany)"> +<!ENTITY size.label "Rozmiar"> +<!ENTITY context.whitelist.label "Dodaj regułę wyjątku dla elementu"> +<!ENTITY context.selectAll.label "Zaznacz filtr"> +<!ENTITY state.label "Stan"> +<!ENTITY docDomain.label "Źródło elementu"> +<!ENTITY tooltip.address.label "Adres:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/subscriptionSelection.dtd new file mode 100644 index 0000000..18c1b41 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pl/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Dodaj także ze&staw „?1?”"> +<!ENTITY list.download.failed "Nie udało się pobrać listy zestawów."> +<!ENTITY list.download.retry "Spróbuj jeszcze raz"> +<!ENTITY title.label "&Nazwa zestawu:"> +<!ENTITY list.download.website "Zobacz witrynę"> +<!ENTITY supplementMessage "Ten zestaw filtrów musi być używany z zestawem „?1?”, który nie jest jeszcze subskrybowany."> +<!ENTITY viewList.label "Zobacz filtry"> +<!ENTITY visitHomepage.label "Przejdź na stronę zestawu"> +<!ENTITY addSubscription.label "Subskrybuj zestaw"> +<!ENTITY dialog.title "Add Adblock Plus – zestawy filtrów"> +<!ENTITY location.label "&Lokalizacja zestawu:"> +<!ENTITY fromWeb.description "Potwierdź zamiar dodania tego zestawu filtrów. Przed dodaniem zestawu możesz zmienić jego nazwę lub lokalizację."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/composer.dtd new file mode 100644 index 0000000..d8b038d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "no f&inal do endereço"> +<!ENTITY domainRestriction.label "Restringir domínio:"> +<!ENTITY collapse.default.no.label "Usar padrão (não)"> +<!ENTITY firstParty.label "So&mente mesmo domínio"> +<!ENTITY preferences.label "Mostrar filtros existentes..."> +<!ENTITY pattern.label "Procurar padrão"> +<!ENTITY thirdParty.label "So&mente de terceiros"> +<!ENTITY filter.label "Novo &filtro:"> +<!ENTITY collapse.label "Es&tado de crise bloqueado:"> +<!ENTITY match.warning "O padrão que você digitou não corresponde mais ao endereço a ser bloqueado/liberado e não terá efeito sobre ele."> +<!ENTITY anchor.start.label "no &começo do endereço"> +<!ENTITY matchCase.label "&Diferenciar maiúsculas/minúsculas"> +<!ENTITY custom.pattern.label "&Personalizado:"> +<!ENTITY unselectAllTypes.label "Desmarcar todos"> +<!ENTITY type.whitelist.label "E&xceção"> +<!ENTITY regexp.warning "O padrão que você digitou será interpretado como uma expressão regular que pode não ser eficientemente processada pelo Adblock Plus e pode retardar sua experiência de navegação. Se você não pretende usar uma expressão regular, adicione um asterisco (*) até o fim do padrão."> +<!ENTITY dialog.title "Adicionar regra de filtro do Adblock Plus"> +<!ENTITY basic.label "Visualização básica"> +<!ENTITY type.filter.label "&Filtro de Bloqueio"> +<!ENTITY types.label "Aplicar a tipos:"> +<!ENTITY shortpattern.warning "O padrão digitado é curto demais para ser otimizado e poderá causar lentidão na sua experiência de navegação. É recomendável que você escolha uma "string"(sequência de caracteres) mais longa para esse filtro para permitir que o Adblock Plus processe o filtro mais eficientemente."> +<!ENTITY collapse.yes.label "Sim"> +<!ENTITY anchors.label "Aceitar somente padrão:"> +<!ENTITY collapse.default.yes.label "Usar padrão (sim)"> +<!ENTITY domainRestriction.help "Use esta opção para especificar um ou mais domínios separados pelo símbolo "|". O filtro será aplicado somente nos domínios selecionados. O símbolo "~" antes de um domínio significa que o filtro não deve ser aplicado naquele domínio."> +<!ENTITY accept.label "Adicionar filtro"> +<!ENTITY options.label "Opções"> +<!ENTITY disabled.warning "O Adblock Plus está desativado atualmente. Você pode adicionar filtros mesmo assim, mas eles não serão aplicados até que você [link]ative o Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "no &começo do nome do domínio"> +<!ENTITY collapse.no.label "Não"> +<!ENTITY selectAllTypes.label "Selecionar todos"> +<!ENTITY advanced.label "Visualização avançada"> +<!ENTITY pattern.explanation "O padrão pode ser qualquer parte do endereço; o símbolo * funciona como curinga. O filtro somente será aplicado se o endereço corresponder ao padrão."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/filters.dtd new file mode 100644 index 0000000..9db67d1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Todos os seus filtros personalizados serão substituídos pelo conteúdo do arquivo selecionado. Você deseja continuar?"> +<!ENTITY slow.column "Filtros l&entos"> +<!ENTITY enabled.column "&Ativado"> +<!ENTITY subscription.lastDownload.checksumMismatch "Falhou, checksum deu errado"> +<!ENTITY noFiltersInGroup.text "O grupo selecionado está vazio."> +<!ENTITY subscription.actions.label "Ações"> +<!ENTITY filter.selectAll.label "Selecionar tudo"> +<!ENTITY backupButton.label "&Backup e restauração"> +<!ENTITY restore.minVersion.warning "Atenção! O arquivo foi criado com um versão mais nova do Adblock Plus. Por favor, atualize o Adblock Plus para a versão mais recente antes de restaurar esse arquivo."> +<!ENTITY restore.error "Não foi possível processar os dados desse arquivo. Talvez ele não seja um arquivo de backup do Adblock Plus."> +<!ENTITY sort.ascending.label "Ordenar &A > Z"> +<!ENTITY sort.label "&Organizar por"> +<!ENTITY subscription.source.label "lista de filtros"> +<!ENTITY hitcount.column "A&certos"> +<!ENTITY noFilters.text "Você ainda não tem nenhum filtro personalizado."> +<!ENTITY backup.custom.title "Somente filtros personalizados"> +<!ENTITY subscription.external.label "Atualizado por outra extensão"> +<!ENTITY subscription.delete.label "Excluir"> +<!ENTITY noGroupSelected.text "Você precisa selecionar um grupo de filtros antes para que os filtros sejam mostrados."> +<!ENTITY filter.cut.label "Recortar"> +<!ENTITY restore.default.label "Restaurar backup de ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Fazendo download..."> +<!ENTITY subscriptions.tab.label "Inscrições de filtros"> +<!ENTITY sort.descending.label "Ordenar &Z > A"> +<!ENTITY filters.remove.warning "Você realmente deseja remover todos os filtros selecionados?"> +<!ENTITY filter.delete.label "Excluir"> +<!ENTITY addSubscriptionAdd.label "Adicionar"> +<!ENTITY viewMenu.label "Visualizar"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Cancelar"> +<!ENTITY subscription.enabled.label "Ativado"> +<!ENTITY noSubscriptions.text "Você ainda não adicionou nenhuma inscrição de filtros. O Adblock Plus não vai bloquear nada sem filtros. Por favor, clique em "Adicionar inscrição de filtros"."> +<!ENTITY subscription.update.label "Atualizar filtros"> +<!ENTITY dialog.title "Opções de Filtros do Adblock Plus"> +<!ENTITY addFilter.label "A&dicionar filtro"> +<!ENTITY subscription.minVersion.warning "Esta inscrição de filtros exige uma versão mais nova do Adblock Plus. Por favor, atualize o Adblock Plus para a versão mais recente."> +<!ENTITY subscription.lastDownload.invalidURL "Falhou, não é um endereço válido"> +<!ENTITY backup.error "Ocorreu um erro ao gravar os filtros no arquivo. Verifique se o arquivo está protegido contra gravação ou se está em uso por outro programa."> +<!ENTITY filter.moveUp.label "Para cima"> +<!ENTITY addGroup.label "Adicionar &grupo de filtros"> +<!ENTITY filter.edit.label "Editar"> +<!ENTITY subscription.showHideFilters.label "Exibir/ocultar filtros"> +<!ENTITY acceptableAds2.label "Permitir algumas propagandas não-&invasivas"> +<!ENTITY addSubscriptionOther.label "Adicionar outra inscrição"> +<!ENTITY close.label "Fechar"> +<!ENTITY sort.none.label "&Não Organizado"> +<!ENTITY filter.actions.label "Ações de filtros"> +<!ENTITY filter.copy.label "Copiar"> +<!ENTITY filter.moveDown.label "Mover para baixo"> +<!ENTITY filter.resetHitCounts.label "Limpar estatística de acertos"> +<!ENTITY readMore.label "Saiba mais"> +<!ENTITY subscription.moveUp.label "Para cima"> +<!ENTITY addSubscription.label "Adicionar inscrição de &filtros"> +<!ENTITY subscription.homepage.label "página da inscrição"> +<!ENTITY backup.complete.title "Todos os filtros e inscrições"> +<!ENTITY restore.own.label "Restaurar backup próprio"> +<!ENTITY restore.complete.warning "Todas as suas opções de filtros serão substituídas pelo conteúdo do arquivo selecionado. Você deseja continuar?"> +<!ENTITY filters.tab.label "Filtros personalizados"> +<!ENTITY backup.label "Criar novo backup"> +<!ENTITY find.label "&Localizar"> +<!ENTITY subscription.moveDown.label "Para baixo"> +<!ENTITY subscription.lastDownload.connectionError "Falhou, falha no download"> +<!ENTITY subscription.lastDownload.success "Êxito"> +<!ENTITY subscription.lastDownload.invalidData "Falhou, não é uma lista de filtros válida"> +<!ENTITY filter.paste.label "Colar"> +<!ENTITY subscription.disabledFilters.enable "Ativar filtros desativados"> +<!ENTITY lasthit.column "Ú&ltimo acerto"> +<!ENTITY subscription.editTitle.label "Editar título"> +<!ENTITY subscription.disabledFilters.warning "Alguns filtros nesta inscrição estão desativados."> +<!ENTITY filter.column "Regra de &Filtro"> +<!ENTITY subscription.lastDownload.label "Último download:"> +<!ENTITY viewList.label "Ver lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/firstRun.properties new file mode 100644 index 0000000..19fb73f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navegar em modo privado desabilitando o acompanhamento - esconde seus rastros de empresas de anúncio que iria acompanhar cada movimento seu. +firstRun_toggle_off=DESLIGADO +firstRun_feature_tracking=Desativa o Rastreamento +firstRun_feature_malware=Bloqueio de Malware +firstRun_title=O Adblock Plus foi instalado +firstRun_toggle_on=LIGADO +firstRun_acceptableAdsExplanation=Gostaríamos de incentivar sites com publicidade discreta, é simples de usar. É por isso que estabelecemos <a>diretrizes rígidas</a> para identificarmos anúncios aceitáveis, que são mostrados em configurações padrão. Se você ainda deseja bloquear todos os anúncios você pode <a>desativar</a> isso em poucos segundos. +firstRun_contributor_credits=Créditos dos contribuidores +firstRun_dataCorruptionWarning=Esta página continua aparecendo? <a>Clique aqui!</a> +firstRun_acceptableAdsHeadline=Anúncios chatos serão bloqueados +firstRun_share=Indique a seus amigos +firstRun_share_headline=<a>Ajude-nos</a> a tornar a web um lugar melhor +firstRun_feature_social_description=Automaticamente melhore sua experiência de navegação livrando-se de botões de redes sociais, como o Like do Facebook, que aparecem em páginas da web e que controlam seu comportamento. +firstRun_filterlistsReinitializedWarning=Parece que algum um problema causou a remoção de todos os filtros e fomos incapazes de restaurá-los por backup. Portanto tivemos que resetar seus filtros e as configurações de anúncios toleráveis. Por favor verifique a lista de filtros a as configurações de anúncios aceitáveis em <a>Opções do Adblock Plus</a>. +firstRun_feature_malware_description=Tornar sua navegação mais segura através do bloqueio de sites conhecidos com malwares. +firstRun_features=O Adblock Plus pode fazer mais do que bloquear anúncios +firstRun_donate=Doar +firstRun_donate_label=Apoiar o projeto +firstRun_feature_social=Remove Botões de Redes Sociais +firstRun_legacySafariWarning=Você está usando uma versão antiga do Safari não suportada pelo Adblock Plus. Ele pode não funcionar corretamente ou prejudicar a experiência do usuário em alguns sites. Recomendamos fortemente atualizar para o Safari 6.1.1 ou superior (no OS X 10.8 Mountain Lion) ou Safari 7.0.1 ou superior (no OS X 10.9 Mavericks), ou usar a última versão do Mozilla Firefox, Google Chrome ou Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/global.properties new file mode 100644 index 0000000..1a882de --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Nenhum item bloqueável na página atual +action3_tooltip=Clique para ativar/desativar o Adblock Plus. +notification_antiadblock_title=Ocultar mensagens direcionadas? +type_label_script=script +filter_elemhide_nocriteria=Nenhum critério especificado para reconhecer o elemento a ser ocultado +blockingGroup_title=Regras de bloqueio de propaganda +whitelisted_tooltip=O Adblock Plus está ativo, mas desativado na página atual. +type_label_stylesheet=folha de estilos +blocked_count_tooltip=?1? de ?2? +type_label_font=fonte +type_label_popup=janela popup +filter_regexp_tooltip=Este filtro é também uma expressão regular ou curta demais para ser otimizada. Muitos desses filtros podem causar lentidão na navegação. +action0_tooltip=Clique para mostrar o menu de contexto, e com o botão do meio para ativar/desativar. +whitelisted_page=O Adblock Plus foi desativado para a página atual +remove_group_warning=Você realmente deseja remover este grupo? +action1_tooltip=Clique para abrir/fechar itens bloqueáveis, e com o botão do meio para ativar/desativar. +type_label_xmlhttprequest=requisição XML +active_tooltip=O Adblock Plus está ativado, com ?1? inscrições de filtros e ?2? filtros personalizados. +type_label_document=documento +type_label_object_subrequest=sub-requisição do objeto +whitelistGroup_title=Regras de exceção +disabled_tooltip=O Adblock Plus está desativado. +filter_elemhide_duplicate_id=Somente uma ID do elemento a ser ocultado pode ser especificada +type_label_object=objeto +action2_tooltip=Clique para abrir as preferências, e com o botão do meio para ativar/desativar. +type_label_subdocument=frame +clearStats_warning=Isso vai reiniciar todas as estatísticas de acertos dos filtros e desativar o contador de acertos dos filtros. Você deseja continuar? +notification_antiadblock_message=Este site é conhecido por mostrar mensagens direcionadas a usuários do Adblock Plus. Você quer que o Adblock Plus esconda mensagens direcionadas? +blocked_count_addendum=(e também liberados: ?1?, ocultos: ?2?) +subscription_invalid_location=O local da lista de filtros não é nem uma URL válida nem um nome válido de arquivo. +type_label_image=imagem +remove_subscription_warning=Você realmente deseja remover esta inscrição? +type_label_other=outro +mobile_menu_enable=ABP: Ativado +type_label_media=áudio/vídeo +mobile_menu_disable_site=ABP: Desativado em ?1? +elemhideGroup_title=Regras de ocultamento de elementos +mobile_menu_enable_site=ABP: Ativado em ?1? +type_label_elemhide=oculto +newGroup_title=Novo grupo de filtros +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/overlay.dtd new file mode 100644 index 0000000..58def63 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Sim"> +<!ENTITY notification.button.no "&Não"> +<!ENTITY sync.label "S&incronizar configurações do Adblock Plus"> +<!ENTITY whitelist.site.label "Desativar em ?1?"> +<!ENTITY filters.label "Opções de &filtros"> +<!ENTITY disable.label "Desativar em todas as páginas"> +<!ENTITY objecttab.title "Bloquear"> +<!ENTITY objecttab.tooltip "Clique aqui para bloquear este objeto com o Adblock Plus"> +<!ENTITY menuitem.label "Preferências do Ad&block Plus"> +<!ENTITY objecttabs.label "Mostrar abas em Flash e &Java"> +<!ENTITY sendReport.label "&Reportar problema nesta página"> +<!ENTITY whitelist.page.label "Desativar somente nesta página"> +<!ENTITY context.image.label "Adblock Plus: Bloquear imagem"> +<!ENTITY counthits.label "Cont&ar acertos de filtros"> +<!ENTITY opensidebar.label "A&brir itens bloqueáveis"> +<!ENTITY notification.button.close "&Fechar"> +<!ENTITY contribute.label "Contribuir com o Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Bloquear quadro"> +<!ENTITY blocked.tooltip "Itens bloqueados nesta página:"> +<!ENTITY hideplaceholders.label "Ocultar &marcadores de elementos bloqueados"> +<!ENTITY showinstatusbar.label "&Mostrar na barra de status"> +<!ENTITY sidebar.title "Itens bloqueáveis na página atual"> +<!ENTITY options.label "&Opções"> +<!ENTITY context.object.label "Adblock Plus: Bloquear objeto"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Reativar nessa página"> +<!ENTITY filters.tooltip "Filtros mais ativos:"> +<!ENTITY closesidebar.label "Fechar itens &bloqueáveis"> +<!ENTITY showintoolbar.label "Mostrar na barra de &ferramentas"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Bloquear áudio/vídeo"> +<!ENTITY subscription.update.label "Atualizar filtros"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/sendReport.dtd new file mode 100644 index 0000000..4f2bfd5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Desfazer"> +<!ENTITY issues.disabledgroups.description "Os seguintes grupos e inscrições de filtros está desativados, mas eles podem estar afetando essa página:"> +<!ENTITY showData.label "Exibir os dados do relatório"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus está bloqueando de&mais"> +<!ENTITY issues.change.description "Sua configuração foi alterada. Por favor, atualize a página para testar as alterações e enviar um relatório caso o erro continue a ocorrer."> +<!ENTITY email.label "E&mail:"> +<!ENTITY issues.openPreferences.label "Abrir configuração de filtros"> +<!ENTITY sendPage.confirmation "Seu relatório foi salvo. Você pode acessá-lo no seguinte endereço:"> +<!ENTITY copyLink.label "&Copiar endereço do relatório"> +<!ENTITY issues.nofilters.description "O Adblock Plus não está bloqueando nada nessa página. É improvável que o erro observado esteja relacionado com o Adblock Plus."> +<!ENTITY sendPage.knownIssue "O problema que você informou provavelmente já é conhecido. Mais informações:"> +<!ENTITY typeSelector.other.description "Escolha esta opção se você suspeita que há um erro no próprio Adblock Plus e não nos filtros."> +<!ENTITY issues.disabledgroups.enable.label "Ativar grupo ou inscrição de filtros"> +<!ENTITY typeWarning.override.label "&Eu entendo e quero enviar o relatório mesmo assim"> +<!ENTITY issues.disabled.enable.label "Ativar o Adblock Plus"> +<!ENTITY update.fixed.description "A atualização de suas inscrições de filtros provavelmente resolveu o problema que você estava reportando. Por favor, atualize a página e verifique. Se o problema persistir, clique novamente em "Reportar problema com esta página"."> +<!ENTITY anonymous.label "Envio &anônimo"> +<!ENTITY reloadButton.label "&Recarregar a página"> +<!ENTITY recentReports.clear.label "&Remover todos os relatórios"> +<!ENTITY typeSelector.description "Este assistente conduzirá você pelos passos necessários para enviar um relatório de erro do Adblock Plus. Primeiro, selecione o tipo de erro que você está tendo nessa página:"> +<!ENTITY screenshot.remove.label "&Remove dados confidenciais"> +<!ENTITY issues.ownfilters.description "Alguns dos filtros aplicados nesta página foram definidos pelo usuário. Por favor, desative os filtros que podem ter causado o problema:"> +<!ENTITY update.inProgress.description "O Adblock Plus precisa atualizar suas inscrições de filtros para ter certeza que o problema não foi resolvido ainda. Por favor, aguarde..."> +<!ENTITY sendPage.retry.label "Enviar novamente"> +<!ENTITY data.label "&Dados do relatório:"> +<!ENTITY recentReports.label "Seus relatórios enviados recentemente"> +<!ENTITY typeWarning.description "Você indicou que deseja comunicar um erro geral no Adblock Plus em vez de um problema com os filtros. Por favor, note que problemas desse tipo devem ser tratados no [link]fórum do Adblock Plus[/link]. Envie um relatório apenas para complementar uma discussão existente no fórum, pois ninguém vai notá-lo a menos que você informe o endereço do relatório. O endereço gerado automaticamente será apresentado após o envio do relatório."> +<!ENTITY issues.disabled.description "O Adblock Plus está desativado; ele não vai bloquear nada no seu estado atual."> +<!ENTITY attachExtensions.label "Ane&xar ao relatório uma lista de extensões ativas caso haja um conflito entre elas"> +<!ENTITY issues.nosubscriptions.add.label "Adicionar inscrição de filtros"> +<!ENTITY issues.disabledfilters.enable.label "Ativar filtro"> +<!ENTITY issues.override.label "A &configuração está correta, continue com o relatório"> +<!ENTITY issues.nosubscriptions.description "Parece que você não adicionou nenhuma das inscrições de filtros que removem automaticamente os conteúdos indesejados dos sites."> +<!ENTITY typeSelector.falsePositive.description "Escolha esta opção se a página carece de algum conteúdo importante, se aparece de forma incorreta ou se não funciona corretamente. Você pode verificar se o Adblock Plus é a causa do problema desativando-o temporariamente."> +<!ENTITY typeSelector.other.label "Ou&tro problema"> +<!ENTITY emailComment.label "Nós encorajamos você a digitar um endereço de e-mail válido para que possamos entrar em contato se houverem quaisquer dúvidas sobre o seu relatório. A inserção de um e-mail válido também irá permitir-nos reconhecer suas contribuições e dar-lhes uma prioridade maior."> +<!ENTITY issues.whitelist.remove.label "Reativar o Adblock Plus nessa página"> +<!ENTITY outdatedSubscriptions.description "As seguintes inscrições de filtros não foram atualizadas há pelo menos duas semanas. Por favor, atualize essas inscrições antes de enviar um relatório de erro, pois o problema pode já ter sido resolvido."> +<!ENTITY dataCollector.description "Por favor, aguarde um momento enquanto Adblock Plus coleta os dados necessários."> +<!ENTITY sendButton.label "E&nviar relatório"> +<!ENTITY comment.label "&Comentário (opcional):"> +<!ENTITY sendPage.errorMessage "Uma tentativa de enviar o relatório falhou com código de erro "?1?". Por favor, assegure que você está conectado à Internet e tente novamente. Se o problema persistir, por favor, solicite ajuda no [link]fórum do Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Exibir relatórios enviados recentemente"> +<!ENTITY commentPage.heading "Digitar comentário"> +<!ENTITY update.start.label "Atualizar agora"> +<!ENTITY issues.disabledfilters.description "Os seguintes filtros estão desativados, mas eles podem estar afetando essa página:"> +<!ENTITY screenshot.description "Uma mesma página pode parecer diferente para diferentes pessoas. Pode nos ajudar a compreender o problema, você pode anexar uma imagem ao seu relatório. Você pode remover partes da imagem contendo informações confidenciais, bem como marcar áreas onde se encontra o problema. Para isso, clique no botão correspondente e selecione com o mouse uma área da imagem."> +<!ENTITY screenshot.attach.label "Ane&xar uma imagem da página ao relatório"> +<!ENTITY issues.whitelist.description "O Adblock Plus está desativado atualmente nessa página. Para ajudar na investigação do problema, por favor, reative o Adblock Plus e atualize a página antes de enviar o relatório."> +<!ENTITY typeSelector.falseNegative.label "O Adblock Plus &não está bloqueando uma propaganda"> +<!ENTITY typeSelector.heading "Selecionar tipo de erro"> +<!ENTITY anonymity.warning "Nós não vamos ser capazes de entrar em contato com você e, portanto, seus relatórios terão baixa prioridade."> +<!ENTITY wizard.title "Relatório de erro"> +<!ENTITY issues.ownfilters.disable.label "Desativar filtro"> +<!ENTITY commentPage.description "O campo abaixo permite você digitar um comentário para nos ajudar a entender o problema. Este passo é opcional mas é recomendado se o problema não for óbvio. Você também pode verificar os dados do relatório antes de enviar."> +<!ENTITY comment.lengthWarning "O tamanho do seu comentário excedeu 1000 caracteres. Apenas os primeiros 1000 caracteres serão enviadas."> +<!ENTITY typeSelector.falseNegative.description "Escolha esta opção se uma propaganda é exibida mesmo com o Adblock Plus ativado."> +<!ENTITY sendPage.waitMessage "Por favor aguarde enquanto o Adblock Plus está enviando seu relatório."> +<!ENTITY dataCollector.heading "Bem-vindo ao relatório de erro"> +<!ENTITY screenshot.heading "Anexar imagem"> +<!ENTITY sendPage.heading "Enviar relatório"> +<!ENTITY issues.subscriptionCount.description "Parece que você adicionou inscrições de filtros em excesso. Essa configuração não é recomendada porque aumenta a possibilidade de ocorrência de erros. Não podemos aceitar o seu relatório porque não é possível determinar qual autor de inscrição de filtros deve tratar o problema. Por favor, remova todos as inscrições exceto as realmente necessárias e verifique se o problema ainda ocorre."> +<!ENTITY screenshot.mark.label "&Marcar o problema"> +<!ENTITY privacyPolicy.label "Política de privacidade"> +<!ENTITY issues.description "O Adblock Plus detectou problemas com a configuração atual que podem ser a causa do erro ou que podem dificultar a análise do relatório."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/sidebar.dtd new file mode 100644 index 0000000..dd8262b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Realçar bordas do item"> +<!ENTITY address.label "Endereço"> +<!ENTITY context.open.label "Abrir em nova aba"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Fonte do filtro:"> +<!ENTITY noitems.label "Nenhum item bloqueável"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Tamanho:"> +<!ENTITY reattach.label "Ancorar"> +<!ENTITY search.label "&Localizar:"> +<!ENTITY docDomain.thirdParty "(domínio diferente)"> +<!ENTITY filterSource.label "Fonte do filtro"> +<!ENTITY tooltip.docDomain.label "Origem do documento:"> +<!ENTITY context.copy.label "Copiar endereço do item"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Desativar filtro ?1?"> +<!ENTITY context.copyFilter.label "Copiar filtro"> +<!ENTITY context.block.label "Bloquear este item"> +<!ENTITY context.enablefilter.label "Reativar filtro ?1?"> +<!ENTITY detach.label "Destacar"> +<!ENTITY whitelisted.label "Página na lista branca"> +<!ENTITY context.disablefilteronsite.label "Desativar esse filtro em ?1?"> +<!ENTITY detached.title "Adblock Plus: Itens bloqueáveis (destacada)"> +<!ENTITY docDomain.firstParty "(mesmo domínio)"> +<!ENTITY tooltip.type.whitelisted "(na lista branca)"> +<!ENTITY tooltip.filter.label "Filtro em ação:"> +<!ENTITY tooltip.filter.disabled "(desativado)"> +<!ENTITY context.editfilter.label "Editar filtro em efeito"> +<!ENTITY tooltip.type.blocked "(bloqueado)"> +<!ENTITY size.label "Tamanho"> +<!ENTITY context.whitelist.label "Adicionar exceção para o item"> +<!ENTITY context.selectAll.label "Selecionar todos"> +<!ENTITY state.label "Estado"> +<!ENTITY docDomain.label "Origem do documento"> +<!ENTITY tooltip.address.label "Endereço:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/subscriptionSelection.dtd new file mode 100644 index 0000000..7982acb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-BR/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Adicionar também a inscrição de &filtros "?1?""> +<!ENTITY list.download.failed "O Adblock Plus não conseguiu obter a lista de inscrições."> +<!ENTITY list.download.retry "Tentar novamente"> +<!ENTITY title.label "&Título da inscrição:"> +<!ENTITY list.download.website "Abrir página da lista de inscrições"> +<!ENTITY supplementMessage "Essa inscrição de filtros foi feita para ser usada com inscrição de filtros "?1?", que você ainda não está usando."> +<!ENTITY viewList.label "Visualizar filtros"> +<!ENTITY visitHomepage.label "Abrir página da inscrição"> +<!ENTITY addSubscription.label "Adicionar inscrição"> +<!ENTITY dialog.title "Adicionar inscrição de filtros do Adblock Plus"> +<!ENTITY location.label "&Endereço da lista de filtros:"> +<!ENTITY fromWeb.description "Por favor, confirme que você deseja adicionar essa inscrição de filtros. Você pode alterar o título ou o endereço da inscrição antes de adicionar."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/composer.dtd new file mode 100644 index 0000000..c864644 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "&no final do endereço"> +<!ENTITY domainRestriction.label "Restringir ao domínio:"> +<!ENTITY collapse.default.no.label "Usar por defeito (não)"> +<!ENTITY firstParty.label "Apenas primários"> +<!ENTITY preferences.label "Mostrar filtros existentes"> +<!ENTITY pattern.label "Procurar um padrão"> +<!ENTITY thirdParty.label "De &terceiros"> +<!ENTITY filter.label "Novo &filtro:"> +<!ENTITY collapse.label "Colapsar bloqueados:"> +<!ENTITY match.warning "O padrão que inseriu já não corresponde ao endereço a ser bloqueado/desbloqueado e não surtirá efeito."> +<!ENTITY anchor.start.label "no &início do endereço"> +<!ENTITY matchCase.label "Maiúsculas/ minúsculas"> +<!ENTITY custom.pattern.label "&Personalização:"> +<!ENTITY unselectAllTypes.label "Desseleccionar"> +<!ENTITY type.whitelist.label "Regra de e&xceção"> +<!ENTITY regexp.warning "O padrão inserido será interpretado como expressão regular e não será processado corretamente pelo Adblock Plus e pode tornar o navegador mais lento. Se não pretendia utilizar expressões regulares adicione um asterisco (*) no final do padrão."> +<!ENTITY dialog.title "Adicionar regra de filtro ao Adblock Plus"> +<!ENTITY basic.label "Vista básica"> +<!ENTITY type.filter.label "Filtro bloqueador"> +<!ENTITY types.label "Aplicar aos tipos:"> +<!ENTITY shortpattern.warning "O padrão inserido é demasiado curto para ser otimizado e pode tornar o navegador mais lento. Deve utilizar um padrão mais extenso para este filtro de modo a que o Adblock Plus processe o filtro de forma correta."> +<!ENTITY collapse.yes.label "Sim"> +<!ENTITY anchors.label "Aceitar o padrão apenas:"> +<!ENTITY collapse.default.yes.label "Usar por defeito (sim)"> +<!ENTITY domainRestriction.help "Especificar um ou mais domínios separados pelo símbolo "|", o filtro será aplicado apenas a estes domínios. O símbolo "~" antes de um domínio implica que o filtro não seja aplicado nesse domínio."> +<!ENTITY accept.label "Adicionar filtro"> +<!ENTITY options.label "Opções"> +<!ENTITY disabled.warning "O Adblock Plus está inativo. Pode adicionar filtros mas estes não serão aplicados até que [link]ative o Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "no &início do nome de domínio"> +<!ENTITY collapse.no.label "Não"> +<!ENTITY selectAllTypes.label "Seleccionar todos"> +<!ENTITY advanced.label "Vista avançada"> +<!ENTITY pattern.explanation "O padrão pode ser qualquer parte do endereço; o asterisco (*) funciona como wildcard. O filtro só será aplicado ao(s) endereço(s) que correspondam ao padrão indicado."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/filters.dtd new file mode 100644 index 0000000..3466a3d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Todas os seus filtros personalizados serão substituídos pelo conteúdo do ficheiro selecionado. Continuar?"> +<!ENTITY slow.column "Fi&ltros lentos"> +<!ENTITY enabled.column "A&tivo"> +<!ENTITY subscription.lastDownload.checksumMismatch "Erro de verificação (checksum)"> +<!ENTITY noFiltersInGroup.text "O grupo selecionado está vazio."> +<!ENTITY subscription.actions.label "Ações"> +<!ENTITY filter.selectAll.label "Selecionar tudo"> +<!ENTITY backupButton.label "&Backup e restauro"> +<!ENTITY restore.minVersion.warning "Atenção: o ficheiro foi criado com uma versão mais recente do Adblock Plus. Deve atualizar para a versão mais recente do Adblock Plus antes de restaurar este ficheiro."> +<!ENTITY restore.error "A informação do ficheiro não foi processada com sucesso. Tem a certeza que é um ficheiro válido?"> +<!ENTITY sort.ascending.label "Ordenar &A > Z"> +<!ENTITY sort.label "&Ordenar por"> +<!ENTITY subscription.source.label "Lista de filtros"> +<!ENTITY hitcount.column "&Contagem"> +<!ENTITY noFilters.text "Ainda não tem qualquer filtro personalizado."> +<!ENTITY backup.custom.title "Apenas filtros personalizados"> +<!ENTITY subscription.external.label "Atualizado por outra extensão"> +<!ENTITY subscription.delete.label "Eliminar"> +<!ENTITY noGroupSelected.text "Tem que selecionar um grupo de filtros para que os mesmos sejam exibidos."> +<!ENTITY filter.cut.label "Cortar"> +<!ENTITY restore.default.label "Restaurar backup de ?1?"> +<!ENTITY subscription.lastDownload.inProgress "A transferir..."> +<!ENTITY subscriptions.tab.label "Subscrições de filtros"> +<!ENTITY sort.descending.label "Ordenar &Z > A"> +<!ENTITY filters.remove.warning "Quer mesmo remover todos os filtros selecionados?"> +<!ENTITY filter.delete.label "Eliminar"> +<!ENTITY addSubscriptionAdd.label "Adicionar"> +<!ENTITY viewMenu.label "Ver"> +<!ENTITY subscription.lastDownload.unknown "N/D"> +<!ENTITY addSubscriptionCancel.label "Cancelar"> +<!ENTITY subscription.enabled.label "Ativo"> +<!ENTITY noSubscriptions.text "Ainda não adicionou uma subscrição de filtros. O Adblock Plus não bloqueará +elementos sem filtros. Por favor utilize "Adicionar subscrição de filtros" para +um filtro."> +<!ENTITY subscription.update.label "Atualizar filtros"> +<!ENTITY dialog.title "Preferências de filtros do Adblock Plus"> +<!ENTITY addFilter.label "A&dicionar filtro"> +<!ENTITY subscription.minVersion.warning "Esta subscrição de filtros requer uma versão mais recente do Adblock Plus. Deve atualizar para a versão mais recente do Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Endereço inválido"> +<!ENTITY backup.error "Ocorreu um erro ao guardar os filtros no ficheiro. Certifique-se que o ficheiro não está protegido contra escrita ou a ser utilizado por outra aplicação."> +<!ENTITY filter.moveUp.label "Mover para cima"> +<!ENTITY addGroup.label "Adicionar &grupo de filtros"> +<!ENTITY filter.edit.label "Editar"> +<!ENTITY subscription.showHideFilters.label "Mostrar/ocultar filtros"> +<!ENTITY acceptableAds2.label "Perm&itir alguma publicidade não intrusiva"> +<!ENTITY addSubscriptionOther.label "Adicionar outra subscrição"> +<!ENTITY close.label "Fechar"> +<!ENTITY sort.none.label "&Não ordenar"> +<!ENTITY filter.actions.label "Ações de filtros"> +<!ENTITY filter.copy.label "Copiar"> +<!ENTITY filter.moveDown.label "Mover para baixo"> +<!ENTITY filter.resetHitCounts.label "Reiniciar estatísticas"> +<!ENTITY readMore.label "Saber mais"> +<!ENTITY subscription.moveUp.label "Mover para cima"> +<!ENTITY addSubscription.label "Adicionar subscrição de &filtros"> +<!ENTITY subscription.homepage.label "Página web"> +<!ENTITY backup.complete.title "Todos os filtros e subscrições"> +<!ENTITY restore.own.label "Restaurar outro backup"> +<!ENTITY restore.complete.warning "Todas as preferências de filtros serão substituídas pelo conteúdo do ficheiro selecionado. Continuar?"> +<!ENTITY filters.tab.label "Filtros personalizados"> +<!ENTITY backup.label "Criar novo backup"> +<!ENTITY find.label "&Localizar"> +<!ENTITY subscription.moveDown.label "Mover para baixo"> +<!ENTITY subscription.lastDownload.connectionError "Transferência falhada"> +<!ENTITY subscription.lastDownload.success "Bem sucedido"> +<!ENTITY subscription.lastDownload.invalidData "Não é uma lista válida"> +<!ENTITY filter.paste.label "Colar"> +<!ENTITY subscription.disabledFilters.enable "Ativar filtros inativos"> +<!ENTITY lasthit.column "Última &utilização"> +<!ENTITY subscription.editTitle.label "Editar título"> +<!ENTITY subscription.disabledFilters.warning "Alguns filtros desta subscrição estão inativos."> +<!ENTITY filter.column "Regra de &filtro"> +<!ENTITY subscription.lastDownload.label "Última atualização:"> +<!ENTITY viewList.label "Ver lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/firstRun.properties new file mode 100644 index 0000000..29d3e16 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navegue na web desativando a monitorização. Oculte o seu registo de navegação das companhias que monitorizam os seus movimentos. +firstRun_toggle_off=Desligado +firstRun_feature_tracking=Desativar monitorização +firstRun_feature_malware=Bloqueio de malware +firstRun_title=O Adblock Plus foi instalado +firstRun_toggle_on=Ligado +firstRun_acceptableAdsExplanation=Gostamos de incentivar os sítios web de publicidade a utilizar anúncios não intrusivos. Foi por essa razão que estabelecemos <a>políticas restritas</a> para identificar os anúncios aceitáveis e que são mostrados em definições padrão. No entanto, se você quiser bloquear todos os anúncios, pode <a>desativar</a> essa opção facilmente. +firstRun_contributor_credits=Créditos +firstRun_dataCorruptionWarning=Esta página continua a aparecer? <a>Clique aqui!</a> +firstRun_acceptableAdsHeadline=A publicidade será bloqueada +firstRun_share=Publicite o programa +firstRun_share_headline=<a>Ajude-nos</a> a melhorar a web +firstRun_feature_social_description=Remova os botões das redes sociais, tais como o Facebook Like, que aparecem nas páginas web e que monitorizam o seu comportamento. +firstRun_filterlistsReinitializedWarning=Parece que ocorreu um erro que causou a remoção de todos os filtros e nós não conseguimos restaurar a cópia de segurança. Neste sentido, os filtros e as definições de anúncios aceitáveis foram reiniciados, Analise os seus filtros e os anúncios aceitáveis nas definições do <a>Adblock Plus.</a>. +firstRun_feature_malware_description=Melhore a navegação web bloqueando os domínios duvidosos. +firstRun_features=O Adblock Plus pode fazer mais do que bloquear publicidade +firstRun_donate=donativos +firstRun_donate_label=Ajude o nosso projeto +firstRun_feature_social=Remover botões sociais +firstRun_legacySafariWarning=Você está a utilizar uma versão do Safari que não é suportada pelo Adblock Plus. A aplicação pode não funcionar corretamente e prejudicar a navegação em alguns sítios web. Deve atualizar para o Safari 6.1.1 ou mais recente (disponível para o Mac OS X 10.8 Mountain Lion), para a versão 7.0.1 ou mais recente (disponível no OS x 10.9 Mavericks) ou utilizar uma versão recente dos navegadores Mozilla Firefox, Google Chrome ou Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/global.properties new file mode 100644 index 0000000..a8730e8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Não há itens bloqueáveis nesta página +action3_tooltip=Clique para ativar/desativar o Adblock Plus. +notification_antiadblock_title=Ocultar mensagens? +type_label_script=script +filter_elemhide_nocriteria=Nenhum critério especificado para reconhecimento de elementos a bloquear +blockingGroup_title=Regras de bloqueio de anúncios +whitelisted_tooltip=O Adblock Plus está está inativo nesta página. +type_label_stylesheet=folha de estilo +blocked_count_tooltip=?1? de ?2? +type_label_font=tipo de letra +type_label_popup=janela pop-up +filter_regexp_tooltip=Este filtro é uma expressão regular ou demasiado curto para ser otimizado. Demasiados filtros com estas características podem tornar o navegador mais lento. +action0_tooltip=Clique para mostrar o menu de contexto, clique na roda do rato para ativar/desativar. +whitelisted_page=O Adblock Plus foi desativado nesta página +remove_group_warning=Quer mesmo remover este grupo? +action1_tooltip=Clique para abrir/fechar itens bloqueáveis, clique na roda do rato para ativar/desativar. +type_label_xmlhttprequest=pedido XML +active_tooltip=O Adblock Plus está ativo. ?1? subscrições de filtros e ?2? filtros personalizados. +type_label_document=documento +type_label_object_subrequest=subpedido de objeto +whitelistGroup_title=Regras de exceção +disabled_tooltip=O Adblock Plus está inativo. +filter_elemhide_duplicate_id=Apenas pode especificar uma ID do elemento a ocultar +type_label_object=objeto +action2_tooltip=Clique para abrir as preferências, clique na roda do rato para ativar/desativar. +type_label_subdocument=moldura +clearStats_warning=Irá reiniciar as estatísticas de todos os filtros e desativar a contagem de bloqueios. Continuar? +notification_antiadblock_message=Este sítio é conhecido por enviar mensagens dirigidas aos utilizadores do Adblock Plus. Gostaria de ocultar essas mensagens? +blocked_count_addendum=(na lista de permissões: ?1?, ocultos: ?2?) +subscription_invalid_location=A localização da lista de filtros não é um endereço ou nome de ficheiro válido. +type_label_image=imagem +remove_subscription_warning=Quer mesmo remover esta subscrição? +type_label_other=outro +mobile_menu_enable=ABP: Ativar +type_label_media=áudio/vídeo +mobile_menu_disable_site=ABP: Desativar em ?1? +elemhideGroup_title=Regras de bloqueio de elementos +mobile_menu_enable_site=ABP: Ativar em ?1? +type_label_elemhide=oculto +newGroup_title=Novo grupo de filtros +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/overlay.dtd new file mode 100644 index 0000000..fbcb8c8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Sim"> +<!ENTITY notification.button.no "&Não"> +<!ENTITY sync.label "Sin&cronizar definições do Adblock Plus"> +<!ENTITY whitelist.site.label "Desativar em ?1?"> +<!ENTITY filters.label "Pre&ferências de filtros"> +<!ENTITY disable.label "Desativar em todas as páginas"> +<!ENTITY objecttab.title "Bloquear"> +<!ENTITY objecttab.tooltip "Clique aqui para bloquear este objecto com o Adblock Plus"> +<!ENTITY menuitem.label "Preferências do Ad&block Plus"> +<!ENTITY objecttabs.label "Mos&trar separadores em flash e java"> +<!ENTITY sendReport.label "&Reportar erros nesta página"> +<!ENTITY whitelist.page.label "Desativar apenas nesta página"> +<!ENTITY context.image.label "Bloquear imagem"> +<!ENTITY counthits.label "&Contar bloqueios do filtro"> +<!ENTITY opensidebar.label "A&brir itens bloqueáveis"> +<!ENTITY notification.button.close "Fe&char"> +<!ENTITY contribute.label "Colaborar no Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Bloquear moldura"> +<!ENTITY blocked.tooltip "Itens bloqueados nesta página:"> +<!ENTITY hideplaceholders.label "Ocultar &locais de elementos bloqueados"> +<!ENTITY showinstatusbar.label "Mo&strar na barra de estado"> +<!ENTITY sidebar.title "Elementos bloqueáveis nesta página"> +<!ENTITY options.label "&Opções"> +<!ENTITY context.object.label "Bloquear objeto"> +<!ENTITY context.removeWhitelist.label "Reativar nesta página"> +<!ENTITY filters.tooltip "Filtros mais ativos:"> +<!ENTITY closesidebar.label "Fechar itens &bloqueáveis"> +<!ENTITY showintoolbar.label "Mostrar na &barra de ferramentas"> +<!ENTITY status.tooltip "Estado:"> +<!ENTITY context.media.label "Bloquear áudio/vídeo"> +<!ENTITY subscription.update.label "Atualizar filtros"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/sendReport.dtd new file mode 100644 index 0000000..d4ac781 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "An&ular"> +<!ENTITY issues.disabledgroups.description "As seguintes subscrições/grupos de filtros estão inativos mas podem estar a interferir nesta página:"> +<!ENTITY showData.label "Mostrar dados do relatório"> +<!ENTITY typeSelector.falsePositive.label "O Adblock Plus está a bloquear de&masiado"> +<!ENTITY issues.change.description "A configuração foi alterada. Por favor recarregue a página para testar as alterações e submeter o relatório, caso o problema ainda persista."> +<!ENTITY email.label "E&mail:"> +<!ENTITY issues.openPreferences.label "Abrir preferências de filtros"> +<!ENTITY sendPage.confirmation "O seu relatório foi guardado. Pode aceder ao relatório através do seguinte endereço:"> +<!ENTITY copyLink.label "&Copiar ligação do relatório"> +<!ENTITY issues.nofilters.description "O Adblock Plus não está a bloquear elementos da página atual. Provavelmente o problema que está a ocorrer não está relacionado com o Adblock Plus."> +<!ENTITY sendPage.knownIssue "O problema que reportou já é, provavelmente, conhecido. Mais informação:"> +<!ENTITY typeSelector.other.description "Selecione esta opção se suspeita de um problema no Adblock Plus ao invés de um problema nos filtros."> +<!ENTITY issues.disabledgroups.enable.label "Ativar subscrição/grupo de filtros"> +<!ENTITY typeWarning.override.label "&Eu compreendo e pretendo enviar o relatório"> +<!ENTITY issues.disabled.enable.label "Ativar Adblock Plus"> +<!ENTITY update.fixed.description "A atualização dos seus filtros parece ter resolvido o problema que estava a reportar. Por favor recarregue a página e tente novamente. Envie um relatório se o problema persistir."> +<!ENTITY anonymous.label "Submissão &anónima"> +<!ENTITY reloadButton.label "&Recarregar página"> +<!ENTITY recentReports.clear.label "&Remover todos os relatórios"> +<!ENTITY typeSelector.description "Esta janela guiá-lo-à através dos passos necessários para submeter o relatório de erros. Por favor selecione o tipo de erro que está a ocorrer nesta página:"> +<!ENTITY screenshot.remove.label "&Remover informação sensível"> +<!ENTITY issues.ownfilters.description "Alguns dos filtros aplicados nesta página são definidos pelo utilizador. Por favor desative os filtros que poderão estar a causar o problema:"> +<!ENTITY update.inProgress.description "O Adblock Plus necessita de atualizar as subscrições de filtros para se certificar que o problema não foi resolvido. Por favor aguarde..."> +<!ENTITY sendPage.retry.label "Enviar novamente"> +<!ENTITY data.label "&Dados do relatório:"> +<!ENTITY recentReports.label "Os seus relatórios recentes"> +<!ENTITY typeWarning.description "Indicou que pretende reportar um problema genérico do Adblock Plus em vez de um problema com os filtros. Esse tipo de problemas devem ser reportados no [link]fórum Adblock Plus[/link]. Só deve utilizar esta funcionalidade para complementar uma discussão existente, uma vez que ninguém terá conhecimento do seu relatório se não lhes disponibilizar a ligação. A ligação será disponibilizada depois de submeter o relatório."> +<!ENTITY issues.disabled.description "O Adblock Plus está inativo e não bloqueará anúncios."> +<!ENTITY attachExtensions.label "Ane&xe a lista das extensões ativas ao relatório para verificarmos se alguma das extensões está a interferir com a aplicação"> +<!ENTITY issues.nosubscriptions.add.label "Adicionar subscrição de filtros"> +<!ENTITY issues.disabledfilters.enable.label "Ativar filtro"> +<!ENTITY issues.override.label "A &configuração está correta. Continuar com o relatório"> +<!ENTITY issues.nosubscriptions.description "Parece que você ainda não subscreveu qualquer lista de filtros que bloqueiam os anúncios dos sítios web."> +<!ENTITY typeSelector.falsePositive.description "Selecione esta opção se a página não mostra ou mostra incorretamente o conteúdo importante ou se não funciona corretamente. Pode verificar se o Adblock Plus é o causador do problema destivando-o temporariamente."> +<!ENTITY typeSelector.other.label "Ou&tro erro"> +<!ENTITY emailComment.label "Deve indicar um endereço eletrónico válido para que o possamos contactar, caso precisemos de ajuda para resolver o erro reportado no relatório. O endereço permite-nos também verificar os contributos e criar uma hierarquia."> +<!ENTITY issues.whitelist.remove.label "Reativar Adblock Plus nesta página"> +<!ENTITY outdatedSubscriptions.description "As seguintes subscrições não são atualizadas há mais de duas semanas. Por favor atualize as subscrições antes de submeter o relatório. O problema pode já ter sido resolvido."> +<!ENTITY dataCollector.description "Por favor aguarde um momento enquanto o Adblock Plus reúne os dados necessários."> +<!ENTITY sendButton.label "E&nviar relatório"> +<!ENTITY comment.label "&Comentário (opcional):"> +<!ENTITY sendPage.errorMessage "O envio do relatório falhou com o código de erro "?1?". Por favor certifique-se que está ligado à Internet e tente novamente. Se o problema persistir, aceda ao [link]fórum do Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Mostrar relatórios recentes"> +<!ENTITY commentPage.heading "Adicionar comentário"> +<!ENTITY update.start.label "Atualizar agora"> +<!ENTITY issues.disabledfilters.description "Os filtros seguintes estão inativos mas podem estar a interferir nesta página:"> +<!ENTITY screenshot.description "A página pode ter um aspeto diferente, consoante a configuração definida. Pode ajudar-nos a perceber o problema se anexar uma imagem ao seu relatório. Pode remover secções que contenham informação sensível e marcar áreas onde o problema seja evidente. Para efetuar estas alterações, clique no botão respetivo e selecione a secção da imagem com o rato."> +<!ENTITY screenshot.attach.label "Anexar uma imagem ao rela&tório"> +<!ENTITY issues.whitelist.description "O Adblock Plus está inativo na página sobre a qual está a reportar. Por favor reative-o e recarregue a página antes de submeter um relatório para ajudar a analisar este problema."> +<!ENTITY typeSelector.falseNegative.label "O Adblock Plus não bloqueia um anú&ncio"> +<!ENTITY typeSelector.heading "Selecione o tipo de erro"> +<!ENTITY anonymity.warning "Desta forma, não o poderemos contactar e o mais provável é que lhe iremos dar uma prioridade baixa."> +<!ENTITY wizard.title "Comunicação de erros"> +<!ENTITY issues.ownfilters.disable.label "Desativar filtro"> +<!ENTITY commentPage.description "O campo de texto seguinte permite-lhe adicionar um comentário para nos ajudar a perceber o problema. Este passo é opcional mas recomendável se o problema não for óbvio. Pode rever o conteúdo do relatório antes de o enviar."> +<!ENTITY comment.lengthWarning "O comentário excede os 1000 caracteres. Apenas os primeiros 1000 caracteres serão enviados."> +<!ENTITY typeSelector.falseNegative.description "Selecione esta opção se o anúncio é exibido e o Adblock Plus está ativo."> +<!ENTITY sendPage.waitMessage "Por favor aguarde enquanto o Adblock Plus submete o seu relatório."> +<!ENTITY dataCollector.heading "Bem-vindo à comunicação de erros"> +<!ENTITY screenshot.heading "Anexar imagem"> +<!ENTITY sendPage.heading "Enviar relatório"> +<!ENTITY issues.subscriptionCount.description "Parece ter subscrito demasiados filtros. Esta opção não é aconselhável e pode gerar problemas. Não podemos aceitar o seu relatório porque não é claro que filtros devem ser tidos em consideração. Por favor remova todos os filtros exceto os realmente necessários e verifique se o problema ainda ocorre."> +<!ENTITY screenshot.mark.label "&Marcar o problema"> +<!ENTITY privacyPolicy.label "Política de privacidade"> +<!ENTITY issues.description "O Adblock Plus detetou problemas na sua configuração que poderão ser os responsáveis pelo problema ou que poderão dificultar a análise do relatório."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/sidebar.dtd new file mode 100644 index 0000000..cdb4186 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Contorno do item flash"> +<!ENTITY address.label "Endereço"> +<!ENTITY context.open.label "Abrir em novo separador"> +<!ENTITY type.label "Tipo"> +<!ENTITY tooltip.filterSource.label "Origem do filtro:"> +<!ENTITY noitems.label "Sem itens bloqueáveis"> +<!ENTITY filter.label "Filtro"> +<!ENTITY tooltip.size.label "Tamanho:"> +<!ENTITY reattach.label "Reancorar"> +<!ENTITY search.label "&Procurar:"> +<!ENTITY docDomain.thirdParty "(terceiros)"> +<!ENTITY filterSource.label "Código fonte do filtro"> +<!ENTITY tooltip.docDomain.label "Origem do documento:"> +<!ENTITY context.copy.label "Copiar endereço do item"> +<!ENTITY tooltip.type.label "Tipo:"> +<!ENTITY context.disablefilter.label "Desativar filtro ?1?"> +<!ENTITY context.copyFilter.label "Copiar filtro"> +<!ENTITY context.block.label "Bloquear este item"> +<!ENTITY context.enablefilter.label "Reativar filtro ?1?"> +<!ENTITY detach.label "Desancorar"> +<!ENTITY whitelisted.label "Página permitida"> +<!ENTITY context.disablefilteronsite.label "Desativar este filtro em ?1?"> +<!ENTITY detached.title "Itens bloqueáveis (desancorada)"> +<!ENTITY docDomain.firstParty "(primeira parte)"> +<!ENTITY tooltip.type.whitelisted "(permitido)"> +<!ENTITY tooltip.filter.label "Filtro ativo:"> +<!ENTITY tooltip.filter.disabled "(inativo)"> +<!ENTITY context.editfilter.label "Editar filtro ativo"> +<!ENTITY tooltip.type.blocked "(bloqueado)"> +<!ENTITY size.label "Tamanho"> +<!ENTITY context.whitelist.label "Adicionar exceção para o item"> +<!ENTITY context.selectAll.label "Selecionar tudo"> +<!ENTITY state.label "Estado"> +<!ENTITY docDomain.label "Origem do documento"> +<!ENTITY tooltip.address.label "Endereço:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/subscriptionSelection.dtd new file mode 100644 index 0000000..77179e8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/pt-PT/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Adicionar &subscrição de filtros "?1?""> +<!ENTITY list.download.failed "O Adblock Plus não conseguiu obter a lista de subscrições."> +<!ENTITY list.download.retry "Tentar novamente"> +<!ENTITY title.label "&Título da subscrição:"> +<!ENTITY list.download.website "Visitar sítio web"> +<!ENTITY supplementMessage "Esta subscrição deve ser utilizada em conjunto com a subscrição "?1?", que ainda não está a ser utilizada."> +<!ENTITY viewList.label "Ver filtros"> +<!ENTITY visitHomepage.label "Visitar página"> +<!ENTITY addSubscription.label "Adicionar subscrição"> +<!ENTITY dialog.title "Adicionar subscrição de filtro"> +<!ENTITY location.label "&Localização de lista de filtros:"> +<!ENTITY fromWeb.description "Por favor confirme a adição dessta subscrição de filtros. Pode alterar o título ou a localização da subscrição antes de a adicionar."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/composer.dtd new file mode 100644 index 0000000..2bc9f86 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "la s&fârşitul adresei"> +<!ENTITY domainRestriction.label "Aplică &doar domeniului"> +<!ENTITY collapse.default.no.label "Foloseşte opţiunea implicită (nu)"> +<!ENTITY firstParty.label "Doar la pagina &vizitată"> +<!ENTITY preferences.label "&Arată filtrele existente..."> +<!ENTITY pattern.label "Model de căutare pentru potrivire adrese"> +<!ENTITY thirdParty.label "La &pagini partener (3rd party)"> +<!ENTITY filter.label "Fil&tru nou:"> +<!ENTITY collapse.label "Eliberează &spaţiul blocat:"> +<!ENTITY match.warning "Modelul introdus nu mai corespunde adresei care trebuie blocată/deblocată şi de aceea nu va avea nici un efect asupra paginii curente."> +<!ENTITY anchor.start.label "la î&nceputul adresei"> +<!ENTITY matchCase.label "Potrivire &majusculă"> +<!ENTITY custom.pattern.label "model &individual:"> +<!ENTITY unselectAllTypes.label "Nici unul"> +<!ENTITY type.whitelist.label "Regulă e&xcepţii"> +<!ENTITY regexp.warning "Modelul introdus va fi interpretată ca o expresie regulată, ceea ce poate cauza încetinirea navigării. Dacă nu doriţi să folosiţi expresii regulate, introduceţi * la sfârşitul modelului."> +<!ENTITY dialog.title "Adăugare regulă de filtrare Adblock Plus"> +<!ENTITY basic.label "Vizualizare simplă"> +<!ENTITY type.filter.label "Filtru de &blocare"> +<!ENTITY types.label "Valabil pentru:"> +<!ENTITY shortpattern.warning "Modelul introdus este prea scurt pentru a fi optimizat, ceea ce poate cauza încetinirea navigării. Este recomandabil să introduceţi modele mai mai lungi."> +<!ENTITY collapse.yes.label "Da"> +<!ENTITY anchors.label "Foloseşte modelul introdus doar:"> +<!ENTITY collapse.default.yes.label "Foloseşte opţiunea implicită (da)"> +<!ENTITY domainRestriction.help "Specificaţi unul sau mai multe domenii internet, separate de către simbolul |, pentru care filtrul este valid. Simbolul ~ înaintea numelui domeniului va face ca regula să NU se aplice pe domeniul specificat."> +<!ENTITY accept.label "Adaugă filtru"> +<!ENTITY options.label "Opţiuni"> +<!ENTITY disabled.warning "Adblock Plus este inactiv. Puteţi să adăugaţi filtre, însă ele vor fi utilizate doar după ce [link]activaţi Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "la î&nceputul numelui de domeniu"> +<!ENTITY collapse.no.label "Nu"> +<!ENTITY selectAllTypes.label "Toate tipurile"> +<!ENTITY advanced.label "Vizualizare avansată"> +<!ENTITY pattern.explanation "Filtrul va fi aplicat doar adreselor care corespund modelului definit mai jos, în care simbolul * acţionează ca joker."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/filters.dtd new file mode 100644 index 0000000..a74e04b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Toate filtrele proprii vor fi înlocuite de către conţinutul fişierului ales. Doriţi să continuaţi?"> +<!ENTITY slow.column "Fi&ltre lente"> +<!ENTITY enabled.column "Activat (&S)"> +<!ENTITY subscription.lastDownload.checksumMismatch "Eşuat, suma de control nu se potriveşte."> +<!ENTITY noFiltersInGroup.text "Grupul selectat este gol."> +<!ENTITY subscription.actions.label "Acțiuni"> +<!ENTITY filter.selectAll.label "Selectează toate"> +<!ENTITY backupButton.label "&Salvare și Restaurare"> +<!ENTITY restore.minVersion.warning "Avertisment: acest fişier a fost creat de către o versiune mai nouă de Adblock Plus. Se recomandă utilizarea celei mai noi versiuni."> +<!ENTITY restore.error "Datele din fişier nu pot fi folosite. Verificaţi dacă fişierul a fost într-adevăr create de către Adblock Plus."> +<!ENTITY sort.ascending.label "Crescător (&A>Z)"> +<!ENTITY sort.label "&Ordonare"> +<!ENTITY subscription.source.label "Listă de filtre"> +<!ENTITY hitcount.column "&Contor"> +<!ENTITY noFilters.text "Nu aveţi nici un filtru propriu."> +<!ENTITY backup.custom.title "Doar filtre proprii"> +<!ENTITY subscription.external.label "Actualizat de altă extensie"> +<!ENTITY subscription.delete.label "Șterge"> +<!ENTITY noGroupSelected.text "Pentru a vizualiza filtre, trebuie să alegeţi mai întâi un grup."> +<!ENTITY filter.cut.label "Taie"> +<!ENTITY restore.default.label "Restaurează salvarea din ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Descărcare..."> +<!ENTITY subscriptions.tab.label "Abonamente filtre"> +<!ENTITY sort.descending.label "Descrescător (&Z>A)"> +<!ENTITY filters.remove.warning "Sunteţi sigur că doriţi să ştergeţi filtrele selectate?"> +<!ENTITY filter.delete.label "Şterge"> +<!ENTITY addSubscriptionAdd.label "Adaugă"> +<!ENTITY viewMenu.label "Vizualizare"> +<!ENTITY subscription.lastDownload.unknown "Necunoscut"> +<!ENTITY addSubscriptionCancel.label "Anulează"> +<!ENTITY subscription.enabled.label "Activat"> +<!ENTITY noSubscriptions.text "Nu aţi adăugat nici un abonament de filtre. Adblock Plus nu blochează nimic dacă nu are filtre. Puteţi folosi butonul Adaugă abonament filtre pentru a vă abona la câteva liste de filtre."> +<!ENTITY subscription.update.label "Actualizează filtre"> +<!ENTITY dialog.title "Preferințe filtre Adblock Plus"> +<!ENTITY addFilter.label "A&daugă filtru"> +<!ENTITY subscription.minVersion.warning "Acest abonament necesită o versiune mai nouă de Adblock Plus. Se recomandă utilizarea celei mai noi versiuni."> +<!ENTITY subscription.lastDownload.invalidURL "Eşuat, adresa nu este validă"> +<!ENTITY backup.error "O eroare a apărut la scrierea fişierului. Asiguraţi-vă că fişierul nu este protejat la scriere sau folosit de către altă aplicaţie."> +<!ENTITY filter.moveUp.label "Mută sus"> +<!ENTITY addGroup.label "Adau&gă grup filtre"> +<!ENTITY filter.edit.label "Editează"> +<!ENTITY subscription.showHideFilters.label "Arată/ascunde filtre"> +<!ENTITY acceptableAds2.label "&Permite publicitatea discretă"> +<!ENTITY addSubscriptionOther.label "Adaugă alt abonament"> +<!ENTITY close.label "Închide"> +<!ENTITY sort.none.label "&Neordonat"> +<!ENTITY filter.actions.label "Acțiuni filtre"> +<!ENTITY filter.copy.label "Copiază"> +<!ENTITY filter.moveDown.label "Mută jos"> +<!ENTITY filter.resetHitCounts.label "Iniţializează statisticile filtrelor"> +<!ENTITY readMore.label "Citește mai mult"> +<!ENTITY subscription.moveUp.label "Mută sus"> +<!ENTITY addSubscription.label "Adaugă a&bonament filtru"> +<!ENTITY subscription.homepage.label "Pagina de start"> +<!ENTITY backup.complete.title "Toate filtrele și abonamentele"> +<!ENTITY restore.own.label "Restaurează propria salvare"> +<!ENTITY restore.complete.warning "Toate opţiunile filtrelor vor fi înlocuite de către conţinutul fişierului ales. Doriţi să continuaţi?"> +<!ENTITY filters.tab.label "Filtre proprii"> +<!ENTITY backup.label "Crează salvare nouă"> +<!ENTITY find.label "&Caută"> +<!ENTITY subscription.moveDown.label "Mută jos"> +<!ENTITY subscription.lastDownload.connectionError "Eşuat, descărcare nereuşită"> +<!ENTITY subscription.lastDownload.success "Succes"> +<!ENTITY subscription.lastDownload.invalidData "Eşuat, lista nu este validă"> +<!ENTITY filter.paste.label "Lipeşte"> +<!ENTITY subscription.disabledFilters.enable "Activează filtrele inactive"> +<!ENTITY lasthit.column "&Ultima aplicare"> +<!ENTITY subscription.editTitle.label "Editează titlu"> +<!ENTITY subscription.disabledFilters.warning "Unele filtre din acest abonament sunt dezactivate."> +<!ENTITY filter.column "&Regulă de filtrare"> +<!ENTITY subscription.lastDownload.label "Ultima descărcare:"> +<!ENTITY viewList.label "Afişare listă"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/firstRun.properties new file mode 100644 index 0000000..f097877 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Navigare fără urme prin eliminarea indiciilor plantate de către companiile publicitare care urmăresc și înregistrează comportamentul dumneavoastră. +firstRun_toggle_off=OFF +firstRun_feature_tracking=Dezactivare urmărire +firstRun_feature_malware=Blocare software rău intenţionat +firstRun_title=Adblock Plus a fost instalat +firstRun_toggle_on=ON +firstRun_acceptableAdsExplanation=Dorim să încurajăm site-urile web în a utiliza publicitate simplă, discretă. De aceea ne-am stabilit <a>reguli de orientare stricte</a> pentru a identifica anunțurile acceptabile, care sunt permise de către setările implicite. Dacă totuși doriți să bloca toată publicitatea, puteți <a>dezactiva</a> aceste permisiuni în câteva secunde. +firstRun_contributor_credits=Contributori +firstRun_dataCorruptionWarning=Această pagină continuă să apară și după terminarea instalării? <a>Faceți clic aici!</a> +firstRun_acceptableAdsHeadline=Reclamele enervante vor fi blocate acum +firstRun_share=Spuneți prietenilor dumneavoastră +firstRun_share_headline=<a>Ajutați-ne</a> în a îmbunătăți web-ul +firstRun_feature_social_description=Eliminare automată a butoanelor mass-media socială, cum ar fi Facebook, care apar pe paginile de web pentru a urmări și înregistra comportamentul dumneavoastră. +firstRun_filterlistsReinitializedWarning=Se pare că din cauza unor probleme toate filtrele au fost eliminate şi a fost imposibil să le recuperăm. Prin urmare, am resetat filtrele şi setările pentru publicitate acceptabilă. Vă rugăm să verificaţi listele de filtre şi setările pentru publicitate acceptabilă în <a>Opţiuni pentru Adblock Plus</a>. +firstRun_feature_malware_description=Securizarea navigării prin blocarea domeniilor rău-intenționate cunoscute. +firstRun_features=Adblock Plus poate face mai mult decât să blocheze publicitatea +firstRun_donate=Donaţii +firstRun_donate_label=Ajutați proiectul +firstRun_feature_social=Ascundere butoane Social Media +firstRun_legacySafariWarning=Folosiți o versiune veche de Safari care nu este suportată de Adblock Plus. Aceasta putea funcționa incorect sau ar putea afecta navigarea pe unele site-uri. Vă recomandăm insistent să instalați cel puțin Safari 6.1.1 (pe sistemul de operare Mac OS X 10.8 Mountain Lion), sau Safari 7.0.1 (pe OS X 10.9 Mavericks), sau să utilizați cea mai recentă versiune de Mozilla Firefox, Google Chrome, sau Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/global.properties new file mode 100644 index 0000000..e8ed998 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=În pagină nu se găsește nici un element blocabil +action3_tooltip=Clic pentru a activa/dezactiva Adblock Plus. +notification_antiadblock_title=Ascunde mesajele direcționate? +type_label_script=script +filter_elemhide_nocriteria=Nu s-a specificat nici un criteriu pentru a identifica elementul pentru ascundere. +blockingGroup_title=Reguli de blocare +whitelisted_tooltip=Adblock Plus este activ, dar inactiv în pagina curentă. +type_label_stylesheet=foaie de stiluri +blocked_count_tooltip=?1? din ?2? +type_label_font=corp caracter +type_label_popup=fereastră pop-up +filter_regexp_tooltip=Acest filtru este bazat pe expresii regulate sau este prea scurt pentru a fi optimizat. Prea multe astfel de filtre pot duce la încetinirea navigării. +action0_tooltip=Clic pentru a afişa meniul contextual, clic-mijloc pentru a activa/dezactiva. +whitelisted_page=Adblock Plus este inactiv pentru pagina curentă +remove_group_warning=Sigur doriţi să înlăturaţi acest grup? +action1_tooltip=Clic pentru a deschide lista elementelor blocabile, clic-mijloc pentru a activa/dezactiva. +type_label_xmlhttprequest=cerere XML +active_tooltip=Adblock Plus este activ, sunt folosite ?1? abonamente şi ?2? filtre proprii. +type_label_document=document +type_label_object_subrequest=subcerere obiect +whitelistGroup_title=Reguli excepţii +disabled_tooltip=Adblock Plus este inactiv. +filter_elemhide_duplicate_id=Se poate specifica doar un singur identificator de element pentru ascundere. +type_label_object=obiect +action2_tooltip=Clic pentru a modifica opţiuni, clic-mijloc pentru a activa/dezactiva. +type_label_subdocument=cadru (frame) +clearStats_warning=Toate statisticile filtrelor vor fi iniţializate şi înregistrarea lor va fi dezactivată. Sunteţi sigur că doriţi să continuaţi? +notification_antiadblock_message=Acest site trimite mesaje direcționate utilizatorilor Adblock Plus. Vrei ca Adblock Plus să ascundă aceste mesaje direcționate? +blocked_count_addendum=(permisiuni explicite: ?1?, elemente ascunse: ?2?) +subscription_invalid_location=Locaţia pentru filtre nu este validă +type_label_image=imagine +remove_subscription_warning=Sigur doriţi să îndepărtaţi această subscriere? +type_label_other=alt element +mobile_menu_enable=ABP: Activează +type_label_media=audio-video +mobile_menu_disable_site=ABP: Dezactivează pe ?1? +elemhideGroup_title=Reguli de ascuns elemente +mobile_menu_enable_site=ABP: Activează pe ?1? +type_label_elemhide=ascuns +newGroup_title=Grup de filtre nou +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/overlay.dtd new file mode 100644 index 0000000..4da883a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Da"> +<!ENTITY notification.button.no "&Nu"> +<!ENTITY sync.label "Si&ncronizează setările Adblock Plus"> +<!ENTITY whitelist.site.label "Dezactivează Adblock Plus pe ?1?"> +<!ENTITY filters.label "Pre&ferințe filtre"> +<!ENTITY disable.label "Dezactivează peste tot"> +<!ENTITY objecttab.title "Blochează"> +<!ENTITY objecttab.tooltip "Click aici pentru a bloca obiectul utilizând Adblock Plus"> +<!ENTITY menuitem.label "&Adblock Plus"> +<!ENTITY objecttabs.label "Arată &panouri lângă Flash şi Java"> +<!ENTITY sendReport.label "Rapor&tează probleme pe această pagină"> +<!ENTITY whitelist.page.label "Dezactivează Adblock Plus doar pe pagina curentă"> +<!ENTITY context.image.label "Adblock Plus: blochează imagine"> +<!ENTITY counthits.label "Înre&gistrează statisticile filtrelor"> +<!ENTITY opensidebar.label "Deschide &lista elementelor blocabile"> +<!ENTITY notification.button.close "În&chide"> +<!ENTITY contribute.label "Contribuie la Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: blochează cadru"> +<!ENTITY blocked.tooltip "Elemente blocate în pagină:"> +<!ENTITY hideplaceholders.label "Ascunde &indicatoarele elementelor blocate"> +<!ENTITY showinstatusbar.label "Arată în bara de &stare"> +<!ENTITY sidebar.title "Adblock Plus: elemente blocabile în pagină"> +<!ENTITY options.label "&Opţiuni"> +<!ENTITY context.object.label "Adblock Plus: blochează obiect"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: reactivează în pagina curentă"> +<!ENTITY filters.tooltip "Cele mai active filtre:"> +<!ENTITY closesidebar.label "Închide &lista elementelor blocabile"> +<!ENTITY showintoolbar.label "Arată în bara de &unelte"> +<!ENTITY status.tooltip "Stare:"> +<!ENTITY context.media.label "Adblock Plus: blochează audio/video"> +<!ENTITY subscription.update.label "Actualizează filtre"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/sendReport.dtd new file mode 100644 index 0000000..2787f00 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "An&ulează ultima operație"> +<!ENTITY issues.disabledgroups.description "Grupurile de filtre sau abonamentele următoare sunt inactive, deși ar putea să aibă efect pe pagina curentă:"> +<!ENTITY showData.label "Afişare raportare"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blochează prea &mult"> +<!ENTITY issues.change.description "Configurația a fost schimbată. Reîncărcați pagina pentru a verifica dacă problema persistă. În acest caz, creați o raportare de problemă."> +<!ENTITY email.label "&Email:"> +<!ENTITY issues.openPreferences.label "Deschide preferințe filtre"> +<!ENTITY sendPage.confirmation "Raportarea a fost salvată și poate fi accesată la adresa următoare:"> +<!ENTITY copyLink.label "&Copiază legătura raportării"> +<!ENTITY issues.nofilters.description "Adblock Plus nu blochează nimic în pagina curentă. Problema pe care o aveți nu are probabil nici o legătură cu Adblock Plus."> +<!ENTITY sendPage.knownIssue "Problema pe care o aveți este probabil cunoscută. Detalii:"> +<!ENTITY typeSelector.other.description "Alegeți această opțiune dacă aveți impresia că Adblock Plus are o problemă internă."> +<!ENTITY issues.disabledgroups.enable.label "Activează grupul de filtre / abonamentul"> +<!ENTITY typeWarning.override.label "Trimite rap&ortarea în orice caz"> +<!ENTITY issues.disabled.enable.label "Activează Adblock Plus"> +<!ENTITY update.fixed.description "Actualizarea abonamentelor de filtre va rezolva probabil problema pe care doriți să o raportați. Reîncărcați pagina și utilizați butonul de raportare dacă problema persistă."> +<!ENTITY anonymous.label "Prezentare an&onima"> +<!ENTITY reloadButton.label "&Reîncărcare pagină"> +<!ENTITY recentReports.clear.label "Șter&ge toate rapoartele"> +<!ENTITY typeSelector.description "Această fereastră vă ghidează prin pașii necesari raportării unei probleme Adblock Plus. Pentru început, alegeți tipul problemei întâlnite pe pagina curentă:"> +<!ENTITY screenshot.remove.label "Masc&hează datele personale"> +<!ENTITY issues.ownfilters.description "Câteva din filtrele aplicate pe această pagină sunt definite de către utilizator. Dezactivați filtrele următoare, care sunt probabil cauza problemei:"> +<!ENTITY update.inProgress.description "Adblock Plus trebui să actualizeze abonamentele de filtre pentru a verifica dacă problema a fost rezolvată între timp. Așteptați un moment."> +<!ENTITY sendPage.retry.label "Retrimite"> +<!ENTITY data.label "&Datele reportării"> +<!ENTITY recentReports.label "Rapoartele trimise recent"> +<!ENTITY typeWarning.description "Aţi indicat că problema este generală și nu are legătură cu filtrele. Cel mai bine ar fi să raportați problema în [link]forumul Adblock Plus[/link]. Raportarea automată trebuie folosită numai ca unealtă suplimentară pentru o discuție pe forum deja existentă. Pentru aceasta, folosiți legătura generată la sfârșitul operațiunii curente. Dacă nu postați legătura pe forum, este posibil ca nimeni să nu citească raportarea."> +<!ENTITY issues.disabled.description "Adblock Plus este inactiv și nu va bloca nimic în starea curentă."> +<!ENTITY attachExtensions.label "Atașea&ză lista suplimentelor active pentru a verifica conflictele potențiale"> +<!ENTITY issues.nosubscriptions.add.label "Adaugă abonament filtre"> +<!ENTITY issues.disabledfilters.enable.label "Activează filtrele"> +<!ENTITY issues.override.label "Configurația es&te corectă, continuă raportarea"> +<!ENTITY issues.nosubscriptions.description "Se pare că nu sunteți abonat la nici o listă de filtre predefinită."> +<!ENTITY typeSelector.falsePositive.description "Alegeți această opțiune dacă pagina este afișată incorect sau nu funcționează cum trebuie atunci când Adblock Plus este activ. Verificați dacă Adblock Plus este sursa problemei prin dezactivarea temporară a suplimentului."> +<!ENTITY typeSelector.other.label "Al&tă problemă"> +<!ENTITY emailComment.label "Vă recomandăm să introduceți o adresă validă de email pentru a vă putea contacta cu posibile întrebări despre acest raport. De asemenea, acest lucru ne ajută la recunoașterea contribuțiilor dumneavoastră și la prioritizarea mai bună a acestora."> +<!ENTITY issues.whitelist.remove.label "Reactivează Adblock Plus pe pagina curentă"> +<!ENTITY outdatedSubscriptions.description "Abonamentele de filtre de mai jos nu au fost actualizate în ultimele două săptămâni. Actualizați-le înainte de a trimite raportul, este posibil ca problema să fi fost deja rezolvată."> +<!ENTITY dataCollector.description "Așteptați un moment până ce Adblock Plus adună datele necesare."> +<!ENTITY sendButton.label "Tr&imite raportare"> +<!ENTITY comment.label "&Comentariu (opțional):"> +<!ENTITY sendPage.errorMessage "Eroare la trimitere, cod "?1?". Verificați dacă sunteți conectat la internet. Dacă problema persistă, cereți ajutor în [link]forumul Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Arată rapoartele trimise recent"> +<!ENTITY commentPage.heading "Introducere comentariu"> +<!ENTITY update.start.label "Actualizează acum"> +<!ENTITY issues.disabledfilters.description "Filtrele următoare sunt inactive, deși ar putea să aibă efect pe pagina curentă:"> +<!ENTITY screenshot.description "Aceeași pagină poate fi afișată diferit pe calculatoare diferite. S-ar putea să ne fie de ajutor la înțelegerea problemei dacă ne trimiteți un instantaneu al paginii curente. Aveți posibilitatea de a înlătura datele confidențiale, precum și de a marca zonele cu probleme, folosind butoanele corespunzătoare și apoi selectând cu mausul."> +<!ENTITY screenshot.attach.label "Atașează &instantaneu ecran"> +<!ENTITY issues.whitelist.description "Adblock Plus este inactiv pe pagina curentă. Pentru a ajuta la investigarea problemei, activați Adblock Plus și reîncărcați pagina înainte de a trimite un raport."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus &nu blochează o reclamă"> +<!ENTITY typeSelector.heading "Alegeți tipul problemei"> +<!ENTITY anonymity.warning "Nu vom fi capabili sa venim inapoi la tine si sa acordam probabil raportul inferior."> +<!ENTITY wizard.title "Raportare problemă"> +<!ENTITY issues.ownfilters.disable.label "Dezactivează filtre"> +<!ENTITY commentPage.description "Puteți introduce aici e explicație detaliată care ne poate ajuta să înțelegem mai bine problema (opțional, însă recomandat)."> +<!ENTITY comment.lengthWarning "Comentariul are mai mult de 1000 de litere. Doar primele 1000 vor fi trimise."> +<!ENTITY typeSelector.falseNegative.description "Alegeți această opțiune în caz că o reclamă este afișată în ciuda faptului că Adblock Plus este activ."> +<!ENTITY sendPage.waitMessage "Așteptați până când Adblock Plus trimite datele."> +<!ENTITY dataCollector.heading "Bine ați venit la programul de raportat probleme"> +<!ENTITY screenshot.heading "Atașare instantaneu ecran"> +<!ENTITY sendPage.heading "Trimite raportarea"> +<!ENTITY issues.subscriptionCount.description "Se pare că sunteți abonat la prea multe abonamente de filtru, ceea ce nu este recomandat, deoarece va cauza probabil probleme în viitor. De asemenea, nu poate accepta raportul problemă, deoarece nu este clar care dintre autorii abonamentelor trebuie să ia măsuri. Vă rugăm să păstrați doar abonamentele absolut necesare și să încercați dacă problema persistă."> +<!ENTITY screenshot.mark.label "&Marcare problemă"> +<!ENTITY privacyPolicy.label "Politica de confidențialitate"> +<!ENTITY issues.description "Adblock Plus a detectat inconsistențe în configurație care pot fi cauza problemei, sau care pot îngreuna trimiterea raportului."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/sidebar.dtd new file mode 100644 index 0000000..f6400b4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Evidenţiază marginile elementelor"> +<!ENTITY address.label "Adresă"> +<!ENTITY context.open.label "Deschide în filă nouă"> +<!ENTITY type.label "Tip"> +<!ENTITY tooltip.filterSource.label "Sursă filtru:"> +<!ENTITY noitems.label "Nici un element blocabil"> +<!ENTITY filter.label "Filtru"> +<!ENTITY tooltip.size.label "Mărime:"> +<!ENTITY reattach.label "Prinde la loc"> +<!ENTITY search.label "&Caută:"> +<!ENTITY docDomain.thirdParty "(parte terţă)"> +<!ENTITY filterSource.label "Sursă filtru"> +<!ENTITY tooltip.docDomain.label "Sursă document:"> +<!ENTITY context.copy.label "Copiază adresa elementului"> +<!ENTITY tooltip.type.label "Tip:"> +<!ENTITY context.disablefilter.label "Dezactivează filtru ?1?"> +<!ENTITY context.copyFilter.label "Copiază filtru"> +<!ENTITY context.block.label "Blochează element"> +<!ENTITY context.enablefilter.label "Reactivează filtru ?1?"> +<!ENTITY detach.label "Desprinde"> +<!ENTITY whitelisted.label "Pagini sigure"> +<!ENTITY context.disablefilteronsite.label "Dezactivează acest filtru pe ?1?"> +<!ENTITY detached.title "Adblock Plus: Lista elementelor blocabile în pagină (desprinsă)"> +<!ENTITY docDomain.firstParty "(parte implicată)"> +<!ENTITY tooltip.type.whitelisted "(permis)"> +<!ENTITY tooltip.filter.label "Filtru în acţiune:"> +<!ENTITY tooltip.filter.disabled "(dezactivat)"> +<!ENTITY context.editfilter.label "Modifică filtrul activ"> +<!ENTITY tooltip.type.blocked "(blocat)"> +<!ENTITY size.label "Mărime"> +<!ENTITY context.whitelist.label "Adaugă regulă excepţie pentru element"> +<!ENTITY context.selectAll.label "Selectează tot"> +<!ENTITY state.label "Stare"> +<!ENTITY docDomain.label "Sursă document"> +<!ENTITY tooltip.address.label "Adresă:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/subscriptionSelection.dtd new file mode 100644 index 0000000..ec7cdbf --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ro/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "A&daugă și abonamentul ?1?"> +<!ENTITY list.download.failed "Eroare la descărcarea listei de abonamente."> +<!ENTITY list.download.retry "Încearcă din nou"> +<!ENTITY title.label "&Titlul abonamentului:"> +<!ENTITY list.download.website "Arată pagina web"> +<!ENTITY supplementMessage "Acest abonament trebuie folosit împreună cu abonamentul ?1?,pe care nu îl folosiți încă."> +<!ENTITY viewList.label "Vizualizare filtre"> +<!ENTITY visitHomepage.label "Vizualizare pagina de start"> +<!ENTITY addSubscription.label "Adaugă abonament"> +<!ENTITY dialog.title "Adăugare abonamente pentru filtre Adblock Plus"> +<!ENTITY location.label "&Locaţia listei de filtre:"> +<!ENTITY fromWeb.description "Confirmați adăugarea acestui abonament filtre. Puteți schimba titlul sau localizarea înainte de a-l adăuga."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/composer.dtd new file mode 100644 index 0000000..a7fc2c5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "в кон&це адреса"> +<!ENTITY domainRestriction.label "Ограничить &доменом:"> +<!ENTITY collapse.default.no.label "Использовать стандартное значение (нет)"> +<!ENTITY firstParty.label "Только элементы с то&го же сайта"> +<!ENTITY preferences.label "Показать су&ществующие фильтры..."> +<!ENTITY pattern.label "искать шаблон"> +<!ENTITY thirdParty.label "Только сторонние элементы"> +<!ENTITY filter.label "Новый &фильтр:"> +<!ENTITY collapse.label "Элементы заблокированны:"> +<!ENTITY match.warning "Введенный шаблон не соответствует адресу, для которого вы создаете правило, и никак не повлияет на него."> +<!ENTITY anchor.start.label "в на&чале адреса"> +<!ENTITY matchCase.label "&Учитывать регистр букв"> +<!ENTITY custom.pattern.label "&Другой:"> +<!ENTITY unselectAllTypes.label "Убрать все"> +<!ENTITY type.whitelist.label "Ис&ключение"> +<!ENTITY regexp.warning "Введенный шаблон будет понят как регулярное выражение. Большое количество регулярных выражений может отрицательно сказаться на быстродействии вашего браузера. Если вы не собирались использовать регулярные выражения, то просто добавьте звездочку в конце шаблона."> +<!ENTITY dialog.title "Составление фильтра для Adblock Plus"> +<!ENTITY basic.label "Стандартный вид"> +<!ENTITY type.filter.label "Правило &блокирования"> +<!ENTITY types.label "Применять к типам:"> +<!ENTITY shortpattern.warning "Введенный шаблон слишком короткий и потому не будет оптимизирован. Большое количество таких шаблонов может отрицательно сказаться на быстродействии вашего браузера. Рекомендуется по возможности использовать более длинный шаблон."> +<!ENTITY collapse.yes.label "Да"> +<!ENTITY anchors.label "Принимать шаблон только:"> +<!ENTITY collapse.default.yes.label "Использовать стандартное значение (да)"> +<!ENTITY domainRestriction.help "Укажите один или несколько доменов, разделенные символом «|», фильтр будет применен только на этих доменах. Символ «~» перед именем домена означает, что фильтр не должен применяться на этом домене."> +<!ENTITY accept.label "Добавить фильтр"> +<!ENTITY options.label "Настройки..."> +<!ENTITY disabled.warning "Adblock Plus сейчас отключен. Вы можете добавить фильтры, но чтобы они работали нужно [link]включить Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "в на&чале имени домена"> +<!ENTITY collapse.no.label "Нет"> +<!ENTITY selectAllTypes.label "Пометить все"> +<!ENTITY advanced.label "Расширенный вид"> +<!ENTITY pattern.explanation "Шаблоном может быть любая часть адреса, причем звездочка (*) заменяет любое количество символов. Фильтр будет применен только к тем адресам, которые соответствуют шаблону."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/filters.dtd new file mode 100644 index 0000000..d1a858b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/filters.dtd @@ -0,0 +1,73 @@ +<!ENTITY restore.custom.warning "Все собственные фильтры будут заменены данными этого файла. Продолжать?"> +<!ENTITY slow.column "&Медленное"> +<!ENTITY enabled.column "В&ключено"> +<!ENTITY subscription.lastDownload.checksumMismatch "Ошибка: проверочная сумма не совпадает, возможно произошла ошибка загрузки"> +<!ENTITY noFiltersInGroup.text "Выбранная группа фильтров пуста."> +<!ENTITY subscription.actions.label "Действия"> +<!ENTITY filter.selectAll.label "Выбрать все"> +<!ENTITY backupButton.label "Резервные &копии и восстановление"> +<!ENTITY restore.minVersion.warning "Предупреждение: этот файл был записан более новой версией Adblock Plus. Рекомендуется обновить Adblock Plus до последней версии, прежде чем восстанавливать данные из этого файла."> +<!ENTITY restore.error "Ошибка при обработке данных файла, может это не резервная копия, созданная Adblock Plus?"> +<!ENTITY sort.ascending.label "Сортировка по ал&фавиту"> +<!ENTITY sort.label "Со&ртировка"> +<!ENTITY subscription.source.label "Список фильтров"> +<!ENTITY hitcount.column "Сра&батывания"> +<!ENTITY noFilters.text "У вас пока что нет собственных фильтров."> +<!ENTITY backup.custom.title "Только собственные фильтры"> +<!ENTITY subscription.external.label "Обновляется другим расширением"> +<!ENTITY subscription.delete.label "Удалить"> +<!ENTITY noGroupSelected.text "Нужно выбрать группу, чтобы показать ее фильтры."> +<!ENTITY filter.cut.label "Вырезать"> +<!ENTITY restore.default.label "Восстановить копию от ?1?"> +<!ENTITY subscription.lastDownload.inProgress "сейчас..."> +<!ENTITY subscriptions.tab.label "Подписки"> +<!ENTITY sort.descending.label "В об&ратном порядке"> +<!ENTITY filters.remove.warning "Вы действительно хотите удалить все отмеченные фильтры?"> +<!ENTITY filter.delete.label "Удалить"> +<!ENTITY addSubscriptionAdd.label "Добавить"> +<!ENTITY viewMenu.label "Вид"> +<!ENTITY subscription.lastDownload.unknown "никогда"> +<!ENTITY addSubscriptionCancel.label "Отмена"> +<!ENTITY subscription.enabled.label "Включена"> +<!ENTITY noSubscriptions.text "У вас пока нет подписок на фильтры. Без фильтров Adblock Plus ничего не будет + блокировать, пожалуйста воспользуйтесь кнопкой "Добавить подписку"."> +<!ENTITY subscription.update.label "Обновить фильтры"> +<!ENTITY dialog.title "Настройки фильтров Adblock Plus"> +<!ENTITY addFilter.label "Добавить &фильтр"> +<!ENTITY subscription.minVersion.warning "Этот список фильтров требует более новой версии Adblock Plus, желательно обновить Adblock Plus до последней версии."> +<!ENTITY subscription.lastDownload.invalidURL "Ошибка: неверный адрес"> +<!ENTITY backup.error "При записи фильтров в файл произошла ошибка. Проверьте, может этот файл защищен от записи или используется другой программой."> +<!ENTITY filter.moveUp.label "Поместить выше"> +<!ENTITY addGroup.label "Добавить &группу фильтров"> +<!ENTITY filter.edit.label "Редактировать"> +<!ENTITY subscription.showHideFilters.label "Спрятать/показать фильтры"> +<!ENTITY acceptableAds2.label "Разре&шить некоторую ненавязчивую рекламу"> +<!ENTITY addSubscriptionOther.label "Добавить другую подписку"> +<!ENTITY close.label "Закрыть"> +<!ENTITY sort.none.label "Бе&з сортировки"> +<!ENTITY filter.actions.label "Действия с фильтрами"> +<!ENTITY filter.copy.label "Копировать"> +<!ENTITY filter.moveDown.label "Поместить ниже"> +<!ENTITY filter.resetHitCounts.label "Обнулить статистику попаданий"> +<!ENTITY readMore.label "Дополнительная информация"> +<!ENTITY subscription.moveUp.label "Поместить выше"> +<!ENTITY addSubscription.label "До&бавить подписку"> +<!ENTITY subscription.homepage.label "Домашняя страница"> +<!ENTITY backup.complete.title "Все фильтры и подписки"> +<!ENTITY restore.own.label "Восстановить собственную копию"> +<!ENTITY restore.complete.warning "Все ваши фильтры и подписки будут заменены данными этого файла. Продолжать?"> +<!ENTITY filters.tab.label "Собственные фильтры"> +<!ENTITY backup.label "Создать новую резервную копию"> +<!ENTITY find.label "&Найти фильтр"> +<!ENTITY subscription.moveDown.label "Поместить ниже"> +<!ENTITY subscription.lastDownload.connectionError "Ошибка: невозможно загрузить"> +<!ENTITY subscription.lastDownload.success "OK"> +<!ENTITY subscription.lastDownload.invalidData "Ошибка: неверный формат списка фильтров"> +<!ENTITY filter.paste.label "Вставить"> +<!ENTITY subscription.disabledFilters.enable "Включить отключенные фильтры"> +<!ENTITY lasthit.column "Пос&леднее срабатывание"> +<!ENTITY subscription.editTitle.label "Переименовать"> +<!ENTITY subscription.disabledFilters.warning "Некоторые фильтры в этой подписке отключены."> +<!ENTITY filter.column "&Правило"> +<!ENTITY subscription.lastDownload.label "Последнее обновление:"> +<!ENTITY viewList.label "Открыть список"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/firstRun.properties new file mode 100644 index 0000000..9de16d0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Просматривайте конфиденциально путем отключения отслеживания - скрыв ваши действия от объявления компаний, которые будут отслеживать каждый ваш шаг. +firstRun_toggle_off=ВЫКЛ +firstRun_feature_tracking=Отключить слежение +firstRun_feature_malware=Блокирование вредоносных программ +firstRun_title=Adblock Plus установлен +firstRun_toggle_on=ВКЛ +firstRun_acceptableAdsExplanation=Мы хотели бы призвать веб-сайты использовать простую, ненавязчивую рекламу. Вот почему мы установили <a>строгие принципы</a> для определения приемлемых объявлений, которые разрешены в настройках по умолчанию. Если вы все еще хотите блокировать каждое объявление вы можете <a>Отключить</a> это в течение нескольких секунд. +firstRun_contributor_credits=Пожертвования +firstRun_dataCorruptionWarning=Эта страница всё ещё отображается? <a>Щёлкните здесь!</a> +firstRun_acceptableAdsHeadline=Надоевшая реклама теперь будет заблокирована +firstRun_share=Рассказать друзьям +firstRun_share_headline=<a>протяните нам руку помощи</a> в стремлении сделать Интернет лучше +firstRun_feature_social_description=Автоматически избавляет вас от просмотра кнопок социальных сетей, подобных Facebook, которые появляются на веб-страницах и отслеживают ваше поведение. +firstRun_filterlistsReinitializedWarning=Похоже ошибка привела к тому, что все фильтры удалены, и мы не можем их восстановить из резервной копии. Поэтому мы сбросили ваши фильтры и параметры "ненавязчивой" рекламы. Пожалуйста проверьте список ваших фильтров и параметры "ненавязчивой "рекламы в <a>параметры Adblock Plus</a>. +firstRun_feature_malware_description=Делает ваш браузер более безопасным путем блокирования известных вредоносных доменов. +firstRun_features=AdBlock Plus способен на большее, чем просто блокировать рекламу +firstRun_donate=пожертвовать +firstRun_donate_label=Поддержать наш проект +firstRun_feature_social=Удалять кнопки социальных сетей +firstRun_legacySafariWarning=Вы используете старую версию Safari, который не поддерживается Adblock Plus. Она может работать не правильно или ухудшать качество работы пользователя на некоторых веб-сайтах. Мы настоятельно рекомендуем обновиться до Safari 6.1.1 или выше (в OS X 10.8 Mountain Lion), или Safari 7.0.1 или выше (в OS X 10.9 Mavericks), или использовать последнюю версию Mozilla Firefox, Google Chrome или Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/global.properties new file mode 100644 index 0000000..c279c00 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=На открытой странице нет элементов, которые можно было бы заблокировать +action3_tooltip=Щелкните здесь, чтобы включить или отключить Adblock Plus. +notification_antiadblock_title=скрыть целевых сообщений? +type_label_script=Скрипт +filter_elemhide_nocriteria=Не указано никаких признаков, чтобы опознать элемент, который нужно скрыть +blockingGroup_title=Правила блокирования +whitelisted_tooltip=Adblock Plus отключен на этой странице. +type_label_stylesheet=Стили +blocked_count_tooltip=?1? из ?2? +type_label_font=Шрифт +type_label_popup=Всплывающее окно +filter_regexp_tooltip=Этот фильтр либо является регулярным выражением, либо слишком короткий для оптимизации. Большое количество таких фильтров может отрицательно сказаться на быстродействии вашего браузера. +action0_tooltip=Щелкните здесь, чтобы открыть контекстное меню. Нажмите среднюю клавишу мышки, чтобы включить или отключить Adblock Plus. +whitelisted_page=Adblock Plus отключен на этой странице +remove_group_warning=Вы уверены, что хотите удалить эту группу? +action1_tooltip=Щелкните здесь, чтобы открыть/закрыть список элементов. Нажмите среднюю клавишу мышки, чтобы включить или отключить Adblock Plus. +type_label_xmlhttprequest=XML-запрос +active_tooltip=Adblock Plus включен, используется подписок: ?1?, собственных фильтров: ?2?. +type_label_document=Документ +type_label_object_subrequest=Запрос объекта +whitelistGroup_title=Исключения +disabled_tooltip=Adblock Plus отключен. +filter_elemhide_duplicate_id=У элемента, который нужно скрыть, может быть только один идентификатор +type_label_object=Объект +action2_tooltip=Щелкните здесь, чтобы открыть окно установок. Нажмите среднюю клавишу мышки, чтобы включить или отключить Adblock Plus. +type_label_subdocument=Фрейм +clearStats_warning=Статистика попаданий будет обнулена для всех фильтров и в дальнейшем больше не будет записываться. Продолжать? +notification_antiadblock_message=Этот сайт, как известно, показывают целевые сообщения пользователям Adblock Plus. Хотите Adblock Plus, чтобы скрыть целевых сообщений? +blocked_count_addendum=(также исключений: ?1?, спрятано: ?2?) +subscription_invalid_location=Не удалось распознать введенный адрес ни как адрес в интернете, ни как путь файлу. +type_label_image=Изображение +remove_subscription_warning=Вы уверены, что хотите удалить эту подписку? +type_label_other=Неизвестен +mobile_menu_enable=ABP: Включить +type_label_media=Аудио/видео +mobile_menu_disable_site=ABP: Отключить на ?1? +elemhideGroup_title=Правила скрытия +mobile_menu_enable_site=ABP: Включить на ?1? +type_label_elemhide=Скрыто +newGroup_title=Новая группа фильтров +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/overlay.dtd new file mode 100644 index 0000000..dd49760 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&да"> +<!ENTITY notification.button.no "&нет"> +<!ENTITY sync.label "Син&хронизировать настройки Adblock Plus"> +<!ENTITY whitelist.site.label "Отключить на ?1?"> +<!ENTITY filters.label "Настройки &фильтров"> +<!ENTITY disable.label "Отключить везде"> +<!ENTITY objecttab.title "Блокировать"> +<!ENTITY objecttab.tooltip "Нажмите здесь, чтобы Adblock Plus заблокировал этот объект"> +<!ENTITY menuitem.label "Установки &Adblock Plus"> +<!ENTITY objecttabs.label "Показывать &ярлык на Flash и Java"> +<!ENTITY sendReport.label "&Сообщить о проблеме на этой странице"> +<!ENTITY whitelist.page.label "Отключить только на этой странице"> +<!ENTITY context.image.label "Adblock Plus: заблокировать изображение"> +<!ENTITY counthits.label "С&читать срабатывания фильтров"> +<!ENTITY opensidebar.label "Открыть с&писок элементов"> +<!ENTITY notification.button.close "&близко"> +<!ENTITY contribute.label "Помочь проекту Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: заблокировать фрейм"> +<!ENTITY blocked.tooltip "Заблокированные элементы на этой странице:"> +<!ENTITY hideplaceholders.label "Прятать &метки на месте заблокированных элементов"> +<!ENTITY showinstatusbar.label "Показывать в &строке состояния"> +<!ENTITY sidebar.title "Элементы открытой страницы"> +<!ENTITY options.label "&Настройки"> +<!ENTITY context.object.label "Adblock Plus: заблокировать объект"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: включить обратно на этой странице"> +<!ENTITY filters.tooltip "Наиболее часто примененные фильтры:"> +<!ENTITY closesidebar.label "Закрыть с&писок элементов"> +<!ENTITY showintoolbar.label "&Показывать в панели инструментов"> +<!ENTITY status.tooltip "Статус:"> +<!ENTITY context.media.label "Adblock Plus: заблокировать аудио/видео"> +<!ENTITY subscription.update.label "Обновить фильтры"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/sendReport.dtd new file mode 100644 index 0000000..39b1b77 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/sendReport.dtd @@ -0,0 +1,100 @@ +<!ENTITY screenshot.undo.label "&Отменить"> +<!ENTITY issues.disabledgroups.description "Следующие подписки / группы фильтров отключены, но могли бы повлиять на эту страницу:"> +<!ENTITY showData.label "Показать данные сообщения"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus блокирует слишко&м многое"> +<!ENTITY issues.change.description "Ваши настройки изменились. Пожалуйста, обновите страницу для проверки + внесенных изменений и отправьте сообщение, если проблема не разрешилась."> +<!ENTITY email.label "E-&mail:"> +<!ENTITY issues.openPreferences.label "Открыть настройки фильтров"> +<!ENTITY sendPage.confirmation "Сообщение отправлено и сохранено. Вы можете просмотреть его по следующей ссылке:"> +<!ENTITY copyLink.label "С&копировать ссылку на сообщение"> +<!ENTITY issues.nofilters.description "Adblock Plus ничего не блокирует на этой странице. Скорее всего, проблема, + которую вы наблюдаете, не связана с Adblock Plus."> +<!ENTITY sendPage.knownIssue "Возможно, что проблема, о которой вы сообщили, уже известна. Дополнительная информация:"> +<!ENTITY typeSelector.other.description "Если вы подозреваете, что проблема в самом расширении Adblock Plus, + а не в его фильтрах, то выберите этот вариант."> +<!ENTITY issues.disabledgroups.enable.label "Включить подписку / группу фильтров"> +<!ENTITY typeWarning.override.label "Я &понял и, тем не менее, хочу отправить сообщение"> +<!ENTITY issues.disabled.enable.label "Включить Adblock Plus"> +<!ENTITY update.fixed.description "Обновление ваших подписок на фильтры скорее всего решило проблему, о которой + вы хотели сообщить. Пожалуйста загрузите заново страницу и попробуйте еще раз. + Если проблема осталось, то пошлите сообщение еще раз."> +<!ENTITY anonymous.label "Отпр&авить анонимно"> +<!ENTITY reloadButton.label "Об&новить страницу"> +<!ENTITY recentReports.clear.label "Уда&лить все сообщения"> +<!ENTITY typeSelector.description "Мастер поможет вам отправить сообщение о проблеме с Adblock Plus. + Пожалуйста, укажите на этой странице тип проблемы, с которой вы столкнулись:"> +<!ENTITY screenshot.remove.label "У&далить конфиденциальные данные"> +<!ENTITY issues.ownfilters.description "Некоторые фильтры, которые применяются на этой странице, вы добавили сами. + Пожалуйста, отключите фильтры, которые могли вызвать эту проблему:"> +<!ENTITY update.inProgress.description "Adblock Plus должен обновить ваши подписки на фильтры, чтобы удостовериться, + что проблема еще не была решена. Подождите, пожалуйста..."> +<!ENTITY sendPage.retry.label "Отправить еще раз"> +<!ENTITY data.label "Да&нные сообщения:"> +<!ENTITY recentReports.label "Ваши недавно отправленные сообщения"> +<!ENTITY typeWarning.description "Вы указали, что хотите сообщить о проблеме в Adblock Plus, а не в его фильтрах. + Пожалуйста, учтите, что о таких проблемах лучше сообщать на + [link]форуме Adblock Plus[/link]. Мастер отправки сообщения следует + использовать лишь для добавления информации к обсуждению на форуме, поскольку + никто не увидит ваше сообщение, если не оставить на него ссылку. Вы + получите автоматически созданную ссылку после отправки сообщения."> +<!ENTITY issues.disabled.description "Adblock Plus отключен и ничего не блокирует в этом состоянии."> +<!ENTITY attachExtensions.label "П&рикрепить список включенных расширений к сообщению на случай, если проблема вызвана конфликтом расширений"> +<!ENTITY issues.nosubscriptions.add.label "Добавить подписку"> +<!ENTITY issues.disabledfilters.enable.label "Включить фильтр"> +<!ENTITY issues.override.label "Настройки в &порядке, продолжить отправление сообщения"> +<!ENTITY issues.nosubscriptions.description "Вы не подписаны ни на один из готовых списков фильтров, которые автоматически + блокируют нежелательные элементы страниц."> +<!ENTITY typeSelector.falsePositive.description "Если на странице отсутствуют важные части содержимого, а также если она + отображается или функционирует неправильно, то следует выбрать этот вариант. + Вы можете проверить, является ли Adblock Plus источником проблемы, временно + отключив его."> +<!ENTITY typeSelector.other.label "&Другая проблема"> +<!ENTITY emailComment.label "Мы рекомендуем ввести e-mail адрес, по которому мы могли бы связаться в случает вопросов по вашему сообщению. Это также позволит нам узнавать Ваши взносы и обрабатывать их в предпочтительном порядке."> +<!ENTITY issues.whitelist.remove.label "Включить Adblock Plus на этой странице"> +<!ENTITY outdatedSubscriptions.description "Следующие подписки на фильтры не обновлялись более двух недель. Пожалуйста, + обновите эти подписки перед отправлением сообщения, поскольку проблема уже + может быть решена."> +<!ENTITY dataCollector.description "Пожалуйста, подождите несколько секунд, пока Adblock Plus собирает нужные данные."> +<!ENTITY sendButton.label "От&править сообщение"> +<!ENTITY comment.label "&Комментарий (необязательно):"> +<!ENTITY sendPage.errorMessage "Ошибка отправки сообщения: «?1?». Пожалуйста, + удостоверьтесь, что ваше соединение с сетью Интернет работает, и попробуйте еще раз. + Если проблема остается, обратитесь в [link]форум Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Показать недавно отправленные сообщения"> +<!ENTITY commentPage.heading "Комментарий"> +<!ENTITY update.start.label "Обновить подписки"> +<!ENTITY issues.disabledfilters.description "Следующие фильтры отключены, но могли бы повлиять на эту страницу:"> +<!ENTITY screenshot.description "Одна и та же страница может выглядеть по-разному для разных людей. Снимок экрана + может помочь нам понять проблему. Вы можете удалить конфиденциальные части снимка + или пометить область снимка, в которой проявляется проблема. Для этого + нажмите на соответствующую кнопку и выберите мышкой часть снимка."> +<!ENTITY screenshot.attach.label "При&крепить снимок экрана к сообщению"> +<!ENTITY issues.whitelist.description "Adblock Plus отключен на странице, о которой вы собираетесь сообщить. Пожалуйста, + включите Adblock Plus и обновите страницу, прежде чем посылать сообщение. + Это поможет рассмотрению вашего сообщения."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus не блоки&рует рекламу"> +<!ENTITY typeSelector.heading "Выбор типа проблемы"> +<!ENTITY anonymity.warning "Мы не сможем связаться с вами и, вероятно, уделим меньше внимания Вашему сообщению."> +<!ENTITY wizard.title "Сообщить о проблеме"> +<!ENTITY issues.ownfilters.disable.label "Отключить фильтр"> +<!ENTITY commentPage.description "Внизу вы можете добавить комментарий, чтобы помочь нам понять проблему. + Это не обязательно, но рекомендуется для неочевидных проблем. + Также вы можете проверить данные сообщения, прежде чем оно будет + отправлено."> +<!ENTITY comment.lengthWarning "Длина комментария превышает 1000 символов. Только первые 1000 символов будут отправлены."> +<!ENTITY typeSelector.falseNegative.description "Если несмотря на то, что Adblock Plus включен, на странице отображается реклама, + то следует выбрать этот вариант."> +<!ENTITY sendPage.waitMessage "Пожалуйста, подождите, пока Adblock Plus отправляет ваше сообщение."> +<!ENTITY dataCollector.heading "Добро пожаловать в мастер отправки сообщения"> +<!ENTITY screenshot.heading "Снимок экрана"> +<!ENTITY sendPage.heading "Отправка сообщения"> +<!ENTITY issues.subscriptionCount.description "Похоже, что вы подписаны на слишком большое количество списков фильтров. Это + не рекомендуется, поскольку сильно возрастает вероятность проблем. Помимо + этого, мы не можем принять ваше сообщение, поскольку неясно, какой из списков + фильтров нужно исправлять. Пожалуйста, удалите все списки фильтров кроме + действительно нужных. После этого проверьте, проявляется ли еще проблема."> +<!ENTITY screenshot.mark.label "&Пометить проблему"> +<!ENTITY privacyPolicy.label "Правила конфиденциальности"> +<!ENTITY issues.description "Adblock Plus обнаружил проблемы в ваших настройках, которые, возможно, вызвали + данную проблему или усложнят рассмотрение вашего сообщения."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/sidebar.dtd new file mode 100644 index 0000000..7786487 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Показать расположение элемента"> +<!ENTITY address.label "Адрес"> +<!ENTITY context.open.label "Открыть в новой вкладке"> +<!ENTITY type.label "Тип"> +<!ENTITY tooltip.filterSource.label "Источник фильтра:"> +<!ENTITY noitems.label "Блокировать нечего"> +<!ENTITY filter.label "Фильтр"> +<!ENTITY tooltip.size.label "Размер:"> +<!ENTITY reattach.label "Присоединить"> +<!ENTITY search.label "П&оиск:"> +<!ENTITY docDomain.thirdParty "(запрос с другого сайта)"> +<!ENTITY filterSource.label "Список фильтров"> +<!ENTITY tooltip.docDomain.label "Домен страницы:"> +<!ENTITY context.copy.label "Копировать адрес"> +<!ENTITY tooltip.type.label "Тип:"> +<!ENTITY context.disablefilter.label "Отключить фильтр ?1?"> +<!ENTITY context.copyFilter.label "Копировать фильтр"> +<!ENTITY context.block.label "Заблокировать элемент"> +<!ENTITY context.enablefilter.label "Включить обратно фильтр ?1?"> +<!ENTITY detach.label "Отсоединить"> +<!ENTITY whitelisted.label "Отключен на этой странице"> +<!ENTITY context.disablefilteronsite.label "Отключить фильтр на ?1?"> +<!ENTITY detached.title "Adblock Plus: элементы открытой страницы (отсоединены)"> +<!ENTITY docDomain.firstParty "(запрос с того же сайта)"> +<!ENTITY tooltip.type.whitelisted "(исключение)"> +<!ENTITY tooltip.filter.label "Применен фильтр:"> +<!ENTITY tooltip.filter.disabled "(отключен)"> +<!ENTITY context.editfilter.label "Отредактировать примененный фильтр"> +<!ENTITY tooltip.type.blocked "(заблокирован)"> +<!ENTITY size.label "Размер"> +<!ENTITY context.whitelist.label "Добавить исключение для элемента"> +<!ENTITY context.selectAll.label "Выделить всё"> +<!ENTITY state.label "Статус"> +<!ENTITY docDomain.label "Домен страницы"> +<!ENTITY tooltip.address.label "Адрес:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/subscriptionSelection.dtd new file mode 100644 index 0000000..080da8b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/ru/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Доба&вить подписку на список фильтров «?1?»"> +<!ENTITY list.download.failed "При скачивании списка подписок произошла ошибка."> +<!ENTITY list.download.retry "Попробовать еще раз"> +<!ENTITY title.label "На&звание подписки:"> +<!ENTITY list.download.website "Открыть страницу с подписками"> +<!ENTITY supplementMessage "Этот список фильтров должен использоваться в комбинации со списком фильтров «?1?», который вы не используете."> +<!ENTITY viewList.label "Просмотреть фильтры"> +<!ENTITY visitHomepage.label "Посетить домашнюю страницу списка"> +<!ENTITY addSubscription.label "Добавить подписку"> +<!ENTITY dialog.title "Добавить подписку для Adblock Plus"> +<!ENTITY location.label "А&дрес списка фильтров:"> +<!ENTITY fromWeb.description "Пожалуйста, подтвердите, что вы действительно хотите добавить подписку на этот список фильтров. Вы можете изменить название и адрес подписки перед добавлением."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/composer.dtd new file mode 100644 index 0000000..23604b6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "na konci a&dresy"> +<!ENTITY domainRestriction.label "Obm&edziť na doménu:"> +<!ENTITY collapse.default.no.label "Použiť predvolené (nie)"> +<!ENTITY firstParty.label "&Len prvá strana"> +<!ENTITY preferences.label "&Zobraziť existujúce filtre..."> +<!ENTITY pattern.label "Vyhľadať vzor"> +<!ENTITY thirdParty.label "Len &tretie strany"> +<!ENTITY filter.label "Nový &filter:"> +<!ENTITY collapse.label "Pád zabl&okovaný::"> +<!ENTITY match.warning "Vzor, ktorý ste vložili nezodpovedá blokovanej/povolenej adrese a nebude mať žiadny efekt."> +<!ENTITY anchor.start.label "&na začiatku adresy"> +<!ENTITY matchCase.label "&Modelový prípad"> +<!ENTITY custom.pattern.label "&Vlastné:"> +<!ENTITY unselectAllTypes.label "Nezvoliť nič"> +<!ENTITY type.whitelist.label "Základné pravidlo"> +<!ENTITY regexp.warning "Vzor, ktorý ste vložili bude interpretovaný ako regulárny výraz. Mnoho regulárnych výrazov môže spomaliť prehliadanie. Ak ste nemali v úmysle používať regulárne výrazy, pridajte symbol * na koniec vzoru."> +<!ENTITY dialog.title "Pridať pravidlo filtra"> +<!ENTITY basic.label "Jednoduchý náhľad"> +<!ENTITY type.filter.label "Blokovanie filtra"> +<!ENTITY types.label "Aplikovať na typy:"> +<!ENTITY shortpattern.warning "Vzor, ktorý ste vložili je príliš krátky, aby mohol byť optimalizovaný, mnoho takýchto schém môže spomaliť prehliadanie. Odporúčame, aby ste vybrali dlhší reťazec pre tento filter."> +<!ENTITY collapse.yes.label "Áno"> +<!ENTITY anchors.label "Prijať vzor len:"> +<!ENTITY collapse.default.yes.label "Použiť predvolené (áno)"> +<!ENTITY domainRestriction.help "Špecifikujte jednu alebo viac domén oddelených značkou "|", filter bude obmedzený len pre tieto domény. Symbol "~" pred názvom domény znamená, že filter by nemal byť aplikovaný na tejto doméne."> +<!ENTITY accept.label "Pridať filter"> +<!ENTITY options.label "Možnosti"> +<!ENTITY disabled.warning "Adblock Plus je aktuálne vypnutý. Môžete pridávať filtre, ale tie nebudú aplikované pokiaľ [link]nezapnete Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "&na začiatku názvu domény"> +<!ENTITY collapse.no.label "Nie"> +<!ENTITY selectAllTypes.label "Vybrať všetko"> +<!ENTITY advanced.label "Pokročilý náhľad"> +<!ENTITY pattern.explanation "Vzor môže byť nejaká časť adresy, symbol * ako divoká karta. Filter ešte len bude aplikovaný na adresy zodpovedajúce vzoru."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/filters.dtd new file mode 100644 index 0000000..ed28642 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Všetky vaše vlastné filtre budú nahradené obsahom zo zvoleného súboru. Prajete si pokračovať?"> +<!ENTITY slow.column "&Voľné filtre"> +<!ENTITY enabled.column "&Zapnuté"> +<!ENTITY subscription.lastDownload.checksumMismatch "Zlyhalo, chybné prispôsobenie kontrolného súčtu"> +<!ENTITY noFiltersInGroup.text "Zvolená skupiny je prázdna"> +<!ENTITY subscription.actions.label "Úlohy"> +<!ENTITY filter.selectAll.label "Vybrať všetko"> +<!ENTITY backupButton.label "&Záloha a Obnova"> +<!ENTITY restore.minVersion.warning "Upozornenie: súbor bol vytvorený novšou verziuo Adblock Plus. Mali by ste aktualizovať na novšiu verziu predtým, než obnovíte z tohto súboru."> +<!ENTITY restore.error "Údaje súborov nemôžu byť spacované, možno to nie zálohovací súbor Adblock Plus?"> +<!ENTITY sort.ascending.label "Triediť od &A > Z"> +<!ENTITY sort.label "&Triediť podľa"> +<!ENTITY subscription.source.label "Zoznam filtrov"> +<!ENTITY hitcount.column "&Počítadlá"> +<!ENTITY noFilters.text "Zatiaľ nemáte žiadne vlastné filtre."> +<!ENTITY backup.custom.title "Len vlastné filtre"> +<!ENTITY subscription.external.label "Aktualizované iným rozšírením"> +<!ENTITY subscription.delete.label "Zmazať"> +<!ENTITY noGroupSelected.text "Musíte vybrať skupinu filtrov predtým, než sa tieto filtre zobrazia."> +<!ENTITY filter.cut.label "Vystrihnúť"> +<!ENTITY restore.default.label "Obnoviť zálohu z ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Preberanie..."> +<!ENTITY subscriptions.tab.label "Odbery filtrov"> +<!ENTITY sort.descending.label "Trie&diť od Z > A"> +<!ENTITY filters.remove.warning "Naozaj chcete odstrániť všetky vybraté filtre?"> +<!ENTITY filter.delete.label "Odstrániť"> +<!ENTITY addSubscriptionAdd.label "Pridať"> +<!ENTITY viewMenu.label "Zobraziť"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Zrušiť"> +<!ENTITY subscription.enabled.label "Zapnuté"> +<!ENTITY noSubscriptions.text "Ziataľ nie sú pridané žiadne odbery filtrov. Adblock Plus nebude blokovať + nič bez filtrov, použite, prosím "Pridať odber filtra" pre + pridanie."> +<!ENTITY subscription.update.label "Aktualizovať filtre"> +<!ENTITY dialog.title "Nastavenia filtra"> +<!ENTITY addFilter.label "Pridať filt&er"> +<!ENTITY subscription.minVersion.warning "Odoberanie tohto filtra vyžaduje novšiu verziu Adblock Olus, môžete aktualizovať na ostatnú verziu Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Zlyhanie, neplatná adresa"> +<!ENTITY backup.error "Pri zápise filtra do súboru sa vyskytla chyba. Uistite sa, že súbor nie je chránený proti zapisovaniu alebo nie je používaný inou aplikáciou."> +<!ENTITY filter.moveUp.label "Posunúť hore"> +<!ENTITY addGroup.label "Pridať skupinu &filtrov"> +<!ENTITY filter.edit.label "Upraviť"> +<!ENTITY subscription.showHideFilters.label "Zobraziť/skryť filter"> +<!ENTITY acceptableAds2.label "Povol&iť niektoré nevtieravé reklamy"> +<!ENTITY addSubscriptionOther.label "Pridať iné odoberania"> +<!ENTITY close.label "Zatvoriť"> +<!ENTITY sort.none.label "&Netriedené"> +<!ENTITY filter.actions.label "Úlohy filtrov"> +<!ENTITY filter.copy.label "Kopírovať"> +<!ENTITY filter.moveDown.label "Posunúť dole"> +<!ENTITY filter.resetHitCounts.label "Resetovať štatistiku počítadla"> +<!ENTITY readMore.label "Zobraziť viac"> +<!ENTITY subscription.moveUp.label "Posunúť hore"> +<!ENTITY addSubscription.label "P&ridať povolenie filtra"> +<!ENTITY subscription.homepage.label "Domovská stránka"> +<!ENTITY backup.complete.title "Všetky filtre a odbery"> +<!ENTITY restore.own.label "Obnoviť vlastnú zálohu"> +<!ENTITY restore.complete.warning "Všetky nastavenia filtrov budú nahradené obsahom zo zvoleného súboru. Prajete si pokračovať?"> +<!ENTITY filters.tab.label "Vlastné filtre"> +<!ENTITY backup.label "Vytvoriť novú zálohu"> +<!ENTITY find.label "Náj&sť"> +<!ENTITY subscription.moveDown.label "Posunúť dole"> +<!ENTITY subscription.lastDownload.connectionError "Zlyhanie, sťahovanie neúspešné"> +<!ENTITY subscription.lastDownload.success "Úspešné"> +<!ENTITY subscription.lastDownload.invalidData "Zlyhanie, neplatný zoznam filtrov"> +<!ENTITY filter.paste.label "Prilepiť"> +<!ENTITY subscription.disabledFilters.enable "Zapnúť vypnuté filtre"> +<!ENTITY lasthit.column "Po&sledný zápis"> +<!ENTITY subscription.editTitle.label "Upraviť názov"> +<!ENTITY subscription.disabledFilters.warning "Niektoré filtre tohto odberu sú vypnuté."> +<!ENTITY filter.column "Pravidlo &filtra"> +<!ENTITY subscription.lastDownload.label "Posledné prevzatie:"> +<!ENTITY viewList.label "Zobraziť zoznam"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/firstRun.properties new file mode 100644 index 0000000..6a3ce81 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Prechádzať súkromne vypnutím sledovania - skryť vaše skladby z reklamné spoločnosti, ktoré by sledovali každý váš pohyb. +firstRun_toggle_off=OFF +firstRun_feature_tracking=Zakázať sledovanie +firstRun_feature_malware=Blokovanie malvéru +firstRun_title=Adblock Plus bol nainštalovaný +firstRun_toggle_on=ON +firstRun_acceptableAdsExplanation=Radi by sme povzbudili webové stránky aby používali jednoduché a nevtieravé inzercie. To je dôvod, prečo sme zaviedli <a>prísne pravidlá</a> na identifikáciu prijateľné reklamy, ktoré sú uvedené v časti predvolené nastavenie. Ak si napriek tomu chcete blokovať každú reklamu môžete <a>vypnúť</a> toto za pár sekúnd. +firstRun_contributor_credits=Zásluhy autorov +firstRun_dataCorruptionWarning=Chcete stále vidieť túto stránku? <a>Klikni tu!</a> +firstRun_acceptableAdsHeadline=Otravné reklamy budú teraz blokované +firstRun_share=Povedzte svojim priateľom +firstRun_share_headline=<a>Pomuožte nám</a> urobiť web lepším miestom +firstRun_feature_social_description=Automaticky zbaviť prehliadanie webu tlačidiel sociálnych médií, ako napríklad Facebook podobne, ktoré sú uvedené na webových stránkach a sledují vaše správanie. +firstRun_filterlistsReinitializedWarning=Zdá sa, že problém spôsobil, že všetky filtre boli odstránené a nie sme schopní obnoviť zálohu. Preto sme museli resetovať vaše filtre a prijateľné nastavenia reklám. Prosím, skontrolujte filter zoznamov a prijateľné nastavenia reklamy v <a>Nastavenia Adblock Plus</a>. +firstRun_feature_malware_description=Zabezpečenie prezeranie pomocou blokovanie známych domén s malware. +firstRun_features=Adblock Plus môže urobiť viac, ako blokovať reklamy +firstRun_donate=prispejte +firstRun_donate_label=Podporťe náš projekt +firstRun_feature_social=Odstránenie tlačidiel sociálnych médií +firstRun_legacySafariWarning=Používate starú verziu Safari, ktorá nepodporuje Adblock Plus. Nemusel by pracovať správne alebo by mohol narušiť používateľské skúsenosti na niektorých webových stránkach. Dôrazne odporúčame aktualizovať na Safari 6.1.1 alebo vyšší (k dispozícii pre Mac OS X 10,8 Mountain Lion), alebo Safari 7.0.1 a vyššie (pre OS X 10.9 Mavericks), alebo použiť najnovšiu verziu Mozilla Firefox, Google Chrome alebo Opera. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/global.properties new file mode 100644 index 0000000..2294515 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Na aktuálnej stránke nie sú blokovateľné položky +action3_tooltip=Kliknúť pre Otvoriť/Zavrieť Adblock Plus. +notification_antiadblock_title=Skryť cielené správy? +type_label_script=skript +filter_elemhide_nocriteria=Žiadne kritéria neboli špecifikované pre rozpoznanie prvku na skrytie +blockingGroup_title=Pravidlá blokovania +whitelisted_tooltip=Adblock Plus je aktívny, ale vypnutý na aktuálnej stránke. +type_label_stylesheet=Štýly +blocked_count_tooltip=?1? mimo ?2? +type_label_font=písmo +type_label_popup=vyskakovacie okno +filter_regexp_tooltip=Tento filter je buď regulárny výraz alebo je príliš krátky, aby mohol byť optimalizovaný. Príliš mnoho z týchto filtrov môžu spomaliť prehliadanie. +action0_tooltip=Kliknúť na vyvolanie kontextovej ponuky, kliknutie prostredným pre Zapnúť/Vypnúť. +whitelisted_page=Adblock Plus bol zakázaný pre aktuálnu stránku +remove_group_warning=Naozaj chcete odstrániť túto skupinu? +action1_tooltip=Kliknúť pre Otvoriť/Zavrieť blokovateľné položky, kliknutie prostredným pre Zapnúť/Vypnúť. +type_label_xmlhttprequest=XML požiadavka +active_tooltip=Adblock Plus je aktívny,?1? popis filtra(ov) a ?2? vlastný filtr(e) sa používa . +type_label_document=dokument +type_label_object_subrequest=podžiadosť predmetu +whitelistGroup_title=Výnimky pravidiel +disabled_tooltip=Adblock Plus je vypnutý. +filter_elemhide_duplicate_id=Len jedno ID prvku na skrytie môže byť špecifikované +type_label_object=predmet +action2_tooltip=Kliknúť pre otvorenie nastavení, kliknutie prostredným pre Zapnúť/Vypnúť. +type_label_subdocument=rámec +clearStats_warning=Toto resetuje všetky štatistiky filtrov a vypne počítadlo. Chcete pokračovať? +notification_antiadblock_message=Táto stránka bola známa zobrazením cielených správ pre používateľa Adblock Plus. Chcete, aby Adblock Plus skryl cielené správy? +blocked_count_addendum=(tiež biely zoznam: ?1?, skrytý: ?2?) +subscription_invalid_location=Umiestnenie zoznamu filtrov nemá platnú URL alebo platný názov súboru. +type_label_image=obrázok +remove_subscription_warning=Naozaj si želáte odstrániť toto povolenie? +type_label_other=iný +mobile_menu_enable=ABP: Zapnúť +type_label_media=zvuk/video +mobile_menu_disable_site=ABP: Vypnúť na ?1? +elemhideGroup_title=Pravidlá skrytia prvkov +mobile_menu_enable_site=ABP: Zapnúť na ?1? +type_label_elemhide=skrytý +newGroup_title=Nová skupina filtrov +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/overlay.dtd new file mode 100644 index 0000000..fb1b256 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Áno"> +<!ENTITY notification.button.no "&Nie"> +<!ENTITY sync.label "Syn&chronizovať nastavenia Adblock Plus"> +<!ENTITY whitelist.site.label "Vypnúť na ?1?"> +<!ENTITY filters.label "&Nastavenia filtrov"> +<!ENTITY disable.label "Vypnúť všade"> +<!ENTITY objecttab.title "Blokovať"> +<!ENTITY objecttab.tooltip "Kliknúť sem pre blokovanie tohto objektu s Adblock Plus"> +<!ENTITY menuitem.label "&Adblock Plus"> +<!ENTITY objecttabs.label "Zobraziť karty pre &Flash a Java"> +<!ENTITY sendReport.label "&Ohlásiť problém na tejto stránke"> +<!ENTITY whitelist.page.label "Vypnúť len na tejto stránke"> +<!ENTITY context.image.label "Adblock obrázok"> +<!ENTITY counthits.label "P&očítadlo"> +<!ENTITY opensidebar.label "Otvoriť &blokovateľné položky"> +<!ENTITY notification.button.close "&Zatvoriť"> +<!ENTITY contribute.label "Prispieť na Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock rámec"> +<!ENTITY blocked.tooltip "Blokovať položky na tejto stránke:"> +<!ENTITY hideplaceholders.label "Sk&ryť symboly blokovaných prvkov"> +<!ENTITY showinstatusbar.label "Zobraziť v &stavovom riadku"> +<!ENTITY sidebar.title "Blokovateľné položky na aktuálnej stránke"> +<!ENTITY options.label "&Možnosti"> +<!ENTITY context.object.label "Adblock objekt"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Znovu zapnúť túto stránku"> +<!ENTITY filters.tooltip "Najaktívnejšie filtre:"> +<!ENTITY closesidebar.label "Zatvoriť &blokovateľné položky"> +<!ENTITY showintoolbar.label "Zobraziť v pane&li nástrojov"> +<!ENTITY status.tooltip "Stav:"> +<!ENTITY context.media.label "Adblock Plus: Blokovať audio/video"> +<!ENTITY subscription.update.label "Aktualizovať filtre"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/sendReport.dtd new file mode 100644 index 0000000..0bd2884 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Späť"> +<!ENTITY issues.disabledgroups.description "Nasledujúce odbery filtrov / skupiny filtrov sú vypnuté, ešte je možné, že by mali mali účinok na tejto stránke:"> +<!ENTITY showData.label "Zobraziť údaje správy"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blokuje pri&veľa"> +<!ENTITY issues.change.description "Nastavenie bolo zmenené. Opäť načítajte stránku na otestovanie zmien a potvrďte správu ak problém nebol odstránený."> +<!ENTITY email.label "Email:"> +<!ENTITY issues.openPreferences.label "Otvoriť nastavenia filtra"> +<!ENTITY sendPage.confirmation "Vaša správa bola uložená. Môžete ju sprístupniť na tejto adrese:"> +<!ENTITY copyLink.label "&Kopírovať odkaz správy"> +<!ENTITY issues.nofilters.description "Adblock Plus neblokuje nič na aktuálnej stránke. Problém, ktorý pozorujete pravdepodobne nesúvisí s Adblock Plus."> +<!ENTITY sendPage.knownIssue "Problém, ktorý ste ohlásili je pravdepodobne známy. Viac informácií:"> +<!ENTITY typeSelector.other.description "Vyberte túto možnosť ak máte podozrenie na problém s Adblock Plus skôr než na jeho filtre."> +<!ENTITY issues.disabledgroups.enable.label "Zapnúť odber filtra / skupinu filtrov"> +<!ENTITY typeWarning.override.label "Rozu&miem a chcem potvrdiť správu"> +<!ENTITY issues.disabled.enable.label "Zapnúť Adblock Plus"> +<!ENTITY update.fixed.description "Aktualizácie filtra odberov môžu vyriešiť problém, ktorý ste nahlásili. Prosím, skúste stránku načítať znova a skúste zadať správu znovu, ak problém pretrváva."> +<!ENTITY anonymous.label "&Anonymný návrh"> +<!ENTITY reloadButton.label "&Opäť načítať stránku"> +<!ENTITY recentReports.clear.label "Ods&trániť všetky správy"> +<!ENTITY typeSelector.description "Toto okno Vás prevedie krokmi potrebnými pre podanie hlásenia o chybe Adblock Plus. Najprv zvoľte typ problému, ktorý ste zistili na tejto stránke:"> +<!ENTITY screenshot.remove.label "Odst&rániť citlivé údaje"> +<!ENTITY issues.ownfilters.description "Niektoré filtre aplikované na tejto stránke sú definované používateľom. Vypnite filtre, ktoré by mohli spôsobovať problém:"> +<!ENTITY update.inProgress.description "Adblock Plus potrebuje aktualizovať váš filter odberov, aby sa ubezpečil, či problém už nie je vyriešený. Čakajte prosím"> +<!ENTITY sendPage.retry.label "Poslať znova"> +<!ENTITY data.label "Ú&daje správy:"> +<!ENTITY recentReports.label "Vaše nedávno potvrdené správy"> +<!ENTITY typeWarning.description "Naznačili ste, že chcete ohlásiť všeobecný problém s Adblock Plus radšej ako problém s filtrami. Všimnite si, že tieto otázky sa lepšie riešia na [link]fórume Adblock Plus[/link]. Mali by ste použiť reportér problémov pre doplnenie existujúcej diskusie, inak si nikto nevšimne vašu správu skôr, než ju poskytnete na danom odkaze. Automaticky vygenerovaný odkaz bude poskytnutý po potvrdení správy."> +<!ENTITY issues.disabled.description "Adblock Plus je vypnutý, v danom stave nebude nič blokovať."> +<!ENTITY attachExtensions.label "Priložiť &zoznam aktívnych rozšírení k tejto správe pre prípad, že rozšírenie spôsobuje tento problém"> +<!ENTITY issues.nosubscriptions.add.label "Pridať odber filtra"> +<!ENTITY issues.disabledfilters.enable.label "Zapnúť filter"> +<!ENTITY issues.override.label "Nasta&venie je správne, pokračovať so správou"> +<!ENTITY issues.nosubscriptions.description "Neodvolávajte sa na odoberaný predpripravený zoznam filtrov, ktorý automaticky odstraňuje neznámy obsah z webovej stránky."> +<!ENTITY typeSelector.falsePositive.description "Túto možnosť vyberte, ak stránka postráda dôležitý obsah, nesprávne sa zobrazuje alebo zlyháva funkčnosť. Môžete určiť, či je Adblock Plus príčinou problému jeho dočasným vypnutím."> +<!ENTITY typeSelector.other.label "I&né problémy"> +<!ENTITY emailComment.label "Odporúčame vám zadať platnú e-mailovú adresu, aby sme vás mohli kontaktovať, ak sa vyskytnú otázky o vašej správe. Taktiež nám to umožní rozpoznať vaše príspevky a pripísať im vyššiu prioritu."> +<!ENTITY issues.whitelist.remove.label "Zapnúť opäť Adblock Plus na tejto stránke"> +<!ENTITY outdatedSubscriptions.description "Nasledujúci filter odberov nebol aktualizovaný najmenej po dobu dvoch týždňov. Prosím, aktualizujte tieto odbery pred predložením správy, problém už môže byť vyriešený."> +<!ENTITY dataCollector.description "Počkajte, prosím, kým Adblock Plus získa požadované údaje."> +<!ENTITY sendButton.label "Pos&lať správu"> +<!ENTITY comment.label "Komentá&r (nepovinné):"> +<!ENTITY sendPage.errorMessage "Pokus o zaslanie správy zlyhal s kódom chyby "?1?". Presvedčte sa, či ste pripojený na internet a skúste to znova. Ak problém pretrváva, požiadajte o pomoc na [link]fórume Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Zobraziť nedávno potvrdené správy"> +<!ENTITY commentPage.heading "Vložiť komentár"> +<!ENTITY update.start.label "Spustiť aktualizáciu teraz"> +<!ENTITY issues.disabledfilters.description "Nasledujúce filtre sú vypnuté, ešte je možné, že by mali mali účinok na tejto stránke:"> +<!ENTITY screenshot.description "Rovnaká stránka vyzerá rozdielne pre rôznych ľudí. Môže nám pomôcť pochopiť problém, ak priložíte k správe screenshot. Môžete odstrániť časť s citlivými údajmi, ak označíte len časť, kde je problém zrejmý. Kliknite na tlačidlo a vyberte časť obrázka."> +<!ENTITY screenshot.attach.label "Pripo&jiť obrázok stránky ku správu"> +<!ENTITY issues.whitelist.description "Adblock Plus je na stránke, ktorú chcete ohlásiť, vypnutý. Zapnite ho, prosím, znova a opäť načítajte stránku skôr, než potvrdíte hlásenie."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus neblokuje &reklamy"> +<!ENTITY typeSelector.heading "Zvoľte typ problému"> +<!ENTITY anonymity.warning "Nebudeme schopný sa k Vás kontaktovať a vašej správe pravdepodobne priradíme nižšiu prioritu."> +<!ENTITY wizard.title "Hlásenie problémov"> +<!ENTITY issues.ownfilters.disable.label "Vypnúť filter"> +<!ENTITY commentPage.description "Textové pole nižšie vám umožňuje vložiť komentár pre vysvetlenie daného problému. Tento krok je nepovinný, ale odporúčame ho ak problém nie je jasný. Môžete tiež posúdiť správu skôr, než ju odošlete."> +<!ENTITY comment.lengthWarning "Dĺžka váško komentára prevyšuje 1000 znakov. Bude odoslaných len prvých 1000 znakov."> +<!ENTITY typeSelector.falseNegative.description "Vyberte túto možnosť ak sa reklamy zobrazujú napriek zapnutému Adblock Plus."> +<!ENTITY sendPage.waitMessage "Počkajte, prosím, kým Adblock Plus potvrdí vašu správu."> +<!ENTITY dataCollector.heading "Vitajte v hlásení problémov"> +<!ENTITY screenshot.heading "Pripojiť screenshot"> +<!ENTITY sendPage.heading "Poslať správu"> +<!ENTITY issues.subscriptionCount.description "Zdá sa, že máte príliš veľa odberov filtrov. Toto nastavenie nie je odporúčané, pretože pravdepodobnosť výskytu problému je vyššia. Taktiež nemôžeme prijať vašu správu o probléme, pretože nie je jasné, ktorý autor odberu filtra potrebuje prijať opatrenie. Prosím, odstráňte všetky odbery, okrem naozaj nevyhnutných, a otestujte, či problém pretrváva."> +<!ENTITY screenshot.mark.label "O&značiť problém"> +<!ENTITY privacyPolicy.label "Zásady ochrany súkromia"> +<!ENTITY issues.description "Adblock Plus zistil problém s vašou konfiguráciou, ktorý by mohol byť zodpovedný za daný problém alebo robí zistenie problému ťažším."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/sidebar.dtd new file mode 100644 index 0000000..f9e241c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Ohraničenie flashových položiek"> +<!ENTITY address.label "Adresa"> +<!ENTITY context.open.label "Otvoriť na novej karte"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Zdroj filtra:"> +<!ENTITY noitems.label "Neblokovateľné položky"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Veľkosť:"> +<!ENTITY reattach.label "Znovu pripojiť"> +<!ENTITY search.label "&Hľadať:"> +<!ENTITY docDomain.thirdParty "(tretia strana)"> +<!ENTITY filterSource.label "Zdroj filtra"> +<!ENTITY tooltip.docDomain.label "Zdroj dokumentu:"> +<!ENTITY context.copy.label "Kopírovať adresu položiek"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Vypnúť filter ?1?"> +<!ENTITY context.copyFilter.label "Kopírovať filter"> +<!ENTITY context.block.label "Blokovať túto položku"> +<!ENTITY context.enablefilter.label "Znovu zapnúť filter ?1?"> +<!ENTITY detach.label "Oddeliť"> +<!ENTITY whitelisted.label "Povolené stránky"> +<!ENTITY context.disablefilteronsite.label "Vypnúť tento filter na ?1?"> +<!ENTITY detached.title "Adblock Plus: Blokovateľné položky (oddelený)"> +<!ENTITY docDomain.firstParty "(prvá strana)"> +<!ENTITY tooltip.type.whitelisted "(povolený)"> +<!ENTITY tooltip.filter.label "Platný filter:"> +<!ENTITY tooltip.filter.disabled "(vypnutý)"> +<!ENTITY context.editfilter.label "Upraviť filter v skutočnosti"> +<!ENTITY tooltip.type.blocked "(blokovaný)"> +<!ENTITY size.label "Veľkosť"> +<!ENTITY context.whitelist.label "Pridať výnimku pre položku"> +<!ENTITY context.selectAll.label "Vybrať všetko"> +<!ENTITY state.label "Stav"> +<!ENTITY docDomain.label "Zdroj dokumentu"> +<!ENTITY tooltip.address.label "Adresa:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/subscriptionSelection.dtd new file mode 100644 index 0000000..de251ca --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sk/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Pridať tiež filter &odberu "?1?""> +<!ENTITY list.download.failed "Adblock Plus zlyhal pri získavaní zoznamu odberov."> +<!ENTITY list.download.retry "Skúsiť znova"> +<!ENTITY title.label "Ná&zov povolenia:"> +<!ENTITY list.download.website "Zobraziť webovú stránku"> +<!ENTITY supplementMessage "Tento filter odberu je určený pre použitie s filtrom odberu "?1?"ktorý ešte nepoužívate."> +<!ENTITY viewList.label "Zobraziť filtre"> +<!ENTITY visitHomepage.label "Navštíviť domovskú stránku"> +<!ENTITY addSubscription.label "Pridať odber"> +<!ENTITY dialog.title "Odoberanie Add Adblock Plus filtrov"> +<!ENTITY location.label "U&miestnenie zoznamu filtrov:"> +<!ENTITY fromWeb.description "Prosím, potvrďte, že chcete pridať tento filter odberu."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/composer.dtd new file mode 100644 index 0000000..4290a58 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "na &koncu naslova"> +<!ENTITY domainRestriction.label "Omeji na &domeno:"> +<!ENTITY collapse.default.no.label "Uporabi privzeto (ne)"> +<!ENTITY firstParty.label "Samo &prve stranke"> +<!ENTITY preferences.label "Poka&ži obstoječe filtre ..."> +<!ENTITY pattern.label "Išči vzorec"> +<!ENTITY thirdParty.label "Samo zu&nanje stranke"> +<!ENTITY filter.label "Nov &filter:"> +<!ENTITY collapse.label "St&rni blokirane:"> +<!ENTITY match.warning "Vzorec, ki ste ga vnesli, se ne ujema z naslovom, ki ga želite blokirati in zato ne bo vplival nanj."> +<!ENTITY anchor.start.label "na &začetku naslova"> +<!ENTITY matchCase.label "Razlikuj velike/male &črke"> +<!ENTITY custom.pattern.label "Po &meri:"> +<!ENTITY unselectAllTypes.label "Nič ne izberi"> +<!ENTITY type.whitelist.label "Pravi&lo izjem"> +<!ENTITY regexp.warning "Vneseni vzorec bo obravnavan kot regularni izraz. Številni regularni izrazi lahko upočasnijo vaše brskanje. Če ne nameravate uporabljati regularnih izrazov, dodajte simbol * na konec vzorca."> +<!ENTITY dialog.title "Dodaj pravilo filtra Adblock Plus"> +<!ENTITY basic.label "Osnovni pogled"> +<!ENTITY type.filter.label "Filter &blokade"> +<!ENTITY types.label "Uporabi za vrste:"> +<!ENTITY shortpattern.warning "Vzorec, ki ste ga vnesli, je prekratek za optimizacijo, številni tovrstni vzorci lahko upočasnijo vaše brskanje. Priporočamo, da izberete daljši niz za ta filter."> +<!ENTITY collapse.yes.label "Da"> +<!ENTITY anchors.label "Sprejmi le vzorec:"> +<!ENTITY collapse.default.yes.label "Uporabi privzeto (da)"> +<!ENTITY domainRestriction.help "Navedite eno ali več domen, ločenih s simbolom "|", filter bo veljal le za te domene. Simbol "~" pred imenom domene pomeni, da filter za to domeno ne sme veljati."> +<!ENTITY accept.label "Dodaj filter"> +<!ENTITY options.label "Možnosti"> +<!ENTITY disabled.warning "Adblock Plus je trenutno onemogočen. Še vedno lahko dodajate filtre, vendar ne bodo veljali, če ne [link]omogočite Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "na &začetku imena domene"> +<!ENTITY collapse.no.label "Ne"> +<!ENTITY selectAllTypes.label "Izberi vse"> +<!ENTITY advanced.label "Napredni pogled"> +<!ENTITY pattern.explanation "Vzorec je lahko kateri koli del naslova, simbol * velja kot poljuben znak. Filter bo le za naslove, ki ustrezajo vzorcu."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/filters.dtd new file mode 100644 index 0000000..68220ee --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Vsi tvoji filtri po meri bodo zamenjani z vsebino izbrane datoteke. Želite zagnati proces?"> +<!ENTITY slow.column "Po&časni filtri"> +<!ENTITY enabled.column "O&mogočeno"> +<!ENTITY subscription.lastDownload.checksumMismatch "Neuspešno, kontrolna vsota se ne ujema"> +<!ENTITY noFiltersInGroup.text "Izbrana skupina je prazna."> +<!ENTITY subscription.actions.label "Dejanja"> +<!ENTITY filter.selectAll.label "Izberi vse"> +<!ENTITY backupButton.label "&Varnostno kopiraj in obnovi"> +<!ENTITY restore.minVersion.warning "Opozorilo: datoteka je bila ustvarjena z novejšo različico Adblock Plus. Pred obnovitvijo iz te datoteke, najprej posodobi na najnovejšo različico Adblock Plus."> +<!ENTITY restore.error "Podatkov datoteke ni bilo mogoče obdelat. Je datoteka res varnostna kopija programa Adblock Plus?"> +<!ENTITY sort.ascending.label "od &A > Z"> +<!ENTITY sort.label "Raz&vrsti"> +<!ENTITY subscription.source.label "Seznam filtrov"> +<!ENTITY hitcount.column "Za&detki"> +<!ENTITY noFilters.text "Svojega lastnega filtra še nimaš."> +<!ENTITY backup.custom.title "Samo filtri po meri"> +<!ENTITY subscription.external.label "Posodobljepreko druge razširitve"> +<!ENTITY subscription.delete.label "Izbriši"> +<!ENTITY noGroupSelected.text "Preden se filtre lahko prikaže moraš izbrati filter skupino."> +<!ENTITY filter.cut.label "Izreži"> +<!ENTITY restore.default.label "Obnovite varnostno kopijo z dne ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Prenos s strežnika ..."> +<!ENTITY subscriptions.tab.label "Naročnine na filtre"> +<!ENTITY sort.descending.label "od &Z > A"> +<!ENTITY filters.remove.warning "Želite res odstraniti vse izbrane filtre?"> +<!ENTITY filter.delete.label "Izbriši"> +<!ENTITY addSubscriptionAdd.label "Dodaj"> +<!ENTITY viewMenu.label "Pogled"> +<!ENTITY subscription.lastDownload.unknown "Ni na voljo"> +<!ENTITY addSubscriptionCancel.label "Prekliči"> +<!ENTITY subscription.enabled.label "Omogočeno"> +<!ENTITY noSubscriptions.text "Zaenkrat nimaš naročenega še nobenega filtra. Adblock Plus ne more +blokirati ničesar brez filtrov, zato uporabi opcijo "Dodaj naročnino za filter" +in dodaj vsaj en filter."> +<!ENTITY subscription.update.label "Posodobi filtre"> +<!ENTITY dialog.title "Nastavitve filtrov za Adblock Plus"> +<!ENTITY addFilter.label "&Dodaj filter"> +<!ENTITY subscription.minVersion.warning "Ta filter potrebuje novejšo verzijo Adblock Plusa. Nadgradi Adblock plus z najnovešo različico."> +<!ENTITY subscription.lastDownload.invalidURL "Neuspešno, ni veljaven naslov"> +<!ENTITY backup.error "Napaka pri zapisu filtrov v datoteko. Poskrbite, da datoteka ni zaščitena pred pisanjem ali v uporabi nekega drugega programa."> +<!ENTITY filter.moveUp.label "Premakni navzgor"> +<!ENTITY addGroup.label "Dodaj &skupino filtrov"> +<!ENTITY filter.edit.label "Uredi"> +<!ENTITY subscription.showHideFilters.label "Pokaži/skrij filtre"> +<!ENTITY acceptableAds2.label "Dovol&i nekatere nevsiljive oglase"> +<!ENTITY addSubscriptionOther.label "Dodaj novo naročnino"> +<!ENTITY close.label "Zapri"> +<!ENTITY sort.none.label "Nerazvr&ščeno"> +<!ENTITY filter.actions.label "Dejanja filtra"> +<!ENTITY filter.copy.label "Kopiraj"> +<!ENTITY filter.moveDown.label "Premakni navzdol"> +<!ENTITY filter.resetHitCounts.label "Ponastavi statistiko zadetkov"> +<!ENTITY readMore.label "Preberi več"> +<!ENTITY subscription.moveUp.label "Premakni navzgor"> +<!ENTITY addSubscription.label "Dodaj &naročnino filtra"> +<!ENTITY subscription.homepage.label "Domača stran"> +<!ENTITY backup.complete.title "Vsi filtri in naročnine"> +<!ENTITY restore.own.label "Obnovi lastno varnostno kopijo"> +<!ENTITY restore.complete.warning "Vsi nastavitve tvojih filtrov bodo zamenjane z vsebino izbrane datoteke. Želite zagnati proces?"> +<!ENTITY filters.tab.label "Filtri po meri"> +<!ENTITY backup.label "Ustvari novo varnostno kopijo"> +<!ENTITY find.label "Najdi"> +<!ENTITY subscription.moveDown.label "Premakni navzdol"> +<!ENTITY subscription.lastDownload.connectionError "Neuspešno, napaka prenosa"> +<!ENTITY subscription.lastDownload.success "Uspešno"> +<!ENTITY subscription.lastDownload.invalidData "Neuspešno, ni veljaven seznam filtrov"> +<!ENTITY filter.paste.label "Prilepi"> +<!ENTITY subscription.disabledFilters.enable "Omogoči onemogočene filtre"> +<!ENTITY lasthit.column "Zad&nji zadetek"> +<!ENTITY subscription.editTitle.label "Uredi naslov"> +<!ENTITY subscription.disabledFilters.warning "V tej naročnini so nekateri filtri onemogočeni."> +<!ENTITY filter.column "Pravilo &filtra"> +<!ENTITY subscription.lastDownload.label "Zadnji prenos:"> +<!ENTITY viewList.label "Pokaži seznam"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/firstRun.properties new file mode 100644 index 0000000..d749c77 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Brskajte zasebno z onemogočanjem sledenja - zabrišite svoje sledi oglaševalskim agencijam, ki vam sledijo na vsakem koraku. +firstRun_toggle_off=IZKLOP +firstRun_feature_tracking=Onemogočite sledenje +firstRun_feature_malware=Blokiranje zlonamernih spletnih mest +firstRun_title=Adblock Plus je bil nameščen +firstRun_toggle_on=VKLOP +firstRun_acceptableAdsExplanation=Želimo spodbujati uporabo preprostih, nevsiljivih oglasov na spletnih straneh. Zato smo vpeljali <a>stroge kriterije</a> prepoznavanja sprejemljivih oglasov, ki so privzeto prikazani. Če vseeno želite blokirati vse oglase, jih lahko <a>onemogočite</a> v nekaj sekundah. +firstRun_contributor_credits=Krediti sodelavcev +firstRun_dataCorruptionWarning=Se vam ta stran še vedno prikazuje? <a>Kliknite tukaj!</a> +firstRun_acceptableAdsHeadline=Nadležni oglasi bodo zdaj blokirani +firstRun_share=Povejte svojim prijateljem +firstRun_share_headline=<a>Podajte nam roko</a> v ustvarjanju boljšega spleta +firstRun_feature_social_description=Med brskanjem se samodejno izognite gumbom socialnih medijev, kot je Facebookov Všeč mi je, ki se pojavljajo na spletnih straneh in sledijo vašim navadam brskanja. +firstRun_filterlistsReinitializedWarning=Očitno so bili zaradi težave vsi filtri odstranjeni in varnostne kopije ni bilo mogoče obnoviti. Zato smo ponastavili vaše nastavitve filtrov in dovoljenih oglasov. Prosimo, preverite svoj seznam filtrov in nastavitve dovoljenih oglasov v <a>nastavitvah za Adblock Plus</a>. +firstRun_feature_malware_description=Brskajte po spletu varneje, tako da blokirate znane domene z zlonamerno programsko opremo. +firstRun_features=Adblock Plus zmore več kot le blokirati oglase +firstRun_donate=prispevajte +firstRun_donate_label=Podprite naš projekt +firstRun_feature_social=Odstranite gumbe socialnih medijev +firstRun_legacySafariWarning=Uporabljate staro različico Safarija, ki je Adblock Plus ne podpira. Morda ne bo pravilno deloval ali bo poslabšal uporabniško izkušnjo na nekaterih spletnih straneh. Močno priporočamo, da nadgradite na Safari 6.1.1 ali novejšega (na OS X 10.8 Mountain Lion), Safari 7.0.1 ali novejšega (na OS X 10.9 Mavericks), ali da uporabljate najnovejšo različico Mozille Firefox, Google Chroma ali Opere. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/global.properties new file mode 100644 index 0000000..e612a82 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Na trenutni strani ni elementov blokad +action3_tooltip=Kliknite za vključitev/izključitev Adblock Plus. +notification_antiadblock_title=Skrijem ciljana sporočila? +type_label_script=skript +filter_elemhide_nocriteria=Za razpoznavo elementa, ki naj bo skrit, ni navedenih pogojev +blockingGroup_title=Pravila blokiranja oglasov +whitelisted_tooltip=Adblock Plus je aktiven, vendar je za trenutno stran izključen. +type_label_stylesheet=predlogo strani +blocked_count_tooltip=?1? od ?2? +type_label_font=pisava +type_label_popup=pojavno okno +filter_regexp_tooltip=Ta filter je regularni izraz ali pa je prekratek za optimizacijo. Preveč filtrov lahko upočasni brskanje. +action0_tooltip=Kliknite za pojavni meni, s srednjim klikom vključite/izključite. +whitelisted_page=Za trenutno stran je bil Adblock Plus izključen +remove_group_warning=Resnično želite odstraniti to skupino? +action1_tooltip=Kliknite za odprtje/zaprtje blokiranih elementov, s srednjim klikom vključite/izključite. +type_label_xmlhttprequest=Zahteva XML +active_tooltip=Adblock Plus je aktiven, ?1? naročnine na filtre in ?2? filtri po meri so v rabi. +type_label_document=dokument +type_label_object_subrequest=podzahteva predmeta +whitelistGroup_title=Pravila izjem +disabled_tooltip=Adblock Plus je izključen. +filter_elemhide_duplicate_id=Navedete lahko le eno identiteto elementa, ki naj bo skrit +type_label_object=predmet +action2_tooltip=Kliknite za nastavitve, s srednjim klikom vključite/izključite. +type_label_subdocument=okvir +clearStats_warning=S tem boste ponastavili vso statistiko zadetkov filtra in onemogočili štetje zadetkov filtra. Želite nadaljevati? +notification_antiadblock_message=Ta stran uporabnikom prikazuje ciljana sporočila. Želite, da Adblock Plus skrije ta sporočila? +blocked_count_addendum=(prav tako prikriti: ?1?, skriti: ?2?) +subscription_invalid_location=Mesto seznama filtrov ni niti veljaven URL niti veljavno ime datoteke. +type_label_image=sliko +remove_subscription_warning=Želite res odpovedati naročnino? +type_label_other=drugo +mobile_menu_enable=ABP: omogoči +type_label_media=zvok/video +mobile_menu_disable_site=ABP: onemogoči za ?1? +elemhideGroup_title=Pravila skrivanja elementov +mobile_menu_enable_site=ABP: omogoči za ?1? +type_label_elemhide=skrito +newGroup_title=Nova skupina filtrov +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/overlay.dtd new file mode 100644 index 0000000..fabef17 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Da"> +<!ENTITY notification.button.no "&Ne"> +<!ENTITY sync.label "Sin&hroniziraj nastavitve Adblock Plus"> +<!ENTITY whitelist.site.label "Onemogoči na ?1?"> +<!ENTITY filters.label "Nastavitve &filtra"> +<!ENTITY disable.label "Onemogoči povsod"> +<!ENTITY objecttab.title "Blokiraj"> +<!ENTITY objecttab.tooltip "Kliknite sem za blokiranje tega predmeta z Adblock Plus"> +<!ENTITY menuitem.label "Ad&block Plus"> +<!ENTITY objecttabs.label "Pokaži &zavihke za Flash in Javo"> +<!ENTITY sendReport.label "&Javite težavo na tej strani"> +<!ENTITY whitelist.page.label "Onemogoči samo na tej strani"> +<!ENTITY context.image.label "Adblock - slike"> +<!ENTITY counthits.label "Štej za&detke filtra"> +<!ENTITY opensidebar.label "Odpri &elemente blokad"> +<!ENTITY notification.button.close "&Zapri"> +<!ENTITY contribute.label "Sodelujte v Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock - okviri"> +<!ENTITY blocked.tooltip "Blokirani elementi na tej strani:"> +<!ENTITY hideplaceholders.label "Skrij ograde &blokoranih elementov"> +<!ENTITY showinstatusbar.label "Pokaži &v vrstici stanja"> +<!ENTITY sidebar.title "Elementi blokad na trenutni strani"> +<!ENTITY options.label "Mo&žnosti"> +<!ENTITY context.object.label "Adblock - predmeti"> +<!ENTITY context.removeWhitelist.label "Adblock Plus - ponovno omogoči na tej strani"> +<!ENTITY filters.tooltip "Najbolj aktivni filtri:"> +<!ENTITY closesidebar.label "Zapri &elemente blokad"> +<!ENTITY showintoolbar.label "Po&kaži v orodni vrstici"> +<!ENTITY status.tooltip "Stanje:"> +<!ENTITY context.media.label "Adblock Plus: Blokiraj zvok/video"> +<!ENTITY subscription.update.label "Posodobi filtre"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/sendReport.dtd new file mode 100644 index 0000000..47ebf1b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/sendReport.dtd @@ -0,0 +1,70 @@ +<!ENTITY screenshot.undo.label "Ra&zveljavi"> +<!ENTITY issues.disabledgroups.description "Naslednje naročnine na filtre/skupine filtrov so onemogočene, čeprav lahko vplivajo na prikaz te strani:"> +<!ENTITY showData.label "Pokaži podatke poročila"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus bloki&ra preveč stvari"> +<!ENTITY issues.change.description "Vaša konfiguracija je bila spremenjena. Ponovno naložite stran in preizkusite težave ter pošljite poročilo, če se s spremembami težava ni odpravila."> +<!ENTITY email.label "E-&pošta:"> +<!ENTITY issues.openPreferences.label "Odpri nastavitve filtra"> +<!ENTITY sendPage.confirmation "Vaše poročilo je shranjeno. Do njega lahko dostopate na naslednjem naslovu:"> +<!ENTITY copyLink.label "Kopiraj po&vezavo poročila"> +<!ENTITY issues.nofilters.description "Adblock Plus ne blokira ničesar na trenutni strani. Težava, ki jo zaznavate, morda ni povezana z Adblock Plus."> +<!ENTITY sendPage.knownIssue "Težava, ki ste jo javili, je najbrž že znana. Več podatkov:"> +<!ENTITY typeSelector.other.description "Izberite to možnost, če sumite na težavo v Adblock Plus in ne v njegovih filtrih."> +<!ENTITY issues.disabledgroups.enable.label "Omogoči naročnino na filter / skupino filtrov"> +<!ENTITY typeWarning.override.label "Razumem in &želim vseeno oddati poročilo"> +<!ENTITY issues.disabled.enable.label "Omogoči Adblock Plus"> +<!ENTITY update.fixed.description "Posodobitev filtra je najverjetneje rešila problem, +o katerem ste poročali. Osvežite stran in poskusite znova. Če +se bo težava ponovila, znova kliknite Poročaj."> +<!ENTITY anonymous.label "&Anonimna oddaja"> +<!ENTITY reloadButton.label "Po&novno naloži stran"> +<!ENTITY recentReports.clear.label "O&dstrani vsa poročila"> +<!ENTITY typeSelector.description "To okno vas vodi po korakih do oddaje poročila o težavi z Adblock Plus. Najprej izberite vrsto težave, s katero ste se srečali na tej strani:"> +<!ENTITY screenshot.remove.label "Odstrani o&bčutljive podatke"> +<!ENTITY issues.ownfilters.description "Nekateri filtri, uporabljeni na tej strani, so uporabniško določeni. Onemogočite filtre, ki so lahko krivi za to težavo:"> +<!ENTITY update.inProgress.description "Adblock mora posodobiti naročene filtre, da zagotovi, +da problem ni bil že rešen. Prosim počakajte ..."> +<!ENTITY sendPage.retry.label "Pošlji znova"> +<!ENTITY data.label "Podatki poročila:"> +<!ENTITY recentReports.label "Vaša nedavno poslana poročila"> +<!ENTITY typeWarning.description "Nakazali ste, da želite poročati o splošni težavi z Adblock Plus, ne pa o težavi s filtri. Upoštevajte, da je o takšnih težavah najbolje poročati na [link]forumu Adblock Plus[/link]. Poročanje o težavah uporabite le za podporo obstoječe razprave, saj sicer nihče ne bo opazil vašega poročila, razen če ne podate povezavo nanj. Samodejno ustvarjena povezava bo na voljo po pošiljanju poročila."> +<!ENTITY issues.disabled.description "Adblock Plus je onemogoče, v trenutnem stanju ne more blokirati ničesar."> +<!ENTITY attachExtensions.label "Poroči&lu priložite seznam aktivnih razširitev, če je vzrok težave spor z dodatkom"> +<!ENTITY issues.nosubscriptions.add.label "Dodaj naročnino na filter"> +<!ENTITY issues.disabledfilters.enable.label "Omogoči filter"> +<!ENTITY issues.override.label "Kon&figuracija je pravilna, nadaljuj s poročilom"> +<!ENTITY issues.nosubscriptions.description "Kot kaže, niste naročeni na noben seznam filtrov, ki samodejno odstranijo neželene vsebine s spletnih strani."> +<!ENTITY typeSelector.falsePositive.description "Izberite to možnost, če strani manjka pomembna vsebina, če se prikaže nepravilno ali ne deluje pravilno. Določite lahko, ali je Adblock Plus kriv težav, tako da ga začasno izključite."> +<!ENTITY typeSelector.other.label "Druga težava"> +<!ENTITY emailComment.label "Bilo bi dobro, da vneseš veljaven email, tako da se na vas lahko obrnemo, če bodo obstajala vprašanja glede poročila. Pravtako nam omogoča prepoznati vaše prispevke in tako lažje določiti prioriteto višje."> +<!ENTITY issues.whitelist.remove.label "Ponovno omogoči Adblock Plus na tej strani"> +<!ENTITY outdatedSubscriptions.description "Ta filter ni bil posodobljen vsaj dva tedna. +Preden pošljete poročilo, posodobite vse naročene fitre, +saj je morda problem že rešen."> +<!ENTITY dataCollector.description "Počakajte nekaj trenutkov, da Adblock Plus zbere potrebne podatke."> +<!ENTITY sendButton.label "Po&šlji poročilo"> +<!ENTITY comment.label "&Komentar (neobvezno):"> +<!ENTITY sendPage.errorMessage "Poskus pošiljanja poročila je bil neuspešen s kodo napake "?1?". Zagotovite, da ste povezani v splet in poskusite znova. Če težave ni konec, poiščite pomoč na [link]forumu Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Prikaži nedavno poslana poročila"> +<!ENTITY commentPage.heading "Vnesite komentar"> +<!ENTITY update.start.label "Začni s posodobitvijo zdaj"> +<!ENTITY issues.disabledfilters.description "Naslednji filtri so onemogočeni, čeprav lahko vplivajo na prikaz te strani:"> +<!ENTITY screenshot.description "Isto stran lahko različni uporabniki vidijo drugače. Včasih pomaga, če poročilu pripnete slikovni posnetek strani. Odstranite lahko dele strani z zasebnimi podatki, pa tudi označite območja, kjer se težava opazi. Kliknite ustrezni gumb in izberite del slike z miško."> +<!ENTITY screenshot.attach.label "Poročilu priloži &sliko strani"> +<!ENTITY issues.whitelist.description "Adblock Plus je trenutno na strani, o kateri poročate, onemogočen. Omogočite ga in ponovno naložite stran, preden pošljete poročilo o težavi."> +<!ENTITY typeSelector.falseNegative.label "Adbloc&k Plus ne blokira oglasa"> +<!ENTITY typeSelector.heading "Kakšno težavo imate?"> +<!ENTITY anonymity.warning "Kontakta z vami ne bomo mogli vzpostaviti. Prioriteto poročilu pa bomo verjetno znižali."> +<!ENTITY wizard.title "Poročilo o težavah"> +<!ENTITY issues.ownfilters.disable.label "Onemogoči filter"> +<!ENTITY commentPage.description "Spodnje polje z besedilom omogoča vnos komentarja, ki nam pomaga razumeti težavo. To je neobvezno, vendar priporočamo, če težava ni očitna. Pred pošiljanjem si lahko še enkrat ogledate podatke poročila."> +<!ENTITY comment.lengthWarning "Dolžina vašega komentarja presega 1000 znakov. Poslanih bo le prvih 1000 znakov."> +<!ENTITY typeSelector.falseNegative.description "Izberite to možnost, če je oglas prikazan kljub temu, da je Adblock Plus omogočen."> +<!ENTITY sendPage.waitMessage "Počakajte, dokler Adblock Plus pošilja vaše poročilo."> +<!ENTITY dataCollector.heading "Dobrodošli v poročanje o težavah"> +<!ENTITY screenshot.heading "Priložite sliko strani"> +<!ENTITY sendPage.heading "Pošlji poročilo"> +<!ENTITY issues.subscriptionCount.description "Zdi se, da ste naročeni na preveč filtrov. Takšna nastavitev ni priporočena, saj je možnost težav veliko večja. Prav tako ne moremo obdelati vašega poročila o napaki, saj ni jasno, kateri avtor naročnine na filtre mora narediti popravke. Prosimo, da odstranite vse nepotrebne naročnine na filtre in preizkusite, če še vedno prihaja do napake."> +<!ENTITY screenshot.mark.label "Označi &težavo"> +<!ENTITY privacyPolicy.label "Izjava o zasebnosti"> +<!ENTITY issues.description "Adblock Plus je zaznal težave z vašo konfiguracijo, ki so lahko krive za to težavo ali pa bodo raziskovanje poročila otežile."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/sidebar.dtd new file mode 100644 index 0000000..42347da --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Obrobe elementa naj utripajo"> +<!ENTITY address.label "Naslov"> +<!ENTITY context.open.label "Odpri v novem zavihku"> +<!ENTITY type.label "Vrsta"> +<!ENTITY tooltip.filterSource.label "Vir filtra:"> +<!ENTITY noitems.label "Ni elementov blokiranja"> +<!ENTITY filter.label "Filter"> +<!ENTITY tooltip.size.label "Velikost:"> +<!ENTITY reattach.label "Pripni"> +<!ENTITY search.label "&Najdi:"> +<!ENTITY docDomain.thirdParty "(tretja stran)"> +<!ENTITY filterSource.label "Vir filtra"> +<!ENTITY tooltip.docDomain.label "Vir dokumenta:"> +<!ENTITY context.copy.label "Kopiraj naslov elementa"> +<!ENTITY tooltip.type.label "Vrsta:"> +<!ENTITY context.disablefilter.label "Onemogoči filter ?1?"> +<!ENTITY context.copyFilter.label "Kopiraj filter"> +<!ENTITY context.block.label "Blokiraj ta element"> +<!ENTITY context.enablefilter.label "Ponovno omogoči filter ?1?"> +<!ENTITY detach.label "Odpni"> +<!ENTITY whitelisted.label "Dovoljena stran"> +<!ENTITY context.disablefilteronsite.label "Onemogoči ta filter na ?1?"> +<!ENTITY detached.title "Adblock Plus: elementi blokad (odpeti)"> +<!ENTITY docDomain.firstParty "(prva stran)"> +<!ENTITY tooltip.type.whitelisted "(dovoljeno)"> +<!ENTITY tooltip.filter.label "Trenutni filter:"> +<!ENTITY tooltip.filter.disabled "(onemogočeno)"> +<!ENTITY context.editfilter.label "Uredi trenutni filter"> +<!ENTITY tooltip.type.blocked "(blokirano)"> +<!ENTITY size.label "Velikost"> +<!ENTITY context.whitelist.label "Dodaj pravilo izjem za element"> +<!ENTITY context.selectAll.label "Izberi vse"> +<!ENTITY state.label "Stanje"> +<!ENTITY docDomain.label "Vir dokumenta"> +<!ENTITY tooltip.address.label "Naslov:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/subscriptionSelection.dtd new file mode 100644 index 0000000..d8c15f3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sl/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Dodaj tudi naročnino na &filter ?1?"> +<!ENTITY list.download.failed "Pridobivanje seznama naročnin ni uspelo."> +<!ENTITY list.download.retry "Poskusi znova"> +<!ENTITY title.label "&Naslov naročnine:"> +<!ENTITY list.download.website "Pokaži spletno mesto"> +<!ENTITY supplementMessage "Naročnina na filter je mišljena za rabo z naročnino na filter ?1?, ki je še ne uporabljate."> +<!ENTITY viewList.label "Pokaži filtre"> +<!ENTITY visitHomepage.label "Obišči domačo stran"> +<!ENTITY addSubscription.label "Dodaj naročnino"> +<!ENTITY dialog.title "Dodaj naročnino na filtre Adblock Plus"> +<!ENTITY location.label "&Mesto seznama filtriranja:"> +<!ENTITY fromWeb.description "Potrdite, da želite dodati to naročnino na filter. Naslov ali kraj naročnine lahko spremenite še pred dodajanjem."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/composer.dtd new file mode 100644 index 0000000..144de9e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "në fund të adresës"> +<!ENTITY domainRestriction.label "Kufizo në domain:"> +<!ENTITY collapse.default.no.label "Përdor të parazgjedhurën (jo):"> +<!ENTITY firstParty.label "Vetëm të parët"> +<!ENTITY preferences.label "Trego filtrin ekzistues..."> +<!ENTITY pattern.label "Kërko për motivin"> +<!ENTITY thirdParty.label "Vetëm të tretët"> +<!ENTITY filter.label "Filtër i ri:"> +<!ENTITY collapse.label "Shkatërro te bllokuarat:"> +<!ENTITY match.warning "Motivi që dhatë nuk përputhet më me adresat e bllokuara/lejuara dhe nuk ka më efekt mbi to."> +<!ENTITY anchor.start.label "në fillim të adresës"> +<!ENTITY matchCase.label "Përputh shembullin"> +<!ENTITY custom.pattern.label "Përshtatja:"> +<!ENTITY unselectAllTypes.label "Mos selekto asnjë"> +<!ENTITY type.whitelist.label "Rregull përjashtimi"> +<!ENTITY regexp.warning "Motivi që dhatë do të interpretohet si shprehje e rregullt që nuk mund të përdoret nga Adblock Plus dhe mund të ngadalsojë hapjen e faqeve te internetit. Nëse nuk kishit ndërmend të përdorni një shprehje të rregullt, shtoni një (*) në fund të motivit."> +<!ENTITY dialog.title "Shto një rregullore filtri në Adblock Plus"> +<!ENTITY basic.label "Pamje kryesore"> +<!ENTITY type.filter.label "Blloko filtrin"> +<!ENTITY types.label "Apliko në llojet:"> +<!ENTITY shortpattern.warning "Motivi që dhatë është shumë i shkurtër që të optimizohet dhe mund të ngadalsojë internetin. Rekomandohet që të zgjidhni një varg më të gjatë për këtë filtër në menyrë që të lejoj Adblock Plus ta përpunoj filtrin më mirë."> +<!ENTITY collapse.yes.label "Po"> +<!ENTITY anchors.label "Prano vetëm motivin:"> +<!ENTITY collapse.default.yes.label "Përdor të parazgjedhurën (po):"> +<!ENTITY domainRestriction.help "Përdore këtë opsion që të specifikosh një ose më shumë adresa të ndara nga një (|). Filtri do të zbatohet vetëm në adresat(s) e zgjedhura. Një (~) përpara emrit të adresës tregon që filtri nuk do të zbatohet në atë adresë."> +<!ENTITY accept.label "Shto filtër"> +<!ENTITY options.label "Mundësitë"> +<!ENTITY disabled.warning "Adblock Plus nuk punon për momentin. Mund të shtoni filtra por nuk do të funksionojnë nëse ju nuk [link]mundësoni Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "në fillim të domain name"> +<!ENTITY collapse.no.label "Jo"> +<!ENTITY selectAllTypes.label "Selekto të gjitha"> +<!ENTITY advanced.label "Pamje e avancuar"> +<!ENTITY pattern.explanation "Motivi mund të jetë çdo pjesë e adresës; simboli (*) vepron si xhoker. Filtri do të zbatohet vetëm në adresat që i përshtaten motivit të dhënë."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/filters.dtd new file mode 100644 index 0000000..ac96eab --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Krejt filtrat tuaj të personalizuar do të zëvendësohen nga lënda e kartelës së përzgjedhur. Dëshironi të vazhdohet?"> +<!ENTITY slow.column "Filtruesit e ngadalshëm"> +<!ENTITY enabled.column "Aktivizo"> +<!ENTITY subscription.lastDownload.checksumMismatch "Deshtoi,mosperputhje checksumi"> +<!ENTITY noFiltersInGroup.text "Grupi i përzgjedhur është i zbrazët."> +<!ENTITY subscription.actions.label "Veprime"> +<!ENTITY filter.selectAll.label "Përzgjidhi Krejt"> +<!ENTITY backupButton.label "&Kopjeruaje dhe Riktheje"> +<!ENTITY restore.minVersion.warning "Kujdes: kartela është krijuar me një version Adblock Plus më të ri. Do të duhej ta përditësonit Adblock Plus-in me versionin më të ri, përpara se të riktheni të dhëna prej kësaj kartele."> +<!ENTITY restore.error "Të dhënat e kartelës nuk përpunohen dot, ndoshta kjo nuk është kartelë kopjeruajtjesh për Adblock Plus?"> +<!ENTITY sort.ascending.label "A > Z radhitje"> +<!ENTITY sort.label "Radhit sipas"> +<!ENTITY subscription.source.label "Lista e filtrave"> +<!ENTITY hitcount.column "Shtypje"> +<!ENTITY noFilters.text "Nuk keni ende ndonjë filtër të personalizuar."> +<!ENTITY backup.custom.title "Vetëm filtrat e personalizuar"> +<!ENTITY subscription.external.label "E rifreksuar nga nje shtese tjeter"> +<!ENTITY subscription.delete.label "Fshije"> +<!ENTITY noGroupSelected.text "Përpara se të shfaqen filtrat e tij, lypset të përzgjidhni një grup filtrash."> +<!ENTITY filter.cut.label "Kopjo-largo"> +<!ENTITY restore.default.label "Të rikthehet kopjeruajtja prej ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Duke u shkarkuar..."> +<!ENTITY subscriptions.tab.label "Filtroni abonimet"> +<!ENTITY sort.descending.label "Z > A radhitje"> +<!ENTITY filters.remove.warning "Doni vërtet të hiqen krejt filtrat e përzgjedhur?"> +<!ENTITY filter.delete.label "Fshijë"> +<!ENTITY addSubscriptionAdd.label "Shto"> +<!ENTITY viewMenu.label "Shih"> +<!ENTITY subscription.lastDownload.unknown "N/D"> +<!ENTITY addSubscriptionCancel.label "Anulo"> +<!ENTITY subscription.enabled.label "E aktivizuar"> +<!ENTITY noSubscriptions.text "Ju nuk keni shtuar ndonje abonim per filter ende.Adblock Plus nuk do te bllokoje asgje pa filtra,ju lutem perdorin "Shto nje abonim filtri" per te shtuar disa."> +<!ENTITY subscription.update.label "Përditësoni filtra"> +<!ENTITY dialog.title "Filtroni preferencat e Adblock Plus"> +<!ENTITY addFilter.label "Vendos filtrues"> +<!ENTITY subscription.minVersion.warning "Ky abonim filtri kerkon nje version me te ri te Adblock Plus,ti duhet te besh update ne versionin e fundit te Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Deshtoi,nje adrese e pavlefshme"> +<!ENTITY backup.error "Pati një gabim gjatë shkrimit te kartela. Sigurohuni që kartela nuk është e mbrojtur ndaj shkrimit ose që nuk po përdoret nga një zbatim tjetër."> +<!ENTITY filter.moveUp.label "Ngjite sipër"> +<!ENTITY addGroup.label "Shtoni &grup filtrash"> +<!ENTITY filter.edit.label "Përpunojeni"> +<!ENTITY subscription.showHideFilters.label "Shfaqni/fshihni filtra"> +<!ENTITY acceptableAds2.label "Lejo ndoca reklamë jo të &bezdisshme"> +<!ENTITY addSubscriptionOther.label "Shto nje abonim tjeter"> +<!ENTITY close.label "Mbylle"> +<!ENTITY sort.none.label "Pa radhitur"> +<!ENTITY filter.actions.label "Veprime filtrash"> +<!ENTITY filter.copy.label "Kopjo"> +<!ENTITY filter.moveDown.label "Zbrite poshtë"> +<!ENTITY filter.resetHitCounts.label "Rinisi nga e para statistikat e vizitave"> +<!ENTITY readMore.label "Lexoni më tepër"> +<!ENTITY subscription.moveUp.label "Ngjite sipër"> +<!ENTITY addSubscription.label "Shto abonim per filter"> +<!ENTITY subscription.homepage.label "Kryefaqja"> +<!ENTITY backup.complete.title "Krejt filtrat dhe pajtimet"> +<!ENTITY restore.own.label "Rimerr vlera prej kopjeruajtjes së vet"> +<!ENTITY restore.complete.warning "Krejt parapëlqimet tuaja për filtrat do të zëvendësohen nga lënda e kartelës së përzgjedhur. Dëshironi të vazhdohet?"> +<!ENTITY filters.tab.label "Filtra te kostumizuar"> +<!ENTITY backup.label "Krijoni një kopjeruajtje të re"> +<!ENTITY find.label "Kërko"> +<!ENTITY subscription.moveDown.label "Zbrite poshtë"> +<!ENTITY subscription.lastDownload.connectionError "Deshtoi,gabim shkarkimi"> +<!ENTITY subscription.lastDownload.success "Sukses"> +<!ENTITY subscription.lastDownload.invalidData "Deshtoi,nje liste jo e vlefshme filtrash"> +<!ENTITY filter.paste.label "Hedh"> +<!ENTITY subscription.disabledFilters.enable "Aktivizoni filtrat e aktivizuar"> +<!ENTITY lasthit.column "Shtypja e fundit"> +<!ENTITY subscription.editTitle.label "Përpunoni titullin"> +<!ENTITY subscription.disabledFilters.warning "Për këtë pajtim, disa nga filtrat janë çaktivizuar."> +<!ENTITY filter.column "Rregulla e filtrimit"> +<!ENTITY subscription.lastDownload.label "Shkarkimi i fundit:"> +<!ENTITY viewList.label "Shihni listën"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/firstRun.properties new file mode 100644 index 0000000..21438b1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/firstRun.properties @@ -0,0 +1,24 @@ +firstRun_title=Adblock Plus has been installed +firstRun_dataCorruptionWarning=Does this page keep showing up? <a>Click here!</a> +firstRun_acceptableAdsHeadline=Annoying ads will now be blocked +firstRun_acceptableAdsExplanation=We'd like to encourage websites to use straightforward, unobtrusive advertising. That's why we've established <a>strict guidelines</a> to identify acceptable ads, which are shown under default settings. If you still want to block every ad you can <a>disable</a> this in a few seconds. +firstRun_legacySafariWarning=You are using an old version of Safari which is not supported by Adblock Plus. It might not work correctly or impair the user experience on some websites. We strongly recommend to either update to Safari 6.1.1 or higher (on OS X 10.8 Mountain Lion), or Safari 7.0.1 or higher (on OS X 10.9 Mavericks), or to use the latest version of Mozilla Firefox, Google Chrome or Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. + +firstRun_toggle_on=ON +firstRun_toggle_off=OFF + +firstRun_features=Adblock Plus can do more than block ads +firstRun_feature_malware=Malware Blocking +firstRun_feature_malware_description=Make your browsing more secure by blocking known malware domains. +firstRun_feature_social=Remove Social Media Buttons +firstRun_feature_social_description=Automatically rid your browsing experience of social media buttons, such as the Facebook Like, which appear on web pages and track your behavior. +firstRun_feature_tracking=Disable Tracking +firstRun_feature_tracking_description=Browse privately by disabling tracking - hiding your tracks from ad companies that would track your every move. + +firstRun_share_headline=<a>Give us a hand</a> in making the web a better place +firstRun_donate=donate +firstRun_donate_label=Support our project +firstRun_share=Tell your friends + +firstRun_contributor_credits=Contributor Credits diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/global.properties new file mode 100644 index 0000000..37f6dc5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/global.properties @@ -0,0 +1,41 @@ +disabled_tooltip=Adblock Plus është ç'aktiv. +blocked_count_tooltip=?1?jasht nga ?2? +action3_tooltip=Aktivizim/çaktivizo Adblock Plus. +no_blocking_suggestions=S'ka elemente bllokuese në këtë faqe +type_label_object=objekti +type_label_popup=dritarja pop-up +type_label_image=figura +type_label_other=tjera +type_label_font=shkronjat +mobile_menu_enable=ABP: Mbroj +type_label_subdocument=ndarja +type_label_media=zë/video +type_label_xmlhttprequest=kerkimi për XML +type_label_script=skripta +type_label_elemhide=fshehur +type_label_document=dokumenti +whitelisted_tooltip=Adblock Plus është aktiv por i pasivizuar në këtë faqe. +default_dialog_title=Adblock Plus +type_label_stylesheet=stilet +notification_antiadblock_title=Hide targeted messages? +filter_elemhide_nocriteria=No criteria specified to recognize the element to be hidden +blockingGroup_title=Ad Blocking Rules +filter_regexp_tooltip=This filter is either a regular expression or too short to be optimized. Too many of these filters might slow down your browsing. +action0_tooltip=Click to bring up context menu, middle-click to enable/disable. +whitelisted_page=Adblock Plus has been disabled for the current page +remove_group_warning=Do you really want to remove this group? +action1_tooltip=Click to open/close blockable items, middle-click to enable/disable. +active_tooltip=Adblock Plus is enabled, ?1? filter subscription(s) and ?2? custom filter(s) in use. +type_label_object_subrequest=object subrequest +whitelistGroup_title=Exception Rules +filter_elemhide_duplicate_id=Only one ID of the element to be hidden can be specified +action2_tooltip=Click to open preferences, middle-click to enable/disable. +clearStats_warning=This will reset all filter hit statistics and disable counting filter hits. Do you want to proceed? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? +blocked_count_addendum=(also whitelisted: ?1?, hidden: ?2?) +subscription_invalid_location=Filter list location is neither a valid URL nor a valid file name. +remove_subscription_warning=Do you really want to remove this subscription? +mobile_menu_disable_site=ABP: Disable on ?1? +elemhideGroup_title=Element Hiding Rules +mobile_menu_enable_site=ABP: Enable on ?1? +newGroup_title=New filter group diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/overlay.dtd new file mode 100644 index 0000000..256509f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY opensidebar.label "Hap elementet &bllokuese"> +<!ENTITY options.label "Mundësitë (&O)"> +<!ENTITY context.object.label "Adblock Plus: Objektet e bllokuara"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Rilejo në këtë faqe"> +<!ENTITY context.frame.label "Adblock Plus: Pjesët e bllokuara"> +<!ENTITY filters.tooltip "Filtruesit më aktivë:"> +<!ENTITY menuitem.label "Parapëlqimet e Ad&block Plus"> +<!ENTITY closesidebar.label "M&byll elementet bllokuese"> +<!ENTITY whitelist.page.label "Çaktivizo vetëm në këtë faqe"> +<!ENTITY whitelist.site.label "Çaktivizo në ?1?"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.image.label "Adblock Plus: Figurat e bllokuara"> +<!ENTITY status.tooltip "Gjendja:"> +<!ENTITY objecttab.title "Blloko"> +<!ENTITY subscription.update.label "Përditësoni filtra"> +<!ENTITY notification.button.yes "&Yes"> +<!ENTITY notification.button.no "&No"> +<!ENTITY sync.label "Syn&c Adblock Plus settings"> +<!ENTITY filters.label "&Filter preferences"> +<!ENTITY disable.label "Disable everywhere"> +<!ENTITY objecttab.tooltip "Click here to block this object with Adblock Plus"> +<!ENTITY objecttabs.label "Show &tabs on Flash and Java"> +<!ENTITY sendReport.label "&Report issue on this page"> +<!ENTITY counthits.label "Count filter &hits"> +<!ENTITY notification.button.close "&Close"> +<!ENTITY contribute.label "Contribute to Adblock Plus"> +<!ENTITY blocked.tooltip "Blocked items on this page:"> +<!ENTITY hideplaceholders.label "Hide p&laceholders of blocked elements"> +<!ENTITY showinstatusbar.label "&Show in status bar"> +<!ENTITY sidebar.title "Blockable items on current page"> +<!ENTITY showintoolbar.label "Show in tool&bar"> +<!ENTITY context.media.label "Adblock Plus: Block audio/video"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/sendReport.dtd new file mode 100644 index 0000000..a4139d6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/sendReport.dtd @@ -0,0 +1,71 @@ +<!ENTITY screenshot.undo.label "Zhbeje (&U)"> +<!ENTITY issues.disabledgroups.description "Abonimet e meposhtme ne filtra/grupe filtrash jane te bllokuar, gjithashtu ata mund te kene efikasitet ne kete faqe:"> +<!ENTITY showData.label "Afisho permbajtjen e raportit"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus po bllokon shu&me"> +<!ENTITY issues.change.description "Konfigurimi juaj ka ndryshuar. Ju lutem ri-ngarkoni faqen per te provuar ndryshimet dhe per te derguar nje raportim nese problemi nuk eshte zgjidhur nga ndryshimet ne konfigurim."> +<!ENTITY email.label "Posta: (&m)"> +<!ENTITY issues.openPreferences.label "Hap parametrat e filtrave"> +<!ENTITY sendPage.confirmation "Raporti juaj eshte ruajtur. Ju mund ta shikoni ate ne kete adrese:"> +<!ENTITY copyLink.label "KOpjo adresen e raportit (&C)"> +<!ENTITY issues.nofilters.description "Adblock Plus nuk eshte duke bllokuar asgje ne faqen aktuale. Ky problem qe ju po vereni ka shume mundesi qe nuk ka fare lidhje me Adblock Plus."> +<!ENTITY sendPage.knownIssue "Problemi qe ju keni raportuar ka shume mundesi te jete i njohur. Per me shume informacion:"> +<!ENTITY typeSelector.other.description "Zgjidhni kete mundesi nese ju dyshoni se eshte nje problem me vete Adblock Plus ne vend te filtrave te tij."> +<!ENTITY issues.disabledgroups.enable.label "Aktivizo abonim filtri/grup filtrash"> +<!ENTITY typeWarning.override.label "Une kuptoj dhe de&shiroj te dergoj raportin gjithsesi"> +<!ENTITY issues.disabled.enable.label "Aktivizo Adblock Plus"> +<!ENTITY reloadButton.label "&Ringarko faqen"> +<!ENTITY recentReports.clear.label "Hiq gjithe &raportimet"> +<!ENTITY typeSelector.description "Kjo dritare do ju udhezoje neper gjithe hapat e nevojshem per dergimin e raportit te problemeve me Adblock Plus. Si fillim, ju lutem zgjidhni tipin e problemit qe ju vereni me kete faqe:"> +<!ENTITY screenshot.remove.label "Hiqni te dhenat pe&rsonale"> +<!ENTITY issues.ownfilters.description "Disa nga filtrat e aplikuar ne kete faqe jane te percaktuar nga perdoruesi. Ju lutem bllokoni filtrat te cilet mund te kene shkaktuar kete problem:"> +<!ENTITY sendPage.retry.label "Dergo perseri"> +<!ENTITY data.label "&Permbajtja e raportit:"> +<!ENTITY recentReports.label "Raportimet tuaja me te fundit"> +<!ENTITY typeWarning.description "Ju keni treguar se deshironi te raportoni nje problem te pergjithshem me Adblock Plus ne vend te nje problemi me filtrat. Ju lutem kini parasysh se keto probleme raportohen me mire ne [link]forumin Adblock Plus[/link]. Ju duhet te perdorni raportimin e problemeve vetem si shtese te nje diskutimi ekzistues, sepse askush nuk do ta vere re raportimin tuaj, vetem nese ju jepni nje adrese te problemit. Adrese e krijuar automatikisht do ju jepet pasi ju te keni derguar raportin."> +<!ENTITY issues.disabled.description "Adblock Plus eshte jo-aktiv, ai nuk do te bllokoje asnje gje ne gjendjen aktuale."> +<!ENTITY attachExtensions.label "Bashkangjisni nje liste te prapashtesave aktive ne raportim, ne rast se shkaku i problemit eshte nje konflikt ndermjet moduleve. (&x)"> +<!ENTITY issues.nosubscriptions.add.label "Shto abonim ne filtra"> +<!ENTITY issues.disabledfilters.enable.label "Aktivizo filtrin"> +<!ENTITY issues.override.label "Konfigurimi eshte i sakte, vazhdoni me raportimin (&c)"> +<!ENTITY issues.nosubscriptions.description "Duket sikur ju nuk keni asnje abonim ne filtrat e gatshem te cilet heqin automatikisht permbajtjen e padeshiruar nga faqet web."> +<!ENTITY typeSelector.other.label "Problem &tjeter"> +<!ENTITY issues.whitelist.remove.label "Ri-aktivizo Adblock Plus ne kete faqe"> +<!ENTITY typeSelector.falsePositive.description "Zgjidhni kete mundesi nese faqes i mungon permbajtja e rendesishme, shfaqet gabim ose nuk funksionon ne rregull. Ju mund te percaktoni nese problemi eshte Adblock Plus duke e fikur ate perkohesisht."> +<!ENTITY dataCollector.description "Ju lutem prisni disa momente deri sa Adblock Plus te mbledhe te gjitha te dhenat e nevojshme."> +<!ENTITY sendButton.label "Dergo raporti&n"> +<!ENTITY comment.label "Koment (fakultative): (&C)"> +<!ENTITY sendPage.errorMessage "Tentativa per te derguar raportin ngeci me kodin e gabimit "?1?". Ju lutem sigurohuni qe jeni te lidhur ne internet dhe provoni perseri. Nese ky problem perseritet kerkoni ndihme ne [link]forumin e Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Afisho raportimet e derguara se fundmi"> +<!ENTITY commentPage.heading "Koment"> +<!ENTITY update.start.label "Filloni përditëso tani"> +<!ENTITY issues.disabledfilters.description "Filtrat e meposhtem jane te bllokuar, gjithashtu ata mund te kene efikasitet ne kete faqe:"> +<!ENTITY screenshot.description "E njejta faqe mund te duket ndryshe per njerez te ndryshem. Mund te na ndihmoje ne kuptimin e problemit nese ju bashkangjisni nje foto raportimit tuaj. Ju mund te hiqni ose mbuloni fusha te cilat permbajne informacion te rendesishem dhe personal dhe gjithashtu mund te shenoni zonat ku eshte i dukshem problemi. Per te bere kete klikoni butonin e duhur dhe zgjidhni nje zone te fotos me mausin tuaj."> +<!ENTITY screenshot.attach.label "Bashkangji&t nje faqe me imazh ketij raportimi"> +<!ENTITY issues.whitelist.description "Adblock Plus eshte aktualisht jo-aktiv ne faqen ne te cilen ju po raportoni. Ju lutem ri-aktivizojeni ate dhe ringarkoni faqen perpara se te dergoni raportin i cili do te ndihmoje ne hetimin e metejshem te ketij problemi."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus nuk po bllokon nje reklame (&v)"> +<!ENTITY typeSelector.heading "Lloji i problemit"> +<!ENTITY wizard.title "Raportuesi i problemeve"> +<!ENTITY issues.ownfilters.disable.label "Blloko filtrin"> +<!ENTITY commentPage.description "Fusha e meposhtme ju lejon qe te jepni nje koment qe te na ndihmoje ne ta kuptojme me mire problemin. Ky hap eshte fakultativ por i rekomanduar nese problemi nuk eshte lehtesisht i dallueshem. Ju mund te rishikoni gjithashtu te dhenat e raportimit perpara se te dergohet."> +<!ENTITY comment.lengthWarning "Gjatesia e komentit tuaj i kapercent 1000 karaktere. Vetem 1000 karakteret e para do te dergohen se bashku me raportin."> +<!ENTITY typeSelector.falseNegative.description "Zgjidhni kete mundesi nese nje reklame shfaqet edhe pse Adblock Plus eshte aktiv."> +<!ENTITY sendPage.waitMessage "Ju lutem prisni sa Adblock Plus te dergoje raportin tuaj."> +<!ENTITY dataCollector.heading "Mire se vini ne raportuesin e problemeve"> +<!ENTITY screenshot.heading "Bashkangjit foto"> +<!ENTITY sendPage.heading "Dergo raportin"> +<!ENTITY issues.subscriptionCount.description "Duket sikur ju jeni abonuar ne shume filtra. Ky konfigurim nuk rekomandohet sepse to te shtoje rastet e problemeve te njejta. Gjithashtu ne nuk mund te pranojme raportimin tuaj te problemeve sepse eshet i paqarte se me ke abonim filtri autori duhet te veproje. Ju lutem hiqni te gjithe abonimet ne filtra perveç atyre te nevojshem dhe provoni nese problemi do te jete perseri."> +<!ENTITY screenshot.mark.label "Shenoni proble&min"> +<!ENTITY privacyPolicy.label "Rregulla Privatësie"> +<!ENTITY issues.description "Adblock Plus ka dalluar probleme me konfigurimin tuaj i cili mund te jete pergjegjes per kete problem ose do te veshtiresoje hetimin e raportit."> +<!ENTITY update.fixed.description "The updates to your filter subscriptions likely resolved the issue that you + were reporting. Please reload the page and retry, hit Report again if the + problem remains."> +<!ENTITY anonymous.label "&Anonymous submission"> +<!ENTITY update.inProgress.description "Adblock Plus needs to update your filter subscriptions to make sure that the + issue hasn't been resolved already. Please wait..."> +<!ENTITY emailComment.label "We encourage you to enter a valid email address so that we can contact you if there are questions + about your report. It will also allow us to recognize your contributions and to prioritize them higher."> +<!ENTITY outdatedSubscriptions.description "The following filter subscriptions haven't been updated for at least two + weeks. Please update these subscriptions before submitting a report, the + issue might be resolved already."> +<!ENTITY anonymity.warning "We won't be able to come back to you and will likely prioritize the report lower."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/sidebar.dtd new file mode 100644 index 0000000..b953b23 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Blic kufijte e artikull"> +<!ENTITY address.label "Adresa"> +<!ENTITY context.open.label "Hape një një lidhje të re"> +<!ENTITY type.label "Lloji"> +<!ENTITY tooltip.filterSource.label "Burimi i filtruesit:"> +<!ENTITY noitems.label "S'ka elemente bllokuese"> +<!ENTITY filter.label "Filtruesi"> +<!ENTITY tooltip.size.label "Madhësia:"> +<!ENTITY reattach.label "Bashkëngjit"> +<!ENTITY search.label "Kërko: (&S)"> +<!ENTITY docDomain.thirdParty "(të tretët)"> +<!ENTITY filterSource.label "Burimi i filtrit"> +<!ENTITY tooltip.docDomain.label "Burimi i dokumentit:"> +<!ENTITY context.copy.label "Kopjo adresën e elementit"> +<!ENTITY tooltip.type.label "Lloji:"> +<!ENTITY context.disablefilter.label "Çaktivizo filtruesin ?1?"> +<!ENTITY context.copyFilter.label "Kopjo filtruesin"> +<!ENTITY context.block.label "Blloko këtë send"> +<!ENTITY context.enablefilter.label "Ri mundëso filtruesin ?1?"> +<!ENTITY detach.label "Shkëput"> +<!ENTITY whitelisted.label "Lista e faqeve të lejueshme"> +<!ENTITY context.disablefilteronsite.label "Pamundëso filtruesin në ?1?"> +<!ENTITY detached.title "Adblock Plus: Artikuj per te bllokuar (i shkëputur)"> +<!ENTITY docDomain.firstParty "(të parët)"> +<!ENTITY tooltip.type.whitelisted "(lejuar)"> +<!ENTITY tooltip.filter.label "Filtri në përdorim:"> +<!ENTITY tooltip.filter.disabled "(qkyqur)"> +<!ENTITY context.editfilter.label "Vendos filtruesin në veprim"> +<!ENTITY tooltip.type.blocked "(bllokuar)"> +<!ENTITY size.label "Madhësia"> +<!ENTITY context.whitelist.label "shtoni përjashtim për sundimin artikull"> +<!ENTITY context.selectAll.label "Selekto të gjitha"> +<!ENTITY state.label "Gjendja"> +<!ENTITY docDomain.label "Burimi i dokumentit"> +<!ENTITY tooltip.address.label "Adresa:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/subscriptionSelection.dtd new file mode 100644 index 0000000..e336024 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sq/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY list.download.failed "Adblock Plus dështoj të lidhet me listën e abonimeve."> +<!ENTITY list.download.retry "Provo prap"> +<!ENTITY title.label "&Titulli i abonimit:"> +<!ENTITY list.download.website "Shiko faqen"> +<!ENTITY viewList.label "Shiko filtrat"> +<!ENTITY visitHomepage.label "Vizito faqen kryesore"> +<!ENTITY addSubscription.label "Shto abonim"> +<!ENTITY dialog.title "Shtoi Adblock Plus filtër abonimi"> +<!ENTITY location.label "Vendi i &listës së filtrit:"> +<!ENTITY fromWeb.description "Ju lutem konfirmoni që doni të shtoni këtë filtër abonimi. Ju mund ta ndryshoni emrin e abonimit ose vendëndodhjen para se ta konfirmoni."> +<!ENTITY addMain.label "Add filter &subscription "?1?" as well"> +<!ENTITY supplementMessage "This filter subscription is meant to be used with the filter subscription "?1?" which you are not using yet."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/composer.dtd new file mode 100644 index 0000000..3a398e3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "на &крају адресе"> +<!ENTITY domainRestriction.label "Ограничи на &домен:"> +<!ENTITY collapse.default.no.label "Подразумевано (не)"> +<!ENTITY firstParty.label "Само са о&ве адресе"> +<!ENTITY preferences.label "&Прикажи постојеће филтере…"> +<!ENTITY pattern.label "Потражи образац"> +<!ENTITY thirdParty.label "Само са други&х адреса"> +<!ENTITY filter.label "Нови &филтер:"> +<!ENTITY collapse.label "&Скупи блокирано:"> +<!ENTITY match.warning "Образац који сте унели више се не поклапа са адресом која треба да буде блокирана/одобрена и на њу неће утицати."> +<!ENTITY anchor.start.label "на &почетку адресе"> +<!ENTITY matchCase.label "&Разликуј мала и велика слова"> +<!ENTITY custom.pattern.label "&Прилагођено:"> +<!ENTITY unselectAllTypes.label "Поништи избор"> +<!ENTITY type.whitelist.label "И&зузетак"> +<!ENTITY regexp.warning "Образац који сте унели ће бити коришћен као регуларни израз. Превише регуларних израза може успорити прегледач интернет страна. Уколико не намеравате да користите регуларне изразе, додајте симбол * на крају обрасца."> +<!ENTITY dialog.title "Додавање правила за филтер Adblock Plus-а"> +<!ENTITY basic.label "Основни приказ"> +<!ENTITY type.filter.label "Фи&лтер за блокирање"> +<!ENTITY types.label "Примени на типове:"> +<!ENTITY shortpattern.warning "Образац који сте унели је прекратак за оптимизацију, превише таквих образаца може успорити прегледач интернет страна. Препоручљиво је да користите дуже изразе као филтере."> +<!ENTITY collapse.yes.label "Да"> +<!ENTITY anchors.label "Прихвати само образац:"> +<!ENTITY collapse.default.yes.label "Подразумевано (да)"> +<!ENTITY domainRestriction.help "Наведите један или више домена раздвојених знаком "|". Филтер ће бити употребљен једино за ове домене. Знак "~" испред домена значи да ће домен бити изузет од филтрирања."> +<!ENTITY accept.label "Додај филтер"> +<!ENTITY options.label "Опције"> +<!ENTITY disabled.warning "Adblock Plus је тренутно искључен. И даље можете додавати филтере, али ће они бити примењени тек kada [link]укључиte Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "на почетку &домена"> +<!ENTITY collapse.no.label "Не"> +<!ENTITY selectAllTypes.label "Изабери све"> +<!ENTITY advanced.label "Напредни приказ"> +<!ENTITY pattern.explanation "Образац може бити било који део адресе, симбол * се користи као џокер. Филтер ће бити коришћен једино ако се адреса слаже са обрасцем."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/filters.dtd new file mode 100644 index 0000000..0aae653 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Сви ваши прилагођени филтери ће бити замењени са онима из изабрање датотеке. Желите ли да наставите?"> +<!ENTITY slow.column "Спор&и филтери"> +<!ENTITY enabled.column "Омогуће&н"> +<!ENTITY subscription.lastDownload.checksumMismatch "Неуспело, неслагање извештаја"> +<!ENTITY noFiltersInGroup.text "Изабрана група је празна."> +<!ENTITY subscription.actions.label "Радње"> +<!ENTITY filter.selectAll.label "Изабери све"> +<!ENTITY backupButton.label "Нап&рави резервну копију и врати у претходно стање"> +<!ENTITY restore.minVersion.warning "Напомена: датотека је направљена у новијој верзији додатка Adblock Plus. Требало би да доградите Adblock Plus на најновију верзију пре враћања претходног стања из ове датотеке."> +<!ENTITY restore.error "Подаци из датотеке нису могли да буду обрађени. Да ли је то заиста датотека резерве копије Adblock Plus?"> +<!ENTITY sort.ascending.label "Од &А до Ш"> +<!ENTITY sort.label "&Сортирај по"> +<!ENTITY subscription.source.label "Списак филтера"> +<!ENTITY hitcount.column "Бро&ј погодака"> +<!ENTITY noFilters.text "Немате прилагођених филтера."> +<!ENTITY backup.custom.title "Само прилагођени филтери"> +<!ENTITY subscription.external.label "Ажурира други додатак"> +<!ENTITY subscription.delete.label "Избриши"> +<!ENTITY noGroupSelected.text "Морате да изаберете групу филтера да би њени филтери били приказани."> +<!ENTITY filter.cut.label "Исеци"> +<!ENTITY restore.default.label "Врати претходно стање од ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Преузимање..."> +<!ENTITY subscriptions.tab.label "Претплате на филтере"> +<!ENTITY sort.descending.label "Од &Ш до А"> +<!ENTITY filters.remove.warning "Желите ли да уклоните све изабране филтере?"> +<!ENTITY filter.delete.label "Избриши"> +<!ENTITY addSubscriptionAdd.label "Додај"> +<!ENTITY viewMenu.label "Приказ"> +<!ENTITY subscription.lastDownload.unknown "Непознато"> +<!ENTITY addSubscriptionCancel.label "Откажи"> +<!ENTITY subscription.enabled.label "Омогућено"> +<!ENTITY noSubscriptions.text "Нисте додали ниједну претплату на филтер. Adblock Plus неће блокирати ништа без њих, па притисните „Додај претплату на филтер”."> +<!ENTITY subscription.update.label "Ажурирај филтере"> +<!ENTITY dialog.title "Подешавања Adblock Plus филтера"> +<!ENTITY addFilter.label "&Додај филтер"> +<!ENTITY subscription.minVersion.warning "Ова претплата на филтер захтева новију верзију додатка Adblock Plus. Молимо вас да унапредите додатак."> +<!ENTITY subscription.lastDownload.invalidURL "Неуспело, неисправна адреса"> +<!ENTITY backup.error "Дошло је до грешке приликом чувања филтера у датотеку. Проверите да датотека није само за читање или је не корити нека друга апликација."> +<!ENTITY filter.moveUp.label "Помери нагоре"> +<!ENTITY addGroup.label "Додај &групу филтера"> +<!ENTITY filter.edit.label "Уреди"> +<!ENTITY subscription.showHideFilters.label "Прикажи/сакриј филтере"> +<!ENTITY acceptableAds2.label "Дозволи &ненаметљиве рекламе"> +<!ENTITY addSubscriptionOther.label "Додај другу претплату"> +<!ENTITY close.label "Затвори"> +<!ENTITY sort.none.label "Н&епоређано"> +<!ENTITY filter.actions.label "Радње филтера"> +<!ENTITY filter.copy.label "Копирај"> +<!ENTITY filter.moveDown.label "Помери надоле"> +<!ENTITY filter.resetHitCounts.label "Поништи статистике"> +<!ENTITY readMore.label "Сазнај више"> +<!ENTITY subscription.moveUp.label "Помери нагоре"> +<!ENTITY addSubscription.label "Додај &претплату на филтер"> +<!ENTITY subscription.homepage.label "Матична страница"> +<!ENTITY backup.complete.title "Додај филтере и претплате"> +<!ENTITY restore.own.label "Врати сопствено претходно стање"> +<!ENTITY restore.complete.warning "Све ваша подешавања филтера ће бити замењена са онима из изабране датотеке. Желите ли да наставите?"> +<!ENTITY filters.tab.label "Прилагођени филтери"> +<!ENTITY backup.label "Направи нову резервну копију"> +<!ENTITY find.label "Прона&ђи"> +<!ENTITY subscription.moveDown.label "Помери надоле"> +<!ENTITY subscription.lastDownload.connectionError "Неуспело, грешка у преузимању"> +<!ENTITY subscription.lastDownload.success "Успешно"> +<!ENTITY subscription.lastDownload.invalidData "Неуспело, није листа филтера"> +<!ENTITY filter.paste.label "Налепи"> +<!ENTITY subscription.disabledFilters.enable "Омогући онемогућене филтере"> +<!ENTITY lasthit.column "Пос&ледњи погодак"> +<!ENTITY subscription.editTitle.label "Уреди наслов"> +<!ENTITY subscription.disabledFilters.warning "Неки филтери са списка су онемогућени."> +<!ENTITY filter.column "Правило &филтера"> +<!ENTITY subscription.lastDownload.label "Последње преузимање:"> +<!ENTITY viewList.label "Погледај списак"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/firstRun.properties new file mode 100644 index 0000000..cac5818 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Сурфујте приватно са онемогућеним праћењем - скривајући се од рекламних компанија које прате сваки ваш потез. +firstRun_toggle_off=Искључен +firstRun_feature_tracking=Онемогући праћење +firstRun_feature_malware=Блокирање малвера +firstRun_title=Adblock Plus је инсталиран +firstRun_toggle_on=Укључен +firstRun_acceptableAdsExplanation=Желели бисмо да охрабримо сајтове да користе фер и ненападно оглашавање, и зато смо покренули <a>стриктан правилник</a> у циљу препознавања прихватљивих огласа који је могуће видети под подразумеваним поставкама. Ако и даље желите да блокирате све огласе, можете <a>онемогућити</a> ову опцију. +firstRun_contributor_credits=Кредитовани сарадници +firstRun_dataCorruptionWarning=Да ли се ова страница наставља појављивати? <a>Кликните овде!</a> +firstRun_acceptableAdsHeadline=Досадне рекламе ће сада бити блокиране +firstRun_share=Препоручите нас својим пријатељима +firstRun_share_headline=<a>Помози нам</a> да интернет постане боље место +firstRun_feature_social_description=Аутоматски учините сурфовање ослобођеним од дугмића друштвених мрежа, као што су "Facebook Like" дугме, који се појављују на страницама и прате ваше понашање. +firstRun_filterlistsReinitializedWarning=Изгледа да је проблем узроковао да сви филтери буду уклоњени, а резервне примерке није могуће повратити. Због тога смо морали да вратимо поставке филтера и дозвољених огласа на подразумеване вредности. Проверите листе филтера и дозвољене огласе у <a>опцијама Adblock Plus-а</a>. +firstRun_feature_malware_description=Учините ваше сурфовање сигурнијим, блокирајући домене познате по злонамерним малвер програмима. +firstRun_features=Adblock Plus може више од блокирања реклама +firstRun_donate=Донирајте +firstRun_donate_label=Подржите наш пројекат +firstRun_feature_social=Уклоните дугмиће друштвених мрежа +firstRun_legacySafariWarning=Користите верзију Сафарија коју Adblock Plus не подржава, зато је могуће да неке веб странице неће бити оптимално приказане, или ABP уопште неће функционисати. Препоручујемо да унапредите Safari у задњу верзију, или да користите Мозила Фајерфокс, Гугл Кром или Опера браузер. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/global.properties new file mode 100644 index 0000000..b7fe0ce --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=На овој страни нема ставки које могу да се блокирају +action3_tooltip=Кликните да бисте укључили/искључили Adblock Plus. +notification_antiadblock_title=Сакријте изабране поруке? +type_label_script=скрипт +filter_elemhide_nocriteria=Није пронађен критеријум за препознавање елемента који ће бити сакривен. +blockingGroup_title=Правила за блокирање реклама +whitelisted_tooltip=Adblock Plus је онемогућен на тренутној страни. +type_label_stylesheet=стил +blocked_count_tooltip=?1? од ?2? +type_label_font=фонт +type_label_popup=искачући прозор +filter_regexp_tooltip=Филтер је или регуларан израз или је прекратак за оптимизацију. Превише таквих филтера може успорити ваш прегледач. +action0_tooltip=Кликните да бисте отворили приручни мени, а средњи клик за укључивање/искључивање. +whitelisted_page=Adblock Plus је искључен за ову страну +remove_group_warning=Желите ли да уклоните ову групу? +action1_tooltip=Кликните да бисте отворили ставке које се могу блокирати, а средњи клик за укључивање/искључивање. +type_label_xmlhttprequest=XML захтев +active_tooltip=Adblock Plus је омогућен, ?1? претплата на филтере, ?2? прилагођених филтера у употреби. +type_label_document=документ +type_label_object_subrequest=подзахтев за објектом +whitelistGroup_title=Правила за изузетке +disabled_tooltip=Adblock Plus је онемогућен. +filter_elemhide_duplicate_id=Да би сте сакрили елеменат, морате дати само један идентитет елемента. +type_label_object=објекат +action2_tooltip=Кликните да бисте отворили подешавања, а средњи клик за омогућавање/онемогућавање. +type_label_subdocument=оквир +clearStats_warning=Ово ће поништити статистике свих филтера и онемогућити даље бројање. Желите ли да наставите? +notification_antiadblock_message=Познато је да овај сајт приказује циљане поруке корисницима Adblock Plus-а. Желите ли да сакријете те поруке? +blocked_count_addendum=(такође допуштено: ?1?, сакривено: ?2?) +subscription_invalid_location=Неисправна адреса и име датотеке са списком филтера. +type_label_image=слика +remove_subscription_warning=Желите ли да уклоните ову претплату? +type_label_other=друго +mobile_menu_enable=ABP: омогући +type_label_media=аудио/видео +mobile_menu_disable_site=ABP: онемогући на ?1? +elemhideGroup_title=Правила за блокирање елемената +mobile_menu_enable_site=ABP: омогући на ?1? +type_label_elemhide=сакривен +newGroup_title=Нова група филтера +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/overlay.dtd new file mode 100644 index 0000000..52b43c7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Да"> +<!ENTITY notification.button.no "&Не"> +<!ENTITY sync.label "Поставке &усклађивања Adblock Plus-а"> +<!ENTITY whitelist.site.label "Онемогући на ?1?"> +<!ENTITY filters.label "Подешавања &филтера"> +<!ENTITY disable.label "Онемогући свуда"> +<!ENTITY objecttab.title "Блокирај"> +<!ENTITY objecttab.tooltip "Кликните овде да бисте блокирали објекат помоћу Adblock Plus-а"> +<!ENTITY menuitem.label "Adblock Plus - подеша&вања"> +<!ENTITY objecttabs.label "Прикажи &језичак на Flash и Java објектима"> +<!ENTITY sendReport.label "&Пријави проблеме на овој страници"> +<!ENTITY whitelist.page.label "Онемогући само на овој страници"> +<!ENTITY context.image.label "Блокирај слику"> +<!ENTITY counthits.label "Бр&ој поготке филтера"> +<!ENTITY opensidebar.label "О&твори ставке које се могу блокирати"> +<!ENTITY notification.button.close "&Затвори"> +<!ENTITY contribute.label "Допринесите Adblock Plus-у"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Блокирај оквир"> +<!ENTITY blocked.tooltip "Блокиране ставке на овој страни:"> +<!ENTITY hideplaceholders.label "Сакриј &држаче елемената блокираних ставки"> +<!ENTITY showinstatusbar.label "Прикажи у &статусној траци"> +<!ENTITY sidebar.title "Ставке које се могу блокирати на овој страници"> +<!ENTITY options.label "Оп&ције"> +<!ENTITY context.object.label "Блокирај објекат"> +<!ENTITY context.removeWhitelist.label "Поново укључи на овој страници"> +<!ENTITY filters.tooltip "Најактивнији филтери:"> +<!ENTITY closesidebar.label "За&твори ставке које се могу блокирати"> +<!ENTITY showintoolbar.label "Прикажи у &траци са алаткама"> +<!ENTITY status.tooltip "Стање:"> +<!ENTITY context.media.label "Блокирај аудио/видео"> +<!ENTITY subscription.update.label "Ажурирај филтере"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/sendReport.dtd new file mode 100644 index 0000000..de0adef --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Опозови"> +<!ENTITY issues.disabledgroups.description "Следећа претплата на филтер претплату, или групу филтера је искључена, и можда има утицаја на страницу:"> +<!ENTITY showData.label "Прикажи податке у извештају"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus блокира превише (&м)"> +<!ENTITY issues.change.description "Ваша подешавања су измењена. Поново учитајте страницу да бисте видели промене, па пошаљите извештај ако проблем и даље није решен."> +<!ENTITY email.label "Е-мејл: (&а)"> +<!ENTITY issues.openPreferences.label "Отвори подешавања филтера"> +<!ENTITY sendPage.confirmation "Ваш извештај је сачуван. Можете да му приступите на следећој адреси:"> +<!ENTITY copyLink.label "Копирај &везу до извештаја"> +<!ENTITY issues.nofilters.description "Adblock Plus не блокира ништа на тренутној страници. Овај проблем највероватније није повезан са са Adblock Plus-ом."> +<!ENTITY sendPage.knownIssue "Проблем који сте пријавили је вероватно већ познат. Више информација:"> +<!ENTITY typeSelector.other.description "Изаберите ову опцију ако мислите да сâм Adblock Plus узрокује проблем, а не филтери."> +<!ENTITY issues.disabledgroups.enable.label "Омогући претплату на филтер/групу филтера"> +<!ENTITY typeWarning.override.label "&Разумем и ипак желим да пошаљем извештај"> +<!ENTITY issues.disabled.enable.label "Омогући Adblock Plus"> +<!ENTITY update.fixed.description "Претплате на ваш филтер су вероватно већ отклониле проблем који сте пријавили. Поново учитајте страницу, па покушајте поново. Ако проблем и даље постоји, поново га пријавите."> +<!ENTITY anonymous.label "&Анонимна пријава"> +<!ENTITY reloadButton.label "&Поново учитај страницу"> +<!ENTITY recentReports.clear.label "Уклони све п&ријаве"> +<!ENTITY typeSelector.description "Овај прозор ће Вас водити кроз кораке за решавање проблема у Adblock Plus-у и њихово пријављивање. За почетак, изаберите врсту проблема на који сте наишли на овој страници:"> +<!ENTITY screenshot.remove.label "&Уклони приватне податке"> +<!ENTITY issues.ownfilters.description "Неке филтере примењене на овој страници су створили корисници. Онемогућите оне за које мислите да би могли бити узрок проблема."> +<!ENTITY update.inProgress.description "Adblock Plus мора ажурирати ваше претплате на филтере ради како би проверио да ли је проблем већ отклоњен. Сачекајте..."> +<!ENTITY sendPage.retry.label "Поново пошаљи"> +<!ENTITY data.label "П&одаци у извештају:"> +<!ENTITY recentReports.label "Ваши недавно послати извештаји"> +<!ENTITY typeWarning.description "Навели сте да желите пријавити општи проблем са Adblock Plus-ом, а не са филтером. Имајте на уму да је такве проблеме најбоље пријавити на [link]форуму Adblock Plus-а[/link]. Овај систем за пријављивање бисте требали да користите само као допуну расправи, јер нико неће видети Ваш извештај док му не даднете везу до њега. Аутоматски направљену везу ћете добити одмах након слања извештаја."> +<!ENTITY issues.disabled.description "Adblock Plus је онемогућен и ништа неће блокирати."> +<!ENTITY attachExtensions.label "Приложите списак омогућених &додатака у извештај, у случају да њихов сукоб доводи до проблема."> +<!ENTITY issues.nosubscriptions.add.label "Додај претплату на филтер"> +<!ENTITY issues.disabledfilters.enable.label "Омогућите филтер"> +<!ENTITY issues.override.label "Подешавања су &исправна. Настави са пријављивањем."> +<!ENTITY issues.nosubscriptions.description "Изгледа да нисте претплаћени ни на један списак филтера који аутоматски уклањају нежељени садржај са страница."> +<!ENTITY typeSelector.falsePositive.description "Изаберите ову опцију ако страници недостају неки битни садржаји, погрешно изгледа или не ради како треба. Пробајте да привремено онемогућите Adblock Plus, па проверите да ли је онда све у реду."> +<!ENTITY typeSelector.other.label "Други проблем (&т)"> +<!ENTITY emailComment.label "Молимо вас да унесете важећу и-мејл адресу да бисмо могли да вас контактирамо уколико има питања у вези са вашом пријавом. Такође, то ће нам допустити да препознамо ваше доприносе и да им дамо већу важност."> +<!ENTITY issues.whitelist.remove.label "Омогући Adblock Plus на овој страници"> +<!ENTITY outdatedSubscriptions.description "Следеће претплате на филтере носу ажуриране више од две седмице. Ажурирајте их пре него што пријавите проблем, јер би га то могло отклонити."> +<!ENTITY dataCollector.description "Сачекајте неколико тренутака док Adblock Plus прибави потребне податке."> +<!ENTITY sendButton.label "&Пошаљите извештај"> +<!ENTITY comment.label "&Коментар (произвољно):"> +<!ENTITY sendPage.errorMessage "Покушај слања извештаја није успео - грешка „?1?”. Уверите се да сте повезани са Интернетом, па покушајте поново. Ако проблем и даље постоји, помоћ потражите на [link]форуму Adblock Plus-а[/link]."> +<!ENTITY showRecentReports.label "Прикажи недавно послате пријаве"> +<!ENTITY commentPage.heading "Унеси коментар"> +<!ENTITY update.start.label "Ажурирај"> +<!ENTITY issues.disabledfilters.description "Следећи филтери, иако онемогућени, можда имају утицаја на страницу:"> +<!ENTITY screenshot.description "Иста страница може да изгледа различито код различитих особа, и помогло би нам ако приложите снимак проблема који пријављујете. Можете да уклоните или замаскирате приватне информације, а да бисте то учинили кликните одговарајуће дугме, и мишем изаберите жељени део слике."> +<!ENTITY screenshot.attach.label "Приложите снимак с&транице уз извештај"> +<!ENTITY issues.whitelist.description "Adblock Plus је тренутно онемогућен на страници коју пријављујете. Омогућите га и поново учитајте страницу пре него што пошаљете молбу за испитивање проблема."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus не блокира рекламу/е (&в)"> +<!ENTITY typeSelector.heading "Изаберите врсту проблема"> +<!ENTITY anonymity.warning "Нећемо бити у могућности да поново допремо до вас и то ће вероватно снизити приоритет пријаве."> +<!ENTITY wizard.title "Пријављивање грешака"> +<!ENTITY issues.ownfilters.disable.label "Онемогући филтер"> +<!ENTITY commentPage.description "Доње поље за текст омогућава вам да додате коментар, како бисте нам помогли да лакше схватимо проблем. Овај корак је произвољан али је пожељан, ако проблем није лако уочљив. Можете и да још једном прегледате извештај пре него што га пошаљете."> +<!ENTITY comment.lengthWarning "Дужина вашег коментара прелази 1000 знакова. Само првих 1000 знакова ће бити послато."> +<!ENTITY typeSelector.falseNegative.description "Изаберите ову опцију ако је реклама приказана иако је Adblock Plus омогућен."> +<!ENTITY sendPage.waitMessage "Сачекајте док Adblock Plus не пошаље Ваш извештај."> +<!ENTITY dataCollector.heading "Добро дошли у део за пријаву грешака"> +<!ENTITY screenshot.heading "Приложи снимак"> +<!ENTITY sendPage.heading "Пошаљи извештај"> +<!ENTITY issues.subscriptionCount.description "Изгледа да сте се претплатили на превише филтера. То није препоручљиво, јер повећава вероватноћу да настану проблеми. Поред тога, не можемо да прихватимо ваш извештај о грешкама јер је нејасно која претплата на филтер садржи грешку. Молимо вас да уклоните све непотребне претплате на филтере и проверите да ли још увек има проблема."> +<!ENTITY screenshot.mark.label "О&значи проблем"> +<!ENTITY privacyPolicy.label "Политика приватности"> +<!ENTITY issues.description "Adblock Plus је уочио проблем са Вашим подешавањима, што може бити узрок овог проблема или отежати његово испитивање."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/sidebar.dtd new file mode 100644 index 0000000..98f3a7e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Осветли границе ставке"> +<!ENTITY address.label "Адреса"> +<!ENTITY context.open.label "Отвори на новом листу"> +<!ENTITY type.label "Врста"> +<!ENTITY tooltip.filterSource.label "Извор филтера:"> +<!ENTITY noitems.label "Нема ставки за блокирање"> +<!ENTITY filter.label "Филтер"> +<!ENTITY tooltip.size.label "Величина:"> +<!ENTITY reattach.label "Поново споји"> +<!ENTITY search.label "&Тражи:"> +<!ENTITY docDomain.thirdParty "(трећа страна)"> +<!ENTITY filterSource.label "Извор филтера"> +<!ENTITY tooltip.docDomain.label "Извор документа:"> +<!ENTITY context.copy.label "Умножи адресу ставке"> +<!ENTITY tooltip.type.label "Врста:"> +<!ENTITY context.disablefilter.label "Онемогући филтер ?1?"> +<!ENTITY context.copyFilter.label "Умножи филтер"> +<!ENTITY context.block.label "Блокирај ову ставку"> +<!ENTITY context.enablefilter.label "Омогући филтер ?1?"> +<!ENTITY detach.label "Одвоји"> +<!ENTITY whitelisted.label "Бела листа"> +<!ENTITY context.disablefilteronsite.label "Онемогући овај филтер на ?1?"> +<!ENTITY detached.title "Adblock Plus: ставке које се могу блокирати (одвојено)"> +<!ENTITY docDomain.firstParty "(прва страна)"> +<!ENTITY tooltip.type.whitelisted "(на белој листи)"> +<!ENTITY tooltip.filter.label "Коришћени филтер:"> +<!ENTITY tooltip.filter.disabled "(онемогућено)"> +<!ENTITY context.editfilter.label "Уреди коришћени филтер"> +<!ENTITY tooltip.type.blocked "(блокирано)"> +<!ENTITY size.label "Величина"> +<!ENTITY context.whitelist.label "Додај изузетак за ставку"> +<!ENTITY context.selectAll.label "Изабери све"> +<!ENTITY state.label "Статус"> +<!ENTITY docDomain.label "Извор документа"> +<!ENTITY tooltip.address.label "Адреса:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/subscriptionSelection.dtd new file mode 100644 index 0000000..dd6291f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sr/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Д&одај и претплату на филтер „?1?”"> +<!ENTITY list.download.failed "Adblock Plus није успео да набави нови списак претплата."> +<!ENTITY list.download.retry "Покушај поново"> +<!ENTITY title.label "&Назив претплате:"> +<!ENTITY list.download.website "Отвори веб страницу"> +<!ENTITY supplementMessage "Ова претплата на филтер је предвиђена за коришћење са филтером „?1?” који још увек не користите."> +<!ENTITY viewList.label "Погледај филтере"> +<!ENTITY visitHomepage.label "Посети матичну страницу"> +<!ENTITY addSubscription.label "Додај претплату"> +<!ENTITY dialog.title "Претплата на филтере Adblock Plus-а"> +<!ENTITY location.label "&Локација списка са филтерима:"> +<!ENTITY fromWeb.description "Потврдите да желите додати претплату на овај филтер (можете променити назив или локацију претплате пре додавања)."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/composer.dtd new file mode 100644 index 0000000..b16c505 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "I slutet av adressen"> +<!ENTITY domainRestriction.label "Begränsa till domän:"> +<!ENTITY collapse.default.no.label "Standard (nej)"> +<!ENTITY firstParty.label "Endast första part"> +<!ENTITY preferences.label "Visa existerande filter…"> +<!ENTITY pattern.label "Sök efter mönster"> +<!ENTITY thirdParty.label "Endast tredje part"> +<!ENTITY filter.label "Nytt filter:"> +<!ENTITY collapse.label "Dölj blockerade:"> +<!ENTITY match.warning "Mönstret du har angivit matchar inte längre adressen som skall blockeras/undantas och kommer därför inte att påverka den."> +<!ENTITY anchor.start.label "I början av adressen"> +<!ENTITY matchCase.label "S&kiftlägeskänslig"> +<!ENTITY custom.pattern.label "Eget:"> +<!ENTITY unselectAllTypes.label "Välj ingen"> +<!ENTITY type.whitelist.label "Regel för &undantag"> +<!ENTITY regexp.warning "Mönstret du angivit hanteras som ett reguljärt uttryck. Många reguljära uttryck kan göra din surfning långsam. Om du inte avsåg att använda reguljära uttryck, lägg till en asterisk (*) i slutet av mönstret."> +<!ENTITY dialog.title "Lägg till filterregel för Adblock Plus"> +<!ENTITY basic.label "Standard"> +<!ENTITY type.filter.label "Blockerande filter"> +<!ENTITY types.label "Verkställ för:"> +<!ENTITY shortpattern.warning "Detta mönster är för kort för optimal prestanda och för många sådana mönster kan göra din surfning långsam. Det rekommenderas att använda längre strängar för detta filter."> +<!ENTITY collapse.yes.label "Ja"> +<!ENTITY anchors.label "Acceptera endast mönster:"> +<!ENTITY collapse.default.yes.label "Standard (ja)"> +<!ENTITY domainRestriction.help "Ange en eller flera domäner avgränsade med lodrätt streck (|). Filtret kommer endast att tillämpas på dessa valda domäner(na). Tilde-tecknet (~) framför en domän anger att filtret inte kommer att användas för den domänen."> +<!ENTITY accept.label "Lägg till filter"> +<!ENTITY options.label "Inställningar"> +<!ENTITY disabled.warning "Adblock Plus är inaktiverat. Du kan lägga till filter, men de kan inte användas förrän du [link]aktiverar Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "I början av domännamnet"> +<!ENTITY collapse.no.label "Nej"> +<!ENTITY selectAllTypes.label "Markera alla"> +<!ENTITY advanced.label "Avancerat"> +<!ENTITY pattern.explanation "Mönster är en del av en adress, symbolen * är jokertecken. Filtret används endast på adresser som matchar mönstret."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/filters.dtd new file mode 100644 index 0000000..822ef32 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Alla dina egna filter kommer att ersättas av innehållet i den valda filen. Vill du fortsätta?"> +<!ENTITY slow.column "&Långsamma filter"> +<!ENTITY enabled.column "P&å"> +<!ENTITY subscription.lastDownload.checksumMismatch "Fel kontrollsumma"> +<!ENTITY noFiltersInGroup.text "Den markerade gruppen är tom"> +<!ENTITY subscription.actions.label "Åtgärder"> +<!ENTITY filter.selectAll.label "Markera alla"> +<!ENTITY backupButton.label "Säkerhetskopiera och &Återställ"> +<!ENTITY restore.minVersion.warning "Varning: Filen har skapats med en nyare version av Adblock Plus. Du bör uppdatera till den senaste Adblock Plus-versionen innan du återställer från denna fil."> +<!ENTITY restore.error "Filens data kunde inte bearbetas. Kanske är det här inte en Adblock Plus-säkerhetskopiefil?"> +<!ENTITY sort.ascending.label "Sortera A > Ö"> +<!ENTITY sort.label "Sor&tering"> +<!ENTITY subscription.source.label "Filterlista"> +<!ENTITY hitcount.column "Tr&äffar"> +<!ENTITY noFilters.text "Du har inga egna filter än."> +<!ENTITY backup.custom.title "Endast egna filter"> +<!ENTITY subscription.external.label "Uppdateras av ett annat tillägg"> +<!ENTITY subscription.delete.label "Ta bort"> +<!ENTITY noGroupSelected.text "Du måste markera en filtergrupp innan dess filter kan visas."> +<!ENTITY filter.cut.label "Klipp ut"> +<!ENTITY restore.default.label "Återställ säkerhetskopia från ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Hämtar…"> +<!ENTITY subscriptions.tab.label "Filterprenumerationer"> +<!ENTITY sort.descending.label "Sortera &Ö > A"> +<!ENTITY filters.remove.warning "Vill du verkligen ta bort alla markerade filter?"> +<!ENTITY filter.delete.label "Ta bort"> +<!ENTITY addSubscriptionAdd.label "Lägg till"> +<!ENTITY viewMenu.label "Visa"> +<!ENTITY subscription.lastDownload.unknown "Okänt"> +<!ENTITY addSubscriptionCancel.label "Avbryt"> +<!ENTITY subscription.enabled.label "Aktiverat"> +<!ENTITY noSubscriptions.text "Du har inte lagt till några filterprenumerationer än. Adblock Plus kommer inte blockera någonting utan filter. Använd "Lägg till filterprenumeration" för att lägga till några."> +<!ENTITY subscription.update.label "Uppdatera filter"> +<!ENTITY dialog.title "Filterinställningar för Adblock Plus"> +<!ENTITY addFilter.label "Lägg till &filter"> +<!ENTITY subscription.minVersion.warning "Denna filterprenumeration kräver en nyare version av Adblock Plus, du bör uppdatera till den senaste Adblock Plus-versionen."> +<!ENTITY subscription.lastDownload.invalidURL "Ogiltig adress"> +<!ENTITY backup.error "Det uppstod ett fel vid skrivning av filter till filen. Säkerställ att filen inte är skrivskyddad eller används av ett annat program."> +<!ENTITY filter.moveUp.label "Flytta uppåt"> +<!ENTITY addGroup.label "Lägg till filtergrupp"> +<!ENTITY filter.edit.label "Redigera"> +<!ENTITY subscription.showHideFilters.label "Visa/dölj filter"> +<!ENTITY acceptableAds2.label "Tillåt viss icke-störande reklam"> +<!ENTITY addSubscriptionOther.label "Lägg till en ny prenumeration"> +<!ENTITY close.label "Stäng"> +<!ENTITY sort.none.label "&Osorterad"> +<!ENTITY filter.actions.label "Filteråtgärder"> +<!ENTITY filter.copy.label "Kopiera"> +<!ENTITY filter.moveDown.label "Flytta nedåt"> +<!ENTITY filter.resetHitCounts.label "Återställ träffstatistik"> +<!ENTITY readMore.label "Läs mer"> +<!ENTITY subscription.moveUp.label "Flytta uppåt"> +<!ENTITY addSubscription.label "Lägg till filter&prenumeration"> +<!ENTITY subscription.homepage.label "Webbplats"> +<!ENTITY backup.complete.title "Alla filter och prenumerationer"> +<!ENTITY restore.own.label "Återställ egen säkerhetskopia"> +<!ENTITY restore.complete.warning "Alla dina filterinställningar kommer att ersättas av innehållet i den valda filen. Vill du fortsätta?"> +<!ENTITY filters.tab.label "Egna filter"> +<!ENTITY backup.label "Skapa ny säkerhetskopia"> +<!ENTITY find.label "Sö&k"> +<!ENTITY subscription.moveDown.label "Flytta nedåt"> +<!ENTITY subscription.lastDownload.connectionError "Fel vid hämtning"> +<!ENTITY subscription.lastDownload.success "Klart"> +<!ENTITY subscription.lastDownload.invalidData "Fel vid validering av filter"> +<!ENTITY filter.paste.label "Klistra in"> +<!ENTITY subscription.disabledFilters.enable "Aktivera inaktiverade filter"> +<!ENTITY lasthit.column "Senaste t&räff"> +<!ENTITY subscription.editTitle.label "Redigera rubrik"> +<!ENTITY subscription.disabledFilters.warning "Vissa filter i denna prenumeration är inaktiverade."> +<!ENTITY filter.column "Filterregler"> +<!ENTITY subscription.lastDownload.label "Senast hämtat:"> +<!ENTITY viewList.label "Visa lista"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/firstRun.properties new file mode 100644 index 0000000..5381477 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Surfa privat genom att inaktivera spårning - dölj dina spår från reklamföretag som vill spåra dina rörelser. +firstRun_toggle_off=AV +firstRun_feature_tracking=Inaktivera Spårning +firstRun_feature_malware=Malwareblockering +firstRun_title=Adblock Plus har installerats +firstRun_acceptableAdsExplanation=Vi vill uppmuntra webbplatser att använda enkel, diskret reklam. Det är därför vi har fastställt <a>strikta riktlinjer</a> för att identifiera acceptabla annonser, som visas under standardinställningar. Om du fortfarande vill blockera alla annonser kan du <a>inaktivera</a> detta inom ett par sekunder. +firstRun_toggle_on=PÅ +firstRun_contributor_credits=Tack till +firstRun_dataCorruptionWarning=Fortsätter denna sida att visas? <a>Klicka här!</a> +firstRun_acceptableAdsHeadline=Irriterande annonser blockeras nu +firstRun_share=Berätta för dina vänner +firstRun_share_headline=<a>Hjälp oss</a> att göra webben till en bättre plats +firstRun_features=Adblock Plus kan göra mer än att blockera reklam +firstRun_feature_malware_description=Göra din surfning säkrare genom att blockera kända skadliga domäner. +firstRun_feature_social_description=Förbättrar automatiskt din webbupplevelse genom borttagning av sociala medier knappar, såsom Facebook Gilla, som visas på webbsidor och spåra ditt beteende. +firstRun_donate=donera +firstRun_donate_label=Stöd vårt projekt +firstRun_feature_social=Ta bort knappar för Sociala Medier +firstRun_legacySafariWarning=Du använder en äldre version av Safari som inte stödjs av Adblock Plus. Adblock Plus kanske inte fungerar korrekt eller försämrar användarupplevelsen på vissa hemsidor. Vi rekommenderar starkt att antingen uppdatera till Safari 6.1.1 eller högre (tillgänglig på OS X 10.8 Mountain Lion), Safari 7.0.1 eller högre (tillgänglig på OS X 10.9 Mavericks), eller att använda den senaste versionen av Mozilla Firefox, Google Chrome eller Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/global.properties new file mode 100644 index 0000000..0bf2eab --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Det finns inget att blockera på denna sida +action3_tooltip=Klicka för att slå på/av Adblock Plus. +notification_antiadblock_title=Göm riktade budskap? +type_label_script=skript +filter_elemhide_nocriteria=Inga villkor för att gömma element har uppfyllts +blockingGroup_title=Reklamblockeringsregler +whitelisted_tooltip=Adblock Plus är på, men inaktiverat för denna sida. +type_label_stylesheet=formatmall +blocked_count_tooltip=?1? av ?2? +type_label_font=teckensnitt +type_label_popup=popupfönster +filter_regexp_tooltip=Detta filter är ett reguljärt uttryck eller för kort för optimal funktion. För många av dessa filter kan göra din surfning långsam. +action0_tooltip=Klicka för meny, mittenklicka för att slå på/av Adblock Plus. +whitelisted_page=Adblock Plus är inaktiverat på denna sida +remove_group_warning=Vill du verkligen radera denna grupp? +action1_tooltip=Klicka för att öppna/stänga listan med blockerbara objekt, mittenklicka för att slå på/av Adblock Plus. +type_label_xmlhttprequest=XML-förfrågan +active_tooltip=Adblock Plus är aktiverat, ?1? filterprenumeration(er) och ?2? egna filter används. +type_label_document=dokument +type_label_object_subrequest=objektunderförfrågan +whitelistGroup_title=Undantagsregler +disabled_tooltip=Adblock Plus är av. +filter_elemhide_duplicate_id=Endast ett ID får anges för elementet som skall döljas +type_label_object=objekt +action2_tooltip=Klicka för att öppna inställningarna, mittenklicka för att slå på/av Adblock Plus. +type_label_subdocument=ram +clearStats_warning=Detta kommer att återställa all filterträffstatistik och inaktivera räkning av filterträffar. Vill du fortsätta? +notification_antiadblock_message=Denna webbplats har varit känt för att visa riktade budskap till Adblock Plus användare. Vill du Adblock Plus att dölja riktade budskap? +blocked_count_addendum=(undantagna: ?1?, dolda: ?2?) +subscription_invalid_location=Platsen du angivit är antingen ogiltig eller så har du angivit ett felaktigt filnamn. +type_label_image=bild +remove_subscription_warning=Vill du verkligen ta bort denna prenumeration? +type_label_other=annan +mobile_menu_enable=ABP: Aktivera +type_label_media=ljud/video +mobile_menu_disable_site=ABP: Inaktivera för ?1? +elemhideGroup_title=Elementdöljningsregler +mobile_menu_enable_site=ABP: Aktivera för ?1? +type_label_elemhide=dold +newGroup_title=Ny filtergrupp +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/overlay.dtd new file mode 100644 index 0000000..9e5694a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "Jag"> +<!ENTITY notification.button.no "Nej"> +<!ENTITY sync.label "Syn&kronisera Adblock Plus inställningar"> +<!ENTITY whitelist.site.label "Använd inte på ?1?"> +<!ENTITY filters.label "Filterinställningar"> +<!ENTITY disable.label "Inaktivera för alla domäner"> +<!ENTITY objecttab.title "Blockera"> +<!ENTITY objecttab.tooltip "Klicka här för att blockera detta objekt med Adblock Plus"> +<!ENTITY menuitem.label "Inställning&ar för Adblock Plus"> +<!ENTITY objecttabs.label "&Visa flik vid Flash- och Java-reklam"> +<!ENTITY sendReport.label "Rapportera problem på denna sida"> +<!ENTITY whitelist.page.label "Använd inte på denna sida"> +<!ENTITY context.image.label "Adblock Plus: Blockera bild"> +<!ENTITY counthits.label "Räkna an&talet filterträffar"> +<!ENTITY opensidebar.label "Visa lista över blockerbara objekt"> +<!ENTITY notification.button.close "Sluta"> +<!ENTITY contribute.label "Bidra till Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Blockera ram"> +<!ENTITY blocked.tooltip "Blockerade objekt på denna sida:"> +<!ENTITY hideplaceholders.label "Dölj platshållare för blockerade element"> +<!ENTITY showinstatusbar.label "Visa i statusfältet"> +<!ENTITY sidebar.title "Blockerbara objekt på denna sida"> +<!ENTITY options.label "Alter&nativ"> +<!ENTITY context.object.label "Adblock Plus: Blockera objekt"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Återaktivera på denna sida"> +<!ENTITY filters.tooltip "Mest aktiva filter:"> +<!ENTITY closesidebar.label "Stäng listan över blockerbara objekt"> +<!ENTITY showintoolbar.label "Visa i verktygs&fältet"> +<!ENTITY status.tooltip "Status:"> +<!ENTITY context.media.label "Adblock Plus: Blockera ljud/video"> +<!ENTITY subscription.update.label "Uppdatera filter"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/sendReport.dtd new file mode 100644 index 0000000..36e35d5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Ångra"> +<!ENTITY issues.disabledgroups.description "Följande filterprenumerationer/filtergrupper är inaktiverade, men kan trots det påverka denna sida:"> +<!ENTITY showData.label "Visa rapportdata"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus blockerar alltför &mycket"> +<!ENTITY issues.change.description "Your configuration has been changed. Var vänlig uppdatera sidan för att testa ändringarna och skicka in en rapport om problemet inte har blivit löst trots förändringarna."> +<!ENTITY email.label "&E-Post:"> +<!ENTITY issues.openPreferences.label "Öppna filterinställningarna"> +<!ENTITY sendPage.confirmation "Din rapport har sparats. Du kan nå den på följande adress:"> +<!ENTITY copyLink.label "&Kopiera rapportlänk"> +<!ENTITY issues.nofilters.description "Adblock Plus blockerar ingenting på den aktuella sidan. Problemet du har observerat har sannolikt ingenting att göra med Adblock Plus."> +<!ENTITY sendPage.knownIssue "Problemet du rapporterade är antagligen redan känt. Mer information:"> +<!ENTITY typeSelector.other.description "Välj detta alternativ om du misstänker ett problem med själva tillägget Adblock Plus, snarare än med dess filter."> +<!ENTITY issues.disabledgroups.enable.label "Aktivera filterprenumeration/filtergrupp"> +<!ENTITY typeWarning.override.label "&Jag förstår och vill skicka in rapporten i alla fall"> +<!ENTITY issues.disabled.enable.label "Aktivera Adblock Plus"> +<!ENTITY update.fixed.description "Uppdateringarna till dina filterprenumerationer löste troligtvis problemet du rapporterade. Var vänlig och uppdatera den berörda sidan och försök igen, tryck Skicka på nytt om ditt problem kvarstår."> +<!ENTITY anonymous.label "Skick&a in anonymt"> +<!ENTITY reloadButton.label "&Uppdatera sidan"> +<!ENTITY recentReports.clear.label "&Ta bort alla rapporter"> +<!ENTITY typeSelector.description "Denna dialog kommer att guida dig igenom alla steg som krävs för att skicka in en problemrapport för Adblock Plus. Först och främst måste du välja den typ av problem som du upplever på denna sida:"> +<!ENTITY screenshot.remove.label "Ta b&ort känslig data"> +<!ENTITY issues.ownfilters.description "Några av de filter som tillämpas på denna sida är användardefinierade. Var vänlig inaktivera de filter som kan ha orsakat problemet:"> +<!ENTITY update.inProgress.description "Adblock Plus behöver uppdatera dina filterprenumerationer för att kontrollera att ditt problem inte redan är löst."> +<!ENTITY sendPage.retry.label "Skicka igen"> +<!ENTITY data.label "Ra&pportdata:"> +<!ENTITY recentReports.label "Dina senaste inskickade rapporter"> +<!ENTITY typeWarning.description "Du har angivit att du vill rapportera ett allmänt problem med Adblock Plus snarare än ett problem med filtren. Var vänlig observera att sådana problem helst skall rapporteras i [link]Adblock Plus webbforum[/link]. Du bör endast använda problemrapportören för att göra ett tillägg till en befintlig diskussion, eftersom ingen kommer att märka din rapport om du inte ger dem en länk till den. Den automatiskt genererade länken kommer att bli tillgänglig efter att rapporten har skickats in."> +<!ENTITY issues.disabled.description "Adblock Plus är inaktiverat, det kommer inte att blockera någonting i sitt nuvarande tillstånd."> +<!ENTITY attachExtensions.label "Bifoga en lista över aktiverade till&ägg till rapporten ifall en tilläggskonflikt är orsaken till problemet"> +<!ENTITY issues.nosubscriptions.add.label "Lägg till filterprenumeration"> +<!ENTITY issues.disabledfilters.enable.label "Aktivera filter"> +<!ENTITY issues.override.label "&Konfigurationen är korrekt, fortsätt med rapporten"> +<!ENTITY issues.nosubscriptions.description "Du verkar inte prenumerara på något av de fördefinierade filterlistor som automatiskt tar bort icke önskvärt innehåll från webbplatser."> +<!ENTITY typeSelector.falsePositive.description "Välj detta alternativ om sidan saknar viktigt innehåll, visas på ett felaktigt sätt eller inte fungerar som den skall. Du kan ta reda på huruvida Adblock Plus är orsaken till problemet genom att tillfälligtvis inaktivera det."> +<!ENTITY typeSelector.other.label "&Annat problem"> +<!ENTITY emailComment.label "Vi uppmanar dig att ange en giltig e-postadress så att vi kan kontakta dig om det finns frågor om er rapport. Det tillåter oss att erkänna era bidrag och prioritera dem högre."> +<!ENTITY issues.whitelist.remove.label "Återaktivera Adblock Plus för denna sida"> +<!ENTITY outdatedSubscriptions.description "De följande filterprenumerationerna har inte uppdaterats på åtminstone två veckor. Var vänlig och uppdatera dessa filterprenumerationer innan en rapport skickas, problemet kan redan vara löst."> +<!ENTITY dataCollector.description "Var vänlig vänta några ögonblick medan Adblock Plus samlar in nödvändig data."> +<!ENTITY sendButton.label "Ski&cka rapport"> +<!ENTITY comment.label "&Kommentar (valfritt):"> +<!ENTITY sendPage.errorMessage "Det gick inte att skicka rapporten. Felkod: "?1?". Var vänlig säkerställ att du är ansluten till Internet och försök sedan igen. Om problemet kvarstår, vänligen begär hjälp i [link]Adblock Plus webbforum[/link]."> +<!ENTITY showRecentReports.label "Visa senaste inskickade rapporter"> +<!ENTITY commentPage.heading "Ange kommentar"> +<!ENTITY update.start.label "Starta uppdatering nu"> +<!ENTITY issues.disabledfilters.description "Följande filter är inaktiverade, men kan trots det påverka denna sida:"> +<!ENTITY screenshot.description "Samma sida kan uppfattas olika av olika personer. Att bifoga en skärmdump till din rapport kan hjälpa oss att förstå problemet. Du kan ta bort delar som innehåller känslig information så väl som märka ut områden där problemet är tydligt. För att göra det, klicka på motsvarande knapp och markera en sektion av bilden med din mus."> +<!ENTITY screenshot.attach.label "&Bifoga en bild av sidan till rapporten"> +<!ENTITY issues.whitelist.description "Adblock Plus är för närvarande inaktiverat för sidan som du rapporterar. Var vänlig återaktivera det och uppdatera sidan innan rapporten skickas in, för att underlätta utredningen av detta problem."> +<!ENTITY typeSelector.falseNegative.label "Ad&block Plus blockerar inte en annons"> +<!ENTITY typeSelector.heading "Välj problemtyp"> +<!ENTITY anonymity.warning "Vi kommer inte att kunna kontakta er och er rapport kan få en lägre prioritering."> +<!ENTITY wizard.title "Rapportera problem"> +<!ENTITY issues.ownfilters.disable.label "Inaktivera filter"> +<!ENTITY commentPage.description "Textfältet nedan låter dig ange en kommentar för att hjälpa oss förstå problemet. Detta steg är valfritt, men rekommenderas om problemet inte är tydligt. Du kan även granska rapportdatan innan den skickas."> +<!ENTITY comment.lengthWarning "Längden på din kommentar överskrider 1 000 tecken. Endast de första 1 000 tecknen kommer att skickas."> +<!ENTITY typeSelector.falseNegative.description "Välj detta alternativ om en annons visas trots att Adblock Plus är aktiverat."> +<!ENTITY sendPage.waitMessage "Var vänlig vänta medan Adblock Plus skickar ing din rapport."> +<!ENTITY dataCollector.heading "Välkommen till problemrapportören"> +<!ENTITY screenshot.heading "Bifoga skärmdump"> +<!ENTITY sendPage.heading "Skicka rapport"> +<!ENTITY issues.subscriptionCount.description "Det verkar som att du prenumererar på alldeles för många filterprenumerationer. Den konfigurationen rekommenderas inte eftersom sannolikheten att drabbas av problem ökar. Vi kan heller inte acceptera din problemrapport eftersom det inte står klart vilken filterprenumerationsskapare som måste vidta åtgärder. Var vänlig ta bort alla utom de absolut nödvändiga filterprenumerationerna och testa om problemet kvarstår."> +<!ENTITY screenshot.mark.label "&Märk ut problemet"> +<!ENTITY privacyPolicy.label "Sekretesspolicy"> +<!ENTITY issues.description "Adblock Plus har upptäckt problem med din konfiguration som kan vara orsaken till detta problem eller som kommer att försvåra utredningen av rapporten."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/sidebar.dtd new file mode 100644 index 0000000..e159fbe --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Markera objektets ram"> +<!ENTITY address.label "Adress"> +<!ENTITY context.open.label "Öppna i ny flik"> +<!ENTITY type.label "Typ"> +<!ENTITY tooltip.filterSource.label "Filterkälla:"> +<!ENTITY noitems.label "Inget att blockera"> +<!ENTITY filter.label "Filtrera"> +<!ENTITY tooltip.size.label "Storlek:"> +<!ENTITY reattach.label "Koppla ihop"> +<!ENTITY search.label "S&ök:"> +<!ENTITY docDomain.thirdParty "(tredje part)"> +<!ENTITY filterSource.label "Filterkälla"> +<!ENTITY tooltip.docDomain.label "Dokumentkälla:"> +<!ENTITY context.copy.label "Kopiera objektets adress"> +<!ENTITY tooltip.type.label "Typ:"> +<!ENTITY context.disablefilter.label "Inaktivera filtret ?1?"> +<!ENTITY context.copyFilter.label "Kopiera filter"> +<!ENTITY context.block.label "Blockera detta objekt"> +<!ENTITY context.enablefilter.label "Återaktivera filtret ?1?"> +<!ENTITY detach.label "Koppla från"> +<!ENTITY whitelisted.label "Undantagen sida"> +<!ENTITY context.disablefilteronsite.label "Inaktivera detta filter på ?1?"> +<!ENTITY detached.title "Adblock Plus: Blockeringsbara objekt (frånkopplad)"> +<!ENTITY docDomain.firstParty "(första part)"> +<!ENTITY tooltip.type.whitelisted "(undantagen)"> +<!ENTITY tooltip.filter.label "Filter som används:"> +<!ENTITY tooltip.filter.disabled "(inaktiverat)"> +<!ENTITY context.editfilter.label "Blockeringsfilter är på"> +<!ENTITY tooltip.type.blocked "(blockerad)"> +<!ENTITY size.label "Storlek"> +<!ENTITY context.whitelist.label "Lägg till undantag för objekt"> +<!ENTITY context.selectAll.label "Markera alla"> +<!ENTITY state.label "Tillstånd"> +<!ENTITY docDomain.label "Dokumentkälla"> +<!ENTITY tooltip.address.label "Adress:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/subscriptionSelection.dtd new file mode 100644 index 0000000..d096848 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/sv-SE/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "L&ägg även till filterprenumerationen "?1?""> +<!ENTITY list.download.failed "Adblock Plus kunde inte hämta listan med filterprenumerationer."> +<!ENTITY list.download.retry "Försök igen"> +<!ENTITY title.label "&Rubrik för prenumeration:"> +<!ENTITY list.download.website "Visa webbsidan"> +<!ENTITY supplementMessage "Denna filterprenumeration bör användas med filterprenumerationen "?1?", som för närvarande inte används."> +<!ENTITY viewList.label "Visa filter"> +<!ENTITY visitHomepage.label "Besök webbsidan"> +<!ENTITY addSubscription.label "Lägg till filterprenumeration"> +<!ENTITY dialog.title "Lägg till filterprenumeration för Adblock Plus"> +<!ENTITY location.label "Plats &för filter:"> +<!ENTITY fromWeb.description "Var vänlig bekräfta att du vill lägga till denna filterprenumeration. Du kan ändra rubrik eller plats innan du lägger till den."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/composer.dtd new file mode 100644 index 0000000..8116b1f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "&ที่ท้ายๆของที่อยู่"> +<!ENTITY domainRestriction.label "จำกั&ดโดเมน:"> +<!ENTITY collapse.default.no.label "ใช้ค่าเริ่มต้น(ไม่ใช่)"> +<!ENTITY firstParty.label "First-party เท่านั้น"> +<!ENTITY preferences.label "แสดงตัวกรองที่มี..."> +<!ENTITY pattern.label "ดูรูปแบบ"> +<!ENTITY thirdParty.label "Third-party เท่านั้น"> +<!ENTITY filter.label "ตัวกรองใหม่:"> +<!ENTITY collapse.label "การบล็อกที่ล้&มเหลว:"> +<!ENTITY match.warning "แบบรูปที่คุณเพิ่มเข้ามาไม่สัมพันธ์กับที่อยู่ที่จะบล็อกหรือไม่บล็อก มันจะไม่มีผลใด ๆ"> +<!ENTITY anchor.start.label "ที่ห&น้าๆของที่อยู่"> +<!ENTITY matchCase.label "&จับคู่"> +<!ENTITY custom.pattern.label "&ปรับเอง:"> +<!ENTITY unselectAllTypes.label "ไม่เลือก"> +<!ENTITY type.whitelist.label "ข้อยกเว้น"> +<!ENTITY regexp.warning "รูปแบบที่คุณป้อนเข้าจะถูกแปลเป็นการแสดงออกทั่วไป การแสดงออกทั่วไปมากๆจะทำให้การเข้าเว็บช้าลง ถ้าคุณไม่ตั้งใจจะใช้การแสดงออกทั่วไปให้ใส่สัญลักษณ์ * ที่ท้ายรูปแบบ"> +<!ENTITY dialog.title "เพิ่มกฎตัวกรอง Adblock Plus"> +<!ENTITY basic.label "มุมมองพื้นฐาน"> +<!ENTITY type.filter.label "การปิดกั้นตัวกรอง"> +<!ENTITY types.label "ใช้งานกับชนิด:"> +<!ENTITY shortpattern.warning "รูปแบบที่คุณป้อนเข้าสั้นเกินกว่าจะใช้ให้เหมาะสม รูปแบบมากๆจะทำให้เข้าเว็บช้า แนะนำให้ใช้รูปแบบยาวๆสำหรับตัวกรองนี้"> +<!ENTITY collapse.yes.label "ใช่"> +<!ENTITY anchors.label "รับเฉพาะรูปแบบ:"> +<!ENTITY collapse.default.yes.label "ใช้ค่าเริ่มต้น(ใช่)"> +<!ENTITY domainRestriction.help "ระบุโดเมนหนึ่งหรือหลายแห่งให้คั่นด้วยสัญลักษณ์ "|" ตัวกรองจะใช้งานบนโดเมนเหล่านี้เท่านั้น ถ้าไม่ต้องการใช้โดเมนใดให้ใส่สัญลักษณ์ "~" หน้าชื่อโดเมน"> +<!ENTITY accept.label "เพิ่มตัวกรอง"> +<!ENTITY options.label "ตัวเลือก"> +<!ENTITY disabled.warning "Adblock Plus ถูกปิดใช้งานอยู่ แต่คุณยังสามารถเพิ่มตัวกรองได้ แต่ว่าจะยังไม่ถูกนำไปใช้งานจนกว่าคุณจะ[link]เปิดใช้งาน Adblock Plus[/link] ก่อน"> +<!ENTITY anchor.start.flexible.label "ส่ว&นต้นของชื่อโดเมน"> +<!ENTITY collapse.no.label "ไม่ใช่"> +<!ENTITY selectAllTypes.label "เลือกทั้งหมด"> +<!ENTITY advanced.label "มุมมองละเอียด"> +<!ENTITY pattern.explanation "รูปแบบ (pattern) สามารถเป็นส่วนใดส่วนหนึ่งของที่อยู่ สัญลักษณ์ * เป็นอักขระใดๆ ตัวกรองจะถูกใช้งานกับที่อยู่ที่เหมาะสมกับตัวกรองเท่านั้น"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/filters.dtd new file mode 100644 index 0000000..9e27ded --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/filters.dtd @@ -0,0 +1,73 @@ +<!ENTITY restore.custom.warning "ตัวกรองแบบกำหนดเองของคุณทั้งหมดจะถูกแทนที่ โดยเนื้อหาของไฟล์ที่เลือกไว้ คุณต้องดำเนินการต่อหรือไม่"> +<!ENTITY slow.column "ทำให้ตัวกรอ&งช้าลง"> +<!ENTITY enabled.column "เ&ปิดการใช้งาน"> +<!ENTITY subscription.lastDownload.checksumMismatch "ล้มเหลว checksum จับผิดคู่"> +<!ENTITY noFiltersInGroup.text "กลุ่มที่เลือกว่างเปล่า"> +<!ENTITY subscription.actions.label "การกระทำ"> +<!ENTITY filter.selectAll.label "เลือกทั้งหมด"> +<!ENTITY backupButton.label "การสำรองข้อมูลแล&ะคืนค่า"> +<!ENTITY restore.minVersion.warning "คำเตือน: ไฟล์ที่ถูกสร้างขึ้นด้วย Adblock Plus เป็นรุ่นใหม่กว่า คุณควรปรับปรุง Adblock Plus ให้เป็นรุ่นล่าสุดก่อนที่จะกู้คืนข้อมูลจากไฟล์นี้"> +<!ENTITY restore.error "ไม่สามารถประมวลผลแฟ้มข้อมูล บางทีอาจไม่ใช่แฟ้มสำรองของ Adblock Plus"> +<!ENTITY sort.ascending.label "&จัดลำดับ A > Z"> +<!ENTITY sort.label "&จัดลำดับ"> +<!ENTITY subscription.source.label "รายการตัวกรอง"> +<!ENTITY hitcount.column "&นับ"> +<!ENTITY noFilters.text "คุณยังไม่มีตัวกรองแบบกำหนดเอง"> +<!ENTITY backup.custom.title "ตัวกรองแบบกำหนดเองเท่านั้น"> +<!ENTITY subscription.external.label "ปรับปรุงโดยนามสกุลอื่น"> +<!ENTITY subscription.delete.label "ลบ"> +<!ENTITY noGroupSelected.text "คุณต้องเลือกกลุ่มตัวกรองก่อนที่ตัวกรองนั้นสามารถแสดงผลได้"> +<!ENTITY filter.cut.label "ตัด"> +<!ENTITY restore.default.label "คืนค่าการสำรองข้อมูลจาก ?1?"> +<!ENTITY subscription.lastDownload.inProgress "กำลังดาวน์โหลด..."> +<!ENTITY subscriptions.tab.label "นามข้างท้ายตัวกรอง"> +<!ENTITY sort.descending.label "จ&ัดลำดับ Z > A"> +<!ENTITY filters.remove.warning "คุณต้องการเอาตัวกรองที่เลือกไว้ทั้งหมดหรือไม่"> +<!ENTITY filter.delete.label "ลบ"> +<!ENTITY addSubscriptionAdd.label "เพิ่ม"> +<!ENTITY viewMenu.label "มุมมอง"> +<!ENTITY subscription.lastDownload.unknown "ไม่มี"> +<!ENTITY addSubscriptionCancel.label "ยกเลิก"> +<!ENTITY subscription.enabled.label "เปิดใช้งาน"> +<!ENTITY noSubscriptions.text "คุณยังไม่ได้เพิ่มนามข้างท้ายตัวกรองใดๆ Adblock Plus จะไม่บล๊อกเหตุการณ์ใดๆ โดยที่ไม่มีตัวกรอง กรุณาใช้ "เพิ่มนามข้างท้าย" เพื่อ + เพิ่มการดำเนินการ"> +<!ENTITY subscription.update.label "ปรับปรุงตัวกรอง"> +<!ENTITY dialog.title "ตั้งค่าตัวกรอง Adblock Plus"> +<!ENTITY addFilter.label "เพิ่มตัวกรอ&ง"> +<!ENTITY subscription.minVersion.warning "การใช้นามข้างท้ายตัวกรองนี้ต้องมี Adblock Plus รุ่นใหม่ที่กว่า คุณควรปรับปรุงเป็น Adblock Plus รุ่นล่าสุด"> +<!ENTITY subscription.lastDownload.invalidURL "ล้มเหลว ไม่มีที่อยู่ที่ถูกต้อง"> +<!ENTITY backup.error "มีข้อผิดพลาดในการเขียนตัวกรองไปยังไฟล์ ตรวจสอบให้แน่ใจว่า ไฟล์ที่เกี่ยวข้องนี้ไม่ได้ป้องกันการเขียน หรืออยู่ในระหว่างใช้งานโดยโปรแกรมประยุกต์อื่นๆ"> +<!ENTITY filter.moveUp.label "ย้ายขึ้น"> +<!ENTITY addGroup.label "เพิ่มกลุ่มตั&วกรอง"> +<!ENTITY filter.edit.label "แก้ไข"> +<!ENTITY subscription.showHideFilters.label "แสดง/ซ่อนตัวกรอง"> +<!ENTITY acceptableAds2.label "อนุญ&าตให้มีโฆษณาบางอย่างที่ไม่ต้องการรบกวน"> +<!ENTITY addSubscriptionOther.label "เพิ่มนามข้างท้าย"> +<!ENTITY close.label "ปิด"> +<!ENTITY sort.none.label "&ไม่จัดลำดับ"> +<!ENTITY filter.actions.label "ดำเนินการตัวกรอง"> +<!ENTITY filter.copy.label "คัดลอก"> +<!ENTITY filter.moveDown.label "ย้ายลง"> +<!ENTITY filter.resetHitCounts.label "ตั้งค่าสถิติการเข้าชมใหม่"> +<!ENTITY readMore.label "อ่านเพิ่มเติม"> +<!ENTITY subscription.moveUp.label "ย้ายขึ้น"> +<!ENTITY addSubscription.label "เพิ่&มนามข้างท้ายตัวกรอง"> +<!ENTITY subscription.homepage.label "โฮมเพจ"> +<!ENTITY backup.complete.title "ตัวกรองและนามข้างท้ายทั้งหมด"> +<!ENTITY restore.own.label "คืนค่าการสำรองข้อมูลของตนเอง"> +<!ENTITY restore.complete.warning "กำหนดลักษณะการกรองของคุณทั้งหมดจะถูกแทนที่ โดยเนื้อหาของไฟล์ที่เลือกไว้ คุณต้องดำเนินการต่อหรือไม่"> +<!ENTITY filters.tab.label "ตัวกรองแบบกำหนดเอง"> +<!ENTITY backup.label "สร้างการสำรองข้อมูลใหม่"> +<!ENTITY find.label "ค้นห&า"> +<!ENTITY subscription.moveDown.label "ย้ายลง"> +<!ENTITY subscription.lastDownload.connectionError "ล้มเหลว การดาวน์โหลดล้มเหลว"> +<!ENTITY subscription.lastDownload.success "สำเร็จ"> +<!ENTITY subscription.lastDownload.invalidData "ล้มเหลว ไม่มีรายชื่อตัวกรองที่ถูกต้อง"> +<!ENTITY filter.paste.label "วาง"> +<!ENTITY subscription.disabledFilters.enable "เปิดใช้งาน การปิดใช้งานตัวกรอง"> +<!ENTITY lasthit.column "กด&ล่าสุด"> +<!ENTITY subscription.editTitle.label "แก้ไขชื่อเรื่อง"> +<!ENTITY subscription.disabledFilters.warning "บางตัวกรองในการบอกรับสมาชิกนี้ถูกปิดใช้งาน"> +<!ENTITY filter.column "กฎ&ตัวกรอง"> +<!ENTITY subscription.lastDownload.label "ดาวน์โหลดล่าสุด:"> +<!ENTITY viewList.label "มุมมองรายการ"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/firstRun.properties new file mode 100644 index 0000000..f9d617a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_toggle_off=ไม่ทำงาน +firstRun_feature_tracking=ปิดระบบติดตามการใข้งาน +firstRun_feature_social=ลบปุ่มสื่อสังคมออก +firstRun_title=กาติดตั้ง Adblock Plus เสร็จสมบูรณ์ +firstRun_feature_malware=บล็อกมัลแวร์ +firstRun_toggle_on=ทำงาน +firstRun_dataCorruptionWarning=ไม่ให้หน้านี้แสดงอีกครั้ง <a>คลิกที่นี้</a> +firstRun_acceptableAdsHeadline=โฆษณาที่น่ารำคาญจะถูกปิดกั้น +firstRun_share=บอกเพื่อนของคุณ +firstRun_filterlistsReinitializedWarning=ดูเหมือนว่าปัญหาจะเกิดจากตัวกรองทั้งหมดถูกลบออกไปแล้วไม่สามารถคืนค่าจากตัวสำรองข้อมูลได้ ดังนั้นเรามีตัวรีเซ็ตตัวกรองที่ได้รับการยอมรับ กรุณาตรวจสอบรายการตัวกรองโฆษณาของคุณืั้ <a>ตัวเลือก Adblock Plus</a> +firstRun_feature_malware_description=ทำให้ท่องเว็บได้ปลอดภัยยิ่งขึ้น โดยการบล็อกเว็บที่มีมัลแวร์ที่รู้จัก +firstRun_features=Adblock Plus สามารถทำได้มากกกว่าบล็อกโฆษณา +firstRun_donate=บริจาค +firstRun_donate_label=สนับสนุนโปรเจ็คของเรา +firstRun_legacySafariWarning=คุณกำลังใช้เวอร์ชั่นเก่าบน Safari ที่ไม่ได้รับการสนับสนุนจาก Adblock Plus จะทำให้ทำงานผิดพลาดได้ เราขอแนะนำให้คุณอัพเดต Safari เป็นเวอร์ชั่น 6.1.1 หรือรุ่นที่สูงกว่า (บน OS X 10.8 Mountain Lion) หรือ Safari 7.0.1 หรือสูงกว่า (บน OS X 10.9 Mavericks) หรือใช้เวอร์ชั่นล่าสุดบน Mozilla Firefox, Google Chrome และ Opera +firstRun_feature_tracking_description=Browse privately by disabling tracking - hiding your tracks from ad companies that would track your every move. +firstRun_acceptableAdsExplanation=We'd like to encourage websites to use straightforward, unobtrusive advertising. That's why we've established <a>strict guidelines</a> to identify acceptable ads, which are shown under default settings. If you still want to block every ad you can <a>disable</a> this in a few seconds. +firstRun_contributor_credits=Contributor Credits +firstRun_share_headline=<a>Give us a hand</a> in making the web a better place +firstRun_feature_social_description=Automatically rid your browsing experience of social media buttons, such as the Facebook Like, which appear on web pages and track your behavior. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/global.properties new file mode 100644 index 0000000..c878f50 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=ไม่มีรายการที่บล็อกได้ในหน้าล่าสุด +action3_tooltip=คลิกเพื่อเปิดหรือปิดใช้งาน Adblock Plus +type_label_script=สคริปต์ +filter_elemhide_nocriteria=ไม่มีเกณฑ์ที่ระบุที่จำวัตถุที่จะซ่อน +blockingGroup_title=กฎการบล็อกโฆษณา +whitelisted_tooltip=Adblock Plus เปิดอยู่แต่ไม่ใช้กับหน้านี้ +type_label_stylesheet=รูปแบบเอกสาร +blocked_count_tooltip=?1? จาก ?2? +type_label_font=แบบอักษร +type_label_popup=หน้าต่างแบบผุดขึ้น(pop-up) +filter_regexp_tooltip=ตัวกรองนี้ก็เป็นการแสดงออกทั่วไปหรือสั้นเกินกว่าจะใช้ให้เหมาะสม ถ้ามีตัวกรองประเภทนี้มากเกินไปจะทำให้การเข้าเว็บช้าได้ +action0_tooltip=คลิกเพื่อนำไปที่รายการเมนู คลิกเมาส์กลางเพื่อเปิดหรือปิดใช้งาน +whitelisted_page=Adblock Plus ถูกปิดการใช้งานในหน้าล่าสุด +remove_group_warning=คุณแน่ใจว่าต้องการจะลบกลุ่มนี้? +action1_tooltip=คลิกเพื่อเปิดหรือปิดสิ่งของ คลิกเมาส์กลางเพื่อเปิดหรือปิดใช้งาน +type_label_xmlhttprequest=คำร้องขอ XML +active_tooltip=Adblock Plus เปิดใช้งานอยู่ นามข้างท้ายตัวกรอง ?1? อย่าง และตัวกรองกำหนดเอง ?2? ตัวเปิดใช้งานอยู่ +type_label_document=เอกสาร +type_label_object_subrequest=subrequest วัตถุ +whitelistGroup_title=ข้อยกเว้นของกฎ +disabled_tooltip=Adblock Plus ถูกปิดการใช้งาน +filter_elemhide_duplicate_id=มีเฉพาะรหัสประจำตัววัตถุเดียวเท่านั้นที่ซ่อนที่สามารถระบุได้ +type_label_object=วัตถุ +action2_tooltip=คลิกเพื่อเปิดการปรับแต่ง คลิกเมาส์กลางเพื่อเปิดหรือปิดใช้งาน +type_label_subdocument=เฟรม +clearStats_warning=สิ่งนี้จะตั้งค่าใหม่ทั้งหมดของตัวกรองการเข้าชมสถิติและปิดใช้งานการตรวจนับปริมาณตัวกรอง คุณต้องดำเนินการต่อหรือไม่ +blocked_count_addendum=(และยังมีบัญชีขาว ?1? อย่าง ซ่อนอยู่ ?2? อย่าง) +subscription_invalid_location=ตำแหน่งรายชื่อตัวกรองไม่ใช่ทั้งยูอาร์แอลที่ถูกต้องและชื่อไฟล์ที่ถูกต้อง +type_label_image=รูปภาพ +remove_subscription_warning=คุณแน่ใจหรือว่าต้องการลบนามข้างท้ายนี้ +type_label_other=อื่นๆ +mobile_menu_enable=ABP: เปิดใช้งาน +type_label_media=เสียง/ภาพ +mobile_menu_disable_site=ABP: ปิดใช้งาน ?1? +elemhideGroup_title=กฎการซ่อนองค์ประกอบ +mobile_menu_enable_site=ABP: เปิดใช้งาน ?1? +type_label_elemhide=ซ่อน +newGroup_title=กลุ่มตัวกรองใหม่ +default_dialog_title=Adblock Plus +notification_antiadblock_title=Hide targeted messages? +notification_antiadblock_message=This site has been known to show targeted messages to Adblock Plus users. Do you want Adblock Plus to hide targeted messages? diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/overlay.dtd new file mode 100644 index 0000000..57feaca --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY sync.label "เชื่อ&มข้อมูลการตั้งค่า Adblock Plus"> +<!ENTITY whitelist.site.label "ปิดการใช้งาน ?1?"> +<!ENTITY filters.label "ตั้งค่าตัวกร&อง"> +<!ENTITY disable.label "ปิดการใช้งานทุกที่"> +<!ENTITY objecttab.title "บล็อก"> +<!ENTITY objecttab.tooltip "คลิกที่นี่เพื่อบล็อกวัตถุนี้ด้วย Adblock Plus"> +<!ENTITY menuitem.label "&ปรับแต่ง Adblock Plus"> +<!ENTITY objecttabs.label "แสดงแท็&บบนแฟลชและจาวา"> +<!ENTITY sendReport.label "&รายงานปัญหาที่พบในหน้านี้"> +<!ENTITY whitelist.page.label "ปิดการใช้งานเฉพาะหน้านี้"> +<!ENTITY context.image.label "Adblock รูปภาพ"> +<!ENTITY counthits.label "นับจำนวนตัว&กรองฮิต"> +<!ENTITY opensidebar.label "เปิดราย&การที่บล็อกได้"> +<!ENTITY contribute.label "เข้ามีส่วนร่วมกับ Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock เฟรม"> +<!ENTITY blocked.tooltip "สิ่งที่บล็อกในหน้านี้:"> +<!ENTITY hideplaceholders.label "ซ่อน&ตำแหน่งตัวยึดตำแหน่งขององค์ประกอบที่ถูกบล็อคไว้"> +<!ENTITY showinstatusbar.label "แ&สดงในแถบสถานะ"> +<!ENTITY sidebar.title "รายการที่บล็อกได้ในหน้าล่าสุด"> +<!ENTITY options.label "ตั&วเลือก"> +<!ENTITY context.object.label "Adblock วัตถุ"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: เปิดใช้งานอีกครั้งในหน้านี้"> +<!ENTITY filters.tooltip "ตัวกรองที่ใช้งานมากที่สุด:"> +<!ENTITY closesidebar.label "ปิดราย&การที่บล็อกได้"> +<!ENTITY showintoolbar.label "แสดงในแถบเ&ครื่องมือ"> +<!ENTITY status.tooltip "สถานะ:"> +<!ENTITY context.media.label "Adblock Plus: บล็อกเสียง/วีดิทัศน์"> +<!ENTITY subscription.update.label "ปรับปรุงตัวกรอง"> +<!ENTITY notification.button.yes "&Yes"> +<!ENTITY notification.button.no "&No"> +<!ENTITY notification.button.close "&Close"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/sendReport.dtd new file mode 100644 index 0000000..abddb2a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/sendReport.dtd @@ -0,0 +1,66 @@ +<!ENTITY screenshot.undo.label "เรี&ยกคืน"> +<!ENTITY issues.disabledgroups.description "คำอธิบายตัวกรองหรือกลุ่มของตัวกรองต่อไปนี้ปิดใช้งานแล้ว อาจจะส่งผลกระทบต่อหน้านี้:"> +<!ENTITY showData.label "แสดงข้อมูลรายงาน"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus &มีการบล็อกมากเกินไป"> +<!ENTITY issues.change.description "การตั้งค่าเปลี่ยนแปลงแล้ว กรุณาเรียกหน้าปัจจุบันใหม่เพื่อทดสอบความเปลี่ยนแปลงและส่งรายงานถ้าปัญหายังไม่ได้รับการแก้ไข"> +<!ENTITY issues.openPreferences.label "เปิดการปรับแต่งตัวกรอง"> +<!ENTITY sendPage.confirmation "รายงานได้รับการบันทึกแล้ว คุณเข้าดูได้ตามที่อยู่ต่อไปนี้:"> +<!ENTITY copyLink.label "&คัดลอกลิงก์รายงาน"> +<!ENTITY issues.nofilters.description "Adblock Plus ไม่ได้บล็อกสิ่งใดเลยในหน้านี้ ปัญหาที่คุณรายงานไม่น่าจะเกี่ยวกับ Adblock Plus"> +<!ENTITY sendPage.knownIssue "ปัญหาที่คุณรายงานมีวิธีแก้ไขอยู่แล้ว ข้อมูลเพิ่มเติม:"> +<!ENTITY typeSelector.other.description "เลือกตัวเลือกนี้ถ้าคุณคิดว่าปัญหาเกิดจากตัว Adblock Plus เอง ไม่ใช่ตัวกรอง"> +<!ENTITY issues.disabledgroups.enable.label "เปิดใช้งานคำอธิบายตัวกรองหรือกลุ่มของตัวกรอง"> +<!ENTITY typeWarning.override.label "ฉันเข้าใจและพร้อมจะ&ส่งรายงาน"> +<!ENTITY issues.disabled.enable.label "เปิด Adblock Plus"> +<!ENTITY update.fixed.description "ตัวกรองของคุณน่าจะมีการอัพเดทการแก้ไขปัญหาที่คุณได้รายงานไว้ก่อนหน้านี้ กรุณาโหลดเว็บเพจและลองใหม่อีกครั้ง คุณสามารถดูรายงานของคุณได้อีกครั้ง หากพบปัญหาดังกล่าวอยู่"> +<!ENTITY reloadButton.label "&เรียกหน้าปัจจุบันใหม่"> +<!ENTITY recentReports.clear.label "&ลบรายงานทั้งหมด"> +<!ENTITY typeSelector.description "หน้าต่างนี้จะนำทางไปยังขั้นตอนที่ต้องการในการส่งรายงานปัญหาของ Adblock Plus กรุณาเลือกชนิดของปัญหาที่คุณพบในหน้านี้:"> +<!ENTITY screenshot.remove.label "&ลบข้อมูลที่ไม่อยากให้ใครเห็น"> +<!ENTITY issues.ownfilters.description "ตัวกรองบางตัวที่ใช้ในหน้านี้เป็นของผู้ใช้ กรุณาปิดตัวกรองที่อาจก่อให้เปิดปัญหา:"> +<!ENTITY update.inProgress.description "Adblock Plus ต้องการที่จะอัพเดทตัวกรองของคุณ เพื่อให้แน่ใจว่าปัญหาได้รับการแก้ไขแล้ว กรุณารอสักครู่..."> +<!ENTITY sendPage.retry.label "ส่งอีกครั้ง"> +<!ENTITY data.label "ข้อ&มูลรายงาน:"> +<!ENTITY recentReports.label "รายงานที่เพิ่งส่งของคุณ"> +<!ENTITY typeWarning.description "คุณระบุไว้ว่า คุณต้องการรายงานปัญหากับ Adblock Plus มากกว่าปัญหากับตัวกรอง ปัญหาดังกล่าวรายงานได้ดีที่สุดที่ [link]Adblock Plus forum[/link] คุณควรใช้ตัวรายงานปัญหาเพื่อสนับสนุนบทสนทนาที่มีอยู่ เพราะไม่มีใครจะเห็นรายงานของคุณจนกว่าคนส่งลิงก์ให้ จะมีลิงก์ให้อัตโนมัติหลังจากส่งรายงาน"> +<!ENTITY issues.disabled.description "Adblock Plus ถูกปิดการใช้งาน ซึ่งจะไม่มีการบล็อกใดๆ ทั้งสิ้น"> +<!ENTITY attachExtensions.label "แนบรายชื่อส่วนเสริมที่ใช้อยู่ไปกับรายงานในกร&ณีที่เกิดปัญหาส่วนเสริมชนกัน"> +<!ENTITY issues.nosubscriptions.add.label "เพิ่มคำอธิบายตัวกรอง"> +<!ENTITY issues.disabledfilters.enable.label "เปิดใช้งานตัวกรอง"> +<!ENTITY issues.override.label "การตั้งค่าถูกต้อง &ดำเนินการรายงานต่อไป"> +<!ENTITY issues.nosubscriptions.description "คุณไม่ได้เขียนคำอธิบายรายชื่อตัวกรองไว้ ซึ่งจะลบเนื้อหาที่ไม่ต้องการออกจากเว็บไซต์อัตโนมัติ"> +<!ENTITY typeSelector.falsePositive.description "เลือกตัวเลือกนี้ ถ้าหน้าเพจไม่มีเนื้อหาที่สำคัญ แสดงผลผิดหรือทำงานผิด คุณสามารถทดสอบว่า Adblock Plus เป็นต้นเหตุของปัญหาหรือไม่ โดยการทดลองปิดการใช้งานไว้ชั่วคราว"> +<!ENTITY typeSelector.other.label "ปั&ญหาอื่น"> +<!ENTITY issues.whitelist.remove.label "เปิดการใช้งาน Adblock Plus อีกครั้งในหน้านี้"> +<!ENTITY outdatedSubscriptions.description "รายการตัวกรองต่อไปนี้ยังไม่ได้รับการอัพเดทเป็นเวลาสองสัปดาห์แล้ว กรุณาอัพเดทรายการดังกล่าวก่อนที่จะส่งรายงานไป เพราะปัญหาอาจได้รับการแก้ไขเรียบร้อยแล้วก็เป็นได้"> +<!ENTITY dataCollector.description "กรุณารอสักครู่ระหว่างที่ Adblock Plus กำลังรวบรวมข้อมูล"> +<!ENTITY sendButton.label "ส่&งรายงาน"> +<!ENTITY comment.label "&ความคิดเห็น (ไม่ใส่ก็ได้):"> +<!ENTITY sendPage.errorMessage "การส่งรายงานผิดพลาด รหัส "?1?" กรุณาเชื่อมต่อกับอินเทอร์เน็ตและลองอีกครั้ง หากปัญหายังมีอยู่กรุณาขอความช่วยเหลือที่ [link]Adblock Plus forum[/link]"> +<!ENTITY showRecentReports.label "แสดงรายงานที่เพิ่งส่ง"> +<!ENTITY commentPage.heading "ใส่ความคิดเห็น"> +<!ENTITY update.start.label "เริ่มอัพเดทตอนนี้"> +<!ENTITY issues.disabledfilters.description "ตัวกรองต่อไปนี้ปิดใช้งานแล้ว อาจจะส่งผลกระทบต่อหน้านี้:"> +<!ENTITY screenshot.description "หน้าเดียวกันคนต่างกันอาจจะเห็นต่างกันได้ กรุณาแนบภาพหน้าจอมากับรายงานด้วย คุณสามารถลบส่วนที่ไม่ต้องการให้ใครเห็นและเน้นส่วนที่เป็นปัญหามาด้วย คลิกปุ่มที่เกี่ยวข้องและเลือกส่วนของรูปภาพด้วยเมาส์"> +<!ENTITY screenshot.attach.label "แน&บรูปภาพหน้าไปกับรายงาน"> +<!ENTITY issues.whitelist.description "Adblock Plus ไม่ได้เปิดใช้งานในหน้าเพจที่คุณรายงาน กรุณาเปิดการใช้งานอีกครั้งและเรียกหน้าปัจจุบันใหม่ก่อนส่งรายงานเพื่อช่วยสืบสวนปัญหานี้"> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus ไม่บล็อกโฆ&ษณา"> +<!ENTITY typeSelector.heading "เลือกชนิดของปัญหา"> +<!ENTITY wizard.title "รายงานปัญหา"> +<!ENTITY issues.ownfilters.disable.label "ปิดใช้งานตัวกรอง"> +<!ENTITY commentPage.description "ช่องว่างนี้ให้คุณใส่ความคิดเห็นเพื่อช่วยให้เราเข้าใจปัญหา ใส่หรือไม่ใส่ก็ได้ คุณสามารถทบทวนรายงานอีกครั้งก่อนส่งได้"> +<!ENTITY comment.lengthWarning "ความคิดเห็นยาวเกิน 1000 อักขระ ส่งได้แค่ 1000 อักขระแรกเท่านั้น"> +<!ENTITY typeSelector.falseNegative.description "เลือกตัวเลือกนี้ถ้ายังมีโฆษณาอยู่แม้ว่าใช้งาน Adblock Plus แล้ว"> +<!ENTITY sendPage.waitMessage "Adblock Plus กำลังส่งรายงาน กรุณารอ"> +<!ENTITY dataCollector.heading "ยินดีต้อนรับสู่การรายงานปัญหา"> +<!ENTITY screenshot.heading "แนบภาพหน้าจอ"> +<!ENTITY sendPage.heading "ส่งรายงาน"> +<!ENTITY issues.subscriptionCount.description "ดูเหมือนว่าคุณจะรับข้อมูลจากตัวกรองมากเกินไป การติดตั้งนี้จึงไม่แนะนำเพราะอาจทำให้มีปัญหามาก เราจะไม่รับรายงานปัญหาจากคุณเพราะไม่ทราบว่าปัญหามาจากตัวกรองตัวใด กรุณาลบออกเหลือแต่ตัวที่จำเป็นและทดสอบดูว่าปัญหาเกิดจากตัวใด"> +<!ENTITY screenshot.mark.label "เ&น้นส่วนที่เป็นปัญหา"> +<!ENTITY privacyPolicy.label "ความเป็นส่วนตัว"> +<!ENTITY issues.description "Adblock Plus ตรวจพบปัญหาการตั้งค่าของคุณที่อาจจะเกี่ยวกับปัญหานี้หรือที่ทำให้การสืบสวนรายงานยากขึ้น"> +<!ENTITY email.label "E&mail:"> +<!ENTITY anonymous.label "&Anonymous submission"> +<!ENTITY emailComment.label "We encourage you to enter a valid email address so that we can contact you if there are questions + about your report. It will also allow us to recognize your contributions and to prioritize them higher."> +<!ENTITY anonymity.warning "We won't be able to come back to you and will likely prioritize the report lower."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/sidebar.dtd new file mode 100644 index 0000000..9dc7457 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "ขอบของรายการแฟลช"> +<!ENTITY address.label "ที่อยู่"> +<!ENTITY context.open.label "เปิดในแท็บใหม่"> +<!ENTITY type.label "ชนิด"> +<!ENTITY tooltip.filterSource.label "ตัวกรองแหล่งที่มา:"> +<!ENTITY noitems.label "ไม่มีรายการที่บล็อคได้"> +<!ENTITY filter.label "ตัวกรอง"> +<!ENTITY tooltip.size.label "ขนาด:"> +<!ENTITY reattach.label "แนบกลับ"> +<!ENTITY search.label "&ค้นหา:"> +<!ENTITY docDomain.thirdParty "(เทิร์ดปาร์ตี้)"> +<!ENTITY filterSource.label "ตัวกรองต้นฉบับ"> +<!ENTITY tooltip.docDomain.label "แหล่งที่มาเอกสาร:"> +<!ENTITY context.copy.label "คัดลอกที่อยู่รายการ"> +<!ENTITY tooltip.type.label "ชนิด:"> +<!ENTITY context.disablefilter.label "ปิดตัวกรอง ?1?"> +<!ENTITY context.copyFilter.label "คัดลอกตัวกรอง"> +<!ENTITY context.block.label "บล็อครายการนี้"> +<!ENTITY context.enablefilter.label "เปิดตัวกรอง ?1? อีกครั้ง"> +<!ENTITY detach.label "แยกออก"> +<!ENTITY whitelisted.label "หน้าที่ถูกขึ้นบัญชีขาว"> +<!ENTITY context.disablefilteronsite.label "ปิดตัวกรองนี้บน ?1?"> +<!ENTITY detached.title "Adblock Plus: รายการที่บล็อกได้ (ถูกแยกออก)"> +<!ENTITY docDomain.firstParty "(เฟิร์สปาร์ตี้)"> +<!ENTITY tooltip.type.whitelisted "(ขึ้นบัญชีขาว)"> +<!ENTITY tooltip.filter.label "เป็นผลมาจากตัวกรอง:"> +<!ENTITY tooltip.filter.disabled "(ปิดการใช้งาน)"> +<!ENTITY context.editfilter.label "แก้ไขตัวกรองที่มีผล"> +<!ENTITY tooltip.type.blocked "(ถูกบล็อค)"> +<!ENTITY size.label "ขนาด"> +<!ENTITY context.whitelist.label "เพิ่มข้อยกเว้นสำหรับรายการ"> +<!ENTITY context.selectAll.label "เลือกทั้งหมด"> +<!ENTITY state.label "สถานะ"> +<!ENTITY docDomain.label "แหล่งที่มาเอกสาร"> +<!ENTITY tooltip.address.label "ที่อยู่:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/subscriptionSelection.dtd new file mode 100644 index 0000000..802aa7e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/th/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "เพิ่มนามข้างท้ายตั&วกรอง "?1?""> +<!ENTITY list.download.failed "Adblock Plus ไม่สามารถกู้คืนรายการนามข้างท้ายได้"> +<!ENTITY list.download.retry "ลองอีกครั้ง"> +<!ENTITY title.label "&ชื่อ:"> +<!ENTITY list.download.website "ดูเว็บไซต์"> +<!ENTITY supplementMessage "นามข้างท้ายตัวกรองนี้ตั้งใจไว้ใช้กับนามข้างท้ายตัวกรอง "?1?" ซึ่งคุณยังไม่ได้ใช้"> +<!ENTITY viewList.label "ดูตัวกรอง"> +<!ENTITY visitHomepage.label "เยี่ยมชมโฮมเพจ"> +<!ENTITY addSubscription.label "เพิ่มนามข้างท้ายตัวกรอง"> +<!ENTITY dialog.title "เพิ่มนามข้างท้ายตัวกรอง Adblock Plus"> +<!ENTITY location.label "ที่อยู่&รายชื่อตัวกรอง:"> +<!ENTITY fromWeb.description "กรุณายืนยันว่าคุณต้องการเพิ่มนามข้างท้ายตัวกรองนี้ คุณสามารถเปลี่ยนหัวเรื่องนามข้างท้ายหรือตำแหน่งก่อนเพิ่มเข้ามาได้"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/composer.dtd new file mode 100644 index 0000000..67be4e6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "adresin s&onunda"> +<!ENTITY domainRestriction.label "Alan a&dına kısıtlama:"> +<!ENTITY collapse.default.no.label "Öntanımlı kullan (hayır)"> +<!ENTITY firstParty.label "Yalnız b&irinci kişilerden"> +<!ENTITY preferences.label "Mevcut süzgeçleri &göster..."> +<!ENTITY pattern.label "Aranacak örnek"> +<!ENTITY thirdParty.label "Yalnız üçün&cü kişilerden"> +<!ENTITY filter.label "&Yeni süzgeç:"> +<!ENTITY collapse.label "Engellenenleri ka&pat:"> +<!ENTITY match.warning "Girdiğiniz örnek, engellenecek veya kara listeden çıkarılacak adresle eşleşmiyor ve üzerinde hiçbir etkisi olmayacak."> +<!ENTITY anchor.start.label "adresin &başında"> +<!ENTITY matchCase.label "&Büyük küçük harf duyarlı"> +<!ENTITY custom.pattern.label "&Özel:"> +<!ENTITY unselectAllTypes.label "Hiçbirini seçme"> +<!ENTITY type.whitelist.label "&Hariç tutma kuralı"> +<!ENTITY regexp.warning "Girdiğiniz örnek düzenli ifade olarak yorumlanacak. Adblock Plus tarafından doğru işlenemeyebilir ve taramayı yavaşlatabilir. Düzenli ifade olarak kullanmak istediğinizden emin değilseniz örneğin sonuna yıldız (*) işareti koyun."> +<!ENTITY dialog.title "Adblock Plus süzgeç kuralı ekle"> +<!ENTITY basic.label "Temel görünüm"> +<!ENTITY type.filter.label "Engelleme süzgeci"> +<!ENTITY types.label "Bu türlere uygula:"> +<!ENTITY shortpattern.warning "Girdiğiniz örnek en iyilemek için çok kısa ve bu tür örnekler taramayı yavaşlatabilir. Adblock Plus'ın bu süzgeci daha etkin işleyebilmesi için daha uzun bir satır seçmeniz tavsiye edilir."> +<!ENTITY collapse.yes.label "Evet"> +<!ENTITY anchors.label "Örneği sadece burada kabul et:"> +<!ENTITY collapse.default.yes.label "Öntanımlı kullan (evet)"> +<!ENTITY domainRestriction.help "Aralarına "|" simgesi koyarak bir ya da daha fazla alan adı belirtin. Böylece süzgeç sadece bu sitelerde uygulanacaktır. Alan adından önce "~" simgesi kullanılması, süzgecin o alan adında kullanılmaması gerektiği anlamına gelir."> +<!ENTITY accept.label "Süzgeç ekle"> +<!ENTITY options.label "Seçenekler"> +<!ENTITY disabled.warning "Adblock Plus şu an devre dışı. Yine de süzgeç ekleyebilirsiniz, ancak bunlar [link]Adblock Plus etkinleştirilene kadar[/link] uygulanmayacaktır."> +<!ENTITY anchor.start.flexible.label "alan adının &başında"> +<!ENTITY collapse.no.label "Hayır"> +<!ENTITY selectAllTypes.label "Tümünü seç"> +<!ENTITY advanced.label "Gelişmiş görünüm"> +<!ENTITY pattern.explanation "Bu örnek adresin herhangi bir bölümü olabilir ve * işareti joker görevi yapar. Süzgeç sadece örneğe uyan adreslere uygulanacak."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/filters.dtd new file mode 100644 index 0000000..8c7ac35 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/filters.dtd @@ -0,0 +1,74 @@ +<!ENTITY restore.custom.warning "Tüm isteğe bağlı süzgeçleriniz seçilen dosyanın içeriğiyle değiştirilecek. Devam etmek istiyor musunuz?"> +<!ENTITY slow.column "Ya&vaş süzgeçler"> +<!ENTITY enabled.column "Etkin"> +<!ENTITY subscription.lastDownload.checksumMismatch "Olmadı. Sağlama yapılamadı"> +<!ENTITY noFiltersInGroup.text "Seçili öbek boş"> +<!ENTITY subscription.actions.label "Eylemler"> +<!ENTITY filter.selectAll.label "Tümünü seç"> +<!ENTITY backupButton.label "&Yedekle ve geri getir"> +<!ENTITY restore.minVersion.warning "Uyarı: Dosya Adblock Plus'ın daha yeni bir sürümüyle oluşturulmuş. Bu dosyayı geri getirmeden önce Adblock Plus'ı en güncel sürümüne yükseltmelisiniz."> +<!ENTITY restore.error "Dosya verisi işlenemiyor. Adblock Plus yedeği olmayabilir mi?"> +<!ENTITY sort.ascending.label "&A'da Z'ye sıralama"> +<!ENTITY sort.label "&Sırala"> +<!ENTITY subscription.source.label "Süzgeç listesi"> +<!ENTITY hitcount.column "İsab&et"> +<!ENTITY noFilters.text "İsteğe göre ayarlanmış hiçbir süzgeciniz yok."> +<!ENTITY backup.custom.title "Sadece isteğe bağlı süzgeçler"> +<!ENTITY subscription.external.label "Başka bir eklenti tarafından güncellendi"> +<!ENTITY subscription.delete.label "Sil"> +<!ENTITY noGroupSelected.text "Süzgeçlerini görmek için bir süzgeç öbeği seçmeniz gerekiyor."> +<!ENTITY filter.cut.label "Kes"> +<!ENTITY restore.default.label "?1? tarihli yedek geri getirilsin mi?"> +<!ENTITY subscription.lastDownload.inProgress "İndiriliyor..."> +<!ENTITY subscriptions.tab.label "Süzgeç abonelikleri"> +<!ENTITY sort.descending.label "&Z'den A'ya sıralama"> +<!ENTITY filters.remove.warning "Tüm seçili süzgeçleri gerçekten silmek istiyor musunuz?"> +<!ENTITY filter.delete.label "Sil"> +<!ENTITY addSubscriptionAdd.label "Ekle"> +<!ENTITY viewMenu.label "Görünüm"> +<!ENTITY subscription.lastDownload.unknown "Yok"> +<!ENTITY addSubscriptionCancel.label "Vazgeç"> +<!ENTITY subscription.enabled.label "Etkin"> +<!ENTITY noSubscriptions.text "Henüz hiçbir süzgeç aboneliği eklemediniz. Adblock Plus süzgeç olmadan hiçbir şey + engellemeyecektir. Abonelik eklemek için + lütfen "Süzgeç aboneliği ekle" düğmesini kullanın."> +<!ENTITY subscription.update.label "Süzgeçleri güncelle"> +<!ENTITY dialog.title "Adblock Plus Süzme Tercihleri"> +<!ENTITY addFilter.label "Süzgeç e&kle"> +<!ENTITY subscription.minVersion.warning "Bu süzgeç aboneliği daha yeni bir Adblock Plus sürümü gerektiriyor. En güncel Adblock Plus sürümüne yükseltmelisiniz."> +<!ENTITY subscription.lastDownload.invalidURL "Olmadı. Bu geçerli bir adres değil."> +<!ENTITY backup.error "Süzgeçler dosyaya yazılırken bir sorun meydana geldi. Dosyanın yazma korumalı veya başka bir uygulama tarafından kullanılmıyor olduğundan emin olun."> +<!ENTITY filter.moveUp.label "Yukarıya taşı"> +<!ENTITY addGroup.label "Sü&zgeç öbeği ekle"> +<!ENTITY filter.edit.label "Düzenle"> +<!ENTITY subscription.showHideFilters.label "Süzgeçleri göster/gizle"> +<!ENTITY acceptableAds2.label "Rahatsız etmeyen bazı reklamlara &izin ver"> +<!ENTITY addSubscriptionOther.label "Başka abonelik ekle"> +<!ENTITY close.label "Kapat"> +<!ENTITY sort.none.label "Sıralan&mamış"> +<!ENTITY filter.actions.label "Süzgeç eylemleri"> +<!ENTITY filter.copy.label "Kopyala"> +<!ENTITY filter.moveDown.label "Aşağıya taşı"> +<!ENTITY filter.resetHitCounts.label "İsabet istatistiklerini sıfırla"> +<!ENTITY readMore.label "Daha fazla bilgi al"> +<!ENTITY subscription.moveUp.label "Yukarıya taşı"> +<!ENTITY addSubscription.label "Süzgeç aboneliği ekle"> +<!ENTITY subscription.homepage.label "Ana sayfa"> +<!ENTITY backup.complete.title "Tüm süzgeç ve abonelikler"> +<!ENTITY restore.own.label "Kendi yedeğini geri getir"> +<!ENTITY restore.complete.warning "Tüm süzme tercihleriniz seçilen dosyanın içeriğiyle değiştirilecek. Devam etmek istiyor musunuz?"> +<!ENTITY filters.tab.label "İsteğe bağlı süzgeçler"> +<!ENTITY backup.label "Yeni yedek oluştur"> +<!ENTITY find.label "&Bul"> +<!ENTITY subscription.moveDown.label "Aşağıya taşı"> +<!ENTITY subscription.lastDownload.connectionError "Olmadı. İndirmede sorun var."> +<!ENTITY subscription.lastDownload.success "Eşleme başarılı oldu."> +<!ENTITY subscription.lastDownload.invalidData "Olmadı. Bu düzgün bir süzgeç listesi değil."> +<!ENTITY filter.paste.label "Yapıştır"> +<!ENTITY subscription.disabledFilters.enable "Devre dışı süzgeçleri devreye sok"> +<!ENTITY lasthit.column "Son isabet"> +<!ENTITY subscription.editTitle.label "Başlığı değiştir"> +<!ENTITY subscription.disabledFilters.warning "Bu abonelikteki bazı süzgeçler devre dışı."> +<!ENTITY filter.column "Süzgeç &kuralı"> +<!ENTITY subscription.lastDownload.label "Son indirme zamanı:"> +<!ENTITY viewList.label "Listeye bak"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/firstRun.properties new file mode 100644 index 0000000..e7c76d5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Her hareketinizi izleyen reklam şirketlerin adımlarınızı gizleyin. İnternette izlenmeyi devre dışı bırakarak gezin. +firstRun_toggle_off=KAPALI +firstRun_feature_tracking=İzlenmeyi Devre Dışı Bırak +firstRun_feature_malware=Zararlı Yazılım Engelleme +firstRun_title=Adblock Plus yüklendi +firstRun_toggle_on=AÇIK +firstRun_acceptableAdsExplanation=Siteleri basit ve rahatsız etmeyen reklamlar yayınlamaya teşvik ediyoruz. Bu yüzden varsayılan ayarlar altında gösterilen, makul reklamları tanımlayan <a>sıkı kuralları</a> kabul ettik. Yine de tüm reklamları engellemek istiyorsanız <a>devre dışı bırakma</a> işini birkaç saniye içinde yapabilirsiniz. +firstRun_contributor_credits=Emeği Geçenler +firstRun_dataCorruptionWarning=Bu sayfa sürekli gösteriliyor mu? <a>Buraya tıklayın!</a> +firstRun_acceptableAdsHeadline=Rahatsız edici reklamlar artık engellenecek +firstRun_share=Arkadaşlarınıza bahsedin +firstRun_share_headline=İnterneti daha iyi bir yer yapabilmek için <a>bize elinizi uzatın</a> +firstRun_feature_social_description=Sayfalarda çıkan ve davranışlarınızı takip eden Facebook'un "Beğen" düğmesi gibi sosyal medya düğmelerinden kurtulun. +firstRun_filterlistsReinitializedWarning=Görünüşe göre bir sorun tüm filtrelerinizin kaldırılmasına neden olmuş ve bir yedeği geri yükleyemiyoruz. Bu yüzden filtrelerinizi ve Kabul Edilebilir Reklamlar ayarlarınızı sıfırlamamız gerekiyordu. Lütfen <a>Adblock Plus seçenekleri</a> bölümünde filtre listelerinizi ve Kabul Edilebilir Reklamlar ayarlarınızı denetleyin. +firstRun_feature_malware_description=Bilinen kötü amaçlı yazılıma sahip alan adlarını engelleyerek gezintinizi daha güvenli hale getirin. +firstRun_features=Adblock Plus reklamları engellemekten daha fazlasını yapabilir +firstRun_donate=bağış yapın +firstRun_donate_label=Projemize destek verin +firstRun_feature_social=Sosyal Medya Düğmelerini Kaldır +firstRun_legacySafariWarning=Safari'nin Adblock Plus tarafından desteklenmeyen eski bir sürümünü kullanıyorsunuz. Uygulama doğru şekilde çalışmayabilir veya bazı internet sitelerinde kullanıcı deneyimini olumsuz etkileyebilir. Sürümünüzü Safari 6.1.1 veya daha yüksek (OS X 10.8 Mountain Lion için), ya da Safari 7.0.1 veya daha yüksek (OS X 10.9 Mavericks için) bir sürüme yükseltmenizi, veya Mozilla Firefox, Google Chrome ya da Opera'nın en son sürümünü kullanmanızı önemle tavsiye ederiz. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/global.properties new file mode 100644 index 0000000..bf4bc48 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Bakılan sayfada engellenebilecek bir öğe bulunmuyor +action3_tooltip=Adblock Plus'ı etkinleştirmek ya da etkisizleştirmek için orta düğmeye tıklayın. +notification_antiadblock_title=Hedeflenen iletileri gizlemek istiyor musunuz? +type_label_script=betik +filter_elemhide_nocriteria=Gizlenecek bileşeni anlamak için hiçbir ölçüt belirtilmedi +blockingGroup_title=Reklam Engelleme Kuralları +whitelisted_tooltip=Adblock Plus etkin, ancak bu sayfada devre dışı. +type_label_stylesheet=biçem yaprağı +blocked_count_tooltip=toplamda ?1?, sayfada ?2? +type_label_font=yazı tipi +type_label_popup=açılır pencere +filter_regexp_tooltip=Süzgeç ya düzenli ifade ya da en iyileştirilmek için çok kısa. Bu süzgeçlerden çok fazlası, taramanızı yavaşlatabilir. +action0_tooltip=İçerik menüsünü açmak için tıklayın; etkinleştirmek ya da etkisizleştirmek için orta düğmeye tıklayın. +whitelisted_page=Adblock Plus bakılan sayfa için devre dışı bırakıldı +remove_group_warning=Bu grubu kaldırmayı gerçekten istiyor musunuz? +action1_tooltip=Engellenebilir öğeleri açmak ya da kapatmak için tıklayın; etkinleştirmek ya da etkisizleştirmek için orta düğmeye tıklayın. +type_label_xmlhttprequest=XML isteği +active_tooltip=Adblock Plus devrede ve ?1? süzgeç aboneliği ile ?2? özel süzgeç kullanıyor. +type_label_document=belge +type_label_object_subrequest=nesne alt isteği +whitelistGroup_title=Hariç Tutma Kuralları +disabled_tooltip=Adblock Plus etkin değil. +filter_elemhide_duplicate_id=Gizlenecek sadece bir bileşen kimliği belirtilebilir +type_label_object=nesne +action2_tooltip=Tercihler penceresini açmak için tıklayın; etkinleştirmek ya da etkisizleştirmek için orta düğmeye tıklayın. +type_label_subdocument=çerçeve +clearStats_warning=Bu hareket isabet istatistiklerinin sıfırlanması ve artık istatistik tutulmamasıyla sonuçlanacak. Devam etmek istiyor musunuz? +notification_antiadblock_message=Bu site Adblock Plus kullanıcılarına hedeflenen iletiler göstermesiyle bilinir. Adblock Plus'ın hedeflenen iletileri gizlemesini istiyor musunuz? +blocked_count_addendum=(ayrıca ?1? tane ak listede, ?2? tane gizli) +subscription_invalid_location=Dosya listesi konumu ne düzgün bir URL ne de düzgün bir ada sahip. +type_label_image=resim +remove_subscription_warning=Gerçekten abonelikten çıkmak istiyor musunuz? +type_label_other=diğer +mobile_menu_enable=ABP: Etkinleştir +type_label_media=ses/görüntü +mobile_menu_disable_site=ABP: ?1? sitesinde etkisizleştirilsin mi? +elemhideGroup_title=Öğe Gizleme Kuralları +mobile_menu_enable_site=ABP: ?1? sitesinde etkinleştirilsin mi? +type_label_elemhide=gizli +newGroup_title=Yeni süzgeç öbeği +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/overlay.dtd new file mode 100644 index 0000000..4cbbc1c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Evet"> +<!ENTITY notification.button.no "&Hayır"> +<!ENTITY sync.label "Adblock Plus ayarlarını &eşitle"> +<!ENTITY whitelist.site.label "?1? sitesinde devre dışı kal"> +<!ENTITY filters.label "&Süzgeç tercihleri"> +<!ENTITY disable.label "Her yerde devre dışı kal"> +<!ENTITY objecttab.title "Engelle"> +<!ENTITY objecttab.tooltip "Bu nesneyi Adblock Plus ile engellemek için buraya tıklayın."> +<!ENTITY menuitem.label "Adblock Plus Tercihleri"> +<!ENTITY objecttabs.label "Flash ve &Java'yı kulakçıklarla belirt"> +<!ENTITY sendReport.label "&Bu sayfadaki sorunu bildir"> +<!ENTITY whitelist.page.label "Sadece bu sayfada devre dışı kal"> +<!ENTITY context.image.label "Adblock Plus: Resmi engelle"> +<!ENTITY counthits.label "Süzgeç isa&betini say"> +<!ENTITY opensidebar.label "E&ngellenebilecek öğeleri göster"> +<!ENTITY notification.button.close "&Kapat"> +<!ENTITY contribute.label "Adblock Plus'a katkıda bulun"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Çerçeveyi engelle"> +<!ENTITY blocked.tooltip "Bu sayfada engellenen öğeler:"> +<!ENTITY hideplaceholders.label "Enge&llenen öğelerin yer işaretlerini gizle"> +<!ENTITY showinstatusbar.label "&Durum çubuğunda göster"> +<!ENTITY sidebar.title "Bu sayfadaki engellenebilecek öğeler"> +<!ENTITY options.label "S&eçenekler"> +<!ENTITY context.object.label "Adblock Plus: Nesneyi engelle"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Bu sayfada devreye sok"> +<!ENTITY filters.tooltip "En etkin süzgeçler:"> +<!ENTITY closesidebar.label "E&ngellenebilecek öğeleri gizle"> +<!ENTITY showintoolbar.label "A&raç çubuğunda göster"> +<!ENTITY status.tooltip "Durum:"> +<!ENTITY context.media.label "Adblock Plus: Ses/video engelle"> +<!ENTITY subscription.update.label "Süzgeçleri güncelle"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/sendReport.dtd new file mode 100644 index 0000000..c187ec1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Geri al"> +<!ENTITY issues.disabledgroups.description "Bu sayfada etkisi olabilecek aşağıdaki abonelikler ve süzgeç grupları devre dışı bırakıldı:"> +<!ENTITY showData.label "Bildirim verisini göster"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus çok &fazla engelleme yapıyor"> +<!ENTITY issues.change.description "Yapılandırmanız değişti. Lütfen değişiklikleri sınamak için sayfayı yeniden yükleyin ve yapılan değişiklikler sorunu gidermediyse hatayı bildirin."> +<!ENTITY email.label "E-&posta:"> +<!ENTITY issues.openPreferences.label "Süzgeç tercihlerini aç"> +<!ENTITY sendPage.confirmation "Bildiriminiz kaydedildi ve ona aşağıdaki adresten ulaşabilirsiniz:"> +<!ENTITY copyLink.label "Bildirimi bağlantısını &kopyala"> +<!ENTITY issues.nofilters.description "Adblock Plus bu sayfada hiçbir şeyi engellemiyor. Gözlemlediğiniz sorun büyük olasılıkla Adblock Plus ile ilgisiz."> +<!ENTITY sendPage.knownIssue "Bildirdiğiniz sorun büyük olasılıkla biliniyor. Daha fazla bilgi:"> +<!ENTITY typeSelector.other.description "Sorunun süzgeçlerinden çok Adblock Plus'ın kendisinden kaynaklandığından şüpheleniyorsanız bu seçeneği seçin."> +<!ENTITY issues.disabledgroups.enable.label "Süzgeç aboneliğini veya grubunu devreye sok"> +<!ENTITY typeWarning.override.label "Anlıyorum ve ne olur&sa olsun bildirimi göndermek istiyorum"> +<!ENTITY issues.disabled.enable.label "Adblock Plus'ı etkinleştir"> +<!ENTITY update.fixed.description "Süzgeç aboneliklerinize yapılan güncellemeler muhtemelen bildirmek istediğiniz sorunu giderdi. Sayfayı tekrar yükleyip bir daha deneyin, hâlâ sorun varsa bildirin."> +<!ENTITY anonymous.label "&Anonim gönder"> +<!ENTITY reloadButton.label "Sayfayı &tazele"> +<!ENTITY recentReports.clear.label "Tüm bildirimleri sil"> +<!ENTITY typeSelector.description "Bu pencere Adblock Plus sorun bildirimi göndermek için gerekli adımların atılmasında size rehberlik edecek. Önce bu sayfada ne tür sorun yaşadığınızı seçin:"> +<!ENTITY screenshot.remove.label "Hassas &veriyi sil"> +<!ENTITY issues.ownfilters.description "Bu sayfada uygulanan süzgeçlerin bazıları kullanıcı tarafından tanımlanmış. Lütfen soruna neden olmuş olabilecek süzgeçleri devre dışı bırakın:"> +<!ENTITY update.inProgress.description "Bu sorunun süzgeç güncellemesiyle giderilmesinin mümkün olup olmadığını tespit etmek için abonelikleriniz şimdi güncellenecektir. Lütfen bekleyin..."> +<!ENTITY sendPage.retry.label "Yeniden gönder"> +<!ENTITY data.label "Bildirim &verisi:"> +<!ENTITY recentReports.label "Yakında gönderdiğiniz bildirimler"> +<!ENTITY typeWarning.description "Süzgeçlerle ilgili bir sorun değil de Adblock Plus ile ilgili genel bir sorun bildiriminde bulunmak istediğinizi belirttiniz. Lütfen böyle sorunların en iyi bildirim yerinin [link]Adblock Plus forumu[/link] olduğu aklınızda olsun. Siz bağlantı vermediğiniz sürece kimse bildiriminizi görmeyeceği için sorun bildiriciyi sadece mevcut bir tartışmaya katkı sağlamak için kullanmalısınız."> +<!ENTITY issues.disabled.description "Adblock Plus devre dışı ve şu anki durumunda hiçbir şeyi engellemeyecek."> +<!ENTITY attachExtensions.label "Sor&un kaynağının eklenti uyumsuzluğu olup olmadığının belirlenmesi için etkin eklentilerin listesini bildirime ekle"> +<!ENTITY issues.nosubscriptions.add.label "Süzgeç aboneliği ekle"> +<!ENTITY issues.disabledfilters.enable.label "Süzgeci devreye sok"> +<!ENTITY issues.override.label "Yapılan&dırma doğru, bildirime devam et"> +<!ENTITY issues.nosubscriptions.description "Sitelerdeki istenmeyen içeriği yok eden önceden hazırlanmış süzgeç listelerinden herhangi birine abone olmuş değilsiniz."> +<!ENTITY typeSelector.falsePositive.description "Sayfanın önemli içeriği hiç görünmüyorsa, yanlış görünüyorsa veya sayfa düzgün işlemiyorsa bu seçeneği seçin. Sorun kaynağının Adblock Plus olup olmadığını eklentiyi geçici olarak devre dışı bırakıp belirleyebilirsiniz."> +<!ENTITY typeSelector.other.label "Başka bir sorun"> +<!ENTITY emailComment.label "Sizi, raporunuz hakkında sorularımız olursa sizinle iletişime geçebilmemiz için geçerli bir e-posta adresi girmeye teşvik ediyoruz. Bu aynı zamanda katılımlarınızı hatırlamamızı ve önceliklerini yüksek olarak ayarlamamızı sağlar."> +<!ENTITY issues.whitelist.remove.label "Adblock Plus'u bu sayfada devreye sok"> +<!ENTITY outdatedSubscriptions.description "Aşağıdaki süzgeç abonelikleri en az 2 haftadır güncellenmedi. Bildirmeden önce lütfen bu abonelikleri güncelleyin, sorun çoktan giderilmiş olabilir."> +<!ENTITY dataCollector.description "Adblock Plus eklentisinin gerekli bilgileri toplaması için lütfen biraz bekleyin."> +<!ENTITY sendButton.label "&Bildirimi gönder"> +<!ENTITY comment.label "Y&orum (isteğe bağlı):"> +<!ENTITY sendPage.errorMessage "Hata bildirimi gönderme girişiminiz "?1?" hata koduyla başarısız oldu. Lütfen internete bağlı olduğunuzdan emin olun ve yeniden deneyin. Sorun devam ederse lütfen [link]Adblock Plus forumunda[/link] yardım isteyin."> +<!ENTITY showRecentReports.label "Yakında gönderilen bildirimleri göster"> +<!ENTITY commentPage.heading "Yorum ekle"> +<!ENTITY update.start.label "Güncellemeyi şimdi başlat"> +<!ENTITY issues.disabledfilters.description "Bu sayfada etkisi olabilecek aşağıdaki süzgeçler devre dışı bırakıldı:"> +<!ENTITY screenshot.description "Aynı sayfa farklı kişilerce farklı biçimde görülebilir. Bildirime ekran görüntüsü eklemeniz sorunu anlamamıza yardımcı olabilir. Hassas bilgilerin olduğu bölümleri silebilirsiniz ve sorunun görünür olduğu yerleri işaretleyebilirsiniz. Bunu yapmak için ilgili düğmeye basın ve resimde bir bölümü farenizle seçin."> +<!ENTITY screenshot.attach.label "Bildirime say&fa resmi ekle"> +<!ENTITY issues.whitelist.description "Adblock Plus bildirimde bulunduğunuz sayfada devre dışı. Bu sorunun incelenmesine yardım etmek için bildirim göndermeden önce eklentiyi devreye sokun ve sayfayı yeniden yükleyin."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus reklamın birini engellemiyor"> +<!ENTITY typeSelector.heading "Sorun türünü seçin"> +<!ENTITY anonymity.warning "Size geri dönemeyiz ve muhtemelen rapor önceliği düşük olarak ayarlanır."> +<!ENTITY wizard.title "Sorun bildirici"> +<!ENTITY issues.ownfilters.disable.label "Süzgeci devre dışı bırak"> +<!ENTITY commentPage.description "Aşağıdaki metin alanı sorunu anlamamız için yorum yazmanıza olanak tanır. Bu adım isteğe bağlıdır ancak sorun açık değilse tavsiye edilir. Ayrıca bildirimi göndermeden önce gözden geçirebilirsiniz."> +<!ENTITY comment.lengthWarning "Yorumunuzun uzunluğu 1000 karakteri aşıyor. Sadece ilk 1000 karakter gönderilecek."> +<!ENTITY typeSelector.falseNegative.description "Adblock Plus devrede olmasına rağmen reklamın biri görünüyorsa bu seçeneği seçin."> +<!ENTITY sendPage.waitMessage "Lüftfen Adblock Plus bildirimi gönderirken bekleyin."> +<!ENTITY dataCollector.heading "Sorun bildiriciye hoş geldiniz"> +<!ENTITY screenshot.heading "Ekran görüntüsü ekle"> +<!ENTITY sendPage.heading "Bildirimi gönder"> +<!ENTITY issues.subscriptionCount.description "Çok fazla süzgeç listesine abone olduğunuz görülüyor. Böyle yapmanız tavsiye edilmez çünkü bu, sorun çıkma olasılığını daha da arttırır. Ayrıca hangi süzgeç aboneliği yazarının hatayı düzeltmesi gerektiği belirsiz olduğundan hata bildiriminizi kabul edemeyiz. Sadece gerçekten gerekli olan süzgeç abonelikleri dışında kalanlardan çıkın ve sorunun hâlâ yaşanıp yaşanmadığına bakın."> +<!ENTITY screenshot.mark.label "Sorunu iş&aretle"> +<!ENTITY privacyPolicy.label "Gizlilik politikası"> +<!ENTITY issues.description "Adblock Plus yapılandırmanızda bu sorunun nedeni olabilecek veya bildirimi incelemeyi güçleştirecek sorunlar keşfetti."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/sidebar.dtd new file mode 100644 index 0000000..667d01f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Flash öğesinin sınırları"> +<!ENTITY address.label "Konum"> +<!ENTITY context.open.label "Yeni sekmede aç"> +<!ENTITY type.label "Tür"> +<!ENTITY tooltip.filterSource.label "Süzgeç kaynağı:"> +<!ENTITY noitems.label "Engellenebilecek öğe yok"> +<!ENTITY filter.label "Süzgeç"> +<!ENTITY tooltip.size.label "Boyut"> +<!ENTITY reattach.label "Birleştir"> +<!ENTITY search.label "&Ara"> +<!ENTITY docDomain.thirdParty "(üçüncü taraf)"> +<!ENTITY filterSource.label "Süzgeç kaynağı"> +<!ENTITY tooltip.docDomain.label "Belge kaynağı:"> +<!ENTITY context.copy.label "Öğenin konumunu kopyala"> +<!ENTITY tooltip.type.label "Tür:"> +<!ENTITY context.disablefilter.label "?1? süzgecini devre dışı bırak"> +<!ENTITY context.copyFilter.label "Süzgeci kopyala"> +<!ENTITY context.block.label "Bu öğeyi engelle"> +<!ENTITY context.enablefilter.label "?1? süzgecini devreye sok"> +<!ENTITY detach.label "Ayır"> +<!ENTITY whitelisted.label "Ak listeye dahil bir sayfa"> +<!ENTITY context.disablefilteronsite.label "Bu süzgeci ?1? alan adında kullanma"> +<!ENTITY detached.title "Adblock Plus: Engellenebilecek öğeler (ayrıldı)"> +<!ENTITY docDomain.firstParty "(birinci taraf)"> +<!ENTITY tooltip.type.whitelisted "(ak listede)"> +<!ENTITY tooltip.filter.label "Yürürlükteki süzgeç:"> +<!ENTITY tooltip.filter.disabled "(devre dışı)"> +<!ENTITY context.editfilter.label "Yürürlükteki süzgeci düzelt"> +<!ENTITY tooltip.type.blocked "(engellendi)"> +<!ENTITY size.label "Boyut"> +<!ENTITY context.whitelist.label "Öğeye ayrıcalık tanı"> +<!ENTITY context.selectAll.label "Tümünü seç"> +<!ENTITY state.label "Durum"> +<!ENTITY docDomain.label "Belge kaynağı"> +<!ENTITY tooltip.address.label "Konum:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/subscriptionSelection.dtd new file mode 100644 index 0000000..b60a9e2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/tr/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label ""?1?" süzgecine de abone ol"> +<!ENTITY list.download.failed "Adblock Plus abonelik listesini alamadı"> +<!ENTITY list.download.retry "Yeniden dene"> +<!ENTITY title.label "&Aboneliğin adı:"> +<!ENTITY list.download.website "Siteye git"> +<!ENTITY supplementMessage "Bu süzgeç aboneliği henüz kullanmadığınız "?1?" süzgeç aboneliğiyle kullanılmak üzere hazırlanmış."> +<!ENTITY viewList.label "Süzgeçlere bak"> +<!ENTITY visitHomepage.label "Ana sayfaya git"> +<!ENTITY addSubscription.label "Abone ol"> +<!ENTITY dialog.title "Adblock Plus süzgeç aboneliği ekle"> +<!ENTITY location.label "Süzgeç &listesi konumu:"> +<!ENTITY fromWeb.description "Lütfen bu süzgeç aboneliğini eklemek istediğinizi teyit edin. Eklemeden önce abonelik adını ve konumunu değiştirebilirsiniz."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/composer.dtd new file mode 100644 index 0000000..68f86cb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "при &кінці адреси"> +<!ENTITY domainRestriction.label "Об&межити доменом"> +<!ENTITY collapse.default.no.label "Як завжди (ні)"> +<!ENTITY firstParty.label "То&й же сайт"> +<!ENTITY preferences.label "Показати &існуючі фільтри…"> +<!ENTITY pattern.label "Шукати шаблон"> +<!ENTITY thirdParty.label "С&торонній сайт"> +<!ENTITY filter.label "Новий &фільтр:"> +<!ENTITY collapse.label "З&гортати заблоковане:"> +<!ENTITY match.warning "Вказаний шаблон не відповідає адресі, для якої ви створюєте правило, і ніяк на неї не вплине."> +<!ENTITY anchor.start.label "на &початку адреси"> +<!ENTITY matchCase.label "В&раховувати регістр"> +<!ENTITY custom.pattern.label "І&нше"> +<!ENTITY unselectAllTypes.label "Скинути все"> +<!ENTITY type.whitelist.label "Пра&вило винятку"> +<!ENTITY regexp.warning "Шаблон що ви ввели буде інтерпретовано як регулярний вираз. Багато регулярних виразів можуть уповільнити перегляд сторінок. Додайте * на кінець шаблону якщо ви не збирались використовувати регулярний вираз."> +<!ENTITY dialog.title "Додати правило фільтрування Adblock Plus"> +<!ENTITY basic.label "Простий вигляд"> +<!ENTITY type.filter.label "Правило &блокування"> +<!ENTITY types.label "Застосовувати до об’єктів:"> +<!ENTITY shortpattern.warning "Шаблон що ви ввели закороткий для оптимізування, багато таких шаблонів можуть уповільнити перегляд сторінок. Рекомендовано обрати довшу строку для цього фільтра"> +<!ENTITY collapse.yes.label "Так"> +<!ENTITY anchors.label "Застосувати шаблон лише:"> +<!ENTITY collapse.default.yes.label "Як завжди (так)"> +<!ENTITY domainRestriction.help "Вкажіть один чи більше доменів, розділених символом „|“, фільтр буде застосовано лише на них. Символ „~“ перед іменем домена вказує що фільтр на цей домен не розповсюджується."> +<!ENTITY accept.label "Додати фільтр"> +<!ENTITY options.label "Налаштування"> +<!ENTITY disabled.warning "Adblock Plus наразі вимкнений. Ви можете додавати фільтри, але вони не будуть застосовуватися, доки Ви не [link]увімкнете Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "на &початку імені домена"> +<!ENTITY collapse.no.label "Ні"> +<!ENTITY selectAllTypes.label "Вибрати все"> +<!ENTITY advanced.label "Розширений вигляд"> +<!ENTITY pattern.explanation "Шаблон може бути будь-якою частиною адреси, символ * працює як джокер. Фільтр буде застосовано лише до адрес що відповідають шаблону."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/filters.dtd new file mode 100644 index 0000000..2d0b05b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Всі ваші власні фільтри будуть замінені вмістом вибраного файла. Продовжити?"> +<!ENTITY slow.column "Пов&ільні фільтри"> +<!ENTITY enabled.column "У&вімкнено"> +<!ENTITY subscription.lastDownload.checksumMismatch "Помилка, не збіглась контрольна сума"> +<!ENTITY noFiltersInGroup.text "Вибрана група пуста."> +<!ENTITY subscription.actions.label "Дії"> +<!ENTITY filter.selectAll.label "Вибрати всі"> +<!ENTITY backupButton.label "&Резервні копії та відновлення"> +<!ENTITY restore.minVersion.warning "Увага: файл було створено новішою версією Adblock Plus.Вам слід оновити Adblock Plus до останньої версії перш ніж відновлюватись з цього файла."> +<!ENTITY restore.error "Дані з файла неможливо обробити — може, це не є Адблоківська резервна копія?"> +<!ENTITY sort.ascending.label "Від &А до Я"> +<!ENTITY sort.label "&Сортувати за"> +<!ENTITY subscription.source.label "Перелік фільтрів"> +<!ENTITY hitcount.column "&Попадань"> +<!ENTITY noFilters.text "У вас поки нема власних фільтрів."> +<!ENTITY backup.custom.title "Лише власні фільтри"> +<!ENTITY subscription.external.label "Оновлено іншим розширенням"> +<!ENTITY subscription.delete.label "Видалити"> +<!ENTITY noGroupSelected.text "Ви маєте вибрати групу фільтрів до того як її фільтри можна буде показати."> +<!ENTITY filter.cut.label "Вирізати"> +<!ENTITY restore.default.label "Відновитись з резервної копії ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Завантажується…"> +<!ENTITY subscriptions.tab.label "Підписки на фільтри"> +<!ENTITY sort.descending.label "Від &Я до А"> +<!ENTITY filters.remove.warning "Ви дійсно хочете вилучити всі вибрані фільтри?"> +<!ENTITY filter.delete.label "Вилучити"> +<!ENTITY addSubscriptionAdd.label "Додати"> +<!ENTITY viewMenu.label "Вигляд"> +<!ENTITY subscription.lastDownload.unknown "ніколи"> +<!ENTITY addSubscriptionCancel.label "Скасувати"> +<!ENTITY subscription.enabled.label "Увімкнено"> +<!ENTITY noSubscriptions.text "Ви поки не додали жодних підписок. Адблок не буде блокувати нічого без фільтрів, будь ласка скористайтесь пунктом «Додати підписку»."> +<!ENTITY subscription.update.label "Оновити фільтри"> +<!ENTITY dialog.title "Налаштування фільтрів Адблоку"> +<!ENTITY addFilter.label "&Додати фільтр"> +<!ENTITY subscription.minVersion.warning "Ця підписка фільтрів потребує новішої версії Adblock Plus. Вам слід оновитись до останньої версії Adblock Plus."> +<!ENTITY subscription.lastDownload.invalidURL "Помилка, невірна адреса"> +<!ENTITY backup.error "Під час запису фільтрів у файл сталася помилка. Упевніться, що файл не захищений від запису і не використовується іншою програмою."> +<!ENTITY filter.moveUp.label "Зсунути вверх"> +<!ENTITY addGroup.label "Додати &групу фільтрів"> +<!ENTITY filter.edit.label "Редагувати"> +<!ENTITY subscription.showHideFilters.label "Сховати/показати фільтри"> +<!ENTITY acceptableAds2.label "Дозволити деяку ненав'язливу &рекламу"> +<!ENTITY addSubscriptionOther.label "Додати іншу підписку"> +<!ENTITY close.label "Закрити"> +<!ENTITY sort.none.label "&Несортовано"> +<!ENTITY filter.actions.label "Дії з фільтрами"> +<!ENTITY filter.copy.label "Копіювати"> +<!ENTITY filter.moveDown.label "Зсунути вниз"> +<!ENTITY filter.resetHitCounts.label "Скинути статистику"> +<!ENTITY readMore.label "Детальніше"> +<!ENTITY subscription.moveUp.label "Зсунути вверх"> +<!ENTITY addSubscription.label "Додати &підписку"> +<!ENTITY subscription.homepage.label "Домашня сторінка"> +<!ENTITY backup.complete.title "Всі фільтри та підписки"> +<!ENTITY restore.own.label "Відновитись з власної резервної копії"> +<!ENTITY restore.complete.warning "Всі ваші налаштування фільтрів будуть замінені вмістом вибраного файла. Продовжити?"> +<!ENTITY filters.tab.label "Власні фільтри"> +<!ENTITY backup.label "Створити нову резервну копію"> +<!ENTITY find.label "З&найти фільтр"> +<!ENTITY subscription.moveDown.label "Зсунути вниз"> +<!ENTITY subscription.lastDownload.connectionError "Помилка, неможливо викачати"> +<!ENTITY subscription.lastDownload.success "Успіх"> +<!ENTITY subscription.lastDownload.invalidData "Помилка, не правильний список фільтрів"> +<!ENTITY filter.paste.label "Вставити"> +<!ENTITY subscription.disabledFilters.enable "Увімкнути вимкнені фільтри"> +<!ENTITY lasthit.column "&Останнє попадання"> +<!ENTITY subscription.editTitle.label "Редагувати назву"> +<!ENTITY subscription.disabledFilters.warning "Деякі фільтри у цій підписці вимкнено."> +<!ENTITY filter.column "Правило &фільтрування"> +<!ENTITY subscription.lastDownload.label "Останнє оновлення:"> +<!ENTITY viewList.label "Перегляд списку"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/firstRun.properties new file mode 100644 index 0000000..f001239 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Переглядайте сайти анонімно шляхом вимкнення відстеження - приховування вашого шляху від рекламних компаній, які хочуть відслідковувати кожний ваш крок. +firstRun_toggle_off=ВИМКН +firstRun_feature_tracking=Вимкнення відстеження +firstRun_feature_malware=Блокування шкідливих програм +firstRun_title=Adblock Plus вже встановлено +firstRun_toggle_on=УВІМК +firstRun_acceptableAdsExplanation=Ми хотіли б заохотити веб-сайти використовувати просту, ненав'язливу рекламу. Ось чому ми вже створені <a>суворі керівні принципи</a> для ідентифікації прийнятної реклами, які відображаються у групі типових налаштувань. Якщо потрібно заблокувати кожну рекламу, то ви можете <a>вимкнути</a> це за декілька секунд. +firstRun_contributor_credits=Внески учасників +firstRun_dataCorruptionWarning=Ця сторінка все ще відображається? <a>Натисніть тут!</a> +firstRun_acceptableAdsHeadline=Дратівлива реклама буде надалі блокуватися +firstRun_share=Розказати друзям +firstRun_share_headline=<a>Подайте нам руку</a> для створення кращого середовища у мережі +firstRun_feature_social_description=Автоматично прибирає кнопки соціальних мереж на кшталт Facebook, які з'являються на веб-сторінках і відстежують вашу поведінку. +firstRun_filterlistsReinitializedWarning=Здається, що помилка призвела до того, що всі фільтри були знищені, і ми не можемо відновити резервну копію. Тому ми скинули фільтри і налаштування ненав’язливої реклами. Будь ласка, перевірте список ваших фільтрів та налаштування ненав’язливої реклами <a>Adblock Plus параметри</a>. +firstRun_feature_malware_description=Убезпечте ваші перегляд через блокування доменів відомих зловмисних програм. +firstRun_features=Adblock Plus може зробити більше, ніж блокування реклами +firstRun_donate=пожертва +firstRun_donate_label=Підтримайте наш проект +firstRun_feature_social=Видаляє кнопки соціальних мереж +firstRun_legacySafariWarning=Ви використовуєте стару версію Safari, яка не підтримується Adblock Plus. Вона може не працювати належним чином або погіршувати якість роботи користувача на деяких веб-сайтах. Ми настійно рекомендуємо онвити до Safari 6.1.1 або вище (в OS X 10.8 Mounain Lion), або Safari 7.0.1 або вище (в OS X 10.9 Mavericks), або використовувати останню версію Mozilla Firefox, Google Chrome або Mozilla. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/global.properties new file mode 100644 index 0000000..8faed6d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=На відкритій сторінці немає елементів, які можна було б заблокувати +action3_tooltip=Клацніть, щоб увімкнути чи вимкнути Adblock Plus. +notification_antiadblock_title=Приховати цільові повідомлення? +type_label_script=Скрипт +filter_elemhide_nocriteria=Не вказаний критерій за яким упізнати елемент, що буде приховано. +blockingGroup_title=Правила блокування +whitelisted_tooltip=Adblock Plus увімкнено, проте не для цієї сторінки. +type_label_stylesheet=Стилі +blocked_count_tooltip=?1? з ?2? +type_label_font=шрифт +type_label_popup=виринаюче вікно +filter_regexp_tooltip=Цей фільтр або є регулярним виразом, або занадто короткий для оптимізації. Забагато фільтрів можуть вповільнити перегляд сторінок +action0_tooltip=Клацніть, щоб відкрити контекстне меню. Середня клавіша миші — вкл/викл. +whitelisted_page=Adblock Plus вимкнено для цієї сторінки +remove_group_warning=Ви дійсно бажаєте видалити цю групу? +action1_tooltip=Клацніть, щоб відкрити/закрити список елементів. Середня клавіша миші — вкл/викл. +type_label_xmlhttprequest=XML-запит +active_tooltip=Adblock Plus увімкнено, задіяно ?1? підписок та ?2? власних фільтрів. +type_label_document=Документ +type_label_object_subrequest=Запит об’єкта +whitelistGroup_title=Правила винятків +disabled_tooltip=Adblock Plus вимкнено. +filter_elemhide_duplicate_id=Можна вказати лише один ID елемента, що буде приховано. +type_label_object=Об’єкт +action2_tooltip=Клацніть, щоб відкрити вікно налаштувань. Середня клавіша миші — вкл/викл. +type_label_subdocument=Фрейм +clearStats_warning=Це скине всю статистику по фільтрам та вимкне рахування хітів. Продовжити? +notification_antiadblock_message=Цей сайт відомий тим, що показує цільові повідомлення користувачам Adblock Plus. Ви хочете, щоб Adblock Plus приховав цільові повідомлення? +blocked_count_addendum=(також відкрито: ?1?, приховано: ?2?) +subscription_invalid_location=Не вдалося розпізнати введену адресу ні як інтернет адресу, ні як шлях до файлу. +type_label_image=Зображення +remove_subscription_warning=Ви впевнені, що хочете вилучити цю підписку? +type_label_other=Інший +mobile_menu_enable=ABP: Увімкнути +type_label_media=аудіо/відео +mobile_menu_disable_site=ABP: Вимкнути на ?1? +elemhideGroup_title=Правила приховування +mobile_menu_enable_site=ABP: Увімкнути на ?1? +type_label_elemhide=Приховане +newGroup_title=Нова група фільтрів +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/overlay.dtd new file mode 100644 index 0000000..3928786 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Так"> +<!ENTITY notification.button.no "&Ні"> +<!ENTITY sync.label "Синхроні&зувати налаштування Адблоку"> +<!ENTITY whitelist.site.label "Вимкнути: на ?1?"> +<!ENTITY filters.label "&Налаштування фільтрів"> +<!ENTITY disable.label "Вимкнути всюди"> +<!ENTITY objecttab.title "Заблокувати"> +<!ENTITY objecttab.tooltip "Натисніть тут, щоб заблокувати цей об’єкт"> +<!ENTITY menuitem.label "Налаштування &Adblock Plus"> +<!ENTITY objecttabs.label "Показувати &ярлик на Flash і Java"> +<!ENTITY sendReport.label "Повідомити про проблеми на &сторінці"> +<!ENTITY whitelist.page.label "Вимкнути: тільки на цій сторінці"> +<!ENTITY context.image.label "Adblock Plus: заблокувати зображення"> +<!ENTITY counthits.label "&Рахувати хіти фільтрів"> +<!ENTITY opensidebar.label "Відкрити с&писок елементів"> +<!ENTITY notification.button.close "&Закрити"> +<!ENTITY contribute.label "Допомогти Адблоку"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: заблокувати фрейм"> +<!ENTITY blocked.tooltip "Заблоковані елементи на цій сторінці:"> +<!ENTITY hideplaceholders.label "При&ховувати замінники заблокованих елементів"> +<!ENTITY showinstatusbar.label "Показувати в рядку &стану"> +<!ENTITY sidebar.title "Елементи відкритої сторінки"> +<!ENTITY options.label "Н&алаштування"> +<!ENTITY context.object.label "Adblock Plus: заблокувати об’єкт"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Знов увімкнути для цієї сторінки"> +<!ENTITY filters.tooltip "Найбільш часто застосовані фільтри:"> +<!ENTITY closesidebar.label "Закрити с&писок елементів"> +<!ENTITY showintoolbar.label "По&казувати в панелі інструментів"> +<!ENTITY status.tooltip "Статус:"> +<!ENTITY context.media.label "Adblock Plus: Блокувати аудіо/відео"> +<!ENTITY subscription.update.label "Оновити фільтри"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/sendReport.dtd new file mode 100644 index 0000000..2f025d7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/sendReport.dtd @@ -0,0 +1,70 @@ +<!ENTITY screenshot.undo.label "&Повернути"> +<!ENTITY issues.disabledgroups.description "Наступні фільтрові підписки/групи вимкнені, але могли вплинути на цю сторінку:"> +<!ENTITY showData.label "Показати дані звіту"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus &блокує забагато"> +<!ENTITY issues.change.description "Ваші налаштування було змінено. Перегрузіть сторінку для перевірки внесених змін та зашліть звіт якщо проблему не вирішено."> +<!ENTITY email.label "&Електронна пошта:"> +<!ENTITY issues.openPreferences.label "Відкрити фільтрові підписки"> +<!ENTITY sendPage.confirmation "Звіт було записано. Ви можете переглянути його за посиланням:"> +<!ENTITY copyLink.label "С&копіювати посилання звіту"> +<!ENTITY issues.nofilters.description "Adblock Plus не блокує нічого на поточній сторінці. Швидше за все проблема, яку ви бачите, не пов’язана з Adblock Plus."> +<!ENTITY sendPage.knownIssue "Проблема про яку ви повідомили вже відома. Детальніше:"> +<!ENTITY typeSelector.other.description "Виберіть цей варіант якщо ви підозрюєте проблему саме з Adblock Plus а не з його фільтрами."> +<!ENTITY issues.disabledgroups.enable.label "Увімкнути фільтрову підписку/групу"> +<!ENTITY typeWarning.override.label "Я &розумію, та все ж хочу надіслати звіт"> +<!ENTITY issues.disabled.enable.label "Увімкнути Adblock Plus"> +<!ENTITY update.fixed.description "Оновлення ваших підписок на фільтри швидше за все вирішило проблему, про яку ви хотіли повідомити. Будь ласка завантажте заново сторінку і спробуйте ще раз. Якщо проблема залишилася, то надішліть повідомлення ще раз."> +<!ENTITY anonymous.label "&Анонімне подання"> +<!ENTITY reloadButton.label "&Перезавантажити сторінку"> +<!ENTITY recentReports.clear.label "&Вилучити всі звіти"> +<!ENTITY typeSelector.description "Це вікно проведе вас по кроках надсилання звіту про проблему з Adblock Plus. Спершу, виберіть тип проблеми з якою ви зіткнулись на цій сторінці:"> +<!ENTITY screenshot.remove.label "&Вилучити конфіденційні дані"> +<!ENTITY issues.ownfilters.description "Деякі з застосованих фільтрів були задані користувачем. Вимкніть фільтри що могли спричинити проблему."> +<!ENTITY update.inProgress.description "Adblock Plus необхідно оновити ваші підписки на фільтри, щоб переконатися, що це питання не було вирішено вже. Будь ласка, зачекайте..."> +<!ENTITY sendPage.retry.label "Надіслати ще раз"> +<!ENTITY data.label "&Дані звіту:"> +<!ENTITY recentReports.label "Ваші недавно надіслані звіти"> +<!ENTITY typeWarning.description "Ви вказали що хочете повідомити про загальну проблему в Adblock Plus, а не в фільтрах. Зауважте, що про такі проблеми найкраще повідомляти до [link]форуму Adblock Plus[/link]. Майстер звітів слід використовувати лише додатково до існуючої дискусії, оскільки ніхто не побачить вашого звіту, якщо не поставити на нього посилання. Ви отримаєте автоматично створене посилання після надсилання звіту."> +<!ENTITY issues.disabled.description "Adblock Plus вимкнено, він не блокуватиме нічого у поточному стані."> +<!ENTITY attachExtensions.label "Долучити до звіту список активних &розширень — на випадок якщо причиною проблеми є конфлікт розширень"> +<!ENTITY issues.nosubscriptions.add.label "Додати підписку на фільтри"> +<!ENTITY issues.disabledfilters.enable.label "Увімкнути фільтр"> +<!ENTITY issues.override.label "Налаштування &правильні, продовжити звіт"> +<!ENTITY issues.nosubscriptions.description "Ви не підписані на жоден з готових списків фільтрування котрі автоматично вилучають небажаний вміст з сайтів."> +<!ENTITY typeSelector.falsePositive.description "Виберіть цей варіант якщо на сторінці відсутня частина вмісту, або якщо вона показується чи функціонує неправильно. Ви можете перевірити, чи був Adblock Plus причиною - тимчасово його вимкнувши."> +<!ENTITY typeSelector.other.label "&Інша проблема"> +<!ENTITY emailComment.label "Ми рекомендуємо Вам ввести адресу електронної пошти, щоб ми могли зв'язатися з вами, якщо виникнуть питання з приводу звіту. Це також дозволить нам розпізнати ваші внески та зробити їх більш пріоритетними."> +<!ENTITY issues.whitelist.remove.label "Переувімкнути Adblock Plus на цій сторінці"> +<!ENTITY outdatedSubscriptions.description "Наступні підписки на фільтри не оновлювалися більше двох тижнів. Будь ласка, поновіть ці підписки перед відправленням повідомлення, оскільки проблема вже може бути вирішена."> +<!ENTITY dataCollector.description "Заждіть, Adblock Plus збирає потрібні дані"> +<!ENTITY sendButton.label "&Надіслати звіт"> +<!ENTITY comment.label "&Коментар (необов’язково):"> +<!ENTITY sendPage.errorMessage "Помилка відправки звіту: «?1?». Упевніться що ви під’єднані до інтернету та спробуйте ще раз. Якщо проблема не зникає, будь ласка пошукайте допомоги на [link]форумі Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Показати недавно надіслані звіти"> +<!ENTITY commentPage.heading "Ввести коментар"> +<!ENTITY update.start.label "Розпочати оновлення зараз"> +<!ENTITY issues.disabledfilters.description "Наступні фільтри вимкнені, але могли вплинути на цю сторінку:"> +<!ENTITY screenshot.description "Та сама сторінка може виглядати по різному для різних людей. Знімок екрана (скріншот) може допомогти нам зрозуміти проблему. Ви можете вилучити конфіденційні частини, а також позначити області де присутня проблема. Щоб це зробити, клацніть по відповідній клавіші та виберіть область зображення мишкою."> +<!ENTITY screenshot.attach.label "&Додати зображення сторінки до звіту"> +<!ENTITY issues.whitelist.description "Adblock Plus наразі вимкнений на тій сторінці про яку ви звітуєте. Увімкніть його та перегрузіть сторінку перед надсиланням звіту. Це допоможе в його розгляді."> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus не блокує &рекламу"> +<!ENTITY typeSelector.heading "Виберіть тип проблеми"> +<!ENTITY anonymity.warning "Ми не будемо мати можливість повернутися до вас і, швидше за все, пріоритети звіту нижчий."> +<!ENTITY wizard.title "Повідомити про проблему"> +<!ENTITY issues.ownfilters.disable.label "Вимкнути фільтр"> +<!ENTITY commentPage.description "Нижче ви можете ввести коментар щоб допомогти нам зрозуміти проблему. Цей крок необов’язковий, проте рекомендований коли проблема не очевидна. Ви можете також переглянути свій коментар перед надсиланням."> +<!ENTITY comment.lengthWarning "Довжина коментаря перевищує 1000 символів. Будуть послані лише перші 1000 символів."> +<!ENTITY typeSelector.falseNegative.description "Виберіть цей варіант якщо реклама показується попри те що Adblock Plus увімкнено."> +<!ENTITY sendPage.waitMessage "Заждіть доки Adblock Plus надсилає ваш звіт."> +<!ENTITY dataCollector.heading "Ласкаво просимо до звітувача про проблеми"> +<!ENTITY screenshot.heading "Додати скріншот"> +<!ENTITY sendPage.heading "Надіслати звіт"> +<!ENTITY issues.subscriptionCount.description "Здається, ви підписались на забагато фільтрових підписок. + Ми не радимо таке робити, оскільки можливість отримати проблеми дуже висока. + Також ми не можемо прийняти ваш звіт, оскільки незрозуміло, + котрому з авторів підписок слід щось зробити. + Вилучте всі підписки крім дійсно необхідних, і перевірте, + чи проблема все ще буде присутня."> +<!ENTITY screenshot.mark.label "По&значити проблему"> +<!ENTITY privacyPolicy.label "Політика приватності"> +<!ENTITY issues.description "Adblock Plus знайшов проблеми у ваших налаштуваннях котрі, можливо, спричинили цю проблему, або усладнять розгляд звіту."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/sidebar.dtd new file mode 100644 index 0000000..23725a0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Рамка для Flash об'єктів"> +<!ENTITY address.label "Адреса"> +<!ENTITY context.open.label "Відкрити в новій вкладці"> +<!ENTITY type.label "Тип"> +<!ENTITY tooltip.filterSource.label "Джерело фільтра:"> +<!ENTITY noitems.label "Блокувати нічого"> +<!ENTITY filter.label "Фільтр"> +<!ENTITY tooltip.size.label "Розмір:"> +<!ENTITY reattach.label "Приєднати"> +<!ENTITY search.label "П&ошук:"> +<!ENTITY docDomain.thirdParty "(запит з іншого сайта)"> +<!ENTITY filterSource.label "Джерело фільтра"> +<!ENTITY tooltip.docDomain.label "Джерело документа:"> +<!ENTITY context.copy.label "Копіювати адресу"> +<!ENTITY tooltip.type.label "Тип:"> +<!ENTITY context.disablefilter.label "Вимкнути фільтр ?1?"> +<!ENTITY context.copyFilter.label "Копіювати фільтр"> +<!ENTITY context.block.label "Заблокувати елемент"> +<!ENTITY context.enablefilter.label "Знов увімкнути фільтр ?1?"> +<!ENTITY detach.label "Від’єднати"> +<!ENTITY whitelisted.label "Дозволений на цій сторінці"> +<!ENTITY context.disablefilteronsite.label "Вимкнути цей фільтр на ?1?"> +<!ENTITY detached.title "Adblock Plus: елементи відкритої сторінки (від’єднані)"> +<!ENTITY docDomain.firstParty "(запит з того ж сайта)"> +<!ENTITY tooltip.type.whitelisted "(дозволений)"> +<!ENTITY tooltip.filter.label "Застосований фільтр:"> +<!ENTITY tooltip.filter.disabled "(вимкнено)"> +<!ENTITY context.editfilter.label "Відредагувати застосований фільтр"> +<!ENTITY tooltip.type.blocked "(заблокований)"> +<!ENTITY size.label "Розмір"> +<!ENTITY context.whitelist.label "Вказати елемент як виняток"> +<!ENTITY context.selectAll.label "Вибрати все"> +<!ENTITY state.label "Статус"> +<!ENTITY docDomain.label "Джерело документа"> +<!ENTITY tooltip.address.label "Адреса:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/subscriptionSelection.dtd new file mode 100644 index 0000000..2b0d2c5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/uk/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "&Додати також підписку на фільтер «?1?»"> +<!ENTITY list.download.failed "Adblock Plus не зміг отримати перелік підписок"> +<!ENTITY list.download.retry "Спробувати ще раз"> +<!ENTITY title.label "&Назва підписки:"> +<!ENTITY list.download.website "Переглянути сайт"> +<!ENTITY supplementMessage "Ця фільтрова підписка призначена для використання в парі з фільтровою підпискою «?1?», котру ви наразі не використовуєте."> +<!ENTITY viewList.label "Переглянути фільтри"> +<!ENTITY visitHomepage.label "Відвідати домашню сторінку"> +<!ENTITY addSubscription.label "Додати підписку"> +<!ENTITY dialog.title "Додати підписку на фільтр Adblock Plus"> +<!ENTITY location.label "Розташ&ування списку з фільтром:"> +<!ENTITY fromWeb.description "Будь ласка підтвердіть що ви бажаєте додати цю фільтрову підписку. Ви можете змінити назву чи знаходження перед додаванням."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/composer.dtd new file mode 100644 index 0000000..71d2903 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "ở cuố&i địa chỉ"> +<!ENTITY domainRestriction.label "Giới hạn t&rên miền:"> +<!ENTITY collapse.default.no.label "Dùng mặc định (không)"> +<!ENTITY firstParty.label "Chỉ của bê&n thứ nhất"> +<!ENTITY preferences.label "&Hiện các bộ lọc đang có..."> +<!ENTITY pattern.label "Tìm mẫu"> +<!ENTITY thirdParty.label "Chỉ củ&a bên thứ ba"> +<!ENTITY filter.label "Bộ &lọc mới:"> +<!ENTITY collapse.label "&Thu gọn những mục bị chặn:"> +<!ENTITY match.warning "Mẫu mà bạn điền vào không còn khớp với địa chỉ cần được chặn/đưa vào danh sách trắng và sẽ không có ảnh hưởng đến nó."> +<!ENTITY anchor.start.label "ở đầ&u địa chỉ"> +<!ENTITY matchCase.label "&Phân biệt HOA thường"> +<!ENTITY custom.pattern.label "Tù&y biến:"> +<!ENTITY unselectAllTypes.label "Không chọn"> +<!ENTITY type.whitelist.label "&Quy luật ngoại lệ"> +<!ENTITY regexp.warning "Mẫu bạn gõ vào sẽ được xem là biểu thức quy tắc. Nhiều biểu thức quy tắc có thể làm chậm việc duyệt web của bạn. Nếu bạn không định dùng biểu thức quy tắc, hãy thêm một biểu tượng * ở cuối mẫu."> +<!ENTITY dialog.title "Thêm quy tắc lọc cho Adblock Plus"> +<!ENTITY basic.label "Hiển thị cơ bản"> +<!ENTITY type.filter.label "Bộ lọc chặn"> +<!ENTITY types.label "Áp dụng cho các kiểu:"> +<!ENTITY shortpattern.warning "Mẫu bạn gõ vào quá ngắn để tối ưu hóa, nhiều mẫu như vậy có thể làm chậm việc duyệt web của bạn. Lời khuyên là bạn hãy chọn một chuỗi dài hơn cho bộ lọc này."> +<!ENTITY collapse.yes.label "Có"> +<!ENTITY anchors.label "Chỉ chấp nhận mẫu:"> +<!ENTITY collapse.default.yes.label "Dùng mặc định (có)"> +<!ENTITY domainRestriction.help "Chọn một hay nhiều tên miền ngăn cách bằng dấu "|", bộ lọc sẽ chỉ được áp dụng trên những tên miền này. Dấu "~" trước một tên miền có nghĩa là bộ lọc sẽ không được áp dụng cho tên miền đó."> +<!ENTITY accept.label "Thêm bộ lọc"> +<!ENTITY options.label "Tùy chọn"> +<!ENTITY disabled.warning "Adblock Plus hiện đang bị vô hiệu hóa. Bạn vẫn có thể thêm các bộ lọc nhưng chúng sẽ không được áp dụng trừ khi bạn [link]kích hoạt Adblock Plus[/link]."> +<!ENTITY anchor.start.flexible.label "ở đầ&u tên miền"> +<!ENTITY collapse.no.label "Không"> +<!ENTITY selectAllTypes.label "Chọn tất cả"> +<!ENTITY advanced.label "Hiển thị nâng cao"> +<!ENTITY pattern.explanation "Mẫu có thể là bất kì phần nào của địa chỉ, biểu tượng * được dùng như một mặt nạ. Bộ lọc sẽ chỉ được áp dụng cho những địa chỉ phù hợp với mẫu."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/filters.dtd new file mode 100644 index 0000000..409f4a2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "Tất cả bộ lọc tùy biến của bạn sẽ được thay thế bởi nội dung của tập tin được chọn. Bạn có muốn thực hiện?"> +<!ENTITY slow.column "&Bộ lọc chậm"> +<!ENTITY enabled.column "&Bật"> +<!ENTITY subscription.lastDownload.checksumMismatch "Thất bại, mã băm không phù hợp"> +<!ENTITY noFiltersInGroup.text "Nhóm được chọn trống."> +<!ENTITY subscription.actions.label "Hành động"> +<!ENTITY filter.selectAll.label "Chọn tất cả"> +<!ENTITY backupButton.label "&Sao lưu và phục hồi"> +<!ENTITY restore.minVersion.warning "Cảnh báo: tập tin đã được tạo bởi phiên bản Adblock Plus mới hơn. Bạn cần cập nhập lên phiên bản mới nhất của Adblock Plus trước khi có thể khôi phục từ tập tin này."> +<!ENTITY restore.error "Dữ liệu của tập tin có thể không được xử lý, có lẽ đây không phải là một tập tin sao lưu của Adblock Plus?"> +<!ENTITY sort.ascending.label "Sắp xếp theo thứ tự &A > Z"> +<!ENTITY sort.label "Sắp &xếp theo"> +<!ENTITY subscription.source.label "Danh sách bộ lọc"> +<!ENTITY hitcount.column "&Số lần bấm"> +<!ENTITY noFilters.text "Bạn chưa có bộ lọc tùy biến nào."> +<!ENTITY backup.custom.title "Chỉ bộ lọc tùy biến"> +<!ENTITY subscription.external.label "Được cập nhập bởi ứng dụng khác"> +<!ENTITY subscription.delete.label "Xóa"> +<!ENTITY noGroupSelected.text "Bạn cần chọn nhóm cho bộ lọc trước khi nó được hiển thị"> +<!ENTITY filter.cut.label "Cắt"> +<!ENTITY restore.default.label "Khôi phục từ ?1?"> +<!ENTITY subscription.lastDownload.inProgress "Đang tải..."> +<!ENTITY subscriptions.tab.label "Đăng ký bộ lọc"> +<!ENTITY sort.descending.label "Sắp xếp theo thứ tự &Z > A"> +<!ENTITY filters.remove.warning "Bạn có thực sự muốn loại bỏ tất cả những bộ lọc được chọn?"> +<!ENTITY filter.delete.label "Xóa"> +<!ENTITY addSubscriptionAdd.label "Thêm"> +<!ENTITY viewMenu.label "Hiển thị"> +<!ENTITY subscription.lastDownload.unknown "N/A"> +<!ENTITY addSubscriptionCancel.label "Hủy"> +<!ENTITY subscription.enabled.label "Đã được bật"> +<!ENTITY noSubscriptions.text "Bạn chưa chọn bất kì bộ lọc nào ! AdBlock Plus không thể hoạt động nếu không có một bộ lọc, xin hãy sử dụng "Đăng ký bộ lọc" để thêm bộ lọc cho mình ."> +<!ENTITY subscription.update.label "Cập nhập bộ lọc"> +<!ENTITY dialog.title "Tùy chọn bộ lọc AdBlock Plus"> +<!ENTITY addFilter.label "&Thêm bộ lọc"> +<!ENTITY subscription.minVersion.warning "Bộ lọc này cần có phiên bản Adblock Plus mới hơn, bạn cần phải cập nhập lên phiên bản mới nhất của AdBlock Plus ."> +<!ENTITY subscription.lastDownload.invalidURL "Thất bại, không phải là địa chỉ hợp lệ"> +<!ENTITY backup.error "Có vấn đề khi ghi bộ lọc vào tập tin. Hãy chắc chắn rằng tập tin không bị bảo vệ ghi hoặc bị sử dụng bởi một ứng dụng khác."> +<!ENTITY filter.moveUp.label "Di chuyển lên"> +<!ENTITY addGroup.label "Thêm &nhóm bộ lọc"> +<!ENTITY filter.edit.label "Chỉnh sửa"> +<!ENTITY subscription.showHideFilters.label "Hiện/ẩn bộ lọc"> +<!ENTITY acceptableAds2.label "Cho phép một số quảng cáo không gây hại"> +<!ENTITY addSubscriptionOther.label "Thêm bộ lọc khác"> +<!ENTITY close.label "Đóng"> +<!ENTITY sort.none.label "&Chưa sắp xếp"> +<!ENTITY filter.actions.label "Hành động cho bộ lọc"> +<!ENTITY filter.copy.label "Chép"> +<!ENTITY filter.moveDown.label "Di chuyển xuống"> +<!ENTITY filter.resetHitCounts.label "Cài lại thống kê lượt bấm"> +<!ENTITY readMore.label "Đọc thêm"> +<!ENTITY subscription.moveUp.label "Chuyển lên trên"> +<!ENTITY addSubscription.label "Thêm bộ lọc"> +<!ENTITY subscription.homepage.label "Trang chủ"> +<!ENTITY backup.complete.title "Tất cả các bộ lọc và mục đăng ký"> +<!ENTITY restore.own.label "Khôi phục riêng"> +<!ENTITY restore.complete.warning "Tất cả tùy chỉnh bộ lọc của bạn sẽ được thay thế bởi nội dung của tập tin được chọn. Bạn có muốn thực hiện?"> +<!ENTITY filters.tab.label "Bộ lọc tùy biến"> +<!ENTITY backup.label "Tạo sao lưu mới"> +<!ENTITY find.label "&Tìm"> +<!ENTITY subscription.moveDown.label "Chuyển xuống dưới"> +<!ENTITY subscription.lastDownload.connectionError "Thất bại, tải xuống thất bại"> +<!ENTITY subscription.lastDownload.success "Hoàn thành"> +<!ENTITY subscription.lastDownload.invalidData "Thất bại, đây không phải là danh sách bộ lọc hợp lệ"> +<!ENTITY filter.paste.label "Dán"> +<!ENTITY subscription.disabledFilters.enable "Bật bộ lọc đã bị vô hiệu hóa"> +<!ENTITY lasthit.column "Lần bấm cuối"> +<!ENTITY subscription.editTitle.label "Sửa tiêu đề"> +<!ENTITY subscription.disabledFilters.warning "Một vài phần tử trong bộ lọc này đã bị vô hiệu hóa ."> +<!ENTITY filter.column "&Quy luật lọc"> +<!ENTITY subscription.lastDownload.label "Lần tải cuối:"> +<!ENTITY viewList.label "Xem danh sách"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/firstRun.properties new file mode 100644 index 0000000..74e60dc --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=Duyệt riêng tư bằng cách vô hiệu theo dõi - ẩn theo dõi của bạn từ các công ty quảng cáo theo dõi từng bước của bạn. +firstRun_toggle_off=TẮT +firstRun_feature_tracking=Vô hiệu hóa theo dõi +firstRun_feature_malware=Chặn phần mềm độc hại +firstRun_title=Adblock Plus đã được cài đặt +firstRun_acceptableAdsExplanation=Chúng tôi khuyến khích các trang mạng dùng những quảng cáo minh bạch, không phiền nhiễu. Đó là lí do tại sao chúng tôi gây dựng <a>hướng dẫn chặt chẽ</a> để xác định các quảng cáo được chấp nhận, hiện dưới mức thiết lập mặc định. Nếu bạn vẫn muốn chặn mọi quảng cáo, bạn có thể <a>vô hiệu</a> điều này trong một vài giây. +firstRun_toggle_on=BẬT +firstRun_contributor_credits=Đóng góp các khoản tín dụng +firstRun_dataCorruptionWarning=Có phải trang này luôn hiển thị? <a>Bấm vào đây</a> +firstRun_acceptableAdsHeadline=Những quảng cáo phiền phức sẽ bị chặn +firstRun_share=Nói với bạn bè của bạn +firstRun_share_headline=<a>Giúp chúng tôi một tay</a> trong việc làm trang mạng trở nên tốt hơn +firstRun_features=Adblock Plus có thể làm nhiều hơn là chặn quảng cáo +firstRun_feature_malware_description=Làm cho trình duyệt an toàn hơn bằng cách chặn các tên miền chứa phần mềm độc hại. +firstRun_feature_social_description=Tự động loại bỏ lịch duyệt của các nút truyền thông mạng xã hội, như là nút Thích Facebook, xuất hiện trên trang mạng và theo dõi hành vi của bạn. +firstRun_donate=ủng hộ +firstRun_donate_label=Hỗ trợ dự án của chúng tôi +firstRun_feature_social=Loại bỏ các nút bấm Phương tiện Mạng xã hội +firstRun_legacySafariWarning=Bạn đang dùng một phiên bản cũ của Safari không được hỗ trợ bởi Adblock Plus. Nó có thể không hoạt động chính xác hoặc làm giảm trải nghiệm của người dùng trên một số trang mạng. Chúng tôi rất khuyến khích cập nhật lên Safari 6.1.1 hoặc cao hơn (trên OS X 10.8 Mountain Lion), hoặc Safari 7.0.1 hoặc cao hơn (trên OS X 10.9 Mavericks), hoặc dùng phiên bản mới nhất của Mozilla Firefox, Google Chrome hoặc Opera. +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/global.properties new file mode 100644 index 0000000..39cabf8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=Không có mục nào trong trang hiện tại có thể chặn được +action3_tooltip=Nhấn để bật/tắt Adblock Plus. +notification_antiadblock_title=Ẩn tin nhắn mục tiêu? +type_label_script=văn lệnh +filter_elemhide_nocriteria=Không có chuẩn để nhận diện các phần tử bị ẩn +blockingGroup_title=Quy tắc chặn quảng cáo +whitelisted_tooltip=Adblock Plus bị vô hiệu ở trang hiện tại. +type_label_stylesheet=stylesheet +blocked_count_tooltip=?1? trong ?2? +type_label_font=phông +type_label_popup=cửa sổ bật lên +filter_regexp_tooltip=Bộ lọc này là một biểu thức chính quy hoặc là do quá ngắn nên không tối ưu hóa được. Quá nhiều bộ lọc như thế này có thể làm chậm việc duyệt của bạn. +action0_tooltip=Nhấn chuột trái để hiển thị trình đơn ngữ cảnh, nhấn chuột giữa để bật/tắt. +whitelisted_page=Adblock Plus đã bị vô hiệu hóa cho trang hiện tại +remove_group_warning=Bạn có thật sự muốn loại bỏ nhóm này? +action1_tooltip=Nhấn chuột trái để mở/đóng các mục có thể chặn được, nhấn chuột giữa để bật/tắt. +type_label_xmlhttprequest=yêu cầu XML +active_tooltip=Adblock Plus đã kích hoạt, ?1? bộ lọc trọn gói và ?2? bộ lọc tùy biến đang được dùng. +type_label_document=tài liệu +type_label_object_subrequest=yêu cầu con đối tượng +whitelistGroup_title=Quy tắc ngoại lệ +disabled_tooltip=Adblock Plus đã bị vô hiệu. +filter_elemhide_duplicate_id=Chỉ có thể xác định một ID của phần tử bị ẩn +type_label_object=đối tượng +action2_tooltip=Nhấn chuột trái để mở tùy chọn, nhấn chuột giữa để bật/tắt. +type_label_subdocument=khung +clearStats_warning=Điều này sẽ thiết lập lại toàn bộ thông số lượt bấm và vô hiệu đếm lượt bấm. Bạn có muốn thực hiện? +notification_antiadblock_message=Trang này đã được biết là hiện tin nhắn mục tiêu cho người dùng Adblock Plus. Bạn có muốn Adblock Plus ẩn tin nhắn mục tiêu? +blocked_count_addendum=(trong danh sách trắng: ?1?, bị ẩn: ?2?) +subscription_invalid_location=Địa chỉ để tải bộ lọc không phải là một URL hay tên tập tin hợp lệ. +type_label_image=ảnh +remove_subscription_warning=Bạn có thật sự muốn xóa bộ trọn gói này không? +type_label_other=khác +mobile_menu_enable=ABP: Bật +type_label_media=tiếng/phim +mobile_menu_disable_site=ABP: Vô hiệu trên ?1? +elemhideGroup_title=Quy tắc ẩn phần tử +mobile_menu_enable_site=ABP: Kích hoạt trên ?1? +type_label_elemhide=ẩn +newGroup_title=Nhóm lọc mới +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/overlay.dtd new file mode 100644 index 0000000..71de231 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&Có"> +<!ENTITY notification.button.no "&Không"> +<!ENTITY sync.label "Đồng bộ thiết lập Adbl&ock Plus"> +<!ENTITY whitelist.site.label "Vô hiệu hóa trên ?1?"> +<!ENTITY filters.label "&Tùy chỉnh bộ lọc"> +<!ENTITY disable.label "Vô hiệu hóa ở mọi nơi"> +<!ENTITY objecttab.title "Chặn"> +<!ENTITY objecttab.tooltip "Nhấn vào đây để chặn đối tượng này với Adblock Plus"> +<!ENTITY menuitem.label "Tùy chọn Adblock &Plus"> +<!ENTITY objecttabs.label "Hiện thẻ trên Flash và Java"> +<!ENTITY sendReport.label "&Báo cáo vấn đề trên trang này"> +<!ENTITY whitelist.page.label "Chỉ vô hiệu hóa trên trang này"> +<!ENTITY context.image.label "Adblock Plus: Chặn Ảnh"> +<!ENTITY counthits.label "Đếm lượt &bấm bộ lọc"> +<!ENTITY opensidebar.label "&Mở các mục có thể chặn được"> +<!ENTITY notification.button.close "Đó&ng"> +<!ENTITY contribute.label "Đóng góp cho Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus: Chặn Khung"> +<!ENTITY blocked.tooltip "Các mục bị chặn trong trang này:"> +<!ENTITY hideplaceholders.label "Ẩn &chỗ giữ các yếu tố bị chặn"> +<!ENTITY showinstatusbar.label "Hiện t&rong thanh trạng thái"> +<!ENTITY sidebar.title "Các mục bị chặn trên trang hiện tại"> +<!ENTITY options.label "Tù&y chọn"> +<!ENTITY context.object.label "Adblock Plus: Chặn Đối Tượng"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: Kích Hoạt Lại trên Trang Này"> +<!ENTITY filters.tooltip "Các bộ lọc có hiệu lực nhất:"> +<!ENTITY closesidebar.label "Đóng các &mục có thể chặn được"> +<!ENTITY showintoolbar.label "Hiện trong thanh &công cụ"> +<!ENTITY status.tooltip "Trạng thái:"> +<!ENTITY context.media.label "Adblock Plus: Chặn nhạc/phim"> +<!ENTITY subscription.update.label "Cập nhập bộ lọc"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/sendReport.dtd new file mode 100644 index 0000000..d6b50b7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/sendReport.dtd @@ -0,0 +1,65 @@ +<!ENTITY screenshot.undo.label "&Hoàn tác"> +<!ENTITY issues.disabledgroups.description "Bộ lọc trọn gói/nhóm bộ lọc sau đã bị vô hiệu hóa, song chúng có thể vẫn gây ảnh hưởng tới trang này:"> +<!ENTITY showData.label "Hiện dữ liệu báo cáo"> +<!ENTITY typeSelector.falsePositive.label "&Adblock Plus chặn quá nhiều"> +<!ENTITY issues.change.description "Cấu hình của bạn đã được thay đổi. Vui lòng tải lại trang để kiểm tra thay đổi và gửi lên một báo cáo nếu vấn đề vẫn chưa được giải quyết sau sự điều chỉnh."> +<!ENTITY email.label "Địa chỉ&mail:"> +<!ENTITY issues.openPreferences.label "Mở tùy chỉnh bộ lọc"> +<!ENTITY sendPage.confirmation "Báo cáo của bạn đã được lưu. Bạn có thể truy cập nó tại địa chỉ sau:"> +<!ENTITY copyLink.label "Chép liên kết báo cáo"> +<!ENTITY issues.nofilters.description "Adblock Plus đang không chặn bất kì thứ gì trên trang hiện tại. Vấn đề mà bạn theo dõi có vẻ như không liên quan tới Adblock Plus."> +<!ENTITY sendPage.knownIssue "Vấn đề mà bạn báo cáo có thể đã được biết. Thông tin thêm:"> +<!ENTITY typeSelector.other.description "Chọn tùy chọn này nếu bạn nghi ngờ một vấn đề với bản thân Adblock Plus hơn là do bộ lọc của nó."> +<!ENTITY issues.disabledgroups.enable.label "Kích hoạt bộ lọc trọn gói/nhóm bộ lọc"> +<!ENTITY typeWarning.override.label "Tôi hiể&u và vẫn muốn gửi báo cáo"> +<!ENTITY issues.disabled.enable.label "Kích hoạt Adblock Plus"> +<!ENTITY update.fixed.description "Bản cập nhập đến bộ lọc của bạn có vẻ như đã sửa được lỗi mà bạn đang thông báo. Vui lòng tải lại trang và thử lại, nhấn Báo cáo lỗi lần nữa nếu vấn đề vẫn còn tiếp diễn."> +<!ENTITY anonymous.label "&Gửi thông tin ẩn danh"> +<!ENTITY reloadButton.label "Tải lại tr&ang"> +<!ENTITY recentReports.clear.label "&Xóa tất cả báo cáo"> +<!ENTITY typeSelector.description "Cửa sổ này sẽ hướng dẫn bạn qua các bước cần thiết cho việc gửi lên một báo cáo vấn đề của Adblock Plus. Trước tiên, hãy chọn kiểu vấn đề mà bạn đang gặp trên trang này:"> +<!ENTITY screenshot.remove.label "Xóa dữ liệu nhạ&y cảm"> +<!ENTITY issues.ownfilters.description "Một số bộ lọc áp dụng trên trang này do người dùng tự tạo ra. Vui lòng vô hiệu hóa các bộ lọc có thể đã gây ra vấn đề này:"> +<!ENTITY update.inProgress.description "Adblock Plus cần phải cập nhập bộ lọc quảng cáo để chắc chắn rằng vấn đề chưa được giải quyết. Xin chờ..."> +<!ENTITY sendPage.retry.label "Gửi lại"> +<!ENTITY data.label "&Dữ liệu báo cáo:"> +<!ENTITY recentReports.label "Các báo cáo được gửi lên gần đây của bạn"> +<!ENTITY typeWarning.description "Bạn cho biết rằng bạn muốn báo cáo một vấn đề thông thường của Adblock Plus chứ không phải là bộ lọc. Vui lòng lưu ý rằng các vấn đề đó tốt hơn nên được báo cáo trong [link]diễn đàn Adblock Plus[/link]. Bạn chỉ nên dùng trình báo cáo vấn đề để bổ sung các thảo luận đang mở, vì không ai chú ý tới báo cáo của bạn trừ khi bạn cung cấp cho họ một liên kết tới nó. Liên kết được tự động tạo ra sẽ được cung cấp sau khi gửi lên báo cáo."> +<!ENTITY issues.disabled.description "Adblock Plus đang bị tắt, nó sẽ không chặn bất kì thứ gì trong tình trạng hiện tại."> +<!ENTITY attachExtensions.label "Đính kèm danh sách các phần mở rộng đang dùng vào báo cáo trong trường hợp xung đột tiện ích là nguyên nhân của vấn đề"> +<!ENTITY issues.nosubscriptions.add.label "Thêm bộ lọc trọn gói"> +<!ENTITY issues.disabledfilters.enable.label "Kích hoạt bộ lọc"> +<!ENTITY issues.override.label "&Cấu hình này đúng rồi, hãy tiếp tục báo cáo"> +<!ENTITY issues.nosubscriptions.description "Có vẻ như bạn không đăng kí dùng bất kì danh sách bộ lọc tạo sẵn nào."> +<!ENTITY typeSelector.falsePositive.description "Chọn tùy chọn này nếu trang thiếu nội dung quan trọng, hiển thị không chính xác hoặc không vận hành đúng. Bạn có thể xác định xem Adblock Plus có phải là nguyên nhân không bằng cách tạm thời vô hiệu hóa nó."> +<!ENTITY typeSelector.other.label "&Vấn đề khác"> +<!ENTITY emailComment.label "Chúng tôi khuyến khích bạn nhập địa chỉ email hợp lệ để chúng tôi tiện liên lạc nếu chúng tôi cần gì từ thông báo của bạn. Đồng thời, nó cũng giúp chúng tôi có thể ghi nhận công lao đóng góp của bạn ."> +<!ENTITY issues.whitelist.remove.label "Bật lại Adblock Plus trên trang này"> +<!ENTITY outdatedSubscriptions.description "Bộ lọc sau đã không được cập nhập từ hai tuần trước. Vui lòng cập nhập bộ lọc trước khi gửi thông báo lỗi, có thể vấn đề đã được giải quyết từ trước."> +<!ENTITY dataCollector.description "Vui lòng đợi một lát trong khi Adblock Plus thu thập dữ liệu cần thiết."> +<!ENTITY sendButton.label "&Gửi báo cáo"> +<!ENTITY comment.label "&Bình luận (phụ):"> +<!ENTITY sendPage.errorMessage "Một nỗ lực gửi báo cáo bị thất bại với mã lỗi "?1?". Vui lòng chắc chắn rằng bạn đã được kết nối Internet rồi thử lại. Nếu vấn đề vẫn còn, vui lòng yêu cầu trợ giúp trên [link]diễn đàn Adblock Plus[/link]."> +<!ENTITY showRecentReports.label "Hiện các báo cáo được gửi lên gần đây"> +<!ENTITY commentPage.heading "Điền bình luận"> +<!ENTITY update.start.label "Bắt đầu cập nhập ngay"> +<!ENTITY issues.disabledfilters.description "Các bộ lọc sau đã bị vô hiệu hóa, song chúng có thể vẫn gây ảnh hưởng tới trang này:"> +<!ENTITY screenshot.description "Cùng một trang có thể trông khác đối với nhiều người khác nhau. Chúng tôi có thể hiểu vấn đề hơn nếu bạn đính kèm một ảnh chụp màn hình vào báo cáo. Bạn có thể xóa các phần chứa thông tin nhạy cảm cũng như đánh dấu các vùng dễ nhận thấy vấn đề. Để làm việc đó, nhấn chuột vào nút liên quan và chọn vùng hình ảnh bằng chuột của bạn."> +<!ENTITY screenshot.attach.label "Đính &kèm ảnh chụp trang vào báo cáo"> +<!ENTITY issues.whitelist.description "Adblock Plus hiện đang bị tắt trên trang mà bạn báo cáo. Vui lòng bật nó lại và tải lại trang trước khi gửi báo cáo."> +<!ENTITY typeSelector.falseNegative.label "Adbloc&k Plus không chặn một quảng cáo"> +<!ENTITY typeSelector.heading "Chọn kiểu vấn đề"> +<!ENTITY anonymity.warning "Chúng tôi không thể trở lại với bạn và sẽ hạ mức ưu tiên của báo cáo của bạn."> +<!ENTITY wizard.title "Trình báo cáo lỗi"> +<!ENTITY issues.ownfilters.disable.label "Vô hiệu hóa bộ lọc"> +<!ENTITY commentPage.description "Trường văn bản bên dưới cho phép bạn điền bình luận để giúp chúng tôi hiểu vấn đề. Bước này chỉ là phụ nhưng được khuyến khích nếu vấn đề không rõ ràng. Bạn cũng có thể xem lại dữ liệu báo cáo trước khi gửi."> +<!ENTITY comment.lengthWarning "Độ dài bình luận của bạn vượt qua 1000 kí tự. Chỉ 1000 kí tự đầu tiên sẽ được gửi đi."> +<!ENTITY typeSelector.falseNegative.description "Chọn tùy chọn này nếu một quảng cáo vẫn hiển thị cho dù Adblock Plus đang được bật."> +<!ENTITY sendPage.waitMessage "Vui lòng đợi trong khi Adblock Plus đang gửi lên báo cáo của bạn."> +<!ENTITY dataCollector.heading "Chào mừng đến với trình báo cáo vấn đề"> +<!ENTITY screenshot.heading "Đính kèm ảnh chụp"> +<!ENTITY sendPage.heading "Gửi báo cáo"> +<!ENTITY issues.subscriptionCount.description "Có vẻ như bạn đăng kí dùng quá nhiều bộ lọc trọn gói. Thiết lập này không được khuyến khích vì nó làm khả năng xảy ra vấn đề cao hơn. Chúng tôi cũng không thể chấp nhận báo cáo vấn đề của bạn vì không cho thấy rõ tác giả bộ lọc trọn gói nào cần hành động. Vui lòng xóa tất cả và để lại các bộ lọc trọn gói cần thiết rồi kiểm tra thử xem vấn đề còn không."> +<!ENTITY screenshot.mark.label "Đánh dấ&u vấn đề"> +<!ENTITY privacyPolicy.label "Chính sách riêng tư"> +<!ENTITY issues.description "Adblock Plus nhận thấy vấn đề với cấu hình của bạn, điều có thể chịu trách nhiệm cho vấn đề hoặc làm cho việc kiểm tra báo cáo khó khăn hơn."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/sidebar.dtd new file mode 100644 index 0000000..02208a2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "Nhấp nháy quanh viền của mục này"> +<!ENTITY address.label "Địa chỉ"> +<!ENTITY context.open.label "Mở trong Thẻ Mới"> +<!ENTITY type.label "Kiểu"> +<!ENTITY tooltip.filterSource.label "Nguồn bộ lọc:"> +<!ENTITY noitems.label "Không có mục nào có thể chặn được"> +<!ENTITY filter.label "Bộ lọc"> +<!ENTITY tooltip.size.label "Kích thước:"> +<!ENTITY reattach.label "Đính lại"> +<!ENTITY search.label "Tì&m:"> +<!ENTITY docDomain.thirdParty "(bên thứ ba)"> +<!ENTITY filterSource.label "Nguồn bộ lọc"> +<!ENTITY tooltip.docDomain.label "Nguồn tài liệu:"> +<!ENTITY context.copy.label "Chép địa chỉ của mục này"> +<!ENTITY tooltip.type.label "Kiểu:"> +<!ENTITY context.disablefilter.label "Vô hiệu hóa bộ lọc ?1?"> +<!ENTITY context.copyFilter.label "Chép bộ lọc"> +<!ENTITY context.block.label "Chặn mục này"> +<!ENTITY context.enablefilter.label "Kích hoạt lại bộ lọc ?1?"> +<!ENTITY detach.label "Tách rời"> +<!ENTITY whitelisted.label "Trang nằm trong sổ trắng"> +<!ENTITY context.disablefilteronsite.label "Vô hiệu hóa bộ lọc này trên ?1?"> +<!ENTITY detached.title "Adblock Plus: các mục có thể chặn (tách rời)"> +<!ENTITY docDomain.firstParty "(bên thứ nhất)"> +<!ENTITY tooltip.type.whitelisted "(sổ trắng)"> +<!ENTITY tooltip.filter.label "Bộ lọc đang có hiệu lực:"> +<!ENTITY tooltip.filter.disabled "(bị vô hiệu hóa)"> +<!ENTITY context.editfilter.label "Chỉnh sửa bộ lọc đang có hiệu lực"> +<!ENTITY tooltip.type.blocked "(đã chặn)"> +<!ENTITY size.label "Kích thước"> +<!ENTITY context.whitelist.label "Thêm quy luật ngoại lệ cho mục"> +<!ENTITY context.selectAll.label "Chọn tất cả"> +<!ENTITY state.label "Tình trạng"> +<!ENTITY docDomain.label "Nguồn tài liệu"> +<!ENTITY tooltip.address.label "Địa chỉ:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/subscriptionSelection.dtd new file mode 100644 index 0000000..804c14b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/vi/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "Kèm thêm bộ lọc trọn &gói "?1?""> +<!ENTITY list.download.failed "Adblock Plus không thể lấy danh sách bộ lọc trọn gói."> +<!ENTITY list.download.retry "Thử lại"> +<!ENTITY title.label "&Tiêu đề của bộ trọn gói:"> +<!ENTITY list.download.website "Xem trang mạng"> +<!ENTITY supplementMessage "Bộ lọc trọn gói này chỉ nên dùng kèm với bộ lọc trọn gói "?1?" - cái mà bạn chưa sử dụng."> +<!ENTITY viewList.label "Xem bộ lọc"> +<!ENTITY visitHomepage.label "Vào trang chủ"> +<!ENTITY addSubscription.label "Thêm bộ trọn gói"> +<!ENTITY dialog.title "Thêm bộ lọc trọn gói cho Adblock Plus"> +<!ENTITY location.label "Đị&a chỉ của danh sách bộ lọc:"> +<!ENTITY fromWeb.description "Vui lòng xác nhận rằng bạn muốn thêm bộ lọc trọn gói này. Bạn có thể thay đổi tiêu đề hoặc địa chỉ trước khi thêm nó."> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/composer.dtd new file mode 100644 index 0000000..2ed029e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "在地址末尾 (&n)"> +<!ENTITY domainRestriction.label "限制域: (&d)"> +<!ENTITY collapse.default.no.label "使用默认值 (否)"> +<!ENTITY firstParty.label "仅第一方 (&r)"> +<!ENTITY preferences.label "显示所有屏蔽规则…… (&S)"> +<!ENTITY pattern.label "查找模式"> +<!ENTITY thirdParty.label "仅第三方 (&T)"> +<!ENTITY filter.label "新建屏蔽规则: (&f)"> +<!ENTITY collapse.label "折叠已屏蔽: (&l)"> +<!ENTITY match.warning "您输入的模式不是该地址的过滤/例外规则,将不会对该地址产生任何效果。"> +<!ENTITY anchor.start.label "在地址开始处 (&g)"> +<!ENTITY matchCase.label "匹配大小写 (&M)"> +<!ENTITY custom.pattern.label "自定义: (&C)"> +<!ENTITY unselectAllTypes.label "全不选"> +<!ENTITY type.whitelist.label "例外规则 (&x)"> +<!ENTITY regexp.warning "您输入的模式将以正则表达式解释。此正则表达式不能高效地在Adblock Plus上运行,并且可能会降低您浏览的速度。如果您不希望使用正则表达式,请在模式末尾添加一个星号(*)。"> +<!ENTITY dialog.title "添加 Adblock Plus 过滤规则"> +<!ENTITY basic.label "基本视图"> +<!ENTITY type.filter.label "屏蔽规则 (&B)"> +<!ENTITY types.label "适用于类型:"> +<!ENTITY shortpattern.warning "您输入的模式太短而不能被优化,过多这样的模式会降低您浏览的速度。推荐您为该过滤规则选择一个长些的字符串,这样 Adblock Plus 才能更有效地处理。"> +<!ENTITY collapse.yes.label "是"> +<!ENTITY anchors.label "仅接受模式:"> +<!ENTITY collapse.default.yes.label "使用默认值 (是)"> +<!ENTITY domainRestriction.help "由竖线(|)分隔的一个或多个域,过滤规则仅应用于这些域上。域名前有代字符(~),表示过滤规则不应该应用于该域上。"> +<!ENTITY accept.label "添加过滤规则"> +<!ENTITY options.label "选项"> +<!ENTITY disabled.warning "Adblock Plus 目前处于禁用状态。您可以继续添加过滤规则,但是这些规则在您[link]启用 Adblock Plus[/link] 之后才能生效。"> +<!ENTITY anchor.start.flexible.label "在域名开始处 (&g)"> +<!ENTITY collapse.no.label "否"> +<!ENTITY selectAllTypes.label "全选"> +<!ENTITY advanced.label "高级视图"> +<!ENTITY pattern.explanation "模式可以是地址的任意部分,星号(*)是通配符。过滤规则只会应用到与模式匹配的地址上。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/filters.dtd new file mode 100644 index 0000000..23ccf7c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/filters.dtd @@ -0,0 +1,73 @@ +<!ENTITY restore.custom.warning "您所有的自定义规则将被选择的文件中的内容所替代。您是否继续?"> +<!ENTITY slow.column "慢速过滤规则 (&w)"> +<!ENTITY enabled.column "启用 (&n)"> +<!ENTITY subscription.lastDownload.checksumMismatch "失败,检验和不匹配"> +<!ENTITY noFiltersInGroup.text "选择的分组是空的。"> +<!ENTITY subscription.actions.label "操作"> +<!ENTITY filter.selectAll.label "全选"> +<!ENTITY backupButton.label "备份与还原 (&B)"> +<!ENTITY restore.minVersion.warning "警告:该文件由新版本的 Adblock Plus 创建。您应该先更新至最新版本的 Adblock Plus 然后再还原该文件。"> +<!ENTITY restore.error "无法处理该文件,可能该文件不是 Adblock Plus 备份文件?"> +<!ENTITY sort.ascending.label "&A > Z 顺序"> +<!ENTITY sort.label "排序 (&S)"> +<!ENTITY subscription.source.label "过滤规则列表"> +<!ENTITY hitcount.column "计数 (&H)"> +<!ENTITY noFilters.text "您还没有自定义过滤规则。"> +<!ENTITY backup.custom.title "仅自定义过滤规则"> +<!ENTITY subscription.external.label "由其他扩展更新"> +<!ENTITY subscription.delete.label "删除"> +<!ENTITY noGroupSelected.text "要想显示过滤规则分组中的过滤规则,您必须先选择一个过滤规则分组。"> +<!ENTITY filter.cut.label "剪切"> +<!ENTITY restore.default.label "还原到 ?1? 的备份"> +<!ENTITY subscription.lastDownload.inProgress "正在下载……"> +<!ENTITY subscriptions.tab.label "过滤规则订阅组"> +<!ENTITY sort.descending.label "&Z > A 顺序"> +<!ENTITY filters.remove.warning "您确定要移除所有选定的过滤规则吗?"> +<!ENTITY filter.delete.label "删除"> +<!ENTITY addSubscriptionAdd.label "添加"> +<!ENTITY viewMenu.label "查看"> +<!ENTITY subscription.lastDownload.unknown "未知"> +<!ENTITY addSubscriptionCancel.label "取消"> +<!ENTITY subscription.enabled.label "启用"> +<!ENTITY noSubscriptions.text "您还没有添加过滤规则订阅组。Adblock Plus 没有过滤规则将无法 +进行屏蔽,请使用 “添加过滤规则订阅组” 添加过滤规则。"> +<!ENTITY subscription.update.label "更新过滤规则"> +<!ENTITY dialog.title "Adblock Plus 过滤规则首选项"> +<!ENTITY addFilter.label "添加过滤规则 (&d)"> +<!ENTITY subscription.minVersion.warning "该过滤规则订阅组需要新版本的 Adblock Plus,您应该更新至最新的 Adblock Plus。"> +<!ENTITY subscription.lastDownload.invalidURL "失败,不是有效地址"> +<!ENTITY backup.error "将过滤规则写入文件时发生错误。请确认该文件没有写保护或者正在被其他程序使用。"> +<!ENTITY filter.moveUp.label "上移"> +<!ENTITY addGroup.label "添加过滤规则分组 (&g)"> +<!ENTITY filter.edit.label "编辑"> +<!ENTITY subscription.showHideFilters.label "显示/隐藏过滤规则"> +<!ENTITY acceptableAds2.label "允许一些非侵入式广告 (&i)"> +<!ENTITY addSubscriptionOther.label "添加其他过滤规则订阅组"> +<!ENTITY close.label "关闭"> +<!ENTITY sort.none.label "不排序 (&U)"> +<!ENTITY filter.actions.label "过滤规则操作"> +<!ENTITY filter.copy.label "复制"> +<!ENTITY filter.moveDown.label "下移"> +<!ENTITY filter.resetHitCounts.label "重置生效次数统计"> +<!ENTITY readMore.label "深入了解"> +<!ENTITY subscription.moveUp.label "上移"> +<!ENTITY addSubscription.label "添加过滤规则订阅组 (&f)"> +<!ENTITY subscription.homepage.label "主页"> +<!ENTITY backup.complete.title "所有订阅组和自定义规则"> +<!ENTITY restore.own.label "还原自己的备份"> +<!ENTITY restore.complete.warning "您所有的过滤规则参数将被选择的文件中的内容所替代。您是否继续?"> +<!ENTITY filters.tab.label "自定义过滤规则"> +<!ENTITY backup.label "创建新备份"> +<!ENTITY find.label "查找 (&n)"> +<!ENTITY subscription.moveDown.label "下移"> +<!ENTITY subscription.lastDownload.connectionError "失败,下载失败"> +<!ENTITY subscription.lastDownload.success "成功"> +<!ENTITY subscription.lastDownload.invalidData "失败,不是有效的过滤规则列表"> +<!ENTITY filter.paste.label "粘贴"> +<!ENTITY subscription.disabledFilters.enable "启用已禁用的过滤规则"> +<!ENTITY lasthit.column "最后生效时间 (&L)"> +<!ENTITY subscription.editTitle.label "编辑标题"> +<!ENTITY subscription.disabledFilters.warning "该过滤规则订阅组中的某些过滤规则被禁用。"> +<!ENTITY filter.column "过滤规则 (&F)"> +<!ENTITY subscription.lastDownload.label "最后下载于:"> +<!ENTITY viewList.label "查看列表"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/firstRun.properties new file mode 100644 index 0000000..e318330 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=隐秘浏览避开跟踪 - 摆脱广告公司跟踪你的一举一动。 +firstRun_toggle_off=关闭 +firstRun_feature_tracking=禁止跟踪 +firstRun_feature_malware=拦截恶意软件 +firstRun_title=Adblock Plus 已安装 +firstRun_toggle_on=开启 +firstRun_acceptableAdsExplanation=我们想鼓励网站使用简单、不使人反感的广告。这也是为什么我们建立了一个<a>严格的指导方针</a>来确定可接受的广告,并在默认设置下展示它们。如果您仍想屏蔽所有广告,您可以轻松地<a>禁用</a>这项功能。 +firstRun_contributor_credits=贡献者记录 +firstRun_dataCorruptionWarning=总是显示此页?<a>点击这里!</a> +firstRun_acceptableAdsHeadline=恼人的广告将被屏蔽 +firstRun_share=告诉你的朋友 +firstRun_share_headline=<a>给我们一点支持</a>,让网络变得更加美好 +firstRun_feature_social_description=自动屏蔽网页中出现的社交媒体按钮,例如 Facebook 的 Like,摆脱行为跟踪。 +firstRun_filterlistsReinitializedWarning=似乎因一个问题导致所有过滤规则已被删除,并且我们无法从备份中恢复。因此,我们不得不重置您的过滤规则和可接受广告设置。请在 <a>Adblock Plus 选项</a> 中检查您的过滤规则列表和可接受广告设置。 +firstRun_feature_malware_description=使您的浏览更安全,阻止已知的恶意软件域。 +firstRun_features=Adblock Plus 不仅仅能拦截广告 +firstRun_donate=捐赠 +firstRun_donate_label=支持我们的项目 +firstRun_feature_social=移除社交媒体按钮 +firstRun_legacySafariWarning=Adblock Plus 不支持您正在使用的 Safari 旧版本。这可能导致无法正常工作,或者损害一些网站上的用户体验。我们强烈建议您更新到 Safari 6.1.1 或更高版本(基于 OS X 10.8 Mountain Lion),或 Safari 7.0.1 或更高版本(基于 OS X 10.9 Mavericks),或者使用 Mozilla Firefox、Google Chrome 或 Opera 浏览器的最新版本。 diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/global.properties new file mode 100644 index 0000000..48387e9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=当前页面无可过滤项目 +action3_tooltip=点击切换启用/禁用 Adblock Plus。 +notification_antiadblock_title=隐藏针对性的信息? +type_label_script=脚本 +filter_elemhide_nocriteria=没有指定要隐藏元素的识别标准 +blockingGroup_title=广告屏蔽规则 +whitelisted_tooltip=Adblock Plus 在当前页禁用。 +type_label_stylesheet=样式表 +blocked_count_tooltip=第 ?1? 项,共 ?2? 项 +type_label_font=字体 +type_label_popup=弹出窗口 +filter_regexp_tooltip=该过滤规则是正则表达式或者太短而无法优化。如果这种类型的过滤规则太多会降低您浏览的速度。 +action0_tooltip=点击弹出快捷菜单,中键点击切换启用/禁用。 +whitelisted_page=Adblock Plus 在当前页面已禁用 +remove_group_warning=您希望移除该组吗? +action1_tooltip=点击打开/关闭可过滤项目,中键点击切换启用/禁用。 +type_label_xmlhttprequest=XML 请求 +active_tooltip=Adblock Plus 处于启用状态,正在使用 ?1? 过滤规则订阅组和 ?2? 自定义过滤规则。 +type_label_document=文档 +type_label_object_subrequest=对象子请求 +whitelistGroup_title=例外规则 +disabled_tooltip=Adblock Plus 已禁用。 +filter_elemhide_duplicate_id=仅可以指定一个要隐藏的元素 ID +type_label_object=对象 +action2_tooltip=点击打开首选项,中键点击切换启用/禁用。 +type_label_subdocument=帧 +clearStats_warning=此操作将禁用并重置所有过滤规则生效次数统计。您确定要这样做吗? +notification_antiadblock_message=此网站已知会对 Adblock Plus 用户显示针对性的信息。您想让 Adblock Plus 隐藏针对性的信息吗? +blocked_count_addendum=(白名单: ?1?, 隐藏: ?2?) +subscription_invalid_location=过滤规则列表的位置不是有效的 URL 或有效的文件名。 +type_label_image=图片 +remove_subscription_warning=您确定要移除该过滤规则订阅组吗? +type_label_other=其他 +mobile_menu_enable=ABP:启用 +type_label_media=音频/视频 +mobile_menu_disable_site=ABP:在 ?1? 禁用 +elemhideGroup_title=元素隐藏规则 +mobile_menu_enable_site=ABP:在 ?1? 启用 +type_label_elemhide=隐藏 +newGroup_title=新建过滤规则组 +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/overlay.dtd new file mode 100644 index 0000000..cf9ea7f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "是(&Y)"> +<!ENTITY notification.button.no "否(&N)"> +<!ENTITY sync.label "同步 Adblo&ck Plus 设置"> +<!ENTITY whitelist.site.label "在 ?1? 禁用 Adblock Plus"> +<!ENTITY filters.label "过滤规则首选项 (&F)"> +<!ENTITY disable.label "完全禁用"> +<!ENTITY objecttab.title "屏蔽"> +<!ENTITY objecttab.tooltip "点击这里用 Adblock Plus 屏蔽该对象"> +<!ENTITY menuitem.label "Ad&block Plus 首选项"> +<!ENTITY objecttabs.label "在 Flash 和 Java 上显示标签 (&t)"> +<!ENTITY sendReport.label "报告该页面上的问题 (&R)"> +<!ENTITY whitelist.page.label "仅在本页禁用 Adblock Plus"> +<!ENTITY context.image.label "过滤图片(Adblock Plus)"> +<!ENTITY counthits.label "统计过滤规则生效次数 (&h)"> +<!ENTITY opensidebar.label "打开可过滤项目 (&b)"> +<!ENTITY notification.button.close "关闭(&C)"> +<!ENTITY contribute.label "助力 Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "过滤帧(Adblock Plus)"> +<!ENTITY blocked.tooltip "该页上已过滤的项目:"> +<!ENTITY hideplaceholders.label "隐藏已屏蔽元素的占位符 (&l)"> +<!ENTITY showinstatusbar.label "在状态栏显示 (&s)"> +<!ENTITY sidebar.title "本页可过滤的项目"> +<!ENTITY options.label "选项 (&O)"> +<!ENTITY context.object.label "过滤对象(Adblock Plus)"> +<!ENTITY context.removeWhitelist.label "Adblock Plus: 在此页面上重新启用"> +<!ENTITY filters.tooltip "最活跃过滤规则:"> +<!ENTITY closesidebar.label "关闭可过滤项目 (&b)"> +<!ENTITY showintoolbar.label "在工具栏显示 (&b)"> +<!ENTITY status.tooltip "状态:"> +<!ENTITY context.media.label "过滤视频/音频(Adblock Plus)"> +<!ENTITY subscription.update.label "更新过滤规则"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/sendReport.dtd new file mode 100644 index 0000000..2b2152e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/sendReport.dtd @@ -0,0 +1,78 @@ +<!ENTITY screenshot.undo.label "撤销 (&U)"> +<!ENTITY issues.disabledgroups.description "如下过滤规则订阅组或过滤规则组处于禁用状态,但是它们可能对该页面有效:"> +<!ENTITY showData.label "显示报告数据"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus 屏蔽了太多元素 (&m)"> +<!ENTITY issues.change.description "您的设置已更改。请重新载入页面来测试更改,如果问题依旧存在解决再提交报告。"> +<!ENTITY email.label "电子邮箱 (&m)"> +<!ENTITY issues.openPreferences.label "打开过滤规则首选项"> +<!ENTITY sendPage.confirmation "您的报告已被保存。您可以通过如下地址访问:"> +<!ENTITY copyLink.label "复制报告链接 (&C)"> +<!ENTITY issues.nofilters.description "Adblock Plus 在当前页面上未屏蔽任何元素。您遇到的问题很可能与 Adblock Plus 无关。"> +<!ENTITY sendPage.knownIssue "您提交的问题可能是个已知问题。详情见:"> +<!ENTITY typeSelector.other.description "如果您怀疑问题出在 Adblock Plus 自身而不是过滤规则,请选择此选项。"> +<!ENTITY issues.disabledgroups.enable.label "启用过滤规则订阅组/过滤规则分组"> +<!ENTITY typeWarning.override.label "我了解并仍然希望提交报告 (&s)"> +<!ENTITY issues.disabled.enable.label "启用 Adblock Plus"> +<!ENTITY update.fixed.description "更新的过滤规则订阅组可能已解决了您报告的问题。请重新载入页面并重试,如果问题仍然存在,您再继续报告问题。"> +<!ENTITY anonymous.label "匿名提交 (&A)"> +<!ENTITY reloadButton.label "重新载入页面 (&R)"> +<!ENTITY recentReports.clear.label "移除所有报告 (&R)"> +<!ENTITY typeSelector.description "本窗口将通过一系列步骤引导您提交 Adblock Plus 问题报告。 +首先,请在本页选择您遇到的问题类型:"> +<!ENTITY screenshot.remove.label "移除敏感数据 (&R)"> +<!ENTITY issues.ownfilters.description "一些应用到该页面的过滤规则是由用户自定义的。 +请禁用这些可能导致该问题的过滤规则:"> +<!ENTITY update.inProgress.description "Adblock Plus 需要更新您的过滤规则订阅组以确保问题还未被解决。请稍等……"> +<!ENTITY sendPage.retry.label "再次发送"> +<!ENTITY data.label "报告数据:(&p)"> +<!ENTITY recentReports.label "您最近提交的报告"> +<!ENTITY typeWarning.description "您已经明确您想要报告 Adblock Plus 的通用问题而不是过滤规则的问题。 +请注意这类问题最好报告至 [link]Adblock Plus 论坛[/link]。您应该仅仅使用 +问题报告系统来补充一个存在的讨论,如果您不提供链接,很可能没人会 +注意到您的报告。提交报告之后会提供给您自动创建的链接。"> +<!ENTITY issues.disabled.description "Adblock Plus 已禁用,当前状态下 Adblock Plus 不会屏蔽任何元素。"> +<!ENTITY attachExtensions.label "在报告中附加激活的扩展列表,用于确定附加组件冲突导致的问题 (&x)"> +<!ENTITY issues.nosubscriptions.add.label "添加过滤规则订阅组"> +<!ENTITY issues.disabledfilters.enable.label "启用过滤规则"> +<!ENTITY issues.override.label "设置正确,继续报告 (&c)"> +<!ENTITY issues.nosubscriptions.description "您似乎没有订阅任何制作好的过滤规则列表。"> +<!ENTITY typeSelector.falsePositive.description "如果页面缺失了重要内容、显示不正常或者功能不正常,请选择此选项。 +您可以通过临时禁用 Adblock Plus 来检测问题是否为 Adblock Plus 所致。"> +<!ENTITY typeSelector.other.label "其他问题 (&t)"> +<!ENTITY emailComment.label "我们鼓励您输入一个有效的电子邮件地址,以便在我们对你的报告有疑问时可以与您联系。它还能使我们能认出你的贡献,并帮助确定它们的优先次序。"> +<!ENTITY issues.whitelist.remove.label "在此页上重新启用 Adblock Plus"> +<!ENTITY outdatedSubscriptions.description "如下过滤规则订阅组已经至少两周没有更新了。请在提交报告之前先更新这些过滤规则订阅组,也许问题已经解决。"> +<!ENTITY dataCollector.description "Adblock Plus 正在收集所需数据,请稍等片刻。"> +<!ENTITY sendButton.label "发送报告 (&n)"> +<!ENTITY comment.label "注释(可选):(&C)"> +<!ENTITY sendPage.errorMessage "发送报告失败,错误码 "?1?"。请确保您已连接互联网并重试。 +如果问题依旧,请到 [link]Adblock Plus 论坛[/link]寻求帮助。"> +<!ENTITY showRecentReports.label "显示最近提交的报告"> +<!ENTITY commentPage.heading "输入注释"> +<!ENTITY update.start.label "现在开始更新"> +<!ENTITY issues.disabledfilters.description "如下过滤规则处于禁用状态,但是它们可能对该页面上有效:"> +<!ENTITY screenshot.description "同样的页面,不同的人可能见到的并不相同。如果您在报告中 +附加了截图,它可能会帮助我们了解问题。您可以移除敏感信 +息区域也可以标记出问题区域。点击相应的按钮并用鼠标在 +图片上选择区域即可。"> +<!ENTITY screenshot.attach.label "为报告附加页面图片 (&t)"> +<!ENTITY issues.whitelist.description "Adblock Plus 在您要报告的页面上是禁用的。请在提交报告协助调研该问题之前,重新启用 Adblock Plus 并重新载入该页面。"> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus 没有屏蔽广告 (&v)"> +<!ENTITY typeSelector.heading "选择问题类型"> +<!ENTITY anonymity.warning "我们将无法回复你,并且报告可能被放在较低的优先级次序。"> +<!ENTITY wizard.title "问题报告"> +<!ENTITY issues.ownfilters.disable.label "禁用过滤规则"> +<!ENTITY commentPage.description "以下文本区允许您输入一些注释来帮助我们更好地理解该问题。 +该步骤虽然是可选的,但是如果问题不是那么显而易见的话,我们 +推荐您输入一些注释。您可以在发送之前再检查一下报告的数据。"> +<!ENTITY comment.lengthWarning "您输入的注释长度超过 1000 个字符。只有前 1000 个字符会被发送出去。"> +<!ENTITY typeSelector.falseNegative.description "如果 Adblock Plus 处于启用状态但仍然有广告出现,请选择此选项。"> +<!ENTITY sendPage.waitMessage "Adblock Plus 正在提交您的报告,请稍等。"> +<!ENTITY dataCollector.heading "欢迎使用问题报告系统"> +<!ENTITY screenshot.heading "附加截图"> +<!ENTITY sendPage.heading "发送报告"> +<!ENTITY issues.subscriptionCount.description "您似乎订阅了太多的过滤规则。我们不推荐采用过多的过滤规则订阅组,因为这可能会带来许多问题。 +并且很抱歉我们不能接受您的问题报告,因为我们很难弄清是哪些过滤规则订阅组的作者需要采取行动。请移除所有非必要的过滤规则订阅组,然后再测试一下问题是否还存在。"> +<!ENTITY screenshot.mark.label "标记问题 (&M)"> +<!ENTITY privacyPolicy.label "隐私策略"> +<!ENTITY issues.description "Adblock Plus 已经检测出您的设置可能导致了该问题或者致使报告难以调研。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/sidebar.dtd new file mode 100644 index 0000000..3bda933 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "闪动显示该项目的边框"> +<!ENTITY address.label "地址"> +<!ENTITY context.open.label "在新标签页打开"> +<!ENTITY type.label "类型"> +<!ENTITY tooltip.filterSource.label "过滤规则源:"> +<!ENTITY noitems.label "无可过滤项目"> +<!ENTITY filter.label "过滤规则"> +<!ENTITY tooltip.size.label "大小:"> +<!ENTITY reattach.label "合体"> +<!ENTITY search.label "搜索: (&S)"> +<!ENTITY docDomain.thirdParty "(第三方)"> +<!ENTITY filterSource.label "过滤规则源"> +<!ENTITY tooltip.docDomain.label "文档源:"> +<!ENTITY context.copy.label "复制项目地址"> +<!ENTITY tooltip.type.label "类型:"> +<!ENTITY context.disablefilter.label "禁用过滤规则 ?1?"> +<!ENTITY context.copyFilter.label "复制过滤规则"> +<!ENTITY context.block.label "过滤该项"> +<!ENTITY context.enablefilter.label "重新启用过滤规则 ?1?"> +<!ENTITY detach.label "分体"> +<!ENTITY whitelisted.label "列入白名单的页面"> +<!ENTITY context.disablefilteronsite.label "在 ?1? 禁用该过滤规则"> +<!ENTITY detached.title "Adblock Plus: 可过滤项目 (分体式)"> +<!ENTITY docDomain.firstParty "(第一方)"> +<!ENTITY tooltip.type.whitelisted "(白名单)"> +<!ENTITY tooltip.filter.label "已生效的过滤规则:"> +<!ENTITY tooltip.filter.disabled "(已禁用)"> +<!ENTITY context.editfilter.label "编辑过滤规则有效"> +<!ENTITY tooltip.type.blocked "(已过滤)"> +<!ENTITY size.label "大小"> +<!ENTITY context.whitelist.label "将该项加入白名单"> +<!ENTITY context.selectAll.label "全选"> +<!ENTITY state.label "状态"> +<!ENTITY docDomain.label "文档源"> +<!ENTITY tooltip.address.label "地址:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/subscriptionSelection.dtd new file mode 100644 index 0000000..47596ee --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-CN/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "同时添加过滤规则订阅组 “?1?” (&s)"> +<!ENTITY list.download.failed "获取订阅组的过滤规则列表失败。"> +<!ENTITY list.download.retry "重试"> +<!ENTITY title.label "订阅组的标题: (&t)"> +<!ENTITY list.download.website "查看站点"> +<!ENTITY supplementMessage "该过滤规则订阅组意味着该订阅组将与您未添加的订阅组 “?1?” 一起使用。"> +<!ENTITY viewList.label "查看过滤规则"> +<!ENTITY visitHomepage.label "查看主页"> +<!ENTITY addSubscription.label "添加订阅组"> +<!ENTITY dialog.title "添加 Adblock Plus 过滤规则订阅组"> +<!ENTITY location.label "过滤规则列表位置: (&l)"> +<!ENTITY fromWeb.description "请确认您希望添加该过滤规则订阅组。在添加之前,您可以更改订阅标题或位置。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/composer.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/composer.dtd new file mode 100644 index 0000000..6b49cb9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/composer.dtd @@ -0,0 +1,33 @@ +<!ENTITY anchor.end.label "網址結尾 (&n)"> +<!ENTITY domainRestriction.label "網域限制: (&d)"> +<!ENTITY collapse.default.no.label "使用預設值 (否)"> +<!ENTITY firstParty.label "只限第一方 (&r)"> +<!ENTITY preferences.label "顯示已有的條件... (&S)"> +<!ENTITY pattern.label "尋找條件"> +<!ENTITY thirdParty.label "只限第三方 (&T)"> +<!ENTITY filter.label "新過濾條件: (&f)"> +<!ENTITY collapse.label "摺疊已阻擋項目: (&l)"> +<!ENTITY match.warning "您輸入的條件與該網址不符,此條件不會生效。"> +<!ENTITY anchor.start.label "網址開頭 (&g)"> +<!ENTITY matchCase.label "符合大小寫 (&M)"> +<!ENTITY custom.pattern.label "自訂: (&C)"> +<!ENTITY unselectAllTypes.label "取消全選"> +<!ENTITY type.whitelist.label "例外條件 (&x)"> +<!ENTITY regexp.warning "您輸入的條件將被解讀為正規表示法,使用正規表示法可能會使 Adblock Plus 拖慢瀏覽速度。若您不打算使用正規表示式,請在條件結尾加上星號 (*)。"> +<!ENTITY dialog.title "新增 Adblock Plus 過濾條件"> +<!ENTITY basic.label "基本檢視"> +<!ENTITY type.filter.label "過濾條件 (&B)"> +<!ENTITY types.label "套用類型:"> +<!ENTITY shortpattern.warning "您輸入的條件太短無法最佳化,可能會拖慢瀏覽速度。建議您選擇較長的字串好讓 Adblock Plus 更有效率。"> +<!ENTITY collapse.yes.label "是"> +<!ENTITY anchors.label "只接受特定格式:"> +<!ENTITY collapse.default.yes.label "使用預設值 (是)"> +<!ENTITY domainRestriction.help "此選項可指定一個或多個網域,請用管線符號 (|) 分隔。若在網域名稱前加上波浪符號 (~) 則表示條件不會套用於該網域。"> +<!ENTITY accept.label "新增過濾條件"> +<!ENTITY options.label "選項"> +<!ENTITY disabled.warning "Adblock Plus 目前已停用。您還是可以新增過濾條件,但除非您 [link]啟用 Adblock Plus[/link],否則不會生效。"> +<!ENTITY anchor.start.flexible.label "網域名稱開頭 (&g)"> +<!ENTITY collapse.no.label "否"> +<!ENTITY selectAllTypes.label "全選"> +<!ENTITY advanced.label "進階檢視"> +<!ENTITY pattern.explanation "條件格式可以是網址的任一部分,星號 (*) 代表萬用字元。過濾條件只會套用在符合格式的網址上。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/filters.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/filters.dtd new file mode 100644 index 0000000..c953bc9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/filters.dtd @@ -0,0 +1,72 @@ +<!ENTITY restore.custom.warning "所有自訂條件都會被選中的檔案替換。您確定要這麼做嗎?"> +<!ENTITY slow.column "慢速過濾條件 (&w)"> +<!ENTITY enabled.column "已啟用 (&n)"> +<!ENTITY subscription.lastDownload.checksumMismatch "失敗,驗證碼不符"> +<!ENTITY noFiltersInGroup.text "選中的群組是空的"> +<!ENTITY subscription.actions.label "操作"> +<!ENTITY filter.selectAll.label "全部選取"> +<!ENTITY backupButton.label "備份及還原 (&B)"> +<!ENTITY restore.minVersion.warning "警告:這個檔案由較新版的 Adblock Plus 建立。從這個檔案還原前您應該先更新至最新版的 Adblock Plus。"> +<!ENTITY restore.error "無法處理該檔案的資料,也許這不是 Adblock Plus 的備份檔?"> +<!ENTITY sort.ascending.label "&A > Z 排序"> +<!ENTITY sort.label "排序 (&S)"> +<!ENTITY subscription.source.label "條件列表"> +<!ENTITY hitcount.column "命中次數 (&H)"> +<!ENTITY noFilters.text "您還沒有任何自訂條件。"> +<!ENTITY backup.custom.title "只有自訂條件"> +<!ENTITY subscription.external.label "由其他擴充套件更新"> +<!ENTITY subscription.delete.label "刪除"> +<!ENTITY noGroupSelected.text "您需要選擇一個條件群組才能顯示其中的過濾條件。"> +<!ENTITY filter.cut.label "剪下"> +<!ENTITY restore.default.label "還原至 ?1?"> +<!ENTITY subscription.lastDownload.inProgress "下載中..."> +<!ENTITY subscriptions.tab.label "過濾條件集"> +<!ENTITY sort.descending.label "&Z > A 排序"> +<!ENTITY filters.remove.warning "您確定要移除所有選中的過濾條件?"> +<!ENTITY filter.delete.label "刪除"> +<!ENTITY addSubscriptionAdd.label "加入"> +<!ENTITY viewMenu.label "檢視"> +<!ENTITY subscription.lastDownload.unknown "無法取得"> +<!ENTITY addSubscriptionCancel.label "取消"> +<!ENTITY subscription.enabled.label "啟用"> +<!ENTITY noSubscriptions.text "您未訂閱任何過濾條件集。沒有過濾條件的話 Adblock Plus 不曉得該阻擋什麼,請使用"新增過濾條件集"加入。"> +<!ENTITY subscription.update.label "更新過濾條件"> +<!ENTITY dialog.title "Adblock Plus 條件偏好設定"> +<!ENTITY addFilter.label "新增過濾條件 (&d)"> +<!ENTITY subscription.minVersion.warning "此條件集需要新版的 Adblock Plus,您應該更新至最新版本。"> +<!ENTITY subscription.lastDownload.invalidURL "失敗,無效的位址"> +<!ENTITY backup.error "條件寫入檔案時發生錯誤。請確定該檔案沒有寫入保護或正被其他的程式使用。"> +<!ENTITY filter.moveUp.label "往上移"> +<!ENTITY addGroup.label "新增條件群組 (&g)"> +<!ENTITY filter.edit.label "編輯"> +<!ENTITY subscription.showHideFilters.label "顯示/隱藏過濾條件"> +<!ENTITY acceptableAds2.label "允許部分非侵入式廣告 (&i)"> +<!ENTITY addSubscriptionOther.label "新增其他條件集"> +<!ENTITY close.label "關閉"> +<!ENTITY sort.none.label "不排序 (&U)"> +<!ENTITY filter.actions.label "條件操作"> +<!ENTITY filter.copy.label "複製"> +<!ENTITY filter.moveDown.label "往下移"> +<!ENTITY filter.resetHitCounts.label "重設命中統計"> +<!ENTITY readMore.label "詳細內容"> +<!ENTITY subscription.moveUp.label "往上移"> +<!ENTITY addSubscription.label "新增過濾條件集 (&f)"> +<!ENTITY subscription.homepage.label "首頁"> +<!ENTITY backup.complete.title "所有條件和過濾條件集"> +<!ENTITY restore.own.label "從自己的備份還原"> +<!ENTITY restore.complete.warning "所有條件偏好設定都將被選中的檔案替換。您確定要這麼做嗎?"> +<!ENTITY filters.tab.label "自訂條件"> +<!ENTITY backup.label "建立新的備份"> +<!ENTITY find.label "尋找 (&n)"> +<!ENTITY subscription.moveDown.label "往下移"> +<!ENTITY subscription.lastDownload.connectionError "失敗,檔案下載失敗"> +<!ENTITY subscription.lastDownload.success "成功"> +<!ENTITY subscription.lastDownload.invalidData "失敗,無效的過濾條件列表"> +<!ENTITY filter.paste.label "貼上"> +<!ENTITY subscription.disabledFilters.enable "啟用所有條件"> +<!ENTITY lasthit.column "最後命中 (&L)"> +<!ENTITY subscription.editTitle.label "編輯標題"> +<!ENTITY subscription.disabledFilters.warning "此條件集內有部份條件被停用。"> +<!ENTITY filter.column "過濾條件 (&F)"> +<!ENTITY subscription.lastDownload.label "最後下載:"> +<!ENTITY viewList.label "檢視條件列表"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/firstRun.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/firstRun.properties new file mode 100644 index 0000000..e0eda73 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/firstRun.properties @@ -0,0 +1,20 @@ +firstRun_feature_tracking_description=阻止追蹤功能才能達到真正的隱密瀏覽 - 此功能可以擺脫想監視您一舉一動的廣告商。 +firstRun_toggle_off=關閉 +firstRun_feature_tracking=停用追蹤 +firstRun_feature_malware=惡意軟體過濾 +firstRun_title=Adblock Plus 已安裝完成 +firstRun_acceptableAdsExplanation=我們想鼓勵網站改採簡樸且不過於搶眼的廣告。這也是我們之所以建立<a>嚴格的規範</a>來辨識非侵入式廣告的原因,這種類型的廣告預設會顯示出來。若您仍想阻擋所有的廣告,可以輕鬆地<a>停用此功能</a> 。 +firstRun_toggle_on=開啟 +firstRun_contributor_credits=貢獻名單 +firstRun_dataCorruptionWarning=這個頁面一直跳出來嗎? <a>請看這裡!</a> +firstRun_acceptableAdsHeadline=從現在起,煩人的廣告都將煙消雲散 +firstRun_share=告訴您的朋友 +firstRun_share_headline=<a>請助我們一臂之力</a>,讓網路變得更美好 +firstRun_features=Adblock Plus 不只可以過濾廣告 +firstRun_feature_malware_description=過濾惡意網域可使您的瀏覽過程更加安全。 +firstRun_feature_social_description=自動擺脫如 Facebook Like 這類出現在網頁上追蹤您瀏覽習慣的社交按鈕。 +firstRun_donate=贊助 +firstRun_donate_label=支援我們的專案 +firstRun_feature_social=移除社交媒體按鈕 +firstRun_legacySafariWarning=您正在使用 Adblock Plus 所不支援的舊版 Safari。這可能影響使用者體驗或導致功能失常。我們強烈建議將 Safari 更新至 6.1.1 以上版本 (OS X 10.8 Mountain Lion 系統),或更新至 Safari 7.0.1 (OS X 10.9 Mavericks 系統) 以上版本,或可考慮改用最新版的 Mozilla Firefox, Google Chrome 或 Opera。 +firstRun_filterlistsReinitializedWarning=It seems that an issue caused all filters to be removed and we were unable to restore a backup. Therefore we had to reset your filters and Acceptable Ads settings. Please check your filter lists and Acceptable Ads settings in the <a>Adblock Plus options</a>. diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/global.properties b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/global.properties new file mode 100644 index 0000000..aa2de1d --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/global.properties @@ -0,0 +1,41 @@ +no_blocking_suggestions=此頁面沒有可阻擋的項目 +action3_tooltip=點擊啟用或停用 Adblock Plus。 +notification_antiadblock_title=隱藏針對性的訊息? +type_label_script=程式碼 +filter_elemhide_nocriteria=沒有指定欲隱藏元素的辨識名稱 +blockingGroup_title=廣告阻擋規則 +whitelisted_tooltip=Adblock Plus 在目前頁面停用。 +type_label_stylesheet=樣式表 +blocked_count_tooltip=?1? 項,共 ?2? 項 +type_label_font=字體 +type_label_popup=彈出式視窗 +filter_regexp_tooltip=此條件可能是正規表示法或者太短需要最佳化,太多這類過濾條件會拖慢瀏覽速度。 +action0_tooltip=點擊展開功能表,按中鍵則可啟用/停用 Adblock Plus。 +whitelisted_page=Adblock Plus 已在目前頁面停用 +remove_group_warning=您確定要移除此條件群組嗎? +action1_tooltip=點擊開啟或關閉可阻擋項目清單,按中鍵則可啟用/停用 Adblock Plus。 +type_label_xmlhttprequest=XML 請求 +active_tooltip=Adblock Plus 已啟用,?1? 份條件集已訂閱,?2? 條自訂條件已使用。 +type_label_document=文件 +type_label_object_subrequest=物件子請求 +whitelistGroup_title=例外條件 +disabled_tooltip=Adblock Plus 已停用。 +filter_elemhide_duplicate_id=只能指定一個 ID 來隱藏該元素 +type_label_object=物件 +action2_tooltip=點擊開啟偏好設定視窗,按中鍵則可啟用或停用 Adblock Plus。 +type_label_subdocument=頁框 +clearStats_warning=這會重設所有的條件命中統計並停用命中計數器。您確定要這麼做? +notification_antiadblock_message=已知此網站會對 Adblock Plus 用戶顯示針對性的訊息。您希望 Adblock Plus 隱藏它們嗎? +blocked_count_addendum=(以及白名單: ?1?, 已隱藏: ?2?) +subscription_invalid_location=條件集網址或檔案名稱無效。 +type_label_image=圖片 +remove_subscription_warning=您確定要移除此條件集嗎? +type_label_other=其他 +mobile_menu_enable=ABP:啟用 +type_label_media=音訊/影片 +mobile_menu_disable_site=ABP:在 ?1? 停用 +elemhideGroup_title=元素隱藏規則 +mobile_menu_enable_site=ABP:在 ?1? 啟用 +type_label_elemhide=隱藏 +newGroup_title=新的條件群組 +default_dialog_title=Adblock Plus diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/overlay.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/overlay.dtd new file mode 100644 index 0000000..76a2b80 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/overlay.dtd @@ -0,0 +1,32 @@ +<!ENTITY notification.button.yes "&確定"> +<!ENTITY notification.button.no "&取消"> +<!ENTITY sync.label "同步 Adblo&ck Plus 設定值"> +<!ENTITY whitelist.site.label "在 ?1? 停用"> +<!ENTITY filters.label "條件偏好設定 (&F)"> +<!ENTITY disable.label "完全停用"> +<!ENTITY objecttab.title "阻擋"> +<!ENTITY objecttab.tooltip "按這裡用 Adblock Plus 阻擋此物件"> +<!ENTITY menuitem.label "Ad&block Plus 偏好設定"> +<!ENTITY objecttabs.label "Flash 和 Java 物件上顯示標籤 (&t)"> +<!ENTITY sendReport.label "回報此頁面錯誤 (&R)"> +<!ENTITY whitelist.page.label "只在此頁面停用"> +<!ENTITY context.image.label "Adblock Plus:阻擋圖片"> +<!ENTITY counthits.label "計算條件命中次數 (&h)"> +<!ENTITY opensidebar.label "開啟可阻擋項目 (&b)"> +<!ENTITY notification.button.close "&關閉"> +<!ENTITY contribute.label "贊助 Adblock Plus"> +<!ENTITY toolbarbutton.label "Adblock Plus"> +<!ENTITY context.frame.label "Adblock Plus:阻擋頁框"> +<!ENTITY blocked.tooltip "此頁已阻擋項目:"> +<!ENTITY hideplaceholders.label "隱藏已阻擋元素所佔用的空間 (&l)"> +<!ENTITY showinstatusbar.label "在狀態列顯示 (&s)"> +<!ENTITY sidebar.title "本頁可阻擋項目"> +<!ENTITY options.label "選項 (&O)"> +<!ENTITY context.object.label "Adblock Plus:阻擋物件"> +<!ENTITY context.removeWhitelist.label "Adblock Plus:此頁不設為白名單"> +<!ENTITY filters.tooltip "最活躍的條件:"> +<!ENTITY closesidebar.label "關閉可阻擋項目 (&b)"> +<!ENTITY showintoolbar.label "在工具列顯示 (&b)"> +<!ENTITY status.tooltip "狀態:"> +<!ENTITY context.media.label "Adblock Plus:阻擋音訊/影片"> +<!ENTITY subscription.update.label "更新過濾條件"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/sendReport.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/sendReport.dtd new file mode 100644 index 0000000..8e93337 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/sendReport.dtd @@ -0,0 +1,66 @@ +<!ENTITY screenshot.undo.label "復原 (&U)"> +<!ENTITY issues.disabledgroups.description "下列過濾條件集/條件群組已停用,它們將無法在此頁面發揮作用:"> +<!ENTITY showData.label "顯示報告資料"> +<!ENTITY typeSelector.falsePositive.label "Adblock Plus 擋了太多東西 (&m)"> +<!ENTITY issues.change.description "您的設定值已變更。請在重新載入頁面後測試錯誤是否仍然存在,若錯誤依舊存在,請傳送錯誤報告。"> +<!ENTITY email.label "E&mail:"> +<!ENTITY issues.openPreferences.label "開啟條件偏好設定"> +<!ENTITY sendPage.confirmation "報告已儲存。您可以在下列網址存取:"> +<!ENTITY copyLink.label "複製報告連結 (&C)"> +<!ENTITY issues.nofilters.description "Adblock Plus 在此頁面沒有阻擋任何東西。您回報的錯誤可能和 Adblock Plus 無關。"> +<!ENTITY sendPage.knownIssue "您回報的錯誤已重複。檢視更多資訊:"> +<!ENTITY typeSelector.other.description "選擇此選項表示有其他錯誤發生,而且您懷疑是 Adblock Plus 本身引起而非過濾條件造成的錯誤。"> +<!ENTITY issues.disabledgroups.enable.label "啟用過濾條件集/條件群組"> +<!ENTITY typeWarning.override.label "我了解並堅持要傳送錯誤報告 (&s)"> +<!ENTITY issues.disabled.enable.label "啟用 Adblock Plus"> +<!ENTITY update.fixed.description "過濾條件集更新後很可能解決了您正要回報的問題。請重新載入網頁後再試一次,若問題仍在請再次回報。"> +<!ENTITY anonymous.label "以匿名方式提交"> +<!ENTITY reloadButton.label "重新載入頁面 (&R)"> +<!ENTITY recentReports.clear.label "移除所有錯誤報告 (&R)"> +<!ENTITY typeSelector.description "本視窗會一步步指導您傳送一份 Adblock Plus 錯誤報告。首先,請選擇您在此頁面碰到的錯誤類型:"> +<!ENTITY screenshot.remove.label "移除敏感資料 (&R)"> +<!ENTITY issues.ownfilters.description "套用到此頁面中的條件有部份是由使用者定義的。請停用這些過濾條件,這很可能就是導致錯誤發生的原因:"> +<!ENTITY update.inProgress.description "Adblock Plus 需要更新您的過濾條件集來確定這個問題仍未解決。請稍候…"> +<!ENTITY sendPage.retry.label "再次傳送"> +<!ENTITY data.label "報告資料: (&p)"> +<!ENTITY recentReports.label "您最近的錯誤報告"> +<!ENTITY typeWarning.description "您表示要回報的錯誤是 Adblock Plus 本身的錯誤而非過濾條件引起的錯誤。請注意,這類錯誤最好到 [link]Adblock Plus 討論區[/link] 上回報。只有為討論串作補充時才應該使用錯誤回報器,沒有人會察覺您的錯誤報告網址,除非您將連結貼出來。 + 結在傳送成功之後會自動產生。"> +<!ENTITY issues.disabled.description "Adblock Plus 已停用,目前狀態下不會阻擋任何網頁內容。"> +<!ENTITY attachExtensions.label "附加目前啟用的擴充套件列表至報告中,以便排除因套件衝突所產生的問題 (&x)"> +<!ENTITY issues.nosubscriptions.add.label "訂閱過濾條件集"> +<!ENTITY issues.disabledfilters.enable.label "啟用過濾條件"> +<!ENTITY issues.override.label "設定值是正確的,繼續回報錯誤 (&c)"> +<!ENTITY issues.nosubscriptions.description "您似乎沒有訂閱任何過濾條件集,訂閱過濾條件集可自動移除與網頁內容無關的廣告。"> +<!ENTITY typeSelector.falsePositive.description "選擇此選項表示網頁缺少了主要內容、顯示錯誤或功能異常。您可以暫時停用 Adblock Plus 後再試一次,若停用後問題消失,則很可能就是 Adblock Plus 的問題。"> +<!ENTITY typeSelector.other.label "其他問題 (&t)"> +<!ENTITY emailComment.label "建議您輸入有效的電子郵件位址,如此我們才能在有疑問時連絡您。這也會用來辨識您所提交的報告,並提高其優先權。"> +<!ENTITY issues.whitelist.remove.label "在此頁面重新啟用 Adblock Plus"> +<!ENTITY outdatedSubscriptions.description "下列的過濾條件集至少兩個星期沒有更新。請在送出報告前更新這些條件集,說不定問題已經解決了。"> +<!ENTITY dataCollector.description "請稍候,Adblock Plus 正在蒐集必要的資料。"> +<!ENTITY sendButton.label "傳送報告 (&n)"> +<!ENTITY comment.label "備註 (選用): (&C)"> +<!ENTITY sendPage.errorMessage "嘗試傳送報告失敗,錯誤碼 "?1?"。請確定您已連上網路後再試一次。若依舊失敗,請到 [link]Adblock Plus 討論區[/link] 尋求協助。"> +<!ENTITY showRecentReports.label "顯示最近傳送的錯誤報告"> +<!ENTITY commentPage.heading "輸入註解"> +<!ENTITY update.start.label "立即更新"> +<!ENTITY issues.disabledfilters.description "下列過濾條件已停用,它們將無法在此頁面發揮作用:"> +<!ENTITY screenshot.description "同樣的頁面每個人看到的情況可能都不同。附加螢幕擷圖到報告中可以幫助我們更了解問題所在。您可以先移除包含敏感資訊的部份,也可以標示問題發生的區域,使其更為醒目。只要按下相應的按鈕並用滑鼠在圖片上選取即可。"> +<!ENTITY screenshot.attach.label "附加頁面圖片到報告中 (&t)"> +<!ENTITY issues.whitelist.description "Adblock Plus 在您目前回報的頁面中停用。請在送出報告前再次啟用並重新載入該網頁以協助調查。"> +<!ENTITY typeSelector.falseNegative.label "Adblock Plus 沒有擋掉廣告 (&v)"> +<!ENTITY typeSelector.heading "選擇問題類型"> +<!ENTITY anonymity.warning "我們將無法聯絡您,且此報告的優先權可能會相對較低。"> +<!ENTITY wizard.title "錯誤回報器"> +<!ENTITY issues.ownfilters.disable.label "停用過濾條件"> +<!ENTITY commentPage.description "下面的文字方塊可以讓您輸入額外的註解,以幫助我們更了解問題所在。這個步驟不是必須的,但若問題不太明顯時還是建議您這麼做。在回報之前您也可以檢視報告資料。"> +<!ENTITY comment.lengthWarning "您輸入的註解超過 1000 個字元。只有前 1000 個字元會被傳送。"> +<!ENTITY typeSelector.falseNegative.description "選擇此選項表示雖然已啟用 Adblock Plus,但廣告依然顯示在網頁中。"> +<!ENTITY sendPage.waitMessage "請稍候,Adblock Plus 正在傳送您的報告。"> +<!ENTITY dataCollector.heading "歡迎使用錯誤回報器"> +<!ENTITY screenshot.heading "附加螢幕擷圖"> +<!ENTITY sendPage.heading "傳送報告"> +<!ENTITY issues.subscriptionCount.description "您似乎訂閱了過多的過濾條件集。我們不建議這麼做,這可能會增加發生錯誤的機率。同時我們無法接受您的錯誤回報,因為還不清楚是哪位條件集作者需要做出修正。請移除不重要的過濾條件集後再試一次,看看錯誤是否仍會發生。"> +<!ENTITY screenshot.mark.label "標示問題所在 (&M)"> +<!ENTITY privacyPolicy.label "隱私權政策"> +<!ENTITY issues.description "Adblock Plus 偵測到您的設定值可能導致問題發生,或使調查變得難以進行。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/sidebar.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/sidebar.dtd new file mode 100644 index 0000000..b25a6ce --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/sidebar.dtd @@ -0,0 +1,35 @@ +<!ENTITY context.flash.label "閃爍物件邊框"> +<!ENTITY address.label "位址"> +<!ENTITY context.open.label "於新分頁開啟"> +<!ENTITY type.label "類型"> +<!ENTITY tooltip.filterSource.label "條件來源:"> +<!ENTITY noitems.label "無可阻擋項目"> +<!ENTITY filter.label "過濾條件"> +<!ENTITY tooltip.size.label "大小:"> +<!ENTITY reattach.label "固定"> +<!ENTITY search.label "搜尋: (&S)"> +<!ENTITY docDomain.thirdParty "(第三方)"> +<!ENTITY filterSource.label "條件來源"> +<!ENTITY tooltip.docDomain.label "文件來源:"> +<!ENTITY context.copy.label "複製項目位址"> +<!ENTITY tooltip.type.label "類型:"> +<!ENTITY context.disablefilter.label "停用過濾條件 ?1?"> +<!ENTITY context.copyFilter.label "複製過濾條件"> +<!ENTITY context.block.label "阻擋此項目"> +<!ENTITY context.enablefilter.label "重新啟用過濾條件 ?1?"> +<!ENTITY detach.label "分離"> +<!ENTITY whitelisted.label "此頁面已加入白名單"> +<!ENTITY context.disablefilteronsite.label "在 ?1? 停用此過濾條件"> +<!ENTITY detached.title "Adblock Plus:可阻擋項目(已分離)"> +<!ENTITY docDomain.firstParty "(第一方)"> +<!ENTITY tooltip.type.whitelisted "(白名單)"> +<!ENTITY tooltip.filter.label "作用中的條件:"> +<!ENTITY tooltip.filter.disabled "(已停用)"> +<!ENTITY context.editfilter.label "編輯作用中的條件"> +<!ENTITY tooltip.type.blocked "(已阻擋)"> +<!ENTITY size.label "大小"> +<!ENTITY context.whitelist.label "將此項目加為例外條件"> +<!ENTITY context.selectAll.label "全選"> +<!ENTITY state.label "狀態"> +<!ENTITY docDomain.label "文件來源"> +<!ENTITY tooltip.address.label "位址:"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/subscriptionSelection.dtd b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/subscriptionSelection.dtd new file mode 100644 index 0000000..2752cd1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/locale/zh-TW/subscriptionSelection.dtd @@ -0,0 +1,12 @@ +<!ENTITY addMain.label "一併訂閱 "?1?" 條件集 (&s)"> +<!ENTITY list.download.failed "接收條件集清單失敗。"> +<!ENTITY list.download.retry "再試一次"> +<!ENTITY title.label "過濾條件集名稱: (&t)"> +<!ENTITY list.download.website "造訪網站"> +<!ENTITY supplementMessage "此過濾條件集需要與您尚未訂閱的 "?1?" 同時使用。"> +<!ENTITY viewList.label "檢視過濾條件"> +<!ENTITY visitHomepage.label "造訪首頁"> +<!ENTITY addSubscription.label "新增過濾條件集"> +<!ENTITY dialog.title "新增 Adblock Plus 過濾條件集"> +<!ENTITY location.label "過濾條件集位址: (&l)"> +<!ENTITY fromWeb.description "請確認您是否要訂閱這個條件集。訂閱前您可以變更條件集標題或位址。"> diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-icon-big.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-icon-big.png Binary files differnew file mode 100644 index 0000000..85cce1c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-icon-big.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status-16.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status-16.png Binary files differnew file mode 100644 index 0000000..c3abf18 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status-16.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status-32.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status-32.png Binary files differnew file mode 100644 index 0000000..da2a318 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status-32.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status.png Binary files differnew file mode 100644 index 0000000..a1c4e0b --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/abp-status.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/ajax-loader.gif b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/ajax-loader.gif Binary files differnew file mode 100644 index 0000000..a642494 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/ajax-loader.gif diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background-main.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background-main.png Binary files differnew file mode 100644 index 0000000..464a997 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background-main.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background-share.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background-share.png Binary files differnew file mode 100644 index 0000000..b572b56 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background-share.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background.png Binary files differnew file mode 100644 index 0000000..bb19387 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/background.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/checkbox.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/checkbox.png Binary files differnew file mode 100644 index 0000000..ba6c53e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/checkbox.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/close.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/close.png Binary files differnew file mode 100644 index 0000000..a4aaf5c --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/close.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/composer.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/composer.css new file mode 100644 index 0000000..da75ba4 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/composer.css @@ -0,0 +1,77 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +/* + * Force left-to-right everywhere where we are displaying addresses + */ +.suggestion > .radio-label-box:-moz-locale-dir(rtl), +html|*.textbox-input:-moz-locale-dir(rtl) +{ + direction: ltr; + text-align: end; +} + +#patternGroup { + overflow: auto; +} + +#anchorGroup { + padding-left: 20px; +} + +#typeGroupLabel { + margin-top: 10px; +} + +#typeGroup { + overflow: auto; + margin-bottom: 10px +} + +:root:not([advancedMode="true"]) #options { + display: none; +} + +#disabledWarning, #groupDisabledWarning, #regexpWarning, #shortpatternWarning, #matchWarning { + color: #E00000; +} + +#disabledWarning > *, #groupDisabledWarning > * { + margin: 0px; + font-size: inherit; +} + +.text-link { + font-size: 80%; + -moz-user-focus: ignore; +} + +.help { + color: #0000E0; + border-bottom: 1px dotted #0000E0; + cursor: help; + margin: 0px; + padding: 0px; +} + +tooltip { + /* Gecko 1.8.1 doesn't support multiline tooltips :-( */ + max-width: none; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/donate.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/donate.png Binary files differnew file mode 100644 index 0000000..3e77b37 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/donate.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/malware.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/malware.png Binary files differnew file mode 100644 index 0000000..9b51b63 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/malware.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/social.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/social.png Binary files differnew file mode 100644 index 0000000..a2af1ea --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/social.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/tracking.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/tracking.png Binary files differnew file mode 100644 index 0000000..a8727a9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/features/tracking.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/filters.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/filters.css new file mode 100644 index 0000000..a4ea586 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/filters.css @@ -0,0 +1,221 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +#buttons +{ + margin-top: 10px; +} + +#noSubscriptions +{ + font-style: italic; +} + +.localeMatch +{ + font-weight: bold; +} +.selectSubscriptionItem +{ + margin: 0px; +} + +.subscription +{ + padding: 5px; +} +.subscription:not(:last-child) +{ + border-bottom: 1px solid rgba(0, 0, 0, 0.25); +} +.subscription:not([selected="true"]) > .disabled +{ +} + +.subscription:not([selected="true"]) > .disabled .titleBox +{ + color: #808080; +} +.subscription:not([selected="true"]) > .disabled .status +{ + color: #808080; +} + +.titleBox .title, +.titleBox > .titleEditor +{ + font-weight: bold; +} + +.subscription description, .subscription textbox +{ + margin: 0px !important; + padding: 0px !important; + border-width: 0px !important; + -moz-appearance: none !important; +} + +.subscription .link +{ + text-decoration: underline; + cursor: pointer; +} + +.subscription .warning +{ + color: #FF0000; +} + +.enabledCheckbox +{ + padding: 2px; + -moz-margin-end: 10px; +} +.enabledCheckbox:focus +{ + outline: 1px dotted gray; +} +.enabledCheckbox .checkbox-label-box +{ + display: none; +} + +.actionButton +{ + font: -moz-info; +} + +splitter +{ + border-width: 0px !important; +} + +#filtersTooltip +{ + max-width: none; +} + +.tooltipLabel +{ + font-weight: bold; + -moz-margin-end: 10px; +} + +#tooltip-additional +{ + color: #C00000; + margin-top: 10px; +} + +tree +{ + margin: 0px; +} + +#col-slow { + text-align: center; +} + +#col-hitcount, #col-lasthit { + text-align: right; +} + +#col-hitcount +{ + min-width: 60px; +} +#col-enabled +{ + min-width: 48px; +} +#col-slow +{ + min-width: 30px; +} + +/* + * Force left-to-right for filter text but not comments + */ +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-filter, type-invalid), +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-filter, type-whitelist), +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-filter, type-filterlist), +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-filter, type-elemhide), +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-filter, type-elemhideexception) +{ + direction: ltr; + text-align: end; +} + +treechildren::-moz-tree-cell-text(col-filter, dummy-true) +{ + font-style: italic; +} + +treechildren::-moz-tree-cell-text(col-filter, type-whitelist, selected-false), +treechildren::-moz-tree-cell-text(col-filter, type-elemhideexception, selected-false) +{ + color: #008000; +} + +treechildren::-moz-tree-cell-text(col-filter, type-elemhide, selected-false) +{ + color: #000080; +} + +treechildren::-moz-tree-cell-text(col-slow) +{ + font-size: 0px; +} + +treechildren::-moz-tree-cell-text(col-filter, disabled-true, selected-false) +{ + color: #808080; +} + +treechildren::-moz-tree-cell-text(col-filter, type-comment, selected-false) +{ + color: #808080; +} + +treechildren::-moz-tree-cell-text(col-filter, type-invalid, selected-false) +{ + color: #C00000; +} + +treechildren::-moz-tree-image(col-enabled, disabled-true) +{ + list-style-image: url(checkbox.png); + -moz-image-region: rect(13px 13px 26px 0px); +} + +treechildren::-moz-tree-image(col-enabled, disabled-false) +{ + list-style-image: url(checkbox.png); + -moz-image-region: rect(0px 13px 13px 0px); +} + +treechildren::-moz-tree-image(col-slow, slow-true) +{ + list-style-image: url(slow.png); +} + +.findbar-highlight +{ + display: none; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/firstRun.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/firstRun.css new file mode 100644 index 0000000..7a02ad6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/firstRun.css @@ -0,0 +1,588 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@font-face { + font-family: 'CreteRound'; + font-style: normal; + src: url(fonts/CreteRound-Regular.otf); + src: local ('Ø'), + /*local ('Ø') forces using no local font called CreteRound*/ + url(fonts/CreteRound-Regular.otf) format('otf'); +} + +@font-face { + font-family: 'CreteRound'; + font-style: italic; + src: url(fonts/CreteRound-Italic.otf); + src: local ('Ø'), + /*local ('Ø') forces using no local font called CreteRound*/ + url(fonts/CreteRound-Italic.otf) format('otf'); +} + +body +{ + font-family: Helvetica, Arial, sans-serif; + font-size: 15px; + line-height: 140%; + color: #7f776b; + background-color: #f8f6f2; + background-image: url(background-main.png); + margin: 0; + padding: 0; +} + +a, a:link, a:visited +{ + color: #5a84b3; + text-decoration: underline; +} + +a:hover +{ + text-decoration: none; +} + +button +{ + cursor: pointer; +} + +ul +{ + margin: 0; + padding: 0; +} + +li +{ + margin: 0; + padding: 0; + list-style-type: none; +} + +header +{ + background-image: url(background.png); + background-repeat: repeat-x; + width: 100%; + padding: 40px 0 0 0; +} + +header h1 +{ + font-size: 24px; + font-weight: normal; + color: #57ab5b; + text-align: center; + margin: 21px auto; + padding: 16px 0 14px 0; + border: 1px #57ab5b; + border-style: dashed none; + /* border parallel fix - 957px is the value + * closest to 960px(page width) which makes + * the dashed border parallel + */ + max-width: 957px; +} + +h1,h2,h3 +{ + font-family: CreteRound, Helvetica, Arial, sans-serif; +} + +h2 +{ + font-size: 26px; + font-weight: lighter; + color: #968d81; + line-height: 28px; + text-align: center; + margin: 0; + padding: 0; +} + +h3 +{ + font-size: 22px; + color: #7F776B; + font-weight: normal; + margin: 0 0 10px 0; + padding: 0; + line-height: 24px; +} + +h4 +{ + font-size: 15px; + color: #7f776b; + font-weight: normal; + text-align: center; + margin: 0; + padding: 0; +} + +section +{ + margin: 0 auto; + margin-bottom: 30px; + max-width: 760px; + background-image: url(background.png); + padding: 40px 100px; +} + +section > p +{ + margin: 15px 0 0 0; +} + +#logo +{ + margin: 0 auto; + height: 100px; + width: 99px; + display: block; + background-image: url(abp-icon-big.png); + background-repeat: no-repeat; +} + +#can-do-more +{ + max-width: 960px; + padding: 40px 0px 0px 0px; + border-bottom: 4px solid #968D81; +} + +#can-do-more > h2 +{ + margin: 0 100px; +} + +.feature-malware-image +{ + background-image: url(features/malware.png); + background-repeat: no-repeat; +} + +.feature-social-image +{ + background-image: url(features/social.png); + background-repeat: no-repeat; +} + +.feature-tracking-image +{ + background-image: url(features/tracking.png); + background-repeat: no-repeat; +} + +#can-do-more-content +{ + margin: 30px 100px 20px 100px; +} + +#can-do-more #features +{ + border-spacing: 10px; + margin: 0px; + padding: 0px; +} + +#can-do-more .feature:not([hidden]) +{ + display: block; + list-style-type: none; + padding: 30px 0; + padding-bottom: 20px; + border-top: 1px dashed #c0bebb; +} + +#can-do-more .feature-image, #can-do-more .feature-description +{ + display: inline-block; + *display: inline; /* IE6 inline-block fix */ + *zoom: 1; + vertical-align: top; +} + +#can-do-more .feature-description +{ + margin: 0px 0px 0 20px; + width: 625px; + max-width: 85%; +} + +#can-do-more .feature-description-textblock +{ + width: 480px; + max-width: 100%; + margin: 0 40px 0 0; + display: inline-block; +} + +#can-do-more .feature-description-textblock > span +{ + margin: 15px 0 0 0; +} + +#can-do-more .feature-image +{ + width: 59px; + height: 59px; + margin: 8px 0 10px 20px; +} + +#share +{ + background-image: url(background-share.png); + padding: 50px 100px 40px 100px; + max-width: 760px; + text-align: center; + font-family: CreteRound, Helvetica, Arial, sans-serif; +} + +#share h2 +{ + color: #fff; + margin: 0 0 30px 0; +} + +#share h2 > a +{ + color: #fff; +} + +#share h2 > a:hover +{ + color: #2e5075; +} + +#share span +{ + color: #bed1e6; + text-align: center; + line-height: 34px; + font-size: 22px; + display: block; +} + +#donate:hover, .share-buttons a:hover +{ + box-shadow: 0px 0px 0px 2px #8ca7c4; + border-radius: 30px; +} + +#donate-block span, #share-block span +{ + margin: 10px 20px 0px 20px; +} + +#donate-block, #share-block +{ + min-width: 250px; + display: inline-block; + vertical-align: top; + padding: 5px 0 5px 0; +} + +#donate-block +{ + border: 1px dashed #37506d; + border-style: none dashed; + width: 50%; +} + +#share-block +{ + border-right: 1px dashed #37506d; + width: 49%; +} + +.share-buttons +{ + margin: 6px 0 0 0; + cursor: pointer; + vertical-align: top; + /* because inline block creates + * space if not captured with + * font-size and line-height 0px + */ + font-size: 0px; + line-height: 0px; +} + +.share-buttons > a +{ + width: 50px; + height: 50px; + margin: 0 8px; + text-decoration: none; + display: inline-block; +} + +#share-general, +:root[lang^="zh-"] #share-chinese +{ + display: block; +} + +:root[lang^="zh-"] #share-general, +#share-chinese +{ + display: none; +} + +#share-chinese > a +{ + border-bottom: 2px solid transparent; +} + +#share-chinese > a:hover +{ + box-shadow: none; + border-radius: 0; + border-bottom: 2px solid #8CA7C4; +} + +#share-facebook +{ + background-image: url(social/facebook.png); + background-repeat: no-repeat; +} + +#share-twitter +{ + background-image: url(social/twitter.png); + background-repeat: no-repeat; +} + +#share-gplus +{ + background-image: url(social/googleplus.png); + background-repeat: no-repeat; +} + +#share-renren +{ + background-image: url(social/renren.png); + background-repeat: no-repeat; +} + +#share-weibo +{ + background-image: url(social/weibo.png); + background-repeat: no-repeat; +} + +.warning +{ + font-size: 160%; + border: 3px dashed red; + text-align: center; + line-height: 1.3em; +} + +#social ul +{ + list-style: none; + display: inline-block; + padding: 0; + margin: 0; +} + +#social:hover h1 +{ + opacity: 0; +} + +#social ul:hover li { + opacity: 0.3; +} + +#social ul li +{ + display: inline-block; + margin: 0px 5px; + -webkit-transition: opacity .5s ease, bottom .3s ease; + transition: opacity .5s ease, bottom .3s ease; + position: relative; + bottom: -30px; +} + +#social ul li:hover +{ + opacity: 1.0; + bottom: 0px; +} + +.share-button +{ + display: inline-block; + width: 82px; + height: 82px; +} + +#glass-pane, #share-popup +{ + visibility: hidden; + opacity: 0; + -webkit-transition-property: opacity; + transition-property: opacity; +} + +#glass-pane +{ + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: rgba(0, 0, 0, 0.5) url(ajax-loader.gif) no-repeat 50% 50%; + z-index: 101; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; +} + +#share-popup +{ + position: absolute; + top: 50%; + left: 50%; + border: none; + -webkit-transition-delay: 0.1s; + transition-delay: 0.1s; +} + +#glass-pane.visible, #share-popup.visible +{ + visibility: visible; + opacity: 1; +} + +#share-popup.visible +{ + -webkit-transition-duration: 0.15s; + transition-duration: 0.15s; +} + +.toggle +{ + cursor: pointer; + position: relative; + display: inline-block; + vertical-align: top; + height: 22px; + margin: 32px 0px 7px 0px; + border-radius: 9999px; + border: 1px solid #999; + overflow: hidden; + -moz-user-select: none; + -webkit-user-select: none; + user-select: none; +} + +.toggle:hover +{ + box-shadow: 0px 0px 3px 0px #968d81; +} + +.toggle:active +{ + cursor: wait; +} + +.toggle-on, .toggle-off +{ + min-width: 42px; + height: 100%; + font-size: 11px; + font-weight: 500; + text-align: center; + line-height: 23px; + border-radius: 9999px; +} + +.toggle-on +{ + padding: 0px 30px 0px 10px; + color: rgba(255,255,255, 0.8); + text-shadow: 1px 1px rgba(0,0,0,0.2); + box-shadow: inset 2px 2px 6px rgba(0,0,0,0.2); + background: rgb(69,163,31); +} + +.toggle-off +{ + padding: 0px 10px 0px 30px; + color: rgba(0,0,0,0.6); + text-shadow: 1px 1px rgba(255,255,255,0.2); + background: #cfcfcf; + background: -moz-linear-gradient(top, #cfcfcf 0%, #f5f5f5 100%); + background: -webkit-linear-gradient(top, #cfcfcf 0%,#f5f5f5 100%); + background: linear-gradient(to bottom, #cfcfcf 0%,#f5f5f5 100%); +} + +.toggle-blob +{ + position: absolute; + top: 0px; + right: 0px; + height: 100%; + width: 22px; + border-radius: 50px; + background: #cfcfcf; + background: -moz-linear-gradient(bottom, #cfcfcf 0%, #f5f5f5 100%); + background: -webkit-linear-gradient(bottom, #cfcfcf 0%,#f5f5f5 100%); + background: linear-gradient(to top, #cfcfcf 0%,#f5f5f5 100%); + box-shadow: 1px 1px 2px #888; +} + +.off .toggle-on +{ + margin-top: -22px; +} + +.off .toggle-blob +{ + left: 0px; + right: auto; +} + +#donate +{ + height: 21px; + display: inline-block; + margin: 15px 0px 2px 0px; + font-size: 16px; + color: #003366; + cursor: pointer; + font-weight: bold; + padding: 5px 18px; + text-decoration: none; + border-radius: 20px; + border: 1px solid #FF9933; + overflow: hidden; + font-family: arial, sans-serif; + background-image: url(donate.png); + background-repeat: repeat-x; +} + +footer +{ + margin: 0 auto 30px; + max-width: 960px; + text-align: center; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/fonts/CreteRound-Italic.otf b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/fonts/CreteRound-Italic.otf Binary files differnew file mode 100644 index 0000000..169bced --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/fonts/CreteRound-Italic.otf diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/fonts/CreteRound-Regular.otf b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/fonts/CreteRound-Regular.otf Binary files differnew file mode 100644 index 0000000..d951855 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/fonts/CreteRound-Regular.otf diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/item-state.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/item-state.png Binary files differnew file mode 100644 index 0000000..a494379 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/item-state.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/overlay.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/overlay.css new file mode 100644 index 0000000..0f58a15 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/overlay.css @@ -0,0 +1,226 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +#abp-status +{ + cursor: pointer; +} + +toolbar[iconsize="small"] #abp-toolbarbutton, +#PersonalToolbar #abp-toolbarbutton, +#header-view-toolbar > #abp-toolbarbutton, +#abp-status { + list-style-image: url("abp-status-16.png"); + -moz-image-region: rect(0px, 16px, 16px, 0px); +} +toolbar[iconsize="small"] #abp-toolbarbutton[abpstate="disabled"], +#PersonalToolbar #abp-toolbarbutton[abpstate="disabled"], +#header-view-toolbar > #abp-toolbarbutton[abpstate="disabled"], +#abp-status[abpstate="disabled"], +toolbar[iconsize="small"] #abp-toolbarbutton[abpstate="whitelisted"], +#PersonalToolbar #abp-toolbarbutton[abpstate="whitelisted"], +#header-view-toolbar > #abp-toolbarbutton[abpstate="whitelisted"], +#abp-status[abpstate="whitelisted"] { + -moz-image-region: rect(16px, 16px, 32px, 0px); +} + +#abp-toolbarbutton[cui-areatype="menu-panel"], +toolbarpaletteitem[place="palette"] > #abp-toolbarbutton +{ + list-style-image: url("abp-status-32.png"); + -moz-image-region: rect(0px, 32px, 32px, 0px); +} + +#abp-toolbarbutton[cui-areatype="menu-panel"][abpstate="disabled"], +toolbarpaletteitem[place="palette"] > #abp-toolbarbutton[abpstate="disabled"], +#abp-toolbarbutton[cui-areatype="menu-panel"][abpstate="whitelisted"], +toolbarpaletteitem[place="palette"] > #abp-toolbarbutton[abpstate="whitelisted"] +{ + -moz-image-region: rect(32px, 32px, 64px, 0px); +} + +#abp-toolbar-popup { + list-style-image: none; + -moz-image-region: rect(0px, 0px, 0px, 0px); +} + +toolbox[vertical="true"] toolbar #abp-toolbarbutton dropmarker { + display: none !important; +} + +menuitem[default="true"] { + font-weight: bold; +} + +#abp-toolbarbutton, +#abp-site-info { + list-style-image: url("abp-status.png"); + -moz-image-region: rect(0px, 24px, 24px, 0px); +} +#abp-toolbarbutton[abpstate="disabled"], +#abp-toolbarbutton[abpstate="whitelisted"], +#abp-site-info[abpaction="enable"], +#abp-site-info[abpaction="enable_site"] { + -moz-image-region: rect(24px, 24px, 48px, 0px); +} + +/* Hack: force the label to be displayed below icon for type="menu" */ +#abp-toolbarbutton[type="menu"]:not([cui-areatype="menu-panel"]) +{ + -moz-box-orient: horizontal; +} +toolbar[mode="full"] #abp-toolbarbutton[type="menu"] +{ + -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#menu-vertical"); +} + +/* Thunderbird-specific toolbar icon styles */ +#header-view-toolbar > #abp-toolbarbutton +{ + -moz-appearance: dualbutton; + padding: 0px !important; +} + +/* Hide toolbar icon text in Thunderbird to save space */ +#header-view-toolbar > #abp-toolbarbutton .toolbarbutton-text +{ + display: none; +} + +/* SeaMonkey expects the icon to be rather large, add margin */ +#mail-toolbox #abp-toolbarbutton .toolbarbutton-icon +{ + margin-top: 5px; +} + +#abp-status-image { + margin-left: 10px; + margin-right: 10px; +} + +#abp-site-info .pageaction-image { + width: 32px; + height: 32px; + padding: 4px; +} + +#abp-toolbarbutton > toolbarbutton { + /* Argh, Songbird defines image region directly on the anonymous toolbarbutton element */ + -moz-image-region: inherit !important; +} + +#abp-tooltip { + max-width: none; +} + +#abp-tooltip label { + font-weight: bold; + margin-bottom: 0px; +} + +#abp-tooltip description:not([hidden="true"])+label { + margin-top: 10px; +} + +#abp-bottombar-title { + padding-left: 4px; +} + +#abp-bottombar-toolbar { + display: -moz-box !important; + visibility: visible !important; +} + +#abp-bottombar-close { + padding: 4px 2px; + border-style: none !important; + -moz-user-focus: normal; + list-style-image: url("close.png"); + -moz-appearance: none; + -moz-image-region: rect(0px, 14px, 14px, 0px); +} + +#abp-bottombar-close:hover { + -moz-image-region: rect(0px, 28px, 14px, 14px); +} + +#abp-bottombar-close:hover:active { + -moz-image-region: rect(0px, 42px, 14px, 28px); +} + +.abp-contributebutton +{ + margin-top: 20px; +} + +.abp-contributebutton-btn +{ + font: -moz-info; + margin-left: 40px; + margin-right: 40px; +} + +.abp-contributebutton-close +{ + border-style: none !important; + -moz-user-focus: normal; + list-style-image: url("close.png"); + -moz-appearance: none; + -moz-image-region: rect(0px, 14px, 14px, 0px); + + /* Firefox Australis theme defines some width for all toolbaritem tags inside + * UIPanel element, the properties have to be reset to default values. */ + min-width: 0px !important; + min-height: 0px !important; + width: auto !important; + height: auto !important; +} + +.abp-contributebutton-close:hover +{ + -moz-image-region: rect(0px, 28px, 14px, 14px); +} + +#abp-notification +{ + width: 300px; +} + +#abp-notification-question +{ + display: none; + white-space: nowrap; +} + +.abp-question #abp-notification-question +{ + display: block; +} + +#abp-notification html|a +{ + cursor: pointer; + color: #0000f0; +} + +#abp-notification html|a:hover +{ + text-decoration: underline; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/sendReport.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/sendReport.css new file mode 100644 index 0000000..53768f9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/sendReport.css @@ -0,0 +1,129 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +.wizard-header +{ + display: none; +} + +#wizardHeader +{ + display: -moz-box; + -moz-box-ordinal-group: 0; + -moz-binding: none !important; + padding: 10px 5px !important; +} + +.progressLabel +{ + margin: 5px 0px; + text-align: center; + font-size: 110%; + font-weight: normal; +} + +.progressLabel.active +{ + font-weight: bold; +} + +progressmeter +{ + margin-top: 100px; +} + +.radioDescription +{ + -moz-margin-start: 32px; +} + +radio, checkbox, .topLabel, #dataDeck +{ + margin-top: 15px; +} + +#recentReports +{ + margin-top: 15px; +} + +#recentReportsList +{ + overflow-x: hidden; + overflow-y: auto; +} + +#outdatedSubscriptionsList +{ + margin: 10px 20px; +} + +#issuesBox +{ + overflow: auto; +} + +#issuesChangeMessage +{ + color: red; +} + +#screenshotButtons +{ + margin-top: 10px; +} + +#screenshotBox +{ + overflow-y: scroll; +} + +#commentLengthWarning, #anonymityWarning +{ + color: red; +} + +#commentLengthWarning[visible="false"], #anonymityWarning[visible="false"] +{ + visibility: hidden; +} + +/* + * Force left-to-right everywhere where we are displaying addresses + */ +#data:-moz-locale-dir(rtl) +{ + direction: ltr; +} + +#sendReportError +{ + color: red; + font-size: 150%; +} + +#sendReportErrorLinks, #typeWarningTextLink +{ + margin: 0px; +} + +#sendReportErrorBox +{ + margin-bottom: 10px; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/sidebar.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/sidebar.css new file mode 100644 index 0000000..abad956 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/sidebar.css @@ -0,0 +1,112 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +#suggestionsList { + margin: 0px; +} + +#detachButton, #reattachButton:not([disabled="true"]) { + text-decoration: underline; + cursor: pointer; +} + +#reattachButton[disabled="true"] { + color: GrayText; +} + +#detachButton, #reattachButton { + font-size: 90%; +} + +tooltip { + max-width: none; +} + +#tooltipPreview { + margin:10px; + max-width: 300px; + max-height: 300px; +} + +#tooltip label { + font-weight: bold; +} + +#contextBlock, +#contextWhitelist { + font-weight: bold; +} + +#state { + min-width: 16px; +} + +#size { + text-align: end; +} + +/* + * Force left-to-right everywhere where we are displaying addresses + */ +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-filter), +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-address), +treechildren:-moz-locale-dir(rtl)::-moz-tree-cell(col-size) +{ + direction: ltr; + text-align: end; +} + +.disabledTextLabel +{ + font-style: italic; +} + +treechildren::-moz-tree-cell-text(state-filtered, selected-false), +treechildren::-moz-tree-cell-text(state-hidden, selected-false) { + color: #C00000; +} +treechildren::-moz-tree-cell-text(state-whitelisted, selected-false), +treechildren::-moz-tree-cell-text(state-hiddenexception, selected-false) { + color: #008000; +} + +treechildren::-moz-tree-image(col-state, dummy-false) +{ + list-style-image: url(item-state.png); + -moz-image-region: rect(0px 10px 10px 0px); + -moz-margin-start: 3px; +} +treechildren::-moz-tree-image(col-state, filter-disabled-true, dummy-false) { + -moz-image-region: rect(10px 10px 20px 0px); +} +treechildren::-moz-tree-image(col-state, state-filtered, dummy-false), +treechildren::-moz-tree-image(col-state, state-hidden, dummy-false) { + -moz-image-region: rect(20px 10px 30px 0px); +} +treechildren::-moz-tree-image(col-state, state-whitelisted, dummy-false), +treechildren::-moz-tree-image(col-state, state-hiddenexception, dummy-false) { + -moz-image-region: rect(30px 10px 40px 0px); +} + +treechildren::-moz-tree-cell-text(col-filter, state-hidden, selected-false) { + color: #000080; +} +treechildren::-moz-tree-cell-text(col-filter, filter-disabled-true, selected-false) { + color: #C0C0C0; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/slow.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/slow.png Binary files differnew file mode 100644 index 0000000..8463e9e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/slow.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/facebook.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/facebook.png Binary files differnew file mode 100644 index 0000000..f45c417 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/facebook.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/googleplus.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/googleplus.png Binary files differnew file mode 100644 index 0000000..53e6819 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/googleplus.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/renren.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/renren.png Binary files differnew file mode 100644 index 0000000..e9af994 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/renren.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/twitter.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/twitter.png Binary files differnew file mode 100644 index 0000000..fec913a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/twitter.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/weibo.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/weibo.png Binary files differnew file mode 100644 index 0000000..176a628 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/social/weibo.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/subscriptionSelection.css b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/subscriptionSelection.css new file mode 100644 index 0000000..8ed7c24 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/chrome/skin/subscriptionSelection.css @@ -0,0 +1,69 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +dialog +{ + width: 550px; +} + +*[invisible="true"] +{ + visibility: hidden; +} + +#supplementMessage +{ + color: #F00000; +} + +.localeMatch +{ + font-weight: bold; +} + +#all-subscriptions-loading +{ + margin: 50px; +} + +#all-subscriptions +{ + min-height: 200px; +} +#all-subscriptions > richlistitem > .variant +{ + width: 200px; +} +#all-subscriptions > richlistitem:not(:first-child) > .subscriptionTitle, +#all-subscriptions > richlistitem:not(:first-child) > .subscriptionTitle + .variant +{ + border-top: 1px dashed black; + margin-top: 0px; + padding-top: 4px; +} + +#supplementMessage +{ + margin-top: 5px; +} +#supplementMessage > label +{ + margin-left: 0px; + margin-right: 0px; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/defaults/prefs.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/defaults/prefs.js new file mode 100644 index 0000000..efcb5e3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/defaults/prefs.js @@ -0,0 +1,38 @@ +// For description of these values see http://adblockplus.org/en/preferences + +pref("extensions.adblockplus.currentVersion", "0.0"); +pref("extensions.adblockplus.enabled", true); +pref("extensions.adblockplus.frameobjects", true); +pref("extensions.adblockplus.fastcollapse", false); +pref("extensions.adblockplus.showinstatusbar", false); +pref("extensions.adblockplus.detachsidebar", false); +pref("extensions.adblockplus.defaulttoolbaraction", 0); +pref("extensions.adblockplus.defaultstatusbaraction", 0); +pref("extensions.adblockplus.sidebar_key", "Accel Shift V, Accel Shift U"); +pref("extensions.adblockplus.sendReport_key", ""); +pref("extensions.adblockplus.filters_key", "Accel Shift E, Accel Shift F, Accel Shift O"); +pref("extensions.adblockplus.enable_key", ""); +pref("extensions.adblockplus.flash_scrolltoitem", true); +pref("extensions.adblockplus.previewimages", true); +pref("extensions.adblockplus.data_directory", "adblockplus"); +pref("extensions.adblockplus.patternsbackups", 5); +pref("extensions.adblockplus.patternsbackupinterval", 24); +pref("extensions.adblockplus.whitelistschemes", "about chrome file irc moz-safe-about news resource snews x-jsd addbook cid imap mailbox nntp pop data javascript moz-icon"); +pref("extensions.adblockplus.subscriptions_autoupdate", true); +pref("extensions.adblockplus.subscriptions_listurl", "https://adblockplus.org/subscriptions2.xml"); +pref("extensions.adblockplus.subscriptions_fallbackurl", "https://adblockplus.org/getSubscription?version=%VERSION%&url=%SUBSCRIPTION%&downloadURL=%URL%&error=%ERROR%&channelStatus=%CHANNELSTATUS%&responseStatus=%RESPONSESTATUS%"); +pref("extensions.adblockplus.subscriptions_fallbackerrors", 5); +pref("extensions.adblockplus.subscriptions_exceptionsurl", "https://easylist-downloads.adblockplus.org/exceptionrules.txt"); +pref("extensions.adblockplus.subscriptions_exceptionscheckbox", true); +pref("extensions.adblockplus.documentation_link", "https://adblockplus.org/redirect?link=%LINK%&lang=%LANG%"); +pref("extensions.adblockplus.savestats", true); +pref("extensions.adblockplus.composer_default", 2); +pref("extensions.adblockplus.clearStatsOnHistoryPurge", true); +pref("extensions.adblockplus.report_submiturl", "https://reports.adblockplus.org/submitReport?version=1&guid=%GUID%&lang=%LANG%"); +pref("extensions.adblockplus.recentReports", []); +pref("extensions.adblockplus.hideContributeButton", false); +pref("extensions.adblockplus.blockableItemsSize", {width: 200, height: 200}); +pref("extensions.adblockplus.notificationurl", "https://notification.adblockplus.org/notification.json"); +pref("extensions.adblockplus.notificationdata", {}); +pref("extensions.adblockplus.subscriptions_antiadblockurl", "https://easylist-downloads.adblockplus.org/antiadblockfilters.txt"); +pref("extensions.adblockplus.please_kill_startup_performance", false); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/icon.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/icon.png Binary files differnew file mode 100644 index 0000000..9db9e39 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/icon.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/icon64.png b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/icon64.png Binary files differnew file mode 100644 index 0000000..a8dcad6 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/icon64.png diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/install.rdf b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/install.rdf new file mode 100644 index 0000000..edaed14 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/install.rdf @@ -0,0 +1,634 @@ +<?xml version="1.0"?> + +<!-- + - This file is part of the Adblock Plus build tools, + - Copyright (C) 2006-2014 Eyeo GmbH + - + - Adblock Plus is free software: you can redistribute it and/or modify + - it under the terms of the GNU General Public License version 3 as + - published by the Free Software Foundation. + - + - Adblock Plus is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + --> + +<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:em="http://www.mozilla.org/2004/em-rdf#"> + + <Description about="urn:mozilla:install-manifest"> + <em:id>{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}</em:id> + <em:version>2.6.3.0</em:version> + <em:name>Adblock Plus</em:name> + <em:description>Ads were yesterday!</em:description> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:type>2</em:type> + <em:bootstrap>true</em:bootstrap> + <em:updateURL>https://adblockplus.org/devbuilds/adblockplus/update.rdf?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%&currentAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%</em:updateURL> + <em:optionsURL>chrome://adblockplus/content/ui/settings.xul</em:optionsURL> + <em:optionsType>2</em:optionsType> + <em:localized> + <Description> + <em:locale>ar</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>آدبلوك بلس</em:name> + <em:description>الإعلانات أصبحت من الأمس!</em:description> + <em:homepageURL>http://adblockplus.org/ar/</em:homepageURL> + <em:translator>فلاديمير بلنت</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>bg</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Рекламите бяха вчера!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Ивайло Йовчев (s0urce)</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>ca</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>AdBlock Plus</em:name> + <em:description>Els anuncis eren ahir</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>BennyBeat</em:translator> + <em:translator>CatTranslations</em:translator> + <em:translator>el_libre</em:translator> + <em:translator>Toni Barrera</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>cs</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>A reklamy jsou minulostí!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Jakub Tománek</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>da</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklamer er fortid!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>AlleyKat</em:translator> + <em:translator>Regmos</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>de</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Werbung war gestern!</em:description> + <em:homepageURL>http://adblockplus.org/de/</em:homepageURL> + <em:translator>Wladimir Palant</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>dsb</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Wabjenje jo cora była!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>milupo</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>el</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Αφήστε τις διαφημίσεις στο χθες!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>rookie</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>en-GB</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Ads were yesterday!</em:description> + <em:homepageURL>http://adblockplus.org/en/</em:homepageURL> + <em:translator>Mark Tyndall</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>en-US</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Ads were yesterday!</em:description> + <em:homepageURL>http://adblockplus.org/en/</em:homepageURL> + <em:translator>Wladimir Palant</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>eo</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklamoj estis hieraŭ!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Wladimir PALANT</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>es-AR</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>¡La publicidad es cosa del pasado!</em:description> + <em:homepageURL>http://adblockplus.org/es/</em:homepageURL> + <em:translator>KNTRO</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>es-ES</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>La publicidad es cosa del ayer</em:description> + <em:homepageURL>http://adblockplus.org/es/</em:homepageURL> + <em:translator>Urko</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>es-MX</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Los Anuncios son cosa del Ayer!</em:description> + <em:homepageURL>http://adblockplus.org/es/</em:homepageURL> + <em:translator>Francisco Alvarado</em:translator> + <em:translator>Ninnetyer</em:translator> + <em:translator>poz2k4444</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>et</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklaamid on nüüd eilne päev!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Aivo Kuhlberg</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>eu</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Iragarkiak atzoko kontuak dira!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Librezale.org</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>fa</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>تبلیغت متعلق به دیروز بود!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>از طرف Wladimir Palant</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>fi</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Mainokset ovat menneisyyttä!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Joni Heinonen</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>fr</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Les publicités, c'est du passé !</em:description> + <em:homepageURL>http://adblockplus.org/fr/</em:homepageURL> + <em:translator>Dagobert_78</em:translator> + <em:translator>Jim Courbron</em:translator> + <em:translator>jojaba</em:translator> + <em:translator>pirlouy</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>fy-NL</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Fan no ôf gjin reklames mear!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Wim Benes</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>gl</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>A publicidade é o que lle doe!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Jesús Olano</em:translator> + <em:translator>Manuel Meixide</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>he</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>הפרסומות שייכות לעבר!</em:description> + <em:homepageURL>http://adblockplus.org/he/</em:homepageURL> + <em:translator>catcat</em:translator> + <em:translator>SiiiE</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>hr</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklame su prošlost!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>gogo</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>hsb</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklama bě wčera!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Milupo</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>hu</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>A reklám a múlté!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Gárdonyi László</em:translator> + <em:translator>Mikes Kaszmán István</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>hy-AM</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Գովազդները երեկ էին!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>iAbaS</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>id</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Iklan sudah menjadi masa lalu!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>is</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Auglýsingar eru hluti af fortíðinni!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Kristján Bjarni Guðmundsson</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>it</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Permette di dire 'no' alla pubblicità presente nelle pagine web!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Luana Di Muzio - BabelZilla</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>ja</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>広告は過去の遺物です!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Haebaru</em:translator> + <em:translator>k2jp</em:translator> + <em:translator>Premier</em:translator> + <em:translator>Shirayuki (alphabetical order)</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>kk</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Жарнамаға жол жоқ!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Бауржан Муфтахидинов</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>ko</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>인터넷 이용을 방해하거나 불법·유해한 광고의 차단!</em:description> + <em:homepageURL>http://adblockplus.org/ko/</em:homepageURL> + <em:translator>Maybee</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>lt</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklamos tai praeitis!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Algimantas Margevičius</em:translator> + <em:translator>Jonas Slivka</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>lv</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklāmas ir vakardiena!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Džerijs Šterns</em:translator> + <em:translator>Janis-Marks Gailis</em:translator> + <em:translator>Klaids Borovs</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>ms</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Iklan hanyalah pada masa dulu!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>temperror</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>nb-NO</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Si farvel til reklame!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Roy Skoglund</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>nl</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reclames behoren tot het verleden!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>markh</em:translator> + <em:translator>Onno Ekker</em:translator> + <em:translator>pitdicker</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>pl</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Powiedz NIE! reklamom</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Leszek(teo)Życzkowski</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>pt-BR</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Propaganda indesejada é coisa do passado!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Ajwsert</em:translator> + <em:translator>Mauro José da Silva</em:translator> + <em:translator>Teboga</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>pt-PT</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Publicidade... já era!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>António Mendonça; Sérgio Marques</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>ro</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Elimină publicitatea din paginile web.</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>ultravioletu</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>ru</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Скажи "нет" рекламе!</em:description> + <em:homepageURL>http://adblockplus.org/ru/</em:homepageURL> + <em:translator>Wladimir Palant</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>sk</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklamy sú minulosťou!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Ján Kendi (Jacen)</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>sl</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Oglasi so preteklost!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Martin Srebotnjak</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>sq</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklamat jane e kaluara!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Genti Ereqi</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>sr</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Огласи су прошлост!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>kapetance</em:translator> + <em:translator>ДакСРБИЈА</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>sv-SE</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Säg farväl till all reklam!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Mikael Hiort af Ornäs</em:translator> + <em:translator>Stefan Lewitas</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>th</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>ลาก่อนพวกโฆษณา!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Anusuk Sangubon(Jaideejung007)</em:translator> + <em:translator>Ken</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>tr</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Reklamlar geçmişte kaldı!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Ahmet Serkan Tıratacı</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>uk</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Скажи «НІ» рекламі!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Тимофій Бабич</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>vi</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>Quảng cáo đã là dĩ vãng!</em:description> + <em:homepageURL>http://adblockplus.org/</em:homepageURL> + <em:translator>Knight Vegor</em:translator> + <em:translator>Nguyễn Mạnh Hùng</em:translator> + <em:translator>SITUVN</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>zh-CN</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>广告已成往事!</em:description> + <em:homepageURL>https://adblockplus.org/zh_CN/</em:homepageURL> + <em:translator>blackdire</em:translator> + <em:translator>YFdyh000</em:translator> + </Description> + </em:localized> + <em:localized> + <Description> + <em:locale>zh-TW</em:locale> + <em:creator>Wladimir Palant</em:creator><em:contributor>Claude Lespagnol aka Efdur</em:contributor><em:contributor>Nickolay Ponomarev</em:contributor><em:contributor>Kevin Keller</em:contributor><em:contributor>Fabrice Desré</em:contributor><em:contributor>Hubird</em:contributor><em:contributor>Günther Beyer (opoloo.de)</em:contributor><em:contributor>Algimantas Margevičius</em:contributor><em:contributor>anonymous74100</em:contributor><em:contributor>BsT</em:contributor><em:contributor>Crits</em:contributor><em:contributor>Famlam</em:contributor><em:contributor>fanboy</em:contributor><em:contributor>heradhis</em:contributor><em:contributor>Jiefei</em:contributor><em:contributor>John</em:contributor><em:contributor>Khrin</em:contributor><em:contributor>Lain_13</em:contributor><em:contributor>Li</em:contributor><em:contributor>Lian</em:contributor><em:contributor>MenetZ</em:contributor><em:contributor>MonztA</em:contributor><em:contributor>None</em:contributor><em:contributor>smed79</em:contributor><em:contributor>tomasko126</em:contributor><em:contributor>Zoso</em:contributor><em:contributor>Александър Станев</em:contributor> + <em:name>Adblock Plus</em:name> + <em:description>廣告已成過去式!</em:description> + <em:homepageURL>https://adblockplus.org/zh_TW/</em:homepageURL> + <em:translator>Jose Sun</em:translator> + <em:translator>knight00931</em:translator> + </Description> + </em:localized> + <em:targetApplication> + <Description> + <!-- fennec2 --> + <em:id>{aa3c5121-dab2-40e2-81ca-7ea25febc110}</em:id> + <em:minVersion>22.0</em:minVersion> + <em:maxVersion>33.0</em:maxVersion> + </Description> + </em:targetApplication> + <em:targetApplication> + <Description> + <!-- firefox --> + <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> + <em:minVersion>22.0</em:minVersion> + <em:maxVersion>33.0</em:maxVersion> + </Description> + </em:targetApplication> + <em:targetApplication> + <Description> + <!-- seamonkey --> + <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> + <em:minVersion>2.19</em:minVersion> + <em:maxVersion>2.30</em:maxVersion> + </Description> + </em:targetApplication> + <em:targetApplication> + <Description> + <!-- thunderbird --> + <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id> + <em:minVersion>22.0</em:minVersion> + <em:maxVersion>33.0</em:maxVersion> + </Description> + </em:targetApplication> + <em:targetApplication> + <Description> + <!-- toolkit --> + <em:id>toolkit@mozilla.org</em:id> + <em:minVersion>22.0</em:minVersion> + <em:maxVersion>33.0</em:maxVersion> + </Description> + </em:targetApplication> + </Description> +</RDF>
\ No newline at end of file diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/Public.jsm b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/Public.jsm new file mode 100644 index 0000000..0f96bcb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/Public.jsm @@ -0,0 +1,202 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Public Adblock Plus API. + */ + +var EXPORTED_SYMBOLS = ["AdblockPlus"]; + +const Cc = Components.classes; +const Ci = Components.interfaces; +const Cr = Components.results; +const Cu = Components.utils; + +Cu.import("resource://gre/modules/Services.jsm"); + +function require(module) +{ + let result = {}; + result.wrappedJSObject = result; + Services.obs.notifyObservers(result, "adblockplus-require", module); + return result.exports; +} + +let {FilterStorage} = require("filterStorage"); +let {Filter} = require("filterClasses"); +let {Subscription, SpecialSubscription, RegularSubscription, DownloadableSubscription, ExternalSubscription} = require("subscriptionClasses"); + +const externalPrefix = "~external~"; + +/** + * Class implementing public Adblock Plus API + * @class + */ +var AdblockPlus = +{ + /** + * Returns current subscription count + * @type Integer + */ + get subscriptionCount() + { + return FilterStorage.subscriptions.length; + }, + + /** + * Gets a subscription by its URL + */ + getSubscription: function(/**String*/ id) /**IAdblockPlusSubscription*/ + { + if (id in FilterStorage.knownSubscriptions) + return createSubscriptionWrapper(FilterStorage.knownSubscriptions[id]); + + return null; + }, + + /** + * Gets a subscription by its position in the list + */ + getSubscriptionAt: function(/**Integer*/ index) /**IAdblockPlusSubscription*/ + { + if (index < 0 || index >= FilterStorage.subscriptions.length) + return null; + + return createSubscriptionWrapper(FilterStorage.subscriptions[index]); + }, + + /** + * Updates an external subscription and creates it if necessary + */ + updateExternalSubscription: function(/**String*/ id, /**String*/ title, /**Array of Filter*/ filters) /**String*/ + { + if (id.substr(0, externalPrefix.length) != externalPrefix) + id = externalPrefix + id; + let subscription = Subscription.knownSubscriptions[id]; + if (typeof subscription == "undefined") + subscription = new ExternalSubscription(id, title); + + subscription.lastDownload = parseInt(new Date().getTime() / 1000); + + let newFilters = []; + for (let filter of filters) + { + filter = Filter.fromText(Filter.normalize(filter)); + if (filter) + newFilters.push(filter); + } + + if (id in FilterStorage.knownSubscriptions) + FilterStorage.updateSubscriptionFilters(subscription, newFilters); + else + { + subscription.filters = newFilters; + FilterStorage.addSubscription(subscription); + } + + return id; + }, + + /** + * Removes an external subscription by its identifier + */ + removeExternalSubscription: function(/**String*/ id) /**Boolean*/ + { + if (id.substr(0, externalPrefix.length) != externalPrefix) + id = externalPrefix + id; + if (!(id in FilterStorage.knownSubscriptions)) + return false; + + FilterStorage.removeSubscription(FilterStorage.knownSubscriptions[id]); + return true; + }, + + /** + * Adds user-defined filters to the list + */ + addPatterns: function(/**Array of String*/ filters) + { + for (let filter of filters) + { + filter = Filter.fromText(Filter.normalize(filter)); + if (filter) + { + filter.disabled = false; + FilterStorage.addFilter(filter); + } + } + }, + + /** + * Removes user-defined filters from the list + */ + removePatterns: function(/**Array of String*/ filters) + { + for (let filter of filters) + { + filter = Filter.fromText(Filter.normalize(filter)); + if (filter) + FilterStorage.removeFilter(filter); + } + }, + + /** + * Returns installed Adblock Plus version + */ + getInstalledVersion: function() /**String*/ + { + return require("info").addonVersion; + }, + + /** + * Returns source code revision this Adblock Plus build was created from (if available) + */ + getInstalledBuild: function() /**String*/ + { + return ""; + }, +}; + +/** + * Wraps a subscription into IAdblockPlusSubscription structure. + */ +function createSubscriptionWrapper(/**Subscription*/ subscription) /**IAdblockPlusSubscription*/ +{ + if (!subscription) + return null; + + return { + url: subscription.url, + special: subscription instanceof SpecialSubscription, + title: subscription.title, + autoDownload: true, + disabled: subscription.disabled, + external: subscription instanceof ExternalSubscription, + lastDownload: subscription instanceof RegularSubscription ? subscription.lastDownload : 0, + downloadStatus: subscription instanceof DownloadableSubscription ? subscription.downloadStatus : "synchronize_ok", + lastModified: subscription instanceof DownloadableSubscription ? subscription.lastModified : null, + expires: subscription instanceof DownloadableSubscription ? subscription.expires : 0, + getPatterns: function() + { + let result = subscription.filters.map(function(filter) + { + return filter.text; + }); + return result; + } + }; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/antiadblockInit.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/antiadblockInit.js new file mode 100644 index 0000000..d8b29ca --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/antiadblockInit.js @@ -0,0 +1,78 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/Services.jsm"); + +let {Utils} = require("utils"); +let {Prefs} = require("prefs"); +let {ActiveFilter} = require("filterClasses"); +let {FilterStorage} = require("filterStorage"); +let {FilterNotifier} = require("filterNotifier"); +let {Subscription} = require("subscriptionClasses"); +let {Notification} = require("notification"); + +exports.initAntiAdblockNotification = function initAntiAdblockNotification() +{ + let notification = { + id: "antiadblock", + type: "question", + title: Utils.getString("notification_antiadblock_title"), + message: Utils.getString("notification_antiadblock_message"), + urlFilters: [] + }; + + function notificationListener(approved) + { + let subscription = Subscription.fromURL(Prefs.subscriptions_antiadblockurl); + if (subscription.url in FilterStorage.knownSubscriptions) + subscription.disabled = !approved; + } + + function addAntiAdblockNotification(subscription) + { + let urlFilters = []; + for (let filter of subscription.filters) + if (filter instanceof ActiveFilter) + for (let domain in filter.domains) + if (domain && urlFilters.indexOf(domain) == -1) + urlFilters.push(domain); + notification.urlFilters = urlFilters; + Notification.addNotification(notification); + Notification.addQuestionListener(notification.id, notificationListener); + } + + function removeAntiAdblockNotification() + { + Notification.removeNotification(notification); + Notification.removeQuestionListener(notification.id, notificationListener); + } + + let subscription = Subscription.fromURL(Prefs.subscriptions_antiadblockurl); + if (subscription.lastDownload && subscription.disabled) + addAntiAdblockNotification(subscription); + + FilterNotifier.addListener(function(action, value, newItem, oldItem) + { + if (!/^subscription\.(updated|removed|disabled)$/.test(action) || value.url != Prefs.subscriptions_antiadblockurl) + return; + + if (action == "subscription.updated") + addAntiAdblockNotification(value); + else if (action == "subscription.removed" || (action == "subscription.disabled" && !value.disabled)) + removeAntiAdblockNotification(); + }); +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/appSupport.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/appSupport.js new file mode 100644 index 0000000..67c6248 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/appSupport.js @@ -0,0 +1,948 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Various application-specific functions. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); +Cu.import("resource://gre/modules/AddonManager.jsm"); + +/** + * Checks whether an application window is known and should get Adblock Plus + * user interface elements. + * @result Boolean + */ +exports.isKnownWindow = (/**Window*/ window) => false; + +/** + * HACK: In some applications the window finishes initialization during load + * event processing which makes an additional delay necessary. This flag + * indicates that. + * @type Boolean + */ +exports.delayInitialization = false; + +/** + * Retrieves the browser element for an application window. + * @type function(window) + */ +exports.getBrowser = null; + +/** + * Adds a new browser tab in the given application window. + * @type function(window, url, event) + */ +exports.addTab = null; + +/** + * Retrieves the current browser location for an application window. + */ +exports.getCurrentLocation = function getCurrentLocation(/**Window*/ window) /**nsIURI|String*/ +{ + let browser = (exports.getBrowser ? exports.getBrowser(window) : null); + return (browser ? browser.currentURI : null); +} + + +/** + * The ID (or a list of possible IDs) of the content area context menu. + * @type String|String[] + */ +exports.contentContextMenu = null; + +/** + * Determines the default placement of the toolbar icon via object properties + * parent, before and after. + * @type Object + */ +exports.defaultToolbarPosition = null; + +/** + * The properties parent, before, after determine the placement of the status + * bar icon. + * @type Object + */ +exports.statusbarPosition = null; + +/** + * The properties parent, before, after determine the placement of the Tools + * submenu. + * @type Object + */ +exports.toolsMenu = null; + +/** + * Maps windows to their bottom bar info. + */ +let bottomBars = new WeakMap(); + +/** + * Adds a bottom bar to the application window. + * @type function(window, element) + */ +exports.addBottomBar = null; + +function _addBottomBar(window, parent, element) +{ + if (bottomBars.has(window) || !parent) + return null; + + let bar = {elements: []}; + for (let child = element.firstElementChild; child; child = child.nextElementSibling) + { + let clone = child.cloneNode(true); + parent.appendChild(clone); + bar.elements.push(clone); + } + + bottomBars.set(window, bar); + return bar; +}; + +/** + * Removes the bottom bar from the application window. + * @type function(window) + */ +exports.removeBottomBar = null; + +function _removeBottomBar(window) +{ + if (!bottomBars.has(window)) + return null; + + let bar = bottomBars.get(window); + for (let i = 0; i < bar.elements.length; i++) + if (bar.elements[i].parentNode) + bar.elements[i].parentNode.removeChild(bar.elements[i]); + + bottomBars.delete(window); + return bar; +}; + +/** + * Maps windows to a list of progress listeners. + */ +let progressListeners = new WeakMap(); + +/** + * Makes sure that a function is called whenever the displayed browser location changes. + */ +exports.addBrowserLocationListener = function addBrowserLocationListener(/**Window*/ window, /**Function*/ callback, /**Boolean*/ ignoreSameDoc) +{ + let browser = (exports.getBrowser ? exports.getBrowser(window) : null); + if (browser) + { + let dummy = function() {}; + let progressListener = + { + callback: callback, + onLocationChange: function(progress, request, uri, flags) + { + if (!ignoreSameDoc || !flags || !(flags & Ci.nsIWebProgressListener.LOCATION_CHANGE_SAME_DOCUMENT)) + this.callback(); + }, + onProgressChange: dummy, + onSecurityChange: dummy, + onStateChange: dummy, + onStatusChange: dummy, + QueryInterface: XPCOMUtils.generateQI([Ci.nsIWebProgressListener, Ci.nsISupportsWeakReference]) + }; + browser.addProgressListener(progressListener); + + if (progressListeners.has(window)) + progressListeners.get(window).push(progressListener); + else + progressListeners.set(window, [progressListener]); + } +}; + +/** + * Removes a location listener registered for a window. + */ +exports.removeBrowserLocationListener = function removeBrowserLocationListener(/**Window*/ window, /**Function*/ callback) +{ + if (!progressListeners.has(window)) + return; + + let browser = (exports.getBrowser ? exports.getBrowser(window) : null); + let listeners = progressListeners.get(window); + for (let i = 0; i < listeners.length; i++) + { + if (listeners[i].callback == callback) + { + if (browser) + browser.removeProgressListener(listeners[i]); + listeners.splice(i--, 1); + } + } +}; + +/** + * Removes all location listeners registered for a window, to be called on + * cleanup. + */ +exports.removeBrowserLocationListeners = function removeBrowserLocationListeners(/**Window*/ window) +{ + if (!progressListeners.has(window)) + return; + + let browser = (exports.getBrowser ? exports.getBrowser(window) : null); + if (browser) + { + let listeners = progressListeners.get(window); + for (let i = 0; i < listeners.length; i++) + browser.removeProgressListener(listeners[i]); + } + progressListeners.delete(window); +}; + +/** + * Maps windows to a list of click listeners. + */ +let clickListeners = new WeakMap(); + +/** + * Makes sure that a function is called whenever the user clicks inside the + * browser's content area. + */ +exports.addBrowserClickListener = function addBrowserClickListener(/**Window*/ window, /**Function*/ callback) +{ + let browser = (exports.getBrowser ? exports.getBrowser(window) : null); + if (browser) + { + browser.addEventListener("click", callback, true); + + if (clickListeners.has(window)) + clickListeners.get(window).push(callback); + else + clickListeners.set(window, [callback]); + } +}; + +/** + * Removes all click listeners registered for a window, to be called on + * cleanup. + */ +exports.removeBrowserClickListeners = function removeBrowserClickListeners(/**Window*/ window) +{ + if (!clickListeners.has(window)) + return; + + let browser = (exports.getBrowser ? exports.getBrowser(window) : null); + if (browser) + { + let listeners = clickListeners.get(window); + for (let i = 0; i < listeners.length; i++) + browser.removeEventListener("click", listeners[i], true); + } + clickListeners.delete(window); +}; + +let {application} = require("info"); +switch (application) +{ + case "firefox": + { + exports.isKnownWindow = function ff_isKnownWindow(window) + { + return (window.document.documentElement.getAttribute("windowtype") == "navigator:browser"); + }; + + exports.getBrowser = (window) => window.gBrowser; + + exports.addTab = function ff_addTab(window, url, event) + { + if (event) + window.openNewTabWith(url, exports.getBrowser(window).contentDocument, null, event, false); + else + window.gBrowser.loadOneTab(url, {inBackground: false}); + }; + + exports.contentContextMenu = "contentAreaContextMenu"; + + exports.defaultToolbarPosition = { + parent: "nav-bar" + }; + + exports.toolsMenu = { + parent: "menu_ToolsPopup" + }; + + exports.addBottomBar = function fx_addBottomBar(window, element) + { + let bar = _addBottomBar(window, window.document.getElementById("appcontent"), element); + if (bar) + { + let display = window.document.getElementById("statusbar-display"); + bar.changedFixed = display && !display.hasAttribute("fixed"); + if (bar.changedFixed) + display.setAttribute("fixed", "true"); + } + }; + + exports.removeBottomBar = function fx_removeBottomBar(window) + { + let bar = _removeBottomBar(window); + if (bar && bar.changedFixed) + window.document.getElementById("statusbar-display").removeAttribute("fixed"); + }; + + break; + } + + case "seamonkey": + { + exports.isKnownWindow = function sm_isKnownWindow(window) + { + let type = window.document.documentElement.getAttribute("windowtype"); + return (type == "navigator:browser" || type == "mail:3pane" || type == "mail:messageWindow"); + }; + + exports.addTab = function sm_addTab(window, url, event) + { + if (event || !("gBrowser" in window)) + window.openNewTabWith(url, ("gBrowser" in window ? window.gBrowser.contentDocument : null), null, event, false); + else + window.gBrowser.loadOneTab(url, {inBackground: false}); + }; + + exports.getBrowser = function sm_getBrowser(window) + { + if ("gBrowser" in window) + return window.gBrowser; + else if ("getMessageBrowser" in window) + return window.getMessageBrowser(); + else + return null; + }; + + exports.getCurrentLocation = function sm_getCurrentLocation(window) + { + if ("currentHeaderData" in window && "content-base" in window.currentHeaderData) + { + // This is a blog entry + return window.currentHeaderData["content-base"].headerValue; + } + else if ("currentHeaderData" in window && "from" in window.currentHeaderData) + { + // This is a mail/newsgroup entry + try + { + let headerParser = Cc["@mozilla.org/messenger/headerparser;1"].getService(Ci.nsIMsgHeaderParser); + let emailAddress = headerParser.extractHeaderAddressMailboxes(window.currentHeaderData.from.headerValue); + return "mailto:" + emailAddress.replace(/^[\s"]+/, "").replace(/[\s"]+$/, "").replace(/\s/g, "%20"); + } + catch(e) + { + return null; + } + } + else + { + let browser = exports.getBrowser(window); + return (browser ? browser.currentURI : null); + } + }; + + exports.contentContextMenu = ["contentAreaContextMenu", "mailContext"]; + + exports.defaultToolbarPosition = { + parent: ["PersonalToolbar", "msgToolbar"], + before: ["bookmarks-button", "button-junk"] + }; + + exports.statusbarPosition = { + parent: "status-bar" + }; + + exports.toolsMenu = { + parent: "taskPopup", + after: "downloadmgr" + }; + + exports.addBottomBar = function sm_addBottomBar(window, element) + { + _addBottomBar(window, window.document.getElementById("appcontent") || window.document.getElementById("messagepanebox"), element); + }; + + exports.removeBottomBar = _removeBottomBar; + + break; + } + + case "thunderbird": + { + exports.isKnownWindow = function tb_isKnownWindow(window) + { + let type = window.document.documentElement.getAttribute("windowtype"); + return (type == "mail:3pane" || type == "mail:messageWindow"); + }; + + exports.delayInitialization = true; + + exports.getBrowser = (window) => window.getBrowser(); + + exports.addTab = function tb_addTab(window, url, event) + { + let tabmail = window.document.getElementById("tabmail"); + if (!tabmail) + { + let wnd = Services.wm.getMostRecentWindow("mail:3pane"); + if (window) + tabmail = wnd.document.getElementById("tabmail"); + } + + if (tabmail) + tabmail.openTab("contentTab", {contentPage: url}); + else + { + window.openDialog("chrome://messenger/content/", "_blank", + "chrome,dialog=no,all", null, + { + tabType: "contentTab", + tabParams: {contentPage: url} + }); + } + }; + + exports.contentContextMenu = ["mailContext", "pageContextMenu"]; + + exports.defaultToolbarPosition = { + parent: "header-view-toolbar", + before: "hdrReplyButton", + addClass: "msgHeaderView-button" + }; + + exports.statusbarPosition = { + parent: "status-bar" + }; + + exports.toolsMenu = { + parent: "taskPopup", + after: "javaScriptConsole" + }; + + exports.getCurrentLocation = function getCurrentLocation(window) + { + let browser = exports.getBrowser(window); + if (!browser) + return null; + + if (browser.id == "messagepane" && "currentHeaderData" in window && "content-base" in window.currentHeaderData) + { + // This is a blog entry + return window.currentHeaderData["content-base"].headerValue; + } + else if (browser.id == "messagepane" && "currentHeaderData" in window && "from" in window.currentHeaderData) + { + // This is a mail/newsgroup entry + try + { + let headerParser = Cc["@mozilla.org/messenger/headerparser;1"].getService(Ci.nsIMsgHeaderParser); + let emailAddress = headerParser.extractHeaderAddressMailboxes(window.currentHeaderData.from.headerValue); + return "mailto:" + emailAddress.replace(/^[\s"]+/, "").replace(/[\s"]+$/, "").replace(/\s/g, "%20"); + } + catch(e) + { + return null; + } + } + else + return browser.currentURI; + } + + exports.addBottomBar = function tb_addBottomBar(window, element) + { + let browser = exports.getBrowser(window); + if (!browser) + return; + + let parent = window.document.getElementById("messagepanebox"); + if (!parent || !(parent.compareDocumentPosition(browser) & Ci.nsIDOMNode.DOCUMENT_POSITION_CONTAINED_BY)) + parent = browser.parentNode; + + _addBottomBar(window, parent, element); + }; + + exports.removeBottomBar = _removeBottomBar; + + let BrowserChangeListener = function(window, callback) + { + this.window = window; + this.callback = callback; + this.onSelect = this.onSelect.bind(this); + this.attach(); + }; + BrowserChangeListener.prototype = { + window: null, + callback: null, + currentBrowser: null, + + setBrowser: function(browser) + { + if (browser != this.currentBrowser) + { + let oldBrowser = this.currentBrowser; + this.currentBrowser = browser; + this.callback(oldBrowser, browser); + } + }, + + onSelect: function() + { + this.setBrowser(exports.getBrowser(this.window)); + }, + + attach: function() + { + this.onSelect(); + + let tabmail = this.window.document.getElementById("tabmail"); + if (tabmail) + tabmail.tabContainer.addEventListener("select", this.onSelect, false); + }, + detach: function() + { + let tabmail = this.window.document.getElementById("tabmail"); + if (tabmail) + tabmail.tabContainer.removeEventListener("select", this.onSelect, false); + + this.setBrowser(null); + } + }; + + exports.addBrowserLocationListener = function(/**Window*/ window, /**Function*/ callback, /**Boolean*/ ignoreSameDoc) + { + if (progressListeners.has(window)) + { + progressListeners.get(window).locationCallbacks.push(callback); + return; + } + + let callbacks = [callback]; + let dummy = function() {}; + let progressListener = + { + onLocationChange: function(progress, request, uri, flags) + { + if (!ignoreSameDoc || !flags || !(flags & Ci.nsIWebProgressListener.LOCATION_CHANGE_SAME_DOCUMENT)) + for (let i = 0; i < callbacks.length; i++) + callbacks[i](); + }, + onProgressChange: dummy, + onSecurityChange: dummy, + onStateChange: dummy, + onStatusChange: dummy, + QueryInterface: XPCOMUtils.generateQI([Ci.nsIWebProgressListener, Ci.nsISupportsWeakReference]) + }; + let messageListener = + { + onStartHeaders: dummy, + onEndHeaders: function() + { + let browser = exports.getBrowser(window); + if (browser.id == "messagepane") + for (let i = 0; i < callbacks.length; i++) + callbacks[i](); + }, + onEndAttachments: dummy, + onBeforeShowHeaderPane: dummy + }; + + let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser) + { + if (oldBrowser) + oldBrowser.removeProgressListener(progressListener); + if (newBrowser) + newBrowser.addProgressListener(progressListener); + progressListener.onLocationChange(); + }); + listener.locationCallbacks = callbacks; + + if ("gMessageListeners" in window) + window.gMessageListeners.push(messageListener); + listener.messageListener = messageListener; + + progressListeners.set(window, listener); + }; + + exports.removeBrowserLocationListener = function(/**Window*/ window, /**Function*/ callback) + { + if (!progressListeners.has(window)) + return; + + let callbacks = progressListeners.get(window).locationCallbacks; + for (let i = 0; i < callbacks.length; i++) + if (callbacks[i] == callback) + callbacks.splice(i--, 1); + }; + + exports.removeBrowserLocationListeners = function(/**Window*/ window) + { + if (!progressListeners.has(window)) + return; + + let listener = progressListeners.get(window); + + let messageListener = listener.messageListener; + let index = ("gMessageListeners" in window ? window.gMessageListeners.indexOf(messageListener) : -1); + if (index >= 0) + window.gMessageListeners.splice(index, 1); + + listener.detach(); + progressListeners.delete(window); + }; + + exports.addBrowserClickListener = function addBrowserClickListener(/**Window*/ window, /**Function*/ callback) + { + if (clickListeners.has(window)) + { + clickListeners.get(window).callbacks.push(callback); + return; + } + + let callbacks = [callback]; + let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser) + { + if (oldBrowser) + for (let i = 0; i < callbacks.length; i++) + oldBrowser.removeEventListener("click", callbacks[i], true); + if (newBrowser) + for (let i = 0; i < callbacks.length; i++) + newBrowser.addEventListener("click", callbacks[i], true); + }); + listener.callbacks = callbacks; + + clickListeners.set(window, listener); + }; + + exports.removeBrowserClickListeners = function removeBrowserClickListeners(/**Window*/ window) + { + if (!clickListeners.has(window)) + return; + + let listener = clickListeners.get(window); + listener.detach(); + + clickListeners.delete(window); + }; + + // Make sure to close/reopen list of blockable items when the user changes tabs + let {WindowObserver} = require("windowObserver"); + new WindowObserver({ + listeners: new WeakMap(), + applyToWindow: function(window) + { + if (!exports.isKnownWindow(window) || this.listeners.has(window)) + return; + + let {Utils} = require("utils"); + Utils.runAsync(function() + { + let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser) + { + if (bottomBars.has(window)) + { + let {UI} = require("ui") + UI.toggleBottombar(window); + UI.toggleBottombar(window); + } + }); + this.listeners.set(window, listener); + }.bind(this)); + }, + removeFromWindow: function(window) + { + if (!this.listeners.has(window)) + return; + + let listener = this.listeners.get(window); + listener.detach(); + this.listeners.delete(window); + } + }); + + break; + } + + case "fennec2": + { + exports.isKnownWindow = (window) => window.document.documentElement.id == "main-window"; + + exports.getBrowser = (window) => window.BrowserApp.selectedBrowser; + + exports.addTab = (window, url, event) => window.BrowserApp.addTab(url, {selected: true}); + + let BrowserChangeListener = function(window, callback) + { + this.window = window; + this.callback = callback; + this.onSelect = this.onSelect.bind(this); + this.attach(); + }; + BrowserChangeListener.prototype = { + window: null, + callback: null, + currentBrowser: null, + + setBrowser: function(browser) + { + if (browser != this.currentBrowser) + { + let oldBrowser = this.currentBrowser; + this.currentBrowser = browser; + this.callback(oldBrowser, browser); + } + }, + + onSelect: function() + { + let {Utils} = require("utils"); + Utils.runAsync(function() + { + this.setBrowser(exports.getBrowser(this.window)); + }.bind(this)); + }, + + attach: function() + { + this.onSelect(); + + this.window.BrowserApp.deck.addEventListener("TabSelect", this.onSelect, false); + }, + detach: function() + { + this.window.BrowserApp.deck.removeEventListener("TabSelect", this.onSelect, false); + + this.setBrowser(null); + } + }; + + exports.addBrowserLocationListener = function ffn_addBrowserLocationListener(/**Window*/ window, /**Function*/ callback, /**Boolean*/ ignoreSameDoc) + { + if (progressListeners.has(window)) + { + progressListeners.get(window).locationCallbacks.push(callback); + return; + } + + let callbacks = [callback]; + let dummy = function() {}; + let progressListener = + { + onLocationChange: function(progress, request, uri, flags) + { + if (!ignoreSameDoc || !flags || !(flags & Ci.nsIWebProgressListener.LOCATION_CHANGE_SAME_DOCUMENT)) + for (let i = 0; i < callbacks.length; i++) + callbacks[i](); + }, + onProgressChange: dummy, + onSecurityChange: dummy, + onStateChange: dummy, + onStatusChange: dummy, + QueryInterface: XPCOMUtils.generateQI([Ci.nsIWebProgressListener, Ci.nsISupportsWeakReference]) + }; + + let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser) + { + if (oldBrowser && typeof oldBrowser.removeProgressListener == "function") + oldBrowser.removeProgressListener(progressListener); + if (newBrowser && typeof newBrowser.removeProgressListener == "function") + newBrowser.addProgressListener(progressListener); + progressListener.onLocationChange(); + }); + listener.locationCallbacks = callbacks; + + progressListeners.set(window, listener); + }; + + exports.removeBrowserLocationListener = function ffn_removeBrowserLocationListener(/**Window*/ window, /**Function*/ callback) + { + if (!progressListeners.has(window)) + return; + + let callbacks = progressListeners.get(window).locationCallbacks; + for (let i = 0; i < callbacks.length; i++) + if (callbacks[i] == callback) + callbacks.splice(i--, 1); + }; + + exports.removeBrowserLocationListeners = function ffn_removeBrowserLocationListeners(/**Window*/ window) + { + if (!progressListeners.has(window)) + return; + + let listener = progressListeners.get(window); + listener.detach(); + progressListeners.delete(window); + }; + + exports.addBrowserClickListener = function ffn_addBrowserClickListener(/**Window*/ window, /**Function*/ callback) + { + if (clickListeners.has(window)) + { + clickListeners.get(window).callbacks.push(callback); + return; + } + + let callbacks = [callback]; + let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser) + { + if (oldBrowser) + for (let i = 0; i < callbacks.length; i++) + oldBrowser.removeEventListener("click", callbacks[i], true); + if (newBrowser) + for (let i = 0; i < callbacks.length; i++) + newBrowser.addEventListener("click", callbacks[i], true); + }); + listener.callbacks = callbacks; + + clickListeners.set(window, listener); + }; + + exports.removeBrowserClickListeners = function ffn_removeBrowserClickListeners(/**Window*/ window) + { + if (!clickListeners.has(window)) + return; + + let listener = clickListeners.get(window); + listener.detach(); + + clickListeners.delete(window); + }; + + let {Filter} = require("filterClasses"); + let {Prefs} = require("prefs"); + let {Policy} = require("contentPolicy"); + let {UI} = require("ui"); + let {Utils} = require("utils"); + + let toggleWhitelist = function(window) + { + if (!Prefs.enabled) + { + Prefs.enabled = true; + return; + } + + let location = exports.getCurrentLocation(window); + let host = null; + if (location instanceof Ci.nsIURL && Policy.isBlockableScheme(location)) + { + try + { + host = location.host.replace(/^www\./, ""); + } catch (e) {} + } + + if (!host) + return; + + if (Policy.isWhitelisted(location.spec)) + UI.removeWhitelist(window); + else + UI.toggleFilter(Filter.fromText("@@||" + host + "^$document")); + }; + + let menuItem = null; + onShutdown.add(function() + { + let window = null; + for (window in UI.applicationWindows) + break; + + if (window && menuItem) + window.NativeWindow.menu.remove(menuItem); + }); + + UI.updateIconState = function fmn_updateIconState(window, icon) + { + if (menuItem !== null) + { + window.NativeWindow.menu.remove(menuItem); + menuItem = null; + } + + let action; + let host = null; + if (Prefs.enabled) + { + let location = exports.getCurrentLocation(window); + if (location instanceof Ci.nsIURL && Policy.isBlockableScheme(location)) + { + try + { + host = location.host.replace(/^www\./, ""); + } catch (e) {} + } + if (!host) + return; + + if (host && Policy.isWhitelisted(location.spec)) + action = "enable_site"; + else if (host) + action = "disable_site"; + } + else + action = "enable"; + + let actionText = Utils.getString("mobile_menu_" + action); + if (host) + actionText = actionText.replace(/\?1\?/g, host); + + let iconUrl = require("info").addonRoot + "icon64.png"; + menuItem = window.NativeWindow.menu.add(actionText, iconUrl, toggleWhitelist.bind(null, window)); + }; + + UI.openSubscriptionDialog = function(window, url, title, mainURL, mainTitle) + { + let dialogTitle = this.overlay.attributes.subscriptionDialogTitle; + let dialogMessage = this.overlay.attributes.subscriptionDialogMessage.replace(/\?1\?/, title).replace(/\?2\?/, url); + if (Utils.confirm(window, dialogMessage, dialogTitle)) + this.setSubscription(url, title); + }; + + UI.openFiltersDialog = function() + { + let window = UI.currentWindow; + if (!window) + return + + let browser = exports.addTab(window, "about:addons").browser; + browser.addEventListener("load", function openAddonPrefs(event) + { + browser.removeEventListener("load", openAddonPrefs, true); + Utils.runAsync(function() + { + // The page won't be ready until the add-on manager data is loaded so we call this method + // to know when the data will be ready. + AddonManager.getAddonsByTypes(["extension", "theme", "locale"], function() + { + let event = new Event("Event"); + event.initEvent("popstate", true, false); + event.state = {id: require("info").addonID}; + browser._contentWindow.dispatchEvent(event); + }); + }); + }, true); + }; + + break; + } +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/contentPolicy.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/contentPolicy.js new file mode 100644 index 0000000..084ebc5 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/contentPolicy.js @@ -0,0 +1,779 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Content policy implementation, responsible for blocking things. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let {TimeLine} = require("timeline"); +let {Utils} = require("utils"); +let {Prefs} = require("prefs"); +let {FilterStorage} = require("filterStorage"); +let {BlockingFilter, WhitelistFilter} = require("filterClasses"); +let {defaultMatcher} = require("matcher"); +let {objectMouseEventHander} = require("objectTabs"); +let {RequestNotifier} = require("requestNotifier"); +let {ElemHide} = require("elemHide"); + +/** + * List of explicitly supported content types + * @type Array of String + */ +let contentTypes = ["OTHER", "SCRIPT", "IMAGE", "STYLESHEET", "OBJECT", "SUBDOCUMENT", "DOCUMENT", "XMLHTTPREQUEST", "OBJECT_SUBREQUEST", "FONT", "MEDIA"]; + +/** + * List of content types that aren't associated with a visual document area + * @type Array of String + */ +let nonVisualTypes = ["SCRIPT", "STYLESHEET", "XMLHTTPREQUEST", "OBJECT_SUBREQUEST", "FONT"]; + +/** + * Randomly generated class name, to be applied to collapsed nodes. + */ +let collapsedClass = ""; + +/** + * Public policy checking functions and auxiliary objects + * @class + */ +let Policy = exports.Policy = +{ + /** + * Map of content type identifiers by their name. + * @type Object + */ + type: {}, + + /** + * Map of content type names by their identifiers (reverse of type map). + * @type Object + */ + typeDescr: {}, + + /** + * Map of localized content type names by their identifiers. + * @type Object + */ + localizedDescr: {}, + + /** + * Lists the non-visual content types. + * @type Object + */ + nonVisual: {}, + + /** + * Map containing all schemes that should be ignored by content policy. + * @type Object + */ + whitelistSchemes: {}, + + /** + * Called on module startup, initializes various exported properties. + */ + init: function() + { + TimeLine.enter("Entered content policy initialization"); + + // type constant by type description and type description by type constant + let iface = Ci.nsIContentPolicy; + for (let typeName of contentTypes) + { + if ("TYPE_" + typeName in iface) + { + let id = iface["TYPE_" + typeName]; + this.type[typeName] = id; + this.typeDescr[id] = typeName; + this.localizedDescr[id] = Utils.getString("type_label_" + typeName.toLowerCase()); + } + } + + this.type.ELEMHIDE = 0xFFFD; + this.typeDescr[0xFFFD] = "ELEMHIDE"; + this.localizedDescr[0xFFFD] = Utils.getString("type_label_elemhide"); + + this.type.POPUP = 0xFFFE; + this.typeDescr[0xFFFE] = "POPUP"; + this.localizedDescr[0xFFFE] = Utils.getString("type_label_popup"); + + for (let type of nonVisualTypes) + this.nonVisual[this.type[type]] = true; + + // whitelisted URL schemes + for (let scheme of Prefs.whitelistschemes.toLowerCase().split(" ")) + this.whitelistSchemes[scheme] = true; + + TimeLine.log("done initializing types"); + + // Generate class identifier used to collapse node and register corresponding + // stylesheet. + TimeLine.log("registering global stylesheet"); + + let offset = "a".charCodeAt(0); + for (let i = 0; i < 20; i++) + collapsedClass += String.fromCharCode(offset + Math.random() * 26); + + let collapseStyle = Services.io.newURI("data:text/css," + + encodeURIComponent("." + collapsedClass + + "{-moz-binding: url(chrome://global/content/bindings/general.xml#foobarbazdummy) !important;}"), null, null); + Utils.styleService.loadAndRegisterSheet(collapseStyle, Ci.nsIStyleSheetService.USER_SHEET); + onShutdown.add(function() + { + Utils.styleService.unregisterSheet(collapseStyle, Ci.nsIStyleSheetService.USER_SHEET); + }) + TimeLine.log("done registering stylesheet"); + + TimeLine.leave("Done initializing content policy"); + }, + + /** + * Checks whether a node should be blocked, hides it if necessary + * @param wnd {nsIDOMWindow} + * @param node {nsIDOMElement} + * @param contentType {String} + * @param location {nsIURI} + * @param collapse {Boolean} true to force hiding of the node + * @return {Boolean} false if the node should be blocked + */ + processNode: function(wnd, node, contentType, location, collapse) + { + let topWnd = wnd.top; + if (!topWnd || !topWnd.location || !topWnd.location.href) + return true; + + let privatenode=false; + Components.utils.import("resource://gre/modules/PrivateBrowsingUtils.jsm"); + if (PrivateBrowsingUtils.isWindowPrivate(wnd)) + privatenode=true; + + let originWindow = Utils.getOriginWindow(wnd); + let wndLocation = originWindow.location.href; + let docDomain = getHostname(wndLocation); + let match = null; + if (!match && Prefs.enabled) + { + let testWnd = wnd; + let parentWndLocation = getWindowLocation(testWnd); + while (true) + { + let testWndLocation = parentWndLocation; + parentWndLocation = (testWnd == testWnd.parent ? testWndLocation : getWindowLocation(testWnd.parent)); + match = Policy.isWhitelisted(testWndLocation, parentWndLocation); + + if (!(match instanceof WhitelistFilter)) + { + let keydata = (testWnd.document && testWnd.document.documentElement ? testWnd.document.documentElement.getAttribute("data-adblockkey") : null); + if (keydata && keydata.indexOf("_") >= 0) + { + let [key, signature] = keydata.split("_", 2); + let keyMatch = defaultMatcher.matchesByKey(testWndLocation, key.replace(/=/g, ""), docDomain); + if (keyMatch && Utils.crypto) + { + // Website specifies a key that we know but is the signature valid? + let uri = Services.io.newURI(testWndLocation, null, null); + let params = [ + uri.path.replace(/#.*/, ""), // REQUEST_URI + uri.asciiHost, // HTTP_HOST + Utils.httpProtocol.userAgent // HTTP_USER_AGENT + ]; + if (Utils.verifySignature(key, signature, params.join("\0"))) + match = keyMatch; + } + } + } + + if (match instanceof WhitelistFilter) + { + FilterStorage.increaseHitCount(match, wnd); + RequestNotifier.addNodeData(testWnd.document, topWnd, Policy.type.DOCUMENT, getHostname(parentWndLocation), false, testWndLocation, match); + return true; + } + + if (testWnd.parent == testWnd) + break; + else + testWnd = testWnd.parent; + } + } + + // Data loaded by plugins should be attached to the document + if (contentType == Policy.type.OBJECT_SUBREQUEST && node instanceof Ci.nsIDOMElement) + node = node.ownerDocument; + + // Fix type for objects misrepresented as frames or images + if (contentType != Policy.type.OBJECT && (node instanceof Ci.nsIDOMHTMLObjectElement || node instanceof Ci.nsIDOMHTMLEmbedElement)) + contentType = Policy.type.OBJECT; + + let locationText = location.spec; + if (!match && contentType == Policy.type.ELEMHIDE) + { + let testWnd = wnd; + let parentWndLocation = getWindowLocation(testWnd); + while (true) + { + let testWndLocation = parentWndLocation; + parentWndLocation = (testWnd == testWnd.parent ? testWndLocation : getWindowLocation(testWnd.parent)); + let parentDocDomain = getHostname(parentWndLocation); + match = defaultMatcher.matchesAny(testWndLocation, "ELEMHIDE", parentDocDomain, false); + if (match instanceof WhitelistFilter) + { + FilterStorage.increaseHitCount(match, wnd); + RequestNotifier.addNodeData(testWnd.document, topWnd, contentType, parentDocDomain, false, testWndLocation, match); + return true; + } + + if (testWnd.parent == testWnd) + break; + else + testWnd = testWnd.parent; + } + + match = location; + locationText = match.text.replace(/^.*?#/, '#'); + location = locationText; + + if (!match.isActiveOnDomain(docDomain)) + return true; + + let exception = ElemHide.getException(match, docDomain); + if (exception) + { + FilterStorage.increaseHitCount(exception, wnd); + RequestNotifier.addNodeData(node, topWnd, contentType, docDomain, thirdParty, locationText, exception); + return true; + } + } + + let thirdParty = (contentType == Policy.type.ELEMHIDE ? false : isThirdParty(location, docDomain)); + + if (!match && Prefs.enabled) + { + match = defaultMatcher.matchesAny(locationText, Policy.typeDescr[contentType] || "", docDomain, thirdParty, privatenode); + if (match instanceof BlockingFilter && node.ownerDocument && !(contentType in Policy.nonVisual)) + { + let prefCollapse = (match.collapse != null ? match.collapse : !Prefs.fastcollapse); + if (collapse || prefCollapse) + schedulePostProcess(node); + } + + // Track mouse events for objects + if (!match && contentType == Policy.type.OBJECT && node.nodeType == Ci.nsIDOMNode.ELEMENT_NODE) + { + node.addEventListener("mouseover", objectMouseEventHander, true); + node.addEventListener("mouseout", objectMouseEventHander, true); + } + } + + // Store node data + RequestNotifier.addNodeData(node, topWnd, contentType, docDomain, thirdParty, locationText, match); + if (match) + FilterStorage.increaseHitCount(match, wnd); + + return !match || match instanceof WhitelistFilter; + }, + + /** + * Checks whether the location's scheme is blockable. + * @param location {nsIURI} + * @return {Boolean} + */ + isBlockableScheme: function(location) + { + return !(location.scheme in Policy.whitelistSchemes); + }, + + /** + * Checks whether a page is whitelisted. + * @param {String} url + * @param {String} [parentUrl] location of the parent page + * @return {Filter} filter that matched the URL or null if not whitelisted + */ + isWhitelisted: function(url, parentUrl) + { + if (!url) + return null; + + // Do not apply exception rules to schemes on our whitelistschemes list. + let match = /^([\w\-]+):/.exec(url); + if (match && match[1] in Policy.whitelistSchemes) + return null; + + if (!parentUrl) + parentUrl = url; + + // Ignore fragment identifier + let index = url.indexOf("#"); + if (index >= 0) + url = url.substring(0, index); + + let result = defaultMatcher.matchesAny(url, "DOCUMENT", getHostname(parentUrl), false); + return (result instanceof WhitelistFilter ? result : null); + }, + + /** + * Checks whether the page loaded in a window is whitelisted. + * @param wnd {nsIDOMWindow} + * @return {Filter} matching exception rule or null if not whitelisted + */ + isWindowWhitelisted: function(wnd) + { + return Policy.isWhitelisted(getWindowLocation(wnd)); + }, + + + /** + * Asynchronously re-checks filters for given nodes. + */ + refilterNodes: function(/**Node[]*/ nodes, /**RequestEntry*/ entry) + { + // Ignore nodes that have been blocked already + if (entry.filter && !(entry.filter instanceof WhitelistFilter)) + return; + + for (let node of nodes) + Utils.runAsync(refilterNode, this, node, entry); + } +}; +Policy.init(); + +/** + * Actual nsIContentPolicy and nsIChannelEventSink implementation + * @class + */ +let PolicyImplementation = +{ + classDescription: "Adblock Plus content policy", + classID: Components.ID("cfeaabe6-1dd1-11b2-a0c6-cb5c268894c9"), + contractID: "@adblockplus.org/abp/policy;1", + xpcom_categories: ["content-policy", "net-channel-event-sinks"], + + /** + * Registers the content policy on startup. + */ + init: function() + { + let registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); + try + { + registrar.registerFactory(this.classID, this.classDescription, this.contractID, this); + } + catch (e if e.result == Cr.NS_ERROR_FACTORY_EXISTS) + { + // See bug 924340 - it might be too early to init now, the old version + // we are replacing didn't finish removing itself yet. + Utils.runAsync(this.init.bind(this)); + return; + } + + let catMan = Utils.categoryManager; + for (let category of this.xpcom_categories) + catMan.addCategoryEntry(category, this.contractID, this.contractID, false, true); + + // http-on-opening-request is new in Gecko 18, http-on-modify-request can + // be used in earlier releases. + let httpTopic = "http-on-opening-request"; + if (Services.vc.compare(Utils.platformVersion, "18.0") < 0) + httpTopic = "http-on-modify-request"; + + Services.obs.addObserver(this, httpTopic, true); + Services.obs.addObserver(this, "content-document-global-created", true); + Services.obs.addObserver(this, "xpcom-category-entry-removed", true); + Services.obs.addObserver(this, "xpcom-category-cleared", true); + + onShutdown.add(function() + { + // Our category observers should be removed before changing category + // memberships, just in case. + Services.obs.removeObserver(this, httpTopic); + Services.obs.removeObserver(this, "content-document-global-created"); + Services.obs.removeObserver(this, "xpcom-category-entry-removed"); + Services.obs.removeObserver(this, "xpcom-category-cleared"); + + for (let category of this.xpcom_categories) + catMan.deleteCategoryEntry(category, this.contractID, false); + + // This needs to run asynchronously, see bug 753687 + Utils.runAsync(function() + { + registrar.unregisterFactory(this.classID, this); + }.bind(this)); + + this.previousRequest = null; + }.bind(this)); + }, + + // + // nsISupports interface implementation + // + + QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPolicy, Ci.nsIObserver, + Ci.nsIChannelEventSink, Ci.nsIFactory, Ci.nsISupportsWeakReference]), + + // + // nsIContentPolicy interface implementation + // + + shouldLoad: function(contentType, contentLocation, requestOrigin, node, mimeTypeGuess, extra) + { + // Ignore requests without context and top-level documents + if (!node || contentType == Policy.type.DOCUMENT) + return Ci.nsIContentPolicy.ACCEPT; + + // Ignore standalone objects + if (contentType == Policy.type.OBJECT && node.ownerDocument && !/^text\/|[+\/]xml$/.test(node.ownerDocument.contentType)) + return Ci.nsIContentPolicy.ACCEPT; + + let wnd = Utils.getWindow(node); + if (!wnd) + return Ci.nsIContentPolicy.ACCEPT; + + // Ignore whitelisted schemes + let location = Utils.unwrapURL(contentLocation); + if (!Policy.isBlockableScheme(location)) + return Ci.nsIContentPolicy.ACCEPT; + + // Interpret unknown types as "other" + if (!(contentType in Policy.typeDescr)) + contentType = Policy.type.OTHER; + + let result = Policy.processNode(wnd, node, contentType, location, false); + if (result) + { + // We didn't block this request so we will probably see it again in + // http-on-opening-request. Keep it so that we can associate it with the + // channel there - will be needed in case of redirect. + this.previousRequest = [location, contentType]; + } + return (result ? Ci.nsIContentPolicy.ACCEPT : Ci.nsIContentPolicy.REJECT_REQUEST); + }, + + shouldProcess: function(contentType, contentLocation, requestOrigin, insecNode, mimeType, extra) + { + return Ci.nsIContentPolicy.ACCEPT; + }, + + // + // nsIObserver interface implementation + // + observe: function(subject, topic, data, additional) + { + switch (topic) + { + case "content-document-global-created": + { + if (!(subject instanceof Ci.nsIDOMWindow) || !subject.opener) + return; + + let uri = additional || Utils.makeURI(subject.location.href); + if (!Policy.processNode(subject.opener, subject.opener.document, Policy.type.POPUP, uri, false)) + { + subject.stop(); + Utils.runAsync(subject.close, subject); + } + else if (uri.spec == "about:blank") + { + // An about:blank pop-up most likely means that a load will be + // initiated synchronously. Set a flag for our "http-on-opening-request" + // handler. + this.expectingPopupLoad = true; + Utils.runAsync(function() + { + this.expectingPopupLoad = false; + }); + } + break; + } + case "http-on-opening-request": + case "http-on-modify-request": + { + if (!(subject instanceof Ci.nsIHttpChannel)) + return; + + if (this.previousRequest && subject.URI == this.previousRequest[0] && + subject instanceof Ci.nsIWritablePropertyBag) + { + // We just handled a content policy call for this request - associate + // the data with the channel so that we can find it in case of a redirect. + subject.setProperty("abpRequestType", this.previousRequest[1]); + this.previousRequest = null; + } + + if (this.expectingPopupLoad) + { + let wnd = Utils.getRequestWindow(subject); + if (wnd && wnd.opener && wnd.location.href == "about:blank") + { + this.observe(wnd, "content-document-global-created", null, subject.URI); + if (subject instanceof Ci.nsIWritablePropertyBag) + subject.setProperty("abpRequestType", Policy.type.POPUP); + } + } + + break; + } + case "xpcom-category-entry-removed": + case "xpcom-category-cleared": + { + let category = data; + if (this.xpcom_categories.indexOf(category) < 0) + return; + + if (topic == "xpcom-category-entry-removed" && + subject instanceof Ci.nsISupportsCString && + subject.data != this.contractID) + { + return; + } + + // Our category entry was removed, make sure to add it back + let catMan = Utils.categoryManager; + catMan.addCategoryEntry(category, this.contractID, this.contractID, false, true); + break; + } + } + }, + + // + // nsIChannelEventSink interface implementation + // + + asyncOnChannelRedirect: function(oldChannel, newChannel, flags, callback) + { + let result = Cr.NS_OK; + try + { + // Try to retrieve previously stored request data from the channel + let contentType; + if (oldChannel instanceof Ci.nsIWritablePropertyBag) + { + try + { + contentType = oldChannel.getProperty("abpRequestType"); + } + catch(e) + { + // No data attached, ignore this redirect + return; + } + } + + let newLocation = null; + try + { + newLocation = newChannel.URI; + } catch(e2) {} + if (!newLocation) + return; + + let wnd = Utils.getRequestWindow(newChannel); + if (!wnd) + return; + + if (contentType == Policy.type.SUBDOCUMENT && wnd.parent == wnd.top && wnd.opener) + { + // This is a window opened in a new tab miscategorized as frame load, + // see bug 467514. Get the frame as context to be at least consistent. + wnd = wnd.opener; + } + + if (contentType == Policy.type.POPUP && wnd.opener) + { + // Popups are initiated by their opener, not their own window. + wnd = wnd.opener; + } + + if (!Policy.processNode(wnd, wnd.document, contentType, newLocation, false)) + result = Cr.NS_BINDING_ABORTED; + } + catch (e) + { + // We shouldn't throw exceptions here - this will prevent the redirect. + Cu.reportError(e); + } + finally + { + callback.onRedirectVerifyCallback(result); + } + }, + + // + // nsIFactory interface implementation + // + + createInstance: function(outer, iid) + { + if (outer) + throw Cr.NS_ERROR_NO_AGGREGATION; + return this.QueryInterface(iid); + } +}; +PolicyImplementation.init(); + +/** + * Nodes scheduled for post-processing (might be null). + * @type Array of Node + */ +let scheduledNodes = null; + +/** + * Schedules a node for post-processing. + */ +function schedulePostProcess(/**Element*/ node) +{ + if (scheduledNodes) + scheduledNodes.push(node); + else + { + scheduledNodes = [node]; + Utils.runAsync(postProcessNodes); + } +} + +/** + * Processes nodes scheduled for post-processing (typically hides them). + */ +function postProcessNodes() +{ + let nodes = scheduledNodes; + scheduledNodes = null; + + for (let node of nodes) + { + // adjust frameset's cols/rows for frames + let parentNode = node.parentNode; + if (parentNode && parentNode instanceof Ci.nsIDOMHTMLFrameSetElement) + { + let hasCols = (parentNode.cols && parentNode.cols.indexOf(",") > 0); + let hasRows = (parentNode.rows && parentNode.rows.indexOf(",") > 0); + if ((hasCols || hasRows) && !(hasCols && hasRows)) + { + let index = -1; + for (let frame = node; frame; frame = frame.previousSibling) + if (frame instanceof Ci.nsIDOMHTMLFrameElement || frame instanceof Ci.nsIDOMHTMLFrameSetElement) + index++; + + let property = (hasCols ? "cols" : "rows"); + let weights = parentNode[property].split(","); + weights[index] = "0"; + parentNode[property] = weights.join(","); + } + } + else + node.classList.add(collapsedClass); + } +} + +/** + * Extracts the hostname from a URL (might return null). + */ +function getHostname(/**String*/ url) /**String*/ +{ + try + { + return Utils.unwrapURL(url).host; + } + catch(e) + { + return null; + } +} + +/** + * Retrieves the location of a window. + * @param wnd {nsIDOMWindow} + * @return {String} window location or null on failure + */ +function getWindowLocation(wnd) +{ + if ("name" in wnd && wnd.name == "messagepane") + { + // Thunderbird branch + try + { + let mailWnd = wnd.QueryInterface(Ci.nsIInterfaceRequestor) + .getInterface(Ci.nsIWebNavigation) + .QueryInterface(Ci.nsIDocShellTreeItem) + .rootTreeItem + .QueryInterface(Ci.nsIInterfaceRequestor) + .getInterface(Ci.nsIDOMWindow); + + // Typically we get a wrapped mail window here, need to unwrap + try + { + mailWnd = mailWnd.wrappedJSObject; + } catch(e) {} + + if ("currentHeaderData" in mailWnd && "content-base" in mailWnd.currentHeaderData) + { + return mailWnd.currentHeaderData["content-base"].headerValue; + } + else if ("currentHeaderData" in mailWnd && "from" in mailWnd.currentHeaderData) + { + let emailAddress = Utils.headerParser.extractHeaderAddressMailboxes(mailWnd.currentHeaderData.from.headerValue); + if (emailAddress) + return 'mailto:' + emailAddress.replace(/^[\s"]+/, "").replace(/[\s"]+$/, "").replace(/\s/g, '%20'); + } + } catch(e) {} + } + + // Firefox branch + return wnd.location.href; +} + +/** + * Checks whether the location's origin is different from document's origin. + */ +function isThirdParty(/**nsIURI*/location, /**String*/ docDomain) /**Boolean*/ +{ + if (!location || !docDomain) + return true; + + try + { + return Utils.effectiveTLD.getBaseDomain(location) != Utils.effectiveTLD.getBaseDomainFromHost(docDomain); + } + catch (e) + { + // EffectiveTLDService throws on IP addresses, just compare the host name + let host = ""; + try + { + host = location.host; + } catch (e) {} + return host != docDomain; + } +} + +/** + * Re-checks filters on an element. + */ +function refilterNode(/**Node*/ node, /**RequestEntry*/ entry) +{ + let wnd = Utils.getWindow(node); + if (!wnd || wnd.closed) + return; + + if (entry.type == Policy.type.OBJECT) + { + node.removeEventListener("mouseover", objectMouseEventHander, true); + node.removeEventListener("mouseout", objectMouseEventHander, true); + } + Policy.processNode(wnd, node, entry.type, Utils.makeURI(entry.location), true); +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/customizableUI.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/customizableUI.js new file mode 100644 index 0000000..7db7425 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/customizableUI.js @@ -0,0 +1,320 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview This emulates a subset of the CustomizableUI API from Firefox 28. + */ + +let {XPCOMUtils} = Cu.import("resource://gre/modules/XPCOMUtils.jsm", null); + +let {Utils} = require("utils"); + +// UI module has to be referenced lazily to avoid circular references +XPCOMUtils.defineLazyGetter(this, "UI", () => require("ui").UI); + +let widgets = Map(); + +function getToolbox(/**Window*/ window, /**Widget*/ widget) /**Element*/ +{ + if (!("defaultArea" in widget) || !widget.defaultArea) + return null; + + let toolbar = UI.findElement(window, widget.defaultArea); + if (!toolbar) + return null; + + let toolbox = toolbar.toolbox; + if (toolbox && ("palette" in toolbox) && toolbox.palette) + return toolbox; + else + return null; +} + +function getToolbar(/**Element*/ element) /**Element*/ +{ + for (let parent = element.parentNode; parent; parent = parent.parentNode) + if (parent.localName == "toolbar") + return parent; + return null; +} + +function getPaletteItem(/**Element*/ toolbox, /**String*/ id) /**Element*/ +{ + for (let child of toolbox.palette.children) + if (child.id == id) + return child; + + return null; +} + +function restoreWidget(/**Element*/ toolbox, /**Widget*/ widget) +{ + // Create node + let node = widget.onBuild(toolbox.ownerDocument); + + // Insert into the palette first + toolbox.palette.insertBefore(node, toolbox.palette.firstChild); + + // Now find out where we should put it + let position = toolbox.getAttribute(widget.positionAttribute); + if (!/^\S*,\S*,\S*$/.test(position)) + position = null; + + if (position == null) + { + // No explicitly saved position but maybe we can find it in a currentset + // attribute somewhere. + let toolbars = toolbox.externalToolbars.slice(); + for (let child of toolbox.children) + if (child.localName == "toolbar") + toolbars.push(child); + for (let toolbar of toolbars) + { + let currentSet = toolbar.getAttribute("currentset"); + if (currentSet) + { + let items = currentSet.split(","); + let index = items.indexOf(widget.id); + if (index >= 0) + { + let before = (index + 1 < items.length ? items[index + 1] : ""); + position = "visible," + toolbar.id + "," + before; + toolbox.setAttribute(widget.positionAttribute, position); + toolbox.ownerDocument.persist(toolbox.id, widget.positionAttribute); + break; + } + } + } + } + + showWidget(toolbox, widget, position); +} + +function showWidget(/**Element*/ toolbox, /**Widget*/ widget, /**String*/ position) +{ + let visible = "visible", parent = null, before = null; + if (position) + { + [visible, parent, before] = position.split(",", 3); + parent = toolbox.ownerDocument.getElementById(parent); + if (before == "") + before = null; + else + before = toolbox.ownerDocument.getElementById(before); + if (before && before.parentNode != parent) + before = null; + } + + if (visible == "visible" && !parent) + { + let insertionPoint = { + parent: widget.defaultArea + }; + if (typeof widget.defaultBefore != "undefined") + insertionPoint.before = widget.defaultBefore; + if (typeof widget.defaultAfter != "undefined") + insertionPoint.after = widget.defaultAfter; + + [parent, before] = UI.resolveInsertionPoint(toolbox.ownerDocument.defaultView, insertionPoint); + } + + if (parent && parent.localName != "toolbar") + parent = null; + + if (visible != "visible") + { + // Move to palette if the item is currently visible + let node = toolbox.ownerDocument.getElementById(widget.id); + if (node) + toolbox.palette.appendChild(node); + } + else if (parent) + { + // Add the item to the toolbar + let items = parent.currentSet.split(","); + let index = (before ? items.indexOf(before.id) : -1); + if (index < 0) + before = null; + parent.insertItem(widget.id, before, null, false); + } + + saveState(toolbox, widget); +} + +function removeWidget(/**Window*/ window, /**Widget*/ widget) +{ + let element = window.document.getElementById(widget.id); + if (element) + element.parentNode.removeChild(element); + + let toolbox = getToolbox(window, widget); + if (toolbox) + { + let paletteItem = getPaletteItem(toolbox, widget.id); + if (paletteItem) + paletteItem.parentNode.removeChild(paletteItem); + } +} + +function onToolbarCustomization(/**Event*/ event) +{ + let toolbox = event.currentTarget; + for (let [id, widget] of widgets) + saveState(toolbox, widget); +} + +function saveState(/**Element*/ toolbox, /**Widget*/ widget) +{ + let node = toolbox.ownerDocument.getElementById(widget.id); + + let position = toolbox.getAttribute(widget.positionAttribute) || "hidden,,"; + if (node && node.parentNode.localName != "toolbarpalette") + { + if (typeof widget.onAdded == "function") + widget.onAdded(node) + + let toolbar = getToolbar(node); + position = "visible," + toolbar.id + "," + (node.nextSibling ? node.nextSibling.id : ""); + } + else + position = position.replace(/^visible,/, "hidden,") + + toolbox.setAttribute(widget.positionAttribute, position); + toolbox.ownerDocument.persist(toolbox.id, widget.positionAttribute); +} + +let CustomizableUI = exports.CustomizableUI = +{ + createWidget: function(widget) + { + if (typeof widget.id == "undefined" || + typeof widget.defaultArea == "undefined" || + typeof widget.positionAttribute == "undefined") + { + throw new Error("Unexpected: required property missing from the widget data"); + } + widgets.set(widget.id, widget); + + // Show widget in any existing windows + for (let window of UI.applicationWindows) + { + let toolbox = getToolbox(window, widget); + if (toolbox) + { + toolbox.addEventListener("aftercustomization", onToolbarCustomization, false); + restoreWidget(toolbox, widget); + } + } + }, + + destroyWidget: function(id) + { + // Don't do anything here. This function is called on shutdown, + // removeFromWindow will take care of cleaning up already. + }, + + getPlacementOfWidget: function(id) + { + let window = UI.currentWindow; + if (!window) + return null; + + let widget = window.document.getElementById(id); + if (!widget) + return null; + + let toolbar = getToolbar(widget); + if (!toolbar) + return null; + + return {area: toolbar.id}; + }, + + addWidgetToArea: function(id) + { + // Note: the official API function also has area and position parameters. + // We ignore those here and simply restore the previous position instead. + let widget = widgets.get(id); + for (let window of UI.applicationWindows) + { + let toolbox = getToolbox(window, widget); + if (!toolbox) + continue; + + let position = toolbox.getAttribute(widget.positionAttribute); + if (position) + position = position.replace(/^hidden,/, "visible,"); + showWidget(toolbox, widget, position); + } + }, + + removeWidgetFromArea: function(id) + { + let widget = widgets.get(id); + for (let window of UI.applicationWindows) + { + let toolbox = getToolbox(window, widget); + if (!toolbox) + continue; + + let position = toolbox.getAttribute(widget.positionAttribute); + if (position) + position = position.replace(/^visible,/, "hidden,"); + else + position = "hidden,,"; + showWidget(toolbox, widget, position); + } + } +}; + +let {WindowObserver} = require("windowObserver"); +new WindowObserver({ + applyToWindow: function(window) + { + let {isKnownWindow} = require("appSupport"); + if (!isKnownWindow(window)) + return; + + for (let [id, widget] of widgets) + { + let toolbox = getToolbox(window, widget); + if (toolbox) + { + toolbox.addEventListener("aftercustomization", onToolbarCustomization, false); + + // Restore widget asynchronously to allow the stylesheet to load + Utils.runAsync(restoreWidget.bind(null, toolbox, widget)); + } + } + }, + + removeFromWindow: function(window) + { + let {isKnownWindow} = require("appSupport"); + if (!isKnownWindow(window)) + return; + + for (let [id, widget] of widgets) + { + let toolbox = getToolbox(window, widget); + if (toolbox) + toolbox.removeEventListener("aftercustomization", onToolbarCustomization, false); + + removeWidget(window, widget); + } + } +}); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/downloader.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/downloader.js new file mode 100644 index 0000000..d1ef209 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/downloader.js @@ -0,0 +1,381 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Downloads a set of URLs in regular time intervals. + */ + +let {Utils} = require("utils"); + +let MILLIS_IN_SECOND = exports.MILLIS_IN_SECOND = 1000; +let MILLIS_IN_MINUTE = exports.MILLIS_IN_MINUTE = 60 * MILLIS_IN_SECOND; +let MILLIS_IN_HOUR = exports.MILLIS_IN_HOUR = 60 * MILLIS_IN_MINUTE; +let MILLIS_IN_DAY = exports.MILLIS_IN_DAY = 24 * MILLIS_IN_HOUR; + +/** + * Creates a new downloader instance. + * @param {Function} dataSource Function that will yield downloadable objects on each check + * @param {Integer} initialDelay Number of milliseconds to wait before the first check + * @param {Integer} checkInterval Interval between the checks + * @constructor + */ +let Downloader = exports.Downloader = function Downloader(dataSource, initialDelay, checkInterval) +{ + this.dataSource = dataSource; + this._timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + this._timer.initWithCallback(function() + { + this._timer.delay = checkInterval; + this._doCheck(); + }.bind(this), initialDelay, Ci.nsITimer.TYPE_REPEATING_SLACK); + this._downloading = Object.create(null); +} +Downloader.prototype = +{ + /** + * Timer triggering the downloads. + * @type nsITimer + */ + _timer: null, + + /** + * Map containing the URLs of objects currently being downloaded as its keys. + */ + _downloading: null, + + /** + * Function that will yield downloadable objects on each check. + * @type Function + */ + dataSource: null, + + /** + * Maximal time interval that the checks can be left out until the soft + * expiration interval increases. + * @type Integer + */ + maxAbsenceInterval: 1 * MILLIS_IN_DAY, + + /** + * Minimal time interval before retrying a download after an error. + * @type Integer + */ + minRetryInterval: 1 * MILLIS_IN_DAY, + + /** + * Maximal allowed expiration interval, larger expiration intervals will be + * corrected. + * @type Integer + */ + maxExpirationInterval: 14 * MILLIS_IN_DAY, + + /** + * Maximal number of redirects before the download is considered as failed. + * @type Integer + */ + maxRedirects: 5, + + /** + * Called whenever expiration intervals for an object need to be adapted. + * @type Function + */ + onExpirationChange: null, + + /** + * Callback to be triggered whenever a download starts. + * @type Function + */ + onDownloadStarted: null, + + /** + * Callback to be triggered whenever a download finishes successfully. The + * callback can return an error code to indicate that the data is wrong. + * @type Function + */ + onDownloadSuccess: null, + + /** + * Callback to be triggered whenever a download fails. + * @type Function + */ + onDownloadError: null, + + /** + * Checks whether anything needs downloading. + */ + _doCheck: function() + { + let now = Date.now(); + for (let downloadable of this.dataSource()) + { + if (downloadable.lastCheck && now - downloadable.lastCheck > this.maxAbsenceInterval) + { + // No checks for a long time interval - user must have been offline, e.g. + // during a weekend. Increase soft expiration to prevent load peaks on the + // server. + downloadable.softExpiration += now - downloadable.lastCheck; + } + downloadable.lastCheck = now; + + // Sanity check: do expiration times make sense? Make sure people changing + // system clock don't get stuck with outdated subscriptions. + if (downloadable.hardExpiration - now > this.maxExpirationInterval) + downloadable.hardExpiration = now + this.maxExpirationInterval; + if (downloadable.softExpiration - now > this.maxExpirationInterval) + downloadable.softExpiration = now + this.maxExpirationInterval; + + // Notify the caller about changes to expiration parameters + if (this.onExpirationChange) + this.onExpirationChange(downloadable); + + // Does that object need downloading? + if (downloadable.softExpiration > now && downloadable.hardExpiration > now) + continue; + + // Do not retry downloads too often + if (downloadable.lastError && now - downloadable.lastError < this.minRetryInterval) + continue; + + this._download(downloadable, 0); + } + }, + + /** + * Stops the periodic checks. + */ + cancel: function() + { + this._timer.cancel(); + }, + + /** + * Checks whether an address is currently being downloaded. + */ + isDownloading: function(/**String*/ url) /**Boolean*/ + { + return url in this._downloading; + }, + + /** + * Starts downloading for an object. + */ + download: function(/**Downloadable*/ downloadable) + { + // Make sure to detach download from the current execution context + Utils.runAsync(this._download.bind(this, downloadable, 0)); + }, + + /** + * Generates the real download URL for an object by appending various + * parameters. + */ + getDownloadUrl: function(/**Downloadable*/ downloadable) /** String*/ + { + let {addonName, addonVersion, application, applicationVersion, platform, platformVersion} = require("info"); + let url = downloadable.redirectURL || downloadable.url; + if (url.indexOf("?") >= 0) + url += "&"; + else + url += "?"; + url += "addonName=" + encodeURIComponent(addonName) + + "&addonVersion=" + encodeURIComponent(addonVersion) + + "&application=" + encodeURIComponent(application) + + "&applicationVersion=" + encodeURIComponent(applicationVersion) + + "&platform=" + encodeURIComponent(platform) + + "&platformVersion=" + encodeURIComponent(platformVersion) + + "&lastVersion=" + encodeURIComponent(downloadable.lastVersion); + return url; + }, + + _download: function(downloadable, redirects) + { + if (this.isDownloading(downloadable.url)) + return; + + let downloadUrl = this.getDownloadUrl(downloadable); + let request = null; + + let errorCallback = function errorCallback(error) + { + let channelStatus = -1; + try + { + channelStatus = request.channel.status; + } catch (e) {} + + let responseStatus = request.status; + + Cu.reportError("Adblock Plus: Downloading URL " + downloadable.url + " failed (" + error + ")\n" + + "Download address: " + downloadUrl + "\n" + + "Channel status: " + channelStatus + "\n" + + "Server response: " + responseStatus); + + if (this.onDownloadError) + { + // Allow one extra redirect if the error handler gives us a redirect URL + let redirectCallback = null; + if (redirects <= this.maxRedirects) + { + redirectCallback = function redirectCallback(url) + { + downloadable.redirectURL = url; + this._download(downloadable, redirects + 1); + }.bind(this); + } + + this.onDownloadError(downloadable, downloadUrl, error, channelStatus, responseStatus, redirectCallback); + } + }.bind(this); + + try + { + request = new XMLHttpRequest(); + request.mozBackgroundRequest = true; + request.open("GET", downloadUrl); + } + catch (e) + { + errorCallback("synchronize_invalid_url"); + return; + } + + try { + request.overrideMimeType("text/plain"); + request.channel.loadFlags = request.channel.loadFlags | + request.channel.INHIBIT_CACHING | + request.channel.VALIDATE_ALWAYS; + + // Override redirect limit from preferences, user might have set it to 1 + if (request.channel instanceof Ci.nsIHttpChannel) + request.channel.redirectionLimit = this.maxRedirects; + } + catch (e) + { + Cu.reportError(e) + } + + request.addEventListener("error", function(event) + { + if (onShutdown.done) + return; + + delete this._downloading[downloadable.url]; + errorCallback("synchronize_connection_error"); + }.bind(this), false); + + request.addEventListener("load", function(event) + { + if (onShutdown.done) + return; + + delete this._downloading[downloadable.url]; + + // Status will be 0 for non-HTTP requests + if (request.status && request.status != 200) + { + errorCallback("synchronize_connection_error"); + return; + } + + this.onDownloadSuccess(downloadable, request.responseText, errorCallback, function redirectCallback(url) + { + if (redirects >= this.maxRedirects) + errorCallback("synchronize_connection_error"); + else + { + downloadable.redirectURL = url; + this._download(downloadable, redirects + 1); + } + }.bind(this)); + }.bind(this), false); + + request.send(null); + + this._downloading[downloadable.url] = true; + if (this.onDownloadStarted) + this.onDownloadStarted(downloadable); + }, + + /** + * Produces a soft and a hard expiration interval for a given supplied + * expiration interval. + * @return {Array} soft and hard expiration interval + */ + processExpirationInterval: function(/**Integer*/ interval) + { + interval = Math.min(Math.max(interval, 0), this.maxExpirationInterval); + let soft = Math.round(interval * (Math.random() * 0.4 + 0.8)); + let hard = interval * 2; + let now = Date.now(); + return [now + soft, now + hard]; + } +}; + +/** + * An object that can be downloaded by the downloadable + * @param {String} url URL that has to be requested for the object + * @constructor + */ +let Downloadable = exports.Downloadable = function Downloadable(url) +{ + this.url = url; +} +Downloadable.prototype = +{ + /** + * URL that has to be requested for the object. + * @type String + */ + url: null, + + /** + * URL that the download was redirected to if any. + * @type String + */ + redirectURL: null, + + /** + * Time of last download error or 0 if the last download was successful. + * @type Integer + */ + lastError: 0, + + /** + * Time of last check whether the object needs downloading. + * @type Integer + */ + lastCheck: 0, + + /** + * Object version corresponding to the last successful download. + * @type Integer + */ + lastVersion: 0, + + /** + * Soft expiration interval, will increase if no checks are performed for a + * while. + * @type Integer + */ + softExpiration: 0, + + /** + * Hard expiration interval, this is fixed. + * @type Integer + */ + hardExpiration: 0, +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/elemHide.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/elemHide.js new file mode 100644 index 0000000..df17a0f --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/elemHide.js @@ -0,0 +1,419 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Element hiding implementation. + */ + +Cu.import("resource://gre/modules/Services.jsm"); + +let {Utils} = require("utils"); +let {IO} = require("io"); +let {Prefs} = require("prefs"); +let {ElemHideException} = require("filterClasses"); +let {FilterNotifier} = require("filterNotifier"); +let {AboutHandler} = require("elemHideHitRegistration"); +let {TimeLine} = require("timeline"); + +/** + * Lookup table, filters by their associated key + * @type Object + */ +let filterByKey = {__proto__: null}; + +/** + * Lookup table, keys of the filters by filter text + * @type Object + */ +let keyByFilter = {__proto__: null}; + +/** + * Lookup table, keys are known element hiding exceptions + * @type Object + */ +let knownExceptions = {__proto__: null}; + +/** + * Lookup table, lists of element hiding exceptions by selector + * @type Object + */ +let exceptions = {__proto__: null}; + +/** + * Currently applied stylesheet URL + * @type nsIURI + */ +let styleURL = null; + +/** + * Element hiding component + * @class + */ +let ElemHide = exports.ElemHide = +{ + /** + * Indicates whether filters have been added or removed since the last apply() call. + * @type Boolean + */ + isDirty: false, + + /** + * Inidicates whether the element hiding stylesheet is currently applied. + * @type Boolean + */ + applied: false, + + /** + * Called on module startup. + */ + init: function() + { + TimeLine.enter("Entered ElemHide.init()"); + Prefs.addListener(function(name) + { + if (name == "enabled") + ElemHide.apply(); + }); + onShutdown.add(function() + { + ElemHide.unapply(); + }); + + TimeLine.log("done adding prefs listener"); + + let styleFile = IO.resolveFilePath(Prefs.data_directory); + styleFile.append("elemhide.css"); + styleURL = Services.io.newFileURI(styleFile).QueryInterface(Ci.nsIFileURL); + TimeLine.log("done determining stylesheet URL"); + + TimeLine.leave("ElemHide.init() done"); + }, + + /** + * Removes all known filters + */ + clear: function() + { + filterByKey = {__proto__: null}; + keyByFilter = {__proto__: null}; + knownExceptions = {__proto__: null}; + exceptions = {__proto__: null}; + ElemHide.isDirty = false; + ElemHide.unapply(); + }, + + /** + * Add a new element hiding filter + * @param {ElemHideFilter} filter + */ + add: function(filter) + { + if (filter instanceof ElemHideException) + { + if (filter.text in knownExceptions) + return; + + let selector = filter.selector; + if (!(selector in exceptions)) + exceptions[selector] = []; + exceptions[selector].push(filter); + knownExceptions[filter.text] = true; + } + else + { + if (filter.text in keyByFilter) + return; + + let key; + do { + key = Math.random().toFixed(15).substr(5); + } while (key in filterByKey); + + filterByKey[key] = filter; + keyByFilter[filter.text] = key; + ElemHide.isDirty = true; + } + }, + + /** + * Removes an element hiding filter + * @param {ElemHideFilter} filter + */ + remove: function(filter) + { + if (filter instanceof ElemHideException) + { + if (!(filter.text in knownExceptions)) + return; + + let list = exceptions[filter.selector]; + let index = list.indexOf(filter); + if (index >= 0) + list.splice(index, 1); + delete knownExceptions[filter.text]; + } + else + { + if (!(filter.text in keyByFilter)) + return; + + let key = keyByFilter[filter.text]; + delete filterByKey[key]; + delete keyByFilter[filter.text]; + ElemHide.isDirty = true; + } + }, + + /** + * Checks whether an exception rule is registered for a filter on a particular + * domain. + */ + getException: function(/**Filter*/ filter, /**String*/ docDomain) /**ElemHideException*/ + { + let selector = filter.selector; + if (!(filter.selector in exceptions)) + return null; + + let list = exceptions[filter.selector]; + for (let i = list.length - 1; i >= 0; i--) + if (list[i].isActiveOnDomain(docDomain)) + return list[i]; + + return null; + }, + + /** + * Will be set to true if apply() is running (reentrance protection). + * @type Boolean + */ + _applying: false, + + /** + * Will be set to true if an apply() call arrives while apply() is already + * running (delayed execution). + * @type Boolean + */ + _needsApply: false, + + /** + * Generates stylesheet URL and applies it globally + */ + apply: function() + { + if (this._applying) + { + this._needsApply = true; + return; + } + + TimeLine.enter("Entered ElemHide.apply()"); + + if (!ElemHide.isDirty || !Prefs.enabled) + { + // Nothing changed, looks like we merely got enabled/disabled + if (Prefs.enabled && !ElemHide.applied) + { + try + { + Utils.styleService.loadAndRegisterSheet(styleURL, Ci.nsIStyleSheetService.USER_SHEET); + ElemHide.applied = true; + } + catch (e) + { + Cu.reportError(e); + } + TimeLine.log("Applying existing stylesheet finished"); + } + else if (!Prefs.enabled && ElemHide.applied) + { + ElemHide.unapply(); + TimeLine.log("ElemHide.unapply() finished"); + } + + TimeLine.leave("ElemHide.apply() done (no file changes)"); + return; + } + + IO.writeToFile(styleURL.file, this._generateCSSContent(), function(e) + { + TimeLine.enter("ElemHide.apply() write callback"); + this._applying = false; + + // _generateCSSContent is throwing NS_ERROR_NOT_AVAILABLE to indicate that + // there are no filters. If that exception is passed through XPCOM we will + // see a proper exception here, otherwise a number. + let noFilters = (e == Cr.NS_ERROR_NOT_AVAILABLE || (e && e.result == Cr.NS_ERROR_NOT_AVAILABLE)); + if (noFilters) + { + e = null; + IO.removeFile(styleURL.file, function(e) {}); + } + else if (e) + Cu.reportError(e); + + if (this._needsApply) + { + this._needsApply = false; + this.apply(); + } + else if (!e) + { + ElemHide.isDirty = false; + + ElemHide.unapply(); + TimeLine.log("ElemHide.unapply() finished"); + + if (!noFilters) + { + try + { + Utils.styleService.loadAndRegisterSheet(styleURL, Ci.nsIStyleSheetService.USER_SHEET); + ElemHide.applied = true; + } + catch (e) + { + Cu.reportError(e); + } + TimeLine.log("Applying stylesheet finished"); + } + + FilterNotifier.triggerListeners("elemhideupdate"); + } + TimeLine.leave("ElemHide.apply() write callback done"); + }.bind(this), "ElemHideWrite"); + + this._applying = true; + + TimeLine.leave("ElemHide.apply() done", "ElemHideWrite"); + }, + + _generateCSSContent: function() + { + // Grouping selectors by domains + TimeLine.log("start grouping selectors"); + let domains = {__proto__: null}; + let hasFilters = false; + for (let key in filterByKey) + { + let filter = filterByKey[key]; + let domain = filter.selectorDomain || ""; + + let list; + if (domain in domains) + list = domains[domain]; + else + { + list = {__proto__: null}; + domains[domain] = list; + } + list[filter.selector] = key; + hasFilters = true; + } + TimeLine.log("done grouping selectors"); + + if (!hasFilters) + throw Cr.NS_ERROR_NOT_AVAILABLE; + + function escapeChar(match) + { + return "\\" + match.charCodeAt(0).toString(16) + " "; + } + + // Return CSS data + let cssTemplate = "-moz-binding: url(about:" + AboutHandler.aboutPrefix + "?%ID%#dummy) !important;"; + for (let domain in domains) + { + let rules = []; + let list = domains[domain]; + + if (domain) + yield ('@-moz-document domain("' + domain.split(",").join('"),domain("') + '"){').replace(/[^\x01-\x7F]/g, escapeChar); + else + { + // Only allow unqualified rules on a few protocols to prevent them from blocking chrome + yield '@-moz-document url-prefix("http://"),url-prefix("https://"),' + + 'url-prefix("mailbox://"),url-prefix("imap://"),' + + 'url-prefix("news://"),url-prefix("snews://"){'; + } + + for (let selector in list) + yield selector.replace(/[^\x01-\x7F]/g, escapeChar) + "{" + cssTemplate.replace("%ID%", list[selector]) + "}"; + yield '}'; + } + }, + + /** + * Unapplies current stylesheet URL + */ + unapply: function() + { + if (ElemHide.applied) + { + try + { + Utils.styleService.unregisterSheet(styleURL, Ci.nsIStyleSheetService.USER_SHEET); + } + catch (e) + { + Cu.reportError(e); + } + ElemHide.applied = false; + } + }, + + /** + * Retrieves the currently applied stylesheet URL + * @type String + */ + get styleURL() + { + return ElemHide.applied ? styleURL.spec : null; + }, + + /** + * Retrieves an element hiding filter by the corresponding protocol key + */ + getFilterByKey: function(/**String*/ key) /**Filter*/ + { + return (key in filterByKey ? filterByKey[key] : null); + }, + + /** + * Returns a list of all selectors active on a particular domain (currently + * used only in Chrome, Opera and Safari). + */ + getSelectorsForDomain: function(/**String*/ domain, /**Boolean*/ specificOnly) + { + let result = []; + for (let key in filterByKey) + { + let filter = filterByKey[key]; + + // it is important to always access filter.domains + // here, even if it isn't used, in order to + // workaround WebKit bug 132872, also see #419 + let domains = filter.domains; + + if (specificOnly && (!domains || domains[""])) + continue; + + if (filter.isActiveOnDomain(domain) && !this.getException(filter, domain)) + result.push(filter.selector); + } + return result; + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/elemHideHitRegistration.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/elemHideHitRegistration.js new file mode 100644 index 0000000..a05f6df --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/elemHideHitRegistration.js @@ -0,0 +1,160 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Hit counts for element hiding. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +let {Utils} = require("utils"); + +/** + * about: URL module used to count hits. + * @class + */ +let AboutHandler = exports.AboutHandler = +{ + classID: Components.ID("{55fb7be0-1dd2-11b2-98e6-9e97caf8ba67}"), + classDescription: "Element hiding hit registration protocol handler", + aboutPrefix: "abp-elemhidehit", + + /** + * Registers handler on startup. + */ + init: function() + { + let registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); + registrar.registerFactory(this.classID, this.classDescription, + "@mozilla.org/network/protocol/about;1?what=" + this.aboutPrefix, this); + onShutdown.add(function() + { + registrar.unregisterFactory(this.classID, this); + }.bind(this)); + }, + + // + // Factory implementation + // + + createInstance: function(outer, iid) + { + if (outer != null) + throw Cr.NS_ERROR_NO_AGGREGATION; + + return this.QueryInterface(iid); + }, + + // + // About module implementation + // + + getURIFlags: function(uri) + { + return ("HIDE_FROM_ABOUTABOUT" in Ci.nsIAboutModule ? Ci.nsIAboutModule.HIDE_FROM_ABOUTABOUT : 0); + }, + + newChannel: function(uri) + { + let match = /\?(\d+)/.exec(uri.path) + if (!match) + throw Cr.NS_ERROR_FAILURE; + + return new HitRegistrationChannel(uri, match[1]); + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsIFactory, Ci.nsIAboutModule]) +}; +AboutHandler.init(); + +/** + * Channel returning data for element hiding hits. + * @constructor + */ +function HitRegistrationChannel(uri, key) +{ + this.key = key; + this.URI = this.originalURI = uri; +} +HitRegistrationChannel.prototype = { + key: null, + URI: null, + originalURI: null, + contentCharset: "utf-8", + contentLength: 0, + contentType: "text/xml", + owner: Utils.systemPrincipal, + securityInfo: null, + notificationCallbacks: null, + loadFlags: 0, + loadGroup: null, + name: null, + status: Cr.NS_OK, + + asyncOpen: function(listener, context) + { + let stream = this.open(); + Utils.runAsync(function() + { + try { + listener.onStartRequest(this, context); + } catch(e) {} + try { + listener.onDataAvailable(this, context, stream, 0, stream.available()); + } catch(e) {} + try { + listener.onStopRequest(this, context, Cr.NS_OK); + } catch(e) {} + }, this); + }, + + open: function() + { + let {Policy} = require("contentPolicy"); + let {ElemHide} = require("elemHide"); + let data = "<bindings xmlns='http://www.mozilla.org/xbl'><binding id='dummy'/></bindings>"; + let filter = ElemHide.getFilterByKey(this.key); + if (filter) + { + let wnd = Utils.getRequestWindow(this); + if (wnd && wnd.document && !Policy.processNode(wnd, wnd.document, Policy.type.ELEMHIDE, filter)) + data = "<bindings xmlns='http://www.mozilla.org/xbl'/>"; + } + + let stream = Cc["@mozilla.org/io/string-input-stream;1"].createInstance(Ci.nsIStringInputStream); + stream.setData(data, data.length); + return stream; + }, + isPending: function() + { + return false; + }, + cancel: function() + { + throw Cr.NS_ERROR_NOT_IMPLEMENTED; + }, + suspend: function() + { + throw Cr.NS_ERROR_NOT_IMPLEMENTED; + }, + resume: function() + { + throw Cr.NS_ERROR_NOT_IMPLEMENTED; + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsIChannel, Ci.nsIRequest]) +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterClasses.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterClasses.js new file mode 100644 index 0000000..cb3a5b1 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterClasses.js @@ -0,0 +1,906 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Definition of Filter class and its subclasses. + */ + +let {FilterNotifier} = require("filterNotifier"); + +/** + * Abstract base class for filters + * + * @param {String} text string representation of the filter + * @constructor + */ +function Filter(text) +{ + this.text = text; + this.subscriptions = []; +} +exports.Filter = Filter; + +Filter.prototype = +{ + /** + * String representation of the filter + * @type String + */ + text: null, + + /** + * Filter subscriptions the filter belongs to + * @type Array of Subscription + */ + subscriptions: null, + + /** + * Serializes the filter to an array of strings for writing out on the disk. + * @param {Array of String} buffer buffer to push the serialization results into + */ + serialize: function(buffer) + { + buffer.push("[Filter]"); + buffer.push("text=" + this.text); + }, + + toString: function() + { + return this.text; + } +}; + +/** + * Cache for known filters, maps string representation to filter objects. + * @type Object + */ +Filter.knownFilters = {__proto__: null}; + +/** + * Regular expression that element hiding filters should match + * @type RegExp + */ +Filter.elemhideRegExp = /^([^\/\*\|\@"!]*?)#(\@)?(?:([\w\-]+|\*)((?:\([\w\-]+(?:[$^*]?=[^\(\)"]*)?\))*)|#([^{}]+))$/; +/** + * Regular expression that RegExp filters specified as RegExps should match + * @type RegExp + */ +Filter.regexpRegExp = /^(@@)?\/.*\/(?:\$~?[\w\-]+(?:=[^,\s]+)?(?:,~?[\w\-]+(?:=[^,\s]+)?)*)?$/; +/** + * Regular expression that options on a RegExp filter should match + * @type RegExp + */ +Filter.optionsRegExp = /\$(~?[\w\-]+(?:=[^,\s]+)?(?:,~?[\w\-]+(?:=[^,\s]+)?)*)$/; + +/** + * Creates a filter of correct type from its text representation - does the basic parsing and + * calls the right constructor then. + * + * @param {String} text as in Filter() + * @return {Filter} + */ +Filter.fromText = function(text) +{ + if (text in Filter.knownFilters) + return Filter.knownFilters[text]; + + let ret; + let match = (text.indexOf("#") >= 0 ? Filter.elemhideRegExp.exec(text) : null); + if (match) + ret = ElemHideBase.fromText(text, match[1], match[2], match[3], match[4], match[5]); + else if (text[0] == "!") + ret = new CommentFilter(text); + else + ret = RegExpFilter.fromText(text); + + Filter.knownFilters[ret.text] = ret; + return ret; +} + +/** + * Deserializes a filter + * + * @param {Object} obj map of serialized properties and their values + * @return {Filter} filter or null if the filter couldn't be created + */ +Filter.fromObject = function(obj) +{ + let ret = Filter.fromText(obj.text); + if (ret instanceof ActiveFilter) + { + if ("disabled" in obj) + ret._disabled = (obj.disabled == "true"); + if ("hitCount" in obj) + ret._hitCount = parseInt(obj.hitCount) || 0; + if ("lastHit" in obj) + ret._lastHit = parseInt(obj.lastHit) || 0; + } + return ret; +} + +/** + * Removes unnecessary whitespaces from filter text, will only return null if + * the input parameter is null. + */ +Filter.normalize = function(/**String*/ text) /**String*/ +{ + if (!text) + return text; + + // Remove line breaks and such + text = text.replace(/[^\S ]/g, ""); + + if (/^\s*!/.test(text)) + { + // Don't remove spaces inside comments + return text.replace(/^\s+/, "").replace(/\s+$/, ""); + } + else if (Filter.elemhideRegExp.test(text)) + { + // Special treatment for element hiding filters, right side is allowed to contain spaces + let [, domain, separator, selector] = /^(.*?)(#\@?#?)(.*)$/.exec(text); + return domain.replace(/\s/g, "") + separator + selector.replace(/^\s+/, "").replace(/\s+$/, ""); + } + else + return text.replace(/\s/g, ""); +} + +/** + * Class for invalid filters + * @param {String} text see Filter() + * @param {String} reason Reason why this filter is invalid + * @constructor + * @augments Filter + */ +function InvalidFilter(text, reason) +{ + Filter.call(this, text); + + this.reason = reason; +} +exports.InvalidFilter = InvalidFilter; + +InvalidFilter.prototype = +{ + __proto__: Filter.prototype, + + /** + * Reason why this filter is invalid + * @type String + */ + reason: null, + + /** + * See Filter.serialize() + */ + serialize: function(buffer) {} +}; + +/** + * Class for comments + * @param {String} text see Filter() + * @constructor + * @augments Filter + */ +function CommentFilter(text) +{ + Filter.call(this, text); +} +exports.CommentFilter = CommentFilter; + +CommentFilter.prototype = +{ + __proto__: Filter.prototype, + + /** + * See Filter.serialize() + */ + serialize: function(buffer) {} +}; + +/** + * Abstract base class for filters that can get hits + * @param {String} text see Filter() + * @param {String} domains (optional) Domains that the filter is restricted to separated by domainSeparator e.g. "foo.com|bar.com|~baz.com" + * @constructor + * @augments Filter + */ +function ActiveFilter(text, domains) +{ + Filter.call(this, text); + + this.domainSource = domains; +} +exports.ActiveFilter = ActiveFilter; + +ActiveFilter.prototype = +{ + __proto__: Filter.prototype, + + _disabled: false, + _hitCount: 0, + _lastHit: 0, + + /** + * Defines whether the filter is disabled + * @type Boolean + */ + get disabled() + { + return this._disabled; + }, + set disabled(value) + { + if (value != this._disabled) + { + let oldValue = this._disabled; + this._disabled = value; + FilterNotifier.triggerListeners("filter.disabled", this, value, oldValue); + } + return this._disabled; + }, + + /** + * Number of hits on the filter since the last reset + * @type Number + */ + get hitCount() + { + return this._hitCount; + }, + set hitCount(value) + { + if (value != this._hitCount) + { + let oldValue = this._hitCount; + this._hitCount = value; + FilterNotifier.triggerListeners("filter.hitCount", this, value, oldValue); + } + return this._hitCount; + }, + + /** + * Last time the filter had a hit (in milliseconds since the beginning of the epoch) + * @type Number + */ + get lastHit() + { + return this._lastHit; + }, + set lastHit(value) + { + if (value != this._lastHit) + { + let oldValue = this._lastHit; + this._lastHit = value; + FilterNotifier.triggerListeners("filter.lastHit", this, value, oldValue); + } + return this._lastHit; + }, + + /** + * String that the domains property should be generated from + * @type String + */ + domainSource: null, + + /** + * Separator character used in domainSource property, must be overridden by subclasses + * @type String + */ + domainSeparator: null, + + /** + * Determines whether the trailing dot in domain names isn't important and + * should be ignored, must be overridden by subclasses. + * @type Boolean + */ + ignoreTrailingDot: true, + + /** + * Determines whether domainSource is already upper-case, + * can be overridden by subclasses. + * @type Boolean + */ + domainSourceIsUpperCase: false, + + /** + * Map containing domains that this filter should match on/not match on or null if the filter should match on all domains + * @type Object + */ + get domains() + { + let domains = null; + + if (this.domainSource) + { + let source = this.domainSource; + if (!this.domainSourceIsUpperCase) { + // RegExpFilter already have uppercase domains + source = source.toUpperCase(); + } + let list = source.split(this.domainSeparator); + if (list.length == 1 && list[0][0] != "~") + { + // Fast track for the common one-domain scenario + domains = {__proto__: null, "": false}; + if (this.ignoreTrailingDot) + list[0] = list[0].replace(/\.+$/, ""); + domains[list[0]] = true; + } + else + { + let hasIncludes = false; + for (let i = 0; i < list.length; i++) + { + let domain = list[i]; + if (this.ignoreTrailingDot) + domain = domain.replace(/\.+$/, ""); + if (domain == "") + continue; + + let include; + if (domain[0] == "~") + { + include = false; + domain = domain.substr(1); + } + else + { + include = true; + hasIncludes = true; + } + + if (!domains) + domains = {__proto__: null}; + + domains[domain] = include; + } + domains[""] = !hasIncludes; + } + + this.domainSource = null; + } + + Object.defineProperty(this, "domains", {value: domains, enumerable: true}); + return this.domains; + }, + + /** + * Checks whether this filter is active on a domain. + */ + isActiveOnDomain: function(/**String*/ docDomain) /**Boolean*/ + { + // If no domains are set the rule matches everywhere + if (!this.domains) + return true; + + // If the document has no host name, match only if the filter isn't restricted to specific domains + if (!docDomain) + return this.domains[""]; + + if (this.ignoreTrailingDot) + docDomain = docDomain.replace(/\.+$/, ""); + docDomain = docDomain.toUpperCase(); + + while (true) + { + if (docDomain in this.domains) + return this.domains[docDomain]; + + let nextDot = docDomain.indexOf("."); + if (nextDot < 0) + break; + docDomain = docDomain.substr(nextDot + 1); + } + return this.domains[""]; + }, + + /** + * Checks whether this filter is active only on a domain and its subdomains. + */ + isActiveOnlyOnDomain: function(/**String*/ docDomain) /**Boolean*/ + { + if (!docDomain || !this.domains || this.domains[""]) + return false; + + if (this.ignoreTrailingDot) + docDomain = docDomain.replace(/\.+$/, ""); + docDomain = docDomain.toUpperCase(); + + for (let domain in this.domains) + if (this.domains[domain] && domain != docDomain && (domain.length <= docDomain.length || domain.indexOf("." + docDomain) != domain.length - docDomain.length - 1)) + return false; + + return true; + }, + + /** + * See Filter.serialize() + */ + serialize: function(buffer) + { + if (this._disabled || this._hitCount || this._lastHit) + { + Filter.prototype.serialize.call(this, buffer); + if (this._disabled) + buffer.push("disabled=true"); + if (this._hitCount) + buffer.push("hitCount=" + this._hitCount); + if (this._lastHit) + buffer.push("lastHit=" + this._lastHit); + } + } +}; + +/** + * Abstract base class for RegExp-based filters + * @param {String} text see Filter() + * @param {String} regexpSource filter part that the regular expression should be build from + * @param {Number} contentType (optional) Content types the filter applies to, combination of values from RegExpFilter.typeMap + * @param {Boolean} matchCase (optional) Defines whether the filter should distinguish between lower and upper case letters + * @param {String} domains (optional) Domains that the filter is restricted to, e.g. "foo.com|bar.com|~baz.com" + * @param {Boolean} thirdParty (optional) Defines whether the filter should apply to third-party or first-party content only + * @constructor + * @augments ActiveFilter + */ +function RegExpFilter(text, regexpSource, contentType, matchCase, domains, thirdParty) +{ + ActiveFilter.call(this, text, domains); + + if (contentType != null) + this.contentType = contentType; + if (matchCase) + this.matchCase = matchCase; + if (thirdParty != null) + this.thirdParty = thirdParty; + + if (regexpSource.length >= 2 && regexpSource[0] == "/" && regexpSource[regexpSource.length - 1] == "/") + { + // The filter is a regular expression - convert it immediately to catch syntax errors + let regexp = new RegExp(regexpSource.substr(1, regexpSource.length - 2), this.matchCase ? "" : "i"); + this.__defineGetter__("regexp", () => regexp); + } + else + { + // No need to convert this filter to regular expression yet, do it on demand + this.regexpSource = regexpSource; + } +} +exports.RegExpFilter = RegExpFilter; + +RegExpFilter.prototype = +{ + __proto__: ActiveFilter.prototype, + + /** + * @see ActiveFilter.domainSourceIsUpperCase + */ + domainSourceIsUpperCase: true, + + /** + * Number of filters contained, will always be 1 (required to optimize Matcher). + * @type Integer + */ + length: 1, + + /** + * @see ActiveFilter.domainSeparator + */ + domainSeparator: "|", + + /** + * Expression from which a regular expression should be generated - for delayed creation of the regexp property + * @type String + */ + regexpSource: null, + /** + * Regular expression to be used when testing against this filter + * @type RegExp + */ + get regexp() + { + // Remove multiple wildcards + let source = this.regexpSource + .replace(/\*+/g, "*") // remove multiple wildcards + .replace(/\^\|$/, "^") // remove anchors following separator placeholder + .replace(/\W/g, "\\$&") // escape special symbols + .replace(/\\\*/g, ".*") // replace wildcards by .* + // process separator placeholders (all ANSI characters but alphanumeric characters and _%.-) + .replace(/\\\^/g, "(?:[\\x00-\\x24\\x26-\\x2C\\x2F\\x3A-\\x40\\x5B-\\x5E\\x60\\x7B-\\x7F]|$)") + .replace(/^\\\|\\\|/, "^[\\w\\-]+:\\/+(?!\\/)(?:[^\\/]+\\.)?") // process extended anchor at expression start + .replace(/^\\\|/, "^") // process anchor at expression start + .replace(/\\\|$/, "$") // process anchor at expression end + .replace(/^(\.\*)/, "") // remove leading wildcards + .replace(/(\.\*)$/, ""); // remove trailing wildcards + + let regexp = new RegExp(source, this.matchCase ? "" : "i"); + + delete this.regexpSource; + this.__defineGetter__("regexp", () => regexp); + return this.regexp; + }, + /** + * Content types the filter applies to, combination of values from RegExpFilter.typeMap + * @type Number + */ + contentType: 0x7FFFFFFF, + /** + * Defines whether the filter should distinguish between lower and upper case letters + * @type Boolean + */ + matchCase: false, + /** + * Defines whether the filter should apply to third-party or first-party content only. Can be null (apply to all content). + * @type Boolean + */ + thirdParty: null, + + /** + * Tests whether the URL matches this filter + * @param {String} location URL to be tested + * @param {String} contentType content type identifier of the URL + * @param {String} docDomain domain name of the document that loads the URL + * @param {Boolean} thirdParty should be true if the URL is a third-party request + * @return {Boolean} true in case of a match + */ + matches: function(location, contentType, docDomain, thirdParty, privatenode) + { + + if(this.subscriptions[0]) + if (this.subscriptions[0].privateMode) + if (privatenode==false) + return false; + + if (this.regexp.test(location) && + (RegExpFilter.typeMap[contentType] & this.contentType) != 0 && + (this.thirdParty == null || this.thirdParty == thirdParty) && + this.isActiveOnDomain(docDomain)) + { + return true; + } + + return false; + } +}; + +RegExpFilter.prototype.__defineGetter__("0", function() +{ + return this; +}); + +/** + * Creates a RegExp filter from its text representation + * @param {String} text same as in Filter() + */ +RegExpFilter.fromText = function(text) +{ + let blocking = true; + let origText = text; + if (text.indexOf("@@") == 0) + { + blocking = false; + text = text.substr(2); + } + + let contentType = null; + let matchCase = null; + let domains = null; + let siteKeys = null; + let thirdParty = null; + let collapse = null; + let options; + let match = (text.indexOf("$") >= 0 ? Filter.optionsRegExp.exec(text) : null); + if (match) + { + options = match[1].toUpperCase().split(","); + text = match.input.substr(0, match.index); + for (let option of options) + { + let value = null; + let separatorIndex = option.indexOf("="); + if (separatorIndex >= 0) + { + value = option.substr(separatorIndex + 1); + option = option.substr(0, separatorIndex); + } + option = option.replace(/-/, "_"); + if (option in RegExpFilter.typeMap) + { + if (contentType == null) + contentType = 0; + contentType |= RegExpFilter.typeMap[option]; + } + else if (option[0] == "~" && option.substr(1) in RegExpFilter.typeMap) + { + if (contentType == null) + contentType = RegExpFilter.prototype.contentType; + contentType &= ~RegExpFilter.typeMap[option.substr(1)]; + } + else if (option == "MATCH_CASE") + matchCase = true; + else if (option == "~MATCH_CASE") + matchCase = false; + else if (option == "DOMAIN" && typeof value != "undefined") + domains = value; + else if (option == "THIRD_PARTY") + thirdParty = true; + else if (option == "~THIRD_PARTY") + thirdParty = false; + else if (option == "COLLAPSE") + collapse = true; + else if (option == "~COLLAPSE") + collapse = false; + else if (option == "SITEKEY" && typeof value != "undefined") + siteKeys = value.split(/\|/); + else + return new InvalidFilter(origText, "Unknown option " + option.toLowerCase()); + } + } + + if (!blocking && (contentType == null || (contentType & RegExpFilter.typeMap.DOCUMENT)) && + (!options || options.indexOf("DOCUMENT") < 0) && !/^\|?[\w\-]+:/.test(text)) + { + // Exception filters shouldn't apply to pages by default unless they start with a protocol name + if (contentType == null) + contentType = RegExpFilter.prototype.contentType; + contentType &= ~RegExpFilter.typeMap.DOCUMENT; + } + if (!blocking && siteKeys) + contentType = RegExpFilter.typeMap.DOCUMENT; + + try + { + if (blocking) + return new BlockingFilter(origText, text, contentType, matchCase, domains, thirdParty, collapse); + else + return new WhitelistFilter(origText, text, contentType, matchCase, domains, thirdParty, siteKeys); + } + catch (e) + { + return new InvalidFilter(origText, e); + } +} + +/** + * Maps type strings like "SCRIPT" or "OBJECT" to bit masks + */ +RegExpFilter.typeMap = { + OTHER: 1, + SCRIPT: 2, + IMAGE: 4, + STYLESHEET: 8, + OBJECT: 16, + SUBDOCUMENT: 32, + DOCUMENT: 64, + XBL: 1, + PING: 1, + XMLHTTPREQUEST: 2048, + OBJECT_SUBREQUEST: 4096, + DTD: 1, + MEDIA: 16384, + FONT: 32768, + + BACKGROUND: 4, // Backwards compat, same as IMAGE + + POPUP: 0x10000000, + ELEMHIDE: 0x40000000 +}; + +// ELEMHIDE, POPUP option shouldn't be there by default +RegExpFilter.prototype.contentType &= ~(RegExpFilter.typeMap.ELEMHIDE | RegExpFilter.typeMap.POPUP); + +/** + * Class for blocking filters + * @param {String} text see Filter() + * @param {String} regexpSource see RegExpFilter() + * @param {Number} contentType see RegExpFilter() + * @param {Boolean} matchCase see RegExpFilter() + * @param {String} domains see RegExpFilter() + * @param {Boolean} thirdParty see RegExpFilter() + * @param {Boolean} collapse defines whether the filter should collapse blocked content, can be null + * @constructor + * @augments RegExpFilter + */ +function BlockingFilter(text, regexpSource, contentType, matchCase, domains, thirdParty, collapse) +{ + RegExpFilter.call(this, text, regexpSource, contentType, matchCase, domains, thirdParty); + + this.collapse = collapse; +} +exports.BlockingFilter = BlockingFilter; + +BlockingFilter.prototype = +{ + __proto__: RegExpFilter.prototype, + + /** + * Defines whether the filter should collapse blocked content. Can be null (use the global preference). + * @type Boolean + */ + collapse: null +}; + +/** + * Class for whitelist filters + * @param {String} text see Filter() + * @param {String} regexpSource see RegExpFilter() + * @param {Number} contentType see RegExpFilter() + * @param {Boolean} matchCase see RegExpFilter() + * @param {String} domains see RegExpFilter() + * @param {Boolean} thirdParty see RegExpFilter() + * @param {String[]} siteKeys public keys of websites that this filter should apply to + * @constructor + * @augments RegExpFilter + */ +function WhitelistFilter(text, regexpSource, contentType, matchCase, domains, thirdParty, siteKeys) +{ + RegExpFilter.call(this, text, regexpSource, contentType, matchCase, domains, thirdParty); + + if (siteKeys != null) + this.siteKeys = siteKeys; +} +exports.WhitelistFilter = WhitelistFilter; + +WhitelistFilter.prototype = +{ + __proto__: RegExpFilter.prototype, + + /** + * List of public keys of websites that this filter should apply to + * @type String[] + */ + siteKeys: null +} + +/** + * Base class for element hiding filters + * @param {String} text see Filter() + * @param {String} domains (optional) Host names or domains the filter should be restricted to + * @param {String} selector CSS selector for the HTML elements that should be hidden + * @constructor + * @augments ActiveFilter + */ +function ElemHideBase(text, domains, selector) +{ + ActiveFilter.call(this, text, domains || null); + + if (domains) + this.selectorDomain = domains.replace(/,~[^,]+/g, "").replace(/^~[^,]+,?/, "").toLowerCase(); + this.selector = selector; +} +exports.ElemHideBase = ElemHideBase; + +ElemHideBase.prototype = +{ + __proto__: ActiveFilter.prototype, + + /** + * @see ActiveFilter.domainSeparator + */ + domainSeparator: ",", + + /** + * @see ActiveFilter.ignoreTrailingDot + */ + ignoreTrailingDot: false, + + /** + * Host name or domain the filter should be restricted to (can be null for no restriction) + * @type String + */ + selectorDomain: null, + /** + * CSS selector for the HTML elements that should be hidden + * @type String + */ + selector: null +}; + +/** + * Creates an element hiding filter from a pre-parsed text representation + * + * @param {String} text same as in Filter() + * @param {String} domain domain part of the text representation (can be empty) + * @param {String} tagName tag name part (can be empty) + * @param {String} attrRules attribute matching rules (can be empty) + * @param {String} selector raw CSS selector (can be empty) + * @return {ElemHideFilter|ElemHideException|InvalidFilter} + */ +ElemHideBase.fromText = function(text, domain, isException, tagName, attrRules, selector) +{ + if (!selector) + { + if (tagName == "*") + tagName = ""; + + let id = null; + let additional = ""; + if (attrRules) { + attrRules = attrRules.match(/\([\w\-]+(?:[$^*]?=[^\(\)"]*)?\)/g); + for (let rule of attrRules) { + rule = rule.substr(1, rule.length - 2); + let separatorPos = rule.indexOf("="); + if (separatorPos > 0) { + rule = rule.replace(/=/, '="') + '"'; + additional += "[" + rule + "]"; + } + else { + if (id) + { + let {Utils} = require("utils"); + return new InvalidFilter(text, Utils.getString("filter_elemhide_duplicate_id")); + } + else + id = rule; + } + } + } + + if (id) + selector = tagName + "." + id + additional + "," + tagName + "#" + id + additional; + else if (tagName || additional) + selector = tagName + additional; + else + { + let {Utils} = require("utils"); + return new InvalidFilter(text, Utils.getString("filter_elemhide_nocriteria")); + } + } + if (isException) + return new ElemHideException(text, domain, selector); + else + return new ElemHideFilter(text, domain, selector); +} + +/** + * Class for element hiding filters + * @param {String} text see Filter() + * @param {String} domains see ElemHideBase() + * @param {String} selector see ElemHideBase() + * @constructor + * @augments ElemHideBase + */ +function ElemHideFilter(text, domains, selector) +{ + ElemHideBase.call(this, text, domains, selector); +} +exports.ElemHideFilter = ElemHideFilter; + +ElemHideFilter.prototype = +{ + __proto__: ElemHideBase.prototype +}; + +/** + * Class for element hiding exceptions + * @param {String} text see Filter() + * @param {String} domains see ElemHideBase() + * @param {String} selector see ElemHideBase() + * @constructor + * @augments ElemHideBase + */ +function ElemHideException(text, domains, selector) +{ + ElemHideBase.call(this, text, domains, selector); +} +exports.ElemHideException = ElemHideException; + +ElemHideException.prototype = +{ + __proto__: ElemHideBase.prototype +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterListener.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterListener.js new file mode 100644 index 0000000..1687a26 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterListener.js @@ -0,0 +1,282 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Component synchronizing filter storage with Matcher instances and ElemHide. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let {TimeLine} = require("timeline"); +let {FilterStorage} = require("filterStorage"); +let {FilterNotifier} = require("filterNotifier"); +let {ElemHide} = require("elemHide"); +let {defaultMatcher} = require("matcher"); +let {ActiveFilter, RegExpFilter, ElemHideBase} = require("filterClasses"); +let {Prefs} = require("prefs"); + +/** + * Value of the FilterListener.batchMode property. + * @type Boolean + */ +let batchMode = false; + +/** + * Increases on filter changes, filters will be saved if it exceeds 1. + * @type Integer + */ +let isDirty = 0; + +/** + * This object can be used to change properties of the filter change listeners. + * @class + */ +let FilterListener = +{ + /** + * Set to true when executing many changes, changes will only be fully applied after this variable is set to false again. + * @type Boolean + */ + get batchMode() + { + return batchMode; + }, + set batchMode(value) + { + batchMode = value; + flushElemHide(); + }, + + /** + * Increases "dirty factor" of the filters and calls FilterStorage.saveToDisk() + * if it becomes 1 or more. Save is executed delayed to prevent multiple + * subsequent calls. If the parameter is 0 it forces saving filters if any + * changes were recorded after the previous save. + */ + setDirty: function(/**Integer*/ factor) + { + if (factor == 0 && isDirty > 0) + isDirty = 1; + else + isDirty += factor; + if (isDirty >= 1) + FilterStorage.saveToDisk(); + } +}; + +/** + * Observer listening to history purge actions. + * @class + */ +let HistoryPurgeObserver = +{ + observe: function(subject, topic, data) + { + if (topic == "browser:purge-session-history" && Prefs.clearStatsOnHistoryPurge) + { + FilterStorage.resetHitCounts(); + FilterListener.setDirty(0); // Force saving to disk + + Prefs.recentReports = []; + } + }, + QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference, Ci.nsIObserver]) +}; + +/** + * Initializes filter listener on startup, registers the necessary hooks. + */ +function init() +{ + TimeLine.enter("Entered filter listener initialization()"); + + FilterNotifier.addListener(function(action, item, newValue, oldValue) + { + let match = /^(\w+)\.(.*)/.exec(action); + if (match && match[1] == "filter") + onFilterChange(match[2], item, newValue, oldValue); + else if (match && match[1] == "subscription") + onSubscriptionChange(match[2], item, newValue, oldValue); + else + onGenericChange(action, item); + }); + + if ("nsIStyleSheetService" in Ci) + ElemHide.init(); + else + flushElemHide = function() {}; // No global stylesheet in Chrome & Co. + FilterStorage.loadFromDisk(); + + TimeLine.log("done initializing data structures"); + + Services.obs.addObserver(HistoryPurgeObserver, "browser:purge-session-history", true); + onShutdown.add(function() + { + Services.obs.removeObserver(HistoryPurgeObserver, "browser:purge-session-history"); + }); + TimeLine.log("done adding observers"); + + TimeLine.leave("Filter listener initialization done"); +} +init(); + +/** + * Calls ElemHide.apply() if necessary. + */ +function flushElemHide() +{ + if (!batchMode && ElemHide.isDirty) + ElemHide.apply(); +} + +/** + * Notifies Matcher instances or ElemHide object about a new filter + * if necessary. + * @param {Filter} filter filter that has been added + */ +function addFilter(filter) +{ + if (!(filter instanceof ActiveFilter) || filter.disabled) + return; + + let hasEnabled = false; + for (let i = 0; i < filter.subscriptions.length; i++) + if (!filter.subscriptions[i].disabled) + hasEnabled = true; + if (!hasEnabled) + return; + + if (filter instanceof RegExpFilter) + defaultMatcher.add(filter); + else if (filter instanceof ElemHideBase) + ElemHide.add(filter); +} + +/** + * Notifies Matcher instances or ElemHide object about removal of a filter + * if necessary. + * @param {Filter} filter filter that has been removed + */ +function removeFilter(filter) +{ + if (!(filter instanceof ActiveFilter)) + return; + + if (!filter.disabled) + { + let hasEnabled = false; + for (let i = 0; i < filter.subscriptions.length; i++) + if (!filter.subscriptions[i].disabled) + hasEnabled = true; + if (hasEnabled) + return; + } + + if (filter instanceof RegExpFilter) + defaultMatcher.remove(filter); + else if (filter instanceof ElemHideBase) + ElemHide.remove(filter); +} + +/** + * Subscription change listener + */ +function onSubscriptionChange(action, subscription, newValue, oldValue) +{ + FilterListener.setDirty(1); + + if (action != "added" && action != "removed" && action != "disabled" && action != "updated") + return; + + if (action != "removed" && !(subscription.url in FilterStorage.knownSubscriptions)) + { + // Ignore updates for subscriptions not in the list + return; + } + + if ((action == "added" || action == "removed" || action == "updated") && subscription.disabled) + { + // Ignore adding/removing/updating of disabled subscriptions + return; + } + + if (action == "added" || action == "removed" || action == "disabled") + { + let method = (action == "added" || (action == "disabled" && newValue == false) ? addFilter : removeFilter); + if (subscription.filters) + subscription.filters.forEach(method); + } + else if (action == "updated") + { + subscription.oldFilters.forEach(removeFilter); + subscription.filters.forEach(addFilter); + } + + flushElemHide(); +} + +/** + * Filter change listener + */ +function onFilterChange(action, filter, newValue, oldValue) +{ + if (action == "hitCount" && newValue == 0) + { + // Filter hits are being reset, make sure these changes are saved. + FilterListener.setDirty(0); + } + else if (action == "hitCount" || action == "lastHit") + FilterListener.setDirty(0.002); + else + FilterListener.setDirty(1); + + if (action != "added" && action != "removed" && action != "disabled") + return; + + if ((action == "added" || action == "removed") && filter.disabled) + { + // Ignore adding/removing of disabled filters + return; + } + + if (action == "added" || (action == "disabled" && newValue == false)) + addFilter(filter); + else + removeFilter(filter); + flushElemHide(); +} + +/** + * Generic notification listener + */ +function onGenericChange(action) +{ + if (action == "load") + { + isDirty = 0; + + defaultMatcher.clear(); + ElemHide.clear(); + for (let subscription of FilterStorage.subscriptions) + if (!subscription.disabled) + subscription.filters.forEach(addFilter); + flushElemHide(); + } + else if (action == "save") + isDirty = 0; +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterNotifier.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterNotifier.js new file mode 100644 index 0000000..010081e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterNotifier.js @@ -0,0 +1,73 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview This component manages listeners and calls them to distributes + * messages about filter changes. + */ + +/** + * List of registered listeners + * @type Array of function(action, item, newValue, oldValue) + */ +let listeners = []; + +/** + * This class allows registering and triggering listeners for filter events. + * @class + */ +let FilterNotifier = exports.FilterNotifier = +{ + /** + * Adds a listener + */ + addListener: function(/**function(action, item, newValue, oldValue)*/ listener) + { + if (listeners.indexOf(listener) >= 0) + return; + + listeners.push(listener); + }, + + /** + * Removes a listener that was previosly added via addListener + */ + removeListener: function(/**function(action, item, newValue, oldValue)*/ listener) + { + let index = listeners.indexOf(listener); + if (index >= 0) + listeners.splice(index, 1); + }, + + /** + * Notifies listeners about an event + * @param {String} action event code ("load", "save", "elemhideupdate", + * "subscription.added", "subscription.removed", + * "subscription.disabled", "subscription.title", + * "subscription.lastDownload", "subscription.downloadStatus", + * "subscription.homepage", "subscription.updated", + * "filter.added", "filter.removed", "filter.moved", + * "filter.disabled", "filter.hitCount", "filter.lastHit") + * @param {Subscription|Filter} item item that the change applies to + */ + triggerListeners: function(action, item, param1, param2, param3) + { + let list = listeners.slice(); + for (let listener of list) + listener(action, item, param1, param2, param3); + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterStorage.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterStorage.js new file mode 100644 index 0000000..546f788 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/filterStorage.js @@ -0,0 +1,897 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview FilterStorage class responsible for managing user's subscriptions and filters. + */ + +Cu.import("resource://gre/modules/Services.jsm"); +Cu.import("resource://gre/modules/FileUtils.jsm"); +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +let {IO} = require("io"); +let {Prefs} = require("prefs"); +let {Filter, ActiveFilter} = require("filterClasses"); +let {Subscription, SpecialSubscription, ExternalSubscription} = require("subscriptionClasses"); +let {FilterNotifier} = require("filterNotifier"); +let {Utils} = require("utils"); +let {TimeLine} = require("timeline"); + +/** + * Version number of the filter storage file format. + * @type Integer + */ +let formatVersion = 4; + +/** + * This class reads user's filters from disk, manages them in memory and writes them back. + * @class + */ +let FilterStorage = exports.FilterStorage = +{ + /** + * Version number of the patterns.ini format used. + * @type Integer + */ + get formatVersion() + { + return formatVersion; + }, + + /** + * File that the filter list has been loaded from and should be saved to + * @type nsIFile + */ + get sourceFile() + { + let file = null; + if (Prefs.patternsfile) + { + // Override in place, use it instead of placing the file in the regular data dir + file = IO.resolveFilePath(Prefs.patternsfile); + } + if (!file) + { + // Place the file in the data dir + file = IO.resolveFilePath(Prefs.data_directory); + if (file) + file.append("patterns.ini"); + } + if (!file) + { + // Data directory pref misconfigured? Try the default value + try + { + file = IO.resolveFilePath(Services.prefs.getDefaultBranch("extensions.adblockplus.").getCharPref("data_directory")); + if (file) + file.append("patterns.ini"); + } catch(e) {} + } + + if (!file) + Cu.reportError("Adblock Plus: Failed to resolve filter file location from extensions.adblockplus.patternsfile preference"); + + this.__defineGetter__("sourceFile", () => file); + return this.sourceFile; + }, + + /** + * Will be set to true if no patterns.ini file exists. + * @type Boolean + */ + firstRun: false, + + /** + * Map of properties listed in the filter storage file before the sections + * start. Right now this should be only the format version. + */ + fileProperties: {__proto__: null}, + + /** + * List of filter subscriptions containing all filters + * @type Array of Subscription + */ + subscriptions: [], + + /** + * Map of subscriptions already on the list, by their URL/identifier + * @type Object + */ + knownSubscriptions: {__proto__: null}, + + /** + * Finds the filter group that a filter should be added to by default. Will + * return null if this group doesn't exist yet. + */ + getGroupForFilter: function(/**Filter*/ filter) /**SpecialSubscription*/ + { + let generalSubscription = null; + for (let subscription of FilterStorage.subscriptions) + { + if (subscription instanceof SpecialSubscription && !subscription.disabled) + { + // Always prefer specialized subscriptions + if (subscription.isDefaultFor(filter)) + return subscription; + + // If this is a general subscription - store it as fallback + if (!generalSubscription && (!subscription.defaults || !subscription.defaults.length)) + generalSubscription = subscription; + } + } + return generalSubscription; + }, + + /** + * Adds a filter subscription to the list + * @param {Subscription} subscription filter subscription to be added + * @param {Boolean} silent if true, no listeners will be triggered (to be used when filter list is reloaded) + */ + addSubscription: function(subscription, silent) + { + if (subscription.url in FilterStorage.knownSubscriptions) + return; + + FilterStorage.subscriptions.push(subscription); + FilterStorage.knownSubscriptions[subscription.url] = subscription; + addSubscriptionFilters(subscription); + + if (!silent) + FilterNotifier.triggerListeners("subscription.added", subscription); + }, + + /** + * Removes a filter subscription from the list + * @param {Subscription} subscription filter subscription to be removed + * @param {Boolean} silent if true, no listeners will be triggered (to be used when filter list is reloaded) + */ + removeSubscription: function(subscription, silent) + { + for (let i = 0; i < FilterStorage.subscriptions.length; i++) + { + if (FilterStorage.subscriptions[i].url == subscription.url) + { + removeSubscriptionFilters(subscription); + + FilterStorage.subscriptions.splice(i--, 1); + delete FilterStorage.knownSubscriptions[subscription.url]; + if (!silent) + FilterNotifier.triggerListeners("subscription.removed", subscription); + return; + } + } + }, + + /** + * Moves a subscription in the list to a new position. + * @param {Subscription} subscription filter subscription to be moved + * @param {Subscription} [insertBefore] filter subscription to insert before + * (if omitted the subscription will be put at the end of the list) + */ + moveSubscription: function(subscription, insertBefore) + { + let currentPos = FilterStorage.subscriptions.indexOf(subscription); + if (currentPos < 0) + return; + + let newPos = insertBefore ? FilterStorage.subscriptions.indexOf(insertBefore) : -1; + if (newPos < 0) + newPos = FilterStorage.subscriptions.length; + + if (currentPos < newPos) + newPos--; + if (currentPos == newPos) + return; + + FilterStorage.subscriptions.splice(currentPos, 1); + FilterStorage.subscriptions.splice(newPos, 0, subscription); + FilterNotifier.triggerListeners("subscription.moved", subscription); + }, + + /** + * Replaces the list of filters in a subscription by a new list + * @param {Subscription} subscription filter subscription to be updated + * @param {Array of Filter} filters new filter lsit + */ + updateSubscriptionFilters: function(subscription, filters) + { + removeSubscriptionFilters(subscription); + subscription.oldFilters = subscription.filters; + subscription.filters = filters; + addSubscriptionFilters(subscription); + FilterNotifier.triggerListeners("subscription.updated", subscription); + delete subscription.oldFilters; + }, + + /** + * Adds a user-defined filter to the list + * @param {Filter} filter + * @param {SpecialSubscription} [subscription] particular group that the filter should be added to + * @param {Integer} [position] position within the subscription at which the filter should be added + * @param {Boolean} silent if true, no listeners will be triggered (to be used when filter list is reloaded) + */ + addFilter: function(filter, subscription, position, silent) + { + if (!subscription) + { + if (filter.subscriptions.some(s => s instanceof SpecialSubscription && !s.disabled)) + return; // No need to add + subscription = FilterStorage.getGroupForFilter(filter); + } + if (!subscription) + { + // No group for this filter exists, create one + subscription = SpecialSubscription.createForFilter(filter); + this.addSubscription(subscription); + return; + } + + if (typeof position == "undefined") + position = subscription.filters.length; + + if (filter.subscriptions.indexOf(subscription) < 0) + filter.subscriptions.push(subscription); + subscription.filters.splice(position, 0, filter); + if (!silent) + FilterNotifier.triggerListeners("filter.added", filter, subscription, position); + }, + + /** + * Removes a user-defined filter from the list + * @param {Filter} filter + * @param {SpecialSubscription} [subscription] a particular filter group that + * the filter should be removed from (if ommited will be removed from all subscriptions) + * @param {Integer} [position] position inside the filter group at which the + * filter should be removed (if ommited all instances will be removed) + */ + removeFilter: function(filter, subscription, position) + { + let subscriptions = (subscription ? [subscription] : filter.subscriptions.slice()); + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + if (subscription instanceof SpecialSubscription) + { + let positions = []; + if (typeof position == "undefined") + { + let index = -1; + do + { + index = subscription.filters.indexOf(filter, index + 1); + if (index >= 0) + positions.push(index); + } while (index >= 0); + } + else + positions.push(position); + + for (let j = positions.length - 1; j >= 0; j--) + { + let position = positions[j]; + if (subscription.filters[position] == filter) + { + subscription.filters.splice(position, 1); + if (subscription.filters.indexOf(filter) < 0) + { + let index = filter.subscriptions.indexOf(subscription); + if (index >= 0) + filter.subscriptions.splice(index, 1); + } + FilterNotifier.triggerListeners("filter.removed", filter, subscription, position); + } + } + } + } + }, + + /** + * Moves a user-defined filter to a new position + * @param {Filter} filter + * @param {SpecialSubscription} subscription filter group where the filter is located + * @param {Integer} oldPosition current position of the filter + * @param {Integer} newPosition new position of the filter + */ + moveFilter: function(filter, subscription, oldPosition, newPosition) + { + if (!(subscription instanceof SpecialSubscription) || subscription.filters[oldPosition] != filter) + return; + + newPosition = Math.min(Math.max(newPosition, 0), subscription.filters.length - 1); + if (oldPosition == newPosition) + return; + + subscription.filters.splice(oldPosition, 1); + subscription.filters.splice(newPosition, 0, filter); + FilterNotifier.triggerListeners("filter.moved", filter, subscription, oldPosition, newPosition); + }, + + /** + * Increases the hit count for a filter by one + * @param {Filter} filter + * @param {Window} window Window that the match originated in (required + * to recognize private browsing mode) + */ + increaseHitCount: function(filter, wnd) + { + if (!Prefs.savestats || PrivateBrowsing.enabledForWindow(wnd) || + PrivateBrowsing.enabled || !(filter instanceof ActiveFilter)) + { + return; + } + + filter.hitCount++; + filter.lastHit = Date.now(); + }, + + /** + * Resets hit count for some filters + * @param {Array of Filter} filters filters to be reset, if null all filters will be reset + */ + resetHitCounts: function(filters) + { + if (!filters) + { + filters = []; + for (let text in Filter.knownFilters) + filters.push(Filter.knownFilters[text]); + } + for (let filter of filters) + { + filter.hitCount = 0; + filter.lastHit = 0; + } + }, + + _loading: false, + + /** + * Loads all subscriptions from the disk + * @param {nsIFile} [sourceFile] File to read from + */ + loadFromDisk: function(sourceFile) + { + if (this._loading) + return; + + TimeLine.enter("Entered FilterStorage.loadFromDisk()"); + this._loading = true; + + let readFile = function(sourceFile, backupIndex) + { + TimeLine.enter("FilterStorage.loadFromDisk() -> readFile()"); + + let parser = new INIParser(); + IO.readFromFile(sourceFile, parser, function(e) + { + TimeLine.enter("FilterStorage.loadFromDisk() read callback"); + if (!e && parser.subscriptions.length == 0) + { + // No filter subscriptions in the file, this isn't right. + e = new Error("No data in the file"); + } + + if (e) + Cu.reportError(e); + + if (e && !explicitFile) + { + // Attempt to load a backup + sourceFile = this.sourceFile; + if (sourceFile) + { + let [, part1, part2] = /^(.*)(\.\w+)$/.exec(sourceFile.leafName) || [null, sourceFile.leafName, ""]; + + sourceFile = sourceFile.clone(); + sourceFile.leafName = part1 + "-backup" + (++backupIndex) + part2; + + IO.statFile(sourceFile, function(e, statData) + { + if (!e && statData.exists) + readFile(sourceFile, backupIndex); + else + doneReading(parser); + }); + TimeLine.leave("FilterStorage.loadFromDisk() read callback done"); + return; + } + } + doneReading(parser); + }.bind(this), "FilterStorageRead"); + + TimeLine.leave("FilterStorage.loadFromDisk() <- readFile()", "FilterStorageRead"); + }.bind(this); + + var doneReading = function(parser) + { + // Old special groups might have been converted, remove them if they are empty + let specialMap = {"~il~": true, "~wl~": true, "~fl~": true, "~eh~": true}; + let knownSubscriptions = {__proto__: null}; + for (let i = 0; i < parser.subscriptions.length; i++) + { + let subscription = parser.subscriptions[i]; + if (subscription instanceof SpecialSubscription && subscription.filters.length == 0 && subscription.url in specialMap) + parser.subscriptions.splice(i--, 1); + else + knownSubscriptions[subscription.url] = subscription; + } + + this.fileProperties = parser.fileProperties; + this.subscriptions = parser.subscriptions; + this.knownSubscriptions = knownSubscriptions; + Filter.knownFilters = parser.knownFilters; + Subscription.knownSubscriptions = parser.knownSubscriptions; + + if (parser.userFilters) + { + for (let i = 0; i < parser.userFilters.length; i++) + { + let filter = Filter.fromText(parser.userFilters[i]); + this.addFilter(filter, null, undefined, true); + } + } + TimeLine.log("Initializing data done, triggering observers") + + this._loading = false; + FilterNotifier.triggerListeners("load"); + + if (sourceFile != this.sourceFile) + this.saveToDisk(); + + TimeLine.leave("FilterStorage.loadFromDisk() read callback done"); + }.bind(this); + + let explicitFile; + if (sourceFile) + { + explicitFile = true; + readFile(sourceFile, 0); + } + else + { + explicitFile = false; + sourceFile = FilterStorage.sourceFile; + + let callback = function(e, statData) + { + if (e || !statData.exists) + { + this.firstRun = true; + this._loading = false; + FilterNotifier.triggerListeners("load"); + + TimeLine.leave("FilterStorage.loadFromDisk() read callback done"); + } + else + readFile(sourceFile, 0); + }.bind(this); + + if (sourceFile) + IO.statFile(sourceFile, callback); + else + callback(true); + } + + TimeLine.leave("FilterStorage.loadFromDisk() done"); + }, + + _generateFilterData: function(subscriptions) + { + yield "# Adblock Plus preferences"; + yield "version=" + formatVersion; + + let saved = {__proto__: null}; + let buf = []; + + // Save filter data + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + for (let j = 0; j < subscription.filters.length; j++) + { + let filter = subscription.filters[j]; + if (!(filter.text in saved)) + { + filter.serialize(buf); + saved[filter.text] = filter; + for (let k = 0; k < buf.length; k++) + yield buf[k]; + buf.splice(0); + } + } + } + + // Save subscriptions + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + + yield ""; + + subscription.serialize(buf); + if (subscription.filters.length) + { + buf.push("", "[Subscription filters]") + subscription.serializeFilters(buf); + } + for (let k = 0; k < buf.length; k++) + yield buf[k]; + buf.splice(0); + } + }, + + /** + * Will be set to true if saveToDisk() is running (reentrance protection). + * @type Boolean + */ + _saving: false, + + /** + * Will be set to true if a saveToDisk() call arrives while saveToDisk() is + * already running (delayed execution). + * @type Boolean + */ + _needsSave: false, + + /** + * Saves all subscriptions back to disk + * @param {nsIFile} [targetFile] File to be written + */ + saveToDisk: function(targetFile) + { + let explicitFile = true; + if (!targetFile) + { + targetFile = FilterStorage.sourceFile; + explicitFile = false; + } + if (!targetFile) + return; + + if (!explicitFile && this._saving) + { + this._needsSave = true; + return; + } + + TimeLine.enter("Entered FilterStorage.saveToDisk()"); + + // Make sure the file's parent directory exists + try { + targetFile.parent.create(Ci.nsIFile.DIRECTORY_TYPE, FileUtils.PERMS_DIRECTORY); + } catch (e) {} + + let writeFilters = function() + { + TimeLine.enter("FilterStorage.saveToDisk() -> writeFilters()"); + IO.writeToFile(targetFile, this._generateFilterData(subscriptions), function(e) + { + TimeLine.enter("FilterStorage.saveToDisk() write callback"); + if (!explicitFile) + this._saving = false; + + if (e) + Cu.reportError(e); + + if (!explicitFile && this._needsSave) + { + this._needsSave = false; + this.saveToDisk(); + } + else + FilterNotifier.triggerListeners("save"); + TimeLine.leave("FilterStorage.saveToDisk() write callback done"); + }.bind(this), "FilterStorageWrite"); + TimeLine.leave("FilterStorage.saveToDisk() -> writeFilters()", "FilterStorageWrite"); + }.bind(this); + + let checkBackupRequired = function(callbackNotRequired, callbackRequired) + { + if (explicitFile || Prefs.patternsbackups <= 0) + callbackNotRequired(); + else + { + IO.statFile(targetFile, function(e, statData) + { + if (e || !statData.exists) + callbackNotRequired(); + else + { + let [, part1, part2] = /^(.*)(\.\w+)$/.exec(targetFile.leafName) || [null, targetFile.leafName, ""]; + let newestBackup = targetFile.clone(); + newestBackup.leafName = part1 + "-backup1" + part2; + IO.statFile(newestBackup, function(e, statData) + { + if (!e && (!statData.exists || (Date.now() - statData.lastModified) / 3600000 >= Prefs.patternsbackupinterval)) + callbackRequired(part1, part2) + else + callbackNotRequired(); + }); + } + }); + } + }.bind(this); + + let removeLastBackup = function(part1, part2) + { + TimeLine.enter("FilterStorage.saveToDisk() -> removeLastBackup()"); + let file = targetFile.clone(); + file.leafName = part1 + "-backup" + Prefs.patternsbackups + part2; + IO.removeFile(file, (e) => renameBackup(part1, part2, Prefs.patternsbackups - 1)); + TimeLine.leave("FilterStorage.saveToDisk() <- removeLastBackup()"); + }.bind(this); + + let renameBackup = function(part1, part2, index) + { + TimeLine.enter("FilterStorage.saveToDisk() -> renameBackup()"); + if (index > 0) + { + let fromFile = targetFile.clone(); + fromFile.leafName = part1 + "-backup" + index + part2; + + let toName = part1 + "-backup" + (index + 1) + part2; + + IO.renameFile(fromFile, toName, (e) => renameBackup(part1, part2, index - 1)); + } + else + { + let toFile = targetFile.clone(); + toFile.leafName = part1 + "-backup" + (index + 1) + part2; + + IO.copyFile(targetFile, toFile, writeFilters); + } + TimeLine.leave("FilterStorage.saveToDisk() <- renameBackup()"); + }.bind(this); + + // Do not persist external subscriptions + let subscriptions = this.subscriptions.filter((s) => !(s instanceof ExternalSubscription)); + if (!explicitFile) + this._saving = true; + + checkBackupRequired(writeFilters, removeLastBackup); + + TimeLine.leave("FilterStorage.saveToDisk() done"); + }, + + /** + * Returns the list of existing backup files. + */ + getBackupFiles: function() /**nsIFile[]*/ + { + // TODO: This method should be asynchronous + let result = []; + + let [, part1, part2] = /^(.*)(\.\w+)$/.exec(FilterStorage.sourceFile.leafName) || [null, FilterStorage.sourceFile.leafName, ""]; + for (let i = 1; ; i++) + { + let file = FilterStorage.sourceFile.clone(); + file.leafName = part1 + "-backup" + i + part2; + if (file.exists()) + result.push(file); + else + break; + } + return result; + } +}; + +/** + * Joins subscription's filters to the subscription without any notifications. + * @param {Subscription} subscription filter subscription that should be connected to its filters + */ +function addSubscriptionFilters(subscription) +{ + if (!(subscription.url in FilterStorage.knownSubscriptions)) + return; + + for (let filter of subscription.filters) + filter.subscriptions.push(subscription); +} + +/** + * Removes subscription's filters from the subscription without any notifications. + * @param {Subscription} subscription filter subscription to be removed + */ +function removeSubscriptionFilters(subscription) +{ + if (!(subscription.url in FilterStorage.knownSubscriptions)) + return; + + for (let filter of subscription.filters) + { + let i = filter.subscriptions.indexOf(subscription); + if (i >= 0) + filter.subscriptions.splice(i, 1); + } +} + +/** + * Observer listening to private browsing mode changes. + * @class + */ +let PrivateBrowsing = exports.PrivateBrowsing = +{ + /** + * Will be set to true when the private browsing mode is switched on globally. + * @type Boolean + */ + enabled: false, + + /** + * Checks whether private browsing is enabled for a particular window. + */ + enabledForWindow: function(/**Window*/ wnd) /**Boolean*/ + { + try + { + return wnd.QueryInterface(Ci.nsIInterfaceRequestor) + .getInterface(Ci.nsILoadContext) + .usePrivateBrowsing; + } + catch (e) + { + // Gecko 19 and below will throw NS_NOINTERFACE, this is expected + if (e.result != Cr.NS_NOINTERFACE) + Cu.reportError(e); + return false; + } + }, + + init: function() + { + if ("@mozilla.org/privatebrowsing;1" in Cc) + { + try + { + this.enabled = Cc["@mozilla.org/privatebrowsing;1"].getService(Ci.nsIPrivateBrowsingService).privateBrowsingEnabled; + Services.obs.addObserver(this, "private-browsing", true); + onShutdown.add(function() + { + Services.obs.removeObserver(this, "private-browsing"); + }.bind(this)); + } + catch(e) + { + Cu.reportError(e); + } + } + }, + + observe: function(subject, topic, data) + { + if (topic == "private-browsing") + { + if (data == "enter") + this.enabled = true; + else if (data == "exit") + this.enabled = false; + } + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference, Ci.nsIObserver]) +}; +PrivateBrowsing.init(); + +/** + * IO.readFromFile() listener to parse filter data. + * @constructor + */ +function INIParser() +{ + this.fileProperties = this.curObj = {}; + this.subscriptions = []; + this.knownFilters = {__proto__: null}; + this.knownSubscriptions = {__proto__: null}; +} +INIParser.prototype = +{ + linesProcessed: 0, + subscriptions: null, + knownFilters: null, + knownSubscriptions : null, + wantObj: true, + fileProperties: null, + curObj: null, + curSection: null, + userFilters: null, + + process: function(val) + { + let origKnownFilters = Filter.knownFilters; + Filter.knownFilters = this.knownFilters; + let origKnownSubscriptions = Subscription.knownSubscriptions; + Subscription.knownSubscriptions = this.knownSubscriptions; + let match; + try + { + if (this.wantObj === true && (match = /^(\w+)=(.*)$/.exec(val))) + this.curObj[match[1]] = match[2]; + else if (val === null || (match = /^\s*\[(.+)\]\s*$/.exec(val))) + { + if (this.curObj) + { + // Process current object before going to next section + switch (this.curSection) + { + case "filter": + case "pattern": + if ("text" in this.curObj) + Filter.fromObject(this.curObj); + break; + case "subscription": + let subscription = Subscription.fromObject(this.curObj); + if (subscription) + this.subscriptions.push(subscription); + break; + case "subscription filters": + case "subscription patterns": + if (this.subscriptions.length) + { + let subscription = this.subscriptions[this.subscriptions.length - 1]; + for (let text of this.curObj) + { + let filter = Filter.fromText(text); + subscription.filters.push(filter); + filter.subscriptions.push(subscription); + } + } + break; + case "user patterns": + this.userFilters = this.curObj; + break; + } + } + + if (val === null) + return; + + this.curSection = match[1].toLowerCase(); + switch (this.curSection) + { + case "filter": + case "pattern": + case "subscription": + this.wantObj = true; + this.curObj = {}; + break; + case "subscription filters": + case "subscription patterns": + case "user patterns": + this.wantObj = false; + this.curObj = []; + break; + default: + this.wantObj = undefined; + this.curObj = null; + } + } + else if (this.wantObj === false && val) + this.curObj.push(val.replace(/\\\[/g, "[")); + } + finally + { + Filter.knownFilters = origKnownFilters; + Subscription.knownSubscriptions = origKnownSubscriptions; + } + + // Allow events to be processed every now and then. + // Note: IO.readFromFile() will deal with the potential reentrance here. + this.linesProcessed++; + if (this.linesProcessed % 1000 == 0) + Utils.yield(); + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/io.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/io.js new file mode 100644 index 0000000..ea362b7 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/io.js @@ -0,0 +1,365 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Module containing file I/O helpers. + */ + +let {Services} = Cu.import("resource://gre/modules/Services.jsm", null); +let {FileUtils} = Cu.import("resource://gre/modules/FileUtils.jsm", null); +let {OS} = Cu.import("resource://gre/modules/osfile.jsm", null); +let {Task} = Cu.import("resource://gre/modules/Task.jsm", null); + +let {TimeLine} = require("timeline"); +let {Prefs} = require("prefs"); +let {Utils} = require("utils"); + +let firstRead = true; +const BUFFER_SIZE = 0x8000; // 32kB + +let IO = exports.IO = +{ + /** + * Retrieves the platform-dependent line break string. + */ + get lineBreak() + { + let lineBreak = (Services.appinfo.OS == "WINNT" ? "\r\n" : "\n"); + delete IO.lineBreak; + IO.__defineGetter__("lineBreak", () => lineBreak); + return IO.lineBreak; + }, + + /** + * Tries to interpret a file path as an absolute path or a path relative to + * user's profile. Returns a file or null on failure. + */ + resolveFilePath: function(/**String*/ path) /**nsIFile*/ + { + if (!path) + return null; + + try { + // Assume an absolute path first + return new FileUtils.File(path); + } catch (e) {} + + try { + // Try relative path now + return FileUtils.getFile("ProfD", path.split("/")); + } catch (e) {} + + return null; + }, + + /** + * Reads strings from a file asynchronously, calls listener.process() with + * each line read and with a null parameter once the read operation is done. + * The callback will be called when the operation is done. + */ + readFromFile: function(/**nsIFile*/ file, /**Object*/ listener, /**Function*/ callback, /**String*/ timeLineID) + { + try + { + let processing = false; + let buffer = ""; + let loaded = false; + let error = null; + + let onProgress = function(data) + { + if (timeLineID) + { + TimeLine.asyncStart(timeLineID); + } + + let index = (processing ? -1 : Math.max(data.lastIndexOf("\n"), data.lastIndexOf("\r"))); + if (index >= 0) + { + // Protect against reentrance in case the listener processes events. + processing = true; + try + { + let oldBuffer = buffer; + buffer = data.substr(index + 1); + data = data.substr(0, index + 1); + let lines = data.split(/[\r\n]+/); + lines.pop(); + lines[0] = oldBuffer + lines[0]; + for (let i = 0; i < lines.length; i++) + listener.process(lines[i]); + } + finally + { + processing = false; + data = buffer; + buffer = ""; + onProgress(data); + + if (loaded) + { + loaded = false; + onSuccess(); + } + + if (error) + { + let param = error; + error = null; + onError(param); + } + } + } + else + buffer += data; + + if (timeLineID) + { + TimeLine.asyncEnd(timeLineID); + } + }; + + let onSuccess = function() + { + if (processing) + { + // Still processing data, delay processing this event. + loaded = true; + return; + } + + if (timeLineID) + { + TimeLine.asyncStart(timeLineID); + } + + if (buffer !== "") + listener.process(buffer); + listener.process(null); + + if (timeLineID) + { + TimeLine.asyncEnd(timeLineID); + TimeLine.asyncDone(timeLineID); + } + + callback(null); + }; + + let onError = function(e) + { + if (processing) + { + // Still processing data, delay processing this event. + error = e; + return; + } + + callback(e); + + if (timeLineID) + { + TimeLine.asyncDone(timeLineID); + } + }; + + let decoder = new TextDecoder(); + let array = new Uint8Array(BUFFER_SIZE); + Task.spawn(function() + { + if (firstRead && Services.vc.compare(Utils.platformVersion, "23.0a1") <= 0) + { + // See https://issues.adblockplus.org/ticket/530 - the first file + // opened cannot be closed due to Gecko bug 858723. Make sure that + // our patterns.ini file doesn't stay locked by opening a dummy file + // first. + try + { + let dummyPath = IO.resolveFilePath(Prefs.data_directory + "/dummy").path; + let dummy = yield OS.File.open(dummyPath, {write: true, truncate: true}); + yield dummy.close(); + } + catch (e) + { + // Dummy might be locked already, we don't care + } + } + firstRead = false; + + let f = yield OS.File.open(file.path, {read: true}); + let numBytes; + do + { + numBytes = yield f.readTo(array); + if (numBytes) + { + let data = decoder.decode(numBytes == BUFFER_SIZE ? + array : + array.subarray(0, numBytes), {stream: true}); + onProgress(data); + } + } while (numBytes); + + yield f.close(); + }.bind(this)).then(onSuccess, onError); + } + catch (e) + { + callback(e); + } + }, + + /** + * Writes string data to a file in UTF-8 format asynchronously. The callback + * will be called when the write operation is done. + */ + writeToFile: function(/**nsIFile*/ file, /**Iterator*/ data, /**Function*/ callback, /**String*/ timeLineID) + { + try + { + let encoder = new TextEncoder(); + + Task.spawn(function() + { + // This mimics OS.File.writeAtomic() but writes in chunks. + let tmpPath = file.path + ".tmp"; + let f = yield OS.File.open(tmpPath, {write: true, truncate: true}); + + let buf = []; + let bufLen = 0; + let lineBreak = this.lineBreak; + + function writeChunk() + { + let array = encoder.encode(buf.join(lineBreak) + lineBreak); + buf = []; + bufLen = 0; + return f.write(array); + } + + for (let line in data) + { + buf.push(line); + bufLen += line.length; + if (bufLen >= BUFFER_SIZE) + yield writeChunk(); + } + + if (bufLen) + yield writeChunk(); + + // OS.File.flush() isn't exposed prior to Gecko 27, see bug 912457. + if (typeof f.flush == "function") + yield f.flush(); + yield f.close(); + yield OS.File.move(tmpPath, file.path, {noCopy: true}); + }.bind(this)).then(callback.bind(null, null), callback); + } + catch (e) + { + callback(e); + } + }, + + /** + * Copies a file asynchronously. The callback will be called when the copy + * operation is done. + */ + copyFile: function(/**nsIFile*/ fromFile, /**nsIFile*/ toFile, /**Function*/ callback) + { + try + { + let promise = OS.File.copy(fromFile.path, toFile.path); + promise.then(callback.bind(null, null), callback); + } + catch (e) + { + callback(e); + } + }, + + /** + * Renames a file within the same directory, will call callback when done. + */ + renameFile: function(/**nsIFile*/ fromFile, /**String*/ newName, /**Function*/ callback) + { + try + { + toFile = fromFile.clone(); + toFile.leafName = newName; + let promise = OS.File.move(fromFile.path, toFile.path); + promise.then(callback.bind(null, null), callback); + } + catch(e) + { + callback(e); + } + }, + + /** + * Removes a file, will call callback when done. + */ + removeFile: function(/**nsIFile*/ file, /**Function*/ callback) + { + try + { + let promise = OS.File.remove(file.path); + promise.then(callback.bind(null, null), callback); + } + catch(e) + { + callback(e); + } + }, + + /** + * Gets file information such as whether the file exists. + */ + statFile: function(/**nsIFile*/ file, /**Function*/ callback) + { + try + { + let promise = OS.File.stat(file.path); + promise.then(function onSuccess(info) + { + callback(null, { + exists: true, + isDirectory: info.isDir, + isFile: !info.isDir, + lastModified: info.lastModificationDate.getTime() + }); + }, function onError(e) + { + if (e.becauseNoSuchFile) + { + callback(null, { + exists: false, + isDirectory: false, + isFile: false, + lastModified: 0 + }); + } + else + callback(e); + }); + } + catch(e) + { + callback(e); + } + } +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/keySelector.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/keySelector.js new file mode 100644 index 0000000..20847d9 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/keySelector.js @@ -0,0 +1,228 @@ +/* + * This file is part of the Adblock Plus build tools, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/Services.jsm"); + +let validModifiers = +{ + ACCEL: null, + CTRL: "control", + CONTROL: "control", + SHIFT: "shift", + ALT: "alt", + META: "meta", + __proto__: null +}; + +/** + * Sets the correct value of validModifiers.ACCEL. + */ +function initAccelKey() +{ + validModifiers.ACCEL = "control"; + try + { + let accelKey = Services.prefs.getIntPref("ui.key.accelKey"); + if (accelKey == Ci.nsIDOMKeyEvent.DOM_VK_CONTROL) + validModifiers.ACCEL = "control"; + else if (accelKey == Ci.nsIDOMKeyEvent.DOM_VK_ALT) + validModifiers.ACCEL = "alt"; + else if (accelKey == Ci.nsIDOMKeyEvent.DOM_VK_META) + validModifiers.ACCEL = "meta"; + } + catch(e) + { + Cu.reportError(e); + } +} + +exports.KeySelector = KeySelector; + +/** + * This class provides capabilities to find and use available keyboard shortcut + * keys. + * @param {ChromeWindow} window the window where to look up existing shortcut + * keys + * @constructor + */ +function KeySelector(window) +{ + this._initExistingShortcuts(window); +} +KeySelector.prototype = +{ + /** + * Map listing existing shortcut keys as its keys. + * @type Object + */ + _existingShortcuts: null, + + /** + * Sets up _existingShortcuts property for a window. + */ + _initExistingShortcuts: function(/**ChromeWindow*/ window) + { + if (!validModifiers.ACCEL) + initAccelKey(); + + this._existingShortcuts = {__proto__: null}; + + let keys = window.document.getElementsByTagName("key"); + for (let i = 0; i < keys.length; i++) + { + let key = keys[i]; + let keyData = + { + shift: false, + meta: false, + alt: false, + control: false, + char: null, + code: null + }; + + let keyChar = key.getAttribute("key"); + if (keyChar && keyChar.length == 1) + keyData.char = keyChar.toUpperCase(); + + let keyCode = key.getAttribute("keycode"); + if (keyCode && "DOM_" + keyCode.toUpperCase() in Ci.nsIDOMKeyEvent) + keyData.code = Ci.nsIDOMKeyEvent["DOM_" + keyCode.toUpperCase()]; + + if (!keyData.char && !keyData.code) + continue; + + let keyModifiers = key.getAttribute("modifiers"); + if (keyModifiers) + for each (let modifier in keyModifiers.toUpperCase().match(/\w+/g)) + if (modifier in validModifiers) + keyData[validModifiers[modifier]] = true; + + let canonical = [keyData.shift, keyData.meta, keyData.alt, keyData.control, keyData.char || keyData.code].join(" "); + this._existingShortcuts[canonical] = true; + } + }, + + /** + * Selects a keyboard shortcut variant that isn't already taken, + * parses it into an object. + */ + selectKey: function(/**String*/ variants) /**Object*/ + { + for each (let variant in variants.split(/\s*,\s*/)) + { + if (!variant) + continue; + + let keyData = + { + shift: false, + meta: false, + alt: false, + control: false, + char: null, + code: null, + codeName: null + }; + for each (let part in variant.toUpperCase().split(/\s+/)) + { + if (part in validModifiers) + keyData[validModifiers[part]] = true; + else if (part.length == 1) + keyData.char = part; + else if ("DOM_VK_" + part in Ci.nsIDOMKeyEvent) + { + keyData.code = Ci.nsIDOMKeyEvent["DOM_VK_" + part]; + keyData.codeName = "VK_" + part; + } + } + + if (!keyData.char && !keyData.code) + continue; + + let canonical = [keyData.shift, keyData.meta, keyData.alt, keyData.control, keyData.char || keyData.code].join(" "); + if (canonical in this._existingShortcuts) + continue; + + return keyData; + } + + return null; + } +}; + +/** + * Creates the text representation for a key. + * @static + */ +KeySelector.getTextForKey = function (/**Object*/ key) /**String*/ +{ + if (!key) + return null; + + if (!("text" in key)) + { + key.text = null; + try + { + let stringBundle = Services.strings.createBundle("chrome://global-platform/locale/platformKeys.properties"); + let parts = []; + if (key.control) + parts.push(stringBundle.GetStringFromName("VK_CONTROL")); + if (key.alt) + parts.push(stringBundle.GetStringFromName("VK_ALT")); + if (key.meta) + parts.push(stringBundle.GetStringFromName("VK_META")); + if (key.shift) + parts.push(stringBundle.GetStringFromName("VK_SHIFT")); + if (key.char) + parts.push(key.char.toUpperCase()); + else + { + let stringBundle2 = Services.strings.createBundle("chrome://global/locale/keys.properties"); + parts.push(stringBundle2.GetStringFromName(key.codeName)); + } + key.text = parts.join(stringBundle.GetStringFromName("MODIFIER_SEPARATOR")); + } + catch (e) + { + Cu.reportError(e); + return null; + } + } + return key.text; +}; + +/** + * Tests whether a keypress event matches the given key. + * @static + */ +KeySelector.matchesKey = function(/**Event*/ event, /**Object*/ key) /**Boolean*/ +{ + if (event.defaultPrevented || !key) + return false; + if (key.shift != event.shiftKey || key.alt != event.altKey) + return false; + if (key.meta != event.metaKey || key.control != event.ctrlKey) + return false; + + if (key.char && event.charCode && String.fromCharCode(event.charCode).toUpperCase() == key.char) + return true; + if (key.code && event.keyCode && event.keyCode == key.code) + return true; + return false; +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/main.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/main.js new file mode 100644 index 0000000..f18cc05 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/main.js @@ -0,0 +1,73 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Starts up Adblock Plus + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let {TimeLine} = require("timeline"); + +TimeLine.enter("Adblock Plus startup"); +registerPublicAPI(); +TimeLine.log("Done registering public API"); +require("filterListener"); +TimeLine.log("Done loading filter listener"); +require("contentPolicy"); +TimeLine.log("Done loading content policy"); +require("synchronizer"); +TimeLine.log("Done loading subscription synchronizer"); +require("notification"); +TimeLine.log("Done loading notification downloader"); +require("sync"); +TimeLine.log("Done loading sync support"); +require("ui"); +TimeLine.log("Done loading UI integration code"); +TimeLine.leave("Started up"); + +function registerPublicAPI() +{ + let {addonRoot} = require("info"); + + let uri = Services.io.newURI(addonRoot + "lib/Public.jsm", null, null); + if (uri instanceof Ci.nsIMutable) + uri.mutable = false; + + let classID = Components.ID("5e447bce-1dd2-11b2-b151-ec21c2b6a135"); + let contractID = "@adblockplus.org/abp/public;1"; + let factory = + { + createInstance: function(outer, iid) + { + if (outer) + throw Cr.NS_ERROR_NO_AGGREGATION; + return uri.QueryInterface(iid); + }, + QueryInterface: XPCOMUtils.generateQI([Ci.nsIFactory]) + }; + + let registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); + registrar.registerFactory(classID, "Adblock Plus public API URL", contractID, factory); + + onShutdown.add(function() + { + registrar.unregisterFactory(classID, factory); + Cu.unload(uri.spec); + }); +} diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/matcher.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/matcher.js new file mode 100644 index 0000000..908b0b8 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/matcher.js @@ -0,0 +1,446 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Matcher class implementing matching addresses against a list of filters. + */ + +let {Filter, RegExpFilter, WhitelistFilter} = require("filterClasses"); + +/** + * Blacklist/whitelist filter matching + * @constructor + */ +function Matcher() +{ + this.clear(); +} +exports.Matcher = Matcher; + +Matcher.prototype = { + /** + * Lookup table for filters by their associated keyword + * @type Object + */ + filterByKeyword: null, + + /** + * Lookup table for keywords by the filter text + * @type Object + */ + keywordByFilter: null, + + /** + * Removes all known filters + */ + clear: function() + { + this.filterByKeyword = {__proto__: null}; + this.keywordByFilter = {__proto__: null}; + }, + + /** + * Adds a filter to the matcher + * @param {RegExpFilter} filter + */ + add: function(filter) + { + if (filter.text in this.keywordByFilter) + return; + + // Look for a suitable keyword + let keyword = this.findKeyword(filter); + let oldEntry = this.filterByKeyword[keyword]; + if (typeof oldEntry == "undefined") + this.filterByKeyword[keyword] = filter; + else if (oldEntry.length == 1) + this.filterByKeyword[keyword] = [oldEntry, filter]; + else + oldEntry.push(filter); + this.keywordByFilter[filter.text] = keyword; + }, + + /** + * Removes a filter from the matcher + * @param {RegExpFilter} filter + */ + remove: function(filter) + { + if (!(filter.text in this.keywordByFilter)) + return; + + let keyword = this.keywordByFilter[filter.text]; + let list = this.filterByKeyword[keyword]; + if (list.length <= 1) + delete this.filterByKeyword[keyword]; + else + { + let index = list.indexOf(filter); + if (index >= 0) + { + list.splice(index, 1); + if (list.length == 1) + this.filterByKeyword[keyword] = list[0]; + } + } + + delete this.keywordByFilter[filter.text]; + }, + + /** + * Chooses a keyword to be associated with the filter + * @param {String} text text representation of the filter + * @return {String} keyword (might be empty string) + */ + findKeyword: function(filter) + { + let result = ""; + let text = filter.text; + if (Filter.regexpRegExp.test(text)) + return result; + + // Remove options + let match = Filter.optionsRegExp.exec(text); + if (match) + text = match.input.substr(0, match.index); + + // Remove whitelist marker + if (text.substr(0, 2) == "@@") + text = text.substr(2); + + let candidates = text.toLowerCase().match(/[^a-z0-9%*][a-z0-9%]{3,}(?=[^a-z0-9%*])/g); + if (!candidates) + return result; + + let hash = this.filterByKeyword; + let resultCount = 0xFFFFFF; + let resultLength = 0; + for (let i = 0, l = candidates.length; i < l; i++) + { + let candidate = candidates[i].substr(1); + let count = (candidate in hash ? hash[candidate].length : 0); + if (count < resultCount || (count == resultCount && candidate.length > resultLength)) + { + result = candidate; + resultCount = count; + resultLength = candidate.length; + } + } + return result; + }, + + /** + * Checks whether a particular filter is being matched against. + */ + hasFilter: function(/**RegExpFilter*/ filter) /**Boolean*/ + { + return (filter.text in this.keywordByFilter); + }, + + /** + * Returns the keyword used for a filter, null for unknown filters. + */ + getKeywordForFilter: function(/**RegExpFilter*/ filter) /**String*/ + { + if (filter.text in this.keywordByFilter) + return this.keywordByFilter[filter.text]; + else + return null; + }, + + /** + * Checks whether the entries for a particular keyword match a URL + */ + _checkEntryMatch: function(keyword, location, contentType, docDomain, thirdParty, privatenode) + { + let list = this.filterByKeyword[keyword]; + for (let i = 0; i < list.length; i++) + { + let filter = list[i]; + if (filter.matches(location, contentType, docDomain, thirdParty,privatenode)) + return filter; + } + return null; + }, + + /** + * Tests whether the URL matches any of the known filters + * @param {String} location URL to be tested + * @param {String} contentType content type identifier of the URL + * @param {String} docDomain domain name of the document that loads the URL + * @param {Boolean} thirdParty should be true if the URL is a third-party request + * @return {RegExpFilter} matching filter or null + */ + matchesAny: function(location, contentType, docDomain, thirdParty) + { + let candidates = location.toLowerCase().match(/[a-z0-9%]{3,}/g); + if (candidates === null) + candidates = []; + candidates.push(""); + for (let i = 0, l = candidates.length; i < l; i++) + { + let substr = candidates[i]; + if (substr in this.filterByKeyword) + { + let result = this._checkEntryMatch(substr, location, contentType, docDomain, thirdParty); + if (result) + return result; + } + } + + return null; + } +}; + +/** + * Combines a matcher for blocking and exception rules, automatically sorts + * rules into two Matcher instances. + * @constructor + */ +function CombinedMatcher() +{ + this.blacklist = new Matcher(); + this.whitelist = new Matcher(); + this.keys = {__proto__: null}; + this.resultCache = {__proto__: null}; +} +exports.CombinedMatcher = CombinedMatcher; + +/** + * Maximal number of matching cache entries to be kept + * @type Number + */ +CombinedMatcher.maxCacheEntries = 1000; + +CombinedMatcher.prototype = +{ + /** + * Matcher for blocking rules. + * @type Matcher + */ + blacklist: null, + + /** + * Matcher for exception rules. + * @type Matcher + */ + whitelist: null, + + /** + * Exception rules that are limited by public keys, mapped by the corresponding keys. + * @type Object + */ + keys: null, + + /** + * Lookup table of previous matchesAny results + * @type Object + */ + resultCache: null, + + /** + * Number of entries in resultCache + * @type Number + */ + cacheEntries: 0, + + /** + * @see Matcher#clear + */ + clear: function() + { + this.blacklist.clear(); + this.whitelist.clear(); + this.keys = {__proto__: null}; + this.resultCache = {__proto__: null}; + this.cacheEntries = 0; + }, + + /** + * @see Matcher#add + */ + add: function(filter) + { + if (filter instanceof WhitelistFilter) + { + if (filter.siteKeys) + { + for (let i = 0; i < filter.siteKeys.length; i++) + this.keys[filter.siteKeys[i]] = filter.text; + } + else + this.whitelist.add(filter); + } + else + this.blacklist.add(filter); + + if (this.cacheEntries > 0) + { + this.resultCache = {__proto__: null}; + this.cacheEntries = 0; + } + }, + + /** + * @see Matcher#remove + */ + remove: function(filter) + { + if (filter instanceof WhitelistFilter) + { + if (filter.siteKeys) + { + for (let i = 0; i < filter.siteKeys.length; i++) + delete this.keys[filter.siteKeys[i]]; + } + else + this.whitelist.remove(filter); + } + else + this.blacklist.remove(filter); + + if (this.cacheEntries > 0) + { + this.resultCache = {__proto__: null}; + this.cacheEntries = 0; + } + }, + + /** + * @see Matcher#findKeyword + */ + findKeyword: function(filter) + { + if (filter instanceof WhitelistFilter) + return this.whitelist.findKeyword(filter); + else + return this.blacklist.findKeyword(filter); + }, + + /** + * @see Matcher#hasFilter + */ + hasFilter: function(filter) + { + if (filter instanceof WhitelistFilter) + return this.whitelist.hasFilter(filter); + else + return this.blacklist.hasFilter(filter); + }, + + /** + * @see Matcher#getKeywordForFilter + */ + getKeywordForFilter: function(filter) + { + if (filter instanceof WhitelistFilter) + return this.whitelist.getKeywordForFilter(filter); + else + return this.blacklist.getKeywordForFilter(filter); + }, + + /** + * Checks whether a particular filter is slow + */ + isSlowFilter: function(/**RegExpFilter*/ filter) /**Boolean*/ + { + let matcher = (filter instanceof WhitelistFilter ? this.whitelist : this.blacklist); + if (matcher.hasFilter(filter)) + return !matcher.getKeywordForFilter(filter); + else + return !matcher.findKeyword(filter); + }, + + /** + * Optimized filter matching testing both whitelist and blacklist matchers + * simultaneously. For parameters see Matcher.matchesAny(). + * @see Matcher#matchesAny + */ + matchesAnyInternal: function(location, contentType, docDomain, thirdParty, privatenode) + { + let candidates = location.toLowerCase().match(/[a-z0-9%]{3,}/g); + if (candidates === null) + candidates = []; + candidates.push(""); + + let blacklistHit = null; + for (let i = 0, l = candidates.length; i < l; i++) + { + let substr = candidates[i]; + if (substr in this.whitelist.filterByKeyword) + { + let result = this.whitelist._checkEntryMatch(substr, location, contentType, docDomain, thirdParty, privatenode); + if (result) + return result; + } + if (substr in this.blacklist.filterByKeyword && blacklistHit === null) + blacklistHit = this.blacklist._checkEntryMatch(substr, location, contentType, docDomain, thirdParty, privatenode); + } + return blacklistHit; + }, + + /** + * @see Matcher#matchesAny + */ + matchesAny: function(location, contentType, docDomain, thirdParty, privatenode) + { + let key = location + " " + contentType + " " + docDomain + " " + thirdParty; + if (!privatenode){ + if (key in this.resultCache) + return this.resultCache[key]; + } + + let result = this.matchesAnyInternal(location, contentType, docDomain, thirdParty, privatenode); + + if (this.cacheEntries >= CombinedMatcher.maxCacheEntries) + { + this.resultCache = {__proto__: null}; + this.cacheEntries = 0; + } + + if (!privatenode){ + this.resultCache[key] = result; + this.cacheEntries++; + } + + return result; + }, + + /** + * Looks up whether any filters match the given website key. + */ + matchesByKey: function(/**String*/ location, /**String*/ key, /**String*/ docDomain) + { + key = key.toUpperCase(); + if (key in this.keys) + { + let filter = Filter.knownFilters[this.keys[key]]; + if (filter && filter.matches(location, "DOCUMENT", docDomain, false)) + return filter; + else + return null; + } + else + return null; + } +} + +/** + * Shared CombinedMatcher instance that should usually be used. + * @type CombinedMatcher + */ +let defaultMatcher = exports.defaultMatcher = new CombinedMatcher(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/notification.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/notification.js new file mode 100644 index 0000000..06e949e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/notification.js @@ -0,0 +1,339 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Handles notifications. + */ + +Cu.import("resource://gre/modules/Services.jsm"); + +let {TimeLine} = require("timeline"); +let {Prefs} = require("prefs"); +let {Downloader, Downloadable, MILLIS_IN_MINUTE, MILLIS_IN_HOUR, MILLIS_IN_DAY} = require("downloader"); +let {Utils} = require("utils"); +let {Matcher} = require("matcher"); +let {Filter} = require("filterClasses"); + +let INITIAL_DELAY = 12 * MILLIS_IN_MINUTE; +let CHECK_INTERVAL = 1 * MILLIS_IN_HOUR; +let EXPIRATION_INTERVAL = 1 * MILLIS_IN_DAY; +let TYPE = { + information: 0, + question: 1, + critical: 2 +}; + +let listeners = {}; + +function getNumericalSeverity(notification) +{ + return (notification.type in TYPE ? TYPE[notification.type] : TYPE.information); +} + +function saveNotificationData() +{ + // HACK: JSON values aren't saved unless they are assigned a different object. + Prefs.notificationdata = JSON.parse(JSON.stringify(Prefs.notificationdata)); +} + +function localize(translations, locale) +{ + if (locale in translations) + return translations[locale]; + + let languagePart = locale.substring(0, locale.indexOf("-")); + if (languagePart && languagePart in translations) + return translations[languagePart]; + + let defaultLocale = "en-US"; + return translations[defaultLocale]; +} + +/** + * The object providing actual downloading functionality. + * @type Downloader + */ +let downloader = null; +let localData = []; + +/** + * Regularly fetches notifications and decides which to show. + * @class + */ +let Notification = exports.Notification = +{ + /** + * Called on module startup. + */ + init: function() + { + TimeLine.enter("Entered Notification.init()"); + + downloader = new Downloader(this._getDownloadables.bind(this), INITIAL_DELAY, CHECK_INTERVAL); + onShutdown.add(function() + { + downloader.cancel(); + }); + + downloader.onExpirationChange = this._onExpirationChange.bind(this); + downloader.onDownloadSuccess = this._onDownloadSuccess.bind(this); + downloader.onDownloadError = this._onDownloadError.bind(this); + + TimeLine.leave("Notification.init() done"); + }, + + /** + * Yields a Downloadable instances for the notifications download. + */ + _getDownloadables: function() + { + let downloadable = new Downloadable(Prefs.notificationurl); + if (typeof Prefs.notificationdata.lastError === "number") + downloadable.lastError = Prefs.notificationdata.lastError; + if (typeof Prefs.notificationdata.lastCheck === "number") + downloadable.lastCheck = Prefs.notificationdata.lastCheck; + if (typeof Prefs.notificationdata.data === "object" && "version" in Prefs.notificationdata.data) + downloadable.lastVersion = Prefs.notificationdata.data.version; + if (typeof Prefs.notificationdata.softExpiration === "number") + downloadable.softExpiration = Prefs.notificationdata.softExpiration; + if (typeof Prefs.notificationdata.hardExpiration === "number") + downloadable.hardExpiration = Prefs.notificationdata.hardExpiration; + yield downloadable; + }, + + _onExpirationChange: function(downloadable) + { + Prefs.notificationdata.lastCheck = downloadable.lastCheck; + Prefs.notificationdata.softExpiration = downloadable.softExpiration; + Prefs.notificationdata.hardExpiration = downloadable.hardExpiration; + saveNotificationData(); + }, + + _onDownloadSuccess: function(downloadable, responseText, errorCallback, redirectCallback) + { + try + { + let data = JSON.parse(responseText); + for (let notification of data.notifications) + { + if ("severity" in notification) + { + if (!("type" in notification)) + notification.type = notification.severity; + delete notification.severity; + } + } + Prefs.notificationdata.data = data; + } + catch (e) + { + Cu.reportError(e); + errorCallback("synchronize_invalid_data"); + return; + } + + Prefs.notificationdata.lastError = 0; + Prefs.notificationdata.downloadStatus = "synchronize_ok"; + [Prefs.notificationdata.softExpiration, Prefs.notificationdata.hardExpiration] = downloader.processExpirationInterval(EXPIRATION_INTERVAL); + saveNotificationData(); + }, + + _onDownloadError: function(downloadable, downloadURL, error, channelStatus, responseStatus, redirectCallback) + { + Prefs.notificationdata.lastError = Date.now(); + Prefs.notificationdata.downloadStatus = error; + saveNotificationData(); + }, + + /** + * Determines which notification is to be shown next. + * @param {String} url URL to match notifications to (optional) + * @return {Object} notification to be shown, or null if there is none + */ + getNextToShow: function(url) + { + function checkTarget(target, parameter, name, version) + { + let minVersionKey = parameter + "MinVersion"; + let maxVersionKey = parameter + "MaxVersion"; + return !((parameter in target && target[parameter] != name) || + (minVersionKey in target && Services.vc.compare(version, target[minVersionKey]) < 0) || + (maxVersionKey in target && Services.vc.compare(version, target[maxVersionKey]) > 0)); + } + + let remoteData = []; + if (typeof Prefs.notificationdata.data == "object" && Prefs.notificationdata.data.notifications instanceof Array) + remoteData = Prefs.notificationdata.data.notifications; + + if (!(Prefs.notificationdata.shown instanceof Array)) + { + Prefs.notificationdata.shown = []; + saveNotificationData(); + } + + let notifications = localData.concat(remoteData); + if (notifications.length === 0) + return null; + + let {addonName, addonVersion, application, applicationVersion, platform, platformVersion} = require("info"); + let notificationToShow = null; + for (let notification of notifications) + { + if ((typeof notification.type === "undefined" || notification.type !== "critical") + && Prefs.notificationdata.shown.indexOf(notification.id) !== -1) + continue; + + if (typeof url === "string" || notification.urlFilters instanceof Array) + { + if (typeof url === "string" && notification.urlFilters instanceof Array) + { + let matcher = new Matcher(); + for (let urlFilter of notification.urlFilters) + matcher.add(Filter.fromText(urlFilter)); + if (!matcher.matchesAny(url, "DOCUMENT", url)) + continue; + } + else + continue; + } + + if (notification.targets instanceof Array) + { + let match = false; + for (let target of notification.targets) + { + if (checkTarget(target, "extension", addonName, addonVersion) && + checkTarget(target, "application", application, applicationVersion) && + checkTarget(target, "platform", platform, platformVersion)) + { + match = true; + break; + } + } + if (!match) + continue; + } + + if (!notificationToShow + || getNumericalSeverity(notification) > getNumericalSeverity(notificationToShow)) + notificationToShow = notification; + } + + if (notificationToShow && "id" in notificationToShow) + { + if (notificationToShow.type !== "question") + this.markAsShown(notificationToShow.id); + } + + return notificationToShow; + }, + + markAsShown: function(id) + { + if (Prefs.notificationdata.shown.indexOf(id) > -1) + return; + + Prefs.notificationdata.shown.push(id); + saveNotificationData(); + }, + + /** + * Localizes the texts of the supplied notification. + * @param {Object} notification notification to translate + * @param {String} locale the target locale (optional, defaults to the + * application locale) + * @return {Object} the translated texts + */ + getLocalizedTexts: function(notification, locale) + { + locale = locale || Utils.appLocale; + let textKeys = ["title", "message"]; + let localizedTexts = []; + for (let key of textKeys) + { + if (key in notification) + { + if (typeof notification[key] == "string") + localizedTexts[key] = notification[key]; + else + localizedTexts[key] = localize(notification[key], locale); + } + } + return localizedTexts; + }, + + /** + * Adds a local notification. + * @param {Object} notification notification to add + */ + addNotification: function(notification) + { + if (localData.indexOf(notification) == -1) + localData.push(notification); + }, + + /** + * Removes an existing local notification. + * @param {Object} notification notification to remove + */ + removeNotification: function(notification) + { + let index = localData.indexOf(notification); + if (index > -1) + localData.splice(index, 1); + }, + + /** + * Adds a listener for question-type notifications + */ + addQuestionListener: function(/**string*/ id, /**function(approved)*/ listener) + { + if (!(id in listeners)) + listeners[id] = []; + if (listeners[id].indexOf(listener) === -1) + listeners[id].push(listener); + }, + + /** + * Removes a listener that was previously added via addQuestionListener + */ + removeQuestionListener: function(/**string*/ id, /**function(approved)*/ listener) + { + if (!(id in listeners)) + return; + let index = listeners[id].indexOf(listener); + if (index > -1) + listeners[id].splice(index, 1); + if (listeners[id].length === 0) + delete listeners[id]; + }, + + /** + * Notifies listeners about interactions with a notification + * @param {String} id notification ID + * @param {Boolean} approved indicator whether notification has been approved or not + */ + triggerQuestionListeners: function(id, approved) + { + if (!(id in listeners)) + return; + let questionListeners = listeners[id]; + for (let listener of questionListeners) + listener(approved); + } +}; +Notification.init(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/objectTabs.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/objectTabs.js new file mode 100644 index 0000000..1227490 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/objectTabs.js @@ -0,0 +1,492 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Code responsible for showing and hiding object tabs. + */ + +/** + * Class responsible for showing and hiding object tabs. + * @class + */ +var objTabs = +{ + /** + * Number of milliseconds to wait until hiding tab after the mouse moves away. + * @type Integer + */ + HIDE_DELAY: 1000, + + /** + * Flag used to trigger object tabs initialization first time object tabs are + * used. + * @type Boolean + */ + initialized: false, + + /** + * Will be set to true while initialization is in progress. + * @type Boolean + */ + initializing: false, + + /** + * Parameters for _showTab, to be called once initialization is complete. + */ + delayedShowParams: null, + + /** + * Randomly generated class to be used for visible object tabs on top of object. + * @type String + */ + objTabClassVisibleTop: null, + + /** + * Randomly generated class to be used for visible object tabs at the bottom of the object. + * @type String + */ + objTabClassVisibleBottom: null, + + /** + * Randomly generated class to be used for invisible object tabs. + * @type String + */ + objTabClassHidden: null, + + /** + * Document element the object tab is currently being displayed for. + * @type Element + */ + currentElement: null, + + /** + * Windows that the window event handler is currently registered for. + * @type Array of Window + */ + windowListeners: null, + + /** + * Panel element currently used as object tab. + * @type Element + */ + objtabElement: null, + + /** + * Time of previous position update. + * @type Integer + */ + prevPositionUpdate: 0, + + /** + * Timer used to update position of the object tab. + * @type nsITimer + */ + positionTimer: null, + + /** + * Timer used to delay hiding of the object tab. + * @type nsITimer + */ + hideTimer: null, + + /** + * Used when hideTimer is running, time when the tab should be hidden. + * @type Integer + */ + hideTargetTime: 0, + + /** + * Initializes object tabs (generates random classes and registers stylesheet). + */ + _initCSS: function() + { + function processCSSData(request) + { + if (onShutdown.done) + return; + + let data = request.responseText; + + let rnd = []; + let offset = "a".charCodeAt(0); + for (let i = 0; i < 60; i++) + rnd.push(offset + Math.random() * 26); + + this.objTabClassVisibleTop = String.fromCharCode.apply(String, rnd.slice(0, 20)); + this.objTabClassVisibleBottom = String.fromCharCode.apply(String, rnd.slice(20, 40)); + this.objTabClassHidden = String.fromCharCode.apply(String, rnd.slice(40, 60)); + + let {Utils} = require("utils"); + let url = Utils.makeURI("data:text/css," + encodeURIComponent(data.replace(/%%CLASSVISIBLETOP%%/g, this.objTabClassVisibleTop) + .replace(/%%CLASSVISIBLEBOTTOM%%/g, this.objTabClassVisibleBottom) + .replace(/%%CLASSHIDDEN%%/g, this.objTabClassHidden))); + Utils.styleService.loadAndRegisterSheet(url, Ci.nsIStyleSheetService.USER_SHEET); + onShutdown.add(function() + { + Utils.styleService.unregisterSheet(url, Ci.nsIStyleSheetService.USER_SHEET); + }); + + this.initializing = false; + this.initialized = true; + + if (this.delayedShowParams) + this._showTab.apply(this, this.delayedShowParams); + } + + this.delayedShowParams = arguments; + + if (!this.initializing) + { + this.initializing = true; + + // Load CSS asynchronously + try { + let request = new XMLHttpRequest(); + request.mozBackgroundRequest = true; + request.open("GET", "chrome://adblockplus/content/objtabs.css"); + request.overrideMimeType("text/plain"); + + request.addEventListener("load", processCSSData.bind(this, request), false); + request.send(null); + } + catch (e) + { + Cu.reportError(e); + this.initializing = false; + } + } + }, + + /** + * Called to show object tab for an element. + */ + showTabFor: function(/**Element*/ element) + { + // Object tabs aren't usable in Fennec + let {application} = require("info"); + if (application == "fennec" || application == "fennec2") + return; + + let {Prefs} = require("prefs"); + if (!Prefs.frameobjects) + return; + + if (this.hideTimer) + { + this.hideTimer.cancel(); + this.hideTimer = null; + } + + if (this.objtabElement) + this.objtabElement.style.setProperty("opacity", "1", "important"); + + if (this.currentElement != element) + { + this._hideTab(); + + let {Policy} = require("contentPolicy"); + let {RequestNotifier} = require("requestNotifier"); + let data = RequestNotifier.getDataForNode(element, true, Policy.type.OBJECT); + if (data) + { + if (this.initialized) + this._showTab(element, data[1]); + else + this._initCSS(element, data[1]); + } + } + }, + + /** + * Called to hide object tab for an element (actual hiding happens delayed). + */ + hideTabFor: function(/**Element*/ element) + { + if (element != this.currentElement || this.hideTimer) + return; + + this.hideTargetTime = Date.now() + this.HIDE_DELAY; + this.hideTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + this.hideTimer.init(this, 40, Ci.nsITimer.TYPE_REPEATING_SLACK); + }, + + /** + * Makes the tab element visible. + */ + _showTab: function(/**Element*/ element, /**RequestEntry*/ data) + { + let {UI} = require("ui"); + if (!UI.overlay) + return; + + let doc = element.ownerDocument.defaultView.top.document; + + this.objtabElement = doc.createElementNS("http://www.w3.org/1999/xhtml", "a"); + this.objtabElement.textContent = UI.overlay.attributes.objtabtext; + this.objtabElement.setAttribute("title", UI.overlay.attributes.objtabtooltip); + this.objtabElement.setAttribute("href", data.location); + this.objtabElement.setAttribute("class", this.objTabClassHidden); + this.objtabElement.style.setProperty("opacity", "1", "important"); + this.objtabElement.nodeData = data; + + this.currentElement = element; + + // Register paint listeners for the relevant windows + this.windowListeners = []; + let wnd = element.ownerDocument.defaultView; + while (wnd) + { + wnd.addEventListener("MozAfterPaint", objectWindowEventHandler, false); + this.windowListeners.push(wnd); + wnd = (wnd.parent != wnd ? wnd.parent : null); + } + + // Register mouse listeners on the object tab + this.objtabElement.addEventListener("mouseover", objectTabEventHander, false); + this.objtabElement.addEventListener("mouseout", objectTabEventHander, false); + this.objtabElement.addEventListener("click", objectTabEventHander, true); + + // Insert the tab into the document and adjust its position + doc.documentElement.appendChild(this.objtabElement); + if (!this.positionTimer) + { + this.positionTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + this.positionTimer.init(this, 200, Ci.nsITimer.TYPE_REPEATING_SLACK); + } + this._positionTab(); + }, + + /** + * Hides the tab element. + */ + _hideTab: function() + { + this.delayedShowParams = null; + + if (this.objtabElement) + { + // Prevent recursive calls via popuphidden handler + let objtab = this.objtabElement; + this.objtabElement = null; + this.currentElement = null; + + if (this.hideTimer) + { + this.hideTimer.cancel(); + this.hideTimer = null; + } + + if (this.positionTimer) + { + this.positionTimer.cancel(); + this.positionTimer = null; + } + + try { + objtab.parentNode.removeChild(objtab); + } catch (e) {} + objtab.removeEventListener("mouseover", objectTabEventHander, false); + objtab.removeEventListener("mouseout", objectTabEventHander, false); + objtab.nodeData = null; + + for (let wnd of this.windowListeners) + wnd.removeEventListener("MozAfterPaint", objectWindowEventHandler, false); + this.windowListeners = null; + } + }, + + /** + * Updates position of the tab element. + */ + _positionTab: function() + { + // Test whether element is still in document + let elementDoc = null; + try + { + elementDoc = this.currentElement.ownerDocument; + } catch (e) {} // Ignore "can't access dead object" error + if (!elementDoc || !this.currentElement.offsetWidth || !this.currentElement.offsetHeight || + !elementDoc.defaultView || !elementDoc.documentElement) + { + this._hideTab(); + return; + } + + let objRect = this._getElementPosition(this.currentElement); + + let className = this.objTabClassVisibleTop; + let left = objRect.right - this.objtabElement.offsetWidth; + let top = objRect.top - this.objtabElement.offsetHeight; + if (top < 0) + { + top = objRect.bottom; + className = this.objTabClassVisibleBottom; + } + + if (this.objtabElement.style.left != left + "px") + this.objtabElement.style.setProperty("left", left + "px", "important"); + if (this.objtabElement.style.top != top + "px") + this.objtabElement.style.setProperty("top", top + "px", "important"); + + if (this.objtabElement.getAttribute("class") != className) + this.objtabElement.setAttribute("class", className); + + this.prevPositionUpdate = Date.now(); + }, + + /** + * Calculates element's position relative to the top frame and considering + * clipping due to scrolling. + * @return {left: Number, top: Number, right: Number, bottom: Number} + */ + _getElementPosition: function(/**Element*/ element) + { + // Restrict rectangle coordinates by the boundaries of a window's client area + function intersectRect(rect, wnd) + { + // Cannot use wnd.innerWidth/Height because they won't account for scrollbars + let doc = wnd.document; + let wndWidth = doc.documentElement.clientWidth; + let wndHeight = doc.documentElement.clientHeight; + if (doc.compatMode == "BackCompat") // clientHeight will be bogus in quirks mode + wndHeight = Math.max(doc.documentElement.offsetHeight, doc.body.offsetHeight) - wnd.scrollMaxY - 1; + + rect.left = Math.max(rect.left, 0); + rect.top = Math.max(rect.top, 0); + rect.right = Math.min(rect.right, wndWidth); + rect.bottom = Math.min(rect.bottom, wndHeight); + } + + let rect = element.getBoundingClientRect(); + let wnd = element.ownerDocument.defaultView; + + let style = wnd.getComputedStyle(element, null); + let offsets = [ + parseFloat(style.borderLeftWidth) + parseFloat(style.paddingLeft), + parseFloat(style.borderTopWidth) + parseFloat(style.paddingTop), + parseFloat(style.borderRightWidth) + parseFloat(style.paddingRight), + parseFloat(style.borderBottomWidth) + parseFloat(style.paddingBottom) + ]; + + rect = {left: rect.left + offsets[0], top: rect.top + offsets[1], + right: rect.right - offsets[2], bottom: rect.bottom - offsets[3]}; + while (true) + { + intersectRect(rect, wnd); + + if (!wnd.frameElement) + break; + + // Recalculate coordinates to be relative to frame's parent window + let frameElement = wnd.frameElement; + wnd = frameElement.ownerDocument.defaultView; + + let frameRect = frameElement.getBoundingClientRect(); + let frameStyle = wnd.getComputedStyle(frameElement, null); + let relLeft = frameRect.left + parseFloat(frameStyle.borderLeftWidth) + parseFloat(frameStyle.paddingLeft); + let relTop = frameRect.top + parseFloat(frameStyle.borderTopWidth) + parseFloat(frameStyle.paddingTop); + + rect.left += relLeft; + rect.right += relLeft; + rect.top += relTop; + rect.bottom += relTop; + } + + return rect; + }, + + doBlock: function() + { + let {UI} = require("ui"); + let {Utils} = require("utils"); + let chromeWindow = Utils.getChromeWindow(this.currentElement.ownerDocument.defaultView); + UI.blockItem(chromeWindow, this.currentElement, this.objtabElement.nodeData); + }, + + /** + * Called whenever a timer fires. + */ + observe: function(/**nsISupport*/ subject, /**String*/ topic, /**String*/ data) + { + if (subject == this.positionTimer) + { + // Don't update position if it was already updated recently (via MozAfterPaint) + if (Date.now() - this.prevPositionUpdate > 100) + this._positionTab(); + } + else if (subject == this.hideTimer) + { + let now = Date.now(); + if (now >= this.hideTargetTime) + this._hideTab(); + else if (this.hideTargetTime - now < this.HIDE_DELAY / 2) + this.objtabElement.style.setProperty("opacity", (this.hideTargetTime - now) * 2 / this.HIDE_DELAY, "important"); + } + } +}; + +onShutdown.add(objTabs._hideTab.bind(objTabs)); + +/** + * Function called whenever the mouse enters or leaves an object. + */ +function objectMouseEventHander(/**Event*/ event) +{ + if (!event.isTrusted) + return; + + if (event.type == "mouseover") + objTabs.showTabFor(event.target); + else if (event.type == "mouseout") + objTabs.hideTabFor(event.target); +} + +/** + * Function called for paint events of the object tab window. + */ +function objectWindowEventHandler(/**Event*/ event) +{ + if (!event.isTrusted) + return; + + // Don't trigger update too often, avoid overusing CPU on frequent page updates + if (event.type == "MozAfterPaint" && Date.now() - objTabs.prevPositionUpdate > 20) + objTabs._positionTab(); +} + +/** + * Function called whenever the mouse enters or leaves an object tab. + */ +function objectTabEventHander(/**Event*/ event) +{ + if (onShutdown.done || !event.isTrusted) + return; + + if (event.type == "click" && event.button == 0) + { + event.preventDefault(); + event.stopPropagation(); + + objTabs.doBlock(); + } + else if (event.type == "mouseover") + objTabs.showTabFor(objTabs.currentElement); + else if (event.type == "mouseout") + objTabs.hideTabFor(objTabs.currentElement); +} +exports.objectMouseEventHander = objectMouseEventHander; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/prefs.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/prefs.js new file mode 100644 index 0000000..e1b6ae0 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/prefs.js @@ -0,0 +1,203 @@ +/* + * This file is part of the Adblock Plus build tools, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/Services.jsm"); +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +let {addonRoot, addonName} = require("info"); +let branchName = "extensions." + addonName + "."; +let branch = Services.prefs.getBranch(branchName); +let ignorePrefChanges = false; + +function init() +{ + // Load default preferences and set up properties for them + let defaultBranch = Services.prefs.getDefaultBranch(branchName); + let scope = + { + pref: function(pref, value) + { + if (pref.substr(0, branchName.length) != branchName) + { + Cu.reportError(new Error("Ignoring default preference " + pref + ", wrong branch.")); + return; + } + pref = pref.substr(branchName.length); + + let [getter, setter] = typeMap[typeof value]; + setter(defaultBranch, pref, value); + defineProperty(pref, false, getter, setter); + } + }; + Services.scriptloader.loadSubScript(addonRoot + "defaults/prefs.js", scope); + + // Add preference change observer + try + { + branch.QueryInterface(Ci.nsIPrefBranch2).addObserver("", Prefs, true); + onShutdown.add(function() branch.removeObserver("", Prefs)); + } + catch (e) + { + Cu.reportError(e); + } +} + +/** + * Sets up getter/setter on Prefs object for preference. + */ +function defineProperty(/**String*/ name, defaultValue, /**Function*/ readFunc, /**Function*/ writeFunc) +{ + let value = defaultValue; + Prefs["_update_" + name] = function() + { + try + { + value = readFunc(branch, name); + triggerListeners(name); + } + catch(e) + { + Cu.reportError(e); + } + }; + Prefs.__defineGetter__(name, function() value); + Prefs.__defineSetter__(name, function(newValue) + { + if (value == newValue) + return value; + + try + { + ignorePrefChanges = true; + writeFunc(branch, name, newValue); + value = newValue; + Services.prefs.savePrefFile(null); + triggerListeners(name); + } + catch(e) + { + Cu.reportError(e); + } + finally + { + ignorePrefChanges = false; + } + return value; + }); + Prefs["_update_" + name](); +} + +let listeners = []; +function triggerListeners(/**String*/ name) +{ + for (let i = 0; i < listeners.length; i++) + { + try + { + listeners[i](name); + } + catch(e) + { + Cu.reportError(e); + } + } +} + +/** + * Manages the preferences for an extension, object properties corresponding + * to extension's preferences are added automatically. Setting the property + * will automatically change the preference, external preference changes are + * also recognized automatically. + */ +let Prefs = exports.Prefs = +{ + /** + * Migrates an old preference to a new name. + */ + migrate: function(/**String*/ oldName, /**String*/ newName) + { + if (newName in this && Services.prefs.prefHasUserValue(oldName)) + { + let [getter, setter] = typeMap[typeof this[newName]]; + try + { + this[newName] = getter(Services.prefs, oldName); + } catch(e) {} + Services.prefs.clearUserPref(oldName); + } + }, + + /** + * Adds a preferences listener that will be fired whenever a preference + * changes. + */ + addListener: function(/**Function*/ listener) + { + if (listeners.indexOf(listener) < 0) + listeners.push(listener); + }, + + /** + * Removes a preferences listener. + */ + removeListener: function(/**Function*/ listener) + { + let index = listeners.indexOf(listener); + if (index >= 0) + listeners.splice(index, 1); + }, + + observe: function(subject, topic, data) + { + if (ignorePrefChanges || topic != "nsPref:changed") + return; + + if ("_update_" + data in this) + this["_update_" + data](); + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference, Ci.nsIObserver]) +}; + +// Getter/setter functions for difference preference types +let typeMap = +{ + boolean: [getBoolPref, setBoolPref], + number: [getIntPref, setIntPref], + string: [getCharPref, setCharPref], + object: [getJSONPref, setJSONPref] +}; + +function getIntPref(branch, pref) branch.getIntPref(pref) +function setIntPref(branch, pref, newValue) branch.setIntPref(pref, newValue) + +function getBoolPref(branch, pref) branch.getBoolPref(pref) +function setBoolPref(branch, pref, newValue) branch.setBoolPref(pref, newValue) + +function getCharPref(branch, pref) branch.getComplexValue(pref, Ci.nsISupportsString).data +function setCharPref(branch, pref, newValue) +{ + let str = Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString); + str.data = newValue; + branch.setComplexValue(pref, Ci.nsISupportsString, str); +} + +function getJSONPref(branch, pref) JSON.parse(getCharPref(branch, pref)) +function setJSONPref(branch, pref, newValue) setCharPref(branch, pref, JSON.stringify(newValue)) + +init(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/requestNotifier.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/requestNotifier.js new file mode 100644 index 0000000..2ee9ec3 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/requestNotifier.js @@ -0,0 +1,378 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Stores Adblock Plus data to be attached to a window. + */ + +Cu.import("resource://gre/modules/Services.jsm"); + +let {Utils} = require("utils"); +let {BlockingFilter, WhitelistFilter, ElemHideBase, ElemHideFilter, ElemHideException} = require("filterClasses"); + +let nodeData = new WeakMap(); +let windowStats = new WeakMap(); +let windowSelection = new WeakMap(); + +let setEntry, hasEntry, getEntry; +// Last issue(Bug 982561) preventing us from using WeakMap fixed for FF version 32 +if (Services.vc.compare(Utils.platformVersion, "32.0a1") >= 0) +{ + setEntry = (map, key, value) => map.set(key, value); + hasEntry = (map, key) => map.has(key); + getEntry = (map, key) => map.get(key); +} +else +{ + // Fall back to user data + let dataSeed = Math.random(); + let nodeDataProp = "abpNodeData" + dataSeed; + let windowStatsProp = "abpWindowStats" + dataSeed; + let windowSelectionProp = "abpWindowSelection" + dataSeed; + let getProp = function(map) + { + switch (map) + { + case nodeData: + return nodeDataProp; + case windowStats: + return windowStatsProp; + case windowSelection: + return windowSelectionProp; + default: + return null; + } + }; + + setEntry = (map, key, value) => key.setUserData(getProp(map), value, null); + hasEntry = (map, key) => key.getUserData(getProp(map)); + getEntry = (map, key) => key.getUserData(getProp(map)) || undefined; +} + +/** + * List of notifiers in use - these notifiers need to receive notifications on + * new requests. + * @type RequestNotifier[] + */ +let activeNotifiers = []; + +/** + * Creates a notifier object for a particular window. After creation the window + * will first be scanned for previously saved requests. Once that scan is + * complete only new requests for this window will be reported. + * @param {Window} wnd window to attach the notifier to + * @param {Function} listener listener to be called whenever a new request is found + * @param {Object} [listenerObj] "this" pointer to be used when calling the listener + */ +function RequestNotifier(wnd, listener, listenerObj) +{ + this.window = wnd; + this.listener = listener; + this.listenerObj = listenerObj || null; + activeNotifiers.push(this); + if (wnd) + this.startScan(wnd); + else + this.scanComplete = true; +} +exports.RequestNotifier = RequestNotifier; + +RequestNotifier.prototype = +{ + /** + * The window this notifier is associated with. + * @type Window + */ + window: null, + + /** + * The listener to be called when a new request is found. + * @type Function + */ + listener: null, + + /** + * "this" pointer to be used when calling the listener. + * @type Object + */ + listenerObj: null, + + /** + * Will be set to true once the initial window scan is complete. + * @type Boolean + */ + scanComplete: false, + + /** + * Shuts down the notifier once it is no longer used. The listener + * will no longer be called after that. + */ + shutdown: function() + { + delete this.window; + delete this.listener; + delete this.listenerObj; + + for (let i = activeNotifiers.length - 1; i >= 0; i--) + if (activeNotifiers[i] == this) + activeNotifiers.splice(i, 1); + }, + + /** + * Notifies listener about a new request. + */ + notifyListener: function(/**Window*/ wnd, /**Node*/ node, /**RequestEntry*/ entry) + { + this.listener.call(this.listenerObj, wnd, node, entry, this.scanComplete); + }, + + /** + * Number of currently posted scan events (will be 0 when the scan finishes + * running). + */ + eventsPosted: 0, + + /** + * Starts the initial scan of the window (will recurse into frames). + * @param {Window} wnd the window to be scanned + */ + startScan: function(wnd) + { + let doc = wnd.document; + let walker = doc.createTreeWalker(doc, Ci.nsIDOMNodeFilter.SHOW_ELEMENT, null, false); + + let process = function() + { + if (!this.listener) + return; + + let node = walker.currentNode; + let data = getEntry(nodeData, node); + if (typeof data != "undefined") + for (let k in data) + this.notifyListener(wnd, node, data[k]); + + if (walker.nextNode()) + Utils.runAsync(process); + else + { + // Done with the current window, start the scan for its frames + for (let i = 0; i < wnd.frames.length; i++) + this.startScan(wnd.frames[i]); + + this.eventsPosted--; + if (!this.eventsPosted) + { + this.scanComplete = true; + this.notifyListener(wnd, null, null); + } + } + }.bind(this); + + // Process each node in a separate event to allow other events to process + this.eventsPosted++; + Utils.runAsync(process); + } +}; + +RequestNotifier.storeSelection = function(/**Window*/ wnd, /**String*/ selection) +{ + setEntry(windowSelection, wnd.document, selection); +}; +RequestNotifier.getSelection = function(/**Window*/ wnd) /**String*/ +{ + if (hasEntry(windowSelection, wnd.document)) + return getEntry(windowSelection, wnd.document); + else + return null; +}; + +/** + * Attaches request data to a DOM node. + * @param {Node} node node to attach data to + * @param {Window} topWnd top-level window the node belongs to + * @param {Integer} contentType request type, one of the Policy.type.* constants + * @param {String} docDomain domain of the document that initiated the request + * @param {Boolean} thirdParty will be true if a third-party server has been requested + * @param {String} location the address that has been requested + * @param {Filter} filter filter applied to the request or null if none + */ +RequestNotifier.addNodeData = function(/**Node*/ node, /**Window*/ topWnd, /**Integer*/ contentType, /**String*/ docDomain, /**Boolean*/ thirdParty, /**String*/ location, /**Filter*/ filter) +{ + return new RequestEntry(node, topWnd, contentType, docDomain, thirdParty, location, filter); +} + +/** + * Retrieves the statistics for a window. + * @result {Object} Object with the properties items, blocked, whitelisted, hidden, filters containing statistics for the window (might be null) + */ +RequestNotifier.getWindowStatistics = function(/**Window*/ wnd) +{ + if (hasEntry(windowStats, wnd.document)) + return getEntry(windowStats, wnd.document); + else + return null; +} + +/** + * Retrieves the request entry associated with a DOM node. + * @param {Node} node + * @param {Boolean} noParent if missing or false, the search will extend to the parent nodes until one is found that has data associated with it + * @param {Integer} [type] request type to be looking for + * @param {String} [location] request location to be looking for + * @result {[Node, RequestEntry]} + * @static + */ +RequestNotifier.getDataForNode = function(node, noParent, type, location) +{ + while (node) + { + let data = getEntry(nodeData, node); + if (typeof data != "undefined") + { + // Look for matching entry + for (let k in data) + { + let entry = data[k]; + if ((typeof type == "undefined" || entry.type == type) && + (typeof location == "undefined" || entry.location == location)) + { + return [node, entry]; + } + } + } + + // If we don't have any match on this node then maybe its parent will do + if ((typeof noParent != "boolean" || !noParent) && + node.parentNode instanceof Ci.nsIDOMElement) + { + node = node.parentNode; + } + else + { + node = null; + } + } + + return null; +}; + +function RequestEntry(node, topWnd, contentType, docDomain, thirdParty, location, filter) +{ + this.type = contentType; + this.docDomain = docDomain; + this.thirdParty = thirdParty; + this.location = location; + this.filter = filter; + + this.attachToNode(node); + + // Update window statistics + if (!hasEntry(windowStats, topWnd.document)) + { + setEntry(windowStats, topWnd.document, { + items: 0, + hidden: 0, + blocked: 0, + whitelisted: 0, + filters: {} + }); + } + + let stats = getEntry(windowStats, topWnd.document); + if (!filter || !(filter instanceof ElemHideBase)) + stats.items++; + if (filter) + { + if (filter instanceof BlockingFilter) + stats.blocked++; + else if (filter instanceof WhitelistFilter || filter instanceof ElemHideException) + stats.whitelisted++; + else if (filter instanceof ElemHideFilter) + stats.hidden++; + + if (filter.text in stats.filters) + stats.filters[filter.text]++; + else + stats.filters[filter.text] = 1; + } + + // Notify listeners + for (let notifier of activeNotifiers) + if (!notifier.window || notifier.window == topWnd) + notifier.notifyListener(topWnd, node, this); +} +RequestEntry.prototype = +{ + /** + * Content type of the request (one of the nsIContentPolicy constants) + * @type Integer + */ + type: null, + /** + * Domain name of the requesting document + * @type String + */ + docDomain: null, + /** + * True if the request goes to a different domain than the domain of the containing document + * @type Boolean + */ + thirdParty: false, + /** + * Address being requested + * @type String + */ + location: null, + /** + * Filter that was applied to this request (if any) + * @type Filter + */ + filter: null, + /** + * String representation of the content type, e.g. "subdocument" + * @type String + */ + get typeDescr() + { + return require("contentPolicy").Policy.typeDescr[this.type]; + }, + /** + * User-visible localized representation of the content type, e.g. "frame" + * @type String + */ + get localizedDescr() + { + return require("contentPolicy").Policy.localizedDescr[this.type]; + }, + + /** + * Attaches this request object to a DOM node. + */ + attachToNode: function(/**Node*/ node) + { + let existingData = getEntry(nodeData, node); + if (typeof existingData == "undefined") + { + existingData = {}; + setEntry(nodeData, node, existingData); + } + + // Add this request to the node data + existingData[this.type + " " + this.location] = this; + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/subscriptionClasses.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/subscriptionClasses.js new file mode 100644 index 0000000..13dceaf --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/subscriptionClasses.js @@ -0,0 +1,597 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Definition of Subscription class and its subclasses. + */ + +Cu.import("resource://gre/modules/Services.jsm"); + +let {ActiveFilter, BlockingFilter, WhitelistFilter, ElemHideBase} = require("filterClasses"); +let {FilterNotifier} = require("filterNotifier"); + +/** + * Abstract base class for filter subscriptions + * + * @param {String} url download location of the subscription + * @param {String} [title] title of the filter subscription + * @constructor + */ +function Subscription(url, title) +{ + this.url = url; + this.filters = []; + if (title) + this._title = title; + else + { + let {Utils} = require("utils"); + this._title = Utils.getString("newGroup_title"); + } + Subscription.knownSubscriptions[url] = this; +} +exports.Subscription = Subscription; + +Subscription.prototype = +{ + /** + * Download location of the subscription + * @type String + */ + url: null, + + /** + * Filters contained in the filter subscription + * @type Array of Filter + */ + filters: null, + + _title: null, + _fixedTitle: false, + _disabled: false, + + /** + * Title of the filter subscription + * @type String + */ + get title() + { + return this._title; + }, + set title(value) + { + if (value != this._title) + { + let oldValue = this._title; + this._title = value; + FilterNotifier.triggerListeners("subscription.title", this, value, oldValue); + } + return this._title; + }, + + /** + * Determines whether the title should be editable + * @type Boolean + */ + get fixedTitle() + { + return this._fixedTitle; + }, + set fixedTitle(value) + { + if (value != this._fixedTitle) + { + let oldValue = this._fixedTitle; + this._fixedTitle = value; + FilterNotifier.triggerListeners("subscription.fixedTitle", this, value, oldValue); + } + return this._fixedTitle; + }, + + /** + * Defines whether the filters in the subscription should be disabled + * @type Boolean + */ + get disabled() + { + return this._disabled; + }, + set disabled(value) + { + if (value != this._disabled) + { + let oldValue = this._disabled; + this._disabled = value; + FilterNotifier.triggerListeners("subscription.disabled", this, value, oldValue); + } + return this._disabled; + }, + + /** + * Serializes the filter to an array of strings for writing out on the disk. + * @param {Array of String} buffer buffer to push the serialization results into + */ + serialize: function(buffer) + { + buffer.push("[Subscription]"); + buffer.push("url=" + this.url); + buffer.push("title=" + this._title); + if (this._fixedTitle) + buffer.push("fixedTitle=true"); + if (this._disabled) + buffer.push("disabled=true"); + }, + + serializeFilters: function(buffer) + { + for (let filter of this.filters) + buffer.push(filter.text.replace(/\[/g, "\\[")); + }, + + toString: function() + { + let buffer = []; + this.serialize(buffer); + return buffer.join("\n"); + } +}; + +/** + * Cache for known filter subscriptions, maps URL to subscription objects. + * @type Object + */ +Subscription.knownSubscriptions = {__proto__: null}; + +/** + * Returns a subscription from its URL, creates a new one if necessary. + * @param {String} url URL of the subscription + * @return {Subscription} subscription or null if the subscription couldn't be created + */ +Subscription.fromURL = function(url) +{ + if (url in Subscription.knownSubscriptions) + return Subscription.knownSubscriptions[url]; + + try + { + // Test URL for validity + url = Services.io.newURI(url, null, null).spec; + return new DownloadableSubscription(url, null); + } + catch (e) + { + return new SpecialSubscription(url); + } +} + +/** + * Deserializes a subscription + * + * @param {Object} obj map of serialized properties and their values + * @return {Subscription} subscription or null if the subscription couldn't be created + */ +Subscription.fromObject = function(obj) +{ + let result; + try + { + obj.url = Services.io.newURI(obj.url, null, null).spec; + + // URL is valid - this is a downloadable subscription + result = new DownloadableSubscription(obj.url, obj.title); + if ("downloadStatus" in obj) + result._downloadStatus = obj.downloadStatus; + if ("lastSuccess" in obj) + result.lastSuccess = parseInt(obj.lastSuccess) || 0; + if ("lastCheck" in obj) + result._lastCheck = parseInt(obj.lastCheck) || 0; + if ("expires" in obj) + result.expires = parseInt(obj.expires) || 0; + if ("softExpiration" in obj) + result.softExpiration = parseInt(obj.softExpiration) || 0; + if ("errors" in obj) + result._errors = parseInt(obj.errors) || 0; + if ("version" in obj) + result.version = parseInt(obj.version) || 0; + if ("requiredVersion" in obj) + { + let {addonVersion} = require("info"); + result.requiredVersion = obj.requiredVersion; + if (Services.vc.compare(result.requiredVersion, addonVersion) > 0) + result.upgradeRequired = true; + } + if ("homepage" in obj) + result._homepage = obj.homepage; + if ("lastDownload" in obj) + result._lastDownload = parseInt(obj.lastDownload) || 0; + } + catch (e) + { + // Invalid URL - custom filter group + if (!("title" in obj)) + { + // Backwards compatibility - titles and filter types were originally + // determined by group identifier. + if (obj.url == "~wl~") + obj.defaults = "whitelist"; + else if (obj.url == "~fl~") + obj.defaults = "blocking"; + else if (obj.url == "~eh~") + obj.defaults = "elemhide"; + if ("defaults" in obj) + { + let {Utils} = require("utils"); + obj.title = Utils.getString(obj.defaults + "Group_title"); + } + } + result = new SpecialSubscription(obj.url, obj.title); + if ("defaults" in obj) + result.defaults = obj.defaults.split(" "); + } + if ("fixedTitle" in obj) + result._fixedTitle = (obj.fixedTitle == "true"); + if ("privateMode" in obj) + result.privateMode = (obj.privateMode == "true"); + if ("disabled" in obj) + result._disabled = (obj.disabled == "true"); + + return result; +} + +/** + * Class for special filter subscriptions (user's filters) + * @param {String} url see Subscription() + * @param {String} [title] see Subscription() + * @constructor + * @augments Subscription + */ +function SpecialSubscription(url, title) +{ + Subscription.call(this, url, title); +} +exports.SpecialSubscription = SpecialSubscription; + +SpecialSubscription.prototype = +{ + __proto__: Subscription.prototype, + + /** + * Filter types that should be added to this subscription by default + * (entries should correspond to keys in SpecialSubscription.defaultsMap). + * @type Array of String + */ + defaults: null, + + /** + * Tests whether a filter should be added to this group by default + * @param {Filter} filter filter to be tested + * @return {Boolean} + */ + isDefaultFor: function(filter) + { + if (this.defaults && this.defaults.length) + { + for (let type of this.defaults) + { + if (filter instanceof SpecialSubscription.defaultsMap[type]) + return true; + if (!(filter instanceof ActiveFilter) && type == "blacklist") + return true; + } + } + + return false; + }, + + /** + * See Subscription.serialize() + */ + serialize: function(buffer) + { + Subscription.prototype.serialize.call(this, buffer); + if (this.defaults && this.defaults.length) + buffer.push("defaults=" + this.defaults.filter((type) => type in SpecialSubscription.defaultsMap).join(" ")); + if (this._lastDownload) + buffer.push("lastDownload=" + this._lastDownload); + } +}; + +SpecialSubscription.defaultsMap = { + __proto__: null, + "whitelist": WhitelistFilter, + "blocking": BlockingFilter, + "elemhide": ElemHideBase +}; + +/** + * Creates a new user-defined filter group. + * @param {String} [title] title of the new filter group + * @result {SpecialSubscription} + */ +SpecialSubscription.create = function(title) +{ + let url; + do + { + url = "~user~" + Math.round(Math.random()*1000000); + } while (url in Subscription.knownSubscriptions); + return new SpecialSubscription(url, title) +}; + +/** + * Creates a new user-defined filter group and adds the given filter to it. + * This group will act as the default group for this filter type. + */ +SpecialSubscription.createForFilter = function(/**Filter*/ filter) /**SpecialSubscription*/ +{ + let subscription = SpecialSubscription.create(); + subscription.filters.push(filter); + for (let type in SpecialSubscription.defaultsMap) + { + if (filter instanceof SpecialSubscription.defaultsMap[type]) + subscription.defaults = [type]; + } + if (!subscription.defaults) + subscription.defaults = ["blocking"]; + + let {Utils} = require("utils"); + subscription.title = Utils.getString(subscription.defaults[0] + "Group_title"); + return subscription; +}; + +/** + * Abstract base class for regular filter subscriptions (both internally and externally updated) + * @param {String} url see Subscription() + * @param {String} [title] see Subscription() + * @constructor + * @augments Subscription + */ +function RegularSubscription(url, title) +{ + Subscription.call(this, url, title || url); +} +exports.RegularSubscription = RegularSubscription; + +RegularSubscription.prototype = +{ + __proto__: Subscription.prototype, + + _homepage: null, + _lastDownload: 0, + + /** + * Filter subscription homepage if known + * @type String + */ + get homepage() + { + return this._homepage; + }, + set homepage(value) + { + if (value != this._homepage) + { + let oldValue = this._homepage; + this._homepage = value; + FilterNotifier.triggerListeners("subscription.homepage", this, value, oldValue); + } + return this._homepage; + }, + + /** + * Time of the last subscription download (in seconds since the beginning of the epoch) + * @type Number + */ + get lastDownload() + { + return this._lastDownload; + }, + set lastDownload(value) + { + if (value != this._lastDownload) + { + let oldValue = this._lastDownload; + this._lastDownload = value; + FilterNotifier.triggerListeners("subscription.lastDownload", this, value, oldValue); + } + return this._lastDownload; + }, + + /** + * See Subscription.serialize() + */ + serialize: function(buffer) + { + Subscription.prototype.serialize.call(this, buffer); + if (this._homepage) + buffer.push("homepage=" + this._homepage); + if (this._lastDownload) + buffer.push("lastDownload=" + this._lastDownload); + } +}; + +/** + * Class for filter subscriptions updated by externally (by other extension) + * @param {String} url see Subscription() + * @param {String} [title] see Subscription() + * @constructor + * @augments RegularSubscription + */ +function ExternalSubscription(url, title) +{ + RegularSubscription.call(this, url, title); +} +exports.ExternalSubscription = ExternalSubscription; + +ExternalSubscription.prototype = +{ + __proto__: RegularSubscription.prototype, + + /** + * See Subscription.serialize() + */ + serialize: function(buffer) + { + throw new Error("Unexpected call, external subscriptions should not be serialized"); + } +}; + +/** + * Class for filter subscriptions updated by externally (by other extension) + * @param {String} url see Subscription() + * @param {String} [title] see Subscription() + * @constructor + * @augments RegularSubscription + */ +function DownloadableSubscription(url, title) +{ + RegularSubscription.call(this, url, title); +} +exports.DownloadableSubscription = DownloadableSubscription; + +DownloadableSubscription.prototype = +{ + __proto__: RegularSubscription.prototype, + + _downloadStatus: null, + _lastCheck: 0, + _errors: 0, + + /** + * Status of the last download (ID of a string) + * @type String + */ + get downloadStatus() + { + return this._downloadStatus; + }, + set downloadStatus(value) + { + let oldValue = this._downloadStatus; + this._downloadStatus = value; + FilterNotifier.triggerListeners("subscription.downloadStatus", this, value, oldValue); + return this._downloadStatus; + }, + + /** + * Time of the last successful download (in seconds since the beginning of the + * epoch). + */ + lastSuccess: 0, + + /** + * Time when the subscription was considered for an update last time (in seconds + * since the beginning of the epoch). This will be used to increase softExpiration + * if the user doesn't use Adblock Plus for some time. + * @type Number + */ + get lastCheck() + { + return this._lastCheck; + }, + set lastCheck(value) + { + if (value != this._lastCheck) + { + let oldValue = this._lastCheck; + this._lastCheck = value; + FilterNotifier.triggerListeners("subscription.lastCheck", this, value, oldValue); + } + return this._lastCheck; + }, + + /** + * Hard expiration time of the filter subscription (in seconds since the beginning of the epoch) + * @type Number + */ + expires: 0, + + /** + * Soft expiration time of the filter subscription (in seconds since the beginning of the epoch) + * @type Number + */ + softExpiration: 0, + + /** + * Number of download failures since last success + * @type Number + */ + get errors() + { + return this._errors; + }, + set errors(value) + { + if (value != this._errors) + { + let oldValue = this._errors; + this._errors = value; + FilterNotifier.triggerListeners("subscription.errors", this, value, oldValue); + } + return this._errors; + }, + + /** + * Version of the subscription data retrieved on last successful download + * @type Number + */ + version: 0, + + /** + * Minimal Adblock Plus version required for this subscription + * @type String + */ + requiredVersion: null, + + /** + * Should be true if requiredVersion is higher than current Adblock Plus version + * @type Boolean + */ + upgradeRequired: false, + + /** + * Should be true if the Privatemode: header is set to true in the subscription + * @type Boolean + */ + privateMode: false, + + /** + * See Subscription.serialize() + */ + serialize: function(buffer) + { + RegularSubscription.prototype.serialize.call(this, buffer); + if (this.downloadStatus) + buffer.push("downloadStatus=" + this.downloadStatus); + if (this.lastSuccess) + buffer.push("lastSuccess=" + this.lastSuccess); + if (this.lastCheck) + buffer.push("lastCheck=" + this.lastCheck); + if (this.expires) + buffer.push("expires=" + this.expires); + if (this.softExpiration) + buffer.push("softExpiration=" + this.softExpiration); + if (this.errors) + buffer.push("errors=" + this.errors); + if (this.version) + buffer.push("version=" + this.version); + if (this.requiredVersion) + buffer.push("requiredVersion=" + this.requiredVersion); + if (this.privateMode) + buffer.push("privateMode=" + this.privateMode); + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/sync.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/sync.js new file mode 100644 index 0000000..05eeced --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/sync.js @@ -0,0 +1,459 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Firefox Sync integration + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let {FilterStorage} = require("filterStorage"); +let {FilterNotifier} = require("filterNotifier"); +let {Synchronizer} = require("synchronizer"); +let {Subscription, SpecialSubscription, DownloadableSubscription, ExternalSubscription} = require("subscriptionClasses"); +let {Filter, ActiveFilter} = require("filterClasses"); + +// Firefox Sync classes are set later in initEngine() +let Service, Engines, SyncEngine, Store, Tracker; + +/** + * ID of the only record stored + * @type String + */ +let filtersRecordID = "6fad6286-8207-46b6-aa39-8e0ce0bd7c49"; + +let Sync = exports.Sync = +{ + /** + * Will be set to true if/when Weave starts up. + * @type Boolean + */ + initialized: false, + + /** + * Whether Weave requested us to track changes. + * @type Boolean + */ + trackingEnabled: false, + + /** + * Returns Adblock Plus sync engine. + * @result Engine + */ + getEngine: function() + { + if (this.initialized) + return Engines.get("adblockplus"); + else + return null; + } +}; + +/** + * Listens to notifications from Sync service. + */ +let SyncServiceObserver = +{ + init: function() + { + try + { + let {Status, STATUS_DISABLED, CLIENT_NOT_CONFIGURED} = Cu.import("resource://services-sync/status.js", null); + Sync.initialized = Status.ready; + Sync.trackingEnabled = (Status.service != STATUS_DISABLED && Status.service != CLIENT_NOT_CONFIGURED); + } + catch (e) + { + return; + } + + if (Sync.initialized) + this.initEngine(); + else + Services.obs.addObserver(this, "weave:service:ready", true); + Services.obs.addObserver(this, "weave:engine:start-tracking", true); + Services.obs.addObserver(this, "weave:engine:stop-tracking", true); + + onShutdown.add(function() + { + try + { + Services.obs.removeObserver(this, "weave:service:ready"); + } catch (e) {} + Services.obs.removeObserver(this, "weave:engine:start-tracking"); + Services.obs.removeObserver(this, "weave:engine:stop-tracking"); + }.bind(this)); + }, + + initEngine: function() + { + ({Engines, SyncEngine, Store, Tracker} = Cu.import("resource://services-sync/engines.js")); + if (typeof Engines == "undefined") + { + ({Service} = Cu.import("resource://services-sync/service.js")); + Engines = Service.engineManager; + } + + ABPEngine.prototype.__proto__ = SyncEngine.prototype; + ABPStore.prototype.__proto__ = Store.prototype; + ABPTracker.prototype.__proto__ = Tracker.prototype; + + Engines.register(ABPEngine); + onShutdown.add(function() + { + Engines.unregister("adblockplus"); + }); + }, + + observe: function(subject, topic, data) + { + switch (topic) + { + case "weave:service:ready": + if (Sync.initialized) + return; + + this.initEngine(); + Sync.initialized = true; + break; + case "weave:engine:start-tracking": + Sync.trackingEnabled = true; + if (trackerInstance) + trackerInstance.startTracking(); + break; + case "weave:engine:stop-tracking": + Sync.trackingEnabled = false; + if (trackerInstance) + trackerInstance.stopTracking(); + break; + } + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]), +}; + +function ABPEngine() +{ + SyncEngine.call(this, "AdblockPlus", Service); +} +ABPEngine.prototype = +{ + _storeObj: ABPStore, + _trackerObj: ABPTracker, + version: 1, + + _reconcile: function(item) + { + // Always process server data, we will do the merging ourselves + return true; + } +}; + +function ABPStore(name, engine) +{ + Store.call(this, name, engine); +} +ABPStore.prototype = +{ + getAllIDs: function() + { + let result = {} + result[filtersRecordID] = true; + return result; + }, + + changeItemID: function(oldId, newId) + { + // This should not be called, our engine doesn't implement _findDupe + throw Cr.NS_ERROR_UNEXPECTED; + }, + + itemExists: function(id) + { + // Only one id exists so far + return (id == filtersRecordID); + }, + + createRecord: function(id, collection) + { + let record = new ABPEngine.prototype._recordObj(collection, id); + if (id == filtersRecordID) + { + record.cleartext = { + id: id, + subscriptions: [], + }; + for (let subscription of FilterStorage.subscriptions) + { + if (subscription instanceof ExternalSubscription) + continue; + + let subscriptionEntry = + { + url: subscription.url, + disabled: subscription.disabled + }; + if (subscription instanceof SpecialSubscription) + { + subscriptionEntry.filters = []; + for (let filter of subscription.filters) + { + let filterEntry = {text: filter.text}; + if (filter instanceof ActiveFilter) + filterEntry.disabled = filter.disabled; + subscriptionEntry.filters.push(filterEntry); + } + } + else + subscriptionEntry.title = subscription.title; + record.cleartext.subscriptions.push(subscriptionEntry); + } + + // Data sent, forget about local changes now + trackerInstance.clearPrivateChanges() + } + else + record.deleted = true; + + return record; + }, + + create: function(record) + { + // This should not be called because our record list doesn't change but + // call update just in case. + this.update(record); + }, + + update: function(record) + { + if (record.id != filtersRecordID) + return; + + this._log.trace("Merging in remote data"); + + let data = record.cleartext.subscriptions; + + // First make sure we have the same subscriptions on both sides + let seenSubscription = {__proto__: null}; + for (let remoteSubscription of data) + { + seenSubscription[remoteSubscription.url] = true; + if (remoteSubscription.url in FilterStorage.knownSubscriptions) + { + let subscription = FilterStorage.knownSubscriptions[remoteSubscription.url]; + if (!trackerInstance.didSubscriptionChange(remoteSubscription)) + { + // Only change local subscription if there were no changes, otherwise dismiss remote changes + subscription.disabled = remoteSubscription.disabled; + if (subscription instanceof DownloadableSubscription) + subscription.title = remoteSubscription.title; + } + } + else if (!trackerInstance.didSubscriptionChange(remoteSubscription)) + { + // Subscription was added remotely, add it locally as well + let subscription = Subscription.fromURL(remoteSubscription.url); + if (!subscription) + continue; + + subscription.disabled = remoteSubscription.disabled; + if (subscription instanceof DownloadableSubscription) + { + subscription.title = remoteSubscription.title; + FilterStorage.addSubscription(subscription); + Synchronizer.execute(subscription); + } + } + } + + for (let subscription of FilterStorage.subscriptions.slice()) + { + if (!(subscription.url in seenSubscription) && subscription instanceof DownloadableSubscription && !trackerInstance.didSubscriptionChange(subscription)) + { + // Subscription was removed remotely, remove it locally as well + FilterStorage.removeSubscription(subscription); + } + } + + // Now sync the custom filters + let seenFilter = {__proto__: null}; + for (let remoteSubscription of data) + { + if (!("filters" in remoteSubscription)) + continue; + + for (let remoteFilter of remoteSubscription.filters) + { + seenFilter[remoteFilter.text] = true; + + let filter = Filter.fromText(remoteFilter.text); + if (trackerInstance.didFilterChange(filter)) + continue; + + if (filter.subscriptions.some((subscription) => subscription instanceof SpecialSubscription)) + { + // Filter might have been changed remotely + if (filter instanceof ActiveFilter) + filter.disabled = remoteFilter.disabled; + } + else + { + // Filter was added remotely, add it locally as well + FilterStorage.addFilter(filter); + } + } + } + + for (let subscription of FilterStorage.subscriptions) + { + if (!(subscription instanceof SpecialSubscription)) + continue; + + for (let filter of subscription.filters.slice()) + { + if (!(filter.text in seenFilter) && !trackerInstance.didFilterChange(filter)) + { + // Filter was removed remotely, remove it locally as well + FilterStorage.removeFilter(filter); + } + } + } + + // Merge done, forget about local changes now + trackerInstance.clearPrivateChanges() + }, + + remove: function(record) + { + // Shouldn't be called but if it is - ignore + }, + + wipe: function() + { + this._log.trace("Got wipe command, removing all data"); + + for (let subscription of FilterStorage.subscriptions.slice()) + { + if (subscription instanceof DownloadableSubscription) + FilterStorage.removeSubscription(subscription); + else if (subscription instanceof SpecialSubscription) + { + for (let filter of subscription.filters.slice()) + FilterStorage.removeFilter(filter); + } + } + + // Data wiped, forget about local changes now + trackerInstance.clearPrivateChanges() + } +}; + +/** + * Hack to allow store to use the tracker - store tracker pointer globally. + */ +let trackerInstance = null; + +function ABPTracker(name, engine) +{ + Tracker.call(this, name, engine); + + this.privateTracker = new Tracker(name + ".private", engine); + trackerInstance = this; + + this.onChange = this.onChange.bind(this); + + if (Sync.trackingEnabled) + this.startTracking(); +} +ABPTracker.prototype = +{ + privateTracker: null, + + startTracking: function() + { + FilterNotifier.addListener(this.onChange); + }, + + stopTracking: function() + { + FilterNotifier.removeListener(this.onChange); + }, + + clearPrivateChanges: function() + { + this.privateTracker.clearChangedIDs(); + }, + + addPrivateChange: function(id) + { + // Ignore changes during syncing + if (this.ignoreAll) + return; + + this.addChangedID(filtersRecordID); + this.privateTracker.addChangedID(id); + this.score += 10; + }, + + didSubscriptionChange: function(subscription) + { + return ("subscription " + subscription.url) in this.privateTracker.changedIDs; + }, + + didFilterChange: function(filter) + { + return ("filter " + filter.text) in this.privateTracker.changedIDs; + }, + + onChange: function(action, item) + { + switch (action) + { + case "subscription.updated": + if ("oldSubscription" in item) + { + // Subscription moved to a new address + this.addPrivateChange("subscription " + item.url); + this.addPrivateChange("subscription " + item.oldSubscription.url); + } + else if (item instanceof SpecialSubscription) + { + // User's filters changed via Preferences window + for (let filter of item.filters) + this.addPrivateChange("filter " + filter.text); + for (let filter of item.oldFilters) + this.addPrivateChange("filter " + filter.text); + } + break; + case "subscription.added": + case "subscription.removed": + case "subscription.disabled": + case "subscription.title": + this.addPrivateChange("subscription " + item.url); + break; + case "filter.added": + case "filter.removed": + case "filter.disabled": + this.addPrivateChange("filter " + item.text); + break; + } + } +}; + +SyncServiceObserver.init(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/synchronizer.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/synchronizer.js new file mode 100644 index 0000000..b9f9e29 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/synchronizer.js @@ -0,0 +1,330 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Manages synchronization of filter subscriptions. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let {TimeLine} = require("timeline"); +let {Downloader, Downloadable, + MILLIS_IN_SECOND, MILLIS_IN_MINUTE, MILLIS_IN_HOUR, MILLIS_IN_DAY} = require("downloader"); +let {Filter, CommentFilter} = require("filterClasses"); +let {FilterStorage} = require("filterStorage"); +let {FilterNotifier} = require("filterNotifier"); +let {Prefs} = require("prefs"); +let {Subscription, DownloadableSubscription} = require("subscriptionClasses"); +let {Utils} = require("utils"); + +let INITIAL_DELAY = 6 * MILLIS_IN_MINUTE; +let CHECK_INTERVAL = 1 * MILLIS_IN_HOUR; +let DEFAULT_EXPIRATION_INTERVAL = 5 * MILLIS_IN_DAY; + +/** + * The object providing actual downloading functionality. + * @type Downloader + */ +let downloader = null; + +/** + * This object is responsible for downloading filter subscriptions whenever + * necessary. + * @class + */ +let Synchronizer = exports.Synchronizer = +{ + /** + * Called on module startup. + */ + init: function() + { + TimeLine.enter("Entered Synchronizer.init()"); + + downloader = new Downloader(this._getDownloadables.bind(this), INITIAL_DELAY, CHECK_INTERVAL); + onShutdown.add(function() + { + downloader.cancel(); + }); + + downloader.onExpirationChange = this._onExpirationChange.bind(this); + downloader.onDownloadStarted = this._onDownloadStarted.bind(this); + downloader.onDownloadSuccess = this._onDownloadSuccess.bind(this); + downloader.onDownloadError = this._onDownloadError.bind(this); + + TimeLine.leave("Synchronizer.init() done"); + }, + + /** + * Checks whether a subscription is currently being downloaded. + * @param {String} url URL of the subscription + * @return {Boolean} + */ + isExecuting: function(url) + { + return downloader.isDownloading(url); + }, + + /** + * Starts the download of a subscription. + * @param {DownloadableSubscription} subscription Subscription to be downloaded + * @param {Boolean} manual true for a manually started download (should not trigger fallback requests) + */ + execute: function(subscription, manual) + { + downloader.download(this._getDownloadable(subscription, manual)); + }, + + /** + * Yields Downloadable instances for all subscriptions that can be downloaded. + */ + _getDownloadables: function() + { + if (!Prefs.subscriptions_autoupdate) + return; + + for (let subscription of FilterStorage.subscriptions) + { + if (subscription instanceof DownloadableSubscription) + yield this._getDownloadable(subscription, false); + } + }, + + /** + * Creates a Downloadable instance for a subscription. + */ + _getDownloadable: function(/**Subscription*/ subscription, /**Boolean*/ manual) /**Downloadable*/ + { + let result = new Downloadable(subscription.url); + if (subscription.lastDownload != subscription.lastSuccess) + result.lastError = subscription.lastDownload * MILLIS_IN_SECOND; + result.lastCheck = subscription.lastCheck * MILLIS_IN_SECOND; + result.lastVersion = subscription.version; + result.softExpiration = subscription.softExpiration * MILLIS_IN_SECOND; + result.hardExpiration = subscription.expires * MILLIS_IN_SECOND; + result.manual = manual; + result.privateMode = subscription.privateMode; + return result; + }, + + _onExpirationChange: function(downloadable) + { + let subscription = Subscription.fromURL(downloadable.url); + subscription.lastCheck = Math.round(downloadable.lastCheck / MILLIS_IN_SECOND); + subscription.softExpiration = Math.round(downloadable.softExpiration / MILLIS_IN_SECOND); + subscription.expires = Math.round(downloadable.hardExpiration / MILLIS_IN_SECOND); + }, + + _onDownloadStarted: function(downloadable) + { + let subscription = Subscription.fromURL(downloadable.url); + FilterNotifier.triggerListeners("subscription.downloadStatus", subscription); + }, + + _onDownloadSuccess: function(downloadable, responseText, errorCallback, redirectCallback) + { + let lines = responseText.split(/[\r\n]+/); + let match = /\[Adblock(?:\s*Plus\s*([\d\.]+)?)?\]/i.exec(lines[0]); + if (!match) + return errorCallback("synchronize_invalid_data"); + let minVersion = match[1]; + + // Don't remove parameter comments immediately but add them to a list first, + // they need to be considered in the checksum calculation. + let remove = []; + let params = { + redirect: null, + homepage: null, + title: null, + version: null, + privatemode: null, + expires: null + }; + for (let i = 0; i < lines.length; i++) + { + let match = /^\s*!\s*(\w+)\s*:\s*(.*)/.exec(lines[i]); + if (match) + { + let keyword = match[1].toLowerCase(); + let value = match[2]; + if (keyword in params) + { + params[keyword] = value; + remove.push(i); + } + else if (keyword == "checksum") + { + lines.splice(i--, 1); + let checksum = Utils.generateChecksum(lines); + if (checksum && checksum != value.replace(/=+$/, "")) + return errorCallback("synchronize_checksum_mismatch"); + } + } + } + + if (params.redirect) + return redirectCallback(params.redirect); + + // Handle redirects + let subscription = Subscription.fromURL(downloadable.redirectURL || downloadable.url); + if (downloadable.redirectURL && downloadable.redirectURL != downloadable.url) + { + let oldSubscription = Subscription.fromURL(downloadable.url); + subscription.title = oldSubscription.title; + subscription.disabled = oldSubscription.disabled; + subscription.lastCheck = oldSubscription.lastCheck; + + let listed = (oldSubscription.url in FilterStorage.knownSubscriptions); + if (listed) + FilterStorage.removeSubscription(oldSubscription); + + delete Subscription.knownSubscriptions[oldSubscription.url]; + + if (listed) + FilterStorage.addSubscription(subscription); + } + + // The download actually succeeded + subscription.lastSuccess = subscription.lastDownload = Math.round(Date.now() / MILLIS_IN_SECOND); + subscription.downloadStatus = "synchronize_ok"; + subscription.errors = 0; + + // Remove lines containing parameters + for (let i = remove.length - 1; i >= 0; i--) + lines.splice(remove[i], 1); + + // Process parameters + if (params.homepage) + { + let uri = Utils.makeURI(params.homepage); + if (uri && (uri.scheme == "http" || uri.scheme == "https")) + subscription.homepage = uri.spec; + } + + if (params.privatemode) + { + subscription.privateMode = (params.privatemode == "true"); + } + + if (params.title) + { + subscription.title = params.title; + subscription.fixedTitle = true; + } + else + subscription.fixedTitle = false; + + subscription.version = (params.version ? parseInt(params.version, 10) : 0); + + let expirationInterval = DEFAULT_EXPIRATION_INTERVAL; + if (params.expires) + { + let match = /^(\d+)\s*(h)?/.exec(params.expires); + if (match) + { + let interval = parseInt(match[1], 10); + if (match[2]) + expirationInterval = interval * MILLIS_IN_HOUR; + else + expirationInterval = interval * MILLIS_IN_DAY; + } + } + + let [softExpiration, hardExpiration] = downloader.processExpirationInterval(expirationInterval); + subscription.softExpiration = Math.round(softExpiration / MILLIS_IN_SECOND); + subscription.expires = Math.round(hardExpiration / MILLIS_IN_SECOND); + + delete subscription.requiredVersion; + delete subscription.upgradeRequired; + if (minVersion) + { + let {addonVersion} = require("info"); + subscription.requiredVersion = minVersion; + if (Services.vc.compare(minVersion, addonVersion) > 0) + subscription.upgradeRequired = true; + } + + // Process filters + lines.shift(); + let filters = []; + for (let line of lines) + { + line = Filter.normalize(line); + if (line) + filters.push(Filter.fromText(line)); + } + + FilterStorage.updateSubscriptionFilters(subscription, filters); + + return undefined; + }, + + _onDownloadError: function(downloadable, downloadURL, error, channelStatus, responseStatus, redirectCallback) + { + let subscription = Subscription.fromURL(downloadable.url); + subscription.lastDownload = Math.round(Date.now() / MILLIS_IN_SECOND); + subscription.downloadStatus = error; + + // Request fallback URL if necessary - for automatic updates only + if (!downloadable.manual) + { + subscription.errors++; + + if (redirectCallback && subscription.errors >= Prefs.subscriptions_fallbackerrors && /^https?:\/\//i.test(subscription.url)) + { + subscription.errors = 0; + + let fallbackURL = Prefs.subscriptions_fallbackurl; + let {addonVersion} = require("info"); + fallbackURL = fallbackURL.replace(/%VERSION%/g, encodeURIComponent(addonVersion)); + fallbackURL = fallbackURL.replace(/%SUBSCRIPTION%/g, encodeURIComponent(subscription.url)); + fallbackURL = fallbackURL.replace(/%URL%/g, encodeURIComponent(downloadURL)); + fallbackURL = fallbackURL.replace(/%ERROR%/g, encodeURIComponent(error)); + fallbackURL = fallbackURL.replace(/%CHANNELSTATUS%/g, encodeURIComponent(channelStatus)); + fallbackURL = fallbackURL.replace(/%RESPONSESTATUS%/g, encodeURIComponent(responseStatus)); + + let request = new XMLHttpRequest(); + request.mozBackgroundRequest = true; + request.open("GET", fallbackURL); + request.overrideMimeType("text/plain"); + request.channel.loadFlags = request.channel.loadFlags | + request.channel.INHIBIT_CACHING | + request.channel.VALIDATE_ALWAYS; + request.addEventListener("load", function(ev) + { + if (onShutdown.done) + return; + + if (!(subscription.url in FilterStorage.knownSubscriptions)) + return; + + let match = /^(\d+)(?:\s+(\S+))?$/.exec(request.responseText); + if (match && match[1] == "301" && match[2] && /^https?:\/\//i.test(match[2])) // Moved permanently + redirectCallback(match[2]); + else if (match && match[1] == "410") // Gone + { + let data = "[Adblock]\n" + subscription.filters.map((f) => f.text).join("\n"); + redirectCallback("data:text/plain," + encodeURIComponent(data)); + } + }, false); + request.send(null); + } + } + }, +}; +Synchronizer.init(); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/timeline.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/timeline.js new file mode 100644 index 0000000..18c10fb --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/timeline.js @@ -0,0 +1,155 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Debugging module used for load time measurements. + */ + +let nestingCounter = 0; +let firstTimeStamp = null; +let lastTimeStamp = null; + +let asyncActions = {__proto__: null}; + +/** + * Time logging module, used to measure startup time of Adblock Plus (development builds only). + * @class + */ +let TimeLine = exports.TimeLine = { + /** + * Logs an event to console together with the time it took to get there. + */ + log: function(/**String*/ message, /**Boolean*/ _forceDisplay) + { + if (!_forceDisplay && nestingCounter <= 0) + return; + + let now = Date.now(); + let diff = lastTimeStamp ? Math.round(now - lastTimeStamp) : "first event"; + lastTimeStamp = now; + + // Indent message depending on current nesting level + for (let i = 0; i < nestingCounter; i++) + message = "* " + message; + + // Pad message with spaces + let padding = []; + for (let i = message.toString().length; i < 80; i++) + padding.push(" "); + dump("[" + now + "] ABP timeline: " + message + padding.join("") + "\t (" + diff + ")\n"); + }, + + /** + * Called to indicate that application entered a block that needs to be timed. + */ + enter: function(/**String*/ message) + { + if (nestingCounter <= 0) + firstTimeStamp = Date.now(); + + this.log(message, true); + nestingCounter = (nestingCounter <= 0 ? 1 : nestingCounter + 1); + }, + + /** + * Called when application exited a block that TimeLine.enter() was called for. + * @param {String} message message to be logged + * @param {String} [asyncAction] identifier of a pending async action + */ + leave: function(message, asyncAction) + { + if (typeof asyncAction != "undefined") + message += " (async action pending)"; + + nestingCounter--; + this.log(message, true); + + if (nestingCounter <= 0) + { + if (firstTimeStamp !== null) + dump("ABP timeline: Total time elapsed: " + Math.round(Date.now() - firstTimeStamp) + "\n"); + firstTimeStamp = null; + lastTimeStamp = null; + } + + if (typeof asyncAction != "undefined") + { + if (asyncAction in asyncActions) + dump("ABP timeline: Warning: Async action " + asyncAction + " already executing\n"); + asyncActions[asyncAction] = {start: Date.now(), total: 0}; + } + }, + + /** + * Called when the application starts processing of an async action. + */ + asyncStart: function(/**String*/ asyncAction) + { + if (asyncAction in asyncActions) + { + let action = asyncActions[asyncAction]; + if ("currentStart" in action) + dump("ABP timeline: Warning: Processing reentered for async action " + asyncAction + "\n"); + action.currentStart = Date.now(); + } + else + dump("ABP timeline: Warning: Async action " + asyncAction + " is unknown\n"); + }, + + /** + * Called when the application finishes processing of an async action. + */ + asyncEnd: function(/**String*/ asyncAction) + { + if (asyncAction in asyncActions) + { + let action = asyncActions[asyncAction]; + if ("currentStart" in action) + { + action.total += Date.now() - action.currentStart; + delete action.currentStart; + } + else + dump("ABP timeline: Warning: Processing not entered for async action " + asyncAction + "\n"); + } + else + dump("ABP timeline: Warning: Async action " + asyncAction + " is unknown\n"); + }, + + /** + * Called when an async action is done and its time can be logged. + */ + asyncDone: function(/**String*/ asyncAction) + { + if (asyncAction in asyncActions) + { + let action = asyncActions[asyncAction]; + let now = Date.now(); + let diff = now - action.start; + if ("currentStart" in action) + dump("ABP timeline: Warning: Still processing for async action " + asyncAction + "\n"); + + let message = "Async action " + asyncAction + " done"; + let padding = []; + for (let i = message.toString().length; i < 80; i++) + padding.push(" "); + dump("[" + now + "] ABP timeline: " + message + padding.join("") + "\t (" + action.total + "/" + diff + ")\n"); + } + else + dump("ABP timeline: Warning: Async action " + asyncAction + " is unknown\n"); + } +}; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/ui.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/ui.js new file mode 100644 index 0000000..d7551c2 --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/ui.js @@ -0,0 +1,1973 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); + +let {Utils} = require("utils"); +let {Prefs} = require("prefs"); +let {Policy} = require("contentPolicy"); +let {FilterStorage} = require("filterStorage"); +let {FilterNotifier} = require("filterNotifier"); +let {RequestNotifier} = require("requestNotifier"); +let {Filter} = require("filterClasses"); +let {Subscription, SpecialSubscription, DownloadableSubscription} = require("subscriptionClasses"); +let {Synchronizer} = require("synchronizer"); +let {KeySelector} = require("keySelector"); +let {Notification} = require("notification"); +let {initAntiAdblockNotification} = require("antiadblockInit"); + +let CustomizableUI = null; + +/** + * Filter corresponding with "disable on site" menu item (set in fillIconMent()). + * @type Filter + */ +let siteWhitelist = null; +/** + * Filter corresponding with "disable on site" menu item (set in fillIconMenu()). + * @type Filter + */ +let pageWhitelist = null; + +/** + * Window containing the detached list of blockable items. + * @type Window + */ +let detachedBottombar = null; + +/** + * Object initializing add-on options, observes add-on manager notifications + * about add-on options being opened. + * @type nsIObserver + */ +let optionsObserver = +{ + init: function() + { + Services.obs.addObserver(this, "addon-options-displayed", true); + onShutdown.add(function() + { + Services.obs.removeObserver(this, "addon-options-displayed"); + }.bind(this)); + }, + + /** + * Initializes options in add-on manager when they show up. + */ + initOptionsDoc: function(/**Document*/ doc) + { + function hideElement(id, hide) + { + let element = doc.getElementById(id); + if (element) + element.collapsed = hide; + } + function setChecked(id, checked) + { + let element = doc.getElementById(id); + if (element) + element.value = checked; + } + function addCommandHandler(id, handler) + { + let element = doc.getElementById(id); + if (element) + element.addEventListener("command", handler, false); + } + + Utils.splitAllLabels(doc); + + addCommandHandler("adblockplus-filters", UI.openFiltersDialog.bind(UI)); + + let {Sync} = require("sync"); + let syncEngine = Sync.getEngine(); + hideElement("adblockplus-sync", !syncEngine); + + let {defaultToolbarPosition, statusbarPosition} = require("appSupport"); + let hasToolbar = defaultToolbarPosition; + let hasStatusBar = statusbarPosition; + + hideElement("adblockplus-showintoolbar", !hasToolbar); + hideElement("adblockplus-showinstatusbar", !hasStatusBar); + + let checkbox = doc.querySelector("setting[type=bool]"); + if (checkbox) + initCheckboxes(); + + function initCheckboxes() + { + if (!("value" in checkbox)) + { + // XBL bindings didn't apply yet (bug 708397), try later + Utils.runAsync(initCheckboxes); + return; + } + + setChecked("adblockplus-savestats", Prefs.savestats); + addCommandHandler("adblockplus-savestats", function() + { + UI.toggleSaveStats(doc.defaultView); + this.value = Prefs.savestats; + }); + + let hasAcceptableAds = FilterStorage.subscriptions.some((subscription) => subscription instanceof DownloadableSubscription && + subscription.url == Prefs.subscriptions_exceptionsurl); + setChecked("adblockplus-acceptableAds", hasAcceptableAds); + addCommandHandler("adblockplus-acceptableAds", function() + { + this.value = UI.toggleAcceptableAds(); + }); + + setChecked("adblockplus-sync", syncEngine && syncEngine.enabled); + addCommandHandler("adblockplus-sync", function() + { + this.value = UI.toggleSync(); + }); + + setChecked("adblockplus-showintoolbar", UI.isToolbarIconVisible()); + addCommandHandler("adblockplus-showintoolbar", function() + { + UI.toggleToolbarIcon(); + this.value = UI.isToolbarIconVisible(); + }); + + let list = doc.getElementById("adblockplus-subscription-list"); + if (list) + { + // Load subscriptions data + let request = new XMLHttpRequest(); + request.mozBackgroundRequest = true; + request.open("GET", "chrome://adblockplus/content/ui/subscriptions.xml"); + request.addEventListener("load", function() + { + if (onShutdown.done) + return; + + let currentSubscription = FilterStorage.subscriptions.filter((subscription) => subscription instanceof DownloadableSubscription && + subscription.url != Prefs.subscriptions_exceptionsurl); + currentSubscription = (currentSubscription.length ? currentSubscription[0] : null); + + let subscriptions =request.responseXML.getElementsByTagName("subscription"); + for (let i = 0; i < subscriptions.length; i++) + { + let item = subscriptions[i]; + let url = item.getAttribute("url"); + if (!url) + continue; + + list.appendItem(item.getAttribute("title"), url, null); + if (currentSubscription && url == currentSubscription.url) + list.selectedIndex = list.itemCount - 1; + + if (currentSubscription && list.selectedIndex < 0) + { + list.appendItem(currentSubscription.title, currentSubscription.url, null); + list.selectedIndex = list.itemCount - 1; + } + } + + var listener = function() + { + if (list.value) + UI.setSubscription(list.value, list.label); + } + list.addEventListener("command", listener, false); + + // xul:menulist in Fennec is broken and doesn't trigger any events + // on selection. Have to detect selectIndex changes instead. + // See https://bugzilla.mozilla.org/show_bug.cgi?id=891736 + list.watch("selectedIndex", function(prop, oldval, newval) + { + Utils.runAsync(listener); + return newval; + }); + }, false); + request.send(); + } + } + }, + + observe: function(subject, topic, data) + { + let {addonID} = require("info") + if (data != addonID) + return; + + this.initOptionsDoc(subject.QueryInterface(Ci.nsIDOMDocument)); + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]) +}; +optionsObserver.init(); + +/** + * Session restore observer instance, stored to prevent it from being garbage + * collected. + * @type SessionRestoreObserver + */ +let sessionRestoreObserver = null; + +/** + * Observer waiting for the browsing session to be restored on startup. + */ +function SessionRestoreObserver(/**function*/ callback) +{ + sessionRestoreObserver = this; + + this.callback = callback; + Services.obs.addObserver(this, "sessionstore-windows-restored", true); + + // Just in case, don't wait longer than 5 seconds + this.timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + this.timer.init(this, 5000, Ci.nsITimer.TYPE_ONE_SHOT); +} +SessionRestoreObserver.prototype = +{ + callback: null, + timer: null, + observe: function(subject, topic, data) + { + Services.obs.removeObserver(this, "sessionstore-windows-restored"); + sessionRestoreObserver = null; + + this.timer.cancel(); + this.timer = null; + + if (!onShutdown.done) + this.callback(); + }, + QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]) +} + +/** + * Timer used to delay notification handling. + * @type nsITimer + */ +let notificationTimer = null; + +let UI = exports.UI = +{ + /** + * Gets called on startup, initializes UI integration. + */ + init: function() + { + // We should call initDone once both overlay and filters are loaded + let overlayLoaded = false; + let filtersLoaded = false; + let sessionRestored = false; + + // Start loading overlay + let request = new XMLHttpRequest(); + request.mozBackgroundRequest = true; + request.open("GET", "chrome://adblockplus/content/ui/overlay.xul"); + request.addEventListener("load", function(event) + { + if (onShutdown.done) + return; + + this.processOverlay(request.responseXML.documentElement); + + // Don't wait for the rest of the startup sequence, add icon already + this.addToolbarButton(); + + overlayLoaded = true; + if (overlayLoaded && filtersLoaded && sessionRestored) + this.initDone(); + }.bind(this), false); + request.send(null); + + // Wait for filters to load + if (FilterStorage._loading) + { + let listener = function(action) + { + if (action != "load") + return; + + FilterNotifier.removeListener(listener); + filtersLoaded = true; + if (overlayLoaded && filtersLoaded && sessionRestored) + this.initDone(); + }.bind(this); + FilterNotifier.addListener(listener); + } + else + filtersLoaded = true; + + // Initialize UI after the session is restored + let window = this.currentWindow; + if (!window && "nsISessionStore" in Ci) + { + // No application windows yet, the application must be starting up. Wait + // for session to be restored before initializing our UI. + new SessionRestoreObserver(function() + { + sessionRestored = true; + if (overlayLoaded && filtersLoaded && sessionRestored) + this.initDone(); + }.bind(this)); + } + else + sessionRestored = true; + }, + + /** + * Provesses overlay document data and initializes overlay property. + */ + processOverlay: function(/**Element*/ root) + { + Utils.splitAllLabels(root); + + let specialElements = {"abp-status-popup": true, "abp-status": true, "abp-toolbarbutton": true, "abp-menuitem": true, "abp-bottombar-container": true}; + + this.overlay = {all: []}; + + // Remove whitespace text nodes + let walker = root.ownerDocument.createTreeWalker( + root, Ci.nsIDOMNodeFilter.SHOW_TEXT, + (node) => !/\S/.test(node.nodeValue), false + ); + let whitespaceNodes = []; + while (walker.nextNode()) + whitespaceNodes.push(walker.currentNode); + + for (let i = 0; i < whitespaceNodes.length; i++) + whitespaceNodes[i].parentNode.removeChild(whitespaceNodes[i]); + + // Put overlay elements into appropriate fields + while (root.firstElementChild) + { + let child = root.firstElementChild; + if (child.getAttribute("id") in specialElements) + this.overlay[child.getAttribute("id")] = child; + else + this.overlay.all.push(child); + root.removeChild(child); + } + + // Read overlay attributes + this.overlay.attributes = {}; + for (let i = 0; i < root.attributes.length; i++) + this.overlay.attributes[root.attributes[i].name] = root.attributes[i].value; + + // Copy context menu into the toolbar icon and Tools menu item + function fixId(element, newId) + { + if (element.hasAttribute("id")) + element.setAttribute("id", element.getAttribute("id").replace("abp-status", newId)); + + for (let i = 0, len = element.children.length; i < len; i++) + fixId(element.children[i], newId); + + return element; + } + + if ("abp-status-popup" in this.overlay) + { + let menuSource = this.overlay["abp-status-popup"]; + delete this.overlay["abp-status-popup"]; + + if (this.overlay.all.length) + this.overlay.all[0].appendChild(menuSource); + if ("abp-toolbarbutton" in this.overlay) + this.overlay["abp-toolbarbutton"].appendChild(fixId(menuSource.cloneNode(true), "abp-toolbar")); + if ("abp-menuitem" in this.overlay) + this.overlay["abp-menuitem"].appendChild(fixId(menuSource.cloneNode(true), "abp-menuitem")); + } + }, + + /** + * Gets called once the initialization is finished and Adblock Plus elements + * can be added to the UI. + */ + initDone: function() + { + // The icon might be added already, make sure its state is correct + this.updateState(); + + // Listen for pref and filters changes + Prefs.addListener(function(name) + { + if (name == "enabled" || name == "defaulttoolbaraction" || name == "defaultstatusbaraction") + this.updateState(); + else if (name == "showinstatusbar") + { + for (let window in this.applicationWindows) + this.updateStatusbarIcon(window); + } + }.bind(this)); + FilterNotifier.addListener(function(action) + { + if (/^(filter|subscription)\.(added|removed|disabled|updated)$/.test(action) || action == "load") + this.updateState(); + }.bind(this)); + + notificationTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + notificationTimer.initWithCallback(this.showNextNotification.bind(this), + 3 * 60 * 1000, Ci.nsITimer.TYPE_ONE_SHOT); + onShutdown.add(() => notificationTimer.cancel()); + + // Add "anti-adblock messages" notification + initAntiAdblockNotification(); + + let documentCreationObserver = { + observe: function(subject, topic, data) + { + if (!(subject instanceof Ci.nsIDOMWindow)) + return; + + this.showNextNotification(subject.location.href); + }.bind(UI) + }; + Services.obs.addObserver(documentCreationObserver, "content-document-global-created", false); + onShutdown.add(function() + { + Services.obs.removeObserver(documentCreationObserver, "content-document-global-created", false); + }); + + // Execute first-run actions if a window is open already, otherwise it + // will happen in applyToWindow() when a window is opened. + this.firstRunActions(this.currentWindow); + }, + + addToolbarButton: function() + { + let {WindowObserver} = require("windowObserver"); + new WindowObserver(this); + + let {defaultToolbarPosition} = require("appSupport"); + if ("abp-toolbarbutton" in this.overlay && defaultToolbarPosition) + { + try + { + ({CustomizableUI}) = Cu.import("resource:///modules/CustomizableUI.jsm", null); + } + catch (e) + { + // No built-in CustomizableUI API, use our own implementation. + ({CustomizableUI}) = require("customizableUI"); + } + + CustomizableUI.createWidget({ + id: "abp-toolbarbutton", + type: "custom", + positionAttribute: "abp-iconposition", // For emulation only + defaultArea: defaultToolbarPosition.parent, + defaultBefore: defaultToolbarPosition.before, // For emulation only + defaultAfter: defaultToolbarPosition.after, // For emulation only + removable: true, + onBuild: function(document) + { + let node = document.importNode(this.overlay["abp-toolbarbutton"], true); + node.addEventListener("click", this.onIconClick, false); + node.addEventListener("command", this.onIconClick, false); + this.updateIconState(document.defaultView, node); + return node; + }.bind(this), + onAdded: function(node) + { + // For emulation only, this callback isn't part of the official + // CustomizableUI API. + this.updateIconState(node.ownerDocument.defaultView, node); + }.bind(this), + }); + onShutdown.add(CustomizableUI.destroyWidget.bind(CustomizableUI, "abp-toolbarbutton")); + } + }, + + firstRunActions: function(window) + { + if (this.firstRunDone || !window || FilterStorage._loading) + return; + + this.firstRunDone = true; + + let {addonVersion} = require("info"); + let prevVersion = Prefs.currentVersion; + if (prevVersion != addonVersion) + { + Prefs.currentVersion = addonVersion; + this.addSubscription(window, prevVersion); + } + }, + + /** + * Will be set to true after the check whether first-run actions should run + * has been performed. + * @type Boolean + */ + firstRunDone: false, + + /** + * Initializes Adblock Plus UI in a window. + */ + applyToWindow: function(/**Window*/ window, /**Boolean*/ noDelay) + { + let {delayInitialization, isKnownWindow, getBrowser, addBrowserLocationListener, addBrowserClickListener} = require("appSupport"); + if (window.document.documentElement.id == "CustomizeToolbarWindow" || isKnownWindow(window)) + { + // Add style processing instruction + let style = window.document.createProcessingInstruction("xml-stylesheet", 'class="adblockplus-node" href="chrome://adblockplus/skin/overlay.css" type="text/css"'); + window.document.insertBefore(style, window.document.firstChild); + } + + if (!isKnownWindow(window)) + return; + + // Thunderbird windows will not be initialized at this point, execute + // delayed + if (!noDelay && delayInitialization) + { + Utils.runAsync(this.applyToWindow.bind(this, window, true)); + return; + } + + // Add general items to the document + for (let i = 0; i < this.overlay.all.length; i++) + window.document.documentElement.appendChild(this.overlay.all[i].cloneNode(true)); + + // Add status bar icon + this.updateStatusbarIcon(window); + + // Add tools menu item + if ("abp-menuitem" in this.overlay) + { + let {toolsMenu} = require("appSupport"); + let [parent, before] = this.resolveInsertionPoint(window, toolsMenu); + if (parent) + parent.insertBefore(this.overlay["abp-menuitem"].cloneNode(true), before); + } + + // Attach event handlers + for (let i = 0; i < eventHandlers.length; i++) + { + let [id, event, handler] = eventHandlers[i]; + let element = window.document.getElementById(id); + if (element) + element.addEventListener(event, handler.bind(null, window), false); + } + window.addEventListener("popupshowing", this.onPopupShowing, false); + window.addEventListener("keypress", this.onKeyPress, false); + + addBrowserLocationListener(window, function() + { + this.updateIconState(window, window.document.getElementById("abp-status")); + this.updateIconState(window, window.document.getElementById("abp-toolbarbutton")); + }.bind(this)); + addBrowserClickListener(window, this.onBrowserClick.bind(this, window)); + + window.document.getElementById("abp-notification-close").addEventListener("command", function(event) + { + window.document.getElementById("abp-notification").hidePopup(); + }, false); + + // First-run actions? + this.firstRunActions(window); + + // Some people actually switch off browser.frames.enabled and are surprised + // that things stop working... + window.QueryInterface(Ci.nsIInterfaceRequestor) + .getInterface(Ci.nsIWebNavigation) + .QueryInterface(Ci.nsIDocShell) + .allowSubframes = true; + }, + + /** + * Removes Adblock Plus UI from a window. + */ + removeFromWindow: function(/**Window*/ window) + { + let {isKnownWindow, removeBrowserLocationListeners, removeBrowserClickListeners} = require("appSupport"); + if (window.document.documentElement.id == "CustomizeToolbarWindow" || isKnownWindow(window)) + { + // Remove style processing instruction + for (let child = window.document.firstChild; child; child = child.nextSibling) + if (child.nodeType == child.PROCESSING_INSTRUCTION_NODE && child.data.indexOf("adblockplus-node") >= 0) + child.parentNode.removeChild(child); + } + + if (!isKnownWindow(window)) + return; + + for (let id in this.overlay) + { + if (id == "all") + { + let list = this.overlay[id]; + for (let i = 0; i < list.length; i++) + { + let clone = window.document.getElementById(list[i].getAttribute("id")); + if (clone) + clone.parentNode.removeChild(clone); + } + } + else + { + let clone = window.document.getElementById(id); + if (clone) + clone.parentNode.removeChild(clone); + } + } + + window.removeEventListener("popupshowing", this.onPopupShowing, false); + window.removeEventListener("keypress", this.onKeyPress, false); + removeBrowserLocationListeners(window); + removeBrowserClickListeners(window); + }, + + /** + * The overlay information to be used when adding elements to the UI. + * @type Object + */ + overlay: null, + + /** + * Iterator for application windows that Adblock Plus should apply to. + * @type Iterator + */ + get applicationWindows() + { + let {isKnownWindow} = require("appSupport"); + + let enumerator = Services.wm.getZOrderDOMWindowEnumerator(null, true); + if (!enumerator.hasMoreElements()) + { + // On Linux the list returned will be empty, see bug 156333. Fall back to random order. + enumerator = Services.wm.getEnumerator(null); + } + while (enumerator.hasMoreElements()) + { + let window = enumerator.getNext().QueryInterface(Ci.nsIDOMWindow); + if (isKnownWindow(window)) + yield window; + } + }, + + /** + * Returns the top-most application window or null if none exists. + * @type Window + */ + get currentWindow() + { + for (let window of this.applicationWindows) + return window; + return null; + }, + + /** + * Opens a URL in the browser window. If browser window isn't passed as parameter, + * this function attempts to find a browser window. If an event is passed in + * it should be passed in to the browser if possible (will e.g. open a tab in + * background depending on modifiers keys). + */ + loadInBrowser: function(/**String*/ url, /**Window*/ currentWindow, /**Event*/ event) + { + if (!currentWindow) + currentWindow = this.currentWindow; + + let {addTab} = require("appSupport"); + if (currentWindow && addTab) + addTab(currentWindow, url, event); + else + { + let protocolService = Cc["@mozilla.org/uriloader/external-protocol-service;1"].getService(Ci.nsIExternalProtocolService); + protocolService.loadURI(Services.io.newURI(url, null, null), null); + } + }, + + /** + * Opens a pre-defined documentation link in the browser window. This will + * send the UI language to adblockplus.org so that the correct language + * version of the page can be selected. + */ + loadDocLink: function(/**String*/ linkID, /**Window*/ window) + { + let link = Utils.getDocLink(linkID); + this.loadInBrowser(link, window); + }, + + + /** + * Brings up the filter composer dialog to block an item. + */ + blockItem: function(/**Window*/ window, /**Node*/ node, /**RequestEntry*/ item) + { + if (!item) + return; + + window.openDialog("chrome://adblockplus/content/ui/composer.xul", "_blank", "chrome,centerscreen,resizable,dialog=no,dependent", [node], item); + }, + + /** + * Opens filter preferences dialog or focuses an already open dialog. + * @param {Filter} [filter] filter to be selected + */ + openFiltersDialog: function(filter) + { + let existing = Services.wm.getMostRecentWindow("abp:filters"); + if (existing) + { + try + { + existing.focus(); + } catch (e) {} + if (filter) + existing.SubscriptionActions.selectFilter(filter); + } + else + { + Services.ww.openWindow(null, "chrome://adblockplus/content/ui/filters.xul", "_blank", "chrome,centerscreen,resizable,dialog=no", {wrappedJSObject: filter}); + } + }, + + /** + * Opens report wizard for the current page. + */ + openReportDialog: function(/**Window*/ window) + { + let wnd = Services.wm.getMostRecentWindow("abp:sendReport"); + if (wnd) + wnd.focus(); + else + { + let uri = this.getCurrentLocation(window); + if (uri) + { + let {getBrowser} = require("appSupport"); + window.openDialog("chrome://adblockplus/content/ui/sendReport.xul", "_blank", "chrome,centerscreen,resizable=no", getBrowser(window).contentWindow, uri); + } + } + }, + + /** + * Opens our contribution page. + */ + openContributePage: function(/**Window*/ window) + { + this.loadDocLink("contribute", window); + }, + + /** + * Executed on first run, adds a filter subscription and notifies that user + * about that. + */ + addSubscription: function(/**Window*/ window, /**String*/ prevVersion) + { + // Add "acceptable ads" subscription for new users and user updating from old ABP versions. + // Don't add it for users of privacy subscriptions (use a hardcoded list for now). + let addAcceptable = (Services.vc.compare(prevVersion, "2.0") < 0); + let privacySubscriptions = { + "https://easylist-downloads.adblockplus.org/easyprivacy+easylist.txt": true, + "https://easylist-downloads.adblockplus.org/easyprivacy.txt": true, + "https://secure.fanboy.co.nz/fanboy-tracking.txt": true, + "https://fanboy-adblock-list.googlecode.com/hg/fanboy-adblocklist-stats.txt": true, + "https://bitbucket.org/fanboy/fanboyadblock/raw/tip/fanboy-adblocklist-stats.txt": true, + "https://hg01.codeplex.com/fanboyadblock/raw-file/tip/fanboy-adblocklist-stats.txt": true, + "https://adversity.googlecode.com/hg/Adversity-Tracking.txt": true + }; + if (FilterStorage.subscriptions.some((subscription) => subscription.url == Prefs.subscriptions_exceptionsurl || subscription.url in privacySubscriptions)) + addAcceptable = false; + + // Don't add subscription if the user has a subscription already + let addSubscription = true; + //if (FilterStorage.subscriptions.some((subscription) => subscription instanceof DownloadableSubscription && subscription.url != Prefs.subscriptions_exceptionsurl)) + addSubscription = false; + + // If this isn't the first run, only add subscription if the user has no custom filters + if (addSubscription && Services.vc.compare(prevVersion, "0.0") > 0) + { + if (FilterStorage.subscriptions.some((subscription) => subscription.url != Prefs.subscriptions_exceptionsurl && subscription.filters.length)) + addSubscription = false; + } + + // Add "acceptable ads" subscription + if (false) + { + let subscription = Subscription.fromURL(Prefs.subscriptions_exceptionsurl); + if (subscription) + { + subscription.title = "Allow non-intrusive advertising"; + FilterStorage.addSubscription(subscription); + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + } + else + addAcceptable = false; + } + + /* Add "anti-adblock messages" subscription for new users and users updating from old ABP versions + if (Services.vc.compare(prevVersion, "2.5") < 0) + { + let subscription = Subscription.fromURL(Prefs.subscriptions_antiadblockurl); + if (subscription && !(subscription.url in FilterStorage.knownSubscriptions)) + { + subscription.disabled = true; + FilterStorage.addSubscription(subscription); + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + } + }*/ + + // Extra subsriptions + let subscription = Subscription.fromURL("http://gnuzilla.gnu.org/filters/blacklist.txt"); + subscription.disabled = false; + FilterStorage.addSubscription(subscription); + Synchronizer.execute(subscription); + + let subscription = Subscription.fromURL("http://gnuzilla.gnu.org/filters/third-party.txt"); + subscription.disabled = false; + FilterStorage.addSubscription(subscription); + Synchronizer.execute(subscription); + + let subscription = Subscription.fromURL("http://gnuzilla.gnu.org/filters/javascript.txt"); + subscription.disabled = false; + FilterStorage.addSubscription(subscription); + Synchronizer.execute(subscription); + + if (!addSubscription && !addAcceptable) + return; + + function notifyUser() + {return; + let {addTab} = require("appSupport"); + if (addTab) + { + addTab(window, "chrome://adblockplus/content/ui/firstRun.html"); + } + else + { + let dialogSource = '\ + <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>\ + <dialog xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="document.title=content.document.title" buttons="accept" width="500" height="600">\ + <iframe type="content-primary" flex="1" src="chrome://adblockplus/content/ui/firstRun.html"/>\ + </dialog>'; + Services.ww.openWindow(window, + "data:application/vnd.mozilla.xul+xml," + encodeURIComponent(dialogSource), + "_blank", "chrome,centerscreen,resizable,dialog=no", null); + } + } + + if (addSubscription) + { + // Load subscriptions data + let request = new XMLHttpRequest(); + request.mozBackgroundRequest = true; + request.open("GET", "chrome://adblockplus/content/ui/subscriptions.xml"); + request.addEventListener("load", function() + { + if (onShutdown.done) + return; + + let node = Utils.chooseFilterSubscription(request.responseXML.getElementsByTagName("subscription")); + let subscription = (node ? Subscription.fromURL(node.getAttribute("url")) : null); + if (subscription) + { + FilterStorage.addSubscription(subscription); + subscription.disabled = false; + subscription.title = node.getAttribute("title"); + subscription.homepage = node.getAttribute("homepage"); + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + + notifyUser(); + } + }, false); + request.send(); + } + else + notifyUser(); + }, + + /** + * Handles clicks inside the browser's content area, will intercept clicks on + * abp: links. This can be called either with an event object or with the link + * target (if it is the former then link target will be retrieved from event + * target). + */ + onBrowserClick: function (/**Window*/ window, /**Event*/ event, /**String*/ linkTarget) + { + if (event) + { + // Ignore right-clicks + if (event.button == 2) + return; + + // Search the link associated with the click + let link = event.target; + while (link && !(link instanceof Ci.nsIDOMHTMLAnchorElement)) + link = link.parentNode; + + if (!link || link.protocol != "abp:") + return; + + // This is our link - make sure the browser doesn't handle it + event.preventDefault(); + event.stopPropagation(); + + linkTarget = link.href; + } + + let match = /^abp:\/*subscribe\/*\?(.*)/i.exec(linkTarget); + if (!match) + return; + + // Decode URL parameters + let title = null; + let url = null; + let mainSubscriptionTitle = null; + let mainSubscriptionURL = null; + for (let param of match[1].split('&')) + { + let parts = param.split("=", 2); + if (parts.length != 2 || !/\S/.test(parts[1])) + continue; + switch (parts[0]) + { + case "title": + title = decodeURIComponent(parts[1]); + break; + case "location": + url = decodeURIComponent(parts[1]); + break; + case "requiresTitle": + mainSubscriptionTitle = decodeURIComponent(parts[1]); + break; + case "requiresLocation": + mainSubscriptionURL = decodeURIComponent(parts[1]); + break; + } + } + if (!url) + return; + + // Default title to the URL + if (!title) + title = url; + + // Main subscription needs both title and URL + if (mainSubscriptionTitle && !mainSubscriptionURL) + mainSubscriptionTitle = null; + if (mainSubscriptionURL && !mainSubscriptionTitle) + mainSubscriptionURL = null; + + // Trim spaces in title and URL + title = title.replace(/^\s+/, "").replace(/\s+$/, ""); + url = url.replace(/^\s+/, "").replace(/\s+$/, ""); + if (mainSubscriptionURL) + { + mainSubscriptionTitle = mainSubscriptionTitle.replace(/^\s+/, "").replace(/\s+$/, ""); + mainSubscriptionURL = mainSubscriptionURL.replace(/^\s+/, "").replace(/\s+$/, ""); + } + + // Verify that the URL is valid + url = Utils.makeURI(url); + if (!url || (url.scheme != "http" && url.scheme != "https" && url.scheme != "ftp")) + return; + url = url.spec; + + if (mainSubscriptionURL) + { + mainSubscriptionURL = Utils.makeURI(mainSubscriptionURL); + if (!mainSubscriptionURL || (mainSubscriptionURL.scheme != "http" && mainSubscriptionURL.scheme != "https" && mainSubscriptionURL.scheme != "ftp")) + mainSubscriptionURL = mainSubscriptionTitle = null; + else + mainSubscriptionURL = mainSubscriptionURL.spec; + } + + this.openSubscriptionDialog(window, url, title, mainSubscriptionURL, mainSubscriptionTitle); + }, + + /** + * Opens a dialog letting the user confirm/adjust a filter subscription to + * be added. + */ + openSubscriptionDialog: function(/**Window*/ window, /**String*/ url, /**String*/ title, /**String*/ mainURL, /**String*/ mainTitle) + { + let subscription = {url: url, title: title, disabled: false, external: false, + mainSubscriptionTitle: mainTitle, mainSubscriptionURL: mainURL}; + window.openDialog("chrome://adblockplus/content/ui/subscriptionSelection.xul", "_blank", + "chrome,centerscreen,resizable,dialog=no", subscription, null); + }, + + /** + * Retrieves the current location of the browser. + */ + getCurrentLocation: function(/**Window*/ window) /**nsIURI*/ + { + let {getCurrentLocation} = require("appSupport"); + let result = getCurrentLocation(window); + return (result ? Utils.unwrapURL(result) : null); + }, + + /** + * Looks up an element with given ID in the window. If a list of IDs is given + * will try all of them until an element exists. + */ + findElement: function(/**Window*/ window, /**String|String[]*/ id) /**Element*/ + { + if (id instanceof Array) + { + for (let candidate of id) + { + let result = window.document.getElementById(candidate); + if (result) + return result; + } + return null; + } + else + return window.document.getElementById(id); + }, + + /** + * Resolves an insertion point as specified in appSupport module. Returns + * two elements: the parent element and the element to insert before. + */ + resolveInsertionPoint: function(/**Window*/ window, /**Object*/ insertionPoint) /**Element[]*/ + { + let parent = null; + let before = null; + if (insertionPoint) + { + if ("parent" in insertionPoint) + parent = this.findElement(window, insertionPoint.parent); + + if (parent && "before" in insertionPoint) + before = this.findElement(window, insertionPoint.before); + + if (parent && !before && "after" in insertionPoint) + { + let after = this.findElement(window, insertionPoint.after); + if (after) + before = after.nextElementSibling; + } + + if (before && before.parentNode != parent) + before = null; + } + + return [parent, before]; + }, + + /** + * Toggles visibility state of the toolbar icon. + */ + toggleToolbarIcon: function() + { + if (!CustomizableUI) + return; + if (this.isToolbarIconVisible()) + CustomizableUI.removeWidgetFromArea("abp-toolbarbutton"); + else + { + let {defaultToolbarPosition} = require("appSupport"); + CustomizableUI.addWidgetToArea("abp-toolbarbutton", defaultToolbarPosition.parent); + } + }, + + /** + * Updates Adblock Plus icon state for all windows. + */ + updateState: function() + { + for (let window in this.applicationWindows) + { + this.updateIconState(window, window.document.getElementById("abp-status")); + this.updateIconState(window, window.document.getElementById("abp-toolbarbutton")); + } + }, + + /** + * Updates Adblock Plus icon state for a single application window. + */ + updateIconState: function(/**Window*/ window, /**Element*/ icon) + { + if (!icon) + return; + + let state = (Prefs.enabled ? "active" : "disabled"); + if (state == "active") + { + let location = this.getCurrentLocation(window); + if (location && Policy.isWhitelisted(location.spec)) + state = "whitelisted"; + } + + let popupId = "abp-status-popup"; + if (icon.localName == "statusbarpanel") + { + if (Prefs.defaultstatusbaraction == 0) + { + icon.setAttribute("popup", popupId); + icon.removeAttribute("context"); + } + else + { + icon.removeAttribute("popup"); + icon.setAttribute("context", popupId); + } + } + else + { + if (Prefs.defaulttoolbaraction == 0) + { + icon.setAttribute("type", "menu"); + icon.removeAttribute("context"); + } + else + { + icon.setAttribute("type", "menu-button"); + icon.setAttribute("context", popupId); + } + } + + icon.setAttribute("abpstate", state); + }, + + /** + * Shows or hides status bar icons in all windows, according to pref. + */ + updateStatusbarIcon: function(/**Window*/ window) + { + if (!("abp-status" in this.overlay)) + return; + + let {statusbarPosition} = require("appSupport"); + if (!statusbarPosition) + return; + + let icon = window.document.getElementById("abp-status"); + if (Prefs.showinstatusbar && !icon) + { + let [parent, before] = this.resolveInsertionPoint(window, statusbarPosition); + if (!parent) + return; + + parent.insertBefore(this.overlay["abp-status"].cloneNode(true), before); + + icon = window.document.getElementById("abp-status"); + this.updateIconState(window, icon); + icon.addEventListener("click", this.onIconClick, false); + } + else if (!Prefs.showinstatusbar && icon) + icon.parentNode.removeChild(icon); + }, + + /** + * Toggles the value of a boolean preference. + */ + togglePref: function(/**String*/ pref) + { + Prefs[pref] = !Prefs[pref]; + }, + + /** + * If the given filter is already in user's list, removes it from the list. Otherwise adds it. + */ + toggleFilter: function(/**Filter*/ filter) + { + if (filter.subscriptions.length) + { + if (filter.disabled || filter.subscriptions.some((subscription) => !(subscription instanceof SpecialSubscription))) + filter.disabled = !filter.disabled; + else + FilterStorage.removeFilter(filter); + } + else + FilterStorage.addFilter(filter); + }, + + + /** + * Toggles "Count filter hits" option. + */ + toggleSaveStats: function(window) + { + if (Prefs.savestats) + { + if (!Utils.confirm(window, Utils.getString("clearStats_warning"))) + return; + + FilterStorage.resetHitCounts(); + Prefs.savestats = false; + } + else + Prefs.savestats = true; + }, + + /** + * Sets the current filter subscription in a single-subscription scenario, + * all other subscriptions will be removed. + */ + setSubscription: function(url, title) + { + let subscription = Subscription.fromURL(url); + let currentSubscriptions = FilterStorage.subscriptions.filter( + ((subscription) => subscription instanceof DownloadableSubscription && subscription.url != Prefs.subscriptions_exceptionsurl) + ); + if (!subscription || currentSubscriptions.indexOf(subscription) >= 0) + return; + + for (let i = 0; i < currentSubscriptions.length; i++) + FilterStorage.removeSubscription(currentSubscriptions[i]); + + subscription.title = title; + FilterStorage.addSubscription(subscription); + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + }, + + /** + * Adds or removes "non-intrisive ads" filter list. + * @return {Boolean} true if the filter list has been added + **/ + toggleAcceptableAds: function() + { + let subscription = Subscription.fromURL(Prefs.subscriptions_exceptionsurl); + if (!subscription) + return false; + + subscription.disabled = false; + subscription.title = "Allow non-intrusive advertising"; + if (subscription.url in FilterStorage.knownSubscriptions) + FilterStorage.removeSubscription(subscription); + else + { + FilterStorage.addSubscription(subscription); + if (subscription instanceof DownloadableSubscription && !subscription.lastDownload) + Synchronizer.execute(subscription); + } + + return (subscription.url in FilterStorage.knownSubscriptions); + }, + + /** + * Toggles the pref for the Adblock Plus sync engine. + * @return {Boolean} new state of the sync engine + */ + toggleSync: function() + { + let {Sync} = require("sync"); + let syncEngine = Sync.getEngine(); + if (syncEngine) + { + syncEngine.enabled = !syncEngine.enabled; + return syncEngine.enabled; + } + else + return false; + }, + + /** + * Tests whether blockable items list is currently open. + */ + isBottombarOpen: function(/**Window*/ window) /**Boolean*/ + { + if (detachedBottombar && !detachedBottombar.closed) + return true; + + return !!window.document.getElementById("abp-bottombar"); + }, + + /** + * Called when some pop-up in the application window shows up, initializes + * pop-ups related to Adblock Plus. + */ + onPopupShowing: function(/**Event*/ event) + { + if (event.defaultPrevented) + return; + + let popup = event.originalTarget; + + let {contentContextMenu} = require("appSupport"); + if ((typeof contentContextMenu == "string" && popup.id == contentContextMenu) || + (contentContextMenu instanceof Array && contentContextMenu.indexOf(popup.id) >= 0)) + { + this.fillContentContextMenu(popup); + } + else if (popup.id == "abp-tooltip") + this.fillIconTooltip(event, popup.ownerDocument.defaultView); + else + { + let match = /^(abp-(?:toolbar|status|menuitem)-)popup$/.exec(popup.id); + if (match) + this.fillIconMenu(event, popup.ownerDocument.defaultView, match[1]); + } + }, + + /** + * Handles click on toolbar and status bar icons. + */ + onIconClick: function(/**Event*/ event) + { + if (event.eventPhase != event.AT_TARGET) + return; + + let isToolbar = (event.target.localName != "statusbarpanel"); + let action = 0; + if ((isToolbar && event.type == "command") || (!isToolbar && event.button == 0)) + action = (isToolbar ? Prefs.defaulttoolbaraction : Prefs.defaultstatusbaraction); + else if (event.button == 1) + action = 3; + + let window = event.target.ownerDocument.defaultView; + if (action == 1) + this.toggleBottombar(window); + else if (action == 2) + this.openFiltersDialog(); + else if (action == 3) + { + // If there is a whitelisting rule for current page - remove it (reenable). + // Otherwise flip "enabled" pref. + if (!this.removeWhitelist(window)) + this.togglePref("enabled"); + } + }, + + /** + * Removes/disables the exception rule applying for the current page. + */ + removeWhitelist: function(/**Window*/ window) + { + let location = this.getCurrentLocation(window); + let filter = null; + if (location) + filter = Policy.isWhitelisted(location.spec); + if (filter && filter.subscriptions.length && !filter.disabled) + { + UI.toggleFilter(filter); + return true; + } + return false; + }, + + /** + * Updates state of the icon tooltip. + */ + fillIconTooltip: function(/**Event*/ event, /**Window*/ window) + { + let E = (id) => window.document.getElementById(id); + + let node = window.document.tooltipNode; + if (!node || !node.hasAttribute("tooltip")) + { + event.preventDefault(); + return; + } + + // Prevent tooltip from overlapping menu + for (let id of ["abp-toolbar-popup", "abp-status-popup"]) + { + let element = E(id); + if (element && element.state == "open") + { + event.preventDefault(); + return; + } + } + + let type = (node.id == "abp-toolbarbutton" ? "toolbar" : "statusbar"); + let action = parseInt(Prefs["default" + type + "action"]); + if (isNaN(action)) + action = -1; + + let actionDescr = E("abp-tooltip-action"); + actionDescr.hidden = (action < 0 || action > 3); + if (!actionDescr.hidden) + actionDescr.setAttribute("value", Utils.getString("action" + action + "_tooltip")); + + let statusDescr = E("abp-tooltip-status"); + let state = node.getAttribute("abpstate"); + let statusStr = Utils.getString(state + "_tooltip"); + if (state == "active") + { + let [activeSubscriptions, activeFilters] = FilterStorage.subscriptions.reduce(function([subscriptions, filters], current) + { + if (current instanceof SpecialSubscription) + return [subscriptions, filters + current.filters.filter((filter) => !filter.disabled).length]; + else if (!current.disabled && !(Prefs.subscriptions_exceptionscheckbox && current.url == Prefs.subscriptions_exceptionsurl)) + return [subscriptions + 1, filters]; + else + return [subscriptions, filters] + }, [0, 0]); + + statusStr = statusStr.replace(/\?1\?/, activeSubscriptions).replace(/\?2\?/, activeFilters); + } + statusDescr.setAttribute("value", statusStr); + + let activeFilters = []; + E("abp-tooltip-blocked-label").hidden = (state != "active"); + E("abp-tooltip-blocked").hidden = (state != "active"); + if (state == "active") + { + let {getBrowser} = require("appSupport"); + let stats = RequestNotifier.getWindowStatistics(getBrowser(window).contentWindow); + + let blockedStr = Utils.getString("blocked_count_tooltip"); + blockedStr = blockedStr.replace(/\?1\?/, stats ? stats.blocked : 0).replace(/\?2\?/, stats ? stats.items : 0); + + if (stats && stats.whitelisted + stats.hidden) + { + blockedStr += " " + Utils.getString("blocked_count_addendum"); + blockedStr = blockedStr.replace(/\?1\?/, stats.whitelisted).replace(/\?2\?/, stats.hidden); + } + + E("abp-tooltip-blocked").setAttribute("value", blockedStr); + + if (stats) + { + let filterSort = function(a, b) + { + return stats.filters[b] - stats.filters[a]; + }; + for (let filter in stats.filters) + activeFilters.push(filter); + activeFilters = activeFilters.sort(filterSort); + } + + if (activeFilters.length > 0) + { + let filtersContainer = E("abp-tooltip-filters"); + while (filtersContainer.firstChild) + filtersContainer.removeChild(filtersContainer.firstChild); + + for (let i = 0; i < activeFilters.length && i < 3; i++) + { + let descr = filtersContainer.ownerDocument.createElement("description"); + descr.setAttribute("value", activeFilters[i] + " (" + stats.filters[activeFilters[i]] + ")"); + filtersContainer.appendChild(descr); + } + } + } + + E("abp-tooltip-filters-label").hidden = (activeFilters.length == 0); + E("abp-tooltip-filters").hidden = (activeFilters.length == 0); + E("abp-tooltip-more-filters").hidden = (activeFilters.length <= 3); + }, + + /** + * Updates state of the icon context menu. + */ + fillIconMenu: function(/**Event*/ event, /**Window*/ window, /**String*/ prefix) + { + function hideElement(id, hide) + { + let element = window.document.getElementById(id); + if (element) + element.hidden = hide; + } + function setChecked(id, checked) + { + let element = window.document.getElementById(id); + if (element) + element.setAttribute("checked", checked); + } + function setDisabled(id, disabled) + { + let element = window.document.getElementById(id); + if (element) + element.setAttribute("disabled", disabled); + } + function setDefault(id, isDefault) + { + let element = window.document.getElementById(id); + if (element) + element.setAttribute("default", isDefault); + } + function generateLabel(id, param) + { + let element = window.document.getElementById(id); + if (element) + element.setAttribute("label", element.getAttribute("labeltempl").replace(/\?1\?/, param)); + } + + let bottombarOpen = this.isBottombarOpen(window); + hideElement(prefix + "openbottombar", bottombarOpen); + hideElement(prefix + "closebottombar", !bottombarOpen); + + hideElement(prefix + "whitelistsite", true); + hideElement(prefix + "whitelistpage", true); + + let location = this.getCurrentLocation(window); + if (location && Policy.isBlockableScheme(location)) + { + let host = null; + try + { + host = location.host.replace(/^www\./, ""); + } catch (e) {} + + if (host) + { + let ending = "|"; + location = location.clone(); + if (location instanceof Ci.nsIURL) + location.ref = ""; + if (location instanceof Ci.nsIURL && location.query) + { + location.query = ""; + ending = "?"; + } + + siteWhitelist = Filter.fromText("@@||" + host + "^$document"); + setChecked(prefix + "whitelistsite", siteWhitelist.subscriptions.length && !siteWhitelist.disabled); + generateLabel(prefix + "whitelistsite", host); + hideElement(prefix + "whitelistsite", false); + + pageWhitelist = Filter.fromText("@@|" + location.spec + ending + "$document"); + setChecked(prefix + "whitelistpage", pageWhitelist.subscriptions.length && !pageWhitelist.disabled); + hideElement(prefix + "whitelistpage", false); + } + else + { + siteWhitelist = Filter.fromText("@@|" + location.spec + "|"); + setChecked(prefix + "whitelistsite", siteWhitelist.subscriptions.length && !siteWhitelist.disabled); + generateLabel(prefix + "whitelistsite", location.spec.replace(/^mailto:/, "")); + hideElement(prefix + "whitelistsite", false); + } + } + + setDisabled("abp-command-sendReport", !location || !Policy.isBlockableScheme(location) || location.scheme == "mailto"); + + setChecked(prefix + "disabled", !Prefs.enabled); + setChecked(prefix + "frameobjects", Prefs.frameobjects); + setChecked(prefix + "slowcollapse", !Prefs.fastcollapse); + setChecked(prefix + "savestats", Prefs.savestats); + + let {defaultToolbarPosition, statusbarPosition} = require("appSupport"); + let hasToolbar = defaultToolbarPosition; + let hasStatusBar = statusbarPosition; + hideElement(prefix + "showintoolbar", !hasToolbar || prefix == "abp-toolbar-"); + hideElement(prefix + "showinstatusbar", !hasStatusBar); + hideElement(prefix + "iconSettingsSeparator", (prefix == "abp-toolbar-" || !hasToolbar) && !hasStatusBar); + + setChecked(prefix + "showintoolbar", this.isToolbarIconVisible()); + setChecked(prefix + "showinstatusbar", Prefs.showinstatusbar); + + let {Sync} = require("sync"); + let syncEngine = Sync.getEngine(); + hideElement(prefix + "sync", !syncEngine); + setChecked(prefix + "sync", syncEngine && syncEngine.enabled); + + let defAction = (!window.document.popupNode || window.document.popupNode.id == "abp-toolbarbutton" ? + Prefs.defaulttoolbaraction : + Prefs.defaultstatusbaraction); + setDefault(prefix + "openbottombar", defAction == 1); + setDefault(prefix + "closebottombar", defAction == 1); + setDefault(prefix + "filters", defAction == 2); + setDefault(prefix + "disabled", defAction == 3); + + let popup = window.document.getElementById(prefix + "popup"); + let items = (popup ? popup.querySelectorAll('menuitem[key]') : []); + for (let i = 0; i < items.length; i++) + { + let item = items[i]; + let match = /^abp-key-/.exec(item.getAttribute("key")); + if (!match) + continue; + + let name = match.input.substr(match.index + match[0].length); + if (!this.hotkeys) + this.configureKeys(window); + if (name in this.hotkeys) + { + let text = KeySelector.getTextForKey(this.hotkeys[name]); + if (text) + item.setAttribute("acceltext", text); + else + item.removeAttribute("acceltext"); + } + } + + hideElement(prefix + "contributebutton", Prefs.hideContributeButton); + }, + + /** + * Adds Adblock Plus menu items to the content area context menu when it shows + * up. + */ + fillContentContextMenu: function(/**Element*/ popup) + { + let target = popup.triggerNode; + if (target instanceof Ci.nsIDOMHTMLMapElement || target instanceof Ci.nsIDOMHTMLAreaElement) + { + // HTML image maps will usually receive events when the mouse pointer is + // over a different element, get the real event target. + let rect = target.getClientRects()[0]; + target = target.ownerDocument.elementFromPoint(Math.max(rect.left, 0), Math.max(rect.top, 0)); + } + + if (!target) + return; + + let window = popup.ownerDocument.defaultView; + let menuItems = []; + let addMenuItem = function([node, nodeData]) + { + let type = nodeData.typeDescr.toLowerCase(); + if (type == "background") + { + type = "image"; + node = null; + } + + let label = this.overlay.attributes[type + "contextlabel"]; + if (!label) + return; + + let item = popup.ownerDocument.createElement("menuitem"); + item.setAttribute("label", label); + item.setAttribute("class", "abp-contextmenuitem"); + item.addEventListener("command", this.blockItem.bind(this, window, node, nodeData), false); + popup.appendChild(item); + + menuItems.push(item); + }.bind(this); + + // Look up data that we have for the node + let data = RequestNotifier.getDataForNode(target); + let hadImage = false; + if (data && !data[1].filter) + { + addMenuItem(data); + hadImage = (data[1].typeDescr == "IMAGE"); + } + + // Look for frame data + let wnd = Utils.getWindow(target); + if (wnd.frameElement) + { + let data = RequestNotifier.getDataForNode(wnd.frameElement, true); + if (data && !data[1].filter) + addMenuItem(data); + } + + // Look for a background image + if (!hadImage) + { + let extractImageURL = function(computedStyle, property) + { + let value = computedStyle.getPropertyCSSValue(property); + // CSSValueList + if ("length" in value && value.length >= 1) + value = value[0]; + // CSSValuePrimitiveType + if ("primitiveType" in value && value.primitiveType == value.CSS_URI) + return Utils.unwrapURL(value.getStringValue()).spec; + + return null; + }; + + let node = target; + while (node) + { + if (node.nodeType == Ci.nsIDOMNode.ELEMENT_NODE) + { + let style = wnd.getComputedStyle(node, ""); + let bgImage = extractImageURL(style, "background-image") || extractImageURL(style, "list-style-image"); + if (bgImage) + { + let data = RequestNotifier.getDataForNode(wnd.document, true, Policy.type.IMAGE, bgImage); + if (data && !data[1].filter) + { + addMenuItem(data); + break; + } + } + } + + node = node.parentNode; + } + } + + // Add "Remove exception" menu item if necessary + let location = this.getCurrentLocation(window); + let filter = (location ? Policy.isWhitelisted(location.spec) : null); + if (filter && filter.subscriptions.length && !filter.disabled) + { + let label = this.overlay.attributes.whitelistcontextlabel; + if (!label) + return; + + let item = popup.ownerDocument.createElement("menuitem"); + item.setAttribute("label", label); + item.setAttribute("class", "abp-contextmenuitem"); + item.addEventListener("command", this.toggleFilter.bind(this, filter), false); + popup.appendChild(item); + + menuItems.push(item); + } + + // Make sure to clean up everything once the context menu is closed + if (menuItems.length) + { + let cleanUp = function(event) + { + if (event.eventPhase != event.AT_TARGET) + return; + + popup.removeEventListener("popuphidden", cleanUp, false); + for (let i = 0; i < menuItems.length; i++) + if (menuItems[i].parentNode) + menuItems[i].parentNode.removeChild(menuItems[i]); + }.bind(this); + popup.addEventListener("popuphidden", cleanUp, false); + } + }, + + /** + * Called when the user presses a key in the application window, reacts to our + * shortcut keys. + */ + onKeyPress: function(/**Event*/ event) + { + if (!this.hotkeys) + this.configureKeys(event.currentTarget); + + for (let key in this.hotkeys) + { + if (KeySelector.matchesKey(event, this.hotkeys[key])) + { + event.preventDefault(); + let command = event.currentTarget.document.getElementById("abp-command-" + key); + if (command) + command.doCommand(); + } + } + }, + + /** + * Checks whether the toolbar icon is currently displayed. + */ + isToolbarIconVisible: function() /**Boolean*/ + { + if (!CustomizableUI) + return false; + let placement = CustomizableUI.getPlacementOfWidget("abp-toolbarbutton"); + return !!placement; + }, + + /** + * Stores the selected hotkeys, initialized when the user presses a key. + */ + hotkeys: null, + + /** + * Chooses shortcut keys that are available in the window according to + * preferences. + */ + configureKeys: function(/**Window*/ window) + { + let selector = new KeySelector(window); + + this.hotkeys = {}; + for (let name in Prefs) + { + let match = /_key$/.exec(name); + if (match && typeof Prefs[name] == "string") + { + let keyName = match.input.substr(0, match.index); + this.hotkeys[keyName] = selector.selectKey(Prefs[name]); + } + } + }, + + /** + * Toggles open/closed state of the blockable items list. + */ + toggleBottombar: function(/**Window*/ window) + { + if (detachedBottombar && !detachedBottombar.closed) + { + detachedBottombar.close(); + detachedBottombar = null; + } + else + { + let {addBottomBar, removeBottomBar, getBrowser} = require("appSupport"); + let mustDetach = !addBottomBar || !removeBottomBar || !("abp-bottombar-container" in this.overlay); + let detach = mustDetach || Prefs.detachsidebar; + if (!detach && window.document.getElementById("abp-bottombar")) + { + removeBottomBar(window); + + let browser = (getBrowser ? getBrowser(window) : null); + if (browser) + browser.contentWindow.focus(); + } + else if (!detach) + { + addBottomBar(window, this.overlay["abp-bottombar-container"]); + let element = window.document.getElementById("abp-bottombar"); + if (element) + { + element.setAttribute("width", Prefs.blockableItemsSize.width); + element.setAttribute("height", Prefs.blockableItemsSize.height); + + let splitter = window.document.getElementById("abp-bottombar-splitter"); + if (splitter) + { + splitter.addEventListener("command", function() + { + Prefs.blockableItemsSize = {width: element.width, height: element.height}; + }, false); + } + } + } + else + detachedBottombar = window.openDialog("chrome://adblockplus/content/ui/sidebarDetached.xul", "_blank", "chrome,resizable,dependent,dialog=no", mustDetach); + } + }, + + /** + * Hide contribute button and persist this choice. + */ + hideContributeButton: function(/**Window*/ window) + { + Prefs.hideContributeButton = true; + + for (let id of ["abp-status-contributebutton", "abp-toolbar-contributebutton", "abp-menuitem-contributebutton"]) + { + let button = window.document.getElementById(id); + if (button) + button.hidden = true; + } + }, + + showNextNotification: function(url) + { + let window = this.currentWindow; + if (!window) + return; + + let button = window.document.getElementById("abp-toolbarbutton") + || window.document.getElementById("abp-status"); + if (!button) + return; + + let notification = Notification.getNextToShow(url); + if (!notification) + return; + + this._showNotification(window, button, notification); + }, + + _showNotification: function(window, button, notification) + { + let panel = window.document.getElementById("abp-notification"); + if (panel.state !== "closed") + return; + + function insertMessage(element, text, links) + { + let match = /^(.*?)<(a|strong)>(.*?)<\/\2>(.*)$/.exec(text); + if (!match) + { + element.appendChild(window.document.createTextNode(text)); + return; + } + + let [_, before, tagName, value, after] = match; + + insertMessage(element, before, links); + + let newElement = window.document.createElementNS("http://www.w3.org/1999/xhtml", tagName); + if (tagName === "a" && links && links.length) + newElement.setAttribute("href", links.shift()); + insertMessage(newElement, value, links); + element.appendChild(newElement); + + insertMessage(element, after, links); + } + + let texts = Notification.getLocalizedTexts(notification); + let titleElement = window.document.getElementById("abp-notification-title"); + titleElement.textContent = texts.title; + let messageElement = window.document.getElementById("abp-notification-message"); + messageElement.innerHTML = ""; + let docLinks = []; + for (let link of notification.links) + docLinks.push(Utils.getDocLink(link)); + insertMessage(messageElement, texts.message, docLinks); + + messageElement.addEventListener("click", function(event) + { + let link = event.target; + while (link && link !== messageElement && link.localName !== "a") + link = link.parentNode; + if (!link || link.localName !== "a") + return; + event.preventDefault(); + event.stopPropagation(); + this.loadInBrowser(link.href, window); + }.bind(this)); + + if (notification.type === "question") + { + function buttonHandler(approved, event) + { + event.preventDefault(); + event.stopPropagation(); + panel.hidePopup(); + Notification.triggerQuestionListeners(notification.id, approved) + Notification.markAsShown(notification.id); + } + window.document.getElementById("abp-notification-yes").onclick = buttonHandler.bind(null, true); + window.document.getElementById("abp-notification-no").onclick = buttonHandler.bind(null, false); + } + + panel.setAttribute("class", "abp-" + notification.type); + panel.setAttribute("noautohide", notification.type === "question"); + panel.openPopup(button, "bottomcenter topcenter", 0, 0, false, false, null); + } +}; +UI.onPopupShowing = UI.onPopupShowing.bind(UI); +UI.onKeyPress = UI.onKeyPress.bind(UI); +UI.onIconClick = UI.onIconClick.bind(UI); +UI.init(); + +/** + * List of event handers to be registered for each window. For each event + * handler the element ID, event and the actual event handler are listed. + * @type Array + */ +let eventHandlers = [ + ["abp-command-sendReport", "command", UI.openReportDialog.bind(UI)], + ["abp-command-filters", "command", UI.openFiltersDialog.bind(UI)], + ["abp-command-sidebar", "command", UI.toggleBottombar.bind(UI)], + ["abp-command-togglesitewhitelist", "command", function() { UI.toggleFilter(siteWhitelist); }], + ["abp-command-togglepagewhitelist", "command", function() { UI.toggleFilter(pageWhitelist); }], + ["abp-command-toggleobjtabs", "command", UI.togglePref.bind(UI, "frameobjects")], + ["abp-command-togglecollapse", "command", UI.togglePref.bind(UI, "fastcollapse")], + ["abp-command-togglesavestats", "command", UI.toggleSaveStats.bind(UI)], + ["abp-command-togglesync", "command", UI.toggleSync.bind(UI)], + ["abp-command-toggleshowintoolbar", "command", UI.toggleToolbarIcon.bind(UI)], + ["abp-command-toggleshowinstatusbar", "command", UI.togglePref.bind(UI, "showinstatusbar")], + ["abp-command-enable", "command", UI.togglePref.bind(UI, "enabled")], + ["abp-command-contribute", "command", UI.openContributePage.bind(UI)], + ["abp-command-contribute-hide", "command", UI.hideContributeButton.bind(UI)] +]; + +onShutdown.add(function() +{ + for (let window in UI.applicationWindows) + if (UI.isBottombarOpen(window)) + UI.toggleBottombar(window); +}); diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/utils.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/utils.js new file mode 100644 index 0000000..8fbdf3e --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/utils.js @@ -0,0 +1,787 @@ +/* + * This file is part of Adblock Plus <http://adblockplus.org/>, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +/** + * @fileOverview Module containing a bunch of utility functions. + */ + +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); +Cu.import("resource://gre/modules/Services.jsm"); +let sidebarParams = null; + +/** + * Provides a bunch of utility functions. + * @class + */ +let Utils = exports.Utils = +{ + /** + * Returns the add-on ID used by Adblock Plus + */ + get addonID() + { + let {addonID} = require("info"); + return addonID; + }, + + /** + * Returns the installed Adblock Plus version + */ + get addonVersion() + { + let {addonVersion} = require("info"); + return addonVersion; + }, + + /** + * Returns whether we are running in Fennec, for Fennec-specific hacks + * @type Boolean + */ + get isFennec() + { + let {application} = require("info"); + let result = (application == "fennec" || application == "fennec2"); + Utils.__defineGetter__("isFennec", () => result); + return result; + }, + + /** + * Returns the user interface locale selected for adblockplus chrome package. + */ + get appLocale() + { + let locale = "en-US"; + try + { + locale = Utils.chromeRegistry.getSelectedLocale("adblockplus"); + } + catch (e) + { + Cu.reportError(e); + } + Utils.__defineGetter__("appLocale", () => locale); + return Utils.appLocale; + }, + + /** + * Returns version of the Gecko platform + */ + get platformVersion() + { + let platformVersion = Services.appinfo.platformVersion; + Utils.__defineGetter__("platformVersion", () => platformVersion); + return Utils.platformVersion; + }, + + /** + * Retrieves a string from global.properties string bundle, will throw if string isn't found. + * + * @param {String} name string name + * @return {String} + */ + getString: function(name) + { + // Randomize URI to work around bug 719376 + let stringBundle = Services.strings.createBundle("chrome://adblockplus/locale/global.properties?" + Math.random()); + Utils.getString = function(name) + { + return stringBundle.GetStringFromName(name); + } + return Utils.getString(name); + }, + + /** + * Shows an alert message like window.alert() but with a custom title. + * + * @param {Window} parentWindow parent window of the dialog (can be null) + * @param {String} message message to be displayed + * @param {String} [title] dialog title, default title will be used if omitted + */ + alert: function(parentWindow, message, title) + { + if (!title) + title = Utils.getString("default_dialog_title"); + Utils.promptService.alert(parentWindow, title, message); + }, + + /** + * Asks the user for a confirmation like window.confirm() but with a custom title. + * + * @param {Window} parentWindow parent window of the dialog (can be null) + * @param {String} message message to be displayed + * @param {String} [title] dialog title, default title will be used if omitted + * @return {Bool} + */ + confirm: function(parentWindow, message, title) + { + if (!title) + title = Utils.getString("default_dialog_title"); + return Utils.promptService.confirm(parentWindow, title, message); + }, + + /** + * Retrieves the window for a document node. + * @return {Window} will be null if the node isn't associated with a window + */ + getWindow: function(/**Node*/ node) + { + if ("ownerDocument" in node && node.ownerDocument) + node = node.ownerDocument; + + if ("defaultView" in node) + return node.defaultView; + + return null; + }, + + /** + * Retrieves the top-level chrome window for a content window. + */ + getChromeWindow: function(/**Window*/ window) /**Window*/ + { + return window.QueryInterface(Ci.nsIInterfaceRequestor) + .getInterface(Ci.nsIWebNavigation) + .QueryInterface(Ci.nsIDocShellTreeItem) + .rootTreeItem + .QueryInterface(Ci.nsIInterfaceRequestor) + .getInterface(Ci.nsIDOMWindow); + }, + + /** + * If the window doesn't have its own security context (e.g. about:blank or + * data: URL) walks up the parent chain until a window is found that has a + * security context. + */ + getOriginWindow: function(/**Window*/ wnd) /**Window*/ + { + while (wnd != wnd.parent) + { + let uri = Utils.makeURI(wnd.location.href); + if (uri.spec != "about:blank" && uri.spec != "moz-safe-about:blank" && + !Utils.netUtils.URIChainHasFlags(uri, Ci.nsIProtocolHandler.URI_INHERITS_SECURITY_CONTEXT)) + { + break; + } + wnd = wnd.parent; + } + return wnd; + }, + + /** + * If a protocol using nested URIs like jar: is used - retrieves innermost + * nested URI. + */ + unwrapURL: function(/**nsIURI or String*/ url) /**nsIURI*/ + { + if (!(url instanceof Ci.nsIURI)) + url = Utils.makeURI(url); + + if (url instanceof Ci.nsINestedURI) + return url.innermostURI; + else + return url; + }, + + /** + * Translates a string URI into its nsIURI representation, will return null for + * invalid URIs. + */ + makeURI: function(/**String*/ url) /**nsIURI*/ + { + try + { + return Utils.ioService.newURI(url, null, null); + } + catch (e) { + return null; + } + }, + + /** + * Posts an action to the event queue of the current thread to run it + * asynchronously. Any additional parameters to this function are passed + * as parameters to the callback. + */ + runAsync: function(/**Function*/ callback, /**Object*/ thisPtr) + { + let params = Array.prototype.slice.call(arguments, 2); + let runnable = { + run: function() + { + callback.apply(thisPtr, params); + } + }; + Services.tm.currentThread.dispatch(runnable, Ci.nsIEventTarget.DISPATCH_NORMAL); + }, + + /** + * Gets the DOM window associated with a particular request (if any). + */ + getRequestWindow: function(/**nsIChannel*/ channel) /**nsIDOMWindow*/ + { + try + { + if (channel.notificationCallbacks) + return channel.notificationCallbacks.getInterface(Ci.nsILoadContext).associatedWindow; + } catch(e) {} + + try + { + if (channel.loadGroup && channel.loadGroup.notificationCallbacks) + return channel.loadGroup.notificationCallbacks.getInterface(Ci.nsILoadContext).associatedWindow; + } catch(e) {} + + return null; + }, + + /** + * Generates filter subscription checksum. + * + * @param {Array of String} lines filter subscription lines (with checksum line removed) + * @return {String} checksum or null + */ + generateChecksum: function(lines) + { + let stream = null; + try + { + // Checksum is an MD5 checksum (base64-encoded without the trailing "=") of + // all lines in UTF-8 without the checksum line, joined with "\n". + + let converter = Cc["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(Ci.nsIScriptableUnicodeConverter); + converter.charset = "UTF-8"; + stream = converter.convertToInputStream(lines.join("\n")); + + let hashEngine = Cc["@mozilla.org/security/hash;1"].createInstance(Ci.nsICryptoHash); + hashEngine.init(hashEngine.MD5); + hashEngine.updateFromStream(stream, stream.available()); + return hashEngine.finish(true).replace(/=+$/, ""); + } + catch (e) + { + return null; + } + finally + { + if (stream) + stream.close(); + } + }, + + /** + * Formats a unix time according to user's locale. + * @param {Integer} time unix time in milliseconds + * @return {String} formatted date and time + */ + formatTime: function(time) + { + try + { + let date = new Date(time); + return Utils.dateFormatter.FormatDateTime("", Ci.nsIScriptableDateFormat.dateFormatShort, + Ci.nsIScriptableDateFormat.timeFormatNoSeconds, + date.getFullYear(), date.getMonth() + 1, date.getDate(), + date.getHours(), date.getMinutes(), date.getSeconds()); + } + catch(e) + { + // Make sure to return even on errors + Cu.reportError(e); + return ""; + } + }, + + /** + * Checks whether any of the prefixes listed match the application locale, + * returns matching prefix if any. + */ + checkLocalePrefixMatch: function(/**String*/ prefixes) /**String*/ + { + if (!prefixes) + return null; + + let appLocale = Utils.appLocale; + for (let prefix of prefixes.split(/,/)) + if (new RegExp("^" + prefix + "\\b").test(appLocale)) + return prefix; + + return null; + }, + + /** + * Chooses the best filter subscription for user's language. + */ + chooseFilterSubscription: function(/**NodeList*/ subscriptions) /**Node*/ + { + let selectedItem = null; + let selectedPrefix = null; + let matchCount = 0; + for (let i = 0; i < subscriptions.length; i++) + { + let subscription = subscriptions[i]; + if (!selectedItem) + selectedItem = subscription; + + let prefix = Utils.checkLocalePrefixMatch(subscription.getAttribute("prefixes")); + if (prefix) + { + if (!selectedPrefix || selectedPrefix.length < prefix.length) + { + selectedItem = subscription; + selectedPrefix = prefix; + matchCount = 1; + } + else if (selectedPrefix && selectedPrefix.length == prefix.length) + { + matchCount++; + + // If multiple items have a matching prefix of the same length: + // Select one of the items randomly, probability should be the same + // for all items. So we replace the previous match here with + // probability 1/N (N being the number of matches). + if (Math.random() * matchCount < 1) + { + selectedItem = subscription; + selectedPrefix = prefix; + } + } + } + } + return selectedItem; + }, + + /** + * Pauses code execution and allows events to be processed. Warning: + * other extension code might execute, the extension might even shut down. + */ + yield: function() + { + let {Prefs} = require("prefs"); + if (Prefs.please_kill_startup_performance) + { + this.yield = function() {}; + return; + } + let thread = Services.tm.currentThread; + while (thread.processNextEvent(false)); + }, + + /** + * Saves sidebar state before detaching/reattaching + */ + setParams: function(params) + { + sidebarParams = params; + }, + + /** + * Retrieves and removes sidebar state after detaching/reattaching + */ + getParams: function() + { + let ret = sidebarParams; + sidebarParams = null; + return ret; + }, + + /** + * Verifies RSA signature. The public key and signature should be base64-encoded. + */ + verifySignature: function(/**String*/ key, /**String*/ signature, /**String*/ data) /**Boolean*/ + { + if (!Utils.crypto) + return false; + + // Maybe we did the same check recently, look it up in the cache + if (!("_cache" in Utils.verifySignature)) + Utils.verifySignature._cache = new Cache(5); + let cache = Utils.verifySignature._cache; + let cacheKey = key + " " + signature + " " + data; + if (cacheKey in cache.data) + return cache.data[cacheKey]; + else + cache.add(cacheKey, false); + + let keyInfo, pubKey, context; + try + { + let keyItem = Utils.crypto.getSECItem(atob(key)); + keyInfo = Utils.crypto.SECKEY_DecodeDERSubjectPublicKeyInfo(keyItem.address()); + if (keyInfo.isNull()) + throw new Error("SECKEY_DecodeDERSubjectPublicKeyInfo failed"); + + pubKey = Utils.crypto.SECKEY_ExtractPublicKey(keyInfo); + if (pubKey.isNull()) + throw new Error("SECKEY_ExtractPublicKey failed"); + + let signatureItem = Utils.crypto.getSECItem(atob(signature)); + + context = Utils.crypto.VFY_CreateContext(pubKey, signatureItem.address(), Utils.crypto.SEC_OID_ISO_SHA_WITH_RSA_SIGNATURE, null); + if (context.isNull()) + return false; // This could happen if the signature is invalid + + let error = Utils.crypto.VFY_Begin(context); + if (error < 0) + throw new Error("VFY_Begin failed"); + + error = Utils.crypto.VFY_Update(context, data, data.length); + if (error < 0) + throw new Error("VFY_Update failed"); + + error = Utils.crypto.VFY_End(context); + if (error < 0) + return false; + + cache.data[cacheKey] = true; + return true; + } + catch (e) + { + Cu.reportError(e); + return false; + } + finally + { + if (keyInfo && !keyInfo.isNull()) + Utils.crypto.SECKEY_DestroySubjectPublicKeyInfo(keyInfo); + if (pubKey && !pubKey.isNull()) + Utils.crypto.SECKEY_DestroyPublicKey(pubKey); + if (context && !context.isNull()) + Utils.crypto.VFY_DestroyContext(context, true); + } + }, + + /** + * Returns the documentation link from the preferences. + */ + getDocLink: function(/**String*/ linkID) + { + let {Prefs} = require("prefs"); + let docLink = Prefs.documentation_link; + return docLink.replace(/%LINK%/g, linkID).replace(/%LANG%/g, Utils.appLocale); + }, + + /** + * Splits up a combined label into the label and access key components. + * + * @return {Array} An array with two strings: label and access key + */ + splitLabel: function(/**String*/ label) + { + let match = /^(.*)\s*\(&(.)\)\s*(\u2026?)$/.exec(label); + if (match) + { + // Access key not part of the label + return [match[1] + match[3], match[2]]; + } + else + { + // Access key part of the label + let pos = label.indexOf("&"); + if (pos >= 0 && pos < label.length - 1) + return [label.substr(0, pos) + label.substr(pos + 1), label[pos + 1]]; + else + return [label, ""]; + } + }, + + /** + * Split all labels starting from a particular DOM node. + */ + splitAllLabels: function(/**DOMNode*/ root) + { + let attrMap = { + __proto__: null, + "label": "value", + "setting": "title" + }; + + let elements = root.querySelectorAll("*[label], label[value], setting[title]"); + for (let i = 0; i < elements.length; i++) + { + let element = elements[i]; + let attr = (element.localName in attrMap ? attrMap[element.localName] : "label"); + let origLabel = element.getAttribute(attr); + + let [label, accesskey] = this.splitLabel(origLabel); + if (label != origLabel) + element.setAttribute(attr, label); + if (accesskey != "") + element.setAttribute("accesskey", accesskey); + + // Labels forward changes of the accessKey property to their control, only + // set it for actual controls. + if (element.localName != "label") + element.accessKey = accesskey; + } + } +}; + +/** + * A cache with a fixed capacity, newer entries replace entries that have been + * stored first. + * @constructor + */ +function Cache(/**Integer*/ size) +{ + this._ringBuffer = new Array(size); + this.data = {__proto__: null}; +} +exports.Cache = Cache; + +Cache.prototype = +{ + /** + * Ring buffer storing hash keys, allows determining which keys need to be + * evicted. + * @type Array + */ + _ringBuffer: null, + + /** + * Index in the ring buffer to be written next. + * @type Integer + */ + _bufferIndex: 0, + + /** + * Cache data, maps values to the keys. Read-only access, for writing use + * add() method. + * @type Object + */ + data: null, + + /** + * Adds a key and the corresponding value to the cache. + */ + add: function(/**String*/ key, value) + { + if (!(key in this.data)) + { + // This is a new key - we need to add it to the ring buffer and evict + // another entry instead. + let oldKey = this._ringBuffer[this._bufferIndex]; + if (typeof oldKey != "undefined") + delete this.data[oldKey]; + this._ringBuffer[this._bufferIndex] = key; + + this._bufferIndex++; + if (this._bufferIndex >= this._ringBuffer.length) + this._bufferIndex = 0; + } + + this.data[key] = value; + }, + + /** + * Clears cache contents. + */ + clear: function() + { + this._ringBuffer = new Array(this._ringBuffer.length); + this.data = {__proto__: null}; + } +} + +// Getters for common services, this should be replaced by Services.jsm in future + +XPCOMUtils.defineLazyServiceGetter(Utils, "categoryManager", "@mozilla.org/categorymanager;1", "nsICategoryManager"); +XPCOMUtils.defineLazyServiceGetter(Utils, "ioService", "@mozilla.org/network/io-service;1", "nsIIOService"); +XPCOMUtils.defineLazyServiceGetter(Utils, "promptService", "@mozilla.org/embedcomp/prompt-service;1", "nsIPromptService"); +XPCOMUtils.defineLazyServiceGetter(Utils, "effectiveTLD", "@mozilla.org/network/effective-tld-service;1", "nsIEffectiveTLDService"); +XPCOMUtils.defineLazyServiceGetter(Utils, "netUtils", "@mozilla.org/network/util;1", "nsINetUtil"); +XPCOMUtils.defineLazyServiceGetter(Utils, "styleService", "@mozilla.org/content/style-sheet-service;1", "nsIStyleSheetService"); +XPCOMUtils.defineLazyServiceGetter(Utils, "prefService", "@mozilla.org/preferences-service;1", "nsIPrefService"); +XPCOMUtils.defineLazyServiceGetter(Utils, "versionComparator", "@mozilla.org/xpcom/version-comparator;1", "nsIVersionComparator"); +XPCOMUtils.defineLazyServiceGetter(Utils, "windowMediator", "@mozilla.org/appshell/window-mediator;1", "nsIWindowMediator"); +XPCOMUtils.defineLazyServiceGetter(Utils, "windowWatcher", "@mozilla.org/embedcomp/window-watcher;1", "nsIWindowWatcher"); +XPCOMUtils.defineLazyServiceGetter(Utils, "chromeRegistry", "@mozilla.org/chrome/chrome-registry;1", "nsIXULChromeRegistry"); +XPCOMUtils.defineLazyServiceGetter(Utils, "systemPrincipal", "@mozilla.org/systemprincipal;1", "nsIPrincipal"); +XPCOMUtils.defineLazyServiceGetter(Utils, "dateFormatter", "@mozilla.org/intl/scriptabledateformat;1", "nsIScriptableDateFormat"); +XPCOMUtils.defineLazyServiceGetter(Utils, "childMessageManager", "@mozilla.org/childprocessmessagemanager;1", "nsISyncMessageSender"); +XPCOMUtils.defineLazyServiceGetter(Utils, "parentMessageManager", "@mozilla.org/parentprocessmessagemanager;1", "nsIFrameMessageManager"); +XPCOMUtils.defineLazyServiceGetter(Utils, "httpProtocol", "@mozilla.org/network/protocol;1?name=http", "nsIHttpProtocolHandler"); +XPCOMUtils.defineLazyServiceGetter(Utils, "clipboard", "@mozilla.org/widget/clipboard;1", "nsIClipboard"); +XPCOMUtils.defineLazyServiceGetter(Utils, "clipboardHelper", "@mozilla.org/widget/clipboardhelper;1", "nsIClipboardHelper"); +XPCOMUtils.defineLazyGetter(Utils, "crypto", function() +{ + try + { + let ctypes = Components.utils.import("resource://gre/modules/ctypes.jsm", null).ctypes; + + let nsslib; + try + { + nsslib = ctypes.open(ctypes.libraryName("nss3")); + } + catch (e) + { + // It seems that on Mac OS X the full path name needs to be specified + let file = Services.dirsvc.get("GreD", Ci.nsILocalFile); + file.append(ctypes.libraryName("nss3")); + nsslib = ctypes.open(file.path); + } + + let result = {}; + + // seccomon.h + result.siUTF8String = 14; + + // secoidt.h + result.SEC_OID_ISO_SHA_WITH_RSA_SIGNATURE = 15; + + // The following types are opaque to us + result.VFYContext = ctypes.void_t; + result.SECKEYPublicKey = ctypes.void_t; + result.CERTSubjectPublicKeyInfo = ctypes.void_t; + + /* + * seccomon.h + * struct SECItemStr { + * SECItemType type; + * unsigned char *data; + * unsigned int len; + * }; + */ + result.SECItem = ctypes.StructType("SECItem", [ + {type: ctypes.int}, + {data: ctypes.unsigned_char.ptr}, + {len: ctypes.int} + ]); + + /* + * cryptohi.h + * extern VFYContext *VFY_CreateContext(SECKEYPublicKey *key, SECItem *sig, + * SECOidTag sigAlg, void *wincx); + */ + result.VFY_CreateContext = nsslib.declare( + "VFY_CreateContext", + ctypes.default_abi, result.VFYContext.ptr, + result.SECKEYPublicKey.ptr, + result.SECItem.ptr, + ctypes.int, + ctypes.voidptr_t + ); + + /* + * cryptohi.h + * extern void VFY_DestroyContext(VFYContext *cx, PRBool freeit); + */ + result.VFY_DestroyContext = nsslib.declare( + "VFY_DestroyContext", + ctypes.default_abi, ctypes.void_t, + result.VFYContext.ptr, + ctypes.bool + ); + + /* + * cryptohi.h + * extern SECStatus VFY_Begin(VFYContext *cx); + */ + result.VFY_Begin = nsslib.declare("VFY_Begin", + ctypes.default_abi, ctypes.int, + result.VFYContext.ptr + ); + + /* + * cryptohi.h + * extern SECStatus VFY_Update(VFYContext *cx, const unsigned char *input, + * unsigned int inputLen); + */ + result.VFY_Update = nsslib.declare( + "VFY_Update", + ctypes.default_abi, ctypes.int, + result.VFYContext.ptr, + ctypes.unsigned_char.ptr, + ctypes.int + ); + + /* + * cryptohi.h + * extern SECStatus VFY_End(VFYContext *cx); + */ + result.VFY_End = nsslib.declare( + "VFY_End", + ctypes.default_abi, ctypes.int, + result.VFYContext.ptr + ); + + /* + * keyhi.h + * extern CERTSubjectPublicKeyInfo * + * SECKEY_DecodeDERSubjectPublicKeyInfo(SECItem *spkider); + */ + result.SECKEY_DecodeDERSubjectPublicKeyInfo = nsslib.declare( + "SECKEY_DecodeDERSubjectPublicKeyInfo", + ctypes.default_abi, result.CERTSubjectPublicKeyInfo.ptr, + result.SECItem.ptr + ); + + /* + * keyhi.h + * extern void SECKEY_DestroySubjectPublicKeyInfo(CERTSubjectPublicKeyInfo *spki); + */ + result.SECKEY_DestroySubjectPublicKeyInfo = nsslib.declare( + "SECKEY_DestroySubjectPublicKeyInfo", + ctypes.default_abi, ctypes.void_t, + result.CERTSubjectPublicKeyInfo.ptr + ); + + /* + * keyhi.h + * extern SECKEYPublicKey * + * SECKEY_ExtractPublicKey(CERTSubjectPublicKeyInfo *); + */ + result.SECKEY_ExtractPublicKey = nsslib.declare( + "SECKEY_ExtractPublicKey", + ctypes.default_abi, result.SECKEYPublicKey.ptr, + result.CERTSubjectPublicKeyInfo.ptr + ); + + /* + * keyhi.h + * extern void SECKEY_DestroyPublicKey(SECKEYPublicKey *key); + */ + result.SECKEY_DestroyPublicKey = nsslib.declare( + "SECKEY_DestroyPublicKey", + ctypes.default_abi, ctypes.void_t, + result.SECKEYPublicKey.ptr + ); + + // Convenience method + result.getSECItem = function(data) + { + var dataArray = new ctypes.ArrayType(ctypes.unsigned_char, data.length)(); + for (let i = 0; i < data.length; i++) + dataArray[i] = data.charCodeAt(i) % 256; + return new result.SECItem(result.siUTF8String, dataArray, dataArray.length); + }; + + return result; + } + catch (e) + { + Cu.reportError(e); + // Expected, ctypes isn't supported in Gecko 1.9.2 + return null; + } +}); + +if ("@mozilla.org/messenger/headerparser;1" in Cc) + XPCOMUtils.defineLazyServiceGetter(Utils, "headerParser", "@mozilla.org/messenger/headerparser;1", "nsIMsgHeaderParser"); +else + Utils.headerParser = null; diff --git a/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/windowObserver.js b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/windowObserver.js new file mode 100644 index 0000000..eb0b13a --- /dev/null +++ b/helpers/DATA/firefox/gnu/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/lib/windowObserver.js @@ -0,0 +1,112 @@ +/* + * This file is part of the Adblock Plus build tools, + * Copyright (C) 2006-2014 Eyeo GmbH + * + * Adblock Plus is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3 as + * published by the Free Software Foundation. + * + * Adblock Plus is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. + */ + +Cu.import("resource://gre/modules/Services.jsm"); +Cu.import("resource://gre/modules/XPCOMUtils.jsm"); + +exports.WindowObserver = WindowObserver; + +/** + * This class will call listener's method applyToWindow() for all new chrome + * windows being opened. It will also call listener's method removeFromWindow() + * for all windows still open when the extension is shut down. + * @param {Object} listener + * @param {String} [when] when to execute applyToWindow(). "start" means immediately + * when the window opens, "ready" when its contents are available + * and "end" (default) means to wait until the "load" event. + * @constructor + */ +function WindowObserver(listener, when) +{ + this._listener = listener; + this._when = when; + + let windows = []; + let e = Services.wm.getZOrderDOMWindowEnumerator(null, true); + while (e.hasMoreElements()) + windows.push(e.getNext()); + + // Check if there are any windows that we missed + let eAll = Services.ww.getWindowEnumerator(); + while (eAll.hasMoreElements()) + { + let element = eAll.getNext(); + if (windows.indexOf(element) < 0) + windows.push(element); + } + + for (let i = 0; i < windows.length; i++) + { + let window = windows[i].QueryInterface(Ci.nsIDOMWindow); + if (when == "start" || window.document.readyState == "complete") + this._listener.applyToWindow(window); + else + this.observe(window, "chrome-document-global-created", null); + } + + Services.obs.addObserver(this, "chrome-document-global-created", true); + + this._shutdownHandler = function() + { + let e = Services.ww.getWindowEnumerator(); + while (e.hasMoreElements()) + this._listener.removeFromWindow(e.getNext().QueryInterface(Ci.nsIDOMWindow)); + + Services.obs.removeObserver(this, "chrome-document-global-created"); + }.bind(this); + onShutdown.add(this._shutdownHandler); +} +WindowObserver.prototype = +{ + _listener: null, + _when: null, + _shutdownHandler: null, + + shutdown: function() + { + if (!this._shutdownHandler) + return; + + onShutdown.remove(this._shutdownHandler); + this._shutdownHandler(); + this._shutdownHandler = null; + }, + + observe: function(subject, topic, data) + { + if (topic == "chrome-document-global-created") + { + let window = subject.QueryInterface(Ci.nsIDOMWindow); + if (this._when == "start") + { + this._listener.applyToWindow(window); + return; + } + + let event = (this._when == "ready" ? "DOMContentLoaded" : "load"); + let listener = function() + { + window.removeEventListener(event, listener, false); + if (this._shutdownHandler) + this._listener.applyToWindow(window); + }.bind(this); + window.addEventListener(event, listener, false); + } + }, + + QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference, Ci.nsIObserver]) +}; |