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(); }
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 verifyProfileChanges(Request $request, AppMailer $mailer, User $user) { $errors = $this->update($request, $user); if (!empty($errors)) { return $this->redirectToUserProfileEdit($user, $errors); } $data['request_url'] = 'name/' . $user->name . ('/email/' . $user->email); $data['request_url'] .= '/phone/' . $user->phone_number; $data['request_url'] .= '/password/' . str_replace('/', '_', $user->password ? $user->password : Auth::user()->password); $data['request_url'] .= '/address/' . str_replace('/', '_', $user->address); // dd($data); $mailer->sendEmailProfileUpdateConfirmationTo($user, $data); flash()->info('A verification mail is sent to ' . ($user->email ? $user->email : Auth::user()->email) . '. Please check your mail inbox/ junk/ spam directives to confirm your changes verified.'); return $this->redirectToUserProfileEdit($user); }