Your comments

Made some changes on the repo. Happy to consider better approaches

Fantastic. I'll look at the repo later.

I'm not familiar with how settings are saved/loaded/applied. Any pointers?

Cheers

Cool. I'll have a look after, but my proposed codes aren't quite suitable for normal implementation

A quick way to open comic directly/immediately, rather than click on comic to show pop-up to choose download or read without much modification of code:

In themeScript.js, search for code:

json_url = window.location.origin+"/user-api/bookmark?docId="+comicid[2];

console.log("url: "+json_url);

then, add immediately after:

var html_url = window.location.origin + "/comicdetails/" + comicid[2];

$.get(html_url, function( data_comicdetails ) {

var total_pages = $(data_comicdetails).find("#details_size").text().split("page")[0] * 1;

$("img[src*='"+comicid[2]+"']").parent().prop("href","/comicreader/reader.html#?docId=" + comicid[2] + "&startIndex=0&type=comic&nbPages=" + total_pages + "&storeBookmarksInCookies=false");

$("img[src*='"+comicid[2]+"']").parent().prop("onclick","");

});

The ideal solution would be to have option to turn this on or off.

A quick way to hide "read" books from a folder without much modification of code. 


In themeScript.js, search for code:

$("img[src*='"+c_id+"']").closest('.thumb').find('.numberblock').addClass("reading");


then, add immediately after:

//if book is read, display none
if (mark == nb_of_pages){
//Hide by adding new css style to item selected by title
$("div[title='" + decodeURI(book_name) + "']").css("display","none");
console.log("Hid " + decodeURI(book_name));;
}


This is definitely not the best way to do it as you will end up having empty pages. The ideal way would be to exclude book results for books that are read. I haven't/am not going into the code that deeply yet.

This is fantastic. Could I request/suggest some additional features if possible:

  1. option to mark comic as read without opening and scrolling to the end
  2. settings option to hide (or shift to the 'back' of the list, or last page) comics that are 'read'
  3. settings option to click to open comic directly/immediately, rather than click to choose download or read
  4. settings option for selecting top, bottom, or both positions for list browse navigation menu (rather than bottom only)
    1. Not trying to break anything, but a 'dirty' mod to add page navigation at the top: is to add pagination code after class 'navigation', e.g: amend following text in themeScript.js:

(n="hidden"),o()("#group").after(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return'\n 3&&void 0!==arguments[3]?arguments[3]:"")+">\n "+t+" "+e+" "+n+"\n \n "}(r,e,t,n))

to:

(n="hidden"),o()("#group").after(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return'\n 3&&void 0!==arguments[3]?arguments[3]:"")+">\n "+t+" "+e+" "+n+"\n \n "}(r,e,t,n)) ||(n="hidden"),o()(".navigation").after(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return'\n 3&&void 0!==arguments[3]?arguments[3]:"")+">\n "+t+" "+e+" "+n+"\n \n "}(r,e,t,n))

I haven't looked at the code yet, but I would be happy to assist and contribute to the development.

/edited.