Skip to content

Commit 0f33429

Browse files
committed
initial commit
0 parents  commit 0f33429

File tree

97 files changed

+10735
-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.

97 files changed

+10735
-0
lines changed

Diff for: .editorconfig

+15
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,yaml}]
15+
indent_size = 2

Diff for: .env.example

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
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=laravel
13+
DB_USERNAME=root
14+
DB_PASSWORD=
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_MAILER=smtp
27+
MAIL_HOST=smtp.mailtrap.io
28+
MAIL_PORT=2525
29+
MAIL_USERNAME=null
30+
MAIL_PASSWORD=null
31+
MAIL_ENCRYPTION=null
32+
MAIL_FROM_ADDRESS=null
33+
MAIL_FROM_NAME="${APP_NAME}"
34+
35+
AWS_ACCESS_KEY_ID=
36+
AWS_SECRET_ACCESS_KEY=
37+
AWS_DEFAULT_REGION=us-east-1
38+
AWS_BUCKET=
39+
40+
PUSHER_APP_ID=
41+
PUSHER_APP_KEY=
42+
PUSHER_APP_SECRET=
43+
PUSHER_APP_CLUSTER=mt1
44+
45+
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
46+
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

Diff for: .gitattributes

+5
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

Diff for: .gitignore

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

Diff for: .styleci.yml

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
php:
2+
preset: laravel
3+
disabled:
4+
- unused_use
5+
finder:
6+
not-name:
7+
- index.php
8+
- server.php
9+
js:
10+
finder:
11+
not-name:
12+
- webpack.mix.js
13+
css: true

Diff for: README.md

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<p align="center"><a href="https://laravel.com" target="_blank"><img src="https://raw.githubusercontent.com/laravel/art/master/logo-lockup/5%20SVG/2%20CMYK/1%20Full%20Color/laravel-logolockup-cmyk-red.svg" width="400"></a></p>
2+
3+
<p align="center">
4+
<a href="https://travis-ci.org/laravel/framework"><img src="https://travis-ci.org/laravel/framework.svg" alt="Build Status"></a>
5+
<a href="https://packagist.org/packages/laravel/framework"><img src="https://poser.pugx.org/laravel/framework/d/total.svg" alt="Total Downloads"></a>
6+
<a href="https://packagist.org/packages/laravel/framework"><img src="https://poser.pugx.org/laravel/framework/v/stable.svg" alt="Latest Stable Version"></a>
7+
<a href="https://packagist.org/packages/laravel/framework"><img src="https://poser.pugx.org/laravel/framework/license.svg" alt="License"></a>
8+
</p>
9+
10+
## About Laravel
11+
12+
Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as:
13+
14+
- [Simple, fast routing engine](https://laravel.com/docs/routing).
15+
- [Powerful dependency injection container](https://laravel.com/docs/container).
16+
- Multiple back-ends for [session](https://laravel.com/docs/session) and [cache](https://laravel.com/docs/cache) storage.
17+
- Expressive, intuitive [database ORM](https://laravel.com/docs/eloquent).
18+
- Database agnostic [schema migrations](https://laravel.com/docs/migrations).
19+
- [Robust background job processing](https://laravel.com/docs/queues).
20+
- [Real-time event broadcasting](https://laravel.com/docs/broadcasting).
21+
22+
Laravel is accessible, powerful, and provides tools required for large, robust applications.
23+
24+
## Learning Laravel
25+
26+
Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.
27+
28+
If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains over 1500 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.
29+
30+
## Laravel Sponsors
31+
32+
We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the Laravel [Patreon page](https://patreon.com/taylorotwell).
33+
34+
### Premium Partners
35+
36+
- **[Vehikl](https://vehikl.com/)**
37+
- **[Tighten Co.](https://tighten.co)**
38+
- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)**
39+
- **[64 Robots](https://64robots.com)**
40+
- **[Cubet Techno Labs](https://cubettech.com)**
41+
- **[Cyber-Duck](https://cyber-duck.co.uk)**
42+
- **[Many](https://www.many.co.uk)**
43+
- **[Webdock, Fast VPS Hosting](https://www.webdock.io/en)**
44+
- **[DevSquad](https://devsquad.com)**
45+
- **[OP.GG](https://op.gg)**
46+
47+
## Contributing
48+
49+
Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the [Laravel documentation](https://laravel.com/docs/contributions).
50+
51+
## Code of Conduct
52+
53+
In order to ensure that the Laravel community is welcoming to all, please review and abide by the [Code of Conduct](https://laravel.com/docs/contributions#code-of-conduct).
54+
55+
## Security Vulnerabilities
56+
57+
If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via [[email protected]](mailto:[email protected]). All security vulnerabilities will be promptly addressed.
58+
59+
## License
60+
61+
The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

Diff for: app/Console/Kernel.php

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
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')->hourly();
28+
}
29+
30+
/**
31+
* Register the commands for the application.
32+
*
33+
* @return void
34+
*/
35+
protected function commands()
36+
{
37+
$this->load(__DIR__.'/Commands');
38+
39+
require base_path('routes/console.php');
40+
}
41+
}

Diff for: app/Exceptions/Handler.php

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<?php
2+
3+
namespace App\Exceptions;
4+
5+
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
6+
7+
class Handler extends ExceptionHandler
8+
{
9+
/**
10+
* A list of the exception types that are not reported.
11+
*
12+
* @var array
13+
*/
14+
protected $dontReport = [
15+
//
16+
];
17+
18+
/**
19+
* A list of the inputs that are never flashed for validation exceptions.
20+
*
21+
* @var array
22+
*/
23+
protected $dontFlash = [
24+
'password',
25+
'password_confirmation',
26+
];
27+
28+
/**
29+
* Register the exception handling callbacks for the application.
30+
*
31+
* @return void
32+
*/
33+
public function register()
34+
{
35+
//
36+
}
37+
}

Diff for: app/Http/Controllers/CommentController.php

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?php
2+
3+
namespace App\Http\Controllers;
4+
5+
use App\Repository\Comment\EloquentCommentRepository;
6+
use App\Utils\Response;
7+
use Illuminate\Http\Request;
8+
use Illuminate\Support\Facades\Validator;
9+
10+
class CommentController extends Controller
11+
{
12+
use Response;
13+
protected $eloquentComment;
14+
15+
public function __construct(EloquentCommentRepository $eloquentCommentRepository) {
16+
$this->eloquentComment = $eloquentCommentRepository;
17+
}
18+
19+
public function storeComment(Request $request, $task_id){
20+
$validator = Validator::make($request->all(), [
21+
'name' => 'required|max:255',
22+
'description' => 'required',
23+
]);
24+
25+
if ($validator->fails()) {
26+
return $this->responseValidation($validator->errors());
27+
}
28+
29+
$comment = $this->eloquentComment->storeComment($request, $task_id);
30+
if (!empty($comment)){
31+
return $this->responseData($comment, "Data berhasil ditambahkan");
32+
}
33+
return $this->responseError();
34+
35+
}
36+
}

Diff for: app/Http/Controllers/Controller.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
namespace App\Http\Controllers;
4+
5+
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
6+
use Illuminate\Foundation\Bus\DispatchesJobs;
7+
use Illuminate\Foundation\Validation\ValidatesRequests;
8+
use Illuminate\Routing\Controller as BaseController;
9+
10+
class Controller extends BaseController
11+
{
12+
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
13+
}

Diff for: app/Http/Controllers/TaskController.php

+88
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
<?php
2+
3+
namespace App\Http\Controllers;
4+
5+
use App\Models\Task;
6+
use Illuminate\Support\Facades\Validator;
7+
use Illuminate\Http\Request;
8+
use App\Repository\Task\EloquentTaskRepository;
9+
use App\Utils\Response;
10+
11+
class TaskController extends Controller
12+
{
13+
use Response;
14+
protected $eloquentTask;
15+
16+
public function __construct(EloquentTaskRepository $eloquentTask) {
17+
$this->eloquentTask = $eloquentTask;
18+
}
19+
20+
public function tasks(){
21+
$tasks = $this->eloquentTask->getTasks();
22+
if (!$tasks->isEmpty()){
23+
return $this->responseDataCount($tasks);
24+
}
25+
return $this->responseDataNotFound('Data yang diminta tidak tersedia');
26+
}
27+
28+
public function getTasksById($id){
29+
$task = $this->eloquentTask->getTasksById($id);
30+
if (!empty($task)){
31+
return $this->responseData($task);
32+
}
33+
return $this->responseDataNotFound('Data yang diminta tidak tersedia');
34+
}
35+
36+
public function update(Request $request, $id){
37+
$validator = Validator::make($request->all(), [
38+
'name' => 'required',
39+
'description' => 'required',
40+
]);
41+
42+
if ($validator->fails()) {
43+
return $this->responseValidation($validator->errors());
44+
}
45+
46+
$task = $this->eloquentTask->updateTask($request, $id);
47+
48+
if ($task != null){
49+
return $this->responseData($task, "Data di ubah");
50+
}
51+
52+
return $this->responseError('task tidak ditemukan', 404);
53+
54+
}
55+
56+
public function store(Request $request){
57+
$validator = Validator::make($request->all(), [
58+
'name' => 'required|max:255',
59+
'description' => 'required',
60+
]);
61+
62+
if ($validator->fails()) {
63+
return $this->responseValidation($validator->errors());
64+
}
65+
$task = $this->eloquentTask->createTask($request);
66+
if (!empty($task)){
67+
return $this->responseData($task, "Data berhasil ditambahkan");
68+
}
69+
return $this->responseError();
70+
}
71+
72+
public function setTaskFinish($id){
73+
$task = $this->eloquentTask->setAsFinish($id);
74+
if ($task != null){
75+
return $this->responseData($task,"Berhasil menyimpan data");
76+
}
77+
return $this->responseError('task tidak ditemukan', 404);
78+
}
79+
80+
public function getTaskWithComments($task_id){
81+
$task = $this->eloquentTask->getTaskWithComments($task_id);
82+
if ($task != null){
83+
return $this->responseData($task);
84+
}
85+
return $this->responseError('task tidak ditemukan', 404);
86+
}
87+
88+
}

0 commit comments

Comments
 (0)