diff --git a/app.py b/app.py index a120824..57d9ba0 100644 --- a/app.py +++ b/app.py @@ -1350,6 +1350,9 @@ def admin_polling_add(): custom_source_id = request.form.get('custom_source_id') display_name = request.form.get('display_name') poll_interval = int(request.form.get('poll_interval', 60)) + max_posts = int(request.form.get('max_posts', 100)) + fetch_comments = request.form.get('fetch_comments', 'true') == 'true' + priority = request.form.get('priority', 'medium') # Use custom source if provided, otherwise use dropdown if custom_source_id and custom_source_id.strip(): @@ -1371,6 +1374,9 @@ def admin_polling_add(): source_id=source_id, display_name=display_name, poll_interval_minutes=poll_interval, + max_posts=max_posts, + fetch_comments=fetch_comments, + priority=priority, enabled=False, created_by=current_user.id ) @@ -1423,11 +1429,24 @@ def admin_polling_update(source_id): flash('Source not found', 'error') return redirect(url_for('admin_polling')) - poll_interval = request.form.get('poll_interval') - if poll_interval: - source.poll_interval_minutes = int(poll_interval) - db.session.commit() - flash(f'Updated interval for {source.display_name}', 'success') + # Update all configurable fields + if request.form.get('poll_interval'): + source.poll_interval_minutes = int(request.form.get('poll_interval')) + + if request.form.get('max_posts'): + source.max_posts = int(request.form.get('max_posts')) + + if request.form.get('fetch_comments') is not None: + source.fetch_comments = request.form.get('fetch_comments') == 'true' + + if request.form.get('priority'): + source.priority = request.form.get('priority') + + if request.form.get('display_name'): + source.display_name = request.form.get('display_name') + + db.session.commit() + flash(f'Updated settings for {source.display_name}', 'success') return redirect(url_for('admin_polling'))