Assist Support Guide

From Calidus HUB

The intention of this guide is to provide support information, and a general knowledge base and tips for the ongoing maintenance of Assist implementations.


Requirements

MySQL WorkBench

Access to the Assist server.


Hosted Systems

All hosted systems are documented in SharePoint, along with users and passwords.

You must have access to the SharePoint to read this document.

https://apteanonline.sharepoint.com/teams/CALIDUS-CONNECTIONS/Shared%20Documents/Forms/AllItems.aspx?id=%2Fteams%2FCALIDUS%2DCONNECTIONS%2FShared%20Documents%2FCalidus%20Assist&viewid=fffc6c78%2D04de%2D4e7d%2Db3ec%2D62168ff125fb


Updating Data En Mass

By default, MySQL will not allow updating of data without explicit WHERE or LIMIT clauses. To enable this:

  • Go to "Edit/Preferences"
  • Choose "SQL Editor" Under "Query Results"
  • Check "Safe Updates"
  • Restart MySQL WorkBench.

Warning Warning: You will then be able to (for example) delete all data inadvertently, so enable this option with care.


Viewing BLOB fields

By default, MySQL WorkBench displays all text fields as "BLOB", which you must then right-click and choose "Open Value in Editor". To enable viewing the text directly in the results, do the following:

  • Go to "Edit/Preferences"
  • Choose "SQL Editor" Under "Query Results"
  • Check "Treat BINARY/VARBINARY as nonbinary character string"
  • Restart MySQL WorkBench.

Note Note: Enabling this option comes with a performance hit - some text fields contain the entire page data, so enable this with care.


Recovering passwords from MYSQL Workbench

First go check where your encrypted file is. Usually it is stored at %AppData%\MySQL\Workbench\workbench_user_data.dat

If different, amend the commands below.


Use Powershell

Add-Type -AssemblyName System.Security
$cipher = Get-Content $env:APPDATA\MySQL\Workbench\workbench_user_data.dat -Encoding Byte -Raw
$scope = [System.Security.Cryptography.DataProtectionScope]::CurrentUser
$mysqlpwd = [System.Security.Cryptography.ProtectedData]::Unprotect( $cipher, $null, $scope )
[System.Text.UTF8Encoding]::UTF8.GetString($mysqlpwd)


Common Queries

-- Assist SQL

-- Find the page ID
SELECT * FROM obs_assist.obs_page
WHERE PAGE_TITLE LIKE '%SDD_366558%';


-- Find all revisions (to change comments)
SELECT * FROM obs_assist.obs_revision
where rev_page IN 
(SELECT page_id FROM obs_assist.obs_page
WHERE PAGE_TITLE LIKE '%SDD_366558%'
);

-- Find unpatrolled pages to set them patrolled
SELECT * 
FROM obs_assist.obs_recentchanges
where rc_patrolled = 0;

UPDATE obs_assist.obs_recentchanges
SET rc_patrolled = 1
where rc_user_text = 'StylesC'
and rc_patrolled = 0;

-- Check the logs for details of PDF production
SELECT * FROM mts_assist.oh_logging
where log_action ='PdfBook'
order by log_id desc;

-- For v1.34 and later, comments have changed:
SELECT log.*, CONVERT(comment.comment_text USING utf8) comment
FROM epod_assist.epodlogging log 
left join epod_assist.epodcomment comment
on comment.comment_id = log.log_comment_id
where log_action ='PdfBook'
ORDER BY log_id DESC
LIMIT 20;


Assist Database Backup

Backup each database separately.

Use MySQL Administrator Data Export option.


Always check boxes as follows:

  • Dump Stored Procedures and Functions
  • Dump Events
  • Dump Triggers
  • Export to Self-contained File
    • Name with the name of the Assist on the start of the dump.
  • Include Create Schema

Advanced Options button

  • Comments
  • Create-options
  • quote-names
  • lock-tables
  • dump-date
  • disable-keys
  • tz-utc
  • add-locks
  • extended-insert

Start Export


Assist Database Restore

If required, drop the database from MySQL Administrator:

  • On Schema explorer, right click on schema and select Drop Schema.

Use MySQL Administrator Data Import/Restore option.

  • Import from self-contained file
  • Select the database backup dump
  • Click Start Import
  • Refresh the schema explorer when done - the database should be present.


Restore database users, passwords and permissions when complete.

Will need to create the assist owner with username and password from LocalSettings.php

  • From MySQL Admin Management Explorer
  • Users and Privileges
  • Add Account
    • Login Name and Password - as per LocalSettings.php
  • Administrative Roles tab - check DBA, which checks everything
  • Schema Privileges - add entry
    • Selected Schema
    • Check everything (click Select 'ALL' button)
  • Click Apply

Normal Assist users will need to be reset either by the users through 2FA, or through #Resetting User Passwords.


Creating Users/Resetting User Passwords

It is ALWAYS better to create a new user on the Wiki from the Special page "Create Account". In here, you should create the user and enter the email. This will send an email to the user to reset their own password.

However, in the event of coreecting a problem, this can be done from the command line:

{InstallDrive}:\xampp\php\php.exe {InstallDrive}:\xampp\htdocs\calidus-assist\{wikiname}\maintenance\createAndPromote.php {uname} {pwd}

Warning Warning: You must change to the root of the install drive or this will not work e.g. enter "{InstallDrive}:" at the command prompt BEFORE the previous command.

You can also add some parameters to promote the user with group rights, as follows:

--bureaucrat	Add the account to the bureaucrat group
--sysop	Add the account to the sysop group
--interface-admin	Add the account to the interface-admin group
--custom-groups	Comma-separated list of groups to add the user to. This allows adding the user to any custom group.
Since MW 1.27, a user is only added to a custom group, if this group actually exists according to $wgGroupPermissions and $wgRevokePermissions. Non-existing groups are ignored.
--force	If account already exists, just grant it rights or change password. Do not create a new account in this case.


In the event of needing to change a password, it is ALWAYS better to get the user to do it themselves - if the email has been set up, they can access the reset from there.

System admins can also force the sending of the reset password link from Special:ResetPassword.

In the event that this is simply correcting a previously set password, you can use the command line:

{InstallDrive}:\xampp\php\php.exe {InstallDrive}:\xampp\htdocs\calidus-assist\{wikiname}\maintenance\changePassword.php --user={uname} --password={pwd}


Warning Warning: You must change to the root of the install drive or this will not work e.g. enter "{InstallDrive}:" at the command prompt BEFORE the previous command.


Upgrading a Wiki from 1.16 Upwards

The following is a checklist of actions.

{SYSTEM}

  • Extracted - INCOMPLETE
  • DB Import - INCOMPLETE
  • DB User - INCOMPLETE
    • {SYSTEM}_owner/{PASSWORD}
  • Version 1.31.6 - INCOMPLETE
    • Move old extensions to old folder - INCOMPLETE
    • Recreate LocalSettings.php
    • Update password sender and emergency contact
  • Version 1.34.4 - INCOMPLETE
    • Leave LocalSettings.php
    • May need to remove some extensions like numberformat and variables
  • Version 1.39.8 - INCOMPLETE
    • Leave LocalSettings.php
  • New Extensions and files - INCOMPLETE
    • Overwrite MW-add-files - INCOMPLETE
  • LocalSettings.php - INCOMPLETE
    • require_once "$IP/LocalSettingsAdditional.php";
  • Gadgets and MediaWiki css/js hacks - INCOMPLETE
    • Import MW-hacks.xml file - INCOMPLETE
  • Templates - INCOMPLETE
    • Import MW-Templates.xml - INCOMPLETE
  • Additional Files - INCOMPLETE
    • C:\Users\twalker\OneDrive - Aptean-online\Documents\Work\Assist\OBS Templates Export
      • Aptean_Logo.png
      • Attention_niels_epting.png
      • Bulbgraph.png
      • Hint.png
  • About/General Disclaimer/Privacy Policy - INCOMPLETE
  • Users - INCOMPLETE
    • admin/Liverpool123
    • anw/Liverpool123
  • Problems
    • NONE


Creating a Brand New Wiki

The following is a checklist of actions.

  • Copy version 1.39.8 to a WIKI name - INCOMPLETE
    • Create LocalSettings.php
    • xxx_owner with appropriate password
    • Note the password!
  • New Extensions and files - INCOMPLETE
    • Overwrite MW-add-files - INCOMPLETE
  • LocalSettings.php - INCOMPLETE
    • require_once "$IP/LocalSettingsAdditional.php";
  • Gadgets and MediaWiki css/js hacks - INCOMPLETE
    • Import MW-hacks.xml file - INCOMPLETE
  • Templates - INCOMPLETE
    • Import MW-Templates.xml - INCOMPLETE
  • Additional Files - INCOMPLETE
    • C:\Users\twalker\OneDrive - Aptean-online\Documents\Work\Assist\OBS Templates Export
      • Aptean_Logo.png
      • Attention_niels_epting.png
      • Bulbgraph.png
      • Hint.png
  • About/General Disclaimer/Privacy Policy - INCOMPLETE
  • Users - ensure that there is at least an Admin user with full user rights. Note the password:
    • Log in as administrative user
    • Special:Create Account
    • Create admin account - note the password.
    • Special:User Rights
    • Check Administrator, Interface Administrator, Bureaucrat and Suppressor
    • Save user groups


Extracting Hacks

  • Extract from MTS Assist
  • Special Pages
  • Export Pages
  • Add the pages specifically below
MediaWiki:Common.js
MediaWiki:Group-user.css
MediaWiki:Common.css
MediaWiki:Vector.css
MediaWiki:Timeless.css
MediaWiki:Gadget-veCenterLoader.js
MediaWiki:Gadget-autonum
MediaWiki:Gadget-autonum.js
MediaWiki:Gadget-autonum.css
MediaWiki:Gadget-veCenterLoader
MediaWiki:Gadget-veCenter.js
MediaWiki:Gadgets-definition
  • Ensure the following are checked/unchecked:
    • Include only the current revision, not the full history - CHECKED
    • Include templates - UNCHECKED
    • Save as file - CHECKED
  • Export to MW-hacks.xml


Extracting Templates

  • Extract from MTS Assist
  • Special Pages
  • Export Pages
  • Add the pages specifically below
Template:DocLink
Template:Doc_Title
Template:Comment
Template:Incomplete
Template:Note
Template:Hint
Template:Warning
Template:Xref
PageTemplate
DocTemplate
  • Ensure the following are checked/unchecked:
    • Include only the current revision, not the full history - CHECKED
    • Include templates - UNCHECKED
    • Save as file - CHECKED
  • Export to MW-Templates.xml


Extracting Common Additional Files

Take the following from an Assist implementation that has them:

Aptean_Logo.png
Attention_niels_epting.png
hint.png
Bulbgraph.png
  • Special:All Pages
  • Enter start of file name in "Display pages starting at:"
  • Select File Namespace from drop-down list and then click Go.
  • Click on the file until a full-screen version appears.
  • Right-click, Save Image As
  • Save to your chosen directory.


Extracting Namespace Files

  • Extract from an existing Assist
  • Special Pages
  • Export Pages
  • Add the pages specifically below, replacing the namespace with the namespace of the Assist system - in this case this is from CTMS Assist:
CTMS:Privacy_policy
CTMS:General_disclaimer
CTMS:Copyrights
CTMS:About
  • Ensure the following are checked/unchecked:
    • Include only the current revision, not the full history - CHECKED
    • Include templates - UNCHECKED
    • Save as file - CHECKED
  • Export to MW-Namespace.xml

Note Note: You will then need to amend the About page to change the product name and copyright dates.


Importing Additional Files, Templates and Hacks into a Wiki

  • Ensure that all additional files from MW-add-files have been added.
  • Upload additional files:
    • Special:Upload Multiple Files
    • Add a description if you want
    • Select the following files:
Aptean_Logo.png
Attention_niels_epting.png
hint.png
Bulbgraph.png
  • As soon as you select the files, the files will be uploaded. The page will indicate if there is any error uploading the files (for example if they already exist)
  • Upload hacks and templates:
    • Special Pages
    • Import Pages
    • Browse for the file to import, one of (do both)
      • MW-hacks.xml
      • MW-Templates.xml
    • Set InterWiki prefix to the name of the Wiki e.g. MTS, Portal, CTLTMS, etc
    • Add a comment if you want.
    • Ensure option "Import to original namespace" is selected
    • Upload File.


Importing Namespace Files

  • Special Pages
  • Import Pages
  • Browse for the file to import
    • MW-Namespace.xml
  • Set InterWiki prefix to the name of the Wiki e.g. MTS, Portal, CTLTMS, etc
  • Add a comment if you want.
  • Ensure option "Import to a namespace" is selected
  • Select the namespace from the drop-down list that matches the Assist being imported into, for example, MTS for CTMS, EPOD for C-ePOD, etc
  • Upload File.


Additional Actions

The following are additional actions that are required, with some sample pages.

  • MediaWiki:Pagetitle-view-mainpage - change this text to define the title of the wiki e.g. Assist - OBS Hub
  • Update the main page - the MTS one is the one with all the best notes in.
  • Update the Did You Know page with the common Assist-based help topics - there is an example in this Assist of a Did You Know page which can be copied or exported, imported and then edited.
  • "Download as PDF" to "Print as PDF" - e.g. "Print as PDF tab in the tab bar, typically on the top of the screen".

About

''CALIDUS'' TMS System Copyright © 2000-{{CURRENTYEAR}} [https://aptean.com/ Aptean]. All Rights Reserved.

''CALIDUS'' Assist System Copyright © 2011-{{CURRENTYEAR}} [https://aptean.com/ Aptean]. All Rights Reserved.

The information contained herein is the property of Aptean and is supplied without liability for errors or omissions. No part may be reproduced or used except as authorised by contract or other written permission. The copyright and foregoing restriction on reproduction and use extend to all media in which the information may be embodied.

Disclaimer

Copyright Aptean © 2011-{{CURRENTYEAR}}

The information contained herein is the property of Aptean and is supplied without liability for errors or omissions. 

It is also added to and maintained from various other sources outside of Aptean and may be from but not limited to customers of Aptean. No declaration is made that this documentation is up to date or valid for the version of the application being described here, as pertains to the version of the software installed for the customer.

No part may be reproduced or used except as authorised by contract or other written permission. The copyright and foregoing restriction on reproduction and use extend to all media in which the information may be embodied.

Privacy Policy

All content submitted to this documentation is the property of Aptean and will be made available to all customers of Aptean.


Copyrights

== Content ==
{{:{{NAMESPACE}}:General_disclaimer}}

== MediaWiki ==
You can find the MediaWiki license, contributors, FOSS attributions and components here: 
* [[Special:Version]].

Support Issues

Seeing a Cat in the Background

There is a cat.svg linked from Timeless skin. (/calidus-assist/OBS/skins/Timeless/resources/images/cat.svg). This is the default.

This is configurable in skin.json in the Timeless directory for your Wiki. i.e. D:\xampp\htdocs\calidus-assist\OBS\skins\Timeless\skin.json

Solution: Set this to user-grey.svg instead.

	"config": {
		"TimelessBackdropImage": {
			"value": "user-grey.svg",
			"description": "Set it as you would $wgLogo to an appropriate background image. Recommendation is an svg set to 500-750px wide"
		},

With multiple wiki installs, this is onerous. To facilitate changing multiple wiki installs, there is a directory in D:\Assist Install Files\MW-add-files called skins.

To apply:

  • Copy the directory skins.
  • Navigate to your Assist main folder e.g. D:\xampp\htdocs\calidus-assist\WMS
  • Paste - this will overwrite the config file with the corrected one.

Warning Warning: This file is delivered with MediaWiki. A new install will overwrite this file. If you have updated MediaWiki or installed a new version of the Timeless skin, then compare the saved skin.json file with the new one and update with any new/changed attributes.