Beispiel #1
0
 public function profile(Request $request)
 {
     $sessionId = $request->user()->id;
     $now = Carbon::now();
     $now = $now->format('Y-m-d');
     $userData = User::where('id', $sessionId)->first();
     $userMeasure = Measurement::where('user_id', $sessionId)->orderBy('date', 'desc')->get();
     $lastMeasure = json_encode($userMeasure);
     $age = $userData->getUserAge();
     $today_tasks = Task::where('user_id', $sessionId)->where('date_to_do', $now)->orderBy('created_at', 'desc')->get();
     $not_done_tasks = Task::where('user_id', $sessionId)->where('date_to_do', '!=', $now)->get();
     $measurment_available = $userMeasure->count() > 0;
     if ($measurment_available) {
         $userMeasureData = $userMeasure->toArray();
         $numberOfMeasurements = count($userMeasureData);
         for ($i = 0; $i < $numberOfMeasurements - 1; $i++) {
             foreach ($userMeasureData[$i] as $key => $value) {
                 if ($value > $userMeasureData[$i + 1][$key]) {
                     $userMeasureData[$i][$key . '_class'] = 'up';
                 } elseif ($value == $userMeasureData[$i + 1][$key]) {
                     $userMeasureData[$i][$key . '_class'] = 'same';
                 } else {
                     $userMeasureData[$i][$key . '_class'] = 'down';
                 }
             }
         }
         $currentMeasurements = User::getCurMeasurements();
         $userWeight = $currentMeasurements['weight'];
         $userHeight = $currentMeasurements['height'];
         $userBodyFat = $currentMeasurements['body_fat'];
         $userBMI = $userWeight / ($userHeight / 100 * ($userHeight / 100));
         $userBMI = number_format($userBMI, 2);
         $userBMIrange = User::getUserBMIrange($userBMI);
         //function from User Model
         $userData->userWeight = $userWeight;
         $userData->userHeight = $userHeight;
         $userData->userMeasure = $userMeasure;
         $userData->userMeasureData = $userMeasureData;
         $userData->userBodyFat = $userBodyFat;
         $userData->userBMI = $userBMI;
         $userData->userBMIrange = $userBMIrange;
         $userData->lastMeasure = $lastMeasure;
     }
     if ($userData) {
         // 'userWeight', 'userHeight', 'userMeasure',  'userMeasureData', 'userBodyFat', 'userBMI', 'userBMIrange','lastMeasure'
         return view('users.profile')->with(compact(array('userData', 'age', 'today_tasks', 'not_done_tasks', 'now', 'measurment_available')));
     }
     return redirect('/food/index')->withErrors('You do not have sufficient permissions');
 }
Beispiel #2
0
 public static function getCurMeasurements()
 {
     $sessionId = Auth::user()->id;
     $currentMeasurements = Measurement::where('user_id', $sessionId)->orderBy('date', 'desc')->select('height', 'weight', 'body_fat')->first();
     return $currentMeasurements;
 }