format('Y-m-d'); // Get the current date in the format "YYYY-MM-DD" $user_data = Auth::user(); $userIP = \Request::ip(); // $access_token = 'fb9b51b5a3bbd9'; // $client = new IPinfo($access_token); // $ip_address = $userIP ; // $details = $client->getDetails($ip_address); // dd($details); $response = Http::get("https://ipinfo.io/{$userIP}?token=fb9b51b5a3bbd9"); $locationData = $response->json(); $userTimeZone = $locationData['timezone']; $user_data = Auth::user(); $utm_source = $user_data->utm_source; $subscription_data = SubscriptionMaster::where('utm_plan',$utm_source)->first(); $subscription_id = $subscription_data->id; $data['live_activity'] = ActivityDay::where('subscription_id', $subscription_id) ->where('date', 'LIKE', "%$current_day%") ->with('scheduleData', 'activityData') ->get(); // dd($data['live_activity']); // dd($data['live_activity']); // if($data['live_activity']->isEmpty()){ // $data['data'] = ['0']; // dd($data); // return view('website.pages.your_activity',compact('data')); // }else{ if(!$data['live_activity']->isEmpty()){ $timestamp = $data['live_activity'][0]['time']; // dd($timestamp); $gettimezone = $userTimeZone; // $datetime = "2016-02-01 00:00:01"; // Target timezone based on the user's IP address $targetTimeZone = new DateTimeZone($userTimeZone); // Create a DateTime object for the original timestamp in India timezone $given = new DateTime($timestamp, new DateTimeZone('Asia/Kolkata')); // Set the target timezone $given->setTimezone($targetTimeZone); // $given = new DateTime($timestamp, new DateTimeZone($gettimezone)); // $given->setTimezone(new DateTimeZone("UTC")); $output = $given->format("H:i"); $data['live_activity'][0]['time']=$output; } $data['subscription_data'] = SubscriptionMaster::where('utm_plan',$utm_source)->first(); // return $data; //past data $subscription_data = SubscriptionMaster::where('utm_plan',$utm_source)->first(); $subscription_id = $subscription_data->id; // dd($subscription_id); // Calculate the cutoff date (end date + 7 days) $activity_data = ActivityMaster::where('subscription_id', $subscription_id)->orderBy('end_date', 'desc')->first(); // return $activity_data; // dd($activity_data); $end_date = $activity_data->end_date; // dd($end_date); $cutoffDate = Carbon::parse($end_date)->addDays(7)->toDateString(); // dd($cutoffDate); // $desired_date = Carbon::createFromDate(2024, 1, 2); // $cutoffDate = $desired_date->format('Y-m-d'); $current_date = Carbon::now()->format('Y-m-d'); $data['data'] = []; // dd($cutoffDate); // Check if the current date is past the cutoff date if (Carbon::now()->toDateString() > $cutoffDate) { $data['data'] = ['0']; // dd($data); return view('website.pages.your_activity',compact('data')); } $data['past_activity'] = ActivityMaster::where('subscription_id', $subscription_id)->where('end_date','<',$cutoffDate)->with('teacher_data')->orderBy('start_date', 'desc')->first(); // dd($data['past_activity']); if ($data['past_activity'] !== null) { $schedule_data = ActivitySchedule::where('activity_master_id', $data['past_activity']['id'])->with('past_data')->orderBy('start_date', 'asc')->get()->toArray(); // dd($schedule_data); } else { $data['past_activity'] = []; $schedule_data = []; // Set an empty array when $data['past_activity'] is null } $data_schedule = []; foreach ($schedule_data as $k => $val){ if (empty($val['past_data'])){ continue; }else{ $data_schedule[] = $val; } } $data['past_activity']['schedule'] = $data_schedule; // $userIP = $request->ip(); // $response = Http::get("https://ipinfo.io/{$userIP}/json"); // $locationData = $response->json(); // // dd($locationData); // $userTimeZone = $locationData['timezone']; // // dd($userTimeZone); // $timestamp = $data['live_activity'][0]->new_time; // Use square brackets to access elements // // dd() // $originalTime = Carbon::parse($timestamp,$userTimeZone); // $date = Carbon::createFromFormat('H:i:s', $timestamp, 'UTC'); // $date->setTimezone($userTimeZone); // dd($date); // $userTime = $originalTime->copy(); // $userTime->setTimezone($userTimeZone); // $userTimeFormatted = $userTime->format('H:i:s'); // // dd($userTimeFormatted); // $data['live_activity'] = $data['live_activity']->map(function ($item) use ($userTimeZone) { // $timestamp = $item->new_time; // // $normalTime = Carbon::createFromFormat('H:i', $timestamp, $userTimeZone); // Replace 'your_timezone' with the actual timezone of the 'time' column // $normalTime = Carbon::parse($timestamp, $userTimeZone); // $convertedTime = $normalTime->setTimezone($userTimeZone); // Convert to the user's time zone // $item->new_time = $convertedTime->format('H:i'); // Update the 'time' value with the user's time zone in 'HH:mm' format // return $item; // })->toArray(); // echo "
";
// print_r($data['live_activity']);
// exit;
return view('website.pages.your_activity',$data);
}
}