Steam - Default language

Make sure you always see the steam page in your preferred language. You can configure the language in the language variable.

当前为 2016-05-04 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name Steam - Default language
  3. // @version 0.3
  4. // @description Make sure you always see the steam page in your preferred language. You can configure the language in the language variable.
  5. // @author Royalgamer06
  6. // @include /(http|https)\:\/\/(.+\.steampowered|steamcommunity)\.com.*/
  7. // @run-at document-start
  8. // @grant none
  9. // @namespace https://greasyfork.org/users/13642
  10. // ==/UserScript==
  11.  
  12. //SET YOUR LANGUAGE HERE
  13. var language = "en";
  14. /*
  15. bulgarian: bg,
  16. czech: cs,
  17. danish: da,
  18. dutch: nl,
  19. finnish: fi,
  20. french: fr,
  21. greek: el,
  22. german: de,
  23. hungarian: hu,
  24. italian: it,
  25. japanese: ja,
  26. koreana: ko,
  27. norwegian: no,
  28. polish: pl,
  29. portuguese: pt-PT,
  30. brazilian: pt-BR,
  31. russian: ru,
  32. romanian: ro,
  33. schinese: zh-CN,
  34. spanish: es-ES,
  35. swedish: sv-SE,
  36. tchinese: zh-TW,
  37. thai: th,
  38. turkish: tr,
  39. ukrainian: uk
  40. */
  41.  
  42. //DO NOT TOUCH BELOW
  43. window.onload = function() {
  44. var anchors = document.getElementsByTagName("a");
  45. for (var i = 0; i < anchors.length; i++) {
  46. if (anchors[i].href.indexOf("l=" + language) == -1 && (anchors[i].href.indexOf("steamcommunity") > -1 || anchors[i].href.indexOf("steampowered") > -1)) {
  47. anchors[i].href = addParameter(anchors[i].href, "l", language, false);
  48. }
  49. }
  50. };
  51.  
  52. if (location.href.indexOf("l=" + language) == -1) {
  53. location.href = addParameter(location.href, "l", language, false);
  54. }
  55.  
  56. //Nice solution from http://stackoverflow.com/a/6954277/4356020
  57. function addParameter(url, parameterName, parameterValue, atStart) {
  58. replaceDuplicates = true;
  59. var cl = "";
  60. if(url.indexOf('#') > 0){
  61. cl = url.indexOf('#');
  62. urlhash = url.substring(url.indexOf('#'),url.length);
  63. } else {
  64. urlhash = '';
  65. cl = url.length;
  66. }
  67. sourceUrl = url.substring(0,cl);
  68.  
  69. var urlParts = sourceUrl.split("?");
  70. var newQueryString = "";
  71.  
  72. if (urlParts.length > 1)
  73. {
  74. var parameters = urlParts[1].split("&");
  75. for (var i=0; (i < parameters.length); i++)
  76. {
  77. var parameterParts = parameters[i].split("=");
  78. if (!(replaceDuplicates && parameterParts[0] == parameterName))
  79. {
  80. if (newQueryString === "")
  81. newQueryString = "?";
  82. else
  83. newQueryString += "&";
  84. newQueryString += parameterParts[0] + "=" + (parameterParts[1]?parameterParts[1]:'');
  85. }
  86. }
  87. }
  88. if (newQueryString === "")
  89. newQueryString = "?";
  90.  
  91. if(atStart){
  92. newQueryString = '?'+ parameterName + "=" + parameterValue + (newQueryString.length>1?'&'+newQueryString.substring(1):'');
  93. } else {
  94. if (newQueryString !== "" && newQueryString != '?')
  95. newQueryString += "&";
  96. newQueryString += parameterName + "=" + (parameterValue?parameterValue:'');
  97. }
  98. return urlParts[0] + newQueryString + urlhash;
  99. }