Old: v1.4.15 - 2015-01-18 - added mangawall and manag.animeA
New: v1.4.16 - 2015-01-21 - added kissmanga and spectrum scans
- @@ -1,7 +1,7 @@
- // ==UserScript==
- // @name Manga Loader
- // @namespace http://www.fuzetsu.com/MangaLoader
-// @version 1.4.15
- +// @version 1.4.16
- // @description Loads manga chapter into one page in a long strip format, supports switching chapters and works for a variety of sites, minimal script with no dependencies, easy to implement new sites
- // @copyright 2014+, fuzetsu
- // @noframes
- @@ -36,6 +36,8 @@
- // @match http://www.onemanga.me/*/*
- // @match http://mangawall.com/manga/*/*
- // @match http://manga.animea.net/*
- +// @match http://kissmanga.com/Manga/*/*
- +// @match http://view.thespectrum.net/series/*
- // ==/UserScript==
- // don't bother running if in a frame
- if (window.top !== window.self) return;
- @@ -337,7 +339,7 @@
- img: '#image > img',
- next: '#image > img',
- numpages: function() {
- return unsafeWindow.pages.length;
- + return W.pages.length;
- },
- curpage: function() {
- return parseInt(getEl('#image > div.pages-list > a.page.active').textContent);
- @@ -345,7 +347,7 @@
- nextchap: '#next_link',
- prevchap: '#prev_link',
- pages: function(url, num, cb, ex) {
- url = unsafeWindow.pages[num - 1].image;
- + url = W.pages[num - 1].image;
- cb(url, url);
- }
- }, { // OneManga
- @@ -394,6 +396,40 @@
- prevchap: function() {
- return this.nextchap(true);
- }
- +}, { // Kissmanga
- + match: "^http://kissmanga\\.com/Manga/[^/]*/.+",
- + img: '#imgCurrent',
- + next: '#imgCurrent',
- + numpages: function() {
- + return W.lstImages.length;
- + },
- + curpage: function() {
- + return W.currImage + 1;
- + },
- + nextchap: '#selectChapter',
- + prevchap: '#selectChapter',
- + pages: function(url, num, cb, ex) {
- + cb(W.lstImages[num - 1], num);
- + }
- +}, { // the spectrum scans
- + match: "^http://view\\.thespectrum\\.net/series/[^\\.]+\\.html\\?ch=[^&]*&page=[0-9]+",
- + img: '#mainimage',
- + next: '#mainimage',
- + numpages: '.selectpage',
- + curpage: '.selectpage',
- + nextchap: function(prev) {
- + var next = extractInfo('.selectchapter', {type: 'value', val: prev ? -1 : 1});
- + if(next) {
- + return window.location.href.replace(/ch=.+/, 'ch=' + next + '&page=1');
- + }
- + },
- + prevchap: function() {
- + return this.nextchap(true);
- + },
- + pages: function(url, num, cb, ex) {
- + url = url.replace(/[^\.\/]+\.([a-z]+)$/, ('00' + num).slice(-3) + '.$1');
- + cb(url, url);
- + }
- }];
-
- var log = function(msg, type) {
- @@ -705,7 +741,7 @@
- count += 1;
- lastUrl = url;
- if (imp.pages) {
- imp.pages(url, curPage, addAndLoad, ex);
- + imp.pages(url, curPage, addAndLoad, ex, getPageInfo);
- } else {
- xhr.open('get', url);
- xhr.onload = getPageInfo;
- @@ -719,7 +755,7 @@
- pagesLoaded = curPage - 1,
- loadInterval = 10,
- lastUrl, UI, resumeUrl;
- +
- if (!imgUrl || !nextUrl) {
- log('failed to retrieve ' + (!imgUrl ? 'image url' : 'next page url'), 'exit');
- }