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/SertifikatAtlitController.php

<?php

namespace App\Http\Controllers;

use App\Models\sertifikatAtlit;
use Database\Factories\SertifikatAtlitFactory;
use Illuminate\Contracts\Encryption\DecryptException;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Crypt;
use Illuminate\Support\Facades\File;

class SertifikatAtlitController extends Controller
{


    public function show(String $id)
    {
        $decryptedId = Crypt::decryptString($id);
        $data['sertifikat'] = sertifikatAtlit::where('atlit_id', $decryptedId)->get();

        return view('users.atlit.pengalaman')->with($data);
    }

    public function store(Request $request)
    {

        $request->validate([
            'sertifikat' => 'nullable|file|mimetypes:application/pdf|max:2000',
            'nama_kejuaraan' => 'required',
            'nomor_tanding' => 'required',
            'prestasi' => 'required',
            'mendali' => 'required',

        ], ['sertifikat.mimetypes' => 'Sertifikat haruslah berformat PDF.', 'sertifikat.max' =>  'File Sertifikat tidak boleh lebih dari 2mb!']);
        $data = [

            'atlit_id' => $request->atlit_id,
            'nama_kejuaraan' => $request->nama_kejuaraan,
            'nomor_tanding' => $request->nomor_tanding,
            'prestasi' => $request->prestasi,
            'mendali' => $request->mendali,
        ];


        if ($request->hasFile('sertifikat')) {
            $sertifikat_file = $request->file('sertifikat');
            $sertifikat_baru = "Sertifikat-" .  $sertifikat_file->getClientOriginalName();
            $sertifikat_file->move(public_path('documents/atlit'), $sertifikat_baru);
            $data['sertifikat'] = $sertifikat_baru;
        }


        $create = sertifikatAtlit::create($data);
        if ($create) {
            return redirect()->back()->with('success', 'Data baru telah ditambahkan');
        } else {
            return redirect()->back()->with('error', 'Data gagal ditambahkan');
        }
    }
    public function update(Request $request, String $id)
    {
        try {
            $decryptedId = Crypt::decryptString($id);
            $request->validate([
                'sertifikat' => 'file|mimetypes:application/pdf|max:2000',
                'nama_kejuaraan' => 'required',
                'nomor_tanding' => 'required',
                'prestasi' => 'required',
                'mendali' => 'required',
            ], ['sertifikat.mimetypes' => 'Sertifikat haruslah berformat PDF.', 'sertifikat.max' =>  'File Sertifikat tidak boleh lebih dari 2mb!']);
            $data = [
                'nama_kejuaraan' => $request->nama_kejuaraan,
                'nomor_tanding' => $request->nomor_tanding,
                'prestasi' => $request->prestasi,
                'mendali' => $request->mendali,
            ];
            if ($request->hasFile('sertifikat')) {
                $sertifikat_file = $request->file('sertifikat');
                $sertifikat_baru = "Sertifikat-" .  $sertifikat_file->getClientOriginalName();
                $sertifikat_file->move(public_path('documents/atlit'), $sertifikat_baru);
                $data['sertifikat'] = $sertifikat_baru;
                $get_serti = sertifikatAtlit::where('id', $decryptedId)->first();
                $sertifikat_lama = $get_serti->sertifikat;
                File::delete(public_path('documents/atlit') . "/" . $sertifikat_lama);
            }
            sertifikatAtlit::where('id', $decryptedId)->update($data);
            return redirect()->back()->with('success', 'Data Berhasil Diubah!');
        } catch (DecryptException $e) {
            return redirect()->back()->with('error', 'Data gagal diubah!');
        }
    }
    public function destroy(Request $request, String $id)
    {
        try {


            $decryptedId = Crypt::decryptString($id);
            $sertif  = sertifikatAtlit::where('id', $decryptedId);
            $sertifikat = $sertif->first();
            File::delete(public_path('documents/atlit') . "/" . $sertifikat->sertifikat);
            $sertif->delete();
            return redirect()->back()->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]