diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 8d248db8..df392585 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -15,19 +15,21 @@ https://bitcointalk.org/index.php?topic=43496.0 Donation Address: 1NiNja1bUmhSoTXozBRBEtR8LeF9TGbZBN END USER NOTES: - 1) To print QRCode in IE8 you must enable the "Print Background Colors and - Images" checkbox on the "Page Setup" screen. - 2) For Bulk Wallet I recommended using Google Chrome, it's the fastest. - 3) Requires IE8+, Firefox, Chrome or sufficient JavaScript support. - 4) Mobile Safari only works with iPhone4 or newer devices. + 1) For Bulk Wallet I recommended using Google Chrome, it's the fastest. + 2) Requires IE9+, Firefox, Chrome or sufficient JavaScript support. + 3) Mobile Safari only works with iPhone4 or newer devices. Older devices timeout while executing JavaScript. - 5) DO NOT use Opera Mini it renders JavaScript output server side, therefore + 4) DO NOT use Opera Mini it renders JavaScript output server side, therefore they might record the private key you generated. - 6) Art Wallet does not work properly in IE8 due to CSS limitations. - 7) BIP38 most likely will not work on mobile devices due to hardware limitations. + 5) BIP38 most likely will not work on mobile devices due to hardware limitations. Here is a signed list of file names and version history. +2016-12-23: status ACTIVE +bitaddress.org-v3.3.0-SHA256-dec17c07685e1870960903d8f58090475b25af946fe95a734f88408cef4aa194.html + - remove support for IE8 + - small translations updates for hu and pt-br + 2016-11-27: status ACTIVE bitaddress.org-v3.2.3-SHA256-c9a0bb3ed50aa75a5ae9c606d81e3fd41a4ff686ad38ad5379e2402f481e79a4.html - wallet details: show error when checksum validation fails diff --git a/CHANGELOG.txt.asc b/CHANGELOG.txt.asc index fdca8f95..8345959e 100644 --- a/CHANGELOG.txt.asc +++ b/CHANGELOG.txt.asc @@ -18,19 +18,21 @@ https://bitcointalk.org/index.php?topic=43496.0 Donation Address: 1NiNja1bUmhSoTXozBRBEtR8LeF9TGbZBN END USER NOTES: - 1) To print QRCode in IE8 you must enable the "Print Background Colors and - Images" checkbox on the "Page Setup" screen. - 2) For Bulk Wallet I recommended using Google Chrome, it's the fastest. - 3) Requires IE8+, Firefox, Chrome or sufficient JavaScript support. - 4) Mobile Safari only works with iPhone4 or newer devices. + 1) For Bulk Wallet I recommended using Google Chrome, it's the fastest. + 2) Requires IE9+, Firefox, Chrome or sufficient JavaScript support. + 3) Mobile Safari only works with iPhone4 or newer devices. Older devices timeout while executing JavaScript. - 5) DO NOT use Opera Mini it renders JavaScript output server side, therefore + 4) DO NOT use Opera Mini it renders JavaScript output server side, therefore they might record the private key you generated. - 6) Art Wallet does not work properly in IE8 due to CSS limitations. - 7) BIP38 most likely will not work on mobile devices due to hardware limitations. + 5) BIP38 most likely will not work on mobile devices due to hardware limitations. Here is a signed list of file names and version history. +2016-12-23: status ACTIVE +bitaddress.org-v3.3.0-SHA256-dec17c07685e1870960903d8f58090475b25af946fe95a734f88408cef4aa194.html + - remove support for IE8 + - small translations updates for hu and pt-br + 2016-11-27: status ACTIVE bitaddress.org-v3.2.3-SHA256-c9a0bb3ed50aa75a5ae9c606d81e3fd41a4ff686ad38ad5379e2402f481e79a4.html - wallet details: show error when checksum validation fails @@ -338,11 +340,11 @@ bitaddress.org-v0.1-SHA1-f40e706490f3eb2be56c31ddbf4c8646cd51ef40.html -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 -iQEcBAEBAgAGBQJYOz4QAAoJEIdJe5Fjl09ar74IAMiOx4/c/q7UaTEjlAQDmseh -CxSRHHQUwGaZG6z9pwt9ecdKht4t3Y2+CufcPmoV7A1Vq2EtoXFxEibwDwLuTzYL -pqcUZCV+fwd0PGGz69mL0iGrMJHy0lhBZb4lb+2P6fXz4D35n1Dnq1jHGAOzcFEF -B2++ja2s8QJwd1S1xtOhBshVZDTHc8YYgv1JJSKDpJNeGSFHx9IapOv4ydETbhfT -L7kp9z6TKZ5khkRUCGR2qL4BzlTA/lSDj/cgVb6tRQmIgusRMjvJP076nEqiJ4TX -8YZrObi2yXM7bD8iBXIabc3W2r/R9olw+pCxI+ZuFEOU+UVndCRpP7XEMsTp4aw= -=/wYY +iQEcBAEBAgAGBQJYXsrGAAoJEIdJe5Fjl09aoeMH/jtuyhZTOsVcvR5AWlFDxCqe +gEMXlBoss+ICZb+d394xkjqfczQwc8g3zg6CLmp13ftuqdC5BZSMEfZFb3Hj8fPo +dGyRpNBpai19P6dt8g5BjQ/ZEejZrmQvNK8kCmmCf8fdBr95h09g0ZjQyLfLXUu2 +vzQBSNy1G9WL1xJmNhcRf6cn/wDQPDIKNUNDySuDPDNHWWUX4nswbggb4ae9Xmyg +o9VhhCmkqgZ5Wd6f+AEXQVWe1uEaPmysRhaOHiw6DB6DpAZoeOG14LUQ/qTOtVFj +nPrswwbrX3D2X0C+X0ZnZkFSkidj2MuPE53qnMa2NNMtzhvFS9cXP9i9xyiH6/w= +=wZb6 -----END PGP SIGNATURE----- diff --git a/Gruntfile.js b/Gruntfile.js index 9dfbd877..fa59b802 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -9,7 +9,6 @@ module.exports = function (grunt) { input: "./src/bitaddress-ui.html", output: "./bitaddress.org.html", tokens: [ - { token: "//array.map.js", file: "./src/array.map.js" }, { token: "//biginteger.js", file: "./src/biginteger.js" }, { token: "//bitcoinjs-lib.js", file: "./src/bitcoinjs-lib.js" }, { token: "//bitcoinjs-lib.address.js", file: "./src/bitcoinjs-lib.address.js" }, diff --git a/README.md b/README.md index de22e170..0ad77cb6 100644 --- a/README.md +++ b/README.md @@ -20,20 +20,17 @@ Please send DONATIONS for this project to Bitcoin Address: END USER NOTES: - 1) To print QRCode in IE8 you must enable the "Print Background Colors and - Images" checkbox on the "Page Setup" screen. + 1) For Bulk Wallet I recommended using Google Chrome, it's the fastest. - 2) For Bulk Wallet I recommended using Google Chrome, it's the fastest. + 2) Requires IE9+, Firefox, Chrome or sufficient JavaScript support. - 3) Requires IE8+, Firefox, Chrome or sufficient JavaScript support. - - 4) Mobile Safari only works with iPhone4 or newer devices. + 3) Mobile Safari only works with iPhone4 or newer devices. Older devices timeout while executing JavaScript. - 5) DO NOT use Opera Mini it renders JavaScript output server side, therefore + 4) DO NOT use Opera Mini it renders JavaScript output server side, therefore they might record the private key you generated. - 6) Art Wallet does not work properly in IE8 due to CSS limitations. + 5) BIP38 most likely will not work on mobile devices due to hardware limitations. Notice of Copyrights and Licenses: diff --git a/bitaddress.org.html b/bitaddress.org.html index fe54ca0b..eee04c7e 100644 --- a/bitaddress.org.html +++ b/bitaddress.org.html @@ -16,7 +16,6 @@ Summary of JavaScript functions with a redistributable license: JavaScript function License ******************* *************** - Array.prototype.map Public Domain window.Crypto BSD License window.SecureRandom BSD License window.EllipticCurve BSD License @@ -26,7 +25,7 @@ window.Crypto_scrypt MIT License The bitaddress.org software is available under The MIT License (MIT) - Copyright (c) 2011-2013 bitaddress.org (pointbiz) + Copyright (c) 2011-2016 bitaddress.org (pointbiz) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including @@ -49,65 +48,6 @@ bitaddress.org - diff --git a/src/culture/pt-br.js b/src/culture/pt-br.js index 6b69636f..f356be30 100644 --- a/src/culture/pt-br.js +++ b/src/culture/pt-br.js @@ -1,21 +1,21 @@ (function (translator) { translator.translations["pt-br"] = { // javascript alerts or messages - "testneteditionactivated": "EDIÇÃO DO TESTNET ATIVADA", + "testneteditionactivated": "EDIÇÃO DA TESTNET ATIVADA", "paperlabelbitcoinaddress": "Endereço Bitcoin:", "paperlabelprivatekey": "Chave privada:", "paperlabelencryptedkey": "Chave privada criptografada (Senha necessária)", - "bulkgeneratingaddresses": "Generando endereços... ", + "bulkgeneratingaddresses": "Gerando endereços... ", "brainalertpassphrasetooshort": "A senha introduzida é pequena demais.\n\n", - "brainalertpassphrasewarning": "Aviso: É importante que escolha uma senha forte, para evitar ataques de força bruta que tentem adivinhar sua senha e roubar seus bitcoins.", + "brainalertpassphrasewarning": "Aviso: É importante que você escolha uma senha forte, para evitar ataques de força bruta que tentem adivinhar sua senha e roubar seus bitcoins.", "brainalertpassphrasedoesnotmatch": "As senhas digitadas não são iguais.", "detailalertnotvalidprivatekey": "O texto que você digitou não é uma chave privada válida", - "detailconfirmsha256": "O texto que você digitou não é uma chave privada válida\n\nQuer usar esse texto como se fosse uma senha e gerar uma chave privada usando um hash SHA256 dessa senha?\n\nAviso: É importante escolher uma senha forte para evitar ataques de força bruta que tentem adivinhá-la e roubar seus bitcoins.", + "detailconfirmsha256": "O texto que você digitou não é uma chave privada válida\n\nDeseja usar esse texto como se fosse uma senha e gerar uma chave privada usando um hash SHA256 dessa senha?\n\nAviso: É importante escolher uma senha forte para evitar ataques de força bruta que tentem adivinhá-la e roubar seus bitcoins.", "bip38alertincorrectpassphrase": "Senha incorreta para essa chave privada criptografada.", "bip38alertpassphraserequired": "Senha necessária para a chave BIP38", "vanityinvalidinputcouldnotcombinekeys": "Entrada inválida. Não foi possível combinar as chaves.", - "vanityalertinvalidinputpublickeysmatch": "Entrada inválida. As chaves públicas de ambas entradas são iguais. Você deve inserir duas chaves diferentes.", - "vanityalertinvalidinputcannotmultiple": "Entrada inválida. Não é possível multiplicar duas chaves públicas. Clique em 'Somar' para somar duas chaves públicas para adquirir um endereço bitcoin.", + "vanityalertinvalidinputpublickeysmatch": "Entrada inválida. As chaves públicas de ambas as entradas são iguais. Você deve inserir duas chaves diferentes.", + "vanityalertinvalidinputcannotmultiple": "Entrada inválida. Não é possível multiplicar duas chaves públicas. Clique em 'Somar' e some duas chaves públicas para adquirir um endereço bitcoin.", "vanityprivatekeyonlyavailable": "Disponível apenas quando se combinam duas chaves privadas", "vanityalertinvalidinputprivatekeysmatch": "Entrada inválida. As chaves privadas de ambas as entradas são iguais. Você deve inserir duas chaves diferentes.", @@ -29,7 +29,7 @@ "bulkwallet": "Múltiplos endereços", "brainwallet": "Carteira mental", "vanitywallet": "Carteira personalizada", - "splitwallet": "Split Wallet", //TODO: please translate + "splitwallet": "Carteira fracionada", "detailwallet": "Detalhes da carteira", // footer html @@ -45,42 +45,42 @@ "footerlabelnowarranty": "Sem garantia.", // status html - "statuslabelcryptogood": "✔ Good!", //TODO: please translate + "statuslabelcryptogood": "✔ Boa!", "statuslabelcryptogood1": "Your browser can generate cryptographically random keys using window.crypto.getRandomValues", //TODO: please translate - "statusokcryptogood": "OK", //TODO: please translate - "statuslabelcryptobad": "× Oh no!", //TODO: please translate + "statusokcryptogood": "OK", + "statuslabelcryptobad": "× Oh não!", "statuslabelcryptobad1": "Your browser does NOT support window.crypto.getRandomValues. You should use a more modern browser with this generator to increase the security of the keys generated.", - "statusokcryptobad": "OK", //TODO: please translate - "statuslabelunittestsgood": "✔ Good!", //TODO: please translate + "statusokcryptobad": "OK", + "statuslabelunittestsgood": "✔ Boa!", "statuslabelunittestsgood1": "All synchronous unit tests passed.", //TODO: please translate - "statusokunittestsgood": "OK", //TODO: please translate - "statuslabelunittestsbad": "× Oh no!", //TODO: please translate + "statusokunittestsgood": "OK", + "statuslabelunittestsbad": "× Oh não!", "statuslabelunittestsbad1": "Some synchronous unit tests DID NOT pass. You should find another browser to use with this generator.", //TODO: please translate - "statusokunittestsbad": "OK", //TODO: please translate - "statuslabelprotocolgood": "✔ Good!", //TODO: please translate + "statusokunittestsbad": "OK", + "statuslabelprotocolgood": "✔ Boa!", "statuslabelprotocolgood1": "You are running this generator from your local computer.
Tip: Double check you are offline by trying ", //TODO: please translate - "statusokprotocolgood": "OK", //TODO: please translate - "statuslabelprotocolbad": "⚠ Think twice!", //TODO: please translate + "statusokprotocolgood": "OK", + "statuslabelprotocolbad": "⚠ Pense duas vezes!", "statuslabelprotocolbad1": "You appear to be running this generator online from a live website. For valuable wallets it is recommended to", //TODO: please translate - "statuslabelprotocolbad2": "download", //TODO: please translate + "statuslabelprotocolbad2": "download", "statuslabelprotocolbad3": "the zip file from GitHub and run this generator offline as a local html file.", //TODO: please translate - "statusokprotocolbad": "OK", //TODO: please translate + "statusokprotocolbad": "OK", "statuslabelkeypool1": "This is a log of all the Bitcoin Addresses and Private Keys you generated during your current session. Reloading the page will create a new session.", //TODO: please translate - "statuskeypoolrefresh": "Refresh", //TODO: please translate - "statusokkeypool": "OK", //TODO: please translate + "statuskeypoolrefresh": "Atualizar", + "statusokkeypool": "OK", // single wallet html "newaddress": "Gerar endereço", "singleprint": "Imprimir", "singlelabelbitcoinaddress": "Endereço Bitcoin", "singlelabelprivatekey": "Chave privada (Wallet Import Format):", - "singletip1": "Uma carteira Bitcoin é tão simples quanto um simples pareamento de um endereço Bitcoin com a sua chave privada Bitcoin correspondente. Essa carteira foi gerada para você em seu navegador web e está sendo exibida acima.", - "singletip2": "Para proteger essa carteira você deve imprimir ou anotar/salvar o endereço Bitcoin e a chave privada. É importante que você faça uma cópia de segurança da sua chave privada e armazene-a em um local seguro. Esse site não toma conhecimento da sua chave privada. Se você for familiar com PGP, você pode baixar essa pagina HTML tudo-em-um e verificar se você tem uma versão autêntica do autor deste site ao fazer a correspondência do hash SHA256 deste HTML com o hash SHA256 disponível na versão assinada do documento linkado no rodapé deste site. Se você sair/atualizar essa página ou apertar o botão Gerar Novo Endereço, então uma nova chave privada será gerada e a chave exibida anteriormente não será recuperável. A sua chave privada Bitcoin deve ser mantida como um segredo. Qualquer pessoa que tiver acesso a ela poderá gastar todos os seus bitcoins associados com aquele endereço. Se você imprimir sua carteira, armazene-a em um saco plástico selado para mantê-la longe da água. Trate uma carteira em papel como se fosse dinheiro.", + "singletip1": "Uma carteira Bitcoin nada mais é do que um endereço Bitcoin e a sua chave privada Bitcoin correspondente. Essa carteira foi gerada para você em seu navegador web e está sendo exibida acima.", + "singletip2": "Para proteger essa carteira você deve imprimir ou anotar/salvar o endereço Bitcoin e a sua chave privada correspondente. É importante que você faça uma cópia de segurança da sua chave privada e armazene-a em um local seguro. Esse site não toma conhecimento da sua chave privada. Se você for familiar com criptografia PGP, você pode baixar essa página HTML em um arquivo único e verificar se você tem uma versão autêntica do autor deste site ao fazer a correspondência do hash SHA256 deste HTML com o hash SHA256 disponível na versão assinada do arquivo contido no link no rodapé deste site. Se você sair/atualizar essa página ou apertar o botão Gerar Novo Endereço, então uma nova chave privada será gerada e a chave exibida anteriormente não será recuperável. A sua chave privada Bitcoin deve ser mantida em um segredo. Qualquer pessoa que tiver acesso a ela poderá gastar todos os seus bitcoins associados com aquele endereço. Se você imprimir sua carteira, armazene-a em um saco plástico selado para mantê-la longe da água. Trate sua carteira em papel como se fosse dinheiro.", "singletip3": "Adicione fundos para essa carteira ao indicar para outras pessoas enviarem bitcoins para o seu endereço Bitcoin.", "singletip4": "Verifique seu saldo visitando os sites blockchain.info ou blockexplorer.com e digitando o seu endereço Bitcoin.", - "singletip5": "Gaste seus bitcoins visitando o site blockchain.info e esvaziando completamente o seu saldo de sua chave privada para sua conta no site. Você também pode gastar seus fundos ao baixar um cliente bitcoin p2p popular e importar sua chave privada para a carteira do aplicativo. Tenha em mjente que quando você importa uma chave única para um cliente bitcoin p2p e gasta seus fundos, sua chave será agrupada com outras chavfes privadas no aplicativo de carteira. Quando você realizar uma transação o seu troco será enviado para outro endereço bitcoin dentro do seu aplicativo de carteira. Você deve então fazer backup da sua carteira em seu aplicativo e mantê-la em segurança, visto que seus bitcoins remanescentes agora serão armazenados nela. Um conselho do Satoshi Nakamoto é de que uma carteira nunca deve ser apagada.", - "singleshare": "COMPARTILHE", //TODO: please translate - "singlesecret": "SECRETA", //TODO: please translate + "singletip5": "Gaste seus bitcoins visitando o site blockchain.info e esvaziando completamente o seu saldo de sua chave privada para sua conta no site. Você também pode gastar seus fundos ao baixar um cliente bitcoin p2p popular e importar sua chave privada para a carteira do aplicativo. Tenha em mente que quando você importa uma chave única para um cliente bitcoin p2p e gasta seus fundos, sua chave será agrupada com outras chavfes privadas no aplicativo de carteira. Quando você realizar uma transação o seu troco será enviado para outro endereço bitcoin dentro do seu aplicativo de carteira. Você deve então fazer backup da sua carteira em seu aplicativo e mantê-la em segurança, visto que seus bitcoins remanescentes agora serão armazenados nela. Um conselho do Satoshi Nakamoto é de que uma carteira nunca deve ser apagada.", + "singleshare": "COMPARTILHE", + "singlesecret": "SECRETA", // paper wallet html "paperlabelhideart": "Ocultar figura", @@ -98,7 +98,7 @@ "bulkgenerate": "Gerar", "bulkprint": "Imprimir", "bulklabelcsv": "Valores separados por vírgula:", - "bulklabelformat": "Índice,Dirección,Clave privada (formato para importar)", + "bulklabelformat": "Índice,Endereço,Chave privada (formato para importar)", "bulklabelq1": "¿Por qué debo usar \"Direcciones en masa\" para aceptar Bitcoins en mi web?", "bulka1": "La forma tradicional de aceptar bitcoins en tu web requiere tener instalado el cliente oficial de bitcoin (\"bitcoind\"). Sin embargo muchos servicios de hosting no permiten instalar dicho cliente. Además, ejecutar el cliente en tu servidor supone que las claves privadas están también en el servidor y podrían ser comprometidas en caso de intrusión. Al usar este mecanismo, puedes subir al servidor sólo las dirección de bitcoin y no las claves privadas. De esta forma no te tienes que preocupar de que alguien robe la cartera si se cuelan en el servidor.", "bulklabelq2": "¿Cómo uso \"Direcciones en masa\" para aceptar bitcoins en mi web?", @@ -152,15 +152,15 @@ "detaillabelpublickey": "Chave pública (130 caracteres [0-9A-F]):", "detaillabelpublickeycomp": "Chave pública (comprimida, 66 caracteres [0-9A-F]):", "detaillabelprivwif": "Chave privada para importação (51 caracteres em base58, inicia com um", - "detaillabelprivwifcomp": "Chave privada para importação (comprimida, 52 caracteres em base58, inicia com", - "detailcompwifprefix": "'K' o 'L'", + "detaillabelprivwifcomp": "Chave privada para importação (comprimida, 52 caracteres em base58, inicia com", + "detailcompwifprefix": "'K' ou 'L'", "detaillabelprivhex": "Chave privada em formato hexadecimal (64 caracteres [0-9A-F]):", "detaillabelprivb64": "Chave privada em base64 (44 caracteres):", "detaillabelprivmini": "Chave privada en formato mini (22, 26 ou 30 caracteres, inicia com 'S'):", "detaillabelpassphrase": "Senha BIP38", - "detailbip38decryptbutton": "Desencriptar BIP38", - "detailbip38encryptbutton": "Encrypt BIP38", //TODO: please translate - "detaillabelq1": "Como eu faço uma carteira usando um dado? O que é B6?", + "detailbip38decryptbutton": "Descriptografar BIP38", + "detailbip38encryptbutton": "Criptografar em BIP38", + "detaillabelq1": "Como eu faço uma carteira usando um dado? O que é o formato B6?", "detaila1": "Uma parte importante ao criar um carteira Bitcoin é se assegurar que os números aleatórios usados para criar a carteira sejam realmente aleatórios. A aleatoriedade física é melhor do que a pseudo-aleatoriedade gerada por computador. A maneira mais fácil de gerar aleatoriedade física é com dados. Para criar um chave privada Bitcoin você precisa de apenas um dado de seis lados, o qual você jogará 99 vezes. A cada jogada, anote o valor do dado. Ao anotar os valores, siga as seguintes regras: 1=1, 2=2, 3=3, 4=4, 5=5, 6=0. Ao fazer isso, você está anotando esse grande número aleatório, sua chave privada, no formato base 6 (B6). Você pode então digitar essa chave privada em base 6 contendo 99 caracteres no campo de texto acima e clicar em Ver Detalhes. Você então verá o endereço Bitcoin associado com sua chave privada. Você deve também anotar sua chave privada no formato WIF, já que ele é mais amplamente utilizado." }; })(ninja.translator); \ No newline at end of file diff --git a/src/main.css b/src/main.css index 8a286014..1734fa36 100644 --- a/src/main.css +++ b/src/main.css @@ -144,11 +144,6 @@ input[type=checkbox] { position: relative; z-index: 20; } #busyblock.busy { display: block; } .hide { display: none; } .show { display: block; } - -/* IE8 */ -.qrcodetable { border-width: 0px; border-style: none; border-color: #0000ff; border-collapse: collapse; } -.qrcodetddark { border-width: 0px; border-style: none; border-color: #0000ff; border-collapse: collapse; padding: 0; margin: 0; width: 2px; height: 2px; background-color: #000000; } -.qrcodetdlight { border-width: 0px; border-style: none; border-color: #0000ff; border-collapse: collapse; padding: 0; margin: 0; width: 2px; height: 2px; background-color: #ffffff; } @media screen { diff --git a/src/ninja.qrcode.js b/src/ninja.qrcode.js index d53d1810..9b821d64 100644 --- a/src/ninja.qrcode.js +++ b/src/ninja.qrcode.js @@ -48,29 +48,7 @@ return canvas; }, - // generate a QRCode and return it's representation as an Html table - createTableHtml: function (text) { - var typeNumber = qrC.getTypeNumber(text); - var qr = new QRCode(typeNumber, QRCode.ErrorCorrectLevel.H); - qr.addData(text); - qr.make(); - var tableHtml = ""; - for (var r = 0; r < qr.getModuleCount() ; r++) { - tableHtml += ""; - for (var c = 0; c < qr.getModuleCount() ; c++) { - if (qr.isDark(r, c)) { - tableHtml += ""; - } - tableHtml += "
"; - } else { - tableHtml += ""; - } - } - tableHtml += "
"; - return tableHtml; - }, - - // show QRCodes with canvas OR table (IE8) + // show QRCodes with canvas // parameter: keyValuePair // example: { "id1": "string1", "id2": "string2"} // "id1" is the id of a div element where you want a QRCode inserted. @@ -84,10 +62,7 @@ document.getElementById(key).appendChild(qrC.createCanvas(value, sizeMultiplier)); } } - catch (e) { - // for browsers that do not support canvas (IE8) - document.getElementById(key).innerHTML = qrC.createTableHtml(value); - } + catch (e) { } } } };