Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/dispora.aplikasipos.info/app/Http/Controllers/
Upload File :
Current File : /home/aplikasiposinfo/www/dispora.aplikasipos.info/app/Http/Controllers/EventController.php

<?php

namespace App\Http\Controllers;

use App\Models\event;
use App\Models\tag_event;
use Illuminate\Contracts\Encryption\DecryptException;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Crypt;
use Illuminate\Support\Facades\File;

class EventController extends Controller
{
    public function index(){
        $data['event']=event::get();
        $data['tag']=tag_event::get();
        return view('event.index')->with($data);
    }
    public function store(Request $request)
    {
        $request->validate([
            'title' => 'required',
            // 'deskripsi' => 'required',
            'jam'=>'required',
            'tanggal'=>'required',
            'alamat'=>'required',
            'tag_id' => 'required',
            'keterangan' => 'required',
            'link' => 'required|url',
            'biaya' => 'nullable',
            'photo' => 'mimes:jpg,jpeg,png,gif,svg|required',
    
    ]);
        $data = [
            'tanggal' => now(),
            'title' => $request->title,
            'tag_id' => $request->tag_id,
            'alamat' => $request->alamat,
            'jam'=>$request->jam,
            'link'=>$request->link,
            'keterangan'=>$request->keterangan,
            'biaya'=>$request->biaya,

            // 'deskripsi' => nl2br($request->deskripsi),
        ];
        if ($request->hasFile('photo')) {
            $foto_file = $request->file('photo');
            $foto_ekstensi = $foto_file->extension();
            $foto_baru = "EVENT-" . date('ymdhis') . ".$foto_ekstensi";
            $foto_file->move(public_path('images'), $foto_baru);
            $data['photo'] = $foto_baru;
        }

        event::create($data);
        return redirect()->route('event.index')->with('success', 'Data successfully added');
    }
    public function update(request $request,string $id){
        try {
            $decryptedId=Crypt::decryptString($id);
            $request->validate([
                'title' => 'required',
                // 'deskripsi' => 'required',
                'jam'=>'required',
                'tanggal'=>'required',
                'alamat'=>'required',
                'tag_id' => 'required',
                'keterangan' => 'required',
                'link' => 'required|url',
                'biaya' => 'nullable',
                'photo' => 'mimes:jpg,jpeg,png,gif,svg|nullable',
        
        ]);
            $data = [
                'tanggal' => now(),
                'title' => $request->title,
                'tag_id' => $request->tag_id,
                'alamat' => $request->alamat,
                'jam'=>$request->jam,
                'keterangan'=>$request->keterangan,
                'link'=>$request->link,
                'biaya'=>$request->biaya,
                // 'deskripsi' => nl2br($request->deskripsi),
            ];
            if ($request->hasFile('photo')) {
                $foto_file = $request->file('photo');
                $foto_ekstensi = $foto_file->extension();
                $foto_baru = "EVENT-" . date('ymdhis') . ".$foto_ekstensi";
                $foto_file->move(public_path('images'), $foto_baru);
                $data['photo'] = $foto_baru;
                $getfoto = event::where('id', $decryptedId)->first();
                $foto_lama = $getfoto->photo;
                File::delete(public_path('images') . "/" . $foto_lama);
            }
            
            event::where('id', $decryptedId)->update($data);
            return redirect()->route('event.index')->with('success', 'Data successfully changed');
        } catch (DecryptException $e) {
            return redirect()->back()->with('error', 'Invalid ID');
        }
    }
    public function destroy(string $id)
    {
        try {

            $decryptedId = Crypt::decryptString($id);
            $event=event::where('id', $decryptedId)->first();
            File::delete(public_path('images') . "/" . $event->photo);
            $event->delete();
            return redirect()->route('event.index')->with('delete', 'Data successfully deleted');
        } catch (DecryptException $e) {
            return redirect()->back()->with('error', 'Invalid ID');
        }
    }
}

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]