NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name DC-DMOFilter // @author Solon // @match http://www.dreadcast.net/Forum/DMOFilter // @require http://cdn.datatables.net/1.10.12/js/jquery.dataTables.js // @resource dataTables_css http://cdn.datatables.net/1.10.12/css/jquery.dataTables.css // @grant GM_addStyle // @grant GM_getResourceText // @description Moyen de recherche des liens postés sur Dans mes oreilles de DreadCast.net (liens Youtube) // @version 1.2.9 // ==/UserScript== (function() { 'use strict'; var json_id = "57adc4f6e4b0dc55a4ec70c6"; var DMO_url = "http://www.dreadcast.net/Forum/2-11063-dans-mes-oreilles"; var DMOFilter_url = "http://www.dreadcast.net/Forum/DMOFilter"; var dataTables_css = GM_getResourceText("dataTables_css"); GM_addStyle (dataTables_css); var language_setup = { "decimal": "", "emptyTable": "Pas de données disponibles", "info": "Lignes _START_ à _END_ sur _TOTAL_ résultats", "infoEmpty": "Lignes 0 à 0 sur 0 résultats", "infoFiltered": "(avec filtre sur _MAX_ lignes)", "infoPostFix": "", "thousands": " ", "lengthMenu": "Afficher _MENU_ lignes", "loadingRecords": "Chargement...", "processing": "Traitement...", "search": "Recherche :", "zeroRecords": "Pas de résultats", "paginate": { "first": "Premier", "last": "Dernier", "next": "Suivant", "previous": "Précédent" }, }; var $thumbnail_div = $('<div />').appendTo($('body')); $thumbnail_div.css({ position: 'absolute', top: '0', left: '0', "z-index":'9999999999', }); var $thumbnail_img = $('<img src=""/>').appendTo($thumbnail_div); $thumbnail_img.css({ width : '240px', height : '180px', }); $thumbnail_div.hide(); var $vcontainer = $('<div />'); $vcontainer.css({ position: 'relative', "text-align":'center', margin: '20px auto' }); $vcontainer.hide(); forum.DMOFilter_showThumbnail = function(data){ $thumbnail_img.attr('src',data); $thumbnail_div.show(); }; forum.DMOFilter_hideThumbnail = function(){ $thumbnail_img.attr('src',''); $thumbnail_div.hide(); }; forum.DMOFilter_setYoutubeVideo = function(url){ $.getJSON("https://noembed.com/embed?callback=?", {"format": "json", "url": url}, function (data) { $vcontainer.html(data.html); $vcontainer.find('iframe').attr('src', $vcontainer.find('iframe').attr('src')+'&autoplay=1' ); $('.noembed-meta-info').remove(); $vcontainer.show(); }); }; $(document).ready(function() { console.log('[DC-DMOFilter] Démarrage de DMO Filter'); document.title = 'DMOFilter'; $('#header_accueil').find('h1').text('DMO Filter'); $('.forum_description').text('Filtrage de Mes oreilles'); $(document).mousemove(function (e) { $thumbnail_div.offset({ top: e.pageY + 20, left: e.pageX + 20}); }); $('#liste_forums').remove(); var $container = $('<div />').insertAfter('#header_accueil'); $container.css({ margin:'20px 0' }); $vcontainer.appendTo($container); var $table = $('<table id="DMO_table" />').appendTo($container); $table.addClass("display compact"); var datatable = $table.DataTable({ "ajax": "https://jsonblob.com/api/jsonBlob/"+json_id, "aaSortingFixed": [[1,'desc']], "lengthMenu": [ [10, 20, 30, 40, 50], [10, 20, 30, 40, 50] ], "pageLength": 10, "deferRender": true, "bDeferRender": true, "sScrollX": "100%", "bPaginate":true, "bRetrieve":true, "bScrollCollapse": true, "columns": [ { data: 'author_name', title:'Auteur', }, { data: 'post_num', title:'#', render: function ( data, type, row ) { var page_num = Math.floor(parseInt(data,10)/20)+1; return '<a title="Aller à #'+data+'..." target="_blank" href="'+DMO_url+'#'+data+'">'+data+'</a>'; } }, { data: 'title', title: 'Contribution', render: function ( data, type, row ) { var output = ''; var addendum = ''; if (data==="Inconnu"){ data = '<b>Pas d\'information</b>'; addendum = 'onmouseover="forum.DMOFilter_hideThumbnail()"'; output = '<a target="_blank" '+addendum+' href="'+row.url+'">'+data+'</a>'; }else{ addendum = 'onmouseleave="forum.DMOFilter_hideThumbnail()" onmouseover="forum.DMOFilter_showThumbnail(\''+row.thumbnail_url+'\')"'; output = '<span class="link" '+addendum+' onclick="forum.DMOFilter_setYoutubeVideo(\''+row.url+'\')">'+data+'</span>'; } return output; } }, { data: 'timestamp', title: 'Date', render: function ( data, type, row ) { var ts = parseInt(data,10); var d = new Date(ts); return '<span title="'+d.toLocaleString("fr-FR")+'">'+d.toLocaleDateString("fr-FR")+'</span>'; } } ], "language": language_setup, "autoWidth": false, "columnDefs": [ { "width": "80%", targets:2 }, { targets: "_all", orderable: false } ], fixedColumns: true }); }); })();