In function editor template modify add/delete functionality so it uses htmx.ajax and updates url

This commit is contained in:
Peter Stockings
2024-03-29 21:20:35 +11:00
parent 163a1dbc5f
commit cb3afa77fc
3 changed files with 22 additions and 27 deletions

22
app.py
View File

@@ -126,18 +126,18 @@ def get_http_function_add_form():
def create_http_function():
try:
user_id = current_user.id
name = request.json.get('name')
script_content = request.json.get('script_content')
environment_info = request.json.get('environment_info')
is_public = request.json.get('is_public')
log_request = request.json.get('log_request')
log_response = request.json.get('log_response')
name = request.form.get('name')
script_content = request.form.get('script_content')
environment_info = request.form.get('environment_info')
is_public = request.form.get('is_public')
log_request = request.form.get('log_request')
log_response = request.form.get('log_response')
db.create_new_http_function(user_id, name, script_content, environment_info, is_public, log_request, log_response)
http_functions = db.get_http_functions_for_user(user_id)
http_functions = create_http_functions_view_model(http_functions)
return render_template("dashboard/http_functions/overview.html", http_functions=http_functions)
return render_template("dashboard/http_functions/overview.html", http_functions=http_functions), 200, {"HX-Push-Url": url_for('dashboard_http_functions')}
except Exception as e:
print(e)
return { "status": "error", "message": str(e) }
@@ -179,17 +179,17 @@ def edit_http_function(function_id):
print(e)
return { "status": "error", "message": str(e) }
@ app.route("/dashboard/http_functions/delete", methods=["DELETE"])
@ app.route("/dashboard/http_functions/<int:function_id>/delete", methods=["DELETE"])
@login_required
def delete_http_function():
def delete_http_function(function_id):
try:
user_id = current_user.id
name = request.args.get('name')
db.delete_http_function(user_id, name)
db.delete_http_function(user_id, function_id)
http_functions = db.get_http_functions_for_user(user_id)
http_functions = create_http_functions_view_model(http_functions)
return render_template("dashboard/http_functions/overview.html", http_functions=http_functions)
return render_template("dashboard/http_functions/overview.html", http_functions=http_functions), 200, {"HX-Push-Url": url_for('dashboard_http_functions')}
except Exception as e:
return jsonify({"status": 'error', "message": str(e)}), 500