Add a fetch button to source list
This commit is contained in:
parent
4947ce56c6
commit
92a10c5ca8
|
@ -20,7 +20,14 @@ from flask import (
|
|||
|
||||
from intake.core import intake_data_dir
|
||||
from intake.crontab import update_crontab_entries
|
||||
from intake.source import LocalSource, execute_action, Item
|
||||
from intake.source import (
|
||||
LocalSource,
|
||||
execute_action,
|
||||
Item,
|
||||
fetch_items,
|
||||
update_items,
|
||||
)
|
||||
from intake.types import InvalidConfigException, SourceUpdateException
|
||||
|
||||
# Globals
|
||||
app = Flask(__name__)
|
||||
|
@ -381,6 +388,22 @@ def _parse_channels_config(config_str: str):
|
|||
return (None, parsed)
|
||||
|
||||
|
||||
@app.post("/fetch/<string:source_name>")
|
||||
@auth_check
|
||||
def fetch(source_name: str):
|
||||
data_path: Path = current_app.config["INTAKE_DATA"]
|
||||
source = LocalSource(data_path, source_name)
|
||||
|
||||
try:
|
||||
items = fetch_items(source)
|
||||
update_items(source, items)
|
||||
return f"Update returned {len(items)} items"
|
||||
except InvalidConfigException as ex:
|
||||
abort(500, f"Could not fetch {source_name}:\n{ex}")
|
||||
except SourceUpdateException as ex:
|
||||
abort(500, f"Error updating source {source_name}:\n{ex}")
|
||||
|
||||
|
||||
@app.post("/add")
|
||||
@auth_check
|
||||
def add_item():
|
||||
|
|
|
@ -37,6 +37,9 @@ summary:focus {
|
|||
.intake-sources td {
|
||||
padding-block: 0.4em;
|
||||
}
|
||||
.intake-sources form {
|
||||
margin: 0
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
@ -78,6 +81,7 @@ summary:focus {
|
|||
{%- endif -%}
|
||||
{%- endfor -%}
|
||||
</td>
|
||||
<td><form id="{{ source.source_name }}"><button type="submit" formmethod=post formaction="{{ url_for('fetch', source_name=source.source_name) }}" />fetch</button></form></td>
|
||||
<td>(<a href="{{ url_for('source_edit', name=source.source_name) }}">edit</a>)</td>
|
||||
<td><a href="{{ url_for('source_feed', name=source.source_name) }}">{{ source.source_name|safe }}</a></td>
|
||||
</tr>
|
||||
|
|
Loading…
Reference in New Issue