Inside Mod Manager v12

From TNG_Wiki
Jump to navigation Jump to search

Programmer's Reference

This technical reference is intended for those who will be maintaining or updating Mod Manager code for version 12 and later. It presupposes the reader already has working knowledge of TNG, Mod Manager, PHP, PHP OOP, and Javascript/jQuery. Mod Manager does not currently require MySQL.

Mod Manager's core functionality is to modify the TNG environment in some useful way by modifying existing files or adding new ones as directed by a mod configuration file. Targets for modification can be any writable text files, including PHP program files, configuration files and language support files.

If you would like more detail or better explanations, let us know and we'll do our best.

History

Many TNG users modify their code to enhance the appearance and functionality of their genealogy websites. Mod Manager was created to help them share their enhancements, known as mods, with other users and make it easy for them to install and uninstall them across TNG or mod upgrades. Many popular mods have been incorporated into TNG by its author, Darrin Lythgoe.

The first Mod Manager was written by Brian McFadyen and was updated by Sean Schwoerer to take advantage of PHP Object Oriented Programming. Over the years TNG users, with guidance and assistance from Ken Roy, added functionality and eventually Mod Manager was integrated into the main TNG program.

Ken Roy twice organized groups of interested TNG users for major updates, the first for TNGv10 and the second for TNGv12. In both efforts Rick Bisbee was the lead programmer, with code contributions from Ken Roy, Jeff Robison and others. More than a dozen TNG users and mod developers participated in testing over periods of many months.

Brian McFadyen and Sean Schwoerer have moved on now, but they would undoubtedly be amazed to see how their original creation has thrived and matured.

Chapters

Inside Mod Manager v12 (Home)

  1. Mod Manager and OOP
  2. Page Headings
  3. Main Script
  4. Class Modbase
  5. Class Modparser
  6. Class Modlister
  7. Class Modinstaller
  8. Class Modeditor
  9. Class Modremover
  10. Class Moddeleter
  11. Formulas
  12. Mod Options
  13. Mod Logging
  14. Tools
  15. Issues