示例#1
0
 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));
 }