Difference between revisions of "Inner Mod Menus"

From TNG_Wiki
Jump to navigation Jump to search
(mod v1a with Norwegian and French translations)
 
(32 intermediate revisions by 10 users not shown)
Line 1: Line 1:
<div class='toccolours'>
+
{| border="3" cellspacing="0" cellpadding="2" class="wikitable"
This article describes an '''''optional''''' utility mod that does not change any TNG program, but rather installs PHP libraries (i.e. Include files consisting of functions that are called by a parent program) that implement functionality specified by other mods.
+
| '''In TNGv14, this mod has been absorbed into [[Mod Settings Blocks]]'''. This article is still the best documentation of the Inner Mod Menus ''feature''.
  
As of May, 2020, my mods are in transition from a shared version of the Inner Mod Menu libraries that was automatically installed with each mod. I am transitioning to this standalone mod because it turned out to be too hard to update the automatically-installed shared libraries.  The "Related Mods" and "Installation" sections of each mod's Wiki article tell which type of library that mod uses, and thus whether rely on the Inner Mod Menus mod. In any case, you never ''have to install'' Inner Mod Menus.
+
Mods Settings Blocks now has a mod setting (in a Mod Settings Block, of course) that can disable Inner Mod Menus, which are enabled by default.
 
+
|}
Finally, though any mod programmer ''could'' implement Inner Mod Menus, practically speaking, they are only used in my mods. Thus, I will break Wiki conventions and use first person pronouns in this article.
 
- Robin Richmond 5 May 2020</div>
 
 
{{TNGmod
 
{{TNGmod
 
| mod_name        =  Inner Mod Menus
 
| mod_name        =  Inner Mod Menus
|  mod_summary    = Provides PHP function libraries that create and display "Inner Mod Menus" and "New Tab Flags" in programs that been modified by numerous other mods. This mod does not modify any TNG programs; it simply installs the code that numerous other mods call to create Inner Mod Menus and New Tab Flags in the programs that ''they'' modify.
+
|  mod_summary    = Provides PHP function libraries that display "Inner Mod Menus" and "New Tab Flags" that have been specified by other mods.
 
| mod_validation  =  
 
| mod_validation  =  
| mod_last_update = 22 May 2020
+
| mod_last_update = 15 Dec 2022
| download_link  =  [[Media:inner_mod_menus_v12.0.0.1a.zip|v12.0.0.1a]]{{Tv120}}
+
| download_link  =  (Retired in TNGv14) {{Tv140}}
 +
<div style='clear:both;'>[[Media:inner_mod_menus_v13.0.0.2c.zip|v13.0.0.2c]]{{Tv130}}</div>
 
| download_stats  =
 
| download_stats  =
 
| mod_author      = [[User:Robinrichm|Robin Richmond]]
 
| mod_author      = [[User:Robinrichm|Robin Richmond]]
 
| mod_url        = ''This page''
 
| mod_url        = ''This page''
 
| mod_contact    = [http://www.robinrichmond.com/family/mod_support.php My Mod Support form]
 
| mod_contact    = [http://www.robinrichmond.com/family/mod_support.php My Mod Support form]
| mod_support    = [http://www.robinrichmond.com/family/mod_support.php My Mod Support form] or [http://tng.community/ TNG Community Forums]
+
| mod_support    = [http://www.robinrichmond.com/family/mod_support.php My Mod Support form]
| mod_version    = 12.0.0.1a
+
| mod_version    = 13.0.0.2c
 
| min_TNG_ver    = 12.0
 
| min_TNG_ver    = 12.0
| max_TNG_ver    = 12.3
+
| max_TNG_ver    = 13.0.3
|  TNG_file_list  = English cust_text.php; '''Installs''' rr_innermodmenu_lib.php, rr_innermodmenu_newtabs.php, rr_rrrrcemeteriessearch_ajx.php, rrcemeteriessearch_lib.php;<br>'''May Install''' rrshared_innermodmenu3.php, rrshared_modsettingsblocks3.php, rrshared_wikilogo.gif
+
|  TNG_file_list  = genlib.php, genstyle.css, English, French, Norwegian cust_text.php; '''Installs''' rrinnermodmenu_lib.php, rrinnermodmenu_newtabs.php, rrinnermodmenu_wiki.gif
| related_mods  = [[Cemetery Edit]], [[Admin Places Geocode]], [[Field Buttons]]
+
| related_mods  = Many - see [[#Related_Mods|Related Mods]]
| notes    =   
+
| notes    =  In TNGv12, the installed filenames are slightly different.
}}
+
}}== Purpose of the Mod ==
== Purpose of the Mod ==
+
To enable the display of
To allow other mods to display
 
 
# "Inner Mod Menus", which provides handy information about what a mod does to a particular program and handy access to the mod's options, and
 
# "Inner Mod Menus", which provides handy information about what a mod does to a particular program and handy access to the mod's options, and
# "New Tab Flags", which make it easy to see when new tab-menu tabs have been added by a mod, and to identifythe mod that installed them.
+
# "New Tab Flags", which make it easy to see when new tab-menu tabs have been added by a mod, and to identify the mod that installed them.
 +
that have been specified by other mods. It is not <i>required</i> by those other mods, however. If it is not installed, the menus and flags specified by the other mods are simply not visible.
 
{| style="margin-right:0.5 em;" align="right" ; "font-size:120%";  
 
{| style="margin-right:0.5 em;" align="right" ; "font-size:120%";  
 
| __TOC__
 
| __TOC__
 
|}
 
|}
# "Inner Mod Menus", which provides handy information about what a mod does to a particular program and handy access to the mod's options, and
+
== Inner Mod Menus ==
# "New Tab Flags", which make it easy to see when new tab-menu tabs have been added by a mod, and to identify the mod that installed them.
+
An "Inner Mod Menu" is a drop-down menu that mods add to programs that they change in some arbitrarily "significant" way. The idea is to provide handy links to information about the mod and to the mod's options.
 +
 
 +
Here is an example of an Inner Mod Menu for a TNG page that is affected by three different mods, one of which has mod options in a '''[https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Block]'''. Inner Mod Menus drop down from the label "Mod Information" at the right end of the standard TNG "Inner Menu", which is the light-on-dark link menu immediately below the standard Tab Menu.<br>[[Image:show_inner_mod_menus.jpg]]
  
== Inner Mod Menus ==
+
'''Significantly, Inner Mod Menus are visible ''only'' to TNG Administrators, even when they appear in end-user programs.'''
An "Inner Mod Menu" is a drop-down menu that some mods add to programs that they change in some significant way. The idea is to provide handy reference to information about the mod and handy access to the mod's options. Significantly, Inner Mod Menus are only visible to TNG admins, never to end-users. Most of my Admin mods generate Inner Mod Menus, whereas Inner Mod Menus appear in only a few end-user programs.
 
  
Inner Mod Menus can contain links to
+
For each mod in an Inner Mod Menu, the menu can link to
 
# The mod's Wiki article,
 
# The mod's Wiki article,
 
# The section of the Wiki article that describes mod options,
 
# The section of the Wiki article that describes mod options,
# A direct link to the mod's options, if the options are defined in a '''[https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Block]'''
+
# The mod's options, if the options are defined in a '''[https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Block]'''
# A popup window that succinctly describes what the mod has changed in the program.
+
# A popup that succinctly describes what the mod has changed in the program.
 
All but the first of these possible menu items are optional; the second and third only exist if the mod has options, and the fourth exists only if the mod programmer has created such a description.
 
All but the first of these possible menu items are optional; the second and third only exist if the mod has options, and the fourth exists only if the mod programmer has created such a description.
  
Inner Mod Menus are floated to the right end of the standard TNG "Inner Menu", which is the light-on-dark link menu immediately below the standard Tab Menu. The menu label from which an Inner Mod Menu drops down is "Mod Information".
+
The term "Inner Mod Menu" is defined at two levels,
 +
* Mods are said to define an Inner Mod Menu when they call an Inner Mod Menu library function to specify any of the four Inner Mod Menu links listed above.
 +
* If more than one mod defines an Inner Mod Menu in same page, all of those Inner Mod Menus will be presented in a multi-mod Inner Mod Menu on that page, as illustrated above
  
The term "Inner Mod Menu" is, in sense, defined at two levels in that
+
=== Long Inner Mod Menus ===
* Mods are said to define an Inner Mod Menu  when they call an Inner Mod Menu library function to specify any of the four Inner Mod Menu links listed above.
+
The Person Profile is modified by at least ten of the mods in my [[Regroup Person Profile#Family|Regroup Person]] family of mods, and at least eight of them create Inner Mod Menus. That makes the Inner Mod Menu very long and hard to read. Consequently, mods define their Inner Mod Menus as "primary" or "secondary", and, when the program's Inner Mod Menu is first displayed, only the "primary" mods are listed, along with a link to "more mods", like this:
* If more than one mod "defines an Inner Mod Menu" in same program, only one Inner Mod Menu will be present on the program's web page. Each mod's Inner Mod Menu list will appear in that consolidated drop-down menu.  Each mod's name is a heading under for that mod's menu entries.
+
<!-- *** BEGIN DOUBLE TOGGLE --><span class="mw-collapsible mw-customtoggle-long1 mw-customtoggle-long2" id='mw-customcollapsible-long1' style="text-decoration:underline;color:#0645ad;">&#91;Show the Screenshot&#93;</span>.
 
+
<div class="mw-customtoggle-long1 mw-customtoggle-long2" class='mw-collapsible mw-collapsible-content mw-collapsed' id='mw-customcollapsible-long2' style="border:thin solid grey;"><!-- BEGIN TOGGLED CONTENT -->
Inner Mod Menus drop down from the label "Mod Information" that is floated to the right of a program's "innermenu" - the standard horizontal link menu that is immediately below the tab menu.  Essentially all of TNG's Admin programs have innermenus, but only a few end-users have them. Here is an example of an Inner Mod Menu in the Places Search program, admin_places.php, which has been affected by three mods.  Only one of the three mods has mod options.
+
[[Image:inner_mod_menus-person_profile.jpg]]
<div>[[Image:show_inner_mod_menus.jpg]]</div>
+
<!-- BUTTON AT THE BOTTOM OF TOGGLED CONTENT --><div class="mw-customtoggle-long1 mw-customtoggle-long2" style="text-decoration:underline;color:#0645ad;text-align:right;">&#91;Hide Screenshot&#93;</div>
 
+
</div><!-- END TOGGLED CONTENT and END DOUBLE TOGGLE -->
Mods define Inner Mod Menus in programs that they modify "significantly". For instance, [[Admin Places Copy]] installs a new program that copies Place records from one site to another, and adds a "Copy" tab to the tab menu in the other Admin>>Places program.  So [[Admin Places Copy]] would define an Inner Mod Menu in the copy program that it creates.  But since all it does in the other Admin>>Places programs is install a new tab, it won't define Inner Mod Menu links in them..
 
  
 
== New Tab Flags ==
 
== New Tab Flags ==
New Tags Flags do just what the name implies - they highlight the fact that a new tab has been created by a mod, and allow the user to see which mod installed the new tab. The flag is an asterisk, and the mod name is displayed when the user hovers over the asterisk, like this:
+
New Tab Flags do just what the name implies - they highlight the fact that a new tab has been created by a mod, and allow the user to see which mod installed the new tab. The flag is an asterisk, and the mod name is displayed when the user hovers over the asterisk, like this:<br>[[Image:show_inner_mod_menu-newtab1.jpg]]
<div>[[Image:show_inner_mod_menu-newtab1.jpg]]</div>
 
  
 
== Mod Settings Blocks ==
 
== Mod Settings Blocks ==
Mod Settings Blocks are another mod management tool that was developed in conjunction with Inner Mod Menus. When I put mod options in Admin>>Setup program, I use Mod Settings Blocks to place an outline around the each mod's options so that it is easy to see which options come from a given mod.
+
The most important feature of Inner Mod Menus may be their ability to pop up a window containing a mod's settings to edit mod settings, thus giving site administrators the ability to change settings while the affected TNG program is still visible on the screen. After changing options, the administrator does not have to close the settings window, and can just refresh the TNG page to see how the new mod settings affect the page. Importantly, this can only be done with settings that are defined in "Mod Settings Blocks", which are enabled by the '''[[Mod Settings Block]]''' mod.
  
Mod Settings Blocks are also defined so that hyperlinks to the relevant Admin>>Setup program can focus on a specific Mod Settings BlockThat is, hyperlinks with specific querystring parameters will
+
Mod Settings Blocks are more flexible and powerful than classic Mod Manager parametersThis screenshot illustrates a fairly typical Mod Settings Block that has been opened by itself, perhaps from an Inner Mod Menu link.
* Automatically open the subform that contains the target options, and
+
<div>[[Image:admin_cemeteries_search-after-modsettingsblock.jpg]]</div>
* Display ''only'' that Mod Settings Blocks; no other other options.
 
 
 
Mod Settings Blocks are related to Inner Mod Menus only in that
 
* They both deal with mod options,
 
* They were developed at the same time, and both were initially implemented as shared automatically-installed libraries that were distributed with each mod that used them, and
 
* Inner Mod Menus know how to link directly to a Mod Settings Block.
 
 
 
A Mod Settings Block is illustrated in the Visualizations below, and described in more detail in their own '''[https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Blocks]''' Wiki article.
 
  
 
== Mod Options ==
 
== Mod Options ==
Line 77: Line 69:
  
 
== Conflicts ==
 
== Conflicts ==
This mod does not, by its very nature, conflict with any other mods in the installation of the mod. There is a ''functional'' conflict in that ''two'' Inner Mod Menus will appear in a TNG program if
+
No known conflicts. Before Inner Mod Menus v13.0.0.2c, this mod was incompatible with [[Public Access Control]].
* more than one mod defines an Inner Mod Menu in a given program, and
 
* the ''installed version of'' those mods mods do not all use the same type of Inner Mod Menu library (meaning the libraries from this mod vs the shared, automatically installed libraries),
 
 
 
However, in all cases where more than one mod defines an Inner Mod Menu in a given program, the ''latest'' version of all of those mods use the same type of Inner Mod Menu libraries. Thus, this functional conflict can only occur if a TNG site administrator has not installed compatible versions of the mods that affect a given program
 
 
 
(For example, [[Admin Branches]] and [[Admin Branches Queue]] both affect admin_branches.php, and both define Inner Mod Menus in admin_branches.php. The latest version of each of these two mods rely on this mod to display the Inner Mod Menu, but older versions contain the shared libraries.
 
* If the newest versions of these two mods are both installed, only one consolidated Inner Mod Menu will be displayed.
 
* If older versions of each mod are installed, and both of the older versions uses the shared libraries, then only one consolidated Inner Mod Menu will be displayed.
 
* But if the latest version of one of the mods and an earlier version of the other are installed, two Inner Mod Menus will be displayed in admin_branches.php.
 
  
 
==Related Mods==
 
==Related Mods==
Here are some of the mods that use (or soon will use) the Show Inner Mod Menus libraries to display their Inner Mod Menus. (Since mods are being actively transitioned from the old shared Inner Mod Menus libraries to the new standalone libraries installed by Show Inner Mod Menus, I'm not really going to try to keep these lists up to date.)
+
'''[[Mod Settings Blocks]]''' is something of a sibling to Inner Mod Menus. [[Mod Settings Blocks]] define mod settings in a more robust and flexible way than standard Mod Manager parameters, and Inner Mod Menus supply handy links from TNG programs to the mod settings that affect program behavior.
 
+
* Groups of mods that generate Inner Mod Menus in the same program, group by those programs:  
+
More than 30 mods generate Inner Mod Menus in one or more of the pages that they modify. Again, the '''Inner Mod Menus mod''' is never required; if you do not install it, you simply will not be able to see any Inner Mod Menus or New Tab Flags. Here is a sample of mods that define Inner Mod Menus:
*# The Person Profile, getperson.php
+
{| border="0" cellspacing="1" cellpadding="2" class="wikitable"
*#* Version 19 and above of the "Regroup Person" family of that affect the Person Profile. (See, for example, [[Regroup Person Profile]])
+
! Mod(s) !! Page(s)
*# admin_branches.php and admin_editbranch.php
+
|- style="vertical-align:top;"
*#* Version 5 and above of [[Admin Branches]] and [[Admin Branches Queue]]
+
| [[Admin Branches]] || admin_branches.php &amp; admin_editbranches.php
*# admin_media.php
+
|- style="vertical-align:top;"
*#* Version 13 and above of [[Admin Media Search]] and [[Admin Media Predefined Search]]
+
| [[Admin Branches Queue]] || admin_editbranches.php
* Other mods
+
|- style="vertical-align:top;"
*# TextPlus Charts
+
| [[Admin Cemeteries Search]] || admin_cemeteries.php
 +
|- style="vertical-align:top;"
 +
| [[Admin Cemetery Edit]] || admin_editcemeteries.php
 +
|- style="vertical-align:top;"
 +
| [[Admin Languages]] || admin_languages.php
 +
|- style="vertical-align:top;"
 +
| [[Admin Media Search]] &amp; [[Admin Media Predefined Search]] || admin_media.php
 +
|- style="vertical-align:top;"
 +
| [[Admin Media Edit]] || admin_editmedia.php
 +
|- style="vertical-align:top;"
 +
| [[Admin Places Search]] || admin_places.php
 +
|- style="vertical-align:top;"
 +
| [[Admin Places Geocode]] || admin_geocodeform.php
 +
|- style="vertical-align:top;"
 +
| [[Cemetery Burials Table]] &amp; [[Cemetery Map and Images]] ||  showmap.php
 +
|- style="vertical-align:top;"
 +
| [[Cemetery Headstones]] || headstones.php & showmap.php
 +
|- style="vertical-align:top;"
 +
| [[New Account Validation]] || newacctform.php
 +
|- style="vertical-align:top;"
 +
| [[Placesearch-More Info]] || placesearch.php
 +
|- style="vertical-align:top;"
 +
| [[Regroup Person Profile]], [[Regroup Person-Date Place]] <br>and upwards of 8 other Regroup Person* mods || getperson.php
 +
|- style="vertical-align:top;"
 +
|}
  
 
== Installation ==
 
== Installation ==
 
=== Files Installed ===
 
=== Files Installed ===
* rr_innermodmenus_lib.php - The library that implements Inner Mod Menus
+
* rrinnermodmenus_lib.php - The library that implements Inner Mod Menus
* rr_innermodmenus_wiki.gif - A stylized "W" icon that is used as a link to a mod's Wiki article in Inner Mod Menus
+
* rrinnermodmenus_newtab.php - The library that implements flags in new tab menu tabs.
* rr_innermodmenus_newtab.gif - The library that implements flags in new tab menu tabs.
+
* rrinnermodmenus_wiki.gif - A stylized "W" icon that is used in Inner Mod Menus as a link to a mod's Wiki article.
{{RobinInstallationBoilerplate}}
+
{{RobinBoilerplate text=installation}}
  
 
== Visualizations ==
 
== Visualizations ==
 
{|border="1" cellspacing="1" cellpadding="2" class="wikitable"
 
{|border="1" cellspacing="1" cellpadding="2" class="wikitable"
 
|-
 
|-
| This screen clip shows the Inner Mod Menu in admin_places.php, where the New Tab Flag highlights a tab that was created by the [[Placename Format]] mod. The Inner Mod Menu reveals that Placename Format did not define Inner Mod Menu links here, since all it did to admin_places.php was to add new tabs. (It turns out that two of the tabs in this screen clip were added by Placename Format.)
+
| A New Tab Flag
<div>[[Image:show_inner_mod_menu-newtab3.jpg]]</div>
+
This screenshot is from admin_places.php, where two tabs are flagged with New Tab Flags the reveal that that the tabs were created by the [[Placename Format]] mod.
|}
+
Note that the Inner Mod Menu in this screenshot does not mention the [[Placename Format]] mod, because [[Placename Format]] didn't modify admin_places.php in a sufficiently significant way. All [[Placename Format]] did to admin_places.php was to add the new tabs.<br>[[Image:show_inner_mod_menu-newtab3.jpg]]
{|border="1" cellspacing="1" cellpadding="2" class="wikitable"
 
 
|-
 
|-
| This screen clip illustrates the Inner Mod Menu in the Place Levels program, which is launched from the "Levels" tab in the previous screen clip.  Here, the Placename Format mod is definitely significant, so Placename Format has defined an Inner Mod Menu. However, Placename Format does not define any mod options<sup>1</sup>, so the only links you see here are the always-present link to the Wiki article, and a link that pops up information about what the mod has done to this program.
+
| This screenshot illustrates the Inner Mod Menu in the page that is launched from the "Name Options" tab in the previous screen clip.  Here, the [[Placename Format]] mod is definitely significant, since it ''created'' the Name Options page. Thus, [[Placename Format]] has defined an Inner Mod Menu in this page. However, [[Placename Format]] does not define any mod options for the Name Options page, so the only links you see here are the always-present link to the Wiki article and a link that pops up information about what the mod has changed. (And since Placename Format ''installed'' this page, the "What has changed" link describes the entire page.<br>[[Image:inner_mod_menus-name_options.jpg]]
<div>[[Image:show_inner_mod_menu-newtab4.jpg]]</div>
 
<sup>1</sup> Well, the Placename Format mod ''does'' have options, but they are defined in a completely different way that most mod options. Actually, as you might guess from the presence of the "Name Options" tab in the screen clip above, the Placename Formatting options are defined in that page. Inner Mod Menus specifically link to mod options that are defined in '''[https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Block]'''
 
|}
 
{|border="1" cellspacing="1" cellpadding="2" class="wikitable"
 
|-
 
| '''A Mod Settings Block'''
 
A lot of my mods have mod options, and, so far, at least 23 of those mods defined Mod Settings Blocks.  Most of them are in Admin>>Setup>>General&nbsp;Settings, where, to avoid getting in the way of the native TNG options, they are in a new subform named "Robin's Mods". This screen clip illustrates is a fairly typical Mod Settings Block that has been opened by itself, perhaps from an Inner Mod Menu link.
 
<div>[[Image:admin_cemeteries_search-after-modsettingsblock.jpg]]</div>
 
 
|}
 
|}
  
Line 131: Line 129:
 
! Mod Version !! TNG Version !! Date !! Note
 
! Mod Version !! TNG Version !! Date !! Note
 
|- style="vertical-align:top;"  <!-- ############################################################## -->
 
|- style="vertical-align:top;"  <!-- ############################################################## -->
| [[Media:inner_mod_menus_v12.0.0.1a|v12.0.0.1a]]
+
| [[Media:Inner mod menus v13.0.0.2c.zip|v13.0.0.2c]]
 +
| 13
 +
| 27Apr2021
 +
| Resolved a conflict with [[Public Access Control]]
 +
 
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| [[Media:Inner mod menus v13.0.0.2b.zip|v13.0.0.2b]]
 +
| 13.0
 +
| 26Sep2020
 +
| The "more" and "fewer" strings added in v13.0.0.2 were omitted from the English translations.
 +
# Typos in the .cfg file.
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| v13.0.0.2
 +
| 13.0
 +
| 15Aug2020
 +
| Secondary mods are initially hidden from the Inner Mod Menu if the total number of mods is greater than 5.
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| [[Media:Inner mod menus v12.0.0.2.zip|v12.0.0.2]]
 
| 12.0-12.3
 
| 12.0-12.3
| 22 May 2020
+
| 1Jun2020
| Added Norwegian and French translations
+
|  
|}
+
* Added a function argument to designate a mod as "secondary", meaning that it doesn't make less significant changes to the mod. The intent (not yet implemented) is to make long consolidated Inner Mod Menus shorter - specifically in the Person Profile, where the Inner Mod Menu currently lists eight mods.
 +
* Added Norwegian and French translations
 
|- style="vertical-align:top;"  <!-- ############################################################## -->
 
|- style="vertical-align:top;"  <!-- ############################################################## -->
| [[Media:inner_mod_menus_v12.0.0.1|v12.0.0.1]]
+
| v12.0.0.1
 
| 12.0-12.3
 
| 12.0-12.3
| 14 Apr 2020
+
| 14Apr2020
 
| Initial release.
 
| Initial release.
 
|}
 
|}
Line 153: Line 169:
 
| [[User:Robinrichm|Robin Richmond]]
 
| [[User:Robinrichm|Robin Richmond]]
 
| Mod developer
 
| Mod developer
| 12.0.0.1
+
| 13.0.0.2c
| 12.3
+
| 13.0.3
 
| English
 
| English
|}
+
|-
 +
| [http://www.colegenealogy.net/ The Cole / Tanner Family Tree]
 +
| [[User:dlcole|David Cole]]
 +
| Public/Private
 +
| [[User:Dlcole|see here]]
 +
| [[User:Dlcole|see here]]
 +
| EN, DE, FR, ES, NL
 +
|-
 +
| [http://racine-ad.fr/TNG/index.php Racine d'Alsace]
 +
| [[User:Louis42|J-Louis Valory]]
 +
| Public (registration)
 +
| 13.0.0.2c
 +
| 13.0.4
 +
| FR
 +
|-
 +
| [https://bastiaanssen.us Bstiaanssen Genealogy]
 +
| Jan Bastiaanssen
 +
| Public / Private
 +
| 13.0.0.2c
 +
| 13.1.2
 +
| NL, EN, ES
 +
|-
 +
| [https://www.rgstrong-genes.com R G Strong Family Genealogy]
 +
| Russell Strong
 +
| Public
 +
| 13.0.0.2c
 +
| 13.1.0
 +
| EN, FR, DE, NL
 +
|-
 +
|[https://huygens-vandemoortel-ancestry.be/ Huygens - Van de Moortel]
 +
|[https://tng.lythgoes.net/wiki/index.php/User:Fluffy82 Tom Huygens]
 +
|Public/Private on WordPress
 +
|13.0.0.2c
 +
|13.1.2
 +
|NL
 +
|-
 +
| [https://www.craswell.ca/ Your Roots are Showing]
 +
| [[User:crashar|Harold Craswell]]
 +
| Public/Private
 +
| [https://www.craswell.ca/rrmodcompare_report.php?power=basic&cachemethod=3&sb=filename&aformat=full&statushilite=1&b1=0 See Here]
 +
| [https://www.craswell.ca/rrmodcompare_report.php?power=basic&cachemethod=3&sb=filename&aformat=full&statushilite=1&b1=0 See Here]
 +
| EN
 +
|-
 +
|[http://www.genealogyhome.com/ Daniel Bender - Generations]
 +
|[https://tng.lythgoes.net/wiki/index.php/User:Amsibert Allison Sibert]
 +
|Public/ Living Private
 +
|13.0.0.2c
 +
|13.1.2
 +
|EN
 +
|-}
 
[[Category:Mods for TNG v12]]
 
[[Category:Mods for TNG v12]]
 +
[[Category:Mods for TNG v13]]
 
[[Category:cust_text.php English mods]]
 
[[Category:cust_text.php English mods]]
 +
[[Category:cust_text.php French mods]]
 +
[[Category:cust_text.php Danish mods]]
 +
[[Category:cust_text.php Norwegian mods]]
 +
[[Category:genlib.php mods]]

Latest revision as of 17:42, 27 September 2023

In TNGv14, this mod has been absorbed into Mod Settings Blocks. This article is still the best documentation of the Inner Mod Menus feature.

Mods Settings Blocks now has a mod setting (in a Mod Settings Block, of course) that can disable Inner Mod Menus, which are enabled by default.

Inner Mod Menus
Summary Provides PHP function libraries that display "Inner Mod Menus" and "New Tab Flags" that have been specified by other mods.
Validation
Mod Updated 15 Dec 2022
Download link (Retired in TNGv14)
TNG 14.0
v13.0.0.2c
TNG 13.0
Download stats
Author(s) Robin Richmond
Homepage This page
Mod Support My Mod Support form
Contact Developer My Mod Support form
Latest Mod 13.0.0.2c
Min TNG V 12.0
Max TNG V 13.0.3
Files modified
genlib.php, genstyle.css, English, French, Norwegian cust_text.php; Installs rrinnermodmenu_lib.php, rrinnermodmenu_newtabs.php, rrinnermodmenu_wiki.gif
Related Mods
Many - see Related Mods
Notes
In TNGv12, the installed filenames are slightly different.

Purpose of the Mod

To enable the display of

  1. "Inner Mod Menus", which provides handy information about what a mod does to a particular program and handy access to the mod's options, and
  2. "New Tab Flags", which make it easy to see when new tab-menu tabs have been added by a mod, and to identify the mod that installed them.

that have been specified by other mods. It is not required by those other mods, however. If it is not installed, the menus and flags specified by the other mods are simply not visible.

Inner Mod Menus

An "Inner Mod Menu" is a drop-down menu that mods add to programs that they change in some arbitrarily "significant" way. The idea is to provide handy links to information about the mod and to the mod's options.

Here is an example of an Inner Mod Menu for a TNG page that is affected by three different mods, one of which has mod options in a Mod Settings Block. Inner Mod Menus drop down from the label "Mod Information" at the right end of the standard TNG "Inner Menu", which is the light-on-dark link menu immediately below the standard Tab Menu.
Show inner mod menus.jpg

Significantly, Inner Mod Menus are visible only to TNG Administrators, even when they appear in end-user programs.

For each mod in an Inner Mod Menu, the menu can link to

  1. The mod's Wiki article,
  2. The section of the Wiki article that describes mod options,
  3. The mod's options, if the options are defined in a Mod Settings Block
  4. A popup that succinctly describes what the mod has changed in the program.

All but the first of these possible menu items are optional; the second and third only exist if the mod has options, and the fourth exists only if the mod programmer has created such a description.

The term "Inner Mod Menu" is defined at two levels,

  • Mods are said to define an Inner Mod Menu when they call an Inner Mod Menu library function to specify any of the four Inner Mod Menu links listed above.
  • If more than one mod defines an Inner Mod Menu in same page, all of those Inner Mod Menus will be presented in a multi-mod Inner Mod Menu on that page, as illustrated above

Long Inner Mod Menus

The Person Profile is modified by at least ten of the mods in my Regroup Person family of mods, and at least eight of them create Inner Mod Menus. That makes the Inner Mod Menu very long and hard to read. Consequently, mods define their Inner Mod Menus as "primary" or "secondary", and, when the program's Inner Mod Menu is first displayed, only the "primary" mods are listed, along with a link to "more mods", like this: [Show the Screenshot].

Inner mod menus-person profile.jpg

[Hide Screenshot]

New Tab Flags

New Tab Flags do just what the name implies - they highlight the fact that a new tab has been created by a mod, and allow the user to see which mod installed the new tab. The flag is an asterisk, and the mod name is displayed when the user hovers over the asterisk, like this:
Show inner mod menu-newtab1.jpg

Mod Settings Blocks

The most important feature of Inner Mod Menus may be their ability to pop up a window containing a mod's settings to edit mod settings, thus giving site administrators the ability to change settings while the affected TNG program is still visible on the screen. After changing options, the administrator does not have to close the settings window, and can just refresh the TNG page to see how the new mod settings affect the page. Importantly, this can only be done with settings that are defined in "Mod Settings Blocks", which are enabled by the Mod Settings Block mod.

Mod Settings Blocks are more flexible and powerful than classic Mod Manager parameters. This screenshot illustrates a fairly typical Mod Settings Block that has been opened by itself, perhaps from an Inner Mod Menu link.

Admin cemeteries search-after-modsettingsblock.jpg

Mod Options

none

Conflicts

No known conflicts. Before Inner Mod Menus v13.0.0.2c, this mod was incompatible with Public Access Control.

Related Mods

Mod Settings Blocks is something of a sibling to Inner Mod Menus. Mod Settings Blocks define mod settings in a more robust and flexible way than standard Mod Manager parameters, and Inner Mod Menus supply handy links from TNG programs to the mod settings that affect program behavior.

More than 30 mods generate Inner Mod Menus in one or more of the pages that they modify. Again, the Inner Mod Menus mod is never required; if you do not install it, you simply will not be able to see any Inner Mod Menus or New Tab Flags. Here is a sample of mods that define Inner Mod Menus:

Mod(s) Page(s)
Admin Branches admin_branches.php & admin_editbranches.php
Admin Branches Queue admin_editbranches.php
Admin Cemeteries Search admin_cemeteries.php
Admin Cemetery Edit admin_editcemeteries.php
Admin Languages admin_languages.php
Admin Media Search & Admin Media Predefined Search admin_media.php
Admin Media Edit admin_editmedia.php
Admin Places Search admin_places.php
Admin Places Geocode admin_geocodeform.php
Cemetery Burials Table & Cemetery Map and Images showmap.php
Cemetery Headstones headstones.php & showmap.php
New Account Validation newacctform.php
Placesearch-More Info placesearch.php
Regroup Person Profile, Regroup Person-Date Place
and upwards of 8 other Regroup Person* mods
getperson.php

Installation

Files Installed

  • rrinnermodmenus_lib.php - The library that implements Inner Mod Menus
  • rrinnermodmenus_newtab.php - The library that implements flags in new tab menu tabs.
  • rrinnermodmenus_wiki.gif - A stylized "W" icon that is used in Inner Mod Menus as a link to a mod's Wiki article.

Template:RobinBoilerplate text=installation

Visualizations

A New Tab Flag

This screenshot is from admin_places.php, where two tabs are flagged with New Tab Flags the reveal that that the tabs were created by the Placename Format mod. Note that the Inner Mod Menu in this screenshot does not mention the Placename Format mod, because Placename Format didn't modify admin_places.php in a sufficiently significant way. All Placename Format did to admin_places.php was to add the new tabs.
Show inner mod menu-newtab3.jpg

This screenshot illustrates the Inner Mod Menu in the page that is launched from the "Name Options" tab in the previous screen clip. Here, the Placename Format mod is definitely significant, since it created the Name Options page. Thus, Placename Format has defined an Inner Mod Menu in this page. However, Placename Format does not define any mod options for the Name Options page, so the only links you see here are the always-present link to the Wiki article and a link that pops up information about what the mod has changed. (And since Placename Format installed this page, the "What has changed" link describes the entire page.
Inner mod menus-name options.jpg

Revision History

Mod Version TNG Version Date Note
v13.0.0.2c 13 27Apr2021 Resolved a conflict with Public Access Control
v13.0.0.2b 13.0 26Sep2020 The "more" and "fewer" strings added in v13.0.0.2 were omitted from the English translations.
  1. Typos in the .cfg file.
v13.0.0.2 13.0 15Aug2020 Secondary mods are initially hidden from the Inner Mod Menu if the total number of mods is greater than 5.
v12.0.0.2 12.0-12.3 1Jun2020
  • Added a function argument to designate a mod as "secondary", meaning that it doesn't make less significant changes to the mod. The intent (not yet implemented) is to make long consolidated Inner Mod Menus shorter - specifically in the Person Profile, where the Inner Mod Menu currently lists eight mods.
  • Added Norwegian and French translations
v12.0.0.1 12.0-12.3 14Apr2020 Initial release.

Sites using this mod

If you download and install this mod, please add your site to the table below.

URL User Note Mod Version TNG Version User language
Robin Richmond's Genealogy Database Robin Richmond Mod developer 13.0.0.2c 13.0.3 English
The Cole / Tanner Family Tree David Cole Public/Private see here see here EN, DE, FR, ES, NL
Racine d'Alsace J-Louis Valory Public (registration) 13.0.0.2c 13.0.4 FR
Bstiaanssen Genealogy Jan Bastiaanssen Public / Private 13.0.0.2c 13.1.2 NL, EN, ES
R G Strong Family Genealogy Russell Strong Public 13.0.0.2c 13.1.0 EN, FR, DE, NL
Huygens - Van de Moortel Tom Huygens Public/Private on WordPress 13.0.0.2c 13.1.2 NL
Your Roots are Showing Harold Craswell Public/Private See Here See Here EN
Daniel Bender - Generations Allison Sibert Public/ Living Private 13.0.0.2c 13.1.2 EN