// save settings
if( $wgRequest->getCheck( 'saveusergroups' ) ) {
$reason = $wgRequest->getVal( 'user-reason' );
- if( $wgUser->matchEditToken( $wgRequest->getVal( 'wpEditToken' ), $this->mTarget ) ) {
+ $tok = $wgRequest->getVal( 'wpEditToken' );
+ if( $wgUser->matchEditToken( $tok, $this->mTarget ) ) {
$this->saveUserGroups(
$this->mTarget,
$reason
);
+
+ global $wgOut;
+
+ $url = $this->getSuccessURL();
+ $wgOut->redirect( $url );
+ return;
}
}
}
$this->editUserGroupsForm( $this->mTarget );
}
}
+
+ function getSuccessURL() {
+ return $this->getTitle( $this->mTarget )->getFullURL();
+ }
/**
* Save user groups changes in the database.
* @return mixed User, UserRightsProxy, or null
*/
function fetchUser( $username ) {
- global $wgOut, $wgUser;
+ global $wgOut, $wgUser, $wgUserrightsInterwikiDelimiter;
- $parts = explode( '@', $username );
+ $parts = explode( $wgUserrightsInterwikiDelimiter, $username );
if( count( $parts ) < 2 ) {
$name = trim( $username );
$database = '';