diff --git a/src/routes.py b/src/routes.py index ac97fc9..d9e69ea 100644 --- a/src/routes.py +++ b/src/routes.py @@ -3028,6 +3028,36 @@ def init_routes(app): "mediaCounts": [media_count] }) + @app.route('/paste//settings', methods=['GET', 'POST']) + @login_required + def paste_settings(paste_id): + paste = Paste.query.get_or_404(paste_id) + + if paste.owner_id != current_user.id: + flash('You do not have permission to modify this paste.', 'danger') + return redirect(url_for('user_dashboard')) + + if request.method == 'POST': + paste.title = request.form.get('title') or None + paste.language = request.form.get('language') or None + paste.editable = 'editable' in request.form + paste.private = 'private' in request.form + expires = request.form.get('expires_at') + paste.expires_at = datetime.strptime(expires, "%Y-%m-%d") if expires else None + db.session.commit() + flash('Paste settings updated.', 'success') + return redirect(url_for('paste_settings', paste_id=paste.id)) + + # 👇 Pasamos la lista de lenguajes al template + pygments_languages = get_readable_languages() + + return render_template( + 'paste_settings.html', + paste=paste, + pygments_languages=pygments_languages + ) + + @app.route('/generate_code_from_paste/', methods=['GET']) def generate_code_from_paste(id): """ diff --git a/templates/paste_settings.html b/templates/paste_settings.html new file mode 100644 index 0000000..f48aaed --- /dev/null +++ b/templates/paste_settings.html @@ -0,0 +1,45 @@ +{% extends "base.html" %} +{% block title %}Paste Settings{% endblock %} +{% block content %} +
+

Settings for: paste_{{ paste.id }}.{{ paste.get_extension() }}

+
+
+ + +
+ +
+ + +
+
+ + +
+ +
+ + +
+ +
+ + +
+ + + Back +
+
+{% endblock %} + + diff --git a/templates/user_dashboard.html b/templates/user_dashboard.html index 7df34fb..c240f69 100644 --- a/templates/user_dashboard.html +++ b/templates/user_dashboard.html @@ -267,9 +267,11 @@ {% for paste in pastes %} {{ paste.id }} -paste_{{ paste.id }}.{{ paste.get_extension() }} - - + + + paste_{{ paste.id }}.{{ paste.get_extension() }} + + {{ paste.get_type() }} {{ paste.size }}