63 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
namespace App\Http\Controllers;
 | 
						|
 | 
						|
use Illuminate\Http\Request;
 | 
						|
use Illuminate\Support\Facades\File;
 | 
						|
 | 
						|
class JadwalSidangController extends Controller
 | 
						|
{
 | 
						|
    public function index(Request $request)
 | 
						|
    {
 | 
						|
        $jadwal = json_decode(File::get(public_path('assets/json/backend/jadwal.json')), true);
 | 
						|
 | 
						|
        // Filter by document type if provided in request
 | 
						|
        $documentType = $request->input('document_type');
 | 
						|
        if ($documentType) {
 | 
						|
            $jadwal = array_values(array_filter($jadwal, function($item) use ($documentType) {
 | 
						|
                return isset($item['documentType']) && $item['documentType'] === $documentType;
 | 
						|
            }));
 | 
						|
        }
 | 
						|
 | 
						|
        return view('penjadwalan.jadwal_sidang', compact('jadwal'));
 | 
						|
    }
 | 
						|
 | 
						|
    public function create(Request $request)
 | 
						|
    {
 | 
						|
        // Handle form submission for creating new schedule
 | 
						|
        if ($request->isMethod('post')) {
 | 
						|
            $jadwal = json_decode(File::get(public_path('assets/json/backend/jadwal.json')), true);
 | 
						|
 | 
						|
            // Get the highest ID and increment by 1
 | 
						|
            $maxId = 0;
 | 
						|
            foreach ($jadwal as $item) {
 | 
						|
                if (isset($item['id']) && $item['id'] > $maxId) {
 | 
						|
                    $maxId = $item['id'];
 | 
						|
                }
 | 
						|
            }
 | 
						|
 | 
						|
            // Create new jadwal item
 | 
						|
            $newJadwal = [
 | 
						|
                'id' => $maxId + 1,
 | 
						|
                'title' => $request->input('title'),
 | 
						|
                'start' => $request->input('start_date'),
 | 
						|
                'end' => $request->input('end_date'),
 | 
						|
                'allDay' => $request->input('all_day', false),
 | 
						|
                'documentType' => $request->input('document_type'),
 | 
						|
                'description' => $request->input('description', '')
 | 
						|
            ];
 | 
						|
 | 
						|
            // Add to existing jadwal
 | 
						|
            $jadwal[] = $newJadwal;
 | 
						|
 | 
						|
            // Save back to JSON file
 | 
						|
            File::put(public_path('assets/json/backend/jadwal.json'), json_encode($jadwal, JSON_PRETTY_PRINT));
 | 
						|
 | 
						|
            return redirect()->route('jadwal.index')->with('success', 'Jadwal berhasil ditambahkan');
 | 
						|
        }
 | 
						|
 | 
						|
        return view('penjadwalan.create_jadwal');
 | 
						|
    }
 | 
						|
 | 
						|
}
 |