Example #1
0
function pm_on_join()
{
    global $mybb, $db, $cache, $user_info, $lang;
    if ($mybb->settings['rpgsuite_approval']) {
        $user = new GroupMember($mybb, $db, $cache, $user_info);
        $user->update_member(array('usergroup' => Groups::WAITING));
        if (!empty($mybb->settings['rpgsuite_approval_registerpm'])) {
            $pm_handler = new PMDataHandler();
            $pm_handler->admin_override = true;
            $pm = array("subject" => $mybb->settings['rpgsuite_approval_registerpm_subj'], "message" => $mybb->settings['rpgsuite_approval_registerpm'], "fromid" => Accounts::ADMIN, "options" => array("savecopy" => "0"));
            $pm['to'] = array($user_info['username']);
            $pm_handler->set_data($pm);
            if (!$pm_handler->validate_pm()) {
                //bad pm. oops. lol
            } else {
                $pm_handler->insert_pm();
            }
        }
    }
}
Example #2
0
 /**
 Add a new member to the group
 */
 public function add_member($uid)
 {
     // Set display group
     $member = new GroupMember($this->mybb, $this->db, $this->cache);
     if ($member->initialize($uid)) {
         $user = $member->get_info();
         // If they are a pm of their old group, they won't be now!
         $this->demote_member($uid);
         // If they are in a group currently, remove it from additional
         leave_usergroup($user['uid'], $user['displaygroup']);
         // add new to additional groups
         join_usergroup($user['uid'], $this->info['gid']);
         $updatearray = array('displaygroup' => $this->info['gid'], 'group_dateline' => time());
         $member->update_member($updatearray);
         $member->update_rank($this->info['defaultrank']);
     }
 }