Xpressengine\User\Rating::getUsableAll PHP Method

getUsableAll() public static method

guest 는 비회원 상태이므로 배제시킴
public static getUsableAll ( ) : array
return array
    public static function getUsableAll()
    {
        return array_diff(static::$ratings, [static::GUEST]);
    }

Usage Example

コード例 #1
0
 /**
  * show user editing page
  *
  * @param $id
  *
  * @return \Xpressengine\Presenter\RendererInterface
  */
 public function edit($id)
 {
     $user = $this->handler->users()->with('groups', 'emails', 'accounts')->find($id);
     if ($user === null) {
         $e = new InvalidArgumentHttpException();
         $e->setMessage('존재하지 않는 회원입니다.');
         throw $e;
     }
     $ratings = Rating::getUsableAll();
     $ratingNames = ['member' => xe_trans('xe::memberRatingNormal'), 'manager' => xe_trans('xe::memberRatingManager'), 'super' => xe_trans('xe::memberRatingAdministrator')];
     foreach ($ratings as $key => $rating) {
         $ratings[$key] = ['value' => $rating, 'text' => $ratingNames[$rating]];
         if ($rating === $user->rating) {
             $ratings[$key]['selected'] = 'selected';
         }
     }
     $groupList = $this->handler->groups()->all();
     $groups = $this->getGroupInfo($groupList);
     foreach ($user->groups as $group) {
         $groups[$group->id]['checked'] = 'checked';
     }
     $status = [\XeUser::STATUS_ACTIVATED => ['value' => \XeUser::STATUS_ACTIVATED, 'text' => xe_trans('xe::permitted')], \XeUser::STATUS_DENIED => ['value' => \XeUser::STATUS_DENIED, 'text' => xe_trans('xe::rejected')]];
     $status[$user->status]['selected'] = 'selected';
     // profileImage config
     $profileImgSize = config('xe.user.profileImage.size');
     // dynamic field
     $dynamicField = app('xe.dynamicField');
     $fieldTypes = $dynamicField->gets('user');
     $defaultAccount = null;
     if (isset($user->accounts)) {
         foreach ($user->accounts as $account) {
             if ($account->provider === \XeUser::PROVIDER_DEFAULT) {
                 $defaultAccount = $account;
             }
         }
     }
     return XePresenter::make('member.settings.member.edit', compact('user', 'ratings', 'groups', 'status', 'defaultAccount', 'fieldTypes', 'profileImgSize'));
 }