'help_text' => __('Designates that this user has all permissions without explicitly assigning them.'),
));
+ $r = new \ReflectionClass(\PFF\Container::auth()->userModel);
+ $extra_fields = array();
+ foreach ($r->getProperties(\ReflectionProperty::IS_PUBLIC) as $p) {
+ $name = $p->getName();
+ if (in_array($name, array('id', 'username', 'password', 'email', 'is_active', 'is_staff', 'is_superuser', 'last_login')) || $name[0] === '_')
+ continue;
+
+ $this->fields[$name] = new \IPF_Form_Field_Varchar(array(
+ 'label' => \IPF_Utils::humanTitle($name),
+ ));
+ $extra_fields[] = $name;
+ }
+
$permissions = array('is_active', 'is_staff', 'is_superuser');
if (\IPF_Auth_App::ArePermissionsEnabled()) {
$permissions[] = 'permissions';
array('fields' => array('username', 'password1', 'password2', 'email')),
array('fields' => $permissions, 'label' => __('Permissions')),
);
+
+ if ($extra_fields) {
+ $this->field_groups[] = array('fields' => $extra_fields, 'label' => __('Extra'));
+ }
}
public function clean()