OLD | NEW |
(Empty) | |
| 1 // find map on demand |
| 2 |
| 3 console.log("mappy_content_script.js loaded"); |
| 4 |
| 5 var maps_key = "ABQIAAAATfHumDbW3OmRByfquHd3SRTRERdeAiwZ9EeJWta3L_JZVS0bOBRQeZgr
4K0xyVKzUdnnuFl8X9PX0w"; |
| 6 |
| 7 chrome.extension.onConnect.addListener(function(port) { |
| 8 //console.log("extension connected"); |
| 9 port.onMessage.addListener(function(data) { |
| 10 //console.log("extension sent message"); |
| 11 findAddress(port); |
| 12 }); |
| 13 }); |
| 14 |
| 15 var findAddress = function(port) { |
| 16 var found; |
| 17 var re = /(\d+ [':.,\s\w]*,\s*[A-Za-z]+\s*\d{5}(-\d{4})?)/m; |
| 18 var node = document.body; |
| 19 var done = false; |
| 20 while (!done) { |
| 21 done = true; |
| 22 for (var i = 0; i < node.childNodes.length; ++i) { |
| 23 var child = node.childNodes[i]; |
| 24 if (child.textContent.match(re)) { |
| 25 node = child; |
| 26 found = node; |
| 27 done = false; |
| 28 break; |
| 29 } |
| 30 } |
| 31 } |
| 32 if (found) { |
| 33 var text = ""; |
| 34 if (found.childNodes.length) { |
| 35 for (var i = 0; i < found.childNodes.length; ++i) { |
| 36 text += found.childNodes[i].textContent + " "; |
| 37 } |
| 38 } else { |
| 39 text = found.textContent; |
| 40 } |
| 41 var match = re.exec(text); |
| 42 if (match && match.length) { |
| 43 console.log("found: " + match[0]); |
| 44 var trim = /\s{2,}/g; |
| 45 var map = match[0].replace(trim, " "); |
| 46 port.postMessage({message:"map", values:[map]}); |
| 47 } else { |
| 48 console.log("found bad " + found.textContent); |
| 49 console.log("no match in: " + text); |
| 50 } |
| 51 } else { |
| 52 console.log("no match in " + node.textContent); |
| 53 } |
| 54 } |
| 55 |
OLD | NEW |