GeneWeb plugins
Language: | English • Deutsch • français |
---|
Plugins
GeneWeb version 7.1 offers a plugin mechanism allowing functional extensions without impacting the core operation of the system.
Developers should explore existing plugins to infer the overall mechanism, but it should be noted that such development requires a good understanding of both the OCaml language and GeneWeb itself.
Developers will find plugins in the plugins
folder of the GitHub repository.
In the plugins folder, each plugin is in a sub_folder names pl_name_plugin
.
The command make distrib
will compile those plugins and install then in a distribution/plugin
folder.
Ressources (templates, images, lexicon entries) associated with each plugin are located in an assets
sub folder.
Plugins are loaded by gwd
at launch time through the parameter -plugins
(or -unsafe_plugins
) pointing to the location of the plugins.
In addition, the user must specify in his .gwf
parameter file those plugins he wants activated through a line such as:
plugins=pl1,pl2,pl3
where pli
is the name of the desired plugin.
Existing plugins
Carrousel
WIP. Implements a carrousel display function for multiple images associated with a person. Provides the functions to upload and manage these images.
Cgl
The cgl
plugin is an example of plugin whose function is limited to a post processing of the data produced by GeneWeb, removing in this data stream all occurrences of href
.
This plugin supersedes the cgl=on
command one can add to the URL to ask for suppression of href links.
Export
Exports to .GED
or .gw
format the content of a base.
Invoqued through a m=EXPORT
command with the following parameters:
output=GED/GW
select export formatspouses=on/off
parents=on/off
children=on/off
notes=/nn/nnn
sources=on/off
isolated=on/off
pictures=on/off
isolated=on/off
Details tbd.
Forum
Isolate in a plugin the forum functions.
No index
Implements the opt=no_index
parameter in the URL. Replaces non stable instances of i=index
by their stable values p=first_name;n=surname;oc=occ
.
V7
The v7 plugin regroups in a single place the traditional V7 behavior of GeneWeb (over time a V8 plugin may offer a new set of templates).
All GUI related informations that were located in the hd
repository folder are now located in plugins/v7/assets
.
Several .ml
files (cousins, date, descend, interp, perso, place, some, sosa, srcfile, templ) implement slight (or significant) variations from the core GeneWeb behavior.
The following new commands are implemented in this plugin:
m=A;t=FC
: display ancestry of a person in fan-chart format.m=C;l1=x;l2=y
: computes number of "cousins" x levels up and y level down.m=D
: print descendants lists or tables using v7 template interpretor.m=DOC
: operates asm=SRC
with additional.html
and.pdf
formats. Allows files to be stored in sub-foldersm=L
: print a list of persons (used with them=PS
command below).m=P
: print the list of persons with a given first_name, with additional options.m=PS
: prints the list of surnames associated with a place for a given set of events (birth, baptism, marriage, death, burial).
V7 images
Isolates in a plugin the image manipulations functions. Details tbd.
Welcome
This plugin inverts the order of the two data entry lines for the search of the welcome page, and proposes some additional behaviors during this search. WIP
Xhtml
Tbd.