Commit Graph

96 Commits

Author SHA1 Message Date
9305559660 Documentation fix
String -> Boolean

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 20:39:42 +01:00
35e6b94ba1 Support for uncached data loading
So you don't have to restart the server, you can add "cache_data": false option to config.json to not cache data.
Documented in CONFIG.md
I added a require_module function that either does or does not cache the data based on this configuration option.

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 20:37:35 +01:00
3f173fc2e3 bug fix
removed data/data.json from tracking

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 20:20:48 +01:00
b44762ba7c bug fix
Hitcount updates visually, previously it just showed 1 on the frontend as the value wasn't actually  being retrieved from the data.getdata()

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 20:18:05 +01:00
1ecc223433 small changes
Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 20:07:49 +01:00
22a7983737 data.getdata() is fully implemented
I think it all works now...

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 19:31:32 +01:00
e597fd78f7 Comment replies on comment page
There is now a reply form on the comment pages to reply to that comment
Syntax:
>> postID-commentID

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 17:33:25 +01:00
ef7178cc3f Comment submission works
I fixed the comment submission to use the new way of storing comments and their counter.
I also fixed the AI-consent field in en-US because I accidently had · instead of spaces (from when I copy pasted from vim)

Signed-off-by: deadvey <deadvey@deadvey.com>
2025-09-24 17:20:20 +01:00
max
bfaf957ae2 removed func.get_comment()
It is no longer needed

Signed-off-by: max <deadvey@localhost.localdomain>
2025-09-24 17:06:55 +01:00
max
e6476dcd4e Everything uses data.getdata()
data.getdata() excepts two parameters, if desired, the second will be the index, however if you don't specify anything, the whole array will be returned
Also, comments now have a composite key of postID-commentID, with each post's comments having their own set starting at 0, this makes it easier to index and find a specific comment, and making the getcomment() function unessesary
2025-09-24 17:06:13 +01:00
max
93c5f13750 Clean up changes
Seperated all routes into seperate files for neatness, and I've made the comments.json store only the comments, comments_counter is in the new data.json file which also stores the hitcount.

Signed-off-by: max <deadvey@localhost.localdomain>
2025-09-24 10:02:28 +01:00
max
0541b704db ExpressJS routes in different files
ExpressJS routes for the syndication stuff is now in a seperate file, will now do the other routes.

Signed-off-by: max <deadvey@localhost.localdomain>
2025-09-23 17:38:20 +01:00
max
5e4eb38763 started implementing data functions for easy requests to data 2025-09-23 15:01:28 +01:00
09967a0be9 Automatically removes leading and trailing spaces from tags because tags
are often entered with a space after each comma.
This uses .trim() in func.render_tags() to remove when rendering as well
as .map(str => str.trim()) when a post or post edit is submitted so they
are also stored without spaces.
2025-09-07 22:11:58 +01:00
e3e5469e1a Made it so if an invalid user or post is loaded, a proper error message is
shown instead of just a nodeJS error message
2025-09-06 23:54:49 +01:00
c8af978259 docs and also I improved the readability/user friendliness of the EJS 2025-09-03 22:28:50 +01:00
99e07389d0 * more proffesional language in rejecting AI
* footer uses locales
2025-08-27 19:00:49 +01:00
532010f873 bug fix for site_admin config field 2025-08-27 18:53:29 +01:00
5917789c5b add webadmin as a field in the config 2025-08-27 18:51:59 +01:00
4f0941262e Withdraw consent for AI scraping 2025-08-27 18:49:33 +01:00
27b9ee6437 * added "quotes" to the locales
* made all the ejs pages use "postID" as the variable for post indexes
* split up en-GB and en-US
2025-08-27 18:30:26 +01:00
c73ce69f93 bug fix: postID -> post_index 2025-08-27 18:19:12 +01:00
5bd0429ae2 timeline, userpage and tag page have an edit post option. 2025-08-27 17:58:48 +01:00
6e583d1410 removed webroot dir 2025-08-27 16:41:39 +01:00
cf784a1a99 removed webroot dir (in .gitignore) 2025-08-27 16:40:53 +01:00
b3ea048244 bug fix RSS and ATOM using func.render_md instead of showdown 2025-08-27 16:36:21 +01:00
9b5d3f3f73 Fixed issue relating to showdownjs not escaping html tags by porting to
markdown-it, also introduced a new function: func.render_md
2025-08-27 15:09:57 +01:00
5f07db1e15 tables in CONFIG.md 2025-08-09 21:10:23 +01:00
d298717519 Testing markdown tables 2025-08-09 21:05:58 +01:00
0b25fb221b Documentation 2025-08-09 20:53:57 +01:00
f85c4aa893 Minor change to /index/pages EJS 2025-08-09 16:59:57 +01:00
6fc1f85e18 Added locale (english only at the moment) and modifed the EJS so I think
every string is customisable (via the /locales/selected locale)
2025-08-09 16:57:31 +01:00
8418318d80 Added fake form at the top of html in attempt to mitigate spam, probably
wont work that well but might as well try
2025-08-09 13:18:44 +01:00
44a060508b Hitcount is now created by init.initialise() 2025-08-09 13:00:07 +01:00
49c7fc7cdf init.initialise() checks for correct path of config.json (bug fix) 2025-08-09 12:51:43 +01:00
144c276bc9 Fixed init.initialise() checking for .js files as opposed to .json files 2025-08-09 12:48:25 +01:00
df4bc99d9a Initialise() imports fs (bug fix) 2025-08-09 12:44:39 +01:00
3e2a63bfd7 Export the init.initialise() function (bug fix) 2025-08-09 12:42:18 +01:00
bced9c7c0e CONFIG.md documentation and also fixed a bug where when ATOM files are
loaded the config.rss boolean is actually checked as opposed to
config.atom, fixed by also adding string.atom_disabled to config.json :)
2025-08-02 03:00:20 +01:00
f723e37732 docs and that 2025-08-02 02:48:22 +01:00
8b9ddcf048 Added page indexes for comments, posts, users and pages overall, should
add one for tags but it might be inefficient as I don't store all tags
in an array or anything...
2025-08-02 00:51:33 +01:00
5f2aba0c2b Site wide header (currently only used for a link to / but will add
index's for stuff later)
2025-08-01 23:27:28 +01:00
cdfc5f2c30 Post doesn't exist page 2025-08-01 23:21:43 +01:00
88b198365d user, post and comment objects contain their ID's now. 2025-08-01 12:34:29 +01:00
b683b658f7 Comments now have their own pages, at /comment/commentID, these are
linked to when someone replies to another comment (>> id), I also fixed
a bug in comment submission where the counter was not incrementing
2025-07-31 03:58:28 +01:00
0cc319a702 Added user specific RSS and ATOM feeds and updated the EJS templates to
add them by default to the user's header section
2025-07-30 01:28:23 +01:00
72316094e4 Updated the readme to have a better feature section 2025-07-30 01:12:29 +01:00
47877e71d4 atom functionality is added and I fixed an issue in the RSS that is
caused by the deleted posts not having valid data.
2025-07-30 01:09:51 +01:00
0c43c7315c editing user redirects to user's page and began to implment ATOM 2025-07-30 00:43:21 +01:00
39eba8fcda posts are marked as deleted to preserve array structure 2025-07-28 15:11:26 +01:00