Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / ui / accessibility / extensions / highcontrast / common.js
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
5 var DEFAULT_SCHEME = 3;
6 var MAX_SCHEME = 5;
7
8 function $(id) {
9   return document.getElementById(id);
10 }
11
12 function getEnabled() {
13   var result = localStorage['enabled'];
14   if (result === 'true' || result === 'false') {
15     return (result === 'true');
16   }
17   localStorage['enabled'] = 'true';
18   return true;
19 }
20
21 function setEnabled(enabled) {
22   localStorage['enabled'] = enabled;
23 }
24
25 function getKeyAction() {
26   var keyAction = localStorage['keyaction'];
27   if (keyAction == 'global' || keyAction == 'site') {
28     return keyAction;
29   }
30   keyAction = 'global';
31   localStorage['keyaction'] = keyAction;
32   return keyAction;
33 }
34
35 function setKeyAction(keyAction) {
36   if (keyAction != 'global' && keyAction != 'site') {
37     keyAction = 'global';
38   }
39   localStorage['keyaction'] = keyAction;
40 }
41
42 function getDefaultScheme() {
43   var scheme = localStorage['scheme'];
44   if (scheme >= 0 && scheme <= MAX_SCHEME) {
45     return scheme;
46   }
47   scheme = DEFAULT_SCHEME;
48   localStorage['scheme'] = scheme;
49   return scheme;
50 }
51
52 function setDefaultScheme(scheme) {
53   if (!(scheme >= 0 && scheme <= MAX_SCHEME)) {
54     scheme = DEFAULT_SCHEME;
55   }
56   localStorage['scheme'] = scheme;
57 }
58
59 function getSiteScheme(site) {
60   var scheme = getDefaultScheme();
61   try {
62     var siteSchemes = JSON.parse(localStorage['siteschemes']);
63     scheme = siteSchemes[site];
64     if (!(scheme >= 0 && scheme <= MAX_SCHEME)) {
65       scheme = getDefaultScheme();
66     }
67   } catch (e) {
68     scheme = getDefaultScheme();
69   }
70   return scheme;
71 }
72
73 function setSiteScheme(site, scheme) {
74   if (!(scheme >= 0 && scheme <= MAX_SCHEME)) {
75     scheme = getDefaultScheme();
76   }
77   var siteSchemes = {};
78   try {
79     siteSchemes = JSON.parse(localStorage['siteschemes']);
80     siteSchemes['www.example.com'] = getDefaultScheme();
81   } catch (e) {
82     siteSchemes = {};
83   }
84   siteSchemes[site] = scheme;
85   localStorage['siteschemes'] = JSON.stringify(siteSchemes);
86 }
87
88 function resetSiteSchemes() {
89   var siteSchemes = {};
90   localStorage['siteschemes'] = JSON.stringify(siteSchemes);
91 }
92
93 function siteFromUrl(url) {
94   var a = document.createElement('a');
95   a.href = url;
96   return a.hostname;
97 }
98
99 function isDisallowedUrl(url) {
100   return url.indexOf('chrome') == 0 || url.indexOf('about') == 0;
101 }