there were places in the codebase where path to fipamo specific paths
and file were hard-coded into the system, reducing flexibility and
customozation for people that want to define their own path.
those hard-coded elements have been removed and replaced with references
to the env file so those paths can be changed to whatever is needed
the .env.example file has also been updated to contain default paths for
easier installation.
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
when sorting tags on a fresh install, a fatal error happens when the tag
array is empty because it looks for a var that doesn't exist yet. that's
been patched
the settings json file was still referencing the old version of the base
theme, so it was crashing because it doesn't exist anymore. updating it
to the new theme name clears this error
the settings page was failing to load because it was referencing a
parameter in the mail config data array that did not exist.
that's been fixed so the page loads properly
the init process was erroring out because instead of re-running the
script to make a valid token, it was not capturing the correct error, so
it would just fail
also the folder for saving config files needed to be created to save
them, so that addition was made as well
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
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.
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
ripped out all of the old responsive styles from the setting layou and
plugged in the new format.
still needs some polish but the new structure is in place, so progress
will be easier
some script got removed during the restruction that included the js
handler for the mobile menu, so that was replaced with a css toggle to
keep it simple
the themes tab has been brought into alignment with the new design, so
the only thing that remains is redoing responsive styles for the
settings page
whew
redid the css for the member profile tab under settings.
responsive style still need to be addressed, but that will happen after
all tabs have been converted to the new layout
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
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
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
logo images did not have an alt tag, so they've been added
buttons on the options menu were generic, so an interactive description
was added through the use of aria labels
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
had some comments referencng a the idea for a refactor of routing, but
decided to stick with RouteController for now becuase of the
flexibility.
if improvements are to be made, they will be made in that class.
added some labels to login and set up forms for better accesibility and
clarity about what info is being requested.
found a bug in setting where the site would error out if it can't find
the correct config files instead of going to set up, so when config
files aren't present, it loads template files to continue to process.
still thinking about a better fix for this
also discovered that the init files needed for a fresh install had been
removed, so those are back in place
main navigation had buttons nested inside of href tags to house previous
font icons that were removed, so the nesting is no longer needed and it
could introduce accessibility propblems, so it needed to be cleande up
now they are hrefs styled as the previous buttons so there is no visual
change in the UI
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
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
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
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
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
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.
the back up process did not include saving document and video assets so
that needed to be updated to save all of those references along with
images
once that was done, the restore process had to be updated to look for
docs and videos and create the corresponding directories to move them
too
the script responsible for moving those assets was also streamlined so a
seperate process was not needed for each asset type.
the last update date in the settings template was displaying
incorrectly, so that was fixed as well.
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
laraval had a milestone update to version 11, so the codebase needed an
updgrade.
there was one package that wasn't needed that was blocking the upgrade
because it was attached to a hard coded dependency in an older version
of laravel so it was removed.
this changed required an edit of some template files, so those changes
were made as well
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
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
moved methods of string service to helper function and got rid of the
string service class
still messing around with the sorter helper to see how dependecies work.
sorting as a helper may be a bit too complex for what help functions are
supposed to be
some serivce classes are getting to heavy, so some functionality will be
offloaded to custom helper function for better manageability and
readability.
a couple of place holders have been added to demonstrate how helpers
will be organized
improperly used role attributes have been removed from navigation edit
template
there was also a duplicate class attribute error in notifications that
has been fixed