Commit graph

89 commits

Author SHA1 Message Date
Seednode
0f4c4845b2 JSON output for stats is now pretty-printed and sorted alphabetically 2023-01-19 20:31:02 -06:00
Seednode
1a4496b788 Added stats endpoint 2023-01-19 12:07:15 -06:00
Seednode
979a9e4d4c Added 200 Ok response when clearing cache 2023-01-18 19:14:39 -06:00
Seednode
42734cda62 Added /clear_cache endpoint to regenerate cache on demand 2023-01-18 12:11:23 -06:00
Seednode
0906bd6769 Updated copyright year 2023-01-18 11:19:29 -06:00
Seednode
19fa332ced Cached mode now generates cache on first run, not first HTTP request, to improve initial response time 2023-01-18 11:18:01 -06:00
Seednode
d343be7253 Added support for time.Duration refresh intervals, instead of just integer seconds 2023-01-18 09:58:14 -06:00
Seednode
8ddbe8b2c6 Replaced <= 0 with < 1 for readability's sake 2022-12-20 18:24:07 -06:00
Seednode
cf79bc1d3d Moved determining real IP address to its own function 2022-12-20 18:17:33 -06:00
Seednode
af9def38ba Accidentally referred to response headers, not request headers, when determining IP address 2022-12-20 17:54:27 -06:00
Seednode
3d560ef770 Added initial attempt at reporting proper IPs in logs 2022-12-20 17:48:05 -06:00
Seednode
cfbffb6dab Fixed incorrect IsEmpty() check that would return true if exactly one of HasIncludes() or HasExcludes() returned true 2022-12-20 17:12:37 -06:00
Seednode
f9d7be008d Combined declare/initialize steps for structs 2022-11-11 09:44:47 -06:00
Seednode
d3c063017d Removed extraneous check in getRefreshInterval(), inverted value check in getSortOrder(), replaced string concatenation with strings.Builder in generateFilePath() 2022-11-11 09:19:53 -06:00
Seednode
0b34784b12 Images are now centered, both vertically and horizontally 2022-11-10 23:24:14 -06:00
Seednode
eff8394453 Changed variable name from PascalCase to camelCase 2022-11-10 15:34:07 -06:00
Seednode
5f28361f47 Fixed issue where invalid include/exclude values were being accepted 2022-11-10 13:57:38 -06:00
Seednode
ea4b1be5c3 Added basic input verification for sortOrder/refreshInterval 2022-11-10 10:09:39 -06:00
Seednode
28af94cba3 Refresh now happens X seconds after page finishes completely loading, not X seconds after the initial request is sent 2022-11-10 09:38:40 -06:00
Seednode
283b4fccec Unified error handling, fixed missing file checks, and added logging for requested (but not available) files 2022-11-10 00:26:21 -06:00
Seednode
0a251e8f5a Always append refresh query string, replaced string concatenation with strings.Builder in generateQueryParams() 2022-11-10 00:04:47 -06:00
Seednode
3e98201cdd Removed extraneous </img> tag and added doctype tag 2022-11-09 23:53:02 -06:00
Seednode
f12b800a71 Replaced const string template with strings.Builder, to be hopefully somewhat more readable while still being moderately efficient 2022-11-09 23:33:13 -06:00
Seednode
43a515c896 Replaced image dimension string variable with Dimensions struct, replaced handrolled HTML generation with gohtml library, added height and width to img tags 2022-11-09 23:17:19 -06:00
Seednode
ac67d710c8 Moved javascript after img tag 2022-11-09 21:25:04 -06:00
Seednode
a9b2af3e18 Fixed improper handling of potentially empty string for strconv.Atoi() 2022-11-08 19:30:08 -06:00
Seednode
ea2e17d265 Added automatic reload functionality via query parameters, and rewrote generateQueryParams() to hopefully be more readable 2022-11-08 19:24:49 -06:00
Seednode
c213911969 Only generate filter struct once, further simplify switch/case om serveHtmlHandler() into a simple if/else 2022-11-05 11:17:31 -05:00
Seednode
b6f7d9c104 Reworked functions to be more concise (e.g. now getNewFile and getNextFile work with or without sortOrder) 2022-11-05 11:00:42 -05:00
Seednode
ad6d7e2cd3 Empty space on image pages is now clickable, and returns a new random image 2022-10-28 19:52:53 -05:00
Seednode
97e3b47b19 Only seed rng once, at initialization, and speed up picking random file by using rand.Intn instead of shuffling the slice 2022-10-28 19:49:49 -05:00
Seednode
920bdb2615 Slight formatting change to HTML output, for consistency's sake 2022-10-28 19:18:34 -05:00
Seednode
5c7bb60dcb Entire 404 page is now clickable, and attempts to open a new random file 2022-10-28 19:09:05 -05:00
Seednode
0434353942 Display image size in tab titles, to match behavior of images served directly 2022-10-28 18:32:03 -05:00
Seednode
8c763db461 Removed two debug print statements I accidentally left in 2022-10-28 17:26:26 -05:00
Seednode
f21c01e085 Added flag to cache directory scan at startup 2022-10-28 17:19:04 -05:00
Seednode
3801421567 Display size of file served when verbose flag is passed 2022-10-25 00:11:55 -05:00
Seednode
0434d87b3e Added symlink handling 2022-10-25 00:06:57 -05:00
Seednode
c52ace1fdb Print version on launch 2022-10-23 17:39:49 -05:00
Seednode
8d50f5a088 Second attempt at fixing Linux builds 2022-10-23 16:47:23 -05:00
Seednode
f85749b030 Hopefully fixed Linux functionality 2022-10-23 16:29:58 -05:00
Seednode
8dbecba77e Testing initial Windows support 2022-10-23 16:16:40 -05:00
Seednode
aa2413eafc Compile regex at start, instead of each page load 2022-10-23 13:45:49 -05:00
Seednode
ae82762745 Merged -c|--count flag into -v|--verbose, reformatted verbose output 2022-10-20 17:55:25 -05:00
Seednode
e39950de68 Switched redirect status code back from 307 to 303, and defined it as a const. 2022-10-20 17:12:29 -05:00
Seednode
1cbc84d789 Attempting to add concurrency, may god have mercy on my soul 2022-10-20 14:22:01 -05:00
Seednode
31d16f65b8 Fixed issue where having empty include but non-empty exclude caused 404 2022-10-20 10:38:32 -05:00
Seednode
c8a2e56e92 Skipped parsing query params if the corresponding flag isn't enabled 2022-10-19 20:39:57 -05:00
Seednode
6508f2d170 Added flags to enable/disable filtering and sorting 2022-10-19 20:37:12 -05:00
Seednode
fa7177849e Replaced some value passing with pointers, per suggestions from copyfighter 2022-10-19 19:41:42 -05:00