Commit Graph

155 Commits

Author SHA1 Message Date
Julian Prieber 2914523907 Added option to disable verification checkmark 2023-02-13 14:18:53 +01:00
Julian Prieber 1726d027b2 Update littlelink.blade.php 2023-02-09 23:29:15 +01:00
Julian Prieber 00ec750dca Added option to theme config to hide verification badge 2023-02-09 16:26:57 +01:00
Julian Prieber d1fd8dc9f9 Updated badge styling 2023-02-09 15:59:19 +01:00
Julian Prieber 0d63363e49 Updated badge system
Themes can now overwrite the check mark's colors and styling.
2023-02-07 16:20:17 +01:00
pey afe70e3b70
Update littlelink.blade.php 2023-02-07 08:49:02 -05:00
pey dcc0a042d6
Update littlelink.blade.php
added functionality to call for variable to authorize if user has the permission to display badge
2023-02-07 08:47:15 -05:00
Julian Prieber 5b23fa08de Changed profile picture save method to use user id
Changed profile picture to use user id instead of username to save it.

If merged, this will reset all current profile pictures on the instance.
2023-01-23 16:54:18 +01:00
Julian Prieber e2d4e86c0c Fixed fadein animation
Fixed fadein animation on littlelink page items
2022-12-23 12:54:07 +01:00
Adam Engebretson 4faffd503d
Correcting Social Links
Social services will utilize the Canonical URL while fetching sharable information like page title and image. This hard-coded value results in all share attempts resulting in 404s for the link fetching service.

Laravel Blade supports front-end frameworks that utilize similar-to-Blade syntax `{{ }}` by adding an escape option `@{{ }}`. As such, string concatenation of the `@` and the `$littlelink_name` was necessary.
2022-12-10 18:52:46 -06:00
Julian Prieber ce6d05cfdc Update littlelink.blade.php 2022-12-05 22:12:15 +01:00
Julian Prieber 313b2de881 Applied analytics to social icons 2022-12-05 22:02:30 +01:00
Julian Prieber 42d2fabd55 Multiuser support for social icons 2022-12-05 20:43:29 +01:00
Julian Prieber 1d48f8706b Updated CSS for social icons 2022-12-05 20:27:29 +01:00
Julian Prieber 34133543f1 Added link icons to littlelink page 2022-12-05 20:02:23 +01:00
Julian Prieber 3717eb953e Update littlelink.blade.php 2022-12-01 18:51:59 +01:00
Julian Prieber 9c2a91e0fc Added new block "Text" 2022-12-01 12:51:16 +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 19a49fedad Caching favicons locally 2022-11-28 19:44:02 +01:00
Julian Prieber 4b1054fc1f Revert "Moved favicon API offsite"
This reverts commit 940e7e35a5.
2022-11-28 17:03:17 +01:00
Julian Prieber 9b9444468d Revert "Update littlelink.blade.php"
This reverts commit a3a462ce9d.
2022-11-28 17:03:14 +01:00
Julian Prieber a3a462ce9d Update littlelink.blade.php 2022-11-28 13:59:31 +01:00
Julian Prieber 940e7e35a5 Moved favicon API offsite 2022-11-28 13:55:40 +01:00
Julian Prieber 801a7cb67f Optimized internal favicon API 2022-11-26 18:40:12 +01:00
Julian Prieber 5600ac090c Remove all external dependencies 2022-11-26 13:15:18 +01:00
Julian Prieber 6422f78eda Removed URL from link query string 2022-11-25 16:50:11 +01:00
Julian Prieber 16b4d652c9 Remove all external dependencies 2022-11-24 17:23:49 +01:00
Julian Prieber 80644a14b7 Updated first setup page 2022-11-23 22:09:59 +01:00
Julian Prieber 2d43347e66 Remove all external dependencies 2022-11-23 18:32:25 +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 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 0053a75648 Added option to themes to use default buttons 2022-10-28 14:05:08 +02:00
Julian Prieber c3e6b40e2d Update littlelink.blade.php 2022-10-26 20:39:53 +02:00
Julian Prieber 4a6ddc3639 Added capitalization to buttons
Buttons now support full capitalization of the default button names. For example, Previously, GitHub would be displayed as Github. Now, the proper capitalization is uses.
2022-10-26 11:20:11 +02:00
Julian Prieber 1c6f9d1746 Update littlelink.blade.php 2022-09-13 20:07:08 +02:00
Julian Prieber 142a51cda0 Update littlelink.blade.php 2022-09-11 15:06:31 +02:00
Julian Prieber 25afd8f074 Added options to disable custom code in themes 2022-09-10 11:15:40 +02:00
Julian Prieber 4d9c1e120b Implemented updates for themes v2 2022-09-07 19:32:36 +02:00
Julian Prieber d28cef5193 Fixed share icon on Firefox 2022-09-02 14:05:36 +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 db30b36202
Degoogled LittleLink Custom
Degoogled Project
2022-08-16 18:13:32 +02:00
Julian Prieber fa1210a2f2 Changed from Google to DuckDuckGo API to retrieve custom website icons
Changed from Google to DuckDuckGo API for improved privacy and compliance with local laws in an effort to degoogle LittleLink Custom.

See: https://github.com/JulianPrieber/littlelink-custom/issues/124
2022-08-16 18:01:49 +02:00
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
Julian Prieber c082602715 Changed Custom Website buttons to use HTTPS to fetch favicon 2022-08-16 16:36:45 +02:00
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 564a9d160b Added phone number button 2022-07-15 17:46:26 +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 032162cdbf Added option to hide share button 2022-06-08 20:26:21 +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 af284a58c2 Added analytics support to all pages 2022-06-08 15:58:04 +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 7daf7b6e75 Switched share button icon to Font Awesome 2022-05-31 23:29:27 +02:00
Julian Prieber 7b67d8c1f6 Expanded theme background options
Added new blank divs to allow for more complex parralax and other backgrounds
2022-05-31 20:32:58 +02:00
Julian Prieber f2103464d4 Fixed spacing 2022-05-31 14:16:05 +02:00
Julian Prieber e98d942b04 Added Theme Credit page
A short page that displays the contents of a Theme's readme.md.

Currently, a link to this page is only visible in the HTML meta tags if viewed as page source.
This page can always be accessed on your.domain.com/theme/@littlelink_name.
(For example your.domain.com/theme/@admin)
2022-05-31 14:11:26 +02:00
Julian Prieber 5a389dd243 Re-implemented entrance animation 2022-05-30 17:52:12 +02:00
Julian Prieber cfd7445766 Fixed animation timing 2022-05-30 17:47:31 +02:00
Julian Prieber 39f322bd86 Added custom animation support to Themes 2022-05-30 17:29:14 +02:00
Julian Prieber 26275c152d "Reset to default" button now works with themes
The reset to default button on the Button Editor now works with custom theme buttons.
2022-05-20 16:15:14 +02:00
Julian Prieber 074ef2060f Now hiding app name in page title if ll page is set as home page 2022-05-19 17:16:21 +02:00
Julian Prieber 0623352217
Update littlelink.blade.php 2022-05-19 12:27:37 +02:00
Julian Prieber d6a6a7ca43 Update littlelink.blade.php 2022-05-15 11:38:43 +02:00
Julian Prieber 38d6d64ecf Enabled optional use of custom HTML for ll page
Enabled users to use custom HTML formatting for their personal page descriptions.

Due to security reasons, this option is turned off by default. This setting can be enabled in the config.
2022-05-13 18:10:43 +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 ba62dd0e77 Update littlelink.blade.php 2022-05-13 00:09:28 +02:00
Julian Prieber fa3de262cb General optimization of ll page
See: https://i.imgur.com/N6pNlou.png
2022-05-12 23:54:05 +02:00
Julian Prieber 833e57a5e6 Increased profile and logo image size 2022-05-12 22:55:34 +02:00
Julian Prieber c48bf69ec6 Made share button more mobile friendly 2022-05-12 22:03:29 +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
Scott Clark 62ecf52fca
Update littlelink.blade.php
display contents of $littlelink_name in contact card
2022-05-12 14:05:24 +01:00
Julian Prieber 5ee5505b0d Added noopener, noreferrer, nofollow to user generated links
Added noopener, noreferrer and nofollow to user generated links to prevent users abusing the link system for malicious purposes.

Also, this is the 400th commit  🎉
2022-05-07 17:38:49 +02:00
Julian Prieber 5b63080f8c Added custom spaces and headings
Added custom spaces and headings users can add like buttons to their littlelink pages to divide button sections into groups.

Spaces can be changed via the number in the title, and one space equals one "<br>". The maximum spaces that can be added with one space 'button' is capped at 10.

The 'Space' button will be replaced with an empty space, so buttons could be visually separated into groups. Entering a number between 1-10 in the title section will change the empty space's distance.

The 'Heading' button will be replaced with a sub-heading, where the title defines the text on that heading.
2022-05-06 15:26:39 +02:00
Julian Prieber 8638072acb
Update littlelink.blade.php 2022-05-05 12:31:16 +02:00
Julian Prieber b7a5a0ab73 Update littlelink.blade.php
Enabled button editor edits to apply to custom website buttons.
2022-05-04 10:40:36 +02:00
Julian Prieber 087868c4e1
Changed title to name on ll page
Changed title to name on littlelink page
2022-04-28 17:32:43 +02:00
Julian Prieber eb96bb823e
Fixed text width on ll page
Fixed text width on littlelink page.

This might be a temporary fix. This essentially limits the width of the description text.
2022-04-28 17:12:21 +02:00
Julian Prieber 550a59587a Added custom color for custom icon
This addition is mega janky. Essentially, if a color code (e.g. white; or #FFFFFF;) is entered before the custom icon, this will change the custom icon's color. Essentially, this just pastes the custom color database entry as a style element on the icon.

I will use this until I find a proper solution for this problem.

For custom icons:
See: https://blog.littlelink-custom.com/upcoming-features/
And: https://blog.littlelink-custom.com/progress-of-the-new-button-editor/
2022-04-13 23:47:27 +02:00
Julian Prieber 851752ccfa Update littlelink.blade.php
Switched to Font Awesome kit.

See: https://blog.littlelink-custom.com/upcoming-features/
And: https://blog.littlelink-custom.com/progress-of-the-new-button-editor/
2022-04-13 19:08:09 +02:00
Julian Prieber a57d206f3c Now displaying profile name as title
User's profile names are now used as the title and heading for their LittleLink pages. Previously the '@name' was used for this, so for example the page name x.com/@admin is now not tied to the @admin part anymore, so a space could be used in the name for example.

See an example of this here: https://i.imgur.com/iBS8Hsm.png
2022-04-13 13:05:01 +02:00
Julian Prieber f5725bb059 Added custom icons to LittleLink page
Enabled custom buttons on LittleLink pages to now use the upcoming custom icons from the new Button Editor. The Custom button now uses Font Awesome icon by default. 

I used the Font Awesome library provided and hosted by Cloud Flare. I can include the library locally if this is preferred, contact me on our discord if I should implement this.

See: https://blog.littlelink-custom.com/upcoming-features/
And: https://blog.littlelink-custom.com/progress-of-the-new-button-editor/
2022-04-11 13:56:36 +02:00
Julian Prieber a53087f7a6 Enabled custom CSS to be applied
Enabled custom CSS to be applied to buttons on the LittleLink page.
CSS that is entered in the database will be applied directly to buttons.
See: https://blog.littlelink-custom.com/upcoming-features/
2022-04-07 15:56:02 +02:00
Julian Prieber 10b902f108 Added share button to LittleLink pages
Added share button that is displayed on user's personal pages that if clicked either copies the profile URL or opens a share dialog window depending on the browser and operating system.

Read the blog post about this topic here: https://blog.littlelink-custom.com/share-button
2022-03-29 23:08:06 +02:00
Julian Prieber 310a37c446 Fixed CSS class 2022-03-18 15:30:44 +01:00
Julian Prieber bcc5050c35 Added Custom Website button
Added new Custom Website button which visually looks similar to the previously added Website button with an except of the icon of the new button being the favicon of the chose link. The text on the button is set with the button title, just like the Custom button.

The favicon request is performed via the Google API. The icon displays correctly in most cases, with some exceptions. I might add a function later on that displays a generic icon if no icon was found.
2022-03-18 14:59:45 +01:00
Julian Prieber 09bd0aed96 Added new buttons
Added new 'Buy me a Coffee' and 'generic Website' buttons
2022-03-17 21:19:30 +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
JulianPrieber ec88a74889 Fixed bug/simplified setup
Fixed bug where users littlelink pages (domain.com/@username) would display a 404 error. This was caused due to the .env config file not containing an App URL. This issue could be solved by simply adding a URL to the config, this is now not necessary anymore, making the setup process easier and less confusing. 

I changed every instance of "{{ config('app.url') }}" to  "{{ url(' ') }}". This effectively automatically uses the correct URL for LittleLink links, even if LittleLink Custom is set up in a subdirectory.

In my testing, I couldn't find any problems this might have caused, so this appears to do the job just as well as setting the URL in the config. If I find any issues with this, I will revert this change.
2022-02-27 19:33:19 +01:00
JulianPrieber 2968da4a80
Added fadein animation to text and avatar
Added 'fadein' class to avatar image, littlelink_name and littlelink_description text. This class adds the fade-in animation from 'animate.css' found in /littlelink/css/.
2022-02-22 12:48:43 +01:00
JulianPrieber 51c16a2d00
Fixed bug
Fixed social preview image displaying on littlelink page
2022-02-21 20:33:55 +01:00
JulianPrieber c8696ca5d5 Fixed elseif
Fixed new elseif statements by changing:
"if
if"
to
"if
elseif"
2022-02-20 15:42:45 +01:00
JulianPrieber 8243d7c977 fixed logo.svg 2022-02-20 13:20:21 +01:00
JulianPrieber 96cfd5b4c1 Changed logo
As part of the new logo (https://github.com/JulianPrieber/littlelink-custom/milestone/1) I'm now using the new 'logo.svg' vector logo.

For this, I added an if-else statement in most cases, which first check for a custom logo uploaded by the admin or the avatar of an individual user. If the image doesn't exist, the default logo (logo.svg) is used.
2022-02-20 13:12:25 +01:00
JulianPrieber 5db777053e
Added dark mode detection
Added automatic dark mode detection to littlelink.blade.php via a cookie with js.cookie.min.js (see previous commit).

Detecting the dark mode setting is done with JavaScript. The script detects the preferred dark mode setting in the client's browser and saves it with a cookie. If the script detects a change in this setting, it corrects the cookie. 

Loading the appropriate skeleton.css is done via PHP with an if-else statement. If the cookie (saved by the previous script) color scheme equals 'dark' it will load skeleton-dark.css (found in /littlelink/css). 

If dark mode is not detected OR nothing is detected/cookie is getting blocked, the statement defaults to skeleton-light.css (also found in /littlelink/css).

You could change what the if-else statement defaults to (i.e. which color scheme is loaded if the cookie fails to detect) by switching 'skeleton-dark.css' and 'skeleton-light.css' around (see comment in if statement).

Everything added is commented and marked with begin/end.


Credit to 'user1575941' on Stack Overflow who's commented code REALLY helped getting behind all this.
2022-02-18 10:10:13 +01:00
JulianPrieber 44f57ce954
Added button entrance animation
Live demo: https://julianprieber.github.io/littlelink-admin-demo/button-entrance.html

Added an entrance animation for buttons on littlelink.blade.php. This animation was made by the Animate.css project (https://github.com/animate-css/animate.css).

Each button entrance animation lasts 100ms. Every button after the first adds 100ms to the value of the previous button i.e. button 1 loads after 100ms, button 2 loads after 200ms,  button 3 after 300ms and so on...

Timings for the buttons can be changed in /littlelink/css/animate.css

I put every button in a separate <div> Tag, so the animation wouldn't in interfere with the existing hover animation.

Likewise, I removed all <br> Tags.
2022-02-17 22:09:58 +01:00
JulianPrieber 14c324734f
Change public path
This is one of multiple public path edits. For simplified usability, I am integrating the public Laravel directory into the root directory. 

For this, I am changing every instance of 'public_path' to 'base_path' and will use this format in future changes as well.
2022-02-14 12:54:51 +01:00
JulianPrieber a58f412cc5
Added button animation littlelink
Added hover button animation to littlelink.blade.php.

  -  Included hover-min.css for animation
  -  Added class 'button hvr-grow' to all buttons
  -  Added class 'hvr-icon-wobble-vertical' to all buttons (for icon animation)
  -  Added class 'hvr-icon' to all icons (to indicate icon to hover-min.css)

Read more on how to use and change animations here: https://github.com/IanLunn/Hover/blob/master/README.md
Try a demo of the added animations here: https://julianprieber.github.io/littlelink-admin-demo/
2022-02-12 19:24:01 +01:00
JulianPrieber 0750e48830
Added support for social media preview
This shows a preview for Name, Bio and avatar image of users profiles if shared on social sites like Facebook,  Twitter, Facebook Messenger, WhatsApp, Discord, Pinterest and many more.
2022-02-12 14:59:07 +01:00