Grammalecte  Hex Artifact Content

Artifact 1d5858eab58bae2db1a9c0316a9a349dae115c6fd95bc1fe7a9f477b2658bce7:


0000: 2f 2f 20 4d 61 69 6e 20 70 61 6e 65 6c 0a 0a 22  // Main panel.."
0010: 75 73 65 20 73 74 72 69 63 74 22 3b 0a 0a 0a 66  use strict";...f
0020: 75 6e 63 74 69 6f 6e 20 73 68 6f 77 45 72 72 6f  unction showErro
0030: 72 20 28 65 29 20 7b 0a 20 20 20 20 63 6f 6e 73  r (e) {.    cons
0040: 6f 6c 65 2e 65 72 72 6f 72 28 65 2e 66 69 6c 65  ole.error(e.file
0050: 4e 61 6d 65 20 2b 20 22 5c 6e 22 20 2b 20 65 2e  Name + "\n" + e.
0060: 6e 61 6d 65 20 2b 20 22 5c 6e 6c 69 6e 65 3a 20  name + "\nline: 
0070: 22 20 2b 20 65 2e 6c 69 6e 65 4e 75 6d 62 65 72  " + e.lineNumber
0080: 20 2b 20 22 5c 6e 22 20 2b 20 65 2e 6d 65 73 73   + "\n" + e.mess
0090: 61 67 65 29 3b 0a 7d 0a 0a 2f 2f 20 43 68 72 6f  age);.}..// Chro
00a0: 6d 65 20 64 6f 6e e2 80 99 74 20 66 6f 6c 6c 6f  me don...t follo
00b0: 77 20 74 68 65 20 57 33 43 20 73 70 65 63 69 66  w the W3C specif
00c0: 69 63 61 74 69 6f 6e 3a 0a 2f 2f 20 68 74 74 70  ication:.// http
00d0: 73 3a 2f 2f 62 72 6f 77 73 65 72 65 78 74 2e 67  s://browserext.g
00e0: 69 74 68 75 62 2e 69 6f 2f 62 72 6f 77 73 65 72  ithub.io/browser
00f0: 65 78 74 2f 0a 6c 65 74 20 62 43 68 72 6f 6d 65  ext/.let bChrome
0100: 20 3d 20 66 61 6c 73 65 3b 0a 69 66 20 28 74 79   = false;.if (ty
0110: 70 65 6f 66 28 62 72 6f 77 73 65 72 29 20 21 3d  peof(browser) !=
0120: 3d 20 22 6f 62 6a 65 63 74 22 29 20 7b 0a 20 20  = "object") {.  
0130: 20 20 76 61 72 20 62 72 6f 77 73 65 72 20 3d 20    var browser = 
0140: 63 68 72 6f 6d 65 3b 0a 20 20 20 20 62 43 68 72  chrome;.    bChr
0150: 6f 6d 65 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a  ome = true;.}...
0160: 2f 2a 0a 20 20 20 20 45 76 65 6e 74 73 0a 2a 2f  /*.    Events.*/
0170: 0a 77 69 6e 64 6f 77 2e 61 64 64 45 76 65 6e 74  .window.addEvent
0180: 4c 69 73 74 65 6e 65 72 28 0a 20 20 20 20 22 63  Listener(.    "c
0190: 6c 69 63 6b 22 2c 0a 20 20 20 20 66 75 6e 63 74  lick",.    funct
01a0: 69 6f 6e 20 28 78 45 76 65 6e 74 29 20 7b 0a 20  ion (xEvent) {. 
01b0: 20 20 20 20 20 20 20 6c 65 74 20 78 45 6c 65 6d         let xElem
01c0: 20 3d 20 78 45 76 65 6e 74 2e 74 61 72 67 65 74   = xEvent.target
01d0: 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 78 45  ;.        if (xE
01e0: 6c 65 6d 2e 69 64 29 20 7b 0a 20 20 20 20 20 20  lem.id) {.      
01f0: 20 20 20 20 20 20 69 66 20 28 78 45 6c 65 6d 2e        if (xElem.
0200: 69 64 20 3d 3d 3d 20 22 74 65 78 74 5f 74 6f 5f  id === "text_to_
0210: 74 65 73 74 5f 62 75 74 74 6f 6e 22 29 20 7b 0a  test_button") {.
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0230: 62 72 6f 77 73 65 72 2e 72 75 6e 74 69 6d 65 2e  browser.runtime.
0240: 73 65 6e 64 4d 65 73 73 61 67 65 28 7b 0a 20 20  sendMessage({.  
0250: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0260: 20 20 73 43 6f 6d 6d 61 6e 64 3a 20 22 74 65 78    sCommand: "tex
0270: 74 54 6f 54 65 73 74 22 2c 0a 20 20 20 20 20 20  tToTest",.      
0280: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 50                dP
0290: 61 72 61 6d 3a 20 7b 73 54 65 78 74 3a 20 64 6f  aram: {sText: do
02a0: 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e  cument.getElemen
02b0: 74 42 79 49 64 28 22 74 65 78 74 5f 74 6f 5f 74  tById("text_to_t
02c0: 65 73 74 22 29 2e 76 61 6c 75 65 2c 20 73 43 6f  est").value, sCo
02d0: 75 6e 74 72 79 3a 20 22 46 52 22 2c 20 62 44 65  untry: "FR", bDe
02e0: 62 75 67 3a 20 74 72 75 65 2c 20 62 43 6f 6e 74  bug: true, bCont
02f0: 65 78 74 3a 20 66 61 6c 73 65 7d 2c 0a 20 20 20  ext: false},.   
0300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0310: 20 64 49 6e 66 6f 3a 20 7b 7d 0a 20 20 20 20 20   dInfo: {}.     
0320: 20 20 20 20 20 20 20 20 20 20 20 7d 29 3b 0a 20             });. 
0330: 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20             }.   
0340: 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66           else if
0350: 20 28 78 45 6c 65 6d 2e 69 64 20 3d 3d 3d 20 22   (xElem.id === "
0360: 66 75 6c 6c 74 65 73 74 73 5f 62 75 74 74 6f 6e  fulltests_button
0370: 22 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20  ") {.           
0380: 20 20 20 20 20 64 6f 63 75 6d 65 6e 74 2e 67 65       document.ge
0390: 74 45 6c 65 6d 65 6e 74 42 79 49 64 28 22 74 65  tElementById("te
03a0: 73 74 73 5f 72 65 73 75 6c 74 22 29 2e 74 65 78  sts_result").tex
03b0: 74 43 6f 6e 74 65 6e 74 20 3d 20 22 56 65 75 69  tContent = "Veui
03c0: 6c 6c 65 7a 20 70 61 74 69 65 6e 74 65 72 e2 80  llez patienter..
03d0: a6 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20  .";.            
03e0: 20 20 20 20 62 72 6f 77 73 65 72 2e 72 75 6e 74      browser.runt
03f0: 69 6d 65 2e 73 65 6e 64 4d 65 73 73 61 67 65 28  ime.sendMessage(
0400: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  {.              
0410: 20 20 20 20 20 20 73 43 6f 6d 6d 61 6e 64 3a 20        sCommand: 
0420: 22 66 75 6c 6c 54 65 73 74 73 22 2c 0a 20 20 20  "fullTests",.   
0430: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0440: 20 64 50 61 72 61 6d 3a 20 7b 7d 2c 0a 20 20 20   dParam: {},.   
0450: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0460: 20 64 49 6e 66 6f 3a 20 7b 7d 0a 20 20 20 20 20   dInfo: {}.     
0470: 20 20 20 20 20 20 20 20 20 20 20 7d 29 3b 0a 20             });. 
0480: 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20             }.   
0490: 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66           else if
04a0: 20 28 78 45 6c 65 6d 2e 69 64 20 3d 3d 3d 20 22   (xElem.id === "
04b0: 64 65 66 61 75 6c 74 5f 6f 70 74 69 6f 6e 73 5f  default_options_
04c0: 62 75 74 74 6f 6e 22 29 20 7b 0a 20 20 20 20 20  button") {.     
04d0: 20 20 20 20 20 20 20 20 20 20 20 62 72 6f 77 73             brows
04e0: 65 72 2e 72 75 6e 74 69 6d 65 2e 73 65 6e 64 4d  er.runtime.sendM
04f0: 65 73 73 61 67 65 28 7b 0a 20 20 20 20 20 20 20  essage({.       
0500: 20 20 20 20 20 20 20 20 20 20 20 20 73 43 6f 6d              sCom
0510: 6d 61 6e 64 3a 20 22 72 65 73 65 74 4f 70 74 69  mand: "resetOpti
0520: 6f 6e 73 22 2c 0a 20 20 20 20 20 20 20 20 20 20  ons",.          
0530: 20 20 20 20 20 20 20 20 20 64 50 61 72 61 6d 3a           dParam:
0540: 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20   {},.           
0550: 20 20 20 20 20 20 20 20 64 49 6e 66 6f 3a 20 7b          dInfo: {
0560: 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  }.              
0570: 20 20 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20    });.          
0580: 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20    }.            
0590: 65 6c 73 65 20 69 66 20 28 78 45 6c 65 6d 2e 69  else if (xElem.i
05a0: 64 2e 73 74 61 72 74 73 57 69 74 68 28 22 6f 70  d.startsWith("op
05b0: 74 69 6f 6e 5f 22 29 29 20 7b 0a 20 20 20 20 20  tion_")) {.     
05c0: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 78             if (x
05d0: 45 6c 65 6d 2e 64 61 74 61 73 65 74 2e 6f 70 74  Elem.dataset.opt
05e0: 69 6f 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 20  ion) {.         
05f0: 20 20 20 20 20 20 20 20 20 20 20 62 72 6f 77 73             brows
0600: 65 72 2e 72 75 6e 74 69 6d 65 2e 73 65 6e 64 4d  er.runtime.sendM
0610: 65 73 73 61 67 65 28 7b 0a 20 20 20 20 20 20 20  essage({.       
0620: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0630: 20 73 43 6f 6d 6d 61 6e 64 3a 20 22 73 65 74 4f   sCommand: "setO
0640: 70 74 69 6f 6e 22 2c 0a 20 20 20 20 20 20 20 20  ption",.        
0650: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0660: 64 50 61 72 61 6d 3a 20 7b 73 4f 70 74 4e 61 6d  dParam: {sOptNam
0670: 65 3a 20 78 45 6c 65 6d 2e 64 61 74 61 73 65 74  e: xElem.dataset
0680: 2e 6f 70 74 69 6f 6e 2c 20 62 56 61 6c 75 65 3a  .option, bValue:
0690: 20 78 45 6c 65 6d 2e 63 68 65 63 6b 65 64 7d 2c   xElem.checked},
06a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
06b0: 20 20 20 20 20 20 20 20 20 64 49 6e 66 6f 3a 20           dInfo: 
06c0: 7b 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {}.             
06d0: 20 20 20 20 20 20 20 7d 29 3b 0a 20 20 20 20 20         });.     
06e0: 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20             }.   
06f0: 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20           }.     
0700: 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28         else if (
0710: 78 45 6c 65 6d 2e 69 64 2e 65 6e 64 73 57 69 74  xElem.id.endsWit
0720: 68 28 22 5f 64 69 63 22 29 29 20 7b 0a 20 20 20  h("_dic")) {.   
0730: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20               if 
0740: 28 78 45 6c 65 6d 2e 64 61 74 61 73 65 74 2e 64  (xElem.dataset.d
0750: 69 63 74 69 6f 6e 61 72 79 29 20 7b 0a 20 20 20  ictionary) {.   
0760: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0770: 20 73 74 6f 72 65 53 43 4f 70 74 69 6f 6e 73 28   storeSCOptions(
0780: 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  );.             
0790: 20 20 20 20 20 20 20 62 72 6f 77 73 65 72 2e 72         browser.r
07a0: 75 6e 74 69 6d 65 2e 73 65 6e 64 4d 65 73 73 61  untime.sendMessa
07b0: 67 65 28 7b 0a 20 20 20 20 20 20 20 20 20 20 20  ge({.           
07c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 73 43 6f               sCo
07d0: 6d 6d 61 6e 64 3a 20 22 73 65 74 44 69 63 74 69  mmand: "setDicti
07e0: 6f 6e 61 72 79 4f 6e 4f 66 66 22 2c 0a 20 20 20  onaryOnOff",.   
07f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0800: 20 20 20 20 20 64 50 61 72 61 6d 3a 20 7b 73 44       dParam: {sD
0810: 69 63 74 69 6f 6e 61 72 79 3a 20 78 45 6c 65 6d  ictionary: xElem
0820: 2e 64 61 74 61 73 65 74 2e 64 69 63 74 69 6f 6e  .dataset.diction
0830: 61 72 79 2c 20 62 41 63 74 69 76 61 74 65 3a 20  ary, bActivate: 
0840: 78 45 6c 65 6d 2e 63 68 65 63 6b 65 64 7d 2c 0a  xElem.checked},.
0850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0860: 20 20 20 20 20 20 20 20 64 49 6e 66 6f 3a 20 7b          dInfo: {
0870: 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  }.              
0880: 20 20 20 20 20 20 7d 29 3b 0a 20 20 20 20 20 20        });.      
0890: 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20            }.    
08a0: 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20          }.      
08b0: 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 78        else if (x
08c0: 45 6c 65 6d 2e 69 64 2e 73 74 61 72 74 73 57 69  Elem.id.startsWi
08d0: 74 68 28 22 75 69 5f 6f 70 74 69 6f 6e 5f 22 29  th("ui_option_")
08e0: 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) {.            
08f0: 20 20 20 20 73 74 6f 72 65 55 49 4f 70 74 69 6f      storeUIOptio
0900: 6e 73 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20  ns();.          
0910: 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20    }.            
0920: 65 6c 73 65 20 69 66 20 28 78 45 6c 65 6d 2e 69  else if (xElem.i
0930: 64 2e 73 74 61 72 74 73 57 69 74 68 28 22 6c 69  d.startsWith("li
0940: 6e 6b 5f 22 29 29 20 7b 0a 20 20 20 20 20 20 20  nk_")) {.       
0950: 20 20 20 20 20 20 20 20 20 62 72 6f 77 73 65 72           browser
0960: 2e 74 61 62 73 2e 63 72 65 61 74 65 28 7b 75 72  .tabs.create({ur
0970: 6c 3a 20 78 45 6c 65 6d 2e 64 61 74 61 73 65 74  l: xElem.dataset
0980: 2e 75 72 6c 7d 29 3b 0a 20 20 20 20 20 20 20 20  .url});.        
0990: 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20      }.          
09a0: 20 20 65 6c 73 65 20 69 66 20 28 78 45 6c 65 6d    else if (xElem
09b0: 2e 69 64 20 3d 3d 20 22 63 6f 6e 6a 5f 62 75 74  .id == "conj_but
09c0: 74 6f 6e 22 29 20 7b 0a 20 20 20 20 20 20 20 20  ton") {.        
09d0: 20 20 20 20 20 20 20 20 62 72 6f 77 73 65 72 2e          browser.
09e0: 72 75 6e 74 69 6d 65 2e 73 65 6e 64 4d 65 73 73  runtime.sendMess
09f0: 61 67 65 28 7b 0a 20 20 20 20 20 20 20 20 20 20  age({.          
0a00: 20 20 20 20 20 20 20 20 20 20 73 43 6f 6d 6d 61            sComma
0a10: 6e 64 3a 20 22 6f 70 65 6e 43 6f 6e 6a 75 67 75  nd: "openConjugu
0a20: 65 75 72 54 61 62 22 2c 0a 20 20 20 20 20 20 20  eurTab",.       
0a30: 20 20 20 20 20 20 20 20 20 20 20 20 20 64 50 61               dPa
0a40: 72 61 6d 3a 20 7b 7d 2c 0a 20 20 20 20 20 20 20  ram: {},.       
0a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 64 49 6e               dIn
0a60: 66 6f 3a 20 7b 7d 0a 20 20 20 20 20 20 20 20 20  fo: {}.         
0a70: 20 20 20 20 20 20 20 7d 29 3b 0a 20 20 20 20 20         });.     
0a80: 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20         }.       
0a90: 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 78 45       else if (xE
0aa0: 6c 65 6d 2e 69 64 20 3d 3d 20 22 64 69 63 5f 63  lem.id == "dic_c
0ab0: 6f 6d 6d 75 6e 69 74 79 5f 62 75 74 74 6f 6e 22  ommunity_button"
0ac0: 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) {.            
0ad0: 20 20 20 20 62 72 6f 77 73 65 72 2e 72 75 6e 74      browser.runt
0ae0: 69 6d 65 2e 73 65 6e 64 4d 65 73 73 61 67 65 28  ime.sendMessage(
0af0: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  {.              
0b00: 20 20 20 20 20 20 73 43 6f 6d 6d 61 6e 64 3a 20        sCommand: 
0b10: 22 6f 70 65 6e 4c 65 78 69 63 6f 6e 45 64 69 74  "openLexiconEdit
0b20: 6f 72 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20  or",.           
0b30: 20 20 20 20 20 20 20 20 20 64 50 61 72 61 6d 3a           dParam:
0b40: 20 7b 20 22 64 69 63 74 69 6f 6e 61 72 79 22 3a   { "dictionary":
0b50: 20 22 5f 5f 63 6f 6d 6d 75 6e 69 74 79 5f 5f 22   "__community__"
0b60: 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  },.             
0b70: 20 20 20 20 20 20 20 64 49 6e 66 6f 3a 20 7b 7d         dInfo: {}
0b80: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0b90: 20 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20   });.           
0ba0: 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65   }.            e
0bb0: 6c 73 65 20 69 66 20 28 78 45 6c 65 6d 2e 69 64  lse if (xElem.id
0bc0: 20 3d 3d 20 22 64 69 63 5f 70 65 72 73 6f 6e 61   == "dic_persona
0bd0: 6c 5f 62 75 74 74 6f 6e 22 29 20 7b 0a 20 20 20  l_button") {.   
0be0: 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 6f               bro
0bf0: 77 73 65 72 2e 72 75 6e 74 69 6d 65 2e 73 65 6e  wser.runtime.sen
0c00: 64 4d 65 73 73 61 67 65 28 7b 0a 20 20 20 20 20  dMessage({.     
0c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73                 s
0c20: 43 6f 6d 6d 61 6e 64 3a 20 22 6f 70 65 6e 4c 65  Command: "openLe
0c30: 78 69 63 6f 6e 45 64 69 74 6f 72 22 2c 0a 20 20  xiconEditor",.  
0c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0c50: 20 20 64 50 61 72 61 6d 3a 20 7b 20 22 64 69 63    dParam: { "dic
0c60: 74 69 6f 6e 61 72 79 22 3a 20 22 5f 5f 70 65 72  tionary": "__per
0c70: 73 6f 6e 61 6c 5f 5f 22 7d 2c 0a 20 20 20 20 20  sonal__"},.     
0c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64                 d
0c90: 49 6e 66 6f 3a 20 7b 7d 0a 20 20 20 20 20 20 20  Info: {}.       
0ca0: 20 20 20 20 20 20 20 20 20 7d 29 3b 0a 20 20 20           });.   
0cb0: 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20           }.     
0cc0: 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 78 45     } else if (xE
0cd0: 6c 65 6d 2e 63 6c 61 73 73 4e 61 6d 65 2e 73 74  lem.className.st
0ce0: 61 72 74 73 57 69 74 68 28 22 73 65 6c 65 63 74  artsWith("select
0cf0: 22 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20  ")) {.          
0d00: 20 20 73 68 6f 77 50 61 67 65 28 78 45 6c 65 6d    showPage(xElem
0d10: 2e 64 61 74 61 73 65 74 2e 70 61 67 65 29 3b 0a  .dataset.page);.
0d20: 20 20 20 20 20 20 20 20 7d 2f 2a 20 65 6c 73 65          }/* else
0d30: 20 69 66 20 28 78 45 6c 65 6d 2e 74 61 67 4e 61   if (xElem.tagNa
0d40: 6d 65 20 3d 3d 3d 20 22 41 22 29 20 7b 0a 20 20  me === "A") {.  
0d50: 20 20 20 20 20 20 20 20 20 20 6f 70 65 6e 55 52            openUR
0d60: 4c 28 78 45 6c 65 6d 2e 67 65 74 41 74 74 72 69  L(xElem.getAttri
0d70: 62 75 74 65 28 22 68 72 65 66 22 29 29 3b 0a 20  bute("href"));. 
0d80: 20 20 20 20 20 20 20 7d 2a 2f 0a 20 20 20 20 7d         }*/.    }
0d90: 2c 0a 20 20 20 20 66 61 6c 73 65 0a 29 3b 0a 0a  ,.    false.);..
0da0: 0a 2f 2a 0a 20 20 20 20 4d 65 73 73 61 67 65 20  ./*.    Message 
0db0: 73 65 6e 64 65 72 0a 20 20 20 20 61 6e 64 20 72  sender.    and r
0dc0: 65 73 70 6f 6e 73 65 20 68 61 6e 64 6c 69 6e 67  esponse handling
0dd0: 0a 2a 2f 0a 66 75 6e 63 74 69 6f 6e 20 68 61 6e  .*/.function han
0de0: 64 6c 65 52 65 73 70 6f 6e 73 65 20 28 6f 52 65  dleResponse (oRe
0df0: 73 70 6f 6e 73 65 29 20 7b 0a 20 20 20 20 63 6f  sponse) {.    co
0e00: 6e 73 6f 6c 65 2e 6c 6f 67 28 60 5b 50 61 6e 65  nsole.log(`[Pane
0e10: 6c 5d 20 72 65 63 65 69 76 65 64 3a 60 29 3b 0a  l] received:`);.
0e20: 20 20 20 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67 28      console.log(
0e30: 6f 52 65 73 70 6f 6e 73 65 29 3b 0a 7d 0a 0a 66  oResponse);.}..f
0e40: 75 6e 63 74 69 6f 6e 20 68 61 6e 64 6c 65 45 72  unction handleEr
0e50: 72 6f 72 20 28 65 72 72 6f 72 29 20 7b 0a 20 20  ror (error) {.  
0e60: 20 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67 28 60 5b    console.log(`[
0e70: 50 61 6e 65 6c 5d 20 45 72 72 6f 72 3a 60 29 3b  Panel] Error:`);
0e80: 0a 20 20 20 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67  .    console.log
0e90: 28 65 72 72 6f 72 29 3b 0a 7d 0a 0a 66 75 6e 63  (error);.}..func
0ea0: 74 69 6f 6e 20 73 65 6e 64 4d 65 73 73 61 67 65  tion sendMessage
0eb0: 41 6e 64 57 61 69 74 52 65 73 70 6f 6e 73 65 20  AndWaitResponse 
0ec0: 28 6f 44 61 74 61 29 20 7b 0a 20 20 20 20 6c 65  (oData) {.    le
0ed0: 74 20 78 50 72 6f 6d 69 73 65 20 3d 20 62 72 6f  t xPromise = bro
0ee0: 77 73 65 72 2e 72 75 6e 74 69 6d 65 2e 73 65 6e  wser.runtime.sen
0ef0: 64 4d 65 73 73 61 67 65 28 6f 44 61 74 61 29 3b  dMessage(oData);
0f00: 0a 20 20 20 20 78 50 72 6f 6d 69 73 65 2e 74 68  .    xPromise.th
0f10: 65 6e 28 68 61 6e 64 6c 65 52 65 73 70 6f 6e 73  en(handleRespons
0f20: 65 2c 20 68 61 6e 64 6c 65 45 72 72 6f 72 29 3b  e, handleError);
0f30: 0a 7d 0a 0a 0a 2f 2a 0a 20 20 20 20 4d 65 73 73  .}.../*.    Mess
0f40: 61 67 65 73 20 72 65 63 65 69 76 65 64 0a 2a 2f  ages received.*/
0f50: 0a 66 75 6e 63 74 69 6f 6e 20 68 61 6e 64 6c 65  .function handle
0f60: 4d 65 73 73 61 67 65 20 28 6f 4d 65 73 73 61 67  Message (oMessag
0f70: 65 2c 20 78 53 65 6e 64 65 72 2c 20 73 65 6e 64  e, xSender, send
0f80: 52 65 73 70 6f 6e 73 65 29 20 7b 0a 20 20 20 20  Response) {.    
0f90: 6c 65 74 20 7b 73 41 63 74 69 6f 6e 44 6f 6e 65  let {sActionDone
0fa0: 2c 20 72 65 73 75 6c 74 2c 20 64 49 6e 66 6f 2c  , result, dInfo,
0fb0: 20 62 45 6e 64 2c 20 62 45 72 72 6f 72 7d 20 3d   bEnd, bError} =
0fc0: 20 6f 4d 65 73 73 61 67 65 3b 0a 20 20 20 20 73   oMessage;.    s
0fd0: 77 69 74 63 68 28 73 41 63 74 69 6f 6e 44 6f 6e  witch(sActionDon
0fe0: 65 29 20 7b 0a 20 20 20 20 20 20 20 20 63 61 73  e) {.        cas
0ff0: 65 20 22 74 65 78 74 54 6f 54 65 73 74 22 3a 0a  e "textToTest":.
1000: 20 20 20 20 20 20 20 20 63 61 73 65 20 22 66 75          case "fu
1010: 6c 6c 54 65 73 74 73 22 3a 0a 20 20 20 20 20 20  llTests":.      
1020: 20 20 20 20 20 20 73 68 6f 77 54 65 73 74 52 65        showTestRe
1030: 73 75 6c 74 28 72 65 73 75 6c 74 29 3b 0a 20 20  sult(result);.  
1040: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b            break;
1050: 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 22 72  .        case "r
1060: 65 73 65 74 4f 70 74 69 6f 6e 73 22 3a 0a 20 20  esetOptions":.  
1070: 20 20 20 20 20 20 20 20 20 20 64 69 73 70 6c 61            displa
1080: 79 47 43 4f 70 74 69 6f 6e 73 28 72 65 73 75 6c  yGCOptions(resul
1090: 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20  t);.            
10a0: 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 64  break;.        d
10b0: 65 66 61 75 6c 74 3a 0a 20 20 20 20 20 20 20 20  efault:.        
10c0: 20 20 20 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67 28      console.log(
10d0: 22 47 52 41 4d 4d 41 4c 45 43 54 45 2e 20 55 6e  "GRAMMALECTE. Un
10e0: 6b 6e 6f 77 6e 20 63 6f 6d 6d 61 6e 64 3a 20 22  known command: "
10f0: 20 2b 20 73 41 63 74 69 6f 6e 44 6f 6e 65 29 3b   + sActionDone);
1100: 0a 20 20 20 20 7d 0a 20 20 20 20 2f 2f 73 65 6e  .    }.    //sen
1110: 64 52 65 73 70 6f 6e 73 65 28 7b 73 43 6f 6d 6d  dResponse({sComm
1120: 61 6e 64 3a 20 22 6e 6f 6e 65 22 2c 20 72 65 73  and: "none", res
1130: 75 6c 74 3a 20 22 64 6f 6e 65 22 7d 29 3b 0a 7d  ult: "done"});.}
1140: 0a 0a 62 72 6f 77 73 65 72 2e 72 75 6e 74 69 6d  ..browser.runtim
1150: 65 2e 6f 6e 4d 65 73 73 61 67 65 2e 61 64 64 4c  e.onMessage.addL
1160: 69 73 74 65 6e 65 72 28 68 61 6e 64 6c 65 4d 65  istener(handleMe
1170: 73 73 61 67 65 29 3b 0a 0a 0a 2f 2a 0a 20 20 20  ssage);.../*.   
1180: 20 41 63 74 69 6f 6e 73 0a 2a 2f 0a 0a 66 75 6e   Actions.*/..fun
1190: 63 74 69 6f 6e 20 73 68 6f 77 50 61 67 65 20 28  ction showPage (
11a0: 73 50 61 67 65 4e 61 6d 65 29 20 7b 0a 20 20 20  sPageName) {.   
11b0: 20 74 72 79 20 7b 0a 20 20 20 20 20 20 20 20 2f   try {.        /
11c0: 2f 20 68 69 64 65 20 74 68 65 6d 20 61 6c 6c 0a  / hide them all.
11d0: 20 20 20 20 20 20 20 20 66 6f 72 20 28 6c 65 74          for (let
11e0: 20 78 4e 6f 64 65 50 61 67 65 20 6f 66 20 64 6f   xNodePage of do
11f0: 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e  cument.getElemen
1200: 74 73 42 79 43 6c 61 73 73 4e 61 6d 65 28 22 70  tsByClassName("p
1210: 61 67 65 22 29 29 20 7b 0a 20 20 20 20 20 20 20  age")) {.       
1220: 20 20 20 20 20 78 4e 6f 64 65 50 61 67 65 2e 73       xNodePage.s
1230: 74 79 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 22  tyle.display = "
1240: 6e 6f 6e 65 22 3b 0a 20 20 20 20 20 20 20 20 7d  none";.        }
1250: 0a 20 20 20 20 20 20 20 20 2f 2f 20 73 68 6f 77  .        // show
1260: 20 74 68 65 20 73 65 6c 65 63 74 65 64 20 6f 6e   the selected on
1270: 65 0a 20 20 20 20 20 20 20 20 64 6f 63 75 6d 65  e.        docume
1280: 6e 74 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49  nt.getElementByI
1290: 64 28 73 50 61 67 65 4e 61 6d 65 29 2e 73 74 79  d(sPageName).sty
12a0: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 22 62 6c  le.display = "bl
12b0: 6f 63 6b 22 3b 0a 20 20 20 20 20 20 20 20 69 66  ock";.        if
12c0: 20 28 73 50 61 67 65 4e 61 6d 65 20 3d 3d 20 22   (sPageName == "
12d0: 67 63 5f 6f 70 74 69 6f 6e 73 5f 70 61 67 65 22  gc_options_page"
12e0: 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) {.            
12f0: 64 69 73 70 6c 61 79 47 43 4f 70 74 69 6f 6e 73  displayGCOptions
1300: 4c 6f 61 64 65 64 46 72 6f 6d 53 74 6f 72 61 67  LoadedFromStorag
1310: 65 28 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20  e();.        }. 
1320: 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28         else if (
1330: 73 50 61 67 65 4e 61 6d 65 20 3d 3d 20 22 75 69  sPageName == "ui
1340: 5f 6f 70 74 69 6f 6e 73 5f 70 61 67 65 22 29 20  _options_page") 
1350: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 69  {.            di
1360: 73 70 6c 61 79 55 49 4f 70 74 69 6f 6e 73 4c 6f  splayUIOptionsLo
1370: 61 64 65 64 46 72 6f 6d 53 74 6f 72 61 67 65 28  adedFromStorage(
1380: 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20  );.        }.   
1390: 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 73 50       else if (sP
13a0: 61 67 65 4e 61 6d 65 20 3d 3d 20 22 73 63 5f 6f  ageName == "sc_o
13b0: 70 74 69 6f 6e 73 5f 70 61 67 65 22 29 20 7b 0a  ptions_page") {.
13c0: 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 70              disp
13d0: 6c 61 79 53 43 4f 70 74 69 6f 6e 73 4c 6f 61 64  laySCOptionsLoad
13e0: 65 64 46 72 6f 6d 53 74 6f 72 61 67 65 28 29 3b  edFromStorage();
13f0: 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d  .        }.    }
1400: 0a 20 20 20 20 63 61 74 63 68 20 28 65 29 20 7b  .    catch (e) {
1410: 0a 20 20 20 20 20 20 20 20 73 68 6f 77 45 72 72  .        showErr
1420: 6f 72 28 65 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a  or(e);.    }.}..
1430: 0a 66 75 6e 63 74 69 6f 6e 20 73 68 6f 77 54 65  .function showTe
1440: 73 74 52 65 73 75 6c 74 20 28 73 54 65 78 74 29  stResult (sText)
1450: 20 7b 0a 20 20 20 20 64 6f 63 75 6d 65 6e 74 2e   {.    document.
1460: 67 65 74 45 6c 65 6d 65 6e 74 42 79 49 64 28 22  getElementById("
1470: 74 65 73 74 73 5f 72 65 73 75 6c 74 22 29 2e 74  tests_result").t
1480: 65 78 74 43 6f 6e 74 65 6e 74 20 3d 20 73 54 65  extContent = sTe
1490: 78 74 3b 0a 7d 0a 0a 0a 2f 2a 0a 20 20 20 20 55  xt;.}.../*.    U
14a0: 49 20 6f 70 74 69 6f 6e 73 0a 2a 2f 0a 66 75 6e  I options.*/.fun
14b0: 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 55 49 4f  ction displayUIO
14c0: 70 74 69 6f 6e 73 4c 6f 61 64 65 64 46 72 6f 6d  ptionsLoadedFrom
14d0: 53 74 6f 72 61 67 65 20 28 29 20 7b 0a 20 20 20  Storage () {.   
14e0: 20 69 66 20 28 62 43 68 72 6f 6d 65 29 20 7b 0a   if (bChrome) {.
14f0: 20 20 20 20 20 20 20 20 62 72 6f 77 73 65 72 2e          browser.
1500: 73 74 6f 72 61 67 65 2e 6c 6f 63 61 6c 2e 67 65  storage.local.ge
1510: 74 28 22 75 69 5f 6f 70 74 69 6f 6e 73 22 2c 20  t("ui_options", 
1520: 64 69 73 70 6c 61 79 55 49 4f 70 74 69 6f 6e 73  displayUIOptions
1530: 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72  );.        retur
1540: 6e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 6c 65 74  n;.    }.    let
1550: 20 78 50 72 6f 6d 69 73 65 20 3d 20 62 72 6f 77   xPromise = brow
1560: 73 65 72 2e 73 74 6f 72 61 67 65 2e 6c 6f 63 61  ser.storage.loca
1570: 6c 2e 67 65 74 28 22 75 69 5f 6f 70 74 69 6f 6e  l.get("ui_option
1580: 73 22 29 3b 0a 20 20 20 20 78 50 72 6f 6d 69 73  s");.    xPromis
1590: 65 2e 74 68 65 6e 28 64 69 73 70 6c 61 79 55 49  e.then(displayUI
15a0: 4f 70 74 69 6f 6e 73 2c 20 73 68 6f 77 45 72 72  Options, showErr
15b0: 6f 72 29 3b 0a 7d 0a 0a 66 75 6e 63 74 69 6f 6e  or);.}..function
15c0: 20 64 69 73 70 6c 61 79 55 49 4f 70 74 69 6f 6e   displayUIOption
15d0: 73 20 28 64 4f 70 74 69 6f 6e 73 29 20 7b 0a 20  s (dOptions) {. 
15e0: 20 20 20 69 66 20 28 21 64 4f 70 74 69 6f 6e 73     if (!dOptions
15f0: 2e 68 61 73 4f 77 6e 50 72 6f 70 65 72 74 79 28  .hasOwnProperty(
1600: 22 75 69 5f 6f 70 74 69 6f 6e 73 22 29 29 20 7b  "ui_options")) {
1610: 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 6f 6c 65  .        console
1620: 2e 6c 6f 67 28 22 6e 6f 20 75 69 20 6f 70 74 69  .log("no ui opti
1630: 6f 6e 73 20 66 6f 75 6e 64 22 29 3b 0a 20 20 20  ons found");.   
1640: 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20       return;.   
1650: 20 7d 0a 20 20 20 20 64 4f 70 74 69 6f 6e 73 20   }.    dOptions 
1660: 3d 20 64 4f 70 74 69 6f 6e 73 2e 75 69 5f 6f 70  = dOptions.ui_op
1670: 74 69 6f 6e 73 3b 0a 20 20 20 20 66 6f 72 20 28  tions;.    for (
1680: 6c 65 74 20 73 4f 70 74 20 69 6e 20 64 4f 70 74  let sOpt in dOpt
1690: 69 6f 6e 73 29 20 7b 0a 20 20 20 20 20 20 20 20  ions) {.        
16a0: 69 66 20 28 64 6f 63 75 6d 65 6e 74 2e 67 65 74  if (document.get
16b0: 45 6c 65 6d 65 6e 74 42 79 49 64 28 22 75 69 5f  ElementById("ui_
16c0: 6f 70 74 69 6f 6e 5f 22 2b 73 4f 70 74 29 29 20  option_"+sOpt)) 
16d0: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 6f  {.            do
16e0: 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e  cument.getElemen
16f0: 74 42 79 49 64 28 22 75 69 5f 6f 70 74 69 6f 6e  tById("ui_option
1700: 5f 22 2b 73 4f 70 74 29 2e 63 68 65 63 6b 65 64  _"+sOpt).checked
1710: 20 3d 20 64 4f 70 74 69 6f 6e 73 5b 73 4f 70 74   = dOptions[sOpt
1720: 5d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20  ];.        }.   
1730: 20 7d 0a 7d 0a 0a 66 75 6e 63 74 69 6f 6e 20 73   }.}..function s
1740: 74 6f 72 65 55 49 4f 70 74 69 6f 6e 73 20 28 29  toreUIOptions ()
1750: 20 7b 0a 20 20 20 20 62 72 6f 77 73 65 72 2e 73   {.    browser.s
1760: 74 6f 72 61 67 65 2e 6c 6f 63 61 6c 2e 73 65 74  torage.local.set
1770: 28 7b 22 75 69 5f 6f 70 74 69 6f 6e 73 22 3a 20  ({"ui_options": 
1780: 7b 0a 20 20 20 20 20 20 20 20 74 65 78 74 61 72  {.        textar
1790: 65 61 3a 20 64 6f 63 75 6d 65 6e 74 2e 67 65 74  ea: document.get
17a0: 45 6c 65 6d 65 6e 74 42 79 49 64 28 22 75 69 5f  ElementById("ui_
17b0: 6f 70 74 69 6f 6e 5f 74 65 78 74 61 72 65 61 22  option_textarea"
17c0: 29 2e 63 68 65 63 6b 65 64 2c 0a 20 20 20 20 20  ).checked,.     
17d0: 20 20 20 65 64 69 74 61 62 6c 65 6e 6f 64 65 3a     editablenode:
17e0: 20 64 6f 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65   document.getEle
17f0: 6d 65 6e 74 42 79 49 64 28 22 75 69 5f 6f 70 74  mentById("ui_opt
1800: 69 6f 6e 5f 65 64 69 74 61 62 6c 65 6e 6f 64 65  ion_editablenode
1810: 22 29 2e 63 68 65 63 6b 65 64 0a 20 20 20 20 7d  ").checked.    }
1820: 7d 29 3b 0a 7d 0a 0a 0a 2f 2a 0a 20 20 20 20 53  });.}.../*.    S
1830: 43 20 4f 70 74 69 6f 6e 73 0a 2a 2f 0a 66 75 6e  C Options.*/.fun
1840: 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 53 43 4f  ction displaySCO
1850: 70 74 69 6f 6e 73 4c 6f 61 64 65 64 46 72 6f 6d  ptionsLoadedFrom
1860: 53 74 6f 72 61 67 65 20 28 29 20 7b 0a 20 20 20  Storage () {.   
1870: 20 69 66 20 28 62 43 68 72 6f 6d 65 29 20 7b 0a   if (bChrome) {.
1880: 20 20 20 20 20 20 20 20 62 72 6f 77 73 65 72 2e          browser.
1890: 73 74 6f 72 61 67 65 2e 6c 6f 63 61 6c 2e 67 65  storage.local.ge
18a0: 74 28 22 73 63 5f 6f 70 74 69 6f 6e 73 22 2c 20  t("sc_options", 
18b0: 64 69 73 70 6c 61 79 53 43 4f 70 74 69 6f 6e 73  displaySCOptions
18c0: 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72  );.        retur
18d0: 6e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 6c 65 74  n;.    }.    let
18e0: 20 78 50 72 6f 6d 69 73 65 20 3d 20 62 72 6f 77   xPromise = brow
18f0: 73 65 72 2e 73 74 6f 72 61 67 65 2e 6c 6f 63 61  ser.storage.loca
1900: 6c 2e 67 65 74 28 22 73 63 5f 6f 70 74 69 6f 6e  l.get("sc_option
1910: 73 22 29 3b 0a 20 20 20 20 78 50 72 6f 6d 69 73  s");.    xPromis
1920: 65 2e 74 68 65 6e 28 64 69 73 70 6c 61 79 53 43  e.then(displaySC
1930: 4f 70 74 69 6f 6e 73 2c 20 73 68 6f 77 45 72 72  Options, showErr
1940: 6f 72 29 3b 0a 7d 0a 0a 66 75 6e 63 74 69 6f 6e  or);.}..function
1950: 20 64 69 73 70 6c 61 79 53 43 4f 70 74 69 6f 6e   displaySCOption
1960: 73 20 28 64 4f 70 74 69 6f 6e 73 29 20 7b 0a 20  s (dOptions) {. 
1970: 20 20 20 69 66 20 28 21 64 4f 70 74 69 6f 6e 73     if (!dOptions
1980: 2e 68 61 73 4f 77 6e 50 72 6f 70 65 72 74 79 28  .hasOwnProperty(
1990: 22 73 63 5f 6f 70 74 69 6f 6e 73 22 29 29 20 7b  "sc_options")) {
19a0: 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 6f 6c 65  .        console
19b0: 2e 6c 6f 67 28 22 6e 6f 20 73 63 20 6f 70 74 69  .log("no sc opti
19c0: 6f 6e 73 20 66 6f 75 6e 64 22 29 3b 0a 20 20 20  ons found");.   
19d0: 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20       return;.   
19e0: 20 7d 0a 20 20 20 20 64 4f 70 74 69 6f 6e 73 20   }.    dOptions 
19f0: 3d 20 64 4f 70 74 69 6f 6e 73 2e 73 63 5f 6f 70  = dOptions.sc_op
1a00: 74 69 6f 6e 73 3b 0a 20 20 20 20 2f 2f 64 6f 63  tions;.    //doc
1a10: 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e 74  ument.getElement
1a20: 42 79 49 64 28 22 65 78 74 65 6e 64 65 64 5f 64  ById("extended_d
1a30: 69 63 22 29 2e 63 68 65 63 6b 65 64 20 3d 20 64  ic").checked = d
1a40: 4f 70 74 69 6f 6e 73 2e 65 78 74 65 6e 64 65 64  Options.extended
1a50: 5f 64 69 63 3b 0a 20 20 20 20 64 6f 63 75 6d 65  _dic;.    docume
1a60: 6e 74 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49  nt.getElementByI
1a70: 64 28 22 63 6f 6d 6d 75 6e 69 74 79 5f 64 69 63  d("community_dic
1a80: 22 29 2e 63 68 65 63 6b 65 64 20 3d 20 64 4f 70  ").checked = dOp
1a90: 74 69 6f 6e 73 2e 63 6f 6d 6d 75 6e 69 74 79 5f  tions.community_
1aa0: 64 69 63 3b 0a 20 20 20 20 64 6f 63 75 6d 65 6e  dic;.    documen
1ab0: 74 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49 64  t.getElementById
1ac0: 28 22 70 65 72 73 6f 6e 61 6c 5f 64 69 63 22 29  ("personal_dic")
1ad0: 2e 63 68 65 63 6b 65 64 20 3d 20 64 4f 70 74 69  .checked = dOpti
1ae0: 6f 6e 73 2e 70 65 72 73 6f 6e 61 6c 3b 0a 7d 0a  ons.personal;.}.
1af0: 0a 66 75 6e 63 74 69 6f 6e 20 73 74 6f 72 65 53  .function storeS
1b00: 43 4f 70 74 69 6f 6e 73 20 28 29 20 7b 0a 20 20  COptions () {.  
1b10: 20 20 62 72 6f 77 73 65 72 2e 73 74 6f 72 61 67    browser.storag
1b20: 65 2e 6c 6f 63 61 6c 2e 73 65 74 28 7b 22 73 63  e.local.set({"sc
1b30: 5f 6f 70 74 69 6f 6e 73 22 3a 20 7b 0a 20 20 20  _options": {.   
1b40: 20 20 20 20 20 65 78 74 65 6e 64 65 64 3a 20 66       extended: f
1b50: 61 6c 73 65 2c 0a 20 20 20 20 20 20 20 20 63 6f  alse,.        co
1b60: 6d 6d 75 6e 69 74 79 3a 20 64 6f 63 75 6d 65 6e  mmunity: documen
1b70: 74 2e 67 65 74 45 6c 65 6d 65 6e 74 42 79 49 64  t.getElementById
1b80: 28 22 63 6f 6d 6d 75 6e 69 74 79 5f 64 69 63 22  ("community_dic"
1b90: 29 2e 63 68 65 63 6b 65 64 2c 0a 20 20 20 20 20  ).checked,.     
1ba0: 20 20 20 70 65 72 73 6f 6e 61 6c 3a 20 64 6f 63     personal: doc
1bb0: 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d 65 6e 74  ument.getElement
1bc0: 42 79 49 64 28 22 70 65 72 73 6f 6e 61 6c 5f 64  ById("personal_d
1bd0: 69 63 22 29 2e 63 68 65 63 6b 65 64 0a 20 20 20  ic").checked.   
1be0: 20 7d 7d 29 3b 0a 7d 0a 0a 0a 2f 2a 0a 20 20 20   }});.}.../*.   
1bf0: 20 47 43 20 6f 70 74 69 6f 6e 73 0a 2a 2f 0a 66   GC options.*/.f
1c00: 75 6e 63 74 69 6f 6e 20 64 69 73 70 6c 61 79 47  unction displayG
1c10: 43 4f 70 74 69 6f 6e 73 4c 6f 61 64 65 64 46 72  COptionsLoadedFr
1c20: 6f 6d 53 74 6f 72 61 67 65 20 28 29 20 7b 0a 20  omStorage () {. 
1c30: 20 20 20 69 66 20 28 62 43 68 72 6f 6d 65 29 20     if (bChrome) 
1c40: 7b 0a 20 20 20 20 20 20 20 20 62 72 6f 77 73 65  {.        browse
1c50: 72 2e 73 74 6f 72 61 67 65 2e 6c 6f 63 61 6c 2e  r.storage.local.
1c60: 67 65 74 28 22 67 63 5f 6f 70 74 69 6f 6e 73 22  get("gc_options"
1c70: 2c 20 5f 64 69 73 70 6c 61 79 47 43 4f 70 74 69  , _displayGCOpti
1c80: 6f 6e 73 29 3b 0a 20 20 20 20 20 20 20 20 72 65  ons);.        re
1c90: 74 75 72 6e 3b 0a 20 20 20 20 7d 0a 20 20 20 20  turn;.    }.    
1ca0: 6c 65 74 20 78 50 72 6f 6d 69 73 65 20 3d 20 62  let xPromise = b
1cb0: 72 6f 77 73 65 72 2e 73 74 6f 72 61 67 65 2e 6c  rowser.storage.l
1cc0: 6f 63 61 6c 2e 67 65 74 28 22 67 63 5f 6f 70 74  ocal.get("gc_opt
1cd0: 69 6f 6e 73 22 29 3b 0a 20 20 20 20 78 50 72 6f  ions");.    xPro
1ce0: 6d 69 73 65 2e 74 68 65 6e 28 5f 64 69 73 70 6c  mise.then(_displ
1cf0: 61 79 47 43 4f 70 74 69 6f 6e 73 2c 20 73 68 6f  ayGCOptions, sho
1d00: 77 45 72 72 6f 72 29 3b 0a 7d 0a 0a 66 75 6e 63  wError);.}..func
1d10: 74 69 6f 6e 20 5f 64 69 73 70 6c 61 79 47 43 4f  tion _displayGCO
1d20: 70 74 69 6f 6e 73 20 28 64 53 61 76 65 64 4f 70  ptions (dSavedOp
1d30: 74 69 6f 6e 73 29 20 7b 0a 20 20 20 20 69 66 20  tions) {.    if 
1d40: 28 64 53 61 76 65 64 4f 70 74 69 6f 6e 73 2e 68  (dSavedOptions.h
1d50: 61 73 4f 77 6e 50 72 6f 70 65 72 74 79 28 22 67  asOwnProperty("g
1d60: 63 5f 6f 70 74 69 6f 6e 73 22 29 29 20 7b 0a 20  c_options")) {. 
1d70: 20 20 20 20 20 20 20 64 69 73 70 6c 61 79 47 43         displayGC
1d80: 4f 70 74 69 6f 6e 73 28 64 53 61 76 65 64 4f 70  Options(dSavedOp
1d90: 74 69 6f 6e 73 2e 67 63 5f 6f 70 74 69 6f 6e 73  tions.gc_options
1da0: 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 66 75 6e 63  );.    }.}..func
1db0: 74 69 6f 6e 20 64 69 73 70 6c 61 79 47 43 4f 70  tion displayGCOp
1dc0: 74 69 6f 6e 73 20 28 6f 4f 70 74 69 6f 6e 73 29  tions (oOptions)
1dd0: 20 7b 0a 20 20 20 20 74 72 79 20 7b 0a 20 20 20   {.    try {.   
1de0: 20 20 20 20 20 66 6f 72 20 28 6c 65 74 20 73 50       for (let sP
1df0: 61 72 61 6d 20 69 6e 20 6f 4f 70 74 69 6f 6e 73  aram in oOptions
1e00: 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20  ) {.            
1e10: 69 66 20 28 64 6f 63 75 6d 65 6e 74 2e 67 65 74  if (document.get
1e20: 45 6c 65 6d 65 6e 74 42 79 49 64 28 22 6f 70 74  ElementById("opt
1e30: 69 6f 6e 5f 22 2b 73 50 61 72 61 6d 29 29 20 7b  ion_"+sParam)) {
1e40: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1e50: 20 64 6f 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65   document.getEle
1e60: 6d 65 6e 74 42 79 49 64 28 22 6f 70 74 69 6f 6e  mentById("option
1e70: 5f 22 2b 73 50 61 72 61 6d 29 2e 63 68 65 63 6b  _"+sParam).check
1e80: 65 64 20 3d 20 6f 4f 70 74 69 6f 6e 73 5b 73 50  ed = oOptions[sP
1e90: 61 72 61 6d 5d 3b 0a 20 20 20 20 20 20 20 20 20  aram];.         
1ea0: 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20     }.        }. 
1eb0: 20 20 20 7d 0a 20 20 20 20 63 61 74 63 68 20 28     }.    catch (
1ec0: 65 29 20 7b 0a 20 20 20 20 20 20 20 20 73 68 6f  e) {.        sho
1ed0: 77 45 72 72 6f 72 28 65 29 3b 0a 20 20 20 20 20  wError(e);.     
1ee0: 20 20 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67 28 6f     console.log(o
1ef0: 4f 70 74 69 6f 6e 73 29 3b 0a 20 20 20 20 7d 0a  Options);.    }.
1f00: 7d 0a                                            }.