OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Redefine '$' here rather than including 'cr.js', since this is | 5 // Redefine '$' here rather than including 'cr.js', since this is |
6 // the only function needed. This allows this file to be loaded | 6 // the only function needed. This allows this file to be loaded |
7 // in a browser directly for layout and some testing purposes. | 7 // in a browser directly for layout and some testing purposes. |
8 var $ = function(id) { return document.getElementById(id); }; | 8 var $ = function(id) { return document.getElementById(id); }; |
9 | 9 |
10 var currentTreatment = 0; | 10 var currentTreatment = 0; |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
84 } else if (e.keyCode == '39' || e.keyCode == '40') { | 84 } else if (e.keyCode == '39' || e.keyCode == '40') { |
85 selectedTreatment = currentTreatment + 1; | 85 selectedTreatment = currentTreatment + 1; |
86 if (selectedTreatment >= treatments.length) | 86 if (selectedTreatment >= treatments.length) |
87 selectedTreatment = treatments.length - 1; | 87 selectedTreatment = treatments.length - 1; |
88 } | 88 } |
89 | 89 |
90 if (selectedTreatment != currentTreatment) | 90 if (selectedTreatment != currentTreatment) |
91 applyTreatment(selectedTreatment); | 91 applyTreatment(selectedTreatment); |
92 } | 92 } |
93 | 93 |
94 function applyTreatment(treatment_number) { | 94 function applyTreatment(treatmentNumber) { |
Dan Beam
2014/12/10 19:19:48
jsVarsLikeThis
| |
95 if (treatment_number < 0) | 95 if (treatmentNumber < 0) |
96 treatment_number = 0; | 96 treatmentNumber = 0; |
97 if (treatment_number >= treatments.length) | 97 if (treatmentNumber >= treatments.length) |
98 treatment_number = treatments.length; | 98 treatmentNumber = treatments.length; |
99 | 99 |
100 $('treatment' + currentTreatment).className = 'treatment'; | 100 $('treatment' + currentTreatment).className = 'treatment'; |
101 currentTreatment = treatment_number; | 101 currentTreatment = treatmentNumber; |
102 $('treatment' + currentTreatment).className = 'selected treatment'; | 102 $('treatment' + currentTreatment).className = 'selected treatment'; |
103 | 103 |
104 for (var i = 0; i < treatments[treatment_number].length; i++) { | 104 for (var i = 0; i < treatments[treatmentNumber].length; i++) { |
105 var key = treatments[treatment_number][i].key; | 105 var key = treatments[treatmentNumber][i].key; |
106 var value = treatments[treatment_number][i].value; | 106 var value = treatments[treatmentNumber][i].value; |
107 setPreferenceValue(key, value); | 107 setPreferenceValue(key, value); |
108 } | 108 } |
109 } | 109 } |
110 | 110 |
111 function initialize() { | 111 function initialize() { |
112 // Parse the experiment string in the URL. | 112 // Parse the experiment string in the URL. |
113 treatments = parseURL(document.URL); | 113 treatments = parseURL(document.URL); |
114 | 114 |
115 // Update the available treatments list. | 115 // Update the available treatments list. |
116 for (var i = 0; i < treatments.length; i++) { | 116 for (var i = 0; i < treatments.length; i++) { |
117 var newTreatment = $('treatment-template').cloneNode(true); | 117 var newTreatment = $('treatment-template').cloneNode(true); |
118 newTreatment.id = 'treatment' + i.toString(); | 118 newTreatment.id = 'treatment' + i.toString(); |
119 newTreatment.removeAttribute('hidden'); | 119 newTreatment.removeAttribute('hidden'); |
120 newTreatment.onclick = function() { | 120 newTreatment.onclick = function() { |
121 applyTreatment(parseInt(this.textContent)); | 121 applyTreatment(parseInt(this.textContent)); |
122 }; | 122 }; |
123 newTreatment.textContent = i.toString(); | 123 newTreatment.textContent = i.toString(); |
124 $('treatment-list').appendChild(newTreatment); | 124 $('treatment-list').appendChild(newTreatment); |
125 } | 125 } |
126 | 126 |
127 if (treatments.length > 0) { | 127 if (treatments.length > 0) { |
128 // Store a copy of the settings right now so you can reset them afterwards. | 128 // Store a copy of the settings right now so you can reset them afterwards. |
129 for (var i = 0; i < treatments[0].length; i++) | 129 for (var i = 0; i < treatments[0].length; i++) |
130 backupPreferenceValue(treatments[0][i].key); | 130 backupPreferenceValue(treatments[0][i].key); |
131 | 131 |
132 // Select Treatment 0 to start | 132 // Select Treatment 0 to start |
133 applyTreatment(0); | 133 applyTreatment(0); |
134 } else { | 134 } else { |
135 // Make the error message visible and hide everything else | 135 // Make the error message visible and hide everything else |
136 $('invalid_treatment_info').removeAttribute('hidden'); | 136 $('invalid-treatment-info').hidden = false; |
Dan Beam
2014/12/10 19:19:48
we do this a lot more
| |
137 var div = $('valid_treatment_info'); | 137 var div = $('valid-treatment-info'); |
138 div.parentNode.removeChild(div); | 138 div.parentNode.removeChild(div); |
139 } | 139 } |
140 } | 140 } |
141 | 141 |
142 /** | 142 /** |
143 * A key handler so the user can use the arrow keys to select their treatments. | 143 * A key handler so the user can use the arrow keys to select their treatments. |
144 * This should fire any time they press a key | 144 * This should fire any time they press a key |
145 */ | 145 */ |
146 document.onkeydown = handleKeyPress; | 146 document.onkeydown = handleKeyPress; |
147 document.addEventListener('DOMContentLoaded', initialize); | 147 document.addEventListener('DOMContentLoaded', initialize); |
OLD | NEW |