Skip to content

Latest commit

 

History

374 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Latest Release webtrees major version webtrees major version

Custom Module Manager for webtrees

A webtrees 2.2/2.3 custom module to manage custom modules.

Table of contents

This README file contains the following main sections:

What are the benefits of this module?

Features:

  • Provide a list of available custom modules for webtrees 2.2 and 2.3
  • Check the compatibility of custom modules with the webtrees versions 2.2 and 2.3
  • Support the download of custom modules
  • Support the installation of custom modules
  • Support the update of custom modules
  • Support activating/deactivating of custom modules
  • Support deleting custom modules

Optionally planned features:

  • Save and restore the settings of a custom module

Screenshot

Screenshot

Installation

  • Download the latest release of the module by downloading the "custom_module_manager_v*.zip" file from "Assets". Do not download "Source code.zip".
  • Unzip the downloaded file and copy the included folder custom_module_manager" into the "module_v4" folder of your webtrees installation
  • Check if the module is activated in the control panel:
    • Login to webtrees as an administrator
      • Go to "Control Panel/All Modules", and find the module called "Custom Module Manager"
      • Check if it has a tick for "Enabled"

GitHub and Codeberg API Tokens

The custom module makes intensive use of the GitHub and Codeberg APIs to retrieve module versions and download URLs. However, the frequency of API calls for a certain IP address is limited. In order to significantly increase the allowed frequency of API calls, API tokens are required.

The module allows to provide GitHub and Codeberg API tokens in the module settings.

How to get a GitHub API token?

In order to get an API token from GitHub, the following steps need to be taken:

  • Open the GitHub page and log into your GitHub account
  • Click on the symbol for your user account on the top right side of the browser
  • Choose "Settings" from the profile menu
  • Choose "Developer settings" on the bottom left side
  • Choose "Personal access tokens"
  • Choose "Tokens (classic)"
  • Click on "Generate new token" button on the right side
  • Choose "Generate new token (classic)"
  • Enter a note, e.g. "API token for webtrees Custom Module Manager"
  • Choose an expiration date. Since the provide rights are unspecific (if you do not select any options), it is acceptable to choose "No expiration" (even if GitHub does not recommend this).
  • Do NOT select any options
  • Press "Generate token" button at the bottom of the page

How to get a Codeberg API token?

In order to get an API token from Codeberg, the following steps need to be taken:

  • Open the Codeberg page and log into your Codeberg account
  • Click on the symbol for your user account on the top right side of the browser
  • Choose "Settings" from the profile menu
  • Choose "Applications"
  • Press button "New access token"
  • Enter a token name, e.g. "API token for webtrees Custom Module Manager"
  • Select "Public only"
  • Select "package:Read"
  • Select "repository:Read"
  • Press "Generate token" button at the bottom of the page

How to use the module?

  • Go to "Control Panel/All Modules" and find the "Custom Module Manager" module
  • Go to the module settings
  • Optionally, enter GitHub and Codeberg API tokens
  • Press the "Manage custom modules" button
  • Optionally: Activate list menu item in the module settings
  • If activated: Select menu "Lists" => "Custom Module Manager"

View: Custom Module List

Screenshot

View: Upgrade Wizard

Screenshot

View: Module Information

Screenshot

PHP and webtrees Version

  • PHP 8.3 or higher
  • webtrees greater or equal to 2.2.3

Translation

Currently, the following languages are available:

  • Catalan
  • Chinese
  • Danish
  • Dutch
  • English
  • French
  • German
  • Islandic
  • Italian
  • Polish
  • Russian
  • Spanish

You can help to translate this module. The language files are available on POEditor, where you can update or add a language.

Alternatively, you can directly edit the .po translation text files, which can be found in /resources/lang/. You can use a specific editor like Poedit or a text editor like notepad++ to work on translations and provide them in the GitHub repository of the module. You can do this via a pull request (if you know how to do), or by opening a new issue and attaching a .po file.

Updated translations will be included in the next release of this module.

Bugs and Feature Requests

If you experience any bugs or have a feature request for this webtrees custom module, you can create a new issue.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Contributions and Copyrights

GitHub Repository

https://github.com/Jefferson49/CustomModuleManager

About

A webtrees 2.2 custom module to manage custom modules within webtrees

Resources

Stars

13 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages