Cdn1.sph.harvard.edu



REDCap Version 5.9.18Vanderbilt Released September 5, 2014HSPH Upgrade April 21, 2015NEW FEATURES:New feature: Ranking functionality for matrix of fields (radio buttons only). Users may now designate a given radio matrix of fields to utilize ranking, which enforces only one selection per column for all the fields within the matrix, thus preventing anyone from entering the same choice for multiple fields in the matrix. In this way, a matrix can be created that prompts the user to rank the fields/items listed in the matrix. On a data entry form or survey page, if a selection is made for a choice that has already been selected for another field in the same matrix, it will automatically deselect the other field and give a subtle note below it that it was deselected. Ranking is also enforced for data imports as well (Data Import Tool and API data import) to ensure that each choice within a ranked matrix is selected no more than once. Checkbox matrixes cannot use ranking because checkboxes allow for multiple selections per field. New feature: Zip download of uploaded files for all records. On the Data Export Tool page, users with data export privileges may download a zip file containing the uploaded files for all records in the project (i.e., files uploaded to "File Upload" fields on data entry forms and/or surveys). The zip file will contain a folder with all the files organized by record name and variable/field name, and it will also contain an index.html file that serves as a table of contents by listing all the following attributes for the files: record name, variable/field name, original filename, and the date/time the file was uploaded. New feature: The Data Dictionary "Codebook" displays a human-readable version of the project's Data Dictionary and serves as a quick reference for viewing the attributes of any given field in the project without having to download and interpret the Data Dictionary. The link to the Codebook can be found at the top of the Quick Tasks section on the Project Home page. This will replace the Codebook PlugIn which will no longer be supported. New module: User Access Dashboard The User Access Dashboard (UAD) is a reporting tool designed to assist users in the management of users that have been granted access to their projects, in which it allows them to quickly view which users have access to their projects and easily remove/expire them from the project, if needed. The UAD is only accessible to users who have access to the User Rights page in at least one project. The UAD page will display all users in every project of which the user is an owner (i.e., has access to the User Rights page), including each user's expiration date (if applicable), if they have an API token, and if their account is suspended. Each will have an option to delete the user from the project or to expire them (sets their expiration date as yesterday's date). Overall, the UAD allows users to more effectively manage the users accessing their projects and provides a streamlined process for removing users that should no longer retain access to their projects. External Users: Reset Password Recovery Question - On the My Profile page, Table-based users will see a new button to reset their password recovery question. Once reset, the user will immediately be prompted to set a new value for their password recovery question for their account, which allows them to easily recover their password if forgotten. Set preferred display format for dates, times, and numbers on My Profile page. This applies to all places in REDCap where dates, times, and numbers are displayed (excluding fields on data entry forms and survey pages). Users will be able to choose from a variety of date formats (MDY, DMY, or YMD) and also get to choose the date delimiter (dash, slash, or dot) - e.g., DD-MM-YYYY, MM/DD/YYYY, YYYY.MM.DD. For times, they can choose either 24-hour military time or 12-hour AM/PM format (23:54 vs 11:54pm). For numbers, they can choose the decimal character to be displayed (either a period or a comma), as well as the thousands separator (comma, period, apostrophe, blank space, and nothing). New API method to export a list of all data collection instruments for a given project. This includes their unique instrument name as seen in the second column of the Data Dictionary, as well as each instrument's corresponding instrument label, which is seen on a project's left-hand menu when entering data. The instruments will be ordered according to their order in the project. See the API Documentation page for details. IMPROVEMENTS / CHANGESImprovement: The table of users/roles on the User Rights page now denotes if a user has an API token connected to their account for that project. Also, any users with an expiration date that has passed will have the date displayed in red to draw attention to the fact that the user's access has expired for that project. Improvement: If a user's account has been suspended, it now displays the text "[suspended]" next to their username within a project in the user list on the Project Home page and User Rights page to bring about more awareness regarding users' access in the project. Improvement: New instrument status icon for "Incomplete (no data saved)". The instrument status icons that are displayed on the Record Status Dashboard, event grid (for longitudinal projects), and on the left-hand menu when viewing a record now have a new category and icon: Incomplete (no data saved). In previous versions, it would display the red status icon ("Incomplete") even if no data had been entered for that instrument, but now it will display a gray icon ("Incomplete (no data entered)") in that case. This helps denote which instruments/events have had data entered into them. Improvement: When setting up email notifications in the Online Designer for survey responses, which allows users in a project to be notified via email every time a respondent completes a survey, a user's secondary or tertiary email address (if they have them) can be used as their recipient address to be used for the survey notifications. In previous versions, only a user's primary email address could be used. Improvement: When uploading a data dictionary, better checking and validation of date/datetime values is now employed for min/max validation ranges for date- or datetime-validated fields. In previous versions, it would accept dates in an incorrect format, thus leading to validation issues on data entry forms or survey pages. Change: A new drop-down option is displayed on the Data Import Tool and Data Dictionary Upload when uploading a CSV file, in which it allows the user to select the format of dates being imported in the CSV file. The two options to choose from are 1) MM/DD/YYYY or YYYY-MM-DD, or 2) DD/MM/YYYY or YYYY-MM-DD. If the user has their user date display preference (via their My Profile page) set as DMY format, then the drop-down will default to option 2, otherwise it will default to option 1 (which was the only format accepted in previous versions). For the Data Dictionary Upload page, this drop-down only affects how min/max validation values for date and datetime fields are accepted since those are the only dates that would exist in a data dictionary file. Change/improvement: When printing a schedule on the Scheduling page, it now displays the recommended date range for the scheduled event in the "Print Schedule" version of the page if that particular event has a range defined. In previous versions, it did not display the date range in the printed version of the page. Improvement/bug fix: All field validation types that are a "number" data type will now be correctly exported in the syntax files for statistical packages (SPSS, SAS) as numbers. In previous versions, the "Number (X decimal places)" validations were defined as a string data type in the syntax files. Improvement/bug fix: The Graphical Data View & Descriptive Stats page was not displaying fields with a "Number (X decimal places)" field validation type. Improvement/Change: When utilizing the "require a 'reason' when making changes to existing records" customization option for projects (which can be enabled in the "additional customizations" popup on the Project Setup page), it will now prompt the user to enter a reason when saving a data entry form *only if* data has been modified/entered on the page. In prior versions, it would *always* prompt the user to enter a reason regardless of whether or not the user actually entered any data on the page. Change: Users may now modify Participant Identifiers in the Participant List of a project even after the participant has responded (either partially or fully) to a survey *ONLY IF* the Participant Identifier existed (i.e., was not blank) before the survey was taken. However, it is still true that a Participant Identifier cannot be *added* (i.e., was blank beforehand) after the survey has been taken. Change: Users may now modify a participant's email address in the Participant List of a project even after the participant has responded (either partially or fully) to a survey. In previous versions, the email could not be modified after the survey had been taken. Since a respondent's email address may change over time, it is sometimes necessary to change their email address in the Participant List when utilizing multiple surveys in a project. Change/Improvement: If the system is set to "System Offline" by an administrator on the General Configuration page in the Control Center, the API will now return the error message about the system being offline in the appropriate "format" or "returnFormat" as specified in the API request. In previous versions, it merely returned HTML (the same HTML returned when normally displaying the offline message to users on the webpage). Change: When viewing the Event Grid of a given record in a longitudinal project containing multiple arms, it no longer displays a data collection instrument as a row in the table if the instrument is not utilized for any of the events in the current arm. Previous versions would always display the instrument whether or not it was designated for any instruments/events in that arm, in which it would just display it as a blank row in the table. Change: On the "Define My Events" and "Designate Instruments for My Events" pages in a longitudinal project, it now displays the arm name next to the arm number in the arm tabs that allow users to select an arm. In previous versions, it did not display the arm name in the arm tabs. Change: Extra text added to Randomization module to recommend that only users with experience in randomization should set up the Randomization module. Change: Projects using Double Data Entry will now have record auto numbering automatically disabled if a user has enabled it since it is not compatible with Double Data Entry. Change: The passwords for Table-based users can now contain ANY type of character and must be at least 9 characters long. In previous versions, passwords could contain *only* letters, numbers, and underscores. Change: The Record Status Dashboard in longitudinal projects now displays the table with the columns ordered first by event and then by data collection instrument. In previous versions, it was ordered first by data collection instrument and then by event, which many users did not find intuitive. Change: When setting up an Automated Survey Invitation in the popup in the Online Designer, the drop-down list of email addresses of all users now only displays the email addresses rather then the email address and first/last name of each user. This was simplified since some users might share a secondary or tertiary email address with other users in the project, thus resulting in duplicate entries in the drop-down, which might be confusing to some users. Change: Fields having "time" field validation will no longer export to SPSS as a "A500" data type in the SPSS syntax file, but will instead export more appropriately as a "TIME5" data type. This affects SPSS exports only. (Ticket #540) Improvement: If any data is added or changed on a data entry form and the user attempts to navigate to another page or close the browser window without having saved their data on the form, then they will get a confirmation prompt that will ask them to choose to do one of the following: 1) save their changes and leave the page, 2) leave the page without saving their changes, or 3) stay on the current page. (If the user attempts to close the browser window, then they will not be given option 1 due to limitations within web browsers.) This will help prevent data loss in case users unwittingly leave a data entry form without saving their data changes first. Improvement: When importing data via the Data Import Tool, after the import has completed, it now displays the number of records that were created or modified during the import to allow users to confirm that all records were imported. Improvement/Change: The "Modify this instrument" button and the "Download PDF" drop-down near the top of data entry forms have now been moved slightly on the page and placed together at the top of the page for a cleaner look. Change: The execution order of calculated fields and branching logic will now be done based upon their order in the project rather than according to their variable name, which is how they were executed in previous versions. This would sometimes cause an issue in previous versions when later fields were dependent upon previous fields, thus not allowing it to perform calculations or branching correctly unless the user modified the variable names so that it would execute in the order they wanted. Improvement: When a user deletes a record on a data entry form, it now displays a popup that is easier to read and has important text color coded, as well as more specific and clarifying text, in order to avoid any confusion about what is being deleted. This should help prevent instances where users mistakenly delete an entire record when they merely meant to delete data on that current instrument. Change: When a user is adding a secondary or tertiary email address to their REDCap user account and are thus forced to verify it by clicking a link in an email sent to that email account, if the link/code sent to that email account does not belong to them but belongs to another REDCap user, it will specifically note that it is invalid because it belongs to another unnamed user. This will help reduce confusion when another user that shares that email account tries to log in using the link/code, in which it simply tells them that it is invalid without providing any details. Now it tells them why it is invalid.Change: In projects where a data collection instrument was downloaded from the Shared Library and then used as a survey, if the instrument has a "terms of use" text, it would display the terms of use at the bottom of every survey page. Now it only displays the terms of use on the first survey page. Improvement: PDF exports of surveys and data entry forms now employ branching logic for PDFs containing record data. Thus the PDF's appearance is now consistent with its representation on the webpage. Note: If a field's branching logic has invalid syntax (i.e. super users are given a warning when attempting to save invalid logic for a field), it will *always* display the field in the PDF (since it is not able to successfully evaluate the logic). Improvement: In the Online Designer, if a field's variable name is changed when that variable name is utilize in the branching logic or calculation equation of other fields in the project, it now displays a warning popup afterward that lists all the fields that utilize that variable. This is done so that the user may then revert their change to the variable name or else go and modify all branching logic and calculations affected by it. (Note: A similar kind of notice already exists when deleting a field in the Online Designer.) BUG FIXESBug fix: When a user is randomizing a record on the mobile web version of the data entry form, the randomization popup dialog will sometimes not display properly, which makes it impossible to see the whole dialog and may thus prevent the user from performing randomization. Bug fix: If a user clicks on an attachment link for a Descriptive field on a data entry form after some data has been entered on the page, it would mistakenly display the "save your changes?" popup prompt before allowing the user to download the attachment. It now no longer displays the prompt when downloading an attachment for a Descriptive field. Bug fix: When a user is using the Data Resolution Workflow module and is opening, responding to, or closing a query, after clicking the save button in the Data Resolution Workflow popup, the text of the button would mistakenly change back to its original value when the popup was first opened, which could be confusing to the user if they notice it. Bug fix: If two or more users are modifying a project at the same time, in which they enable Draft Mode for the project at the same time or they submit drafted changes for approval at the same time, it now performs some extra checks so that those users do not overlap in their actions and accidentally end up having all their fields deleted. Bug fix: In some rare cases, the section header of a Form Status field will for unknown reasons get mistakenly merged with another existing section header. If this occurs now, it will auto-fix itself and set the section header text back to "Form Status". Bug fix: If an instrument had been locked for a given record and that instrument had been enabled as a survey, then if someone returned to the survey page for that record, they would mistakenly be allowed to modify and re-save the responses on the survey page, thus allowing a respondent to bypass the record locking feature completely.Bug fix: When performing an API data export in "xml" format, if a Text field or Notes field contained the text string "]]>", it would make the XML output invalid because "]]>" is never allowed inside a CDATA section in XML. In this case, it now replaces "]]>" with "]]]]><![CDATA[>" so that it splits that text string into two CDATA sections (ending the first with "]]" and beginning the next with ">", thus avoiding the issue of producing invalid XML. Bug fix: Typo in text on a project's Data Access Group page that mistakenly stated that user roles could be assigned to DAGs, which is incorrect. Major bug fix: When exporting data via the Export Records API method in "eav" format for an "sql" type field, it would mistakenly return the value as blank even if it contained a value. This only affects "sql" type fields and does not affect it in "flat" export format. Bug fix: When exporting data via the Export Records API method with rawOrLabel="label" (instead of "raw") for Yes/No or True/False fields, it would mistakenly return the label in all lower case (instead of with the appropriate label where the first letter is capitalized - e.g. "yes" instead of "Yes"). Bug fix: When using the Copy Project functionality for a project containing surveys, in which one or more surveys had a logo (via the Survey Settings page), then some or none of the surveys would get copied over to the new project successfully, in which the instruments in the new project would appear to only be data collection forms and would not be enabled as surveys. Bug fix: When viewing the Survey Notifications popup for all surveys in a project on the Online Designer page, it would mistakenly not display the surveys in their correct order. Bug fix: When using the "designated email field for invitations to survey participants" in a project containing surveys that is also a longitudinal project, it would mistakenly not display the record name next to the participant's email address in the Participant List on certain occasions. Bug fix: When using the Secondary Unique Field in a project, there is a remote possibility that a duplicate value could mistakenly be entered successfully by a user into the Secondary Unique Field on a data entry form and then save the form's data before the popup error message could be displayed regarding the duplicate value issue. This can only occur within a very small window of time, although the window of time increases based upon the slowness of the REDCap server. It now halts all processes on the data entry form and waits for the duplicate value check to complete before allowing the user to perform any other actions on the page. Bug fix: When uploading a Data Dictionary, it would mistakenly allow users to import fields with a field type of "attachment", which is not a valid field type. It now displays an error message if a user attempts this. Major bug fix: If at one time a value existed for a field but was later removed (set to blank), after which a user imported data for that field via the Data Import Tool, it would mistakenly leave two rows in the redcap_data database table for that field (one row with a blank value and another with the new value) rather than simply updating the existing row with the new value. Currently, there does not appear to be any evidence that this causes any issues within the application with regard to the entering or exporting of data. (Note: This does not affect the API data import but only the Data Import Tool.) Bug fix: On the User Access Dashboard, if a user clicks the "fetch" link for a project to view the users' last time accessing that project, it might mistakenly display "never" for a user even though that user has indeed accessed the project before. This would often occur when the user's username in the project list contained a capital letter. Bug fix: The plots on the Graphical Data View & Stats page would mistakenly not get displayed on the page if the field contained a multiple choice option with a non-numerical coding. Bug fix: In older versions of Internet Explorer, if an inline image was displayed in a Descriptive field that was initially hidden by branching logic, then if that field became visible at some point due to branching logic, the image would mistakenly stay hidden. Bug fix: When automated survey invitations are triggered due to a respondent completing a survey or due to a user setting a data collection instrument with Complete status, it would appear on the Logging page that the survey invitation for the next survey was scheduled before the first one was completed. However, both events have the same timestamp, in which the "Automatically schedule survey invitation" event happens to be listed first on the Logging page, which can be confusing to users. It now lists the invitation scheduling event last and also sets its "username" attribute as "SYSTEM" since in previous versions it would say "[survey respondent]", which is really who triggered the invitation scheduling but is confusing because it may seem to imply the the respondent performed some kind of action to trigger it, which is not the case. Bug fix: When using the "Export Arms" API method, in which the "arms" parameter is explicitly supplied in the API request, it would mistakenly ignore that parameter. Thus it would not export only the arms supplied in the "arms" parameter as it should, but it would instead export all the arms in the project. Major bug fix: If a field in a project has branching logic that utilizes a field from another data collection instrument (but within the same event), then if the saved data value for the field used in the logic contains an apostrophe, then if a user saves the data on the instrument containing the field with branching logic, it will mistakenly truncate the other field's data to the location of the apostrophe. Bug fix: When viewing a partial or completed survey response on a data entry form in a longitudinal project, it was mistakenly not displaying the current event name at the top of the page when not in "edit response" mode, which could make it difficult to quickly determine which event you are currently viewing. It now always displays the event name at the top of the form for longitudinal projects. Bug fix: Fixed a typo on the Data Dictionary upload page. Bug fix: In a longitudinal project that contains surveys, if the first data collection instrument is enabled as a survey and is designated for at least one event but not the first event, then the Manage Participants page would mistakenly provide an incorrect Public Survey Link that would not point to the first event but instead to another event. (The Public Survey Link must always point to the first event.) It now does not display the Public Survey Link in a longitudinal project unless the first instrument has been designated for the first event, and instead displays an error to the user on how to fix this issue. Bug fix: When renaming a record in a longitudinal project, in which the new record name already exists, it mistakenly does not give any notice regarding why the record cannot be renamed but simply displays the "record successfully edited" message. Bug fix: For longitudinal projects, the "Graphical Data View & Stats" page might display incorrect values for "Total Count (N)" and "Missing" on the fields displayed on the page. Bug fix: If an "if()" function or exponent logic, e.g. ([field])^(3), was used in the branching logic of a field, it would mistakenly not parse it correctly when loading a data entry form or survey and instead display an error message. These work fine in calculated field equations, but only did not work in branching logic. Major bug fix: If a user possesses an API token in a project and has also been assigned to a user role in that project and then copies the project while leaving the "copy all users and roles" option unchecked on the "Make a Copy of the Project" page, then if they request an API token for the new project, that new API token will mistakenly point back to the old project, which means that there could be an issue with regard to data being imported into the wrong project or exported from the wrong project in this specific scenario. Bug fix: The "Graphical Data View & Stats" page would mistakenly display a value of "0, 0%" for Counts/Frequency for a multiple choice option that had a non-numerical coding (e.g., "M" for "Male"), which could cause some confusion by providing incorrect statistics for multiple choice fields (radio, dropdown, yesno, truefalse, and checkbox fields). (Ticket #650) Bug fix: When viewing the Data History popup for a field on a data entry form, it would sometimes return no results if a space existed in the record name. Bug fix: If a field on a survey had branching logic that utilized the Form Status field (e.g., form name + "_complete"), it would work fine on a data entry form, but it would mistakenly cause a branching logic error on the survey page. Bug fix: When a user with "de-identified" data export rights is viewing the Advanced Data Export view of the Data Export Tool and the record ID field in the project had been tagged as an Identifier field, then the option to "Hash the Record ID field" at the bottom of the page would mistakenly not be checked. This would not affect anything during the export process because it would still correctly hash the Record ID field's value in the exported data file, but it could be confusing because that checkbox option was not originally checked. Bug fix: When downloading a PDF containing saved data, any date/time fields with DMY or MDY date formatting would mistakenly be displayed in YMD format in the PDF. They now display in the PDF in their desired date format. Bug fix: When a person copies a project, that person will now automatically have User Rights privileges in the new project, even if they did not have them in the original project. That user will also not be in a role if they were previously in a role. This mimics the behavior when a user creates a new project from scratch or from a template. In previous versions, a user with Setup/Design privileges but no User Rights privileges could copy a project (and thus all the user rights in the project, including theirs) and then inadvertently end up no User Rights privileges in the new project, which could be very confusing. Bug fix: In the Scheduling Module, when changing the date of an event on a generated schedule or changing the date of an event on a saved schedule, after selecting a new date it would mistakenly determine the wrong day of the week to display next to the date text box, which could be confusing. Bug fix: On the API page in a longitudinal project, the list of unique events names displayed on the page would diverge slightly on certain occasions from the event list seen in other places, such as the Define My Events page. For example, if there existed more than 26 events all with a very similar name, the appended alphabetical characters on the unique event name would mistakenly get displayed as indecipherable characters (black diamonds with a question mark inside). Ultimately, this would prevent any users from importing data into those events using the API. Bug fix: When uploading an attachment for a Descriptive field in the Online Designer, after the file has finished uploading, it provides a button that says "Cancel" to allow the user to close the popup, which could be confusing, when instead it should say "Close". Bug fix: When using the User Access Dashboard to expire or delete a user from a project, the expiration/deletion action would not take place successfully if the user's username contained a period/full stop. Major bug fix: For users that are able to access the User Access Dashboard, it might mistakenly display some projects on the UAD to which the user does not have User Rights privileges (i.e., access to the User Rights page in the project). This would only seem to occur if the user had access to the User Rights page in the project at one point but was then later added to a user role that itself did not have User Rights privileges. This bug would not allow the user to add or edit the user privileges in the project, but would simply mistakenly allow them to delete or expire users from the project when they should not be able to. Bug fix: When piping data into a label on a data entry form when utilizing Double Data Entry, in which the current user is either DDE user 1 or 2, the piping would mistakenly not work when the page is loaded but instead would display a blank line where the piped data should be. Bug fix: On the Home Page Settings page in the Control Center, the "Expand" link below each textarea box would mistakenly not work but would instead throw a JavaScript error. Bug fix: Occasionally, a survey that has question auto numbering enabled and also has a question on the survey with branching logic, it would not automatically disable the question auto numbering like it should (in order to prevent confusion due to question numbers not appearing on the page because they are hidden by the branching logic). It will now automatically disable question auto numbering if any questions on the survey contain branching logic. Bug fix: If a radio button field on a data entry form or survey page has only one multiple choice option to choose from, then the user's cursor would mistakenly not place focus on the radio button when tabbing through the page but instead would skip it (or more accurately the cursor would disappear between fields). And in addition, in some particular browsers (e.g., Firefox), it would allow a user to attempt to tab into the radio button (in which the cursor would actually disappear), and if the user entered text via their keyboard before clicking Tab again, it would mistakenly store the text entered as the radio button field's value, although it would never be displayed anywhere except in a report or data export. Bug fix: If a user belongs to a Data Access Group in a project and is viewing a report, the "total number of records queried" at the top of the report would mistakenly always be reported as "0" rather than the correct number. Bug fix: When executing a user-defined rule on the Data Quality page, in which a discrepancy is found and returns a field with no value, the link that points back to the data entry form for that record would not be visible because of the missing value. Now in such cases it simply displays "[no data]" as a gray link so that the user has something to click on to take them back to the data entry form when a value is missing. Bug fix: If a suspended user logs in to REDCap successfully, after which they are immediately prevented from going any further and thus cannot access anything in REDCap, it would mistakenly show the user as being "currently logged in" when viewing their user information on the Browse Users page in the Control Center. This can be confusing and make the REDCap administrator think that somehow the suspended user is somehow accessing REDCap, which is not true. Bug fix: When editing an individual participant schedule on the Scheduling page, in which the date value is being modified for a specific scheduled event for that participant, it would cause a JavaScript error in Internet Explorer 8 only when it attempted to calculate the number of days between the original date and the new date that the user just modified. Bug fix: When viewing a single calendar event in the popup window in the Calendar module, in which the calendar event is attached to a record, on some occasions it may display an incorrect Form Status icon/value for certain data collection instruments. Bug fix: When using record auto-numbering in a project with data access groups, in which a user in a DAG creates a record and then another user that is not assigned to a DAG un-assigns that record so that it is no longer assigned to any DAG, then when a user in a DAG then goes to create a new record, the data entry page goes into an infinite loop of redirecting itself. Major bug fix: When using the "today" variable inside the datediff() function in the conditional logic of an Automated Survey Invitation, the invitation would mistakenly not get scheduled and would instead throw a PHP error when the process was executed by the cron job, which runs every 12 hours. Bug fix: If an instrument is created in a project and then enabled as a survey, after which the instrument itself is deleted, then when copying a project it will mistakenly list the deleted survey instrument in the yellow "notice" box, which could be confusing. Bug fix: When creating a new calendar event using the popup window in the Calendar module, a database query would silently fail in the background. This would not be displayed on the page or affect anything adversely though. Major bug fix: If survey invitations were scheduled to be sent for a record using the Automated Survey Invitations and later a user renamed the record, the invitations that had been scheduled for that record would become disassociated with the record, and would then be triggered and scheduled again at that point, which might cause the invitations to now be scheduled to be sent at incorrect times. Because of this disassociation, it would also cause issues displaying the invitations in the Survey Invitation Log. Bug fix: If the same survey invitation was sent one or more times to the same participant, in many cases all the invitations would mistakely show up in the Survey Invitation Log with "[Email not listed]" in the Participant Email column with the except of the most recent invitation sent to that participant. Bug fix: If a survey invitation was sent to a participant using the Compose button at the top of the data entry form, in many cases it would mistakenly show up in the Survey Invitation Log as having not been sent even if it had been sent to the participant. Bug fix: "elements" was added to the illegal variable name list because it would prevent branching logic or calculations to function properly on data entry forms and survey pages in certain browsers. Bug fix: In longitudinal projects in the Additional Customizations popup on the Project Setup page, users would seemingly be allowed to "enable" the "Order the records by another field" setting, despite the note that says it does not work for longitudinal projects. It would not really enable this setting but would appear as if it did since it displays a "Success" message after clicking the Save button. This settings is now completely disabled in that popup for longitudinal projects so that there is no confusion to users regarding whether or not it can be enabled. Bug fix: If using conditional logic for Automated Survey Invitations in a longitudinal project, in which unique event names are explicitly used in the logic, then if an event is referenced where no data exists for any fields in that event yet, then the logic would never get fully evaluated and would thus prevent the survey invitation from being scheduled when it should. For example, if the logic is [screening_arm_1][email]<>"" and [visit_2_arm_1][visit_2_date]="", in which event "visit_2_arm_1" has no data collected for it yet, then the logic will not get fully evaluated even when "email" has a non-null value. Bug fix: If importing a CSV data file on a longitudinal project's Data Import Tool page, in which the "Record format" is set to "Columns" and the record names in the CSV file are on the second row, it might mistakenly display an "invalid event name" error for some of the empty columns in the file. Bug fix: When adding or modifying a checkbox field on the Online Designer or Data Dictionary Upload, if a coded value for a checkbox option contained a dot/period (e.g., "1.08"), it would mistakenly allow it to be saved. Having a dot/period in a checkbox's coded value causes several problems, including the ability to save data and export data to certain stats packages properly. Although it is fine for a dropdown or radio button field to have a dot/period in its coded values, it is not allowed for checkboxes, and thus it now displays an error to the user if a user attempts to do this on the Online Designer or when uploading a Data Dictionary. Bug fix: The "Export Users" API method was not exporting the correct user privileges if the user had been assigned to a user role, but instead it was mistakenly exporting the privileges that the user had prior to being assigned to a role. Bug fix: On a data entry form or survey page where the record has not been initially saved yet, it would make a query to the redcap_edocs_metadata table for each File Upload field, in which the query would always fail. However, once the record had been created, the query would no longer fail on that page or other data entry forms/survey pages. There was no error displayed on the page due to this failed query though. But now it no longer executes the query unless the record already exists. Bug fix: When viewing the Data History of a field on a data entry form, if the username of the user is very long, it will mistakenly spill over into the next table column, which can make the text unreadable by having the username piled on top of the other text. It now wraps the username to another line if it is too long for the table cell. Bug fix: When a user clicks on an email address a participant in the Participant List, on certain occasions it would not automatically pre-fill that email address into the editable text box that appears but instead would leave the text box blank. Bug fix: The survey instructions and/or survey acknowledgment of some surveys might mistakenly display a black diamond character in some web browsers because a non-breaking space was invisibly added by the rich text editor on the Modify Survey Settings page, in which the non-breaking space character gets mangled before being output to the webpage. Major bug fix: When using the Data Comparison Tool to merge records for a Double Data Entry project, it would mistakenly enforce YMD date format validation for the text box in the "New Value" column for any kind of date- or datetime-validated field, which could be confusing if the date field is defined with an MDY or DMY format. It now properly enforces the proper date format that has been specified for the field when validating the value entered into the text box on the Data Comparison Tool. Major bug fix: If a project has a date or datetime field as the record ID field, it would mistakenly enforce only YMD date format validation when entering a new record name, even if the field had been defined with an MDY or DMY date format. Bug fix: When creating a User Role that contains an apostrophe in its name, it would not save correctly if someone attempted to edit the role afterward. Change: Slightly better handling of displaying matrixes of fields in the mobile survey view when the matrix column headers or question labels contain a lot of text, in which their text could overlap or get mashed together. Bug fix: If Automated Survey Invitations have been set up for a survey on a project's Online Designer page, then when setting an ASI as "not active", it would mistakenly display error messages saying that it could not save the changes since not all the fields had been completed in the pop-up, which could be confusing if the user is simply deactivating it. It now does not display any error messages when setting an ASI as "not active" in this case. Bug fix: If the record ID field in a project has min/max range validation, it would mistakenly display the popup warning message temporarily but then would quickly redirect the user to the "create record" data entry form page. Not only would the warning not prevent the user from creating the record, but the user would not even have time to view the validation warning when it was being displayed, which is only for a quick moment. If a range validation occurs for the record ID field, it now properly displays the warning popup and forces the user to enter another value inside the range before they can create a record. Bug fix/change: If a user attempts to leave a field comment in the Field Comment Log popup on a data collection instrument, it would simply not display the textbox and "save" button for adding a new field comment if the user did not have form-level user privileges for the instrument. So no explanation was given as to why they could not add a new comment, which could be confusing. It now displays a note in the popup to explain this in this scenario. Bug fix/improvement: Checkboxes on data entry forms and survey pages will now tab correctly if the user is tabbing from field to field on the page. In previous versions, it would mistakenly skip checkboxes when tabbing. It will tab through each checkbox option individually. The user can check or uncheck each checkbox option by clicking the space bar on their keyboard. Bug fix/improvement: In previous versions, if the "today" variable was used inside the datediff() function in the conditional logic of an Automated Survey Invitation, the invitation would not get scheduled at the desired time unless a user or API script was actively making edits to each record in the project every day. It has now been changed so that such records will get checked each day to see if a survey invitation needs to be scheduled for them. Bug fix: If using the real-time execution feature for Data Quality rules on a longitudinal project, in which a Data Quality rule utilizes cross-event logic, then if a violation is triggered and displayed after saving a record on a data entry form, it would mistakenly not display any data from the other events in the DQ violations popup but instead leave them blank as if they have no value, even if the record does contain data on the other events. Bug fix: "focus" was added to the illegal variable name list because it would prevent branching logic or calculations to function properly on data entry forms and survey pages in certain browsers. Bug fix/change: If a user has set up Automated Survey Invitations in a project, if they go back to modify those settings later (especially after some invitations have been scheduled), it might not be obvious to the user that those modifications will not be applied to invitations already scheduled but only apply to invitations that are scheduled after the modification. To reduce confusion about this behavior, which may not be obvious to many users, some new text will appear in red below the instructions in the automated invitation popup to notify the user of this. Bug fix: When importing data via the Data Import Tool or API data import, it would mistakenly not update a number value for a field being imported if the new number had an equivalent numerical value but had a different precision (e.g., 100 being changed to 100.0). Bug fix: If a user is assigned to a Data Access Group and views the Record Status Dashboard, the "displaying record" drop-down on the page would mistakenly include all the records in the project rather than just the records assigned to their DAG. This would not affect the user's inability to access records in other DAGS but would only cause navigation issues when trying to use the record drop-down to view other "pages" of records on the Record Status Dashboard. Bug fix: When a user clicks the "log out" link in REDCap, it mistakenly destroys all cookies that the user has for the REDCap server, which may include some others used outside of REDCap, such as for Shibboleth authentication. It now only destroys cookies created and used by REDCap. Bug fix: On the User Access Dashboard, after a user clicked the "fetch" link to fetch the last time each user accessed a given project, the date/times would mistakenly not sort chronologically when the user clicked the table header for that column. Bug fix: For a longitudinal project, it would mistakenly not display the event name on the Logging page for a "Download uploaded document" action where a user had downloaded a document for a record on a data entry form. Bug fix: If using the "datediff" function within the logic of a Data Quality rule, under certain conditions it would mistakenly return false positives if the first two parameters passed to the datediff function where two different data types (e.g., date and datetime, datetime_seconds and datetime) rather than them both being of the same data type. Bug fix: If a Form Status field (i.e., variable name is form_name+"_complete") is referenced within the logic of a Data Quality rule in a longitudinal project, depending on the logic, it might mistakenly return discrepancies for that field on events for which its data collection instrument has not even been designated. It should instead ignore all instances of the field on undesignated instrument-event pairs (as defined on the "Designate Instruments for My Events" page). Bug fix: If a survey has its Question Numbering option set to "auto numbered", it is possible in certain cases for branching logic to be added to a field on that survey but the survey does not mistakenly revert to "custom numbered", which it normally should. This causes an issue on the Modify Survey Settings page because the Question Numbering option is disabled on the page, and even though it says "custom numbered", the survey is still "auto numbered", in which the user is never able to change it to "custom numbered". Bug fix: If a user clicks the "Save and go to Next Form" button on a data collection instrument when they do not have user privileges to the very next instrument, it would mistakenly take them to the next instrument and display an error message saying that they do not have access to it. It now takes them to the next instrument to which they have access. Bug fix/change: When viewing the Participant List for a survey, if the project has the "designate an email field to use for invitations to survey participants" functionality enabled, it would mistakenly not display the record name next to the email address in the Participant List. Since using the designated email field prevents survey responses from ever being anonymous, a participant's responses are already identifiable, thus it is okay to display the record name next to the participant's email. It now also allows the user to click the Responded icon for these participants in order to navigate to the record on the data entry form. Bug fix: If record auto-numbering is enabled in a longitudinal project that is using the Scheduling module, it would mistakenly allow the user on the Scheduling page to create a new record using any record name they choose. It should instead generate a new record name automatically. Bug fix: When viewing surveys or data entry forms in the mobile view using a mobile device, it would mistakenly display the webpage too wide, in which it would overflow off the right side of the screen. Critical bug fix: If the user was entering data on a data entry form and pressed the Enter button on their keyboard while their cursor was inside a text field on the form, it would mistakenly not save the data on the form but instead just exit the form. Even though it would not display any notification that data had been saved, it might be confusing to users who simply assumed that their data had been saved. It will now instead save the data after pressing Enter in a text field, which was the behavior in all versions prior to 5.9.0. This bug emerged in version 5.9.0. (Note: This does *not* occur on survey pages but only on data entry forms.) Bug fix: The drop-down list of surveys displayed in the Participant List and also in the Survey Invitation Log had the surveys listed out of order for longitudinal projects only. They were sorted by instrument then event when they should be sorted first by event then instrument. Major bug fix: When performing a data export or when downloading the Data Import Template file, if a checkbox field had a raw coded value that contained an underscore in it, the underscore would mistakenly get removed from the variable name when the checkbox's variable name is converted into the special import/export-format (e.g., field___code). Bug fix: If the field label of the first field in the project (i.e. the record ID field) contains HTML tags, it may mistakenly display the HTML tags as visible on the page when choosing a record on the data entry form. Bug fix: If a user assigned to a Data Access Group navigates to a project's Logging page, it would mistakenly display no logged events for them on the page when it should instead display the logged events by users in their DAG only. Major bug fix: If different survey responses are saved nearly simultaneously for the same survey, there is a chance that the multiple responses could all get saved under the same record name in the project, which means that two responses would only appear to be a single record with a mixture of the data values from both. Bug fix: On the Online Designer of a project that is utilizing surveys, if the Notifications button is clicked for an instrument that has been enabled for a survey, it would sometimes display the "Display all surveys" option in the popup and mistakenly display any surveys that had been created in the past but had since been deleted. It now no longer displays any of the deleted surveys in that popup. Bug fix: Piping would not work if a matrix radio button's label was piped into another field or label on the same data entry form or survey page at the time the radio button was clicked. However, it would pipe the data correctly if the page was reloaded later after the matrix radio field's value had been saved. This only affects radio fields inside a matrix. Bug fix: If a survey respondent has uploaded a file for a "File Upload" field on a survey page, on certain web servers with specific server configurations it would cause the file to seemingly download but would actually be downloaded as a 0-byte file, thus preventing the respondent from ever re-downloading the file. This would not occur on data entry forms but only on surveys for a small minority of server configurations. Bug fix: If the HTML character code for a non-breaking space (&nbsp;) was used in a field label, survey instructions, or other similar places where text is defined by a user, it would often mistakenly display a black diamond shape in its place on the webpage. It now renders correctly as a space on the page. Bug fix: When importing data for checkbox fields via the API in a flat XML format and the overwriteBehavior flag is set to "overwrite", it would return an error if a user was attempting to import a blank/null value for a checkbox (since "0" and "1" are the only valid options), although for CSV and JSON formats it would simply assume it to be "0" and ignore it. It now assumes "0" and ignores it for XML format. Bug fix: If printing a report in a project, in which the report contains many rows or columns, it might mistakenly print the report with a duplicate floating table header that might obscure some of the data in the report. Bug fix: In certain versions of Internet Explorer, the left side of the table on data entry forms would mistakenly display a black border at the top of their table cells. Bug fix: If two or more surveys had been enabled in a project with one of them being the first data collection instrument (which would have a public survey link) and then later another survey-enabled instrument was moved to become the first instrument (which would then have a new link as the public survey link), then the old public survey link would mistakenly still be active and allow respondents to take that survey, which could cause possible data issues later on during data collection. It now displays an error and no longer allows respondents to take the survey if the public survey link they are using no longer belongs to the first data collection instrument in the project. Major bug fix: For a project with randomization enabled, if a user who belongs to a Data Access Group attempts to randomize a record that has not yet been created, in which the randomization is occurring on the first data collection instrument prior to the record having been created, then the record would mistakenly not get assigned to the user's DAG *if* the user leaves the page without saving their changes (via the Save button). However, if the user performed randomization and then clicked Save, then the record gets assigned to the DAG successfully. Bug fix: If the value of a date or datetime field on a data collection instrument contains just one dash (or slash), then it would mistakenly allow the value rather than forcing the user to fix the formatting error, which could result in the field's value not getting saved correctly. It will now attempt to fix the formatting by adding the missing dash, but it will display the error to the user if it is unable to fix it automatically. Bug fix: The "branching logic errors exist" popup will mistakenly display on a data entry form or survey page when the page initially loads if the following conditions are true: 1) a radio button field inside a matrix has a choice option with a certain coded value such that the field's variable name + an underscore + the coded value of a choice is the same as the variable name for another field on the page, and 2) that other field on the page has branching logic. For example, if the field that has the branching logic is "gender_1" and the radio field in the matrix has the variable name "gender" with a coded value of "1" for one of its choices. This bug emerged in version 5.8.0. Bug fix: When clicking on a slider field on a data entry form, it would mistakenly display the "Save Changes" prompt to the user. Major bug fix: If using the Randomization module in a project and one or more strata fields are radio button fields (as opposed to drop-downs) and those radio strata fields also exist on the same data collection form as the randomization field, then during the process of randomization, the radio strata field that gets displayed in the randomization popup window would not appear to have the correct value selected if the value of the strata field had been changed on that page prior to being saved and prior to randomization. This would not affect the data at all, nor would it affect the randomization process, but it might be confusing to the user that it *appears* to not have the correct radio option selected in the randomization popup. Bug fix: If record auto-numbering is enabled in a project containing Data Access Groups and a user has "Rename Record" privileges, then if the record ID field has some type of field validation, then the user would get stuck whenever opening the first data entry form for an existing record, in which it would put the cursor in the first field and would immediately display the field validation error popup when they tried to leave the field. In the previous version, this bug was fixed for users that had been assigned to a Data Access Group, but the bug still occurred for users that had not been assigned to a DAG. Change: When a user edit's a calendar event (e.g., modifies time, date, or note), it now displays the date and time in the details of that logged event in Y-M-D date format and in military time when seen on the Logging page in a project. This is done to be more transnational with regard to dates/times since these details get hard-coded within a block of text in the log. Previously, it displayed the details of that calendar event change in M/D/Y H:Mam/pm (American) format. This only affects the way it is displayed on the Logging page when a calendar event is edited. Bug fix: When viewing the Mobile view of a data collection instrument (i.e., on a mobile device), it was mistakenly displaying text at the top of the instrument that should be hidden on the page, such as text for various warnings/alerts. Major bug fix: If a user is piping data into a survey invitation email (either via Participant List or Automated Survey Invitations) and also using HTML inside the email message, then all the HTML tags will mistakenly get removed from the message. If using HTML tags without piping data into the email message, then the HTML tags will appear in the email as expected. (Ticket #574) Major bug fix: If using Double Data Entry in a project that contains "File Upload" fields, it is possible that files uploaded for a record might get inadvertently deleted on the back-end (unbeknownst to the user) if two records where merged and then later the merged record was deleted, in which the merged record contained a file that was uploaded to one of the two records prior to the merge. Major bug fix: If a user had access to the User Rights page in a given project but their access to that project had expired (because an expiration date was set and has passed), the project would mistakenly still be displayed on the user's User Access Dashboard and allow them to expire or remove other users from the project, which should not be possible since they no longer have access to the project. Major bug fix: If using Double Data Entry for a project and a Double Data Entry user (#1 or #2) adds a Field Comment on a data entry form, it would mistakenly save the comment for the wrong record (i.e., for that record name but without the --# appended). Major bug fix: If a project is utilizing surveys and Data Access Groups together, and a user is assigned to a DAG, in which some records have been created in the project but no records have been assigned to their DAG, then when viewing the Participant List of the existing records, it would mistakenly display to the user all the participants (i.e., existing records) from other DAGs. This only occurs on the Participant List page, and only occurs if no records have yet been assigned to the user's DAG. Bug fix: When using Internet Explorer and entering data on a data entry form, if the user clicks the Data History widget icon or the Field Comment Log icon next to a field, it would mistakenly display the browser's default "Leave this page?" pop-up prompt. Bug emerged in version 5.7.4. Bug fix: The custom text at the bottom of the Home page was not displaying for users that had not yet logged in. Bug fix: If any survey invitations had been scheduled in a project to be sent in the future (either via Participant List or Automated Invitations), it would mistakenly send the survey invitations at their scheduled time even if the project had later been deleted or set to inactive or archived status. Bug fix: If the feature "Auto-suspend users after period of inactivity" has been enabled, it is possible that a minority of the users that should be auto-suspended will mistakenly not get suspended. Bug fix: If a user loads a data entry form containing a calculated field for a given record, and the calculated field value gets changed immediately after the page loads (due to a data import for the calc field or a user modifying the calc field equation), then it would mistakenly not prompt the user to save their changes if the user attempted to leave the page without having saved their changes. Bug fix: When displaying a very wide report, event grid, or Record Status Dashboard table, the page would freeze up in some cases because it was trying to automatically enable the floating headers for the table in order for the first column/row of the table to always be viewable, even when scrolling off the page. It now no longer automatically enables the floating headers if the table has more than 25 columns but instead displays a button above the table, which allows the user to manually enable the floating headers, if they wish. Bug fix/Change: "switch" was added to the list of illegal variable names that can no longer be used when creating new fields because it would cause JavaScript errors in Internet Explorer if branching logic was used for that field on a data entry form or survey. Bug fix: When multiple arms have been created in a longitudinal project and the Custom Record Label functionality is being utilized, then it would mistakenly not display the Custom Record Label text at all on the Record Status Dashboard for records in arms other than the first arm. Bug fix: When using older versions of Internet Explorer (version 8 and lower) and attempting to upload or delete a file for a "File Upload" field on a data entry form, it would mistakenly display the "Save Changes?" prompt to the user whenever they clicked the "upload file" or "remove file" link. Bug fix: If record auto-numbering is enabled in a project and a user is assigned to a Data Access Group and also has "Rename Record" privileges, then if the record ID field has some type of field validation, then the user would get stuck whenever opening the first data entry form for an existing record, in which it would put the cursor in the first field and would immediately display the field validation error popup when they tried to leave the field. Bug fix: If a data entry form in a project contained 10 or more calculated fields in a row, instead of allowing the user to tab over all the consecutive calc fields, it would send the user's browser into an infinite loop and sometimes cause the web browser to crash. Bug fix: If a field with variable name "pid" is included on a data collection instrument that is enabled as a survey and then the survey is completed (partially or fully) by a respondent, then when a user opens the response on the data entry form and clicks the Edit Response button near the top of the page, it would mistakenly redirect them to REDCap's My Projects page instead of allowing them to edit the response. Bug fix: When performing a metadata export using the API, it would mistakenly output the option delimiter for multiple choice field options as "\n" rather than as "|" if exporting in "json" or "xml" format (does not affect "csv" format). Also, if any date or datetime fields had the legacy field validate types (i.e., "date", "datetime", "datetime_seconds", as opposed to the newer versions "date_ymd", "datetime_ymd", "datetime_seconds_ymd"), it would mistakenly not append "_ymd" to them in the export if exporting in "json" or "xml" format. Major bug fix: If using randomization in a project, in which a randomization strata field does not exist on the same data collection instrument as the randomization field but is used in branching logic of a field on that instrument, then when a user attempts to randomize a record, it will mistakenly not set the value of the randomization field as seen on the page (although its value will actually get saved on the back-end), which could then cause the randomized value to get erased if the user clicks Save on that instrument after the randomization has just occurred. This bug was supposedly fixed in the previous version but was not. (Ticket #571) Bug fix: If a user in a project has Randomization privileges but does not have Project Setup/Design privileges, then the "Set up randomization" button on the Project Setup page would mistakenly be disabled when it should instead remain enabled for the user. Major bug fix: If using randomization in a project in which the randomization field or a randomization strata field has branching logic, in previous versions those fields might mistakenly get hidden (and their value erased) due to branching logic hiding them even after the record had been randomized. This could incidentally cause the loss of the randomized value and the loss of the values of strata fields. Now once a record has been randomized, the randomization field and strata fields will never be able to be hidden by branching logic nor their values erased (even when the branching logic dictates that they should) in order to preserve data integrity. Major bug fix: When entering certain non-Latin UTF-8 characters into a field label, field note, or other similar labels for fields on the Online Designer, it would not display it correctly on the page after being saved (it would instead display a black diamond with a question mark denoting that the character cannot be interpreted by the web browser). If any such labels have been re-saved after initially saving the label, then those labels will need to be fixed individually, but if the messed up label was never modified after initially being saved, then it will likely not need to be re-saved but should now display correctly. (Ticket #565) Bug fix: When executing Data Quality rule C, D, E, F, or G in a longitudinal project, it would mistakenly return discrepancies for data that had been orphaned because the field's data collection instrument was no longer designated for the event (but was at some time in the past). It will now just ignore these orphaned data values that have been saved for undesignated instrument/events. Bug fix: In the Scheduling module in a longitudinal project, if a record has a scheduled event with either "scheduled" or "confirmed" status, it would not display the correct icon/color for it in the schedule's Status column. Bug fix: In the Online Designer, if a Section Header contains a backslash immediately followed by an apostrophe ("\'"), then it will cause the page to crash, and thus nothing after that will be displayed on the page. (Ticket #561) Bug fix: The field validation for date fields and datetime fields was not as precise as it should have been and would mistakenly allow certain illegal date values to be entered without error (e.g., 2013-02-29, 2013-09-31). Bug fix: The "Graphical Data View & Stats" page in each project could mistakenly yield inaccurate results when calculating the percentile values of numerical data fields, especially for non-normal distributions and relatively small data sample sizes. It now calculates percentiles using the same algorithm used by both R (its default method - type 7) and Microsoft Excel. Bug fix: When utilizing Double Data Entry with user roles in a project, there might be issues where users or roles are mistakenly not able to be assigned to DDE person 1 or 2. Also, the list of users on the Project Home page may not correctly reflect a user's designation of DDE person 1 or 2 if they have been assigned to a role. Bug fix: If a project has a survey with Automated Invitations enabled based upon the value of a field, and the invitations are scheduled to be sent "immediately", then there could be some synchronization issues when the invitations are sent out if a user does a data import (via Data Import Tool or API import) with many records being updated that trigger invitations (several hundred or more). The problem is that there might be a delay in which the survey links sent to the respondents will not work immediately (survey page will say user is not a valid participant) but will eventually work after several minutes. Bug fix: When viewing a survey response on a data entry form, the floating box of Save buttons at the top of the page would mistakenly not be located in the correct place off to the right but instead would cover the project title near the top center of the page. Bug fix: If a project has an instrument designated as a survey and then the instrument is deleted, after which another instrument is then designated as a survey, it is possible that it will mistakenly display the deleted survey in the Compose Invitations popup on the Participant List page and thus allow users to inadvertently send invitations for the deleted survey, which ends up being a survey page with no questions. (Ticket #510) Bug fix: If a record somehow ended up with a blank name on the back-end, it would mistakenly get displayed as an extra row on the Record Status Dashboard page in the project. Bug fix: In a project's Calendar module, if a calendar event on a Saturday contained a note with a lot of text, it would not be possible to view the full content of the text when hovering the cursor over it because it would only be visible off the page on the right. Bug fix: In a project's Calendar module, if a new calendar event is created in which its note text contained an apostrophe, the calendar event would throw an error and not save correctly. Bug fix: For surveys whose title is left intentionally blank (because a logo is used instead), the lack of a title can cause issues in some places where the title should be displayed, such as in the survey invitation to respondents and on "compose invitation" popups, among other places. In emails, it will now instead just display the URL if the title is blank, and for other places within the project, it will instead display the instrument name for that survey. Bug fix: In the Online Designer's popup window to Add/Edit Fields, it was mistakenly displaying the "How do I manually code the choices?" link when adding/editing a calculated field. It should only display the link for multiple choice field types. Major bug fix: In extremely rare instances, if a survey participant opens a survey page to begin the survey, the first page would not be blank but would instead be pre-filled with the responses entered by the previous participant who took the survey, which could possibly expose confidential or sensitive data. The exact circumstances needed to produce this rare bug are not known. (Ticket #548) Major bug fix: If the feature is enabled to suspend users due to inactivity, it would mistakenly suspend a user if they had not performed a logged action in X days even though they had logged in to REDCap in the past X days (with X being the number of days set for inactivity suspension). Bug fix: If the User Access Dashboard was set to send an email reminder to users (according to its setting on the User Settings page in the Control Center), it would mistakenly send the emails on the first Monday of the current month instead of on the first weekday of the current month. It will now send them on the first weekday regardless of the day of the week. Bug fix: The "Upload New File" tab on a project's File Repository page mistakenly displays a strange indecipherable character immediately after the "Name/Label" text in the file upload form. That character has been removed. (Ticket #542) Bug fix: When using certain versions of Internet Explorer on a survey that allowed respondents to view the aggregate survey results after completing the survey, it would sometimes not display the aggregate results but instead reload the survey page as if they are starting over. Bug fix: If a user is logged into REDCap and then opens a REDCap survey in another tab in their web browser and completes that survey, then if they return to their previous tab, they would find that their session in REDCap had unexpectedly ended, which should not happen. The action of completing of survey was mistakenly destroying the user's authenticated REDCap session. Bug fix: If a survey page has questions pre-populated via the survey pre-filling method (either via a web form post or via the query string), it would mistakenly not pipe the values of pre-populated fields when the survey page loaded if the Piping functionality was used anywhere on the first page of the survey. (Ticket #538) Bug fix: For a project with the randomization module enabled where a user with "randomize" privileges accesses the data entry form that contains the randomization field, in which the randomization field is the first field on the form and also the user does not have "rename record" privileges, then it will mistakenly not display the "Randomize" button for a record that has not been randomized if the user is using Internet Explorer 8 (due to a JavaScript error). This does not affect any other web browsers but only IE8. Bug fix: When viewing the counts/frequency for a multiple choice field on the Graphical Data View & Stats page in a project, on rare occasions it would mistakenly miscount some of the options, although the bar chart on the page for that field would reflect the correct counts. This appears to be due to superfluous data existing on the back-end for this field that was caused from an old bug that existed in older versions but has since been fixed. Change: On the User Rights page in a project or on the User Access Dashboard, if a user's account is suspended, it now says "account suspended" instead of just "suspended" to make it more clear that they are not suspended from the project but at the user account level. Bug fix: If a user was logged in to REDCap and then got auto-logged out due to no activity after the specified auto-logout time, if their last action was to submit a form on a page (e.g., clicked Save on a data entry form), then when they returned to REDCap, which would prompt them to login again, it might mistakenly resubmit their previous page submission if they were using a specific web browser (e.g., Firefox). This could potentially cause issues depending on which page the user was viewing. (Ticket #535) Bug fix: Under certain circumstances, a field having "datetime" or "datetime with seconds" validation, if left blank on a survey or data entry form, might mistakenly have its value set as " " (i.e., a single space) when the survey/form is saved. Bug fix: If a report was created that was ordered by two fields with the second ordering field being the record ID field (i.e., the first field) in ascending order, then it would not sort the results correctly. Major bug fix: If a user has been given access to the User Rights page in a project and has also been assigned to a Data Access Group, it would mistakenly allow them to edit a user role that contained users from other DAGs or users not assigned to a DAG, thus ultimately allowing them to modify the user privileges of users outside their DAG, which should not occur. In this scenario it will now prevent them from editing any role that contains at least one user from another DAG or at least one user not assigned to any DAG. Major bug fix: When a Secondary Unique Field is defined in a project containing surveys, it would mistakenly allow duplicate values to be entered for the field on a survey page if the survey has multiple pages and the secondary unique field is on the first page, in which if the user returns to page 1 after advancing to a later page, they would then be able to enter a value in the field that already exists on a different record. However, the functionality would work correct on data entry forms and also when first accessing page 1 of a survey. Major bug fix: If a user was renaming a record on a data entry form and added a space at the beginning or end of the new record name, it would mistakenly allow it and would cause issues with the record being viewed or exported. It now prevents users from renaming records with spaces at the beginning or end. Bug fix: If users attempted to upload a data CSV file or data dictionary on the Data Import Tool page or Data Dictionary Upload page, respectively, it would mistakenly give an error saying that the file was an incorrect file extension if the filename ended with .CSV (all upper case) rather than .csv (all lower case). Bug fix: If using record auto-numbering in a project that has data access groups, in which the highest-numbered record in a group is re-assigned to a different group, it will not allow users in the first group to create a new record because it will go into an endless loop. Bug fix: On the Display Graphical Results page at the end of surveys, it was mistakenly referencing JavaScript files outside of the Resources/js directory, which can cause issues for certain authentication methods, such as Shibboleth. Those JavaScript files have now been moved inside the Resources/js directory. Bug fix: When using the Piping feature for a Notes field's text, it would mistakenly remove any line breaks in the piped text. It would also mistakenly not perform HTML escaping on the piped text if it contained any HTML tags. Bug fix/Change: It was mistakenly possible for a user to create a new record in a project in which the record's name exceeded the 50 character limit if the record was created via the Data Import Tool or API data import. Not only has this bug been fixed, but the the character limit for new records has now been increased from 50 characters to 100 characters. Bug fix: After adding a new instrument in the Online Designer for a production project in Draft Mode, it would mistakenly not allow the user to access the instrument to add/edit fields but would instead redirect to the project's home page. Bug fix: It was possible for users to use the API to import data or to import/delete files when the project was in inactive status or archived status, which should not be allowed. If a user attempts to do so for an inactive or archived project, it will now instead return a descriptive error. Bug fix: When double data entry is enabled for a project, data entry person 1 or 2 would mistakenly be able to access the Field Comment Log page and Data Quality page in the project. This bug was supposedly fixed in version 5.5.0 but was not. Bug fix: When clicking the "Add Field" button on the Online Designer when the button appears directly above or below a section header, it should remove the option "Begin New Section" in the Field Type drop-down in the "Add New Field" pop-up. However, it was not doing this for the browsers Internet Explorer and Safari. Bug fix: If the Data Resolution Workflow is enabled for a project and a user attempts to open a new data query and assign it to another user, it would mistakenly not include in the drop-down list all users who had been given user privileges to respond to a data query. Bug fix: If a data entry form in a project contained 10 or more calculated fields in a row at the beginning of the form, it would sometimes send the user's browser into an infinite loop and never fully load the page. Bug fix: When editing an existing checkbox field in the Online Designer, it would mistakenly set its "required" status to "No" when opening the popup to edit the field, even if the checkbox was saved previously as required. So if the user saved the field in the popup without changing the required status option back to "Yes", then it would automatically be set to "No". But if the user never saved the modifications in the popup, then nothing would change on the field and it would remain as a required field. Bug fix: In PDF exports of data entry forms/surveys containing saved record data, in some cases it would mistakenly cause one or two fields not to display or only to partially be displayed in the PDF if they occurred directly before a section header on the instrument. Bug emerged in version 5.6.1. Bug fix: When viewing the Graphical Data View & Stats page in a longitudinal project, it would not always calculate the "Total (N)" value correctly because it counted the total records rather than the total record/event pairs. This would cause other values (e.g. "Missing" count) to be miscalculated as well. Bug fix: When entering the Start Date for a new schedule in the Scheduling module or editing the date of an ad hoc calendar event in the Calendar module, the date value was mistakenly not being validated when entered/changed, which could allow a user to enter a date in an incorrect date format if hand-entering the date value rather than using the datepicker widget. Bug fix: If a user edits their instrument-event designations on the "Designate Instruments for My Events" page in a longitudinal project when the event grid is so wide or long that it scrolls off the page vertically or horizontally (thus enabling the floating headers for the grid as the user scrolls), then the grid would mistakenly no longer have floating headers after the user clicked the Save button. Bug fix: On pages where a table uses a floating header or floating first column to keep the header/first column on the page even when scrolling off the page (e.g., reports, event grid page), the table header would sometimes mistakenly cover part of the first row, thus making it unviewable. Bug fix: When using the Scheduling module in a longitudinal project, if an existing record had ad-hoc calendar events but had not been scheduled yet, then it would mistakenly prevent users from scheduling the record by not displaying the record in the "unscheduled records" drop-down list on the Scheduling page. Bug fix: When copying a project that contains data access groups, in which the user elects to copy all records/responses, it was mistakenly not assigning the records to the data access groups in the newly created project after being copied. Bug fix: The Project Revision History page might mistakenly say that production changes were approved by the same person that submitted them when it was actually approved automatically by REDCap. While it is not possible to fix this for previously approved changes, the issue should no longer occur in the future. Bug fix: When a survey response that has not been completed is viewed by a user on a data entry form, in which the user clicks the "Compose survey invitation" button at the top of the page to send an invitation, it would sometimes display an erroneous error saying that the "send time" specified for the invitation exists in the past when it does not. Bug fix: Fixed CSS issue, in which a random border was displaying on bottom of each row in a matrix of fields on data entry forms and surveys. Bug fix: Data History Widget on data entry forms would not display the logged event for when a field's value was set to a blank/null value. Bug fix: In custom reports when setting a field's limiter equal to blank/null, the report would mistakenly not return records where that field had a value entered but then was later erased. It instead would only return records where a value was never entered for the field. Bug fix: When viewing the event grid on the Designate My Instruments page or when accessing a record's events in a longitudinal project, it might mistakenly not display the first column of the event grid when using Internet Explorer 7 or other older versions of IE. (Ticket #492) Bug fix: If a user has a username that contained only numbers and no letters, the User Rights page in version 5.5.0+ would not allow that user to be added to a project. Bug fix: When using Table-based authentication in a project, if a user was assigned to a role when that username did not exist in REDCap as a user yet, it would mistakenly allow it to be added, even though it would display an error that it could not be added. ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download