1/* Copyright (c) 2014 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file. */
4
5function setRadio(name, defaultValue) {
6  chrome.storage.sync.get(name, function(result) {
7    var value = result[name];
8    if (value === undefined) {
9      value = defaultValue;
10      var obj = {};
11      obj[name] = value;
12      chrome.storage.sync.set(obj);
13    }
14    var controls = document.querySelectorAll(
15        'input[type="radio"][name="' + name + '"]');
16    for (var i = 0; i < controls.length; i++) {
17      var c = controls[i];
18      if (c.value == value) {
19        c.checked = true;
20      }
21      c.addEventListener('change', function(evt) {
22        if (evt.target.checked) {
23          var obj = {};
24          obj[evt.target.name] = evt.target.value;
25          chrome.storage.sync.set(obj);
26        }
27      }, false);
28    }
29  });
30}
31
32function load() {
33  var isMac = (navigator.appVersion.indexOf("Mac") != -1);
34  if (isMac) {
35    document.body.classList.add('mac');
36  } else {
37    document.body.classList.add('nonmac');
38  }
39
40  var isCros = (navigator.appVersion.indexOf("CrOS") != -1);
41  if (isCros) {
42    document.body.classList.add('cros');
43  } else {
44    document.body.classList.add('noncros');
45  }
46
47  setRadio('onenable', 'anim');
48  setRadio('onjump', 'flash');
49
50  var heading = document.querySelector('h1');
51  var sel = window.getSelection();
52  sel.setBaseAndExtent(heading, 0, heading, 0);
53
54  document.title = chrome.i18n.getMessage('caretBrowsingOptions');
55  var i18nElements = document.querySelectorAll('*[i18n-content]');
56  for (var i = 0; i < i18nElements.length; i++) {
57    var elem = i18nElements[i];
58    var msg = elem.getAttribute('i18n-content');
59    elem.innerHTML = chrome.i18n.getMessage(msg);
60  }
61}
62
63window.addEventListener('load', load, false);
64