misc/chrome/gophertool/popup.js JAVASCRIPT 47 lines View on github.com → Search inside
1function openURL(url) {2  chrome.tabs.create({ "url": url })3}45function addLinks() {6  var links = document.getElementsByTagName("a");7  for (var i = 0; i < links.length; i++) {8    var url = links[i].getAttribute("url");9    if (url)10      links[i].addEventListener("click", function () {11        openURL(this.getAttribute("url"));12      });13  }14}1516window.addEventListener("load", function () {17  addLinks();18  console.log("hacking gopher pop-up loaded.");19  document.getElementById("inputbox").focus();20});2122window.addEventListener("submit", function () {23  console.log("submitting form");24  var box = document.getElementById("inputbox");25  box.focus();2627  var t = box.value;28  if (t == "") {29    return false;30  }3132  var success = function(url) {33    console.log("matched " + t + " to: " + url)34    box.value = "";35    openURL(url);36    return false;  // cancel form submission37  };3839  var url = urlForInput(t);40  if (url) {41    return success(url);42  }4344  console.log("no match for text: " + t)45  return false;46});

Code quality findings 16

Remove event listeners when no longer needed to prevent memory leaks
warning performance event-listener-leak
links[i].addEventListener("click", function () {
Remove event listeners when no longer needed to prevent memory leaks
warning performance event-listener-leak
window.addEventListener("load", function () {
Remove event listeners when no longer needed to prevent memory leaks
warning performance event-listener-leak
window.addEventListener("submit", function () {
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
var links = document.getElementsByTagName("a");
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
for (var i = 0; i < links.length; i++) {
Use let instead of var in loops to avoid scope issues
info correctness var-in-loop
for (var i = 0; i < links.length; i++) {
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
var url = links[i].getAttribute("url");
Remove debugging statements or use a logging library
info correctness console-log
console.log("hacking gopher pop-up loaded.");
Remove debugging statements or use a logging library
info correctness console-log
console.log("submitting form");
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
var box = document.getElementById("inputbox");
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
var t = box.value;
Use strict equality (===) to prevent type coercion bugs
info correctness loose-equality
if (t == "") {
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
var success = function(url) {
Remove debugging statements or use a logging library
info correctness console-log
console.log("matched " + t + " to: " + url)
Use let or const to avoid scope issues and hoisting
info correctness var-declaration
var url = urlForInput(t);
Remove debugging statements or use a logging library
info correctness console-log
console.log("no match for text: " + t)

Get this view in your editor

Same data, no extra tab — call code_get_file + code_get_findings over MCP from Claude/Cursor/Copilot.

Generated by searchcode.com · powered by code_get_file + code_get_findings