Difference between revisions of "Synchronisation of wikifabs"
(→configure remote wiki) |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | == Context == | |
The wikifab source code is available to anyone for free. | The wikifab source code is available to anyone for free. | ||
Line 5: | Line 5: | ||
Many organizations have installed their own wikifab-based-site on their own server and they would like to publish some of their tutorials (created on their wikifab) to www.wikifab.org (or to another wikifab instance). | Many organizations have installed their own wikifab-based-site on their own server and they would like to publish some of their tutorials (created on their wikifab) to www.wikifab.org (or to another wikifab instance). | ||
− | + | == State of the art == | |
Mediawiki comes with a bunch of API that can be use to synchronize content among wikifab instances | Mediawiki comes with a bunch of API that can be use to synchronize content among wikifab instances | ||
Line 12: | Line 12: | ||
You can find the API documentation here: https://www.mediawiki.org/wiki/API:Main_page | You can find the API documentation here: https://www.mediawiki.org/wiki/API:Main_page | ||
− | + | == Installation guide == | |
The guide to install a wikifab instance is here : https://github.com/Wikifab/wikifab-main | The guide to install a wikifab instance is here : https://github.com/Wikifab/wikifab-main | ||
− | + | == Features == | |
− | === | + | === Login === |
APIs call need to log in on the target wiki. We imagine two different ways : | APIs call need to log in on the target wiki. We imagine two different ways : | ||
Line 26: | Line 26: | ||
2nd way : an access key is configured globaly on the source wiki, and linked to one unique account on the target wiki. As the result, every tutorials synchronised to the source wiki will appear to be done by an user corresponding to the source wiki (which can be a specific type of user). | 2nd way : an access key is configured globaly on the source wiki, and linked to one unique account on the target wiki. As the result, every tutorials synchronised to the source wiki will appear to be done by an user corresponding to the source wiki (which can be a specific type of user). | ||
− | === | + | === Configure remote wiki === |
Admin of the source wiki must be able to configure a remote wiki to be a target wiki for sync tutorials. | Admin of the source wiki must be able to configure a remote wiki to be a target wiki for sync tutorials. | ||
Line 39: | Line 39: | ||
This could be done in the configuration file LocalSettings.php | This could be done in the configuration file LocalSettings.php | ||
− | + | === Push a tutorial to wikifab === | |
Once a remote wiki is configured, a button "sync tutorial to <remote wiki name>" should appear an each tutorial. | Once a remote wiki is configured, a button "sync tutorial to <remote wiki name>" should appear an each tutorial. | ||
Line 45: | Line 45: | ||
Click on this button will send the tutorial content, with images to the target wiki. | Click on this button will send the tutorial content, with images to the target wiki. | ||
− | + | === Dealing with conflicts === | |
'''When modification was made on parent''' | '''When modification was made on parent''' | ||
'''When modification was made on child''' | '''When modification was made on child''' |
Latest revision as of 15:23, 18 November 2016
Contents
Context
The wikifab source code is available to anyone for free.
Many organizations have installed their own wikifab-based-site on their own server and they would like to publish some of their tutorials (created on their wikifab) to www.wikifab.org (or to another wikifab instance).
State of the art
Mediawiki comes with a bunch of API that can be use to synchronize content among wikifab instances Those APIs enable to create, view and edit pages.
You can find the API documentation here: https://www.mediawiki.org/wiki/API:Main_page
Installation guide
The guide to install a wikifab instance is here : https://github.com/Wikifab/wikifab-main
Features
Login
APIs call need to log in on the target wiki. We imagine two different ways :
1st way : either each user on the source wiki must specified an access key on their preference, to link their account on the source wiki to an account on the target wiki. As the result, every tutorials synchronised to the source wiki will appear to be done by the user who do the sync action.
2nd way : an access key is configured globaly on the source wiki, and linked to one unique account on the target wiki. As the result, every tutorials synchronised to the source wiki will appear to be done by an user corresponding to the source wiki (which can be a specific type of user).
Configure remote wiki
Admin of the source wiki must be able to configure a remote wiki to be a target wiki for sync tutorials.
It means :
- add name of the target wiki
- add url of the target wiki
- if needed, add login keys
Additionally, it may require some additional configuration : if categories has been changed, we must set a matching table to match a category from the source wiki, to a category on the target wiki. It may require more configuration if form template is changed. It may also be required on the target wiki to check that the tutorial content match actual forms fields.
This could be done in the configuration file LocalSettings.php
Push a tutorial to wikifab
Once a remote wiki is configured, a button "sync tutorial to <remote wiki name>" should appear an each tutorial.
Click on this button will send the tutorial content, with images to the target wiki.
Dealing with conflicts
When modification was made on parent
When modification was made on child