help.vue 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. <template>
  2. <div
  3. style="width: 80vw"
  4. class="col-xs-12 col-sm-11 col-md-9 col-lg-7 mx-auto"
  5. >
  6. <h1 class="title-text pt-12">Troubleshooting</h1>
  7. <ol style="line-height: 3rem; color: #aaa" class="text-left">
  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.
  90. <br />
  91. To see extensions put this into adress bar:
  92. <br />
  93. <code>about:addons</code> for Firefox
  94. <br />
  95. <code>chrome://extensions</code> for Chrome, Edge, Brave, Opera,
  96. Vivaldi
  97. </li>
  98. </ol>
  99. </li>
  100. </ol>
  101. </div>
  102. </template>
  103. <script>
  104. export default {
  105. transition(to, from) {
  106. if (!from) return "swoop-in";
  107. let routes = ["index", "install", "docs", "help", "faq", "donate", "links"];
  108. if (routes.indexOf(to.name) < 0) return "swoop-out";
  109. if (routes.indexOf(from.name) < 0) return "swoop-in";
  110. return routes.indexOf(to.name) > routes.indexOf(from.name)
  111. ? "swoop-left"
  112. : "swoop-right";
  113. },
  114. data: () => ({
  115. version: "loading",
  116. platform: "Unknown platform",
  117. discordLink: "https://discord.gg/mYnESY4Md5",
  118. }),
  119. mounted() {
  120. fetch(
  121. "https://raw.githubusercontent.com/Anarios/return-youtube-dislike/main/Extensions/combined/manifest-chrome.json"
  122. )
  123. .then((response) => response.json())
  124. .then((json) => {
  125. this.version = json.version;
  126. });
  127. // .catch(console.error);
  128. // This script sets OSName variable as follows:
  129. // "Windows" for all versions of Windows
  130. // "MacOS" for all versions of Macintosh OS
  131. // "Linux" for all versions of Linux
  132. // "UNIX" for all other UNIX flavors
  133. // "Unknown OS" indicates failure to detect the OS
  134. var OSName = "Unknown OS";
  135. if (navigator.appVersion.indexOf("Win") != -1) OSName = "Windows";
  136. if (navigator.appVersion.indexOf("Mac") != -1) OSName = "MacOS";
  137. if (navigator.appVersion.indexOf("X11") != -1) OSName = "UNIX";
  138. if (navigator.appVersion.indexOf("Linux") != -1) OSName = "Linux";
  139. // browser parcer
  140. navigator.sayswho = (function () {
  141. var ua = navigator.userAgent;
  142. var tem;
  143. var M =
  144. ua.match(
  145. /(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i
  146. ) || [];
  147. if (/trident/i.test(M[1])) {
  148. tem = /\brv[ :]+(\d+)/g.exec(ua) || [];
  149. return "IE " + (tem[1] || "");
  150. }
  151. if (M[1] === "Chrome") {
  152. tem = ua.match(/\b(OPR|Edge)\/(\d+)/);
  153. if (tem != null) return tem.slice(1).join(" ").replace("OPR", "Opera");
  154. }
  155. M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, "-?"];
  156. if ((tem = ua.match(/version\/(\d+)/i)) != null) M.splice(1, 1, tem[1]);
  157. return M.join(" ");
  158. })();
  159. this.platform = OSName + ", " + navigator.sayswho;
  160. },
  161. methods: {
  162. copyToClipboard(text) {
  163. navigator.clipboard.writeText(text);
  164. },
  165. },
  166. };
  167. </script>