diff options
Diffstat (limited to 'chrome/common/extensions/docs/examples/api/preferences/allowThirdPartyCookies/popup.html')
-rw-r--r-- | chrome/common/extensions/docs/examples/api/preferences/allowThirdPartyCookies/popup.html | 138 |
1 files changed, 17 insertions, 121 deletions
diff --git a/chrome/common/extensions/docs/examples/api/preferences/allowThirdPartyCookies/popup.html b/chrome/common/extensions/docs/examples/api/preferences/allowThirdPartyCookies/popup.html index 67556a1..37dccec 100644 --- a/chrome/common/extensions/docs/examples/api/preferences/allowThirdPartyCookies/popup.html +++ b/chrome/common/extensions/docs/examples/api/preferences/allowThirdPartyCookies/popup.html @@ -1,128 +1,24 @@ <!DOCTYPE html> <html> <head> - <script> -var pref = chrome.experimental.contentSettings.global.thirdPartyCookiesAllowed; - -/** - * Returns whether the |levelOfControl| means that the extension can change the - * preference value. - * - * @param levelOfControl{string} - */ -function settingIsControllable(levelOfControl) { - return (levelOfControl == "controllable_by_this_extension" || - levelOfControl == "controlled_by_this_extension"); -} - -/** - * Updates the UI to reflect the state of the preference. - * - * @param settings{object} A settings object, as returned from |get()| or the - * |onchange| event. - */ -function updateUI(settings) { - var disableUI = !settingIsControllable(settings.levelOfControl); - document.getElementById("regularValue").disabled = disableUI; - document.getElementById("useSeparateIncognitoSettings").disabled = disableUI; - if (settings.hasOwnProperty('incognitoSpecific')) { - var hasIncognitoValue = settings.incognitoSpecific; - document.getElementById("useSeparateIncognitoSettings").checked = - hasIncognitoValue; - document.getElementById("incognitoValue").disabled = - disableUI || !hasIncognitoValue; - document.getElementById("incognitoValue").checked = settings.value; - } else { - document.getElementById("regularValue").checked = settings.value; - } -} - -/** - * Wrapper for |updateUI| which is used as callback for the |get()| method and - * which logs the result. - * If there was an error getting the preference, does nothing. - * - * @param settings{object} A settings object, as returned from |get()|. - */ -function updateUIFromGet(settings) { - if (settings) { - console.log('pref.get result:' + JSON.stringify(settings)); - updateUI(settings); - } -} - -/** - * Wrapper for |updateUI| which is used as handler for the |onchange| event - * and which logs the result. - * - * @param settings{object} A settings object, as returned from the |onchange| - * event. - */ -function updateUIFromOnChange(settings) { - console.log('pref.onChange event:' + JSON.stringify(settings)); - updateUI(settings); -} - -/* - * Initializes the UI. - */ -function init() { - chrome.extension.isAllowedIncognitoAccess(function(allowed) { - if (allowed) { - pref.get({'incognito': true}, updateUIFromGet); - document.getElementById("incognito").style.display = "block"; - document.getElementById("incognito-forbidden").style.display = "none"; - } - }); - pref.get({}, updateUIFromGet); - pref.onChange.addListener(updateUIFromOnChange); -} - -/** - * Called from the UI to change the preference value. - * - * @param enabled{boolean} The new preference value. - * @param incognito{boolean} Whether the value is specific to incognito mode. - */ -function setPrefValue(enabled, incognito) { - var scope = incognito ? 'incognito_session_only' : 'regular'; - pref.set({'value': enabled, 'scope': scope}); -} - -/** - * Called from the UI to change whether to use separate settings for - * incognito mode. - * - * @param value{boolean} whether to use separate settings for - * incognito mode. - */ -function setUseSeparateIncognitoSettings(value) { - if (!value) { - pref.clear({'incognito': true}); - } else { - // Explicitly set the value for incognito mode. - pref.get({'incognito': true}, function(settings) { - pref.set({'incognito': true, 'value': settings.value}); - }); - } - document.getElementById("incognitoValue").disabled = !value; -} - - </script> + <link href="popup.css" rel="stylesheet" type="text/css"> + <script src="popup.js"></script> </head> -<body onload="init()"> - -<div style="width: 300px"> -<input type="checkbox" onclick="setPrefValue(this.checked)" id="regularValue" /> Allow third-party sites to set cookies - -<div id="incognito" style="display:none"> -<input type="checkbox" onclick="setUseSeparateIncognitoSettings(this.checked)" id="useSeparateIncognitoSettings" /> Use separate setting for incognito mode: -<br> -<input type="checkbox" onclick="setPrefValue(this.checked, true)" id="incognitoValue" disabled="disabled"/> Enable referrers in incognito sessions -</div> -<div id="incognito-forbidden"> -Select "Allow in incognito" to access incognito preferences -</div> +<body> + +<div id="container"> + <input type="checkbox" id="regularValue" /> + Allow third-party sites to set cookies + <div id="incognito"> + <input type="checkbox" id="useSeparateIncognitoSettings" /> + Use separate setting for incognito mode: + <br> + <input type="checkbox" id="incognitoValue" disabled="disabled"/> + Allow third-party sites to set cookies in incognito sessions + </div> + <div id="incognito-forbidden"> + Select "Allow in incognito" to access incognito preferences + </div> </div> </body> |