public function confirmApproval(ProductRequest $request, AppMailer $mailer, $id) { $product = Product::find($id); if (!$product) { return redirect()->back()->withErrors(['Product not found to approve!']); } if (!$request->has('confirmation-select')) { return redirect()->back()->withErrors(['Invalid request of approval confirmation!']); } switch ($request->input('confirmation-select')) { case 'approve': $category->status = 'APPROVED'; case 'reject': $category->status = 'REJECTED'; case 'remove': $category->status = 'REMOVED'; } if (!$product->save()) { return redirect()->back()->withErrors(['Failed to confirm product approval!']); } flash()->success('Your have ' . strtolower($product->getStatus()) . ' product (' . $product->product_title . ').'); // Sends approval mail to user who created the product $data['type'] = Product::class; $data['status'] = $product->getStatus(); $data['item_name'] = $product->product_title; $data['created_at'] = $product->created_at; $mailer->sendEmailForApprovalNotificationTo($product->user, $data); return redirect()->back(); }
public function confirmApproval(CategoryRequest $request, AppMailer $mailer, $id) { $category = Category::find($id); if (!$category) { return redirect()->back()->withErrors(['Category not found to approve!']); } if (!$request->has('confirmation-select')) { return redirect()->back()->withErrors(['Invalid request of approval confirmation!']); } switch ($request->input('confirmation-select')) { case 'approve': $category->status = 'APPROVED'; case 'reject': $category->status = 'REJECTED'; case 'remove': $category->status = 'REMOVED'; } // if($request->input('confirmation-select') == 'approve') // $category->status = 'APPROVED'; // if($request->input('confirmation-select') == 'reject') // $category->status = 'REJECTED'; if (!$category->save()) { return redirect()->back()->withErrors(['Failed to confirm category approval!']); } flash()->success('Your have ' . strtolower($category->getStatus()) . ' category (' . $category->category_name . ').'); // Sends approval mail to users has a single product $data['type'] = Category::class; $data['status'] = $category->getStatus(); $data['item_name'] = $category->category_name; $data['created_at'] = $category->created_at; foreach ($category->products->unique('user_id') as $product) { $mailer->sendEmailForApprovalNotificationTo($product->user, $data); } return redirect()->back(); }