Skip to content

Commit 5fc7bab

Browse files
committed
kunai.js: プロジェクトURLをデータベースに指定 (Google検索対象サイトに使用)
1 parent b66c4d7 commit 5fc7bab

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

js/kunai.js

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,18 @@ class Kunai {
132132
return "/"
133133
})()
134134

135+
// Determine the project website URL, which is assumed to be stored in
136+
// <meta name="twietter:url" content="..." /> or in <meta property="og:url"
137+
// content="..." />.
138+
const project_base_url = (() => {
139+
const meta = document.querySelector('meta[name="twitter:url"]') || document.querySelector('meta[property="og:url"]')
140+
if (meta && meta.content) {
141+
const m = meta.content.toString().match(/^https?:\/\/[^/]*\//)
142+
if (m) return m[0]
143+
}
144+
return null
145+
})()
146+
135147
const database_url = (() => {
136148
// Determine the location of the database file "crsearch.json".
137149
const current_script = document.currentScript || document.querySelector('script[src*="kunai/js/kunai.js"]')
@@ -149,14 +161,9 @@ class Kunai {
149161
const url = url_kunai.replace(/\bkunai\/js\/kunai\.js([?#].*)?$/, "crsearch/crsearch.js")
150162
if (url != url_kunai) return url
151163

152-
// Try to download "crsearch.json" from the project website, which is
153-
// assumed to be stored in <meta name="twietter:url" content="..." />
154-
// or in <meta property="og:url" content="..." />.
155-
const meta = document.querySelector('meta[name="twitter:url"]') || document.querySelector('meta[property="og:url"]')
156-
if (meta && meta.content) {
157-
const m = meta.content.toString().match(/^https?:\/\/[^/]*\//)
158-
if (m) return m[0] + "static/crsearch/crsearch.json"
159-
}
164+
// Try to download "crsearch.json" from the project website.
165+
if (project_base_url)
166+
return project_base_url + "static/crsearch/crsearch.json"
160167
}
161168

162169
// Try to determine the position of crsearch.json
@@ -173,7 +180,8 @@ class Kunai {
173180

174181
let crs = new CRSearch({
175182
onDatabase: this.onDatabase.bind(this),
176-
base_url: dynamic_base_url
183+
base_url: dynamic_base_url,
184+
project_url: project_base_url
177185
})
178186
crs.database(database_url)
179187

0 commit comments

Comments
 (0)