public static function manageMembers(PHPWS_Group $group) { javascript('member_complete', null, 'mod/users/', true, true); $form = new PHPWS_Form('memberList'); $form->addHidden('module', 'users'); $form->addHidden('action', 'admin'); $form->addHidden('command', 'postMembers'); $form->addHidden('group_id', $group->getId()); $form->addText('search_member'); $form->setLabel('search_member', dgettext('users', 'Add Member')); $form->addSubmit('search', dgettext('users', 'Add')); $template['NAME_LABEL'] = dgettext('users', 'Group name'); $template['GROUPNAME'] = $group->getName(); if (isset($_POST['search_member'])) { $_SESSION['Last_Member_Search'] = preg_replace('/[\\W]+/', '', $_POST['search_member']); $db = new PHPWS_DB('users_groups'); $db->addWhere('name', $_SESSION['Last_Member_Search']); $db->addWhere('name', $group->name, '!='); $db->addColumn('id'); $result = $db->select('one'); if (isset($result)) { if (PHPWS_Error::isError($result)) { PHPWS_Error::log($result); } else { $group->addMember($result); $group->save(); unset($_SESSION['Last_Member_Search']); } } } if (isset($_SESSION['Last_Member_Search'])) { $result = User_Form::getLikeGroups($_SESSION['Last_Member_Search'], $group); if (isset($result)) { $template['LIKE_GROUPS'] = $result; $template['LIKE_INSTRUCTION'] = dgettext('users', 'Member not found.') . ' ' . dgettext('users', 'Closest matches below.'); } else { $template['LIKE_INSTRUCTION'] = dgettext('users', 'Member not found.') . ' ' . dgettext('users', 'No matches found.'); } } $template = $form->getTemplate(TRUE, TRUE, $template); $vars['action'] = 'admin'; $vars['group_id'] = $group->id; $vars['command'] = 'edit_group'; $title = dgettext('users', 'Edit group name'); $links[] = PHPWS_Text::secureLink(Icon::show('edit') . " {$title}", 'users', $vars, null, $title, 'btn btn-default'); $title = dgettext('users', 'Edit Group Permissions'); $vars['command'] = 'setGroupPermissions'; $links[] = PHPWS_Text::secureLink(Icon::show('permission') . " {$title}", 'users', $vars, null, $title, 'btn btn-default'); $template['LINKS'] = implode(' ', $links); $template['CURRENT_MEMBERS_LBL'] = dgettext('users', 'Current Members'); $template['CURRENT_MEMBERS'] = User_Form::getMemberList($group); $result = PHPWS_Template::process($template, 'users', 'forms/memberForm.tpl'); return $result; }
public static function assignDefaultGroup(PHPWS_User $user) { $db = new PHPWS_DB('users_auth_scripts'); $db->addColumn('default_group'); $db->addColumn('id'); $db->setIndexBy('id'); $scripts = $db->select('col'); $default_group = $scripts[$user->authorize]; $group = new PHPWS_Group($default_group); if (!$group->id) { return false; } $group->addMember($user->_user_group); $group->save(); return true; }