Advertisement
Guest User

Untitled

a guest
Oct 19th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. var presence = new Presence({
  2. clientId: "633335999967264807",
  3. mediaKeys: true
  4. }),
  5. strings = presence.getStrings({
  6. play: "presence.playback.playing",
  7. pause: "presence.playback.paused"
  8. });
  9.  
  10. var browsingStamp = Math.floor(Date.now() / 1000);
  11.  
  12. presence.on("UpdateData", async () => {
  13.  
  14. let presenceData: presenceData = {
  15. largeImageKey: "large_img"
  16. };
  17.  
  18. const url = window.location.href;
  19.  
  20. if (url.includes("/video/")) {
  21. var video: HTMLVideoElement = document.getElementsByTagName("video")[0];
  22.  
  23. var timestamps = getTimestamps(
  24. Math.floor(video.currentTime),
  25. Math.floor(video.duration));
  26. var splits = url.split("/");
  27. const title = capitalise(splits[6].split("-"));
  28. presenceData.details = title;
  29. presenceData.smallImageKey = video.paused ? "pause": "play";
  30. presenceData.smallImageText = video.paused ? (await strings).pause : (await strings).play;
  31. presenceData.startTimestamp = timestamps[0];
  32. presenceData.endTimestamp = timestamps[1];
  33.  
  34. if(splits.length > 5) {
  35. presenceData.state = capitalise(splits[6].split("-")) + " " + capitalise(splits[6].split("-"));
  36. }
  37. if (video.paused) {
  38. delete presenceData.startTimestamp;
  39. delete presenceData.endTimestamp;
  40. }
  41. } else if (document.location.pathname.includes("sok")) {
  42. presenceData.details = "Searching...";
  43. presenceData.startTimestamp = browsingStamp;
  44. delete presenceData.state;
  45. } else if(document.location.pathname == "/" || !document.location.pathname) {
  46. presenceData.details = "Browsing";
  47. presenceData.startTimestamp = browsingStamp;
  48. delete presenceData.state;
  49. }
  50.  
  51. presence.setActivity(presenceData);
  52. });
  53.  
  54. function getTimestamps(videoTime: number, videoDuration: number) {
  55. var startTime = Date.now();
  56. var endTime = Math.floor(startTime / 1000) - videoTime + videoDuration;
  57. return [Math.floor(startTime / 1000), endTime];
  58. }
  59.  
  60. function capitalise(splitStr)
  61. {
  62. for (var i = 0; i < splitStr.length; i++) {
  63. splitStr[i] = splitStr[i].charAt(0).toUpperCase() + splitStr[i].substring(1);
  64. splitStr[i] = splitStr[i].replace("Sasong", "Season").replace("Avsnitt", "Episode");
  65. }
  66. return splitStr.join(" ");
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement