idNextcloud = $UserId; $this->myDb = $myDb; $this->urlGenerator = $urlGenerator; $this->mailer = $mailer; $this->config = $config; $this->navigationService = $navigationService; $this->configurationService = $configurationService; $this->logger = $logger; $this->providerService = $providerService; $this->providerStatisticService = $providerStatisticService; if ($userSession->isLoggedIn()) { $this->user = $userSession->getUser(); } if ($this->user != null) { $groups = $groupManager->getUserGroups($this->user); $this->groups = []; foreach ($groups as $group) { $this->groups[] = $group->getGID(); } } try{ $this->storage = $rootFolder->getUserFolder($this->idNextcloud); }catch(\OC\User\NoUserException $e){ } } /** * @NoAdminRequired * @NoCSRFRequired */ public function provider() { return new TemplateResponse('gestion', 'provider', array('groups' => $this->groups, 'user' => $this->user, 'path' => $this->idNextcloud, 'url' => $this->navigationService->getNavigationLink())); } /** * @NoAdminRequired * @NoCSRFRequired */ public function getProviders() { $providers = $this->providerService->getProvidersAsArray(); return json_encode($providers); } /** * @NoAdminRequired * @NoCSRFRequired */ public function createDefaultProvider() { try{ $this->providerService->createDefaultProvider($this->idNextcloud); return true; } catch(Exception $e){ return null; } } /** * @NoAdminRequired * @NoCSRFRequired */ public function exportProvidersStatistic(array $providerIds,$year){ try{ $filenames = $this->providerStatisticService->exportProvidersStatisticByYear($providerIds,$year,$this->idNextcloud); return $filenames; } catch(Exception $e){ return []; } } }