<!DOCTYPE HTML> <html i18n-values="dir:textdirection;"> <head> <meta charset="utf-8"/> <title i18n-content="title"></title> <link rel="stylesheet" href="bug_report.css"/> <script src="shared/js/local_strings.js"></script> <script src="shared/js/util.js"></script> <script src="bug_report.js"></script> <script> /////////////////////////////////////////////////////////////////////////////// // Document Functions: /** * Window onload handler, sets up the page. */ function load() { $('sysinfo-url').onclick = function(event) { chrome.send('openSystemTab'); }; // textContent on description-text textarea seems to default // to several spaces, this resets it to empty. $('description-text').textContent = ''; $('send-report-button').disabled = true; $('issue-with-combo').addEventListener('change', function(e) { $('send-report-button').disabled = this.selectedIndex <= 0 || $('description-text').value.length == 0; }); $('description-text').addEventListener('keyup', function(e) { $('send-report-button').disabled = $('issue-with-combo').selectedIndex <= 0 || this.value.length == 0; }); $('current-screenshot').nextSibling.textContent = localStrings.getString('currentscreenshots'); <if expr="pp_ifdef('chromeos')"> $('saved-screenshot').nextSibling.textContent = localStrings.getString('savedscreenshots'); </if> $('no-screenshot').nextSibling.textContent = localStrings.getString('noscreenshot'); // Get a list of issues that we allow the user to select from. // Note, the order and the issues types themselves are different // between Chromium and Chromium OS, so this code needs to be // maintained individually between the bug_report.html and // bug_report_cros.html files. var issueTypeText = []; issueTypeText[0] = localStrings.getString('issue-choose'); <if expr="not pp_ifdef('chromeos')"> issueTypeText[1] = localStrings.getString('issue-page-formatting'); issueTypeText[2] = localStrings.getString('issue-page-load'); issueTypeText[3] = localStrings.getString('issue-plugins'); issueTypeText[4] = localStrings.getString('issue-tabs'); issueTypeText[5] = localStrings.getString('issue-sync'); issueTypeText[6] = localStrings.getString('issue-crashes'); issueTypeText[7] = localStrings.getString('issue-extensions'); issueTypeText[8] = localStrings.getString('issue-phishing'); issueTypeText[9] = localStrings.getString('issue-other'); </if> <if expr="pp_ifdef('chromeos')"> issueTypeText[1] = localStrings.getString('issue-connectivity'); issueTypeText[2] = localStrings.getString('issue-sync'); issueTypeText[3] = localStrings.getString('issue-crashes'); issueTypeText[4] = localStrings.getString('issue-page-formatting'); issueTypeText[5] = localStrings.getString('issue-extensions'); issueTypeText[6] = localStrings.getString('issue-standby'); issueTypeText[7] = localStrings.getString('issue-phishing'); issueTypeText[8] = localStrings.getString('issue-other'); </if> // Add all the issues to the selection box. for (var i = 0; i < issueTypeText.length; i++) { var option = document.createElement('option'); option.className = 'bug-report-text'; option.textContent = issueTypeText[i]; $('issue-with-combo').add(option); } chrome.send('getDialogDefaults', []); chrome.send('refreshScreenshots', []); }; function setupScreenshots(screenshots) { if (screenshots.length == 1) { addScreenshot('current-screenshots', screenshots[0]); } else { // We're in Chromium OS. currentScreenshot = screenshots[0]; addScreenshot('current-screenshots', currentScreenshot); savedScreenshots = screenshots[1]; if (savedScreenshots.length == 0) { $('saved-screenshots').disabled = true; return; } for (i = 0; i < savedScreenshots.length; ++i) addScreenshot('saved-screenshots', savedScreenshots[i]); } } function setupDialogDefaults(defaults) { if (defaults.length > 0) { $('page-url-text').value = defaults[0]; if (defaults.length > 2) { // We're in Chromium OS. $('user-email-text').value = defaults[2]; } } } window.addEventListener('DOMContentLoaded', load); </script> </head> <body> <div> <div id="main-panel"> <div class="formpane"> <table> <!-- Issue type dropdown --> <tr> <th id="issue-with" class="bug-report-label" i18n-content="issue-with"> </th> </tr> <tr> <td> <select id="issue-with-combo" class="bug-report-text"> </select> </td> </tr> <!-- Page URL text box --> <tr> <th colspan="2" id="page-url" class="bug-report-label" i18n-content="page-url"> </th> </tr> <tr> <td colspan="2"> <input id='page-url-text' maxlength=200 class="bug-report-text"> </td> </tr> <!-- Description --> <tr> <th id="description" colspan="2" class="bug-report-label" i18n-content="description"> </th> </tr> <tr> <td colspan="2"> <textarea id='description-text' rows="10" class="bug-report-text"> </textarea> </td> </tr> </table> </div> <div class="formpane"> <table> <if expr="pp_ifdef('chromeos')"> <!-- Page URL text box --> <tr> <th id="user-email" class="bug-report-label" i18n-content="user-email"> </th> </tr> <tr> <td> <input id='user-email-text' maxlength=200 class="bug-report-text"> </td> </tr> <!-- System Information checkbox --> <tr> <td> <input id="sys-info-checkbox" type="checkbox" value="sysinfo" checked> <span id="sysinfo-label"></span> <a id="sysinfo-url" href="#" > <span i18n-content="sysinfo"></span> </a> </td> </tr> </if> <!-- Screenshot radio buttons --> <tr> <th id="screenshot" class="bug-report-label" i18n-content="screenshot"> </th> </tr> <tr> <td> <input id="no-screenshot" type="radio" name="screenshot-group" value="none" onclick="noneSelected()"> <br> <if expr="pp_ifdef('chromeos')"> <input id="saved-screenshot" type="radio" name="screenshot-group" value="saved" onclick="savedSelected()"> <br> <div id="saved-screenshots" style="display: none;" class="thumbnail-list"> </div> </if> <input id="current-screenshot" type="radio" name="screenshot-group" value="current" checked onclick="currentSelected()"> <br> <div id="current-screenshots" class="thumbnail-list"> </div> </td> </tr> </table> </div> </div> </div> <div id="buttons"> <!-- Buttons --> <input id='send-report-button' type="submit" class="bug-report-button" i18n-values="value:send-report" onclick="sendReport()"> <input id='cancel-button' type="submit" class="bug-report-button" i18n-values="value:cancel" onclick="cancel()"> </div> </body> </html>