Index: branches/REL1_17/extensions/ContactPage/SpecialContact.php |
— | — | @@ -50,23 +50,10 @@ |
51 | 51 | return; |
52 | 52 | } |
53 | 53 | |
54 | | - // Blocked users cannot use the contact form. |
55 | | - if ( !$wgUser->isAllowed( 'sendemail' ) ) { |
56 | | - $wgOut->setPageTitle( wfMsg( 'blockedtitle' ) ); |
57 | | - $wgOut->setRobotPolicy( 'noindex,nofollow' ); |
58 | | - $wgOut->setArticleRelated( false ); |
| 54 | + // Blocked users cannot use the contact form if they're disabled from sending email. |
| 55 | + if ( $wgUser->isBlockedFromEmailuser() ) { |
| 56 | + $wgOut->blockedPage(); |
59 | 57 | |
60 | | - $ip = wfGetIP(); |
61 | | - $blocker = User::whoIs( $wgUser->mBlock->mBy ); |
62 | | - $blockReason = $wgUser->mBlock->mReason; |
63 | | - |
64 | | - if ( strval( $blockReason ) === '' ) { |
65 | | - $blockReason = wfMsg( 'blockednoreason' ); |
66 | | - } |
67 | | - |
68 | | - $wgOut->addWikiMsg( 'blockedtext', $ip, $blockReason, $blocker ); |
69 | | - $wgOut->returnToMain( false ); |
70 | | - |
71 | 58 | return; |
72 | 59 | } |
73 | 60 | |
Index: branches/REL1_17/extensions/CodeReview/codereview.css |
— | — | @@ -12,6 +12,7 @@ |
13 | 13 | } |
14 | 14 | .TablePager_col_cr_message { |
15 | 15 | max-width: 20em; |
| 16 | + overflow: hidden; |
16 | 17 | } |
17 | 18 | |
18 | 19 | .TablePager_col_cr_timestamp { |
Index: branches/REL1_17/phase3/skins/Simple.php |
— | — | @@ -21,36 +21,31 @@ |
22 | 22 | var $skinname = 'simple', $stylename = 'simple', |
23 | 23 | $template = 'MonoBookTemplate', $useHeadElement = true; |
24 | 24 | |
25 | | - function setupSkinUserCss( OutputPage $out ){ |
| 25 | + function setupSkinUserCss( OutputPage $out ) { |
26 | 26 | parent::setupSkinUserCss( $out ); |
27 | 27 | |
28 | | - $out->addStyle( 'simple/main.css', 'screen' ); |
29 | | - } |
| 28 | + $out->addModuleStyles( 'skins.simple' ); |
30 | 29 | |
31 | | - function reallyGenerateUserStylesheet() { |
32 | | - global $wgUser; |
33 | | - $s = ''; |
34 | | - if( $wgUser->getOption( 'highlightbroken' ) ) { |
35 | | - $s .= "a.new, #quickbar a.new { text-decoration: line-through; }\n"; |
36 | | - } else { |
37 | | - $s .= <<<CSS |
38 | | -a.new, #quickbar a.new, |
39 | | -a.stub, #quickbar a.stub { |
40 | | - color: inherit; |
41 | | - text-decoration: inherit; |
42 | | -} |
43 | | -a.new:after, #quickbar a.new:after { |
44 | | - content: "?"; |
45 | | - color: #CC2200; |
46 | | - text-decoration: $underline; |
47 | | -} |
48 | | -a.stub:after, #quickbar a.stub:after { |
49 | | - content: "!"; |
50 | | - color: #772233; |
51 | | - text-decoration: $underline; |
52 | | -} |
53 | | -CSS; |
| 30 | + /* Add some userprefs specific CSS styling */ |
| 31 | + global $wgUser, $wgContLang; |
| 32 | + $rules = array(); |
| 33 | + $underline = ""; |
| 34 | + |
| 35 | + if ( $wgUser->getOption( 'underline' ) < 2 ) { |
| 36 | + $underline = "text-decoration: " . $wgUser->getOption( 'underline' ) ? 'underline' : 'none' . ";"; |
54 | 37 | } |
55 | | - return $s; |
| 38 | + |
| 39 | + /* Also inherits from resourceloader */ |
| 40 | + if( !$wgUser->getOption( 'highlightbroken' ) ) { |
| 41 | + $rules[] = "a.new, a.stub { color: inherit; text-decoration: inherit;}"; |
| 42 | + $rules[] = "a.new:after { color: #CC2200; $underline;}"; |
| 43 | + $rules[] = "a.stub:after { $underline; }"; |
| 44 | + } |
| 45 | + $style = implode( "\n", $rules ); |
| 46 | + if ( $wgContLang->getDir() === 'rtl' ) { |
| 47 | + $style = CSSJanus::transform( $style, true, false ); |
| 48 | + } |
| 49 | + $out->addInlineStyle( $style ); |
| 50 | + |
56 | 51 | } |
57 | 52 | } |
Index: branches/REL1_17/phase3/skins/common/shared.css |
— | — | @@ -100,12 +100,9 @@ |
101 | 101 | /** |
102 | 102 | * Forms |
103 | 103 | */ |
104 | | -body.ltr td.mw-label { text-align: right; } |
105 | | -body.ltr td.mw-input { text-align: left; } |
106 | | -body.ltr td.mw-submit { text-align: left; } |
107 | | -body.rtl td.mw-label { text-align: left; } |
108 | | -body.rtl td.mw-input { text-align: right; } |
109 | | -body.rtl td.mw-submit { text-align: right; } |
| 104 | +td.mw-label { text-align: right; } |
| 105 | +td.mw-input { text-align: left; } |
| 106 | +td.mw-submit { text-align: left; } |
110 | 107 | |
111 | 108 | td.mw-label { vertical-align: top; } |
112 | 109 | .prefsection td.mw-label { width: 20%; } |
— | — | @@ -127,12 +124,9 @@ |
128 | 125 | /** |
129 | 126 | * Image captions |
130 | 127 | */ |
131 | | -body.rtl .thumbcaption { text-align: right; } |
132 | | -body.rtl .magnify { float: left; } |
| 128 | +.thumbcaption { text-align: left; } |
| 129 | +.magnify { float: right; } |
133 | 130 | |
134 | | -body.ltr .thumbcaption { text-align: left; } |
135 | | -body.ltr .magnify { float: right; } |
136 | | - |
137 | 131 | /** |
138 | 132 | * Hidden categories |
139 | 133 | */ |
— | — | @@ -189,9 +183,6 @@ |
190 | 184 | float: left; |
191 | 185 | padding-left: 0.25em; |
192 | 186 | } |
193 | | -.rtl .mw-search-formheader div.search-types { |
194 | | - float: right; |
195 | | -} |
196 | 187 | .mw-search-formheader div.search-types ul { |
197 | 188 | margin: 0 !important; |
198 | 189 | padding: 0 !important; |
— | — | @@ -247,15 +238,9 @@ |
248 | 239 | margin: 0; |
249 | 240 | float: left; |
250 | 241 | } |
251 | | -.rtl fieldset#mw-searchoptions h4 { |
252 | | - float: right; |
253 | | -} |
254 | 242 | fieldset#mw-searchoptions div#mw-search-togglebox { |
255 | 243 | float: right; |
256 | 244 | } |
257 | | -.rtl fieldset#mw-searchoptions div#mw-search-togglebox { |
258 | | - float: left; |
259 | | -} |
260 | 245 | |
261 | 246 | fieldset#mw-searchoptions div#mw-search-togglebox label { |
262 | 247 | margin-right: 0.25em; |
— | — | @@ -270,15 +255,6 @@ |
271 | 256 | fieldset#mw-searchoptions table td { |
272 | 257 | padding-right: 1em; |
273 | 258 | } |
274 | | -.rtl fieldset#mw-searchoptions table td { |
275 | | - padding-left: 1em; |
276 | | - padding-right: 0; |
277 | | -} |
278 | | -body.rtl fieldset#mw-searchoptions table { |
279 | | - margin-right: 0; |
280 | | - margin-left: 3em; |
281 | | - float: right; |
282 | | -} |
283 | 259 | fieldset#mw-searchoptions div.divider { |
284 | 260 | clear: both; |
285 | 261 | border-bottom: 1px solid #DDDDDD; |
— | — | @@ -300,10 +276,6 @@ |
301 | 277 | margin-top: 2ex; |
302 | 278 | } |
303 | 279 | |
304 | | -.rtl div#mw-search-interwiki { |
305 | | - float: left; |
306 | | -} |
307 | | - |
308 | 280 | div#mw-search-interwiki li { |
309 | 281 | font-size: 95%; |
310 | 282 | } |
— | — | @@ -313,10 +285,6 @@ |
314 | 286 | font-size: 90%; |
315 | 287 | } |
316 | 288 | |
317 | | -.rtl .mw-search-interwiki-more { |
318 | | - float: left; |
319 | | -} |
320 | | - |
321 | 289 | div#mw-search-interwiki-caption { |
322 | 290 | text-align: center; |
323 | 291 | font-weight: bold; |
— | — | @@ -334,10 +302,6 @@ |
335 | 303 | border-top: 1px solid #BBBBBB; |
336 | 304 | } |
337 | 305 | |
338 | | -.rtl .mw-search-interwiki-project { |
339 | | - text-align: right; |
340 | | -} |
341 | | - |
342 | 306 | span.searchalttitle { |
343 | 307 | font-size: 95%; |
344 | 308 | } |
Property changes on: branches/REL1_17/phase3/skins/common/shared.css |
___________________________________________________________________ |
Modified: svn:mergeinfo |
345 | 309 | Merged /trunk/phase3/skins/common/shared.css:r80697,80755,80771,80773-80774,80779,80816,80833 |
Index: branches/REL1_17/phase3/skins/common/diff.css |
— | — | @@ -11,9 +11,6 @@ |
12 | 12 | td.diff-marker { |
13 | 13 | text-align: right; |
14 | 14 | } |
15 | | -.rtl td.diff-marker { |
16 | | - text-align: left; |
17 | | -} |
18 | 15 | td.diff-lineno { |
19 | 16 | font-weight: bold; |
20 | 17 | } |
Index: branches/REL1_17/phase3/includes/parser/Parser.php |
— | — | @@ -4207,7 +4207,6 @@ |
4208 | 4208 | */ |
4209 | 4209 | public function startExternalParse( &$title, $options, $outputType, $clearState = true ) { |
4210 | 4210 | $this->setTitle( $title ); |
4211 | | - $options->resetUsage(); |
4212 | 4211 | $this->mOptions = $options; |
4213 | 4212 | $this->setOutputType( $outputType ); |
4214 | 4213 | if ( $clearState ) { |
— | — | @@ -5082,7 +5081,6 @@ |
5083 | 5082 | $title = Title::newFromText( $title ); |
5084 | 5083 | } |
5085 | 5084 | $this->mTitle = $title; |
5086 | | - $options->resetUsage(); |
5087 | 5085 | $this->setOutputType( $outputType ); |
5088 | 5086 | $text = $this->replaceVariables( $text ); |
5089 | 5087 | $text = $this->mStripState->unstripBoth( $text ); |
Property changes on: branches/REL1_17/phase3/includes/parser/Parser.php |
___________________________________________________________________ |
Modified: svn:mergeinfo |
5090 | 5088 | Merged /trunk/phase3/includes/parser/Parser.php:r80697,80755,80771,80773-80774,80779,80816,80833 |
Index: branches/REL1_17/phase3/includes/OutputPage.php |
— | — | @@ -1368,10 +1368,12 @@ |
1369 | 1369 | * |
1370 | 1370 | * @param $header String: header name |
1371 | 1371 | * @param $option either an Array or null |
| 1372 | + * @fixme Document the $option parameter; it appears to be for |
| 1373 | + * X-Vary-Options but what format is acceptable? |
1372 | 1374 | */ |
1373 | 1375 | public function addVaryHeader( $header, $option = null ) { |
1374 | 1376 | if ( !array_key_exists( $header, $this->mVaryHeader ) ) { |
1375 | | - $this->mVaryHeader[$header] = $option; |
| 1377 | + $this->mVaryHeader[$header] = (array)$option; |
1376 | 1378 | } elseif( is_array( $option ) ) { |
1377 | 1379 | if( is_array( $this->mVaryHeader[$header] ) ) { |
1378 | 1380 | $this->mVaryHeader[$header] = array_merge( $this->mVaryHeader[$header], $option ); |
Property changes on: branches/REL1_17/phase3/includes/OutputPage.php |
___________________________________________________________________ |
Modified: svn:mergeinfo |
1379 | 1381 | Merged /trunk/phase3/includes/OutputPage.php:r80697,80755,80771,80773-80774,80779,80816,80833 |
Index: branches/REL1_17/phase3/includes/api/ApiQuery.php |
— | — | @@ -424,7 +424,7 @@ |
425 | 425 | ApiQueryBase::addTitleInfo( $vals, $title ); |
426 | 426 | $vals['special'] = ''; |
427 | 427 | if ( $title->getNamespace() == NS_SPECIAL && |
428 | | - !SpecialPage::exists( $title->getText() ) ) { |
| 428 | + !SpecialPage::exists( $title->getDbKey() ) ) { |
429 | 429 | $vals['missing'] = ''; |
430 | 430 | } elseif ( $title->getNamespace() == NS_MEDIA && |
431 | 431 | !wfFindFile( $title ) ) { |
Index: branches/REL1_17/phase3/includes/specials/SpecialSearch.php |
— | — | @@ -108,6 +108,8 @@ |
109 | 109 | if( !is_null( $t ) ) { |
110 | 110 | global $wgGoToEdit; |
111 | 111 | wfRunHooks( 'SpecialSearchNogomatch', array( &$t ) ); |
| 112 | + wfDebugLog( 'nogomatch', $t->getText(), false ); |
| 113 | + |
112 | 114 | # If the feature is enabled, go straight to the edit page |
113 | 115 | if( $wgGoToEdit ) { |
114 | 116 | $wgOut->redirect( $t->getFullURL( array( 'action' => 'edit' ) ) ); |
Property changes on: branches/REL1_17/phase3/includes/specials/SpecialSearch.php |
___________________________________________________________________ |
Modified: svn:mergeinfo |
115 | 117 | Merged /trunk/phase3/includes/specials/SpecialSearch.php:r80697,80755,80771,80773-80774,80779,80816,80833 |
Index: branches/REL1_17/phase3/resources/Resources.php |
— | — | @@ -14,6 +14,9 @@ |
15 | 15 | 'skins.vector' => array( |
16 | 16 | 'styles' => array( 'skins/vector/screen.css' => array( 'media' => 'screen' ) ) |
17 | 17 | ), |
| 18 | + 'skins.simple' => array( |
| 19 | + 'styles' => array( 'skins/simple/main.css' => array( 'media' => 'screen' ) ), |
| 20 | + ), |
18 | 21 | |
19 | 22 | /* jQuery */ |
20 | 23 | |