Compare commits

...

4 Commits
master ... sit

Author SHA1 Message Date
Daeng Deni Mardaeni
90cd2847a5 update auth usermanager 2023-10-30 16:56:43 +07:00
Daeng Deni Mardaeni
0b97350ca5 update seedr usermanager add direktorat and subdirektorat 2023-08-31 15:02:08 +07:00
375463fc77 udpate seeder 2023-08-10 22:33:52 +07:00
a30879a337 update release for sit 2023-08-10 21:26:56 +07:00
10 changed files with 131 additions and 71 deletions

View File

@ -18,6 +18,8 @@
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->foreignId('directorat_id')->nullable();
$table->foreignId('sub_directorat_id')->nullable();
$table->rememberToken();
$table->timestamps();
$table->softDeletes();

View File

@ -28,7 +28,12 @@
return [
['name' => 'User'],
['name' => 'Role'],
['name' => 'Permission']
['name' => 'Permission'],
['name' => 'system'],
['name' => 'master'],
['name' => 'document'],
['name' => 'setting'],
['name' => 'logs']
];
}
}

View File

@ -17,7 +17,7 @@
{
//app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();
$data = $this->data();
/*$data = $this->data();
foreach ($data as $value) {
$permission = Permission::updateOrCreate([
@ -27,7 +27,7 @@
'permission_group_id' => $value['group']
]);
$roles = Role::all();
$roles = Role::all();
foreach ($roles as $role) {
if ($role->name == 'administrator') {
$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 = [];
$model = [];
// 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 ($this->crudActions($value) as $action) {
$data[] = ['name' => $action, 'group' => $i];
foreach ($this->crudActions($value['name']) as $action) {
$data[] = ['name' => $action, 'group' => $value['id']];
}
$i++;
}
return $data;
@ -62,7 +89,7 @@
{
$actions = [];
// list of permission actions
$crud = ['create', 'read', 'update', 'delete'];
$crud = ['create', 'read', 'update', 'delete','authorize','report'];
foreach ($crud as $value) {
$actions[] = $name . '.' . $value;

View File

@ -27,7 +27,11 @@
{
return [
['name' => 'administrator'],
['name' => 'user'],
['name' => 'ad'],
['name' => 'dd'],
['name' => 'eo'],
['name' => 'siskon'],
['name' => 'siskon_otorisator']
];
}
}

View File

@ -17,24 +17,56 @@
*/
public function run(Generator $faker)
{
$roleAdmin = Role::find(1);
$roleUser = Role::find(2);
$roles = Role::all();
$user = User::create([
'name' => $faker->name,
'email' => 'demo@demo.com',
'password' => Hash::make('demo'),
'email_verified_at' => now(),
]);
foreach ($roles as $role) {
if ($role->name == 'administrator') {
$admin = User::create([//ad dd ao
'name' => $faker->name,
'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([
'name' => $faker->name,
'email' => 'admin@demo.com',
'password' => Hash::make('demo'),
'email_verified_at' => now(),
]);
if ($role->name == 'ad') {
$admin = User::create([//ad dd ao
'name' => "Associate Director",
'email' => '230700',
'password' => Hash::make('bagbag'),
'email_verified_at' => now(),
'directorat_id' => '1',
'sub_directorat_id' => '1',
]);
$admin->assignRole($role);
}
$admin->assignRole($roleAdmin,);
$user->assignRole($roleUser);
if ($role->name == 'dd') {
$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);
}
}
}
}

View File

@ -45,4 +45,5 @@
protected $casts = [
'email_verified_at' => 'datetime',
];
}

View File

@ -6,6 +6,8 @@
use App\Providers\RouteServiceProvider;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use Modules\Usermanager\Entities\User;
use Modules\Usermanager\Http\Requests\LoginRequest;
class AuthenticatedSessionController extends Controller
@ -38,7 +40,6 @@
$userData = verify_user($id, $passwd, $SERVER_ADDR, $IPUserManager, $portUserManager, $appId);
if (strlen($userData) > 1) {
$userRawArray = explode("\t", $userData);
foreach ($userRawArray as $rkey => $rval) {
@ -46,12 +47,22 @@
$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) {
$user = User::create([
'name' => $userArray[0]['NAMA_USER'],
'user_id' => $userArray[0]['KD_USER']
$user = User::updateOrCreate([
'email' => $userArray[0]['KD_USER'],
], [
'name' => $userArray[0]['NAMA_USER'],
'password' => Hash::make($request->password)
]);
switch ($userArray[0]['KD_GROUP']) {
@ -59,10 +70,19 @@
$user->assignRole('administrator');
break;
case '007' :
$user->assignRole('operator');
$user->assignRole('eo');
break;
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;
default :
$user->assignRole('user');
@ -107,7 +127,6 @@
Auth::guard('web')->logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
return redirect('/');

View File

@ -29,7 +29,7 @@
public function rules()
{
return [
'email' => ['required', 'string', 'email'],
'email' => ['required', 'string'],
'password' => ['required', 'string'],
];
}

View File

@ -5,17 +5,14 @@
@csrf
<!--begin::Heading-->
<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-->
<h1 class="text-dark fw-bolder mb-3">
Sign In
</h1>
<!--end::Title-->
<!--begin::Subtitle-->
<div class="text-gray-500 fw-semibold fs-6">
Your Social Campaigns
</div>
<!--end::Subtitle--->
</div>
<!--begin::Heading-->
@ -34,18 +31,6 @@
</div>
<!--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-->
<div class="d-grid mb-10">
<button type="submit" id="kt_sign_in_submit" class="btn btn-primary">
@ -53,16 +38,6 @@
</button>
</div>
<!--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>
<!--end::Form-->

View File

@ -19,17 +19,12 @@
Route::get('login', [AuthenticatedSessionController::class, 'create'])
->name('login');
if (isset($_ENV['METHOD_AUTH'])) {
if ($_ENV['METHOD_AUTH'] == 'usermanager') {
Route::post('login', [AuthenticatedSessionController::class, 'storeUserManager']);
}else {
Route::post('login', [AuthenticatedSessionController::class, 'store']);
}
} else {
if($_ENV['METHOD_AUTH']=='usermanager'){
Route::post('login', [AuthenticatedSessionController::class, 'storeUsermanager']);
}else {
Route::post('login', [AuthenticatedSessionController::class, 'store']);
}
Route::get('forgot-password', [PasswordResetLinkController::class, 'create'])
->name('password.request');