public static function createSavedCalendarSubscription($name, $color, $user)
 {
     $savedCalendars = SavedCalendar::getByName($name);
     $savedCalendarSubscription = new SavedCalendarSubscription();
     $savedCalendarSubscription->user = $user;
     $savedCalendarSubscription->savedcalendar = $savedCalendars[0];
     $savedCalendarSubscription->color = $color;
     assert($savedCalendarSubscription->save());
     // Not Coding Standard
     return $savedCalendarSubscription;
 }
 public function testMeetingsThanSpanForMoreThanOneMonth()
 {
     $savedCalendars = SavedCalendar::getByName('aSavedCalendar');
     $savedCalendar = $savedCalendars[0];
     $meetings = Meeting::getByName('aMeeting');
     $meeting = $meetings[0];
     $meeting->startDateTime = '2014-04-29 01:00:00';
     $meeting->endDateTime = '2014-05-09 01:00:00';
     $this->assertTrue($meeting->save());
     $savedCalendarSubscriptions = SavedCalendarSubscriptions::makeByUser($this->super, (string) $savedCalendar->id);
     $dataProvider = new CalendarItemsDataProvider($savedCalendarSubscriptions, array('startDate' => '2014-05-01 01:00:00', 'endDate' => '2014-05-31 01:00:00', 'dateRangeType' => SavedCalendar::DATERANGE_TYPE_MONTH));
     $data = $dataProvider->getData();
     $this->assertCount(1, $data);
     $this->assertEquals('aMeeting', $data[0]->getTitle());
     $meeting->startDateTime = '2014-04-29 01:00:00';
     $meeting->endDateTime = '2014-06-09 01:00:00';
     $this->assertTrue($meeting->save());
     $savedCalendarSubscriptions = SavedCalendarSubscriptions::makeByUser($this->super, (string) $savedCalendar->id);
     $dataProvider = new CalendarItemsDataProvider($savedCalendarSubscriptions, array('startDate' => '2014-05-01 01:00:00', 'endDate' => '2014-05-31 01:00:00', 'dateRangeType' => SavedCalendar::DATERANGE_TYPE_MONTH));
     $data = $dataProvider->getData();
     $this->assertCount(1, $data);
     $this->assertEquals('aMeeting', $data[0]->getTitle());
     $meeting->startDateTime = '2014-05-29 01:00:00';
     $meeting->endDateTime = '2014-06-09 01:00:00';
     $this->assertTrue($meeting->save());
     $savedCalendarSubscriptions = SavedCalendarSubscriptions::makeByUser($this->super, (string) $savedCalendar->id);
     $dataProvider = new CalendarItemsDataProvider($savedCalendarSubscriptions, array('startDate' => '2014-05-01 01:00:00', 'endDate' => '2014-05-31 01:00:00', 'dateRangeType' => SavedCalendar::DATERANGE_TYPE_MONTH));
     $data = $dataProvider->getData();
     $this->assertCount(1, $data);
     $this->assertEquals('aMeeting', $data[0]->getTitle());
     //Meeting start and ends before calendar start/end dates
     $savedCalendarSubscriptions = SavedCalendarSubscriptions::makeByUser($this->super, (string) $savedCalendar->id);
     $dataProvider = new CalendarItemsDataProvider($savedCalendarSubscriptions, array('startDate' => '2014-07-01 01:00:00', 'endDate' => '2014-08-31 01:00:00', 'dateRangeType' => SavedCalendar::DATERANGE_TYPE_MONTH));
     $data = $dataProvider->getData();
     $this->assertCount(0, $data);
     //Meeting start and ends after calendar start/end dates
     $savedCalendarSubscriptions = SavedCalendarSubscriptions::makeByUser($this->super, (string) $savedCalendar->id);
     $dataProvider = new CalendarItemsDataProvider($savedCalendarSubscriptions, array('startDate' => '2014-01-01 01:00:00', 'endDate' => '2014-03-31 01:00:00', 'dateRangeType' => SavedCalendar::DATERANGE_TYPE_MONTH));
     $data = $dataProvider->getData();
     $this->assertCount(0, $data);
 }
 /**
  * Get calendar name.
  * @param array $data
  * @return string
  */
 public static function getCalendarName($data)
 {
     $calId = $data['calendarId'];
     $savedCalendar = SavedCalendar::getById($calId);
     return strval($savedCalendar);
 }
 /**
  * Add subscription for calendar.
  * @param int $id
  */
 public function actionAddSubsriptionForCalendar($id)
 {
     $savedCalendar = SavedCalendar::getById(intval($id));
     $user = Yii::app()->user->userModel;
     $savedCalendarSubscription = new SavedCalendarSubscription();
     $savedCalendarSubscription->user = $user;
     $savedCalendarSubscription->savedcalendar = $savedCalendar;
     $savedCalendarSubscription->save();
     $dataProvider = CalendarUtil::getCalendarItemsDataProvider($user);
     $savedCalendarSubscriptions = $dataProvider->getSavedCalendarSubscriptions();
     $content = CalendarUtil::makeCalendarItemsList($savedCalendarSubscriptions->getSubscribedToSavedCalendarsAndSelected(), 'sharedcalendar[]', 'sharedcalendar', 'shared');
     echo $content;
 }
Example #5
0
 /**
  * Populate saved calendar module.
  *
  * @param User $user
  * @param string $name
  * @param string $moduleClassName
  * @param string $startAttributeName
  * @param string $endAttributeName
  */
 public static function populateSavedCalendar(User $user, $name, $moduleClassName, $startAttributeName, $endAttributeName = '')
 {
     $savedCalendar = new SavedCalendar();
     $savedCalendar->name = $name;
     $savedCalendar->timeZone = $user->timeZone;
     $savedCalendar->location = 'Chicago';
     $savedCalendar->moduleClassName = $moduleClassName;
     $savedCalendar->startAttributeName = $startAttributeName;
     $savedCalendar->endAttributeName = $endAttributeName;
     assert($savedCalendar->save());
     // Not Coding Standard
     CalendarUtil::setMyCalendarColor($savedCalendar, $user);
     $filtersData = array('filtersStructure' => '1', 'Filters' => array(array('attributeIndexOrDerivedType' => 'owner__User', 'structurePosition' => '1', 'operator' => 'equals', 'value' => $user->id, 'stringifiedModelForValue' => strval($user), 'availableAtRunTime' => '0')));
     CalendarUtil::populateFiltersDataInModel($savedCalendar, $filtersData);
     assert($savedCalendar->save());
     // Not Coding Standard
     return $savedCalendar;
 }
 public function testGetAllWhenThereAreNone()
 {
     Yii::app()->user->userModel = User::getByUsername('super');
     $savedCalendars = SavedCalendar::getAll();
     $this->assertEquals(0, count($savedCalendars));
 }
 public function testSuperUserDeleteAction()
 {
     $super = $this->logoutCurrentUserLoginNewUserAndGetByUsername('super');
     Yii::app()->user->userModel = $super;
     $calendar = CalendarTestHelper::createSavedCalendarByName("My Cal 3", '#66367b');
     //Delete a calendar
     $this->setGetArray(array('id' => $calendar->id));
     $this->resetPostArray();
     $calendars = SavedCalendar::getAll();
     $this->assertEquals(4, count($calendars));
     $this->runControllerWithNoExceptionsAndGetContent('calendars/default/delete');
     $calendars = SavedCalendar::getAll();
     $this->assertEquals(3, count($calendars));
     try {
         SavedCalendar::getById($calendar->id);
         $this->fail();
     } catch (NotFoundException $e) {
         //success
     }
 }
 public function testGetUsersSubscribedForCalendar()
 {
     $user = UserTestHelper::createBasicUser('sam');
     $savedCalendarSubscription = CalendarTestHelper::createSavedCalendarSubscription('Test Cal New', '#66367b', $user);
     $savedCalendar = SavedCalendar::getByName('Test Cal New');
     $subscribedUsers = CalendarUtil::getUsersSubscribedForCalendar($savedCalendar[0]);
     $this->assertCount(2, $subscribedUsers);
 }