var maxDim = 1280; function copyToClipboard(str) { var el = document.createElement('textarea'); el.value = str; el.setAttribute('readonly', ''); el.style.position = 'absolute'; el.style.left = '-9999px'; document.body.appendChild(el); el.select(); document.execCommand('copy'); document.body.removeChild(el); } var http = new XMLHttpRequest(); http.open("GET", "https://snap.as/api/me", true); http.onreadystatechange = function() { if (http.readyState == 4) { env = JSON.parse(http.responseText); if (env.code == 200 && typeof env.data !== 'undefined' && env.data != "") { document.getElementById('loading').style.display = 'none'; document.getElementById('uploader').style.display = 'block'; } else { document.getElementById('loading').innerHTML = 'Log in to Snap.as'; document.getElementById('login').onclick = function(e) { e.preventDefault(); chrome.tabs.create({ url: 'https://snap.as/login' }); window.close(); }; } } } http.send(); Dropzone.options.uploader = { maxFilesize: 16, resizeWidth: maxDim, acceptedFiles: 'image/*', parallelUploads: 1, uploadMultiple: false, dictDefaultMessage: 'Drop a file here', init: function() { this.on("success", function(file, resp) { var data = resp; copyToClipboard('![](' + data.data.url + ')'); chrome.runtime.sendMessage({success: true}, function(response) { }); window.close(); }); } };