| @@ 237-253 (lines=17) @@ | ||
| 234 | * |
|
| 235 | * @throws \Exception |
|
| 236 | */ |
|
| 237 | private function editGroupLevel(Circle $circle, Member &$group, $level) { |
|
| 238 | try { |
|
| 239 | $isMod = $circle->getHigherViewer(); |
|
| 240 | $this->circlesService->hasToBeAdmin($isMod); |
|
| 241 | $isMod->hasToBeHigherLevel($level); |
|
| 242 | ||
| 243 | $group->hasToBeMember(); |
|
| 244 | $group->cantBeOwner(); |
|
| 245 | $isMod->hasToBeHigherLevel($group->getLevel()); |
|
| 246 | ||
| 247 | $group->setLevel($level); |
|
| 248 | $this->membersRequest->updateGroup($group); |
|
| 249 | ||
| 250 | } catch (\Exception $e) { |
|
| 251 | throw $e; |
|
| 252 | } |
|
| 253 | } |
|
| 254 | ||
| 255 | ||
| 256 | /** |
|
| @@ 507-523 (lines=17) @@ | ||
| 504 | * |
|
| 505 | * @throws Exception |
|
| 506 | */ |
|
| 507 | private function editMemberLevel(Circle $circle, Member &$member, $level) { |
|
| 508 | try { |
|
| 509 | $isMod = $circle->getHigherViewer(); |
|
| 510 | $isMod->hasToBeModerator(); |
|
| 511 | $isMod->hasToBeHigherLevel($level); |
|
| 512 | ||
| 513 | $member->hasToBeMember(); |
|
| 514 | $member->cantBeOwner(); |
|
| 515 | $isMod->hasToBeHigherLevel($member->getLevel()); |
|
| 516 | ||
| 517 | $member->setLevel($level); |
|
| 518 | $this->membersRequest->updateMember($member); |
|
| 519 | } catch (Exception $e) { |
|
| 520 | throw $e; |
|
| 521 | } |
|
| 522 | ||
| 523 | } |
|
| 524 | ||
| 525 | /** |
|
| 526 | * @param Circle $circle |
|