Пример #1
0
 /**
  * Once Maximum No of Attempt is Reach Block the Code
  */
 public function blockCode($pin)
 {
     return Code::findByPin($pin)->tooManyCodeAttempts()->update(array('blocked' => true));
 }
Пример #2
0
 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);
 }