def add_project(token_data): r_val = {"error": None} project = request.get_json()["project"] user = User.objects(username=token_data['user']).first() if user: project = Project( project_name=project["name"], owner=user.to_dbref(), description=project["description"], tags=project["tags"] ) # TODO: add hardware references and find total cost project.total_cost = 0 project.save() user.update(add_to_set__owned_projects=[project.to_dbref()]) return r_val else: app.logger.debug("Username is invalid. Could not add project.") r_val["error"] = "Username is invalid" return r_val, 403