HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
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/vhost/disk-apps/agile-selling-wpb/app/Http/Controllers/MailBoxController.php
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Mailbox;
use Illuminate\Support\Facades\Storage;
use DB;
use Datatables;

class MailBoxController extends Controller
{
    public function __construct(Request $request)
    {
        $this->middleware('auth');
        // $this->middleware(function ($request, $next) {
        //     $this->user = Auth::user();
        //     if (Auth::user()->rol->id == 1 || Auth::user()->rol->id == 6) {
        //         $this->changeDbDefault($request);
        //     }
        //     return $next($request);
        // });
    }
    public function index(){
        // $rol = Auth::user()->rol->id;
        // if ($rol == 1 ||  $rol == 6) {
            $mailbox = Mailbox::orderBy('user_id', 'ASC')->get();
            return view('mailbox.mailboxes')->with('mailboxes',$mailbox);
        // }else{
        //     return redirect()->back();
        // }
    }

    public function getMailBox(Request $request){

            $id = $request["id"];
            $mailbox = Mailbox::where('id',$id)->with('user')->first();


            $mail = array(
                'name'=> $mailbox->user->first_name.' '.$mailbox->user->last_name,
                'document'=> $mailbox->user->document,
                'email'=> $mailbox->user->email,
                'message'=> $mailbox->message,
                'date'=> $mailbox->created_at
            );
            $mailbox->read_message = 1;
            $mailbox->update();

            return $mail;
        }


      public function tableFilter(){
        $obj = $obj = DB::table('mailboxes')
        ->join('users', 'users.id', '=', 'mailboxes.user_id')
        ->select('mailboxes.id', 'mailboxes.created_at','mailboxes.message','users.first_name as name','users.last_name as lastname','users.document as document','users.email as email');


        return Datatables::of($obj)
        ->addColumn('actions', function ($obj) {
            return '<i class="fa fa-eye iconMini " onClick="clickInfoMailbox('.$obj->id.')" name="btnEditar" data-id="'.$obj->id.'"  title="Información"></i>';

        })

        ->editColumn('name', function ($obj) {
            return $obj->name.' '.$obj->lastname;
          })
           ->rawColumns(['actions'])
        ->make(true);


    }

    public function notRead()
    {
        $mails = Mailbox::where('read_message', 0)->get();


        if (count($mails) > 0) {
            return array('r' => true, 'c' => count($mails));

        } else {
            return array('r' => false);
        }

    }
}