validateDisplayName() public method

표시이름(displayName)에 대한 유효성 검사를 한다. 표시이름이 형식검사와 중복검사를 병행한다.
public validateDisplayName ( string $name ) : boolean
$name string 유효성 검사를 할 표시이름
return boolean 유효성검사 결과, 통과할 경우 true, 실패할 경우 false
コード例 #1
0
 public function update($userId, Request $request)
 {
     // basic validation
     $this->validate($request, ['displayName' => 'required']);
     // member validation
     /** @var UserInterface $user */
     $user = $this->handler->users()->find($userId);
     if ($user === null) {
         throw new UserNotFoundException();
     }
     $displayName = $request->get('displayName');
     $introduction = $request->get('introduction');
     // displayName validation
     if ($user->getDisplayName() !== trim($displayName)) {
         $this->handler->validateDisplayName($displayName);
     }
     XeDB::beginTransaction();
     try {
         // resolve profile file
         if ($profileFile = $request->file('profileImgFile')) {
             /** @var UserImageHandler $imageHandler */
             $imageHandler = app('xe.user.image');
             $user->profileImageId = $imageHandler->updateUserProfileImage($user, $profileFile);
         }
         $this->handler->update($user, compact('displayName', 'introduction'));
     } catch (\Exception $e) {
         XeDB::rollback();
         throw $e;
     }
     XeDB::commit();
     return redirect()->route('member.profile', [$user->getId()])->with('alert', ['type' => 'success', 'message' => '변경되었습니다.']);
 }
コード例 #2
0
 /**
  * validate DisplayName
  *
  * @param Request $request
  *
  * @return \Xpressengine\Presenter\RendererInterface
  * @throws Exception
  */
 public function validateDisplayName(Request $request)
 {
     $name = $request->get('name');
     $name = trim($name);
     $valid = true;
     try {
         $this->handler->validateDisplayName($name);
         $message = '사용 가능한 이름입니다.';
     } catch (DisplayNameAlreadyExistsException $e) {
         $valid = false;
         $message = $e->getMessage();
     } catch (InvalidArgumentException $e) {
         $valid = false;
         $message = $e->getMessage();
     } catch (\Exception $e) {
         throw $e;
     }
     return XePresenter::makeApi(['type' => 'success', 'message' => $message, 'displayName' => $name, 'valid' => $valid]);
 }