diff options
author | Andreas Baumann <mail@andreasbaumann.cc> | 2023-12-14 09:07:37 +0100 |
---|---|---|
committer | Andreas Baumann <mail@andreasbaumann.cc> | 2023-12-14 09:07:37 +0100 |
commit | c7ce0adf63375d2085f7636eee0e9c847dafa59f (patch) | |
tree | 49a56ec587d6ef8b9098a9a5d69bab15c9461ef4 | |
parent | 403729f3cad0eef670164962bb1f773b2ca79534 (diff) | |
download | www-andreasbaumann-cc-c7ce0adf63375d2085f7636eee0e9c847dafa59f.tar.gz www-andreasbaumann-cc-c7ce0adf63375d2085f7636eee0e9c847dafa59f.tar.bz2 |
fixed posts.db patching and fts5 search
-rwxr-xr-x | sync_ssl.sh | 2 | ||||
-rw-r--r-- | themes/new_theme/layouts/partials/ranklist_fts5.html | 22 |
2 files changed, 11 insertions, 13 deletions
diff --git a/sync_ssl.sh b/sync_ssl.sh index 02e808a..0417e8e 100755 --- a/sync_ssl.sh +++ b/sync_ssl.sh @@ -2,7 +2,7 @@ rm -rf ssl-public cp -av public ssl-public -find ssl-public -type f -exec \ +find ssl-public ! -name '*.db' -type f -exec \ sed -i 's@http://www\.andreasbaumann\.cc@https://www.andreasbaumann.cc@g' {} \; rsync -e 'ssh -p 2221' -av \ diff --git a/themes/new_theme/layouts/partials/ranklist_fts5.html b/themes/new_theme/layouts/partials/ranklist_fts5.html index cf003f1..5677c40 100644 --- a/themes/new_theme/layouts/partials/ranklist_fts5.html +++ b/themes/new_theme/layouts/partials/ranklist_fts5.html @@ -2,11 +2,9 @@ <script src="/js/url-search-params.js" type="text/javascript"></script> <script src="/js/loadingoverlay.min.js" type="text/javascript"></script> <script src="/js/require.js" type="text/javascript"></script> -<!-- -<script src="/js/sql-fts5.js" type="module"></script> ---> <script language="Javascript"> + function escapeHtml( text ) { return text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">" ); } @@ -50,25 +48,25 @@ xhr.open('GET', '/index/posts.db', true); xhr.responseType = 'arraybuffer'; xhr.onload = e => { - const uInt8Array = new Uint8Array(xhr.response); + const uInt8Array = new Uint8Array( xhr.response ); requirejs(["/js/sql-wasm.js"], function(initSqlJs) { - const SQL = initSqlJs({ + const SQL = initSqlJs( { locateFile: file => `/js/${file}` - }); + } ); - initSqlJs().then( function( SQL ) { + initSqlJs( ).then( function( SQL ) { var db = new SQL.Database(uInt8Array); const stmt = db.prepare( "select uri as docid,title,snippet(posts, 2, '<b>', '</b>', '...', 50) as abstract from posts where posts MATCH @query ORDER BY bm25(posts)" ); - stmt.bind({'@query':query}); + stmt.bind( {'@query' : query} ); var results = []; - while(stmt.step()) { - var row = stmt.getAsObject(); + while( stmt.step( ) ) { + var row = stmt.getAsObject( ); results.push( row ); } - stmt.free(); - db.close(); + stmt.free( ); + db.close( ); var html = draw_ranklist( query, results ); |