From 8f9e8b3f0eac01d9fb99bfbea8f9675c05acd073 Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Wed, 8 May 2019 13:32:19 -0700 Subject: [PATCH] Make powersearch form use POST if JS is disabled This means that the rememberme checkbox will not result in DB writes on HTTP GET. If JS is enabled, it becomes GET initially. Bug: T151903 Change-Id: If700ba9d6d1fe582d3d7c5660fcefd6d2639e4ee --- includes/widget/search/SearchFormWidget.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/includes/widget/search/SearchFormWidget.php b/includes/widget/search/SearchFormWidget.php index 66b65667c2..7c28b5efe7 100644 --- a/includes/widget/search/SearchFormWidget.php +++ b/includes/widget/search/SearchFormWidget.php @@ -50,12 +50,15 @@ class SearchFormWidget { $offset, $isPowerSearch ) { + $user = $this->specialSearch->getUser(); + return '
' . Xml::openElement( 'form', [ 'id' => $isPowerSearch ? 'powersearch' : 'search', - 'method' => 'get', + // T151903: default to POST in case JS is disabled + 'method' => ( $isPowerSearch && $user->isLoggedIn() ) ? 'post' : 'get', 'action' => wfScript(), ] ) . -- 2.20.1