mediawiki-extensions-ContactPage

Github mirror of MediaWiki extension ContactPage - our actual code is hosted with Gerrit (please see https://www.mediawiki.org/wiki/Developer_access for contributing)

GPL-2.0 License

Stars
5

README for the ContactPage extension
Copyright 2006-2014 Daniel Kinzler, Sam Reed
Licenses: GNU General Public Licence (GPL)
GNU Free Documentation License (GFDL)

The ContactPage extension implements a contact form for visitors. It creates a special page Special:Contact, which is similar to Special:Emailuser, but it has a fixed recipient, and can be used anonymously.

https://www.mediawiki.org/wiki/Extension:ContactPage

The ContactPage extension was originally written by Daniel Kinzler in 2007 and is released under the GNU General Public Licence (GPL). It is based on the code in SpecialEmailuser.php in the MediaWiki core. The internationalization files contain contributions by several people; they are mentioned in each file individually.

== Installing ==

Copy the ContactPage directory into the extensions folder of your MediaWiki installation. Then add the following lines to your LocalSettings.php file (near the end):

wfLoadExtension( 'ContactPage' );

== Configuration ==

As of version 2, all configuration is done by one global variable, $wgContactConfig.

$wgContactConfig['formname'] = [ 'RecipientUser' => 'WikiUser', 'SenderEmail' => '[email protected]', 'SenderName' => 'User Email', 'RequireDetails' => true, 'IncludeIP' => true, 'MustBeLoggedIn' => true, 'NameReadonly' => true, 'EmailReadonly' => true, 'SubjectReadonly' => true, 'MustHaveEmail' => true, 'AdditionalFields' => [], 'RLModules' => [], 'RLStyleModules' => [], ];

All contact form keys (in this case 'formname') should be in lowercase.

The following situations will cause the contact form to be inaccessible:

  • Setting EmailReadonly to true if MustBeLoggedIn is false and RequireDetails
    is false.
  • Setting MustHaveEmail to true if MustBeLoggedIn is false.
  • RecipentUser being undefined.

RecipentUser must be the username of a registered wiki user, who has supplied an email address, has user-to-user email enabled, and has confirmed his/her email address if that is required on this wiki (see $wgEmailAuthentication).

SenderEmail is used when to send the email when an address isn't entered on the contact form. It defaults to $wgPasswordSender.

SenderName is the display name used with SenderEmail.

RequireDetails is whether the users will be required to supply a name and an email address on Special:Contact.

IncludeIP is used to decide whether the form will include a checkbox offering to put the IP address of the submitter in the subject line.

MustBeLoggedIn is whether the contact form is only accessible when users are logged in.

NameReadonly is used to make the name field readonly.

EmailReadonly is used to make the email field readonly.

SubjectReadonly is used to make the subject field readonly.

MustHaveEmail is used to require that the user loading the form has a confirmed email address attached to their account. If the user does not have a confirmed email address, an error will be displayed and the form will not be shown.

AdditionalFields is used to add any additional fields to the contact form. These are done using https://www.mediawiki.org/wiki/HTMLForm notation. The default message text box is not included by default, and if required, should be added manually to the AdditionalFields array like below.

It should be noted that type 'selectandother' is not currently supported.

'AdditionalFields' => [ 'Text' => [ 'label-message' => 'emailmessage', 'type' => 'textarea', 'rows' => 20, 'cols' => 80, 'required' => true, ], ],

RLModules can be used to add ResourceLoader modules (custom CSS and JavaScript) to the page.

RLStyleModules can be used to add ResourceLoader CSS modules to the page.

== Customization ==

[[Special:Contact]] calls the 'default' form. Pagetext: [[MediaWiki:contactpage-pagetext]] Subject: prefilled with text from [[MediaWiki:Contactpage-defsubject]] E-mail body: empty.

[[Special:Contact/typename]] calls the contact page with a customized pagetext and prefilled form fields: Pagetext: [[MediaWiki:contactpage-pagetext-typename]] Subject: prefilled with text from [[MediaWiki:contactpage-subject-typename]] E-mail body: prefilled with text from [[MediaWiki:contactpage-text-typename]]

If a customized message does not exist the default message is shown.

Related Projects