コード例 #1
0
 function calendar($year, $month, Application $app)
 {
     $cal = new \RenderCalendar();
     $cal->getEventRepositoryBuilder()->setSite($app['currentSite']);
     $cal->getEventRepositoryBuilder()->setIncludeDeleted(false);
     if ($app['currentUser']) {
         $cal->getEventRepositoryBuilder()->setUserAccount($app['currentUser'], true);
     }
     $cal->byMonth($year, $month, true);
     list($prevYear, $prevMonth, $nextYear, $nextMonth) = $cal->getPrevNextLinksByMonth();
     return $app['twig']->render('/site/calendarPage.html.twig', array('calendar' => $cal, 'prevYear' => $prevYear, 'prevMonth' => $prevMonth, 'nextYear' => $nextYear, 'nextMonth' => $nextMonth, 'pageTitle' => 'Calendar', 'showCurrentUserOptions' => true));
 }
コード例 #2
0
 public function buildEvents(Application $app)
 {
     global $CONFIG;
     $repo = new SiteRepository();
     $site = $repo->loadById($this->site_id);
     $start = \TimeSource::getDateTime();
     $end = \TimeSource::getDateTime();
     $end->add(new \DateInterval("P" . ($this->days_into_future + 1) . "D"));
     $calendar = new \RenderCalendar();
     $calendar->setStartAndEnd($start, $end);
     $calendar->getEventRepositoryBuilder()->setSite($site);
     $calendar->getEventRepositoryBuilder()->setIncludeDeleted(true);
     $calData = $calendar->getData();
     $this->events = $calendar->getEvents();
     $this->event_text = $app['twig']->render('email/sendemail.eventview.calendar.txt.twig', array('data' => $calData, 'currentSite' => $site));
     if ($CONFIG->isDebug) {
         file_put_contents('/tmp/sendemail.eventview.calendar.txt', $this->event_text);
     }
     $this->event_html = $app['twig']->render('email/sendemail.eventview.calendar.html.twig', array('data' => $calData, 'currentSite' => $site));
     if ($CONFIG->isDebug) {
         file_put_contents('/tmp/sendemail.eventview.calendar.html', $this->event_html);
     }
 }
コード例 #3
0
    $configDataDir = getcwd() . '/' . dirname($argv[1]);
}
$thisconfig = new IniConfigWithEnvironment($environment, $argv[1]);
foreach (array('SiteID', 'Subject', 'FromEmail', 'FromName', 'TimeZone', 'IntroTXTFile', 'IntroHTMLFile') as $key) {
    if (!$thisconfig->hasValue($key)) {
        die("NO CONFIG " . $key . " ?\n");
    }
}
// ######################################################### Load site, build query
$siteRepository = new SiteRepository();
$site = $siteRepository->loadById($thisconfig->get('SiteID'));
if (!$site) {
    die("NO SITE?\n");
}
$calendar = new \RenderCalendar();
$calendar->getEventRepositoryBuilder()->setSite($site);
$calendar->getEventRepositoryBuilder()->setIncludeDeleted(false);
// ######################################################### Set Start and End
$start = \TimeSource::getDateTime();
$start->setTime(0, 0, 0);
$end = \TimeSource::getDateTime();
$end->setTime(0, 0, 0);
if ($thisconfig->hasValue("Month") && $thisconfig->hasValue("Year")) {
    // Options for setting end; by a set month and year
    if ($thisconfig->get('Month') == 12) {
        $end->setDate($thisconfig->get('Year') + 1, 1, 1);
    } else {
        $end->setDate($thisconfig->get('Year'), $thisconfig->get('Month') + 1, 1);
    }
    $end->sub(new \DateInterval('PT1S'));
} else {
 function calendar($year, $month, Application $app)
 {
     $cal = new \RenderCalendar();
     $params = new EventFilterParams($cal->getEventRepositoryBuilder());
     $params->setHasDateControls(false);
     $params->setSpecifiedUserControls(true, $app['currentUser'], true);
     $params->set($_GET);
     $cal->byMonth($year, $month, true);
     list($prevYear, $prevMonth, $nextYear, $nextMonth) = $cal->getPrevNextLinksByMonth();
     return $app['twig']->render('/index/currentuser/calendar.html.twig', array('calendar' => $cal, 'eventListFilterParams' => $params, 'prevYear' => $prevYear, 'prevMonth' => $prevMonth, 'nextYear' => $nextYear, 'nextMonth' => $nextMonth, 'showCurrentUserOptions' => true));
 }