OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script> | 4 <title>Popup</title> |
5 var incognito; | 5 <script src="popup.js"></script> |
6 var url; | 6 </head> |
7 | 7 <body> |
8 function init() { | 8 <fieldset> |
9 chrome.tabs.getSelected(undefined, function(tab) { | 9 <dl> |
10 incognito = tab.incognito; | 10 <dt><label for="cookies">Cookies: </label></dt> |
11 url = tab.url; | 11 <dd><select id="cookies"> |
12 var types = ["cookies", "images", "javascript", "plugins", "popups", | 12 <option value="allow">Allow</option> |
13 "notifications"]; | 13 <option value="session_only">Session only</option> |
14 types.forEach(function(type) { | 14 <option value="block">Block</option> |
15 chrome.contentSettings[type].get({ | 15 </select></dd> |
16 'primaryUrl': url, | 16 <dt><label for="images">Images: </label></dt> |
17 'incognito': incognito | 17 <dd><select id="images"> |
18 }, | 18 <option value="allow">Allow</option> |
19 function(details) { | 19 <option value="block">Block</option> |
20 document.getElementById(type).value = details.setting; | 20 </select> |
21 }); | 21 <dt><label for="javascript">Javascript: </label></dt> |
22 }); | 22 <dd><select id="javascript"> |
23 }); | 23 <option value="allow">Allow</option> |
24 } | 24 <option value="block">Block</option> |
25 | 25 </select></dd> |
26 function settingChanged(element) { | 26 <dt><label for="plugins">Plug-ins: </label></dt> |
27 var type = element.id; | 27 <dd><select id="plugins"> |
28 var setting = element.value; | 28 <option value="allow">Allow</option> |
29 var pattern = /^file:/.test(url) ? url : url.replace(/\/[^\/]*?$/, '/*'); | 29 <option value="block">Block</option> |
30 console.log(type+" setting for "+pattern+": "+setting); | 30 </select></dd> |
31 chrome.contentSettings[type].set({ | 31 <dt><label for="popups">Pop-ups: </label></dt> |
32 'primaryPattern': pattern, | 32 <dd><select id="popups"> |
33 'setting': setting, | 33 <option value="allow">Allow</option> |
34 'scope': (incognito ? 'incognito_session_only' : 'regular') | 34 <option value="block">Block</option> |
35 }); | 35 </select></dd> |
36 } | 36 <dt><label for="location">Location: </label></dt> |
37 </script> | 37 <dd><select id="location" disabled> |
38 </head> | 38 <option value="allow">Allow</option> |
39 <body onload="init()"> | 39 <option value="ask">Ask</option> |
40 | 40 <option value="block">Block</option> |
41 <fieldset> | 41 </select></dd> |
42 <dl> | 42 <dt><label for="notifications">Notifications: </label></dt> |
43 <dt><label for="cookies">Cookies: </label></dt> | 43 <dd><select id="notifications"> |
44 <dd><select id="cookies" onchange="settingChanged(this);"> | 44 <option value="allow">Allow</option> |
45 <option value="allow">Allow</option> | 45 <option value="ask">Ask</option> |
46 <option value="session_only">Session only</option> | 46 <option value="block">Block</option> |
47 <option value="block">Block</option> | 47 </select></dd> |
48 </select></dd> | 48 </dl> |
49 <dt><label for="images">Images: </label></dt> | 49 </fieldset> |
50 <dd><select id="images" onchange="settingChanged(this);"> | |
51 <option value="allow">Allow</option> | |
52 <option value="block">Block</option> | |
53 </select> | |
54 <dt><label for="javascript">Javascript: </label></dt> | |
55 <dd><select id="javascript" onchange="settingChanged(this);"> | |
56 <option value="allow">Allow</option> | |
57 <option value="block">Block</option> | |
58 </select></dd> | |
59 <dt><label for="plugins">Plug-ins: </label></dt> | |
60 <dd><select id="plugins" onchange="settingChanged(this);"> | |
61 <option value="allow">Allow</option> | |
62 <option value="block">Block</option> | |
63 </select></dd> | |
64 <dt><label for="popups">Pop-ups: </label></dt> | |
65 <dd><select id="popups" onchange="settingChanged(this);"> | |
66 <option value="allow">Allow</option> | |
67 <option value="block">Block</option> | |
68 </select></dd> | |
69 <dt><label for="location">Location: </label></dt> | |
70 <dd><select id="location" onchange="settingChanged(this);" disabled> | |
71 <option value="allow">Allow</option> | |
72 <option value="ask">Ask</option> | |
73 <option value="block">Block</option> | |
74 </select></dd> | |
75 <dt><label for="notifications">Notifications: </label></dt> | |
76 <dd><select id="notifications" onchange="settingChanged(this);"> | |
77 <option value="allow">Allow</option> | |
78 <option value="ask">Ask</option> | |
79 <option value="block">Block</option> | |
80 </select></dd> | |
81 </dl> | |
82 </fieldset> | |
83 | 50 |
84 | 51 |
85 </body> | 52 </body> |
86 </html> | 53 </html> |
OLD | NEW |