with('scheduleData','activityData') //// ->where('start_date', '<=',$current_day) //// ->where('end_date', '>=',$current_day) //// ->where() // ->get() // ->toArray(); //// echo "
"; print_r($manage_activity_day);exit;
//        return view('Admin.Pages.manage_activities.activity_days.activity_days')->with(['manage_activity_day' => $manage_activity_day]);
//    }

    public function show($id) {
        $current_day = now()->format('Y-m-d'); // Get the current date in the format "YYYY-MM-DD"

        $manage_activity_day = ActivityDay::where('activity_schedule_id', $id)
                ->with('scheduleData', 'activityData')
                ->where('date', 'LIKE', "%$current_day%") // Check if the current date is present in the "days" column
                ->get()
                ->toArray();

        return view('Admin.Pages.manage_activities.activity_days.activity_days')->with(['manage_activity_day' => $manage_activity_day]);
    }

    public function add($id) {
        // dd($id);
        $get_single_schedule = ActivitySchedule::find($id)->toArray();
        // echo '
';print_r($get_single_schedule);exit;
        // dd($get_single_schedule);
        $subcription = SubscriptionMaster::all()->toArray();
        return view('Admin.Pages.manage_activities.activity_days.add_activity_days')->with(['get_schedule_data' => $get_single_schedule, 'subcriptions' => $subcription]);
    }
    
    public function add_upcoming($id) {

        $get_single_schedule = ActivitySchedule::find($id)->toArray();
        // echo '
';print_r($get_single_schedule);exit;

        $subcription = SubscriptionMaster::all()->toArray();
        return view('Admin.Pages.manage_activities.activity_days.add_upcoming_activity_day')->with(['get_schedule_data' => $get_single_schedule, 'subcriptions' => $subcription]);
    }
    
    public function add_data(Request $request) {

//        echo '
';
//        print_r($request->all());
//        exit;
        $rules = [
            'myFile' => 'required|file|max:400', // 400 KB
        ];
    
        $validator = Validator::make($request->all(),$rules);
 
        if ($validator->fails()) {
            if ($request->expectsJson()) {
                return response()->json(['success' => false , 'status' => 422]);
            }
        }
        else {
            $file = $request->file('myFile');
            $ext = $file->extension();
            $file_name = time() . '.' . $ext;
            $path = public_path() . '/uploads/activity_banner_images/activity_day';
            $file->move($path, $file_name);
        }
        $activity_day = new ActivityDay;
        $activity_day->activity_master_id = $request->input('activity_id');
        $activity_day->activity_schedule_id = $request->input('schedule_id');
        $activity_day->activity_name = $request->input('main_activity_name');
        $activity_day->activity_teaser = url('/public/uploads/activity_banner_images/activity_day/' . $file_name);
        $activity_day->activity_duration = $request->input('activity_duration');
        $activity_day->description = $request->input('description');
        $activity_day->date = $request->input('date');
        $activity_day->day = $request->input('day');
        $activity_day->time = $request->input('time');
        $activity_day->zoom_link = $request->input('zoom_link');
        $activity_day->subscription_id = $request->input('subscription_id');
        
        $date = strtotime($request->input('date'));
        // Retrieve the ActivityMaster record
        $activity_schedule = ActivitySchedule::find($request->input('schedule_id'));

        $activity_shedule_start_date = strtotime($activity_schedule->start_date);
        $activity_shedule_end_date = strtotime($activity_schedule->end_date);
        if ($date >= $activity_shedule_start_date && $date <= $activity_shedule_end_date) {
            $activity_day->save();
            return response()->json([
                        'schedule_data' => $activity_day->activity_schedule_id,
                        'success' => true,
                        'status' => 200,
            ]);
        } else {
            return response()->json([
                        'error_msg' => 'Start date or end date is not within the activity master range.',
                        'success' => false,
                        'status' => 400,
            ]);
        }
    }
    
     public function add_upcoming_data(Request $request) {

//        echo '
';
//        print_r($request->all());
//        exit;
        $rules = [
            'myFile' => 'required|file|max:400', // 400 KB
        ];
    
        $validator = Validator::make($request->all(),$rules);
 
        if ($validator->fails()) {
            if ($request->expectsJson()) {
                return response()->json(['success' => false , 'status' => 422]);
            }
        }
        else {
            $file = $request->file('myFile');
            $ext = $file->extension();
            $file_name = time() . '.' . $ext;
            $path = public_path() . '/uploads/activity_banner_images/activity_day';
            $file->move($path, $file_name);
        }

        $activity_day = new ActivityDay;
        $activity_day->activity_master_id = $request->input('activity_id');
        $activity_day->activity_schedule_id = $request->input('schedule_id');
        $activity_day->activity_name = $request->input('main_activity_name');
        $activity_day->activity_teaser = url('/public/uploads/activity_banner_images/activity_day/' . $file_name);
        $activity_day->activity_duration = $request->input('activity_duration');
        $activity_day->description = $request->input('description');
        $activity_day->date = $request->input('date');
        $activity_day->day = $request->input('day');
        $activity_day->time = $request->input('time');
        $activity_day->subscription_id = $request->input('subscription_id');
        $activity_day->zoom_link = $request->input('zoom_link');

        $date = strtotime($request->input('date'));
        // Retrieve the ActivityMaster record
        $activity_schedule = ActivitySchedule::find($request->input('schedule_id'));

        $activity_shedule_start_date = strtotime($activity_schedule->start_date);
        $activity_shedule_end_date = strtotime($activity_schedule->end_date);
        if ($date >= $activity_shedule_start_date && $date <= $activity_shedule_end_date) {
            $activity_day->save();
            return response()->json([
                        'schedule_data' => $activity_day->activity_schedule_id,
                        'success' => true,
                        'status' => 200,
            ]);
        } else {
            return response()->json([
                        'error_msg' => 'Start date or end date is not within the activity master range.',
                        'success' => false,
                        'status' => 400,
            ]);
        }
    }

    public function edit_activity_day($id) {
        $manage_activity_day = ActivityDay::where('id', $id)->with('scheduleData', 'activityData')
                ->get()
                ->toArray();
                // echo "
"; print_r($manage_activity_day);exit;
//        return view('Admin.Pages.manage_activities.activity_days.activity_days')->with(['manage_activity_day' => $manage_activity_day]);
//    }

        $subcription = SubscriptionMaster::all()->toArray();
        
        return view('Admin.Pages.manage_activities.activity_days.edit_activity_days')->with(['manage_activity_day' => $manage_activity_day, 'subcriptions' => $subcription]);
    }
    
    //upcoming edit 
    
    public function edit_upcoming_activity_day($id) {
        $manage_activity_day = ActivityDay::where('id', $id)->with('scheduleData', 'activityData')
                ->get()
                ->toArray();

        $subcription = SubscriptionMaster::all()->toArray();
        return view('Admin.Pages.manage_activities.activity_days.edit_upcoming_activity_day')->with(['manage_activity_day' => $manage_activity_day, 'subcriptions' => $subcription]);
    }
    
    public function edit_activity_day_data(Request $request) {

//        echo '
';
//        print_r($request->all());
//        exit;
        $activity_day = ActivityDay::find($request->edit_main_activity_id);
        $activity_day->activity_name = $request->input('activity_name');
        if ($request->file('activity_teaser')) {
            $rules = [
                'activity_teaser' => 'required|file|max:400', // 400 KB
            ];
        
            $validator = Validator::make($request->all(),$rules);
     
            if ($validator->fails()) {
                if ($request->expectsJson()) {
                    return response()->json(['success' => false , 'status' => 422]);
                }
            }
            else {
                $file = $request->file('activity_teaser');
                $ext = $file->extension();
                $file_name = time() . '.' . $ext;
                $path = public_path() . '/uploads/activity_banner_images/activity_day/';
                $file->move($path, $file_name);
                $file_name_store = url('/public/uploads/activity_banner_images/activity_day/' . $file_name);
                $activity_day->activity_teaser = url('/public/uploads/activity_banner_images/activity_day/' . $file_name);
            }
//        print_r($file_name_store);exit;
        }
        $activity_day->activity_duration = $request->input('activity_duration');
        $activity_day->description = $request->input('description');
        $activity_day->date = $request->input('date');
        $activity_day->day = $request->input('day');
        $activity_day->time = $request->input('time');
        $activity_day->zoom_link = $request->input('zoom_link');
        $activity_day->subscription_id = $request->input('subscription_id');
        $activity_day->save();
        return response()->json(['success' => true, 'status' => 200,'day_data'=>$request->activity_schedule_master_id]);
    }
    
    public function edit_upcoming_activity_day_data(Request $request) {

//        echo '
';
//        print_r($request->all());
//        exit;
        $activity_day = ActivityDay::find($request->edit_main_activity_id);
        $activity_day->activity_name = $request->input('activity_name');
        if ($request->activity_teaser) {
            $rules = [
                'activity_teaser' => 'required|file|max:400', // 400 KB
            ];
        
            $validator = Validator::make($request->all(),$rules);
     
            if ($validator->fails()) {
                if ($request->expectsJson()) {
                    return response()->json(['success' => false , 'status' => 422]);
                }
            }
            else {
                $file = $request->file('activity_teaser');
                $ext = $file->extension();
                $file_name = time() . '.' . $ext;
                $path = public_path() . '/uploads/activity_banner_images/activity_day/';
                $file->move($path, $file_name);
                $file_name_store = url('/public/uploads/activity_banner_images/activity_day/' . $file_name);
                $activity_day->activity_teaser = url('/public/uploads/activity_banner_images/activity_day/' . $file_name);
            }
//        print_r($file_name_store);exit;
        }
        $activity_day->activity_duration = $request->input('activity_duration');
        $activity_day->description = $request->input('description');
        $activity_day->date = $request->input('date');
        $activity_day->day = $request->input('day');
        $activity_day->time = $request->input('time');
        
        $activity_day->zoom_link = $request->input('zoom_link');
        $activity_day->subscription_id = $request->input('subscription_id');
        $activity_day->save();
        return response()->json(['success' => true, 'status' => 200,'day_data'=>$request->activity_schedule_master_id]);
    }

    public function upcomimg_days_show($id) {
        $current_day = now()->format('Y-m-d'); // Get the current date in the format "YYYY-MM-DD"

        $manage_activity_day = ActivityDay::where('activity_schedule_id', $id)
                ->with('scheduleData', 'activityData')
                ->where('date', '>', "$current_day") // Check if the current date is present in the "days" column
                ->get()
                ->toArray();

        return view('Admin.Pages.manage_activities.activity_days.upcoming_activity_days')->with(['manage_activity_day' => $manage_activity_day]);
    }
    
    public function delete_activity_days($id) {
        // print_r($id);
        // exit;
        $manage_activity_days = ActivityDay::find($id)->delete();
    }

}