code: def selfmodify(self, **params):
          
          self._check_auth(must_admin=False)
          is_admin = self._check_admin()
          sess = cherrypy.session
          user = sess.get(SESSION_KEY, None)
          if self.auth_mode == 'none':
              return self.temp['error.tmpl'].render(
                  is_admin=is_admin,
                  alert='warning',
                  message="Not accessible with authentication disabled."
                  )
          if cherrypy.request.method.upper() == 'POST':
              params = self._parse_params(params)
              self._selfmodify(params)
              self._add_notification(
                  "Self modification done"
              )
          user_attrs = self._get_user(user)
  
          try:
              if user_attrs == {}:
                  return self.temp['error.tmpl'].render(
                      is_admin=is_admin,
                      alert='warning',
                      message="User doesn't exist"
                      )
  
              form = self.temp['form.tmpl'].render(
                  attributes=self.attributes.get_selfattributes(),
                  values=user_attrs,
                  modify=True,
                  autofill=False
                  )
              return self.temp['selfmodify.tmpl'].render(
                  form=form,
                  is_admin=is_admin,
                  notifications=self._empty_notification(),
                  )
          except NameError:
              raise TemplateRenderError(
                      exceptions.text_error_template().render()
                      )
docs: self modify user page