mirror of
https://github.com/gedoor/legado.git
synced 2025-08-10 00:52:30 +00:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -17,7 +17,7 @@ interface RssSourceDao {
|
||||
@Query("select * from rssSources where sourceUrl in (:sourceUrls)")
|
||||
fun getRssSources(vararg sourceUrls: String): List<RssSource>
|
||||
|
||||
@get:Query("SELECT * FROM rssSources")
|
||||
@get:Query("SELECT * FROM rssSources order by customOrder")
|
||||
val all: List<RssSource>
|
||||
|
||||
@get:Query("select count(sourceUrl) from rssSources")
|
||||
@@ -135,4 +135,4 @@ interface RssSourceDao {
|
||||
dealGroups(list)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,6 +108,7 @@ data class RssSource(
|
||||
&& equal(ruleContent, source.ruleContent)
|
||||
&& enableJs == source.enableJs
|
||||
&& loadWithBaseUrl == source.loadWithBaseUrl
|
||||
&& equal(variableComment, source.variableComment)
|
||||
}
|
||||
|
||||
private fun equal(a: String?, b: String?): Boolean {
|
||||
@@ -182,7 +183,8 @@ data class RssSource(
|
||||
enabledCookieJar = doc.readBool("$.enabledCookieJar") ?: false,
|
||||
customOrder = doc.readInt("$.customOrder") ?: 0,
|
||||
lastUpdateTime = doc.readLong("$.lastUpdateTime") ?: 0L,
|
||||
coverDecodeJs = doc.readString("$.coverDecodeJs")
|
||||
coverDecodeJs = doc.readString("$.coverDecodeJs"),
|
||||
variableComment = doc.readString("$.variableComment")
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -206,4 +208,4 @@ data class RssSource(
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,6 +108,7 @@ class AnalyzeUrl(
|
||||
var start = 0
|
||||
var tmp: String
|
||||
val jsMatcher = JS_PATTERN.matcher(ruleUrl)
|
||||
var hasRule = true
|
||||
while (jsMatcher.find()) {
|
||||
if (jsMatcher.start() > start) {
|
||||
tmp =
|
||||
@@ -118,8 +119,11 @@ class AnalyzeUrl(
|
||||
}
|
||||
ruleUrl = evalJS(jsMatcher.group(2) ?: jsMatcher.group(1), ruleUrl) as String
|
||||
start = jsMatcher.end()
|
||||
if (jsMatcher.group(0)!!.startsWith("@js:", true)) {
|
||||
hasRule = false
|
||||
}
|
||||
}
|
||||
if (ruleUrl.length > start) {
|
||||
if (ruleUrl.length > start && hasRule) {
|
||||
tmp = ruleUrl.substring(start).trim { it <= ' ' }
|
||||
if (tmp.isNotEmpty()) {
|
||||
ruleUrl = tmp.replace("@result", ruleUrl)
|
||||
|
||||
Reference in New Issue
Block a user