HEX
Server: nginx/1.28.1
System: Linux 10-41-63-61 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64
User: www (1001)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/www.shooperm.com/Modules/GeneralSetting/Http/Controllers/CurrencyController.php
<?php

namespace Modules\GeneralSetting\Http\Controllers;
use Illuminate\Routing\Controller;
use Illuminate\Http\Request;
use Brian2694\Toastr\Facades\Toastr;
use \Modules\GeneralSetting\Services\CurrencyService;
use Modules\UserActivityLog\Traits\LogActivity;

class CurrencyController extends Controller
{
    protected $currencyService;

    public function __construct(CurrencyService $currencyService)
    {
        $this->middleware('maintenance_mode');
        $this->currencyService = $currencyService;
    }

    public function index()
    {
        
        try{
            $currencies = $this->currencyService->getAll();
            return view('generalsetting::currencies.index', [
                "currencies" => $currencies
            ]);
        }catch (\Exception $e) {
            LogActivity::errorLog($e->getMessage());
            Toastr::error(__('common.error_message'), __('common.error'));
            return back();
        }

    }

    public function store(Request $request)
    {
        $request->validate([
              "name" => "required",
              "code" => "required",
              "symbol" => "required"
        ]);

        try {
            $this->currencyService->create($request->except("_token"));
            LogActivity::successLog('Currency Added Successfully');
            Toastr::success(__('common.added_successfully'), __('common.success'));
            return back();
        } catch (\Exception $e) {
            LogActivity::errorLog($e->getMessage());
            Toastr::error(__('common.error_message'), __('common.error'));
            return back();
        }
    }

    public function update(Request $request, $id)
    {
        $request->validate([
              "name" => "required",
              "code" => "required",
              "symbol" => "required"
        ]);

        try {
            $currency = $this->currencyService->update($request->except("_token"), $id);
            Toastr::success(__('common.updated_successfully'), __('common.success'));
            LogActivity::successLog('Currency updated Successfully');
            return back();
        } catch (\Exception $e) {
            LogActivity::errorLog($e->getMessage());
            Toastr::error(__('common.error_message'), __('common.error'));
            return back();
        }
    }

    public function destroy($id)
    {
        try {
            $currency = $this->currencyService->delete($id);
            Toastr::success(__('common.deleted_successfully'), __('common.success'));
            LogActivity::successLog('Currency deleted Successfully');
            return back();
        } catch (\Exception $e) {
            LogActivity::errorLog($e->getMessage());
            Toastr::error(__('common.error_message'), __('common.error'));
            return back();
        }
    }

    public function edit_modal(Request $request)
    {
        try {
            $currency = $this->currencyService->findById($request->id);
            return view('generalsetting::currencies.edit_modal', [
                "currency" => $currency
            ]);
        } catch (\Exception $e) {
            LogActivity::errorLog($e->getMessage());
            Toastr::error(__('common.error_message'), __('common.error'));
            return $e->getMessage();
        }
    }

    public function update_active_status(Request $request){
        try{
            if($request->id != app('general_setting')->currency){
                $currency = $this->currencyService->findById($request->id);
                $currency->status = $request->status;
                if($currency->save()){
                    LogActivity::successLog('Currency status active Successfully');
                    return response()->json([
                        'msg' => 'success'
                    ],200);
                }
            }else{
                return response()->json([
                    'msg' => 'default_currency'
                ],200);
            }
            
        }catch (\Exception $e) {
            LogActivity::errorLog($e->getMessage());
            Toastr::error(__('common.error_message'), __('common.error'));
            return response()->json([
                'msg' => 'error'
            ],503);
        }
    }
}