Skip to content

Commit bf8e9af

Browse files
committed
Added a feature of root user
that can override all permissions and roles Also removed some redundant files
1 parent f6fe6a9 commit bf8e9af

File tree

8 files changed

+40
-105
lines changed

8 files changed

+40
-105
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?php
2+
3+
use Illuminate\Database\Migrations\Migration;
4+
use Illuminate\Database\Schema\Blueprint;
5+
use Illuminate\Support\Facades\Schema;
6+
7+
return new class extends Migration
8+
{
9+
public function up()
10+
{
11+
Schema::table('users', function (Blueprint $table) {
12+
$table->boolean('is_root_user')->default(false);
13+
});
14+
}
15+
};

routes/web.php

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
11
<?php
22

33
use Illuminate\Support\Facades\Route;
4-
use Obrainwave\AccessTree\Http\Controllers\PermissionController;
5-
6-
Route::get('/permissions', [PermissionController::class, 'index'])->name('permissions.index');
7-
Route::get('/permissions/{permission_id}', [PermissionController::class, 'show'])->name('permissions.show');
8-
Route::post('/create-permission', [PermissionController::class, 'createPermission'])->name('permissions.create.permission');

src/AccessTreeServiceProvider.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,13 @@ public function configurePackage(Package $package): void
1919
->hasConfigFile()
2020
// ->hasViews()
2121
// ->hasRoutes(['web'])
22-
->hasMigrations(['create_permission_table', 'create_role_table', 'create_role_has_permission_table', 'create_user_role_table']);
22+
->hasMigrations([
23+
'create_permission_table',
24+
'create_role_table',
25+
'create_role_has_permission_table',
26+
'create_user_role_table',
27+
'add_is_root_user_to_user_table',
28+
]);
2329
// ->hasCommand(SkeletonCommand::class);
2430
}
2531
}

src/Calculator.php

Lines changed: 0 additions & 39 deletions
This file was deleted.

src/Helpers/Helpers.php

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -155,12 +155,27 @@ function updateUserRole(array $roles, int $user_id) : String
155155
return json_encode(['status' => 200, 'message' => 'User Role(s) updated successfully']);
156156
}
157157

158-
function checkPermission(string $permission) : Bool
158+
function isRootUser(int $user_id) : bool
159+
{
160+
if(\App\Models\User::where('id', $user_id)->where('is_root_user', true)->first())
161+
{
162+
return true;
163+
}
164+
165+
return false;
166+
}
167+
168+
function checkPermission(string $permission) : bool
159169
{
160170
if(auth()->check())
161171
{
162-
$user = auth()->user();
163-
$user_roles = \Obrainwave\AccessTree\Models\UserRole::where('user_id', $user->id)->get();
172+
$auth = auth()->user();
173+
$user_roles = \Obrainwave\AccessTree\Models\UserRole::where('user_id', $auth->id)->get();
174+
175+
if(isRootUser($auth->id))
176+
{
177+
return true;
178+
}
164179

165180
}else{
166181
return false;
@@ -180,6 +195,5 @@ function checkPermission(string $permission) : Bool
180195
{
181196
return true;
182197
}
183-
184198
return false;
185199
}

src/Skeleton.php

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/SkeletonServiceProvider.php

Lines changed: 0 additions & 25 deletions
This file was deleted.

src/TestServiceProvider.php

Lines changed: 0 additions & 24 deletions
This file was deleted.

0 commit comments

Comments
 (0)