public function offer(Request $request) { $order_user_id = null; $v = Validator::make($request->all(), ['project_id' => 'required|numeric']); if ($v->fails()) { // return redirect('post/create') // ->withErrors($validator) // ->withInput(); } if ($request->has('fullname') && $request->has('email') && $request->has('phone') && empty($this->user->id)) { /* * хэрэв fullname, email, phone 3 орж ирвэл хэрэглэгч шинээр бүртгэнэ */ $user = new User(); $user->fullname = $request->get('fullname'); $user->email = $request->get('email'); $user->phone = $request->get('phone'); $user->register_ip = $_SERVER['REMOTE_ADDR']; $user->registered_with = 'local'; $user->public = 0; $user->status = 1; $user->role = 2; $user->save(); $order_user_id = $user->id; //user controller-оос авч хэрэглэх /яаж??/ //$this->sendThankYouEmail($user); } else { /* * хэрэглэгч нэвтэрсэн гэж ойлгоно */ $order_user_id = $this->user->id; } $payment = new Payment(); if ($request->has('reward_id') && $request->has('reward_qty')) { /* * хэрэв reward_id, reward_qty 2 орж ирвэл reward авч байна гэж ойлно */ $reward = Reward::find($request->get('reward_id')); $payment->reward_id = $reward->id; $payment->value = $reward * $request->get('reward_qty'); $payment->gateway = 'reward'; } else { /* * хэрэв donation орж ирвэл хандив өгч байна гэж ойлно */ $payment->value = $request->get('donation'); $payment->gateway = 'donation'; } $payment->project_id = $request->get('project_id'); $payment->user_id = $order_user_id; $payment->note = $request->get('note'); $payment->save(); $result = $this->process_payment($payment); if (!$result) { //харгалзах view дуудах } }
/** * Update the specified resource in storage. * * @param Request $request * @param int $id * @return Response */ public function update(Request $request, $id) { $reward = Reward::find($id); $reward->name = $request->input('name'); $reward->blocks = $request->input('blocks'); $reward->description = $request->input('description'); $reward->save(); $set = Set::find(1); $rewards = Reward::with('media')->where('set_id', $set->id)->orderby('blocks', 'desc')->get(); return view('admin.rewards.index', ['set' => $set, 'rewards' => $rewards]); }
public function postUnlock(Request $request) { $title = 'Dashboard unlock reward'; $rewardId = $request->id; // get reward for detail page $reward = Reward::find($rewardId); // get 8 most popular rewards $rewards = Reward::orderBy('claimed', 'desc')->take(8)->get(); $user = Auth::user(); $username = $user->name; $userPoints = $user->points; $message = ''; // check if user has enough points if ($userPoints >= $reward->value) { // calculate new points $user->points = $userPoints - $reward->value; $userPoints = $user->points; // add reward to rewards of user $user->rewards()->attach($rewardId); $reward->claimed = $reward->claimed + 1; $reward->save(); $user->save(); $message = 'Congratulations! You bought it!'; return view('dashboard.reward.unlock', compact('title', 'username', 'reward', 'userPoints', 'rewards', 'message')); } else { // not enough points to unlock $message = 'You dont have enough points!'; return view('dashboard.reward.unlock', compact('title', 'username', 'reward', 'userPoints', 'rewards', 'message')); } }
public function donateModal(Request $request) { $col = 6; if ($this->user) { $col = 12; } $projectid = $request->get('projectid'); $project = Reward::find($projectid); $donateModal = view('modules.modal', ['id' => 'donatemodal' . $projectid, 'title' => trans('project.donate'), 'modalbody' => 'modules.project.donate'])->withUser($this->user)->withCol($col)->withProject($project)->render(); $return['status'] = true; $return['view'] = $donateModal; return $return; }