Difference between revisions of "Admin Branches Queue"
Robinrichm (talk | contribs) |
Robinrichm (talk | contribs) |
||
Line 16: | Line 16: | ||
| max_TNG_ver = 13.0.1 | | max_TNG_ver = 13.0.1 | ||
| TNG_file_list = ajx_labels.php, admin_branches.php, admin_editbranch.php, admin_updatebranch.php, English cust_text.php. <b>Installs</b>: rrbranchesqueue_dbsetup.php, rrbranchesqueue_status.php, rrbranchesqueue_ajx.php, rrbranchesqueue_dequeue.php, rrbranchesqueue.php, rrbranchesqueue_restore_ajx.php | | TNG_file_list = ajx_labels.php, admin_branches.php, admin_editbranch.php, admin_updatebranch.php, English cust_text.php. <b>Installs</b>: rrbranchesqueue_dbsetup.php, rrbranchesqueue_status.php, rrbranchesqueue_ajx.php, rrbranchesqueue_dequeue.php, rrbranchesqueue.php, rrbranchesqueue_restore_ajx.php | ||
− | | related_mods = [[Admin Branches]] (required), [[Add Name to PersonID]], [[Inner Mod Menus]] | + | | related_mods = [[Admin Branches]] (required), [[Add Name to PersonID]], [[Admin Secondary Processes]], [[Inner Mod Menus]] |
| notes = | | notes = | ||
}}== Purpose of the Mod == | }}== Purpose of the Mod == | ||
Line 46: | Line 46: | ||
<li>This mod '''is dependent on''' [[Admin Branches]], which also adds columns to the Admin>>Branches results table, and adds options to the Branch Editor.</li> | <li>This mod '''is dependent on''' [[Admin Branches]], which also adds columns to the Admin>>Branches results table, and adds options to the Branch Editor.</li> | ||
<li>This mod coordinates with [[Add Name to PersonID]] and [[Admin Branches]] because they all want to make changes to the main SQL query. The three mods share a flag that allows just one of the mods to make all of the SQL changes that all three mods need.</li> | <li>This mod coordinates with [[Add Name to PersonID]] and [[Admin Branches]] because they all want to make changes to the main SQL query. The three mods share a flag that allows just one of the mods to make all of the SQL changes that all three mods need.</li> | ||
+ | <li>This mod coordinates with [[Admin Secondary Process]] in that it adds a tab that returns to the Secondary Processes menu if it was invoked from a Secondary Process. | ||
</ol> | </ol> | ||
Revision as of 07:22, 20 November 2020
Admin Branches Queue | |||
---|---|---|---|
Summary | Implements a queuing mechanism that can perform batch execution of multiple branch label operations. | ||
Validation | |||
Mod Updated | 17 Nov 2020 | ||
Download link | v13.0.0.6.zip
v12.0.0.2a.zip
See older versions in the Revision History | ||
Download stats | |||
Author(s) | Robin Richmond | ||
Homepage | this pageRobin Richmond's Genealogy Database | ||
Mod Support | My Mod Support form or TNG Community Forums | ||
Contact Developer | My Mod Support form | ||
Latest Mod | 13.0.0.6 | ||
Min TNG V | 11.0 | ||
Max TNG V | 13.0.1 | ||
Files modified | ajx_labels.php, admin_branches.php, admin_editbranch.php, admin_updatebranch.php, English cust_text.php. Installs: rrbranchesqueue_dbsetup.php, rrbranchesqueue_status.php, rrbranchesqueue_ajx.php, rrbranchesqueue_dequeue.php, rrbranchesqueue.php, rrbranchesqueue_restore_ajx.php | ||
Related Mods | |||
Notes |
Purpose of the Mod
To make it easier to rebuild (relabel) multiple branches from their branch rules, and to know whether branches have been or need to be rebuilt. This mod
- Installs database fields and AJAX programs that mark Branch operations with timestamps in the TNG Branches table, so that administrators can know when or whether a Branch has been updated or cleared.
- Implements a simple queuing mechanism that allows site administrators to queue tasks that Add (aka Rebuild) or Clear branch labels. This queuing mechanism is of particular importance on large sites, where Branch operations take a long time.
- Modifies the Admin>>Branches>>Search results screen to show the status of each branch.
- Adds queuing options to the Admin>>Branches editor.
- Installs a Branch Queuing application from which an administrator can directly run some Branch operations, and can queue Branch operations to run in the background.
- This program is similar to the Admin>>Branches>>Search program, and is launched from a tab labeled "Queue Actions"
- Provides a way for branches to be rebuilt accurately after a Gedcom Import.
- The issue here is that the native Gedcom Import Secondary Process to "Relabel Branches" uses the old branch index (the branchlinks table), but the Gedcom Import can change who belongs in a branch, and thus make the branch index obsolete.
- Thus, this mod simplifies and optimizes the process of running complete branch label rebuilds, using the branch rules (e.g. ancestor generations, descendant generations, etc.)
Mod Options
none
Compatibility
This mod is compatible with Add Name to PersonID, Tree ID Mod, and TreeID-One Column, and depends on Admin Branches. Is is not compatible with Branches Sort mod because Admin Branches has a direct conflict. 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. The Queue Actions program supplied by this mod can focus on all of related branches.
Related Mods
- An Inner Mod Menu, which provides handy links from TNG pages directly to mod documentation and a mod's Mods Settings Block. (Inner Mod Menus are visible only to TNG Admins; never to end users.)
- The Mods Used feature, which captures a list of mods that affected the code used to display a TNG page. (This is analogous to the Mod Manager Analyzer feature that reports which mods affect a given TNG file, but that applies at run-time.
- This mod is dependent on Admin Branches, which also adds columns to the Admin>>Branches results table, and adds options to the Branch Editor.
- This mod coordinates with Add Name to PersonID and Admin Branches because they all want to make changes to the main SQL query. The three mods share a flag that allows just one of the mods to make all of the SQL changes that all three mods need.
- This mod coordinates with Admin Secondary Process in that it adds a tab that returns to the Secondary Processes menu if it was invoked from a Secondary Process.
Installation
This mod does not use standard cust_text.php files for language strings. Instead, it stores languages strings in the mod's subfolder, and pages modified by this mod load language strings directly from files in the mod's languages/ subfolder. Read more about this technique and its procedure for handling site-specific language string overrides.
Files Installed
- rrbranchesqueue_dbsetup.php - A script that sets up the new database fields that track queuing. It is launched from the mod description block within the Mod Manager List.
- rrbranchesqueue.php - The queuing app launched from the new "Queue Actions" tab. It lists selected branches and allows the user to enqueue jobs that rebuild (i.e. label) or clear the labels from multiple branches.
- rrbranchesqueue_ajx.php - An AJAX program to queue a list of branches for processing. Invoked by rrbranchesqueue.php.
- rrbranchesqueue_dequeue.php - An action script called by admin_editbranch.php to remove a job from an action queue. Invoked from admin_branchedit.php.
- rrbranchesqueue_status.php - An AJAX program that checks the status of the queued branch tasks. Invoked from admin_branches.php and rrbranchesenqueue.php
- rrbranchesqueue_restore_ajx.php - An AJAX program to relabel one branch by copying the branch index; similar to the secondary process that relabels all branches.
[Show Standard Installation Process]
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
- Remove and delete previous version of this mod.
- Backup the files updated by this mod. They are listed in the panel at the upper right.
- Download the .zip file, Extract its .cfg file to the mods folder.
- Follow the normal automated installation for Mod Manager, as shown in the example Mod Manager - Installing Config Files.
Problems?
- Try using the Mod Manager Remove capability
- Contact me through My Mod Support form.
Visualizations
Admin>>Branches>>Search Before installation of either Admin Branches or Admin Branches Queue The buttons at the bottom of this form generate cascading pop-up forms that I find confusing. The Admin Branches mod changes that workflow so that more actions can be taken without popups. |
Admin>>Branches>>Search After Installation of Admin Branches See the visualizations in the Admin Branches wiki article for annotation. |
Admin>>Branches>>Search After installation of both Admin Branches and Admin Branches Queue |
Admin>>Branches>>Search The Inner Mod Menu Both Admin Branches and Admin Branches Queue generate Inner Mod Menus in the Admin>>Branches search form, and in Admin>>Branches>>Edit. The two menus are consolidated in one menu as shown here.
In Admin>>Branches>>Edit, the only difference is that the last link for Admin Branches Queue goes to a section of the Wiki article that describes the changes made to that program. |
Admin>>Branches>>Edit After Installation of Admin Branches See the Admin Branches Wiki article for more annotation of the two forms on this page:
|
Admin>>Branches>>Edit After both mods have been installed. The Branch Edit page has three HTML forms, each of which is surrounded by a fieldset.
|
Admin>>Branches>>Queue Actions Page After installation of both mods This page is similar to the Branch Search page in that it lists all of the branches that match a search, and lets you select or clear checkboxes for each branch. But unlike the Branch Search Page
|
Admin>>Branches>>Queue Actions Page Reflecting some queued actions This screen clip was generated by refreshing the page quickly after actions were queued by the "Queue to add labels" button. Note that the "hk-hutch" branch is being processed, and the "hk-huyk" and "Marwil" branches are queued up to be processed next. |
Admin>>Branches>>Queue Actions Page After queued actions have completed.
|
Admin>>Branches>>Queue Actions Page Showing a 'dummy branches' search
|
Language Strings
This mod includes a typical mod subfolder, with the same base name as the mod's .cfg file. The subfolder is atypical in that no files in it are installed to working TNG folders. However, it does contain critical files that contain the mod's language strings, which the mod does not add to standard cust_text.php files. Instead, the PHP code modified by this mod loads the language strings from files in the mod's languages/ subfolder. Read more about this technique.
Revision History
Mod Version | TNG Version | Date | Note |
---|---|---|---|
13.0.0.6 | 13.0-13.0.1 | 20 Nov 2020 |
|
13.0.0.5 | 13.0 | 2 Aug 2020 |
|
12.0.0.2a | 12.0+ | 21 Mar 2020 |
|
12.0.0.2 | 12.0+ | 3 Jan 2020 |
|
Branch Timestamps v12.0.0.1 | 12.0+ | 15 May 2018 | No functional changes; made compatible with TNGv12. |
Branch Timestamps v11.0.0.1 | 11.0-11.1.2 | 5 Mar 2018 | No functional changes - Removed the second line from the cust_text.php target location search string, and replaced a message with a translation string. |
Branch Timestamps v11.0.0.0a | 11.0-11.1.2 | 31 May 2017 | New mod. 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 | 13.0.0.6 | 13.0.1 | English |
racine d'Alsace | J-Louis Valory | Pubic/Privat - Template 1 | 11.0.0.0a | 11.1.1 | French |