diff --git a/app/Http/Controllers/Admin/Admin73Controller.php b/app/Http/Controllers/Admin/Admin73Controller.php
index 867d1e401b596758810e4d52547be87d45cb9c5e..cc84843ac66d0bc7143de676a5b636a14a4cce65 100644
--- a/app/Http/Controllers/Admin/Admin73Controller.php
+++ b/app/Http/Controllers/Admin/Admin73Controller.php
@@ -7,8 +7,7 @@
 use App\Models\User;
 use Carbon\Carbon;
 use Illuminate\Http\Request;
-
-
+use Illuminate\Support\Facades\Validator;
 
 class Admin73Controller extends Controller
 {
@@ -17,7 +16,13 @@ public function view73()
         $user = User::with('detail')->where('role', 'user');
         $agama = Agama73Model::all();
 
-        $user_group = $user->get()->groupBy('is_active');
+        $userAgama = $user->get()->map(function ($item) {
+            $item->nama_agama = $item->detail->agama->nama_agama;
+            return $item;
+        });
+
+        $user_group = $userAgama->groupBy('is_active');
+
 
         $user_monthly = $user->get()->groupBy(function ($date) {
             return Carbon::parse($date->created_at)->format('m-Y');
@@ -38,32 +43,30 @@ public function view73()
             return $item->count();
         });
 
-
         return view('pages.admin73.dashboard', compact('user_group', 'user_monthly_active', 'userAgamaCount', 'agama'));
     }
 
 
-    public function changeStatus73(Request $request)
+    public function changeStatus73($userId)
     {
-        $user = User::find($request->userId);
+        $user = User::findOrFail($userId);
+
         $user->is_active = ($user->is_active == 1) ? 0 : 1;
         $user->save();
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil mengubah status user',
-        ]);
+        return back()->with('success', 'Berhasil mengubah status user');
     }
 
-    public function changeAgama73(Request $request)
+    public function changeAgama73(Request $request, $userId)
     {
-        $user = User::find($request->userId);
-        $user->detail->id_agama = $request->id_agama;
+        $request->validate([
+            'agama'=> 'required|exists:agama73,id',
+        ]);
+
+        $user = User::findOrFail($userId);
+        $user->detail->id_agama = $request->agama;
         $user->detail->save();
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil mengubah agama user',
-        ]);
+        return back()->with('success', 'Berhasil mengubah agama user');
     }
 }
diff --git a/app/Http/Controllers/Admin/Agama73Controller.php b/app/Http/Controllers/Admin/Agama73Controller.php
index b86ef90bbaf9efd62097d0dad75cc99e6bf5ad72..3bfeea610653638f287da30aabda22e45636e99e 100644
--- a/app/Http/Controllers/Admin/Agama73Controller.php
+++ b/app/Http/Controllers/Admin/Agama73Controller.php
@@ -17,37 +17,36 @@ public function view73()
 
     public function store73(Request $request)
     {
+        $request->validate([
+            'nama_agama' => 'required|unique:agama73,nama_agama',
+        ]);
+
         Agama73Model::create([
             'nama_agama' => $request->nama_agama,
         ]);
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil menambahkan agama',
-        ], 200);
+        return back()->with('success', 'Berhasil menambahkan agama baru');
     }
 
 
-    public function update73(Request $request)
+    public function update73(Request $request, $agamaId)
     {
-        $agama = Agama73Model::find($request->agamaId);
+        $request->validate([
+            'nama_agama' => 'required|unique:agama73,nama_agama,' . $request->agamaId,
+        ]);
+
+        $agama = Agama73Model::findOrFail($agamaId);
         $agama->nama_agama = $request->nama_agama;
         $agama->save();
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil mengubah agama',
-        ], 200);
+        return back()->with('success', 'Berhasil mengubah agama');
     }
 
-    public function delete73(Request $request)
+    public function delete73($agamaId)
     {
-        $agama = Agama73Model::find($request->agamaId);
+        $agama = Agama73Model::findOrFail($agamaId);
         $agama->delete();
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil menghapus agama',
-        ], 200);
+        return back()->with('success', 'Berhasil menghapus agama');
     }
 }
diff --git a/app/Http/Controllers/Api/Admin/Admin73Controller.php b/app/Http/Controllers/Api/Admin/Admin73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..94a7fe23bd9254c4d69e1b70586fd6258f639109
--- /dev/null
+++ b/app/Http/Controllers/Api/Admin/Admin73Controller.php
@@ -0,0 +1,90 @@
+<?php
+
+namespace App\Http\Controllers\Api\Admin;
+
+use App\Http\Controllers\Controller;
+use App\Http\Resources\ApiResponse;
+use App\Models\User;
+use Carbon\Carbon;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Validator;
+
+class Admin73Controller extends Controller
+{
+    public function getDataUser73()
+    {
+        $user = User::with('detail')->where('role', 'user');
+
+        $userAgama = $user->get()->map(function ($item) {
+            $item->nama_agama = $item->detail->agama->nama_agama;
+            return $item;
+        });
+
+        $user_group = $userAgama->groupBy('is_active');
+
+        return new ApiResponse(true, 'Berhasil mengambil data', $user_group);
+    }
+
+    public function getDetailUser73($userId)
+    {
+        $user = User::with('detail')->findOrFail($userId);
+
+        return new ApiResponse(true, 'Berhasil mengambil data', $user);
+    }
+
+    public function changeStatus73($userId)
+    {
+        $user = User::findOrFail($userId);
+        $user->is_active = ($user->is_active == 1) ? 0 : 1;
+        $user->save();
+
+        return new ApiResponse(true, 'Berhasil mengubah status user', $user);
+    }
+
+    public function changeAgama73(Request $request, $userId)
+    {
+        $validator = Validator::make($request->all(), [
+            'agamaId' => 'required|exists:agama73,id',
+        ]);
+
+        if($validator->fails()) {
+            return new ApiResponse(false, 'Gagal mengubah agama user', $validator->errors()->all());
+        }
+
+        $user = User::find($userId);
+        $user->detail->id_agama = $request->agamaId;
+        $user->detail->save();
+
+        return new ApiResponse(true, 'Berhasil mengubah agama user', $user);
+    }
+
+    public function getUserMonthlyStatus73(){
+        $user = User::with('detail')->where('role', 'user');
+        $user_monthly = $user->get()->groupBy(function ($date) {
+            return Carbon::parse($date->created_at)->format('m-Y');
+        });
+
+        $user_monthly_active = $user_monthly->map(function ($item) {
+            return [
+                'active' => $item->where('is_active', 1)->count(),
+                'not_active' => $item->where('is_active', 0)->count(),
+            ];
+        });
+
+        return new ApiResponse(true, 'Berhasil mengambil data', $user_monthly_active);
+    }
+
+    public function getUserAgamaCount73(){
+        $user = User::with('detail')->where('role', 'user');
+        $userAgamaCount = $user->get()->map(function ($item) {
+            return $item->detail->agama->nama_agama;
+        })->groupBy(function ($item) {
+            return $item;
+        })->map(function ($item) {
+            return $item->count();
+        });
+
+        return new ApiResponse(true, 'Berhasil mengambil data', $userAgamaCount);
+    }
+
+}
diff --git a/app/Http/Controllers/Api/Admin/Agama73Controller.php b/app/Http/Controllers/Api/Admin/Agama73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..7cad0fffd5f3cfca670c3c94e17e6a910c8e3560
--- /dev/null
+++ b/app/Http/Controllers/Api/Admin/Agama73Controller.php
@@ -0,0 +1,71 @@
+<?php
+
+namespace App\Http\Controllers\Api\Admin;
+
+use App\Http\Controllers\Controller;
+use App\Http\Resources\ApiResponse;
+use App\Models\Agama73Model;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Validator;
+
+class Agama73Controller extends Controller
+{
+    public function getAllAgama73(){
+        $agama = Agama73Model::all();
+
+        return new ApiResponse(true, 'Berhasil mendapatkan semua agama', $agama);
+    }
+
+    public function getDetailAgama73(Request $request, $agamaId)
+    {
+
+        $agama = Agama73Model::findOrFail($agamaId);
+
+        return new ApiResponse(true, 'Berhasil mendapatkan detail agama', $agama);
+    }
+
+    public function createAgama73(Request $request)
+    {
+        $validator = Validator::make(request()->all(), [
+            'agama' => 'required|unique:agama73,nama_agama',
+        ]);
+
+        if($validator->fails()){
+            return new ApiResponse(false, 'Gagal membuat agama', $validator->errors()->all());
+        }
+
+        $agama = new Agama73Model();
+        $agama->nama_agama = $request->agama;
+        $agama->save();
+
+        return new ApiResponse(true, 'Berhasil membuat agama', $agama);
+    }
+
+    public function updateAgama73(Request $request, $agamaId)
+    {
+        $validator = Validator::make(request()->all(), [
+            'agama' => 'required|unique:agama73,nama_agama',
+        ]);
+
+        if($validator->fails()){
+            return new ApiResponse(false, 'Gagal mengubah agama', $validator->errors()->all());
+        }
+
+        $agama = Agama73Model::findOrFail($agamaId);
+        
+        $agama->nama_agama = $request->agama;
+        $agama->save();
+
+        return new ApiResponse(true, 'Berhasil mengubah agama', $agama);
+    }
+
+    public function deleteAgama73($agamaId)
+    {
+        $agama = Agama73Model::findOrFail($agamaId);
+        $agama->delete();
+
+        return new ApiResponse(true, 'Berhasil menghapus agama', $agama);
+    }
+
+
+}
diff --git a/app/Http/Controllers/Api/User/Profile73Controller.php b/app/Http/Controllers/Api/User/Profile73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..73d8def2db63c57251d0ab6770727886d3c4b16d
--- /dev/null
+++ b/app/Http/Controllers/Api/User/Profile73Controller.php
@@ -0,0 +1,120 @@
+<?php
+
+namespace App\Http\Controllers\Api\User;
+
+use App\Http\Controllers\Controller;
+use App\Http\Resources\ApiResponse;
+use App\Models\User;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Validator;
+
+class Profile73Controller extends Controller
+{
+    public function getProfile73(Request $request)
+    {
+        $validaator = Validator::make(request()->all(), [
+            'userId' => 'required|exists:users,id',
+        ]);
+
+        if($validaator->fails()){
+            return new ApiResponse(false, 'Gagal mendapatkan profile', $validaator->errors()->all());
+        }
+
+        $user = User::find($request->userId);
+
+        if(!$user){
+            return new ApiResponse(false, 'Gagal mendapatkan profile', 'User tidak ditemukan');
+        }
+
+        return new ApiResponse(true, 'Berhasil mendapatkan profile', $user);
+    }
+
+    public function updateProfile73(Request $request, $userId)
+    {
+        $validator = Validator::make(request()->all(), [
+            'name' => 'required|string|max:255',
+            'alamat' => 'required|min:10|max:100',
+            'email' => 'required|email|unique:users,email,' . $userId,
+            'tanggal_lahir' => 'required|date',
+            'tempat_lahir' => 'required|string|max:255',
+            'id_agama' => 'required|exists:agama73,id' 
+        ]);
+
+        if($validator->fails()){
+            return new ApiResponse(false, 'Gagal mengupdate profile', $validator->errors()->all());
+        }
+
+        $user = User::find($userId);
+
+        if(!$user){
+            return new ApiResponse(false, 'Gagal mengupdate profile', 'User tidak ditemukan');
+        }
+
+        $data = User::with('detail')->find($userId);
+        
+        $detail = $data->detail;
+
+        $data->name = $request->name;
+        $data->email = $request->email;
+        $detail->alamat = $request->alamat;
+        $detail->tanggal_lahir = $request->tanggal_lahir;
+        $detail->tempat_lahir = $request->tempat_lahir;
+        $detail->id_agama = $request->id_agama;
+        $detail->umur = date_diff(date_create($request->tanggal_lahir), date_create('now'))->y;
+
+        $data->save();
+        $detail->save();
+
+        return new ApiResponse(true, 'Berhasil mengupdate profile', $data);
+    }
+
+    public function changePhotoProfile73(Request $request, $userId){
+        $validator = Validator::make(request()->all(), [
+            'foto' => 'required',
+        ]);
+
+        if($validator->fails()){
+            return new ApiResponse(false, 'Gagal mengupdate foto', $validator->errors()->all());
+        }
+
+        $user = User::find($userId);
+
+        if(!$user){
+            return new ApiResponse(false, 'Gagal mengupdate foto', 'User tidak ditemukan');
+        }
+
+        $data = User::with('detail')->find($userId);
+
+        $data->foto = $request->foto;
+        $data->save();
+
+        return new ApiResponse(true, 'Berhasil mengupdate foto', $data);
+    }
+
+    public function changePhotoKTP73(Request $request, $userId)
+    {
+        $validator = Validator::make(request()->all(), [
+            'foto_ktp' => 'required',
+        ]);
+
+        if($validator->fails()){
+            return new ApiResponse(false, 'Gagal mengupdate foto', $validator->errors()->all());
+        }
+
+        $user = User::find($userId);
+
+        if(!$user){
+            return new ApiResponse(false, 'Gagal mengupdate foto', 'User tidak ditemukan');
+        }
+
+        $data = User::with('detail')->find($userId);
+
+        $detail = $data->detail;
+        $detail->foto_ktp = $request->foto_ktp;
+        $detail->save();
+
+        return new ApiResponse(true, 'Berhasil mengupdate foto', $data);
+    }
+
+
+}
diff --git a/app/Http/Controllers/Api/User/User73Controller.php b/app/Http/Controllers/Api/User/User73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..cc40629b11503b1517d133f27e1cf24e714a6822
--- /dev/null
+++ b/app/Http/Controllers/Api/User/User73Controller.php
@@ -0,0 +1,39 @@
+<?php
+
+namespace App\Http\Controllers\Api\User;
+
+use App\Http\Controllers\Controller;
+use App\Http\Resources\ApiResponse;
+use App\Models\User;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Hash;
+use Illuminate\Support\Facades\Validator;
+
+class User73Controller extends Controller
+{
+    public function changePassword73(Request $request, $userId){
+        $validator = Validator::make(request()->all(), [
+            'old_password' => 'required',
+            'password' => 'required|min:8',
+        ]);
+
+        if($validator->fails()){
+            return new ApiResponse(false, 'Gagal mengubah password', $validator->errors()->all());
+        }
+
+        $user = User::find($userId);
+
+        if(!$user){
+            return new ApiResponse(false, 'User tidak ditemukan', null);
+        }
+
+        if(!Hash::check($request->old_password, $user->password)){
+            return new ApiResponse(false, 'Password lama tidak sesuai', null);
+        }
+
+        $user->password = bcrypt($request->password);
+        $user->save();
+
+        return new ApiResponse(true, 'Berhasil mengubah password', null);
+    }
+}
diff --git a/app/Http/Controllers/Authentication73Controller.php b/app/Http/Controllers/Auth73Controller.php
similarity index 89%
rename from app/Http/Controllers/Authentication73Controller.php
rename to app/Http/Controllers/Auth73Controller.php
index 117dcfceff732c3b916a7928003c2afdbeb162e6..c02995798594f957f26148cf9028aaa0f30839c1 100644
--- a/app/Http/Controllers/Authentication73Controller.php
+++ b/app/Http/Controllers/Auth73Controller.php
@@ -8,7 +8,7 @@
 use Illuminate\Support\Facades\Auth;
 use Illuminate\Support\Facades\DB;
 
-class Authentication73Controller extends Controller
+class Auth73Controller extends Controller
 {
     public function register73(Request $request)
     {
@@ -40,7 +40,7 @@ public function register73(Request $request)
             return redirect()->back()->withErrors(['error' => "Ada kesalahan di sisi server"]);
         }
 
-        return redirect('login73')->with('success', 'Berhasil mendaftar');
+        return redirect('login73')->with('success', 'Berhasil mendaftar, silahkan login');
     }
 
     public function login73(Request $request)
@@ -53,6 +53,11 @@ public function login73(Request $request)
         $credentials = $request->only('email', 'password');
 
         if (Auth::attempt($credentials)) {
+            if(Auth::user()->is_active == 0){
+                Auth::logout();
+                return back()->with('error', 'Akun anda belum aktif');
+            }
+
             if (Auth::user()->role === 'admin') {
                 return redirect("/admin/dashboard73");
             } else {
diff --git a/app/Http/Controllers/Client/Admin/Admin73Controller.php b/app/Http/Controllers/Client/Admin/Admin73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..1e8e1c9b83add2f6ed3a77f6cf6596a556245284
--- /dev/null
+++ b/app/Http/Controllers/Client/Admin/Admin73Controller.php
@@ -0,0 +1,86 @@
+<?php
+
+namespace App\Http\Controllers\Client\Admin;
+
+use App\Http\Controllers\Controller;
+use GuzzleHttp\Client;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Validator;
+
+class Admin73Controller extends Controller
+{
+    public function view73()
+    {
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+        $user_monthly = $client->request('GET', "$API_URL/admin/user-monthly-status", [
+            'timeout' => 5,
+        ]);
+        $user_monthly = json_decode($user_monthly->getBody()->getContents(), true);
+
+        $user_agama = $client->request('GET', "$API_URL/admin/user-agama-count",[
+            'timeout' => 5,
+        ]);
+        $user_agama = json_decode($user_agama->getBody()->getContents(), true);
+
+        $user_group_status = $client->request('GET', "$API_URL/user/groupby/status", [
+            'timeout' => 5,
+        ]);
+        $user_group_status = json_decode($user_group_status->getBody()->getContents(), true);
+
+        $agama_list = $client->request('GET', "$API_URL/agama",[
+            'timeout' => 5,
+        ]);
+        $agama_list = json_decode($agama_list->getBody()->getContents(), true);
+
+        if($user_monthly['status'] == true && $user_agama['status'] == true && $user_group_status['status'] == true && $agama_list['status'] == true){
+            return view('pages.admin73.dashboard', ['user_group' => $user_group_status['data'], 'user_monthly_active' => $user_monthly['data'], 'userAgamaCount' => $user_agama['data'], 'agama' => $agama_list['data'], 'is_client' => true]);
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengambil data');
+    }
+
+    public function changeAgama73(Request $request, $userId)
+    {
+        $request->validate([
+            'agama'=> 'required|exists:agama73,id',
+        ]);
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+        $client = new Client();
+
+        $response = $client->request('PUT', "$API_URL/user/$userId/agama", [
+            'json' => [
+                'agamaId' => $request->agama,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah agama user');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah agama user');
+    }
+
+    public function changeStatus73($userId)
+    {
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+        $response = $client->request('PUT', "$API_URL/user/$userId/status", [
+            'timeout' => 5,
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah status user');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah status user');
+    }
+}
diff --git a/app/Http/Controllers/Client/Admin/Agama73Controller.php b/app/Http/Controllers/Client/Admin/Agama73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..b0b86eff840146c2b860c27895a788e7056e1e0b
--- /dev/null
+++ b/app/Http/Controllers/Client/Admin/Agama73Controller.php
@@ -0,0 +1,94 @@
+<?php
+
+namespace App\Http\Controllers\Client\Admin;
+
+use App\Http\Controllers\Controller;
+use GuzzleHttp\Client;
+use Illuminate\Http\Request;
+
+class Agama73Controller extends Controller
+{
+    public function view73()
+    {
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $getAgama = $client->request('GET', "$API_URL/agama");
+        $getAgama = json_decode($getAgama->getBody()->getContents(), true);
+
+        if($getAgama['status'] == true){
+            return view('pages.admin73.agama', ['agama' => $getAgama['data'], 'is_client' => true]);
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengambil data');
+    }
+
+    public function store73(Request $request)
+    {
+        $request->validate([
+            'nama_agama' => 'required|unique:agama73,nama_agama',
+        ]);
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $response = $client->request('POST', "$API_URL/agama", [
+            'json' => [
+                'agama' => $request->nama_agama,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil menambahkan agama baru');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat menambahkan agama baru');
+    }
+
+    public function update73(Request $request, $agamaId)
+    {
+        $request->validate([
+            'nama_agama' => 'required|unique:agama73,nama_agama',
+        ]);
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $response = $client->request('PUT', "$API_URL/agama/$agamaId", [
+            'json' => [
+                'agama' => $request->nama_agama,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah agama');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah agama');
+    }
+
+    public function delete73($agamaId)
+    {
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $response = $client->request('DELETE', "$API_URL/agama/$agamaId");
+
+        $response = json_decode($response->getBody()->getContents(), true);
+
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil menghapus agama');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat menghapus agama');
+    }
+
+}
diff --git a/app/Http/Controllers/Client/User/Profile73Controller.php b/app/Http/Controllers/Client/User/Profile73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..3cc4a23fccfd34edff1bf0381f3c37e5a293f3d7
--- /dev/null
+++ b/app/Http/Controllers/Client/User/Profile73Controller.php
@@ -0,0 +1,144 @@
+<?php
+
+namespace App\Http\Controllers\Client\User;
+
+use App\Http\Controllers\Controller;
+use App\Models\User;
+use GuzzleHttp\Client;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
+
+class Profile73Controller extends Controller
+{
+    public function view73()
+    {
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $getAgama = $client->request('GET', "$API_URL/agama");
+        $getAgama = json_decode($getAgama->getBody()->getContents(), true);
+
+        $user = Auth::user();
+
+        $getDetailUser = $client->request('GET', "$API_URL/user/$user->id");
+        $getDetailUser = json_decode($getDetailUser->getBody()->getContents(), true);
+        
+
+        if($getAgama['status'] == true){
+            return view('pages.user73.dashboard', ['agama' => $getAgama['data'], 'data'=> $getDetailUser['data'], 'is_client' => true]);
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengambil data');
+    }
+
+    public function update73(Request $request)
+    {
+        $request->validate([
+            'name' => 'required|string|max:255',
+            'alamat' => 'required|min:10|max:100',
+            'email' => 'required|email|unique:users,email,' . Auth::user()->id,
+            'tanggal_lahir' => 'required|date',
+            'tempat_lahir' => 'required|string|max:255',
+            'id_agama' => 'required|exists:agama73,id' 
+        ]);
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+        $userId = Auth::user()->id;
+
+        $response = $client->request('PUT', "$API_URL/user/$userId", [
+            'json' => [
+                'name' => $request->name,
+                'email' => $request->email,
+                'alamat' => $request->alamat,
+                'tanggal_lahir' => $request->tanggal_lahir,
+                'tempat_lahir' => $request->tempat_lahir,
+                'id_agama' => $request->id_agama,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah data');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah data');
+    }
+
+    public function changePhotoKTP73(Request $request)
+    {
+        $request->validate([
+            'photoKTP' => 'required|image|mimes:jpeg,png,jpg|max:2048'
+        ]);
+
+        $user = Auth::user();
+
+        if ($user->foto_ktp != "foto_ktp.png") {
+            if (file_exists(public_path('photo/' . $user->detail->foto_ktp))) {
+                unlink(public_path('photo/' . $user->detail->foto_ktp));
+            }
+        }
+
+        $file = request()->file('photoKTP');
+        $fileName = time() . '.' . $file->getClientOriginalExtension();
+        $file->move(public_path('photo/'), $fileName);
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $response = $client->request('PUT', "$API_URL/user/$user->id/photoKTP", [
+            'json' => [
+                'foto_ktp' => $fileName,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah foto KTP');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah foto KTP');
+
+    }
+
+    public function changePhotoProfile73()
+    {
+        $user = Auth::user();
+        $detail = User::find($user->id);
+
+        if ($detail->foto != null) {
+            if (file_exists(public_path('photo/' . $detail->foto))) {
+                unlink(public_path('photo/' . $detail->foto));
+            }
+        }
+
+        $file = request()->file('photoProfil');
+
+        $fileName = time() . '.' . $file->getClientOriginalExtension();
+        $file->move(public_path('photo/'), $fileName);
+
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $response = $client->request('PUT', "$API_URL/user/$user->id/photoProfile", [
+            'json' => [
+                'foto' => $fileName,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah foto profil');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah foto profil');
+    }
+
+}
diff --git a/app/Http/Controllers/Client/User/User73Controller.php b/app/Http/Controllers/Client/User/User73Controller.php
new file mode 100644
index 0000000000000000000000000000000000000000..e70694629beb31f8ab678499572aa7cec973b150
--- /dev/null
+++ b/app/Http/Controllers/Client/User/User73Controller.php
@@ -0,0 +1,42 @@
+<?php
+
+namespace App\Http\Controllers\Client\User;
+
+use App\Http\Controllers\Controller;
+use GuzzleHttp\Client;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
+
+class User73Controller extends Controller
+{
+    public function changePassword73(Request $request)
+    {
+        $user = Auth::user();
+
+        $API_URL = env('API_URL',"http://127.0.0.1/project-uts-backend/public/api");
+
+        $client = new Client();
+
+        $request->validate([
+            'old_password' => 'required',
+            'password' => 'required|min:8',
+            'password_confirmation' => 'required|same:password'
+        ]);
+
+        $response = $client->request('PUT', "$API_URL/user/$user->id/password", [
+            'json' => [
+                'old_password' => $request->old_password,
+                'password' => $request->password,
+                'password_confirmation' => $request->password_confirmation,
+            ],
+        ]);
+
+        $response = json_decode($response->getBody()->getContents(), true);
+        
+        if($response['status'] == true){
+            return back()->with('success', 'Berhasil mengubah password');
+        }
+
+        return back()->with('error', 'Terjadi kesalahan saat mengubah password');
+    }
+}
diff --git a/app/Http/Controllers/User/Profile73Controller.php b/app/Http/Controllers/User/Profile73Controller.php
index 25822b17128745fe649935309a611fef1c5c6cf8..6e8e84f7e1027c941493104dd67a11f640dc2817 100644
--- a/app/Http/Controllers/User/Profile73Controller.php
+++ b/app/Http/Controllers/User/Profile73Controller.php
@@ -4,7 +4,6 @@
 
 use App\Http\Controllers\Controller;
 use App\Models\Agama73Model;
-use App\Models\Detail73Model;
 use App\Models\User;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Auth;
@@ -22,24 +21,18 @@ public function view73()
 
     public function update73(Request $request)
     {
-        $validator = Validator::make($request->all(), [
+        $request->validate([
             'name' => 'required|string|max:255',
             'alamat' => 'required|min:10|max:100',
             'email' => 'required|email|unique:users,email,' . Auth::user()->id,
             'tanggal_lahir' => 'required|date',
             'tempat_lahir' => 'required|string|max:255',
-            'id_agama' => 'required|exists:agama73,id'
+            'id_agama' => 'required|exists:agama73,id' 
         ]);
 
-        if ($validator->fails()) {
-            return response()->json([
-                'status' => 'error',
-                'message' => $validator->errors()->first()
-            ], 422);
-        }
-
         $user = Auth::user();
         $data = User::find($user->id);
+        
         $detail = $data->detail;
 
         $data->name = $request->name;
@@ -53,13 +46,9 @@ public function update73(Request $request)
         $data->save();
         $detail->save();
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil mengubah detail profil',
-        ], 200);
+        return back()->with('success', 'Berhasil mengubah data diri');
     }
 
-
     public function changePhotoKTP73()
     {
         $user = Auth::user();
diff --git a/app/Http/Controllers/User/User73Controller.php b/app/Http/Controllers/User/User73Controller.php
index c648b8a580c6d1c1d61f6a26f75b2ccea91e9219..c2a4aa776ccda0ead277536b24d2700f181e57fc 100644
--- a/app/Http/Controllers/User/User73Controller.php
+++ b/app/Http/Controllers/User/User73Controller.php
@@ -11,30 +11,24 @@
 
 class User73Controller extends Controller
 {
-    public function changePassword()
+    public function changePassword73(Request $request)
     {
         $user = Auth::user();
         $userModel = User::find($user->id);
 
-        Validator::make(request()->all(), [
+        $request->validate([
             'old_password' => 'required',
-            'password' => 'required|min:6|max:50',
-            'repassword' => 'required|same:password',
-        ])->validate();
+            'password' => 'required|min:8',
+            'password_confirmation' => 'required|same:password'
+        ]);
 
-        if (!Hash::check(request()->old_password, $userModel->password)) {
-            return response()->json([
-                'status' => 'error',
-                'message' => 'Password lama salah',
-            ], 422);
+        if (!Hash::check($request->old_password, $userModel->password)) {
+            return back()->with('error', 'Password lama tidak sesuai');
         };
 
         $userModel->password = bcrypt(request()->password);
         $userModel->save();
 
-        return response()->json([
-            'status' => 'success',
-            'message' => 'Berhasil mengubah password',
-        ], 200);
+        return back()->with('success', 'Berhasil mengubah password');
     }
 }
diff --git a/app/Http/Resources/ApiResponse.php b/app/Http/Resources/ApiResponse.php
new file mode 100644
index 0000000000000000000000000000000000000000..2aa6295f7b3c8d38372064e1ff457625f9ed6551
--- /dev/null
+++ b/app/Http/Resources/ApiResponse.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace App\Http\Resources;
+
+use Illuminate\Http\Resources\Json\JsonResource;
+
+class ApiResponse extends JsonResource
+{
+
+    public $status;
+    public $message;
+    public $data;
+
+    public function __construct($status, $message, $data)
+    {
+        parent::__construct($data);
+        $this->status = $status;
+        $this->message = $message;
+        $this->data = $data;
+    }
+
+    public function toArray($request)
+    {
+        return [
+            'status' => $this->status,
+            'message' => $this->message,
+            'data' => $this->data
+        ];
+    }
+}
diff --git a/app/Models/User.php b/app/Models/User.php
index dd936386aebc670325494955bd971e4e1b74d3de..5260719cb1a3b29cb19f479968efd611529924de 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -51,4 +51,9 @@ public function detail()
     {
         return $this->hasOne(Detail73Model::class, 'id_user', 'id');
     }
+
+    public function agama()
+    {
+        return $this->belongsTo(Agama73Model::class, 'id_agama', 'id');
+    }
 }
diff --git a/composer.json b/composer.json
index 299b7e8a1e165fc48058e87c574099cfac82aae5..ac61018c0347e2ec0db8423c807a5ef7808f5322 100644
--- a/composer.json
+++ b/composer.json
@@ -6,7 +6,7 @@
     "license": "MIT",
     "require": {
         "php": "^8.0.2",
-        "guzzlehttp/guzzle": "^7.2",
+        "guzzlehttp/guzzle": "^7.5",
         "laravel/framework": "^9.19",
         "laravel/sanctum": "^3.0",
         "laravel/tinker": "^2.7"
diff --git a/composer.lock b/composer.lock
index 00e79b4a842567358870133eb6d3d64c057cc838..de0b94ab157c64e8d02c5c408d68c113f4e1973c 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "ccbd816a07b206f971042295b899d1ba",
+    "content-hash": "47f3af2a24aeda5d3749ae759e5e8b17",
     "packages": [
         {
             "name": "brick/math",
diff --git a/public/photo/1668255651.jpg b/public/photo/1668255651.jpg
deleted file mode 100644
index 1e57797194edd2b28f8f18561de4c409b2c612b1..0000000000000000000000000000000000000000
Binary files a/public/photo/1668255651.jpg and /dev/null differ
diff --git a/public/photo/1668255714.jpg b/public/photo/1668255714.jpg
deleted file mode 100644
index 1e57797194edd2b28f8f18561de4c409b2c612b1..0000000000000000000000000000000000000000
Binary files a/public/photo/1668255714.jpg and /dev/null differ
diff --git a/public/photo/foto_ktp.png b/public/photo/foto_ktp.png
index 06535e4c00c0443578722cf0ffcefeb2f0f6a3a8..e3b7e170acf4f1585c244e4404504f14157a65cc 100644
Binary files a/public/photo/foto_ktp.png and b/public/photo/foto_ktp.png differ
diff --git a/resources/views/pages/admin73/agama.blade.php b/resources/views/pages/admin73/agama.blade.php
index c4b3ca79ffec425d0763dd4bdcf46751a77849e7..bc6bbd6704aaf25cc0e7c9af3f917f6dc175da69 100644
--- a/resources/views/pages/admin73/agama.blade.php
+++ b/resources/views/pages/admin73/agama.blade.php
@@ -1,5 +1,16 @@
 @include('partials.header', ['title' => 'Agama Data - Nurul Ngaeni'])
 
+@php
+
+$API = url('');
+
+if(isset($is_client))
+{
+    $API = url('client');
+}
+
+@endphp
+
 <body class="hold-transition sidebar-mini">
 
     <div class="wrapper">
@@ -51,9 +62,17 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                 </div>
             @endif
 
-            <section class="content">
-
+            @if ($errors->any())
+                <div class="alert alert-danger">
+                    <ul>
+                        @foreach ($errors->all() as $error)
+                            <li>{{ $error }}</li>
+                        @endforeach
+                    </ul>
+                </div>
+            @endif
 
+            <section class="content">
 
                 <div class="container-fluid">
                     <div class="row">
@@ -83,8 +102,8 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                                             @if (isset($agama))
                                                 @foreach ($agama as $a)
                                                     <tr>
-                                                        <td style="width: 10%;">{{ $a->id }}</td>
-                                                        <td style="width: 70%">{{ $a->nama_agama }}</td>
+                                                        <td style="width: 10%;">{{ $a['id'] }}</td>
+                                                        <td style="width: 70%">{{ $a['nama_agama'] }}</td>
                                                         <td style="width: 20%">
                                                             <a class="btn btn-warning btn-sm" data-toggle="modal"
                                                                 data-target="#modal-default" data-action="edit"
@@ -116,8 +135,6 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                         </div>
                     </div>
                 </div>
-
-
             </section>
         </div>
     </div>
@@ -131,21 +148,23 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                         <span aria-hidden="true">&times;</span>
                     </button>
                 </div>
+                <form action="{{ $API."admin/agama73" }}" method="POST">
+                    @csrf
                 <div class="modal-body">
                     <div class="row">
                         <div class="col-12">
                             <div class="form-group">
                                 <label for="agama">Agama</label>
                                 <input type="hidden" id="id_agama">
-                                <input type="text" class="form-control" id="agama" name="agama"
-                                    placeholder="Agama">
+                                <input type="text" class="form-control" id="agama" name="nama_agama" placeholder="Agama">
                             </div>
                         </div>
                     </div>
                     <div class="modal-footer justify-content-between">
                         <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
-                        <button type="button" class="btn btn-primary" id="save">Save changes</button>
+                        <button type="submit" class="btn btn-primary" id="save">Save changes</button>
                     </div>
+                </form>
                 </div>
             </div>
         </div>
@@ -155,87 +174,7 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
     <script>
         $(function() {
 
-            const url = "{{ url('admin/agama73') }}";
-
-            const store = (agama) => {
-                $.ajax({
-                    url: url,
-                    type: 'POST',
-                    data: {
-                        nama_agama: agama,
-                        _token: "{{ csrf_token() }}"
-                    },
-                    success: function(data) {
-                        Swal.fire({
-                            icon: 'success',
-                            title: 'Berhasil',
-                            text: 'Data berhasil ditambahkan',
-                        })
-                        $('#modal-default').modal('hide');
-                        location.reload();
-                    },
-                    error: function(data) {
-                        Swal.fire({
-                            icon: 'error',
-                            title: 'Oops...',
-                            text: 'Something went wrong!',
-                        })
-                    }
-                })
-            }
-
-            const update = (id, agama) => {
-                $.ajax({
-                    url: url + '/' + id,
-                    type: 'PUT',
-                    data: {
-                        nama_agama: agama,
-                        _token: "{{ csrf_token() }}"
-                    },
-                    success: function(data) {
-                        Swal.fire({
-                            icon: 'success',
-                            title: 'Berhasil',
-                            text: 'Data berhasil diubah',
-                        })
-                        $('#modal-default').modal('hide');
-                        location.reload();
-                    },
-                    error: function(data) {
-                        Swal.fire({
-                            icon: 'error',
-                            title: 'Oops...',
-                            text: 'Something went wrong!',
-                        })
-                    }
-                })
-            }
-
-            const destroy = (id) => {
-                $.ajax({
-                    url: url + '/' + id,
-                    type: 'DELETE',
-                    data: {
-                        _token: "{{ csrf_token() }}"
-                    },
-                    success: function(data) {
-                        Swal.fire({
-                            icon: 'success',
-                            title: 'Berhasil',
-                            text: 'Data berhasil dihapus',
-                        })
-                        $('#modal-default').modal('hide');
-                        location.reload();
-                    },
-                    error: function(data) {
-                        Swal.fire({
-                            icon: 'error',
-                            title: 'Oops...',
-                            text: 'Something went wrong!',
-                        })
-                    }
-                })
-            }
+            const api = "{{ $API }}";
 
             $('#data_agama').DataTable({
                 "paging": true,
@@ -262,32 +201,23 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                     modal.find('#save').text('Delete')
                     modal.find('#save').attr('class', 'btn btn-danger')
 
-                    $('#save').on('click', function() {
-                        destroy(agama.id)
-                    })
+                    modal.find('form').attr('action', `${api}/admin/agama73/${agama.id}/delete`)
+
                 } else if (action == "edit") {
+                    modal.find('form').attr('action', `${api}/admin/agama73/${agama.id}/update`)
                     modal.find('.modal-title').text('Edit Agama')
-                    modal.find('#agama').attr('disabled', false)
-
                     modal.find('#id_agama').val(agama.id)
+                    modal.find('#agama').attr('disabled', false)
                     modal.find('#agama').val(agama.nama_agama)
-                    modal.find('#save').text('Edit')
-                    modal.find('#save').attr('class', 'btn btn-warning')
-
-                    $('#save').on('click', function() {
-                        update(agama.id, $('#agama').val())
-                    })
+                    modal.find('#save').text('Save changes')
                 } else {
                     modal.find('.modal-title').text('Tambah Agama')
                     modal.find('#id_agama').val('')
                     modal.find('#agama').attr('disabled', false)
                     modal.find('#agama').val('')
-                    modal.find('#save').text('Save')
-                    modal.find('#save').attr('class', 'btn btn-primary')
+                    modal.find('#save').text('Save changes')
 
-                    $('#save').on('click', function() {
-                        store($('#agama').val())
-                    })
+                    modal.find('form').attr('action', `${api}/admin/agama73`)
                 }
             })
         });
diff --git a/resources/views/pages/admin73/dashboard.blade.php b/resources/views/pages/admin73/dashboard.blade.php
index a522f8c6e7f746e4a8efd169bf959fe1a36492a7..10802d014a687d3af04f8db21e8cb2fc7a932719 100644
--- a/resources/views/pages/admin73/dashboard.blade.php
+++ b/resources/views/pages/admin73/dashboard.blade.php
@@ -1,5 +1,16 @@
 @include('partials.header', ['title' => 'Dashboard Admin - Nurul Ngaeni'])
 
+@php
+$API = url('');
+
+if(isset($is_client)){
+     $API = url('client');
+}
+
+@endphp
+
+
+
 <body class="hold-transition sidebar-mini">
 
     <div class="wrapper">
@@ -51,6 +62,16 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                 </div>
             @endif
 
+            @if ($errors->any())
+            <div class="alert alert-danger">
+                <ul>
+                    @foreach ($errors->all() as $error)
+                        <li>{{ $error }}</li>
+                    @endforeach
+                </ul>
+            </div>
+        @endif
+
             <section class="content">
 
                 <div class="container-fluid">
@@ -127,48 +148,51 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                                                     <tr>
                                                         <td>
 
-                                                            @if ($item->foto == null)
+                                                            @if ($item['foto'] == null)
                                                                 <img src="{{ url('photo/default.png') }}"
                                                                     alt="User Image" class="img-circle elevation-2"
                                                                     style="width: 50px; height: 50px;">
                                                             @else
-                                                                <img src="{{ url("photo/{$item->foto}") }}"
+                                                                <img src="{{ url("photo/{$item['foto']}") }}"
                                                                     alt="" width="150px" height="100px">
                                                             @endif
 
                                                         </td>
 
-                                                        <td>{{ $item->name }}</td>
-                                                        <td>{{ $item->email }}</td>
+                                                        <td>{{ $item['name'] }}</td>
+                                                        <td>{{ $item['email'] }}</td>
 
                                                         <td style="width: 125px">
 
                                                             <div class="row">
                                                                 <div class="col-12 mb-2">
-
+                                                                    <form action="{{ "$API/admin/agama73/{$item['id']}/user" }}" method="POST">
+                                                                        @csrf
                                                                     <select class="form-control" name="agama"
-                                                                        data-id="{{ $item->id }}">
+                                                                        data-id="{{ $item['id'] }}">
                                                                         >
                                                                         @foreach ($agama as $religion)
-                                                                            <option value="{{ $religion->id }}"
-                                                                                {{ $religion->id == $item->detail->agama->id ? 'selected' : '' }}>
-                                                                                {{ $religion->nama_agama }}
+                                                                            <option value="{{ $religion['id'] }}"
+                                                                                {{ $religion['id'] == $item['detail']['id_agama'] ? 'selected' : '' }}>
+                                                                                {{ $religion['nama_agama'] }}
                                                                             </option>
                                                                         @endforeach
                                                                     </select>
-
-
+                                                                    <button type="submit" class="btn btn-primary mt-2">Simpan</button>
+                                                                </form>
                                                                 </div>
                                                             </div>
                                                         </td>
                                                         <td>
-                                                            @if ($item->is_active == 1)
+                                                            @if ($item['is_active'] == 1)
                                                                 <a class="btn btn-danger btn-block status"
-                                                                    data-id="{{ $item->id }}">
+                                                                    href="{{ "$API/admin/status73/{$item['id']}/user" }}">
+                                                                    {{-- data-id="{{ $item->id }}"> --}}
                                                                     Nonaktif </a>
                                                             @else
                                                                 <a class="btn btn-success btn-block status"
-                                                                    data-id="{{ $item->id }}">
+                                                                    href="{{ "$API/admin/status73/{$item['id']}/user" }}">
+                                                                    {{-- data-id="{{ $item->id }}"> --}}
                                                                     Aktifkan </a>
                                                             @endif
                                                         </td>
@@ -230,29 +254,29 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                                                 @foreach ($user_group[0] as $item)
                                                     <tr>
                                                         <td>
-                                                            @if ($item->foto == null)
+                                                            @if ($item['foto'] == null)
                                                                 <img src="{{ url('photo/default.png') }}"
                                                                     alt="User Image" class="img-circle elevation-2"
                                                                     style="width: 50px; height: 50px;">
                                                             @else
-                                                                <img src="{{ url("photo/{$item->foto}") }}"
+                                                                <img src="{{ url("photo/{$item['foto']}") }}"
                                                                     alt="" width="150px" height="100px">
                                                             @endif
                                                         </td>
 
-                                                        <td>{{ $item->name }}</td>
-                                                        <td>{{ $item->email }}</td>
+                                                        <td>{{ $item['name'] }}</td>
+                                                        <td>{{ $item['email'] }}</td>
 
                                                         <td style="width: 125px">
 
                                                             <div class="row">
                                                                 <div class="col-12 mb-2">
                                                                     <select class="form-control" name="agama"
-                                                                        data-id="{{ $item->id }}">
+                                                                        data-id="{{ $item['id'] }}">
                                                                         @foreach ($agama as $religion)
-                                                                            <option value="{{ $religion->id }}"
-                                                                                {{ $religion->id == $item->detail->agama->id ? 'selected' : '' }}>
-                                                                                {{ $religion->nama_agama }}
+                                                                            <option value="{{ $religion['id'] }}"
+                                                                                {{ $religion['id'] == $item['detail']['id_agama'] ? 'selected' : '' }}>
+                                                                                {{ $religion['nama_agama'] }}
                                                                             </option>
                                                                         @endforeach
                                                                     </select>
@@ -263,13 +287,13 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                                                             </div>
                                                         </td>
                                                         <td>
-                                                            @if ($item->is_active == 1)
+                                                            @if ($item['is_active'] == 1)
                                                                 <a class="btn btn-danger btn-block status"
-                                                                    data-id="{{ $item->id }}">
+                                                                href="{{ "$API/admin/status73/{$item['id']}/user" }}">
                                                                     Nonaktif </a>
                                                             @else
                                                                 <a class="btn btn-success btn-block status"
-                                                                    data-id="{{ $item->id }}">
+                                                                    href="{{ "$API/admin/status73/{$item['id']}/user" }}">
                                                                     Aktifkan </a>
                                                             @endif
                                                         </td>
@@ -390,39 +414,37 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
     <script>
         $(function() {
 
-
-            $('.status').on('click', function(e) {
-                //get parent of button clicked
-                var parent = $(this).parent().parent();
-                var id = $(this).data('id');
-
-                $.ajax({
-                    url: "{{ url('/admin/status73/') }}/" + id + "/user",
-                    type: "PUT",
-                    data: {
-                        _token: "{{ csrf_token() }}"
-                    },
-                    success: function(data) {
-                        if (data.status == 'success') {
-                            Swal.fire({
-                                icon: 'success',
-                                title: 'Berhasil',
-                                text: data.message,
-                            }).then((result) => {
-                                location.reload();
-                            })
-                        } else {
-                            Swal.fire({
-                                icon: 'error',
-                                title: 'Gagal',
-                                text: data.message,
-                            })
-                        }
-                    }
-                })
-
-            })
-
+            // $('.status').on('click', function(e) {
+            //     //get parent of button clicked
+            //     var parent = $(this).parent().parent();
+            //     var id = $(this).data('id');
+
+            //     $.ajax({
+            //         url: "{{ url('/admin/status73/') }}/" + id + "/user",
+            //         type: "PUT",
+            //         data: {
+            //             _token: "{{ csrf_token() }}"
+            //         },
+            //         success: function(data) {
+            //             if (data.status == 'success') {
+            //                 Swal.fire({
+            //                     icon: 'success',
+            //                     title: 'Berhasil',
+            //                     text: data.message,
+            //                 }).then((result) => {
+            //                     location.reload();
+            //                 })
+            //             } else {
+            //                 Swal.fire({
+            //                     icon: 'error',
+            //                     title: 'Gagal',
+            //                     text: data.message,
+            //                 })
+            //             }
+            //         }
+            //     })
+
+            // })
 
             const checkboxElement = $('#customSwitch1');
 
@@ -450,34 +472,34 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
             });
 
 
-            $('select').on('change', function(e) {
-                const id = $(this).data('id');
-                const id_agama = $(this).val();
-                $.ajax({
-                    url: "{{ url('/admin/agama73/') }}/" + id + "/user",
-                    type: "PUT",
-                    data: {
-                        _token: "{{ csrf_token() }}",
-                        id_agama
-                    },
-                    success: function(data) {
-                        Swal.fire({
-                            icon: 'success',
-                            title: 'Berhasil mengubah agama',
-                            text: data.message,
-                        }).then((result) => {
-                            location.reload();
-                        })
-                    },
-                    error: function(data) {
-                        Swal.fire({
-                            icon: 'error',
-                            title: 'Gagal mengubah agama',
-                            text: data.message,
-                        })
-                    }
-                });
-            });
+            // $('select').on('change', function(e) {
+            //     const id = $(this).data('id');
+            //     const id_agama = $(this).val();
+            //     $.ajax({
+            //         url: "{{ url('/admin/agama73/') }}/" + id + "/user",
+            //         type: "PUT",
+            //         data: {
+            //             _token: "{{ csrf_token() }}",
+            //             id_agama
+            //         },
+            //         success: function(data) {
+            //             Swal.fire({
+            //                 icon: 'success',
+            //                 title: 'Berhasil mengubah agama',
+            //                 text: data.message,
+            //             }).then((result) => {
+            //                 location.reload();
+            //             })
+            //         },
+            //         error: function(data) {
+            //             Swal.fire({
+            //                 icon: 'error',
+            //                 title: 'Gagal mengubah agama',
+            //                 text: data.message,
+            //             })
+            //         }
+            //     });
+            // });
 
             $('#modal-default').on('show.bs.modal', function(e) {
                 var user = $(e.relatedTarget).data('user');
@@ -487,7 +509,7 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                 $('#alamat').text(user.detail.alamat);
                 $('#tempat_lahir').text(user.detail.tempat_lahir);
                 $('#tanggal_lahir').text(user.detail.tanggal_lahir);
-                $('#agama').text(user.detail.agama.nama_agama);
+                $('#agama').text(user.nama_agama);
                 $('#foto_profil').attr('src', user.foto_profil ||
                     "https://thumbs.dreamstime.com/b/default-profile-picture-avatar-photo-placeholder-vector-illustration-default-profile-picture-avatar-photo-placeholder-vector-189495158.jpg"
                 );
diff --git a/resources/views/pages/auth73/login.blade.php b/resources/views/pages/auth73/login.blade.php
index 5484ae8ce83c8e3a4e6eb741afb3e2dda30f90a7..f1fa3639d10580b2ae73ae3384e466538664ad3b 100644
--- a/resources/views/pages/auth73/login.blade.php
+++ b/resources/views/pages/auth73/login.blade.php
@@ -7,6 +7,28 @@
         <label class="custom-control-label" for="customSwitch1">Dark Mode</label>
     </div>
 
+    @if ($errors->any())
+    <div class="alert alert-danger">
+        <ul>
+            @foreach ($errors->all() as $error)
+                <li>{{ $error }}</li>
+            @endforeach
+        </ul>
+    </div>
+@endif
+
+@if (session('success'))
+    <div class="alert alert-success">
+        {{ session('success') }}
+    </div>
+@endif
+
+@if (session('error'))
+    <div class="alert alert-danger">
+        {{ session('error') }}
+    </div>
+@endif
+
     <div class="login-box">
         <div class="card card-outline card-primary">
             <div class="card-header text-center">
diff --git a/resources/views/pages/auth73/register.blade.php b/resources/views/pages/auth73/register.blade.php
index ca77a465c35de6136d7762671d18e988ec004c02..2ad056cde0aa03465f9069d38fcfd1a5592ed559 100644
--- a/resources/views/pages/auth73/register.blade.php
+++ b/resources/views/pages/auth73/register.blade.php
@@ -25,6 +25,18 @@
                     </div>
                 @endif
 
+                @if (session('status'))
+                    <div class="alert alert-success">
+                        {{ session('status') }}
+                    </div>
+                @endif
+
+                @if (session('error'))
+                    <div class="alert alert-danger">
+                        {{ session('error') }}
+                    </div>
+                @endif
+
                 <form action="{{ url('register73') }}" method="post">
                     @csrf
                     <div class="input-group mb-3">
diff --git a/resources/views/pages/user73/dashboard.blade.php b/resources/views/pages/user73/dashboard.blade.php
index 4e951acd2d93fa082f5d3f7563598dbb84eac668..0569301ae20ef85f6676e5027378663805604ed4 100644
--- a/resources/views/pages/user73/dashboard.blade.php
+++ b/resources/views/pages/user73/dashboard.blade.php
@@ -1,5 +1,14 @@
 @include('partials.header', ['title' => 'Dashboard Admin - Nurul Ngaeni'])
 
+@php
+$API = url('');
+
+if(isset($is_client))
+{
+    $API = url('client');
+}
+
+@endphp
 
 <body class="hold-transition sidebar-mini">
 
@@ -52,6 +61,17 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                 </div>
             @endif
 
+            @if ($errors->any())
+                <div class="alert alert-danger">
+                    <ul>
+                        @foreach ($errors->all() as $error)
+                            <li>{{ $error }}</li>
+                        @endforeach
+                    </ul>
+                </div>
+            @endif
+
+
             <section class="content">
                 <div class="container-fluid">
                     <div class="row">
@@ -70,14 +90,14 @@ class="brand-image img-circle elevation-3" style="opacity: .8">
                                         <div class="row">
                                             <div class="col-sm-12 col-md-6">
 
-                                                <img src="{{ url('photo/' . $data->foto) ?? url('photo/default.png') }}"
+                                                <img src="{{ $data['foto'] == null ? url('photo/default.png') : url('photo/' . $data['foto']) }}"
                                                     class="img-fluid"
                                                     style="height:250px; object-fit: cover; object-cover:center; width: 100%"
                                                     alt="Responsive image">
 
                                                 <div class="form-group mt-3">
                                                     <label for="exampleInputFile">Ubah Foto Profil</label>
-                                                    <form action="{{ url('/user/photo73') }}" method="POST"
+                                                    <form action="{{ "$API/user/photo73" }}" method="POST"
                                                         enctype="multipart/form-data">
                                                         @csrf
                                                         <div class="input-group">
@@ -103,7 +123,7 @@ class="mt-3 btn btn-warning btn-block"><b>Ganti Foto
                                             <div class="col-sm-12 col-md-6">
 
                                                 <div class="image-preview" style="position: relative; ">
-                                                    <img src="{{ url('photo/' . $data->detail->foto_ktp) }}"
+                                                    <img src="{{ url('photo/' . $data['detail']['foto_ktp']) }}"
                                                         class="img-fluid"
                                                         style="height:250px; object-fit: cover; object-cover:center; width: 100%"
                                                         alt="Responsive image">
@@ -111,7 +131,7 @@ class="img-fluid"
 
                                                 <div class="form-group mt-3">
                                                     <label for="exampleInputFile">Ubah Foto KTP</label>
-                                                    <form action="{{ url('/user/photoKTP73') }}" method="POST"
+                                                    <form action="{{ "$API/user/photoKTP73" }}" method="POST"
                                                         enctype="multipart/form-data">
                                                         @csrf
                                                         <div class="input-group">
@@ -152,28 +172,28 @@ class="mt-3 btn btn-warning btn-block"><b>Edit
                                     </div>
                                 </div>
                                 <div class="card-body">
-                                    <form action="" method="post">
-
+                                    <form action="{{ "$API/user/profile73" }}" method="post">
+                                        @csrf
                                         <div class="row">
                                             <div class="col-sm-12 col-md-6">
                                                 <div class="form-group">
                                                     <label for="exampleInputEmail1">Nama Lengkap</label>
                                                     <input type="text" class="form-control" name="name"
-                                                        value="{{ $data->name }}" id="exampleInputEmail1"
+                                                        value="{{ $data['name'] }}" id="exampleInputEmail1"
                                                         aria-describedby="emailHelp" placeholder="Nama Lengkap"
                                                         required>
                                                 </div>
 
                                                 <div class="form-group">
                                                     <label for="exampleInputEmail1">Email</label>
-                                                    <input type="email" name="email" value="{{ $data->email }}"
+                                                    <input type="email" name="email" value="{{ $data['email'] }}"
                                                         class="form-control" id="exampleInputEmail1"
                                                         aria-describedby="emailHelp" placeholder="Email">
                                                 </div>
 
                                                 <div class="form-group">
                                                     <label for="exampleInputEmail1">Tanggal Lahir</label>
-                                                    <input type="date" value="{{ $data->detail->tanggal_lahir }}"
+                                                    <input type="date" value="{{ $data['detail']['tanggal_lahir'] }}"
                                                         name="tanggal_lahir" class="form-control"
                                                         id="exampleInputEmail1" aria-describedby="emailHelp"
                                                         placeholder="Tanggal Lahir">
@@ -182,16 +202,14 @@ class="form-control" id="exampleInputEmail1"
                                             <div class="col-sm-12 col-md-6">
                                                 <div class="form-group">
                                                     <label for="exampleInputEmail1">Alamat</label>
-                                                    <input type="text" value="{{ $data->detail->alamat }}"
+                                                    <input type="text" value="{{ $data['detail']['alamat'] }}"
                                                         name="alamat" class="form-control" id="exampleInputEmail1"
                                                         aria-describedby="emailHelp" placeholder="Alamat">
                                                 </div>
 
-
-
                                                 <div class="form-group">
                                                     <label for="exampleInputEmail1">Tempat Lahir</label>
-                                                    <input type="text" value="{{ $data->detail->tempat_lahir }}"
+                                                    <input type="text" value="{{ $data['detail']['tempat_lahir'] }}"
                                                         name="tempat_lahir" id="tempat_lahir" class="form-control"
                                                         id="exampleInputEmail1" aria-describedby="emailHelp"
                                                         placeholder="Tempat Lahir">
@@ -202,16 +220,15 @@ class="form-control" id="exampleInputEmail1"
                                                     <select class="form-control" name="id_agama" id="agama">
                                                         <option value="" disabled>Pilih Agama</option>
                                                         @foreach ($agama as $item)
-                                                            <option value="{{ $item->id }}"
-                                                                {{ $data->detail->id_agama == $item->id ? 'selected' : '' }}>
-                                                                {{ $item->nama_agama }}</option>
+                                                            <option value="{{ $item['id'] }}"
+                                                                {{ $data['detail']['id_agama'] == $item['id'] ? 'selected' : '' }}>
+                                                                {{ $item['nama_agama'] }}</option>
                                                         @endforeach
                                                     </select>
                                                 </div>
                                             </div>
                                         </div>
 
-
                                         <div class="row mt-5">
                                             <div class="col-sm-12 mb-3 col-md-6">
                                                 <button type="button" data-target="#modal-default"
@@ -245,31 +262,34 @@ class="btn btn-warning btn-block"><b>Simpan
                         <span aria-hidden="true">&times;</span>
                     </button>
                 </div>
+                <form action="{{ "$API/user/password73" }}" method="POST">
+                    @csrf
                 <div class="modal-body">
                     <div class="row">
                         <div class="col-12">
                             <div class="form-group">
                                 <label for="agama">Password Lama</label>
-                                <input type="text" class="form-control" id="oldPassword">
+                                <input type="text" class="form-control" id="oldPassword" name="old_password">
                             </div>
                         </div>
                         <div class="col-12">
                             <div class="form-group">
                                 <label for="agama">Password Baru</label>
-                                <input type="text" class="form-control" id="password">
+                                <input type="text" class="form-control" id="password" name="password">
                             </div>
                         </div>
                         <div class="col-12">
                             <div class="form-group">
                                 <label for="agama">Ulangi Password Baru</label>
-                                <input type="text" class="form-control" id="repassword">
+                                <input type="text" class="form-control" id="repassword" name="password_confirmation">
                             </div>
                         </div>
                     </div>
                     <div class="modal-footer justify-content-between">
                         <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
-                        <button type="button" class="btn btn-primary" id="save">Save changes</button>
+                        <button type="submit" class="btn btn-primary" id="save">Save changes</button>
                     </div>
+                </form>
                 </div>
             </div>
         </div>
@@ -282,94 +302,57 @@ class="btn btn-warning btn-block"><b>Simpan
 
 
             // listen modal open
-            $('#modal-default').on('shown.bs.modal', function(e) {
-
-                //listen button save click
-                $('#save').click(function() {
-                    //get value from input modal
-                    var oldPassword = $('#oldPassword').val();
-                    var password = $('#password').val();
-                    var repassword = $('#repassword').val();
-
-                    //check if password and repassword is same
-                    if (password == repassword) {
-                        //if true, send ajax
-                        $.ajax({
-                            url: "{{ url('user/password73') }}",
-                            type: "POST",
-                            data: {
-                                _token: "{{ csrf_token() }}",
-                                old_password: oldPassword,
-                                password: password,
-                                repassword: repassword
-                            },
-                            success: function(data) {
-                                //if success, show alert success
-                                Swal.fire({
-                                    icon: 'success',
-                                    title: 'Berhasil',
-                                    text: 'Password berhasil diubah',
-                                })
-                                //close modal
-                                $('#modal-default').modal('hide');
-                            },
-                            error: function(data) {
-                                //if error, show alert error
-                                Swal.fire({
-                                    icon: 'error',
-                                    title: 'Gagal',
-                                    text: 'Password lama salah',
-                                })
-                            }
-                        })
-                    } else {
-                        //if false, show alert error
-                        Swal.fire({
-                            icon: 'error',
-                            title: 'Gagal',
-                            text: 'Password tidak sama',
-                        })
-                    }
-                })
-
-            });
-
-
-            $("#submitData").click(function(e) {
-                e.preventDefault();
-
-                $.ajax({
-                    url: "{{ url('/user/profile73') }}/",
-                    type: "PUT",
-                    data: {
-                        _token: "{{ csrf_token() }}",
-                        name: $('input[name=name]').val(),
-                        email: $('input[name=email]').val(),
-                        tanggal_lahir: $('input[name=tanggal_lahir]').val(),
-                        tempat_lahir: $('input[name=tempat_lahir]').val(),
-                        alamat: $('input[name=alamat]').val(),
-                        id_agama: $('select[name=id_agama]').val(),
-                    },
-                    success: function(data) {
-                        if (data.status == 'success') {
-                            Swal.fire({
-                                icon: 'success',
-                                title: 'Berhasil',
-                                text: data.message,
-                            }).then((result) => {
-                                location.reload();
-                            })
-                        }
-                    },
-                    error: function(data) {
-                        Swal.fire({
-                            icon: 'error',
-                            title: 'Gagal',
-                            text: data.message,
-                        })
-                    }
-                })
-            });
+            // $('#modal-default').on('shown.bs.modal', function(e) {
+
+            //     //listen button save click
+            //     $('#save').click(function() {
+            //         //get value from input modal
+            //         var oldPassword = $('#oldPassword').val();
+            //         var password = $('#password').val();
+            //         var repassword = $('#repassword').val();
+
+            //         //check if password and repassword is same
+            //         if (password == repassword) {
+            //             //if true, send ajax
+            //             $.ajax({
+            //                 url: "{{ url('user/password73') }}",
+            //                 type: "POST",
+            //                 data: {
+            //                     _token: "{{ csrf_token() }}",
+            //                     old_password: oldPassword,
+            //                     password: password,
+            //                     repassword: repassword
+            //                 },
+            //                 success: function(data) {
+            //                     //if success, show alert success
+            //                     Swal.fire({
+            //                         icon: 'success',
+            //                         title: 'Berhasil',
+            //                         text: 'Password berhasil diubah',
+            //                     })
+            //                     //close modal
+            //                     $('#modal-default').modal('hide');
+            //                 },
+            //                 error: function(data) {
+            //                     //if error, show alert error
+            //                     Swal.fire({
+            //                         icon: 'error',
+            //                         title: 'Gagal',
+            //                         text: 'Password lama salah',
+            //                     })
+            //                 }
+            //             })
+            //         } else {
+            //             //if false, show alert error
+            //             Swal.fire({
+            //                 icon: 'error',
+            //                 title: 'Gagal',
+            //                 text: 'Password tidak sama',
+            //             })
+            //         }
+            //     })
+
+            // });
 
 
             $(".custom-file-input").on("change", function() {
diff --git a/resources/views/partials/sidebar.blade.php b/resources/views/partials/sidebar.blade.php
index d2b58c1cd93538b5c0aa77e52dc0fa2e5c3a8175..5aeef2b28173a9aeea45c6508526e9bcd246152c 100644
--- a/resources/views/partials/sidebar.blade.php
+++ b/resources/views/partials/sidebar.blade.php
@@ -15,6 +15,22 @@
             </a>
         </li>
 
+        <li class="nav-item">
+            <a href="{{ url('client/admin/dashboard73') }}" class="nav-link">
+                <p>
+                    (API) Dashboard
+                </p>
+            </a>
+        </li>
+        <li class="nav-item">
+            <a href="{{ url('client/admin/agama73') }}" class="nav-link">
+                <p>
+                    (API) Crud Agama
+                </p>
+            </a>
+        </li>
+
+
         <li class="nav-item">
             <a href="{{ url('logout73') }}" class="nav-link">
                 <p>
@@ -31,6 +47,14 @@
             </a>
         </li>
 
+        <li class="nav-item">
+            <a href="{{ url('client/user/dashboard73') }}" class="nav-link">
+                <p>
+                   (API) Dashboard
+                </p>
+            </a>
+        </li>
+
 
 
         <li class="nav-item">
diff --git a/routes/api.php b/routes/api.php
index eb6fa48c25d93f7bf753ba612cd2c7efecea5f4b..430cc5ed2898cd60057713179625d23520fc19e0 100644
--- a/routes/api.php
+++ b/routes/api.php
@@ -1,5 +1,9 @@
 <?php
 
+use App\Http\Controllers\Api\Admin\Admin73Controller;
+use App\Http\Controllers\Api\Admin\Agama73Controller;
+use App\Http\Controllers\Api\User\Profile73Controller;
+use App\Http\Controllers\Api\User\User73Controller;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Route;
 
@@ -17,3 +21,25 @@
 Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
     return $request->user();
 });
+
+
+Route::get("/admin/user-monthly-status", [Admin73Controller::class, "getUserMonthlyStatus73"]);
+Route::get("/admin/user-agama-count", [Admin73Controller::class, "getUserAgamaCount73"]);
+
+Route::get("/user/groupby/status", [Admin73Controller::class, "getDataUser73"]);
+Route::get("/user/{userId}", [Admin73Controller::class, "getDetailUser73"]);
+Route::put("/user/{userId}/agama", [Admin73Controller::class, "changeAgama73"]);
+Route::put("/user/{userId}/status", [Admin73Controller::class, "changeStatus73"]);
+
+Route::put("/user/{userId}", [Profile73Controller::class, "updateProfile73"]);
+Route::put("/user/{userId}/photoKTP", [Profile73Controller::class, "changePhotoKTP73"]);
+Route::put("/user/{userId}/photoProfile", [Profile73Controller::class, "changePhotoProfile73"]);
+
+Route::put("/user/{userId}/password", [User73Controller::class, "changePassword73"]);
+
+Route::get("/agama", [Agama73Controller::class, "getAllAgama73"]);
+Route::post("/agama", [Agama73Controller::class, "createAgama73"]);
+Route::put("/agama/{agamaId}", [Agama73Controller::class, "updateAgama73"]);
+Route::delete("/agama/{agamaId}", [Agama73Controller::class, "deleteAgama73"]);
+
+
diff --git a/routes/web.php b/routes/web.php
index 42a9fe01eac43c9282a2f211f267e1eca1fdf4c4..2d0f80d95451cbdb3304417080180c096272bb5e 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -3,7 +3,11 @@
 use App\Http\Controllers\Admin\Admin73Controller;
 use App\Http\Controllers\Admin\Agama73Controller;
 use App\Http\Controllers\User\Profile73Controller;
-use App\Http\Controllers\Authentication73Controller;
+use App\Http\Controllers\Auth73Controller;
+use App\Http\Controllers\Client\Admin\Admin73Controller as ClientAdmin73Controller;
+use App\Http\Controllers\Client\Admin\Agama73Controller as ClientAgama73Controller;
+use App\Http\Controllers\Client\User\Profile73Controller as ClientProfile73Controller;
+use App\Http\Controllers\Client\User\User73Controller as ClientUser73Controller;
 use App\Http\Controllers\User\User73Controller;
 use Illuminate\Support\Facades\Route;
 
@@ -30,12 +34,12 @@ function () {
          */
         Route::view('/register73', 'pages.auth73.register');
         Route::view('/login73', 'pages.auth73.login');
-        Route::post('/register73', [Authentication73Controller::class, 'register73']);
-        Route::post('/login73', [Authentication73Controller::class, 'login73']);
+        Route::post('/register73', [Auth73Controller::class, 'register73']);
+        Route::post('/login73', [Auth73Controller::class, 'login73']);
     }
 );
 
-Route::get('/logout73', [Authentication73Controller::class, 'logout73'])->middleware('isLogged');
+Route::get('/logout73', [Auth73Controller::class, 'logout73'])->middleware('isLogged');
 
 Route::group(
     ['middleware' => ['isAdmin']],
@@ -45,16 +49,26 @@ function () {
          * Dashboard Routes
          */
         Route::get('/admin/dashboard73', [Admin73Controller::class, 'view73']);
-        Route::put('/admin/agama73/{userId}/user', [Admin73Controller::class, 'changeAgama73']);
-        Route::put('/admin/status73/{userId}/user', [Admin73Controller::class, 'changeStatus73']);
+        Route::post('/admin/agama73/{userId}/user', [Admin73Controller::class, 'changeAgama73']);
+        Route::get('/admin/status73/{userId}/user', [Admin73Controller::class, 'changeStatus73']);
+
+        Route::get('/client/admin/dashboard73', [ClientAdmin73Controller::class, 'view73']);
+        Route::post('/client/admin/agama73/{userId}/user', [ClientAdmin73Controller::class, 'changeAgama73']);
+        Route::get('/client/admin/status73/{userId}/user', [ClientAdmin73Controller::class, 'changeStatus73']);
 
         /**
          * Agama Routes
          */
         Route::get('/admin/agama73', [Agama73Controller::class, 'view73']);
-        Route::delete('/admin/agama73/{agamaId}', [Agama73Controller::class, 'delete73']);
-        Route::put('/admin/agama73/{agamaId}', [Agama73Controller::class, 'update73']);
+        Route::get("/client/admin/agama73", [ClientAgama73Controller::class, 'view73']);
+
+        Route::post('/admin/agama73/{agamaId}/delete', [Agama73Controller::class, 'delete73']);
+        Route::post('/admin/agama73/{agamaId}/update', [Agama73Controller::class, 'update73']);
         Route::post('/admin/agama73', [Agama73Controller::class, 'store73']);
+
+        Route::post('/client/admin/agama73/{agamaId}/delete', [ClientAgama73Controller::class, 'delete73']);
+        Route::post('/client/admin/agama73/{agamaId}/update', [ClientAgama73Controller::class, 'update73']);
+        Route::post('/client/admin/agama73', [ClientAgama73Controller::class, 'store73']);
     }
 );
 
@@ -65,9 +79,17 @@ function () {
          * User Dashboard Routes
          */
         Route::get("/user/dashboard73", [Profile73Controller::class, 'view73']);
-        Route::put("/user/profile73", [Profile73Controller::class, 'update73']);
+        Route::get("/client/user/dashboard73", [ClientProfile73Controller::class, 'view73']);
+        
+        Route::post("/user/profile73", [Profile73Controller::class, 'update73']);
+        Route::post("/client/user/profile73", [ClientProfile73Controller::class, 'update73']);
+
         Route::post("/user/photo73", [Profile73Controller::class, 'changePhotoProfile73']);
         Route::post("/user/photoKTP73", [Profile73Controller::class, 'changePhotoKTP73']);
         Route::post("/user/password73", [User73Controller::class, 'changePassword73']);
+
+        Route::post("/client/user/photo73", [ClientProfile73Controller::class, 'changePhotoProfile73']);
+        Route::post("/client/user/photoKTP73", [ClientProfile73Controller::class, 'changePhotoKTP73']);
+        Route::post("/client/user/password73", [ClientUser73Controller::class, 'changePassword73']);
     }
 );
diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php
index de2c74bf919c0050a15df22c752640ae8ca0a0d0..d166528bbb6d4d45a6e8c29b26a8dc01cb77a014 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -8,7 +8,19 @@
 return array(
     'App\\Console\\Kernel' => $baseDir . '/app/Console/Kernel.php',
     'App\\Exceptions\\Handler' => $baseDir . '/app/Exceptions/Handler.php',
+    'App\\Http\\Controllers\\Admin\\Admin73Controller' => $baseDir . '/app/Http/Controllers/Admin/Admin73Controller.php',
+    'App\\Http\\Controllers\\Admin\\Agama73Controller' => $baseDir . '/app/Http/Controllers/Admin/Agama73Controller.php',
+    'App\\Http\\Controllers\\Api\\Admin\\Admin73Controller' => $baseDir . '/app/Http/Controllers/Api/Admin/Admin73Controller.php',
+    'App\\Http\\Controllers\\Api\\Admin\\Agama73Controller' => $baseDir . '/app/Http/Controllers/Api/Admin/Agama73Controller.php',
+    'App\\Http\\Controllers\\Api\\User\\Profile73Controller' => $baseDir . '/app/Http/Controllers/Api/User/Profile73Controller.php',
+    'App\\Http\\Controllers\\Api\\User\\User73Controller' => $baseDir . '/app/Http/Controllers/Api/User/User73Controller.php',
+    'App\\Http\\Controllers\\Client\\Admin\\Admin73Controller' => $baseDir . '/app/Http/Controllers/Client/Admin/Admin73Controller.php',
+    'App\\Http\\Controllers\\Client\\Admin\\Agama73Controller' => $baseDir . '/app/Http/Controllers/Client/Admin/Agama73Controller.php',
+    'App\\Http\\Controllers\\Client\\User\\Profile73Controller' => $baseDir . '/app/Http/Controllers/Client/User/Profile73Controller.php',
+    'App\\Http\\Controllers\\Client\\User\\User73Controller' => $baseDir . '/app/Http/Controllers/Client/User/User73Controller.php',
     'App\\Http\\Controllers\\Controller' => $baseDir . '/app/Http/Controllers/Controller.php',
+    'App\\Http\\Controllers\\User\\Profile73Controller' => $baseDir . '/app/Http/Controllers/User/Profile73Controller.php',
+    'App\\Http\\Controllers\\User\\User73Controller' => $baseDir . '/app/Http/Controllers/User/User73Controller.php',
     'App\\Http\\Kernel' => $baseDir . '/app/Http/Kernel.php',
     'App\\Http\\Middleware\\Authenticate' => $baseDir . '/app/Http/Middleware/Authenticate.php',
     'App\\Http\\Middleware\\EncryptCookies' => $baseDir . '/app/Http/Middleware/EncryptCookies.php',
@@ -19,6 +31,13 @@
     'App\\Http\\Middleware\\TrustProxies' => $baseDir . '/app/Http/Middleware/TrustProxies.php',
     'App\\Http\\Middleware\\ValidateSignature' => $baseDir . '/app/Http/Middleware/ValidateSignature.php',
     'App\\Http\\Middleware\\VerifyCsrfToken' => $baseDir . '/app/Http/Middleware/VerifyCsrfToken.php',
+    'App\\Http\\Middleware\\isAdmin' => $baseDir . '/app/Http/Middleware/isAdmin.php',
+    'App\\Http\\Middleware\\isLogged' => $baseDir . '/app/Http/Middleware/isLogged.php',
+    'App\\Http\\Middleware\\isNotLogged' => $baseDir . '/app/Http/Middleware/isNotLogged.php',
+    'App\\Http\\Middleware\\isUser' => $baseDir . '/app/Http/Middleware/isUser.php',
+    'App\\Http\\Resources\\ApiResponse' => $baseDir . '/app/Http/Resources/ApiResponse.php',
+    'App\\Models\\Agama73Model' => $baseDir . '/app/Models/Agama73Model.php',
+    'App\\Models\\Detail73Model' => $baseDir . '/app/Models/Detail73Model.php',
     'App\\Models\\User' => $baseDir . '/app/Models/User.php',
     'App\\Providers\\AppServiceProvider' => $baseDir . '/app/Providers/AppServiceProvider.php',
     'App\\Providers\\AuthServiceProvider' => $baseDir . '/app/Providers/AuthServiceProvider.php',
@@ -133,6 +152,7 @@
     'Cron\\MinutesField' => $vendorDir . '/dragonmantank/cron-expression/src/Cron/MinutesField.php',
     'Cron\\MonthField' => $vendorDir . '/dragonmantank/cron-expression/src/Cron/MonthField.php',
     'Database\\Factories\\UserFactory' => $baseDir . '/database/factories/UserFactory.php',
+    'Database\\Seeders\\AgamaSeeder' => $baseDir . '/database/seeders/AgamaSeeder.php',
     'Database\\Seeders\\DatabaseSeeder' => $baseDir . '/database/seeders/DatabaseSeeder.php',
     'DeepCopy\\DeepCopy' => $vendorDir . '/myclabs/deep-copy/src/DeepCopy/DeepCopy.php',
     'DeepCopy\\Exception\\CloneException' => $vendorDir . '/myclabs/deep-copy/src/DeepCopy/Exception/CloneException.php',
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index 15770f63e6b4f4b516db9424f1ebe31fd1dd0dde..de81e032ae01cfa5f37ffddcdacccebd72d6fbd8 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -507,7 +507,19 @@ class ComposerStaticInit7383f2fcf0213e56185ea18d063a888b
     public static $classMap = array (
         'App\\Console\\Kernel' => __DIR__ . '/../..' . '/app/Console/Kernel.php',
         'App\\Exceptions\\Handler' => __DIR__ . '/../..' . '/app/Exceptions/Handler.php',
+        'App\\Http\\Controllers\\Admin\\Admin73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Admin/Admin73Controller.php',
+        'App\\Http\\Controllers\\Admin\\Agama73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Admin/Agama73Controller.php',
+        'App\\Http\\Controllers\\Api\\Admin\\Admin73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Api/Admin/Admin73Controller.php',
+        'App\\Http\\Controllers\\Api\\Admin\\Agama73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Api/Admin/Agama73Controller.php',
+        'App\\Http\\Controllers\\Api\\User\\Profile73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Api/User/Profile73Controller.php',
+        'App\\Http\\Controllers\\Api\\User\\User73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Api/User/User73Controller.php',
+        'App\\Http\\Controllers\\Client\\Admin\\Admin73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Client/Admin/Admin73Controller.php',
+        'App\\Http\\Controllers\\Client\\Admin\\Agama73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Client/Admin/Agama73Controller.php',
+        'App\\Http\\Controllers\\Client\\User\\Profile73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Client/User/Profile73Controller.php',
+        'App\\Http\\Controllers\\Client\\User\\User73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Client/User/User73Controller.php',
         'App\\Http\\Controllers\\Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/Controller.php',
+        'App\\Http\\Controllers\\User\\Profile73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/User/Profile73Controller.php',
+        'App\\Http\\Controllers\\User\\User73Controller' => __DIR__ . '/../..' . '/app/Http/Controllers/User/User73Controller.php',
         'App\\Http\\Kernel' => __DIR__ . '/../..' . '/app/Http/Kernel.php',
         'App\\Http\\Middleware\\Authenticate' => __DIR__ . '/../..' . '/app/Http/Middleware/Authenticate.php',
         'App\\Http\\Middleware\\EncryptCookies' => __DIR__ . '/../..' . '/app/Http/Middleware/EncryptCookies.php',
@@ -518,6 +530,13 @@ class ComposerStaticInit7383f2fcf0213e56185ea18d063a888b
         'App\\Http\\Middleware\\TrustProxies' => __DIR__ . '/../..' . '/app/Http/Middleware/TrustProxies.php',
         'App\\Http\\Middleware\\ValidateSignature' => __DIR__ . '/../..' . '/app/Http/Middleware/ValidateSignature.php',
         'App\\Http\\Middleware\\VerifyCsrfToken' => __DIR__ . '/../..' . '/app/Http/Middleware/VerifyCsrfToken.php',
+        'App\\Http\\Middleware\\isAdmin' => __DIR__ . '/../..' . '/app/Http/Middleware/isAdmin.php',
+        'App\\Http\\Middleware\\isLogged' => __DIR__ . '/../..' . '/app/Http/Middleware/isLogged.php',
+        'App\\Http\\Middleware\\isNotLogged' => __DIR__ . '/../..' . '/app/Http/Middleware/isNotLogged.php',
+        'App\\Http\\Middleware\\isUser' => __DIR__ . '/../..' . '/app/Http/Middleware/isUser.php',
+        'App\\Http\\Resources\\ApiResponse' => __DIR__ . '/../..' . '/app/Http/Resources/ApiResponse.php',
+        'App\\Models\\Agama73Model' => __DIR__ . '/../..' . '/app/Models/Agama73Model.php',
+        'App\\Models\\Detail73Model' => __DIR__ . '/../..' . '/app/Models/Detail73Model.php',
         'App\\Models\\User' => __DIR__ . '/../..' . '/app/Models/User.php',
         'App\\Providers\\AppServiceProvider' => __DIR__ . '/../..' . '/app/Providers/AppServiceProvider.php',
         'App\\Providers\\AuthServiceProvider' => __DIR__ . '/../..' . '/app/Providers/AuthServiceProvider.php',
@@ -632,6 +651,7 @@ class ComposerStaticInit7383f2fcf0213e56185ea18d063a888b
         'Cron\\MinutesField' => __DIR__ . '/..' . '/dragonmantank/cron-expression/src/Cron/MinutesField.php',
         'Cron\\MonthField' => __DIR__ . '/..' . '/dragonmantank/cron-expression/src/Cron/MonthField.php',
         'Database\\Factories\\UserFactory' => __DIR__ . '/../..' . '/database/factories/UserFactory.php',
+        'Database\\Seeders\\AgamaSeeder' => __DIR__ . '/../..' . '/database/seeders/AgamaSeeder.php',
         'Database\\Seeders\\DatabaseSeeder' => __DIR__ . '/../..' . '/database/seeders/DatabaseSeeder.php',
         'DeepCopy\\DeepCopy' => __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy/DeepCopy.php',
         'DeepCopy\\Exception\\CloneException' => __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy/Exception/CloneException.php',
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index bcecd4dba17be42c22b3dcbb1be01236e5c07edb..84544e54470766f6c494e0a7a09a51e9b3628063 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -1,9 +1,9 @@
 <?php return array(
     'root' => array(
         'name' => 'laravel/laravel',
-        'pretty_version' => 'v9.3.10',
-        'version' => '9.3.10.0',
-        'reference' => NULL,
+        'pretty_version' => 'dev-main',
+        'version' => 'dev-main',
+        'reference' => 'ed0bcf1e91f58e8444b7aace694c56e31aadf912',
         'type' => 'project',
         'install_path' => __DIR__ . '/../../',
         'aliases' => array(),
@@ -365,9 +365,9 @@
             'dev_requirement' => false,
         ),
         'laravel/laravel' => array(
-            'pretty_version' => 'v9.3.10',
-            'version' => '9.3.10.0',
-            'reference' => NULL,
+            'pretty_version' => 'dev-main',
+            'version' => 'dev-main',
+            'reference' => 'ed0bcf1e91f58e8444b7aace694c56e31aadf912',
             'type' => 'project',
             'install_path' => __DIR__ . '/../../',
             'aliases' => array(),
@@ -709,8 +709,8 @@
         'psr/log-implementation' => array(
             'dev_requirement' => false,
             'provided' => array(
-                0 => '1.0|2.0|3.0',
-                1 => '1.0.0 || 2.0.0 || 3.0.0',
+                0 => '1.0.0 || 2.0.0 || 3.0.0',
+                1 => '1.0|2.0|3.0',
             ),
         ),
         'psr/simple-cache' => array(