Example #1
0
    public function testDescription()
    {
        $event = new Event();

        $this->assertNull($event->getDescription());

        $event->setDescription('...Or try the sun');
        $this->assertEquals('...Or try the sun', $event->getDescription());
    }
Example #2
0
            if (date('Y-m-d', strtotime($event->getRemindMeTime())) == date('Y-m-d', strtotime($event->getStartDateTime()))) {
                echo date('H:i', strtotime($event->getRemindMeTime()));
            } else {
                echo $event->getRemindMeTime();
            }
            echo ' ';
        }
        echo '<i class="fa fa-clock-o"></i> ';
        if ($event->getAllDay() == '1') {
            echo "all day";
        } else {
            echo $start_time . '-' . $end_time;
        }
        echo '</small>';
        echo '&nbsp;<i class="fa fa-info-circle"></i> ';
        echo $event->getDescription() . ' <small><a href="/edit_evt.php?id=' . $event->getId() . '">edit</a>';
        if ($event->getUserId() == Authentication::get_user() || PermissionMgr::groupHasPermission(Authentication::getUserObject()->getGroupId(), 'is_administrator')) {
            echo '&nbsp;<a href="#" onclick="deleteEvt(' . $event->getId() . ', \'' . htmlspecialchars($event->getDescription()) . '\')">delete</a>';
        }
        echo '</small></h5>';
        $number += 1;
    }
    if ($number == 0) {
        echo '<i>No events on this date.</i>';
    }
    $date = date("Y-m-d", strtotime("+1 day", strtotime($date)));
    echo '<hr>';
}
?>
     
	
Example #3
0
function js_hover(Event $aterm)
{
    global $user;

    $jscript_text = '<b>' . _("Zusammenfassung:") . ' </b>'
            . htmlReady($aterm->getTitle()) . '<hr>';

    if ($aterm instanceof SeminarEvent || $aterm instanceof SeminarCalendarEvent) {
        $jscript_text .= '<b>' . _("Veranstaltung:") . ' </b> '
                . htmlReady($aterm->getSemName()) . '<br>';
    }
    if ($aterm->getDescription()) {
        $jscript_text .= '<b>' . _("Beschreibung:") . ' </b> '
                . htmlReady(mila($aterm->getDescription(), 300)) . '<br>';
    }
    if ($categories = $aterm->toStringCategories()) {
        $jscript_text .= '<b>' . _("Kategorie:") . ' </b> '
                . htmlReady($categories) . '<br>';
    }
    if ($aterm->getLocation()) {
        $jscript_text .= '<b>' . _("Ort:") . ' </b> '
                . htmlReady($aterm->getLocation()) . '<br>';
    }
    if (!($aterm instanceof SeminarEvent)) {
        if ($aterm->toStringPriority()) {
            $jscript_text .= '<b>' . _("Priorität:") . ' </b>'
                    . htmlReady($aterm->toStringPriority()) . '<br>';
        }
        $jscript_text .= '<b>' . _("Zugriff:") . ' </b>'
                . htmlReady($aterm->toStringAccessibility()) . '<br>';
        $jscript_text .= '<b>' . _("Wiederholung:") . ' </b>'
                . htmlReady($aterm->toStringRecurrence()) . '<br>';
        
        if (get_config('CALENDAR_GROUP_ENABLE')) {
            $jscript_text .= sprintf(_('<span style="font-weight: bold;">Eingetragen am:</span> %s von %s'),
                strftime('%x, %X', $aterm->getMakeDate()),
                    htmlReady(get_fullname($aterm->getAuthorId(), 'no_title')))
                . '<br>';
            if ($aterm->getMakeDate() < $aterm->getChangeDate()) {
                $jscript_text .= sprintf(_('<span style="font-weight: bold;">Zuletzt bearbeitet am:</span> %s von %s'),
                    strftime('%x, %X', $aterm->getChangeDate()),
                        htmlReady(get_fullname($aterm->getEditorId(), 'no_title')))
                    . '<br>';
            }
        } else {
            $jscript_text .= sprintf(_('<span style="font-weight: bold;">Eingetragen am:</span> %s'),
                    strftime('%x, %X', $aterm->getMakeDate())) . '<br>';
            if ($aterm->getMakeDate() < $aterm->getChangeDate()) {
                $jscript_text .= sprintf(_('<span style="font-weight: bold;">Zuletzt bearbeitet am:</span> %s'),
                    strftime('%x, %X', $aterm->getChangeDate())) . '<br>';
            }
        }
    } else {
        // related groups
        $related_groups = $aterm->getRelatedGroups();
        if (sizeof($related_groups)) {
            $jscript_text .= '<b>' . _("Betroffene Gruppen:") . ' </b>'
                    . htmlReady(implode(', ', array_map(
                            function ($group) { return $group->name; },
                            $related_groups))) . '<br>';
        }
    }
    
    $jscript_text .= '<br>';

    return " onmouseover=\"STUDIP.CalendarDialog.openCalendarHover('" . JSReady($aterm->toStringDate('SHORT_DAY'), 'inline-single') . "', '" . JSReady($jscript_text, 'inline-single') . "', this);\" onmouseout=\"STUDIP.CalendarDialog.closeCalendarHover();\"";
}
Example #4
0
File: app.php Project: avelrd/bam
function json_encode_event(Event $event)
{
    return [$event->getId(), $event->getStartdate(), $event->getEnddate(), $event->getUsers(), $event->getLocation(), $event->getDescription(), $event->getName(), $event->getHosts(), $event->getTags()];
}
Example #5
0
 function parse($syncId, &$nbEvents = 0, $enableCache = true, $forceFeed = false)
 {
     $nbEvents = 0;
     assert('is_int($syncId) && $syncId>0');
     if (empty($this->id) || 0 == $this->id) {
         /* Le flux ne dispose pas pas d'id !. Ça arrive si on appelle
            parse() sans avoir appelé save() pour un nouveau flux.
            @TODO: un create() pour un nouveau flux ? */
         $msg = 'Empty or null id for a feed! ' . 'See ' . __FILE__ . ' on line ' . __LINE__;
         error_log($msg, E_USER_ERROR);
         die($msg);
         // Arrêt, sinon création événements sans flux associé.
     }
     $feed = new SimplePie();
     $feed->enable_cache($enableCache);
     $feed->force_feed($forceFeed);
     $feed->set_feed_url($this->url);
     $feed->set_useragent('Mozilla/4.0 Leed (LightFeed Aggregator) ' . VERSION_NAME . ' by idleman http://projet.idleman.fr/leed');
     if (!$feed->init()) {
         $this->error = $feed->error;
         $this->lastupdate = $_SERVER['REQUEST_TIME'];
         $this->save();
         return false;
     }
     $feed->handle_content_type();
     // UTF-8 par défaut pour SimplePie
     if ($this->name == '') {
         $this->name = $feed->get_title();
     }
     if ($this->name == '') {
         $this->name = $this->url;
     }
     $this->website = $feed->get_link();
     $this->description = $feed->get_description();
     $items = $feed->get_items();
     $eventManager = new Event();
     $events = array();
     $iEvents = 0;
     foreach ($items as $item) {
         // Ne retient que les 100 premiers éléments de flux.
         if ($iEvents++ >= 100) {
             break;
         }
         // Si le guid existe déjà, on évite de le reparcourir.
         $alreadyParsed = $eventManager->load(array('guid' => $item->get_id(), 'feed' => $this->id));
         if (isset($alreadyParsed) && $alreadyParsed != false) {
             $events[] = $alreadyParsed->getId();
             continue;
         }
         // Initialisation des informations de l'événement (élt. de flux)
         $event = new Event();
         $event->setSyncId($syncId);
         $event->setGuid($item->get_id());
         $event->setTitle($item->get_title());
         $event->setPubdate($item->get_date());
         $event->setCreator('' == $item->get_author() ? '' : $item->get_author()->name);
         $event->setLink($item->get_permalink());
         $event->setFeed($this->id);
         $event->setUnread(1);
         // inexistant, donc non-lu
         //Gestion de la balise enclosure pour les podcasts et autre cochonneries :)
         $enclosure = $item->get_enclosure();
         if ($enclosure != null && $enclosure->link != '') {
             $enclosureName = substr($enclosure->link, strrpos($enclosure->link, '/') + 1, strlen($enclosure->link));
             $enclosureArgs = strpos($enclosureName, '?');
             if ($enclosureArgs !== false) {
                 $enclosureName = substr($enclosureName, 0, $enclosureArgs);
             }
             $enclosureFormat = isset($enclosure->handler) ? $enclosure->handler : substr($enclosureName, strrpos($enclosureName, '.') + 1);
             $enclosure = '<div class="enclosure"><h1>Fichier média :</h1><a href="' . $enclosure->link . '"> ' . $enclosureName . '</a> <span>(Format ' . strtoupper($enclosureFormat) . ', ' . Functions::convertFileSize($enclosure->length) . ')</span></div>';
         } else {
             $enclosure = '';
         }
         $event->setContent($item->get_content() . $enclosure);
         $event->setDescription($item->get_description() . $enclosure);
         if (trim($event->getDescription()) == '') {
             $event->setDescription(substr($event->getContent(), 0, 300) . '…<br><a href="' . $event->getLink() . '">Lire la suite de l\'article</a>');
         }
         if (trim($event->getContent()) == '') {
             $event->setContent($event->getDescription());
         }
         $event->setCategory($item->get_category());
         $event->save();
         $nbEvents++;
     }
     $listid = "";
     foreach ($events as $item) {
         $listid .= ',' . $item;
     }
     $query = 'UPDATE `' . MYSQL_PREFIX . 'event` SET syncId=' . $syncId . ' WHERE id in (0' . $listid . ');';
     $myQuery = $this->customQuery($query);
     $this->lastupdate = $_SERVER['REQUEST_TIME'];
     $this->save();
     return true;
 }
 public function update(Event $event)
 {
     global $PDO;
     if (!$event->getEventId()) {
         throw new Exception("Event don't have eventId when event don't exists");
     } else {
         update("event", ["title" => $event->getTitle(), "description" => $event->getDescription(), "type" => $event->getType(), "location" => $event->getLocation(), "start_hour" => $event->getStartHour(), "final_hour" => $event->getFinalHour(), "color" => $event->getColor(), "status" => $event->getStatus(), "date_create" => $event->getDateCreate(), "user_id" => $event->getUserId(), "google_calendar_event_id" => $event->getGoogleCalendarEventId(), "notify_status" => $event->getNotifyStatus(), "parent_event_id" => $event->getParentEventId(), "calendar_id" => $event->getCalendarId()], ["Codigo" => $event->getEventId()]);
         //Event::eventId exits when not problem
         $eventMeta = $event->getEventMeta();
         update("event_meta", ["event_id" => $eventMeta->getEventId(), "date_start" => $eventMeta->getDateStart(), "interval_case" => $eventMeta->getIntervalCase(), "interval_value" => $eventMeta->getIntervalValue(), "week" => $eventMeta->getWeek(), "week_day" => $eventMeta->getWeekDay()], ["Codigo" => $eventMeta->getEventMetaId()]);
         //verify if exists attendees
         $childEventsId = $event->childEventsId();
         if ($childEventsId) {
             $filterOfChildEventsId = implode(",", $childEventsId);
             $rowsAffected = $PDO->exec("\n                UPDATE event \n                SET title = '{$event->getTitle()}',\n                description = '{$event->getDescription()}',\n                type = '{$event->getType()}',\n                location = '{$event->getLocation()}',\n                start_hour = '{$event->getStartHour()}',\n                final_hour = '{$event->getFinalHour()}',\n                color = '{$event->getColor()}'\n                WHERE Codigo IN ({$filterOfChildEventsId})");
             $rowsAffected = $PDO->exec("\n                UPDATE event_meta \n                SET date_start = '{$eventMeta->getDateStart()}',\n                interval_case = '{$eventMeta->getIntervalCase()}',\n                interval_value = '{$eventMeta->getIntervalValue()}',\n                week = '{$eventMeta->getWeek()}',\n                week_day = '{$eventMeta->getWeekDay()}'\n                WHERE event_id IN ({$filterOfChildEventsId})");
         }
         if ($event->getGoogleCalendarEventId()) {
             //verify google access
             $myGoogleClient = get_my_google_client($event->getUserId());
             if ($myGoogleClient) {
                 $client = $myGoogleClient->client;
                 $service = new Google_Service_Calendar($client);
                 $googleEvent = $service->events->get('primary', $event->getGoogleCalendarEventId());
                 $googleEvent->setSummary($event->getTitle());
                 $googleEvent->setDescription($event->getDescription());
                 $googleEvent->setLocation($event->getLocation());
                 ////////////////////////////////////////////////////////////////////////
                 //create google calendar datetime
                 $dateStart = $eventMeta->getDateStart();
                 $dateEnd = new DateTime($eventMeta->getDateStart());
                 $startHour = $event->getStartHour();
                 $finalHour = $event->getFinalHour();
                 //dateEnd
                 $intervalValue = $eventMeta->getIntervalValue();
                 $dateEnd->add(new DateInterval("P{$intervalValue}D"));
                 $dateEnd = $dateEnd->format("Y-m-d");
                 $start_event_date_time = new Google_Service_Calendar_EventDateTime();
                 $start_event_date_time->setDateTime("{$dateStart}T{$startHour}");
                 $start_event_date_time->setTimeZone("America/Lima");
                 $end_event_date_time = new Google_Service_Calendar_EventDateTime();
                 $end_event_date_time->setDateTime("{$dateEnd}T{$finalHour}");
                 $end_event_date_time->setTimeZone("America/Lima");
                 ////////////////////////////////////////////////////////////////////////
                 $googleEvent->setStart($start_event_date_time);
                 $googleEvent->setEnd($end_event_date_time);
                 $service->events->update('primary', $googleEvent->getId(), $googleEvent);
             }
         }
     }
     return $event;
 }