98 lines
No EOL
1.8 KiB
Markdown
98 lines
No EOL
1.8 KiB
Markdown
https://www.youtube.com/watch?v=B5GafCSXj9U&list=PLT9miexWCpPW6Z_OXNv2d78cqCrZaPrVG&index=37
|
|
|
|
ProjectController.php
|
|
```php
|
|
public function deleteProject($project_id)
|
|
{
|
|
$user_id = auth()->id();
|
|
if(!empty($project_id)) {
|
|
$pm = new ProjectModel();
|
|
$projectData = $pm->where([
|
|
"user_id" => $user_id,
|
|
"id" => $project_id
|
|
])->first();
|
|
|
|
if (!empty($projectData)) {
|
|
if(pm->delete($project_id)) {
|
|
$response = [
|
|
"status" => true,
|
|
"message" => "project deleted",
|
|
"data" => []
|
|
];
|
|
}else {
|
|
$response = [
|
|
"status" => false,
|
|
"message" => "failed to delete project",
|
|
"data" => []
|
|
];
|
|
}
|
|
}else{
|
|
$response = [
|
|
"status" => false,
|
|
"message" => "project not found",
|
|
"data" => []
|
|
];
|
|
}
|
|
|
|
}else{
|
|
$response = [
|
|
"status" => false,
|
|
"message" => "Project Id required",
|
|
"data" => []
|
|
];
|
|
}
|
|
|
|
return $this->respondCreated($response);
|
|
}
|
|
```
|
|
|
|
Routes.php
|
|
```php
|
|
$routes->delete("delete-project/(:num)", "ProjectController::deleteProject/$1",["filter"=>"apiauth"]);
|
|
```
|
|
|
|
|
|
|
|
Alternative version:
|
|
```php
|
|
public function deleteProject($project_id)
|
|
{
|
|
$user_id = auth()->id();
|
|
|
|
if(empty($project_id)) {
|
|
return $this->respondCreated([
|
|
"status" => false,
|
|
"message" => "project id required",
|
|
"data" => []
|
|
]);
|
|
}
|
|
|
|
$pm = new ProjectModel();
|
|
$projectData = $pm->where([
|
|
"user_id" => $user_id,
|
|
"id" => $project_id
|
|
])->first();
|
|
|
|
if(empty($projectData)) {
|
|
return $this->respondCreated([
|
|
"status" => false,
|
|
"message" => "project not found",
|
|
"data" => []
|
|
]);
|
|
}
|
|
|
|
if(!$pm->delete($project_id)) {
|
|
return $this->respondCreated([
|
|
"status" => false,
|
|
"message" => "failed to delete project",
|
|
"data" => []
|
|
]);
|
|
}
|
|
|
|
return $this->respondCreated([
|
|
"status" => true,
|
|
"message" => "project deleted",
|
|
"data" => []
|
|
]);
|
|
}
|
|
``` |