Commit Graph

170 Commits

Author SHA1 Message Date
JWB 1c3435a742
Admin dropdown auto shows
The admin link will automatically show when viewing a page within the admin links. Mainly whenever the url has /panel/ as the first directory after the domain.

We can also remove the config option for this now too but I didn't see where to find it at yet.
2022-12-14 06:07:46 -05:00
JWB 52c9c646fe
Update sidebar.blade.php
Update active link in sidebar
2022-12-13 05:56:37 -05:00
Julian Prieber 1a3719ae13 Revert "Update sidebar.blade.php"
This reverts commit b308b42f46.
2022-12-04 23:15:40 +01:00
Julian Prieber a4b67cb38e Update sidebar.blade.php 2022-12-04 23:15:26 +01:00
Julian Prieber b308b42f46 Update sidebar.blade.php 2022-12-04 23:15:05 +01:00
Julian Prieber 78a2aa27cd Update sidebar.blade.php 2022-12-04 23:07:21 +01:00
Julian Prieber 4dde1bc02b Bugfix 2022-12-04 20:30:49 +01:00
Julian Prieber 38c856484d Added support for custom favicon
Custom logo and custom favicons can now have any supported format.
2022-11-29 23:33:25 +01:00
Julian Prieber 5600ac090c Remove all external dependencies 2022-11-26 13:15:18 +01:00
Julian Prieber 20b4c83d44 Update sidebar.blade.php 2022-11-23 22:59:05 +01:00
Julian Prieber 80644a14b7 Updated first setup page 2022-11-23 22:09:59 +01:00
Julian Prieber 8315940559 Update sidebar.blade.php 2022-11-23 21:01:25 +01:00
Julian Prieber d0e170523e Remove all external dependencies 2022-11-23 18:33:28 +01:00
Julian Prieber 2d43347e66 Remove all external dependencies 2022-11-23 18:32:25 +01:00
Julian Prieber 5877fb00b8 Remove all external dependencies 2022-11-23 17:45:19 +01:00
Julian Prieber 56e17b9fd5 Remove all external dependencies
https://github.com/JulianPrieber/littlelink-custom/discussions/222
2022-11-23 16:37:30 +01:00
Julian Prieber 9b9593b98d Added first setup page
This setup will:
1. Check the server dependencies
2. Setup the database
3. Create the admin user
4. Configure the app
2022-11-23 15:52:33 +01:00
Julian Prieber 542afadd8b Fixed HTTPS links on reverse proxies
The force HTTPS option in the config now turns any link into HTTPS. This also works on reverse proxy setups.

The previous option in the config is now being replaced with the new option FORCE_ROUTE_HTTPS which redirects all routes and pages to HTTPS. This option should never be used behind a reverse proxy.

See issue: https://github.com/JulianPrieber/littlelink-custom/issues/216
2022-11-20 14:10:49 +01:00
Julian Prieber 30ac613a9b Update sidebar.blade.php 2022-11-19 12:21:44 +01:00
Julian Prieber bfb75e1d1d Fixed image width 2022-11-19 12:11:34 +01:00
Julian Prieber 8350373262 Updated config editor 2022-11-17 15:07:06 +01:00
Julian Prieber 314701dfaf Fixed changes in merged pull request
1279d478e2

@MagicLike
2022-11-10 13:46:10 +01:00
Julian Prieber 951df23c91 Laravel 9
Update to Laravel 9

Commit for the upcoming from-end update.
2022-11-08 16:11:59 +01:00
Julian Prieber 6624bbdaa9 Updated version and event detection 2022-10-19 15:05:59 +02:00
Julian Prieber 6bb432a4be Fixed bug
Button editor broken by link sorter
2022-08-31 13:35:56 +02:00
Julian Prieber 1ddae3fc94 Fixed FA
Fixed Font Awesome. Again...

Now using CSS and JS
2022-08-22 12:44:09 +02:00
Julian Prieber 0b7ee6949d
Merge pull request #123 2022-08-17 16:05:41 +02:00
Milan C 9cc14c59af Change base.. 2022-08-17 01:57:48 +05:30
Milan C 2866d66ce0 Added Base. 2022-08-17 01:21:56 +05:30
MagicLike 0ddd06b01a Degoogled Project
- Replaced Google Fonts with Bunny Fonts
- Replaced Google example with "Example" & "example.com"
2022-08-16 17:50:13 +02:00
Milan C cb613f6a05 Init Sortable links. 2022-08-15 00:35:26 +05:30
Julian Prieber 435e09a240 Fixed FA 2022-08-10 20:03:46 +02:00
Julian Prieber fc8a18f0d7 Switched Font Awesome from JS to CSS 2022-08-08 14:11:19 +02:00
Julian Prieber 0fc7803dab Hotfix 2022-07-05 22:35:20 +02:00
Julian Prieber 0df539c261 Added HTTPS redirection to env config 2022-06-30 10:39:40 +02:00
Julian Prieber d00998bdc1 Added option to disable password warning 2022-06-28 18:10:39 +02:00
Julian Prieber 7103f8dc1d Added warning if user still uses default password 2022-06-28 12:13:39 +02:00
Julian Prieber 3821d8c277 Update sidebar.blade.php 2022-06-27 22:32:18 +02:00
Julian Prieber fd611155f9 Added section to Advanced Config 2022-06-27 16:29:50 +02:00
Julian Prieber c739d7b1b3 Fixed cURL error 7 on proxied server 2022-06-16 09:56:36 +02:00
Julian Prieber 02bec65724 Changed name of config file 2022-06-09 22:26:35 +02:00
Julian Prieber 6e9bad6751 Renamed meta.php to config.php 2022-06-09 19:08:37 +02:00
Julian Prieber 4996976975 Update sidebar.blade.php 2022-06-09 18:04:40 +02:00
Julian Prieber 76c484f018 Added option to change text on "Home" link 2022-06-09 17:41:44 +02:00
Julian Prieber 09aea659c8 Fixed favicon on register and login page 2022-06-09 17:16:31 +02:00
Julian Prieber a83d00a628 Added option to change footer links and texts 2022-06-09 12:33:23 +02:00
Julian Prieber 29bee9b62b Update sidebar.blade.php 2022-06-08 17:52:21 +02:00
Julian Prieber d377d3d406 Update guest.blade.php 2022-06-08 17:28:26 +02:00
Julian Prieber 5e23002b58 Fixed color scheme not applying 2022-06-08 17:24:51 +02:00
Julian Prieber a36e985bfc Added overwrite for default color scheme
Overwrites default theme regardless of preference defined by the operating system, unless manually overwritten by user.

Either "dark" or "light".
2022-06-08 17:09:24 +02:00
Julian Prieber 8639c44fa8 Fixed formatting bug 2022-06-08 16:45:03 +02:00
Julian Prieber 75d7e84567 Updated analytics layout 2022-06-08 16:38:52 +02:00
Julian Prieber af284a58c2 Added analytics support to all pages 2022-06-08 15:58:04 +02:00
Julian Prieber 1884e3237e Fixed bug "lang default" 2022-06-08 15:55:55 +02:00
Julian Prieber ca86582157 Added support for custom meta tags
Added support for custom meta tags via a new config file.
Custom meta tags will only be active if "CUSTOM_META_TAGS" is set to "true" in the config.

Replaced "<html lang="en">" with "@include('layouts.lang')" meaning HTML lang can be changed in the new config, defaults to en if not active or not defined.
2022-06-08 15:43:51 +02:00
Julian Prieber 3519a37217 Added BETA notice to sidebar 2022-06-01 18:36:53 +02:00
Julian Prieber 1fd768057f Update updater.blade.php 2022-05-31 12:32:36 +02:00
Julian Prieber b445eb85ff Re-implemented footer hover animations 2022-05-30 23:10:08 +02:00
Julian Prieber 15b2a03035 Update sidebar.blade.php 2022-05-28 16:32:53 +02:00
Julian Prieber abe3a993b1 Update sidebar.blade.php 2022-05-28 16:07:19 +02:00
Julian Prieber 4739567743 Update sidebar.blade.php 2022-05-28 15:52:45 +02:00
Julian Prieber 0e257ef8ab Updated update notification system
Made NOTIFY_UPDATES=all and NOTIFY_UPDATES=major use the same version source file to prevent GitHub API limit from being reached.
2022-05-28 15:49:29 +02:00
Julian Prieber d9bd9d6307 Update updater.blade.php 2022-05-26 11:10:33 +02:00
Julian Prieber 387b67db1d Update sidebar.blade.php 2022-05-25 23:19:29 +02:00
Julian Prieber df384df2cf Update sidebar.blade.php 2022-05-25 23:15:34 +02:00
Julian Prieber dc32587dee Update updater.blade.php 2022-05-25 17:04:47 +02:00
Julian Prieber d1f9bffc07 Update sidebar.blade.php 2022-05-25 16:27:06 +02:00
Julian Prieber 1fd71f1727 Update updater.blade.php 2022-05-25 16:22:14 +02:00
Julian Prieber 4747c42ea2 Update updater.blade.php 2022-05-24 15:38:52 +02:00
Julian Prieber 5e5f575d06 Update updater.blade.php 2022-05-24 15:30:10 +02:00
Julian Prieber 496b4755b6 Added route 2022-05-24 15:23:10 +02:00
Julian Prieber fab724a09d
Merge pull request #62 from JulianPrieber/main
Update footer.blade.php
2022-05-19 12:29:33 +02:00
Julian Prieber 6c04067d24
Update footer.blade.php 2022-05-19 12:28:41 +02:00
Julian Prieber 5a02ceaaec
Update footer.blade.php 2022-05-18 21:57:36 +02:00
Julian Prieber 592dde4b2a Added support for custom themes 2022-05-18 21:08:58 +02:00
Julian Prieber 771a03bcaa Made footer page texts not centered 2022-05-13 17:09:35 +02:00
Julian Prieber d5418256a9 Added dark/light mode override to ll and home page 2022-05-13 14:06:12 +02:00
Julian Prieber 1eb92e56b2 Added dark mode toggle for Admin/User Panel
A simple toggle switch that sets an override cookie with JavaScript.

The cookie is still read with PHP/blade.
2022-05-13 13:03:10 +02:00
Julian Prieber 9d368ef9cb Switched to dark mode detection via CSS instead of JavaScript
Switched to dark mode detection via CSS instead of JavaScript on users LittleLink pages and the home page.

I decided to use this approach instead of the previous JavaScript version. This means that a manual switch to change between light and dark mode by user won't be added.
2022-05-12 20:17:48 +02:00
Julian Prieber cdfa580d36 Fixed Config Editor not working
Fixed Config Editor not working see https://github.com/JulianPrieber/littlelink-custom/issues/51
2022-05-07 16:23:25 +02:00
Julian Prieber 4eec538834
Update sidebar.blade.php
Adds the ability to insert code snippets into the head and body element laid out by the sidebar with blade by including:

@push('stylesheets')
    <!-- your code -->
@endpush

@push('scripts')
    <!-- your code -->
@endpush
2022-05-03 23:27:37 +02:00
Julian Prieber 43cca4b191 Added security check sidebar
Added a security check on the sidebar.blade.php that tests if critical config components are accessible externally by anyone.

This is a fairly crude method and not at all optimized. I might change this in future revisions. At least this feature is disabled for normal users, so it won't affect load for non admins. This is the same code from the new diagnostic tool added in the previous commit. I had to change the names of each variable, otherwise the diagnostic tool could not use the same variables. The smart thing to do here would probably be to simply use the variables only in the sidebar, since they are loaded anyway since the sidebar layout is included on the diagnostic tool, effectively loading the variables twice. I might change this later, but for now I will leave it as.

Read more about the diagnostic tool on the blog here: https://blog.littlelink-custom.com/new-security-check-tool/
2022-04-20 18:18:41 +02:00
Julian Prieber 021029d441
Updated Bootstrap Icons 2022-04-20 00:39:15 +02:00
Julian Prieber 877dd8373f Added option to only notify about important updates
Added option to only notify about major updates. This setting is now the default and can be changed in the config by changing the setting "NOTIFY_UPDATES" from "major" to "all".

This setting was achieves by turning the previous if statement into an if-else statement with the new option. For this, I utilized a function that gets the latest tag from the GitHub repository.

I wasn't able to implement the 'if URL exists' check, the URL would just not return an error negating the function. I will probably fix this in the future, but as it is now, if the GitHub API server can't be reached this might trow an error.

The major release is still the previous update version retreated from the GitHub repository. This means I will only update that version for major or otherwise important updates. 

I implemented this feature because I didn't want to spam new users with a new update notification every other day.
2022-04-04 17:46:32 +02:00
Julian Prieber 805e71b886 Update footer.blade.php 2022-03-29 17:45:48 +02:00
Julian Prieber 8fdc1a7f74 Fixed spacing on custom links added by text editor
Fixed word spacing bug in texts added by the new page editor. This bug caused inserted links to have extended spacing between words.

This 'bug' was a previous feature added to display links further apart for easier readability. The feature didn't scale well with the newly added page editor which allowed users to add their own links to edited texts, causing the bug.

The extended spacing was achieved with the 'padding' CSS tag. I simply removed the tag from all an HTML tags and made it into its own class, 'spacing'. I added the class to every element on the site that previously depended on this tag.
2022-03-29 16:27:50 +02:00
Julian Prieber b6efcde8a5 Added dark mode for credit footer
Lazy quick fix
2022-03-22 10:17:47 +01:00
Julian Prieber 18392ed409 Improved responsiveness 2022-03-21 23:29:42 +01:00
Julian Prieber 0aba49dec8 Improved responsiveness 2022-03-21 23:28:00 +01:00
Julian Prieber a290e78000 Added footer / credit option
Added a footer and a credit options. Both can be turned off in the config.
2022-03-21 23:11:49 +01:00
Julian Prieber aac19d17f4 Bugfixes
Fixed problems in .env and database seeder
2022-03-21 15:37:55 +01:00
Julian Prieber bf39efddf4
Update sidebar.blade.php 2022-03-21 09:13:10 +01:00
Julian Prieber e319301b51
Added hide event option
Added option to hide Events. Next to all event notifications, an "X" will now be displays, which hides the notification if clicked until a new event notification is shown. This works by setting a cookie with the ID of the event notification. Learn more about this on the Blog post here: https://blog.littlelink-custom.com/hide-event-option/
2022-03-20 23:43:27 +01:00
Julian Prieber 4babe1fe2e Made update notification optional / Added Event notification
Added optional event notification that can be enabled in the config (is disabled by default).

You can read more about this feature on the Blog here: https://blog.littlelink-custom.com/event-notifications/
2022-03-20 17:15:16 +01:00
Julian Prieber 98bc1d0172 Changed update server
Changed the update server URL to the version.json hosted on GitHub.
2022-03-19 17:16:33 +01:00
Julian Prieber fe7fc9f714 Updated Domain 2022-03-17 21:28:26 +01:00
Julian Prieber 1d2df13b0f Added footer to Admin Panel
I re-enabled the footer disabled by Latuminggi's LittleLink Admin fork. This footer adds a Home button which brings you to the landing page, in addition to Terms, Privacy and Contact buttons.

I also edited the policy pages for the buttons named above to include the new logo as well as the dark mode detection.
2022-03-17 17:33:37 +01:00
Julian Prieber fef2e09aa9 Added built in Config Editor
LittleLink Custom now includes an .env config editor. This editor can be accessed via the Admin Panel under Admin>Config.
This editor allows admins to edit, backup, download and upload the .env configuration file. All in all, the new feature, allows users to more easily edit the configuration file, contributing to my goal of making LittleLink Custom easier to use.

Read more about this topic on the Blog https://blog.littlelink-custom.com/built-in-config-editor
2022-03-16 14:16:03 +01:00
JulianPrieber 907a3116bb Fixed dark mode not applying on first visit
This 'bug' was caused due to the way the dark mode was applied. The dark mode detection detects the preferred theme style from the client and then saves the preferred type with a cookie, all with JavaScript. Then a simple PHP if-else statement loads either the dark or light mode CSS theme, depending on the cookie.

The problem here was that the cookie would only be detected if the page was refreshed, so once the cookie was set, the dark mode was applied every time without a problem. But the first time a user visited the site and the preferred theme was set to dark mode, the page would still display the white version until the page was refreshed.

Now, I could have changed how the page applies the dark mode, however I decided against that and went with this commit instead.

Now I'm not really experienced with JavaScript at all, so this definitely could have been solved in a more elegant way, but this is what I did:

I added a bit to the JavaScript that sets and reads the cookie. When the page finished loading, a simple if statement is run that requires the following conditions: 
The URL contains a '#' and the color scheme equals 'dark' and the cookie isn't set yet. 
After these conditions are met, '#dark' is added to the URL and the page will be refreshed.

This refresh is only performed without the cookie, thus only refreshing the page on the first visit if the dark mode would be applied.

The '#dark' is only added to the URL to fail the first requirement of the if statement, preventing the page from being reloaded in an infinite loop. Otherwise, the  '#dark' part of the URL fulfills no purpose and only the '#' part is required, so it doesn't even matter what comes after the hash. I just chose this for clarification.

If the dark mode cookie is blocked by the user, the page will be set to light mode and refreshed every time they visit but the '#dark' will still be added to the URL, preventing the infinite refresh-loop.
2022-03-03 10:49:10 +01:00
Julian Prieber 9a3348ffd2
Fixed register/login... dark mode
Removed check for browser type, now applies dark mode regardless of browser type if dark mode cookie is detected
2022-02-27 19:43:58 +01:00