コード例 #1
0
ファイル: Rules.php プロジェクト: jackblackjack/sociochat
 public static function cityPattern()
 {
     return function ($val) {
         $name = trim($val);
         if (!$name) {
             return true;
         }
         $name = RudeFilter::parse($name);
         $pattern = "~^([A-Za-zА-Яа-я- ]+)\$~uis";
         if (preg_match($pattern, $name)) {
             return mb_strlen($name) <= 50;
         }
     };
 }
コード例 #2
0
 private function sendPublic(UserCollection $clients, User $user, $msg, $isSelf)
 {
     $props = $user->getProperties();
     $filteredMsg = RudeFilter::parse($msg);
     if (mb_strlen($filteredMsg) != mb_strlen($msg)) {
         $props->setRudeCount($props->getRudeCount() + 1);
     }
     $props->setWordsCount($props->getWordsCount() + mb_substr_count($msg, ' ') + 1);
     $response = (new MessageResponse())->setMsg(Msg::create($msg))->setFilteredMsg(Msg::create($filteredMsg))->setTime(null)->setChannelId($user->getChannelId());
     if (!$isSelf) {
         $response->setFrom($user);
     }
     $clients->setResponse($response)->notify();
 }