bugfix introduced from merge conflicts

This commit is contained in:
Kyle Mahan 2015-02-08 19:59:37 +00:00
parent dc90b729d4
commit 82f454b720
3 changed files with 25 additions and 9 deletions

View file

@ -60,20 +60,20 @@ def update_feed(feed_id):
def process_feed_for_new_entries(session, feed):
result = None
try:
if feed.type == 'xml':
result = list(process_xml_feed_for_new_entries(session, feed))
elif feed.type == 'html':
result = list(process_html_feed_for_new_entries(session, feed))
else:
result = None
return result
finally:
now = datetime.datetime.utcnow()
feed.last_checked = now
if result:
feed.last_updated = now
session.commit()
return result
def process_xml_feed_for_new_entries(session, feed):
@ -156,7 +156,7 @@ def process_html_feed_for_new_entries(session, feed):
now = datetime.datetime.utcnow()
parsed = mf2util.interpret_feed(
mf2py.parse(url=feed.feed), feed.feed)
mf2py.Parser(url=feed.feed).to_dict(), feed.feed)
hfeed = parsed.get('entries', [])
all_uids = [e.get('uid') or e.get('url') for e in hfeed]
@ -176,7 +176,7 @@ def process_html_feed_for_new_entries(session, feed):
if not uid or uid in preexisting:
continue
# hentry = mf2util.interpret(mf2py.parse(url=url), url)
# hentry = mf2util.interpret(mf2py.Parser(url=url).to_dict(), url)
# permalink = hentry.get('url') or url
# uid = hentry.get('uid') or uid
entry = Entry(

View file

@ -9,7 +9,11 @@
{% endblock header %}
{% block body %}
<form style="display:inline;"
action="{{ url_for('.update_all') }}" method="POST">
<button type="submit">Update All</button>
</form>
{% for feed in feeds %}
<article>
<form style="display:inline"
@ -22,7 +26,7 @@
<button type="submit">Save</button>
</form>
<form style="display:inline;"
action="{{ url_for('.update_feed') }}" method="GET">
action="{{ url_for('.update_feed') }}" method="POST">
<input type="hidden" name="id" value="{{ feed.id }}"/>
<button type="submit">Update</button>
</form>

View file

@ -49,14 +49,24 @@ def settings():
return flask.render_template('settings.jinja2')
@views.route('/update_feed')
@views.route('/update_feed', methods=['POST'])
@flask_login.login_required
def update_feed():
feed_id = flask.request.args.get('id')
tasks.update_feed.delay(feed_id)
return flask.redirect(flask.url_for('.feeds'))
@views.route('/update_all', methods=['POST'])
@flask_login.login_required
def update_all():
for feed in flask_login.current_user.feeds:
tasks.update_feed.delay(feed.id)
return flask.redirect(flask.url_for('.feeds'))
@views.route('/delete_feed', methods=['POST'])
@flask_login.login_required
def delete_feed():
feed_id = flask.request.form.get('id')
feed = Feed.query.get(feed_id)
@ -67,6 +77,7 @@ def delete_feed():
@views.route('/edit_feed', methods=['POST'])
@flask_login.login_required
def edit_feed():
feed_id = flask.request.form.get('id')
feed_name = flask.request.form.get('name')
@ -165,6 +176,7 @@ def load_user(domain):
@views.route('/subscribe', methods=['GET', 'POST'])
@flask_login.login_required
def subscribe():
if flask.request.method == 'POST':
origin = flask.request.form.get('origin')
@ -199,7 +211,7 @@ def add_subscription(origin, feed_url, type):
if type == 'html':
flask.current_app.logger.debug('mf2py parsing %s', feed_url)
parsed = mf2util.interpret_feed(
mf2py.Parse(url=feed_url).to_dict(), feed_url)
mf2py.Parser(url=feed_url).to_dict(), feed_url)
name = parsed.get('name')
if not name or len(name) > 140:
p = urllib.parse.urlparse(origin)