Skip to content
Browse files

Add a textbox on the Global Excludes pane to test a URL against the l…

…ist. Closes #31

(cherry picked from commit da19471)
  • Loading branch information...
1 parent 2ceab90 commit 89f7b81879c3ddabf06f23c70cea4e515e0235e7 @supahgreg supahgreg committed
View
24 extension/content/js/options.js
@@ -13,6 +13,12 @@ lazyImport(this, "resource://scriptish/utils/Scriptish_isURLExcluded.js", [
"Scriptish_getExcludes"
]);
+let currentExcludes = {};
+lazyImport(currentExcludes, "resource://scriptish/utils/Scriptish_isURLExcluded.js", [
@erikvold scriptish member

need to use a new PattenCollection here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
+ "Scriptish_isURLExcluded",
+ "Scriptish_setExcludes"
+]);
+
lazyUtil(this, "getEditor");
lazyUtil(this, "stringBundle");
@@ -27,6 +33,20 @@ function saveExcludes() {
Scriptish.notify(null, "scriptish-preferences-change", true);
}
+function testExcludes() {
+ let excludesTest = $("excludesTest");
+ let url = excludesTest.value;
+
+ if (0 === url.length) {
+ excludesTest.className = "";
+ return;
+ }
+
+ currentExcludes.Scriptish_setExcludes($("excludes").value.match(/.+/g));
+ excludesTest.className =
+ currentExcludes.Scriptish_isURLExcluded(url) ? "valid" : "invalid";
+}
+
function checkSync() {
let Scriptish_SyncManager = new Scriptish_PrefManager(null, true);
let prefSyncEnabled;
@@ -103,6 +123,10 @@ addEventListener("load", function init() {
addEventListener("dialogaccept", saveExcludes, true);
}
+ // Re-test if either value changes
+ excludes.addEventListener("input", testExcludes, false);
+ $("excludesTest").addEventListener("input", testExcludes, false);
+
// Check sync options to determine whether to add or remove sync service vals.
// NOTE: Delaying to allow the sync-controlling prefs to update.
if (instantApply) {
View
3 extension/content/options.xul
@@ -79,6 +79,9 @@
<hbox pack="end">
<label class="remark" control="excludes" value="options.excludes.remark" localize="value"/>
</hbox>
+ <hbox>
+ <textbox id="excludesTest" flex="1" placeholder="options.excludes.test" localize="placeholder"/>
+ </hbox>
</prefpane>
<prefpane id="pane-sync" label="sync" localize="label">
View
1 extension/locale/de/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=unmht Protokoll (Mozilla Archive Format)
options.excludes.desc=Globale Ausnahmen heben Benutzerskript oder Benutzer Regeln auf
options.excludes.empty=Keine globalen Ausnahmen spezifiziert
options.excludes.remark=(Sie können eine Ausnahme pro Zeile spezifizieren)
+options.excludes.test=
options.logChrome=Nicht-kritische Erweiterungsnachrichten in der Fehler-Konsole loggen
options.logging=Loggen
options.logToErrorConsole=GM_log benutzt die Fehlerkonsole
View
1 extension/locale/en-US/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=unmht protocol (Mozilla Archive format)
options.excludes.desc=Global excludes will override any script or user specified rules
options.excludes.empty=No global excludes specified
options.excludes.remark=(You may specify one exclude per line)
+options.excludes.test=Enter a URL to test against your global excludes
options.logChrome=Log non-critical extension messages to the Error Console
options.logging=Logging
options.logToErrorConsole=GM_log uses the Error Console
View
1 extension/locale/es-ES/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=Protocolo unmht (Formato de Archivo Mozilla, .maf)
options.excludes.desc=Prevalecen sobre cualquier regla de script, o definida por el usuario
options.excludes.empty=No hay definidas exclusiones globales
options.excludes.remark=(Una exclusión por linea)
+options.excludes.test=
options.logChrome=Registrar en log mensajes de extensión no críticos en la Consola de errores
options.logging=Registro de eventos (logging)
options.logToErrorConsole=GM_log usa la Consola de errores
View
1 extension/locale/he/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=תקן העברת נתונים של unmht (תבני
options.excludes.desc=אי הכללה כללית תשבית כל script או כללים מסויימים של משתמש
options.excludes.empty=לא צוינה אי הכללה כללית
options.excludes.remark=(באפשרותך לציין הכללה אחת בכל שורה)
+options.excludes.test=
options.logChrome=לרשום הודעות שאינם קריטיים הרחבה למסוף שגיאה
options.logging=רישום
options.logToErrorConsole=GM_log משתמש במסוף שגיאה
View
1 extension/locale/hu/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=unmht protokoll (Mozilla archívum formátum)
options.excludes.desc=A globális kivételek minden parancsfájl vagy felhasználó által meghatározott szabályt felülírnak
options.excludes.empty=Nincsenek globális kivételek meghatározva
options.excludes.remark=(Soronként egyet adhat meg)
+options.excludes.test=
options.logChrome=Nem kritikus kiterjesztés üzenetek naplózása a Hibakonzolban
options.logging=Naplózás
options.logToErrorConsole=A GM_log használja a Hibakonzolt
View
1 extension/locale/ja-JP/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=unmht プロトコル(Mozilla Archive フォー
options.excludes.desc=Global excludes はスクリプトやユーザー指定ルールより優先
options.excludes.empty=global excludes は指定されていません
options.excludes.remark=(1行1つずつ除外するものを指定)
+options.excludes.test=
options.logChrome=重大(Critical)でないエクステンションのメッセージをエラーコンソールに出力
options.logging=ログ
options.logToErrorConsole=GM_log でエラーコンソールを使用
View
1 extension/locale/pl/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=protokół unmht ( format archiwizacji Mozilli )
options.excludes.desc=Wyjątki globalne nadpiszą każdy skrypt albo reguły zdefiniowane przez użytkownika
options.excludes.empty=Nie zdefiniowano żadnych wyjątków globalnych
options.excludes.remark=(Możesz zdefiniować jeden wyjątek na linię)
+options.excludes.test=
options.logChrome=Zapisuj niekrytyczne wiadomości rozszerzenia do konsoli błędów
options.logging=Logowanie
options.logToErrorConsole=GM_log używa Konsoli Błędów
View
1 extension/locale/pt-BR/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=Protocolo unmht (formato de arquivamento da Mozilla
options.excludes.desc=Exclusões globais substituem qualquer regra especificada por scripts ou pelo usuário.
options.excludes.empty=Nenhuma exclusão global
options.excludes.remark=(Informe uma exclusão por linha)
+options.excludes.test=
options.logChrome=Registrar mensagens não-críticas da extensão no console de erros
options.logging=Log
options.logToErrorConsole=GM_log usa o console de erros
View
1 extension/locale/ru-RU/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=Протокол UnMHT (формат архива M
options.excludes.desc=Глобальное исключение переопределит любой скрипт или правила пользователя
options.excludes.empty=Глобальные исключения не заданы
options.excludes.remark=(Можно указать одно исключение на строку)
+options.excludes.test=
options.logChrome=Записывать некритические сообщения в консоли ошибок
options.logging=Ведение журнала
options.logToErrorConsole=GM_log использует консоль ошибок
View
1 extension/locale/sv-SE/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=UNMHT-protokoll (format för Mozilla Archive)
options.excludes.desc=Globala undantag kommer att åsidosätta alla skript och användardefinierade regler
options.excludes.empty=Inga globala undantag har angivits
options.excludes.remark=(Du kan ange ett undantag per rad)
+options.excludes.test=
options.logChrome=Logga icke-kritiska tilläggsmeddelanden till Felkonsolen
options.logging=Loggning
options.logToErrorConsole=GM_log använder Felkonsolen
View
1 extension/locale/zh-CN/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=unmht 协议(Mozilla 存档格式)
options.excludes.desc=全局排除将覆盖任何脚本和用户指定的规则
options.excludes.empty=当前没有指定全局排除
options.excludes.remark=(您可以每行指定一条排除网址)
+options.excludes.test=
options.logChrome=记录非关键的扩展信息到错误控制台
options.logging=日志
options.logToErrorConsole=GM_log 使用错误控制台
View
1 extension/locale/zh-TW/scriptish.properties
@@ -120,6 +120,7 @@ options.enabledSchemes.unmht=unmht 協定 (Mozilla Archive format)
options.excludes.desc=全域排除規則將覆蓋任何腳本和使用者定義的規則
options.excludes.empty=沒有設定全域排除規則
options.excludes.remark=(您可以每行指定一條排除網址)
+options.excludes.test=
options.logChrome=在錯誤主控台記錄非關鍵的擴充套件訊息
options.logging=記錄
options.logToErrorConsole=GM_log 使用錯誤主控台
View
1 extension/skin/newscript.css
@@ -16,6 +16,7 @@ textbox {
min-width: 35em;
}
+/* NOTE: If changing, keep in sync with options.css */
*[required][invalid="true"] {
box-shadow: 0pt 0pt 1.5px 1px red;
}
View
9 extension/skin/options.css
@@ -30,6 +30,15 @@ description {
font-size: x-small;
}
+/* NOTE: If changing, keep in sync with newscript.css */
+.valid {
+ box-shadow: 0pt 0pt 1.5px 1px green;
+}
+
+.invalid {
+ box-shadow: 0pt 0pt 1.5px 1px red;
+}
+
tabpanel {
-moz-box-orient: vertical;
}

0 comments on commit 89f7b81

Please sign in to comment.
Something went wrong with that request. Please try again.