query('active'); if ($activeQuery == 1) { $restaurant_users = IamPrincipal::with('getresturant') ->where('principal_type_xid', 4) ->where('is_active', 1) ->orderBy('created_at', 'desc') ->get(); } else if ($activeQuery == 0 && $activeQuery != null) { $restaurant_users = IamPrincipal::with('getresturant') ->where('principal_type_xid', 4) ->where('is_active', '0') ->orderBy('created_at', 'desc') ->get(); } else { $restaurant_users = IamPrincipal::with('getresturant') ->where('principal_type_xid', 4) ->orderBy('created_at', 'desc') ->get(); } foreach ($restaurant_users as $user) { $restaurantIds = $user->getresturant->pluck('restaurant_xid')->toArray(); $user->restaurants = ManageRestaurant::whereIn('id', $restaurantIds) ->select('id', 'name', 'image', 'address', 'latitude', 'longtitude') ->get(); // Optionally, if you want to format the images as in the previous example foreach ($user->restaurants as &$restaurant) { $restaurant->image = ListingImageUrl('restaurant_images', $restaurant->image); } } // Return the response as JSON // return response()->json($restaurant_users); return view('Admin.pages.manage_users.restaurants_app.restaurants_users', compact('restaurant_users')); } catch (Exception $e) { Log::error("Manage Voucher Page Not Load " . $e->getMessage()); return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); } } // public function change_rest_user_status(Request $request) // { // try { // DB::beginTransaction(); // $status = IamPrincipal::find($request->rest_user_id); // $status->is_active = $request->status; // // Generate a random password // $randomPassword = \Str::random(8); // Adjust the length as per your requirements // // Set the password // $status->password = bcrypt($randomPassword); // Make sure to hash the password // $status->save(); // if ($request->status == 1) { // // Fetch user data based on user ID // $user = IamPrincipal::find($request->rest_user_id); // if ($user) { // // Send email only if user exists // $data = [ // 'first_name' => $user->first_name, // 'last_name' => $user->last_name, // 'email' => $user->email_address, // 'password' => $randomPassword, // Pass the random password to the email template // ]; // Mail::to($user->email_address)->send(new RestUserApproval($data)); // } // } // DB::commit(); // return jsonResponseWithSuccessMessage(__('success.update_data')); // } catch (Exception $e) { // Log::error("Update Status function Load Failed " . $e->getMessage()); // return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); // } // } public function change_rest_user_status(Request $request) { try { DB::beginTransaction(); $status = IamPrincipal::find($request->rest_user_id); $status->is_active = $request->status; // Generate a random password if status is 1 (approved) if ($request->status == 1) { $randomPassword = \Str::random(8); // Adjust the length as per your requirements $status->password = bcrypt($randomPassword); // Make sure to hash the password } $status->save(); if ($request->status == 1) { // Fetch user data based on user ID $user = IamPrincipal::find($request->rest_user_id); if ($user) { // Send email only if user exists $data = [ 'first_name' => $user->first_name, 'last_name' => $user->last_name, 'email' => $user->email_address, 'password' => $randomPassword, // Pass the random password to the email template ]; Mail::to($user->email_address)->send(new RestUserApproval($data)); } } DB::commit(); return jsonResponseWithSuccessMessage(__('success.update_data')); } catch (Exception $e) { Log::error("Update Status function Load Failed " . $e->getMessage()); return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); } } public function view_rest($id) { try { $restaurantView = IamPrincipal::with('restaurant')->findOrFail($id); // Check if restaurant_users is not null before iterating over it if (!is_null($restaurantView->restaurant_users)) { foreach ($restaurantView->restaurant_users as $user) { $restaurantIds = $user->getresturant->pluck('restaurant_xid')->toArray(); $userRestaurants = ManageRestaurant::whereIn('id', $restaurantIds) ->select('id', 'name', 'image', 'address', 'latitude', 'longtitude') ->get(); foreach ($userRestaurants as $restaurant) { $restaurant->image = ListingImageUrl('restaurant_images', $restaurant->image); } $user->restaurants = $userRestaurants; } } // return $restaurantView; return view('Admin.pages.manage_users.restaurants_app.view_restaurant_users', compact('restaurantView')); } catch (Exception $e) { Log::error("Manage Voucher Page Not Load " . $e->getMessage()); return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); } } public function edit_Restaurant($id) { try { $editRest = IamPrincipal::findOrFail($id); return view('Admin.pages.manage_users.restaurants_app.edit_restaurant_users', compact('editRest')); } catch (Exception $e) { Log::error("Manage Voucher Page Not Load " . $e->getMessage()); return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); } } // public function updateRest(Request $request) // { // try { // DB::beginTransaction(); // $rest_data = IamPrincipal::where('id', $request->rest_id)->first(); // $rest_data->first_name = $request->input('name'); // $rest_data->last_name = $request->input('last_name'); // $rest_data->phone_number = $request->input('phone'); // $rest_data->email_address = $request->input('email_id'); // $rest_data->save(); // DB::commit(); // return jsonResponseWithSuccessMessage(__('success.update_data')); // } catch (Exception $e) { // DB::rollBack(); // Log::error("updateCustomerNewsArticle Services Page Load Failed " . $e->getMessage()); // return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); // } // } // public function updateRest(Request $request) // { // try { // DB::beginTransaction(); // $rest_data = IamPrincipal::find($request->input('rest_id')); // if (!$rest_data) { // throw new Exception('Restaurant not found.'); // } // $rest_data->first_name = $request->input('restaurant_name'); // $rest_data->description = $request->input('restaurant_des'); // $rest_data->phone_number = $request->input('restaurant_phone'); // $rest_data->email_address = $request->input('restaurant_email'); // $rest_data->location = $request->input('restaurant_loc'); // $rest_data->bio = $request->input('restaurant_bio'); // if ($request->hasFile('restaurant_image')) { // $imagePath = $request->file('restaurant_image')->store('images', 'public'); // $rest_data->image_path = $imagePath; // } // $rest_data->save(); // DB::commit(); // return response()->json(['message' => __('success.update_data')], 200); // } catch (Exception $e) { // DB::rollBack(); // Log::error("Update Restaurant Failed: " . $e->getMessage()); // return response()->json(['message' => __('auth.something_went_wrong')], 500); // } // } public function updateRest(Request $request) { try { DB::beginTransaction(); $rest_data = IamPrincipal::find($request->input('rest_id')); // dd( $rest_data ) ; if (!$rest_data) { throw new Exception('Restaurant not found.'); } $rest_data->first_name = $request->input('first_name'); $rest_data->last_name = $request->input('last_name'); $rest_data->phone_number = $request->input('restaurant_phone'); $rest_data->date_of_birth = $request->input('user_birth'); $rest_data->save(); DB::commit(); return response()->json(['status_code' => 200, 'message' => __('success.update_data')], 200); } catch (Exception $e) { DB::rollBack(); Log::error("Update Restaurant Failed: " . $e->getMessage()); return response()->json(['status_code' => 500, 'message' => __('auth.something_went_wrong')], 500); } } public function deleteRestaurantsUsers($id) { try { DB::beginTransaction(); $restaurant = IamPrincipal::find($id); $restaurant->delete(); DB::commit(); return response()->json(['success' => true, 'status' => 200]); } catch (Exception $e) { DB::rollBack(); Log::error("delete_passport function Load Failed " . $e->getMessage()); return response()->json(['success' => false, 'status' => 500, 'message' => __('auth.something_went_wrong')]); } } public function archive_restaturant() { try { $rest_user = IamPrincipal::where('principal_type_xid', 4)->onlyTrashed()->latest()->get(); return view('Admin.pages.manage_users.restaurants_app.archive_manage_restaurant', compact('rest_user')); } catch (Exception $e) { Log::error("Manage Voucher Page Not Load " . $e->getMessage()); return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500); } } public function unarchive_rest($id) { try { DB::beginTransaction(); IamPrincipal::withTrashed()->where('id', $id)->restore(); DB::commit(); return response()->json(['success' => true, 'status' => 200]); } catch (Exception $e) { DB::rollBack(); Log::error("delete_passport function Load Failed " . $e->getMessage()); return response()->json(['success' => false, 'status' => 500, 'message' => __('auth.something_went_wrong')]); } } }