Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- setTimeout(revealSananvapaus);
- function revealSananvapaus( delkey ){
- window.sananvapausInterval = window.sananvapausInterval || setInterval( revealSananvapaus, 15000 );
- delkey = delkey || revealSananvapaus.getKey();
- var deldata = revealSananvapaus.load( delkey ) || {}, deldata_ids = [];
- var alldata = window.alldata = window.alldata || {};
- for( var elem of document.querySelectorAll("#items > yt-live-chat-text-message-renderer")){
- alldata[ elem.id ] = revealSananvapaus.parseMsgElemToArr(elem);
- }
- for( var elem of document.querySelectorAll("#items > yt-live-chat-text-message-renderer[is-deleted]")){
- deldata_ids.push( elem.id );
- deldata[ elem.id ] = alldata[ elem.id ];
- }
- revealSananvapaus.save( delkey, window.deldata = deldata, window.deldata_ids = deldata_ids );
- revealSananvapaus.print( deldata );
- return deldata;
- }
- revealSananvapaus.parseMsgElemToArr = function( elem ){
- var time = elem.querySelector("#timestamp").textContent.match(/(\d+):(\d+) (AM|PM)/);
- return [
- elem.querySelector("#img").src,
- 60*((time[3]=="PM"?12:0)+parseInt(time[1]))+parseInt(time[2]),
- elem.querySelector("#author-name").textContent,
- elem.querySelector("#message").textContent,
- (elem.querySelector("#deleted-state")||{}).textContent
- ];
- };
- revealSananvapaus.print = function( deldata ){
- console.log( Object.keys( deldata ).map(function(id){ return deldata[id][1]+" "+deldata[id][2]+": "+deldata[id][3]+" -> "+deldata[id][4]; }).join("\n"));
- console.log( "Sananvapaus koskettanut tässä chatissa "+Object.keys(deldata).length+" viestiä" );
- };
- revealSananvapaus.getKey = function(){
- return "yt-deldata-"+ location.href.match(/\?(?:.*?)v=([^&]+)/)[1];
- };
- revealSananvapaus.load = function( key ){
- try {
- return JSON.parse( localStorage.getItem( key ));
- } catch( err ) { console.error( err ); }
- };
- revealSananvapaus.save = function( key, deldata, order ){
- try {
- localStorage.setItem( key, JSON.stringify( deldata ));
- if( order ) localStorage.setItem( key+"-order", order.join(","));
- } catch( err ) { console.error( err ); }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement