Help:CreateNewWiki

From Calidus HUB

Warning Warning: This page has been superseded by Assist Upgrade Actions. See there for more information. However, this old version might contain some useful information, so is preserved.

Initial Setup

  • Copy an existing WIKI folder to a new folder and rename to your Wiki.
  • In this folder:
    • Rename the LocalSettings.php to *.old.php
    • Remove config/LocalSettings.php

Configuration

Connect to the site in a browser, and click the 'Set up the Wiki' link to configure and enter all the details required:

Site config

  • Wiki name: Must not be blank or "MediaWiki" and may not contain "#". Enter the Product name here e.g. WCS, EPOD, TTM, etc
  • Contact e-mail: Your email address.
  • Language: en
  • Copyright/license: No license metadata
  • Admin username: Usually this is set to <wiki>_owner
  • Password: Any password you like, but don't forget it. The password cannot be the same as the username.
  • Object caching: No caching

E-mail, e-mail notification and authentication setup

  • E-mail features (global): Enabled
  • User-to-user e-mail: Enabled
  • E-mail notification about changes: Enabled for changes to user discussion pages, and to pages on watchlists
  • E-mail address authentication: Enabled

Database config

  • Database type: MySQL
  • Database host: localhost
  • Database name: <wiki>_assist
  • DB username: <wiki>_owner
  • DB password: Any password you like, but don't forget it.
  • Superuser account: Use superuser account if you have it
  • Superuser name:
  • Superuser password:

MySQL-specific options

  • Database table prefix: <wiki>_
  • Storage Engine: InnoDB
  • Database character set: MySQL 4.1/5.0 binary


Click the Install MediaWiki button to create the configuration file.

Once complete, copy the config/LocalSettings.php to the root directory of this new wiki.

Further Configuration

Edit the LocalSettings.php file created above and paste the following at the bottom of the file:

# Restrictions
#Restrict anonymous editing
$wgGroupPermissions['*']['edit'] = false;
# Prevent new user registrations except by sysops
$wgGroupPermissions['*']['createaccount'] = false;
# Add permissions to autoconfirmed users
$wgGroupPermissions['creator']['delete'] = true;
$wgGroupPermissions['creator']['autopatrol'] = true;
# True Anonymous access
$wgShowIPinHeader = false;

# Settings for PDFBook
require_once( "$IP/extensions/PdfBook/PdfBook.php" );
$wgPdfBookLeftMargin = "2cm"; 		#Left page margin
$wgPdfBookRightMargin = "2cm"; 		#Right page margin
$wgPdfBookTopMargin = "2cm"; 		#Top page margin
$wgPdfBookBottomMargin = "1cm"; 		#Bottom page margin
$wgPdfBookFont = "Arial";	#Default font to use if unspecified in content
$wgPdfBookFontSize = "11"; 		#Point size of default font
$wgPdfBookLinkColour = "217A28"; 	#Colour to use when rendering hyperlinks in text
$wgPdfBookTocLevels = "2"; 		#Number of outline levels to use when building the table of contents
#$wgPdfBookExclude 	empty 	List of article titles which should not be included in the book

# Settings to get the Help extensions working
require_once( "$IP/extensions/ParserFunctions/ParserFunctions.php" );
#$wgPFEnableStringFunctions = true;
require_once("$IP/extensions/NumberFormat/NumberFormat.php");

# Settings to enable SVG - doesn't work
#$wgFileExtensions[] = 'svg';
#$wgAllowTitlesInSVG = true;

# WikiForum settings
#require_once("$IP/extensions/WikiForum/WikiForum.php");

# Document Approval settings
#require_once("$IP/extensions/DocumentApproval.php");

# MakeArticle settings
require_once("$IP/extensions/makearticle/makearticle.php");

# CreateArticle settings
require_once($IP . "/extensions/CreateArticle.php" );

#Collapsable Text settings
require_once("$IP/extensions/JSpoiler.php");

#UDEF Variables settings
require_once( "$IP/extensions/Variables/Variables.php" );

#WYSIWYG editor
#require_once("$IP/extensions/FCKeditor/FCKeditor.php"); //works but it breaks the Special:Version page

# Settings to get full error details from Wiki
$wgShowExceptionDetails = true;

#Display Webpages in Wikis
include("extensions/anywebsite.php");

$wgCopyrightIcon = "<a href=\"http://www.obs-logistics.com\" target=\"_blank\"><img src='/calidus-assist/WMS/skins/common/images/wiki.png' height=\"40\" alt='OBS Logistics Ltd' /></a>";

# Default User Options for new users:
$wgDefaultUserOptions['forceeditsummary'] = 1;

Change the existing $wgEnableUploads variable to true.

Change the existing $wgDefaultSkin variable to 'vector'.

Change the existing $wgPasswordSender variable to your email address.

Save the LocalSettings.php file.

You can now log on to the new wiki as the admin user you created earlier.

Creating the basic content

Edit MediaWiki:Common.js (index.php?title=MediaWiki:Common.js&action=edit or just search for MediaWiki:Common.js) and add the following:

    mwCustomEditButtons.push({
        "imageFile": "images/Button_enter.png",
        "speedTip": "Line break",
        "tagOpen": "<br />",
        "tagClose": "",
        "sampleText": ""
    });
 
    mwCustomEditButtons.push({
        "imageFile": "images/Button_upper_letter.png",
        "speedTip": "Superscript",
        "tagOpen": "<sup>",
        "tagClose": "</sup>",
        "sampleText": "Superscript text"
    });
 
    mwCustomEditButtons.push({
        "imageFile": "images/Button_small.png",
        "speedTip": "Small",
        "tagOpen": "<small>",
        "tagClose": "</small>",
        "sampleText": "Small Text"
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_gallery.png",
        "speedTip": "Insert a picture gallery",
        "tagOpen": "\n<gallery widths=600px heights=350px perrow=1>\n",
        "tagClose": "\n</gallery>",
        "sampleText": "Image:CTLTMS_Example1.PNG|''Caption1''\nImage:CTLTMS_Example2.PNG|''Caption2''"
    });

    var today = new Date();
    var monthNames = ["January", "February", "March", "April", "May", "June",
      "July", "August", "September", "October", "November", "December"
    ];
    var stndrdth = ["th","st","nd","rd","th","th","th","th","th","th"];
    var dayth = today.getDate() % 10;
    mwCustomEditButtons.push({
        "imageFile": "images/Button_CoverPage.png",
        "speedTip": "Insert an Document Title Page",
        "tagOpen": "{{Doc_Title\n|Client=ClientName\n|System=''CALIDUS'' System\n|Title=Doc Title\n|Reference=Document type and Supimix reference\n|Version=0.1\n|Date="+today.getDate()+stndrdth[dayth]+" "+monthNames[today.getMonth()]+" "+today.getFullYear()+"\n|Year="+today.getFullYear()+"\n}}\n",
        "tagClose": "",
        "sampleText": ""
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_LastPage.png",
        "speedTip": "Insert an Document Final Page",
        "tagOpen": "{{Doc_Appendix|\nAppendix=The Appendix Section. Defaults to A\n|Glossary=WCS|WMS|CTMS. Omit if no glossary is to be included.\n|Ref1=First reference document title. There can be up to 5 (Ref2, Ref3, etc). Omit those you do not want to use.\n|RefV1=First reference document version\n|RefDate1=First reference document date\n|Rev1=Authorising Name. Up to 3 may be specified (Rev2, Rev3)\n|Rev1Title=Job Title\n",
        "tagClose": "\n}}\n",
        "sampleText": "<!-- The following may also be added -->\n|Estimate=Enter Y if an estimate section is to be included. Use the following fields for the values. If the values are omitted, they default to Zero. Also include Client and Year for the correct rates.\n|REQ=Requirements Time\n|EST=Estimate Time\n|FS=Functional Specification Time\n|TS=Technical Specification Time\n|DEV=Development Time\n|ST=Testing Time\n|IMP=Implementation Time\n|Client=Client for estimate rates\n|Year=Year for estimate rates"
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_blockquote.png",
        "speedTip": "Insert an Estimate template",
        "tagOpen": "{{EstimateCostDetails\n|REQ=Requirements Days\n|EST=Estimation Days\n|FS=Functional Specification Days\n|TS=Technical Specification Days\n|DEV=Development Days\n|ST=Testing and Release Days\n|IMP=Implementation Days\n|Client=Client for charges|Year=Year for charges}}\n",
        "tagClose": "",
        "sampleText": ""
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_test_header.png",
        "speedTip": "Insert a test plan template",
        "tagOpen": "{{TestPlan_Header\n|Title=Title of test plan\n|Log=Supimix log reference\n|Description=description of what is to be achieved\n|MenuAccess=Where on the menus the item can be found\n|Prerequisites=The prerequisites of the test\n|Objective=The details of what each group of tests is to achieve\n}}\n{{ #vardefine: Cycle | 0 }}{{ #vardefine: SubCycle | 0 }}\n{{TestPlan_CycleHeader\n|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}\n|Title=Area being tested in this cycle\n|Notes=Any notes or prerequisites for the tests following.\n}}\n",
        "tagClose": "\n{{TestPlan_CycleFooter}}\n",
        "sampleText": "<!--INSERT TESTS HERE -->"
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_test_header.png",
        "speedTip": "Insert a test plan cycle",
        "tagOpen": "{{TestPlan_CycleHeader\n|Cycle={{ #vardefineecho: Cycle | {{ #expr: {{ #var: Cycle }} + 1 }} }}{{ #vardefine: SubCycle | {{ #var: Cycle }} }}\n|Title=Area being tested in this cycle\n|Notes=Any notes or prerequisites for the tests following.\n}}\n",
        "tagClose": "\n{{TestPlan_CycleFooter}}\n",
        "sampleText": "<!--INSERT TESTS HERE -->"
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_test_add.png",
        "speedTip": "Insert a new test",
        "tagOpen": "{{TestPlan_Test\n|Test={{ #vardefineecho: SubCycle | {{ #expr: {{ #var: SubCycle }} + 0.1 }} }}\n|Action=The actions to follow\n|Result=The expected result\n}}\n",
        "tagClose": "",
        "sampleText": ""
    });

    mwCustomEditButtons.push({
        "imageFile": "images/Button_insert_table.png",
        "speedTip": "Insert a table",
        "tagOpen": '{| class="wikitable" border="1"\n|- bgcolor="silver"\n',
        "tagClose": "\n|}\n",
        "sampleText": "! header1 !! header2 !! header3\n|-\n| cell1 || cell2 || cell3"
    });


    mwCustomEditButtons.push({
        "imageFile": "images/Button_comment.png",
        "speedTip": "Insert a comment",
        "tagOpen": '{{comment|text=',
        "tagClose": "\n|sign=[[User:"+wgUserName+"]]|date="+today.getDate()+"/"+(today.getMonth()+1)+"/"+today.getFullYear()+" "+today.getHours()+":"+today.getMinutes()+":"+today.getSeconds()+"}}\n",
        "sampleText": "Your Comment Here"
    });

Edit MediaWiki:Vector.js (index.php?title=MediaWiki:Vector.js&action=edit or just search for MediaWiki:Vector.js) and add the following:

window.onload = function (e) {
  document.getElementById('mw-panel').style.position='fixed';
}


Export the following pages and files from an existing Wiki:

  • Pages
Template:Note
Template:Warning
Template:Meta
Template:Clear
Template:Hl2
Template:Hl3
Template:Prettytable
Template:!
Template:Comment
Template:Doc_Appendix
Template:Doc_Title
Template:EstimateCostDetails
Template:TestPlan_CycleFooter
Template:TestPlan_CycleHeader
Template:TestPlan_Header
Template:TestPlan_Test
Template:Estimate_Head
Template:WCS_Glossary
Template:WMS_Glossary
Template:EPOD_Glossary
Template:CTMS_Glossary
Template:FS
Template:Estimate
Template:REQ
Template:DocLink
Help:Contents
Help:PDF_Book
Help:CreateNewPage
  • Files:
OBS_Logistics_Logo.JPG
Bulbgraph.png
Attention_niels_epting.png

Import the pages into the new Wiki through the Special:Import page.

Upload the images into the new Wiki through the Special:Upload page.

The Wiki should now be ready for use.

Creating Users

Create users using Email - they will then become autoconfirmed users.

Any users you don't want to track edits (i.e. non-patrolled), add them to the Creator group.