Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/dbon.kaltimprov.go.id/app/Http/Controllers/
Upload File :
Current File : /home/aplikasiposinfo/www/dbon.kaltimprov.go.id/app/Http/Controllers/VanueLatihanController.php

<?php

namespace App\Http\Controllers;

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

class VanueLatihanController extends Controller
{
    public function index()
    {

        $data['vanue'] = VanueLatihan::latest()->get();

        return view('admin.vanueLatihan.index')->with($data);
    }
    public function create()
    {
        return view('admin.vanueLatihan.add');
    }
    public function show(string $id)
    {

        $decryptedId = Crypt::decryptString($id);
        $data['vanue'] = VanueLatihan::where('id', $decryptedId)->first();
        return view('admin.vanueLatihan.edit')->with($data);
    }
    public function store(Request $request)
    {
        $request->validate([
            'nama' => 'required',
            'alamat' => 'required',
            'deskripsi' => 'required',
            'lokasi' => 'required',
            'photo' => 'required|mimes:jpg,jpeg,png|max:50000',
        ], ['deskripsi.max' => 'Deskripsi yang dimasukan terlalu panjang!', 'photo.max' => 'Foto yang tidak boleh diatas 50mb!']);
        $data = [
            'nama' => $request->nama,
            'alamat' => $request->alamat,
            'deskripsi' => nl2br($request->deskripsi),
            'lokasi' => $request->lokasi,
            'pengirim' => Auth()->user()->username,


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

        $create = VanueLatihan::create($data);
        if ($create) {
            return redirect()->route('vanueLatihans.index')->with('success', 'Data baru telah ditambahkan');
        } else {
            return redirect()->route('vanueLatihans.index')->with('error', 'Data gagal ditambahkan');
        }
    }
    public function update(request $request, string $id)
    {
        $decryptedId = Crypt::decryptString($id);
        try {
            $request->validate([
                'nama' => 'required',
                'alamat' => 'required',
                'deskripsi' => 'required',
                'lokasi' => 'required',
                'photo' => 'mimes:jpg,jpeg,png|max:50000',
            ], ['deskripsi.max' => 'Deskripsi yang dimasukan terlalu panjang!', 'photo.max' => 'Foto yang tidak boleh diatas 50mb!']);
            $data = [
                'nama' => $request->nama,
                'alamat' => $request->alamat,
                'deskripsi' => $request->deskripsi,
                'lokasi' => $request->lokasi,

            ];

            if ($request->hasFile('photo')) {
                $foto_file = $request->file('photo');
                $foto_ekstensi = $foto_file->extension();
                $foto_baru = "vanueLatihan-" . date('ymdhis') . ".$foto_ekstensi";
                $foto_file->move(public_path('images/vanueLatihan'), $foto_baru);
                $data['photo'] = $foto_baru;
                $getfoto = VanueLatihan::where('id', $decryptedId)->first();
                $foto_lama = $getfoto->photo;
                File::delete(public_path('images/vanueLatihan') . "/" . $foto_lama);
            }

            $update = VanueLatihan::where('id', $decryptedId)->update($data);
            if ($update) {
                return redirect()->route('vanueLatihans.index')->with('success', 'Data dari telah diedit');
            } else {
                return redirect()->route('vanueLatihans.index')->with('error', 'Data gagal diedit');
            }
        } catch (DecryptException   $e) {
            return redirect()->route('vanueLatihans.index')->with('error', 'Data gagal diedit');
        }
    }
    public function destroy(string $id)
    {
        try {

            $decryptedId = Crypt::decryptString($id);
            $user = VanueLatihan::where('id', $decryptedId);
            $foto = $user->first();
            File::delete(public_path('images/vanueLatihan') . "/" . $foto->photo);
            $user->delete();
            return redirect()->route('vanueLatihans.index')->with('delete', 'Data berhasil dihapus!');
        } catch (DecryptException $e) {
            return redirect()->back()->with('error', 'Invalid ID');
        }
    }
}

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