duolingo_immersion_every_language

This script gives access to immersion if you don't have it, and in unsupported languages.

  1. // ==UserScript==
  2. // @name duolingo_immersion_every_language
  3. // @namespace duolingo_immersion_every_language
  4. // @include https://www.duolingo.com/*
  5. // @version 1
  6. // @run-at document-start
  7. // @grant none
  8. // @description This script gives access to immersion if you don't have it, and in unsupported languages.
  9. // @description based on script: https://greasyfork.org/en/scripts/17151-web-noimmersion-experiment-optout
  10. // ==/UserScript==
  11.  
  12. window.addEventListener('beforescriptexecute', function(e){
  13. if(duo.immersion_enabled == false) duo.immersion_enabled = true;
  14. if (e.target.innerHTML.contains('duo.immersion_enabled = false;')){
  15. eval(e.target.innerHTML.replace('duo.immersion_enabled = false;','duo.immersion_enabled = true;').replace('"web_noimmersion_experiment": true','"web_noimmersion_experiment": false'));
  16. e.stopPropagation();
  17. e.preventDefault();
  18. window.removeEventListener(e.type, arguments.callee, true);
  19. }
  20. }, false);