Skip to content

Commit 6f1b714

Browse files
committed
CRSearch: オンラインURL初期化オプションに対応 (Google検索対象サイトとして使用)
1 parent c8a7a35 commit 6f1b714

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

js/crsearch/crsearch.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ export default class CRSearch {
2626
google_url: new URL('https://www.google.co.jp/search'),
2727
force_new_window: false,
2828
base_url: null,
29+
online_base_url: null,
2930
}
3031

3132
static _KLASS = 'crsearch'
@@ -127,6 +128,8 @@ export default class CRSearch {
127128
this._log.info('parsing...', json)
128129
if (this._opts.base_url)
129130
json.base_url = this._opts.base_url
131+
if (this._opts.online_base_url)
132+
json.online_base_url = this._opts.online_base_url
130133

131134
const db = new Database(this._log, json)
132135
this._db.set(db.name, db)
@@ -238,9 +241,10 @@ export default class CRSearch {
238241

239242
for (const [name, db] of this._db) {
240243
// always include fallback
244+
const fallback_site = db.online_base_url ? db.online_base_url.host : db.base_url.host
241245
const e = this._make_result(null, q.original_text, {
242246
name: db.name,
243-
url: db.base_url.host,
247+
url: fallback_site,
244248
})
245249
e.attr('data-result-id', result_id++)
246250
result_list.append(e)
@@ -275,7 +279,8 @@ export default class CRSearch {
275279

276280
_make_google_url(q, site) {
277281
const url = this._opts.google_url
278-
url.set('query', {q: `${q} site:${site}`})
282+
if (site != '') q = `${q} site:${site}`
283+
url.set('query', {q: q})
279284
return url
280285
}
281286

js/crsearch/database.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ export default class Database {
1313
this._log = log.makeContext('Database')
1414
this._name = json.database_name
1515
this._base_url = new URL(json.base_url)
16+
this._online_base_url = json.online_base_url ? new URL(json.online_base_url) : null
1617
this._path_ns_map = new Map
1718
this._ids = []
1819

@@ -97,6 +98,10 @@ export default class Database {
9798
return this._base_url
9899
}
99100

101+
get online_base_url() {
102+
return this._online_base_url
103+
}
104+
100105
get all_fullpath_pages() {
101106
return this._all_fullpath_pages
102107
}

0 commit comments

Comments
 (0)