nHentai English Filter

Adds quick English filter to nHentai pages.

  1. // ==UserScript==
  2. // @name nHentai English Filter
  3. // @description Adds quick English filter to nHentai pages.
  4. // @author Hen-Tie
  5. // @homepage https://hen-tie.tumblr.com/
  6. // @namespace https://greasyfork.org/en/users/8336
  7. // @include /https:\/\/nhentai\.net\/(parody|favorites|artist|tag|group|category|search)\/(?!.*english)/
  8. // @icon https://i.imgur.com/pGYy5SR.png
  9. // @version 5.2
  10. // ==/UserScript==
  11. var pathname = window.location.pathname;
  12. var namespaceQuery = window.location.pathname.split('/')[2];
  13. var searchQuery = window.location.search.split('=')[1];
  14. var namespaceSearchLink = '<div class="sort-type"><a href="https://nhentai.net/search/?q=' + namespaceQuery + '+English">English Only</a></div>';
  15. var siteSearchLink = '<div class="sort-type"><a href="https://nhentai.net/search/?q=' + searchQuery + '+English">English Only</a></div>';
  16. var favSearchBtn = '<a class="btn btn-primary" href="https://nhentai.net/favorites/?q=English+' + searchQuery + '"><i class="fa fa-flag"></i> ENG</a>';
  17. var favPageBtn = '<a class="btn btn-primary" href="https://nhentai.net/favorites/?q=English+"><i class="fa fa-flag"></i> ENG</a>';
  18.  
  19. if (/\/(artist|tag|group|category|parody)\//.test(pathname)) { // namespace searches
  20. document.getElementsByClassName('sort')[0].innerHTML += namespaceSearchLink;
  21. } else if (/\/search\//.test(pathname)) { // general searches
  22. document.getElementsByClassName('sort')[0].innerHTML += siteSearchLink;
  23. } else if (/\/favorites\//.test(pathname)) { // fav searches
  24. if (window.location.search.length) {
  25. document.getElementById('favorites-random-button').insertAdjacentHTML('afterend', favSearchBtn);
  26. } else {
  27. document.getElementById('favorites-random-button').insertAdjacentHTML('afterend', favPageBtn);
  28. }
  29. }