Commit Graph

19 Commits

Author SHA1 Message Date
Ben Busby
6d38abd1b4 Removed debug from opensearch template 2020-04-29 10:12:49 -06:00
Ben Busby
dcd93d4869 Fixed filter params, updated search button text 2020-04-29 10:03:34 -06:00
Ben Busby
0a3da5cea4 Updated js controller and config api route
Controller was refactored to be a bit less monolithic.

Config route was updated to accept an html form data POST rather than
just a json object.
2020-04-28 20:50:12 -06:00
Ben Busby
1cbe394e6f Updated tests, fixed a few bugs
Added opensearch routes test and individual tests for searching via GET
and POST separately.

Fixed incorrect assignment in gen_query.
2020-04-28 18:59:33 -06:00
Ben Busby
0c0ebb8917 Added POST search, encrypted query strings, refactoring
The implementation of POST search support comes with a few benefits. The
most apparent is the avoidance of search queries appearing in web server
logs -- instead of the prior GET approach (i.e.
/search?q=my+search+query), using POST requests with the query stored in
the request body creates logs that simply appear as "/search".

Since a lot of relative links are generated in the results page, I came
up with a way to generate a unique key at run time that is used to
encrypt any query strings before sending to the user. This benefits both
regular text queries as well as fetching of image links and means that
web logs will only show an encrypted string where a link or query
string might slip through.

Unfortunately, GET search requests still need to be supported, as it
doesn't seem that Firefox (on iOS) supports loading search engines by
their opensearch.xml file, but instead relies on manual entry of a
search query string. Once this is updated, I'll probably remove GET
request search support.
2020-04-28 18:19:34 -06:00
Ben Busby
38c0f56322 Fixed gitignore, added required files 2020-04-24 19:03:22 -06:00
Ben Busby
1f6bfa092e Complete refactoring of opensearch
Refactored opensearch.xml to only exist as a template that is
served by a flask route, which is then populated with the
necessary url root.
2020-04-24 18:45:57 -06:00
Ben Busby
024552f2df Minor refactor of filter class, updated tests, fixed html/css, added ua to config 2020-04-16 10:01:02 -06:00
Ben Busby
67d8b0d99d Updated favicons 2020-04-12 14:26:32 -06:00
Ben Busby
08a8a3e064 Fixed missing page title 2020-04-08 19:13:25 +00:00
Ben Busby
5bfc4d9a74 Added user config for nojs links and dark mode, minor styling updates 2020-04-08 12:47:21 -06:00
Ben Busby
2411f9de8d Fixed bug in nojs config setting, updated pages to use new favicon and proper headers 2020-04-07 14:12:16 -06:00
Ben Busby
066c253c4d Added ability to update config from home page 2020-04-05 17:59:50 -06:00
Ben Busby
d90468c667 Updated to remove ads, minor renaming refactor 2020-04-03 18:02:45 +00:00
Ben Busby
24aa4367d3 Added optional no-js functionality, added location based searching (hardcoded), updated html 2020-02-21 23:52:29 +00:00
Ben Busby
4636b0f695 Added html parsing to remove returned scripts, added logo 2020-01-23 06:19:17 +00:00
Ben Busby
b11fc5fe67 Improved homepage styling 2020-01-22 07:15:29 +00:00
Ben Busby
1e1bb4a55a Added tbm (images/news/etc) handling, updated front page and search controls 2020-01-21 18:07:08 -07:00
Ben Busby
6e7eef165e Initial commit 2020-01-21 13:26:49 -07:00