1 // Copyright 2013 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.
5 function toggleHelpBox() {
6 var helpBoxOuter
= document
.getElementById('help-box-outer');
7 helpBoxOuter
.classList
.toggle('hidden');
8 var moreLessButton
= document
.getElementById('more-less-button');
9 if (helpBoxOuter
.classList
.contains('hidden')) {
10 moreLessButton
.innerText
= moreLessButton
.moreText
;
12 moreLessButton
.innerText
= moreLessButton
.lessText
;
16 function diagnoseErrors() {
17 var extension_id
= "idddmepepmjcgiedknnmlbadcokidhoa";
18 var diagnose_frame
= document
.getElementById('diagnose-frame');
19 diagnose_frame
.innerHTML
=
20 '<iframe src="chrome-extension://' + extension_id
+
21 '/index.html"></iframe>';
24 // Subframes use a different layout but the same html file. This is to make it
25 // easier to support platforms that load the error page via different
26 // mechanisms (Currently just iOS).
27 if (window
.top
.location
!= window
.location
)
28 document
.documentElement
.setAttribute('subframe', '');
30 // Re-renders the error page using |strings| as the dictionary of values.
31 // Used by NetErrorTabHelper to update DNS error pages with probe results.
32 function updateForDnsProbe(strings
) {
33 i18nTemplate
.process(document
, strings
);
34 var context
= new JsEvalContext(strings
);
35 jstProcess(context
, document
.getElementById('t'));
38 // Given the classList property of an element, adds an icon class to the list
39 // and removes the previously-
40 function updateIconClass(classList
, newClass
) {
43 if (classList
.hasOwnProperty('last_icon_class')) {
44 oldClass
= classList
['last_icon_class']
45 if (oldClass
== newClass
)
49 classList
.add(newClass
);
50 if (oldClass
!== undefined)
51 classList
.remove(oldClass
);
53 classList
['last_icon_class'] = newClass
;
56 // Does a search using |baseSearchUrl| and the text in the search box.
57 function search(baseSearchUrl
) {
58 var searchTextNode
= document
.getElementById('search-box');
59 document
.location
= baseSearchUrl
+ searchTextNode
.value
;
63 // Implements button clicks. This function is needed during the transition
64 // between implementing these in trunk chromium and implementing them in
66 function reloadButtonClick(url
) {
67 if (window
.errorPageController
) {
68 errorPageController
.reloadButtonClick();
74 function loadStaleButtonClick() {
75 if (window
.errorPageController
) {
76 errorPageController
.loadStaleButtonClick();
80 function moreButtonClick() {
81 if (window
.errorPageController
) {
82 errorPageController
.moreButtonClick();
86 <if expr
="is_macosx or is_ios or is_linux or is_android">
87 // Re-orders buttons. Used on Mac, Linux, and Android, where reload should go
89 function swapButtonOrder() {
90 var reloadButton
= document
.getElementById('reload-button');
91 var moreLessButton
= document
.getElementById('more-less-button');
92 var staleLoadButton
= document
.getElementById('stale-load-button');
93 reloadButton
.parentNode
.insertBefore(moreLessButton
, reloadButton
);
94 reloadButton
.parentNode
.insertBefore(staleLoadButton
, reloadButton
)
96 document
.addEventListener("DOMContentLoaded", swapButtonOrder
);