r108454 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r108453‎ | r108454 | r108455 >
Date:18:45, 9 January 2012
Author:bsitu
Status:resolved (Comments)
Tags:
Comment:
followup to -r108187 - Checking isset instead of 1/0 for checkbox, adding myresponse/showunanswered to query parameter
Modified paths:
  • /trunk/extensions/MoodBar/ApiQueryMoodBarComments.php (modified) (history)
  • /trunk/extensions/MoodBar/SpecialFeedbackDashboard.php (modified) (history)
  • /trunk/extensions/MoodBar/modules/ext.moodBar.dashboard/ext.moodBar.dashboard.js (modified) (history)

Diff [purge]

Index: trunk/extensions/MoodBar/SpecialFeedbackDashboard.php
@@ -51,9 +51,9 @@
5252 }
5353
5454 // UI should allow users to select one or none
55 - if ( $wgRequest->getVal( 'myresponse' ) == '1' ) {
 55+ if ( $wgRequest->getCheck( 'myresponse' ) ) {
5656 $filters['responsefilter'] = 'myresponse';
57 - } elseif ( $wgRequest->getVal( 'showunanswered' ) == '1' ) {
 57+ } elseif ( $wgRequest->getCheck( 'showunanswered' ) ) {
5858 $filters['responsefilter'] = 'showunanswered';
5959 }
6060 }
@@ -334,7 +334,7 @@
335335 }
336336 }
337337 //only show response elements if feedback is not hidden, and user is logged in
338 - else if ( $showResponseBox && $feedbackItem->getProperty('hidden-state') == false
 338+ elseif ( $showResponseBox && $feedbackItem->getProperty('hidden-state') == false
339339 && !$wgUser->isAnon() ) {
340340 //$respondToThis = "<span>".wfMessage('moodbar-respond-collapsed')->escaped().'</span> '.wfMessage("moodbar-respond-text")->escaped();
341341 $respondToThis = '<span class="fbd-item-response-collapsed"></span> '.wfMessage("moodbar-respond-text")->escaped();
@@ -675,6 +675,14 @@
676676 'username' => $wgRequest->getVal( 'username' ),
677677 'offset' => $offset,
678678 );
 679+
 680+ if ( $wgRequest->getCheck( 'myresponse' ) ) {
 681+ $query['myresponse'] = $wgRequest->getVal( 'myresponse' );
 682+ }
 683+ elseif ( $wgRequest->getCheck( 'showunanswered' ) ) {
 684+ $query['showunanswered'] = $wgRequest->getVal( 'showunanswered' ) ;
 685+ }
 686+
679687 if ( $backwards ) {
680688 $query['dir'] = 'prev';
681689 }
Index: trunk/extensions/MoodBar/ApiQueryMoodBarComments.php
@@ -39,14 +39,14 @@
4040 $this->addOption( 'LIMIT', $params['limit'] + 1 );
4141
4242
43 - if ( $params['myresponse'] == '1' ) {
 43+ if ( isset( $params['myresponse'] ) ) {
4444 if ( !$wgUser->isAnon() ) {
4545 $this->addTables( array( 'moodbar_feedback_response' ) );
4646 $this->addJoinConds( array( 'moodbar_feedback_response' => array( 'INNER JOIN', 'mbf_id=mbfr_mbf_id' ) ) );
4747 $this->addWhereFld( 'mbfr_user_id', $wgUser->getId() );
4848 $this->addOption( 'GROUP BY', 'mbf_id' );
4949 }
50 - } elseif ( $params['showunanswered'] == '1' ) {
 50+ } elseif ( isset( $params['showunanswered'] ) ) {
5151 $this->addTables( array( 'moodbar_feedback_response' ) );
5252 $this->addJoinConds( array( 'moodbar_feedback_response' => array( 'LEFT JOIN', 'mbf_id=mbfr_mbf_id' ) ) );
5353 $this->addWhere( array( 'mbfr_id' => null ) );
@@ -170,12 +170,8 @@
171171 'user' => array(
172172 ApiBase::PARAM_TYPE => 'user',
173173 ),
174 - 'myresponse' => array(
175 - ApiBase::PARAM_TYPE => array( '1', '0' ),
176 - ),
177 - 'showunanswered' => array(
178 - ApiBase::PARAM_TYPE => array( '1', '0' ),
179 - ),
 174+ 'myresponse' => null,
 175+ 'showunanswered' => null,
180176 'prop' => array(
181177 ApiBase::PARAM_TYPE => array( 'metadata', 'formatted', 'hidden' ),
182178 ApiBase::PARAM_DFLT => 'metadata',
Index: trunk/extensions/MoodBar/modules/ext.moodBar.dashboard/ext.moodBar.dashboard.js
@@ -5,7 +5,7 @@
66 /**
77 * Saved form state
88 */
9 - var formState = { types: [], username: '', myresponse: '0', showunanswered: '0' };
 9+ var formState = { types: [], username: '', myresponse: null, showunanswered: null };
1010
1111 /**
1212 * Save the current form state to formState
@@ -13,8 +13,8 @@
1414 function saveFormState() {
1515 formState.types = getSelectedTypes();
1616 formState.username = $( '#fbd-filters-username' ).val();
17 - formState.myresponse = $( '#fbd-filters-my-response' ).prop( 'checked' ) ? $( '#fbd-filters-my-response' ).val() : '0';
18 - formState.showunanswered = $( '#fbd-filters-show-unanswered' ).prop( 'checked' ) ? $( '#fbd-filters-show-unanswered' ).val() : '0';
 17+ formState.myresponse = $( '#fbd-filters-my-response' ).prop( 'checked' ) ? $( '#fbd-filters-my-response' ).val() : null;
 18+ formState.showunanswered = $( '#fbd-filters-show-unanswered' ).prop( 'checked' ) ? $( '#fbd-filters-show-unanswered' ).val() : null;
1919 }
2020
2121 /**
@@ -133,10 +133,10 @@
134134 if ( formState.username.length ) {
135135 reqData.mbcuser = formState.username;
136136 }
137 - if ( formState.myresponse != '0' ) {
 137+ if ( formState.myresponse ) {
138138 reqData.mbcmyresponse = formState.myresponse;
139139 }
140 - if ( formState.showunanswered != '0' ) {
 140+ if ( formState.showunanswered ) {
141141 reqData.mbcshowunanswered = formState.showunanswered;
142142 }
143143

Follow-up revisions

RevisionCommit summaryAuthorDate
r108536followup to -r108454 - define checkbox with default false value and remove is...bsitu19:43, 10 January 2012

Past revisions this follows-up on

RevisionCommit summaryAuthorDate
r108187Adding "Show unanswered" filter to feedback dashboardbsitu00:05, 6 January 2012

Comments

#Comment by Catrope (talk | contribs)   18:32, 10 January 2012
+		if ( isset( $params['myresponse'] ) ) {

Don't do it this way. Instead, define the parameters as booleans (with 'myresponse' => false, as the parameter definition), then use if( $params['myresponse'] ) { .

Status & tagging log