1// Copyright (c) 2011 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 src="../../../ui/webui/resources/js/util.js">
6
7function reload() {
8  if ($('helpTooltip'))
9    return;
10  history.go(0);
11}
12
13function formatNumber(str) {
14  str += '';
15  if (str == '0') {
16    return 'N/A ';
17  }
18  var x = str.split('.');
19  var x1 = x[0];
20  var x2 = x.length > 1 ? '.' + x[1] : '';
21  var regex = /(\d+)(\d{3})/;
22  while (regex.test(x1)) {
23    x1 = x1.replace(regex, '$1' + ',' + '$2');
24  }
25  return x1;
26}
27
28function addToSum(id, value) {
29  var target = document.getElementById(id);
30  var sum = parseInt(target.innerHTML);
31  sum += parseInt(value);
32  target.innerHTML = sum;
33}
34
35function handleHelpTooltipMouseOver(event) {
36  var el = document.createElement('div');
37  el.id = 'helpTooltip';
38  el.innerHTML = event.toElement.getElementsByTagName('div')[0].innerHTML;
39  el.style.top = 0;
40  el.style.left = 0;
41  el.style.visibility = 'hidden';
42  document.body.appendChild(el);
43
44  var width = el.offsetWidth;
45  var height = el.offsetHeight;
46
47  var scrollLeft = scrollLeftForDocument(document);
48  if (event.pageX - width - 50 + scrollLeft >= 0)
49    el.style.left = (event.pageX - width - 20) + 'px';
50  else
51    el.style.left = (event.pageX + 20) + 'px';
52
53  var scrollTop = scrollTopForDocument(document);
54  if (event.pageY - height - 50 + scrollTop >= 0)
55    el.style.top = (event.pageY - height - 20) + 'px';
56  else
57    el.style.top = (event.pageY + 20) + 'px';
58
59  el.style.visibility = 'visible';
60}
61
62function handleHelpTooltipMouseOut(event) {
63  var el = $('helpTooltip');
64  el.parentNode.removeChild(el);
65}
66
67function enableHelpTooltips() {
68  var helpEls = document.getElementsByClassName('help');
69
70  for (var i = 0, helpEl; helpEl = helpEls[i]; i++) {
71    helpEl.onmouseover = handleHelpTooltipMouseOver;
72    helpEl.onmouseout = handleHelpTooltipMouseOut;
73  }
74}
75
76document.addEventListener('DOMContentLoaded', function() {
77  // This is the javascript code that processes the template:
78  var input = new JsEvalContext(loadTimeData.getValue('jstemplateData'));
79  var output = $('t');
80  jstProcess(input, output);
81
82  enableHelpTooltips();
83});
84
85