390eafb7fc
Refactor search engine out into multiple files
2020-03-14 17:18:51 +00:00
269ba583fd
feature-search: add command
2020-03-11 23:51:49 +00:00
2eb4f73c5e
Add dependency system to build system ahead of a feature-search refactor.
...
We should probably refactor the build script into something more
object-oriented too, since it's getting somewhat complicated. I've added
some ASCII art headers as a stop-gap for now, but a proper refactor of
that too (into a class-based system probably) is incoming I think.
2020-03-11 23:32:10 +00:00
6cfd60b765
feature-search: add search rebuild shell command
2020-03-11 23:07:38 +00:00
96ee24dc61
feature-cli: message formatting tweaks
2020-03-10 01:51:17 +00:00
fa81f0df25
Implement basic Pepperminty Wiki CLI & shell :D
...
The BkTree tester gave me the idea.
No longer will you have to hope that search indexing will complete in
time and adjust the maximum execution time for larger wikis..... when
that's implemented.
2020-03-10 01:47:40 +00:00
83c9d527cb
Bugfix: Squash empty tags when saving an edit to a page
2020-02-04 01:45:14 +00:00
83bf9acd86
Add tag input autocomplete when editing pages.
...
Thanks to Awesomplete by @LeaVerou :D
2020-01-26 21:04:39 +00:00
e2e9301043
Credits URL correction
2020-01-10 17:47:23 +00:00
6ad61f6be4
Add credits for #179
2020-01-10 17:11:25 +00:00
0f04a927c4
Tiny formatting tweak
2020-01-10 17:07:09 +00:00
Kevin Otte
3396c25002
Fix compromise detection
...
Compromise detection has inverted logic handling response_code and did not honor the settingsFilename variable.
2020-01-08 20:25:46 -05:00
5fdd91ce4c
Update changelog; change name of new setting to email_verify_addresses setting
2020-01-05 23:10:19 +00:00
344b7daa70
Make email address verification email sending more intelligent and update changelog
2020-01-05 21:16:51 +00:00
3c47bf0539
Bugfix: Correctly display whether the user's email address is verified
2020-01-05 21:10:35 +00:00
b4c0782e58
bool -> boolean
2020-01-05 20:59:21 +00:00
d47395e005
feature-user-preferences: bump version
2020-01-05 20:52:56 +00:00
9d75134afe
Add clarification about email verification status
2020-01-05 20:52:35 +00:00
322f956a9f
Add url_stem() & email address verification system
2020-01-05 20:49:20 +00:00
e6fd579bf1
Bugfix watchlist: Fix variable name
2020-01-05 20:48:55 +00:00
05615b4c81
feature-watchlist: bump version
2019-12-24 12:14:02 +00:00
95e06c5b8b
Bugfix: Don't send an email to users to edit pages on their watchlists
2019-12-24 12:13:35 +00:00
f06c37c561
Add title to remove cross on watchlist page
2019-12-23 22:53:16 +00:00
ab179e4e83
Bugfix: Check to make sure that a user's watchlist exists before checking to see if it's an array
2019-12-23 22:51:59 +00:00
f6d183a11e
Add conditional link to user preferences page to watchlist
2019-12-23 22:31:44 +00:00
1abcd96699
Remove stray debug statement
2019-12-23 22:02:41 +00:00
456f749ffe
Bugfix: Squash bug in new array_simple search optimisation
2019-12-23 21:58:23 +00:00
52fcd6a44a
Bugfix: Update Parsedown to squash bugs in PHP 7.4
2019-12-23 21:53:22 +00:00
543fcc171f
Bugfix: Fix watchlist page-edit module check
2019-12-23 20:53:08 +00:00
9cb4ecae1b
Implement watchlist emailing, but it's not tested yet.
...
We're getting there, hooray! :D
2019-12-23 18:57:52 +00:00
1602fab2c3
Correctly handle utf-8 in email_user()
2019-12-23 17:39:18 +00:00
8914bff594
Add watch item to nav more menu, and tweak messages.
2019-12-23 16:17:33 +00:00
53c6533a4c
Bugfix integration between watchlist and watchlist-edit
2019-12-23 16:09:39 +00:00
890c27be02
Bugfix new watchlist-edit action.
...
(Almost) next up: Actually sending the notifications!
2019-12-23 16:03:38 +00:00
85fb5cd6c1
Finish implementing the watchlist backend. Now to test it!
2019-12-23 15:39:28 +00:00
f7ee581709
Start working on the backend to the watchlist system, but it's not finished yet
2019-12-23 01:27:26 +00:00
167259623d
Start implementing watchlists :D
...
TODO: update the changelog
2019-12-22 14:37:20 +00:00
e4eee4e281
Fix comment typo
2019-12-15 22:38:44 +00:00
6d675fc783
Bugfix: Add missing apostrophes in stop words
2019-12-15 20:21:05 +00:00
6f4b1a62e9
Fix + weighted word support on stas-parse action
2019-12-15 20:03:04 +00:00
c80f26962e
Refactor stas_split to be more fasterererer
...
Informal testing shows that it's gone from taking ~18% of the total time
to ~4% of the total time :D
2019-12-15 17:56:56 +00:00
843f0f7ee9
Update comment
2019-12-10 01:13:51 +00:00
d53f0ed85a
Remove search::transliterate, as it has a hgue performance overhead.
...
Use search::$literator->transliterate() directly instead.
2019-12-08 21:04:59 +00:00
34fb821804
Don't load the stats index if it's not needed
2019-12-08 20:45:20 +00:00
d3e83a0aea
page_renderer: Don't generate the page list for the datalist if it's not displayed
2019-12-08 20:27:20 +00:00
8156055b5c
Improve search index write & lookup performance by implementing new arr_simple system
...
By serialising and deserialising lists of numbers with implode &
explode, we can further cut down on the json_* calls which are
reeeeeally slow.
2019-12-06 23:40:28 +00:00
60cca5a5e2
Add say hi button to firstrun wizard :D - closes #175
2019-11-24 11:50:49 +00:00
803677ba69
Add id to tags input box on page editor
2019-11-10 15:44:21 +00:00
41dc73036d
Bugfix: Include the new inverted index in wiki size calculations
2019-11-10 15:43:24 +00:00
729af8205d
Add documentation on external renderers
2019-10-26 15:19:05 +01:00
34a86dbaec
Fix insert
2019-10-26 12:27:09 +01:00
5b89e6549e
Add note to parsedown help
2019-10-26 12:24:56 +01:00
f044d25f7e
Add output_classes property to external renderer, and new .invert-when-dark class in theme
...
ABC Notation & Server-Side Latex look good naow! :D
2019-10-25 12:12:57 +01:00
657213c11c
Bugfix: Nest external rendered images inside a <p> to make them block-level
2019-10-25 00:16:08 +01:00
bba614df2f
Add setting to disallow anonymous users from invoking the external renderer on new input
2019-10-24 21:08:18 +01:00
b75ad067eb
Add file & substitution_pipe support.
...
Also use nomnoml in SVG mode instead of nomnoml-cli, because the latter
is a pain to build.
2019-10-24 20:13:03 +01:00
0744498570
Bugfix: Clean up correctly if the external renderer burps
...
This is especialyl important for the exteernal renderer cache directory,
which is assumed to contain exclusively valid rendered outputs.
2019-10-21 00:41:14 +01:00
b7cb9741de
Implement backend. That went better than expected!
...
We should test it thoroughly to make sure it functions as expected.
2019-10-21 00:31:18 +01:00
fe4071fe05
Add setting to disable external renderer support
2019-10-20 22:00:52 +01:00
9d2be94f64
Start writing backend ext_renderer, but it's not finished yet.
2019-10-20 21:54:00 +01:00
6d19af2e1b
Refactor errorimage into core & greatly improve it
2019-10-20 21:42:13 +01:00
ca6546677b
Add initial external diagram renderer support, but we are missing the backend.
2019-10-20 20:54:50 +01:00
209122fabd
Style code blocks (todo: test them in light mode)
2019-10-20 18:05:57 +01:00
30cbca1b13
Remove debug statement
2019-10-20 17:53:21 +01:00
bdd2449ab5
Add automatic heading id if you don't specify one
2019-10-20 16:44:32 +01:00
a0d28c280f
Bump version of modules
2019-10-20 16:01:13 +01:00
ab033c7fd3
Bugfix: Fix internal theme reset button
2019-10-20 01:25:02 +01:00
cc5f7561b0
Add reset to internal default theme button, but there's some weirdness going on.
2019-10-20 01:19:35 +01:00
6213a6e715
Refactor login code a bit to reduce nesting
2019-10-07 18:19:48 +01:00
d6d89e3d9f
Implement initial theme update UI logic.
...
Looks like we have Unicode issues though :-/
2019-10-07 17:14:28 +01:00
4f5a81f65b
Add confirmation before gallery HTTP requests
2019-10-07 16:43:35 +01:00
6696e90d9c
[theme gallery] Finish implementing theme_update(), but it's untested
2019-09-29 16:18:03 +01:00
a239f5c044
Add alteration warning to theme gallery above change theme button
2019-09-29 15:43:03 +01:00
988038f599
Add link to theme gallery in master settings
2019-09-29 15:42:48 +01:00
6f4d47b2bb
Update credits again
2019-09-21 21:20:22 +01:00
9b1f441898
Add @SeamFromIT to the credits
2019-09-21 21:19:55 +01:00
aea1255f10
Bugfix: Return correct type in StorageBox::delete()
2019-09-21 21:05:14 +01:00
8d9491cb55
Bugfix: Fix footnote rendering (thanks again, @SeanFromIT!)
2019-09-21 11:35:50 +01:00
c8aa3b8692
Bugfix: Revision counters for new pages didn't tick upwards
2019-09-19 08:59:29 +01:00
f7943365d5
Squash warnings from file_get_contents in the peppermint.json access check
2019-09-18 11:28:47 +01:00
2198755af8
Add secret GET param to debug action
2019-09-11 20:21:21 +01:00
157c6dabdd
If it's a list of strings, then it should be sorted correctly.
2019-09-03 18:16:01 +01:00
29c62c4bbf
Bugfix: Support uncode when sorting all tags
2019-09-03 13:16:52 +01:00
80cdb40fb2
Sort page lists in list-tags action
2019-09-03 13:14:22 +01:00
e570427469
Document new theme_update() function
2019-09-01 21:20:10 +01:00
e708220bc6
Implement some theme update logic, but it's unfinished.
2019-09-01 21:18:14 +01:00
f4275373d9
Update parsedown
2019-08-30 13:29:15 +01:00
0427f8818f
Mess with adding parsedown extreme, but it's not finished yet
2019-08-29 00:15:19 +01:00
eb551708b5
Fix theme gallery submission system
2019-08-26 21:00:38 +01:00
a606dbdc2d
Style the new theme gallery
2019-08-26 16:31:30 +01:00
e85f480e63
Sort themes before display
2019-08-26 15:48:37 +01:00
c96e3108aa
Set user agent string when making requests
2019-08-26 15:27:24 +01:00
26c3a4d0a2
Wire the theme index into the gallery ui, but it's still untested.
...
Part of #5 .
2019-08-26 13:16:13 +01:00
98c94a2b59
Start working on theme index, but screenshotting isn't finished yet
2019-08-25 18:12:08 +01:00
2fa867e6ef
Bump page-help version
2019-08-24 21:56:02 +01:00
f160a82063
Add note to search page linking to query syntax on help page
2019-08-24 20:47:41 +01:00
dc63d98925
Add table of contents to help page
2019-08-24 20:05:06 +01:00
da5b3a5df8
Do some documentation work, and add missing help sections
2019-08-24 19:56:14 +01:00
e773e36de5
Tweak stas-parse action output
2019-08-23 01:29:11 +01:00
632375417d
Add apiDoc comment
2019-08-23 01:27:35 +01:00
e6ba31df23
Add debug stas-parse action
2019-08-23 01:24:17 +01:00
276b4c808f
Add STAS parsing to query-searchindex output
2019-08-23 00:51:39 +01:00
4d51ae924e
Fix intitle: & intags: syntax - game, set, match.
2019-08-22 22:23:30 +01:00
9505e0653e
Fix some mroe odd bugs in the new search system
2019-08-22 22:11:09 +01:00
edf1be5801
Fix a *huge* number of bugs in the new search system, but it's not ready just yet
2019-08-22 21:38:17 +01:00
e08e775d98
Finish refactoring invindex_query
2019-08-22 17:43:14 +01:00
b93dd3d9cc
Start refactoring query_invindex & rename it to invindex_query
...
....but of course it's not finished yet. We're doing well, but there are
a few thorny issues to go.
Mainly: We need to seriously optimise ids::getpagename(), 'cause we'll
need it a *lot* when we get to implementing the size, before, and after
colon : directives.
2019-08-18 21:25:48 +01:00
ce6df06817
Start refactoring the search system to use a new key-value store backend
...
....but it's not finished yet.
It should improve performance significantly when it's done & optimised,
as we won't have to load the entire search index into memory & decode it
just to perform a single query.
2019-08-18 18:52:29 +01:00
38badd3c1f
[search] Add StorageBox.php as an extra data file
...
It's time to refactor the search system to use an SQLite-backed
key-value data store. It's just a shame that something designed for this
like LevelDB / RocksDB doesn't have a PHP package that we can use :-/
We can always switch later, I suppose.
2019-08-17 20:47:51 +01:00
7088990027
Minor code formatting
2019-08-17 01:19:04 +01:00
5609506def
minor formatting
2019-08-16 01:14:38 +01:00
127270ff89
Bugfix: Correct search query performance metrics
2019-08-15 23:46:23 +01:00
ddc36bf48e
Remove commented code
2019-08-15 23:17:33 +01:00
0a5ba3ff59
Improve search invindex alteration performance
...
This will be especially noticable when using invindex-rebuild
2019-08-15 23:06:06 +01:00
a67b67817f
[upload] Make comments serenata-compatible
2019-08-15 22:55:50 +01:00
bc0c5de9e7
Merge branch 'master' of github.com:sbrl/Pepperminty-Wiki
2019-08-14 01:19:11 +01:00
425203e0ec
Smal comment update.
...
Be the first to check out the new STA system in development!
https://repl.it/@sbrl/Peppermint-STAS
STAS: Search Term Analysis System
It's currently being tested externally, before being folded into
Pepperminty Wiki itself. Want a feature that's currently missing? Get in
touch!
2019-08-14 01:18:53 +01:00
411d03da27
[apidoc] Bugfix @apiVersion directives
2019-08-09 12:44:22 +01:00
a12e00ef73
typo in comment
2019-08-08 18:36:51 +01:00
b6a986a075
[apidoc] @since -> @apiVersion
2019-08-08 18:32:24 +01:00
2c474b3ec5
[apidoc] Bugfix: correct typo
2019-08-08 18:29:49 +01:00
7df4c51834
Add download button for unsupported file types
2019-06-01 21:37:35 +01:00
02bc1ea7a2
Implement initial pdf preview
2019-06-01 20:25:44 +01:00
a5572bcbd4
Squash a warning when uploading a file
2019-06-01 19:57:03 +01:00
712e95474c
Minify the pageindex by default, but also add a setting to control this
2019-06-01 15:55:48 +01:00
fb25845d8c
file upload: fix help text
2019-05-24 21:50:27 +01:00
f14fd23da5
Add force-redirect to firstrun action, and option to disable access check (NOT RECOMMENDED)
2019-05-11 22:52:55 +01:00
a49ccccbcc
Handle pre-existing wikis
2019-05-11 15:39:55 +01:00
0333c1a4d4
Check if peppermint.json is accessible from the web
2019-05-11 13:06:19 +01:00
cc82adf23d
firstrun: Fix filter_var call
2019-05-11 12:54:09 +01:00
215c0d41ef
Require the site secret to use the first-run installer
2019-05-11 12:51:22 +01:00
1dc0438a18
Work more on the first-run installer, but it's not finished yet
2019-05-11 12:45:02 +01:00
e37541d606
Add a more obvious link to the user table at the top of the master settings page
2019-05-11 12:44:28 +01:00
1367641b58
Bugfix: Fix crash when trying to access the user table when not logged in as an admin.
...
Thanks, @Gert-dev for php-ide-serenata!
2019-05-11 12:41:43 +01:00
0e8a27e7f7
Improve comments
2019-05-11 12:13:06 +01:00
a25767432a
Add todo
2019-05-11 00:35:47 +01:00
1d6409128d
Start work on a simpler first-run wizard, but it's not finished yet.
...
Hopefully this one will be more successful than the last attempt :P
2019-05-11 00:35:17 +01:00
50efd4bb49
Bump versions
2019-05-06 23:48:34 +01:00
4e801c4692
Bugfix: Consolidate user->email & user->emailAddress.
...
Also add an auto-migrator on login.
Fixes #167
2019-05-06 23:44:38 +01:00
f3d797695e
Bugfix: Don't crash when updating stats if no pages have any tags yet
2019-05-06 20:31:08 +01:00
c177b66b42
Bugfix: Don't throw a warning if the search index doesn't exist yet
2019-05-06 20:22:36 +01:00
017281375d
Bugfix: Return templates as rawHtml instead of text to avoid double-escaping rendered html
2019-03-02 22:07:58 +00:00
3dcb8b5b1e
Update parser engine to handle comments as untrusted
2019-03-02 21:59:50 +00:00
4f9f1a6cf9
Add support for core sharding to build script
2019-03-02 21:13:41 +00:00
4de995761d
Fix a bunch of serenata errors
2019-03-02 13:49:12 +00:00
d6c56feb1d
Download extra files in the pseudo-module_register(), and then pack 'em in the packer
2019-03-02 13:32:12 +00:00
501d6a1c9c
Assume that the extra data directory exists in modules.
...
We can get the module registration system to automatically prepare the
requested files
2019-03-02 13:04:30 +00:00
7cd57c894f
Use a clever hack to get the file descriptor of the ZipArchive and peel the data out.
...
Not sure if it'll work yet though, as we've run into a bit of a snag
with the module loading.....
2019-03-02 12:24:11 +00:00
e93417f171
Start working on a new extra_data system, but it's not finished yet.
...
Warning: Everything's broken! If you want to use the latest master, please use the commit before this one.
2019-02-26 23:01:09 +00:00
a3330829cb
Bump module versions & go over documentation comments
2019-02-10 23:18:34 +00:00