Difference between revisions of "Admin Branches"

From TNG_Wiki
Jump to: navigation, search
Line 59: Line 59:
== Installation ==
== Installation ==
=== Files Installed ===
=== Files Installed ===
This mod has two mod subfolders:
This mod has two mod subfolders:
Line 68: Line 67:
#** The Branch edit program (admin_editbranch.php) to display counts for the current branch, and
#** The Branch edit program (admin_editbranch.php) to display counts for the current branch, and
#** rradminbranches_ajx.php to retrieve updated counts after admin_editbranch.php has modified a branch.
#** rradminbranches_ajx.php to retrieve updated counts after admin_editbranch.php has modified a branch.
# The shared folder '''RR-shared_mod_includes_v12.0.0.2''', which contains files that support [https://tng.lythgoes.net/wiki/index.php?title=Inner_Mod_Menus Inner Mod Menus] and [https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Blocks].  
# The shared folder '''RR-shared_mod_includes_v12.0.0.3''', which contains files that support [https://tng.lythgoes.net/wiki/index.php?title=Inner_Mod_Menus Inner Mod Menus] and [https://tng.lythgoes.net/wiki/index.php?title=Mod_Settings_Blocks Mod Settings Blocks].  
#* '''rrshared_innermodmenu2.php'''
#* '''rrshared_innermodmenu2.php'''
#* '''rrshared_modsettingsblocks2.php'''
#* '''rrshared_modsettingsblocks2.php'''

Revision as of 23:05, 2 December 2019

Admin Branches
Summary Modifies the Admin>>Branches search page to display counts of People and Families in the branch index, as well as count of People and Families records that have the branch.
Mod Updated 26 Nov 2019
Download link v12.0.0.4.zip
TNG 12.0
Download stats -
Author(s) Robin Richmond
Homepage this page
Mod Support My Mod Support form or TNG Community Forums
Contact Developer My Mod Support form
Latest Mod
Min TNG V 11.0
Max TNG V 12.2
Files modified
admin_branches.php, admin_editbranch.php, ajx_labels.php, English cust_text.php, admin_genconfig.php, admin_updateconfig.php;
Installs shared files: rrshared_innermodmenu2.php, rrshared_modsettingsblocks2.php, img/rrshared_wikilogo.gif
Related Mods
Branch Timestamps depends on this mod.

Purpose of the Mod

To add information to the Admin>>Branches>>Search results table, and simplify (from the author's perspective) the Add/Remove/Delete functionality in the Edit screen.

  • The Admin>>Branches>>Search page now:
    1. Has two new columns for the four branch rule parameters (with two values in each column):
    2. Flags the People and Families columns when the count of Branch Labels in People and Families records does not match the count of records in the BranchLinks table.
    3. Uses a Mod Option to determine whether to show counts in the People and Families columns, or just to indicate whether there are any People or Families in the branch. This feature was added because it can take too long to count the branch labels in very large TNG databases.
    4. Has a "Results Per Page" field that uses the TNG system parameter "maxsearchresults" as its default.
    5. Adds "Field Buttons" to the search string field and the Results Per Page field.
  • In the Branch Edit form:
    1. All action buttons are now directly on the screen, in fieldsets, rather than in pop-ups. (I found the cascading pop-up forms confusing.)
    2. There is now a "Show names" checkbox so that when branch labels are added or cleared, the names associated with each Person and Family record in the branch don't always have to be displayed.

Mod Options

There is just one option, which allows the branch counts in admin_branches.php to be omitted on sites with so many records that the branch counts take too long. That is, the option determines whether the program with display

  • The number of records in each branch, or
  • A flag that says that there are records in the branch.

The mod option is a custom TNG setting, defined and edited in the form at Admin>>Setup>>General Settings, in a new subform named Robin's Mod's. This subform takes advantage of a scheme that I call Mod Settings Blocks.


This mod is compatible with Add Name to PersonID, Tree ID Mod, TreeID-One Column, and Branch Timestamps. The current version of this mod is not compatible with Branches Sort mod. But the goal of Branches Sort mod, to sort related branches together in the Admin Branches Search results table, is only achieved if the related branches use the common BranchID at the very beginning of their BranchIDs. A Branch testing application that can focus on all groups of related branches is installed by the Branch Timestamps mod.

Related Mods

  1. Branch Timestamps is a companion mod to Admin Branches and depends on Admin Branches. Branch Timestamps
    • Adds fields to the Branches table that record
      • The last action (Add Labels, Clear Labels, Delete, or Edit) that was taken on the branch
      • When that action occurred (hence the name "Branch Timestamps", and
      • The number of People records and Families records affected by that operation.
    • Adds columns to the Admin >> Branches >> Search results page,
    • Creates a queueing mechanism that allows a TNG site administrator to "queue up" a set of Add Labels operations so that the administrator doesn't have to wait for each branch to finish before starting the next one, and
    • Installs a "Timestamp Test App" that lets a TNG site administrator review the results of recent actions, run actions, and queue actions.
  2. The optional mod Add Name To PersonID modifies several programs, including the Branch Search program and the Branch Editor to display the name of a branch "Starting Individual" as well as the personID.
  3. The optional Field Buttons mod implements small "Field Button" that are attached to the search string field and the new Result Per Page field in the Branches Search page. The field buttons serve as shortcuts to editing tasks such as "clear this field", and "restore the value that this field had when the page was loaded".
    • Note that the Field Buttons mod is optional. If it is not installed, the field buttons will simply not appear.
  4. This mod saves information that can be used by the optional mod Show Mod Names. As with Field Buttons, Show Mod Names is completely optional. If it is not installed, its "Show Mods" button at the bottom of admin pages will simply not appear.


Files Installed

This mod has two mod subfolders:

  1. admin_branches_v12.0.0.4 - The subfolder that you expect to exist for any mod that installs files. It contains
    • rradminbranches_ajx.php (ajx_branchcounts.php in the TNGv11 version of the mod)
      This AJAX program is called by the Branch Editor (admin_editbranch.php) after an operation that changes the branch contents (i.e. the records the in the branch) so that the Branch Editor can display the branch counts without having to reload the page. It is also used by the Branch Timestamps mod, which is a companion mod to Admin Branches, and depends on Admin Branches.
    • rradminbranches_lib.php (branchcountslib.php in the TNGv11 version of the mod)
      The functions in this PHP function library count records (People and Families) in a branch. It is used by
      • The Admin>>Branches>>Search program (admin_branches.php) to display the search results table,
      • The Branch edit program (admin_editbranch.php) to display counts for the current branch, and
      • rradminbranches_ajx.php to retrieve updated counts after admin_editbranch.php has modified a branch.
  2. The shared folder RR-shared_mod_includes_v12.0.0.3, which contains files that support Inner Mod Menus and Mod Settings Blocks.
    • rrshared_innermodmenu2.php
    • rrshared_modsettingsblocks2.php
    • img/rrshared_wikilogo.gif

The shared folder is packaged with several mods, each of which may install some or all of its files. Once a file from this folder has been installed (by any mod), that file will not be overwritten or removed by the subsequent installation or un-installation of any mod (including this one), nor will its presence generate any Mod Manager errors.

If you unzip mod distribution files directly into your mods folder, then the presence of this second subfolder and the installation of its files should be invisible to you. But if you generally copy mod subfolders to your mods folder, you need to make sure to copy the folder RR-shared_mod_includes_v12.0.0.2 (well, unless you are confident that it is already in your mods folder because it was part of another mod).

[Show Installation Details]


  • A working TNG installation.
  • An installed current version of the Mod Manager.
  • You should backup files listed in the panel on the right.


  1. Remove and delete previous version of this mod.
  2. Backup the files updated by this mod. They are listed in the panel at the upper right.
  3. Download the .zip file, Extract its .cfg file to the mods folder.
  4. Follow the normal automated installation for Mod Manager, as shown in the example Mod Manager - Installing Config Files.


  1. Try using the Mod Manager Remove capability
  2. Contact me through My Mod Support form.
[Hide Details]


Admin>>Branches>>Search Before Installation

Admin branches-before1.jpg

Admin>>Branches>>Search After Installation

Admin branches-after1.jpg
New features installed by this mod (outlined in green):

  1. The new Inner Mod Menu, show closed, with just is Inner Menu Label "Mod Information". See below a visualization of the menu contents.
  2. The 'Results per page' field that lets you change the number of search results per page without changing the TNG system parameter.
  3. Two new columns for the four fields in the branch rule that are identified by the labels in the column heading.
  4. As in the native code, the People and Families columns normally show the number of records in the branch (that is, the number of records in which the branches field contains the branchID.) However, if the number of Branch Index records does not match the number of people and family records in the branch,
    • The number of records in the Branch Index is shown and labeled with an X, and
    • The record counts are highlighted in red text.
  5. Branches (such as the branch named 'hk' in this screen clip) that are formed by merging other branches (in this case, the two branches with the suffix 'hk') are not expected to have the same number of branch labels and branch index entries. Thus, in third row, the discrepancy between the branch label counts and the branch index record counts is not an error, and really, should not be highlighted.

Significantly, a mod option can disable the counting of People and Families records, in which case the People and Families columns will just contain flag that indicates whether any People or Families records are in the branch. This feature is important for very large databases where it may take a long time to count the branch records.

Features in the visualization above that are installed or enabled by other mods (outlined in brown):

  1. The Search String and 'Results Per Page' fields have "Field Buttons", which appear only if the Field Buttons mod is installed. In brief, in this screen clip, there are two visible Field Buttons:
    • The search string's 'X' button clears the search string, and
    • The 'A' button for the 'Results Per Page' field supplies a value that displays all of the branches in one page, and
  2. The names in the 'Starting Individual' column are added by the Add Name to PersonID mod, which affects several programs. As shown in the 'before' screen clip above, in the native code, this column contains only the personID.
Admin>>Branches>>Edit Before Installation
Note that the Branch Edit screen also performs operations on branches. This is the only way that the native TNG code can use the branch rules to create or remove branch labels.

Admin branches-before2-editbranch.jpg

Admin>>Branches>>Edit After Installation

Admin branches-after2-editbranch.jpg

Admin>>Branches>>Search After Installation - The Inner Mod Menu
Admin branches-after-innermodmenu.jpg

In admin_branches.php the Inner Mod Menu links to:

  • The Admin Branches Wiki article.
  • The Mod Options section of the Wiki article, and
  • The Admin>>Setup screen where the mod's option can be edited.
The Admin Branches Option - in a "Mod Settings Block"

The Mod Settings Block for Admin Branches (like most other Mod Settings Blocks) is at Admin>>Setup>>General Settings in a new subform named Robin's Mods. When Mod Settings Block are invoked from an Inner Mod Menu, the Admin>>Settings program automatically opens the subform and displays only the target Mod Settings Block, like this:

Admin branches-after-modsettingsblock.jpg

Revision History

Mod Version TNG Versions Date Note 12.0 - 12.2+ 26Nov2019 No Functional Changes
  • The mod's option is now a custom TNG system setting, in a Mod Settings Block at Admin>>Setup>>General Settings>>Robin's Mods.
  • The Inner Menus of admin_branches.php and admin_editbranch.php each contain an Inner Mod Menu, which, among other things, provides handy access to the mod settings. & 11.0 - 12.0+ 24May2018 Brought to TNGv12 specs; Change the filenames of the installed files to be more distinctive. 11.0 - 11.1.2 28Dec2017 No visible changes, except when printing
  • Added a "don't print on printer" class to the tab menu and innermenu, and the Action and Select columns of the results table.
  • Also no longer uses an external spreadsheet. Instead, the "don't print on printer" class is defined in an embedded stylesheet. It can be overriden in css/genstyle.css. 11.0+ 12Dec2017 Changes:
  1. Added the Results Per Page field
  2. Added field buttons
  3. Removed the second line of the two-line cust_text.php target location search string. 11.0+ 2Jun2017 The new $summaryonly Query String parameter in ajx_labels.php is now implemented through this mod rather than through Branch Timestamps. As a result
  1. Branch Timestamps doesn't have to be installed for the new "Show Names" checkbox to be available in the modified admin_editbranch.php, but
  2. Branch Timestamps now requires that Admin Branches be installed. 11.0+ 2Apr2017 New mod in Beta status.

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 v12.0.0.4 12.0 English
Racine d'Alsace J-Louis Valory Public/Private - T17 customized 12.0.2 FR
Cole / Tanner Family Tree David Cole Public/Private see here see here English