/**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     $caseOwners = CaseOwner::where('caseId', '=', $request['caseID'])->get();
     $author = User::find($request['uid']);
     $caseNote = new CaseNote();
     $caseNote->note = $request['caseNote'];
     $caseNote->user = $request['uid'];
     $caseNote->caseId = $request['caseID'];
     $caseNote->save();
     $caseActivity = new CaseActivity();
     $caseActivity->caseId = $request['caseID'];
     $caseActivity->user = $request['uid'];
     $caseActivity->addressbook = 0;
     $caseActivity->note = "New Case Noted Added by " . $author->name . " " . $author->surname;
     $caseActivity->save();
     foreach ($caseOwners as $caseOwner) {
         $user = User::find($caseOwner->user);
         $data = array('name' => $user->name, 'caseID' => $request['caseID'], 'caseNote' => $request['caseNote'], 'author' => $author->name . ' ' . $author->surname);
         \Mail::send('casenotes.email', $data, function ($message) use($user) {
             $message->from('*****@*****.**', 'Siyaleader');
             $message->to($user->username)->subject("Siyaleader Notification - New Case Note: ");
         });
     }
     return "ok";
 }
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function index($id, $user)
 {
     $caseOwner = CaseOwner::where('case_id', '=', $id)->where('user', '=', $user)->first();
     if (sizeof($caseOwner) > 0) {
         return $caseOwner->accept == 1 ? 1 : 0;
     } else {
         return 0;
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     //tutsnare.com/upload-files-in-laravel/
     //laravel-recipes.com/recipes/147/creating-a-directory
     //github.com/Studio-42/elFinder/wiki/Client-configuration-options#uiOptions
     $destinationFolder = 'files/case_' . $request['caseID'];
     if (!\File::exists($destinationFolder)) {
         $createDir = \File::makeDirectory($destinationFolder, 0777, true);
     }
     $fileName = $request->file('caseFile')->getClientOriginalName();
     $fileFullPath = $destinationFolder . '/' . $fileName;
     if (!\File::exists($fileFullPath)) {
         $request->file('caseFile')->move($destinationFolder, $fileName);
         $caseOwners = CaseOwner::where('caseId', '=', $request['caseID'])->get();
         $author = User::find($request['uid']);
         $caseFile = new CaseFile();
         $caseFile->file = $fileName;
         $caseFile->imgUrl = $fileFullPath;
         $caseFile->user = $request['uid'];
         $caseFile->caseId = $request['caseID'];
         $caseFile->fileNote = $request['fileNote'];
         $caseFile->save();
         $caseActivity = new CaseActivity();
         $caseActivity->caseId = $request['caseID'];
         $caseActivity->user = $request['uid'];
         $caseActivity->addressbook = 0;
         $caseActivity->note = "New Case File Added by " . $author->name . " " . $author->surname;
         $caseActivity->save();
         foreach ($caseOwners as $caseOwner) {
             $user = User::find($caseOwner->user);
             $data = array('name' => $user->name, 'caseID' => $request['caseID'], 'caseNote' => $fileName, 'caseFileDesc' => $request['fileNote'], 'author' => $author->name . ' ' . $author->surname);
             \Mail::send('casefiles.email', $data, function ($message) use($user) {
                 $message->from('*****@*****.**', 'Siyaleader');
                 $message->to($user->username)->subject("Siyaleader Notification - New Case File Uploaded: ");
             });
         }
         return "ok";
     }
     return "ok";
 }
<?php 
use App\User;
use App\CaseReport;
use App\CaseNote;
use App\Category;
use App\Ship;
use App\Position;
use App\Department;
use App\Municipality;
use App\addressbook;
use App\CaseOwner;
if (\Auth::user()->role == 1) {
    $cases = CaseReport::whereNotNull('gps_lat')->whereNotNull('gps_lng')->get();
} else {
    $casesIds = CaseOwner::where('user', '=', \Auth::user()->id)->get();
    $ids = array();
    foreach ($casesIds as $case) {
        $ids[] = $case->caseId;
    }
    $cases = CaseReport::whereNotNull('gps_lat')->whereNotNull('gps_lng')->whereIn('id', $ids)->get();
}
foreach ($cases as $case) {
    if ($case->addressbook == 1) {
        $userObj = addressbook::find($case->reporter);
        $ReporterName = $userObj->FirstName . ' ' . $userObj->Surname;
        $ReporterPosition = "";
        $ReporterMobile = $userObj->cellphone;
    } else {
        $userObj = user::find($case->reporter);
        $ReporterName = $userObj->name . ' ' . $userObj->surname;
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function escalate(Request $request)
 {
     $addresses = explode(',', $request['addresses']);
     $caseOwners = CaseOwner::where('caseId', '=', $request['caseID'])->get();
     foreach ($caseOwners as $caseOwner) {
         $user = User::find($caseOwner->user);
         $data = array('name' => $user->name, 'caseID' => $request['caseID'], 'content' => $request['message'], 'executor' => \Auth::user()->name . ' ' . \Auth::user()->surname);
         \Mail::send('emails.caseEscalation', $data, function ($message) use($user) {
             $message->from('*****@*****.**', 'Siyaleader');
             $message->to($user->username)->subject("Siyaleader Notification - Case Referred: ");
         });
     }
     foreach ($addresses as $address) {
         $user = User::where('username', '=', $address)->first();
         if (sizeof($user) <= 0) {
             $userAddressbook = addressbook::where('email', '=', $address)->first();
         }
         $name = sizeof($user) <= 0 ? $userAddressbook->FirstName : $user->name;
         $surname = sizeof($user) <= 0 ? $userAddressbook->Surname : $user->surname;
         $to = sizeof($user) <= 0 ? $userAddressbook->id : $user->id;
         $cellphone = sizeof($user) <= 0 ? $userAddressbook->cellphone : $user->cellphone;
         $type = sizeof($user) <= 0 ? 1 : 0;
         $addressbook = sizeof($user) <= 0 ? 1 : 0;
         $data = array('name' => $name, 'caseID' => $request['caseID'], 'content' => $request['message']);
         $caseReport = CaseReport::find($request['caseID']);
         $caseReport->status = "Referred";
         $caseReport->save();
         $caseActivity = new CaseActivity();
         $caseActivity->caseId = $request['caseID'];
         $caseActivity->user = $to;
         $caseActivity->addressbook = $addressbook;
         $caseActivity->note = "Case Referred to " . $name . " " . $surname . " by " . \Auth::user()->name . ' ' . \Auth::user()->surname;
         $caseActivity->save();
         \Mail::send('emails.caseEscalated', $data, function ($message) use($address) {
             $message->from('*****@*****.**', 'Siyaleader');
             $message->to($address)->subject("Siyaleader Notification - Case Referred: ");
         });
         \Mail::send('emails.caseEscalatedSMS', $data, function ($message) use($cellphone) {
             $message->from('*****@*****.**', 'Siyaleader');
             $message->to('*****@*****.**')->subject("REFER: {$cellphone}");
         });
         $caseEscalationObj = new CaseEscalator();
         $caseEscalationObj->caseId = $request['caseID'];
         $caseEscalationObj->from = \Auth::user()->id;
         $caseEscalationObj->to = $to;
         $caseEscalationObj->type = $type;
         $caseEscalationObj->message = $request['message'];
         $caseEscalationObj->save();
         $caseOwnerObj = new CaseOwner();
         $caseOwnerObj->caseId = $request['caseID'];
         $caseOwnerObj->user = $to;
         $caseOwnerObj->type = 4;
         $caseOwnerObj->addressbook = $addressbook;
         $caseOwnerObj->save();
     }
     return "ok";
 }