DNABeast

Manager at Civicnet Web Development

Member Since 7 Years Ago

Brisbane, Australia

Experience Points
64,910
Total
Experience

90 experience to go until the next level!

In case you were wondering, you earn Laracasts experience when you:

  • Complete a lesson — 100pts
  • Create a forum thread — 50pts
  • Reply to a thread — 10pts
  • Leave a reply that is liked — 50pts
  • Receive a "Best Reply" award — 500pts
Lessons Completed
843
Lessons
Completed
Best Reply Awards
3
Best Reply
Awards
  • start your engines Created with Sketch.

    Start Your Engines

    Earned once you have completed your first Laracasts lesson.

  • first-thousand Created with Sketch.

    First Thousand

    Earned once you have earned your first 1000 experience points.

  • 1-year Created with Sketch.

    One Year Member

    Earned when you have been with Laracasts for 1 year.

  • 2-years Created with Sketch.

    Two Year Member

    Earned when you have been with Laracasts for 2 years.

  • 3-years Created with Sketch.

    Three Year Member

    Earned when you have been with Laracasts for 3 years.

  • 4-years Created with Sketch.

    Four Year Member

    Earned when you have been with Laracasts for 4 years.

  • 5-years Created with Sketch.

    Five Year Member

    Earned when you have been with Laracasts for 5 years.

  • school-in-session Created with Sketch.

    School In Session

    Earned when at least one Laracasts series has been fully completed.

  • welcome-newcomer Created with Sketch.

    Welcome To The Community

    Earned after your first post on the Laracasts forum.

  • full-time-student Created with Sketch.

    Full Time Learner

    Earned once 100 Laracasts lessons have been completed.

  • pay-it-forward Created with Sketch.

    Pay It Forward

    Earned once you receive your first "Best Reply" award on the Laracasts forum.

  • subscriber Created with Sketch.

    Subscriber

    Earned if you are a paying Laracasts subscriber.

  • lifer Created with Sketch.

    Lifer

    Earned if you have a lifetime subscription to Laracasts.

  • evangelist Created with Sketch.

    Laracasts Evangelist

    Earned if you share a link to Laracasts on social media. Please email [email protected] with your username and post URL to be awarded this badge.

  • chatty-cathy Created with Sketch.

    Chatty Cathy

    Earned once you have achieved 500 forum replies.

  • lara-veteran Created with Sketch.

    Laracasts Veteran

    Earned once your experience points passes 100,000.

  • 10k-strong Created with Sketch.

    Ten Thousand Strong

    Earned once your experience points hits 10,000.

  • lara-master Created with Sketch.

    Laracasts Master

    Earned once 1000 Laracasts lessons have been completed.

  • laracasts-tutor Created with Sketch.

    Laracasts Tutor

    Earned once your "Best Reply" award count is 100 or more.

  • laracasts-sensei Created with Sketch.

    Laracasts Sensei

    Earned once your experience points passes 1 million.

  • top-50 Created with Sketch.

    Top 50

    Earned once your experience points ranks in the top 50 of all Laracasts users.

Level 13
64,910 XP
Oct
12
2 weeks ago
Activity icon

Replied to Two Different Passwords Match When They Shouldn't If Longer Than 72 Characters.

I had a very long api token with a timestamp as the final characters and it was not timing out the api call when the time stamp changed. It was definitely behaviour I didn't expect creating a real life security issue.

Oct
11
2 weeks ago
Activity icon

Replied to Two Different Passwords Match When They Shouldn't If Longer Than 72 Characters.

Great answer!

If this is the case would it make sense for the Laravel Hash methods throw an exception when confronted with a string that's longer than 72 characters?

Activity icon

Started a new Conversation Two Different Passwords Match When They Shouldn't If Longer Than 72 Characters.

Two passwords are identical for the first 72 characters but different after that point. Running Hash:check on them should return false but instead returns true. Is this the expected behaviour?

$password = Hash::make('passwordThatIs72CharactersLong123456789012345678901234567890123456789012_PlusOneThingHere');
return Hash::check('passwordThatIs72CharactersLong123456789012345678901234567890123456789012_PlussAnotherThingHere', $password);

^ This returns true;

Oct
10
2 weeks ago
Activity icon

Replied to Autoload On Scroll Using Livewire

I spent some time searching and I can't see a solution using Livewire that is better than JS.

It has a pretty simple raw JS solution that seems to be working great.

Oct
09
2 weeks ago
Activity icon

Started a new Conversation Autoload On Scroll Using Livewire

You know how Facebook and Twitter load older articles as you scroll down the page? I was considering using Livewire to replicate that. I got it working really quickly but, as I expected, each addition to the list reloads the entire component so I'm not just loading the newest items. I'm reloading all of them.

Is there a solution to only load the new items using LiveWire or is this something that I should using Javascript for?

Sep
27
1 month ago
Activity icon

Replied to Artisan Commands Using Wrong PHP Version For Artisan

You did it you legend. You solved my problem.

(Versions are intentionally out of sync.)

Activity icon

Started a new Conversation Artisan Commands Using Wrong PHP Version For Artisan

I've got a Forge server on PHP 7.2 but a site on it that's using 7.3 It's all running fine.

But I've got a custom Artisan command and when I type into the command line

php artisan make:media

it (of course) uses the wrong version of PHP. In this instance this causes an exception.

How can I use what I'm assuming is the fpm version of PHP to run my artisan command?

Sep
24
1 month ago
Activity icon

Awarded Best Reply on Multiple Forge PHP Versions Don't Reflect In Code.

The team at Forge put me on the right track.

I needed to update to environment variables. Instead of composer it's $FORGE_COMPOSER etc

$FORGE_COMPOSER install --no-interaction --prefer-dist --optimize-autoloader

( flock -w 10 9 || exit 1
echo 'Restarting FPM...'; sudo -S service $FORGE_PHP_FPM reload ) 9>/tmp/fpmlock

if [ -f artisan ]
then
$FORGE_PHP artisan migrate --force
fi

Also, I was testing using Tinkertool and tinker but what I failed to grasp was that to run those I was selecting the wrong version of php by running php artisan tinker from the command line.

Activity icon

Replied to Multiple Forge PHP Versions Don't Reflect In Code.

The team at Forge put me on the right track.

I needed to update to environment variables. Instead of composer it's $FORGE_COMPOSER etc

$FORGE_COMPOSER install --no-interaction --prefer-dist --optimize-autoloader

( flock -w 10 9 || exit 1
echo 'Restarting FPM...'; sudo -S service $FORGE_PHP_FPM reload ) 9>/tmp/fpmlock

if [ -f artisan ]
then
$FORGE_PHP artisan migrate --force
fi

Also, I was testing using Tinkertool and tinker but what I failed to grasp was that to run those I was selecting the wrong version of php by running php artisan tinker from the command line.

Sep
22
1 month ago
Activity icon

Started a new Conversation Multiple Forge PHP Versions Don't Reflect In Code.

I've used Forge to install a version of PHP7.3 as CLI on my PHP7.2 server. Then I've got a project that has now been set under meta from php7.2 to 7.3

I've rebooted the server.

Now when I use Tinker and run phpversion() it returns

7.2.25-1+ubuntu16.04.1+deb.sury.org+1

If I try to deploy an app that was running on PHP 7.3 locally the composer.lock info tries to install 7.3 compatible stuff and fails with a 'Not compatible with 7.2' error

Where does each site set its PHP version info and how can I check that it's installed correctly?

Activity icon

Commented on Remove Conditionals And Embrace The Pipeline

I'm getting a lot out of this series. Thanks.

Sep
14
1 month ago
Activity icon

Commented on Stubbing Network Requests With Fixtures

In case anyone is trying this with a post request you need to specify that it's a post like so...

cy.route('POST', '/posts', []).as('getPosts')
Jul
02
3 months ago
Activity icon

Commented on The Minimum Height Miscalculation

It is so reassuring to hear you say that you'll lose hours of your day on this sort of thing. Sometimes I'll have half a day vanish on a bug and it's very hisheartening. It's nice to remember that, 'this is the job'.

Jun
16
4 months ago
Activity icon

Commented on Mobile Nav Link Component

I see why you want to avoid complication but this is a scenario where I would do the extra work to avoid duplication. It's not that it's extra work to update them. It's that if you're in a rush in 2 years time adding a menu item it's so easy to think you've updated the menu but to have forgotten to update it twice in two different places.

Even if it's simply putting an array in above them then iterating through them twice.

@php
$menuItems = ['Home', 'About'];
@endphp

@foreach ($item as $menuItems)
	<x-nav-link route="{{strtolower($item)"}}">{{Item}}</x-nav-link>
@endforeach


@foreach ($item as $menuItems)
	<x-menu-nav-link route="{{strtolower($item)"}}">{{Item}}</x-menu-nav-link>
@endforeach