$c = $xpdo->newQuery('modUser'); $c->where(array( 'email:IN' => array('[email protected]','[email protected]') )); $userObjs = $xpdo->getIterator('modUser',$c); foreach($userObjs as $userObj) { $userObj->joinGroup('GROUP1'); $userObj->joinGroup('GROUP2'); } return 'Success.';
This question has been answered by patrickappelman. See the first response.
$emails = $modx->getOption('emails',$scriptProperties,''); $group = $modx->getOption('group',$scriptProperties,''); if ($emails) { $email_array = explode('||',$emails); $c = $modx->newQuery('modUser'); $c->select($modx->getSelectColumns('modUser','modUser','',array('id','username'))); $c->innerJoin('modUserProfile','Profile'); $c->where(array( 'Profile.email:IN' => $email_array, 'modUser.active' => true, )); $count = $modx->getCount('modUser',$c); $users = $modx->getIterator('modUser',$c); foreach ($users as $user) { $user->joinGroup($group); } return "<p>" . $count . " Users Updated</p>"; }
[[!add_users_to_group? &emails=`[email protected]||[email protected]` &group=`GROUP1` ]]