Report Cpt_Mathix's Profile

Statistics

Anime Stats
Days: 129.6
Mean Score: 8.15
  • Total Entries781
  • Rewatched10
  • Episodes7,966
Anime History Last Anime Updates
Spy x Family Part 2
Spy x Family Part 2
Sep 8, 2:43 PM
Plan to Watch · Scored -
Spy x Family
Spy x Family
Jul 3, 8:39 AM
Completed 12/12 · Scored 10
Genjitsu Shugi Yuusha no Oukoku Saikenki Part 2
Genjitsu Shugi Yuusha no Oukoku Saikenki Part 2
Mar 28, 1:31 PM
Watching 12/13 · Scored -
Manga Stats
Days: 18.0
Mean Score: 8.17
  • Total Entries49
  • Reread0
  • Chapters3,108
  • Volumes126
Manga History Last Manga Updates

Access to this list has been restricted by the owner.

All Favorites Favorites

Anime (10)
Manga (5)
Character (10)

All Comments (70) Comments

Would you like to post a comment? Please login or sign up first!
hacker09 Aug 5, 12:48 PM
I see, well I'm going to try to figure out how to get the next video link somehow.

Thanks!
hacker09 Aug 5, 11:51 AM
Great, your code worked for the letter l, but not for the letter n

Is it possible to make the iframe interact with the top frame?

// ==UserScript==
// @name         JWPlayer Enhancer
// @namespace    https://greasyfork.org/en/users/670188-hacker09?sort=daily_installs
// @version      2
// @description  Improves binge watch experiences on any JWPlayer videos online.
// @author       hacker09
// @include      *
// @match        https://mateus7g.github.io/crp-iframe-player/
// @icon         https://www.jwplayer.com/hubfs/JW_Player_August2021/Images/favicon-152.png
// @run-at       document-end
// @grant        unsafeWindow
// ==/UserScript==

(function() {
  'use strict';
  window.onload = setTimeout(function() //When the page is loaded
                             { //Starts the onload event listener
    const Player = unsafeWindow.jwplayer(unsafeWindow.jwplayer().getContainer()); //Store the Player element to a variable

    setTimeout(function() { //Starts the settimeout function
      if (location.href.match('crunchyroll') !== null) //If the N key was pressed (skip end and next ep preview)
      { //Starts the if condition
        next = window.querySelector(".collection-carousel-media-link-current").parentElement.nextElementSibling.querySelector("div > div > div > a"); //Jump to next ep
      } //Finishes the else condition

      function Visibility() //Create a function to check the tab visibility status
      { //Starts the function
        if (document.visibilityState === 'visible') { //If the tab is unfocused
          Player.play() //Plays the video
          Player.setFullscreen(true); //Auto full screen the video
        } //Finishes the if condition
      } //Finishes the if function
      Visibility(); //Calls the function

      document.addEventListener("visibilitychange", function() { //When the tab is focused/unfocused
        setTimeout(function() { //Starts the settimeout function
          Visibility(); //Calls the function
        }, 1000); //Finishes the settimeout function

        if (document.hidden) { //If the tab is unfocused
          Player.pause(); //Pause the video
        } //Finishes the if condition

      }, false); //Finishes the visibilitychange event listener
    }, 500); //Finishes the settimeout function

    Player.on('complete', function() { //When the video ends
      Player.setFullscreen(false); //Leave video full screen mode
    }); //Finishes the oncomplete event listener

    Player.on('pause', function() { //When the video is pause
      Player.setFullscreen(false); //Leave video full screen mode
    }); //Finishes the oncomplete event listener

    document.head.insertAdjacentHTML('beforeend', '<style>.jw-rightclick { display: none !important; }</style>'); //Hide the right click jwplayer video menu options

    document.getElementById(unsafeWindow.jwplayer().id).addEventListener('click', function(e) { //When the video is clicked
      setTimeout(function() { //Starts the settimeout function
        if (Player.getState() === 'paused') //If the video is paused
        { //Starts the if condition
          Player.setFullscreen(false); //Leave video full screen mode
        } //Finishes the if condition
        else //If the video is playing
        { //Starts the else condition
          Player.setFullscreen(true); //Enters video full screen mode
        } //Finishes the else condition
      }, 500); //Finishes the settimeout function
    }); //Finishes the on click event listener

    //document.querySelector("video")
    document.addEventListener("keydown", e => { //Listen for keypresses
      console.log("keypressed");
      if (e.key === 'n') //If the N key was pressed (skip end and next ep preview)
      { //Starts the if condition
        Player.setFullscreen(false); //Leave video full screen mode
        if (location.href.match('crunchyroll') !== null) //If the N key was pressed (skip end and next ep preview)
        { //Starts the if condition
          Player.next(); //Jump to next ep
          //next.click();
          //window.querySelector(".collection-carousel-media-link-current").parentElement.nextElementSibling.querySelector("div > div > div > a").click(); //Jump to next ep
        } //Finishes the else condition
      } //Finishes the else condition
      if (e.key === 'l') //If the L key was pressed (skip the opening)
      { //Starts the if condition
        Player.seek(Player.getPosition() + 85); //Seek 1:25 secs foward
      } //Finishes the else condition
    }); //Finishes the keydown event listener
  }, 1500); //Finishes the onload event listener
})();
hacker09 Aug 5, 7:47 AM
Well, that didn't work...
hacker09 Jul 30, 8:56 AM
Thanks, I will check his reply.
hacker09 Jul 29, 7:12 PM
I'm trying to make a script for crunchyroll but I'm having some issues.
Would you know how to "fix" that?

https://greasyfork.org/en/discussions/development/142388-can-t-make-event-listener-work-when-iframe-video-is-focused
hacker09 May 23, 2:08 PM
Besides not doing properly what it says, your script fetches the page right after page load, so I think it is just doing 1 single needless network request to MAL to show wrong information.

If you fix your script you not only would have to do a for loop but make it require an user action, so that a bunch of network requests are not made right after page load, blocking users and your own script network requests.
It would end up looking too similar to my script.
hacker09 May 23, 2:06 PM
Hi there!

I would like to say sorry for making another script that actually does the same thing as yours
https://greasyfork.org/en/scripts/18971-myanimelist-mal-average-friends-score/code

I noticed it just today actually...

Also, I was reading at your codes and your script does not work as it says...

All your script does is it gets the first page of the stats pages, grabs all friends scores for the entry and calculates the average based on the first stats page only, thus showing wrong data.

I also did commit that same mistake in my first version of the script, but I fixed that a couple days ago too...
https://greasyfork.org/en/scripts/443777-friends-average-score-mal/code

I just would like to let you know that and, if you are not willing to actually fix it and update your script, I could actually make your script not public and redirect users to my working updated script.

I've chose to talk with you first, before doing anything, if I actually do anything...
WinDCu2ter Jan 15, 1:00 AM
Okay,thank you for your time.
smolseok Jan 12, 8:23 PM
thanks for the quick fix man, i love ur extensions and i hope u continue making em!
smolseok Jan 11, 4:06 PM
hey man just messaging to let u know that the hide completed feature on ur endless mal search pages no longer works.
WinDCu2ter Jan 7, 11:33 PM
Hi,

I wanted to ask you if you can fix this script that is no longer working.

https://greasyfork.org/en/scripts/13183-myanimelist-mal-move-favorites
SheyCroix Dec 8, 2021 1:19 PM
It is! Thank you ♥
SheyCroix Dec 7, 2021 4:41 PM
hacker09 May 5, 2021 6:12 AM
Yeah that was it, the same problem I had before.

I guess it would be better if you made your script js only, like .onmouseenter = function(){ click the hovered element}
hacker09 May 4, 2021 9:03 PM
I just started getting a new error on your script
"MyAnimeList(MAL) - Hover List, Notifications and Profile dropdown"

Uncaught TypeError: $(...).hoverIntent is not a function