public function store(Requests\SaveOfferRequest $request) { if (Gate::denies('create-offer')) { abort(403); } $violation_id = $request->input('violation_id'); $violation = Violation::findOrFail($violation_id); $offer = new Offer(); $offer->fill($request->input()); $offer->violation_id = $violation_id; $offer->pro_id = Auth::user()->id; $offer->user_id = $violation->author->id; $offer->save(); // Update violation $violation->offers++; $violation->status = 0; $violation->save(); // Send email $email = $violation->author->email; $to = $violation->author->username; $pro_name = $offer->author->username; $address = $violation_name = $violation->address1 . ', ' . $violation->city . ' (' . $violation->getOriginal('state') . ') ' . $violation->zip; $offer_id = $offer->id; $data = compact('to', 'pro_name', 'address', 'offer_id'); Mail::send('emails.newoffer', $data, function ($message) use($email) { $message->subject('You have received an offer'); $message->to($email); }); // Flash message $violation_name = $violation->address1 . ', ' . $violation->city . ' (' . $violation->getOriginal('state') . ') ' . $violation->zip; Session::flash('message', 'Your offer for violation <b>' . $violation_name . '</b> has been submitted.'); Session::flash('message-type', 'success'); // Redirect return redirect()->action('OfferController@show', [$offer->id]); }
/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $offer = new Offer(); $offer->post_id = $request->post_id; $offer->type = $request->type; $offer->content = $request->content; $offer->user_id = Auth::user()->id; $post = Post::find($request->post_id); $offer->post_creator = $post->user_id; $offer->save(); $user = User::findOrFail($post->user_id); Mail::send('emails.offer', ['user' => $user, 'offer' => $offer], function ($m) use($user) { $m->to($user->email, $user->name)->subject('New Offer!'); }); return Redirect($post->community_id . '/post/' . $request->post_id)->with('message', 'Post created'); }
public function postAdd(Request $request) { $validator = $this->validator($request->all()); if ($validator->fails()) { return redirect()->back()->withErrors($validator->messages())->withInput(); } $offer = new Offer(); $offer->title = $request->input('title'); $offer->description = $request->input('description'); $offer->content = $request->input('content'); $file = $request->file('image'); $imageExtension = $file->getClientOriginalExtension(); $imageName = Slug::make($offer->title) . '.' . $imageExtension; $request->file('image')->move(base_path() . '/public/images/offers/', $imageName); $offer->image = $imageName; $offer->save(); $msg = "Новость \"" . $offer->title . "\" добавлена."; return redirect('admin/offer')->with('msg', $msg); }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // $this->validate($request, ['offer_name' => 'required', 'start_date' => 'required', 'end_date' => 'required']); $offer = new Offer(); $offer->offer_name = $request->offer_name; $offer->description = $request->description; $offer->offer_type = $request->offer_type; $offer->amount = $request->amount; //dd($request); if ($request->has('active')) { $offer->active = $request->active; } $start_date = Carbon::createFromFormat('d-n-Y', $request->start_date); $end_date = Carbon::createFromFormat('d-n-Y', $request->end_date); $offer->start = $start_date->toDateTimeString(); $offer->end = $end_date->toDateTimeString(); $offerfor = $request->offerfor; //dd($offerfor); $offer->save(); //dd($offer); if ($offerfor == 'product') { $productIds = $request->products; foreach ($productIds as $id) { $product = Product::find($id); $offer->products()->attach($offer->id, ['offerable_id' => $id, 'offerable_type' => 'App\\Product']); } } elseif ($offerfor == 'category') { $categoryIds = $request->categories; foreach ($categoryIds as $id) { $category = Category::find($id); $offer->categories()->attach($offer->id, ['offerable_id' => $id, 'offerable_type' => 'App\\Category']); } } elseif ($offerfor == 'brand') { $brandIds = $request->brands; foreach ($brandIds as $id) { $brand = Category::find($id); $offer->brands()->attach($offer->id, ['offerable_id' => $id, 'offerable_type' => 'App\\Brand']); } } return redirect()->route('admin.offers'); }
/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $offer = new Offer(); $image = ''; $filename = str_random(25) . '.' . $request->file('image')->getClientOriginalExtension(); // dd($request); if ($request->hasFile('image')) { $request->file('image')->move(public_path() . '/uploads/offers/', $filename); $image = '/uploads/offers/' . $filename; } $offer->title = $request->get('title'); $offer->image = $image; $offer->description = $request->get('description'); $offer->content = $request->get('content'); $offer->url = $request->get('url'); $offer->code = $request->get('code'); $offer->save(); alert()->success('The new offer was successfully created', 'Alright!'); return redirect()->intended('backend/offers'); }