Jump to content

Extension:WikiLove/nl

From mediawiki.org
This page is a translated version of the page Extension:WikiLove and the translation is 100% complete.
MediaWiki Handleiding extensies
WikiLove
Release status: stabiel
Implementatie Gebruikersinterface
Beschrijving Maakt het eenvoudig om positieve feedback te geven op gebruikersoverlegpagina's.
Auteur(s) Ryan Kaldari, Jan Paul Posma, Brandon Harris (ontwerp)
Laatste versie 1.3.1
Compatibiliteit beleid Snapshots releases samen met MediaWiki. Master is niet achterwaarts compatibel.
MediaWiki 1.27+
Database wijzigingen Ja
Tabellen wikilove_log
Licentie MIT Licentie
Download

  • $wgWikiLoveGlobal
  • $wgWikiLoveTabIcon
  • $wgWikiLoveLogging
Downloads kwartaal 21 (Ranked 112nd)
Vertaal de WikiLove extensie indien beschikbaar op translatewiki.net
Problemen Open taken · Rapporteer een bug

WikiLove (WikiWaardering) is een extensie die ontworpen is om het verspreiden van WikiLove te promoten binnen Wikipedia en mogelijk ook andere wiki's. Het maakt het mogelijk om met een paar eenvoudige klikken op wat knoppen awards, giften en uitnodigingen te doen op gebruikersoverlegpagina's.

Installatie

  • Download en plaats de bestanden in de map WikiLove in de map extensions/.
    Ontwikkelaars en bijdragers van code moeten in plaats daarvan de extensie van Git installeren, met behulp van:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/WikiLove
  • Voeg de volgende code onderaan het bestand LocalSettings.php toe:
    wfLoadExtension( 'WikiLove' );
    
  • Voer het update script uit, dat automatisch de vereiste database-tabellen creëert die nodig zijn voor de extensie.
  • Yes Klaar – Navigeer naar Special:Version op de wiki om te controleren dat de extensie geïnstalleerd is.

Als u de ingebouwde awards wilt gebruiken, dan moet u InstantCommons hebben ingeschakeld. Dan kan door aan het bestand LocalSettings.php toe te voegen:

$wgUseInstantCommons = true;

De extensie zou nu actief moeten zijn. Ga naar de tab Bewerken in uw voorkeuren om de interface aan te zetten

U kunt deze opties voor configuratie ook gebruiken in uw LocalSettings.php:

  • $wgWikiLoveGlobal - de extensie voor alle gebruikers inschakelen, overschrijft de gebruikersvoorkeur (Standaardwaarde: false)
    • NB: u kunt de instelling ook standaard inschakelen en het aan de gebruiker overlaten om het uit te zetten (opt-out), dat doet u met:
$wgDefaultUserOptions['wikilove-enabled'] = 1;
  • $wgWikiLoveTabIcon - een icoon gebruiken voor skins die dat ondersteunen (bijv. Vector) (standaardwaarde: true)
  • $wgWikiLoveLogging - logging inschakelen van gebruik WikiLove (standaardwaarde: false); dit maakt automatisch een database tabel wikilove_log aan, deze kunt u gebruiken voor statistieken


Gebruik

Om in uw account in te stellen om WikiLove (WikiWaardering) te gebruiken gaat u naar de tab Bewerken in uw voorkeuren en schakelt WikiLove in onder "Labs features" (of in sommige versies onder "Algemene opties"). In September 2022 this displays as "Enable showing appreciation for other users with the WikiLove tab".

Om het te gebruiken, ga naar een gebruikersoverlegpagina (niet van uzelf) en klik op het hartje. Volg dan de aanwijzingen.

Verdere configuratie

Om te zien hoe u WikiLove voor uzelf kunt aanpassen (dus niet voor de hele wiki): gebruikersdocumentatie.

U kunt de optie aanpassen op uw eigen wiki door het wijzigen van de pagina MediaWiki:WikiLove.js. Dit gaat hetzelfde als de interne opties: defaultOptions.js. Wat voorbeelden van een configuratie:

De opties bovenaan de defaultOptions.js zijn wat standaardinstellingen. Als u bepaalde eigenschappen van (sub)types weglaat dan worden deze gebruikt (defaultText, defaultBackgroundColor, defaultBorderColor, defaultImageSize, defaultImage). Dan volgt de lijst met types. Elk type kan name (verplichte) en icon (optionele) eigenschappen hebben. Een type kan een aantal subtypes hebben, als er geen subtypes zijn dan krijgt het type de mogelijke aanvullende eigenschappen.

Als er subtypes zijn, dan staan ze in een objectlijst subtypes. Het type kan optioneel de eigenschap select hebben, dat is dan het label boven de dropdown. Elk subtype kan de volgende eigenschappen hebben:

  • option - naam in de dropdown
  • descr - Beschrijving van het subtype
  • header - Kopregel van het toegevoegde bericht, het deel dat staat tussen == ... ==
  • title - Titel van de berichtenbox
  • text - Tekst van de berichtenbox (details staan hieronder)
  • image - Afbeelding van de berichtenbox
  • gallery - Galerie voor het selecteren van een afbeelding
  • fields - Lijst met velden die de gebruiker kan aanpassen, ze kunnen deze waarden bevatten: header, title, image, message
  • imageSize - Afbeeldingsgrootte (bijv. 100px)
  • backgroundColor - Achtergrondkleur (iedere CSS geldige kleur, bijv. #fdffe7 of yellow)
  • borderColor - Kleur rand (gelijk)

Als er geen subtypes gebruikt worden, deze opties (behalve de eerste twee) worden dan aan het type toegekend.

In de text en email velden (en ook in de defaultText, eerder genoemd), kunt u een aantal placeholders gebruiken, die variabelen worden dan automatisch in de tekst vervangen:

  • $1 - Bericht
  • $2 - Titel
  • $3 - Naam afbeelding
  • $4 - Grootte afbeelding
  • $5 - Achtergrondkleur
  • $6 - Rand kleur
  • $7 - Gebruikersnaam ontvanger

Om het selecteren van afbeeldingen door de gever eenvoudiger te maken, kunt u een galerie aanmaken met al gedefinieerde afbeeldingen. Maal een property (eigenschap) gallery aam met de volgende eigenschappen:

  • imageList - Een lijst (array) met namen van afbeeldingen
  • width - Maximale wijdte van de afbeeldingen in de galerie (in pixels); bij 3 afbeelding wordt 145 aanbevolen
  • height - maximale hoogte van de afbeeldingen in de galerie
  • number - Aantal willekeurig te tonen afbeeldingen (optioneel); standaard worden alle hier beschikbare afbeeldingen getoond

U kunt afbeeldingen van Wikimedia Commons gebruiken, dat wordt gedaan voor de standaard awards. U dient hiervoor dus wel InstantCommons in te schakelen.

Zorg dat uw pagina MediaWiki:WikiLove.js begint met //<nowiki> en eindigt met //</nowiki> zodat alle Wikitext code (o.a. ondertekeningen, {{subst:foo}}) niet opeens JavaScript bevat.

WikiLove type verwijderen

Als u een standaardtype van WikiLove wilt verwijderen, dan kunt u ze verwijderen in het $.wikiLoveOptions object. Wat voorbeelden voor gebruik op uw MediaWiki:WikiLove.js pagina van uw wiki:

// Verwijder de 'Random Acts of Kindness Barnstar' uit de lijst met sterren
delete $.wikiLoveOptions.types.barnstar.subtypes.kindness;
// Verwijder de 'cheeseburger' uit de bijbehorende lijst
delete $.wikiLoveOptions.types.food.subtypes.cheeseburger;
// De hele 'kittens' interface verwijderen
delete $.wikiLoveOptions.types.kitten;

WikiLove type toevoegen

Nu een voorbeeld met het toevoegen van een type 'Puppy':

$.wikiLoveOptions.types.puppy = {
	name: 'Puppy', // typenaam (komt in het menu met de types)
	fields: [ 'header', 'message' ], // invoervelden
	header: 'You get a puppy!', // optionele kopregel van bericht op overlegpagina
	text: '[[File:2009-08-16 Puppy at Duke East 1.jpg|left|150px]]\n$1\n\n~~'+'~~<br style="clear: both;"/>', // $1 is de aangepaste tekst
	icon: 'http://www.mysite.com/images/wikilove-icon-puppy.png' // komt in het menu met de types
};

Een voorbeeld met een nieuw type met een galerie met afbeeldingen:

$.wikiLoveOptions.types.hedgehog = {
	name: 'Hedgehogs', // typenaam (komt in het menu met de types)
	fields: [ 'header', 'message' ], // invoervelden
	header: 'A hedgehog for you!', // optionele kopregel van bericht op overlegpagina
	text: '[[$3|left|150px]]\n$1\n\n~~'+'~~\n<br style="clear: both"/>', // $3 is de bestandsnaam met de afbeelding, $1 is het bericht
	gallery: {
		imageList: [ 'Hedgehog1.jpg', 'Orizo5.jpg', 'Erinaceus europaeus LC0119.jpg' ],
		width: 145, // maximale wijdte van de afbeeldingen in de galerie
		height: 150, // maximale hoogte van de afbeeldingen in de galerie
		number: 3 // optioneel het aantal willekeurig te tonen afbeeldingen
	},
	icon: 'http://www.mysite.com/images/wikilove-icon-hedgehog.png' // komt in het menu met de types

Nu een nieuw subtype 'falafel' van het bestaande type 'food':

$.wikiLoveOptions.types.food.subtypes.falafel = {
    fields: [ 'header', 'message' ], // invoervelden
    option: 'Falafel', // de tekst van de optie in de selectielijst
    descr: 'Falafel is a popular Middle Eastern street food made from ground chickpeas or fava beans and topped with salads, vegetables, and sauces. It is typically served in a pocket of pita bread.',
    header: 'Some falafel for you!', // optionele kopregel van bericht op overlegpagina
    image: 'Falafel award.png', // afbeelding voor het item
    imageSize: '120px' // de grootte waarop de afbeelding wordt getoond (optioneel)
};

Problemen

Als de te bewerken overlegpagina een woord bevat dat op de Special:SpamRegex staat, dan er geen ster of een andere award worden toegevoegd. Een pagina met een geblokkeerd woord kan niet bewerkt worden, het woord moet eerst verwijderd worden van de pagina (of uit die lijst). Het woord zal pas toegevoegd zijn aan de lijst nadat het op deze pagina is gezet.

API documentatie

Wikiwaardering gebruikt een eigen API om een bericht op een gebruikersoverlegpagina te plaatsen. Deze API is eigenlijk een wrapper (schil) die bestaande API's gebruikt. Als de pagina een Wikitext pagina is, dan wordt de API edit gebruikt. Als het een 'flow' pagina is, dan wordt de API flow gebruikt. Als het een LiquidThreads pagina is, dan wordt de API threadaction gebruikt.

Gebruik de parameter action=wikilove om de API aan te roepen.

Parameters:

title
Naam van de gebruiker of de titel van de gebruikersoverlegpagina die de ontvanger van de waardering is (verplicht)
text
Ruwe wikitext in de toe te voegen sectie (verplicht)
message
De tekst die gebruiker heeft ingevoerd, dit is voor de logging bedoeld (exclusief de afbeelding en zonder HTML-opmaak)
token
U kunt een Edit token krijgen met prop=info (verplicht)
subject
Kop van de nieuwe sectie met het onderwerp (verplicht)
type
Het type (voor de statistieken); dit komt overeen met het geselecteerde type met eventueel dus het subtype als dat er is (bijv: "barnstar-normal" of "kitten") (optioneel)
email
Inhoud van het optionele e-mailbericht dat naar de gebruiker is verzonden

Voorbeeld:

 api.php?action=wikilove&title=User:Dummy&text=Love&subject=Hi&token=%2B\

Ontwerp versie 1.0

De dialoog bij de eerste keer laden
De dialoog bij het selecteren van de categorie waardering
De dialoog bij het invullen van de details
De dialoog bij het voorvertonen
De 'hover' status van het paneel selectie type waardering

Dit document beschrijft het ontwerp en het gedrag van het WikiLove systeem voor een positieve feedback. Dit is een manier om het werken in Wikipedia of een ander WikiMedia wiki te promoten. Er worden awards toegevoegd aan gebruikersoverlegpagina's.

Motivering

Een gemeenschap als Wikipedia heeft meerdere mechanismes voor het herkennen van het onplezierig werken of het geven van afbraak feedback naar gebruikers. Bepaalde gadgets, zoals Twinkle, zijn gemaakt voor het waarschuwen, blokkeren en terugdraaien

Omdat iedereen een positieve versterking wil, vooral richting nieuwe gebruikers, is er een systeem gemaakt dat bedoeld is voor het geven van positieve feedback, niet alleen voor nieuwkomers maar ook bij opgevallen prestaties.

Gebruik van de stijl whimsical

Het systeem heeft opzettelijk een nogal "speelse en vrolijke" stijl, dat sluit goed aan op de verwachtingen van gebruikers bij een moderne website. Ook het principe van waarderingen is dat al met (sterren, taarten, ...).

Of wij de stijl gaan aanpassen hangt af van de feedback van gebruikers.

Naamgeving

Enkele sjabloontypes zoals die voor het verwelkomen zijn natuurlijk niet echt beloningen maar wel een belangrijke vorm van aandacht.

In dit document worden award en sjabloon wat door elkaar gebruikt. Het systeem is gericht op de gebruiker en niet zo zeer voor techneuten, er wordt spreektaal gebruikt.

Proces

Dialogen

De dialoog in deze extensie is modal. Bij aanroep, waarvandaan dan ook, wordt het getoond over de pagina heen. U kunt het met een klik wegklikken.

Het WikiLove systeem vereist JavaScript.

De gebruiker krijgt eerst een beperkt aantal eenvoudige instructies en een lijst met de beschikbare award categorieën.

Na selectie van die categorie/type, kan de gebruiker wat details toevoegen waaronder een korte boodschap.

Er zijn ook types waarbij er geen details nodig zijn (bijv., "cookie"), dan wordt er direct een voorbeeld getoond om de gever te laten zien hoe de ontvanger het ziet, dit is het voorvertonen.

Na het invullen van de details komt er ook zo'n voorvertoning.

Na het voorvertonen kan met een knop de award worden verzonden, dit houdt dan in dat er met een AJAX-aanroep van de server-API een tekst wordt toegevoegd aan een gebruikersoverlegpagina.

E-mailnotificatie

Omdat zeker nieuwe gebruikers misschien niet eens weten dat ze een eigen overlegpagina hebben, zal het vrij regelmatig voorkomen dat ze dit bericht niet eens opmerken.

Vandaar dat er ook een e-mail naar de ontvanger wordt verzonden (als dat bekend is) over het toekennen van de award. In die e-mail staat dan ook een uitleg hoe ze de eigen overlegpagina kunnen zien.

Website configuratie

In de eerste versies van dit project kan de wijze van implementatie anders zijn dan in een volgende versie, kijk dus altijd naar de definitie in het bestand LocalSettings.php van de site.

Dit is natuurlijk een aanbeveling die gegeven moet worden bij alle software.

Data opslag

Om later statistieken te kunnen maken worden er wat gegevens vastgelegd bij elke toekenning van een award. Wat wordt vastgelegd is:

  • de Gever
  • de Ontvanger
  • het Sjabloon: blijkbaar de award
  • het Tijdstempel: datum en tijd
  • de Tekst: de optionele tekst

Special:WikiLoveStatistics

In de toekomst is er mogelijk een pagina Special:WikiLoveStatistics, iets waarmee te zien valt hoe vaak er een award wordt toegekend en door/aan wie, en welke awards dan wel.

Dan kunnen we mogelijk bedenken hoe we dit systeem kunnen inschatten om de sfeer en wijze van omgang wat beter kunnen duiden.

Toekomstplannen

Fase twee van dit project zou het kunnen zijn dat een "Send WikiLove" link automatisch wordt toegevoegd aan de ondertekeningen op de overlegpagina's. Hierdoor zou WikiLove gemakkelijk kunnen worden verzonden, direct vanaf andere overlegpagina's.

Zie ook