Add poll source editing and expanded settings
- Update admin_polling_add to accept max_posts, fetch_comments, priority - Enhance admin_polling_update to modify all configurable fields - Support editing display_name, interval, max_posts, fetch_comments, priority 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
27
app.py
27
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)
|
||||
# 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 interval for {source.display_name}', 'success')
|
||||
flash(f'Updated settings for {source.display_name}', 'success')
|
||||
|
||||
return redirect(url_for('admin_polling'))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user