Send private message

You must be logged in to send a private message.

Friends

No friends yet.

Group membership

Activity

  • milaas added a new discussion topic Event Manager in the group German Support Group
    Umgestalten und verändern des Event Managers. arbeite nun schon lange an der Anpassung des Event Managers https://community.elgg.org/plugins/736695/releases/3.0 kommen immer andere Hindernisse und Frage. Kann selbst auch einige Fragen...
    • Ich bin nicht sicher, was genau Du erreichen willst, da ich das Event Manager-Plugin selbst nicht verwende und daher nicht im Detail weiss, welche Features es bieter (bzw. wie es im Detail implementiert ist).

      Aber reicht es nicht aus, wenn Du einfach Anpassungen in event_manager/views/default/object/event.php vornimmst? In dieser View wird der Output für ein Event sowohl für die Full View eines einzelnen Events als auch für die Kurzansicht der Events in Listenansichten definiert.

      Der Codeblock innerhalb

      } elseif (elgg_in_context("maps")) {

      definiert die Kartenansicht eines Events. Im Grunde müßtest Du eigentlich nur diesen Code zur Ausgabe eines Events innerhalb einer Listenansicht (definiert durch die folgende "} else {") hinzufügen. Am besten wäre es wohl innerhalb

      if (!elgg_in_context("widgets")) {

      damit die Karte nicht innerhalb Widgets ausgegeben wird. Also am besten am Ende sowas wie

      if (!elgg_in_context("widgets")) {
              $subtitle = "<p>$author_text $date</p>";

              if ($location = $event->getEventLocation()) {
                  $content .= '<div>' . elgg_echo('event_manager:edit:form:location') . ': ';
                  $content .= '<a href="' . elgg_get_site_url() . 'events/event/route?from=' . urlencode($location) . '" class="openRouteToEvent">' . $location . '</a>';
                  $content .= '</div>';
              }

              if ($shortdescription = $event->shortdescription) {
                  $content .= "<div>" . $shortdescription . "</div>";
              }

      $output = '<div class="gmaps_infowindow">';
          $output .= '<div class="gmaps_infowindow_text">';
          $output .= '<div class="event_manager_event_view_owner"><a href="' . $event->getURL() . '">' . $event->title . '</a> (' . date(EVENT_MANAGER_FORMAT_DATE_EVENTDAY, $event->start_day) . ')</div>';
          $output .= $event->getEventLocation(true) . '<br /><br />' . $event->shortdescription . '<br /><br />';
          $output .= elgg_view("event_manager/event/actions", $vars) . '</div>';
          if ($event->icontime) {
              $output .= '<div class="gmaps_infowindow_icon"><img src="' . $event->getIconURL() . '" /></div>';
          }
          $output .= '</div>';

      $content .= $output;
          }

      Vielleicht mußt Du noch separate gmaps_infowindow-Klassen zur CSS-Datei hinzufügen, damit sich die Kartenansicht innerhalb eines Listenelements gut einfügt.

      Ich weiss allerdings nicht, ob es wirklich eine gute Idee ist, zu jedem Event in der Listenansicht immer gleich die Karte darzustellen, da für jedes Event eine Abfrage bei Google erfolgt. Das kann einerseits den Aufbau der Seite verlangsamen und darüber hinaus ist meines Wissens die erlaubte Anzahl von Kartenabfragen auch begrenzt (zumindest die kostenlose Abfrage). Wenn für alle Events schon in der Listenansicht bei jedem Aufruf der Liste für alle Events eine Abfrage durchgeführt wird, könnte da die erlaubte Anzahl an Abfragen schnell überschritten werden.

  • milaas joined the group German Support Group