CodeExample

4dab51422cbbd

Create a fresh user

/*
I handle this code as if it is a snippet of a method or function!!
First set up some variables/objects
*/// get the ACL$acl=& JFactory::getACL();/* get the com_user params */
jimport('joomla.application.component.helper');// include libraries/application/component/helper.php$usersParams=&JComponentHelper::getParams('com_users');// load the Params// "generate" a new JUser Object$user= JFactory::getUser(0);// it's important to set the "0" otherwise your admin user information will be loaded$data=array();// array for all user settings// get the default usertype$usertype=$usersParams->get('new_usertype');if(!$usertype){$usertype='Registered';}// set up the "main" user information$data['name']=$firstname.' '.$lastname;// add first- and lastname$data['username']=$username;// add username$data['email']=$email;// add email$data['gid']=$acl->get_group_id('',$usertype,'ARO');// generate the gid from the usertype/* no need to add the usertype, it will be generated automaticaly from the gid */$data['password']=$password;// set the password$data['password2']=$password;// confirm the password$data['sendEmail']=1;// should the user receive system mails?/* Now we can decide, if the user will need an activation */$useractivation=$usersParams->get('useractivation');// in this example, we load the config-settingif($useractivation==1){// yeah we want an activation
jimport('joomla.user.helper');// include libraries/user/helper.php$data['block']=1;// block the User$data['activation']=JUtility::getHash( JUserHelper::genRandomPassword());// set activation hash (don't forget to send an activation email)}else{// no we need no activation$data['block']=0;// don't block the user}if(!$user->bind($data)){// now bind the data to the JUser Object, if it not works....
JError::raiseWarning('', JText::_($user->getError()));// ...raise an Warningreturnfalse;// if you're in a method/function return false}if(!$user->save()){// if the user is NOT saved...
JError::raiseWarning('', JText::_($user->getError()));// ...raise an Warningreturnfalse;// if you're in a method/function return false}return$user;// else return the new JUser object

Content is available under Joomla! EDL unless otherwise noted.Joomla!® is a registered trademark of Open Source Matters, Inc.If you are experiencing technical issues with this website, please report it
.
Notice a content problem? Create an account
and fix it.