This question has been answered by Bruno17. See the first response.
<?php //$parent = '75'; $parent = '39'; $c = $modx->newQuery('modResource'); $c->where(array('parent' => $parent)); if ($collection = $modx->getCollection('modResource', $c)) { foreach ($collection as $resource) { $data = array(); $data['username'] = $resource->getTVValue('user_name'); $data['email'] = $resource->getTVValue('arzt-email'); $data['fullname'] = $resource->get('pagetitle'); $data['passwordnotifymethod'] = 'e'; $data['active'] = '1'; $data['userpage_id'] = $resource->get('id'); $data['mailTpl'] = 'newUserMail'; $group = array(); $group['usergroup'] = '3'; $group['role'] = '5'; $data['groups'] = array(); $data['groups'][] = $group; //echo $data['fullname']; if ($user = $modx->getObject('modUser', array('username' => $data['username']))) { //user exists allready } else { $response = $modx->runProcessor('security/user/create_custom', $data); if ($response->isError()) { //$updateerror = true; //echo $errormsg = $response->getMessage(); //echo 'error'; } if ($object = $response->getObject()) { $userid = $modx->getOption('id', $object, ''); $resource->setTVValue('user_id', $userid); } } } }
$data['mailTpl'] = 'newUserMail';
$modx->runProcessor('security/user/create', $data);