HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ubuntu-8gb-hel1-1 6.8.0-55-generic #57-Ubuntu SMP PREEMPT_DYNAMIC Wed Feb 12 23:42:21 UTC 2025 x86_64
User: www-data (33)
PHP: 8.1.32
Disabled: NONE
Upload Files
File: /var/www/agighana.org_backup/PresidencyController.php
<?php

namespace App\Http\Controllers;

use App\Models\Presidency;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Validator;

class PresidencyController extends Controller
{
    public function index(){

        return view('presidency.presidency');
    }

    public function save_presidency(Request $req){
        $rules = [
            'name' => 'required',
            'comp_name' => 'required',
            'img' => '|mimes:png,jpg,jpeg,pdf',
        ];

        $validator = Validator::make($req->all(), $rules);

        if ($validator->fails()) {
            return response()->json(['errors' => $validator->errors()]);
        }

        try {
            $presidency = new Presidency();
            $presidency->name = $req->name;
            $presidency->comp_name = $req->comp_name;
            $presidency->from = $req->from;
            $presidency->to = $req->to;

            if ($req->hasFile('img')) {
                $file = $req->file('img');
                $filename  = $file->getClientOriginalName();
                $newname = $req->item . '_' . time() . '_' . $filename;
                $path = public_path('uploads/img' . '/');
                $file->move($path, $newname);
                $presidency->img = $newname;
            }

            $presidency->save();

           
            return response()->json(['success' => "Successfully"]);
        } catch (\Exception $ex) {
            Log::channel('custom')->error($ex->getMessage());
            return response()->json(['logginError' => "Error Occured. Contact System Admin"]);
        }
    }
}