public static function doNamespaceRestriction($uid, $user) { global $wgUser, $wgRequest; $r = new UserRestriction(); $r->setType(UserRestriction::NAMESPACE); $r->setNamespace($wgRequest->getVal('namespace')); $r->setSubjectId($uid); $r->setSubjectText($user); $r->setBlockerId($wgUser->getId()); $r->setBlockerText($wgUser->getName()); $r->setReason($wgRequest->getVal('reason')); $r->setExpiry(UserRestriction::convertExpiry($wgRequest->getVal('expiry'))); $r->setTimestamp(wfTimestampNow(TS_MW)); $r->commit(); $logExpiry = $wgRequest->getVal('expiry') ? $wgRequest->getVal('expiry') : Block::infinity(); $l = new LogPage('restrict'); $l->addEntry('restrict', Title::makeTitle(NS_USER, $user), $r->getReason(), array($r->getType(), $r->getNamespace(), $logExpiry)); }