help.vue 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. <template>
  2. <div>
  3. <h1 class="title-text pt-12">Troubleshooting</h1>
  4. <ol
  5. class="col-xs-12 col-sm-11 col-md-9 col-lg-7 q-mx-auto text-left"
  6. style="line-height: 3rem; color: #aaa"
  7. >
  8. <li>
  9. Make sure you have latest version of extension installed,
  10. <code style="color: #eee">
  11. <b>{{ version }}</b></code
  12. >
  13. right now
  14. </li>
  15. <li>
  16. Try removing extension and installing it again, then restarting the
  17. browser (all active windows, not just one tab).
  18. </li>
  19. <li>
  20. Make sure that this link opens:
  21. <a
  22. class="px-2 py-1"
  23. style="background: #222; border-radius: 0.25rem"
  24. href="https://returnyoutubedislikeapi.com/votes?videoId=QOFEgexls14"
  25. >
  26. https://returnyoutubedislikeapi.com/votes?videoId=QOFEgexls14
  27. </a>
  28. , <br />
  29. you should see plain text: <br />
  30. <span style="color: #eee">
  31. {"id":"QOFEgexls14", "dateCreated":"2021-12-15T16:54:12.250813Z",
  32. "likes":2907, "dislikes":215, "rating":4.725641025641026,
  33. "viewCount":28222, "deleted":false}
  34. </span>
  35. </li>
  36. <li>
  37. If nothing of above helps - report your problem in
  38. <code>#bugs-and-problems</code> in our
  39. <v-btn
  40. class="mainAltButton"
  41. style="
  42. font-size: 0.5rem;
  43. height: 1.5rem;
  44. color: #aaa;
  45. padding-left: 0.25rem !important;
  46. padding-right: 0.5rem !important;
  47. "
  48. :href="discordLink"
  49. target="_blank"
  50. >
  51. <v-icon size="1rem" style="margin-right: 0.5em">mdi-discord</v-icon>
  52. Discord
  53. </v-btn>
  54. <ol type="a">
  55. <li>
  56. Tell us your <b>Operating System</b>, <b>Browser Name</b> and
  57. <b>Browser Version</b>.
  58. <v-btn
  59. class="mainAltButton"
  60. style="
  61. height: 1.5rem;
  62. font-size: 0.75rem;
  63. text-transform: none !important;
  64. padding-left: 0.5rem !important;
  65. padding-right: 0.25rem !important;
  66. "
  67. target="_blank"
  68. @click="copyToClipboard(platform)"
  69. >
  70. <v-icon size=".75rem" color="primary" style="margin-right: 0.5em"
  71. >mdi-content-copy</v-icon
  72. >
  73. <span style="color: #f44"> Detected: </span>
  74. &nbsp;{{ platform }}
  75. </v-btn>
  76. </li>
  77. <li style="position: relative; width: 100%">
  78. Take screenshot of page with problem (i.e. youtube video page) with
  79. console open (press <code>F12</code>) - example screenshot below.
  80. <img
  81. width="100%"
  82. style="border-radius: 1rem; border: 2px solid #333"
  83. src="ui/troubleshooting.png"
  84. alt="example-screenshot"
  85. />
  86. </li>
  87. <li>
  88. Take screenshot of extensions page of your browser with extension
  89. installed. <br />
  90. To see extensions put this into adress bar:
  91. <br />
  92. <code>about:addons</code> for Firefox
  93. <br />
  94. <code>chrome://extensions</code> for Chrome, Edge, Brave, Opera,
  95. Vivaldi
  96. </li>
  97. </ol>
  98. </li>
  99. </ol>
  100. </div>
  101. </template>
  102. <script>
  103. export default {
  104. transition(to, from) {
  105. if (!from) return "swoop-in";
  106. let routes = ["index", "install", "docs", "help", "faq", "donate", "links"];
  107. if (routes.indexOf(to.name) < 0) return "swoop-out";
  108. if (routes.indexOf(from.name) < 0) return "swoop-in";
  109. return routes.indexOf(to.name) > routes.indexOf(from.name)
  110. ? "swoop-left"
  111. : "swoop-right";
  112. },
  113. data: () => ({
  114. version: "2.0.0.3",
  115. platform: "Unknown platform",
  116. discordLink: "https://discord.gg/mYnESY4Md5",
  117. }),
  118. mounted() {
  119. fetch(
  120. "https://raw.githubusercontent.com/Anarios/return-youtube-dislike/main/Extensions/combined/manifest-chrome.json"
  121. )
  122. .then((response) => response.json())
  123. .then((json) => {
  124. this.version = json.version;
  125. });
  126. // .catch(console.error);
  127. // This script sets OSName variable as follows:
  128. // "Windows" for all versions of Windows
  129. // "MacOS" for all versions of Macintosh OS
  130. // "Linux" for all versions of Linux
  131. // "UNIX" for all other UNIX flavors
  132. // "Unknown OS" indicates failure to detect the OS
  133. var OSName = "Unknown OS";
  134. if (navigator.appVersion.indexOf("Win") != -1) OSName = "Windows";
  135. if (navigator.appVersion.indexOf("Mac") != -1) OSName = "MacOS";
  136. if (navigator.appVersion.indexOf("X11") != -1) OSName = "UNIX";
  137. if (navigator.appVersion.indexOf("Linux") != -1) OSName = "Linux";
  138. // browser parcer
  139. navigator.sayswho = (function () {
  140. var ua = navigator.userAgent;
  141. var tem;
  142. var M =
  143. ua.match(
  144. /(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i
  145. ) || [];
  146. if (/trident/i.test(M[1])) {
  147. tem = /\brv[ :]+(\d+)/g.exec(ua) || [];
  148. return "IE " + (tem[1] || "");
  149. }
  150. if (M[1] === "Chrome") {
  151. tem = ua.match(/\b(OPR|Edge)\/(\d+)/);
  152. if (tem != null) return tem.slice(1).join(" ").replace("OPR", "Opera");
  153. }
  154. M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, "-?"];
  155. if ((tem = ua.match(/version\/(\d+)/i)) != null) M.splice(1, 1, tem[1]);
  156. return M.join(" ");
  157. })();
  158. this.platform = OSName + ", " + navigator.sayswho;
  159. },
  160. methods: {
  161. copyToClipboard(text) {
  162. navigator.clipboard.writeText(text);
  163. },
  164. },
  165. };
  166. </script>