Commit graph

59 commits

Author SHA1 Message Date
ro
c5afbb9131
API Decouplng Part 2
removed all remaining API requests from the front end and removed the
FipamoAdminAPI js file, changing it to ContentRequest as it now handles
posting data to the system directly, authenticating it self by checking
the embedded CSRF token that regulary rotates

also renamed MaintenanceManager to Maintenance request and moved it to
the same dir as ContentRequest as they are both libraries that connect
to the backend
2024-07-17 15:08:10 -06:00
ro
3d17771f76
API Decoupling, Part 1
The first part of improving the API is removing all admin functions from
the front end so those no admin methods will be available client side.

The urls in the FipamoAdmin js file have been changed to post directly to the
system and they are handled from there. To account for this change
controller routes for every standard method have been created for better
organization and readability.

The FipamoAdmin js file will be integrated with the rest of the front
end code and will not be seperate library
2024-07-13 14:23:01 -06:00
ro
ac543f3856
UPDATE: page deletion
page editor was missing soft delete of page as it had not been wired up
to the new api yet. oops
2024-07-06 16:23:23 -06:00
ro
d24df50d96
FEATURE: Full site restore
content restore was already enabled, so the last step was completing
file restorartion if there was a file archive uploaded

now that this has been added, full site restore from backup archives now
works.
2024-07-05 13:17:53 -06:00
ro
4e880092c1
FEATURE: File Backup
Turned on file backups that grabs uploaded images in the public
directory and saves them in a zip so they can be downloaded and
archived.
2024-07-03 14:30:32 -06:00
ro
bc7b1fe7ec
FEATURE: Restore to default
plugged in a new feature that will allow the site to be reset to its
default state, clearing out all content and configurations to start
fresh
2024-07-02 17:09:27 -06:00
ro
928d5468db
removed hard-coded page id in theme controller
theme controller class was using hard coded uuids to find and display
page data, so that's been tweaked so that is no longer needed and finds
what it needs based on what time of view is being requested

also connected it the the preview 👁️ button in the page edit screen so
page layouts based on the current theme can be seen before they are
published
2024-06-26 17:10:24 -06:00
ro
ed6f028598
added layout varible to sorting, updated ignore
data sorting needed a new variable to differentiate between index page
rendering and standard page rendering, so that was added to the return
as well as updating the render script to include the variable that
wasn't being added for tags

also updated the git ignore file to ignore global images that are not
used by the base system. the script theme folder needs to be ignore as
well as that is going to updated by the theme itself for front end
coding and not used by the system
2024-06-26 14:08:53 -06:00
ro
37120efe18
asset moving for themes fixed, settings save patch
When testing themes, the script wasn't moving all assets that were in
subdirectories of the theme css folder, so that's been fixed so it moves
everything when testing a theme and rendering the site

there was also an issue with saving settings options because the script
was referencing email data that was no longer being provided from the
front end, so it was erroring out trying to save it. those references
have been removed so it's smooth sailing
2024-06-25 15:33:42 -06:00
ro
e0994b32ab
mail error capture (#113)
tweaked error catching to return a message when the mail action fails
2024-06-05 13:50:45 -06:00
ro
b37e64d062
Updated Mailer (#113)
Removed email settings from settings.json and moved them to the .env
file to use Laravel's mailer functionality.

references to the old mailer has been removed from settings.json,
data sorting class and the settings template file

the front end script has also been updated to accomodate different
message types, starting with a test message so members can make sure the
settings defined in the .env are working
2024-06-05 13:33:11 -06:00
ro
8704fdcfe1
fix for status check
legacy reference to depracated auth class was removed
2024-06-04 14:58:55 -06:00
ro
35c22913f8
incorrect path to init service class
there was a fatal error in the init process because it was looking for a
class that had been moved but the reference had not been updated, which
is now corrected
2024-06-02 20:52:01 -06:00
ro
91aa2703b6
avatar and background image upload fixed
uploading new member avatar and background images weren't uploading to
the correct location and the approprate files weren't being updated, so
that was been fixed.

the folks template in the init directory also needed be updated because
the system was looking for 'avatar' instead of 'avi' which was resulting
in some mismatch calls that were resulting in not found errors. the
variable is now 'avatar' everywhere for the sake of consistency.
2024-05-31 12:56:38 -06:00
ro
cd056336cd
file upload fix
found a minor bug that was preventing file uploads, so that was fixed.

also commented out some buttons that are for features that have not been
added just yet
2024-05-28 13:16:50 -06:00
ro
8c375e6ba1
update member info from settings
setting sync is working but member data was not being updated in the
folks file or in the current active session, so that's been addressed

still need to turn on avatar updating as well, but that is tied to
updating the settings page, so that will be handled when image uploads
for that area are reactivated
2024-05-13 13:36:06 -06:00
ro
064407aa88
implemented member repo class
a class for members was needed for long term handling of member
functions like login, update, status checking, etc so that class was
created and the AuthService class was removed as it was redundant and
it's functionaity moved to the member class
2024-05-13 12:06:05 -06:00
ro
36d04c8f68
reorganized services
service classes are beginning to swell as there functionality is being
fleshed out, so a new organizational structure was needed to make sure
class sizes don't become too large and to increase site managability and
legibilty as more features get added and the code base grows.

data is for retrieving, managing site information, assets interact with external files
and upkeep is for maintenance.

some additional tweaks were also made to the options menu template to
prep it for it's transition to a toolbar component
2024-05-12 22:14:53 -06:00
ro
7f1654d13b
controller reorganization
cleaned up the controller directory and renamed files to more approriate
names.

made the appropriate changes to RouteController as well as tweaking the
routing so it's simpler and easier to follow
2024-05-09 11:24:12 -06:00
ro
bd25c0b104
route controller auth checking
there was no auth checking for dashboard and theme routing, so that's
been added
2024-05-08 12:27:56 -06:00
ro
e224410cfa
navigation route fix
the route to show menu order was erroring because it was calling a
misspelled method, so that was fixed

also added some notes to improve the StartController
2024-05-06 15:18:05 -06:00
ro
cb99c44a33
implemented dynamic page rendering
html page rendering works, so the next step was to get dynamic page
rendering up and running, meaning instead of pages being exported to
html, they are instead rendered on the fly when the corresponding URL is
hit.

the StartController that handles page routing needs to be organized a
bit better as there is some confusion between index and regular page
files so it's clear where requests are going and what is the expected
response
2024-05-06 15:09:24 -06:00
ro
ceeb4a2573
page routing rework
routing needed more nuance than what was possible in the web routing
controller, so a new RouteContoller was created to identify requests and
then sending them to the correct controller to get the appropriatie page

this was necessary because routing the previous was erroring out because
when the system was looking for pages to display with dynamic page
creation it would get confused with prexisting routes and choose to
display whatever the Start Controller was capturing, ignoring routes
defined in the web controller.

but that's been cleaned up without having to re-write everything and
continues to use existing controllers
2024-05-06 13:37:26 -06:00
ro
6cb9631a46
intergrated the fipamo theme kit
a basic preview engine has been added to ease the process of editing
pages. currently it previews all basic templates and custom created
pages

this is will replace the external fipamo theme kit tool, which will be
archived
2024-04-25 15:03:06 -06:00
ro
8bf640ee18
edited asset moving class
conversion of markdown files to html works fine, but the coresponding
css, js and image assets were not being moved, so the class responsible
for moving them was edited so theme assets are moved to their
    appropriate directories when the site is published.

also made some css and image edits, and removed a legacy css files that
were no longer in use
2024-04-25 13:17:24 -06:00
ro
a92e124957
default theme clean up
the default theme included with fipamo was a bit janky, so that's been
cleaned to bring it more inline with current accessiblility standards,
an updated mobile friendly menu, updated the logo and plugged in the
fresh colors.

the layout is still a bit boring but the main purpose of the default is
to show how templating works, so it needs to be kept as simple as
possible

but it still has some room for making it pop a bit more.
2024-04-23 13:41:41 -06:00
ro
b2493820e9
activated image transfer for restore process
rather than make a massive downloadable archive file for ever image on
the site (which still may happen), a method has been added to make
copies of imags from an external site and store them on the fresh
install based on the image list saved in the created back up file

it's clean but some additional error checking is needed so the process
does not crash out when a file can't be located and upon completion the
user can be notified of what images did not make it over in the process
2024-04-18 14:36:05 -06:00
ro
2f0e1fdc62
implemented install from scratch
activated the fresh install process for setting up a brand new fipamo
install
2024-04-16 15:36:57 -06:00
ro
f8005aa60d
turned on backups
ported over the backup functionality from the old build to the new while
making  few tweaks

instead of packaging up all files in the site to create massive zip
files, now a list of files is created for the user and blog directories
that the system will use to download and put them in the appropriate
directories, resulting in a such slimmer backup file.

archiving images my be added at a later date, but will be kept seperate
from the current back up process
2024-04-05 12:29:38 -06:00
ro
1f62e6f816
reworked sorting service class
decided to keep the sorting service class as is and remix how it works to
return data objects rather than just settings information to render
pages.

the overall size of the class is still large but now there are
some opportunites to move around some methodolgy to reduce it.

also made the necessary changes in the render service class and the
theme controller to use the new methodology
2024-03-28 16:42:37 -06:00
ro
3c6322ec12
actived menu editing
the last ui page that needed to be added was managing the main
navigation menu for rendered pages, so that's been turned on. menu
items can be added by pinning pages to the menu when editing them and
can be removed by unpinning them or deleting them from the navigation
edit ui

it touched quite a few systems so all of those classes needed to be
edited as well tweaking the front end script to work with the new
modular script format
2024-03-22 14:35:44 -06:00
ro
252059df19
settings syncing active
turned on the abiity to save settings to config file via the settings
page

the current member session needs to updated by the data coming in but
that will be handled by a specific member service that hasn't been built
yet, so just commenting it out for now

also fixed a minor bug that was stopping the save on render toggle from
working correctly, so now it's saving and updating the status properly
now
2024-03-19 16:35:02 -06:00
ro
eda377aba3
publish site from settings active
with the setting page set up, now the the settings api can be added,
beginning with the ability to render all files from settings.

the base settings api class is set up, so now the rest of the methods
can be added
2024-03-19 15:34:01 -06:00
ro
0951005341
added settings page
it's time to get the setting api running so site options can be editied
so the first step is to get the settings page up and running.

the sorting class is getting a bit heavy, but it will hold the method
for gathering settings page info for now.
2024-03-19 13:19:27 -06:00
ro
2420ea193c
added front controller
added a controller class to handle what is being served when the browser
hits the root directory.

very basic to start as it is just a placeholder until it's filled out
2024-03-18 19:48:59 -06:00
ro
a6b63ca551
implemented render engine
page rendering for tags, archives and markdown pages is now up and
running and being exported to html when requested.

currently it only works when saving a page, so now the settings page
needs to be plugged in so those features can be activated and toggled
through that UI

error checking will probably be added in the near future just in case
something unforeseen happens in the render process, resulting in the
site erroring out.
2024-03-18 16:14:17 -06:00
ro
efb2e4f0bd
created asset service class to handle file moving
theme controller was getting top heavy, so an asset service class was
plugged in to handle moving assets around for theme testing and
eventually to production when HTML rendering is set up
2024-03-16 12:36:51 -06:00
ro
4eed4489f4
page options fixes
with the archive template up and running a bug with page creation and
editing was revealed which was certain options were not being set
correctly due to property not being set correctly when an markdown page
was being edited.

also added a null state check for page submissions that do not have a
layout set, so it defaults to 'page'

also patched theme service class to look for blade templates instead of
twig, which it was still doing
2024-03-15 15:18:10 -06:00
ro
2f2955e865
converted page, archive and tags files
the remaining base template pages have beeen converted to blade as well
as filling out the data they need to render being added to the sorting
service class

theming controller and and sorting service still need to be optimized
but they work so now they can be refined

once they have been cleaned up, the render service is class is ready to
be finished
2024-03-15 14:28:26 -06:00
ro
ba2e75b186
converted index template to blade
started the front end template conversion with the index page
2024-03-14 20:03:46 -06:00
ro
a5583debbd
page rendering, part 1
to complete page rendering, the default theme needed to be converted to
use blade templating. rather than update the theme kit as a seperate
progress, it will be integrated into this codebase so themes can be
developed and tested in app.

the basics for the theme kit are in place, so now conversion of the
defualt theme can be completed.

once the that is done, it can then be used to complete the rendering
engine to export HTML files
2024-03-14 16:58:11 -06:00
ro
4f7bbcdf86
cleaned up new page creation
editing page works but making new pages was still wonky, so that was
fixed and now page creation works fine

made some minor tweaks to prettier config for css formatting
2024-03-12 16:16:36 -06:00
ro
6ce5e91624
file upload service added
ported over the new file uploader from the old build and made it a
service make for from some additonal file processing
i.e. image optimization or video converstion before it is saved to the system
2024-03-11 16:32:38 -06:00
ro
7024285b70
page update api up and running
the first part of the page editing API is working again after porting it over
form the old fipamo build. a few changes where made to make the code a
big more managable, but the end to end process works for updating pages.

the remaining page editing methods will be activated after the rendering
engine is in place because that's going to be a pretty siginficant
effort.

but this is a big step.
2024-03-08 14:09:43 -06:00
ro
b9b04f1ab2
page api rewire, pt 1
start building out the new version of the page editing api while making
some changes to the original scripts for added flexibility and using the
full range of HTTP methods that weren't being used before.

currenlty, it's just an end to end test to make sure the plumbing works
as it should data is being passed and can be processed.

now that it all works, the guts of page editing can be completed

update sortablejs to the latest since it's been awhile and got rid of
the old version
2024-03-07 15:42:11 -06:00
ro
166e19a656
AuthAPI, favicon tweak
Got the first part of the API working, which checks to see if there is a
valid session active to set up requests

also some small changes to get the favicon working, yeah, yeah, but it's
cool looking...
2024-03-07 12:04:52 -06:00
ro
f7c9558da2
reorganized controller dir, added check for dash
seperated dash controllers for api controllers in the controller
directory to make them easier to manage

also added middleware to check authorization when accessing dash pages
2024-03-07 11:36:31 -06:00
ro
b527884c51
added theme service class
page editing was missing the selector to choose what template the page
was using, so a theme class was created to handle retrieving and sorting
what classes where avaiable in the themes directory

still looking for twig files because themes haven't been converted over
yet, but one step at a time
2024-03-06 10:27:41 -06:00
ro
ad57c29e8d
filled out auth service class
expanded the auth service class to store member info in the current
session so validation is easier

also added a token to session data that expires every hour so people
won't be logged in forever and take breaks

hey, you matter too
2024-03-06 09:50:09 -06:00
ro
d1c3b4a8f6
page editor template rebuilt
There are some spacing issues that need to be addressed but the page
editor template has been added and the CSS all lines up

scripting is still an issue as the backend that handles content still
isn't in place, but the front facing piece is in place so now those
components can be built

scripting is going to get an overhaul anyway, so this is a good place to
start that process
2024-03-05 15:49:30 -06:00