|
MediaWiki master
|
The HTML user interface for page editing. More...
Inherits MediaWiki\EditPage\IEditObject.

Public Member Functions | |
| __construct (Article $article) | |
| attemptSave (&$resultDetails=false) | |
| Attempt submission. | |
| edit () | |
| This is the function that gets called for "action=edit". | |
| getArticle () | |
| getCheckboxesDefinition ( $values) | |
| Return an array of field definitions. | |
| getCheckboxesWidget (&$tabindex, $values) | |
| Returns an array of fields for the edit form, including 'minor' and 'watch' checkboxes and any other added by extensions. | |
| getContext () | |
| getContextTitle () | |
| getEditButtons (&$tabindex) | |
| Returns an array of html code of the following buttons: save, diff and preview. | |
| getExpectedParentRevision () | |
| Returns the RevisionRecord corresponding to the revision that was current at the time editing was initiated on the client even if the edit was based on an old revision. | |
| getPreviewText () | |
| Get the rendered text for previewing. | |
| getTemplates () | |
| getTitle () | |
| importFormData ( $request=null) | |
| This function collects the form data and uses it to populate various member variables. | |
| makeTemplatesOnThisPageList (array $templates) | |
| Wrapper around TemplatesOnThisPageFormatter to make a "templates on this page" list. | |
| maybeActivateTempUserCreate ( $doAcquire) | |
| Check the configuration and current user and enable automatic temporary user creation if possible. | |
| setApiEditOverride (bool $enableOverride) | |
| Allow editing of content that supports API direct editing, but not general direct editing. | |
| setContextTitle ( $title) | |
| setEditConflictHelperFactory (callable $factory) | |
| setHeaders () | |
| showDiff () | |
| Get a diff between the current contents of the edit box and the version of the page we're editing from. | |
| showEditForm () | |
| Send the edit form and related headers to OutputPage. | |
| spamPageWithContent ( $match=false) | |
| Show "your edit contains spam" page with your diff and text. | |
Static Public Member Functions | |
| static | getCopyrightWarning (PageReference $page, string $format, MessageLocalizer $localizer) |
| Get the copyright warning. | |
| static | getEditToolbar () |
| Allow extensions to provide a toolbar. | |
| static | getPreviewLimitReport (?ParserOutput $output=null) |
| Get the Limit report for page previews. | |
Public Attributes | |
| string | $contentFormat = null |
| string | $contentModel |
| bool | $didSave = false |
| Should be set to true whenever an article was successfully altered. | |
| string | $editFormPageTop = '' |
| Before even the preview. | |
| string | $editFormTextAfterContent = '' |
| string | $editFormTextAfterTools = '' |
| string | $editFormTextAfterWarn = '' |
| string | $editFormTextBeforeContent = '' |
| string | $editFormTextBottom = '' |
| string | $editFormTextTop = '' |
| string | $edittime = '' |
| Timestamp of the latest revision of the page when editing was initiated on the client. | |
| bool | $firsttime |
| True the first time the edit form is rendered, false after re-rendering with diff, save prompts, etc. | |
| string | $formtype |
| bool | $isConflict = false |
| Whether an edit conflict needs to be resolved. | |
| bool | $mShowSummaryField = true |
| int | $oldid = 0 |
| Revision ID the edit is based on, or 0 if it's the latest revision. | |
| bool | $preview = false |
| string | $previewTextAfterContent = '' |
| bool | $save = false |
| string | $section = '' |
| string | $sectiontitle = null |
| string | $starttime = '' |
| Timestamp from the first time the edit form was rendered. | |
| string | $summary = '' |
| bool | $suppressIntro = false |
| string | $textbox1 = '' |
| Page content input field. | |
| int | $undidRev = 0 |
| const | EDITFORM_ID = 'editform' |
| HTML id and name for the beginning of the edit form. | |
| const | POST_EDIT_COOKIE_DURATION = 1200 |
| Duration of PostEdit cookie, in seconds. | |
| const | POST_EDIT_COOKIE_KEY_PREFIX = 'PostEditRevision' |
| Prefix of key for cookie used to pass post-edit state. | |
| const | UNICODE_CHECK = 'β³π²β₯πππΎπΈβ΄πΉβ―' |
| Used for Unicode support checks. | |
Public Attributes inherited from MediaWiki\EditPage\IEditObject | |
| const | AS_ARTICLE_WAS_DELETED = 222 |
| Status: article was deleted while editing and wpRecreate == false or form was not posted. | |
| const | AS_BLANK_ARTICLE = 224 |
| Status: user tried to create a blank page and wpIgnoreBlankArticle == false. | |
| const | AS_BLOCKED_PAGE_FOR_USER = 215 |
| Status: User is blocked from editing this page. | |
| const | AS_BROKEN_REDIRECT = 244 |
| Status: user tried to create a redirect to a nonexistent page. | |
| const | AS_CHANGE_TAG_ERROR = 237 |
| Status: an error relating to change tagging. | |
| const | AS_CONFLICT_DETECTED = 225 |
| Status: (non-resolvable) edit conflict. | |
| const | AS_CONTENT_TOO_BIG = 216 |
| Status: Content too big (> $wgMaxArticleSize) | |
| const | AS_DOUBLE_REDIRECT = 245 |
| Status: user tried to create a redirect to another redirect. | |
| const | AS_DOUBLE_REDIRECT_LOOP = 246 |
| Status: user tried to create a redirect to another redirect that is pointing to the current page. | |
| const | AS_END = 231 |
| Status: WikiPage::doEdit() was unsuccessful. | |
| const | AS_HOOK_ERROR = 210 |
| Status: Article update aborted by a hook function. | |
| const | AS_HOOK_ERROR_EXPECTED = 212 |
| Status: A hook function returned an error. | |
| const | AS_IMAGE_REDIRECT_ANON = 233 |
| Status: anonymous user is not allowed to upload (User::isAllowed('upload') == false) | |
| const | AS_IMAGE_REDIRECT_LOGGED = 234 |
| Status: logged in user is not allowed to upload (User::isAllowed('upload') == false) | |
| const | AS_INVALID_REDIRECT_TARGET = 247 |
| Status: user tried to create a redirect to an invalid redirect target. | |
| const | AS_MAX_ARTICLE_SIZE_EXCEEDED = 229 |
| Status: article is too big (> $wgMaxArticleSize), after merging in the new section. | |
| const | AS_NO_CHANGE_CONTENT_MODEL = 235 |
| Status: user tried to modify the content model, but is not allowed to do that ( User::isAllowed('editcontentmodel') == false ) | |
| const | AS_NO_CREATE_PERMISSION = 223 |
| Status: user tried to create this page, but is not allowed to do that. | |
| const | AS_PARSE_ERROR = 240 |
| Status: can't parse content. | |
| const | AS_RATE_LIMITED = 221 |
| Status: rate limiter for action 'edit' was tripped. | |
| const | AS_READ_ONLY_PAGE = 220 |
| Status: wiki is in readonly mode (ReadOnlyMode::isReadOnly() == true) | |
| const | AS_READ_ONLY_PAGE_ANON = 218 |
| Status: this anonymous user is not allowed to edit this page. | |
| const | AS_READ_ONLY_PAGE_LOGGED = 219 |
| Status: this logged in user is not allowed to edit this page. | |
| const | AS_REVISION_MISSING = 248 |
| Status: user tried to edit a revision that went missing. | |
| const | AS_REVISION_WAS_DELETED = 217 |
| Status: revision x was deleted while editing (?action=edit&oldid=x) | |
| const | AS_SELF_REDIRECT = 236 |
| Status: user tried to create self-redirect and wpIgnoreSelfRedirect is false. | |
| const | AS_SPAM_ERROR = 232 |
| Status: summary contained spam according to one of the regexes in $wgSummarySpamRegex. | |
| const | AS_SUCCESS_NEW_ARTICLE = 201 |
| Status: Article successfully created. | |
| const | AS_SUCCESS_UPDATE = 200 |
| Status: Article successfully updated. | |
| const | AS_SUMMARY_NEEDED = 226 |
| Status: no edit summary given and the user has forceeditsummary set and the user is not editing in their own userspace or talkspace and wpIgnoreBlankSummary == false. | |
| const | AS_TEXTBOX_EMPTY = 228 |
| Status: user tried to create a new section without content. | |
| const | AS_UNABLE_TO_ACQUIRE_TEMP_ACCOUNT = 243 |
| Status: edit rejected because server was unable to acquire a temporary account name for this user. | |
| const | AS_UNICODE_NOT_SUPPORTED = 242 |
| Status: edit rejected because browser doesn't support Unicode. | |
Protected Member Functions | |
| doPreviewParse (Content $content) | |
| Parse the page for a preview. | |
| getActionURL (Title $title) | |
| Returns the URL to use in the form's action attribute. | |
| getContentObject ( $defaultContent=null) | |
| getCurrentContent () | |
| Get the current content of the page. | |
| getPreviewParserOptions () | |
| Get parser options for a preview. | |
| handleRetrievedData (array $data) | |
| Overriden for DataStashTrait. | |
| importContentFormData (&$request) | |
| Subpage overridable method for extracting the page content data from the posted form to be placed in $this->textbox1, if using customized input this method should be overridden and return the page text that will be used for saving, preview parsing and so on... | |
| previewOnOpen () | |
| Should we show a preview when the edit form is first shown? | |
| showContentForm () | |
| Subpage overridable method for printing the form for page content editing By default this simply outputs wpTextbox1 Subclasses can override this to provide a custom UI for editing; be it a form, or simply wpTextbox1 with a modified content that will be reverse modified when extracted from the post data. | |
| showFormAfterText () | |
| showStandardInputs (int &$tabindex=2) | |
| showTextbox (string $text, string $name, array $customAttribs=[]) | |
| toEditContent ( $text) | |
| Turns the given text into a Content object by unserializing it. | |
Protected Attributes | |
| DerivativeContext | $context |
The HTML user interface for page editing.
This was originally split from the Article class, with some database and text munging logic still partly there.
EditPage cares about two distinct titles:
These are usually the same, but they are now allowed to be different.
Surgeon General's Warning: prolonged exposure to this class is known to cause headaches, which may be fatal.
Definition at line 131 of file EditPage.php.
| MediaWiki\EditPage\EditPage::__construct | ( | Article | $article | ) |
| Article | $article |
Definition at line 420 of file EditPage.php.
References MediaWiki\MainConfigNames\EnableWatchlistLabels, MediaWiki\Config\Config\get(), MediaWiki\EditPage\EditPage\getContext(), MediaWiki\Page\Article\getContext(), MediaWiki\MediaWikiServices\getInstance(), MediaWiki\Page\Article\getPage(), MediaWiki\EditPage\EditPage\getTitle(), and MediaWiki\MainConfigNames\WatchlistExpiry.
| MediaWiki\EditPage\EditPage::attemptSave | ( | & | $resultDetails = false | ) |
Attempt submission.
| array | false | &$resultDetails | See docs for $result in internalAttemptSave |
| UserBlockedError|ReadOnlyError|ThrottledError|PermissionsError |
Definition at line 1753 of file EditPage.php.
|
protected |
Parse the page for a preview.
Subclasses may override this class, in order to parse with different options, or to otherwise modify the preview HTML.
| Content | $content | The page content |
Definition at line 3454 of file EditPage.php.
| MediaWiki\EditPage\EditPage::edit | ( | ) |
This is the function that gets called for "action=edit".
It sets up various member variables, then passes execution to another function, usually showEditForm()
The edit form is self-submitting, so that when things like preview and edit conflicts occur, we get the same form back with the extra stuff added. Only when the final submission is made and all is well do we actually save and redirect to the newly-edited page.
Definition at line 544 of file EditPage.php.
References MediaWiki\EditPage\destroyStashedData(), MediaWiki\EditPage\doReauthRedirect(), MediaWiki\EditPage\enableReauthPopup(), MediaWiki\EditPage\getTitle(), MediaWiki\EditPage\retrieveStashedData(), MediaWiki\EditPage\setStashKey(), MediaWiki\EditPage\stashDataOnPost(), and wfDebug().
|
protected |
Returns the URL to use in the form's action attribute.
This is used by EditPage subclasses when simply customizing the action variable in the constructor is not enough. This can be used when the EditPage lives inside of a Special page rather than a custom page action.
| Title | $title | Title object for which is being edited (where we go to for &action= links) |
Definition at line 3226 of file EditPage.php.
References $request, and MediaWiki\Title\Title\getLocalURL().
| MediaWiki\EditPage\EditPage::getArticle | ( | ) |
Definition at line 471 of file EditPage.php.
| MediaWiki\EditPage\EditPage::getCheckboxesDefinition | ( | $values | ) |
Return an array of field definitions.
Despite the name, not only checkboxes are supported.
Array keys correspond to the <input> 'name' attribute to use for each field.
Array values are associative arrays with the following keys:
<input><label><label>| array<string,mixed> | $values Map of field names (matching the 'legacy-name') to current field values. For checkboxes, the value is a bool that indicates the checked status of the checkbox. |
Definition at line 3548 of file EditPage.php.
| MediaWiki\EditPage\EditPage::getCheckboxesWidget | ( | & | $tabindex, |
| $values ) |
Returns an array of fields for the edit form, including 'minor' and 'watch' checkboxes and any other added by extensions.
Despite the name, not only checkboxes are supported.
| int | &$tabindex | Current tabindex |
| array<string,mixed> | $values Map of field names to current field values. For checkboxes, the value is a bool that indicates the checked status of the checkbox. |
Definition at line 3661 of file EditPage.php.
|
protected |
| Content | null | $defaultContent | The default value to return |
Definition at line 1448 of file EditPage.php.
References $request, and MediaWiki\EditPage\getTitle().
| MediaWiki\EditPage\EditPage::getContext | ( | ) |
Definition at line 479 of file EditPage.php.
References MediaWiki\EditPage\EditPage\$context.
Referenced by MediaWiki\EditPage\EditPage\__construct().
| MediaWiki\EditPage\EditPage::getContextTitle | ( | ) |
| RuntimeException | if no context title was set |
Definition at line 502 of file EditPage.php.
|
static |
Get the copyright warning.
| PageReference | $page | |
| string | $format | Output format, valid values are any function of a Message object (e.g. 'parse', 'plain') |
| MessageLocalizer | $localizer |
Definition at line 3011 of file EditPage.php.
References MediaWiki\Language\MessageLocalizer\msg().
|
protected |
Get the current content of the page.
This is basically similar to WikiPage::getContent( RevisionRecord::RAW ) except that when the page doesn't exist an empty content object is returned instead of null.
Definition at line 1698 of file EditPage.php.
| MediaWiki\EditPage\EditPage::getEditButtons | ( | & | $tabindex | ) |
Returns an array of html code of the following buttons: save, diff and preview.
| int | &$tabindex | Current tabindex |
Definition at line 3806 of file EditPage.php.
|
static |
Allow extensions to provide a toolbar.
Definition at line 3511 of file EditPage.php.
| MediaWiki\EditPage\EditPage::getExpectedParentRevision | ( | ) |
Returns the RevisionRecord corresponding to the revision that was current at the time editing was initiated on the client even if the edit was based on an old revision.
Definition at line 2156 of file EditPage.php.
|
static |
Get the Limit report for page previews.
| ParserOutput | null | $output | ParserOutput object from the parse |
Definition at line 3044 of file EditPage.php.
|
protected |
Get parser options for a preview.
Definition at line 3430 of file EditPage.php.
| MediaWiki\EditPage\EditPage::getPreviewText | ( | ) |
Get the rendered text for previewing.
| NotDirectlyEditableException |
Definition at line 3250 of file EditPage.php.
References CONTENT_MODEL_CSS, CONTENT_MODEL_JAVASCRIPT, CONTENT_MODEL_JSON, CONTENT_MODEL_VUE, MediaWiki\EditPage\getTitle(), MediaWiki\EditPage\Constraint\EditConstraintFactory\newRedirectConstraint(), and NS_MAIN.
| MediaWiki\EditPage\EditPage::getTemplates | ( | ) |
Definition at line 3490 of file EditPage.php.
References MediaWiki\EditPage\getTitle().
| MediaWiki\EditPage\EditPage::getTitle | ( | ) |
Definition at line 487 of file EditPage.php.
Referenced by MediaWiki\EditPage\EditPage\__construct().
|
protected |
Overriden for DataStashTrait.
Definition at line 522 of file EditPage.php.
|
protected |
Subpage overridable method for extracting the page content data from the posted form to be placed in $this->textbox1, if using customized input this method should be overridden and return the page text that will be used for saving, preview parsing and so on...
| WebRequest | &$request |
Definition at line 1368 of file EditPage.php.
| MediaWiki\EditPage\EditPage::importFormData | ( | $request = null | ) |
This function collects the form data and uses it to populate various member variables.
| WebRequest | null | $request | Supplying this parameter is deprecated since 1.47. |
| ErrorPageError |
Definition at line 1092 of file EditPage.php.
References $request, wfDebug(), wfDeprecated(), wfEscapeWikiText(), and wfTimestampNow().
| MediaWiki\EditPage\EditPage::makeTemplatesOnThisPageList | ( | array | $templates | ) |
Wrapper around TemplatesOnThisPageFormatter to make a "templates on this page" list.
| PageIdentity[] | $templates |
Definition at line 2586 of file EditPage.php.
| MediaWiki\EditPage\EditPage::maybeActivateTempUserCreate | ( | $doAcquire | ) |
Check the configuration and current user and enable automatic temporary user creation if possible.
| bool | $doAcquire | Whether to acquire a name for the temporary account |
Definition at line 758 of file EditPage.php.
|
protected |
Should we show a preview when the edit form is first shown?
Definition at line 1031 of file EditPage.php.
References $request.
| MediaWiki\EditPage\EditPage::setApiEditOverride | ( | bool | $enableOverride | ) |
Allow editing of content that supports API direct editing, but not general direct editing.
Set to false by default.
Definition at line 515 of file EditPage.php.
| MediaWiki\EditPage\EditPage::setContextTitle | ( | $title | ) |
| Title | null | $title |
Definition at line 494 of file EditPage.php.
| MediaWiki\EditPage\EditPage::setEditConflictHelperFactory | ( | callable | $factory | ) |
| callable | $factory | Factory function to create a { |
Definition at line 3953 of file EditPage.php.
| MediaWiki\EditPage\EditPage::setHeaders | ( | ) |
Definition at line 2164 of file EditPage.php.
|
protected |
Subpage overridable method for printing the form for page content editing By default this simply outputs wpTextbox1 Subclasses can override this to provide a custom UI for editing; be it a form, or simply wpTextbox1 with a modified content that will be reverse modified when extracted from the post data.
Note that this is basically the inverse for importContentFormData
Definition at line 2811 of file EditPage.php.
| MediaWiki\EditPage\EditPage::showDiff | ( | ) |
Get a diff between the current contents of the edit box and the version of the page we're editing from.
If this is a section edit, we'll replace the section as for final save and then make a comparison.
Definition at line 2910 of file EditPage.php.
References MediaWiki\EditPage\getTitle().
| MediaWiki\EditPage\EditPage::showEditForm | ( | ) |
Send the edit form and related headers to OutputPage.
Definition at line 2337 of file EditPage.php.
References MediaWiki\EditPage\TextConflictHelper\getEditConflictMainTextBox(), MediaWiki\EditPage\TextConflictHelper\getEditFormHtmlAfterContent(), MediaWiki\EditPage\TextConflictHelper\getEditFormHtmlBeforeContent(), MediaWiki\EditPage\getTitle(), MediaWiki\EditPage\TextConflictHelper\setContentFormat(), MediaWiki\EditPage\TextConflictHelper\setContentModel(), and MediaWiki\EditPage\TextConflictHelper\setTextboxes().
|
protected |
Definition at line 2783 of file EditPage.php.
|
protected |
Definition at line 3105 of file EditPage.php.
|
protected |
Definition at line 2836 of file EditPage.php.
| MediaWiki\EditPage\EditPage::spamPageWithContent | ( | $match = false | ) |
Show "your edit contains spam" page with your diff and text.
| string | array | false | $match | Text (or array of texts) which triggered one or more filters |
Definition at line 3895 of file EditPage.php.
References wfEscapeWikiText().
|
protected |
Turns the given text into a Content object by unserializing it.
If the resulting Content object is not of a type that can be edited using the text base EditPage, an exception will be raised. Set $this->enableApiEditOverride to true to allow editing of non-textual content.
| string | null | false | $text | Text to unserialize |
| NotDirectlyEditableException | If unserializing the text results in a Content object that is not an instance of TextContent and $this->enableApiEditOverride is not true. |
Definition at line 2310 of file EditPage.php.
References MediaWiki\EditPage\getTitle().
| string MediaWiki\EditPage\EditPage::$contentFormat = null |
Definition at line 318 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$contentModel |
Definition at line 316 of file EditPage.php.
|
protected |
Definition at line 356 of file EditPage.php.
Referenced by MediaWiki\EditPage\EditPage\getContext().
| bool MediaWiki\EditPage\EditPage::$didSave = false |
Should be set to true whenever an article was successfully altered.
Definition at line 343 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormPageTop = '' |
Before even the preview.
Definition at line 326 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormTextAfterContent = '' |
Definition at line 338 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormTextAfterTools = '' |
Definition at line 334 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormTextAfterWarn = '' |
Definition at line 332 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormTextBeforeContent = '' |
Definition at line 330 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormTextBottom = '' |
Definition at line 336 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$editFormTextTop = '' |
Definition at line 328 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$edittime = '' |
Timestamp of the latest revision of the page when editing was initiated on the client.
Definition at line 271 of file EditPage.php.
| bool MediaWiki\EditPage\EditPage::$firsttime |
True the first time the edit form is rendered, false after re-rendering with diff, save prompts, etc.
Definition at line 196 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$formtype |
Definition at line 190 of file EditPage.php.
| bool MediaWiki\EditPage\EditPage::$isConflict = false |
Whether an edit conflict needs to be resolved.
Detected based on whether $editRevId is different than the latest revision. When a conflict has successfully been resolved by a 3-way-merge, this field is set to false.
Definition at line 184 of file EditPage.php.
| bool MediaWiki\EditPage\EditPage::$mShowSummaryField = true |
Definition at line 227 of file EditPage.php.
| int MediaWiki\EditPage\EditPage::$oldid = 0 |
Revision ID the edit is based on, or 0 if it's the latest revision.
FIXME: This isn't used in conflict resolution–provide a better justification or merge with parentRevId.
Definition at line 302 of file EditPage.php.
| bool MediaWiki\EditPage\EditPage::$preview = false |
Definition at line 233 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$previewTextAfterContent = '' |
Definition at line 340 of file EditPage.php.
| bool MediaWiki\EditPage\EditPage::$save = false |
Definition at line 231 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$section = '' |
Definition at line 287 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$sectiontitle = null |
Definition at line 289 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$starttime = '' |
Timestamp from the first time the edit form was rendered.
Definition at line 294 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$summary = '' |
Definition at line 262 of file EditPage.php.
| bool MediaWiki\EditPage\EditPage::$suppressIntro = false |
Definition at line 347 of file EditPage.php.
| string MediaWiki\EditPage\EditPage::$textbox1 = '' |
Page content input field.
Definition at line 260 of file EditPage.php.
| int MediaWiki\EditPage\EditPage::$undidRev = 0 |
Definition at line 344 of file EditPage.php.
| const MediaWiki\EditPage\EditPage::EDITFORM_ID = 'editform' |
HTML id and name for the beginning of the edit form.
Definition at line 143 of file EditPage.php.
| const MediaWiki\EditPage\EditPage::POST_EDIT_COOKIE_DURATION = 1200 |
Duration of PostEdit cookie, in seconds.
The cookie will be removed on the next page view of this article (Article::view()).
Otherwise, though, we don't want the cookies to accumulate. RFC 2109 ( https://www.ietf.org/rfc/rfc2109.txt ) specifies a possible limit of only 20 cookies per domain. This still applies at least to some versions of IE without full updates: https://blogs.msdn.com/b/ieinternals/archive/2009/08/20/wininet-ie-cookie-internals-faq.aspx
A value of 20 minutes should be enough to take into account slow loads and minor clock skew while still avoiding cookie accumulation when JavaScript is turned off.
Some say this is too long (T211233), others say it is too short (T289538). The same value is used for client-side post-edit storage (in mediawiki.action.view.postEdit).
Definition at line 167 of file EditPage.php.
| const MediaWiki\EditPage\EditPage::POST_EDIT_COOKIE_KEY_PREFIX = 'PostEditRevision' |
Prefix of key for cookie used to pass post-edit state.
The revision id edited is added after this
Definition at line 149 of file EditPage.php.
| const MediaWiki\EditPage\EditPage::UNICODE_CHECK = 'β³π²β₯πππΎπΈβ΄πΉβ―' |
Used for Unicode support checks.
Definition at line 138 of file EditPage.php.