You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(New feature) Two new graphs were made to show how RCR values have changed over time in the score-distribution page. In addition, the timestamp field is used instead of date/month/year fields.
(New feature) I added a routine to report missing email addresses that are in other projects via email. This has been successfully running on the Vanderbilt server for some time, so I just made it available to our partners.
(Optimization) I rewrote a routine to find matched names into two separate jobs. This new routine will be significantly reduce the preprocessing on Fridays. The old algorithm took 28 hours for 7,000 scholars and increased as n^2, where n = the number of records. The new algorithm scales based on the number of **new records. This should reduce processing time, but I will monitor in future weeks.
(Bug fix) I plugged a data leak in repeating forms.
(Bug fix) I added a routine to deduplicate resources due to an improper data-sharing spill. This will be executed one time only. The routine has already been tested, vetted, and used on our production server.
(Improvement) I divvied up some processing to be handled in batches to avoid "all or nothing" batch jobs.
The External Module stores the CronManager centrally so that it can be accessed internally when launching future cron jobs. The matching routine launches future cron jobs after it completes to make sure that good values are in place.
Added a function to turn an ExtMod URL into base-64. This is because a partner's REDCap server was requiring a login for these files to be displayed in hooks. This function allows them to be displayed in base-64 formatting instead - thus avoiding the login requirements.
A first parameter of "0" is now displayed on the batch-queue monitor.
K99/R00s are adapted into "Bridge Award" designations. This affects code and JSONs for metadata.
(Bug fix) The publications widget in survey hooks were displaying incorrect counts in a few situations. This has now been corrected.
(MSTP) Revisions in text were made per request.
The global map can toggle its numerical labels.
Add support for batching a job that runs across multiple project-ids. This puts that job (a "multi-cron") into segmented chunks of project-ids so that it won't run for too long.
By default, the first parameter in a cron job is FALSE, unless specified otherwise. Previously, I had accepted all false-y values. This week, I had a case to use a first parameter of 0, so I made stricter comparisons.
Bug fix: I changed $batchQueue[0] to a $firstBatchQueue variable. I forgot to change this in one circumstance. I did a global grep and found no other occurrences.
The Psalm scanner found some unreachable code that was now removed.
I adapted a function getChoicesForField() into getChoicesForFields(). I then refactored getChoicesForField() to use the new function.
I added a method to scan to see if a list of metadata fields is filled. It checks whether there are 10 values and whether the first field is record_id. If one of these is FALSE, then an algorithm will skip over that project. I already have this methodology in place for metadata. This just adapts it to a field-list.
The Psalm scanner found that Download::getCachedMetadata() referred to a $fields variable that I did not pass to it. So I passed it now.
I adjusted some error messaging in the Download class, per the Psalm scanner.
To write a PDF, I required that DomPDF produced an actual value. This avoids writing a null file.
Per user request, the global map can now have its numerical labels turned off.
The Psalm scanner requested that min() and max() not be called with an empty array. Since the values are hard-coded, this is a non-issue logically. But I changed the code to make the scanner happy anyways.
I added support for a new pathway called "Bridge Award." These took over the K99/R00 pathway and included a new F99/K00 pathway from the NIH.
(MSTP) Per requested, I increased the amount of documentation for the user.
(MSTP) The Psalm scanner found some good code refinements to enhance quality, like referring to the correct variables.
In splitting a name, I had already removed parentheses. I also removed sets of single- and double-quotes.
(Bug fix) I looked up the $token and $server in Publications::xml2REDCap().
I refactored the makeHash() method to make the Psalm scanner happy.
I wrote a workaround to change HTML quotes back into real quotes. I also handled curly quotes while doing so. This is because ExtMods requires that ENT_QUOTES be displayed. This is almost always the right thing to do on our team because our data are displayed on the browser. However, Flight Tracker sometimes passes data to APIs, and quotes are needed here. The APIs don't accept them in escaped HTML.
The Vanderbilt MSTP program requested to calculate the end-of-training and start-of-training based on its prior data.
I adjusted how logging is handled with upload errors by supplying the $pid.
A user had an incomplete installation of the NIH Table 1 project. A project-id was generated, but a survey link was not. However, Flight Tracker was not allowing her to set up the project again because a project-id was available. I changed it so that a project-id and a public survey link are available.
A Psalm scan revealed that I had an extra parameter when getting a system setting. ExtMod system settings do not use project-ids.