def undo_impersonate_user(): """Undo an admin impersonation login and revert to the old user""" from fossir.modules.auth import logger from fossir.modules.users import User try: entry = session.pop('login_as_orig_user') except KeyError: # The user probably already switched back from another tab return user = User.get_one(entry['user_id']) logger.info('Admin %r stopped impersonating user %r', user, session.user) session.user = user session.update(entry['session_data'])
def _process(self): source = User.get_one(request.args['source']) target = User.get_one(request.args['target']) errors, warnings = _get_merge_problems(source, target) return jsonify(errors=errors, warnings=warnings)
def _process_args(self): RHAdminBase._process_args(self) if request.form.get('undo') == '1': self.user = None else: self.user = User.get_one(int(request.form['user_id']), is_deleted=False)