wildwestriverrider

wildwestriverrider

Member Since 2 Years Ago

Experience Points 15,870
Experience
Level
Lessons Completed 158
Lessons
Completed
Best Reply Awards 0
Best Answer
Awards
  • Start Your Engines Achievement

    Start Your Engines

    Earned once you have completed your first Laracasts lesson.

  • First Thousand Achievement

    First Thousand

    Earned once you have earned your first 1000 experience points.

  • One Year Member Achievement

    One Year Member

    Earned when you have been with Laracasts for 1 year.

  • Two Year Member Achievement

    Two Year Member

    Earned when you have been with Laracasts for 2 years.

  • Three Year Member Achievement

    Three Year Member

    Earned when you have been with Laracasts for 3 years.

  • Four Year Member Achievement

    Four Year Member

    Earned when you have been with Laracasts for 4 years.

  • Five Year Member Achievement

    Five Year Member

    Earned when you have been with Laracasts for 5 years.

  • School In Session Achievement

    School In Session

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

  • Welcome To The Community Achievement

    Welcome To The Community

    Earned after your first post on the Laracasts forum.

  • Full Time Learner Achievement

    Full Time Learner

    Earned once 100 Laracasts lessons have been completed.

  • Pay It Forward Achievement

    Pay It Forward

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

  • Subscriber Achievement

    Subscriber

    Earned if you are a paying Laracasts subscriber.

  • Lifer Achievement

    Lifer

    Earned if you have a lifetime subscription to Laracasts.

  • Laracasts Evangelist Achievement

    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 Achievement

    Chatty Cathy

    Earned once you have achieved 500 forum replies.

  • Laracasts Veteran Achievement

    Laracasts Veteran

    Earned once your experience points passes 100,000.

  • Ten Thousand Strong Achievement

    Ten Thousand Strong

    Earned once your experience points hits 10,000.

  • Laracasts Master Achievement

    Laracasts Master

    Earned once 1000 Laracasts lessons have been completed.

  • Laracasts Tutor Achievement

    Laracasts Tutor

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

  • Laracasts Sensei Achievement

    Laracasts Sensei

    Earned once your experience points passes 1 million.

  • Top 50 Achievement

    Top 50

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

02 Dec
11 months ago

wildwestriverrider left a reply on 5.5 Point Type Column

With a simple Point class

class Point
{
    public $x;
    public $y;

    public function __construct($x = null, $y = null)
    {
        $this->x = is_numeric($x) ? floatval($x) : $x;
        $this->y = is_numeric($y) ? floatval($y) : $y;
    }
}

wildwestriverrider left a reply on 5.5 Point Type Column

This is what I am doing for now.

trait HasPosition
{
    /**
     * @param Point $point
     */
    public function setPositionAttribute(Point $point)
    {
        $query = "GeomFromText('POINT($point->x $point->y)')";
        $this->attributes['position'] = \DB::raw($query);
    }

    /**
     * @param string $value
     * @return Point
     */
    public function getPositionAttribute($value)
    {
        // cleanup the database response into a Point
        $response = explode(
            ' ',
            str_replace(
                [
                    "GeomFromText('",
                    "'",
                    'POINT(',
                    ')'
                ],
                '',
                $value
            )
        );
        return new Point($response[0], $response[1]);
    }

    public function newQuery($excludeDeleted = true)
    {
        $raw = ' astext(position) as position ';
        return parent::newQuery($excludeDeleted)->addSelect('*', \DB::raw($raw));
    }
}
01 Dec
11 months ago

wildwestriverrider started a new conversation 5.5 Point Type Column

How do you insert/update data for the new point type column in Laravel 5.5?