protected function _adduser(&$channel, &$newuser)
    {
        $lowerednick = strtolower($newuser->nick);
        if ($this->isJoined($channel->name, $newuser->nick)) {
            $this->log(SMARTIRC_DEBUG_CHANNELSYNCING, 'DEBUG_CHANNELSYNCING: '
                .'updating user: '.$newuser->nick.' on channel: '
                .$channel->name, __FILE__, __LINE__
            );

            // lets update the existing user
            $currentuser = &$channel->users[$lowerednick];

            $props = array('ident', 'host', 'realname', 'ircop', 'founder',
                'admin', 'op', 'hop', 'voice', 'away', 'server', 'hopcount'
            );
            foreach ($props as $prop) {
                if ($newuser->$prop !== null) {
                    $currentuser->$prop = $newuser->$prop;
                }
            }
        } else {
            $this->log(SMARTIRC_DEBUG_CHANNELSYNCING, 'DEBUG_CHANNELSYNCING: '
                .'adding user: '.$newuser->nick.' to channel: '.$channel->name,
                __FILE__, __LINE__
            );

            $channel->users[$lowerednick] = $newuser;
        }

        $user = &$channel->users[$lowerednick];
        $modes = array('founder', 'admin', 'op', 'hop', 'voice');

        foreach ($modes as $mode) {
            if ($user->$mode) {
                $this->log(SMARTIRC_DEBUG_CHANNELSYNCING,
                    "DEBUG_CHANNELSYNCING: adding $mode: ".$user->nick
                    .' to channel: '.$channel->name, __FILE__, __LINE__
                );
                $ms = $mode.'s';
                $channel->{$ms}[$user->nick] = true;
            }
        }
        return $this;
    }
protected function _adduser(&$channel, &$newuser)
    {
        $lowerednick = strtolower($newuser->nick);
        if ($this->isJoined($channel->name, $newuser->nick)) {
            $this->log(SMARTIRC_DEBUG_CHANNELSYNCING, 'DEBUG_CHANNELSYNCING: '
                .'updating user: '.$newuser->nick.' on channel: '
                .$channel->name, __FILE__, __LINE__
            );

            // lets update the existing user
            $currentuser = &$channel->users[$lowerednick];

            $props = array('ident', 'host', 'realname', 'ircop', 'founder',
                'admin', 'op', 'hop', 'voice', 'away', 'server', 'hopcount'
            );
            foreach ($props as $prop) {
                if ($newuser->$prop !== null) {
                    $currentuser->$prop = $newuser->$prop;
                }
            }
        } else {
            $this->log(SMARTIRC_DEBUG_CHANNELSYNCING, 'DEBUG_CHANNELSYNCING: '
                .'adding user: '.$newuser->nick.' to channel: '.$channel->name,
                __FILE__, __LINE__
            );

            $channel->users[$lowerednick] = $newuser;
        }

        $user = &$channel->users[$lowerednick];
        $modes = array('founder', 'admin', 'op', 'hop', 'voice');

        foreach ($modes as $mode) {
            if ($user->$mode) {
                $this->log(SMARTIRC_DEBUG_CHANNELSYNCING,
                    "DEBUG_CHANNELSYNCING: adding $mode: ".$user->nick
                    .' to channel: '.$channel->name, __FILE__, __LINE__
                );
                $ms = $mode.'s';
                $channel->{$ms}[$user->nick] = true;
            }
        }
        return $this;
    }
protected function _adduser ( & $ channel , & $ newuser ) { $ lowerednick = strtolower ( $ newuser -> nick ) ; if ( $ this -> isJoined ( $ channel -> name , $ newuser -> nick ) ) { $ this -> log ( SMARTIRC_DEBUG_CHANNELSYNCING , 'DEBUG_CHANNELSYNCING: ' . 'updating user: ' . $ newuser -> nick . ' on channel: ' . $ channel -> name , __FILE__ , __LINE__ ) ; // lets update the existing user $ currentuser = & $ channel -> users [ $ lowerednick ] ; $ props = array ( 'ident' , 'host' , 'realname' , 'ircop' , 'founder' , 'admin' , 'op' , 'hop' , 'voice' , 'away' , 'server' , 'hopcount' ) ; foreach ( $ props as $ prop ) { if ( $ newuser -> $ prop !== null ) { $ currentuser -> $ prop = $ newuser -> $ prop ; } } } else { $ this -> log ( SMARTIRC_DEBUG_CHANNELSYNCING , 'DEBUG_CHANNELSYNCING: ' . 'adding user: ' . $ newuser -> nick . ' to channel: ' . $ channel -> name , __FILE__ , __LINE__ ) ; $ channel -> users [ $ lowerednick ] = $ newuser ; } $ user = & $ channel -> users [ $ lowerednick ] ; $ modes = array ( 'founder' , 'admin' , 'op' , 'hop' , 'voice' ) ; foreach ( $ modes as $ mode ) { if ( $ user -> $ mode ) { $ this -> log ( SMARTIRC_DEBUG_CHANNELSYNCING , "DEBUG_CHANNELSYNCING: adding $mode: " . $ user -> nick . ' to channel: ' . $ channel -> name , __FILE__ , __LINE__ ) ; $ ms = $ mode . 's' ; $ channel -> { $ ms } [ $ user -> nick ] = true ; } } return $ this ; }
adds an user to the channelobject or updates his info

@internal
@param object $channel
@param object $newuser
@return Net_SmartIRC
adds an user to the channelobject or updates his info