Skip to content

Commit d52b9cf

Browse files
committed
laravel-personalblog
0 parents  commit d52b9cf

File tree

2,107 files changed

+731724
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,107 files changed

+731724
-0
lines changed

.editorconfig

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
end_of_line = lf
6+
insert_final_newline = true
7+
indent_style = space
8+
indent_size = 4
9+
trim_trailing_whitespace = true
10+
11+
[*.md]
12+
trim_trailing_whitespace = false
13+
14+
[*.yml]
15+
indent_size = 2

.env.example

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
APP_NAME=Laravel
2+
APP_ENV=local
3+
APP_KEY=
4+
APP_DEBUG=true
5+
APP_URL=http://localhost
6+
7+
LOG_CHANNEL=stack
8+
9+
DB_CONNECTION=mysql
10+
DB_HOST=127.0.0.1
11+
DB_PORT=3306
12+
DB_DATABASE=homestead
13+
DB_USERNAME=homestead
14+
DB_PASSWORD=secret
15+
16+
BROADCAST_DRIVER=log
17+
CACHE_DRIVER=file
18+
QUEUE_CONNECTION=sync
19+
SESSION_DRIVER=file
20+
SESSION_LIFETIME=120
21+
22+
REDIS_HOST=127.0.0.1
23+
REDIS_PASSWORD=null
24+
REDIS_PORT=6379
25+
26+
MAIL_DRIVER=smtp
27+
MAIL_HOST=smtp.mailtrap.io
28+
MAIL_PORT=2525
29+
MAIL_USERNAME=null
30+
MAIL_PASSWORD=null
31+
MAIL_ENCRYPTION=null
32+
33+
AWS_ACCESS_KEY_ID=
34+
AWS_SECRET_ACCESS_KEY=
35+
AWS_DEFAULT_REGION=us-east-1
36+
AWS_BUCKET=
37+
38+
PUSHER_APP_ID=
39+
PUSHER_APP_KEY=
40+
PUSHER_APP_SECRET=
41+
PUSHER_APP_CLUSTER=mt1
42+
43+
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
44+
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

.gitattributes

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
* text=auto
2+
*.css linguist-vendored
3+
*.scss linguist-vendored
4+
*.js linguist-vendored
5+
CHANGELOG.md export-ignore

.gitignore

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/node_modules
2+
/public/hot
3+
/public/storage
4+
/storage/*.key
5+
/vendor
6+
.env
7+
.phpunit.result.cache
8+
Homestead.json
9+
Homestead.yaml
10+
npm-debug.log
11+
yarn-error.log

app/Article.php

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?php
2+
3+
namespace App;
4+
5+
use Illuminate\Database\Eloquent\Model;
6+
use Illuminate\Support\Str;
7+
8+
class Article extends Model
9+
{
10+
protected $table = 'articles';
11+
12+
//Accessor
13+
public function getStatusLabelAttribute()
14+
{
15+
//ADAPUN VALUENYA AKAN MENCETAK HTML BERDASARKAN VALUE DARI FIELD STATUS
16+
if ($this->status == 'DRAFT') {
17+
return '<span class="badge badge-secondary">Draft</span>';
18+
}
19+
return '<span class="badge badge-success">Publish</span>';
20+
}
21+
//SEDANGKAN INI ADALAH MUTATORS
22+
public function setSlugAttribute($value)
23+
{
24+
$this->attributes['slug'] = Str::slug($value);
25+
}
26+
27+
public function category()
28+
{
29+
return $this->belongsTo(Category::class);
30+
}
31+
32+
public function comments()
33+
{
34+
return $this->hasMany(Comment::class)->whereNull('parent_id')->where('status', 'PUBLISH');
35+
}
36+
}

app/Category.php

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?php
2+
3+
namespace App;
4+
5+
use Illuminate\Database\Eloquent\Model;
6+
use Illuminate\Support\Str;
7+
8+
class Category extends Model
9+
{
10+
protected $table = 'categories';
11+
protected $fillable = ['name', 'slug', 'created_by', 'updated_by'];
12+
13+
//MUTATOR
14+
public function setSlugAttribute($value)
15+
{
16+
$this->attributes['slug'] = Str::slug($value);
17+
}
18+
19+
//ACCESSOR
20+
public function getNameAttribute($value)
21+
{
22+
return ucfirst($value);
23+
}
24+
25+
public function article(){
26+
return $this->hasMany(Article::class)->where('status', 'PUBLISH');
27+
}
28+
}

app/Comment.php

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<?php
2+
3+
namespace App;
4+
5+
use Illuminate\Database\Eloquent\Model;
6+
7+
class Comment extends Model
8+
{
9+
protected $guarded = [];
10+
11+
public function article()
12+
{
13+
return $this->belongsTo(Article::class);
14+
}
15+
16+
public function child()
17+
{
18+
return $this->hasMany(Comment::class, 'parent_id')->where('status', 'PUBLISH');
19+
}
20+
21+
public function getStatusLabelAttribute()
22+
{
23+
//ADAPUN VALUENYA AKAN MENCETAK HTML BERDASARKAN VALUE DARI FIELD STATUS
24+
if ($this->status == 'DRAFT') {
25+
return '<span class="badge badge-secondary">Draft</span>';
26+
}
27+
return '<span class="badge badge-success">Publish</span>';
28+
}
29+
}

app/Console/Kernel.php

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<?php
2+
3+
namespace App\Console;
4+
5+
use Illuminate\Console\Scheduling\Schedule;
6+
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
7+
8+
class Kernel extends ConsoleKernel
9+
{
10+
/**
11+
* The Artisan commands provided by your application.
12+
*
13+
* @var array
14+
*/
15+
protected $commands = [
16+
//
17+
];
18+
19+
/**
20+
* Define the application's command schedule.
21+
*
22+
* @param \Illuminate\Console\Scheduling\Schedule $schedule
23+
* @return void
24+
*/
25+
protected function schedule(Schedule $schedule)
26+
{
27+
// $schedule->command('inspire')
28+
// ->hourly();
29+
}
30+
31+
/**
32+
* Register the commands for the application.
33+
*
34+
* @return void
35+
*/
36+
protected function commands()
37+
{
38+
$this->load(__DIR__.'/Commands');
39+
40+
require base_path('routes/console.php');
41+
}
42+
}

app/Exceptions/Handler.php

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
<?php
2+
3+
namespace App\Exceptions;
4+
5+
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
6+
use Throwable;
7+
8+
class Handler extends ExceptionHandler
9+
{
10+
/**
11+
* A list of the exception types that are not reported.
12+
*
13+
* @var array
14+
*/
15+
protected $dontReport = [
16+
//
17+
];
18+
19+
/**
20+
* A list of the inputs that are never flashed for validation exceptions.
21+
*
22+
* @var array
23+
*/
24+
protected $dontFlash = [
25+
'password',
26+
'password_confirmation',
27+
];
28+
29+
/**
30+
* Report or log an exception.
31+
*
32+
* @param \Throwable $exception
33+
* @return void
34+
*/
35+
public function report(Throwable $exception)
36+
{
37+
parent::report($exception);
38+
}
39+
40+
/**
41+
* Render an exception into an HTTP response.
42+
*
43+
* @param \Illuminate\Http\Request $request
44+
* @param \Throwable $exception
45+
* @return \Illuminate\Http\Response
46+
*/
47+
public function render($request, Throwable $exception)
48+
{
49+
return parent::render($request, $exception);
50+
}
51+
}

0 commit comments

Comments
 (0)