Example #1
0
 static function register()
 {
     if (!MValidate::password(MGet::string('pass'))) {
         return mapi_report('Invalid password.');
     }
     if (MGet::string('pass') !== MGet::string('pass_repeat')) {
         return mapi_report('Passwords do not match.');
     }
     $user = MObject::create('user');
     $user->set_username(MGet::string('user'));
     $user->set_name(MGet::string('name'));
     $user->set_email(MGet::string('email'));
     $reg_group = MObject::get('preference', 'new_user_default_group');
     $group = null;
     if (!$reg_group || $reg_group->get_value()) {
         $group = 3;
     }
     if ($reg_group->get_value() < 1 || $reg_group->get_value() > 3) {
         $group = 3;
     }
     if (!$group) {
         $group = $reg_group->get_value();
     }
     $user->set_group_id($group);
     $user->set_activation(urlencode(MCrypt::encrypt(mapi_random(24))));
     $user->set_enabled(0);
     $user->add(MGet::string('pass'));
     if (0 == MMessaging::any_errors() + MMessaging::any_warnings()) {
         self::send_reg_email($user);
         $_POST['user'] = '';
         $_POST['name'] = '';
         $_POST['email'] = '';
     }
 }
Example #2
0
 public function add($password)
 {
     $user = ORM::for_table('users')->create();
     if (!$user || !$this->setup_object($user)) {
         return null;
     }
     $user->created = date_format(new DateTime('now'), 'Y-m-d H:i:s');
     if (MAuth::user_id()) {
         $user->createdby = MAuth::user_id();
     } else {
         $user->createdby = 1;
     }
     if ($this->activation) {
         $user->activation = $this->activation;
     }
     $user->modified = $user->created;
     $user->modifiedby = $user->createdby;
     if ($password && MValidate::password($password)) {
         $user->password = md5($password);
     } else {
         return mapi_report_message('Not a valid password.');
     }
     if ($user->save()) {
         $this->set_id($user->id);
         if ($this->activation) {
             mapi_report_message('Successfully registered, check your mail.', 'success');
         } else {
             mapi_report_message('New user successfully added.', 'success');
         }
     }
 }