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; }
/** * 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); }