Admin Branches

From TNG_Wiki
Revision as of 17:31, 8 October 2018 by Rmcrae (talk | contribs) (Added new mod templates, and boilerplate how to update cust_text.php to TNGv12 specs)
Jump to navigation Jump to search

Template:RobinV12 cust text update

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.
Validation
Mod Updated 3 May 2018
Download link
v12.0.0.3.zip
TNG 12.0
Download stats -
Author(s) Robin Richmond
Homepage Robin Richmond's Genealogy Database
Mod Support My Mod Support form or TNG Community Forums
Contact Developer My Mod Support form
Latest Mod v11.0.0.2a & v12.0.0.3
Min TNG V 11.0
Max TNG V at least 12.0
Files modified
admin_branches.php, admin_editbranch.php, ajx_labels.php, English cust_text.php;
Installs: rradminbranches_ajx.php, rradminbranches_lib.php
Related Mods
Branch Timestamps depends on this mod.
Notes


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 2 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. Note that the counts are expected not to match for what I call "dummy branches" whose BranchID's are incorporated into other branches, but they are still flagged. (See the visualizations)
    3. Uses a Mod Parameter 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. (Field buttons are small buttons with one-letter labels that are attached to form fields, and that perform four common editing tasks: Clear a field, Restore the field's initial value, set a Default, or set an "All items" value. See the Field Buttons mod, which must installed for the field buttons to be visible.
  • 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 Parameters

$countBranchLabels in admin_branches.php
This parameter determines whether the Admin>>Branches>>Search results will display branch label counts for each branch, or just indicate whether each branch has labels. On sites with so many records that the branch counts take too long, the administrator will want to turn off the automatic branch counts.

Files Installed

  1. 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.
  2. 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.

Compatibility with Other Mods

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 the functionality of the field buttons that are attached to the search string field and the Result Per Page field in the Branches Search page. If it is installed, no errors occurs; the field buttons will simply not appear on the screen.
  4. The optional Show Mod Names mod can use data saved by Admin Branches to display information about mods that affect admin_branches.php and admin_branchedit.php. As with Field Buttons, if Show Mod Names is not installed, nothing bad happens; the "Show Mod Names" button will simply not be displayed at the bottom of either program.

Installation

[Show Installation Details]

Requirements

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

Procedure

  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.

Problems?

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

Visualizations

Admin>>Branches>>Search Before

Admin branches-before1.jpg

Admin>>Branches>>Search After/span>

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

  1. The 'Results per page' field that lets you change the # of search results per page without changing the TNG system parameter.
  2. Two new columns for the four fields in the branch rule.
  3. In the People and Families columns, if the count of People and/or Families records with the branch does not match the number of entries in the Branch Index, the counts are highlighed in red tex, and the count of index entries is displayed. Note that:
    • The counts are expected not to match if the branch name includes other branch names, and
    • 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.

Features in the visualization above that are installed or enabled by other mods:

  1. Field buttons, which are enabled by the Field Buttons mod. In this visualization,
    1. The search string's 'X' button (for 'clear') is visible, because the search string has a value.
    2. The search string's 'R' button (for 'Restore') is not visible. Thus, we know that the value "hk" in the search strings was loaded with the page. If you were to clear the field (with the 'X' button or not), or enter another value, then the 'R' button would appear.
    3. The 'A' (for 'All') button for the Results Per Page field is visible because the Results Per Page field is not 'All', which means 'All Results'
    4. The 'R' button for the Results Per Page field is shaded out because the current value is the initial value. (That is, the value the field had when the page was loaded).
    5. The 'D'(for 'Default' button is shaded out because, as it turns out, the current value is the same as the default value, which is the TNG system parameter, $maxsearchresults. If you were to change the 'Results Per Page' field to anything other than 30, the 'D' button would be visible.
  2. The names in the Starting Individual column are added by the Add Name to PersonID mod, which affects several programs. The native TNG code displays only the Person ID in this column.
Admin>>Branches>>Edit Before

Admin branches-before2-editbranch.jpg

Admin>>Branches>>Edit After

Admin branches-after2-editbranch.jpg

Admin>>Branches>>Edit After Showing the results of an Add Labels action

Admin branches-after3-addlabels.jpg

Mod Change History

Mod Version TNG Versions Date Note
12.0.0.3.zip & 11.0.0.3.zip 11.0 - 12.0+ 24 May 2018 Brought to TNGv12 specs; Change the filenames of the installed files to be more distinctive.
11.0.0.2a.zip 11.0 - 11.1.2 28 Dec 2017 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.0.2 11.0+ 12 Dec 2017 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.0.1a 11.0+ 2 Jun2017 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.0.1 11.0+ 2 Apr 2017 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.3 12.0 English
racine d'Alsace J-Louis Valory Public/Private - template 1 11.0.0.1a 11.1.1 French
Cole / Tanner Family Tree David Cole Public/Private see here see here English