Fritzing without Donation

Download Fritzing without donation.

  1. // ==UserScript==
  2. // @name Fritzing without Donation
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description Download Fritzing without donation.
  6. // @author DickyT
  7. // @match https://fritzing.org/download/
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function() {
  12. 'use strict';
  13.  
  14. const data = {
  15. "payer_email": "thankyou@fritzing.org",
  16. "payer_id": "UNKNOWN",
  17. "payer_status": "UNKNOWN",
  18. "first_name": "DID NOT",
  19. "last_name": "DONATE USER",
  20. "txn_id": "UNKNOWN",
  21. "mc_currency": "USD",
  22. "mc_gross": "0",
  23. "protection_eligibility": "UNKNOWN",
  24. "payment_gross": "0",
  25. "payment_status": "UNKNOWN",
  26. "pending_reason": "multi_currency",
  27. "payment_type": "instant",
  28. "handling_amount": "0",
  29. "shipping": "0",
  30. "item_name": "Download Fritzing",
  31. "quantity": "1",
  32. "txn_type": "web_accept",
  33. "payment_date": "2019-11-10T7:12:12Z",
  34. "business": "download@fritzing.org",
  35. "receiver_id": "UNKNOWN",
  36. "notify_version": "UNKNOWN",
  37. "verify_sign": "UNKNOWN",
  38. };
  39.  
  40. const form = document.createElement('form');
  41. form.style.display = 'none';
  42.  
  43. Object.keys(data).forEach((k) => {
  44. const input = document.createElement('input');
  45. input.name = k;
  46. input.value = data[k];
  47. form.append(input);
  48. });
  49.  
  50. form.action = "https://fritzing.org/download/?d7547=1";
  51. form.method = "POST";
  52.  
  53. document.body.append(form);
  54.  
  55. document.querySelector('#donateForm').append(document.createElement('br'));
  56.  
  57. const downloadBtn = document.createElement('button');
  58. downloadBtn.type = 'button';
  59. downloadBtn.textContent = 'Download without donation';
  60. downloadBtn.addEventListener('click', () => {
  61. form.submit();
  62. });
  63.  
  64. document.querySelector('#donateForm').append(downloadBtn);
  65. })();