diff --git a/app/Http/Controllers/Admin/ManageNotificationsController.php b/app/Http/Controllers/Admin/ManageNotificationsController.php
index cf1a2ad..f60bcfe 100644
--- a/app/Http/Controllers/Admin/ManageNotificationsController.php
+++ b/app/Http/Controllers/Admin/ManageNotificationsController.php
@@ -81,78 +81,94 @@ class ManageNotificationsController extends Controller
* Use : To add notification .
*/
public function store_notificaton_data(Request $request)
-{
- try {
- $request->validate([
- 'image' => 'required|image|mimes:jpeg,png,jpg,gif|max:2048',
- ]);
+ {
+ try {
+ $request->validate([
+ 'image' => 'required|image|mimes:jpeg,png,jpg,gif|max:2048',
+ ]);
- DB::beginTransaction();
+ DB::beginTransaction();
- if (isset($request->image)) {
- $image = $request->image;
- $image_db = null;
- } else {
- $image = null;
- $image_db = $request->image;
- }
-
- $tnormalImage = saveSingleImageWithoutCrop($image, 'notification_images', $image_db);
- $imagePath = ListingImageUrl('notification_images', $tnormalImage);
-
- // Fetch OneSignal IDs based on the selected states and user type
- $states = $request->states;
-
- $userQuery = IamPrincipal::where('is_active', 1)
- ->where('notification_status', 1)
- ->where('principal_type_xid', 3)
- ->whereIn('state_xid', $states);
-
-
- if ($request->user_type == 1) {
- $allCustomerOneSignalIds = $userQuery->pluck('id');
- $UserData = IamPrincipal::whereIn('id', $allCustomerOneSignalIds)->get();
-
- foreach ($UserData as $customerIdItem) {
- if ($customerIdItem->one_signal_player_id) {
- onesignalhelper::sendNotificationApi(
- $customerIdItem->one_signal_player_id,
- $request->title,
- $request->description,
- 'Dashboard Notification',
- $imagePath,
- $id = null
- );
- }
- onesignalhelper::StoreNotificationDetails($customerIdItem->id, 'Notification', $request->title, $imagePath);
+ if (isset($request->image)) {
+ $image = $request->image;
+ $image_db = null;
+ } else {
+ $image = null;
+ $image_db = $request->image;
}
- } elseif ($request->user_type == 2) {
- $allRestaurantOneSignalIds = $userQuery->pluck('id');
- $restaurantData = IamPrincipal::whereIn('id', $allRestaurantOneSignalIds)->get();
- foreach ($restaurantData as $restIdItem) {
- if ($restIdItem->one_signal_player_id) {
- onesignalhelper::sendNotificationApi(
- $restIdItem->one_signal_player_id,
- $request->title,
- $request->description,
- 'Dashboard Notification',
- $imagePath,
- $id = null
- );
+ $tnormalImage = saveSingleImageWithoutCrop($image, 'notification_images', $image_db);
+ $imagePath = ListingImageUrl('notification_images', $tnormalImage);
+
+ $states = $request->states;
+
+ $userQuery = IamPrincipal::where('is_active', 1)
+ ->where('notification_status', 1)
+ ->where('principal_type_xid', 3)
+ ->whereIn('state_xid', $states);
+
+ if ($request->user_type == 1) {
+ $allCustomerOneSignalIds = $userQuery->pluck('id');
+ $UserData = IamPrincipal::whereIn('id', $allCustomerOneSignalIds)->get();
+
+ foreach ($UserData as $customerIdItem) {
+ if ($customerIdItem->one_signal_player_id) {
+ onesignalhelper::sendNotificationApi(
+ $customerIdItem->one_signal_player_id,
+ $request->title,
+ $request->description,
+ 'Dashboard Notification',
+ $imagePath,
+ $id = null
+ );
+ }
+ onesignalhelper::StoreNotificationDetails($customerIdItem->id, 'Notification', $request->title, $imagePath);
}
- onesignalhelper::StoreNotificationDetails($restIdItem->id, 'Notification', $request->title, $imagePath);
- }
- }
+ } elseif ($request->user_type == 2) {
+ $allRestaurantOneSignalIds = $userQuery->pluck('id');
+ $restaurantData = IamPrincipal::whereIn('id', $allRestaurantOneSignalIds)->get();
- DB::commit();
- return jsonResponseWithSuccessMessage(__('success.save_data'));
- } catch (Exception $e) {
- DB::rollBack();
- Log::error("Notification send Failed " . $e->getMessage());
- return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
+ foreach ($restaurantData as $restIdItem) {
+ if ($restIdItem->one_signal_player_id) {
+ onesignalhelper::sendNotificationApi(
+ $restIdItem->one_signal_player_id,
+ $request->title,
+ $request->description,
+ 'Dashboard Notification',
+ $imagePath,
+ $id = null
+ );
+ }
+ onesignalhelper::StoreNotificationDetails($restIdItem->id, 'Notification', $request->title, $imagePath);
+ }
+ } elseif ($request->user_type == 3) {
+ $allUserOneSignalIds = $userQuery->pluck('id');
+ $UserData = IamPrincipal::whereIn('id', $allUserOneSignalIds)->get();
+
+ foreach ($UserData as $userItem) {
+ if ($userItem->one_signal_player_id) {
+ onesignalhelper::sendNotificationApi(
+ $userItem->one_signal_player_id,
+ $request->title,
+ $request->description,
+ 'Dashboard Notification',
+ $imagePath,
+ $id = null
+ );
+ }
+ onesignalhelper::StoreNotificationDetails($userItem->id, 'Notification', $request->title, $imagePath);
+ }
+ }
+
+ DB::commit();
+ return jsonResponseWithSuccessMessage(__('success.save_data'));
+ } catch (Exception $e) {
+ DB::rollBack();
+ Log::error("Notification send Failed " . $e->getMessage());
+ return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
+ }
}
-}
+
diff --git a/resources/views/Admin/pages/manage_notification/manage_notifications_add.blade.php b/resources/views/Admin/pages/manage_notification/manage_notifications_add.blade.php
index b7d5484..d71ef1b 100644
--- a/resources/views/Admin/pages/manage_notification/manage_notifications_add.blade.php
+++ b/resources/views/Admin/pages/manage_notification/manage_notifications_add.blade.php
@@ -71,13 +71,19 @@
users who are in their respective states