Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
90cd2847a5 | ||
|
0b97350ca5 | ||
375463fc77 | |||
a30879a337 |
@ -18,6 +18,8 @@
|
|||||||
$table->string('email')->unique();
|
$table->string('email')->unique();
|
||||||
$table->timestamp('email_verified_at')->nullable();
|
$table->timestamp('email_verified_at')->nullable();
|
||||||
$table->string('password');
|
$table->string('password');
|
||||||
|
$table->foreignId('directorat_id')->nullable();
|
||||||
|
$table->foreignId('sub_directorat_id')->nullable();
|
||||||
$table->rememberToken();
|
$table->rememberToken();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
$table->softDeletes();
|
$table->softDeletes();
|
||||||
|
@ -28,7 +28,12 @@
|
|||||||
return [
|
return [
|
||||||
['name' => 'User'],
|
['name' => 'User'],
|
||||||
['name' => 'Role'],
|
['name' => 'Role'],
|
||||||
['name' => 'Permission']
|
['name' => 'Permission'],
|
||||||
|
['name' => 'system'],
|
||||||
|
['name' => 'master'],
|
||||||
|
['name' => 'document'],
|
||||||
|
['name' => 'setting'],
|
||||||
|
['name' => 'logs']
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
{
|
{
|
||||||
//app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();
|
//app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();
|
||||||
|
|
||||||
$data = $this->data();
|
/*$data = $this->data();
|
||||||
|
|
||||||
foreach ($data as $value) {
|
foreach ($data as $value) {
|
||||||
$permission = Permission::updateOrCreate([
|
$permission = Permission::updateOrCreate([
|
||||||
@ -27,7 +27,7 @@
|
|||||||
'permission_group_id' => $value['group']
|
'permission_group_id' => $value['group']
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$roles = Role::all();
|
$roles = Role::all();
|
||||||
foreach ($roles as $role) {
|
foreach ($roles as $role) {
|
||||||
if ($role->name == 'administrator') {
|
if ($role->name == 'administrator') {
|
||||||
$role->givePermissionTo($permission);
|
$role->givePermissionTo($permission);
|
||||||
@ -37,22 +37,49 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}*/
|
||||||
|
|
||||||
|
$roles = Role::all();
|
||||||
|
foreach ($roles as $role) {
|
||||||
|
$data = $this->data($role->name);
|
||||||
|
foreach ($data as $value) {
|
||||||
|
$permission = Permission::updateOrCreate([
|
||||||
|
'name' => $value['name'],
|
||||||
|
'guard_name' => 'web' // or 'api
|
||||||
|
], [
|
||||||
|
'permission_group_id' => $value['group']
|
||||||
|
]);
|
||||||
|
if($role->name=='ad' && explode('.',$value['name'])[0]=='document'){
|
||||||
|
if($permission->name=='document.read'){
|
||||||
|
$role->givePermissionTo($permission);
|
||||||
|
}
|
||||||
|
} else{
|
||||||
|
$role->givePermissionTo($permission);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function data()
|
public function data($role)
|
||||||
{
|
{
|
||||||
$data = [];
|
$data = [];
|
||||||
|
$model = [];
|
||||||
// list of model permission
|
// list of model permission
|
||||||
$model = ['user', 'role', 'permission'];
|
if ($role == 'administrator') {
|
||||||
|
$model = [['id' => 1, 'name' => 'user'], ['id' => 2, 'name' => 'role'], ['id' => 3, 'name' => 'permission'], ['id' => 4, 'name' => 'system'], ['id' => 5, 'name' => 'master'], ['id' => 6, 'name' => 'document'], ['id' => 7, 'name' => 'setting'], ['id' => 8, 'name' => 'logs']];
|
||||||
|
} elseif($role == 'ad'){
|
||||||
|
$model = [['id' => 4, 'name' => 'system'], ['id' => 6, 'name' => 'document'], ['id' => 7, 'name' => 'setting'], ['id' => 8, 'name' => 'logs']];
|
||||||
|
} elseif($role == 'dd'){
|
||||||
|
$model = [['id' => 4, 'name' => 'system'], ['id' => 5, 'name' => 'master'], ['id' => 6, 'name' => 'document'], ['id' => 7, 'name' => 'setting']];
|
||||||
|
} elseif($role == 'eo'){
|
||||||
|
$model = [['id' => 6, 'name' => 'document']];
|
||||||
|
}
|
||||||
|
|
||||||
$i = 1;
|
|
||||||
foreach ($model as $value) {
|
foreach ($model as $value) {
|
||||||
foreach ($this->crudActions($value) as $action) {
|
foreach ($this->crudActions($value['name']) as $action) {
|
||||||
$data[] = ['name' => $action, 'group' => $i];
|
$data[] = ['name' => $action, 'group' => $value['id']];
|
||||||
}
|
}
|
||||||
$i++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
@ -62,7 +89,7 @@
|
|||||||
{
|
{
|
||||||
$actions = [];
|
$actions = [];
|
||||||
// list of permission actions
|
// list of permission actions
|
||||||
$crud = ['create', 'read', 'update', 'delete'];
|
$crud = ['create', 'read', 'update', 'delete','authorize','report'];
|
||||||
|
|
||||||
foreach ($crud as $value) {
|
foreach ($crud as $value) {
|
||||||
$actions[] = $name . '.' . $value;
|
$actions[] = $name . '.' . $value;
|
||||||
|
@ -27,7 +27,11 @@
|
|||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
['name' => 'administrator'],
|
['name' => 'administrator'],
|
||||||
['name' => 'user'],
|
['name' => 'ad'],
|
||||||
|
['name' => 'dd'],
|
||||||
|
['name' => 'eo'],
|
||||||
|
['name' => 'siskon'],
|
||||||
|
['name' => 'siskon_otorisator']
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,24 +17,56 @@
|
|||||||
*/
|
*/
|
||||||
public function run(Generator $faker)
|
public function run(Generator $faker)
|
||||||
{
|
{
|
||||||
$roleAdmin = Role::find(1);
|
$roles = Role::all();
|
||||||
$roleUser = Role::find(2);
|
|
||||||
|
|
||||||
$user = User::create([
|
foreach ($roles as $role) {
|
||||||
'name' => $faker->name,
|
if ($role->name == 'administrator') {
|
||||||
'email' => 'demo@demo.com',
|
$admin = User::create([//ad dd ao
|
||||||
'password' => Hash::make('demo'),
|
'name' => $faker->name,
|
||||||
'email_verified_at' => now(),
|
'email' => 'admin@demo.com',
|
||||||
]);
|
'password' => Hash::make('demo'),
|
||||||
|
'email_verified_at' => now(),
|
||||||
|
'directorat_id' => '1',
|
||||||
|
'sub_directorat_id' => '1',
|
||||||
|
]);
|
||||||
|
$admin->assignRole($role);
|
||||||
|
}
|
||||||
|
|
||||||
$admin = User::create([
|
if ($role->name == 'ad') {
|
||||||
'name' => $faker->name,
|
$admin = User::create([//ad dd ao
|
||||||
'email' => 'admin@demo.com',
|
'name' => "Associate Director",
|
||||||
'password' => Hash::make('demo'),
|
'email' => '230700',
|
||||||
'email_verified_at' => now(),
|
'password' => Hash::make('bagbag'),
|
||||||
]);
|
'email_verified_at' => now(),
|
||||||
|
'directorat_id' => '1',
|
||||||
|
'sub_directorat_id' => '1',
|
||||||
|
]);
|
||||||
|
$admin->assignRole($role);
|
||||||
|
}
|
||||||
|
|
||||||
$admin->assignRole($roleAdmin,);
|
if ($role->name == 'dd') {
|
||||||
$user->assignRole($roleUser);
|
$admin = User::create([//ad dd ao
|
||||||
|
'name' => "Deputy Director",
|
||||||
|
'email' => '230701',
|
||||||
|
'password' => Hash::make('bagbag'),
|
||||||
|
'email_verified_at' => now(),
|
||||||
|
'directorat_id' => '1',
|
||||||
|
'sub_directorat_id' => '1',
|
||||||
|
]);
|
||||||
|
$admin->assignRole($role);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($role->name == 'eo') {
|
||||||
|
$admin = User::create([//ad dd ao
|
||||||
|
'name' => "Executive Officer",
|
||||||
|
'email' => '230702',
|
||||||
|
'password' => Hash::make('bagbag'),
|
||||||
|
'email_verified_at' => now(),
|
||||||
|
'directorat_id' => '1',
|
||||||
|
'sub_directorat_id' => '1',
|
||||||
|
]);
|
||||||
|
$admin->assignRole($role);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -45,4 +45,5 @@
|
|||||||
protected $casts = [
|
protected $casts = [
|
||||||
'email_verified_at' => 'datetime',
|
'email_verified_at' => 'datetime',
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,8 @@
|
|||||||
use App\Providers\RouteServiceProvider;
|
use App\Providers\RouteServiceProvider;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
use Modules\Usermanager\Entities\User;
|
||||||
use Modules\Usermanager\Http\Requests\LoginRequest;
|
use Modules\Usermanager\Http\Requests\LoginRequest;
|
||||||
|
|
||||||
class AuthenticatedSessionController extends Controller
|
class AuthenticatedSessionController extends Controller
|
||||||
@ -38,7 +40,6 @@
|
|||||||
|
|
||||||
$userData = verify_user($id, $passwd, $SERVER_ADDR, $IPUserManager, $portUserManager, $appId);
|
$userData = verify_user($id, $passwd, $SERVER_ADDR, $IPUserManager, $portUserManager, $appId);
|
||||||
|
|
||||||
|
|
||||||
if (strlen($userData) > 1) {
|
if (strlen($userData) > 1) {
|
||||||
$userRawArray = explode("\t", $userData);
|
$userRawArray = explode("\t", $userData);
|
||||||
foreach ($userRawArray as $rkey => $rval) {
|
foreach ($userRawArray as $rkey => $rval) {
|
||||||
@ -46,12 +47,22 @@
|
|||||||
$userArray[0][$key] = $val;
|
$userArray[0][$key] = $val;
|
||||||
}
|
}
|
||||||
|
|
||||||
$user = User::where('user_id', '=', $request->email)->first();
|
$credentials = $request->validate([
|
||||||
|
'email' => ['required'],
|
||||||
|
'password' => ['required'],
|
||||||
|
]);
|
||||||
|
|
||||||
|
$user = "";
|
||||||
|
if (Auth::attempt($credentials)) {
|
||||||
|
$user = User::where(['email' => $request->email])->first();
|
||||||
|
}
|
||||||
|
|
||||||
if (!$user) {
|
if (!$user) {
|
||||||
$user = User::create([
|
$user = User::updateOrCreate([
|
||||||
'name' => $userArray[0]['NAMA_USER'],
|
'email' => $userArray[0]['KD_USER'],
|
||||||
'user_id' => $userArray[0]['KD_USER']
|
], [
|
||||||
|
'name' => $userArray[0]['NAMA_USER'],
|
||||||
|
'password' => Hash::make($request->password)
|
||||||
]);
|
]);
|
||||||
|
|
||||||
switch ($userArray[0]['KD_GROUP']) {
|
switch ($userArray[0]['KD_GROUP']) {
|
||||||
@ -59,10 +70,19 @@
|
|||||||
$user->assignRole('administrator');
|
$user->assignRole('administrator');
|
||||||
break;
|
break;
|
||||||
case '007' :
|
case '007' :
|
||||||
$user->assignRole('operator');
|
$user->assignRole('eo');
|
||||||
break;
|
break;
|
||||||
case '008' :
|
case '008' :
|
||||||
$user->assignRole('otorisator');
|
$user->assignRole('dd');
|
||||||
|
break;
|
||||||
|
case '401' :
|
||||||
|
$user->assignRole('ad');
|
||||||
|
break;
|
||||||
|
case '018' :
|
||||||
|
$user->assignRole('siskon');
|
||||||
|
break;
|
||||||
|
case '019' :
|
||||||
|
$user->assignRole('siskon_otorisator');
|
||||||
break;
|
break;
|
||||||
default :
|
default :
|
||||||
$user->assignRole('user');
|
$user->assignRole('user');
|
||||||
@ -107,7 +127,6 @@
|
|||||||
Auth::guard('web')->logout();
|
Auth::guard('web')->logout();
|
||||||
|
|
||||||
$request->session()->invalidate();
|
$request->session()->invalidate();
|
||||||
|
|
||||||
$request->session()->regenerateToken();
|
$request->session()->regenerateToken();
|
||||||
|
|
||||||
return redirect('/');
|
return redirect('/');
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'email' => ['required', 'string', 'email'],
|
'email' => ['required', 'string'],
|
||||||
'password' => ['required', 'string'],
|
'password' => ['required', 'string'],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -5,17 +5,14 @@
|
|||||||
@csrf
|
@csrf
|
||||||
<!--begin::Heading-->
|
<!--begin::Heading-->
|
||||||
<div class="text-center mb-11">
|
<div class="text-center mb-11">
|
||||||
|
<img alt="Logo" src="{{ image('logos/logo_agi.png') }}" class="h-150px app-sidebar-logo-default" style="margin-bottom: 100px;" />
|
||||||
|
|
||||||
<!--begin::Title-->
|
<!--begin::Title-->
|
||||||
<h1 class="text-dark fw-bolder mb-3">
|
<h1 class="text-dark fw-bolder mb-3">
|
||||||
Sign In
|
Sign In
|
||||||
</h1>
|
</h1>
|
||||||
<!--end::Title-->
|
<!--end::Title-->
|
||||||
|
|
||||||
<!--begin::Subtitle-->
|
|
||||||
<div class="text-gray-500 fw-semibold fs-6">
|
|
||||||
Your Social Campaigns
|
|
||||||
</div>
|
|
||||||
<!--end::Subtitle--->
|
|
||||||
</div>
|
</div>
|
||||||
<!--begin::Heading-->
|
<!--begin::Heading-->
|
||||||
|
|
||||||
@ -34,18 +31,6 @@
|
|||||||
</div>
|
</div>
|
||||||
<!--end::Input group--->
|
<!--end::Input group--->
|
||||||
|
|
||||||
<!--begin::Wrapper-->
|
|
||||||
<div class="d-flex flex-stack flex-wrap gap-3 fs-base fw-semibold mb-8">
|
|
||||||
<div></div>
|
|
||||||
|
|
||||||
<!--begin::Link-->
|
|
||||||
<a href="/forgot-password" class="link-primary">
|
|
||||||
Forgot Password ?
|
|
||||||
</a>
|
|
||||||
<!--end::Link-->
|
|
||||||
</div>
|
|
||||||
<!--end::Wrapper-->
|
|
||||||
|
|
||||||
<!--begin::Submit button-->
|
<!--begin::Submit button-->
|
||||||
<div class="d-grid mb-10">
|
<div class="d-grid mb-10">
|
||||||
<button type="submit" id="kt_sign_in_submit" class="btn btn-primary">
|
<button type="submit" id="kt_sign_in_submit" class="btn btn-primary">
|
||||||
@ -53,16 +38,6 @@
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<!--end::Submit button-->
|
<!--end::Submit button-->
|
||||||
|
|
||||||
<!--begin::Sign up-->
|
|
||||||
<div class="text-gray-500 text-center fw-semibold fs-6">
|
|
||||||
Not a Member yet?
|
|
||||||
|
|
||||||
<a href="/register" class="link-primary">
|
|
||||||
Sign up
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<!--end::Sign up-->
|
|
||||||
</form>
|
</form>
|
||||||
<!--end::Form-->
|
<!--end::Form-->
|
||||||
|
|
||||||
|
@ -19,17 +19,12 @@
|
|||||||
Route::get('login', [AuthenticatedSessionController::class, 'create'])
|
Route::get('login', [AuthenticatedSessionController::class, 'create'])
|
||||||
->name('login');
|
->name('login');
|
||||||
|
|
||||||
if (isset($_ENV['METHOD_AUTH'])) {
|
if($_ENV['METHOD_AUTH']=='usermanager'){
|
||||||
if ($_ENV['METHOD_AUTH'] == 'usermanager') {
|
Route::post('login', [AuthenticatedSessionController::class, 'storeUsermanager']);
|
||||||
Route::post('login', [AuthenticatedSessionController::class, 'storeUserManager']);
|
}else {
|
||||||
}else {
|
|
||||||
Route::post('login', [AuthenticatedSessionController::class, 'store']);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
Route::post('login', [AuthenticatedSessionController::class, 'store']);
|
Route::post('login', [AuthenticatedSessionController::class, 'store']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Route::get('forgot-password', [PasswordResetLinkController::class, 'create'])
|
Route::get('forgot-password', [PasswordResetLinkController::class, 'create'])
|
||||||
->name('password.request');
|
->name('password.request');
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user