Difference between revisions of "Mod Manager Compare"

From TNG_Wiki
Jump to navigation Jump to search
 
(74 intermediate revisions by 16 users not shown)
Line 1: Line 1:
{{construction
 
|notes=FWIW, though I love this mod, and use it regularly, I'm not completely satisfied with the complexity of the kickoff form, or with the caching method I've developed to deal with the slowness of Wiki page retrievals. So I'm eager for any feedback about this mod.<br>
 
Robin Richmond 28 Dec 2017
 
}}
 
 
{{TNGmod
 
{{TNGmod
 
| mod_name        =  Mod Manager Compare
 
| mod_name        =  Mod Manager Compare
|  mod_summary    = Installs a program to generate a Mod Compare Report, which compares the version # of each mod on a TNG site with the mods' Wiki pages. It can be used, with some limitations, so see if a site has the versions of its mods.
+
|  mod_summary    = Installs a program to generate a Mod Comparison Report, which compares the version # of each mod on a TNG site with the mods' Wiki pages and/or the mods on a second TNG site. It can be used, with some limitations, so see if a site has the latest versions of its mods.
 
| mod_validation  =  
 
| mod_validation  =  
| mod_last_update = 24 Dec 2017
+
| mod_last_update = 23 Sep 2023
| download_link  =  [[Media:mod_manager_compare_v11.0.0.4a.zip|v11.0.0.4a]]{{Tv110}}
+
| download_link  =  [[Media:mod_manager_compare_v14.0.0.8.zip|v14.0.0.8]]{{Tv140}}<div style='font-size:90%;clear:both;'>(See the [[#Revision_History|Revision History]])</div>
 
| download_stats  =
 
| download_stats  =
 
| mod_author      = [[User:Robinrichm|Robin Richmond]]
 
| mod_author      = [[User:Robinrichm|Robin Richmond]]
Line 14: Line 10:
 
| 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] or [http://tng.community/ TNG Community Forums]
| mod_version    = 11.0.0.4a
+
| mod_version    = v14.0.0.8
| min_TNG_ver    = 11.0.0
+
| min_TNG_ver    = 11.0
| max_TNG_ver    = at least 11.1.1
+
| max_TNG_ver    = 14
|   TNG_file_list  = classes/modlister.class.php, admin_modhandler.php, admin_showmodslog.php, admin_modoptions.php, admin_modeditor.php, admin_analyzemods.php, admin_ cust_text.php English;
+
| TNG_file_list  = cust_text.php English; all Mod Manager programs: admin_modhandler.php, admin_modoptions.php, admin_updatemodoptions.php, admin_showmodslog.php, admin_analyzemods.php, admin_modeditor.php, admin_modtables.php, admin_modupdates.php;
<br /> '''Installed''': admin_modcompareform.php, admin_modcomparereport.php, css/modcompareform.css, css/modcomparereport.css
+
<br /> '''Installd''':
| related_mods  =  
+
rrmodcompare_form.php, rrmodcompare_report.php, rrmodcompare_modlist.php, English/rrmodcompare_help.php, css/rrmodcompare_.css  
 +
| related_mods  = [[Mod Manager Latest]]
 
| notes    =   
 
| notes    =   
}}
+
}}{| style="margin-right:0.5 em;" align="right"
 +
| __TOC__
 +
|}
 
== Purpose of the Mod ==
 
== Purpose of the Mod ==
Installs PHP programs that generate a Mod Compare Report that compares a site's mods to:
+
To create reports that can determine (in many cases) whether a site has the most up-to-date mods, or whether the most up-to-date mods from a programmer's site are on the Wiki.  The "Mod Comparison Report" compares a TNG site's mods to:
 
# The mods in a second site and/or
 
# The mods in a second site and/or
 
# The corresponding mod articles in the TNG Wiki.
 
# The corresponding mod articles in the TNG Wiki.
Note that if there are multiple versions of a mod (i.e. multiple files that have the same mod Name at the top of the mod .cfg file), the Mod Compare Report only looks at the latest version.
+
If there are multiple versions of a mod (i.e. multiple files that have the same mod name at the top of a .cfg file), the Mod Compare Report only looks at the latest version.
 +
 
 +
== Launching the Report ==
 +
Most often, a TNG site administrator will click the "Comparison" tab
 +
 
 +
This mod edits all Mod Manager programs to add a "Compare" tab. In addition it modifies:
 +
* admin_modhandler.php (the Mod List) program to establish a it also establishes a querystring parameter. When admin_modhandler.php is called with <code>dump=1</code> it simplifies the format of the result table so that data elements can be extracted by the Mod Comparison Report.
 +
 
 +
== Report Types ==
 +
In the kickoff form, you must choose between two similar Mod Comparison Report layouts:
 +
# "Simple", which always compares the local mods to the Wiki, and does not let you include a second site in the comparison. But you can select optional search and display options.
 +
# "Full", which allows to you choose whether to compare the local site to a second TNG site, and/or to the mods' Wiki articles. The full report has just a few more search and display options that the simple report.
 +
"My Mods" Reports are generated from hyperlinks, not from the Kickoff form. They are intended primarily to be invoked from personal articles on the TNG Wiki to show the mods on the person's site.
 +
 
 +
== "My Mods" Reports ==
 +
The Mod Comparison Report was written for TNG administrators who are trying to figure out the status of their mods, particularly in comparison to the mods' wiki articles.  But it can also be invoked from outside your site as a simpler presentation of your set of mods. The essentially purpose of this feature is to put a link on your personal TNG Wiki page that might say "See My Mods".
 +
 
 +
You'll need to link to your copy of '''rrmodcompare_report.php'''.
 +
* To highlight mods whose author name includes the string 'Robin', add the querystring parameter <code>?author='Robin'</code>
 +
** [https://www.robinrichmond.com/family/rrmodcompare_report.php?author='Robin' www.robinrichmond.com/family/rrmodcompare_report.php?author='Robin']
 +
* To show only those mods in which the author name ''does not'' include the string 'Robin':
 +
** [https://www.robinrichmond.com/family/rrmodcompare_report.php?author='Robin'&ayesno=y www.robinrichmond.com/family/rrmodcompare_report.php?author='Robin'&ayesno=y]
 +
 
 +
The primary intent is to put "See My Mods" links on personal Wiki pages on the TNG Wiki. When the report is invoked through a hyperlink:
 +
# The report heading is very different from the normal TNG admin report heading.  For example, it omits almost all of the standard TNG navigational menus except for the "Inner Menu", where there is barely anything more than a "Help link. The idea here is that people looking at the "My Mods" report do not need to be following admin links on the target site.
 +
#* The headings in the "My Mods" report are defined in Mod Manager Options.
 +
# The report uses the "Simple" format described above,
 +
# By default, the report does not include the local installation status or version number. (This omission is motivated by the notion that you are just trying to let Wiki users know what mods you are using, and what the Wiki says about them.  External users don't need to know exactly what is ''installed'' when they run the report, nor exactly which version of the mod you are using.)
 +
* To show the local installation status and version number, add the querystring parameter installed=1 to the URL.
 +
:: [https://www.robinrichmond.com/family/rrmodcompare_report.php&installed=1]
 +
# The report doesn't ''need'' any of the querystring parameters normally supplied by the kickoff form, but most of them ''can'' be specified (see the list of options),
 +
See the [[#Visualizations|Visualizations]] (when they are complete) for more details.
  
{| style="margin-right:0.5 em;" align="right"  
+
== Mod Options ==
| __TOC__
+
Options that affect Comparison Reports can come from two places
|}
+
# What I call a "kickoff form" that is launched from the new "Compare" tab on the Mod Manager tab bar, and that lets you confirm or set report options, and launch a report. Visualizations below describe the kickoff form in some detail.
This mod also modifies the Mod List program (admin_modhandler.php) and lister module (class/modlister.php) to implement a querystring parameter (dump) that makes the Mod List results table suitable for screen-scraping by the Mod Compare Report.  The dump querystring parameter is not used by any TNG links. The Mod Compare Report invokes the Mod List by opening it as a web page and specifying the query string parameter &dump=1.
+
# Mod Manager Options, at the Mod Manager "Options" tab. Most of these options are just defaults for the kickoff form. Some apply to the "My Mods" report format. Again, visualizations below illustrate the Comparison Report's Mod Manager Options.
 +
The Mod Manager Options are used
 +
## When you first run the kickoff form ''within a browser session''.  Just as with all of the Admin search forms that I can think of, all all of the subsequent invocations of the kickoff form within the browser session'' are driven by session cookies, not the defaults.
 +
## When you click the "Reset to Defaults" button in the kickoff form.  The "Request to Default" button does not clear the Comparison Report's session cookies, but if you then submit the kickoff form, the new form values ''will'' overwrite any existing session cookies.
 +
## When you follow a link in the Mod Manager Options page to the kickoff form. If you change the options and then select the Comparison Report tab, the report will used cached values of the report options, not the values you just specified.
  
== Files Installed ==
+
=== Mod Manager Options ===
# admin_modcompareform.php - The form that kicks off the new report.  It allows the user to update several new Mod Manager options, and ''displays'' Mod Manager options that can only be updated by the Mod Manager Options screen.
 
# admin_modcomparereport.php - The report program invoked by submitting the kickoff form.
 
# css/modcompareform.css - A CSS style sheet used by the kickoff form.
 
# css/modcomparereport.css - A style sheet used by the report.
 
The two external style sheets are placed in the HTML of their program ''before'' css/genstyle.css so that rules in them can be overridden at the bottom of css/genstyle.css.
 
(The style sheets are separate files simply because there are already too many style rules in css/genstyle.css that are needed for only one program, and as more rules are added, the chance of random rules stepping on each other increases.)
 
 
== Mod Manager Options ==
 
 
This mod installs new Mod Manager Options under the heading "Mod Comparison Report". The new options are divided into four groups:  
 
This mod installs new Mod Manager Options under the heading "Mod Comparison Report". The new options are divided into four groups:  
 
# '''Defaults for "Basic" Options in the Mod Comparison Report Kickoff Form''' (That is, these options can be changed on the kickoff form.)
 
# '''Defaults for "Basic" Options in the Mod Comparison Report Kickoff Form''' (That is, these options can be changed on the kickoff form.)
Line 63: Line 89:
  
 
== Compatibility with Other Mods ==
 
== Compatibility with Other Mods ==
No known conflicts. As I write this, my mods are the published mods that affect the Mod Manager/
+
No known conflicts. As I write this, my mods are the published mods that affect the Mod Manager. Besides that, this mod makes minimal changes to existing Mod Manager pages. For all but one Mod Manager program, all it does is add a tab for the comparison report. And it makes just a couple of changes to the Mod List page.
  
 
== Related Mods ==
 
== Related Mods ==
The [[Field Buttons]] mod enables small "field buttons" that are attached to text fields on the kickoff form. (See the visualizations and the [[Field Buttons]] article.)  Field buttons are small, configurable (and generally one-character) buttons that are attached to text fields on a form, and that reduce the number of mouse movements or typing needed to perform common data entry operations such as clearing a field or restoring that field's initial value. This mod is '''not depenendent on'' the [[Field Buttons]] mod. If [[Field Buttons]] is not installed, the field buttons simply do not appear.  
+
The [[Field Buttons]] mod enables small "field buttons" that are attached to text fields on the kickoff form. (See the visualizations and the [[Field Buttons]] article.)  Field buttons are small, configurable (and generally one-character) buttons that are attached to text fields on a form, and that reduce the number of mouse movements or typing needed to perform common data entry operations such as clearing a field or restoring that field's initial value. This mod is '''not dependent on'' the [[Field Buttons]] mod. If [[Field Buttons]] is not installed, the field buttons simply do not appear.  
  
This mod is also compatible with and coordinates with my other Mod Manager mods:
+
This mod is compatible with my [[Mod Manager Latest]], which duplicates the results table row for the most-recently-processed mods, under the  assumption that those are the most you're most likely to act on next.
# [[Mod Manager Filenames]], which
 
#* Looks for incompatibilities between the filename and the mod name,
 
#* Checks for discrepancies between the version number in the filename and the version number inside the .cfg file,
 
#* Abbreviates the filename (under control of a Mod Manager Option), and
 
#* Turns the filename into a hyperlink to the .cfg file.
 
# [[Mod Manager Latest]], which duplicates the results table row for the most-recently-processed mods, under to assumption that those are the most you're most likely to act on next.
 
# [[Mod Manager List Locations]], which
 
#* Adds some display features to the list of target locations in the detailed status,
 
#* Hides the detailed status for mods that are "Installed" and "Ok to Install", but
 
#* Adds a button that lets you see the detailed status listing if you want, and
 
# [[Mod Manager Note Tags]], which adds some .cfg file tags for annotation.
 
Any or all of these mods can be installed independently, in any order.
 
  
==Installation==
+
=== Files Installed ===
===Requirements===
+
# rrmodcompare_form.php - The form that kicks off the new report. It allows the user to update several new Mod Manager options, and ''displays'' Mod Manager options that can only be updated by the Mod Manager Options screen.
* A working TNG installation.
+
# rrmodcompare_report.php - The report program invoked by submitting the kickoff form.
* An installed current version of the [[Mod Manager]].
+
# rrmodcompare_modlist.php - An Ajax program that is invoked by the report program program to extract information from a site's .cfg files. When you are olooking at the local mods, this task could be performed within the report programBut the report program cannot read the .crg files on a separate website.  Instead, the report program invokes the rrmodcompare_modlist.php throuh Ajax, whereupon the Ajax program reads the mods on '''its site''', and returns the results to the report program.
* You should backup files listed in the panel on the right.
+
# css/rrmodcompare.css - A style sheet used by the kickoff form and report program, and by the Mod Manager Options that have been added to admim_modoptions.php.
===Procedure===
+
#* (The style sheet is in a separate file from genstyle.css because it contains quite a few rules, and there already too many style rules in css/genstyle.css that are used by only one or two programs.)
# Remove and delete previous version of this mod.
+
# languages/English/rrmodcompare_help.php - A fairly sketchy help file.
# Backup the files updated by this modThey are listed in the panel at the upper right.  
+
# Download the .zip file, and extract its .cfg file to the mods folder.
+
== Installation ==
# Follow the normal automated installation for Mod Manager, as shown in the example [[Mod Manager - Installing Config Files]].
+
{{RobinBoilerplate | text=languageandfiles}}
===Problems?===
+
{{RobinBoilerplate | text=install}}
# Try using the [[Mod_Manager_-_Installing_Config_Files#Remove_Mod_Steps|Mod Manager Remove]] capability
 
# Contact me through [http://www.robinrichmond.com/family/mod_support.php My Mod Support form].
 
  
 
== Visualizations ==
 
== Visualizations ==
<!-- You can run this report yourself - at [www.robinrichmond.com/family/admin_modcompare.php on my TNG site], where I have A LOT of mods. The visualizations below show selected portions of the report.
+
You can run the "My Mods" version of this report yourself on my public test site:
* [http://www.robinrichmond.com/family/admin_modcompare.php?remotesite=&searchwiki=1&searchauthor=Robin+Richmond&authorisrelevant=1&authoryesno=y&wikiStatus%5B%5D=ok&sortby=modname&b1=Go%21 Focusing on my Admin mods, by using the "include" search string.
+
# "My Mods" reports (that is, reports invoked by hyperlinks)
* [http://www.robinrichmond.com/family/admin_modcompare.php?remotesite=&searchwiki=1&searchauthor=Robin+Richmond&authorisrelevant=1&authoryesno=n&sortby=author&b1=Go%21 Mods that I didn't write, sorted by author]. Note that I have tweaked most of the .cfg files that I didn't write to add an Author tag that tells me who wrote the article, and in some cases, I have tweaked the .cfg file to add PHP or HTML comments where code is changed. In those cases, the local version number may have my initials at the end, and thus will not match the Wiki version. 
+
#* [https://www.robinrichmond.com/family/rrmodcompare_report.php?author=Robin&ayesno=y Showing just the mods I wrote]. (This URL contains two querystring parameters, for a substring of the author name, and a flag that says to focus on that author)
-->
+
#* [https://www.robinrichmond.com/family/rrmodcompare_report.php?author=Robin&ayesno=n Showing mods that I did not write. (This URL also contains two querystring parameters - the author name substring, and a flag that says to exclude the author )
{| border="1" cellspacing="1" cellpadding="2" class="wikitable"
+
#* [https://www.robinrichmond.com/family/rrmodcompare_report.php?sinclude=Admin] Showing mods by all authors that include the string "admin" in the mod name]. (This URL specifies one querystring parameter for the search key)
 +
# [https://www.robinrichmond.com/family/rrmodcompare_form.php The kickoff form].
 +
 
 +
(Some of these examples are from an earlier version that used outlines rather than shading to highlight cell values.)
 +
{| border="3" cellspacing="1" cellpadding="2" class="wikitable"
 +
| '''A Mod Comparison Report created with Basic option (and with Highlighting turned on'''
 +
|-
 +
| style="border:thin solid black;" [[Image:mod_manager_twopartreport.jpg|780px|link=Special:FilePath/Mod_manager_twopartreport.jpg]]
 
|-
 
|-
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''A Mod Comparison Report created with Basic option (and with Highlighting turned on''' (Click on the image to see a larger version)<br/>
+
The image above is a "Simple" report on mods whose names include the string "Admin". The Mod Manager option that allows certain values to be highlighted has been turned on. '''Click on the image to see a larger version.''' The highlighting of cells in the report will be explained in subsequent visualizations that focus on sections of the report table. Note these aspects of the report ''page''.
[[Image:mod_manager_basicreport.jpg|780px]]<br>
 
The image above is a "Basic" report on mod names that include the string "Admin". The Mod Manager option that allows certain values to be highlighted has been turned on. In this screen shot, the results table (but not the information above and below the table) has been shrunk because of its width.  Subsequent visualizations will focus on sections of the report table.
 
 
 
Note that
 
 
# The "Compare" tab has been added to all Mod Manager programs.
 
# The "Compare" tab has been added to all Mod Manager programs.
# Two links have been added to the Inner Menu. The "Report Legend" link goes to [[#Report_Column_Legend|Report Column Legend]] secton of this Wiki article. That section lists all columns in the Mod Comparison Report, with notes about values that can be highlighted in the column.
+
# Two links have been added to the "Inner Menu" (right below the tab bar). The "Report Legend" link goes to the [[#Report_Column_Legend|Report Column Legend]] section of this Wiki article. That section lists all columns in the Mod Comparison Report, with notes about values that can be highlighted in the column.
# The selection criteria are listed above the results table. The two criteria available with a basic report are a mod name search string that ''includes'' mods (like most TNG searches) and a search string that ''excludes'' mods.
+
# The selection criteria that were specified in the kickoff form are listed above the results table.  
# The black vertical line separates information about the mod .cfg files from information about the corresponding Wiki article.
+
The relatively bold vertical line separates information about the mod .cfg files from information about the corresponding Wiki articles.
# Below the results table, the report displays a summary of the objects that the program examined.
+
|}
#* There are 94 .cfg files in the site on which the program was run.
+
{| border="3" cellspacing="1" cellpadding="2" class="wikitable"
#* Of those 94 .cfg files, 13 matched the Mod Name search criterion, and were thus analyzed.
+
| '''The Kickoff Form that Generated the Report Above'''<br/>
#* For 12 of those 13 mods, there was fresh data in the Wiki cache.
 
#* 1 Wiki article was read from the Wiki server (hens then "when cached" value of 0 minutes
 
1 mod of those mods matched the search criteria and were displayed in the results table.
 
#* The program at least attempted to download 5 Wiki articles.
 
#* There is a list of status values in the 13 .cfg files that were analyzed. (There is one status column for the .cfg files, and one for the Wiki articles.)
 
 
|-
 
|-
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''The Kickoff Form that Generated the Report Above'''<br/>
+
| style=border:thin solid black;" | [[Image:mod_manager_compare-basicform.jpg]]
[[Image:mod_manager_compare-basicform.jpg]]<br>
+
|-
# A button reveals the Advanced options, or removes them when then are present.
+
# This is a "simple"; a full report A button reveals the Advanced options, or removes them when then are present.
 
# The current site (in this case, a test site on a PC) will be compared to the TNG Wiki server.  An Advanced option lets you compare the current site to a second site (for instance, when I want to compare my test server to my WWW production server.)  And you ''can'' omit the Wiki server from the comparison.
 
# The current site (in this case, a test site on a PC) will be compared to the TNG Wiki server.  An Advanced option lets you compare the current site to a second site (for instance, when I want to compare my test server to my WWW production server.)  And you ''can'' omit the Wiki server from the comparison.
 
# In a Basic report, the only search criteria available are the two search strings shown here. One string determines which mods will be included, and another string excludes mods. In this case, I'm looking for mods with the substring "Admin".  (The search is caseless.)
 
# In a Basic report, the only search criteria available are the two search strings shown here. One string determines which mods will be included, and another string excludes mods. In this case, I'm looking for mods with the substring "Admin".  (The search is caseless.)
# Here you see "Field Buttons" which are described in the [[#Field_Buttons|Field Buttons section]] of this article and in a visualization below.
+
# Here you see "Field Buttons" which are described in a visualization below.
 
# Each of the search strings can be a regular expression.  The information button gives a regular expression hint, as shown in the inset at the bottom of the screenshot.
 
# Each of the search strings can be a regular expression.  The information button gives a regular expression hint, as shown in the inset at the bottom of the screenshot.
 
# Three caching methods are available:
 
# Three caching methods are available:
## When you haven't run the comparison for a while, or when you are focusing on specific mods, you can ignore the cache, and make sure that you are reading the Wiki. Be careful about using this option, as suggeded by the note at the bottom of the page (#8).
+
## When you haven't run the comparison for a while, or when you are focusing on specific mods, you can ignore the cache, and make sure that you are reading the Wiki. Be careful about using this option, because loading a lot of articles from the Wiki can bog down the Wiki server a bit.
## The "standard" use of the cache is option 2, where you specify a cache expiration time (in this case 10 days ago. In this case, the comparison report will read Wiki articles directly from the Wiki server
+
## In caching option 2, you specify a cache expiration time (in this case 10 days ago. In this case, the comparison report will read Wiki articles directly from the Wiki server
##* If the Wiki article's cach is less than 10 days old, or
+
##* If the Wiki article's cache is less than 10 days old, or
 
##* If the Wiki article has not been read before, and thus is not in the cache.
 
##* If the Wiki article has not been read before, and thus is not in the cache.
## When you first start a browser session, the Cache Method is set to #2 when the page loads, but once you have run a Comparison, the initial value is always 3 (which doesn't read any Wiki articles unless it can't find them in the cache).  
+
## When you first start a browser session, the Cache Method is initially set to #2, but once you have run a Comparison Report, the kickoff form always defaults to option 33 (which doesn't read any Wiki articles unless it can't find them in the cache).  
 
# Be aware of this important reminder.
 
# Be aware of this important reminder.
 
[[Image:mod_manager_compare2-infotext.jpg]]
 
[[Image:mod_manager_compare2-infotext.jpg]]
Line 151: Line 161:
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Local Site Details'''<br/>
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Local Site Details'''<br/>
 
[[Image:mod_manager_compare-wikicolumns.jpg]]<br>
 
[[Image:mod_manager_compare-wikicolumns.jpg]]<br>
The visualization immediately above is not a detail of the specific Basic report shown above, but is a compilation of clips from another report, illustrating specific features of the report.
+
"Local site" is the site the user is on; not necessarily a test site on a users's "local" PC.
# A Mod Manager option lets you determine how the mod author name will be displayed. In this example, it has been set to "First name and intial".  The purpose of a shortened name is to save horizontal space in the report, which can get quite wide. The author name comes (first) from a new 'author' tag in the .cfg file that is implemented by the [[Mod Manager Note Tags]] mod. When there is not author tag in the .cfg file, the author's name is pulled from the 'Author(s)' field in the Wiki article sidebar. In both cases, the author name can be associated with a hyperlink to information about the author.
+
The visualization immediately above is not a detail of the specific Basic report shown above, but is a compilation of clips from a report with different options, illustrating specific features of the report.
# When highlighting has been turned on, the "Local v Wiki" column highlights mods where the Wiki has a newer version than the site the user is on.
+
# An option lets you determine how the mod author name will be displayed. In this example, it has been set to "First name and initial".  The purpose of a shortened name is to save horizontal space in the report, which can get quite wide. The author name can come from the first 'author' tag in the .cfg file, or from the 'Author(s) field in the wiki article sidebar. In both cases, the author name will be a hyperlink to information about the author if a hyperlinks is defined in the author source.
 +
# When highlighting has been turned on, the "Local v Wiki" column highlights mods where the Wiki has a newer version than the current site.
 
# When highlighting has been turned on, Installation Status values other than "install" are highlighted.
 
# When highlighting has been turned on, Installation Status values other than "install" are highlighted.
# The version number suffix of 'rr' for this mod is my personal convention to indicate that I have edited someone else's mod locally. Among other things, I added an Author tag to the .cfg file that gives both of our first names (and that can't be "abbreviated" to a first name and last initial). The Author tag that I added does not have a hyperlink.  
+
# The version number suffix of 'rr' for this mod is my personal convention to indicate that I have edited someone else's mod locally. I typically add Author tag to the .cfg file if there isn't already. In the example, the author tag contains two names, and no hyperlink.
# The plus sign in the Author column indicates that there is no Author tag in the .cfg file, and that the 'Author(s)' field in the Wiki article sidebar has more information than just one person's name. The Author column just shows the person name that starts the Author data, and when a user hovers over the Author value, the entire 'Author(s)' value is shown.
+
# A plus sign in the Author column indicates that there is no Author tag in the .cfg file, and that the 'Author(s)' field in the Wiki article sidebar has more information than just one person's name. The Author column just shows the person name that starts the Author data, and when a user hovers over the Author value, the entire 'Author(s)' value is shown.
 
# When highlighting has been turned on, The Mod Install value of 'ok2inst', like 'partinst' and 'cantinst' is highlighted.
 
# When highlighting has been turned on, The Mod Install value of 'ok2inst', like 'partinst' and 'cantinst' is highlighted.
 
# The value 'Missing' indicates that there is no Wiki article for this mod.
 
# The value 'Missing' indicates that there is no Wiki article for this mod.
Line 170: Line 181:
 
** The Wiki article is missing, so the Wiki article name is crossed out.
 
** The Wiki article is missing, so the Wiki article name is crossed out.
 
* Admin Users-More:
 
* Admin Users-More:
** There are two entries for Admin Users-More because two .cfg files refer to the same Wiki article. (The two files are the "main" Admin Users-More .cfg file, and a second .cfg file with language strings.)
+
** There are two entries for Admin Users-More because two .cfg files refer to the same Wiki article.
** The "Latest Mod" field in the Admin Users-More Wiki artical sidebar lists two mod versions, hence
+
** The "Latest Mod" field in the Admin Users-More Wiki articlee sidebar lists two mod versions, hence
 
***The Wiki Status value is ">1 ver#",
 
***The Wiki Status value is ">1 ver#",
 
***The Wiki Version column has a plus sign, and when a user hovers over the version number, the additional detail is displayed in a popup.
 
***The Wiki Version column has a plus sign, and when a user hovers over the version number, the additional detail is displayed in a popup.
 
* Place Data Copy
 
* Place Data Copy
** As with the Admin Reports Search mod, there is no Wiki article for the Place Data Copy mod.
+
** There is no Wiki article for the Place Data Copy mod.
 
|-  
 
|-  
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Kickoff Form with Advanced Options'''<br/>
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Kickoff Form with Advanced Options'''<br/>
Note that the advanced options are shown on the form in a reddish color to distinguish them from the Basic options.<br>  
+
Note that the advanced options are highlighted ''in this screenshot'' in a reddish color to distinguish them from the Basic options.<br>  
 
[[Image:mod_manager_compare-advancedform.jpg]]
 
[[Image:mod_manager_compare-advancedform.jpg]]
1. The user can select another TNG site, and create a three-way comparison.
+
# The user can select another TNG site, and create a three-way comparison.
2. The mod author is ''displayed'' when a Basic search is done, but with Advanced options, you can specify an author to search for. The author value can come from the .cfg file or from the Wiki article, and, of course, is not selected from a database; you can specify any value here, including part of an author name.
+
# The mod author is ''displayed'' when a Basic search is done, but with Advanced options, you can specify an author to search for. The author value can come from the .cfg file or from the Wiki article, and, of course, is not selected from a database. You can specify any value here, including part of an author name.
3. When you do specify an author to search for, you have 3 choices of how to use that author value. If you do not specify an author, this line of Author options is removed from the screen.
+
# When you do specify an author to search for, you have 3 choices of how to use that author value. If you do not specify an author, this line of Author options is removed from the screen.
4. You can also search for any number of status values from the status columns in a full report. The status values are initially hidden behind a button, and are shown below.
+
# You can also search for any number of status values from the status columns in a full report. The status values are initially hidden behind a button, and are shown below.
5. With Advanced options, you can also specify a sort order for the results table. Some of the report order values are shown or hidden as other options are selected.  For instance, if there is no second TNG site URL, then the "Status of Site2 v Site1" and "Status of Site2 v Wiki" are not meaningful, and are hidden.
+
# With Advanced options, you can also specify a sort order for the results table. Some of the report order values are shown or hidden as other options are selected.  For instance, if there is no second TNG site URL, then the "Status of Site2 v Site1" and "Status of Site2 v Wiki" are not meaningful, and are hidden.
6. The "Other Advanced Mod Manager options" are automatically disabled when the kickoff form has only Basic options.  
+
# The "Other Advanced Mod Manager options" are automatically disabled when the kickoff form has only Basic options.  
 
|-  
 
|-  
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Status Values on the kickoff form'''<br/>
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Status Values on the kickoff form'''<br/>
Line 195: Line 206:
 
When a second TNG site (or "remote site") is selected, four columns with the term "Site 2" in the column headings are added to the report between the columns for the local site and the columsn for the Wiki site.  The headings for the 3 "local" status columns are also changed to refer to "Site 1".  
 
When a second TNG site (or "remote site") is selected, four columns with the term "Site 2" in the column headings are added to the report between the columns for the local site and the columsn for the Wiki site.  The headings for the 3 "local" status columns are also changed to refer to "Site 1".  
  
The "Site 2" columns are essentially identical in meaning to the three "Site 1" columns, except except that there is an additional column that compares the Site 2 version number to the Site 1 version number.
+
Thre "Site 2" columns are essentially identical in meaning to the three "Site 1" columns, and a fourth column compares the Site 1 and Site 2 version numbers.
 
|-  
 
|-  
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Mod Comparison Report Mod Manager Options<br/>
 
| colspan=2 style="border:thin solid black;vertical-align:top;" | '''Mod Comparison Report Mod Manager Options<br/>
Line 233: Line 244:
  
 
== Report Column Legend ==
 
== Report Column Legend ==
Regaring the notes about highlighting below
+
(Again, this section describes mod ersion 5, not version 6)
* Whether there is higlighting is dependent on a new Mod Manager option,  
+
Regarding the notes about highlighting below
* The higlighting consists of cell borders in one of two colors, "postive" and "negative", which default o green and reddish, and can be changed by Mod Manager options,  
+
* Whether there is highlighting is dependent on a new Mod Manager option,  
 +
* The highlighting consists of cell borders in one of two colors, "postive" and "negative", which default o green and reddish, and can be changed by Mod Manager options,  
 
* When I say "depending on a Mod Manager option", I don't mean the options described in the first two points; I am referring to an additional option that controls whether that specific condition is tested.
 
* When I say "depending on a Mod Manager option", I don't mean the options described in the first two points; I am referring to an additional option that controls whether that specific condition is tested.
  
The full Mod Compare Report has four groups of columns:
+
The Mod Comparison Report has four groups of columns. (Runtime options can reduce the number of columns in a report)
* Mod Identity
+
* '''Mod Identity'''
 
*# '''Mod Name''' - The mod's name, as specified inside the local .cfg file (if there is one), or the remote .cfg file.  Note that, if more than one version of the mod exists on either TNG site, only the latest version is shown. (As a result, if the local site has v2 and v3 of a mod, and the remote site has v2), the local v2 will be ignored, and the local v3 will be compare to the remote v2.)  
 
*# '''Mod Name''' - The mod's name, as specified inside the local .cfg file (if there is one), or the remote .cfg file.  Note that, if more than one version of the mod exists on either TNG site, only the latest version is shown. (As a result, if the local site has v2 and v3 of a mod, and the remote site has v2), the local v2 will be ignored, and the local v3 will be compare to the remote v2.)  
*# '''Mod Filename'' - The .cfg filename (possibly abbreviated).
+
*# '''Mod Filename''' - The .cfg filename (possibly abbreviated).
*#* The mod filename is a hyperlink to the . Depending on a Mod Manager option, the mod version number and file extension (always .cfg) are omitted (to save horizontal space in the table) if the version number portion of the filename matches the version number ''inside'' the .cfg file.   
+
*#* The mod filename may be a hyperlink to the .cfg file. Depending on a Mod Manager option, the mod version number and file extension (always .cfg) are omitted (to save horizontal space in the table) if the version number portion of the filename matches the version number ''inside'' the .cfg file.   
 
*#* Depending on another Mod Manager option, if either the Mod Name portion or the Version number portion of the Mod Name differs from the values inside the .cfg file, the mod name is highlighted, and the program displayes the reason(s) for the higlighting when you mouse over the filename.  
 
*#* Depending on another Mod Manager option, if either the Mod Name portion or the Version number portion of the Mod Name differs from the values inside the .cfg file, the mod name is highlighted, and the program displayes the reason(s) for the higlighting when you mouse over the filename.  
*# '''Author''' - The report first looks for an Author in the "Author" field of the TNG Wiki article sidebar.  If no Author is found there, then the report looks for an !@#Author tag in the .cfg file. (The [[Mod Manager Notes]] mod creates the ability for the Mod Manager to handle !@#Author tags.)
+
*# '''Author''' - The report first looks for an Author in the "Author" field of the TNG Wiki article sidebar.  If no Author is found there, then the report looks for an %Author tag in the .cfg file.  
 
*#* The kickoff form can specify that a mod author who matches a search value should be highlighted. If the mod Author matches the Author specified in the kickoff form, the name is highlighted in green.
 
*#* The kickoff form can specify that a mod author who matches a search value should be highlighted. If the mod Author matches the Author specified in the kickoff form, the name is highlighted in green.
 
*#* Depending on a Mod Manager option, the Author name can be displayed as a full name, first name and last initial, or first name only. The format specified for the ''displayed'' author name does not affect the author name search string, nor the match between the author search string and the author in the Wiki page or the .cfg file.
 
*#* Depending on a Mod Manager option, the Author name can be displayed as a full name, first name and last initial, or first name only. The format specified for the ''displayed'' author name does not affect the author name search string, nor the match between the author search string and the author in the Wiki page or the .cfg file.
*#* If the author name in the Wiki article is hyperlinked, or an URL is specified in the !@#Author tag in the .cfg file, the author name is hyperlinked.
+
*#* If the author name in the Wiki article is hyperlinked, or an URL is specified in the %Author tag in the .cfg file, the author name in the report is hyperlinked.
*#* If the author name field in the Wiki article sidebar contains more information than just the filename, a plus sign is displayed in the field, and when you mouse over that plus sign, that additional information is displayed.
+
*#* If the author name field in the Wiki article sidebar contains more information than just the author name, a plus sign is displayed in the field, and when you mouse over that plus sign, that additional information is displayed.
* The mod on the local site. These columns are always present, but will be blank if there is a remote site ("Site 2"), and a mod that exists in the remote site but not in the local site. These columns are labeled as "Local" or "Site 1", depending on whether a second site has been specified.
+
* '''The mod on the local site''' <br>These columns will be blank if there is a remote site ("Site 2"), and a mod that exists in the remote site is not in the local site. These columns are labeled as "Local" or "Site 1", depending on whether a second site has been specified.
 
*# '''Local Install''' - The installation status of the local mod.
 
*# '''Local Install''' - The installation status of the local mod.
 
*#* A status other than 'Installed' is highlighted with the negative color.
 
*#* A status other than 'Installed' is highlighted with the negative color.
 
*# '''Local Version''' - The version number from the %version tag inside the mod .cfg file.
 
*# '''Local Version''' - The version number from the %version tag inside the mod .cfg file.
 
*# '''Local v Wiki''' - A comparison of the mod's version number to the Wiki version number, marked by values such as '>wiki', '<wiki', etc.
 
*# '''Local v Wiki''' - A comparison of the mod's version number to the Wiki version number, marked by values such as '>wiki', '<wiki', etc.
*#* If the mod is marked as Private with the tag !@#Private%, then the report will make no attempt to look for a Wiki article, and this cell will have the value 'Private'.
+
*#* If the mod is marked as Private, then the report will make no attempt to look for a Wiki article, and this cell will have the value 'Private'.
 
*#* If the mod's version # is less than the Wiki version number, then the comparison value will be highlighted with the negative color.
 
*#* If the mod's version # is less than the Wiki version number, then the comparison value will be highlighted with the negative color.
* The mod on the remote site ("Site 2") - These columns are omitted completely if no remote site is specified.
+
* '''The mod on the remote site''' ("Site 2")<br>These columns are omitted completely if no remote site is specified.
*# '''Remote Install''' - The installation status of the local mod.  
+
*# '''Remote Install''' - The installation status on the second site.  
 
*#* Any value other than 'Installed' is highlighted with the negative color.
 
*#* Any value other than 'Installed' is highlighted with the negative color.
 
*# '''Remote Version''' - The version number from the %version tag inside the mod .cfg file.
 
*# '''Remote Version''' - The version number from the %version tag inside the mod .cfg file.
 
*# '''Remote v Local''' - A comparison of the mod's version number with the version number of the local file, with values such as '>site1', '=site1', etc.
 
*# '''Remote v Local''' - A comparison of the mod's version number with the version number of the local file, with values such as '>site1', '=site1', etc.
 
*# '''Remote v Wiki''' - A comparison of the mod's version number to the Wiki version number, just like the '''Local v Wiki' column.
 
*# '''Remote v Wiki''' - A comparison of the mod's version number to the Wiki version number, just like the '''Local v Wiki' column.
* Wiki Article - These columns will be omitted if the user unchecked the "Read Wiki" checkbox in the kickoff form.
+
* '''Wiki Article''' <br>These columns will be omitted if the user unchecked the "Read Wiki" checkbox in the kickoff form.
 
*# '''Wiki Status''' - Indicates whether the Wiki article exists, whether the version number could be found, and whether the version number field in the Wiki sidebar contains more than one version number.
 
*# '''Wiki Status''' - Indicates whether the Wiki article exists, whether the version number could be found, and whether the version number field in the Wiki sidebar contains more than one version number.
 
*# '''Wiki Version''' - The version number from the new '''Latest Mod'' field in the Wiki article sidebar.
 
*# '''Wiki Version''' - The version number from the new '''Latest Mod'' field in the Wiki article sidebar.
 
*#* If the field contains any text other than just a single version number, then a plus sign is displayed at the right end of the table cell, and the entire text of the field is saved in a pop-up that will appear if you hover over the plus sign.  
 
*#* If the field contains any text other than just a single version number, then a plus sign is displayed at the right end of the table cell, and the entire text of the field is saved in a pop-up that will appear if you hover over the plus sign.  
 
*#* If the field contains more than one version number, the version numbers are compared, and the highest one is displayed.
 
*#* If the field contains more than one version number, the version numbers are compared, and the highest one is displayed.
*# '''Wiki Article Hyperlink''' - A hyperlink to the Wiki article, based on the %wikipage tag in the .cfg file.  The hyperlink will open in a new page or tab.
+
*# '''Wiki Article''' - A hyperlink to the Wiki article, based on the %wikipage tag in the .cfg file.  The hyperlink will open in a new page or tab.
 
*#* If the Wiki article name does not match the Mod name, then the table cell is highlighted with the background color.  
 
*#* If the Wiki article name does not match the Mod name, then the table cell is highlighted with the background color.  
*#* If the a Wiki article is specified in the mod .cfg file, then the columns showing the Local and/or Site 2 comparison to the Wiki article will have the value "Missing", and the Wiki article name will be shown, but crossed out.
 
  
 
== Status Values ==
 
== Status Values ==
Line 291: Line 302:
 
** >1 ver# - There was more than one version # in the '''Latest Mod'' sidebar field. This is not an error, and does not suggest a problem, it's just an FYI.
 
** >1 ver# - There was more than one version # in the '''Latest Mod'' sidebar field. This is not an error, and does not suggest a problem, it's just an FYI.
 
** ok - The mod article exists, and appears to have one version number in the '''Latest Mod'' sidebar field.
 
** ok - The mod article exists, and appears to have one version number in the '''Latest Mod'' sidebar field.
 +
 +
== New Tabs ==
 +
This mod installs a new "Compare" tab in all of the existing Mod Manager programs.  Through shared files installed from a shared mods subfolder, it also implements a feature used (or soon to be used) my most of my mods that create new tabs in program menus.  That is, the new tabs are flagged with an asterisk, and if you mouse over that asterisk, the name of the mod that defined the new tab is displayed in a popup.
  
 
== Caching ==
 
== Caching ==
Line 297: Line 311:
 
Consequently, the  kickoff form specifies a cache age limit.  If the cached data - for a specific Wiki article - is older than that age, the Wiki article will be re-read and its cache will be refreshed.
 
Consequently, the  kickoff form specifies a cache age limit.  If the cached data - for a specific Wiki article - is older than that age, the Wiki article will be re-read and its cache will be refreshed.
  
If you know (or think that) certain Wiki articles have been updated, you can refresh the cache for those specific articles if you:
+
If you believe that certain Wiki articles have been updated, you can refresh the cache for those specific articles if you:
 
# Search for those specific articles by name (or name substring), and
 
# Search for those specific articles by name (or name substring), and
 
# Specify a small age limit (say, 20 minutes, 10 days, 6 weeks - whatever is appropriate).
 
# Specify a small age limit (say, 20 minutes, 10 days, 6 weeks - whatever is appropriate).
Line 303: Line 317:
 
== Revision History ==
 
== Revision History ==
 
{| border="0" cellspacing="1" cellpadding="2" class="wikitable"
 
{| border="0" cellspacing="1" cellpadding="2" class="wikitable"
 +
! Mod Version !! TNG Version !! Date !! Note
 
|-
 
|-
! Mod Version
+
|[[Media:Mod manager compare v14.0.0.8.zip|v14.0.0.8]]
! TNG Versions
+
|14
! Date
+
|23 Sep 2023
! Note
+
|Dealt with a new barrier inside the mod handler, New way to initialize field buttons, Fixed typo in a filename, Stopped using MM styles because they break scrolling.
|-  
+
|- style="vertical-align:top;"<!-- ############################################################## -->
 +
| [[Media:Mod manager compare v13.0.0.6e4.zip|13.0.0.6e4]]
 +
| 13.0-13.1
 +
| style="white-space: nowrap;" |17 Nov 2021
 +
| Bypass the new admin-only restriction introduced by TNGv13.1. Still works for TNGv13.0.*
 +
|- style="vertical-align:top;"<!-- ############################################################## -->
 +
| [[Media:Mod manager compare v13.0.0.6e3.zip|13.0.0.6e3]]
 +
| 13.0-13.0.2
 +
| style="white-space: nowrap;" |21 Dec 2020
 +
| Remove the blank line at the end of the language string files to avoid a PHP that only sometimes occurs.
 +
|- style="vertical-align:top;"<!-- ############################################################## -->
 +
| [[Media:Mod manager compare v13.0.0.6e2.zip|13.0.0.6e2]]
 +
| 13.0-13.0.1
 +
| style="white-space: nowrap;" |8 Dec 2020
 +
| Changed target locations to accommodate a post-TNG.0.1 patch version of admin_modhandler.php.
 +
|- style="vertical-align:top;"<!-- ############################################################## -->
 +
|[[Media:Mod manager compare v13.0.0.6e1.zip|13.0.0.6e1]]
 +
| 13
 +
| style="white-space: nowrap;" |8 Dec 2020
 +
| Upgraded to TNGv13. See the .cfg file for details
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| 12.0.0.6e
 +
| 120-12.3
 +
| style="white-space: nowrap;"|11 May 2020
 +
| Numerous changes. See the .cfg for all. This is a small sample
 +
# Kickoff form:
 +
#* Added a kick-off form option to suppress the author column of the report table. It is just the choice "none" in the existing author format field.
 +
#* Added mod summaries pulled from the Wiki article, and controlled by a display option
 +
#* Added summaries of each section of the form so users can see (part of) what is set even when the section is closed.
 +
#** Bold option names in the summary just indicate that the option has a value.
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| 12.0.0.6c
 +
| 12.0-12.3
 +
| style="white-space: nowrap;"|11 Dec 2019
 +
| Numerous changes. See the .cfg for all.&emsp;&emsp; <span class="mw-collapsible mw-customtoggle-13c1 mw-customtoggle-13c2" id='mw-customcollapsible-13c1' style="text-decoration:underline;color:#0645ad;">&#91;See selected changes&#93;</span>
 +
<div class='mw-collapsible mw-collapsible-content mw-collapsed toccolours' id='mw-customcollapsible-13c2' style="border:thick solid brown;">
 +
<div class="mw-customtoggle-13c1 mw-customtoggle-13c2" style="text-decoration:underline;color:#0645ad;text-align:right;">&#91;Hide details&#93;</div>
 +
<!-- BEGIN TOGGLED CONTENT -->
 +
# Kickoff form:
 +
#* Moved some options to different sections of the options form
 +
# Added a display option for putting the Author column at the far right.
 +
#* After a report uses the "Always read from the wiki" cache method, the method is automatically changed to "Read the wiki article only if the cache is old enough".
 +
#* When "Look at the Wiki" and/or "Look at a second site" are not selected,  most of the options that are no longer applicable are greyed out and disabled, not hidden.
 +
#* Changed the prompt "Highlight status values" to "Color code status values"
 +
# Changes to the report program
 +
#* The running list of mod names at top of the report includes only the mods read from the wiki (not those loaded from the cache)
 +
#* Eliminated the "Wiki status" column from the report.
 +
#* Now that I've figure out that a PHP setting is the cause of some sites' inability to find their mods, the "no mods found" error message links to a Wiki article section about how to fix that error.
 +
# When filenames are wrapped, the underscore now stays on the first line.
 +
<!-- BUTTON AT THE BOTTOM OF TOGGLED CONTENT --><div class="mw-customtoggle-13c1 mw-customtoggle-13c2" style="text-decoration:underline;color:#0645ad;text-align:right;">&#91;Hide details&#93;</div></div><!-- END TOGGLED CONTENT and END DOUBLE TOGGLE -->
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| [[Media:Mod manager compare v12.0.0.6b.zip|12.0.0.6b]]
 +
| 12.0-12.2+
 +
| style="white-space: nowrap;"|11 Nov 2019
 +
|
 +
# Added the simple report format and the distinctive external report.
 +
# Tweaked the Mod Manager Options form and the Mod Comparison Report kickoff form, regrouped the options, and eliminated a few. I think that the only new options are
 +
#* The selection of the two report types, and
 +
#* Three options that define subheadings that are used in external report. The report program chooses the subheading that matches the author search/match parameters supplied to the external report.
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 +
| [[Media:Mod manager compare v12.0.0.5c.zip|12.0.0.5c]]
 +
| 12.0+
 +
| style="white-space: nowrap;"|15 May 2018
 +
| No functional changes; made compatible with TNGv12.
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 
| 11.0.0.4a
 
| 11.0.0.4a
 
| 11.0.0 - 11.1.2+
 
| 11.0.0 - 11.1.2+
| 24 Dec 2017
+
| style="white-space: nowrap;"|24 Dec 2017
 
| First production version
 
| First production version
|
+
|- style="vertical-align:top;"  <!-- ############################################################## -->
| 11.0.0.1a
+
| 11.0.0.2
 
| 11.0.0 and up
 
| 11.0.0 and up
| 27 May 2017
+
| style="white-space: nowrap;"|14 Jun 2017
| New mod – Beta Status.
+
| Still Beta Status
|-  
+
* Had to trim a string so that empty %wikipage tags would generate the status 'No Link' instead of 'Bad Link'
 +
* Adding Wiki caching, which speeds up the report tremendously.
 +
* Added filename substring searches to the kickoff form so that users can specify specific mods to include and/or exclude from the report
 +
|- style="vertical-align:top;"  <!-- ############################################################## -->
 
| 11.0.0.1b
 
| 11.0.0.1b
 
| 11.0.0 and up
 
| 11.0.0 and up
| 6 Jun 2017
+
| style="white-space: nowrap;"|6 Jun 2017
 
| Still Beta Status
 
| Still Beta Status
 
* Trimmed leading spaces from the Remote Site URL.
 
* Trimmed leading spaces from the Remote Site URL.
 
* Fixed a variable reference that was causing some of the remote .cfg fields to be lost.
 
* Fixed a variable reference that was causing some of the remote .cfg fields to be lost.
|-  
+
|- style="vertical-align:top;"  <!-- ############################################################## -->
| 11.0.0.2
+
| 11.0.0.1a
 
| 11.0.0 and up
 
| 11.0.0 and up
| 14 Jun 2017
+
| style="white-space: nowrap;"|27 May 2017
| Still Beta Status
+
| New mod – Beta Status.
* Had to trim a string so that empty %wikipage tags would generate the status 'No Link' instead of 'Bad Link'
 
* Adding Wiki caching, which speeds up the report tremendously.
 
* Added filename substring searches to the kickoff form so that users can specify specific mods to include and/or exclude from the report
 
 
|}
 
|}
  
Line 339: Line 418:
  
 
{| border="0" cellspacing="1" cellpadding="2" class="wikitable"
 
{| border="0" cellspacing="1" cellpadding="2" class="wikitable"
|-
+
! URL !! User !! Note !! Mod-Version !! TNG-Version !! User-language
! URL
 
! User
 
! Note
 
! Mod-Version
 
! TNG-Version
 
! User-language
 
 
|-
 
|-
 
| [http://www.robinrichmond.com/family/ Robin Richmond's Genealogy Database]
 
| [http://www.robinrichmond.com/family/ Robin Richmond's Genealogy Database]
 
| [[User:Robinrichm|Robin Richmond]]
 
| [[User:Robinrichm|Robin Richmond]]
 
| Mod developer
 
| Mod developer
|11.0.0.1a
+
| v14.0.0.8
| 11.1
+
| 14
| English
+
| EN
 +
 
 +
|-
 +
| [https://www.treichel-familie.de Treichel-Familie.de]
 +
| [[User:EAndy|Andreas Treichel]]
 +
| Public & Private
 +
| 14​.0​.0​.8
 +
| 14.0.3
 +
| DE, UK, FR, ES, PL
 +
 
 +
|-
 +
| [http://LisaAndRoger.com/Genealogy/ Roger's Online Genealogy Database]
 +
| [[User:TheKiwi|Roger Moffat]]
 +
|
 +
| 13.0.0.6e3
 +
| 13.1.0
 +
| EN
 
|-
 
|-
 
| [http://www.kmtrees.com/ Roots & Relatives Remembered]
 
| [http://www.kmtrees.com/ Roots & Relatives Remembered]
 
| [[User:Tngrlkrz|Ron Krzmarzick]]
 
| [[User:Tngrlkrz|Ron Krzmarzick]]
 
| Public & Private
 
| Public & Private
|11.0.0.4a Comprehensive Version Checker
+
| [https://www.kmtrees.com/mods-installed See Here]
| 11.1.2
+
| [https://www.kmtrees.com/mods-installed See Here]
| EN,ES,CS,DE
+
| EN,DE,CS
 +
|-
 +
| [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
 +
|-
 +
| [https://www.ourfamilyhistories.org Our Family Histories]
 +
| [[User:Bsl20b50|Bryan S. Larson]]
 +
| Public site
 +
| [[User:Bsl20b50|See Here]]
 +
| [[User:Bsl20b50|See Here]]
 +
| EN
 +
|-
 +
| [https://www.wortelnet.nl Wortelboer genealogie]
 +
| Bernard Wortelboer
 +
| Public site
 +
| 13.0.0.6e3
 +
| 14.0.0
 +
| NL,EN
 +
|-
 +
| [https://bastiaanssen.us Bastiaanssen Genealogy]
 +
| Jan Bastiaanssen
 +
| Public / Private
 +
| 13.0.0.6f
 +
| 13.1.2
 +
| NL, EN, ES
 +
|-
 +
| [https://www.genealogywings.com/ MOTYER Family Genealogy]
 +
| [[User:JMM|John Mark Motyer]]
 +
| Public site
 +
| [https://www.genealogywings.com/jmm_pages/My-TNG-mods.php See here]
 +
| [https://www.genealogywings.com/jmm_pages/My-TNG-mods.php See here]
 +
| EN
 +
|-
 +
| [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
 +
|-
 +
|[https://apperley.ca The Annals of a Humble Race]
 +
|Gerald Apperly
 +
|Public / Private
 +
|14.0.0.7
 +
|14.0.1
 +
|EN
 +
|-
 +
| [https://www.CarrFamilyTree.com Carr's Garage]
 +
| |[[User:Regis Carr|Regis Carr]]
 +
| Public / Private
 +
| 13.0.0.6e4
 +
| 13.1.2
 +
| EN, DE, NO
 +
|-
 +
| [https://ahnenklein.com/ Auf den Spuren meiner Ahnen]
 +
| style="white-space: nowrap;"|[[User:Maikl11|Michael Klein]]
 +
| Public/Private, Mod no longer works properly.
 +
| 14​.0​.0​.8
 +
| {{Tv1403}}
 +
| EN, DE
 +
|-
 
|}
 
|}
 +
[[Category:Mods for TNG v13]]
 +
[[Category:Mods for TNG v12]]
 
[[Category:Mods for TNG v11]]
 
[[Category:Mods for TNG v11]]
 
[[Category:modlister.class.php mods]]
 
[[Category:modlister.class.php mods]]
Line 368: Line 523:
 
[[Category:admin_analyzemods.php mods]]
 
[[Category:admin_analyzemods.php mods]]
 
[[Category:admin_modeditor.php mods]]
 
[[Category:admin_modeditor.php mods]]
 +
[[Category:admin_modtables.php mods]]
 
[[Category:cust_text.php English mods]]
 
[[Category:cust_text.php English mods]]

Latest revision as of 00:49, 28 October 2023

Mod Manager Compare
Summary Installs a program to generate a Mod Comparison Report, which compares the version # of each mod on a TNG site with the mods' Wiki pages and/or the mods on a second TNG site. It can be used, with some limitations, so see if a site has the latest versions of its mods.
Validation
Mod Updated 23 Sep 2023
Download link v14.0.0.8
TNG 14.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 v14.0.0.8
Min TNG V 11.0
Max TNG V 14
Files modified
cust_text.php English; all Mod Manager programs: admin_modhandler.php, admin_modoptions.php, admin_updatemodoptions.php, admin_showmodslog.php, admin_analyzemods.php, admin_modeditor.php, admin_modtables.php, admin_modupdates.php;


Installd:

rrmodcompare_form.php, rrmodcompare_report.php, rrmodcompare_modlist.php, English/rrmodcompare_help.php, css/rrmodcompare_.css
Related Mods
Notes

Purpose of the Mod

To create reports that can determine (in many cases) whether a site has the most up-to-date mods, or whether the most up-to-date mods from a programmer's site are on the Wiki. The "Mod Comparison Report" compares a TNG site's mods to:

  1. The mods in a second site and/or
  2. The corresponding mod articles in the TNG Wiki.

If there are multiple versions of a mod (i.e. multiple files that have the same mod name at the top of a .cfg file), the Mod Compare Report only looks at the latest version.

Launching the Report

Most often, a TNG site administrator will click the "Comparison" tab

This mod edits all Mod Manager programs to add a "Compare" tab. In addition it modifies:

  • admin_modhandler.php (the Mod List) program to establish a it also establishes a querystring parameter. When admin_modhandler.php is called with dump=1 it simplifies the format of the result table so that data elements can be extracted by the Mod Comparison Report.

Report Types

In the kickoff form, you must choose between two similar Mod Comparison Report layouts:

  1. "Simple", which always compares the local mods to the Wiki, and does not let you include a second site in the comparison. But you can select optional search and display options.
  2. "Full", which allows to you choose whether to compare the local site to a second TNG site, and/or to the mods' Wiki articles. The full report has just a few more search and display options that the simple report.

"My Mods" Reports are generated from hyperlinks, not from the Kickoff form. They are intended primarily to be invoked from personal articles on the TNG Wiki to show the mods on the person's site.

"My Mods" Reports

The Mod Comparison Report was written for TNG administrators who are trying to figure out the status of their mods, particularly in comparison to the mods' wiki articles. But it can also be invoked from outside your site as a simpler presentation of your set of mods. The essentially purpose of this feature is to put a link on your personal TNG Wiki page that might say "See My Mods".

You'll need to link to your copy of rrmodcompare_report.php.

The primary intent is to put "See My Mods" links on personal Wiki pages on the TNG Wiki. When the report is invoked through a hyperlink:

  1. The report heading is very different from the normal TNG admin report heading. For example, it omits almost all of the standard TNG navigational menus except for the "Inner Menu", where there is barely anything more than a "Help link. The idea here is that people looking at the "My Mods" report do not need to be following admin links on the target site.
    • The headings in the "My Mods" report are defined in Mod Manager Options.
  2. The report uses the "Simple" format described above,
  3. By default, the report does not include the local installation status or version number. (This omission is motivated by the notion that you are just trying to let Wiki users know what mods you are using, and what the Wiki says about them. External users don't need to know exactly what is installed when they run the report, nor exactly which version of the mod you are using.)
  • To show the local installation status and version number, add the querystring parameter installed=1 to the URL.
[1]
  1. The report doesn't need any of the querystring parameters normally supplied by the kickoff form, but most of them can be specified (see the list of options),

See the Visualizations (when they are complete) for more details.

Mod Options

Options that affect Comparison Reports can come from two places

  1. What I call a "kickoff form" that is launched from the new "Compare" tab on the Mod Manager tab bar, and that lets you confirm or set report options, and launch a report. Visualizations below describe the kickoff form in some detail.
  2. Mod Manager Options, at the Mod Manager "Options" tab. Most of these options are just defaults for the kickoff form. Some apply to the "My Mods" report format. Again, visualizations below illustrate the Comparison Report's Mod Manager Options.

The Mod Manager Options are used

    1. When you first run the kickoff form within a browser session. Just as with all of the Admin search forms that I can think of, all all of the subsequent invocations of the kickoff form within the browser session are driven by session cookies, not the defaults.
    2. When you click the "Reset to Defaults" button in the kickoff form. The "Request to Default" button does not clear the Comparison Report's session cookies, but if you then submit the kickoff form, the new form values will overwrite any existing session cookies.
    3. When you follow a link in the Mod Manager Options page to the kickoff form. If you change the options and then select the Comparison Report tab, the report will used cached values of the report options, not the values you just specified.

Mod Manager Options

This mod installs new Mod Manager Options under the heading "Mod Comparison Report". The new options are divided into four groups:

  1. Defaults for "Basic" Options in the Mod Comparison Report Kickoff Form (That is, these options can be changed on the kickoff form.)
    • Two text fields that are used to search for mod names (1) to be included in the report, or (2) to be excluded from the report.
    • Two checkboxes that specify whether the text fields are regular expression. An information button next to the checkboxes pop up some regular expression help text.
    • The expiration time for Wiki the the Wiki article cache. See The section on 'Caching' near the bottom of this article. Note that the expiration time is a search parameter, not something that is defined when Wiki article is added to the cache.
  2. "Basic" options that are used by the report program but whose values cannot be updated in the kickoff form, specifically
    • A checkbox indicating whether you want certain values in the Comparison Report to be highlighted.
    • Colors to be used to highlight "negative" and "positive" results (as described in the Report Column Legend section of this article.
    • Two options whose purpose is to keep the Comparison Report from getting too wide.
      1. Whether to allow mod filenames to wrap within their report table cell. If this is checked, then underscores in the mod filename will act like dashes, and become line-wrapping points.
      2. The format to be used to specify the author of the mod, e.g. first name only, first name plus initial, or full name.
  3. Defaults for "Advanced" Options in the Mod Comparison Report Kickoff Form, specifically,
    • Whether to show the advanced options when the Kickoff Form is first displayed (within a browser session)
    • The URL of a second TNG site to be compared to the first site and the Wiki
    • A mod author to search for. See the description of the Author column in the Report Column Legend section of this article.
  4. Advanced Options that cannot be adjusted on the Kickoff Form, specifically,
    • Whether to exclude private mods from comparisons between one TNG site and the Wiki.
    • Whether to highlight the file name of mods whose filename does not match the mod name or does not match the version number. This option is meaningful only if the the Basic option that says whether to highlight certain values is checked.
      1. Whether to hide the version number portion of the filename if it matches the version # inside the file.

Compatibility with Other Mods

No known conflicts. As I write this, my mods are the published mods that affect the Mod Manager. Besides that, this mod makes minimal changes to existing Mod Manager pages. For all but one Mod Manager program, all it does is add a tab for the comparison report. And it makes just a couple of changes to the Mod List page.

Related Mods

The Field Buttons mod enables small "field buttons" that are attached to text fields on the kickoff form. (See the visualizations and the Field Buttons article.) Field buttons are small, configurable (and generally one-character) buttons that are attached to text fields on a form, and that reduce the number of mouse movements or typing needed to perform common data entry operations such as clearing a field or restoring that field's initial value. This mod is 'not dependent on the Field Buttons mod. If Field Buttons is not installed, the field buttons simply do not appear.

This mod is compatible with my Mod Manager Latest, which duplicates the results table row for the most-recently-processed mods, under the assumption that those are the most you're most likely to act on next.

Files Installed

  1. rrmodcompare_form.php - The form that kicks off the new report. It allows the user to update several new Mod Manager options, and displays Mod Manager options that can only be updated by the Mod Manager Options screen.
  2. rrmodcompare_report.php - The report program invoked by submitting the kickoff form.
  3. rrmodcompare_modlist.php - An Ajax program that is invoked by the report program program to extract information from a site's .cfg files. When you are olooking at the local mods, this task could be performed within the report program. But the report program cannot read the .crg files on a separate website. Instead, the report program invokes the rrmodcompare_modlist.php throuh Ajax, whereupon the Ajax program reads the mods on its site, and returns the results to the report program.
  4. css/rrmodcompare.css - A style sheet used by the kickoff form and report program, and by the Mod Manager Options that have been added to admim_modoptions.php.
    • (The style sheet is in a separate file from genstyle.css because it contains quite a few rules, and there already too many style rules in css/genstyle.css that are used by only one or two programs.)
  5. languages/English/rrmodcompare_help.php - A fairly sketchy help file.

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.

[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

  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

You can run the "My Mods" version of this report yourself on my public test site:

  1. "My Mods" reports (that is, reports invoked by hyperlinks)
  2. The kickoff form.

(Some of these examples are from an earlier version that used outlines rather than shading to highlight cell values.)

The image above is a "Simple" report on mods whose names include the string "Admin". The Mod Manager option that allows certain values to be highlighted has been turned on. Click on the image to see a larger version. The highlighting of cells in the report will be explained in subsequent visualizations that focus on sections of the report table. Note these aspects of the report page.
  1. The "Compare" tab has been added to all Mod Manager programs.
  2. Two links have been added to the "Inner Menu" (right below the tab bar). The "Report Legend" link goes to the Report Column Legend section of this Wiki article. That section lists all columns in the Mod Comparison Report, with notes about values that can be highlighted in the column.
  3. The selection criteria that were specified in the kickoff form are listed above the results table.
The relatively bold vertical line separates information about the mod .cfg files from information about the corresponding Wiki articles.
A Mod Comparison Report created with Basic option (and with Highlighting turned on
style="border:thin solid black;" 780px
  1. This is a "simple"; a full report A button reveals the Advanced options, or removes them when then are present.
  2. The current site (in this case, a test site on a PC) will be compared to the TNG Wiki server. An Advanced option lets you compare the current site to a second site (for instance, when I want to compare my test server to my WWW production server.) And you can omit the Wiki server from the comparison.
  3. In a Basic report, the only search criteria available are the two search strings shown here. One string determines which mods will be included, and another string excludes mods. In this case, I'm looking for mods with the substring "Admin". (The search is caseless.)
  4. Here you see "Field Buttons" which are described in a visualization below.
  5. Each of the search strings can be a regular expression. The information button gives a regular expression hint, as shown in the inset at the bottom of the screenshot.
  6. Three caching methods are available:
    1. When you haven't run the comparison for a while, or when you are focusing on specific mods, you can ignore the cache, and make sure that you are reading the Wiki. Be careful about using this option, because loading a lot of articles from the Wiki can bog down the Wiki server a bit.
    2. In caching option 2, you specify a cache expiration time (in this case 10 days ago. In this case, the comparison report will read Wiki articles directly from the Wiki server
      • If the Wiki article's cache is less than 10 days old, or
      • If the Wiki article has not been read before, and thus is not in the cache.
    3. When you first start a browser session, the Cache Method is initially set to #2, but once you have run a Comparison Report, the kickoff form always defaults to option 33 (which doesn't read any Wiki articles unless it can't find them in the cache).
  7. Be aware of this important reminder.
Mod manager compare2-infotext.jpg
The Kickoff Form that Generated the Report Above
Mod manager compare-basicform.jpg
Local Site Details

Mod manager compare-wikicolumns.jpg
"Local site" is the site the user is on; not necessarily a test site on a users's "local" PC. The visualization immediately above is not a detail of the specific Basic report shown above, but is a compilation of clips from a report with different options, illustrating specific features of the report.

  1. An option lets you determine how the mod author name will be displayed. In this example, it has been set to "First name and initial". The purpose of a shortened name is to save horizontal space in the report, which can get quite wide. The author name can come from the first 'author' tag in the .cfg file, or from the 'Author(s) field in the wiki article sidebar. In both cases, the author name will be a hyperlink to information about the author if a hyperlinks is defined in the author source.
  2. When highlighting has been turned on, the "Local v Wiki" column highlights mods where the Wiki has a newer version than the current site.
  3. When highlighting has been turned on, Installation Status values other than "install" are highlighted.
  4. The version number suffix of 'rr' for this mod is my personal convention to indicate that I have edited someone else's mod locally. I typically add Author tag to the .cfg file if there isn't already. In the example, the author tag contains two names, and no hyperlink.
  5. A plus sign in the Author column indicates that there is no Author tag in the .cfg file, and that the 'Author(s)' field in the Wiki article sidebar has more information than just one person's name. The Author column just shows the person name that starts the Author data, and when a user hovers over the Author value, the entire 'Author(s)' value is shown.
  6. When highlighting has been turned on, The Mod Install value of 'ok2inst', like 'partinst' and 'cantinst' is highlighted.
  7. The value 'Missing' indicates that there is no Wiki article for this mod.
Wiki details

Mod manager compare-wikicolumns.jpg

  • Admin_Place_Geocode:
    • There is an "Under Construction" message in the Wiki article.
    • The Wiki article was last read into the cache on this TNG site more than 1 week ago.
  • Admin Places Search:
    • The Wiki article was last read on this TNG site, and put into the site's cache, 3 days ago.
  • Admin Reports Search:
    • The Wiki article is missing, so the Wiki article name is crossed out.
  • Admin Users-More:
    • There are two entries for Admin Users-More because two .cfg files refer to the same Wiki article.
    • The "Latest Mod" field in the Admin Users-More Wiki articlee sidebar lists two mod versions, hence
      • The Wiki Status value is ">1 ver#",
      • The Wiki Version column has a plus sign, and when a user hovers over the version number, the additional detail is displayed in a popup.
  • Place Data Copy
    • There is no Wiki article for the Place Data Copy mod.
Kickoff Form with Advanced Options

Note that the advanced options are highlighted in this screenshot in a reddish color to distinguish them from the Basic options.
Mod manager compare-advancedform.jpg

  1. The user can select another TNG site, and create a three-way comparison.
  2. The mod author is displayed when a Basic search is done, but with Advanced options, you can specify an author to search for. The author value can come from the .cfg file or from the Wiki article, and, of course, is not selected from a database. You can specify any value here, including part of an author name.
  3. When you do specify an author to search for, you have 3 choices of how to use that author value. If you do not specify an author, this line of Author options is removed from the screen.
  4. You can also search for any number of status values from the status columns in a full report. The status values are initially hidden behind a button, and are shown below.
  5. With Advanced options, you can also specify a sort order for the results table. Some of the report order values are shown or hidden as other options are selected. For instance, if there is no second TNG site URL, then the "Status of Site2 v Site1" and "Status of Site2 v Wiki" are not meaningful, and are hidden.
  6. The "Other Advanced Mod Manager options" are automatically disabled when the kickoff form has only Basic options.
Status Values on the kickoff form

Mod manager compare-statusvalues.jpg
The possible status values are described in the Status Values section below. Note that, as with the Sort options, the visibility of some of of the status columns depends on whether there is a site 2 value, and whether the TNG Wiki option is checked.

Second site details

Mod manager compare-site2columns.jpg
When a second TNG site (or "remote site") is selected, four columns with the term "Site 2" in the column headings are added to the report between the columns for the local site and the columsn for the Wiki site. The headings for the 3 "local" status columns are also changed to refer to "Site 1".

Thre "Site 2" columns are essentially identical in meaning to the three "Site 1" columns, and a fourth column compares the Site 1 and Site 2 version numbers.

Mod Comparison Report Mod Manager Options

Mod manager compare-options.jpg
The options are described in the Mod Manager Options section above

Field Buttons

Mod manager compare-fieldbuttons1.jpg
In the screen clip above, the field buttons attached to four separate fields are highlighted.

  • The X button will clear the field value.
  • The R (for Reload or Reset) button will restore the field to the value it had when the page was loaded.
  • The D (for Default) button will set the field value to the default for that field, as defined in the Mod Options.

Field buttons that would not change the value are shaded out, as shown here:
Mod manager compare-fieldbuttons2.jpg
In this screenclip, we have loaded the page after generating a report, and changed the author search string, and set the default for the "exclude" name search screen. As a result:

  • For the field that defines a TNG site web address,
    • The X is visible because there is a value to clear,
    • The R is not visible because the current value is the initial value, and
    • The D is not visible because the current value happens to be the default value.
  • For the Author search string:
    • The X is visible because there is a value to clear,
    • The R is visible because the current value is not the initial value, and
    • The D is visible because the current value is not the default value.

TNG site web address shows only the X buu

  • For the Mod Name search "include" field:
    • The X is not visible because there is no value to clear,
    • The R is visible because the field value has been changed, and is no longer the initial value, and
    • The D is not visible because the current value 'is the default value.
  • For the Mod Name search "exclude" field:
    • The X is visible because there is a value to clear,
    • The R is visible because the field value has been changed, and is no longer the initial value, and
    • The D is not visible because the current value 'is the default value.

Field buttons are described further in the Field Buttons mod article. The Field Buttons mod is necessary to make the field buttons visible, but the forms where field buttons are used can work just fine without the field buttons.

Report Column Legend

(Again, this section describes mod ersion 5, not version 6) Regarding the notes about highlighting below

  • Whether there is highlighting is dependent on a new Mod Manager option,
  • The highlighting consists of cell borders in one of two colors, "postive" and "negative", which default o green and reddish, and can be changed by Mod Manager options,
  • When I say "depending on a Mod Manager option", I don't mean the options described in the first two points; I am referring to an additional option that controls whether that specific condition is tested.

The Mod Comparison Report has four groups of columns. (Runtime options can reduce the number of columns in a report)

  • Mod Identity
    1. Mod Name - The mod's name, as specified inside the local .cfg file (if there is one), or the remote .cfg file. Note that, if more than one version of the mod exists on either TNG site, only the latest version is shown. (As a result, if the local site has v2 and v3 of a mod, and the remote site has v2), the local v2 will be ignored, and the local v3 will be compare to the remote v2.)
    2. Mod Filename - The .cfg filename (possibly abbreviated).
      • The mod filename may be a hyperlink to the .cfg file. Depending on a Mod Manager option, the mod version number and file extension (always .cfg) are omitted (to save horizontal space in the table) if the version number portion of the filename matches the version number inside the .cfg file.
      • Depending on another Mod Manager option, if either the Mod Name portion or the Version number portion of the Mod Name differs from the values inside the .cfg file, the mod name is highlighted, and the program displayes the reason(s) for the higlighting when you mouse over the filename.
    3. Author - The report first looks for an Author in the "Author" field of the TNG Wiki article sidebar. If no Author is found there, then the report looks for an %Author tag in the .cfg file.
      • The kickoff form can specify that a mod author who matches a search value should be highlighted. If the mod Author matches the Author specified in the kickoff form, the name is highlighted in green.
      • Depending on a Mod Manager option, the Author name can be displayed as a full name, first name and last initial, or first name only. The format specified for the displayed author name does not affect the author name search string, nor the match between the author search string and the author in the Wiki page or the .cfg file.
      • If the author name in the Wiki article is hyperlinked, or an URL is specified in the %Author tag in the .cfg file, the author name in the report is hyperlinked.
      • If the author name field in the Wiki article sidebar contains more information than just the author name, a plus sign is displayed in the field, and when you mouse over that plus sign, that additional information is displayed.
  • The mod on the local site
    These columns will be blank if there is a remote site ("Site 2"), and a mod that exists in the remote site is not in the local site. These columns are labeled as "Local" or "Site 1", depending on whether a second site has been specified.
    1. Local Install - The installation status of the local mod.
      • A status other than 'Installed' is highlighted with the negative color.
    2. Local Version - The version number from the %version tag inside the mod .cfg file.
    3. Local v Wiki - A comparison of the mod's version number to the Wiki version number, marked by values such as '>wiki', '<wiki', etc.
      • If the mod is marked as Private, then the report will make no attempt to look for a Wiki article, and this cell will have the value 'Private'.
      • If the mod's version # is less than the Wiki version number, then the comparison value will be highlighted with the negative color.
  • The mod on the remote site ("Site 2")
    These columns are omitted completely if no remote site is specified.
    1. Remote Install - The installation status on the second site.
      • Any value other than 'Installed' is highlighted with the negative color.
    2. Remote Version - The version number from the %version tag inside the mod .cfg file.
    3. Remote v Local - A comparison of the mod's version number with the version number of the local file, with values such as '>site1', '=site1', etc.
    4. Remote v Wiki - A comparison of the mod's version number to the Wiki version number, just like the Local v Wiki' column.
  • Wiki Article
    These columns will be omitted if the user unchecked the "Read Wiki" checkbox in the kickoff form.
    1. Wiki Status - Indicates whether the Wiki article exists, whether the version number could be found, and whether the version number field in the Wiki sidebar contains more than one version number.
    2. Wiki Version' - The version number from the new Latest Mod field in the Wiki article sidebar.
      • If the field contains any text other than just a single version number, then a plus sign is displayed at the right end of the table cell, and the entire text of the field is saved in a pop-up that will appear if you hover over the plus sign.
      • If the field contains more than one version number, the version numbers are compared, and the highest one is displayed.
    3. Wiki Article - A hyperlink to the Wiki article, based on the %wikipage tag in the .cfg file. The hyperlink will open in a new page or tab.
      • If the Wiki article name does not match the Mod name, then the table cell is highlighted with the background color.

Status Values

The Advanced Options in the kickoff form list all possible status value for the columns "Local vs Wiki", "Remote vs Local", "Remote vs Wiki", and "Wiki Status" as possible search criteria for the report. The status value are:

  • Local or Remote vs Wiki
    • n/a - The Wiki article was missing, so no comparison is possible.
    • ?? - The .cfg file and Wiki article were present, but one of the version numbers could not be found, so no comparison is possible.
    • Private - The mod .cfg file contained the tag !@#Private%
    • No link - There was no %wikilink tag in the .cfg file
    • Bad link - The %wikilink reference in the .cfg file was badly formed
    • Missing - The Wiki articles referenced by the %wikilink tag in the .cfg file was missing
    • ?wiki - (<, =, or >) Direct comparison of the .cfg file version number to the Wiki version number.
  • Remote vs Local
    • n/a - There is no corresponding local mod.
    • ?? - Both files are present, but one of the version numbers could not be found.
    • ?local - (<, =, or >) Direct comparison of the two version numbers
  • Wiki Status
    • Missing - The file was missing.
    • No Ver# - No version number could be found
    • >1 ver# - There was more than one version # in the 'Latest Mod sidebar field. This is not an error, and does not suggest a problem, it's just an FYI.
    • ok - The mod article exists, and appears to have one version number in the 'Latest Mod sidebar field.

New Tabs

This mod installs a new "Compare" tab in all of the existing Mod Manager programs. Through shared files installed from a shared mods subfolder, it also implements a feature used (or soon to be used) my most of my mods that create new tabs in program menus. That is, the new tabs are flagged with an asterisk, and if you mouse over that asterisk, the name of the mod that defined the new tab is displayed in a popup.

Caching

The Mod Comparison report saves a cache of Wiki article data on your TNG server so that, when the report is run again, it doesn't have to undergo the slow process of reading each Wiki Article, and so that it does not drag down the TNG Wiki server performance. Unfortunately, there is no way to determine whether the relevant data in the Wiki article has been updated without reading the Wiki article, which would spoil the point of caching.

Consequently, the kickoff form specifies a cache age limit. If the cached data - for a specific Wiki article - is older than that age, the Wiki article will be re-read and its cache will be refreshed.

If you believe that certain Wiki articles have been updated, you can refresh the cache for those specific articles if you:

  1. Search for those specific articles by name (or name substring), and
  2. Specify a small age limit (say, 20 minutes, 10 days, 6 weeks - whatever is appropriate).

Revision History

Mod Version TNG Version Date Note
v14.0.0.8 14 23 Sep 2023 Dealt with a new barrier inside the mod handler, New way to initialize field buttons, Fixed typo in a filename, Stopped using MM styles because they break scrolling.
13.0.0.6e4 13.0-13.1 17 Nov 2021 Bypass the new admin-only restriction introduced by TNGv13.1. Still works for TNGv13.0.*
13.0.0.6e3 13.0-13.0.2 21 Dec 2020 Remove the blank line at the end of the language string files to avoid a PHP that only sometimes occurs.
13.0.0.6e2 13.0-13.0.1 8 Dec 2020 Changed target locations to accommodate a post-TNG.0.1 patch version of admin_modhandler.php.
13.0.0.6e1 13 8 Dec 2020 Upgraded to TNGv13. See the .cfg file for details
12.0.0.6e 120-12.3 11 May 2020 Numerous changes. See the .cfg for all. This is a small sample
  1. Kickoff form:
    • Added a kick-off form option to suppress the author column of the report table. It is just the choice "none" in the existing author format field.
    • Added mod summaries pulled from the Wiki article, and controlled by a display option
    • Added summaries of each section of the form so users can see (part of) what is set even when the section is closed.
      • Bold option names in the summary just indicate that the option has a value.
12.0.0.6c 12.0-12.3 11 Dec 2019 Numerous changes. See the .cfg for all.   [See selected changes]
[Hide details]
  1. Kickoff form:
    • Moved some options to different sections of the options form
  2. Added a display option for putting the Author column at the far right.
    • After a report uses the "Always read from the wiki" cache method, the method is automatically changed to "Read the wiki article only if the cache is old enough".
    • When "Look at the Wiki" and/or "Look at a second site" are not selected, most of the options that are no longer applicable are greyed out and disabled, not hidden.
    • Changed the prompt "Highlight status values" to "Color code status values"
  3. Changes to the report program
    • The running list of mod names at top of the report includes only the mods read from the wiki (not those loaded from the cache)
    • Eliminated the "Wiki status" column from the report.
    • Now that I've figure out that a PHP setting is the cause of some sites' inability to find their mods, the "no mods found" error message links to a Wiki article section about how to fix that error.
  4. When filenames are wrapped, the underscore now stays on the first line.
[Hide details]
12.0.0.6b 12.0-12.2+ 11 Nov 2019
  1. Added the simple report format and the distinctive external report.
  2. Tweaked the Mod Manager Options form and the Mod Comparison Report kickoff form, regrouped the options, and eliminated a few. I think that the only new options are
    • The selection of the two report types, and
    • Three options that define subheadings that are used in external report. The report program chooses the subheading that matches the author search/match parameters supplied to the external report.
12.0.0.5c 12.0+ 15 May 2018 No functional changes; made compatible with TNGv12.
11.0.0.4a 11.0.0 - 11.1.2+ 24 Dec 2017 First production version
11.0.0.2 11.0.0 and up 14 Jun 2017 Still Beta Status
  • Had to trim a string so that empty %wikipage tags would generate the status 'No Link' instead of 'Bad Link'
  • Adding Wiki caching, which speeds up the report tremendously.
  • Added filename substring searches to the kickoff form so that users can specify specific mods to include and/or exclude from the report
11.0.0.1b 11.0.0 and up 6 Jun 2017 Still Beta Status
  • Trimmed leading spaces from the Remote Site URL.
  • Fixed a variable reference that was causing some of the remote .cfg fields to be lost.
11.0.0.1a 11.0.0 and up 27 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 v14.0.0.8 14 EN
Treichel-Familie.de Andreas Treichel Public & Private 14​.0​.0​.8 14.0.3 DE, UK, FR, ES, PL
Roger's Online Genealogy Database Roger Moffat 13.0.0.6e3 13.1.0 EN
Roots & Relatives Remembered Ron Krzmarzick Public & Private See Here See Here EN,DE,CS
The Cole / Tanner Family Tree David Cole Public/Private see here see here EN,DE,FR,ES,NL
Our Family Histories Bryan S. Larson Public site See Here See Here EN
Wortelboer genealogie Bernard Wortelboer Public site 13.0.0.6e3 14.0.0 NL,EN
Bastiaanssen Genealogy Jan Bastiaanssen Public / Private 13.0.0.6f 13.1.2 NL, EN, ES
MOTYER Family Genealogy John Mark Motyer Public site See here See here EN
Your Roots are Showing Harold Craswell Public/Private See Here See Here EN
The Annals of a Humble Race Gerald Apperly Public / Private 14.0.0.7 14.0.1 EN
Carr's Garage Regis Carr Public / Private 13.0.0.6e4 13.1.2 EN, DE, NO
Auf den Spuren meiner Ahnen Michael Klein Public/Private, Mod no longer works properly. 14​.0​.0​.8
TNG 14.0.3
EN, DE