/**
  * Set transaction code
  *  - updating vendor_id on set
  *
  * @param  string  $value
  * @return string
  */
 public function setCodeAttribute($value)
 {
     $this->attributes['code'] = $value;
     // try to set vendor id
     $code = Code::where(array('name' => $value))->first();
     if ($code) {
         $this->attributes['vendor_id'] = $code->vendor_id;
     }
 }
 public function activate(Request $request)
 {
     $res = Code::where('user_id', $request->id)->where('code', $request->code)->first();
     if ($res) {
         $res->delete();
         User::find($request->id)->update(['activated' => 1]);
         return redirect()->to('auth/login')->with(['msg' => 'ok']);
     }
     return abort(404);
 }
Exemple #3
0
 public function activate(Request $request)
 {
     $res = Code::where('user_id', $request->id)->where('code', $request->code)->first();
     if ($res) {
         //Удаляем использованный код
         $res->delete();
         //активируем аккаунт пользователя
         User::find($request->id)->update(['activated' => 1]);
         //редиректим на страницу авторизации с сообщением об активации
         return view('auth.regok');
     }
     return abort(404);
 }
 private function generateCodes()
 {
     $url = str_random(5);
     $token = str_random(32);
     if (Code::where('url', $url)->orWhere('token', $token)->count() > 0) {
         return $this->generateCodes();
     }
     $code = new Code();
     $code->url = $url;
     $code->token = $token;
     $code->save();
     return ["token" => $token, "url" => "https://ftch.in/{$url}"];
 }
 /**
  * Saves User's Code in codes table
  * The executes the code and returns the output
  */
 public function saveAndExec(Request $req)
 {
     // save
     $row = null;
     $row = Code::where('user_id', '=', Auth::user()->id)->first();
     if (!$row) {
         // user's doesn't code already exist
         // so create entity
         $row = new Code();
         $row->user_id = Auth::user()->id;
     }
     $row->code = $req->code;
     $code = $req->code;
     $row->save();
     $code = str_replace("<?php", "", $code);
     $code = str_replace("?>", "", $code);
     eval($code);
     // execute
     // TODO write logic to execute the code
     // exec($row->code);
     $user = Auth::user();
     // dd($user);
     //return view('/home', ['user' => $user]);
 }
 public function search(Request $request, $race_id)
 {
     $race = Race::find($race_id);
     $gateways = Gateway::where('enabled', true)->get();
     $gateway_list = $gateways->lists('name', 'id');
     $runners = [];
     $codes = [];
     $transactions = [];
     if (!($criteria = $request->get('criteria'))) {
         $criteria = '';
     }
     if (!($type = $request->get('type'))) {
         $type = '';
     }
     if (!($runner_status = $request->get('runner_status'))) {
         $runner_status = '';
     }
     if (!($payment_id = $request->get('payment_id'))) {
         $payment_id = '';
     }
     if (!($code_status = $request->get('code_status'))) {
         $code_status = '';
     }
     if (!($transaction_status = $request->get('transaction_status'))) {
         $transaction_status = '';
     }
     if (!($gateway_id = $request->get('gateway_id'))) {
         $gateway_id = '';
     }
     if (!($date = $request->get('date'))) {
         $date = '';
     }
     if ($request->has('criteria')) {
         switch ($type) {
             case 'runner_name':
                 $runners_query = Runner::where([['last_name_01', 'like', '%' . $criteria . '%'], ['race_id', $race->id]]);
                 break;
             case 'runner_doc':
                 $runners_query = Runner::where([['doc_num', $criteria], ['race_id', $race->id]]);
                 break;
             case 'runner_bib':
                 $runners_query = Runner::where([['bib', $criteria], ['race_id', $race->id]]);
                 break;
             case 'code':
                 $codes = Code::where([['code', 'like', '%' . $criteria . '%'], ['race_id', $race->id]]);
                 if ($code_status < 2) {
                     $codes = $codes->where('status', $code_status);
                 }
                 $codes = $codes->get();
                 break;
             case 'transaction':
                 $transactions = Transaction::where('id', $criteria);
                 if ($transaction_status > 3) {
                     $transactions = $transactions->where('status', $transaction_status);
                 }
                 if ($gateway_id > 0) {
                     $transactions = $transactions->where('gateway_id', $gateway_id);
                 }
                 $transactions = $transactions->get();
                 break;
             default:
                 $runners_query = Runner::where('last_name_01', 'like', '%' . $criteria . '%')->get();
                 break;
         }
         if (!empty($runners_query)) {
             if ($runner_status < 2) {
                 $runners_query = $runners_query->where('status', $runner_status);
             }
             if ($payment_id > 0) {
                 $runners_query = $runners_query->where('payment_id', $payment_id);
             }
             $runners = $runners_query->get();
         }
     }
     return view('admin.search')->with(['race' => $race, 'runners' => $runners, 'codes' => $codes, 'transactions' => $transactions, 'gateway_list' => $gateway_list, 'criteria' => $criteria, 'type' => $type, 'date' => $date, 'runner_status' => $runner_status, 'code_status' => $code_status, 'transaction_status' => $transaction_status, 'payment_id' => $payment_id, 'gateway_id' => $gateway_id]);
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update(Request $request, $id)
 {
     // update a specific vendor
     $vendor = Vendor::with('codes')->find($id);
     $vendor->name = $request->name;
     $vendor->email = $request->email;
     $vendor->business = $request->business;
     $vendor->phone = $request->phone;
     $vendor->rent = $request->rent;
     $vendor->rate = $request->rate;
     $vendor->status = $request->status;
     $vendor->notes = $request->notes;
     $vendor->email_notification = $request->email_notification;
     $vendor->touch();
     // sync codes
     $codes = array();
     $newCodes = array();
     // current codes
     foreach ($vendor->codes as $code) {
         array_push($codes, $code->name);
     }
     // new codes
     if (isset($request->codes)) {
         foreach ($request->codes as $code) {
             array_push($newCodes, $code['name']);
         }
     }
     $deleteCodes = array_diff($codes, $newCodes);
     // sync codes
     if (count($deleteCodes)) {
         Code::where('name', $deleteCodes)->delete();
     }
     foreach ($newCodes as $code) {
         Code::firstOrCreate(array('vendor_id' => $vendor->id, 'name' => $code));
     }
     // check for transactions
     if (count($newCodes)) {
         $transactions = Transaction::where('code', $newCodes)->get();
         if (!$transactions->isEmpty()) {
             foreach ($transactions as $transaction) {
                 $transaction->vendor_id = $vendor->id;
                 $transaction->save();
             }
         }
     }
     return response(Vendor::with(['transactions' => function ($query) {
         $query->orderBy('processed_at', 'desc');
         $query->limit(100);
     }, 'codes'])->find($id), 200);
 }
 public function pdf($prefix, $encrypted_runner_id)
 {
     $runner_id = Crypt::decrypt($encrypted_runner_id);
     $runner = Runner::find($runner_id);
     if (is_null($runner)) {
         return redirect($prefix . '/error');
     }
     $payment = $runner->payment;
     if ($payment->id == 1) {
         $transaction = Transaction::find($runner->ticket);
         $code = Code::makeDummy();
     } else {
         $code = Code::where('code', $runner->ticket)->first();
         $transaction = Transaction::makeDummy();
     }
     $pdf = PDF::loadView('enroll.docs.manifest', ['runner' => $runner, 'transaction' => $transaction, 'code' => $code])->setPaper('a4')->setOrientation('portrait');
     return $pdf->stream('manifest.pdf');
 }
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $cliff = (new \DateTime())->modify('-5 minutes');
     \App\Code::where('created_at', '<', $cliff)->delete();
 }
 public function activateFirstLink(Request $request)
 {
     $activateFirstLinkRequest = new ActivateFirstLinkRequest();
     $validator = Validator::make($request->all(), $activateFirstLinkRequest->rules(), $activateFirstLinkRequest->messages());
     if ($validator->fails()) {
         return response()->json(['success' => false, 'errors' => $validator->errors()->toArray()], 400);
     }
     if ($this->captchaCheck() == false) {
         $errors = $validator->errors()->add('captchaerror', 'Captcha Expired Refresh Page!');
         return response()->json(['success' => false, 'errors' => $errors], 200);
     }
     $pin = $request->pin;
     $secret = $request->secret;
     $link = $request->link;
     $code = Code::where('pin', $pin)->first();
     $link = Link::findByLink($link);
     if ($link->active == true) {
         $errors = $validator->errors()->add('linkerror', 'Your Link is Already Active');
         return response()->json(['success' => false, 'errors' => $errors], 200);
     }
     if ($code->used == true) {
         $errors = $validator->errors()->add('linkerror', 'Your Code is Already Used!');
         return response()->json(['success' => false, 'errors' => $errors], 200);
     }
     if ($code->attempts > 4) {
         $code->blocked = true;
         $code->save();
     }
     if ($code->blocked === true) {
         $errors = $validator->errors()->add('CodeError', 'Maximum Tries Reach! Code is Blocked!');
         return response()->json(['success' => false, 'errors' => $errors], 423);
     }
     try {
         $validcode = Code::findByPin($pin)->secret($secret)->firstOrFail();
     } catch (ModelNotFoundException $e) {
         $code = Code::findByPin($pin);
         $code->attempts = $code->attempts + 1;
         $code->save();
         $attempts = $code->attempts;
         $errorMessage = 5 - $attempts . ' More Attempt Until Code is Blocked!';
         $errors = $validator->errors()->add('CodeError', $errorMessage);
         return response()->json(['success' => false, 'errors' => $errors], 400);
     }
     // $code here inherent call above
     // $link is modified already to object not string link
     // Both $code and $link are Object Already
     $code->used = true;
     $link->code()->save($code);
     $link->active = true;
     $link->sp_link_id = $link->activeSponsor($link->sp_link_id);
     $link->save();
     return response()->json(['success' => true, 'url' => 'FirstLink'], 201);
 }
 public function destroy($id)
 {
     $code = Code::where('token', $id)->first();
     $code->delete();
     return ['success' => true];
 }
Exemple #12
0
 public static function findByAppAndCode($app, $code)
 {
     return Code::where('app_id', '=', $app->id)->where('code', '=', $code)->firstOrFail();
 }
 public function getCode($user_id)
 {
     $code = Code::where('user_id', '=', $user_id)->first();
     return view('code', ['code' => $code->code]);
 }