HEX
Server: Apache/2.4.46 (Ubuntu)
System: Linux localhost 5.11.0-49-generic #55-Ubuntu SMP Wed Jan 12 17:36:34 UTC 2022 x86_64
User: root (0)
PHP: 7.4.16
Disabled: 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/fieldsblaze-heroku/app/Http/Controllers/PaymentTermController.php
<?php

namespace App\Http\Controllers;


use App\Http\Controllers\Controller;
use App\Models\PaymentTerm;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class PaymentTermController extends Controller
{
    ### All Terms
    public function paymentTerm()
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }

        $term = PaymentTerm::select('tbl_payment_terms.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
            ->leftJoin('tbl_admin', 'tbl_payment_terms.Updated_by', '=', 'tbl_admin.UserId')
            ->where('tbl_payment_terms.IsDeleted', '=', '0')
            ->get();

        $trashTerm = PaymentTerm::select('tbl_payment_terms.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_payment_terms.Updated_by', '=', 'tbl_admin.UserId')
        ->where('tbl_payment_terms.IsDeleted', '=', '1')
        ->get();
        return view('admin.payment-term', ['PaymentTerms' => $term, 'TrashPaymentTerms' => $trashTerm]);
    }

    ### Store New Terms
    public function store(Request $request)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $PaymentTerm = new PaymentTerm;
        $PaymentTerm->Name = $request->input('name');
        $PaymentTerm->Description = $request->input('description');
        $PaymentTerm->Created_by = session('UserId');
        $PaymentTerm->Updated_by = session('UserId');
        $PaymentTerm->IsDeleted = '0';

        if ($request->has('is_active')) {
            $PaymentTerm->status = '1';
        } else {
            $PaymentTerm->status = '0';
        }

        $PaymentTerm->save();
        return redirect()->back()->with('status_success');
    }

    ### Trash Payment Terms
    public function trashPaymentTerm()
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $term = PaymentTerm::select('tbl_payment_terms.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
            ->leftJoin('tbl_admin', 'tbl_payment_terms.Updated_by', '=', 'tbl_admin.UserId')
            ->where('tbl_payment_terms.IsDeleted', '=', '0')
            ->get();

        $trashTerm = PaymentTerm::select('tbl_payment_terms.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_payment_terms.Updated_by', '=', 'tbl_admin.UserId')
        ->where('tbl_payment_terms.IsDeleted', '=', '1')
        ->get();
        return view('admin.trash-payment-term', ['TrashPaymentTerms' => $trashTerm, 'PaymentTerms' => $term]);
    }

    public function editRecord($id)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $terms = PaymentTerm::find($id);
        return response()->json([
            'status' => 200,
            'terms' => $terms,
        ]);
    }

    ### Update Records
    public function update(Request $request)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $CreatedDate = date('Y-m-d H:i:s', time());
        //$user_id = Auth::id();
        $term_id =  $request->input('id');
        $PaymentTerm = PaymentTerm::find($term_id);
        $PaymentTerm->Name = $request->input('editName');
        $PaymentTerm->Description = $request->input('editDescription');
        $PaymentTerm->Updated_by = session('UserId');
        $PaymentTerm->Updated_at = $CreatedDate;
        //$PaymentTerm->updated_by = $request->input($user_id);
        //$PaymentTerm->is_deleted = $request->input('is_deleted');

        if ($request->has('edit_is_active')) {
            $PaymentTerm->Status = '1';
        } else {
            $PaymentTerm->Status = '0';
        }

        $PaymentTerm->update();
        return redirect()->back()->with('status_success');
    }

    #### Change Status
    public function statusUpdate($id)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $terms = PaymentTerm::find($id);
        if ($terms->Status == '1') {
            $Status = '0';
        } else {
            $Status = '1';
        }



        $values = array('Status' => $Status, 'Updated_by' => session('UserId'));
        PaymentTerm::find($id)->update($values);
        return redirect()->back();
    }

    #### Delete Temporary
    public function deleteTerm($id)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $value = array('IsDeleted' => '1');
        PaymentTerm::find($id)->update($value);
        return response()->json('status_success');
    }

    #### Restore Term
    public function restore($id)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $value = array('IsDeleted' => '0');
        PaymentTerm::find($id)->update($value);
    }

    #### Delete Permanent
    public function destroy($id)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }
        $destroyTerm = PaymentTerm::find($id);
        $destroyTerm->delete();
    }
}