The process for updating blocklists per source wasn't effecient, so it
has been rewritten to process each source individually before moving on,
relieving some processing load on the server and ensuring every source
comes back with data, even in the event it doesn't grab it the first
time.
also removed the recent list from the index page as the recently updated
list doesn't reflect what's been the last to get updated and changed the
theme color to match the current palette.
finally found the correct exception that captures a connect error when a
source url cannot be loaded, so it logs the error and just keep
executing the script.
Now automation can be enabled since the system knows how to handle
errors. Fuck. Yes.
The script for collection blocklist info was getting a little heavy, so
it's been split in two to make it more accessible and easier to
maintain. The first part collects data from current sources and stores
it for the second part of the script, which compiles all the data and
updated the database.
The Source model was expanded to track votes so block and silence counts
can be easily verified on the backend.
changed the function that retrieves a single location to decide what to
get based on the variable type, so it doesn't need to be two seperate
functions
The Location Controller was getting too heavy so an Update and
Maintenance service class was created to offload most of it's
functionality. Location upating was moved to LocationRepository
There was also a small issue with responsive list links not adapting
properly in Safari that was fixed