$r .= $users;
$r .= $this->numberofWatchingusers( $block[0]->numberofWatchingusers );
+ $r .= '</td></tr>';
# Sub-entries
foreach ( $block as $rcObj ) {
try {
$container = $this->getContainer( $fullCont );
$prefix = ( $dir == '' ) ? null : "{$dir}/";
- $objects = array(); // list of unfiltered names or CF_Object items
+
+ // $objects will contain a list of unfiltered names or CF_Object items
// Non-recursive: only list files right under $dir
if ( !empty( $params['topOnly'] ) ) {
if ( !empty( $params['adviseStat'] ) ) {
/**
* Clean up the temporary file only after an object goes out of scope
*
- * @param Object $object
+ * @param stdClass $object
* @return TempFSFile This object
*/
public function bind( $object ) {
/**
* Lock a single resource key
*
- * @param array $path
+ * @param string $path
* @param int $type
* @return Status
*/
/**
* Unlock a single resource key
*
- * @param array $path
+ * @param string $path
* @param int $type
* @return Status
*/
$lockedByType[$type] = $paths;
} else {
// Release the subset of locks that were acquired
- foreach ( $lockedByType as $type => $paths ) {
- $status->merge( $this->doUnlock( $paths, $type ) );
+ foreach ( $lockedByType as $lType => $lPaths ) {
+ $status->merge( $this->doUnlock( $lPaths, $lType ) );
}
break;
}
? array_merge( $lockedPaths[$type], $paths )
: $paths;
} else {
- foreach ( $lockedPaths as $type => $paths ) {
- $status->merge( $this->doFreeLocksOnServer( $lockSrv, $paths, $type ) );
+ foreach ( $lockedPaths as $lType => $lPaths ) {
+ $status->merge( $this->doFreeLocksOnServer( $lockSrv, $lPaths, $lType ) );
}
break;
}
$status->fatal( 'lockmanager-fail-releaselock', $path );
}
- return;
+ return $status;
}
// Fetch all the existing lock records...
? array_merge( $lockedPaths[$type], $paths )
: $paths;
} else {
- foreach ( $lockedPaths as $type => $paths ) {
- $status->merge( $this->doFreeLocksOnServer( $lockSrv, $paths, $type ) );
+ foreach ( $lockedPaths as $lType => $lPaths ) {
+ $status->merge( $this->doFreeLocksOnServer( $lockSrv, $lPaths, $lType ) );
}
break;
}
$this->setHeaders();
# Anons don't get a watchlist
- $this->requireLogin( 'watchlistanontext', 'watchnologin' );
+ $this->requireLogin( 'watchlistanontext' );
$out = $this->getOutput();
$out = $this->getOutput();
$out->disallowUserJs(); # Prevent hijacked user scripts from sniffing passwords etc.
- $this->requireLogin( 'prefsnologintext2', 'prefsnologin' );
+ $this->requireLogin( 'prefsnologintext2' );
$this->checkReadOnly();
if ( $par == 'reset' ) {
$output = $this->getOutput();
# Anons don't get a watchlist
- $this->requireLogin( 'watchlistanontext', 'watchnologin' );
+ $this->requireLogin( 'watchlistanontext' );
// Check permissions
$this->checkPermissions();
<?php
if ( $this->data['usedomain'] ) {
- $doms = "";
+ $select = new XmlSelect( 'wpDomain', false, $this->data['domain'] );
+ $select->setAttribute( 'tabindex', 4 );
foreach ( $this->data['domainnames'] as $dom ) {
- $doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
+ $select->addOption( $dom );
}
?>
<div id="mw-user-domain-section">
<label for="wpDomain"><?php $this->msg( 'yourdomainname' ); ?></label>
<div class="mw-input">
- <select name="wpDomain" value="<?php $this->text( 'domain' ); ?>" tabindex="4">
- <?php echo $doms ?>
- </select>
+ <?php echo $select->getHTML(); ?>
</div>
</div>
<?php } ?>
<?php
if ( isset( $this->data['usedomain'] ) && $this->data['usedomain'] ) {
- $doms = "";
+ $select = new XmlSelect( 'wpDomain', false, $this->data['domain'] );
+ $select->setAttribute( 'tabindex', 3 );
foreach ( $this->data['domainnames'] as $dom ) {
- $doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
+ $select->addOption( $dom );
}
?>
<div id="mw-user-domain-section">
<label for='wpDomain'><?php $this->msg( 'yourdomainname' ); ?></label>
- <select name="wpDomain" value="<?php $this->text( 'domain' ); ?>" tabindex="3">
- <?php echo $doms; ?>
- </select>
+ <?php echo $select->getHTML(); ?>
</div>
<?php } ?>
'preferences-summary' => '', # do not translate or duplicate this message to other languages
'mypreferences' => 'Preferences',
'prefs-edits' => 'Number of edits:',
-'prefsnologin' => 'Not logged in',
'prefsnologintext2' => 'Please $1 to set user preferences.',
'changepassword' => 'Change password',
'changepassword-summary' => '', # do not translate or duplicate this message to other languages
* {{msg-mw|Tooltip-pt-preferences}}
{{Identical|Preferences}}',
'prefs-edits' => 'In user preferences.',
-'prefsnologin' => '{{Identical|Not logged in}}',
'prefsnologintext2' => 'Parameters:
* $1 - a link to [[Special:UserLogin]] with {{msg-mw|loginreqlink}} as link description',
'changepassword' => "Section heading on [[Special:Preferences]], tab 'User profile'.
prefixsearchdisabled
prefs
prefsection
-prefsnologin
prefsnologintext2
prefsubmit
preload
'preferences-summary',
'mypreferences',
'prefs-edits',
- 'prefsnologin',
'prefsnologintext2',
'changepassword',
'changepassword-summary',
div#column-one,
#colophon,
.mw-editsection,
+.mw-editsection-like,
.toctoggle,
.tochidden,
div#f-poweredbyico,
}
/* Display editsection links smaller and next to headings */
-.mw-editsection {
+.mw-editsection,
+.mw-editsection-like {
font-size: small;
font-weight: normal;
margin-left: 1em;
#jump-to-nav,
#footer,
.mw-editsection,
+.mw-editsection-like,
.noprint {
display: none;
}