| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2012 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 /** | |
| 6 * Sends a command message to SafeBrowsingBlockingPage::CommandReceived. | |
| 7 * @param {string} cmd The command to send. | |
| 8 */ | |
| 9 function sendCommand(cmd) { | |
| 10 window.domAutomationController.setAutomationId(1); | |
| 11 window.domAutomationController.send(cmd); | |
| 12 } | |
| 13 | |
| 14 /** | |
| 15 * Records state of the reporting checkbox. | |
| 16 */ | |
| 17 function savePreference() { | |
| 18 var checkBox = $('check-report'); | |
| 19 if (checkBox.checked) | |
| 20 sendCommand('doReport'); | |
| 21 else | |
| 22 sendCommand('dontReport'); | |
| 23 } | |
| 24 | |
| 25 /** | |
| 26 * Expands or collapses the "see more" section of the page. | |
| 27 */ | |
| 28 function seeMore() { | |
| 29 if ($('see-less-text').hidden) { | |
| 30 $('see-more-text').hidden = true; | |
| 31 $('see-less-text').hidden = false; | |
| 32 $('see-more-contents').hidden = false; | |
| 33 sendCommand('expandedSeeMore'); | |
| 34 } else { | |
| 35 $('see-more-text').hidden = false; | |
| 36 $('see-less-text').hidden = true; | |
| 37 $('see-more-contents').hidden = true; | |
| 38 } | |
| 39 } | |
| 40 | |
| 41 /* This sets up 4 conditions for the Field Trial. | |
| 42 * The 'NoBrand' conditions don't have the Chrome/Chromium logo at the top. | |
| 43 * The 'OneStep' conditions don't hide the proceed button. | |
| 44 */ | |
| 45 function setupInterstitialExperiment() { | |
| 46 var condition = templateData.trialType; | |
| 47 if (condition == 'cond2MalwareNoBrand' || | |
| 48 condition == 'cond4PhishingNoBrand') { | |
| 49 $('logo').style.display = 'none'; | |
| 50 } else if (condition == 'cond5MalwareOneStep' || | |
| 51 condition == 'cond6PhishingOneStep') { | |
| 52 $('see-more-contents').hidden = false; | |
| 53 $('see-less-text').hidden = true; | |
| 54 $('see-more-text').hidden = true; | |
| 55 } | |
| 56 } | |
| 57 | |
| 58 /** | |
| 59 * Onload listener to initialize javascript handlers. | |
| 60 */ | |
| 61 document.addEventListener('DOMContentLoaded', function() { | |
| 62 $('proceed-span').hidden = templateData.proceedDisabled; | |
| 63 | |
| 64 $('back').onclick = function() { | |
| 65 sendCommand('takeMeBack'); | |
| 66 }; | |
| 67 $('proceed').onclick = function(e) { | |
| 68 sendCommand('proceed'); | |
| 69 }; | |
| 70 $('learn-more-link').onclick = function(e) { | |
| 71 sendCommand('learnMore2'); | |
| 72 }; | |
| 73 $('show-diagnostic-link').onclick = function(e) { | |
| 74 sendCommand('showDiagnostic'); | |
| 75 }; | |
| 76 $('report-error-link').onclick = function(e) { | |
| 77 sendCommand('reportError'); | |
| 78 }; | |
| 79 $('see-more-link').onclick = function(e) { | |
| 80 seeMore(); | |
| 81 // preventDefaultOnPoundLinkClicks doesn't work for this link since it | |
| 82 // contains <span>s, which confuse preventDefaultOnPoundLinkClicks. | |
| 83 e.preventDefault(); | |
| 84 }; | |
| 85 $('check-report').onclick = savePreference; | |
| 86 | |
| 87 // All the links are handled by javascript sending commands back to the C++ | |
| 88 // handler, we don't want the default actions. | |
| 89 preventDefaultOnPoundLinkClicks(); // From webui/js/util.js. | |
| 90 | |
| 91 setupInterstitialExperiment(); | |
| 92 | |
| 93 // Allow jsdisplay elements to be visible now. | |
| 94 document.documentElement.classList.remove('loading'); | |
| 95 }); | |
| OLD | NEW |