commit 83703d30d5
Author: Craig Oates <craig@craigoates.net>
Date: Tue Nov 22 19:50:09 2022 +0000
update API Key for Meilisearch in prod. in search package (#1).
This is a hard-coded change which addresses the bug (#1) which points to the
wrong URL for the Meilisearch server -- when running in prod. -- but this will
need further refactoring. I've already created an issue (#2) in the Issues
tracker in prep. of that work.
commit d0eba3c485
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 19:40:11 2022 +0000
update README.org file.
commit 2256d28850
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 19:15:09 2022 +0000
update README.org file.
commit 97293d886d
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:43:00 2022 +0000
remove unused hostname check from quick-search.js file.
This is old code essentially and is no longer used.
commit ada40dec58
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:41:45 2022 +0000
update apiKey for live meilisearch service.
commit 66b64edc2a
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:40:38 2022 +0000
update robots.txt (site's URL).
This URL is intended to be a temporary one until Nic decides on the final domain
name.
commit e5c95b77dc
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:35:44 2022 +0000
rename README.markdown to README.org and add install/sys info.
commit d12b76f87a
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 16:02:43 2022 +0000
update .conf and .service files for meilisearch instance.
I fixed typo's and added placeholders (E.G. '<INSERT USERNAME HERE>') in places
where you need to add your own data which is used on your server/system.
commit 5a667149a2
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 16:00:58 2022 +0000
update .conf and .service files for main site (ritherdon-archive).
I fixed a typo's and put placeholders (E.G. '<INSERT URL HERE>') in places you
need to put your own data when deploying to your system.
commit 1b9f3e673e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 15:59:53 2022 +0000
update makefile (remove systemd and nginx stuff, focus on install).
commit 707d469ded
Author: Craig Oates <craig@craigoates.net>
Date: Thu Nov 17 18:05:10 2022 +0000
update makefile.
commit 5c7782439a
Author: Craig Oates <craig@craigoates.net>
Date: Thu Nov 17 17:04:33 2022 +0000
add nginx .conf and systemd .service files for meilisearch.
These files are an untested. I just added them to get the ball rolling with
them.
commit 4914f3a9bc
Author: Craig Oates <craig@craigoates.net>
Date: Thu Nov 17 16:44:18 2022 +0000
create nginx .conf and systemd .service files.
These will need tweaking. The most notable one being the nginx .conf file. The
website's URL hasn't been decided yet.
commit 6283918323
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 23:43:53 2022 +0100
update makefile.
commit bf407e66bb
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 22:36:59 2022 +0100
fix typo in makefile.
commit 500c25abfb
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:31:21 2022 +0100
add makefile with basic functionality.
This is just an initial commit of the file. I will need to add to this as I get
this website close to production-ready status.
commit ca5fc4e9fc
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:27:45 2022 +0100
comment out the 'covert' function in storage package.
This is tag-along code from porting the storage package over from another
project. It's never got in the way so it's never caused any errors -- hence no
deletion/dealing with it until now. I've commented it out with the intention of
deleting if no use for it develops as it the site gets closer to going into
production.
commit b99e4b95f9
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:22:49 2022 +0100
intern stuff with '#:' in ritherdon-archive pack. and change to woo.
The first part is just a minor change to get Emacs to indent the defpackage
stuff in an orderly fashion.
The second part refers to the 'main' function. I've changed the server it
uses/specifies from Hunchentoot to Woo. I've been using Woo throughout
development so I'm more confident with the system using that when it goes into
production. The 'main' is used, instead of 'start' when running the website as a
systemd service on the production server.
commit 757698a7bc
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:18:18 2022 +0100
intern packages in ritherdon-archive.asd file (default as strings).
I used Caveman2's project maker and it adds packages, systems, exports Etc. with
strings. I changes how they were called here by replacing the string-quotes with
'#:'. It annoys me how Emacs indents/aligns the system and package stuff in a
wonky way when you don't use '#:'. I finally had fed-up with it and changed
it. Overall, this is a minor change.
commit 15cc041700
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 16:38:41 2022 +0100
update /layouts/header.html template (reduce size of site header).
The <a> tag would stretch across the top of the page and it made it hard to
click in an 'empty' space on the page. It was, also, confusing when the page
would change to the home page when you were not paying attention whilst clicking.
commit 973523c01f
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 16:32:36 2022 +0100
update main.css (hover state for 'danger zone' links/buttons).
commit ccc4398a52
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 00:11:53 2022 +0100
remove/comment out search code (JS files) which declare 'serverURL'.
Because the code now establishes the 'server' variable in the various HTML Djula
templates (grabbed from the database). The code which generates the old 'server'
variable and it's data has been commented out or deleted.
commit b89dfd828f
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 00:10:27 2022 +0100
change serverURL to just server (fixes typo -- couple of templates).
This is just a typo fix. I put 'serverURL' in places and hadn't
realised. 'serverURL' should say 'server'.
commit d8ecc23079
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 00:00:29 2022 +0100
create 'server' variable (for search) in page and search templates.
This variable contains the URL for the Meilisearch instance this site calls out
to. It is grabbed from this site's database and passed to the Djula templates
providing Meilisearch-based features. The 'server' variable is called here so
it's easy for the dev. to see how and when it's called.
commit 124252070e
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:57:54 2022 +0100
insert filter-search.js scripts into pages and archive templates.
The filter code was moved to its own file and these two files utilse that
code. So, these templates now must call them. The reason for moving the code out
is to stop the browser's console printing errors -- because the filter JS code
was trying to run on pages which didn't have the correct HTML.
commit 55f12b3f5b
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:54:09 2022 +0100
refactor build search URL feat. in search package (site-settings).
I've left the old code as a comment just in case I need to reverse course. The
new way the function gets the (Meilisearch )search URL is to get it from the
database (site-settings table). This should make it easier to pass the URL
around between the back-end and front-end.
commit 08a0a06152
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:53:20 2022 +0100
remove the filter search code from main.js file.
I moved it to filter-serach.js in a previous commit. This commit just gets rid
of it in the main.js file.
commit 0b32687251
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:50:43 2022 +0100
create filter-search.js file in /static/js directory.
This file contains the code for the filtering feature in pages.html and
archive.html -- a basic search feature which works by filtering the list of
entries on the page.
It was originally in main.js but I moved it here because it was producing errors
on pages which didn't have the filer stuff on the HTML template. This change
allows each template to call it when the template actually uses it.
commit fdc0b964e0
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:16:49 2022 +0100
implement back-end for update-search-url (defroute in web.lisp).
This feature is for updating the search-url used by this site to call out to the
Meilisearch service (which provides the search database for this website). It
doesn't touch or alter anything on the Meilisearch service/instance/server.
commit 3565fa9315
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:16:00 2022 +0100
implement update-search-url in nera package.
This enables the site's back-end to update the search-url slot in the
site-settings class and database.
commit 2f8c973761
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:15:38 2022 +0100
fix typo in site-settings.html template (search-url).
commit 189e87ae0a
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:29:39 2022 +0100
add Search URL section to /user/site-settings.html template.
This is just the front-end for this feature. The back-end has not been
implemented at the time of this commit.
commit 84d0885281
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:28:33 2022 +0100
add search-url section to initial-setup.html template.
This section allows users to point this website to the Meilisearch instance
which provides the search features of this site.
commit e9f679bece
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:00:48 2022 +0100
add search-url parameter to init-db function in nera package.
search-url is part of the site-settings class. It is used to help tell the
system which URL to use for the Meilisearch instance this website's search
features are utilising/calling out to.
commit eeabb843ce
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:00:15 2022 +0100
add search-url slot is site-settings class (site-settings.lisp).
commit 14750a6c0c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 04:38:02 2022 +0100
implement /danger/upload-snapshot defroute in web.lisp file.
I, also, replaced some 'logged-in' permission checks to 'administrator' in
several defroutes (mostly 'danger-zone' routes).
This is the back-end functionality which allows users to upload Snapshots (in
.zip files) to the /snapshot directory.
The route accepts multi-file uploads and ignores files which are not either a
.zip file or if a file has the same name as one of the Snapshots already in the
/snapshots directory.
Technically, the user can upload several files at once which are not .zip files
and the alert-message will relay a 'success' message, even when nothing was
added to the system. This is because the system is relaying the upload went
without errors and not how valid each file was. The system doesn't have anything
built-in which allows the multi-faceted alert-message approach to work.
Another thing to note here is the lack of checks for the contents within a .zip
Snapshot file. Basically, there isn't any. I am unsure how many moving parts are
going to be in these Snapshots in the future and hard-coding checks for
directories and file names seems a bit premature (maybe unpredictable?). The
HTML template responsible for dealing with the front-end of the Snapshot
features clearly state it is a 'danger zone' section of the site. So, there is
an expectation (hopefully) of 'if you don't know what you're doing, then don't
touch it'. Hello, person of the future. I was really wrong with that assumption,
wasn't I?
commit a490c50cf2
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 04:35:39 2022 +0100
implement store-snapshot in snapshot package.
This feature provides the ability to unzip a .zip file (the expected file format
users must upload Snapshots with) and store the contents of the .zip file in the
/snapshots directory.
commit baebd89329
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 04:33:19 2022 +0100
add mulit-file upload form to /danger/snapshots.html template.
This commit is just the front-end. The back-end, at time of this commit has not
been implemented.
The form allows users to upload 'Snapshots' to the website -- with the
intention of then restoring the website from that back-up.
commit b731aa06dd
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 02:33:48 2022 +0100
state incomplete feature alert in restored-snapsnot route.
This is to help me not forget to finish implementing this feature or understand
what is happening if/when I forget to finish it whilst trying it out.
commit 99e507e313
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 02:25:44 2022 +0100
start implementing /danger/restore-snapshot defroute (web.lisp).
The server needs to be restarted after restoring the website from a
Snapshot. This commit has code which establishes if the website is running on
localhost and informs the user to restart the server (most likely in SLIME)
manaully. If the website is running in prod. and using Systemd, the service will
need to be restarted that way (user doesn't have access to SBCL or SLIME in that
context). So, a Bash script will need to be written and that script will need
to be called using (most likely) utils:run-bash-command.
At the moment, I haven't got far enough into developing this website to have
established a Systemd service or running outside my local dev. machine. So, I
have left a TODO comment here stating the prod. side of the defroute is not
implemented yet.
commit 45dc9fc645
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 02:25:00 2022 +0100
implement restore-from-snapshot function in snapshot package.
commit ae51da0277
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 20:12:21 2022 +0100
refactor nera: call string-is-nil-or-empty? from validation package.
This is part of a multi-part commit to port the string-is-nil-or-empty? function
from the utils package to the validation package. The code has a lot of
'utils:string-is-nil-or-empty?' dotted around so this took a few commits to
port. There is a chance I've missed it in some obsure places so don't be
surprised if you see a future commit relaying something similar to this one.
commit 03bb7d7cee
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:10:17 2022 +0100
implement back-end for /danger/create-snapshot-download defroute.
This route zips up the specified Snapshot and moves it to the /storage/media
directory. I was originally planning of having the user download the Snapshot at
this point but I decided to change how this works.
I decided to go with the 'zip up a Snapshot and move it to /storage/media'
because I didn't want to re-implement the 'download' functionality outsite of
the /storage features. Maintaining two 'download' sections is not something I
want to be doing -- that is what the /storage section is for (sort out the
downloading). Doing this way, also, adds another chance place for the site's
data to be recovered from.
commit 7207043e2f
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:05:29 2022 +0100
update form action (create-snapshot-download) /danger/snapshots.html
I've changed the approach to how users deal with downloading Snapshots. Instead
of re-implementing the functionality for downloading files in the /storage
section of the site, the user now prep's the Snapshots (zips them up) and moves
them to the /storage/media directory. From there, users can download the zipped
file and I haven't had to re-implement or write additional code.
commit c9377824dc
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:04:53 2022 +0100
update restore-snapshot.png icon.
commit c38e9de548
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:03:43 2022 +0100
add zip package to ritherdon-archive.asd file.
Used for compressing/zipping up stuff -- most notably the Snapshots so they can
be moved to the Storage Files where users can download them.
commit 94b626c9fa
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:03:01 2022 +0100
add transfer.png icon to /static/images/icons directory.
commit 90650a8a5a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 00:24:57 2022 +0100
implement /danger/delete-snapshot defroute (back-end in web.lisp).
commit 0c652be9fc
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 00:24:39 2022 +0100
implement delete-snapshot function in snapshot package.
commit 782c9aee2c
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 00:19:25 2022 +0100
implement raw-directory-exists? function in storage package.
This differs from the other file/directory checks because it doesn't create a
directory when it can't find one (usual Common Lisp predicate behaviour with
files/directories).
commit e599377158
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:33:51 2022 +0100
refactor code in web.lisp (call from validation instead of utils).
This is the second part of porting string-is-nil-or-empty? from the utils
package to the validation package. The code between the validation and utils
package was already sorted in a previous commit. This commit to updates where
the web.lisp package calls it.
commit 0b2980f1d7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:31:49 2022 +0100
remove string-is-nil-or-empty? in utils and export it in validation.
This is a port I've been meaning to do for a while now; I just haven't got
around to it until now. This commit doesn't refactor the code in web.lisp to
call the ported code from validation -- it's just the first step in the port.
commit 0b53969783
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:17:14 2022 +0100
add 'raw directory' functionality to storage package.
This commit looks like it has more going on that is acutally does. The biggest
mis-directed blobs are the docstring comments I added to get-files-in-directory
and get-file-names. I just never got around to adding them until now.
I remove the format call in make-raw-path because I forgot to do so in another
commit. The code works with or without it which is why I missed it
previously. I'm removing here to clean the code up and before I get distracted
and forget.
The actual code which this commit is mostly for are the get-raw-directories and
get-directory-names. You shouldn't need to use these functions in the normal
operations of the site. They are mostly intended to be used for dealing with the
site's snapshots -- or any other directories outside of the /storage
directory. The snapshot management section of the site is part of the 'danger
zon' features -- hence the need to break-out of the usual '/storage directory'
features.
commit fdf43c2b01
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:14:55 2022 +0100
add snapshot data passed to template from /danger/manage-snapshots.
This data is just a list of the directory names for each snapshot stored in the
/snapshots directory -- only deals with HTTP GET here.
commit 2a456bcdc5
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:13:43 2022 +0100
add download, restore and delete controls to /danger/snapshots.html.
This is just the front-end. The back-end has not be implemented at time of
commit.
commit 89b4fbacee
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:12:56 2022 +0100
add restore-snapshot.png icon to /static/images/icons directory.
commit f57d6ef33c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 19:23:02 2022 +0100
implemented 'Disk Info.' feature on the back-end for /dashboard.
commit 26882cae6f
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 19:22:04 2022 +0100
add 'Disk Info.' section to /user/dashboard.html template.
This is just the front-end. The back-end (web.lisp) has not been implemented at
the time of this commit.
commit a292d245b7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 19:19:46 2022 +0100
add cl-diskspace package to ritherdon-archive.asd.
This package grabs disk information from the OS -- and can display it in human
readable form. Looking to create a 'Disk Info.' section on the dashboard page to
help users decide when they need to start deleting snapshot data or move to a
machine with a bigger disk.
At the time of this commit, no features have been implemented yet.
commit 254500cad7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:52:58 2022 +0100
update .gitignore to ignore the /snapshots directory.
This directory is created during the site's first run. This addition to
.gitignore stops the commit history from getting clogged up with irrelevant data
during development.
commit 2615dcb892
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:52:05 2022 +0100
minor edit to copy text in /user/site-settings.html template.
commit cba7675d3d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:51:39 2022 +0100
implement back-end for take-snapshot feature (web.lisp).
commit 943fc77d92
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:51:13 2022 +0100
add take-snapshot.png icon to /static/images/icons directory.
commit efbee61366
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:50:36 2022 +0100
add form for taking snapshot in /danger/snapshots.html template.
The back-end is not implemented at time of commit.
commit f629e3d750
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:27:11 2022 +0100
implement various 'raw' based functions in storage package.
The most notable ones are the 'copy' functions. The main intention here is to
provide the functionality needed by the snapshot package to help it take
programmatic snapshots of the website's data and database. At the time of
writing the 'restore from snapshot' functionality has not been implemented but
that is something these 'copy' functions will look to help with.
commit 8a9354f50f
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:24:08 2022 +0100
implement create-timestamp-text function in utils package.
This is a variation on the create-timestamp-id used for generating a
timestamp-id for the Meilisearch database. This text-based timestamp takes the
form of YYYY-MM-DD_HH-MM-SS. The main intention of this function is to use is as
part of a directory name when generating a snapshot (of the website's data/DB).
commit 704e87546e
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:21:30 2022 +0100
create /danger/snapshots.html template.
This is just the HTML template. The back-end (I.E. defroute in web.lisp) is not
implemented at the time of this commmit.
commit 250305e8b0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:20:14 2022 +0100
add link to /manage-snapshots in site-settings.html template.
This is part of the 'danger zone' section in the site-settings.html
template. The back-end for this feature is not implemented at the time of this
commit.
commit 736d12074f
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:17:24 2022 +0100
add snapshot.lisp, implement take-snapshot and stub-out restore.
I will add to this as I add more snapshot features into the main website
code (I.E. HTML templates and routes in web.lisp). At the moment, this package
is a little island right now and doesn't integrate into the rest of the website
at all.
commit 9ff9711af8
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:15:05 2022 +0100
add copy-directory package (quicklisp) and snapshot package to .asd.
copy-directory is a package on quicklisp to copy files using the OS's native cp
command (useful for taking snapshots/back-ups of directories). The snapshot
package is for copying directories (I.E. taking snapshots) in /storage and the
site's DB.
commit 5c90771bc4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:13:16 2022 +0100
delete schema.sql file (from /db).
It's never been and won't be used. It came as part of the 'make project' process
when generating a Caveman2 website -- just never got around to deleting until now.
commit 14586efa2a
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:21:06 2022 +0100
implement copyToClipBoard functionality (main.js).
This feature copies the selected file in /storage/media and builds it full
URL. The intention is to make it easier for users to copy the URL when the need
to paster it into one of the 'edit' pages (I.E. Pages and Archive sections) text
areas.
At the minute the code assumes its only copying and building URL for the files
listed on the 'Storage Index' page (/storage/manage defroute). If the website's
features expand in the future in this area, this function/feature will need to
be refactored.
commit 72d0352c79
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:19:38 2022 +0100
add popup section (copy text via JavaScript) in /user/storage.html.
This is just the HTML and CSS additions to the HTML template. The JavaScript has
not be implemented yet.
commit 1bec6e8034
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:16:44 2022 +0100
add thumbnail path for SVG file in build-thumbnail-path filter.
The file-type contains 'image' so the filter assumed it was a .png or .jpg and
the image wouldn't render when it was a .svg file. This additional check to the
filter makes sure the svg.png (stock image file) is used when a thumbnail is
used in a HTML template.
commit 416d55ce3c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:15:56 2022 +0100
update main.css (popup stuff for coping text via JavaScript).
commit 4c157b5fda
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:13:06 2022 +0100
comment out un-used code in build search url in search package.
I was going to start on making this function more robust and remove the
hard-coded nature of it but cleary I got distracted and never actually started
it. I know it will need to include the 'build-url' functions in the utils
package but until I get around to actually refactoring this function, I'm going
to leave the code commented out.
commit 7f463f8d71
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:12:39 2022 +0100
add copy.png to /static/images/icons directory.
commit a45747c7d8
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:51:13 2022 +0100
implement back-end for 'manage database entries' ('danger zone').
This includes the HTTP GET and HTTP POST requests (defroutes in web.lisp). This
is part of the 'danger zone' features because it can leave the website in an
un-recoverable state.
commit c958bc8621
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:49:57 2022 +0100
create and populate /danger/manage-db-entries.html template.
This template has the CSS and HTML already included with this commit. It's
usable but I'm guessing it will need tweaking when the site gets closer to going
into production.
commit 51a078c8c2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:49:09 2022 +0100
change 'Media Files' to 'Storage Files' (/danger/manage-files.html).
commit 757f3b0448
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:04:42 2022 +0100
implement the manage/delete files back-end features ('danger-zone').
commit 7fc8609aed
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:03:01 2022 +0100
create and populate the /danger/manage-files.html template.
The template is pretty much ready to go with this commit. CSS stuff and data
population already added.
commit f88686dcd1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:02:28 2022 +0100
add icons (/static/images) for 'delete' links and buttons.
commit fa70b7e290
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 21:59:04 2022 +0100
add 'danger zone' links in site-settings.html template.
Links point to sections for manaully deleting files in the /storage
directory (without database interaction) and deleting database entries (without
storage file interaction). These sections are marked as 'danger zone' because
they should be used carefully and only if the site's storage files and database
have become out-of-sync. with each other.
The back-end functionality has not been implemented yet.
commit 53b2289f7a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 21:58:20 2022 +0100
update main.css ('danger-zone' stuff).
commit 3f0b990832
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:54:41 2022 +0100
add error-refresh and reset-website images in /static/images/icons/.
commit 66b84f8de6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:50:44 2022 +0100
implement the /danger/reset-website defroute (back-end feature).
This feature deletes all the user created content stored in the /storage
directory, the website's database (so User Accounts) and wipes the
Meilisearch database clear of the Archive Entries stored in it.
This is part of the 'danger zone' features and intension is to allow the site's
Admin. to clear out the website and start with a fresh clean install.
commit 78298c08ee
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:48:49 2022 +0100
add remove-file-with-raw-path function in storage package.
This function is part of the 'reset website' feature implemention. You should
only need to call this when you want to delete something outsite of the /storage
directory (I.E. the website's database).
commit b0efc40a94
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:48:07 2022 +0100
add 'reset website' form to /user/site-settings.html template.
This is part of the 'danger zone' section in site's settings. The back-end for
this feature is not yet implemented.
commit 74a6507902
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 18:59:29 2022 +0100
implement the 're-populate search DB' functionality (web.lisp).
This feature is part of the 'danger zone' section in the site's settings. This
feature clears the Meilisearch database (with this site's Archive Entries) and
re-populates it with the data from this website's (nera) database.
commit 3f21282114
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 18:57:44 2022 +0100
update /user/site-settings.html template (initial 'danger zone').
This commit establishes the 'danger zone' in the site's settings page. This will
need to be added to over time. This commit set-ups the 're-populate search DB'
feature but the back-end is not yet implemented.
commit 7771f966a1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 18:56:19 2022 +0100
update main.css ('danger zone' styling).
This is just a initial addition for the 'danger zone' section of the site.
commit 0596972877
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 17:16:33 2022 +0100
implement 'repopuluate meilisearch DB' functionality (in search).
The main feature is the repopulate-database function which clears out the
Meilisearch DB index containing this site's searchable information and
repopulates it with the site's nera.db information.
I, also, added a delete-index function (also in search package) but that is
mostly a convenience feature. It allows me to quickly delete any index in the
Meilisearch DB which I made by mistake (E.G. wrong name, change of plan) and
remove old indexes from other projects which are no longer in use (on local
dev. machine mostly).
commit a046d21dbb
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 17:15:31 2022 +0100
add redirect from /sitemap to /sitemap.xml in web.lisp (defroute).
This is just a 'catch-all' defroute.
commit 50a76f56ba
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 01:42:51 2022 +0100
add robot.txt file to the /static directory.
I'm sure I will need to update this at some point. I didn't spend too much time
on it, just jotted things down as a I came across routes in web.lisp. The
Sitemap URL will need to change, the closer the site goes into production and an
domain name has been bought/finalised.
commit 862b55ec23
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 01:42:13 2022 +0100
implement /sitemap.xml defroute in web.lisp file.
commit 5f040b642d
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 01:39:14 2022 +0100
implement build-url and build-url-root functions in utils package.
These functions are mostly aimed at the site's XML-generated site map. The piece
together the site's URL from lack's request struct. I don't know if there is a
pre-built string containing this information (I.E. http://localhost:5000 and
http://localhost:5000/testing) which is why I have written these functions.
commit 3cfb5d4331
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 20 23:31:29 2022 +0100
add birthday-cat.png to insert-dashboard-cat function (view.lisp).
A little Easter Egg...
commit e336640fa0
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 20 23:14:52 2022 +0100
update quicklist sections in archive-entry.html and page.html.
Replaced the 'View Entry' link with an edit entry link instead.
commit ad58e02f5c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:35:57 2022 +0100
add older/newer entries section to archive-entry.html template.
commit d6b7e031e7
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:35:34 2022 +0100
update main.css (mostly for listing older/newer archive entries).
commit 2b4336bced
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:34:51 2022 +0100
add older/newer archive entries to data returned from /view/archive.
commit a4486ad168
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:34:00 2022 +0100
add get older/newer archive-entries in nera package.
I, also, change the order to 'created-at' for getting all archive-entries.
commit bb7396d95e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 13:56:10 2022 +0100
fix add-storage-file regression bug (database and file different).
When uploading a file to /storage the database stored the un-formatted name and
the file was stored with the formated name. This meant when anyone tried to
download or rename the file, the website would produce an error. This commit
fixes this and has the database and file storage system store the files name in
the formatted way (all lowercase with no whitespace).
commit 2515803ce0
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:49:54 2022 +0100
update quick-search.js (minor URL and CSS changes).
This file has been in the repo. for a while -- I copied it over from my co-web
project. But, I hadn't touched it or integrated into this website until
now. The changes in this commit are mostly minor changes which bring the URL's
for the Meilisearch instance this website connects to and change the CSS classes
to match the ones used in this project (and not my co-web) project.
commit 6d60cfa86a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:48:30 2022 +0100
update full-search.js (mostly CSS classes).
Because I copied over the code from my co-web project, the code in this file has
CSS classes referring to that project. This commit updates those classes to fall
in-line with the CSS/design of this website.
commit c0ca6c8aa2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:47:46 2022 +0100
update search.css (remove co-web code).
I will need to update this as I go along. I copied the code over from my co-web
project so the webpages have been rendering with that style/design until
now. This commit has removed as much of it as possible and added/updated the
style rules to fall in-line with the design of this website.
commit f23b9b8a85
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:45:40 2022 +0100
update full-search.css (removed rules for co-web project).
I will need to update this as I go along. I copied the code over from my co-web
project so the webpages have been rendering with that style/design until
now. This commit has removed as much of it as possible and added/updated the
style rules to fall in-line with the design of this website.
commit 89283b7cf7
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:45:17 2022 +0100
add 'quick search' section to archive-entry.html template.
commit 07d6607e88
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:44:27 2022 +0100
add 'quicklist' and 'quick search' sections to page.html template.
commit 554084f05a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:44:08 2022 +0100
remove some HTML from search.html template.
commit d2005080b2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:41:58 2022 +0100
apply indentation formatting to /layouts/default.html template.
I was faffing in this file and had Emacs do a quick re-indentation (with
web-mode) enabled. I don't think I have touched this file since installing
web-mode.
commit 2d862e29e2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:39:45 2022 +0100
add 'update'ranking-rules' func. to search package.
This allows you to change the order the search results are returned in. The main
purpose why you would want to use this function in this context is to make sure
the list of results is ordered by the year the artworks where published/created.
commit 73c4a1cd16
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 21:33:57 2022 +0100
update main.css (mostly image sizing in article body).
commit ac402d333d
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 21:31:55 2022 +0100
add quick-list section to templates/archive-entry.html template.
This will need updating. I copied over a quick-list section from another
template. I'm off home after this commit (got one more commit to enter after
this). Thought I would get something in before I left, though.
commit 55df7b5161
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 21:17:13 2022 +0100
simplify templates/archive-entry.html template (remove entry dates).
commit 3ff07064a6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:50:43 2022 +0100
add 'Publish' date section to /user/edit-archive.html template.
commit 833b125f46
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:49:03 2022 +0100
add 'Publish' date section to /user/create-archive.html template.
Only 'Month' and 'Year' are used because 'Day' is not relevant -- at time of
writing. You might see an change to this form in a later commit if requirements change.
commit c9733d5f94
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:47:40 2022 +0100
remove database Created/Updated At info. from archive.html template.
commit 7931d33588
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:46:45 2022 +0100
update main.css (input for 'Publish' date mostly).
commit b874b3e742
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:45:09 2022 +0100
update archive-entry HTTP POST request (include 'publish' date).
The publish date refers to when the artwork was publish which differs from the
'Created At' date. That refers to when the entry was added to the database.
commit b750649cb2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:43:52 2022 +0100
replace 'Created At' timetamp with 'Month' and 'Year' (search.lisp).
'Month' and 'Year' refer to the artworks publish date.
commit 36f396b0da
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:41:57 2022 +0100
add publish month and year arg's to create-archive-entry func.
This update is in the nera package. It is part of a refactoring of functionality
to have a seperate 'Publish' date and a 'Created At' date within this site's
database. The 'Created at' date refers to when the entry was added to the
database. The 'Publish' date is the date of the artwork.
commit 37ec669980
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:40:54 2022 +0100
add (publish) month and year to archive-entry class (archive.lisp).
This is mostly for the Meilisearch database. This addition will mean it's stored
in this site's database, though.
commit 2300c9413a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 18:33:49 2022 +0100
update HTML in archive-entry.html and archive.html templates.
commit a697b09462
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 18:32:12 2022 +0100
fix link styles in main.css file.
Default links were changed in previous commit and had a knock-on effect to some
stylised links.
commit eba62e0925
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:56:34 2022 +0100
update main.css (filter controls for 'Index' pages mostly).
I updated the CSS for links (a tags) too.
commit e6a1b4287f
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:56:17 2022 +0100
add filter controls to pages.html template (HTML, CSS and JS).
commit a610b52ba6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:55:49 2022 +0100
add filter controls to archive.html template (HTML, CSS and JS).
commit 6db73aac52
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:48:53 2022 +0100
add filter list code to main.js file.
This code is intended to be used mostly in the 'index' pages (Pages and
Archive). These pages are mostly going to act as a back-up for when the
Meilisearch service goes down or if the user has a poor internet
connection. This filtering behaviour allows the user to filter the entries in
the Index they are viewing (Pages or Archive). There are no images and no
repeated calls back to the server. Each index lists just the text (Titles,
publish info. Etc.) and from there the viewer can filter the results on the
page by entering text into the text box in the Index-base HTML templates.
From Nic's point-of-view, these Index pages will not be included in the
nav. menu but if the Meilisearch service goes down (at this site is still
operational), she can swap out the 'search' page for these (really it's just the
Archive Index) so people can still have some form of search/filtering ability
whilst viewing the website.
commit 1bb0a92d39
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:48:32 2022 +0100
add footer tag to footer.html template.
commit e548ba7993
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 14 21:51:43 2022 +0100
update CSS and HTML in /templates/sign-up.html template.
commit bf007601ea
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 14 21:51:02 2022 +0100
fix grammar mistake in /templates/user/edit.html template.
commit f74ae90e02
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:01:36 2022 +0100
update artchive-entry.html template.
Starting to add extra HTML and CSS tags and rules. This is just the start to
building out this template.
commit bb4fbe1a00
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:01:15 2022 +0100
update main.css (front-end archive entry).
commit 146901fa80
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:00:38 2022 +0100
set site title dynamically in index.html template.
commit d4ab83ef7a
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:00:00 2022 +0100
clean-up code in web.lisp and view.lisp files.
commit 94122e7741
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 20:18:00 2022 +0100
tidy-up code and leave comment in /edit/archive about Meilisearch.
This defroute doesn't change anything relevant in the Meilisearch DB so it
doesn't need updating. I've left a comment (mostly for future me) to remind me
not to think I've missed a defroute and try to integrate the Meilisearch stuff
into it.
commit f38e0aef42
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 20:11:57 2022 +0100
integrate Meilisearch into edit keywords functionality (web.lisp).
commit 5d853592bf
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 19:57:03 2022 +0100
integrate Meilisearch into /rename/archive-entry defroute.
The defroute to update the thumbnail doesn't need to change but I added a
comment to make it clear in the future -- I can see me forgetting it doesn't
need updating and try to add code which doesn't need to exist.
I, also, did a bit of updating to the layout of the code is parts -- mostly when
setting the alert message.
commit e90de5e31a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:12:31 2022 +0100
add 'Search' as hard-coded URL in '/' and update delete Arch. Entry.
The re-direct to /search when the user has set /search as the site's home page
is part of a list of other hard-coded re-directs in this site's '/' defroute.
The site now deletes the Archive Entry from the Meilisearch database alongside
the files in the /storage directory and the nera database.
commit 6e4da8dc26
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:08:53 2022 +0100
implement set-filter-attributes, delete-all-entries and create-dump.
These functions are helper functions to manage the Meiliseach database from
a Common Lisp perspective. The intention is to work them into the website's
back-end so the user can reset or re-populate the database from the website
without me (or someone else) having to SSH into the VM and do fix/restore things
manually. For now, they allow you to manage the database from SLIME.
commit d488b56780
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:08:13 2022 +0100
add 'Search' to hard-coded links in site's nav. menu.
commit 0f2067742a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:07:39 2022 +0100
add 'Search' page to init-db function in nera package.
commit 5287e9858e
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 16:29:40 2022 +0100
change month number to name when adding archive entry to search DB.
This change is so the refinements on the seach page shows the month names
instead of thier numbers. This is because most people tend to work with month
names and not numbers in this context.
commit 6389480260
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 16:27:47 2022 +0100
create month-number-to-name function in utils package.
This is a helper function to convert '1' to 'January', for example. The intended
use for this is to work alongside the local-time package when generating the
month number from a timestamp.
commit ad65e0fca1
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:48:40 2022 +0100
add 'title' attribute to links in /user/archive.html template.
commit 4d5a9b7f0c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:40:35 2022 +0100
update /layouts/header.html template with new CSS rules.
This commit makes the header (site's name and logo) a link which points back to
the site's "/" (I.E. Home page/route). It, also, centralises the header and the
navigation menu (in the header). This is so the header doesn't look weird when
viewed on a mobile phone.
I removed the <hr> at the bottom of the file because the site has enough styling
applied to it to make the <hr> look out of place now. I can clearly
denote/identify where the site's (front-end) header and footer stops and starts.
commit 82192113c0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:40:15 2022 +0100
update main.css (front-end header stuff).
commit 990eb22f6d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:39:52 2022 +0100
remove <hr> from /layouts/footer.html template.
commit 6a5b6ea838
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:15:05 2022 +0100
fix day-of-week timestamp bug in insert-dashboard-cat filter.
I didn't realise the local-time system set 'Sunday' to '0' in its
timestamp-day-of-week function. I thought it was '7'. This commit changes the
check for '7' to '0' and adds a few comments to help identify which days the cond
form is checking against.
commit ad0954e319
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:12:31 2022 +0100
add Meilisearch JavaScript and CSS files.
These files are provided by the Meilisearch project. This commit is larger than
usual because of this. The CSS files are copied over from my personal website's
repository so they will need modifying going forward. I've added them here as a
starting point.
commit 0aef87a949
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:10:26 2022 +0100
create the search.html template (for Meilisearch).
This page is populated in this commit but is broken because it requires several
JavaScript files which have not be committed to the repository as of yet. This
commit is in preparation of adding those files.
commit c2788c43af
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:07:44 2022 +0100
integrate the search package into create archive route in web.lisp.
The site now populates the Meilisearch database when the user creates an archive
entry. The Meilisearch needs to be set-up manually at this moment in time so
expect this to break easily if you haven't got Meilisearch working.
commit 04c79732f7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:05:19 2022 +0100
create search.lisp file and add to ritherdon-archive.asd file.
I copied most of this over from my personal website's repository. So, there are
bits of code which look a bit out of place in this context. With that said, the
code does run and just needs to be integrated in the defroutes in web.lisp.
commit cff6bfc1ee
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:21:07 2022 +0100
fix rendering errors in 'title' values (/user/pages.html template).
commit 295ed248c9
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:20:47 2022 +0100
update default favicon.png and site-logo.png files.
commit e705aa67e4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:19:50 2022 +0100
update main.css -- mostly for initial-setup.html template.
commit a834f54a13
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:12:54 2022 +0100
update initial-setup.html template -- massive overhaul.
I've removed the 'extends' blocks and built a completely seperated template from
the rest of the website. The template was not rendering properly because certain
parts of the website had not been set-up yet so the complete isolated template
was/is required.
I've, also, added extra options for the user to set during this first run
process which will be processed by the back-end. I've not put much work into
adding validation checks because it is a one-time thing (this page). You'll need
access to the server anyway -- at this point -- so a bit of manual correction of
mistakes will be easy to achieve. Deleting the database will be enough to
trigger the first run process again.
commit 324229dea4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:11:24 2022 +0100
modify init-db func. in nera package.
This is part of a refactoring to allow the user to set more settings in the
initial set-up/first run process.
commit d35ae529db
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:10:41 2022 +0100
add power.png image to /static/images/icons directory.
commit eb7435f720
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:49:39 2022 +0100
add checks to make sure uploaded files are images in site-setting.
The conditions are added to the 'Site Logo' and 'Favicon'
sections/defroutes. The checks are to make sure a user doesn't try to set an MP4
file as the site's favicon or site's logo.
commit 85b0d8da9e
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:48:22 2022 +0100
add hints to various sections in /user/site-settings.html template.
These are just blocks of <p> tags to help explain what the various settings do
in each section.
commit b9493fb138
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:48:11 2022 +0100
fix typo. in main.css.
commit 7bd5f1dd02
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:29:20 2022 +0100
update main.css (section controls for dashboard).
commit 78cf655f5d
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:19:53 2022 +0100
update HTML and CSS in /user/site-settings.html template.
I did a lot of re-arranging of the settings alongside adding CSS and HTML stuff
to template in-general.
commit 3d24084e24
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:18:56 2022 +0100
add 'administrator' checks to /user/edit.html template.
Some links were being shown to non-administrators. This check fixes that.
commit 7b1a80333c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:18:30 2022 +0100
update main.css (site-setting stuff).
commit 3274456906
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:17:37 2022 +0100
fix typo. when calling set-alert when enabling sign-up option.
commit cedab101f1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:18:51 2022 +0100
update icons for 'Manage Account' links/buttons.
This is across several HTML templates but they are minor changes so it
should be easy enough to follow when viewing the commit's diff.
commit a522701b58
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:10:29 2022 +0100
update /user/index.html (HTML and CSS).
commit 9d19cdcea9
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:10:09 2022 +0100
add 'quicklist' section to /user/edit.html template.
commit 2a7e133d7e
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:09:48 2022 +0100
update main.css (user account stuff).
commit c8de64382f
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:09:06 2022 +0100
add all-accounts.png and create-account.png images.
commit d64ae60c26
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 13:01:45 2022 +0100
update /user/edit.html template (split 'edit' form into two).
This update seperates the form previous version of the template (for updating
the user's display name and password) into two. This is because of a change in
the back-end defroutes. It's makes it easier on the back-end to update the
password and display name seperately with different HTTP POST requests (and HTML
form data).
commit 76450d3414
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:59:07 2022 +0100
seperate /user/edit route (HTTP POST) into two.
There are now two HTTP POST routes which update either the user's display name
or password.
commit 949cee862c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:56:19 2022 +0100
refactor insert-dashboard-cat filter (view.lisp).
Changes the time conditions used to display the various cat icons in
the dashboard; And, fix a bracket-bug (closed a condition block too early).
commit ea4520e7d4
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:04:32 2022 +0100
update /user/edit.html template (CSS and 'delete account' form).
commit e688c55cd9
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:03:06 2022 +0100
adding padding to alert message container in main.css.
The alert message was rendering under the dismiss button when viewed
on a small (phone) screen. The extra padding makes sure the message
remains clear of the button.
commit 9430942cb5
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:01:21 2022 +0100
update /user/delete defroute: add 'type username input check'.
When the user wants to delete their account they must now enter their
username as part of the form they submit. This is so they don't
accidently delete thier account.
commit 6c65b9c5a0
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:00:50 2022 +0100
add delete-account.png icon.
commit 661bbbd121
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 11:15:14 2022 +0100
update main.css file (log-in form stuff mostly).
commit 2730bbaaa1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 11:14:40 2022 +0100
apply CSS classes to /user/login.html template.
commit 10e354fc9d
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 6 19:43:37 2022 +0100
update .gitignore and default assets (storage file after first run).
The default assets were part of the list in .gitignore so the site would produce
errors during the site's initial first run set-up. I've quickly added the files
to the repository but they will need work done to them because the files are
empty and the wrong default images. This commit is done from my computer in the
flat so the files added were to just fix the errors.
commit ff86cb159a
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:46:46 2022 +0100
reduce the amount of recent files returned with /dashboard defroute.
commit 91321b26ec
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:37:46 2022 +0100
replace dashboard profile img. with insert-dashboard-cat filter.
commit 130a6d3061
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:34:42 2022 +0100
implement insert-dashboard-cat filter (view.lisp).
This filter is builds the path for the dashboard profile image. The
path points to a different icon in the /images/icons directory
depending on what time and day it is.
There is no major functionality addition with this code. It just a
little sprinkle of cuteness for the user of the site.
commit 318cf88f73
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:33:02 2022 +0100
add profile (dashboard) cat icons.
These images are will be displayed alongside the user's display name
on the dashboard. There are several images because different ones will
be displayed at different times of the day and week.
commit 7b24fdca1c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:32:06 2022 +0100
add alert type values to all set-alert functions called in web.lisp.
This update sets the alert type which adapts the alert message's
background colour and image to the type of message the alert is
relaying to the user.
commit 0795a67f86
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:30:04 2022 +0100
move /user/edit link out of administrator check in dashboard.html.
Non-administrator's will now be able to see the 'Account Details' link
when viewing the /dashboard page. It was a mistake I hadn't caught.
commit 5212a9b985
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:29:21 2022 +0100
add CSS and JavaScript code to alert message section in header.html.
commit a7aff4b828
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:28:33 2022 +0100
change site-side-menu.js script element to main.js in default.html.
commit fad642822a
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:28:07 2022 +0100
update main.css (alert message styling).
commit d446834565
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:25:29 2022 +0100
rename site-side-menu.js to main.js.
Because the amount of JavaScript I've written, it doesn't make sense
to separate things out into their own files yet. So, I've renamed the
file to main.js and will add the little sprinkles of JavaScript
here. If the amount of JavaScript grows, I will need to move things
out of here but that is a future problem.
commit 2e1e5b59d5
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:22:53 2022 +0100
expand alert message types in set-alert function (utils package).
Been meaning to do this for a while but never got around to it.
commit 9df8e363c9
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 08:04:37 2022 +0100
update dashboard.html template (add thumbnails to Storage section).
commit 5782362136
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 08:01:47 2022 +0100
add 'quicklist' section to multiple HTML templates.
This is a multi-file commit because the code is essentially the
same. Each HTML template has either had a 'quicklist' section added or
had links added to it.
'Quicklist' is just a section with a collection of links to other
parts of the website based on the context of the page/user's current
location.
commit d791b04449
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 08:00:37 2022 +0100
update main.css (mostly fixing rows with thumbnails in).
commit c89d1653a9
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 07:08:01 2022 +0100
modify the rel. URL for the images in build-thumbnail-path filter.
commit e33ac9af0a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 07:03:38 2022 +0100
add /storage/thumb/media/:slug defroute (re-added).
I think I had a version of this route but I deleted it -- can't
remember if it wasn't needed or didn't work as intended at the
time. Anyway, this commit makes it part of the code-base (again).
The function provides the website to use the automatically generated
thumbnails -- when a user uploads the an image to /storage/media --
instead of the full-sized image. This should help reduce download
times if a list of uploaded image are several Mega Bytes and being
viewed at once -- like an index page for example.
commit 426d404593
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:19:02 2022 +0100
update HTML in /user/edit-page.html template.
commit 5ef81ba4f3
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:18:49 2022 +0100
update HTML in /user/edit-archive.html template.
commit b6aec7c5ea
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:18:34 2022 +0100
update HTML in /user/create-page.html template.
commit afaa7268ad
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:18:15 2022 +0100
update HTML in /user/create-archive.html template.
commit 006bd652af
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:17:28 2022 +0100
apply minor formatting changes to /user/storage.html template.
commit 009e0103b8
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:16:32 2022 +0100
update main.css -- mostly focus on forms for editing pages/archive.
commit d7bbb9ecf2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:14:54 2022 +0100
code clean-up in web.lisp (old comments, formatting and slugify).
commit db4393ddac
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:13:47 2022 +0100
implement update-single-nav-menu-item in nera package.
This function is so the user can add/remove a single page from the
nav. menu whilst editting the page.
commit 09e44a6364
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:13:18 2022 +0100
add save.png icon to /static/images/icons directory.
commit 936d9034c8
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:46:18 2022 +0100
end-of-session commit -- update main.css file.
commit e15b2299ad
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:42:41 2022 +0100
apply CSS classes to /user/archive.html and /user/pages.html files.
Both files are basically the same with minor changes in classes and
HTML tags. Commited both files at the same time because of this.
commit ecfb667c67
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:42:07 2022 +0100
clean-up and remove unused code (HTML templates).
commit e33575c74c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:41:01 2022 +0100
update main.css (mostly index pages listing/title section).
commit fa9bb8cfb2
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:54:38 2022 +0100
minor padding change for be-gui-link class.
commit b4a34c102a
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:39:35 2022 +0100
delete site-logo.png and favicon.png files from /static/images.
These files are generated during the website's first-run process. They
don't need to be a actual hard-coded part of the repository. The way
the site is set-up, the user will either stick with the
defaults (generated on first-run) or upload their own personal files.
commit d305d4c110
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:38:23 2022 +0100
update /user/storage.html template (mostly CSS updates).
commit 1551e3fc1b
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:37:47 2022 +0100
update /user/dashboard.html template (mostly for CSS updates).
commit 7a6353635b
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:36:53 2022 +0100
update main.css -- focus on dashboard.html and storage.html.
commit 61e8ef91f8
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:34:29 2022 +0100
refactor file upload storage routes -- regarding thumbnails.
The automatically generated thumbnails are no longer stored in the
database. They are created, updated and deleted alongside it's main accompanying
image -- as a file in the /storage/media directory.
commit eddedc891d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:33:17 2022 +0100
adjust relative URL for images in build-thumbnail Djula filter.
commit baed98ce7a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 1 08:04:40 2022 +0100
fix bug when creating thumbnail whilst uploading a file to /storage.
commit 4647323fda
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 08:37:05 2022 +0100
add storage, pages and archive entries to dashboard.html template.
The route in web.lisp calls the recently created 'get latest'
functions in the nera package. The code is web should be fine but the
dashboard.html stuff is buggy and so is the back-end routes for
uploading deleting file in the /storage section of the website. This
is an end-of-session commit, though, so the bugs will have to be fixed
at a later time.
commit 3b49fbf6e0
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 08:35:37 2022 +0100
update dashboard.html template (start expanding the Storage part).
This code is buggy but it is a start. This is an end-of-session commit
hence the buggy state being left as it is.
commit c27ecb9853
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 08:33:53 2022 +0100
add get latest editted 'X' functions in nera package.
These functions haven't not been used much so I don't know how
reliable they are in their current forms. Expect some work needed on
them in the future.
commit 75e05cc4aa
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:37:11 2022 +0100
update main.css (back-end dashboard buttons and gui-links).
commit 87f0e81258
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:36:51 2022 +0100
update /user/dashboard.html template (CSS and icons).
commit dd7796fb4e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:36:26 2022 +0100
update /layouts/header.html template (CSS and icons).
commit 01bacffa19
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:35:56 2022 +0100
update several of the icons in /static/images/icons.
commit 9a2c933667
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:34:48 2022 +0100
add loads of icons (.png) and rename a few of them.
commit 7b6cde549b
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:37:07 2022 +0100
move alert section to header.html and get side-menu working.
I move the alert section to the /layouts/header.html template because
it was easier to get it to render between the logged-in user's site
header and the site's 'normal' header.
The site's side-menu (for logged-in users) still needs stuff adding to
it -- and tweaking -- but the base style, layout and whatnot is in
place.
commit dcd1e76d0e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:36:15 2022 +0100
re-organised /layouts/default.html and remove 'alert' section.
The alert section will be moved to /layouts/header.html.
commit e844408d86
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:34:44 2022 +0100
remove hard-coded '2018' in footer, prints current year (copyright).
commit 0dc9c91795
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:33:09 2022 +0100
update .gitignore to ignore favicon and site-logo in /static/images.
These files are set during the site's first run and are personal to
the deployment. The repo. has no need to track these files.
commit f4bf0ba511
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:30:22 2022 +0100
add icons in /static/images and static/js/site-side-menu.js file.
commit 51d564fff8
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:28:35 2022 +0100
update .gitignore to include files in /static directory.
I've moved/changed how I was using the /static directory (site-wide
snippet) so I can start adding in images and what have you again. I
didn't realise I had set Git to ignore the how /static directory.
commit 8c60ac6031
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:26:07 2022 +0100
start adding style rules for site side-menu section in main.css.
This is just a start. I will need to add to this.
commit f60b09bbdd
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 01:02:27 2022 +0100
add 'success' optional parameter to set-alert in update nav. menu.
I think I will need to swap out the string value 'success' with a
constant so things aren't as stringly-typed as this. With that said,
this is just a quick proof-of-concept. I can keep this around until I
build out this updated feature some more.
commit a7eb3240bf
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 01:01:18 2022 +0100
add optional parameter to set-alert function in utils package.
This is so I can define what type of alert message I want the server
to send... and include the cat images I found.
commit fda81fbb82
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 01:00:48 2022 +0100
add safe filter to alert message in /layouts/default.html template.
commit a72e133f13
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:24:08 2022 +0100
update / (site's index page) route and nav. menu update feature.
I hard-coded redirects to the pages which can't be deleted into the
site's index ('/' route). This allows them to be set as the home page
in the site's settings.
I, also, updated the data which is passed to
nera:update-nav-menu. This change is part of the Nav. Menu settings in
the site's settings.
commit 9a30da1a44
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:22:38 2022 +0100
refactor update-nav-menu in nera package.
The function now loops through the values passes to it and sets the
'enable-nav-menu- column in the database for the currently selected
page in the loop.
commit 0a302c2a77
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:20:27 2022 +0100
refactor /user/site-settings.html template (nav. menu updates).
The nav. menu section sends a hidden value if a check box isn't
selected. This is in preparation for implementing the back-end part of
this feature.
I, also, removed the if-statements when selecting the home page in the
'Home Page' settings. Again, this in preparation for adjusting the
back-end functionality for this feature.
commit f814aef20d
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:19:07 2022 +0100
update delete button in /user/pages.html template (incorrect value).
commit 84f3ede736
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:42:02 2022 +0100
refactor site-setting route to get snippets from /storage/snippets.
commit a76f837eea
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:41:38 2022 +0100
add insert-snippet functionality to djula:view package.
commit a1d1042d4c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:40:12 2022 +0100
update first-run code -- refactor site-wide snippet file.
commit e0a1bf7cb1
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:37:19 2022 +0100
update /layout/default.html template (prep. for snippets update).
I'm changing the snippet to be stored as HTML instead of
JavaScript. I'm, also, storing the snippet in /storage/snippets
instead of /static. This makes it easier to hook it up to my Umami
instance in the future if Nic wants to do that.
commit 4156b0eee0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:05:49 2022 +0100
remove single file upload route and refactor multi-upload route.
commit e8831de9f4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:04:58 2022 +0100
update URL for images in build-thumbnail-path djula filter.
commit 4b5831452d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:04:28 2022 +0100
add thumbnail to /archive.html template.
commit bb35111dc9
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:01:18 2022 +0100
remove single file upload from dashboard and storage HTML templates.
From an end-user perspective, I don't think Nic will care about the
difference. She'll want the easiest option and uploading a single file
via the multi-upload form -- with no file name input -- is the easiest
way to go about this. I say this without actually speaking to her
about this so I might be wrong on this and need to go back in and
change things.
commit 44bdec6570
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 20:07:55 2022 +0100
implement the /edit/archive defroute -- updates the entries text.
commit fb8f68e468
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:59:53 2022 +0100
implement the edit archive keywords functionality (web.lisp).
commit c313b4aff4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:59:33 2022 +0100
update keyword form in /user/edit-archive.html template.
commit e53a2990c0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:46:09 2022 +0100
refactor update archive thumbnail functionality (change file name).
The code now removes the old thumbnail file, stores the new one and
updates the database entry. I found it easier to keep track of the
changes whilst developing by doing this.
commit 81a0fb8e40
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:44:27 2022 +0100
update /user/edit-archive.html (prep. for title and keywords).
commit 7328a719fe
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:25:37 2022 +0100
implement the edit archive thumbnail functionality (web.lisp).
This does not include the Meilisearch integration. That will come in
later commits after I've got the base behaviour for the website sorted
out.
commit 82e8428695
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:23:51 2022 +0100
refactor and remove code regarding the /storeage routes in web.lisp.
I removed old 'format' function called, changed file checks from using
the files on disk to the database.
commit ca4a540141
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:21:43 2022 +0100
edit /user/edit-archive.html template (thumbnail section).
This is preparation for implementing the update archive entry
thumbnail functionality in the web.lisp file.
commit 379bbdc8b4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:20:05 2022 +0100
implement update-archive-entry-property in nera package.
commit 8d55ed7d61
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 15:53:59 2022 +0100
refactor /storage (I.E. get files) routes and /edit/archive/:slug.
I added a new route to get files from the /archive directory but
needed to expand on the original /storage/view/:slug route so I could
seperate out the two (/storage/media and /storage/archive)
directories.
I added a check to make sure the archive entry
requested (/edit/archive/:slug) exists and return a 404 if it doesn't.
commit c69c165a92
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 15:53:15 2022 +0100
add edit thumbnail section to /user/edit-archive.html template.
commit 57a6710e92
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:22:02 2022 +0100
block out the route for editing an archive entry (end-of-session).
I'm going home after this commit. I've blocked out the routes I need
to work on when I get back to this -- so I know where I am with it.
commit 93a59aaad4
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:18:23 2022 +0100
implement /edit/archive/:slug defroute (HTTP GET request).
commit 02df53e7f4
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:17:18 2022 +0100
add and block out /user/edit-archive.html template.
I still need to add a section for managing the archive entries
thumbnail but the basics are in place.
commit f205dc3252
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:16:54 2022 +0100
remove old code from /user/edit-page.html template.
commit eb9d2e3290
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:57:10 2022 +0100
implement /archive/delete/entry defroute (HTTP POST request).
commit ee336d3c83
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:56:35 2022 +0100
implement delete-archive-entry in nera package.
commit f89585ab46
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:56:01 2022 +0100
update form to delete archive entry in /user/archive.html template.
commit bba7cf4499
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:04:49 2022 +0100
implement the /view/archive/:slug route and add archive-entry.html.
commit a7d0ae54ad
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:42:48 2022 +0100
finish implementing the /create/archive-entry (without search).
I have left out the Meilisearch integration because I won't to get the
base behaviour sorted before I start integrating Meilisearch into the website.
commit 5542014a1e
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:41:58 2022 +0100
sort out code layout in view.lisp file.
commit baf1ec1f39
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:38:37 2022 +0100
add format-filename and format-keywords in utils package.
These functions are to help with standardising on the naming formats
when storing files and keywords (for Meilisearch database). The
asciify and slugify functions are not enough. They either leave spaces
in the file names or the file extension gets lost in the standardising
process. Going forward, file names should look like
'this-is-an-example.png' instead of either 'this is an Example.png' or
'this-is-an-example-png'.
commit 3dc6a812bf
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:34:35 2022 +0100
reorder file load order in ritherdon-archive.asd file.
I was getting errors when trying to quickload the system because a
custom djula filter (defined in view.lisp) couldn't find one of the
specific ritherdon-archive packages/files. I can't remember which one
because I made the change earlier in the day and didn't commit the
change at the time.
commit 7d9e29bac8
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:25:24 2022 +0100
add the /user/create-archive.html template.
This is a rough but working copy. This is part of an end-of-session
commit.
commit 5cc14f74bf
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:24:00 2022 +0100
create /user/archive.html and /arctice.html templates.
Both templates aim to list out all the archives stored in the
system. The /user/archive.html template, also, includes admin/back-end
features like edit and delete links/controls.
commit c42d169d84
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:20:54 2022 +0100
begin implementing CRUD routes for /archive section (web.lisp).
This is part of an end-of-session commit. I'm currently working on the
/create/archive-entry section (most the HTTP POST request). I still
need to start the view archive, edit archive and delete archive
parts. I've not even looked at the Meilisearch stuff. For now, the aim
is to get the website's main database (nera.db) working and then
integrate the Meilisearch stuff in after that.
commit 23365343b1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:19:20 2022 +0100
update dashboard.html template (add archive links and upload forms).
commit ffd483411c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:15:41 2022 +0100
start implementing the CRUD functions for the /archive routes.
I still need to write the edit and delete functions (I.E. the 'U' and
'D' in 'CRUD') to have a basic CRUD system in place for this
section. I'm commiting this as an part of an end-of-session commit,
hence the partical amount of work done.
commit 58b03ae8f2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:13:44 2022 +0100
add create-time-stamp-id function in utils package.
The only intended use for this function is to generate an Id. number
which will be used in the Meilisearch database and linking it to
Nera's database (I.E. this site's main database).
commit c1e664b631
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:13:09 2022 +0100
remove unused code from archive-entry class.
commit eff71bcbfe
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 18:19:44 2022 +0100
import archive package to nera package.
commit d6cc11dc03
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 18:17:11 2022 +0100
create archive package, archive-entry model and add to .asd file.
This is a rough sketching out of what the model/data needs to look
like. This model is what will be connecting the site's archive (Nic's
artwork entries) with the Meilisearch service -- running alongside
each other. I don't know how much this model is going to change but
expect it to in future commits.
commit 6a67a7cfc7
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:55:30 2022 +0100
add thumbnail features to delete and rename storage file routes.
commit 80aab44c00
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:40:20 2022 +0100
refactor 'create thumbnail' code in web.lisp to call from utils.
I've applied the changes to the singe and multi upload defroutes.
commit 592c38759f
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:39:28 2022 +0100
move create-thumbnail code to utils (reduce duplicated code).
commit 13d1e31c13
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:19:19 2022 +0100
rafactor /storage/view route and add a route/process for thumbnails.
When uploading a file, a thumbnail is made (if an image, using the
Image Magick program with Bash). This file is not stored in the
database. It is a file-system only thing. The reason for adding this
is some I can create HTML templates/defroutes which show a list of the
images in /storage/media without saturating the viewers bandwidth.
commit 2c069573db
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:14:23 2022 +0100
update /user/storage.html template to use build-thumbnail filter.
I, also, removed code made redundant by build-thumbnail filter.
commit 44c7ebbc90
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:13:46 2022 +0100
add @build-thumbnail (djula) filter in view.lisp file.
commit 6d8fa33b97
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:13:26 2022 +0100
remove get-latest-file-type code from storage package.
commit a15619de56
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:12:38 2022 +0100
add woo server to ritherdon-archive.asd file.
Added it so I can switch between hunchentoot and woo whenever I
want. No real reason to choose one over the other at the moment.
commit 7a6f330497
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 22 21:28:54 2022 +0100
begin defroutes for viewing files in /storage/media.
I need to work on this functionality a bit more. This is an end of
session commit. Started it and it works but needs expanding.
I could do with adding file-type checks and changing 'octet/stream' to
something like 'image/png' depending on the file-type (storage in
DB). This will stop the browser from downloading every file in
/storage/media and allow the files which can be viewed in the
browser (like images).
commit 104ac264a8
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 22 21:07:59 2022 +0100
change /storage routes to use slugs over filenames (HTTP POST).
commit 4c99109388
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 22 21:07:34 2022 +0100
export delete-storage-file from nera package.
commit 1cf86c674c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:35:05 2022 +0100
end-of-session-commit: working on /storage/delete/:slug defroute.
Need to test it and make sure the logic in the various 'cond' sections.
commit 191f5b2c22
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:34:46 2022 +0100
add delete-storage-file function in nera package.
commit 0331999136
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:07:26 2022 +0100
refactor code calling get-storage-file and add storage/rename route.
commit f3d856f7f4
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:05:29 2022 +0100
add keyword args to get-storage-file and write rename-storage-file.
These changes are in the nera package. I, also, got Emacs to auto
format the file -- that is why is are loads of line changes in the diff.
commit b9848197e7
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:25:47 2022 +0100
add storage-upload defroutes (single and multiple) in web.lisp file.
commit d0ff0c812b
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:23:25 2022 +0100
update storage and dashboard HTML templates (add & get features).
commit 953bfc5fb0
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:21:54 2022 +0100
implement the 'add and get' functionality for storage routes.
commit f5549e17a1
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:21:00 2022 +0100
add files package (in /src/models and ritherdon-archive.asd file).
commit 6e7d2b6845
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:35:51 2022 +0100
put copyright text in <p> tags (in footer.html template).
The text was wrapped in anything and was rendering weirdly in the
browser's inspector.
commit 0ce1aef3e4
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:34:44 2022 +0100
change how site-wide-snippet file is stored and accessed.
The site-wide-snippet file is now a .js file and stored in /static/js
after the website's first run.
commit 63e3919970
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:33:15 2022 +0100
update .gitignore to ignore site-wide-snippet.js in /static/js.
This file is copied to here on website's first run. This stops any
changes I make to the file during dev. time from clogging up the
commit history.
commit 015eda2b0a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:11:35 2022 +0100
initial steps for /storage/management defroute.
This is an end-of-session commit. I've got the route up and running
with the /user/storage HTML template rendering in the browser and
listing out the files in storage. I could do with adding a model and
storing the files meta-data in the database. This page could do with
rendering the images and placeholders (E.G.generic text file icon) for
non-image files.
commit a89686c05f
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:58:16 2022 +0100
add file uploads section to /user/dashboard.html template.
commit c4f9f52ba8
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:57:45 2022 +0100
add /storage/upload defroutes (single and multi file uploads).
commit a855d9db90
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:54:53 2022 +0100
refactor store-file functions to include more file types.
The original code was very ham-fisted in how it dealt with storing
files -- based on their file-types. The changes made here improves on
it and the store-file (for both raw and /storage paths) functions now
accepts more file types because of it.
commit 8106b5a5c5
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:53:41 2022 +0100
rename site-settings function to get-site-settings in nera package.
The function call 'site-settings' was clashing with class and package
name 'site-settings'.
commit d31c4ab38a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:27:38 2022 +0100
remove old defroutes.
commit f626557b97
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:21:10 2022 +0100
add system-data to data passed to the HTML GET routes in web.lisp.
System-data is a collection of the system settings and page data in
the database. It minimises the function calls in the defroute macros.
commit 2bb7d053e6
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:19:33 2022 +0100
clean up old and unused code in HTML templates.
It was getting out of hand and difficult to navigate around the pages
when viewing them in the browser.
commit e9792a6fa0
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:18:55 2022 +0100
import archivo in main.css file.
commit 4c1b99fa08
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:17:40 2022 +0100
add pages in init-db and write system-data func. in nera package.
commit e765c3b24e
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:16:38 2022 +0100
add and populate header and footer HTML templates.
The HTML is basic, just to get the sections to a usable state.
commit 9b8c5a7ca5
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:16:20 2022 +0100
add archivo font.
commit bb5f8fb482
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:13:33 2022 +0100
update web.lisp, mostly around site settings and first-run set-up.
commit 2f819de9a2
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:12:14 2022 +0100
add init-storage process and 'raw-path' I/O functions.
commit f78beb7ea4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:11:14 2022 +0100
add CRUD features for 'page' table in DB and expand init-db process.
commit 161e9c6169
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:09:54 2022 +0100
remove old code and update forms in /user/site-settings.html file.
commit d0426a9494
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:07:45 2022 +0100
add form for /page/set-nav-menu defroute in /user/edit-page.html.
I, also, changed templated data to use 'db-data' element in databag
passed to the djula HTML template.
commit 7e2f04d370
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:07:23 2022 +0100
add can-delete check to /user/pages.html template.
commit aacfcba654
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:06:46 2022 +0100
add favicon link to /layouts/default.html template.
commit 9a50938c0d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:06:07 2022 +0100
implement get-image-dimensions function in utils package.
commit 4bac1e3db3
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:05:26 2022 +0100
add enable-site-logo and site-name slots to site-settings class.
commit 6ecd555712
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:04:55 2022 +0100
addd validation.lisp and pages.lisp files to ritherdon-archive.asd.
commit e3471e82ea
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:03:14 2022 +0100
update .gitignore to ignore /static/images and /site-wide-snippet.
These files will be created and populated via the site first-run
set-up process. This should stop the commit history getting clogged up
with needless and irrelevant changes in these files.
commit 4736db9bd2
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:02:06 2022 +0100
add validation package.
commit e4612d0711
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:01:37 2022 +0100
create pages package and page class (for Mito to map to DB).
commit b26b296e89
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:45:47 2022 +0100
stubb out sections in site-settings.html (not implemented yet).
The sections are more a check-list at this point. Things I need to
implement. I've stubbed them out and going to call it a day. They HTML
I've used is rough but it give me something to work on next time I
work on this project.
commit 94e326a292
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:19:02 2022 +0100
expand the site-settings.html template.
This is template still needs a lot of work done to it. The additions
in this commit focus on the set home page and enable/disable the
sign-up features.
commit 7e892f25b1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:18:35 2022 +0100
add {{content}} section to index.html template.
commit d9e09c52f6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:16:20 2022 +0100
add site-settings functionality in web.lisp file.
This is work-in-progress for the site-settings section of the
website. These additional features in this commit focus on setting
home page and enabling/disabling the sign-up features.
commit f1c79a9ecd
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:15:38 2022 +0100
add integer-to-checkbox djula-filter (view.lisp).
commit eb62ade5be
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:14:39 2022 +0100
add condition check to checkbox-to-bool and remove bool-to-checkbox.
commit 6d4d16ec45
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:13:50 2022 +0100
implement update-enable-sign-on-settings and set-home-page in nera.
commit bfcef81763
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:10:58 2022 +0100
add home-page slot to site-settings class.
commit cb51a83605
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 15:04:00 2022 +0100
implement /page/delete defroute and update redirects to /user/pages.
commit 45ef9fa84a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 15:03:03 2022 +0100
add role check and update 'pages' link in /user/pages.html template.
commit b9180da6e2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 14:07:04 2022 +0100
implement /pages and /view/page/:slug defroutes in web.lisp file.
commit f4744f14b7
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 14:04:47 2022 +0100
update links to /page and /pages and add HTML templates.
The templates added allow the viewer to view the 'pages' individually or
as a list (index page of 'pages' basically).
commit 1c6781c945
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:27:47 2022 +0100
implement the 'edit pages' functionality in web.lisp file.
commit d6d5a58792
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:27:08 2022 +0100
add /user/edit-page.html template.
This HTML template is very rough -- just basics to make it
operational.
commit f0356b00f0
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:25:55 2022 +0100
add /user/pages.html template.
This template displays a list of pages stored in the system in the
/storage directory. It is very rough -- only bare basics to get the
page operational.
commit 681033b1cd
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:25:23 2022 +0100
add /pages link to /user/dashboard.html template.
commit 6b09c3e81c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:51:51 2022 +0100
update .gitignore to ignore the /storage directory.
This is so the data/pages/files/content used for testing the website
don't get mingled with the code-base.
commit 3937b626e8
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:50:43 2022 +0100
finish implementing the /create/page defroute (HTTP POST).
commit a477470a90
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:48:16 2022 +0100
remove 'meta-data' from create-page.html template's HTML form.
This is prep. for getting a working version of the /create/page
defroute. My thinking at the minute is the logged in user can create a
'page' which is a page specific to the website and a 'post' of some
sort for an actual archive entry. I don't know how desirable or
feasible this design/approach is but I'm trying it to find out.
commit 3dbb603831
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:46:14 2022 +0100
add slugify function to utils package.
This replaces white spaces in a string with a hyphen ('-'). I prefer
file names to be stored with no white space, which is where I intend
to use this function the most.
commit 6fce318c87
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:44:36 2022 +0100
add storage package, copied from other proj. so already implemented.
commit 9e308ab92e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:16:00 2022 +0100
add /user/create-page.html template and integrate Tinymce editor.
The code in this commit is very rough but it works. I just got the
basics up and running. The template posts the content but the back
isn't implemented yet. At this moment in time, I need Nic to sign-off
on what she wants from this page. There is a chance this template
might not exist in the future.
commit 9222d347fd
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:14:27 2022 +0100
add /user/site-settings.html template.
The code at the moment is very rough. I've only got the 'Enable
Sign-Up' section set-up (front-end). The back-end part is not done yet .
commit 6c80f146f3
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:12:23 2022 +0100
add Tinymce (rich text editor) files to /static/js directory.
Tiny: https://www.tiny.cloud/
Doc's: https://www.tiny.cloud/docs/tinymce/6/
commit 875bd28841
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:11:19 2022 +0100
add logout, delete account and create page links to dashboard.html.
commit bdd86d4ad7
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:10:54 2022 +0100
add Sign-up link to index.html template.
commit 11e5e6a08e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:08:32 2022 +0100
create (and initial content) for /user/index.html template.
The code in here is for the site's administrator to see a list of all
the users with an account with edit and delete options. There is,
also, a section to create new users (non-admin. accounts).
commit 19bbba0f3e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:06:14 2022 +0100
add username check to /sign-up defroute.
Just an extra check in amongst what's already there. If the username
the new sign-up attempt has entered matched one already in the
database, a message is relayed stating as much and redirects back to
the sign-up page.
commit 9724eda5fd
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:04:46 2022 +0100
add more functionality for user management (admin. and normal).
I forgot to add this to the previous commit.
commit 793c5d544b
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:02:05 2022 +0100
add admin. functions for 'users' section and create /site-settings.
The site's admin. can now create and delete accounts of all other
users. The admin. can, also, change the other passwords of the other
users.
commit 7349c4b9f5
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:01:14 2022 +0100
remove unused code and reformat some comments in web.lisp file.
commit 1e26f1ea8d
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 18:59:45 2022 +0100
add get-all-users function and change arg's to &key for update-user.
commit 68792eac19
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 18:58:32 2022 +0100
add alert message data to "/" defroute.
commit d025b5d0a0
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:23:37 2022 +0100
start to add functionality for signing new users up.
commit 428a0a6ba7
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:20:44 2022 +0100
add functionality for dealing with site-settings (table in DB).
I've added some helper functions to help with creating a database,
making sure its tables exist, too.
commit 3596a696db
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:18:28 2022 +0100
create initial-setup.html template.
commit 177521aa34
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:16:24 2022 +0100
add bool to checkbox convertion funcitons to utils pacakge.
The functions are helper functions for when dealing with
SQLite3. Because SQLite3 doesn't have a Boolean data-type, I have to
store the 'true' and 'false' values as integetes.
0 == false
1 == true.
commit 9a665c5c4e
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:15:38 2022 +0100
create and wire-up site-settings model and package (for DB).
This model is used by mito to create a table in the database.
commit 7e84b86291
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 18:29:10 2022 +0100
refactor functions moved from auth to nera and update init-db setup.
The update part refers to the redirect when a database is found whilst
making a HTTP POST request, as part of the init-db
process (A.K.A. website's first run procedure).
The auth to nera change is because I didn't catch all of the moves in
a previous commit. The image I was running at the time still had the
auth version so it wasn't showing any errors. I spotted this one when
trying to run a new image.
commit a4d3f35306
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:11:49 2022 +0100
add alert section to default.html template.
commit 249f86b88e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:11:34 2022 +0100
add link to /dashboard in index.html template.
commit 777458ee37
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:11:07 2022 +0100
code clean-up in some HTML templates.
commit 25142d5049
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:04:51 2022 +0100
refactor web package to use auth, util and status-code packages.
The web package was already using code from some of these
packages. This commit moves some of the code in the web package into
one of the various referenced packages and also has 'web' utilise the
new features in those pacakges also.
The biggest shift is in how the alert-messages are handled (store in
ningle:*session* across HTTP requests) and how auth. is handled --
mostly the redirects functionality.
commit e6162306ef
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:03:29 2022 +0100
add alert-message functions in utils package.
These functions just make it easier to set, get and reset the
alert-message in the ningle:*session* variable.
commit 89ad7fb269
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:03:10 2022 +0100
code formatting in db package.
commit b469063f74
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:02:30 2022 +0100
remove code I moved to the nera package from auth package.
commit bf8b79021e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:00:44 2022 +0100
export define-constant macro in app-constants.
The main reason is so the constants defined in the status-codes
packages can use it. I've put the (HTTP) status codes in their own
package because they are a self-contained thing. I find it easier to
work with them this way.
commit 0941922f57
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 04:58:58 2022 +0100
add nera and status-codes packages.
nera is responsible for the database stuff which is not part of
Caveman2. The status-codes package is a list of constants representing
the various HTTP status codes -- with an explanation of what they are for.
commit 490a79a356
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:49:41 2022 +0100
add log-in and start account setting functionality.
commit 2aaefdbf5e
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:48:25 2022 +0100
add or update HTML templates (all based around user/accounts).
These are very rough templates but they serve as a way to get the
logged-in user stuff functionality started.
commit 3b6afd8a4a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:46:54 2022 +0100
add password slot to user class.
I was having trouble trying to get hermetic and mito-auth to work
together. I decided to just use normal mito and leave hermetic to the
authentication/authorisation stuff.
commit 7e32795392
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:46:00 2022 +0100
re-organise bits of the code (mostly packages are references).
commit e6ef8bec34
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:43:38 2022 +0100
rename authentication to auth (file and package).
'Auth' doubles up as authentication and authorisation. It reads better
from that perspective.
commit c8074c821b
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:28:47 2022 +0100
make back-up copy of cookie cutter code, for reference.
There was snippets of code in the code I liked. I'm going to keep it
around for a bit to see if I can work some of it in to the new
code. I'm most interested in the deployment code.
commit d6dbcf7ec4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:27:52 2022 +0100
create Caveman2 project (using Caveman2's project generator).
commit 51d2213aae
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:23:58 2022 +0100
delete site stubbed out with the cookie cutter app.
I tried it and I find it easier to work with Caveman2. I didn't
realise this templating program is built around Hunchentoot -- whereas
Caveman2 builds on top of. So, I'm moving the code to back to Caveman2
-- where I originally started. It looks like a waste of time but the
knowledge of having a look at the other stuff has been helpful.
commit 9c251a1698
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:23:10 2022 +0100
update licence.
commit 6257e7ec94
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 22:18:51 2022 +0100
add create-user.sh script.
This script adds a user to the database based on it's inputs (prompted
for the person running the script). The intention is to add a user to
the database easier (especially on a live production server with just
the CLI).
commit f5403b6cc2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 22:17:43 2022 +0100
populate user class.
This should have been in the previous commit. I forgot to add it.
commit ff0c121e63
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 22:16:55 2022 +0100
create user class and add to database table.
commit c5ba5b1e4b
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 19:18:16 2022 +0100
switch Fiveam to parachute (testing framework).
There is no immediate or obvious reason for the change. I just prefer
to work with parachute.
commit 8d52eaf0a6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 19:14:15 2022 +0100
update .gitignore (databases and /bin directory).
commit 7d3d3e57d5
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 19:09:43 2022 +0100
create Caveman2 project using vindarel's cl-cookieweb program.
https://github.com/vindarel/cl-cookieweb (for GitHub Repo. and
instructions).
The reason for using this is because it makes it easier to run the
website as a standalone thing. You don't need to link it up to
Quicklisp's /local-project directory. It has scripts to help you build
the binaries and to run the website (as a standalone) thing. I, also,
hadn't use this 'cookie cutter' program before so it's a good time to
get my feet wet.
commit 3177d956f1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 18:37:18 2022 +0100
go back to using Common Lisp and Caveman2.
The admin. backend for Django isn't as easy to get to where I want it,
compared to Caveman2. The trade-off is Common Lisp isn't a mainstream
language so it does reduce the level of ease other might have when/if
they join the project.
commit ee1bf2f927
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 9 02:40:08 2022 +0100
create Django project.
The files included here are just the ones created with the
django-admin CLI.
commit 851980f784
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 9 02:39:24 2022 +0100
copy a Python-base template into .gitignore.
commit 24b396d47b
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 9 02:34:39 2022 +0100
delete caveman2 (initial install) code.
I'm going to try this with Python and Django first. Because it's not
my personal project, it might be better to use a language which is
more mainstream. It should reduce the 'Bus Factor'.
Squashed commit of the following:
commit 2256d28850
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 19:15:09 2022 +0000
update README.org file.
commit 97293d886d
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:43:00 2022 +0000
remove unused hostname check from quick-search.js file.
This is old code essentially and is no longer used.
commit ada40dec58
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:41:45 2022 +0000
update apiKey for live meilisearch service.
commit 66b64edc2a
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:40:38 2022 +0000
update robots.txt (site's URL).
This URL is intended to be a temporary one until Nic decides on the final domain
name.
commit e5c95b77dc
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 18:35:44 2022 +0000
rename README.markdown to README.org and add install/sys info.
commit d12b76f87a
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 16:02:43 2022 +0000
update .conf and .service files for meilisearch instance.
I fixed typo's and added placeholders (E.G. '<INSERT USERNAME HERE>') in places
where you need to add your own data which is used on your server/system.
commit 5a667149a2
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 16:00:58 2022 +0000
update .conf and .service files for main site (ritherdon-archive).
I fixed a typo's and put placeholders (E.G. '<INSERT URL HERE>') in places you
need to put your own data when deploying to your system.
commit 1b9f3e673e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Nov 18 15:59:53 2022 +0000
update makefile (remove systemd and nginx stuff, focus on install).
commit 707d469ded
Author: Craig Oates <craig@craigoates.net>
Date: Thu Nov 17 18:05:10 2022 +0000
update makefile.
commit 5c7782439a
Author: Craig Oates <craig@craigoates.net>
Date: Thu Nov 17 17:04:33 2022 +0000
add nginx .conf and systemd .service files for meilisearch.
These files are an untested. I just added them to get the ball rolling with
them.
commit 4914f3a9bc
Author: Craig Oates <craig@craigoates.net>
Date: Thu Nov 17 16:44:18 2022 +0000
create nginx .conf and systemd .service files.
These will need tweaking. The most notable one being the nginx .conf file. The
website's URL hasn't been decided yet.
commit 6283918323
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 23:43:53 2022 +0100
update makefile.
commit bf407e66bb
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 22:36:59 2022 +0100
fix typo in makefile.
commit 500c25abfb
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:31:21 2022 +0100
add makefile with basic functionality.
This is just an initial commit of the file. I will need to add to this as I get
this website close to production-ready status.
commit ca5fc4e9fc
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:27:45 2022 +0100
comment out the 'covert' function in storage package.
This is tag-along code from porting the storage package over from another
project. It's never got in the way so it's never caused any errors -- hence no
deletion/dealing with it until now. I've commented it out with the intention of
deleting if no use for it develops as it the site gets closer to going into
production.
commit b99e4b95f9
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:22:49 2022 +0100
intern stuff with '#:' in ritherdon-archive pack. and change to woo.
The first part is just a minor change to get Emacs to indent the defpackage
stuff in an orderly fashion.
The second part refers to the 'main' function. I've changed the server it
uses/specifies from Hunchentoot to Woo. I've been using Woo throughout
development so I'm more confident with the system using that when it goes into
production. The 'main' is used, instead of 'start' when running the website as a
systemd service on the production server.
commit 757698a7bc
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 29 20:18:18 2022 +0100
intern packages in ritherdon-archive.asd file (default as strings).
I used Caveman2's project maker and it adds packages, systems, exports Etc. with
strings. I changes how they were called here by replacing the string-quotes with
'#:'. It annoys me how Emacs indents/aligns the system and package stuff in a
wonky way when you don't use '#:'. I finally had fed-up with it and changed
it. Overall, this is a minor change.
commit 15cc041700
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 16:38:41 2022 +0100
update /layouts/header.html template (reduce size of site header).
The <a> tag would stretch across the top of the page and it made it hard to
click in an 'empty' space on the page. It was, also, confusing when the page
would change to the home page when you were not paying attention whilst clicking.
commit 973523c01f
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 16:32:36 2022 +0100
update main.css (hover state for 'danger zone' links/buttons).
commit ccc4398a52
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 00:11:53 2022 +0100
remove/comment out search code (JS files) which declare 'serverURL'.
Because the code now establishes the 'server' variable in the various HTML Djula
templates (grabbed from the database). The code which generates the old 'server'
variable and it's data has been commented out or deleted.
commit b89dfd828f
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 00:10:27 2022 +0100
change serverURL to just server (fixes typo -- couple of templates).
This is just a typo fix. I put 'serverURL' in places and hadn't
realised. 'serverURL' should say 'server'.
commit d8ecc23079
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 28 00:00:29 2022 +0100
create 'server' variable (for search) in page and search templates.
This variable contains the URL for the Meilisearch instance this site calls out
to. It is grabbed from this site's database and passed to the Djula templates
providing Meilisearch-based features. The 'server' variable is called here so
it's easy for the dev. to see how and when it's called.
commit 124252070e
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:57:54 2022 +0100
insert filter-search.js scripts into pages and archive templates.
The filter code was moved to its own file and these two files utilse that
code. So, these templates now must call them. The reason for moving the code out
is to stop the browser's console printing errors -- because the filter JS code
was trying to run on pages which didn't have the correct HTML.
commit 55f12b3f5b
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:54:09 2022 +0100
refactor build search URL feat. in search package (site-settings).
I've left the old code as a comment just in case I need to reverse course. The
new way the function gets the (Meilisearch )search URL is to get it from the
database (site-settings table). This should make it easier to pass the URL
around between the back-end and front-end.
commit 08a0a06152
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:53:20 2022 +0100
remove the filter search code from main.js file.
I moved it to filter-serach.js in a previous commit. This commit just gets rid
of it in the main.js file.
commit 0b32687251
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:50:43 2022 +0100
create filter-search.js file in /static/js directory.
This file contains the code for the filtering feature in pages.html and
archive.html -- a basic search feature which works by filtering the list of
entries on the page.
It was originally in main.js but I moved it here because it was producing errors
on pages which didn't have the filer stuff on the HTML template. This change
allows each template to call it when the template actually uses it.
commit fdc0b964e0
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:16:49 2022 +0100
implement back-end for update-search-url (defroute in web.lisp).
This feature is for updating the search-url used by this site to call out to the
Meilisearch service (which provides the search database for this website). It
doesn't touch or alter anything on the Meilisearch service/instance/server.
commit 3565fa9315
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:16:00 2022 +0100
implement update-search-url in nera package.
This enables the site's back-end to update the search-url slot in the
site-settings class and database.
commit 2f8c973761
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 23:15:38 2022 +0100
fix typo in site-settings.html template (search-url).
commit 189e87ae0a
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:29:39 2022 +0100
add Search URL section to /user/site-settings.html template.
This is just the front-end for this feature. The back-end has not been
implemented at the time of this commit.
commit 84d0885281
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:28:33 2022 +0100
add search-url section to initial-setup.html template.
This section allows users to point this website to the Meilisearch instance
which provides the search features of this site.
commit e9f679bece
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:00:48 2022 +0100
add search-url parameter to init-db function in nera package.
search-url is part of the site-settings class. It is used to help tell the
system which URL to use for the Meilisearch instance this website's search
features are utilising/calling out to.
commit eeabb843ce
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 27 22:00:15 2022 +0100
add search-url slot is site-settings class (site-settings.lisp).
commit 14750a6c0c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 04:38:02 2022 +0100
implement /danger/upload-snapshot defroute in web.lisp file.
I, also, replaced some 'logged-in' permission checks to 'administrator' in
several defroutes (mostly 'danger-zone' routes).
This is the back-end functionality which allows users to upload Snapshots (in
.zip files) to the /snapshot directory.
The route accepts multi-file uploads and ignores files which are not either a
.zip file or if a file has the same name as one of the Snapshots already in the
/snapshots directory.
Technically, the user can upload several files at once which are not .zip files
and the alert-message will relay a 'success' message, even when nothing was
added to the system. This is because the system is relaying the upload went
without errors and not how valid each file was. The system doesn't have anything
built-in which allows the multi-faceted alert-message approach to work.
Another thing to note here is the lack of checks for the contents within a .zip
Snapshot file. Basically, there isn't any. I am unsure how many moving parts are
going to be in these Snapshots in the future and hard-coding checks for
directories and file names seems a bit premature (maybe unpredictable?). The
HTML template responsible for dealing with the front-end of the Snapshot
features clearly state it is a 'danger zone' section of the site. So, there is
an expectation (hopefully) of 'if you don't know what you're doing, then don't
touch it'. Hello, person of the future. I was really wrong with that assumption,
wasn't I?
commit a490c50cf2
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 04:35:39 2022 +0100
implement store-snapshot in snapshot package.
This feature provides the ability to unzip a .zip file (the expected file format
users must upload Snapshots with) and store the contents of the .zip file in the
/snapshots directory.
commit baebd89329
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 04:33:19 2022 +0100
add mulit-file upload form to /danger/snapshots.html template.
This commit is just the front-end. The back-end, at time of this commit has not
been implemented.
The form allows users to upload 'Snapshots' to the website -- with the
intention of then restoring the website from that back-up.
commit b731aa06dd
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 02:33:48 2022 +0100
state incomplete feature alert in restored-snapsnot route.
This is to help me not forget to finish implementing this feature or understand
what is happening if/when I forget to finish it whilst trying it out.
commit 99e507e313
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 02:25:44 2022 +0100
start implementing /danger/restore-snapshot defroute (web.lisp).
The server needs to be restarted after restoring the website from a
Snapshot. This commit has code which establishes if the website is running on
localhost and informs the user to restart the server (most likely in SLIME)
manaully. If the website is running in prod. and using Systemd, the service will
need to be restarted that way (user doesn't have access to SBCL or SLIME in that
context). So, a Bash script will need to be written and that script will need
to be called using (most likely) utils:run-bash-command.
At the moment, I haven't got far enough into developing this website to have
established a Systemd service or running outside my local dev. machine. So, I
have left a TODO comment here stating the prod. side of the defroute is not
implemented yet.
commit 45dc9fc645
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 25 02:25:00 2022 +0100
implement restore-from-snapshot function in snapshot package.
commit ae51da0277
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 20:12:21 2022 +0100
refactor nera: call string-is-nil-or-empty? from validation package.
This is part of a multi-part commit to port the string-is-nil-or-empty? function
from the utils package to the validation package. The code has a lot of
'utils:string-is-nil-or-empty?' dotted around so this took a few commits to
port. There is a chance I've missed it in some obsure places so don't be
surprised if you see a future commit relaying something similar to this one.
commit 03bb7d7cee
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:10:17 2022 +0100
implement back-end for /danger/create-snapshot-download defroute.
This route zips up the specified Snapshot and moves it to the /storage/media
directory. I was originally planning of having the user download the Snapshot at
this point but I decided to change how this works.
I decided to go with the 'zip up a Snapshot and move it to /storage/media'
because I didn't want to re-implement the 'download' functionality outsite of
the /storage features. Maintaining two 'download' sections is not something I
want to be doing -- that is what the /storage section is for (sort out the
downloading). Doing this way, also, adds another chance place for the site's
data to be recovered from.
commit 7207043e2f
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:05:29 2022 +0100
update form action (create-snapshot-download) /danger/snapshots.html
I've changed the approach to how users deal with downloading Snapshots. Instead
of re-implementing the functionality for downloading files in the /storage
section of the site, the user now prep's the Snapshots (zips them up) and moves
them to the /storage/media directory. From there, users can download the zipped
file and I haven't had to re-implement or write additional code.
commit c9377824dc
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:04:53 2022 +0100
update restore-snapshot.png icon.
commit c38e9de548
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:03:43 2022 +0100
add zip package to ritherdon-archive.asd file.
Used for compressing/zipping up stuff -- most notably the Snapshots so they can
be moved to the Storage Files where users can download them.
commit 94b626c9fa
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 02:03:01 2022 +0100
add transfer.png icon to /static/images/icons directory.
commit 90650a8a5a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 00:24:57 2022 +0100
implement /danger/delete-snapshot defroute (back-end in web.lisp).
commit 0c652be9fc
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 00:24:39 2022 +0100
implement delete-snapshot function in snapshot package.
commit 782c9aee2c
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 24 00:19:25 2022 +0100
implement raw-directory-exists? function in storage package.
This differs from the other file/directory checks because it doesn't create a
directory when it can't find one (usual Common Lisp predicate behaviour with
files/directories).
commit e599377158
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:33:51 2022 +0100
refactor code in web.lisp (call from validation instead of utils).
This is the second part of porting string-is-nil-or-empty? from the utils
package to the validation package. The code between the validation and utils
package was already sorted in a previous commit. This commit to updates where
the web.lisp package calls it.
commit 0b2980f1d7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:31:49 2022 +0100
remove string-is-nil-or-empty? in utils and export it in validation.
This is a port I've been meaning to do for a while now; I just haven't got
around to it until now. This commit doesn't refactor the code in web.lisp to
call the ported code from validation -- it's just the first step in the port.
commit 0b53969783
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:17:14 2022 +0100
add 'raw directory' functionality to storage package.
This commit looks like it has more going on that is acutally does. The biggest
mis-directed blobs are the docstring comments I added to get-files-in-directory
and get-file-names. I just never got around to adding them until now.
I remove the format call in make-raw-path because I forgot to do so in another
commit. The code works with or without it which is why I missed it
previously. I'm removing here to clean the code up and before I get distracted
and forget.
The actual code which this commit is mostly for are the get-raw-directories and
get-directory-names. You shouldn't need to use these functions in the normal
operations of the site. They are mostly intended to be used for dealing with the
site's snapshots -- or any other directories outside of the /storage
directory. The snapshot management section of the site is part of the 'danger
zon' features -- hence the need to break-out of the usual '/storage directory'
features.
commit fdf43c2b01
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:14:55 2022 +0100
add snapshot data passed to template from /danger/manage-snapshots.
This data is just a list of the directory names for each snapshot stored in the
/snapshots directory -- only deals with HTTP GET here.
commit 2a456bcdc5
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:13:43 2022 +0100
add download, restore and delete controls to /danger/snapshots.html.
This is just the front-end. The back-end has not be implemented at time of
commit.
commit 89b4fbacee
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 21:12:56 2022 +0100
add restore-snapshot.png icon to /static/images/icons directory.
commit f57d6ef33c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 19:23:02 2022 +0100
implemented 'Disk Info.' feature on the back-end for /dashboard.
commit 26882cae6f
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 19:22:04 2022 +0100
add 'Disk Info.' section to /user/dashboard.html template.
This is just the front-end. The back-end (web.lisp) has not been implemented at
the time of this commit.
commit a292d245b7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 19:19:46 2022 +0100
add cl-diskspace package to ritherdon-archive.asd.
This package grabs disk information from the OS -- and can display it in human
readable form. Looking to create a 'Disk Info.' section on the dashboard page to
help users decide when they need to start deleting snapshot data or move to a
machine with a bigger disk.
At the time of this commit, no features have been implemented yet.
commit 254500cad7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:52:58 2022 +0100
update .gitignore to ignore the /snapshots directory.
This directory is created during the site's first run. This addition to
.gitignore stops the commit history from getting clogged up with irrelevant data
during development.
commit 2615dcb892
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:52:05 2022 +0100
minor edit to copy text in /user/site-settings.html template.
commit cba7675d3d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:51:39 2022 +0100
implement back-end for take-snapshot feature (web.lisp).
commit 943fc77d92
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:51:13 2022 +0100
add take-snapshot.png icon to /static/images/icons directory.
commit efbee61366
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:50:36 2022 +0100
add form for taking snapshot in /danger/snapshots.html template.
The back-end is not implemented at time of commit.
commit f629e3d750
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:27:11 2022 +0100
implement various 'raw' based functions in storage package.
The most notable ones are the 'copy' functions. The main intention here is to
provide the functionality needed by the snapshot package to help it take
programmatic snapshots of the website's data and database. At the time of
writing the 'restore from snapshot' functionality has not been implemented but
that is something these 'copy' functions will look to help with.
commit 8a9354f50f
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:24:08 2022 +0100
implement create-timestamp-text function in utils package.
This is a variation on the create-timestamp-id used for generating a
timestamp-id for the Meilisearch database. This text-based timestamp takes the
form of YYYY-MM-DD_HH-MM-SS. The main intention of this function is to use is as
part of a directory name when generating a snapshot (of the website's data/DB).
commit 704e87546e
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:21:30 2022 +0100
create /danger/snapshots.html template.
This is just the HTML template. The back-end (I.E. defroute in web.lisp) is not
implemented at the time of this commmit.
commit 250305e8b0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:20:14 2022 +0100
add link to /manage-snapshots in site-settings.html template.
This is part of the 'danger zone' section in the site-settings.html
template. The back-end for this feature is not implemented at the time of this
commit.
commit 736d12074f
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:17:24 2022 +0100
add snapshot.lisp, implement take-snapshot and stub-out restore.
I will add to this as I add more snapshot features into the main website
code (I.E. HTML templates and routes in web.lisp). At the moment, this package
is a little island right now and doesn't integrate into the rest of the website
at all.
commit 9ff9711af8
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:15:05 2022 +0100
add copy-directory package (quicklisp) and snapshot package to .asd.
copy-directory is a package on quicklisp to copy files using the OS's native cp
command (useful for taking snapshots/back-ups of directories). The snapshot
package is for copying directories (I.E. taking snapshots) in /storage and the
site's DB.
commit 5c90771bc4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 18:13:16 2022 +0100
delete schema.sql file (from /db).
It's never been and won't be used. It came as part of the 'make project' process
when generating a Caveman2 website -- just never got around to deleting until now.
commit 14586efa2a
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:21:06 2022 +0100
implement copyToClipBoard functionality (main.js).
This feature copies the selected file in /storage/media and builds it full
URL. The intention is to make it easier for users to copy the URL when the need
to paster it into one of the 'edit' pages (I.E. Pages and Archive sections) text
areas.
At the minute the code assumes its only copying and building URL for the files
listed on the 'Storage Index' page (/storage/manage defroute). If the website's
features expand in the future in this area, this function/feature will need to
be refactored.
commit 72d0352c79
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:19:38 2022 +0100
add popup section (copy text via JavaScript) in /user/storage.html.
This is just the HTML and CSS additions to the HTML template. The JavaScript has
not be implemented yet.
commit 1bec6e8034
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:16:44 2022 +0100
add thumbnail path for SVG file in build-thumbnail-path filter.
The file-type contains 'image' so the filter assumed it was a .png or .jpg and
the image wouldn't render when it was a .svg file. This additional check to the
filter makes sure the svg.png (stock image file) is used when a thumbnail is
used in a HTML template.
commit 416d55ce3c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:15:56 2022 +0100
update main.css (popup stuff for coping text via JavaScript).
commit 4c157b5fda
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:13:06 2022 +0100
comment out un-used code in build search url in search package.
I was going to start on making this function more robust and remove the
hard-coded nature of it but cleary I got distracted and never actually started
it. I know it will need to include the 'build-url' functions in the utils
package but until I get around to actually refactoring this function, I'm going
to leave the code commented out.
commit 7f463f8d71
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 23 00:12:39 2022 +0100
add copy.png to /static/images/icons directory.
commit a45747c7d8
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:51:13 2022 +0100
implement back-end for 'manage database entries' ('danger zone').
This includes the HTTP GET and HTTP POST requests (defroutes in web.lisp). This
is part of the 'danger zone' features because it can leave the website in an
un-recoverable state.
commit c958bc8621
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:49:57 2022 +0100
create and populate /danger/manage-db-entries.html template.
This template has the CSS and HTML already included with this commit. It's
usable but I'm guessing it will need tweaking when the site gets closer to going
into production.
commit 51a078c8c2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:49:09 2022 +0100
change 'Media Files' to 'Storage Files' (/danger/manage-files.html).
commit 757f3b0448
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:04:42 2022 +0100
implement the manage/delete files back-end features ('danger-zone').
commit 7fc8609aed
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:03:01 2022 +0100
create and populate the /danger/manage-files.html template.
The template is pretty much ready to go with this commit. CSS stuff and data
population already added.
commit f88686dcd1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 22:02:28 2022 +0100
add icons (/static/images) for 'delete' links and buttons.
commit fa70b7e290
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 21:59:04 2022 +0100
add 'danger zone' links in site-settings.html template.
Links point to sections for manaully deleting files in the /storage
directory (without database interaction) and deleting database entries (without
storage file interaction). These sections are marked as 'danger zone' because
they should be used carefully and only if the site's storage files and database
have become out-of-sync. with each other.
The back-end functionality has not been implemented yet.
commit 53b2289f7a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 21:58:20 2022 +0100
update main.css ('danger-zone' stuff).
commit 3f0b990832
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:54:41 2022 +0100
add error-refresh and reset-website images in /static/images/icons/.
commit 66b84f8de6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:50:44 2022 +0100
implement the /danger/reset-website defroute (back-end feature).
This feature deletes all the user created content stored in the /storage
directory, the website's database (so User Accounts) and wipes the
Meilisearch database clear of the Archive Entries stored in it.
This is part of the 'danger zone' features and intension is to allow the site's
Admin. to clear out the website and start with a fresh clean install.
commit 78298c08ee
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:48:49 2022 +0100
add remove-file-with-raw-path function in storage package.
This function is part of the 'reset website' feature implemention. You should
only need to call this when you want to delete something outsite of the /storage
directory (I.E. the website's database).
commit b0efc40a94
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 19:48:07 2022 +0100
add 'reset website' form to /user/site-settings.html template.
This is part of the 'danger zone' section in site's settings. The back-end for
this feature is not yet implemented.
commit 74a6507902
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 18:59:29 2022 +0100
implement the 're-populate search DB' functionality (web.lisp).
This feature is part of the 'danger zone' section in the site's settings. This
feature clears the Meilisearch database (with this site's Archive Entries) and
re-populates it with the data from this website's (nera) database.
commit 3f21282114
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 18:57:44 2022 +0100
update /user/site-settings.html template (initial 'danger zone').
This commit establishes the 'danger zone' in the site's settings page. This will
need to be added to over time. This commit set-ups the 're-populate search DB'
feature but the back-end is not yet implemented.
commit 7771f966a1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 18:56:19 2022 +0100
update main.css ('danger zone' styling).
This is just a initial addition for the 'danger zone' section of the site.
commit 0596972877
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 17:16:33 2022 +0100
implement 'repopuluate meilisearch DB' functionality (in search).
The main feature is the repopulate-database function which clears out the
Meilisearch DB index containing this site's searchable information and
repopulates it with the site's nera.db information.
I, also, added a delete-index function (also in search package) but that is
mostly a convenience feature. It allows me to quickly delete any index in the
Meilisearch DB which I made by mistake (E.G. wrong name, change of plan) and
remove old indexes from other projects which are no longer in use (on local
dev. machine mostly).
commit a046d21dbb
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 17:15:31 2022 +0100
add redirect from /sitemap to /sitemap.xml in web.lisp (defroute).
This is just a 'catch-all' defroute.
commit 50a76f56ba
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 01:42:51 2022 +0100
add robot.txt file to the /static directory.
I'm sure I will need to update this at some point. I didn't spend too much time
on it, just jotted things down as a I came across routes in web.lisp. The
Sitemap URL will need to change, the closer the site goes into production and an
domain name has been bought/finalised.
commit 862b55ec23
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 01:42:13 2022 +0100
implement /sitemap.xml defroute in web.lisp file.
commit 5f040b642d
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 22 01:39:14 2022 +0100
implement build-url and build-url-root functions in utils package.
These functions are mostly aimed at the site's XML-generated site map. The piece
together the site's URL from lack's request struct. I don't know if there is a
pre-built string containing this information (I.E. http://localhost:5000 and
http://localhost:5000/testing) which is why I have written these functions.
commit 3cfb5d4331
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 20 23:31:29 2022 +0100
add birthday-cat.png to insert-dashboard-cat function (view.lisp).
A little Easter Egg...
commit e336640fa0
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 20 23:14:52 2022 +0100
update quicklist sections in archive-entry.html and page.html.
Replaced the 'View Entry' link with an edit entry link instead.
commit ad58e02f5c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:35:57 2022 +0100
add older/newer entries section to archive-entry.html template.
commit d6b7e031e7
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:35:34 2022 +0100
update main.css (mostly for listing older/newer archive entries).
commit 2b4336bced
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:34:51 2022 +0100
add older/newer archive entries to data returned from /view/archive.
commit a4486ad168
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 20:34:00 2022 +0100
add get older/newer archive-entries in nera package.
I, also, change the order to 'created-at' for getting all archive-entries.
commit bb7396d95e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 18 13:56:10 2022 +0100
fix add-storage-file regression bug (database and file different).
When uploading a file to /storage the database stored the un-formatted name and
the file was stored with the formated name. This meant when anyone tried to
download or rename the file, the website would produce an error. This commit
fixes this and has the database and file storage system store the files name in
the formatted way (all lowercase with no whitespace).
commit 2515803ce0
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:49:54 2022 +0100
update quick-search.js (minor URL and CSS changes).
This file has been in the repo. for a while -- I copied it over from my co-web
project. But, I hadn't touched it or integrated into this website until
now. The changes in this commit are mostly minor changes which bring the URL's
for the Meilisearch instance this website connects to and change the CSS classes
to match the ones used in this project (and not my co-web) project.
commit 6d60cfa86a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:48:30 2022 +0100
update full-search.js (mostly CSS classes).
Because I copied over the code from my co-web project, the code in this file has
CSS classes referring to that project. This commit updates those classes to fall
in-line with the CSS/design of this website.
commit c0ca6c8aa2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:47:46 2022 +0100
update search.css (remove co-web code).
I will need to update this as I go along. I copied the code over from my co-web
project so the webpages have been rendering with that style/design until
now. This commit has removed as much of it as possible and added/updated the
style rules to fall in-line with the design of this website.
commit f23b9b8a85
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:45:40 2022 +0100
update full-search.css (removed rules for co-web project).
I will need to update this as I go along. I copied the code over from my co-web
project so the webpages have been rendering with that style/design until
now. This commit has removed as much of it as possible and added/updated the
style rules to fall in-line with the design of this website.
commit 89283b7cf7
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:45:17 2022 +0100
add 'quick search' section to archive-entry.html template.
commit 07d6607e88
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:44:27 2022 +0100
add 'quicklist' and 'quick search' sections to page.html template.
commit 554084f05a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:44:08 2022 +0100
remove some HTML from search.html template.
commit d2005080b2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:41:58 2022 +0100
apply indentation formatting to /layouts/default.html template.
I was faffing in this file and had Emacs do a quick re-indentation (with
web-mode) enabled. I don't think I have touched this file since installing
web-mode.
commit 2d862e29e2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 17 20:39:45 2022 +0100
add 'update'ranking-rules' func. to search package.
This allows you to change the order the search results are returned in. The main
purpose why you would want to use this function in this context is to make sure
the list of results is ordered by the year the artworks where published/created.
commit 73c4a1cd16
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 21:33:57 2022 +0100
update main.css (mostly image sizing in article body).
commit ac402d333d
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 21:31:55 2022 +0100
add quick-list section to templates/archive-entry.html template.
This will need updating. I copied over a quick-list section from another
template. I'm off home after this commit (got one more commit to enter after
this). Thought I would get something in before I left, though.
commit 55df7b5161
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 21:17:13 2022 +0100
simplify templates/archive-entry.html template (remove entry dates).
commit 3ff07064a6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:50:43 2022 +0100
add 'Publish' date section to /user/edit-archive.html template.
commit 833b125f46
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:49:03 2022 +0100
add 'Publish' date section to /user/create-archive.html template.
Only 'Month' and 'Year' are used because 'Day' is not relevant -- at time of
writing. You might see an change to this form in a later commit if requirements change.
commit c9733d5f94
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:47:40 2022 +0100
remove database Created/Updated At info. from archive.html template.
commit 7931d33588
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:46:45 2022 +0100
update main.css (input for 'Publish' date mostly).
commit b874b3e742
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:45:09 2022 +0100
update archive-entry HTTP POST request (include 'publish' date).
The publish date refers to when the artwork was publish which differs from the
'Created At' date. That refers to when the entry was added to the database.
commit b750649cb2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:43:52 2022 +0100
replace 'Created At' timetamp with 'Month' and 'Year' (search.lisp).
'Month' and 'Year' refer to the artworks publish date.
commit 36f396b0da
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:41:57 2022 +0100
add publish month and year arg's to create-archive-entry func.
This update is in the nera package. It is part of a refactoring of functionality
to have a seperate 'Publish' date and a 'Created At' date within this site's
database. The 'Created at' date refers to when the entry was added to the
database. The 'Publish' date is the date of the artwork.
commit 37ec669980
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 20:40:54 2022 +0100
add (publish) month and year to archive-entry class (archive.lisp).
This is mostly for the Meilisearch database. This addition will mean it's stored
in this site's database, though.
commit 2300c9413a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 18:33:49 2022 +0100
update HTML in archive-entry.html and archive.html templates.
commit a697b09462
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 18:32:12 2022 +0100
fix link styles in main.css file.
Default links were changed in previous commit and had a knock-on effect to some
stylised links.
commit eba62e0925
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:56:34 2022 +0100
update main.css (filter controls for 'Index' pages mostly).
I updated the CSS for links (a tags) too.
commit e6a1b4287f
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:56:17 2022 +0100
add filter controls to pages.html template (HTML, CSS and JS).
commit a610b52ba6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:55:49 2022 +0100
add filter controls to archive.html template (HTML, CSS and JS).
commit 6db73aac52
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:48:53 2022 +0100
add filter list code to main.js file.
This code is intended to be used mostly in the 'index' pages (Pages and
Archive). These pages are mostly going to act as a back-up for when the
Meilisearch service goes down or if the user has a poor internet
connection. This filtering behaviour allows the user to filter the entries in
the Index they are viewing (Pages or Archive). There are no images and no
repeated calls back to the server. Each index lists just the text (Titles,
publish info. Etc.) and from there the viewer can filter the results on the
page by entering text into the text box in the Index-base HTML templates.
From Nic's point-of-view, these Index pages will not be included in the
nav. menu but if the Meilisearch service goes down (at this site is still
operational), she can swap out the 'search' page for these (really it's just the
Archive Index) so people can still have some form of search/filtering ability
whilst viewing the website.
commit 1bb0a92d39
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 15 16:48:32 2022 +0100
add footer tag to footer.html template.
commit e548ba7993
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 14 21:51:43 2022 +0100
update CSS and HTML in /templates/sign-up.html template.
commit bf007601ea
Author: Craig Oates <craig@craigoates.net>
Date: Fri Oct 14 21:51:02 2022 +0100
fix grammar mistake in /templates/user/edit.html template.
commit f74ae90e02
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:01:36 2022 +0100
update artchive-entry.html template.
Starting to add extra HTML and CSS tags and rules. This is just the start to
building out this template.
commit bb4fbe1a00
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:01:15 2022 +0100
update main.css (front-end archive entry).
commit 146901fa80
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:00:38 2022 +0100
set site title dynamically in index.html template.
commit d4ab83ef7a
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 11 00:00:00 2022 +0100
clean-up code in web.lisp and view.lisp files.
commit 94122e7741
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 20:18:00 2022 +0100
tidy-up code and leave comment in /edit/archive about Meilisearch.
This defroute doesn't change anything relevant in the Meilisearch DB so it
doesn't need updating. I've left a comment (mostly for future me) to remind me
not to think I've missed a defroute and try to integrate the Meilisearch stuff
into it.
commit f38e0aef42
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 20:11:57 2022 +0100
integrate Meilisearch into edit keywords functionality (web.lisp).
commit 5d853592bf
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 19:57:03 2022 +0100
integrate Meilisearch into /rename/archive-entry defroute.
The defroute to update the thumbnail doesn't need to change but I added a
comment to make it clear in the future -- I can see me forgetting it doesn't
need updating and try to add code which doesn't need to exist.
I, also, did a bit of updating to the layout of the code is parts -- mostly when
setting the alert message.
commit e90de5e31a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:12:31 2022 +0100
add 'Search' as hard-coded URL in '/' and update delete Arch. Entry.
The re-direct to /search when the user has set /search as the site's home page
is part of a list of other hard-coded re-directs in this site's '/' defroute.
The site now deletes the Archive Entry from the Meilisearch database alongside
the files in the /storage directory and the nera database.
commit 6e4da8dc26
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:08:53 2022 +0100
implement set-filter-attributes, delete-all-entries and create-dump.
These functions are helper functions to manage the Meiliseach database from
a Common Lisp perspective. The intention is to work them into the website's
back-end so the user can reset or re-populate the database from the website
without me (or someone else) having to SSH into the VM and do fix/restore things
manually. For now, they allow you to manage the database from SLIME.
commit d488b56780
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:08:13 2022 +0100
add 'Search' to hard-coded links in site's nav. menu.
commit 0f2067742a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 17:07:39 2022 +0100
add 'Search' page to init-db function in nera package.
commit 5287e9858e
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 16:29:40 2022 +0100
change month number to name when adding archive entry to search DB.
This change is so the refinements on the seach page shows the month names
instead of thier numbers. This is because most people tend to work with month
names and not numbers in this context.
commit 6389480260
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 10 16:27:47 2022 +0100
create month-number-to-name function in utils package.
This is a helper function to convert '1' to 'January', for example. The intended
use for this is to work alongside the local-time package when generating the
month number from a timestamp.
commit ad65e0fca1
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:48:40 2022 +0100
add 'title' attribute to links in /user/archive.html template.
commit 4d5a9b7f0c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:40:35 2022 +0100
update /layouts/header.html template with new CSS rules.
This commit makes the header (site's name and logo) a link which points back to
the site's "/" (I.E. Home page/route). It, also, centralises the header and the
navigation menu (in the header). This is so the header doesn't look weird when
viewed on a mobile phone.
I removed the <hr> at the bottom of the file because the site has enough styling
applied to it to make the <hr> look out of place now. I can clearly
denote/identify where the site's (front-end) header and footer stops and starts.
commit 82192113c0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:40:15 2022 +0100
update main.css (front-end header stuff).
commit 990eb22f6d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:39:52 2022 +0100
remove <hr> from /layouts/footer.html template.
commit 6a5b6ea838
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:15:05 2022 +0100
fix day-of-week timestamp bug in insert-dashboard-cat filter.
I didn't realise the local-time system set 'Sunday' to '0' in its
timestamp-day-of-week function. I thought it was '7'. This commit changes the
check for '7' to '0' and adds a few comments to help identify which days the cond
form is checking against.
commit ad0954e319
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:12:31 2022 +0100
add Meilisearch JavaScript and CSS files.
These files are provided by the Meilisearch project. This commit is larger than
usual because of this. The CSS files are copied over from my personal website's
repository so they will need modifying going forward. I've added them here as a
starting point.
commit 0aef87a949
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:10:26 2022 +0100
create the search.html template (for Meilisearch).
This page is populated in this commit but is broken because it requires several
JavaScript files which have not be committed to the repository as of yet. This
commit is in preparation of adding those files.
commit c2788c43af
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:07:44 2022 +0100
integrate the search package into create archive route in web.lisp.
The site now populates the Meilisearch database when the user creates an archive
entry. The Meilisearch needs to be set-up manually at this moment in time so
expect this to break easily if you haven't got Meilisearch working.
commit 04c79732f7
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 21:05:19 2022 +0100
create search.lisp file and add to ritherdon-archive.asd file.
I copied most of this over from my personal website's repository. So, there are
bits of code which look a bit out of place in this context. With that said, the
code does run and just needs to be integrated in the defroutes in web.lisp.
commit cff6bfc1ee
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:21:07 2022 +0100
fix rendering errors in 'title' values (/user/pages.html template).
commit 295ed248c9
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:20:47 2022 +0100
update default favicon.png and site-logo.png files.
commit e705aa67e4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:19:50 2022 +0100
update main.css -- mostly for initial-setup.html template.
commit a834f54a13
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:12:54 2022 +0100
update initial-setup.html template -- massive overhaul.
I've removed the 'extends' blocks and built a completely seperated template from
the rest of the website. The template was not rendering properly because certain
parts of the website had not been set-up yet so the complete isolated template
was/is required.
I've, also, added extra options for the user to set during this first run
process which will be processed by the back-end. I've not put much work into
adding validation checks because it is a one-time thing (this page). You'll need
access to the server anyway -- at this point -- so a bit of manual correction of
mistakes will be easy to achieve. Deleting the database will be enough to
trigger the first run process again.
commit 324229dea4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:11:24 2022 +0100
modify init-db func. in nera package.
This is part of a refactoring to allow the user to set more settings in the
initial set-up/first run process.
commit d35ae529db
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 9 17:10:41 2022 +0100
add power.png image to /static/images/icons directory.
commit eb7435f720
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:49:39 2022 +0100
add checks to make sure uploaded files are images in site-setting.
The conditions are added to the 'Site Logo' and 'Favicon'
sections/defroutes. The checks are to make sure a user doesn't try to set an MP4
file as the site's favicon or site's logo.
commit 85b0d8da9e
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:48:22 2022 +0100
add hints to various sections in /user/site-settings.html template.
These are just blocks of <p> tags to help explain what the various settings do
in each section.
commit b9493fb138
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:48:11 2022 +0100
fix typo. in main.css.
commit 7bd5f1dd02
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:29:20 2022 +0100
update main.css (section controls for dashboard).
commit 78cf655f5d
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:19:53 2022 +0100
update HTML and CSS in /user/site-settings.html template.
I did a lot of re-arranging of the settings alongside adding CSS and HTML stuff
to template in-general.
commit 3d24084e24
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:18:56 2022 +0100
add 'administrator' checks to /user/edit.html template.
Some links were being shown to non-administrators. This check fixes that.
commit 7b1a80333c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:18:30 2022 +0100
update main.css (site-setting stuff).
commit 3274456906
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 20:17:37 2022 +0100
fix typo. when calling set-alert when enabling sign-up option.
commit cedab101f1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:18:51 2022 +0100
update icons for 'Manage Account' links/buttons.
This is across several HTML templates but they are minor changes so it
should be easy enough to follow when viewing the commit's diff.
commit a522701b58
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:10:29 2022 +0100
update /user/index.html (HTML and CSS).
commit 9d19cdcea9
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:10:09 2022 +0100
add 'quicklist' section to /user/edit.html template.
commit 2a7e133d7e
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:09:48 2022 +0100
update main.css (user account stuff).
commit c8de64382f
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 17:09:06 2022 +0100
add all-accounts.png and create-account.png images.
commit d64ae60c26
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 13:01:45 2022 +0100
update /user/edit.html template (split 'edit' form into two).
This update seperates the form previous version of the template (for updating
the user's display name and password) into two. This is because of a change in
the back-end defroutes. It's makes it easier on the back-end to update the
password and display name seperately with different HTTP POST requests (and HTML
form data).
commit 76450d3414
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:59:07 2022 +0100
seperate /user/edit route (HTTP POST) into two.
There are now two HTTP POST routes which update either the user's display name
or password.
commit 949cee862c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:56:19 2022 +0100
refactor insert-dashboard-cat filter (view.lisp).
Changes the time conditions used to display the various cat icons in
the dashboard; And, fix a bracket-bug (closed a condition block too early).
commit ea4520e7d4
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:04:32 2022 +0100
update /user/edit.html template (CSS and 'delete account' form).
commit e688c55cd9
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:03:06 2022 +0100
adding padding to alert message container in main.css.
The alert message was rendering under the dismiss button when viewed
on a small (phone) screen. The extra padding makes sure the message
remains clear of the button.
commit 9430942cb5
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:01:21 2022 +0100
update /user/delete defroute: add 'type username input check'.
When the user wants to delete their account they must now enter their
username as part of the form they submit. This is so they don't
accidently delete thier account.
commit 6c65b9c5a0
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 12:00:50 2022 +0100
add delete-account.png icon.
commit 661bbbd121
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 11:15:14 2022 +0100
update main.css file (log-in form stuff mostly).
commit 2730bbaaa1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 8 11:14:40 2022 +0100
apply CSS classes to /user/login.html template.
commit 10e354fc9d
Author: Craig Oates <craig@craigoates.net>
Date: Thu Oct 6 19:43:37 2022 +0100
update .gitignore and default assets (storage file after first run).
The default assets were part of the list in .gitignore so the site would produce
errors during the site's initial first run set-up. I've quickly added the files
to the repository but they will need work done to them because the files are
empty and the wrong default images. This commit is done from my computer in the
flat so the files added were to just fix the errors.
commit ff86cb159a
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:46:46 2022 +0100
reduce the amount of recent files returned with /dashboard defroute.
commit 91321b26ec
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:37:46 2022 +0100
replace dashboard profile img. with insert-dashboard-cat filter.
commit 130a6d3061
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:34:42 2022 +0100
implement insert-dashboard-cat filter (view.lisp).
This filter is builds the path for the dashboard profile image. The
path points to a different icon in the /images/icons directory
depending on what time and day it is.
There is no major functionality addition with this code. It just a
little sprinkle of cuteness for the user of the site.
commit 318cf88f73
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 11:33:02 2022 +0100
add profile (dashboard) cat icons.
These images are will be displayed alongside the user's display name
on the dashboard. There are several images because different ones will
be displayed at different times of the day and week.
commit 7b24fdca1c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:32:06 2022 +0100
add alert type values to all set-alert functions called in web.lisp.
This update sets the alert type which adapts the alert message's
background colour and image to the type of message the alert is
relaying to the user.
commit 0795a67f86
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:30:04 2022 +0100
move /user/edit link out of administrator check in dashboard.html.
Non-administrator's will now be able to see the 'Account Details' link
when viewing the /dashboard page. It was a mistake I hadn't caught.
commit 5212a9b985
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:29:21 2022 +0100
add CSS and JavaScript code to alert message section in header.html.
commit a7aff4b828
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:28:33 2022 +0100
change site-side-menu.js script element to main.js in default.html.
commit fad642822a
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:28:07 2022 +0100
update main.css (alert message styling).
commit d446834565
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:25:29 2022 +0100
rename site-side-menu.js to main.js.
Because the amount of JavaScript I've written, it doesn't make sense
to separate things out into their own files yet. So, I've renamed the
file to main.js and will add the little sprinkles of JavaScript
here. If the amount of JavaScript grows, I will need to move things
out of here but that is a future problem.
commit 2e1e5b59d5
Author: Craig Oates <craig@craigoates.net>
Date: Tue Oct 4 10:22:53 2022 +0100
expand alert message types in set-alert function (utils package).
Been meaning to do this for a while but never got around to it.
commit 9df8e363c9
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 08:04:37 2022 +0100
update dashboard.html template (add thumbnails to Storage section).
commit 5782362136
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 08:01:47 2022 +0100
add 'quicklist' section to multiple HTML templates.
This is a multi-file commit because the code is essentially the
same. Each HTML template has either had a 'quicklist' section added or
had links added to it.
'Quicklist' is just a section with a collection of links to other
parts of the website based on the context of the page/user's current
location.
commit d791b04449
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 08:00:37 2022 +0100
update main.css (mostly fixing rows with thumbnails in).
commit c89d1653a9
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 07:08:01 2022 +0100
modify the rel. URL for the images in build-thumbnail-path filter.
commit e33ac9af0a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 07:03:38 2022 +0100
add /storage/thumb/media/:slug defroute (re-added).
I think I had a version of this route but I deleted it -- can't
remember if it wasn't needed or didn't work as intended at the
time. Anyway, this commit makes it part of the code-base (again).
The function provides the website to use the automatically generated
thumbnails -- when a user uploads the an image to /storage/media --
instead of the full-sized image. This should help reduce download
times if a list of uploaded image are several Mega Bytes and being
viewed at once -- like an index page for example.
commit 426d404593
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:19:02 2022 +0100
update HTML in /user/edit-page.html template.
commit 5ef81ba4f3
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:18:49 2022 +0100
update HTML in /user/edit-archive.html template.
commit b6aec7c5ea
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:18:34 2022 +0100
update HTML in /user/create-page.html template.
commit afaa7268ad
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:18:15 2022 +0100
update HTML in /user/create-archive.html template.
commit 006bd652af
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:17:28 2022 +0100
apply minor formatting changes to /user/storage.html template.
commit 009e0103b8
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:16:32 2022 +0100
update main.css -- mostly focus on forms for editing pages/archive.
commit d7bbb9ecf2
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:14:54 2022 +0100
code clean-up in web.lisp (old comments, formatting and slugify).
commit db4393ddac
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:13:47 2022 +0100
implement update-single-nav-menu-item in nera package.
This function is so the user can add/remove a single page from the
nav. menu whilst editting the page.
commit 09e44a6364
Author: Craig Oates <craig@craigoates.net>
Date: Mon Oct 3 06:13:18 2022 +0100
add save.png icon to /static/images/icons directory.
commit 936d9034c8
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:46:18 2022 +0100
end-of-session commit -- update main.css file.
commit e15b2299ad
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:42:41 2022 +0100
apply CSS classes to /user/archive.html and /user/pages.html files.
Both files are basically the same with minor changes in classes and
HTML tags. Commited both files at the same time because of this.
commit ecfb667c67
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:42:07 2022 +0100
clean-up and remove unused code (HTML templates).
commit e33575c74c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 09:41:01 2022 +0100
update main.css (mostly index pages listing/title section).
commit fa9bb8cfb2
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:54:38 2022 +0100
minor padding change for be-gui-link class.
commit b4a34c102a
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:39:35 2022 +0100
delete site-logo.png and favicon.png files from /static/images.
These files are generated during the website's first-run process. They
don't need to be a actual hard-coded part of the repository. The way
the site is set-up, the user will either stick with the
defaults (generated on first-run) or upload their own personal files.
commit d305d4c110
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:38:23 2022 +0100
update /user/storage.html template (mostly CSS updates).
commit 1551e3fc1b
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:37:47 2022 +0100
update /user/dashboard.html template (mostly for CSS updates).
commit 7a6353635b
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:36:53 2022 +0100
update main.css -- focus on dashboard.html and storage.html.
commit 61e8ef91f8
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:34:29 2022 +0100
refactor file upload storage routes -- regarding thumbnails.
The automatically generated thumbnails are no longer stored in the
database. They are created, updated and deleted alongside it's main accompanying
image -- as a file in the /storage/media directory.
commit eddedc891d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Oct 2 07:33:17 2022 +0100
adjust relative URL for images in build-thumbnail Djula filter.
commit baed98ce7a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Oct 1 08:04:40 2022 +0100
fix bug when creating thumbnail whilst uploading a file to /storage.
commit 4647323fda
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 08:37:05 2022 +0100
add storage, pages and archive entries to dashboard.html template.
The route in web.lisp calls the recently created 'get latest'
functions in the nera package. The code is web should be fine but the
dashboard.html stuff is buggy and so is the back-end routes for
uploading deleting file in the /storage section of the website. This
is an end-of-session commit, though, so the bugs will have to be fixed
at a later time.
commit 3b49fbf6e0
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 08:35:37 2022 +0100
update dashboard.html template (start expanding the Storage part).
This code is buggy but it is a start. This is an end-of-session commit
hence the buggy state being left as it is.
commit c27ecb9853
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 08:33:53 2022 +0100
add get latest editted 'X' functions in nera package.
These functions haven't not been used much so I don't know how
reliable they are in their current forms. Expect some work needed on
them in the future.
commit 75e05cc4aa
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:37:11 2022 +0100
update main.css (back-end dashboard buttons and gui-links).
commit 87f0e81258
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:36:51 2022 +0100
update /user/dashboard.html template (CSS and icons).
commit dd7796fb4e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:36:26 2022 +0100
update /layouts/header.html template (CSS and icons).
commit 01bacffa19
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:35:56 2022 +0100
update several of the icons in /static/images/icons.
commit 9a2c933667
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 30 06:34:48 2022 +0100
add loads of icons (.png) and rename a few of them.
commit 7b6cde549b
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:37:07 2022 +0100
move alert section to header.html and get side-menu working.
I move the alert section to the /layouts/header.html template because
it was easier to get it to render between the logged-in user's site
header and the site's 'normal' header.
The site's side-menu (for logged-in users) still needs stuff adding to
it -- and tweaking -- but the base style, layout and whatnot is in
place.
commit dcd1e76d0e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:36:15 2022 +0100
re-organised /layouts/default.html and remove 'alert' section.
The alert section will be moved to /layouts/header.html.
commit e844408d86
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:34:44 2022 +0100
remove hard-coded '2018' in footer, prints current year (copyright).
commit 0dc9c91795
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:33:09 2022 +0100
update .gitignore to ignore favicon and site-logo in /static/images.
These files are set during the site's first run and are personal to
the deployment. The repo. has no need to track these files.
commit f4bf0ba511
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:30:22 2022 +0100
add icons in /static/images and static/js/site-side-menu.js file.
commit 51d564fff8
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:28:35 2022 +0100
update .gitignore to include files in /static directory.
I've moved/changed how I was using the /static directory (site-wide
snippet) so I can start adding in images and what have you again. I
didn't realise I had set Git to ignore the how /static directory.
commit 8c60ac6031
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 27 02:26:07 2022 +0100
start adding style rules for site side-menu section in main.css.
This is just a start. I will need to add to this.
commit f60b09bbdd
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 01:02:27 2022 +0100
add 'success' optional parameter to set-alert in update nav. menu.
I think I will need to swap out the string value 'success' with a
constant so things aren't as stringly-typed as this. With that said,
this is just a quick proof-of-concept. I can keep this around until I
build out this updated feature some more.
commit a7eb3240bf
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 01:01:18 2022 +0100
add optional parameter to set-alert function in utils package.
This is so I can define what type of alert message I want the server
to send... and include the cat images I found.
commit fda81fbb82
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 01:00:48 2022 +0100
add safe filter to alert message in /layouts/default.html template.
commit a72e133f13
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:24:08 2022 +0100
update / (site's index page) route and nav. menu update feature.
I hard-coded redirects to the pages which can't be deleted into the
site's index ('/' route). This allows them to be set as the home page
in the site's settings.
I, also, updated the data which is passed to
nera:update-nav-menu. This change is part of the Nav. Menu settings in
the site's settings.
commit 9a30da1a44
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:22:38 2022 +0100
refactor update-nav-menu in nera package.
The function now loops through the values passes to it and sets the
'enable-nav-menu- column in the database for the currently selected
page in the loop.
commit 0a302c2a77
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:20:27 2022 +0100
refactor /user/site-settings.html template (nav. menu updates).
The nav. menu section sends a hidden value if a check box isn't
selected. This is in preparation for implementing the back-end part of
this feature.
I, also, removed the if-statements when selecting the home page in the
'Home Page' settings. Again, this in preparation for adjusting the
back-end functionality for this feature.
commit f814aef20d
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 26 00:19:07 2022 +0100
update delete button in /user/pages.html template (incorrect value).
commit 84f3ede736
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:42:02 2022 +0100
refactor site-setting route to get snippets from /storage/snippets.
commit a76f837eea
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:41:38 2022 +0100
add insert-snippet functionality to djula:view package.
commit a1d1042d4c
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:40:12 2022 +0100
update first-run code -- refactor site-wide snippet file.
commit e0a1bf7cb1
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:37:19 2022 +0100
update /layout/default.html template (prep. for snippets update).
I'm changing the snippet to be stored as HTML instead of
JavaScript. I'm, also, storing the snippet in /storage/snippets
instead of /static. This makes it easier to hook it up to my Umami
instance in the future if Nic wants to do that.
commit 4156b0eee0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:05:49 2022 +0100
remove single file upload route and refactor multi-upload route.
commit e8831de9f4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:04:58 2022 +0100
update URL for images in build-thumbnail-path djula filter.
commit 4b5831452d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:04:28 2022 +0100
add thumbnail to /archive.html template.
commit bb35111dc9
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 22:01:18 2022 +0100
remove single file upload from dashboard and storage HTML templates.
From an end-user perspective, I don't think Nic will care about the
difference. She'll want the easiest option and uploading a single file
via the multi-upload form -- with no file name input -- is the easiest
way to go about this. I say this without actually speaking to her
about this so I might be wrong on this and need to go back in and
change things.
commit 44bdec6570
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 20:07:55 2022 +0100
implement the /edit/archive defroute -- updates the entries text.
commit fb8f68e468
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:59:53 2022 +0100
implement the edit archive keywords functionality (web.lisp).
commit c313b4aff4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:59:33 2022 +0100
update keyword form in /user/edit-archive.html template.
commit e53a2990c0
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:46:09 2022 +0100
refactor update archive thumbnail functionality (change file name).
The code now removes the old thumbnail file, stores the new one and
updates the database entry. I found it easier to keep track of the
changes whilst developing by doing this.
commit 81a0fb8e40
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 19:44:27 2022 +0100
update /user/edit-archive.html (prep. for title and keywords).
commit 7328a719fe
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:25:37 2022 +0100
implement the edit archive thumbnail functionality (web.lisp).
This does not include the Meilisearch integration. That will come in
later commits after I've got the base behaviour for the website sorted
out.
commit 82e8428695
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:23:51 2022 +0100
refactor and remove code regarding the /storeage routes in web.lisp.
I removed old 'format' function called, changed file checks from using
the files on disk to the database.
commit ca4a540141
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:21:43 2022 +0100
edit /user/edit-archive.html template (thumbnail section).
This is preparation for implementing the update archive entry
thumbnail functionality in the web.lisp file.
commit 379bbdc8b4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 18:20:05 2022 +0100
implement update-archive-entry-property in nera package.
commit 8d55ed7d61
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 15:53:59 2022 +0100
refactor /storage (I.E. get files) routes and /edit/archive/:slug.
I added a new route to get files from the /archive directory but
needed to expand on the original /storage/view/:slug route so I could
seperate out the two (/storage/media and /storage/archive)
directories.
I added a check to make sure the archive entry
requested (/edit/archive/:slug) exists and return a 404 if it doesn't.
commit c69c165a92
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 25 15:53:15 2022 +0100
add edit thumbnail section to /user/edit-archive.html template.
commit 57a6710e92
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:22:02 2022 +0100
block out the route for editing an archive entry (end-of-session).
I'm going home after this commit. I've blocked out the routes I need
to work on when I get back to this -- so I know where I am with it.
commit 93a59aaad4
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:18:23 2022 +0100
implement /edit/archive/:slug defroute (HTTP GET request).
commit 02df53e7f4
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:17:18 2022 +0100
add and block out /user/edit-archive.html template.
I still need to add a section for managing the archive entries
thumbnail but the basics are in place.
commit f205dc3252
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 22:16:54 2022 +0100
remove old code from /user/edit-page.html template.
commit eb9d2e3290
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:57:10 2022 +0100
implement /archive/delete/entry defroute (HTTP POST request).
commit ee336d3c83
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:56:35 2022 +0100
implement delete-archive-entry in nera package.
commit f89585ab46
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:56:01 2022 +0100
update form to delete archive entry in /user/archive.html template.
commit bba7cf4499
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 21:04:49 2022 +0100
implement the /view/archive/:slug route and add archive-entry.html.
commit a7d0ae54ad
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:42:48 2022 +0100
finish implementing the /create/archive-entry (without search).
I have left out the Meilisearch integration because I won't to get the
base behaviour sorted before I start integrating Meilisearch into the website.
commit 5542014a1e
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:41:58 2022 +0100
sort out code layout in view.lisp file.
commit baf1ec1f39
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:38:37 2022 +0100
add format-filename and format-keywords in utils package.
These functions are to help with standardising on the naming formats
when storing files and keywords (for Meilisearch database). The
asciify and slugify functions are not enough. They either leave spaces
in the file names or the file extension gets lost in the standardising
process. Going forward, file names should look like
'this-is-an-example.png' instead of either 'this is an Example.png' or
'this-is-an-example-png'.
commit 3dc6a812bf
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 20:34:35 2022 +0100
reorder file load order in ritherdon-archive.asd file.
I was getting errors when trying to quickload the system because a
custom djula filter (defined in view.lisp) couldn't find one of the
specific ritherdon-archive packages/files. I can't remember which one
because I made the change earlier in the day and didn't commit the
change at the time.
commit 7d9e29bac8
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:25:24 2022 +0100
add the /user/create-archive.html template.
This is a rough but working copy. This is part of an end-of-session
commit.
commit 5cc14f74bf
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:24:00 2022 +0100
create /user/archive.html and /arctice.html templates.
Both templates aim to list out all the archives stored in the
system. The /user/archive.html template, also, includes admin/back-end
features like edit and delete links/controls.
commit c42d169d84
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:20:54 2022 +0100
begin implementing CRUD routes for /archive section (web.lisp).
This is part of an end-of-session commit. I'm currently working on the
/create/archive-entry section (most the HTTP POST request). I still
need to start the view archive, edit archive and delete archive
parts. I've not even looked at the Meilisearch stuff. For now, the aim
is to get the website's main database (nera.db) working and then
integrate the Meilisearch stuff in after that.
commit 23365343b1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:19:20 2022 +0100
update dashboard.html template (add archive links and upload forms).
commit ffd483411c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:15:41 2022 +0100
start implementing the CRUD functions for the /archive routes.
I still need to write the edit and delete functions (I.E. the 'U' and
'D' in 'CRUD') to have a basic CRUD system in place for this
section. I'm commiting this as an part of an end-of-session commit,
hence the partical amount of work done.
commit 58b03ae8f2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:13:44 2022 +0100
add create-time-stamp-id function in utils package.
The only intended use for this function is to generate an Id. number
which will be used in the Meilisearch database and linking it to
Nera's database (I.E. this site's main database).
commit c1e664b631
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 24 01:13:09 2022 +0100
remove unused code from archive-entry class.
commit eff71bcbfe
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 18:19:44 2022 +0100
import archive package to nera package.
commit d6cc11dc03
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 18:17:11 2022 +0100
create archive package, archive-entry model and add to .asd file.
This is a rough sketching out of what the model/data needs to look
like. This model is what will be connecting the site's archive (Nic's
artwork entries) with the Meilisearch service -- running alongside
each other. I don't know how much this model is going to change but
expect it to in future commits.
commit 6a67a7cfc7
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:55:30 2022 +0100
add thumbnail features to delete and rename storage file routes.
commit 80aab44c00
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:40:20 2022 +0100
refactor 'create thumbnail' code in web.lisp to call from utils.
I've applied the changes to the singe and multi upload defroutes.
commit 592c38759f
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:39:28 2022 +0100
move create-thumbnail code to utils (reduce duplicated code).
commit 13d1e31c13
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:19:19 2022 +0100
rafactor /storage/view route and add a route/process for thumbnails.
When uploading a file, a thumbnail is made (if an image, using the
Image Magick program with Bash). This file is not stored in the
database. It is a file-system only thing. The reason for adding this
is some I can create HTML templates/defroutes which show a list of the
images in /storage/media without saturating the viewers bandwidth.
commit 2c069573db
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:14:23 2022 +0100
update /user/storage.html template to use build-thumbnail filter.
I, also, removed code made redundant by build-thumbnail filter.
commit 44c7ebbc90
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:13:46 2022 +0100
add @build-thumbnail (djula) filter in view.lisp file.
commit 6d8fa33b97
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:13:26 2022 +0100
remove get-latest-file-type code from storage package.
commit a15619de56
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 23 16:12:38 2022 +0100
add woo server to ritherdon-archive.asd file.
Added it so I can switch between hunchentoot and woo whenever I
want. No real reason to choose one over the other at the moment.
commit 7a6f330497
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 22 21:28:54 2022 +0100
begin defroutes for viewing files in /storage/media.
I need to work on this functionality a bit more. This is an end of
session commit. Started it and it works but needs expanding.
I could do with adding file-type checks and changing 'octet/stream' to
something like 'image/png' depending on the file-type (storage in
DB). This will stop the browser from downloading every file in
/storage/media and allow the files which can be viewed in the
browser (like images).
commit 104ac264a8
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 22 21:07:59 2022 +0100
change /storage routes to use slugs over filenames (HTTP POST).
commit 4c99109388
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 22 21:07:34 2022 +0100
export delete-storage-file from nera package.
commit 1cf86c674c
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:35:05 2022 +0100
end-of-session-commit: working on /storage/delete/:slug defroute.
Need to test it and make sure the logic in the various 'cond' sections.
commit 191f5b2c22
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:34:46 2022 +0100
add delete-storage-file function in nera package.
commit 0331999136
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:07:26 2022 +0100
refactor code calling get-storage-file and add storage/rename route.
commit f3d856f7f4
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 20:05:29 2022 +0100
add keyword args to get-storage-file and write rename-storage-file.
These changes are in the nera package. I, also, got Emacs to auto
format the file -- that is why is are loads of line changes in the diff.
commit b9848197e7
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:25:47 2022 +0100
add storage-upload defroutes (single and multiple) in web.lisp file.
commit d0ff0c812b
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:23:25 2022 +0100
update storage and dashboard HTML templates (add & get features).
commit 953bfc5fb0
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:21:54 2022 +0100
implement the 'add and get' functionality for storage routes.
commit f5549e17a1
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 20 19:21:00 2022 +0100
add files package (in /src/models and ritherdon-archive.asd file).
commit 6e7d2b6845
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:35:51 2022 +0100
put copyright text in <p> tags (in footer.html template).
The text was wrapped in anything and was rendering weirdly in the
browser's inspector.
commit 0ce1aef3e4
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:34:44 2022 +0100
change how site-wide-snippet file is stored and accessed.
The site-wide-snippet file is now a .js file and stored in /static/js
after the website's first run.
commit 63e3919970
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:33:15 2022 +0100
update .gitignore to ignore site-wide-snippet.js in /static/js.
This file is copied to here on website's first run. This stops any
changes I make to the file during dev. time from clogging up the
commit history.
commit 015eda2b0a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 23:11:35 2022 +0100
initial steps for /storage/management defroute.
This is an end-of-session commit. I've got the route up and running
with the /user/storage HTML template rendering in the browser and
listing out the files in storage. I could do with adding a model and
storing the files meta-data in the database. This page could do with
rendering the images and placeholders (E.G.generic text file icon) for
non-image files.
commit a89686c05f
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:58:16 2022 +0100
add file uploads section to /user/dashboard.html template.
commit c4f9f52ba8
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:57:45 2022 +0100
add /storage/upload defroutes (single and multi file uploads).
commit a855d9db90
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:54:53 2022 +0100
refactor store-file functions to include more file types.
The original code was very ham-fisted in how it dealt with storing
files -- based on their file-types. The changes made here improves on
it and the store-file (for both raw and /storage paths) functions now
accepts more file types because of it.
commit 8106b5a5c5
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 22:53:41 2022 +0100
rename site-settings function to get-site-settings in nera package.
The function call 'site-settings' was clashing with class and package
name 'site-settings'.
commit d31c4ab38a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:27:38 2022 +0100
remove old defroutes.
commit f626557b97
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:21:10 2022 +0100
add system-data to data passed to the HTML GET routes in web.lisp.
System-data is a collection of the system settings and page data in
the database. It minimises the function calls in the defroute macros.
commit 2bb7d053e6
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:19:33 2022 +0100
clean up old and unused code in HTML templates.
It was getting out of hand and difficult to navigate around the pages
when viewing them in the browser.
commit e9792a6fa0
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:18:55 2022 +0100
import archivo in main.css file.
commit 4c1b99fa08
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:17:40 2022 +0100
add pages in init-db and write system-data func. in nera package.
commit e765c3b24e
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:16:38 2022 +0100
add and populate header and footer HTML templates.
The HTML is basic, just to get the sections to a usable state.
commit 9b8c5a7ca5
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 19 19:16:20 2022 +0100
add archivo font.
commit bb5f8fb482
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:13:33 2022 +0100
update web.lisp, mostly around site settings and first-run set-up.
commit 2f819de9a2
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:12:14 2022 +0100
add init-storage process and 'raw-path' I/O functions.
commit f78beb7ea4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:11:14 2022 +0100
add CRUD features for 'page' table in DB and expand init-db process.
commit 161e9c6169
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:09:54 2022 +0100
remove old code and update forms in /user/site-settings.html file.
commit d0426a9494
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:07:45 2022 +0100
add form for /page/set-nav-menu defroute in /user/edit-page.html.
I, also, changed templated data to use 'db-data' element in databag
passed to the djula HTML template.
commit 7e2f04d370
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:07:23 2022 +0100
add can-delete check to /user/pages.html template.
commit aacfcba654
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:06:46 2022 +0100
add favicon link to /layouts/default.html template.
commit 9a50938c0d
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:06:07 2022 +0100
implement get-image-dimensions function in utils package.
commit 4bac1e3db3
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:05:26 2022 +0100
add enable-site-logo and site-name slots to site-settings class.
commit 6ecd555712
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:04:55 2022 +0100
addd validation.lisp and pages.lisp files to ritherdon-archive.asd.
commit e3471e82ea
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:03:14 2022 +0100
update .gitignore to ignore /static/images and /site-wide-snippet.
These files will be created and populated via the site first-run
set-up process. This should stop the commit history getting clogged up
with needless and irrelevant changes in these files.
commit 4736db9bd2
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:02:06 2022 +0100
add validation package.
commit e4612d0711
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 18 23:01:37 2022 +0100
create pages package and page class (for Mito to map to DB).
commit b26b296e89
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:45:47 2022 +0100
stubb out sections in site-settings.html (not implemented yet).
The sections are more a check-list at this point. Things I need to
implement. I've stubbed them out and going to call it a day. They HTML
I've used is rough but it give me something to work on next time I
work on this project.
commit 94e326a292
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:19:02 2022 +0100
expand the site-settings.html template.
This is template still needs a lot of work done to it. The additions
in this commit focus on the set home page and enable/disable the
sign-up features.
commit 7e892f25b1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:18:35 2022 +0100
add {{content}} section to index.html template.
commit d9e09c52f6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:16:20 2022 +0100
add site-settings functionality in web.lisp file.
This is work-in-progress for the site-settings section of the
website. These additional features in this commit focus on setting
home page and enabling/disabling the sign-up features.
commit f1c79a9ecd
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:15:38 2022 +0100
add integer-to-checkbox djula-filter (view.lisp).
commit eb62ade5be
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:14:39 2022 +0100
add condition check to checkbox-to-bool and remove bool-to-checkbox.
commit 6d4d16ec45
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:13:50 2022 +0100
implement update-enable-sign-on-settings and set-home-page in nera.
commit bfcef81763
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 18:10:58 2022 +0100
add home-page slot to site-settings class.
commit cb51a83605
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 15:04:00 2022 +0100
implement /page/delete defroute and update redirects to /user/pages.
commit 45ef9fa84a
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 15:03:03 2022 +0100
add role check and update 'pages' link in /user/pages.html template.
commit b9180da6e2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 14:07:04 2022 +0100
implement /pages and /view/page/:slug defroutes in web.lisp file.
commit f4744f14b7
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 14:04:47 2022 +0100
update links to /page and /pages and add HTML templates.
The templates added allow the viewer to view the 'pages' individually or
as a list (index page of 'pages' basically).
commit 1c6781c945
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:27:47 2022 +0100
implement the 'edit pages' functionality in web.lisp file.
commit d6d5a58792
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:27:08 2022 +0100
add /user/edit-page.html template.
This HTML template is very rough -- just basics to make it
operational.
commit f0356b00f0
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:25:55 2022 +0100
add /user/pages.html template.
This template displays a list of pages stored in the system in the
/storage directory. It is very rough -- only bare basics to get the
page operational.
commit 681033b1cd
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 13:25:23 2022 +0100
add /pages link to /user/dashboard.html template.
commit 6b09c3e81c
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:51:51 2022 +0100
update .gitignore to ignore the /storage directory.
This is so the data/pages/files/content used for testing the website
don't get mingled with the code-base.
commit 3937b626e8
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:50:43 2022 +0100
finish implementing the /create/page defroute (HTTP POST).
commit a477470a90
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:48:16 2022 +0100
remove 'meta-data' from create-page.html template's HTML form.
This is prep. for getting a working version of the /create/page
defroute. My thinking at the minute is the logged in user can create a
'page' which is a page specific to the website and a 'post' of some
sort for an actual archive entry. I don't know how desirable or
feasible this design/approach is but I'm trying it to find out.
commit 3dbb603831
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:46:14 2022 +0100
add slugify function to utils package.
This replaces white spaces in a string with a hyphen ('-'). I prefer
file names to be stored with no white space, which is where I intend
to use this function the most.
commit 6fce318c87
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 17 11:44:36 2022 +0100
add storage package, copied from other proj. so already implemented.
commit 9e308ab92e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:16:00 2022 +0100
add /user/create-page.html template and integrate Tinymce editor.
The code in this commit is very rough but it works. I just got the
basics up and running. The template posts the content but the back
isn't implemented yet. At this moment in time, I need Nic to sign-off
on what she wants from this page. There is a chance this template
might not exist in the future.
commit 9222d347fd
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:14:27 2022 +0100
add /user/site-settings.html template.
The code at the moment is very rough. I've only got the 'Enable
Sign-Up' section set-up (front-end). The back-end part is not done yet .
commit 6c80f146f3
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:12:23 2022 +0100
add Tinymce (rich text editor) files to /static/js directory.
Tiny: https://www.tiny.cloud/
Doc's: https://www.tiny.cloud/docs/tinymce/6/
commit 875bd28841
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:11:19 2022 +0100
add logout, delete account and create page links to dashboard.html.
commit bdd86d4ad7
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:10:54 2022 +0100
add Sign-up link to index.html template.
commit 11e5e6a08e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:08:32 2022 +0100
create (and initial content) for /user/index.html template.
The code in here is for the site's administrator to see a list of all
the users with an account with edit and delete options. There is,
also, a section to create new users (non-admin. accounts).
commit 19bbba0f3e
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:06:14 2022 +0100
add username check to /sign-up defroute.
Just an extra check in amongst what's already there. If the username
the new sign-up attempt has entered matched one already in the
database, a message is relayed stating as much and redirects back to
the sign-up page.
commit 9724eda5fd
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:04:46 2022 +0100
add more functionality for user management (admin. and normal).
I forgot to add this to the previous commit.
commit 793c5d544b
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:02:05 2022 +0100
add admin. functions for 'users' section and create /site-settings.
The site's admin. can now create and delete accounts of all other
users. The admin. can, also, change the other passwords of the other
users.
commit 7349c4b9f5
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 19:01:14 2022 +0100
remove unused code and reformat some comments in web.lisp file.
commit 1e26f1ea8d
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 18:59:45 2022 +0100
add get-all-users function and change arg's to &key for update-user.
commit 68792eac19
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 16 18:58:32 2022 +0100
add alert message data to "/" defroute.
commit d025b5d0a0
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:23:37 2022 +0100
start to add functionality for signing new users up.
commit 428a0a6ba7
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:20:44 2022 +0100
add functionality for dealing with site-settings (table in DB).
I've added some helper functions to help with creating a database,
making sure its tables exist, too.
commit 3596a696db
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:18:28 2022 +0100
create initial-setup.html template.
commit 177521aa34
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:16:24 2022 +0100
add bool to checkbox convertion funcitons to utils pacakge.
The functions are helper functions for when dealing with
SQLite3. Because SQLite3 doesn't have a Boolean data-type, I have to
store the 'true' and 'false' values as integetes.
0 == false
1 == true.
commit 9a665c5c4e
Author: Craig Oates <craig@craigoates.net>
Date: Thu Sep 15 15:15:38 2022 +0100
create and wire-up site-settings model and package (for DB).
This model is used by mito to create a table in the database.
commit 7e84b86291
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 18:29:10 2022 +0100
refactor functions moved from auth to nera and update init-db setup.
The update part refers to the redirect when a database is found whilst
making a HTTP POST request, as part of the init-db
process (A.K.A. website's first run procedure).
The auth to nera change is because I didn't catch all of the moves in
a previous commit. The image I was running at the time still had the
auth version so it wasn't showing any errors. I spotted this one when
trying to run a new image.
commit a4d3f35306
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:11:49 2022 +0100
add alert section to default.html template.
commit 249f86b88e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:11:34 2022 +0100
add link to /dashboard in index.html template.
commit 777458ee37
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:11:07 2022 +0100
code clean-up in some HTML templates.
commit 25142d5049
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:04:51 2022 +0100
refactor web package to use auth, util and status-code packages.
The web package was already using code from some of these
packages. This commit moves some of the code in the web package into
one of the various referenced packages and also has 'web' utilise the
new features in those pacakges also.
The biggest shift is in how the alert-messages are handled (store in
ningle:*session* across HTTP requests) and how auth. is handled --
mostly the redirects functionality.
commit e6162306ef
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:03:29 2022 +0100
add alert-message functions in utils package.
These functions just make it easier to set, get and reset the
alert-message in the ningle:*session* variable.
commit 89ad7fb269
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:03:10 2022 +0100
code formatting in db package.
commit b469063f74
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:02:30 2022 +0100
remove code I moved to the nera package from auth package.
commit bf8b79021e
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 05:00:44 2022 +0100
export define-constant macro in app-constants.
The main reason is so the constants defined in the status-codes
packages can use it. I've put the (HTTP) status codes in their own
package because they are a self-contained thing. I find it easier to
work with them this way.
commit 0941922f57
Author: Craig Oates <craig@craigoates.net>
Date: Tue Sep 13 04:58:58 2022 +0100
add nera and status-codes packages.
nera is responsible for the database stuff which is not part of
Caveman2. The status-codes package is a list of constants representing
the various HTTP status codes -- with an explanation of what they are for.
commit 490a79a356
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:49:41 2022 +0100
add log-in and start account setting functionality.
commit 2aaefdbf5e
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:48:25 2022 +0100
add or update HTML templates (all based around user/accounts).
These are very rough templates but they serve as a way to get the
logged-in user stuff functionality started.
commit 3b6afd8a4a
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:46:54 2022 +0100
add password slot to user class.
I was having trouble trying to get hermetic and mito-auth to work
together. I decided to just use normal mito and leave hermetic to the
authentication/authorisation stuff.
commit 7e32795392
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:46:00 2022 +0100
re-organise bits of the code (mostly packages are references).
commit e6ef8bec34
Author: Craig Oates <craig@craigoates.net>
Date: Mon Sep 12 07:43:38 2022 +0100
rename authentication to auth (file and package).
'Auth' doubles up as authentication and authorisation. It reads better
from that perspective.
commit c8074c821b
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:28:47 2022 +0100
make back-up copy of cookie cutter code, for reference.
There was snippets of code in the code I liked. I'm going to keep it
around for a bit to see if I can work some of it in to the new
code. I'm most interested in the deployment code.
commit d6dbcf7ec4
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:27:52 2022 +0100
create Caveman2 project (using Caveman2's project generator).
commit 51d2213aae
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:23:58 2022 +0100
delete site stubbed out with the cookie cutter app.
I tried it and I find it easier to work with Caveman2. I didn't
realise this templating program is built around Hunchentoot -- whereas
Caveman2 builds on top of. So, I'm moving the code to back to Caveman2
-- where I originally started. It looks like a waste of time but the
knowledge of having a look at the other stuff has been helpful.
commit 9c251a1698
Author: Craig Oates <craig@craigoates.net>
Date: Sun Sep 11 07:23:10 2022 +0100
update licence.
commit 6257e7ec94
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 22:18:51 2022 +0100
add create-user.sh script.
This script adds a user to the database based on it's inputs (prompted
for the person running the script). The intention is to add a user to
the database easier (especially on a live production server with just
the CLI).
commit f5403b6cc2
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 22:17:43 2022 +0100
populate user class.
This should have been in the previous commit. I forgot to add it.
commit ff0c121e63
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 22:16:55 2022 +0100
create user class and add to database table.
commit c5ba5b1e4b
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 19:18:16 2022 +0100
switch Fiveam to parachute (testing framework).
There is no immediate or obvious reason for the change. I just prefer
to work with parachute.
commit 8d52eaf0a6
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 19:14:15 2022 +0100
update .gitignore (databases and /bin directory).
commit 7d3d3e57d5
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 19:09:43 2022 +0100
create Caveman2 project using vindarel's cl-cookieweb program.
https://github.com/vindarel/cl-cookieweb (for GitHub Repo. and
instructions).
The reason for using this is because it makes it easier to run the
website as a standalone thing. You don't need to link it up to
Quicklisp's /local-project directory. It has scripts to help you build
the binaries and to run the website (as a standalone) thing. I, also,
hadn't use this 'cookie cutter' program before so it's a good time to
get my feet wet.
commit 3177d956f1
Author: Craig Oates <craig@craigoates.net>
Date: Sat Sep 10 18:37:18 2022 +0100
go back to using Common Lisp and Caveman2.
The admin. backend for Django isn't as easy to get to where I want it,
compared to Caveman2. The trade-off is Common Lisp isn't a mainstream
language so it does reduce the level of ease other might have when/if
they join the project.
commit ee1bf2f927
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 9 02:40:08 2022 +0100
create Django project.
The files included here are just the ones created with the
django-admin CLI.
commit 851980f784
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 9 02:39:24 2022 +0100
copy a Python-base template into .gitignore.
commit 24b396d47b
Author: Craig Oates <craig@craigoates.net>
Date: Fri Sep 9 02:34:39 2022 +0100
delete caveman2 (initial install) code.
I'm going to try this with Python and Django first. Because it's not
my personal project, it might be better to use a language which is
more mainstream. It should reduce the 'Bus Factor'.