Yohohohohohooho | Sanrei Aya
Sanrei Aya


Server : LiteSpeed
System : Linux barito.iixcp.rumahweb.net 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64
User : elvh3918 ( 1528)
PHP Version : 8.2.31
Disable Function : mail
Directory :  /home/elvh3918/public_html/pmm/app/Http/Controllers/Admin/Sys/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/elvh3918/public_html/pmm/app/Http/Controllers/Admin/Sys/ModuleController.php
<?php

namespace App\Http\Controllers\Admin\Sys;

use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Request;
use Illuminate\Support\Facades\DB;
use App\Models\Admin\Sys\VW_Sys_Module;
use App\Models\Permission;

class ModuleController extends Controller
{
    /**
     * Display a listing of the resource.
     */
    public function index()
    {
        $breadcrumbs = [
            ['link' => "dashboard", 'name' => "Dashboard"], ['link' => "admin.sys.modules.index", 'name' => "Sys Module"]
        ];

        $project = config('app.project_app');
        $query = DB::select("CALL sp_permission_by_project_view('module', '$project')");

        return view('content.admin.sys.modules.index', compact('query'), ['breadcrumbs' => $breadcrumbs]); 
    }

    /**
     * Show the form for creating a new resource.
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     */
    public function store(Request $request)
    {
        //
    }

    /**
     * Display the specified resource.
     */
    public function show(string $id)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     */
    public function edit($project, $module)
    {
        $breadcrumbs = [
            ['link' => "dashboard", 'name' => "Dashboard"], ['link' => "admin.sys.modules.index", 'name' => "Sys Module"], ['link' => "admin/sys/modules/edit/$project/$module", 'name' => "Edit Sys Module"]
        ];

        $query = VW_Sys_Module::where('project', '=', $project)->where('module', '=', $module)->first();
        return view('content.admin.sys.modules.edit', compact('query'), ['breadcrumbs' => $breadcrumbs]);
    }

    /**
     * Update the specified resource in storage.
     */
    public function update(Request $request, $project, $module)
    {
        DB::beginTransaction();
        try {    
            $param = $project . "_" . $module;
            $permissions = Permission::where('name', 'LIKE', "{$param}%")->get();
            for ($i=0; $i < count($permissions); $i++) { 
                Permission::where('id', '=', $permissions[$i]['id'])->first()->update([
                    'is_active' => Request::get('is_active') != null ? 1: 0,      
                ]);
            }
    
            DB::commit();
            return redirect()->route('admin.sys.modules.index')->with('message', 'update success');
        } catch (\Exception $e) {
            DB::rollBack();
            return redirect()->route('admin.sys.modules.edit', [$project, $module])->withInput()->with('message', 'update error');
        }    
    }

    /**
     * Remove the specified resource from storage.
     */
    public function destroy(string $id)
    {
        //
    }
}

Yohohohohohooho | Sanrei Aya