From ac9f3079792a35a1522495cc0a84d4025f6d2889 Mon Sep 17 00:00:00 2001
From: Tef <39195498+TeflonOfJoy@users.noreply.github.com>
Date: Thu, 29 Feb 2024 17:20:29 +0100
Subject: [PATCH] Add Mangamonks (#1599)

* Add MangaMonks

* Fixed page in search

* Update res

* Fixed search exception

* Applied requested changes

* Applied requested changes

* Revert "Applied requested changes"

This reverts commit 237d3313f7ef98e1d695c80385a908367ae425d8.
---
 src/en/mangamonks/build.gradle                |   8 +
 .../res/mipmap-hdpi/ic_launcher.png           | Bin 0 -> 4232 bytes
 .../res/mipmap-mdpi/ic_launcher.png           | Bin 0 -> 2576 bytes
 .../res/mipmap-xhdpi/ic_launcher.png          | Bin 0 -> 5355 bytes
 .../res/mipmap-xxhdpi/ic_launcher.png         | Bin 0 -> 8656 bytes
 .../res/mipmap-xxxhdpi/ic_launcher.png        | Bin 0 -> 12119 bytes
 .../extension/en/mangamonks/MangaMonks.kt     | 267 ++++++++++++++++++
 .../en/mangamonks/MangaMonksHelper.kt         |  68 +++++
 8 files changed, 343 insertions(+)
 create mode 100644 src/en/mangamonks/build.gradle
 create mode 100644 src/en/mangamonks/res/mipmap-hdpi/ic_launcher.png
 create mode 100644 src/en/mangamonks/res/mipmap-mdpi/ic_launcher.png
 create mode 100644 src/en/mangamonks/res/mipmap-xhdpi/ic_launcher.png
 create mode 100644 src/en/mangamonks/res/mipmap-xxhdpi/ic_launcher.png
 create mode 100644 src/en/mangamonks/res/mipmap-xxxhdpi/ic_launcher.png
 create mode 100644 src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonks.kt
 create mode 100644 src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonksHelper.kt

diff --git a/src/en/mangamonks/build.gradle b/src/en/mangamonks/build.gradle
new file mode 100644
index 000000000..c74459586
--- /dev/null
+++ b/src/en/mangamonks/build.gradle
@@ -0,0 +1,8 @@
+ext {
+    extName = 'MangaMonks'
+    extClass = '.MangaMonks'
+    extVersionCode = 1
+    isNsfw = true
+}
+
+apply from: "$rootDir/common.gradle"
diff --git a/src/en/mangamonks/res/mipmap-hdpi/ic_launcher.png b/src/en/mangamonks/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..dd46b6ef41e9bc6d1221c3337b26cbfb26329f18
GIT binary patch
literal 4232
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

literal 0
HcmV?d00001

diff --git a/src/en/mangamonks/res/mipmap-mdpi/ic_launcher.png b/src/en/mangamonks/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..e87c374ad24f3a32f60f4bbac9b7e60e039887ad
GIT binary patch
literal 2576
zcmV+r3h(uaP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00001b5ch_0Itp)
z=>Px;%1J~)RA@t`S_x<rX%_w}eVI-=M|B6YiaK7221jNx;9}IQ7bpuVh&wonu&yE^
zo)L|15;aO9$+Gc4HV$4RxU3_xf@svm6$EF!&t%o;z^n(Xl8%WcD<mdW%X@WnUEN)Y
z1s%Go|Kok{``&y1|5pUWxdZ^R@i*H8^+(qYUC$J+q2qI!-r<U8Z9khP8P4@=4h`b~
z=#vxr(O7^0+01Z1MxibS0P+3c#zUX2q|XPSpiy+s-{?<@8Du{t<hq-qtH>nD8j{+O
zjuI*;C`gwisjj=bd!ZyrA!;nkGJmx1+5jvB8IWXIfo*AHyyxD=-?^(grX;i9jPr0?
zLFn-N{U;?!DrsqH>9qPn0bmC19X@>c!OqUkWsU|XFwh9jWVo9?Di|__oMClZC=@!<
z-rl|vK#w&!TJO_xb94XO)6<i#dpU^#`ee+809hu+U9h3D=fs-+Ol8LF@pN`|cmE2&
z|6+2YWMIDNK06YLv}(-AG=RYvn_)z|rA;CkeGW^KB!vOAvC>q#odAfDNF>S=sp$E;
z(OU-XTB$bQyJN!{lsc<ssw|^dmLibx&KS^+0K(xg14!t3%kR!!?>m4*$v|=fU`bqb
zD{25Vqik%jSM0_m(|xkvlSxmKqzK@G0Z|ln2DC}1Oqqi0>})hNG~m;xPf3F`nX%-l
zuL}z?ZrnJWIB^0!y*)`|sm}m3k9a&D+`D%VLxv1NV^b4qYirPOz5%_xy^eWbV^#O4
zCEFAf6rilE40Gnpf!FKB<jIq9`}S?61}MlK9pnf=ueq@jEM{kCn;4);9z1w}L4yYA
z1K+uG2bGnT_~~Cip|_`3&t-{ZFm&ipl$V#|+i!mdzdxY&DK0L?jT<)-u&T&amgU3}
z5&%I4bO4$$1mNMrhX{wm*tKgHmMvR`FTNPg$>7SBE7-kzH*Vd!WzJNFAkWRsMM+5s
ze!p}n(t<&Bc6Q*<p~E1<zxk#R#l^o#0zj|Oi2&$ah*?=#HU<cQD2gEZKYsj(B}<l|
zbn|9Ja&lNo6dS}yb91vUt57I}4I4IK<;s=F$jCrfR~JtF^#pcT@5bxbues0k>C<!o
zigN5r76Yqs0GL;CCIHl#7<lyPkq)4>RjG67>FHRtY88Jdz$v&-o;-;oM~-09q)Ax6
zem!z>a`^d~Gk-@_RW+VHd!_?a08D2lNJ7c7P*MqTZWJJ9WoAXSd`yNKB{a660Pk8`
zQB+ife>XLut-YP4wQk)y_H=4$swo~WUAn}~Pz<G{q=2#+#ZN~^2QFN=paZym{koet
ziZP%%-MX0LI*^%}X)0s{ps}%$85lcuECV7>5)=FO@5A9khuNUPg9oFubTbw%{0?{T
z-sO0?cI_G)K5N!2lvh;X>#x4TrcIl$fB$|JfFdCcK#T=PIk~F?85tQ002L)msPPfP
zVweH={eITEc9EX{Tvvx5jvYgH_a|g#W-uU%4N8$acI?2!i4!3RioYr<Do|Tnt202X
zB+f!gYLx*OSxA7G5mEps-k=!pp{c2f85lEW3<7}w10chH`OhzyR8)kN6c2uW{xhno
zt8o7OdE}4DN7*0CFnjiFHu}Yj7u=p=qoQJ)QcD^dFk{9Hmeq}$H!OwBq0$S8vlg-h
zaVV4?HSRW9LQRd#00Gb#xPSjXrcRy8I^MQz8wv{x8T5w_A2`50o)omSMA_R%j~>OE
z)vK|ivXU97si{#Jn1SNrDK-f?RdU1ypo@V;BZfjD0|QDB69W{i`T6<G0L1`RXYw9h
zr1San=VR;EtqiiQy$uKJ4`T1$y?ForJ+~<>E#-hNFE2xF?VlKc#(+Hr)M~6&an(e3
zF_4~43}}}Cuh(M+;18hrSu=<M4S*JW1dg6j+I{opjVZHi*|LS>!59MsVAABtxT&U5
z<BrV8f+`YsbwC54?FW25B?dGGC_s-NKaQI>Z=$ZQ&X)d+6C1x1fXW?}D6c4I30=H+
zkr|*sSL%RsAv5^W-F_e~EiI}nn3Vy2KEDniFE5YNr*Wwr&tUzzx@#i<J9qBn^^g@n
zJPE~=zy{d?*!BYg#I#^As_)sLNa*q7#|Vc-<mKfv6W@P-5P`q|)A(_3)JX;o90>Z5
zwBEjbi;*Kof|eW4pFhW|SFdpT^l2PBc8r%CRtGu9fb*VM3<iU?7*GI&F?#f9j2}N9
zXV0DmEwh!2)-QAdqHz|>VPptTBbeK0V3mH#mX&&6y7Ujsn>P<#UENMcLGFT>09cn2
zPo6wc7#N+0mS~jMICJODMNMrDf~i3)Uc4AruU?IL&SBpiGuph~Cr3>9^#ttOyAQ*L
z4dYB!Q&VdIpzFjPfYj7fLkuWs^vTmFTn9#t8pSa{7lGVZQiAI0YF@z6qRwh$EIt$?
zoX(mwXHA<n4VN!p=B2w<Q!KJ{2VlT}0a0UZqZoMl^r<ePmX;QMT*@Nn&Yk1Wf&~j)
z1-EIht?j-bBPWuBmoHx;8jWJah!OhM)c}G4Bt2Fk0NhDMK@*ZZCQO)sMT-{U%$YNa
z@@1L5zj5P695`@*H!blQP@^T59c*ln15TYf#VM6myG9!l*MV3|uEc>rz`Usk@Q0;K
zQD0w=_V#vERaJ3TnmKbO)~sFwkJkfAkwm?UOgS1hoYKXRDUOM;AV88OjQ{dWY~Q{e
zSy@?FzI-`L(&2I^AsYZ$=8Usv&mOE;u_BgjD8s0kM`OfzZ#5uRTbyiD_VV@hf5F<d
zYk4JWyj(D#(;)i&eiH-QKx7;R8c`jIkTYxt!@9KelxmQSv)Rg1(*2J=p2FpSUN#&Y
z+ImC);hnL8{bWvn==a3{Xh$8UhMFt2V-Pi1oT{_&h$YrdJ&I3+$oaQ8L2Ox0`+Pn}
z1~i#ixs@e4jn*J41<QCjWu3m;&OKbjfB@0wjRA;L(sik*QL7v^nwP$&l&X(oS-Y5l
zBz<>gkx-nagxBkfvN@K?9Kl#Bu9YR@Nn6a=gea^pT#Oi9Y$*ZJ>-D_=<TNLPS;r1W
z+vF9eO+TeW-RQ-}P(Wx)9K=A#<MA8>@SSzCcyh7^dLr5N4*)avHvsgCse{XiT4$_T
zh{g{9!Z1NVl^_Ve1%#mGoxMf>?0faN-4eYPYn_FYRQDeNGyo{0vjG5I#$goz=8@?x
zNUxdz&>Ko$-@KMY->wJaamXX|Qm=zvEdd}f1~1uzSR0;t(_){Dr+3Bb<<2-;E0u01
zCLQsZ2cR5HAm|e_UTtHNkhvUK<lxSBn?3QybTgdWHc3f!_Gr9r2G=AGi6pGLG2isR
m5=n9NtwCR9)3?#}*8c|uM%0kdl;K|h0000<MNUMnLSTY|XRcWQ

literal 0
HcmV?d00001

diff --git a/src/en/mangamonks/res/mipmap-xhdpi/ic_launcher.png b/src/en/mangamonks/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..7799da22d8170b0dda7be16f860a134b3f6af64d
GIT binary patch
literal 5355
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
D7+0{O

literal 0
HcmV?d00001

diff --git a/src/en/mangamonks/res/mipmap-xxhdpi/ic_launcher.png b/src/en/mangamonks/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..5755de1a82cc0df69682ab83d9471de9867c41fd
GIT binary patch
literal 8656
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

literal 0
HcmV?d00001

diff --git a/src/en/mangamonks/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/mangamonks/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..840a12ddb1822c197340895d928f4f9c31ce9d39
GIT binary patch
literal 12119
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
UxP+2e(c%+Of2gBereqoXKU3g;oB#j-

literal 0
HcmV?d00001

diff --git a/src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonks.kt b/src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonks.kt
new file mode 100644
index 000000000..0205dad04
--- /dev/null
+++ b/src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonks.kt
@@ -0,0 +1,267 @@
+package eu.kanade.tachiyomi.extension.en.mangamonks
+
+import eu.kanade.tachiyomi.extension.en.mangamonks.MangaMonksHelper.buildApiHeaders
+import eu.kanade.tachiyomi.extension.en.mangamonks.MangaMonksHelper.toDate
+import eu.kanade.tachiyomi.extension.en.mangamonks.MangaMonksHelper.toFormRequestBody
+import eu.kanade.tachiyomi.extension.en.mangamonks.MangaMonksHelper.toStatus
+import eu.kanade.tachiyomi.network.GET
+import eu.kanade.tachiyomi.network.POST
+import eu.kanade.tachiyomi.source.model.Filter
+import eu.kanade.tachiyomi.source.model.FilterList
+import eu.kanade.tachiyomi.source.model.MangasPage
+import eu.kanade.tachiyomi.source.model.Page
+import eu.kanade.tachiyomi.source.model.SChapter
+import eu.kanade.tachiyomi.source.model.SManga
+import eu.kanade.tachiyomi.source.online.ParsedHttpSource
+import eu.kanade.tachiyomi.util.asJsoup
+import kotlinx.serialization.MissingFieldException
+import kotlinx.serialization.Serializable
+import kotlinx.serialization.decodeFromString
+import kotlinx.serialization.json.Json
+import okhttp3.HttpUrl.Companion.toHttpUrl
+import okhttp3.Request
+import okhttp3.Response
+import org.jsoup.nodes.Document
+import org.jsoup.nodes.Element
+import uy.kohesive.injekt.injectLazy
+
+class MangaMonks : ParsedHttpSource() {
+
+    override val name = "MangaMonks"
+
+    override val baseUrl = "https://mangamonks.com"
+
+    override val lang = "en"
+
+    override val supportsLatest = true
+
+    // popular
+    override fun popularMangaRequest(page: Int): Request {
+        return GET("$baseUrl/popular-manga/$page", headers)
+    }
+    override fun popularMangaSelector() = ".main-slide"
+    override fun popularMangaNextPageSelector() = "li:nth-last-child(2) a.page-btn"
+    override fun popularMangaFromElement(element: Element): SManga {
+        return SManga.create().apply {
+            title = element.selectFirst(".detail a")!!.text()
+            setUrlWithoutDomain(element.selectFirst("a")!!.attr("href"))
+            thumbnail_url = element.select("img").attr("data-src")
+        }
+    }
+
+    // latest
+    override fun latestUpdatesRequest(page: Int): Request {
+        return GET("$baseUrl/latest-releases/$page", headers)
+    }
+
+    override fun latestUpdatesSelector() = ".tab-pane .row .col-12"
+    override fun latestUpdatesNextPageSelector() = popularMangaNextPageSelector()
+    override fun latestUpdatesFromElement(element: Element): SManga = popularMangaFromElement(element)
+
+    // search
+    override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
+        val filterList = filters.let { if (it.isEmpty()) getFilterList() else it }
+        return if (query.isNotEmpty()) {
+            val requestBody = query.toFormRequestBody()
+            val requestHeaders = headersBuilder().buildApiHeaders(requestBody)
+
+            POST("$baseUrl/search/live", requestHeaders, requestBody)
+        } else {
+            val url = "$baseUrl/genre/".toHttpUrl().newBuilder()
+            filterList.forEach { filter ->
+                when (filter) {
+                    is GenreFilter -> filter.toUriPart().let {
+                        url.apply {
+                            addPathSegment(it)
+                            addQueryParameter("include[]", filter.toGenreValue())
+                        }
+                    }
+                    is StatusFilter -> filter.toUriPart().let {
+                        url.apply {
+                            addQueryParameter("term", query)
+                            addQueryParameter("status[]", it)
+                        }
+                    }
+                    else -> {}
+                }
+            }
+
+            url.addPathSegment(page.toString())
+            GET(url.build(), headers)
+        }
+    }
+
+    override fun searchMangaSelector() = ".main-slide .item"
+    override fun searchMangaNextPageSelector() = popularMangaNextPageSelector()
+
+    private val json: Json by injectLazy()
+    override fun searchMangaParse(response: Response): MangasPage {
+        val isJson = response.header("Content-Type")?.contains("application/json") ?: false
+        if (isJson) {
+            return try {
+                val result = json.decodeFromString<MangaList>(response.body.string())
+                val mangaList = result.manga.map {
+                    SManga.create().apply {
+                        title = it.title
+                        setUrlWithoutDomain(it.url)
+                        thumbnail_url = it.image
+                    }
+                }
+                val hasNextPage = false
+                MangasPage(mangaList, hasNextPage)
+            } catch (_: MissingFieldException) {
+                MangasPage(emptyList(), false)
+            }
+        } else {
+            val document = response.asJsoup()
+
+            val mangas = document.select(searchMangaSelector()).map { element ->
+                searchMangaFromElement(element)
+            }
+
+            val hasNextPage = searchMangaNextPageSelector().let { selector ->
+                document.select(selector).first()
+            } != null
+
+            return MangasPage(mangas, hasNextPage)
+        }
+    }
+
+    override fun searchMangaFromElement(element: Element): SManga = popularMangaFromElement(element)
+
+    // details
+    override fun mangaDetailsParse(document: Document): SManga {
+        return SManga.create().apply {
+            author = document.selectFirst(".publisher a")!!.text()
+            status = document.selectFirst(".info-detail .source")!!.text().toStatus()
+            genre = document.select(".info-detail .tags a").joinToString { it.text() }
+            description = document.select(".info-desc p").text()
+            thumbnail_url = document.select(".img-holder img").attr("data-src")
+        }
+    }
+
+    // chapters
+    override fun chapterListSelector() = ".chapter-list li"
+    override fun chapterFromElement(element: Element): SChapter {
+        return SChapter.create().apply {
+            setUrlWithoutDomain(element.select("a").attr("href"))
+            name = element.select(".chapter-number").text()
+            date_upload = element.select(".time").text().trim().toDate()
+        }
+    }
+    override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException()
+
+    // pages
+    override fun pageListParse(document: Document): List<Page> {
+        return document.select("#zoomContainer .image img").mapIndexed { i, it ->
+            val src = it.attr("src")
+            val imageUrl = if (src.startsWith("https")) src else baseUrl + src
+            Page(i, imageUrl = imageUrl)
+        }
+    }
+
+    // filters
+    override fun getFilterList() = FilterList(
+        Filter.Header("NOTE: Ignored if using text search!"),
+        Filter.Separator(),
+        StatusFilter(),
+        GenreFilter(),
+    )
+    private class StatusFilter : UriPartFilter(
+        "Status",
+        arrayOf(
+            Pair("Ongoing", "ongoing"),
+            Pair("Completed", "completed"),
+        ),
+    )
+    private class GenreFilter : GenreValueFilter(
+        "Genre",
+        arrayOf(
+            Triple("Action", "2", "action"),
+            Triple("Adventure", "3", "adventure"),
+            Triple("Comedy", "5", "comedy"),
+            Triple("Cooking", "6", "cooking"),
+            Triple("Doujinshi", "7", "doujinshi"),
+            Triple("Drama", "8", "drama"),
+            Triple("Ecchi", "9", "ecchi"),
+            Triple("Yaoi", "11", "yaoi"),
+            Triple("Fantasy", "12", "fantasy"),
+            Triple("Gender Bender", "13", "gender-bender"),
+            Triple("Harem", "14", "harem"),
+            Triple("Historical", "15", "historical"),
+            Triple("Horror", "16", "horror"),
+            Triple("Josei", "17", "josei"),
+            Triple("Manhua", "18", "manhua"),
+            Triple("Manhwa", "19", "manhwa"),
+            Triple("Mecha", "21", "mecha"),
+            Triple("Mystery", "24", "mystery"),
+            Triple("One Shot", "25", "one-shot"),
+            Triple("Psychological", "26", "psychological"),
+            Triple("Romance", "27", "romance"),
+            Triple("School Life", "28", "school-life"),
+            Triple("Sci-fi", "29", "sci-fi"),
+            Triple("Seinen", "30", "seinen"),
+            Triple("Yuri", "31", "yuri"),
+            Triple("Shoujo", "32", "shoujo"),
+            Triple("Shounen", "34", "shounen"),
+            Triple("Shounen Ai", "35", "shounen-ai"),
+            Triple("Slice of Life", "36", "slice-of-life"),
+            Triple("Sports", "37", "sports"),
+            Triple("Supernatural", "38", "supernatural"),
+            Triple("Tragedy", "39", "tragedy"),
+            Triple("Webtoons", "40", "webtoons"),
+            Triple("Full Color", "42", "full-color"),
+            Triple("Isekai", "44", "isekai"),
+            Triple("Reincarnation", "45", "reincarnation"),
+            Triple("Time Travel", "46", "time-travel"),
+            Triple("Martial arts", "48", "martial-arts"),
+            Triple("Monsters", "49", "monsters-monsters"),
+            Triple("Thriller", "51", "thriller"),
+            Triple("Adaptation", "52", "adaptation"),
+            Triple("Reverse Harem", "53", "reverse-harem"),
+            Triple("Cross-dressing", "54", "cross-dressing"),
+            Triple("Zombies", "55", "zombies"),
+            Triple("Crime", "56", "crime"),
+            Triple("Ghosts", "57", "ghosts"),
+            Triple("Magic", "58", "magic"),
+            Triple("Gore", "59", "gore"),
+            Triple("+18", "84", "18"),
+            Triple("LGBT", "47", "lgbt"),
+            Triple("erotic", "62", "erotic"),
+            Triple("Harem", "63", "harem-harem"),
+            Triple("MILF", "64", "milf"),
+            Triple("Yaoi/boy's love", "65", "yaoiboys-love"),
+            Triple("Yuri/girl's love", "66", "yurigirls-love"),
+            Triple("BBW", "67", "bbw"),
+            Triple("Shota", "68", "shota"),
+            Triple("NTR/cheating", "69", "ntrcheating"),
+            Triple("BDSM", "70", "bdsm"),
+            Triple("tentacle", "71", "tentacle"),
+            Triple("Oyasumi/sleeping", "72", "oyasumisleeping"),
+            Triple("Elf Hentai", "74", "elf-hentai"),
+            Triple("Rape", "75", "rape"),
+            Triple("Incest", "76", "incest"),
+            Triple("Inseki", "77", "inseki"),
+            Triple("LGBTQ", "78", "lgbtq"),
+            Triple("Beastiality", "79", "bestiality"),
+            Triple("Defloration", "80", "defloration"),
+            Triple("loli", "81", "loli"),
+            Triple("Raw", "83", "raw"),
+        ),
+    )
+    private open class UriPartFilter(displayName: String, private val vals: Array<Pair<String, String>>) :
+        Filter.Select<String>(displayName, vals.map { it.first }.toTypedArray()) {
+        fun toUriPart() = vals[state].second
+    }
+    private open class GenreValueFilter(displayName: String, private val vals: Array<Triple<String, String, String>>) :
+        Filter.Select<String>(displayName, vals.map { it.first }.toTypedArray()) {
+        fun toUriPart() = vals[state].third
+        fun toGenreValue() = vals[state].second
+    }
+
+    @Serializable
+    class MangaList(val manga: List<MangaItem>)
+
+    @Serializable
+    class MangaItem(val title: String, val url: String, val image: String)
+}
diff --git a/src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonksHelper.kt b/src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonksHelper.kt
new file mode 100644
index 000000000..d81a237f0
--- /dev/null
+++ b/src/en/mangamonks/src/eu/kanade/tachiyomi/extension/en/mangamonks/MangaMonksHelper.kt
@@ -0,0 +1,68 @@
+package eu.kanade.tachiyomi.extension.en.mangamonks
+
+import eu.kanade.tachiyomi.source.model.SManga
+import okhttp3.FormBody
+import okhttp3.Headers
+import okhttp3.RequestBody
+import java.util.Calendar
+
+object MangaMonksHelper {
+    fun Headers.Builder.buildApiHeaders(requestBody: RequestBody) = this
+        .add("Content-Length", requestBody.contentLength().toString())
+        .add("Content-Type", requestBody.contentType().toString())
+        .add("Accept", "application/json")
+        .add("X-Requested-With", "XMLHttpRequest")
+        .build()
+    inline fun <reified T : Any> T.toFormRequestBody(): RequestBody {
+        return FormBody.Builder()
+            .add("dataType", "json")
+            .add("phrase", this.toString())
+            .build()
+    }
+    fun String?.toStatus(): Int {
+        return when {
+            this == null -> SManga.UNKNOWN
+            this.contains("Ongoing", true) -> SManga.ONGOING
+            this.contains("Completed", true) -> SManga.COMPLETED
+            else -> SManga.UNKNOWN
+        }
+    }
+    fun String?.toDate(): Long {
+        val trimmedDate = this!!.substringBefore(" ago").removeSuffix("s").split(" ")
+        val calendar = Calendar.getInstance()
+
+        when {
+            trimmedDate[1].contains(
+                "Year",
+                ignoreCase = true,
+            ) -> calendar.apply { add(Calendar.YEAR, -trimmedDate[0].toInt()) }
+
+            trimmedDate[1].contains(
+                "Month",
+                ignoreCase = true,
+            ) -> calendar.apply { add(Calendar.MONTH, -trimmedDate[0].toInt()) }
+
+            trimmedDate[1].contains(
+                "Week",
+                ignoreCase = true,
+            ) -> calendar.apply { add(Calendar.WEEK_OF_MONTH, -trimmedDate[0].toInt()) }
+
+            trimmedDate[1].contains(
+                "Day",
+                ignoreCase = true,
+            ) -> calendar.apply { add(Calendar.DAY_OF_MONTH, -trimmedDate[0].toInt()) }
+
+            trimmedDate[1].contains(
+                "Hour",
+                ignoreCase = true,
+            ) -> calendar.apply { add(Calendar.HOUR_OF_DAY, -trimmedDate[0].toInt()) }
+
+            trimmedDate[1].contains(
+                "Minute",
+                ignoreCase = true,
+            ) -> calendar.apply { add(Calendar.MINUTE, -trimmedDate[0].toInt()) }
+        }
+
+        return calendar.timeInMillis
+    }
+}