Friday, February 4, 2011

Series Yonkis JNMHack


// ==UserScript==
// @name              Series Yonkis JNMHack
// @namespace         http://userscripts.org/users/JoniJnm
// @copyright         JoniJnm.es
// @ayuda             http://www.jonijnm.es/web/foro/751-javascript/17741-greasemonkey-seriesyonkis-enlaces-a-megaupload-y-megavideo-directos.html
// @description       Los enlaces de los capítulos de seriesyonkis.com hacia megaupload y megavideo serán directos
// @include           http://www.seriesyonkis.com/capitulo/*
// @include           http://www.seriesyonkis.com/serie/*
// @version           0.6.1
// @agradecimientos   muertet (yelidmod.com)
// ==/UserScript==

/*if (unsafeWindow.console){
 var GM_log = unsafeWindow.console.log;
}*/
var $;
var joniK;
var joniCaps;
var total = 0;
var cargados = 0;

function GM_wait() {
 if (typeof unsafeWindow.jQuery == 'undefined') {
  window.setTimeout(GM_wait, 100);
 }
 else {
  $ = unsafeWindow.jQuery.noConflict(true);
  if (window.location.toString().indexOf("/capitulo/") != -1)
   onCapitulo();
  else
   onSerie();
 }
}
function loadJS(url) {
 var GM_Head = document.getElementsByTagName('head')[0] || document.documentElement, 
  GM_JQ = document.createElement('script');
 GM_JQ.src = url;
 GM_JQ.type = 'text/javascript';
 GM_JQ.async = true;
 GM_Head.insertBefore(GM_JQ, GM_Head.firstChild);
}
if (typeof unsafeWindow.jQuery == 'undefined')
 loadJS('http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js');
GM_wait();
function onSerie() {
 var divHTML = '<div id="jonDiv" style="background-color:black;color:white;top:60px;z-index:999;left:10px;border:3px solid blue;display:none;position:fixed;width:90%;height:420px;padding:15px"><div><h4><a href="javascript:;" onclick="document.getElementById(\'jonDiv\').style.display=\'none\'" style="color:red">Cerrar</a></h4></div><div>Se obtendrá el primer enlace de cada capítulo para la temporada seleccionada</div><div><input type="button" checked="checked" value="Obtener capítulos" id="joniBoton"> <img src="http://zelndg.bay.livefilestore.com/y1pQepKS465eEQ3N3dklj9XmGCyjC3aEdnjM6iXEU4DM5HAE6TdSaHJkjUiQ9FiAR0EKDhxFyYkU75LRsBLlikJaF9tcxWHjQsJ/loading.gif" style="vertical-align:middle;display:none" id="joniImg"/> <span id="joniWarning" style="color:red;font-weight:bold"></span></div><div id="joniResultado" style="display:none;border: 3px solid red;overflow:auto;height:320px;padding:10px;margin-top:5px"><div id="joniResultadoLeft" style="float:left;margin-right:5px"></div><div id="joniResultadoRight"></div></div></div>';
 $("body").after(divHTML);
 var k = 0;
 var c = 0;
 var l = 0;
 joniCaps = [];
 $("#tempycaps ul li._page_item h4").each(function(){
  l = $(this).parent().next().find('li').length;
  joniCaps[k] = new Array(c+1, c+l);
  c += l;
  $(this).parent().after('<li class="page_item"><h4><a class="joniTitle" alt="'+k+'" href="javascript:;">Ver links para gestor de descargas</a></h4></li>');
  k++;
 });
 $('.joniTitle').click(function() {
  $('#joniImg').hide();
  $('#joniResultadoLeft').html('');
  $('#joniResultadoRight').html('');
  $('#joniWarning').html('');
  $('#joniResultado').hide();
  $('#jonDiv').fadeIn();
  joniK = $(this).attr('alt');
 });
 $('#joniBoton').click(function() {
  $('#joniResultadoLeft').html('');
  $('#joniResultadoRight').html('');
  $('#joniWarning').html('');
  $('#joniImg').fadeIn();
  $('#joniResultado').show();
  var desde = joniCaps[joniK][0];
  var hasta = joniCaps[joniK][1];
  total = hasta - desde + 1;
  cargados = 0;
  cargados_ok = 0;
  var k = 1;
  var text;
  var t = $('#contentcontainer h4')[0].innerHTML;
  $('#tempycaps a').each(function(){
   var href = $(this).attr("href");
   if (href.indexOf('/capitulo/') != -1) {
    if (k >= desde && k <= hasta) {
     text = $(this).html();
     $.ajax({
      title: text,
      url: href,
      error: function() {
       cargados++;
      },
      success: function(data) {
       cargados++;
       var cogido = false;
       var ini = data.indexOf("id='dd'");
       var fin = data.indexOf('id="comments"');
       data = data.substr(ini, fin-ini);
       var v = data.match(/<a[^>]+>/g);
       var s = -1;
       for (var i=0; i<v.length&&!cogido;i++) {
        href = v[i].match(/href="([^"]+)/);
        href = href[1].toString();
        s = href.indexOf("/?id=");
        if (s != -1) {
         id = href.substr(s + 5);
         id = ccM(_utf8_decode(unescape(id)));
         cogido = true;
         cargados_ok++;
        }
       }
       if (s != -1) {
        var aux = this.title.substr(t.length+1);
        if (aux.substr(0,3) == ' - ') aux = aux.substr(2);
        var link = 'http://www.megaupload.com/?s=seriesyonkis&d='+id+'&confirmed=1';
        $('#joniResultadoLeft').append(aux+'<br />');
        $('#joniResultadoRight').append('<a href="'+link+'" alt="'+aux+'">'+link+'</a><br />');
       }
       if (cargados == total) {
        $('#joniImg').hide();
        if (cargados != cargados_ok)
         $('#joniWarning').html('Algunos capítulos no tienen enlace a megaupload');
        else
         $('#joniWarning').html('Capítulos cargados');
       }
      }
     });
    }
    k++;
   }
  });
 });
}
function onCapitulo() {
 $('#contentcontainer a').each(function(){
  var id;
  var href = $(this).attr("href");
  var s = href.indexOf("/?id=");
  if (s != -1) {
   id = href.substr(s + 5);
   id = ccM(_utf8_decode(unescape(id)));
   $(this).attr("href", 'http://www.megaupload.com/?s=seriesyonkis&d='+id+'&confirmed=1');
  }
  s = href.indexOf("&id=");
  if (s != -1) {
   id = href.substr(s + 4);
   id = cc2(_utf8_decode(unescape(id)));
   $(this).attr('href', 'http://www.megavideo.com/?s=seriesyonkis&v='+id+'&confirmed=1');
   $(this).attr('target', '_blank');
  }
 });
}

function _utf8_decode(e){var d="";var f=0;var g=c1=c2=0;while(f<e.length){g=e.charCodeAt(f);if(g>-128){d+=String.fromCharCode(g);f++}else{if((g>191)&&(g<224)){c2=e.charCodeAt(f+1);d+=String.fromCharCode(((g&31)<<6)|(c2&63));f+=2}else{c2=e.charCodeAt(f+1);c3=e.charCodeAt(f+2);d+=String.fromCharCode(((g&15)<<12)|((c2&63)<<6)|(c3&63));f+=3}}}return d}function ccM(k,q){var p=k;var o=900+101+43-27-1000;var n="";var m=0;var l=0;var j=0;o+=23+100+114;for(i=0;i<p.length;i++){m=o^p.charCodeAt(i);if(o>1){n+=String.fromCharCode(m*1)}else{n+=String.fromCharCode(2*m)}}return n}function cc2(j){var o=j;var n=800+201+43-27-1000;var m="";var l=0;var k=0;var h=0;if(false){n=123}else{n++}n+=43+80;for(i=0;i<o.length;i++){l=n^o.charCodeAt(i);if(o.length==12||i==o.length*31||i==o.length*1-1||i==o.length*9+3){k=l;l+=4;k--;l-=9;if(true){l--}else{continue}l--}else{if(i>0&&n>1){h=i*2;while(h>25){h-=5}l=1-h+l-2;if(true){l--}}else{if(o.length==-3){continue}}}if(n>1){m+=String.fromCharCode(l*1)}else{m+=String.fromCharCode(2*l)}if(true){n+=i+1}else{continue}}return m};

0 comments:

Post a Comment