Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / webui / options / chromeos / internet_options_handler_strings.cc
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 #include "chrome/browser/ui/webui/options/chromeos/internet_options_handler_strings.h"
6
7 #include "base/macros.h"
8 #include "base/values.h"
9 #include "grit/ash_strings.h"
10 #include "grit/chromium_strings.h"
11 #include "grit/generated_resources.h"
12 #include "third_party/cros_system_api/dbus/service_constants.h"
13 #include "ui/base/l10n/l10n_util.h"
14
15 namespace chromeos {
16 namespace internet_options_strings {
17
18 namespace {
19
20 struct StringResource {
21   const char* name;
22   int id;
23 };
24
25 StringResource kStringResources[] = {
26     // Main settings page.
27     {"ethernetTitle", IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET},
28     {"wifiTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_WIFI_NETWORK},
29     {"wimaxTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_WIMAX_NETWORK},
30     {"cellularTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_CELLULAR_NETWORK},
31     {"vpnTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_PRIVATE_NETWORK},
32     {"networkNotConnected", IDS_OPTIONS_SETTINGS_NETWORK_NOT_CONNECTED},
33     {"networkConnected", IDS_CHROMEOS_NETWORK_STATE_READY},
34     {"joinOtherNetwork", IDS_OPTIONS_SETTINGS_NETWORK_OTHER},
35     {"networkOffline", IDS_OPTIONS_SETTINGS_NETWORK_OFFLINE},
36     {"networkDisabled", IDS_OPTIONS_SETTINGS_NETWORK_DISABLED},
37     {"turnOffWifi", IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_WIFI},
38     {"turnOffWimax", IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_WIMAX},
39     {"turnOffCellular", IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_CELLULAR},
40     {"disconnectNetwork", IDS_OPTIONS_SETTINGS_DISCONNECT},
41     {"preferredNetworks", IDS_OPTIONS_SETTINGS_PREFERRED_NETWORKS_LABEL},
42     {"preferredNetworksPage", IDS_OPTIONS_SETTINGS_PREFERRED_NETWORKS_TITLE},
43     {"useSharedProxies", IDS_OPTIONS_SETTINGS_USE_SHARED_PROXIES},
44     { "addConnectionTitle",
45       IDS_OPTIONS_SETTINGS_SECTION_TITLE_ADD_CONNECTION },
46     {"addConnectionWifi", IDS_OPTIONS_SETTINGS_ADD_CONNECTION_WIFI},
47     {"addConnectionVPN", IDS_STATUSBAR_NETWORK_ADD_VPN},
48     {"otherCellularNetworks", IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS},
49     {"enableDataRoaming", IDS_OPTIONS_SETTINGS_ENABLE_DATA_ROAMING},
50     {"disableDataRoaming", IDS_OPTIONS_SETTINGS_DISABLE_DATA_ROAMING},
51     {"dataRoamingDisableToggleTooltip",
52      IDS_OPTIONS_SETTINGS_TOGGLE_DATA_ROAMING_RESTRICTION},
53
54     // Internet details dialog.
55     {"managedNetwork", IDS_OPTIONS_SETTINGS_MANAGED_NETWORK},
56     {"wifiNetworkTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION},
57     {"vpnTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_VPN},
58     {"cellularConnTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION},
59     {"cellularDeviceTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_DEVICE},
60     {"networkTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_NETWORK},
61     {"securityTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_SECURITY},
62     {"proxyTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_PROXY},
63     {"connectionState", IDS_OPTIONS_SETTINGS_INTERNET_CONNECTION_STATE},
64     {"inetAddress", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_ADDRESS},
65     {"inetNetmask", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SUBNETMASK},
66     {"inetGateway", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_GATEWAY},
67     {"inetNameServers", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_DNSSERVER},
68     {"ipAutomaticConfiguration",
69      IDS_OPTIONS_SETTINGS_INTERNET_IP_AUTOMATIC_CONFIGURATION},
70     {"automaticNameServers",
71      IDS_OPTIONS_SETTINGS_INTERNET_AUTOMATIC_NAME_SERVERS},
72     {"userNameServer1", IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_1},
73     {"userNameServer2", IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_2},
74     {"userNameServer3", IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_3},
75     {"userNameServer4", IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_4},
76     {"googleNameServers", IDS_OPTIONS_SETTINGS_INTERNET_GOOGLE_NAME_SERVERS},
77     {"userNameServers", IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVERS},
78     {"hardwareAddress", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_HARDWARE_ADDRESS},
79     {"detailsInternetDismiss", IDS_CLOSE},
80     {"activateButton", IDS_OPTIONS_SETTINGS_ACTIVATE},
81     {"buyplanButton", IDS_OPTIONS_SETTINGS_BUY_PLAN},
82     {"connectButton", IDS_OPTIONS_SETTINGS_CONNECT},
83     {"configureButton", IDS_OPTIONS_SETTINGS_CONFIGURE},
84     {"disconnectButton", IDS_OPTIONS_SETTINGS_DISCONNECT},
85     {"viewAccountButton", IDS_STATUSBAR_NETWORK_VIEW_ACCOUNT},
86     {"wimaxConnTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_WIMAX},
87
88     // Wifi Tab.
89     {"inetSsid", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_ID},
90     {"inetBssid", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_BSSID},
91     {"inetEncryption",
92      IDS_OPTIONS_SETTIGNS_INTERNET_OPTIONS_NETWORK_ENCRYPTION},
93     {"inetFrequency", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_FREQUENCY},
94     {"inetFrequencyFormat",
95      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_FREQUENCY_MHZ},
96     {"inetSignalStrength",
97      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_STRENGTH},
98     {"inetSignalStrengthFormat",
99      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_STRENGTH_PERCENTAGE},
100     {"inetPassProtected", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NET_PROTECTED},
101     {"inetNetworkShared", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_SHARED},
102     {"inetPreferredNetwork",
103      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PREFER_NETWORK},
104     {"inetAutoConnectNetwork",
105      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_AUTO_CONNECT},
106
107     // VPN Tab.
108     {"inetServiceName", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_SERVICE_NAME},
109     {"inetServerHostname",
110      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_SERVER_HOSTNAME},
111     {"inetProviderType",
112      IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_PROVIDER_TYPE},
113     {"inetUsername", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_USERNAME},
114
115     // Cellular Tab.
116     {"serviceName", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_SERVICE_NAME},
117     {"networkTechnology",
118      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_NETWORK_TECHNOLOGY},
119     {"operatorName", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_OPERATOR},
120     {"operatorCode", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_OPERATOR_CODE},
121     {"activationState",
122      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ACTIVATION_STATE},
123     {"roamingState", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ROAMING_STATE},
124     {"restrictedPool", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_RESTRICTED_POOL},
125     {"errorState", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ERROR_STATE},
126     {"cellularManufacturer",
127      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_MANUFACTURER},
128     {"modelId", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_MODEL_ID},
129     {"firmwareRevision",
130      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_FIRMWARE_REVISION},
131     {"hardwareRevision",
132      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_HARDWARE_REVISION},
133     {"prlVersion", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_PRL_VERSION},
134     {"cellularApnLabel", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN},
135     {"cellularApnOther", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_OTHER},
136     {"cellularApnUsername",
137      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_USERNAME},
138     {"cellularApnPassword",
139      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_PASSWORD},
140     {"cellularApnUseDefault", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_CLEAR},
141     {"cellularApnSet", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_SET},
142     {"cellularApnCancel", IDS_CANCEL},
143
144     // Security Tab.
145     {"lockSimCard", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_LOCK_SIM_CARD},
146     {"changePinButton",
147      IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_CHANGE_PIN_BUTTON},
148
149     // Proxy Tab.
150     {"webProxyAutoDiscoveryUrl", IDS_PROXY_WEB_PROXY_AUTO_DISCOVERY},
151 };
152
153 const size_t kStringResourcesLength = arraysize(kStringResources);
154
155 }  // namespace
156
157 void RegisterLocalizedStrings(base::DictionaryValue* localized_strings) {
158   for (size_t i = 0; i < kStringResourcesLength; ++i) {
159     localized_strings->SetString(
160         kStringResources[i].name,
161         l10n_util::GetStringUTF16(kStringResources[i].id));
162   }
163 }
164
165 std::string ActivationStateString(const std::string& activation_state) {
166   int id;
167   if (activation_state == shill::kActivationStateActivated)
168     id = IDS_CHROMEOS_NETWORK_ACTIVATION_STATE_ACTIVATED;
169   else if (activation_state == shill::kActivationStateActivating)
170     id = IDS_CHROMEOS_NETWORK_ACTIVATION_STATE_ACTIVATING;
171   else if (activation_state == shill::kActivationStateNotActivated)
172     id = IDS_CHROMEOS_NETWORK_ACTIVATION_STATE_NOT_ACTIVATED;
173   else if (activation_state == shill::kActivationStatePartiallyActivated)
174     id = IDS_CHROMEOS_NETWORK_ACTIVATION_STATE_PARTIALLY_ACTIVATED;
175   else
176     id = IDS_CHROMEOS_NETWORK_ACTIVATION_STATE_UNKNOWN;
177   return l10n_util::GetStringUTF8(id);
178 }
179
180 std::string RoamingStateString(const std::string& roaming_state) {
181   int id;
182   if (roaming_state == shill::kRoamingStateHome)
183     id = IDS_CHROMEOS_NETWORK_ROAMING_STATE_HOME;
184   else if (roaming_state == shill::kRoamingStateRoaming)
185     id = IDS_CHROMEOS_NETWORK_ROAMING_STATE_ROAMING;
186   else
187     id = IDS_CHROMEOS_NETWORK_ROAMING_STATE_UNKNOWN;
188   return l10n_util::GetStringUTF8(id);
189 }
190
191 std::string ConnectionStateString(const std::string& state) {
192   int id;
193   if (state == shill::kUnknownString)
194     id = IDS_CHROMEOS_NETWORK_STATE_UNKNOWN;
195   else if (state == shill::kStateIdle)
196     id = IDS_CHROMEOS_NETWORK_STATE_IDLE;
197   else if (state == shill::kStateCarrier)
198     id = IDS_CHROMEOS_NETWORK_STATE_CARRIER;
199   else if (state == shill::kStateAssociation)
200     id = IDS_CHROMEOS_NETWORK_STATE_ASSOCIATION;
201   else if (state == shill::kStateConfiguration)
202     id = IDS_CHROMEOS_NETWORK_STATE_CONFIGURATION;
203   else if (state == shill::kStateReady)
204     id = IDS_CHROMEOS_NETWORK_STATE_READY;
205   else if (state == shill::kStateDisconnect)
206     id = IDS_CHROMEOS_NETWORK_STATE_DISCONNECT;
207   else if (state == shill::kStateFailure)
208     id = IDS_CHROMEOS_NETWORK_STATE_FAILURE;
209   else if (state == shill::kStateActivationFailure)
210     id = IDS_CHROMEOS_NETWORK_STATE_ACTIVATION_FAILURE;
211   else if (state == shill::kStatePortal)
212     id = IDS_CHROMEOS_NETWORK_STATE_PORTAL;
213   else if (state == shill::kStateOnline)
214     id = IDS_CHROMEOS_NETWORK_STATE_ONLINE;
215   else
216     id = IDS_CHROMEOS_NETWORK_STATE_UNRECOGNIZED;
217   return l10n_util::GetStringUTF8(id);
218 }
219
220 // Note: these strings are user visible but not localized.
221 std::string EncryptionString(const std::string& security,
222                              const std::string& eap_method) {
223   if (security == shill::kSecurityNone)
224     return "";
225   if (security == shill::kSecurityWpa)
226     return "WPA";
227   if (security == shill::kSecurityWep)
228     return "WEP";
229   if (security == shill::kSecurityRsn)
230     return "RSN";
231   if (security == shill::kSecurityPsk)
232     return "PSK";
233   if (security == shill::kSecurity8021x) {
234     std::string result = "8021X";
235     if (eap_method == shill::kEapMethodPEAP)
236       result += "PEAP";
237     else if (eap_method == shill::kEapMethodTLS)
238       result += "TLS";
239     else if (eap_method == shill::kEapMethodTTLS)
240       result += "TTLS";
241     else if (eap_method == shill::kEapMethodLEAP)
242       result += "LEAP";
243     return result;
244   }
245   return "Unknown";
246 }
247
248 std::string ProviderTypeString(
249     const std::string& provider_type,
250     const base::DictionaryValue& provider_properties) {
251   int id;
252   if (provider_type == shill::kProviderL2tpIpsec) {
253     std::string client_cert_id;
254     provider_properties.GetStringWithoutPathExpansion(
255         shill::kL2tpIpsecClientCertIdProperty, &client_cert_id);
256     if (client_cert_id.empty())
257       id = IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_L2TP_IPSEC_PSK;
258     else
259       id = IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_L2TP_IPSEC_USER_CERT;
260   } else if (provider_type == shill::kProviderOpenVpn) {
261     id = IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_OPEN_VPN;
262   } else {
263     id = IDS_CHROMEOS_NETWORK_ERROR_UNKNOWN;
264   }
265   return l10n_util::GetStringUTF8(id);
266 }
267
268 std::string RestrictedStateString(const std::string& connection_state) {
269   int id;
270   if (connection_state == shill::kStatePortal)
271     id = IDS_CONFIRM_MESSAGEBOX_YES_BUTTON_LABEL;
272   else
273     id = IDS_CONFIRM_MESSAGEBOX_NO_BUTTON_LABEL;
274   return l10n_util::GetStringUTF8(id);
275 }
276
277 std::string NetworkDeviceTypeString(const std::string& network_type) {
278   int id;
279   if (network_type == shill::kTypeEthernet)
280     id = IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET;
281   else if (network_type == shill::kTypeWifi)
282     id = IDS_STATUSBAR_NETWORK_DEVICE_WIFI;
283   else if (network_type == shill::kTypeCellular)
284     id = IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR;
285   else
286     id = IDS_STATUSBAR_NETWORK_DEVICE_UNKNOWN;
287   return l10n_util::GetStringUTF8(id);
288 }
289
290 }  // namespace internet_options_strings
291 }  // namespace chromeos