Jump to content

Erweiterung:CampaignEvents

From mediawiki.org
This page is a translated version of the page Extension:CampaignEvents and the translation is 53% complete.
Nicht zu verwechseln mit Extension:Campaigns.
MediaWiki-Erweiterungen
CampaignEvents
Freigabestatus: stabil
Einbindung Spezialseite , Benutzeroberfläche
Beschreibung Bietet Funktionen für Eventveranstalter:innen und Teilnehmer:innen
Autor(en) Kampagnenteam
Kompatibilitätspolitik Snapshots werden zusammen mit MediaWiki veröffentlicht. Der Master ist nicht abwärtskompatibel.
Datenbankänderungen Ja
Virtual domain virtual-campaignevents
Tabellen campaign_events
ce_participants
ce_organizers
ce_address
ce_event_address
ce_tracking_tools
Lizenz GNU General Public License 2.0 oder neuer
Herunterladen
  • $wgCampaignEventsEnableEventInvitation
  • $wgCampaignEventsProgramsAndEventsDashboardInstance
  • $wgCampaignEventsProgramsAndEventsDashboardAPISecret
  • $wgCampaignEventsEnableWikimediaParticipantQuestions
  • $wgCampaignEventsEventNamespaces
  • campaignevents-enable-registration
  • campaignevents-delete-registration
  • campaignevents-organize-events
  • campaignevents-email-participants
Vierteljährliche Downloads 13 (Ranked 121st)
Übersetze die CampaignEvents-Erweiterung, wenn sie auf translatewiki.net verfügbar ist
Probleme Offene Aufgaben · Einen Fehler melden

CampaignEvents is a MediaWiki extension, created and maintained by the Wikimedia Foundation Campaigns Team, which provides tools for organizing and running events, including registration, communication and an organizer dashboard. Für weitere Informationen siehe Registrierung.

Installation

  • Die Erweiterung herunterladen und die Datei(en) in ein Verzeichnis namens CampaignEvents im Ordner extensions/ ablegen.
    Entwickler und Code-Beitragende sollten stattdessen die Erweiterung von Git installieren, mit:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CampaignEvents
  • Folgenden Code am Ende deiner LocalSettings.php -Datei einfügen:
    wfLoadExtension( 'CampaignEvents' );
    
  • Führe das Aktualisierungsskript aus, welches automatisch die notwendigen Datenbanktabellen erstellt, die diese Erweiterung braucht.
  • Schedule a cronjob that runs the #script to update timezones (optional), and one for the #script to aggregate participant answers.
  • Yes Erledigt – Navigiere zu Special:Version in deinem Wiki, um zu überprüfen, ob die Erweiterung erfolgreich installiert wurde.

Configuration

Benutzerrechte

Recht Beschreibung
campaignevents-enable-registration Veranstaltungsanmeldungen ermöglichen
campaignevents-delete-registration Veranstaltungsanmeldungen löschen
campaignevents-organize-events Veranstaltungen organisieren
campaignevents-email-participants E-Mail an Veranstaltungsteilnehmer


Parameter

Variablenname Standardwert Beschreibung
$wgCampaignEventsProgramsAndEventsDashboardInstance null Determines which instance of the P&E Dashboard should be used, if any. Supported values are 'production', 'staging', or null to not use the dashboard.

Note that this setting should use the same value for all wikis sharing the same central database for events: otherwise, the application might crash or show inconsistent data when viewing an event created on another wiki.

$wgCampaignEventsProgramsAndEventsDashboardAPISecret null API secret to use with the selected P&E Dashboard instance. Muss konfiguriert sein, wenn das P&E-Dashboard verwendet werden soll.
$wgCampaignEventsEnableWikimediaParticipantQuestions true Whether to enable Wikimedia-specific questions that can be asked to participants, such as whether they belong to a Wikimedia affiliate.

The extension can be configured to store data into a database other than the main wiki DB. You do so by configuring the virtual-campaignevents domain, see Manual:$wgVirtualDomainsMapping . For instance:

$wgVirtualDomainsMapping['virtual-campaignevents'] = [ 'db' => 'my_central_db' ];

This is especially useful in combination with a central database that stores event for a whole wiki family. Note, if you do so, that the wiki farm needs to use central user IDs .


API

Eine Dokumentation aller API-Endpunkte ist hier verfügbar.

Wartungsskripte

Script, um die Zeitzonen zu aktualisieren

The extension stores the local time and timezone for each event, to guarantee that the local time remains accurate even if time zone rules change. However,internally it also stores UTC timestamps so that certain operations like sorting are possible. The UTC timestamps may go out of sync with the local ones if time zone rules change, which happens more commonly than you may think. Du kannst hier weitere Details lesen. In order to mitigate that, the extension provides a maintenance script that recomputes the UTC timestamps for all events according to the latest timezone rules, and stores them back into the database.

In order for this to work, you have to make sure that PHP has access to the latest version of the tz database. Das PHP-Handbuch bietet Kontext dazu. The easiest solution is to install the timezonedb PECL package and make sure to keep it up-to-date.

Assuming that PHP has access to the latest timezone rules, you can run the script with:

$ php maintenance/run.php ./extensions/CampaignEvents/maintenance/UpdateUTCTimestamps.php

The script also takes an optional --timezone parameter where you can specify the name of a time zone whose rules changed; this parameter can be repeated multiple times. If passed, the script will only update events whose timezone matches one of the timezones specified via this parameter.

If you upgrade the time zone database automatically (e.g., with a cronjob), you can make that job also execute this script, so that you don't have to do it manually every time you upgrade the time zone database.

Script, was die Antworten der Teilnehmer:innen aggregiert

The extension provides a maintenance script that aggregates participant answers after a 90 day period. The script can be run with:

$ php maintenance/run.php ./extensions/CampaignEvents/maintenance/AggregateParticipantAnswers.php

The script should be configured to run automatically (e.g., as a cronjob) to make sure that PII isn't retained for longer than it needs to.

Siehe auch