Advertisement
Guest User

Item Tracker Add-On

a guest
Oct 22nd, 2017
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. javascript:(function() {
  2.     let data = JSON.parse(localStorage["data"]);
  3.     var div = document.createElement('div');
  4.     div.style.cssText = 'color:black;position:absolute;top:50px;left:5px;padding:10px;border: 1px solid white;z-index:99;background-color:white';
  5.     var input = document.createElement('input');
  6.     input.id = 'myInput';
  7.     input.placeholder = 'item name';
  8.     input.style.cssText = 'width:150px';
  9.     var selectHero = document.createElement('select');
  10.     var selectType = document.createElement('select');
  11.     var heroArray = ['all','ana','bastion','dva','doomfist','genji','hanzo','junkrat','lucio','mccree','mei','mercy','orisa','pharah','reaper','reinhardt','roadhog','soldier-76','sombra','symmetra','torbjorn','tracer','widowmaker','winston','zarya','zenyatta'];
  12.     var itemType = ['skins','emotes','intros','sprays','voicelines','poses','icons'];
  13.     for (he in heroArray) {
  14.         let opt = document.createElement("option");
  15.         opt.innerHTML = heroArray[he];
  16.         selectHero.appendChild(opt);
  17.     }
  18.     for (it in itemType) {
  19.         let opt = document.createElement("option");
  20.         opt.innerHTML = itemType[it];
  21.         selectType.appendChild(opt);
  22.     }
  23.     var submit = document.createElement('input');
  24.     submit.setAttribute('type','submit');
  25.     submit.value = "Add Item";
  26.     function shorten(s) {
  27.         let specialChars = /[\.\?!;:@#\$%&\+\-\(\)"']/g;
  28.         let sNew = s.toLowerCase().trim().replace(specialChars,"").replace(/[àáâãäå]/g,"a").replace(/ç/g,'c').replace(/[éë]/g,'e').replace(/ï/g,'i').replace(/ñ/g,'n').replace(/[óôö]/g,'o').replace(/[úü]/g,'u').replace(/\^o\^/g,"excited").replace(/>_</g,"frustration").replace(/\^_\^/g,"joy").replace(/\s/g,"-");
  29.         return sNew;
  30.     }
  31.     function msg(str) {
  32.         var success = document.createElement("p");
  33.         success.style.cssText = 'width:auto;height:auto';
  34.         success.innerHTML = str;
  35.         div.appendChild(success);
  36.         window.setTimeout(function() {
  37.             success.parentNode.removeChild(success);
  38.         }, 2000);
  39.     }
  40.     submit.onclick = function() {
  41.         let h = selectHero.options[selectHero.selectedIndex].text;
  42.         let t = selectType.options[selectType.selectedIndex].text;
  43.         let na = shorten(input.value);
  44.         let nb = h == "all" ? na : `${h}-${na}`;
  45.         data[h][t][nb] = true;
  46.         localStorage['data'] = JSON.stringify(data);
  47.         msg("Item added.");
  48.     };
  49.     div.appendChild(selectHero);
  50.     div.appendChild(selectType);
  51.     div.appendChild(input);
  52.     div.appendChild(submit);
  53.     document.body.appendChild(div);
  54. })
  55. ();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement