lundi 17 décembre 2018

laravel - using if statement correctly

Hi Everybody My Code Here is Working Fine But I need it to be short I'm using if statement so Select if I will use user_id or Guest_ip but I get a long code any help

            if (Auth::guest()) {

        $Task = Enrollee::with('path.ProgrammingField')->with(['path.pathtags' => function ($q) use ($TagArray)
        {
            $q->with(['Tasks' => function ($q) use ($TagArray)
              {$q->has('tasktags', '=', 2)->orderBy('id', 'ASC') ->whereDoesntHave('tasktags',
                function ($query) use ($TagArray) {
                            $query->whereNotIn('name', $TagArray);
                        }
                    )
               ->with('tasktags');
           }]
        )->orderBy('id', 'ASC');
       }])
        ->where( 'user_id' , '=' , Auth::user()->id )
        ->where('Path_id', $Path->id) ->get();

        $Tasks = $Task[0]->path;
        $Subs = Enrollee::where( 'user_id' , '=' , Auth::user()->id )->where('Path_id', $Path->id)->get();
       $AllSubs = [];
        foreach($Subs as $sub){
            $AllSubs[] = $sub->task_id;
        }
        $AllSubTasks = implode(" ",$AllSubs);
        $SubTasks = explode(",", ($AllSubTasks));
}

       else {

$Task = Enrollee::
with('path.ProgrammingField')

->with(['path.pathtags' => function ($q) use ($TagArray)
{
    $q->with(['Tasks' => function ($q) use ($TagArray)
      {$q->has('tasktags', '=', 2)->orderBy('id', 'ASC')
    ->whereDoesntHave('tasktags',
                function ($query) use ($TagArray) {
                    $query->whereNotIn('name', $TagArray);
                }
            )
       ->with('tasktags');
   }]
)->orderBy('id', 'ASC');
    }])
->where( 'guest_ip' , '=' , '127.0.0.1' )
->where('Path_id', $Path->id) ->get();

$Tasks = $Task[0]->path;
$Subs = Enrollee::where( 'guest_ip' , '=' ,'127.0.0.1') ->where('Path_id', $Path->id)->get();
   $AllSubs = [];
       foreach($Subs as $sub){
            $AllSubs[] = $sub->task_id;
      }
$AllSubTasks = implode(" ",$AllSubs);
$SubTasks = explode(",", ($AllSubTasks));
}

Can I Use

  if (Auth::guest()) {

->where( 'guest_ip' , '=' , '127.0.0.1' )
          }

I need to be one code and change if I use guest_ip or user id Using if statement



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire