Extension:CampaignEvents/id
Status keluaran: stabil |
|
|---|---|
| Penerapan | Halaman istimewa, Kulit |
| Deskripsi | Provides features for event organizers and participants |
| Perancang | Connection Team |
| Kebijakan kompatibilitas | Cuplikan dikeluarkan bersamaan dengan MediaWiki. Induk tidak kompatibel dengan versi sebelumnya. |
| PHP | >8.1.7 |
| Perubahan pangkalan data | Ya |
| Domain maya | virtual-campaignevents |
| Tabel | campaign_events ce_address ce_event_address ce_event_questions ce_event_topics ce_event_wikis ce_invitation_lists ce_organizers ce_participants ce_question_aggregation ce_question_answers ce_tracking_tools ce_worklist_articles |
| Lisensi | Lisensi Publik Umum GNU 2.0 atau lebih baru |
| Unduh | |
| Bantuan | Help:Extension:CampaignEvents/id |
|
|
|
|
| Terjemahkan pengaya CampaignEvents jika tersedia di translatewiki.net | |
| Masalah | Tugas terbuka · Laporkan kekutu |
CampaignEvents is a MediaWiki extension, created and maintained by the Wikimedia Foundation Connection Team, which provides tools for organizing and running events, including registration, communication and an organizer dashboard. See Bantuan:Pengaya:CampaignEvents and Registration for more information.
Installation
- Unduh dan letakkan berkas-berkasnya di dalam sebuah direktori yang bernama
CampaignEventsdi folderextensions/Anda.
Developers and code contributors should install the extension from Git instead, using:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CampaignEvents
- Tambahkan kode berikut di bagian bawah LocalSettings.php Anda:
wfLoadExtension( 'CampaignEvents' );
- Jalankan skrip pembaruan yang akan membuat tabel basis data yang diperlukan ekstensi ini secara otomatis.
- Install the CLDR extension. This is a hard dependency but cannot be declared as such due to a bug in the MediaWiki installer.
- Schedule a cronjob that runs the #script to update timezones (optional), and one for the #script to aggregate participant answers.
Selesai – Telusuri ke Special:Version di wiki Anda untuk memastikan ekstensinya berhasil dipasang.
Configuration
User rights
| Right | Description |
|---|---|
| campaignevents-enable-registration | Aktifkan pendaftaran acara |
| campaignevents-delete-registration | Hapus pendaftaran acara |
| campaignevents-organize-events | Atur acara |
| campaignevents-email-participants | Kirim surel kepada peserta acara |
| campaignevents-view-private-participants | Lihat peserta acara tersembunyi |
Parameters
| Variable name | Default value | Description |
|---|---|---|
$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. Must be configured if you intend to use the P&E Dashboard. |
$wgCampaignEventsEnableWikimediaParticipantQuestions
|
true
|
Whether to enable Wikimedia-specific questions that can be asked to participants, such as whether they belong to a Wikimedia affiliate. |
$wgCampaignEventsEventNamespaces
|
[ NS_EVENT, NS_PROJECT ]
|
List of permitted namespaces for event registration |
$wgCampaignEventsCountrySchemaMigrationStage
|
MIGRATION_OLD
|
Migration stage of the country code migration, one of the MIGRATION_* constants.
|
$wgCampaignEventsContributionTrackingDisallowedCountries
|
[]
|
Map of countries for which in-person or hybrid events cannot use contribution tracking (e.g. for legal reasons, see the Wikimedia Foundation Country and Territory Protection List). This maps CLDR country codes to English country names, but only the former are used; the names are included for convenience, and are assumed to be correct. |
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
Documentation of all the API endpoints is available.
Maintenance scripts
Script to update timezones
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. You can read more details. 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. The PHP manual provides some context about this. 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. Otherwise, you can manually run the script after you update the time zone info, or just have it run on a fixed schedule (like once a day).
Script to aggregate participant answers
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 an hourly cronjob) to make sure that PII isn't retained for longer than it needs to.
See also
- High-level project overview on meta
- Extension:WikimediaCampaignEvents - provides Wikimedia-specific add-ons
| Ekstensi ini sedang digunakan di salah satu atau lebih proyek Wikimedia. Ini kemungkinan berarti ekstensi ini stabil dan bekerja cukup baik untuk digunakan oleh situs web berlalu lintas tinggi. Cari nama ekstensi ini di berkas konfigurasi CommonSettings.php dan InitialiseSettings.php Wikimedia untuk melihat di mana dipasangnya. Daftar lengkap ekstensi yang dipasang di suatu wiki bisa dilihat di halaman Special:Version wiki. |
- Stable extensions/id
- Special page extensions/id
- Skin extensions/id
- GPL licensed extensions/id
- Extensions in Wikimedia version control/id
- ArticleViewHeader extensions/id
- BeforeCreateEchoEvent extensions/id
- GetPreferences extensions/id
- LoadExtensionSchemaUpdates extensions/id
- TitleMove extensions/id
- All extensions/id
- Extensions used on Wikimedia/id
