public function __construct()
 {
     parent::__construct();
     $this->presenter = new ManageReservationsPresenter($this, new GroupAdminManageReservationsService(new ReservationViewRepository(), new UserRepository(), new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization())), new ScheduleRepository(), new ResourceRepository(), new AttributeService(new AttributeRepository()), new UserPreferenceRepository());
     $this->SetCanUpdateResourceStatus(false);
     $this->SetPageId('manage-reservations-group-admin');
 }
 /**
  * @param IReservationViewRepository $reservationViewRepository
  * @param IReservationAuthorization $authorization
  * @param IReservationHandler $reservationHandler
  * @param IUpdateReservationPersistenceService $persistenceService
  */
 public function __construct(IReservationViewRepository $reservationViewRepository, $authorization = null, $reservationHandler = null, $persistenceService = null)
 {
     $this->reservationViewRepository = $reservationViewRepository;
     $this->reservationAuthorization = $authorization == null ? new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization()) : $authorization;
     $this->persistenceService = $persistenceService == null ? new UpdateReservationPersistenceService(new ReservationRepository()) : $persistenceService;
     $this->reservationHandler = $reservationHandler == null ? ReservationHandler::Create(ReservationAction::Update, $this->persistenceService, ServiceLocator::GetServer()->GetUserSession()) : $reservationHandler;
 }
Exemple #3
0
 /**
  *
  * @param $reservationAuthorization IReservationAuthorization
  */
 public function __construct($reservationAuthorization = null)
 {
     $this->reservationAuthorization = $reservationAuthorization;
     if (is_null($this->reservationAuthorization)) {
         $this->reservationAuthorization = new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization());
     }
 }
 public function __construct()
 {
     parent::__construct();
     $userRepository = new UserRepository();
     $this->presenter = new ManageReservationsPresenter($this, new ScheduleAdminManageReservationsService(new ReservationViewRepository(), $userRepository, new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization())), new ScheduleAdminScheduleRepository($userRepository, ServiceLocator::GetServer()->GetUserSession()), new ResourceAdminResourceRepository($userRepository, ServiceLocator::GetServer()->GetUserSession()), new AttributeService(new AttributeRepository()), new UserPreferenceRepository());
     $this->SetPageId('manage-reservations-schedule-admin');
 }
Exemple #5
0
 /**
  * @param IWebAuthentication $authentication
  */
 private function SetAuthentication($authentication)
 {
     if (is_null($authentication)) {
         $this->authentication = new WebAuthentication(PluginManager::Instance()->LoadAuthentication(), ServiceLocator::GetServer());
     } else {
         $this->authentication = $authentication;
     }
 }
 public function __construct()
 {
     $authorization = new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization());
     $service = new CalendarSubscriptionService(new UserRepository(), new ResourceRepository(), new ScheduleRepository());
     $subscriptionValidator = new CalendarSubscriptionValidator($this, $service);
     $this->presenter = new CalendarSubscriptionPresenter($this, new ReservationViewRepository(), $subscriptionValidator, $service, new PrivacyFilter($authorization));
     parent::__construct('', 1);
 }
 /**
  * @param IReservationApprovalPage $approvePage
  * @param UserSession $userSession
  * @return ReservationApprovalPresenter
  */
 public function Approve(IReservationApprovalPage $approvePage, UserSession $userSession)
 {
     $persistenceFactory = new ReservationPersistenceFactory();
     $approveAction = ReservationAction::Approve;
     $handler = ReservationHandler::Create($approveAction, $persistenceFactory->Create($approveAction), $userSession);
     $auth = new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization());
     return new ReservationApprovalPresenter($approvePage, $persistenceFactory->Create($approveAction), $handler, $auth, $userSession);
 }
 public function __construct()
 {
     parent::__construct('MyCalendar', 0);
     $userRepository = new UserRepository();
     $subscriptionService = new CalendarSubscriptionService($userRepository, new ResourceRepository(), new ScheduleRepository());
     $resourceRepository = new ResourceRepository();
     $resourceService = new ResourceService($resourceRepository, PluginManager::Instance()->LoadPermission(), new AttributeService(new AttributeRepository()), $userRepository);
     $this->presenter = new PersonalCalendarPresenter($this, new ReservationViewRepository(), new CalendarFactory(), $subscriptionService, $userRepository, $resourceService, new ScheduleRepository());
 }
Exemple #9
0
 public function __construct()
 {
     parent::__construct('ResourceCalendar');
     $resourceRepository = new ResourceRepository();
     $scheduleRepository = new ScheduleRepository();
     $userRepository = new UserRepository();
     $resourceService = new ResourceService($resourceRepository, PluginManager::Instance()->LoadPermission(), new AttributeService(new AttributeRepository()), $userRepository);
     $subscriptionService = new CalendarSubscriptionService($userRepository, $resourceRepository, $scheduleRepository);
     $privacyFilter = new PrivacyFilter(new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization()));
     $this->_presenter = new CalendarPresenter($this, new CalendarFactory(), new ReservationViewRepository(), $scheduleRepository, $resourceService, $subscriptionService, $privacyFilter);
 }
Exemple #10
0
 public function PageLoad()
 {
     if (Configuration::Instance()->GetKey(ConfigKeys::DISABLE_PASSWORD_RESET, new BooleanConverter()) || !PluginManager::Instance()->LoadAuthentication()->ShowForgotPasswordPrompt()) {
         $this->_page->SetEnabled(false);
         return;
     }
     if ($this->_page->ResetClicked()) {
         $this->SendRandomPassword();
         $this->_page->ShowResetEmailSent(true);
     }
 }
Exemple #11
0
 public function __construct($user = null, $privacyFilter = null, $attributeRepository = null)
 {
     $this->user = $user;
     if ($this->user == null) {
         $this->user = ServiceLocator::GetServer()->GetUserSession();
     }
     $this->privacyFilter = $privacyFilter;
     if ($this->privacyFilter == null) {
         $this->privacyFilter = new PrivacyFilter(new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization()));
     }
     $this->attributeRepository = $attributeRepository;
     if ($this->attributeRepository == null) {
         $this->attributeRepository = new AttributeRepository();
     }
 }
Exemple #12
0
 public function PageLoad()
 {
     $this->page->SetAllowedActions(PluginManager::Instance()->LoadAuthentication());
     if ($this->page->ResettingPassword()) {
         $this->LoadValidators();
         if ($this->page->IsValid()) {
             $user = $this->GetUser();
             $password = $this->page->GetPassword();
             $encrypted = $this->passwordEncryption->EncryptPassword($password);
             $user->ChangePassword($encrypted->EncryptedPassword(), $encrypted->Salt());
             $this->userRepository->Update($user);
             $this->page->ShowResetPasswordSuccess(true);
         }
     }
 }
 public function PageLoad()
 {
     try {
         $reservationAction = ReservationAction::Approve;
         $factory = new ReservationPersistenceFactory();
         $persistenceService = $factory->Create($reservationAction);
         $handler = ReservationHandler::Create($reservationAction, $persistenceService, ServiceLocator::GetServer()->GetUserSession());
         $auth = new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization());
         $presenter = new ReservationApprovalPresenter($this, $persistenceService, $handler, $auth, ServiceLocator::GetServer()->GetUserSession());
         $presenter->PageLoad();
     } catch (Exception $ex) {
         Log::Error('ReservationApprovalPage - Critical error saving reservation: %s', $ex);
         $this->Display('Ajax/reservation/reservation_error.tpl');
     }
 }
Exemple #14
0
 public function PageLoad()
 {
     $userSession = ServiceLocator::GetServer()->GetUserSession();
     Log::Debug('ProfilePresenter loading user %s', $userSession->UserId);
     $user = $this->userRepository->LoadById($userSession->UserId);
     $this->page->SetUsername($user->Username());
     $this->page->SetFirstName($user->FirstName());
     $this->page->SetLastName($user->LastName());
     $this->page->SetEmail($user->EmailAddress());
     $this->page->SetTimezone($user->Timezone());
     $this->page->SetHomepage($user->Homepage());
     $this->page->SetPhone($user->GetAttribute(UserAttribute::Phone));
     $this->page->SetOrganization($user->GetAttribute(UserAttribute::Organization));
     $this->page->SetPosition($user->GetAttribute(UserAttribute::Position));
     $userId = $userSession->UserId;
     $attributes = $this->attributeService->GetAttributes(CustomAttributeCategory::USER, $userId);
     $this->page->SetAttributes($attributes->GetAttributes($userId));
     $this->PopulateTimezones();
     $this->PopulateHomepages();
     $this->page->SetAllowedActions(PluginManager::Instance()->LoadAuthentication());
 }
Exemple #15
0
 public function __construct()
 {
     parent::__construct('AccountActivation');
     $userRepo = new UserRepository();
     $this->_presenter = new ActivationPresenter($this, new AccountActivation($userRepo, $userRepo), new WebAuthentication(PluginManager::Instance()->LoadAuthentication()));
 }
 public function __construct()
 {
     parent::__construct();
     $this->_presenter = new ReservationPopupPresenter($this, new ReservationViewRepository(), new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization()), new AttributeService(new AttributeRepository()));
 }
Exemple #17
0
function RegisterReservations(SlimServer $server, SlimWebServiceRegistry $registry)
{
    $readService = new ReservationsWebService($server, new ReservationViewRepository(), new PrivacyFilter(new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization())), new AttributeService(new AttributeRepository()));
    $writeService = new ReservationWriteWebService($server, new ReservationSaveController(new ReservationPresenterFactory()));
    $category = new SlimWebServiceRegistryCategory('Reservations');
    $category->AddSecurePost('/', array($writeService, 'Create'), WebServices::CreateReservation);
    $category->AddSecureGet('/', array($readService, 'GetReservations'), WebServices::AllReservations);
    $category->AddSecureGet('/:referenceNumber', array($readService, 'GetReservation'), WebServices::GetReservation);
    $category->AddSecurePost('/:referenceNumber', array($writeService, 'Update'), WebServices::UpdateReservation);
    $category->AddSecurePost('/:referenceNumber/Approval', array($writeService, 'Approve'), WebServices::ApproveReservation);
    $category->AddSecureDelete('/:referenceNumber', array($writeService, 'Delete'), WebServices::DeleteReservation);
    $registry->AddCategory($category);
}
 /**
  * @return IPermissionService
  */
 public function GetPermissionService()
 {
     return PluginManager::Instance()->LoadPermission();
 }
 public function __construct(SmartyPage $smarty)
 {
     parent::__construct($smarty);
     $this->presenter = new ResourceAvailabilityControlPresenter($this, new ResourceService(new ResourceRepository(), PluginManager::Instance()->LoadPermission(), new AttributeService(new AttributeRepository()), new UserRepository()), new ReservationViewRepository());
 }
Exemple #20
0
 public function __construct()
 {
     $authorization = new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization());
     $this->presenter = new CalendarExportPresenter($this, new ReservationViewRepository(), new NullCalendarExportValidator(), new PrivacyFilter($authorization));
     parent::__construct('', 1);
 }
 /**
  * @return IAuthorizationService
  */
 public static function GetAuthorizationService()
 {
     return PluginManager::Instance()->LoadAuthorization();
 }
Exemple #22
0
 public function testAuthRealLdap()
 {
     require_once ROOT_DIR . 'plugins/Authentication/Ldap/namespace.php';
     $ldap = new Ldap(PluginManager::Instance()->LoadAuthentication());
     $ldap->Validate('riemann', 'password');
 }
Exemple #23
0
function RegisterSchedules(SlimServer $server, SlimWebServiceRegistry $registry)
{
    $webService = new SchedulesWebService($server, new ScheduleRepository(), new PrivacyFilter(new ReservationAuthorization(PluginManager::Instance()->LoadAuthorization())));
    $category = new SlimWebServiceRegistryCategory('Schedules');
    $category->AddSecureGet('/', array($webService, 'GetSchedules'), WebServices::AllSchedules);
    $category->AddSecureGet('/:scheduleId', array($webService, 'GetSchedule'), WebServices::GetSchedule);
    $category->AddSecureGet('/:scheduleId/Slots', array($webService, 'GetSlots'), WebServices::GetScheduleSlots);
    $registry->AddCategory($category);
}
 private function CreateUpdateService(ReservationValidationRuleProcessor $ruleProcessor, UserSession $userSession)
 {
     if (Configuration::Instance()->GetSectionKey(ConfigSection::RESERVATION, ConfigKeys::RESERVATION_UPDATES_REQUIRE_APPROVAL, new BooleanConverter())) {
         $ruleProcessor->AddRule(new AdminExcludedRule(new RequiresApprovalRule(PluginManager::Instance()->LoadAuthorization()), $userSession, $this->userRepository));
         $ruleProcessor->AddRule(new AdminExcludedRule(new CurrentUserIsReservationUserRule($userSession), $userSession, $this->userRepository));
     }
     return new UpdateReservationValidationService($ruleProcessor);
 }
 private function CreateUpdateService($userSession)
 {
     $factory = PluginManager::Instance()->LoadPostReservation();
     return $factory->CreatePostUpdateService($userSession);
 }
 public function testPostRegistrationPlugin()
 {
     $this->fakeConfig->SetSectionKey(ConfigSection::PLUGINS, ConfigKeys::PLUGIN_POSTREGISTRATION, 'foo');
     $plugin = PluginManager::Instance()->LoadPostRegistration();
     $this->assertEquals('PostRegistration', get_class($plugin));
 }
 private function CreateDeleteService(UserSession $userSession)
 {
     $factory = PluginManager::Instance()->LoadPreReservation();
     return $factory->CreatePreDeleteService($userSession);
 }
 public function Register()
 {
     $additionalFields = array('phone' => $this->page->GetPhone(), 'organization' => $this->page->GetOrganization(), 'position' => $this->page->GetPosition());
     $language = Resources::GetInstance()->CurrentLanguage;
     $user = $this->registration->Register($this->page->GetLoginName(), $this->page->GetEmail(), $this->page->GetFirstName(), $this->page->GetLastName(), $this->page->GetPassword(), $this->page->GetTimezone(), $language, intval($this->page->GetHomepage()), $additionalFields, $this->GetAttributeValues());
     $context = new WebLoginContext(new LoginData(false, $language));
     $plugin = PluginManager::Instance()->LoadPostRegistration();
     $plugin->HandleSelfRegistration($user, $this->page, $context);
 }
 public function PageLoad()
 {
     $this->presenter = new ReservationAttachmentPresenter($this, new ReservationRepository(), PluginManager::Instance()->LoadPermission());
     $this->presenter->PageLoad(ServiceLocator::GetServer()->GetUserSession());
 }