Struct Types

Squashed commit of the following:

commit 74ed84617fcbecf661695763323e50d049a88db7
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:46:29 2018 +0000

    Test passes so remove the dump statement

commit a7d3323be02da64f76e8ec88713e3de84a13ded7
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:40:35 2018 +0000

    Values with spaces need to be quoted

commit 58a120bb238f14346793c388b948b7351d3b51fd
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:37:23 2018 +0000

    We need a diplay name for the tests to work now we are using strict type checking

commit b46f177053bd697db9a4835d073f2f37e088b26f
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:31:29 2018 +0000

    Get travis to show more info about failing test

commit 60323f3ce5a0561329a1721ee94821571cdcc86a
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:23:27 2018 +0000

    Remove un-used namnepsace imports

commit 096d3505920bc94ff8677c77430eca0aae0be58a
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:21:55 2018 +0000

    we need php7.2 for object type-hint

commit bb818bc19c73d02d510af9f002199f5718a54608
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Mon Jan 15 12:15:48 2018 +0000

    Added lots of strict_types
This commit is contained in:
Jonny Barnes 2018-01-15 14:02:13 +00:00
parent 053e19a457
commit e4fe2ecde3
64 changed files with 911 additions and 406 deletions

View file

@ -1,8 +1,11 @@
<?php
declare(strict_types=1);
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Builder;
use Cviebrock\EloquentSluggable\Sluggable;
use League\CommonMark\CommonMarkConverter;
use Illuminate\Database\Eloquent\SoftDeletes;
@ -31,7 +34,7 @@ class Article extends Model
*
* @return array
*/
public function sluggable()
public function sluggable(): array
{
return [
'titleurl' => [
@ -52,7 +55,7 @@ class Article extends Model
*
* @return string
*/
public function getHtmlAttribute()
public function getHtmlAttribute(): string
{
$markdown = new CommonMarkConverter();
$html = $markdown->convertToHtml($this->main);
@ -70,7 +73,7 @@ class Article extends Model
*
* @return string
*/
public function getW3cTimeAttribute()
public function getW3cTimeAttribute(): string
{
return $this->updated_at->toW3CString();
}
@ -80,7 +83,7 @@ class Article extends Model
*
* @return string
*/
public function getTooltipTimeAttribute()
public function getTooltipTimeAttribute(): string
{
return $this->updated_at->toRFC850String();
}
@ -90,7 +93,7 @@ class Article extends Model
*
* @return string
*/
public function getHumanTimeAttribute()
public function getHumanTimeAttribute(): string
{
return $this->updated_at->diffForHumans();
}
@ -100,7 +103,7 @@ class Article extends Model
*
* @return string
*/
public function getPubdateAttribute()
public function getPubdateAttribute(): string
{
return $this->updated_at->toRSSString();
}
@ -110,7 +113,7 @@ class Article extends Model
*
* @return string
*/
public function getLinkAttribute()
public function getLinkAttribute(): string
{
return '/blog/' . $this->updated_at->year . '/' . $this->updated_at->format('m') . '/' . $this->titleurl;
}
@ -120,7 +123,7 @@ class Article extends Model
*
* @return \Illuminate\Database\Eloquent\Builder
*/
public function scopeDate($query, int $year = null, int $month = null)
public function scopeDate($query, int $year = null, int $month = null): Builder
{
if ($year == null) {
return $query;