Greasy Fork

JVC réponse live

Répondez plus facilement à quelqu'un et voyez qui vous a répondu

目前为 2017-02-21 提交的版本。查看 最新版本

// ==UserScript==
// @name         JVC réponse live
// @namespace    http://www.jeuxvideo.com/
// @version      1
// @description  Répondez plus facilement à quelqu'un et voyez qui vous a répondu 
// @author       FriendsBeach
// @match        http://www.jeuxvideo.com/*
// @match        https://www.jeuxvideo.com/*
// @require      https://code.jquery.com/jquery-1.11.3.min.js
// ==/UserScript==

(function() {
    'use strict';
    var pseudoJVC;
    var dateT = new Date();
    var rTime = dateT.getTime();
    var iAmTheMaster = false;
    var idMaster = Math.random();

    var last_response = null;
    var last_response_id = null;

    $('body').on('click', '.picto-msg-quote',function(){
        var bloc = $(this).closest('.bloc-message-forum');
        last_response = bloc;
        last_response_id = bloc.data('id');
        $("#bloc-formulaire-forum").insertAfter('.bloc-message-forum[data-id="'+bloc.data('id')+'"]');
    });

    $('#bloc-formulaire-forum .titre-head-bloc').hide();

    function scrollTo(message) {
        message.scrollIntoView();
    }

    addEventListener('topiclive:newmessage', function(event){

        var messageId = event.detail.id;

        var p = $('.bloc-message-forum[data-id="'+ messageId +'"] .bloc-pseudo-msg').html().trim();

        if(p.toLowerCase() == pseudoJVC.toLowerCase()){
            $("#bloc-formulaire-forum").insertAfter('.bloc-outils-bottom');
            var response_bloc = $('.bloc-message-forum[data-id="'+ messageId +'"]');

            if(last_response !== undefined){
                response_bloc.insertAfter('.bloc-message-forum[data-id="'+ last_response_id +'"]');
                last_response_id = last_response = undefined;
            }

        }

        checkIfNotif();

    });

    function debug(msg){
        console.log('[ JVC-NOTIF ] - ' + msg);
    }

    (function getPseudo() {
        pseudoJVC = document.getElementsByClassName("account-pseudo")[0].innerHTML;
    })();

    function checkIfNotif() {
        debug('Check notification');

        if(pseudoJVC !== undefined) {

            $('.bloc-message-forum').each(function(){
                var id = $(this).data('id');
                var main = $(this);

                if(main.data('done') == 'yes') return true;

                main.data('done','yes');
                $(this).find('.bloc-contenu .blockquote-jv').each(function(){

                    var parent = $(this).parent();
                    if(parent.attr('class') == 'blockquote-jv'){
                        return true;
                    }

                    var p = $(this).find('p');
                    if(p){
                        p = p[0];
                        var html = $(p).html();
                        var index = html.indexOf(pseudoJVC);

                        if(index != -1){

                            $(this).css('background','beige');
                            var pseudo = main.find('.bloc-header a').html().trim();


                        }

                    }
                });
            });
        }
    }

    checkIfNotif();

})();