guest 는 비회원 상태이므로 배제시킴
public static getUsableAll ( ) : array | ||
return | array |
/** * 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')); }