| Index: chrome/browser/resources/net_internals/hstsview.js
|
| diff --git a/chrome/browser/resources/net_internals/hstsview.js b/chrome/browser/resources/net_internals/hstsview.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..93744a0a5fed5f0c21dc8b818e5aee5113054c87
|
| --- /dev/null
|
| +++ b/chrome/browser/resources/net_internals/hstsview.js
|
| @@ -0,0 +1,84 @@
|
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +function HSTSView(mainBoxId, queryInputId, formId, queryOutputDivId,
|
| + addInputId, addFormId, addCheckId, deleteInputId, deleteFormId) {
|
| + DivView.call(this, mainBoxId);
|
| +
|
| + this.queryInput_ = document.getElementById(queryInputId);
|
| + this.addCheck_ = document.getElementById(addCheckId);
|
| + this.addInput_ = document.getElementById(addInputId);
|
| + this.deleteInput_ = document.getElementById(deleteInputId);
|
| + this.queryOutputDiv_ = document.getElementById(queryOutputDivId);
|
| +
|
| + var form = document.getElementById(formId);
|
| + form.addEventListener('submit', this.onSubmitQuery_.bind(this), false);
|
| + form = document.getElementById(addFormId);
|
| + form.addEventListener('submit', this.onSubmitAdd_.bind(this), false);
|
| + form = document.getElementById(deleteFormId);
|
| + form.addEventListener('submit', this.onSubmitDelete_.bind(this), false);
|
| +
|
| + g_browser.hstsQueryCallback = this.onQueryCallback_.bind(this);
|
| +}
|
| +
|
| +inherits(HSTSView, DivView);
|
| +
|
| +HSTSView.prototype.onSubmitQuery_ = function(event) {
|
| + g_browser.sendHSTSQuery(this.queryInput_.value);
|
| + event.preventDefault();
|
| +};
|
| +
|
| +HSTSView.prototype.onSubmitAdd_ = function(event) {
|
| + g_browser.sendHSTSAdd(this.addInput_.value, this.addCheck_.checked);
|
| + g_browser.sendHSTSQuery(this.addInput_.value);
|
| + this.queryInput_.value = this.addInput_.value;
|
| + this.addCheck_.checked = false;
|
| + this.addInput_.value = "";
|
| + event.preventDefault();
|
| +};
|
| +
|
| +HSTSView.prototype.onSubmitDelete_ = function(event) {
|
| + g_browser.sendHSTSDelete(this.deleteInput_.value);
|
| + this.deleteInput_.value = "";
|
| + event.preventDefault();
|
| +};
|
| +
|
| +function hstsModeToString(m) {
|
| + if (m == 0) {
|
| + return "STRICT";
|
| + } else if (m == 1) {
|
| + return "OPPORTUNISTIC";
|
| + } else if (m == 2) {
|
| + return "SPDY";
|
| + } else {
|
| + return "UNKNOWN";
|
| + }
|
| +}
|
| +
|
| +function yellowFade(element) {
|
| + element.style.webkitTransitionProperty = "background-color";
|
| + element.style.webkitTransitionDuration = "0";
|
| + element.style.backgroundColor = "#fffccf";
|
| + setTimeout(function() {
|
| + element.style.webkitTransitionDuration = "1000ms";
|
| + element.style.backgroundColor = "#fff";
|
| + }, 0);
|
| +}
|
| +
|
| +HSTSView.prototype.onQueryCallback_ = function(result) {
|
| + if (result.result == false) {
|
| + this.queryOutputDiv_.innerHTML = "<b>Not found</b>";
|
| + } else {
|
| + this.queryOutputDiv_.innerHTML = "<b>Found</b>: mode: <tt>" +
|
| + hstsModeToString(result.mode) +
|
| + "</tt> include_subdomains: <tt>" +
|
| + result.subdomains +
|
| + "</tt> domain: <tt>" +
|
| + result.domain +
|
| + "</tt> is_preloaded: <tt>" +
|
| + result.preloaded +
|
| + "</tt>";
|
| + }
|
| + yellowFade(this.queryOutputDiv_);
|
| +}
|
|
|