public function deleteWidgetHomeTabConfig(WidgetHomeTabConfig $widgetHomeTabConfig) { $widgetOrder = $widgetHomeTabConfig->getWidgetOrder(); $homeTab = $widgetHomeTabConfig->getHomeTab(); $user = $widgetHomeTabConfig->getUser(); $workspace = $widgetHomeTabConfig->getWorkspace(); if (is_null($user) && is_null($workspace)) { $this->widgetHomeTabConfigRepo->updateAdminWidgetHomeTabConfig($homeTab, $widgetOrder); } elseif (is_null($workspace)) { $this->widgetHomeTabConfigRepo->updateWidgetHomeTabConfigByUser($homeTab, $widgetOrder, $user); } else { $this->widgetHomeTabConfigRepo->updateWidgetHomeTabConfigByWorkspace($homeTab, $widgetOrder, $workspace); } $this->om->remove($widgetHomeTabConfig); $this->om->flush(); }
private function checkWidgetHomeTabConfigEdition(User $authenticatedUser, WidgetHomeTabConfig $whtc) { $user = $whtc->getUser(); if ($authenticatedUser !== $user) { throw new AccessDeniedException(); } }
private function checkAdminAccessForWidgetHomeTabConfig(WidgetHomeTabConfig $whtc) { if ($whtc->getType() !== 'admin' || !is_null($whtc->getUser()) || !is_null($whtc->getWorkspace())) { throw new AccessDeniedException(); } }
private function checkUserAccessForWidgetHomeTabConfig(WidgetHomeTabConfig $widgetHomeTabConfig, User $user) { $widgetHomeTabConfigUser = $widgetHomeTabConfig->getUser(); if ($widgetHomeTabConfig->getType() !== 'desktop' && $widgetHomeTabConfig->getType() !== 'admin_desktop' || is_null($widgetHomeTabConfigUser) || $widgetHomeTabConfigUser->getId() !== $user->getId()) { throw new AccessDeniedException(); } }