/** * Someone requested chat stuff. * @param Module_Chat $module * @return unknown_type */ public static function onRequest(Module_Chat $module) { // GWF_ChatMsg::cleanupTable($module); $time = time(); $sessid = GWF_Session::getSessID(); if (false === ($nick = $module->getNickname())) { $nick = self::getRandomNickS($sessid); } $table = self::table(__CLASS__); if (false === ($row = $table->getRow($sessid))) { # Unknown row $row = new self(array('chaton_sessid' => $sessid, 'chaton_name' => $nick, 'chaton_timejoin' => $time, 'chaton_timeaccess' => $time)); $row->replace(); } else { if ($row->getVar('chaton_timeleft') > 0) { $row->saveVars(array('chaton_timejoin' => $time, 'chaton_timeaccess' => $time, 'chaton_timeleft' => 0)); } else { if ($row->getVar('chaton_name') !== $nick) { $row->saveVars(array('chaton_timeleft' => $time)); $row = new self(array('chaton_sessid' => $sessid, 'chaton_name' => $nick, 'chaton_timejoin' => $time, 'chaton_timeaccess' => $time)); $row->replace(); } else { $row->saveVars(array('chaton_timeaccess' => $time)); } } } self::cleanupTable($module); return ''; }
public static function validate_yournick(Module_Chat $module, $arg) { $arg = trim($arg); $_POST['yournick'] = $arg; if (false === ($oldnick = $module->getNickname())) { # No Nick yet if (!GWF_Validator::isValidUsername($arg)) { # Valid return $module->lang('err_nick_syntax'); } else { if ($module->isNameTaken($module->getGuestPrefixed($arg))) { return $module->lang('err_nick_taken'); } else { return false; } } } if ($oldnick === $arg) { return false; } return $module->lang('err_nick_tamper'); }