This edit request has been answered. Set the |answered= or |ans= parameter to no to reactivate your request.
Rewrite of template code and documentation currently in {{Retrieved/sandbox}}, this revision. The diff below compares the current sandbox version with the {{Retrieved}} version imported in the sandbox 5 October 2021, which is functionally the current production version:
Thank you for looking into this. The test case you referred to is an error case (the date is missing the year component, an error). The test case below it adds a parameter (|df=dmy) that correctly displays the date in 'day month year' format, using default parser function behavior. 98.7.84.118 (talk) 13:47, 8 November 2024 (UTC)[reply]
Logic revisions added in sequence, with latest revision in the bottom. Changes+additions is green, deletions stricken out.
Logic revisions and doc revisions are not necessarily in sync date wise, however the sandbox has the latest revisions of both. 204.19.162.34 (talk) 18:47, 23 October 2024 (UTC)[reply]
If parameter 'access-date'/'accessdate' is missing/mistyped, or there is no access date, display error message, categorize the page and exit.
If there is an 'access-info' parameter (paywall access categorizes page) present it unless incorrectly entered; optionally display error message.
If there is an 'access-info' and a 'source-info' parameter decide on displaying punctuation+whitespace as 'source-info' leading separator, or just whitespace.
If there is no 'access-info' parameter but there is a 'source-info' parameter do not display 'source-info' leading separator.
If there is a 'format' parameter and either or both of the two previous parameters display only whitespace as 'format' leading separator ('format' punctuated by parentheses).
If there is a 'format' parameter but neither 'access-info' nor 'source-info' parameters, do not display 'format' leading separator.
Diplay static text "Retrieved" per the presentation mode; if invalid presentation mode has been entered, do not display mode-related punctuation anywhere; optionally suppress static text with error message.
If today's date is autoinserted, display; else
Time-condition the access date to be up to parser's "today" datestamp (practically, less than 2 days in the future).
If there is a date format selected (parameter 'df'), apply it to the access date unless incorrect; if the latter, optionally display error message.
If there is no 'df' parameter, display the access date; if not in an acceptable format display error message and categorize the page.
If access date fails the time condition display error message instead, and categorize the page.
If access date is partial or fails parser date checks display error message instead, and categorize the page.
End else; present 'via' parameter if there is one.
If there is a 'via' parameter and a 'note' parameter, use whitespace as parameter 'via' trailing separator (link note punctuated by parentheses).
If there is a 'note' parameter and no 'via' parameter, present 'note' parameter with whitespace as its leading separator.
If there is non-default terminal punctuation display it and exit; else exit.
The following reflects changes to try current-date-substitution in a simple manner. Text in green indicates the change in branch logic (replaced subbranch with branch)
If parameter 'access-date'/'accessdate' is missing/mistyped, or there is no access date, display error message, categorize the page and exit.
If there is an 'access-info' parameter (paywall access categorizes page) present it unless incorrectly entered; optionally display error message.
If there is an 'access-info' and a 'source-info' parameter decide on displaying punctuation+whitespace as 'source-info' leading separator, or just whitespace.
If there is no 'access-info' parameter but there is a 'source-info' parameter do not display 'source-info' leading separator.
If there is a 'format' parameter and either or both of the two previous parameters display only whitespace as 'format' leading separator ('format' punctuated by parentheses).
If there is a 'format' parameter but neither 'access-info' nor 'source-info' parameters, do not display 'format' leading separator.
Diplay static text "Retrieved" per the presentation mode; if invalid presentation mode has been entered, do not display mode-related punctuation anywhere; optionally suppress static text with error message.
If today's date is autoinserted, display
Else, time-condition the access date to be up to parser's "today" datestamp (practically, less than 2 days in the future).
If there is a date format selected (parameter 'df'), apply it to the access date unless incorrect; if the latter, optionally display error message.
If there is no 'df' parameter, display the access date; if not in an acceptable format display error message and categorize the page.
If access date fails the time condition display error message instead, and categorize the page.
If access date is partial or fails parser date checks display error message instead, and categorize the page; end else.
Present 'via' parameter if there is one.
If there is a 'via' parameter and a 'note' parameter, use whitespace as parameter 'via' trailing separator (link note punctuated by parentheses).
If there is a 'note' parameter and no 'via' parameter, present 'note' parameter with whitespace as its leading separator.
If there is non-default terminal punctuation display it and exit; else exit.
If parameter 'access-date'/'accessdate' is missing/mistyped, or there is no access date, display error message, categorize the page and exit.
Else, (wiki)substitute value of 'access-date'/'accessdate'.
If there is an 'access-info' parameter (note: paywall access categorizes page) present it unless incorrectly entered; optionally display error message.
If there is an 'access-info' and a 'source-info' parameter decide on displaying punctuation+whitespace as 'source-info' leading separator, or just whitespace.
If there is no 'access-info' parameter but there is a 'source-info' parameter do not display 'source-info' leading separator.
If there is a 'format' parameter and either or both of the two previous parameters display only whitespace as 'format' leading separator ('format' punctuated by parentheses).
If there is a 'format' parameter but neither 'access-info' nor 'source-info' parameters, do not display 'format' leading separator.
Diplay static text "Retrieved" per the presentation mode; if invalid presentation mode has been entered, do not display mode-related punctuation anywhere; optionally suppress static text with error message.
If today's date is autoinserted (wiki)substitute and display; if parameter 'df' also exists ignore it and optionally display related error message.
Else, time-condition the access date to be up to parser's "today" datestamp (practically, less than 2 days in the future).
If there is a date format selected (parameter 'df'), apply it to the access date unless incorrect; if the latter, optionally display error message.
If there is no 'df' parameter, display the access date; if not in an acceptable format display error message and categorize the page.
If access date fails the time condition display error message instead, and categorize the page.
If access date is partial or fails parser date checks display error message instead, and categorize the page; end else (manually entered date).
Present 'via' parameter if there is one.
If there is a 'via' parameter and a 'note' parameter, use whitespace as parameter 'via' trailing separator ('note' punctuated by parentheses).
If there is a 'note' parameter and no 'via' parameter, present 'note' parameter with whitespace as its leading separator.
If there is non-default terminal punctuation display it and exit; else exit. End else (punctuation).
This template must be followed by a complete and specific description of the request, that is, specify what text should be removed and a verbatim copy of the text that should replace it. "Please change X" is not acceptable and will be rejected; the request must be of the form "please change X to Y".
The edit may be made by any extended confirmed user. Remember to change the |answered=no parameter to "yes" when the request has been accepted, rejected or on hold awaiting user input. This is so that inactive or completed requests don't needlessly fill up the edit requests category. You may also wish to use the {{EEp}} template in the response. Consider making changes first to the template's sandbox and test them thoroughly here before submitting an edit request. To request that a page be protected or unprotected, make a protection request.
This is a re-submission of the edit request to sync the template to the sandbox, which was described here: "Extended-confirmed-protected edit request on 3 September 2024". The resubmit is due to numerous edits in both the code and the documentation. The previous request was marked as "answered - not done" I believe because of mistaking an intentional error case as a genuine template case in the template's testpage.
Please note that the documentation subpage should also be synced from the sandbox.
Also, the new template code requires creation of the maintenance category "Category:Template Retrieved errors", which should be concurrently created in order to trap fatal template errors.